/branches/metro/v0.82a metro_Akku+/Flight-Ctrl_MEGA644_V0_82a_SVN_akku001.elf |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/branches/metro/v0.82a metro_Akku+/Flight-Ctrl_MEGA644_V0_82a_SVN_akku001.hex |
---|
0,0 → 1,3860 |
:100000000C94BB060C94FF060C94FF060C94FF06A0 |
:100010000C94FF060C94FF060C94FF060C94FF064C |
:100020000C94FF060C944A190C94FF060C94FF06DE |
:100030000C9493330C94FF060C94FF060C94FF066B |
:100040000C94FF060C94FF060C941A160C94FF06F1 |
:100050000C94350C0C94FF060C94FF0B0C94FF06CB |
:100060000C94061C0C94FF060C94262F0C94FF068F |
:100070000C94FC750C94FF060C94F870311C361C23 |
:100080003B1C441C5B1C721C821C921CAF1C9B1EE4 |
:10009000721C5D1D6E1D9D1DBB1DD81D321E8D1E4B |
:1000A0006B20FD20BA213A22A32253235A25B725DB |
:1000B00024266E26B92606275727B9271828B228DE |
:1000C0004D29472A452F792FBC2F2C3044308530BD |
:1000D0003C31033203320332033203320332033240 |
:1000E0000332033203320332B831BA31BF31D73170 |
:1000F000D9310A0D426174743A00202564204365A9 |
:100100006C6C732000204C6F77207761726E696E83 |
:1001100067206C6576656C3A2025642E2564000A9C |
:100120000D466F756E6420424C2D4374726C3A20FC |
:10013000002564000A0D0A0D2121204D4953534921 |
:100140004E4720424C2D4354524C3A2025642021E6 |
:1001500021000A0D3D3D3D3D3D3D3D3D3D3D3D3D8B |
:100160003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DBF |
:100170003D3D3D3D3D3D3D000A0D43616C69627270 |
:100180006174696E67207072657373757265207330 |
:10019000656E736F722E2E004F4B0A0D000A0D46CE |
:1001A0006C696768742D74696D65202575206D69AB |
:1001B0006E2020546F74616C3A2575206D696E0055 |
:1001C0000A0D436F6E74726F6C3A2000486561646B |
:1001D000696E67486F6C64004E6F726D616C2028A9 |
:1001E0004143432D4D6F646529000A0D3D3D3D3D62 |
:1001F0003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2F |
:100200003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D0A51 |
:100210000D00416E676C654E69636B2020202020C5 |
:100220002020416E676C65526F6C6C20202020206E |
:1002300020204163634E69636B2020202020202012 |
:100240002020416363526F6C6C20202020202020EE |
:1002500020205961774779726F20202020202020AC |
:1002600020204865696768742056616C7565202098 |
:1002700020204163635A202020202020202020209D |
:1002800020204761732020202020202020202020B3 |
:100290002020436F6D706173732056616C7565200B |
:1002A0002020566F6C74616765205B302E31565D7F |
:1002B00020205265636569766572204C6576656CB1 |
:1002C00020204779726F20436F6D70617373202017 |
:1002D00020204D6F746F722031202020202020209C |
:1002E00020204D6F746F722032202020202020208B |
:1002F00020204D6F746F722033202020202020207A |
:1003000020204D6F746F7220342020202020202068 |
:1003100020203136202020202020202020202020B6 |
:1003200020203137202020202020202020202020A5 |
:100330002020313820202020202020202020202094 |
:100340002020313920202020202020202020202083 |
:100350002020536572766F2020202020202020202E |
:100360002020486F7665726761732020202020204E |
:10037000202043757272656E74205B302E31415DB2 |
:1003800020204361706163697479205B6D41685D11 |
:100390002020323420202020202020202020202037 |
:1003A0002020323520202020202020202020202026 |
:1003B0002020323620202020202020202020202015 |
:1003C0002020323720202020202020202020202004 |
:1003D00020204932432D4572726F72202020202048 |
:1003E0002020424C204C696D697420202020202060 |
:1003F00020204750535F4E69636B2020202020202F |
:1004000020204750535F526F6C6C2020202020200A |
:10041000202021212120494E434F4D504154494233 |
:100420004C4520212121002E000A0D20444143206B |
:100430006F7220493243204552524F522120436867 |
:1004400065636B204932432C2033567265662C203D |
:1004500044414320616E6420424C2D4374726C0011 |
:100460005B25695D005B25695D002B204D696B7222 |
:100470006F4B6F70746572202B0048573A56256495 |
:100480002E25642053573A25642E25642563005396 |
:10049000657474696E673A2564202573004861723B |
:1004A0006477617265204572726F7220313A2564FB |
:1004B000202121004D697373696E6720424C2D43E2 |
:1004C00074726C3A25642121004D6978657220456B |
:1004D00072726F722100493243204552524F5221AD |
:1004E0002121004865696768743A20202535690034 |
:1004F000536574706F696E743A2535690050726582 |
:1005000073737572653A253569004F666673657455 |
:100510003A20202535690048656967687420636F53 |
:100520006E74726F6C0044495341424C454400481C |
:10053000656967687420636F6E74726F6C004449FC |
:100540005341424C4544006163742E2062656172E0 |
:10055000696E67004E69636B3A20202020202025B9 |
:10056000356900526F6C6C3A202020202020253500 |
:100570006900436F6D706173733A202020253569DF |
:10058000004B313A25346920204B323A253469201A |
:10059000004B333A25346920204B343A2534692006 |
:1005A000004B353A25346920204B363A25346920F2 |
:1005B000004B373A25346920204B383A25346920DE |
:1005C000004E693A2534692020526F3A253469205B |
:1005D0000047733A253469202047693A2534692059 |
:1005E0000050313A253469202050323A25346920B0 |
:1005F0000050333A253469202050343A253469209C |
:10060000004779726F202D2053656E736F72004E14 |
:1006100069636B25346920282533692E25692900F3 |
:10062000526F6C6C25346920282533692E25692981 |
:100630000047696572253469202825336929004EF1 |
:1006400069636B2025346920282533692E25782994 |
:1006500000526F6C6C2025346920282533692E25C3 |
:1006600078290059617720202534692028253369AD |
:1006700029004E69636B20253469202825336929B8 |
:10068000282533692900526F6C6C20253469202895 |
:1006900025336929282533692900596177202025C8 |
:1006A00034692028253369292825336929004143E5 |
:1006B00043202D2053656E736F72004E69636B206B |
:1006C00025346920282533692900526F6C6C202558 |
:1006D0003469202825336929005A20202020253418 |
:1006E0006920282533692900566F6C746167653A63 |
:1006F0002020202533692E253169560043757272FA |
:10070000656E743A2020202533692E253169410019 |
:10071000506F7765723A20202020202534695700D9 |
:100720004469736368617267653A202535696D4174 |
:10073000680052656365697665720052432D5253B5 |
:1007400053493A202020202534690052432D517509 |
:10075000616C6974793A202534690052432D4368ED |
:10076000616E6E656C733A25346900436F6D70611C |
:1007700073730048656164696E673A2020253569A6 |
:100780000056616C75653A2020202025356900539C |
:10079000746172743A2020202025356900506F74EE |
:1007A00069313A202025336900506F7469323A204C |
:1007B0002025336900506F7469333A20202533694E |
:1007C00000506F7469343A202025336900506F74EB |
:1007D00069353A202025336900506F7469363A2014 |
:1007E0002025336900506F7469373A20202533691A |
:1007F00000506F7469383A202025336900536572C0 |
:10080000766F202000536574706F696E7420202508 |
:10081000336900506F736974696F6E3A20253369CC |
:100820000052616E67653A2533692D2533690045AD |
:10083000787465726E436F6E74726F6C2020004E18 |
:10084000693A2534692020526F3A253469200047DF |
:10085000733A253469202047693A253469200048D5 |
:10086000693A253469202043663A253469200042DC |
:100870004C2D4374726C204572726F727320002588 |
:10088000336420253364202533642025336420001D |
:1008900025336420253364202533642025336420E8 |
:1008A00000253364202533642025336420253364F8 |
:1008B0002000424C2054656D7065726174757265DC |
:1008C00000253369202533692025336920253369C4 |
:1008D00020002533692025336920253369202533FD |
:1008E00069200025336920253369202533692025B7 |
:1008F00033692000424C2D4374726C20666F756E14 |
:1009000064200020256320202025632020202563EB |
:10091000202020256320002025632020202563201F |
:10092000202025632020202563200020256320200F |
:10093000202D2020202D2020202D2000313000319E |
:100940003100313200466C696768742D54696D65F9 |
:10095000202000546F74616C3A2535756D696E0006 |
:100960004163743A20202535756D696E00287265E3 |
:1009700073657429000A0D47656E65726174696E4E |
:10098000672064656661756C7420506172616D6585 |
:1009900074657220536574202564000A0D557369CF |
:1009A0006E6720506172616D657465722053657465 |
:1009B000202564000A0D47656E65726174696E6773 |
:1009C0002064656661756C74204D69786572205489 |
:1009D00061626C65000A0D4D697865722D436F6E1A |
:1009E0006669673A202725732720282575204D6FD3 |
:1009F000746F727329000A0D3D3D3D3D3D3D3D3D07 |
:100A00003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D16 |
:100A10003D3D3D3D3D3D000A0D414343206E6F7419 |
:100A20002063616C69627261746564210D0A000063 |
:100A3000008F001E01AD013B02CA025803E6037499 |
:100A40000402058F051B06A7063307BE074808D218 |
:100A5000085B09E3096B0AF20A780BFD0B810C04B1 |
:100A60000D860D070E870E060F840F00107B10F504 |
:100A7000106E11E5115B12CF124213B313231492BF |
:100A800014FE146A15D3153B16A11605176717C86F |
:100A90001727188318DE1837198E19E319361A87A5 |
:100AA0001AD61A231B6E1BB61BFD1B411C831CC3CD |
:100AB0001C001D3C1D751DAB1DE01D121E421E6F4E |
:100AC0001E9A1EC31EE91E0D1F2E1F4D1F691F8477 |
:100AD0001F9B1FB01FC31FD31FE11FEC1FF51FFB80 |
:100AE0001FFF1F002003010000256A0002010118FA |
:100AF0006B01030202AC6B02000303096C2532692F |
:100B00002E25316956002533642563202530336452 |
:100B10006D00537461747573004552524F523A2000 |
:100B200025326400253469202532693A253032693E |
:100B3000002534696D25630025336920253369203C |
:100B40002533692025336900253369202533692041 |
:100B5000253369202533690054656D7065726174B1 |
:100B600075726573202020200025634320202020FB |
:100B700020002532692E2531695620202533692E23 |
:100B8000253169410025346957202536696D416852 |
:100B9000002532756D2F73205361743A256420004F |
:100BA00020203344004E6F4678004447505300489D |
:100BB0006F6D653A2533646D202533642563004EDF |
:100BC0006F204E6176694374726C21000A0D77774D |
:100BD000772E4D696B726F4B6F707465722E646502 |
:100BE0002028632920486953797374656D73204701 |
:100BF0006D6248000A0D74686520757365206F6624 |
:100C0000207468697320736F6674776172652069F8 |
:100C100073206F6E6C79207065726D697474656491 |
:100C2000200A0D6F6E206F726967696E616C204DCE |
:100C3000696B726F4B6F707465722D486172647767 |
:100C4000617265004143542044534C004A65746905 |
:100C500020736174656C6C6974005370656B747299 |
:100C6000756D20736174656C6C697420284C6F77A6 |
:100C7000207265736F6C7574696F6E2900537065AF |
:100C80006B7472756D20736174656C6C6974202867 |
:100C90003230343829005370656B7472756D20736F |
:100CA0006174656C6C6974004D756C746973696707 |
:100CB0006E616C2050504D000A0D52656365697677 |
:100CC00065723A2000756E6B6E6F776E2E205573CD |
:100CD000696E672050504D2E2E2E006E6F7420735B |
:100CE0007570706F727465642062792068617264D7 |
:100CF0007761726521000A0D3D3D3D3D3D3D3D3D25 |
:100D00003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D13 |
:100D10003D3D3D3D3D3D3D3D3D3D3D000A0D466C6B |
:100D200069676874436F6E74726F6C0A0D48617204 |
:100D300064776172653A25642E25640A0D536F66E7 |
:100D400074776172653A5625642E25642563200008 |
:100D50000A0D3D3D3D3D3D3D3D3D3D3D3D3D3D3D26 |
:100D60003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DB3 |
:100D70003D3D3D3D3D0011241FBECFEFD0E1DEBF24 |
:100D8000CDBF11E0A0E0B1E0EAE2F0EF02C00590D3 |
:100D90000D92A63FB107D9F718E0A6EFB1E001C068 |
:100DA0001D92A53DB107E1F76AEAE2E0F0E081E2D9 |
:100DB000809357007491AE014F5F5F4F20EF37EF84 |
:100DC000DA019FE0F9012F5F3F4F84918D9391509D |
:100DD00097FFF8CF773911F40000FECFFA019EE0BB |
:100DE000819168276095915097FFFACF888968179D |
:100DF00021F0773911F40000FECF0C94C0070C9459 |
:100E0000000080912006E82FFF27EE0FFF1FE65B12 |
:100E1000F84F808191818D5E9F4F14F010920301F5 |
:100E2000808191818A5B9F4FCCF48091030188235C |
:100E3000A9F481E080930301809163048F5F809324 |
:100E40006304853038F088EE93E090932902809314 |
:100E5000280204C066E970E00E94FD3680916304B8 |
:100E600099279093F1058093F00508951F93CF93F0 |
:100E7000DF93182F882389F082EF90E09F938F9360 |
:100E80008FEF92E19F938F93E0912F04F0913004C4 |
:100E900009950F900F900F900F9080914306823329 |
:100EA00008F044C084EF91E00E942517EC01112363 |
:100EB00029F0CE010E942E178823D9F3C2E0D0E09A |
:100EC00026E530E080911E0190911F018217930763 |
:100ED00030F02196255D3F4FC730D10598F38091C2 |
:100EE00043069927C89F9001C99F300DD89F300DA8 |
:100EF0001124209300011123D9F068EC70E08C2FAD |
:100F00000E94FD36DF93CF938AEF90E09F938F93FB |
:100F10008FEF92E19F938F93E0912F04F091300433 |
:100F200009958DB79EB706968DBF02C080930001CC |
:100F3000112311F1809100016AE00E944077892F0E |
:100F400099279F938F93809100010E944077992762 |
:100F50009F938F9385E091E09F938F938FEF92E122 |
:100F60009F938F93E0912F04F091300409952DB752 |
:100F70003EB7285F3F4F2DBFDF91CF911F9108955E |
:100F8000CFEFD0E1DEBFCDBF8824992414B815B8C7 |
:100F900007EE13E00253104017FFFCCF189B06C06A |
:100FA000199B02C08DE007C08BE005C0199B02C0F1 |
:100FB00084E101C08AE08093020181E887B93E9A0A |
:100FC0008FEF88B98BE184B981E085B98EE38AB966 |
:100FD00087E48BB9469A84B7877F84BF809160008D |
:100FE0008861809360001092600084EC99E0909397 |
:100FF00029028093280210921C0310921B03109266 |
:101000004F0710924E0710921E0310921D0310926C |
:10101000200310921F0320910201243128F084EC58 |
:1010200094E0A0E0B0E004C08BE095E0A0E0B0E088 |
:101030008093960190939701A0939801B0939901A2 |
:101040002A3011F0243110F0289801C0289A0E940B |
:101050008E170E945F170E9407130E9477330E9429 |
:10106000BE1A81E00E94DA2E0E94CD620E942F7586 |
:10107000809102018C3010F4299A01C0299878944B |
:101080000E94F92D0E94F86C80917002826080931A |
:101090007002109273020E941F4284EF91E00E943E |
:1010A00025178C018091700280FD05C0C8010E9447 |
:1010B0002E178823B9F38FE191E09F938F93BFEFB1 |
:1010C000AB2EB2E1BB2EBF92AF92E0912F04F09114 |
:1010D0003004099580EA9FE00E9425178C01C0E04A |
:1010E000D0E00F900F900F900F90ACEEEA2EA6E09C |
:1010F000FA2EF0EACF2EF6E0DF2E0E941F428091FA |
:10110000700280FD05C0C8010E942E178823B9F324 |
:10111000F60180811816ACF40BC00E941F4280912A |
:10112000700280FD05C0C8010E942E178823B9F304 |
:10113000C8010E942E17882321F4F701808188239B |
:1011400064F7F701808187FF18C02196DF93CF9362 |
:10115000219781E391E09F938F93BF92AF92E091AB |
:101160002F04F091300409958091F6018F5F8093F0 |
:10117000F6018DB79EB706968DBF2196E4E0F0E0AC |
:10118000CE0EDF1E88E090E0E80EF91ECC30D105CF |
:1011900008F4B3CFC0E0D0E009EE16E0E0EAEE2EAE |
:1011A000E6E0FE2EF801838187FD1CC0F7018081F7 |
:1011B0001816C4F42196DF93CF93219784E391E02E |
:1011C0009F938F938FEF92E19F938F93E0912F04E2 |
:1011D000F0913004099582E0809326028DB79EB786 |
:1011E00006968DBFF801838180788383219684E001 |
:1011F00090E0E80EF91E085F1F4FCC30D10590F249 |
:1012000082E591E09F938F93CFEFD2E1DF93CF936D |
:10121000E0912F04F0913004099590911E06809181 |
:10122000F6010F900F900F900F90981728F480916F |
:10123000490480618093490488E791E09F938F93EC |
:10124000DF93CF93E0912F04F0913004099588EE5D |
:1012500093E00E9425178C010E94C41A0F900F90F2 |
:101260000F900F90C8010E942E178823D9F388E9A8 |
:1012700091E09F938F93DF93CF93E0912F04F091B0 |
:101280003004099580E00E94BF37809102010F90E1 |
:101290000F900F900F908A3011F0843110F0289841 |
:1012A00001C0289A80ED97E090932902809328024C |
:1012B00085E5809365048EE090E00E948B2C992751 |
:1012C000182F00278FE090E00E948B2C080F111D33 |
:1012D0001093FC010093FB018AE090E00E948B2CAC |
:1012E0009927182F00278BE090E00E948B2C080F85 |
:1012F000111D1093FA010093F9010F5F1F4F39F090 |
:101300008091FB019091FC018F5F9F4F41F41092FF |
:10131000FC011092FB011092FA011092F9018091E8 |
:10132000F9019091FA019F938F938091FB01909125 |
:10133000FC019F938F938DE991E09F938F93DF93AF |
:10134000CF93E0912F04F091300409958DB79EB7AB |
:1013500008968DBF80EC91E09F938F93DF93CF939E |
:10136000E0912F04F0913004099580912C060F90A4 |
:101370000F900F900F90E0912F04F091300482FFB6 |
:1013800007C08CEC91E09F938F93DF93CF9308C0BD |
:1013900088ED91E09F938F938FEF92E19F938F93CE |
:1013A00009950F900F900F900F900E94E21F88E810 |
:1013B00093E1909393018093920181E08093640480 |
:1013C0000E943607809146060E9495748AEE91E04D |
:1013D0009F938F93DF93CF93E0912F04F09130048C |
:1013E000099580ED97E00E9425178C018AEF90E027 |
:1013F0000E942517EC0183E08093C8050F900F90A1 |
:101400000F900F908091FE018111FFCFCE010E94BD |
:101410002E17882339F084E690E00E942517EC010E |
:101420000E94EB7580912C02882309F4E0C1809121 |
:101430001001882309F4DBC110922C02809163040F |
:10144000882319F00E94010702C00E94F9440E94FB |
:101450001F42209102012A3011F0243110F0289807 |
:1014600001C0289A8091210390914904882339F082 |
:1014700080912103815080932103977F0AC080913E |
:101480006F00806280936F0010924B0710924A07A2 |
:1014900098609093490480919201909193010197F3 |
:1014A0009093930180939201809192019091930186 |
:1014B000892B21F0809171028823C9F180919201DA |
:1014C00090919301892BD9F40E94042F85E090E03C |
:1014D000909393018093920180910206909103066C |
:1014E00001969093030680930206809149048160DF |
:1014F000809349048091C90582608093C9058091D9 |
:101500000801909109018F5F9F4F19F58091180391 |
:101510008823F9F080E197E29093290280932802D2 |
:1015200080E890E0909309018093080112C02A306E |
:1015300011F0243110F0289801C0289A80912802D7 |
:1015400090912902892B29F4809149048E7F809300 |
:10155000490480912C02882309F049C180910E0131 |
:10156000882311F00E94A5170E944A130E94850E3D |
:10157000C8010E942E17882309F435C10C5E1F4F45 |
:101580008091710290914904882339F09260909380 |
:1015900049048091C90582600CC09D7F90934904E5 |
:1015A0008091920190919301079728F08091C9054D |
:1015B0008D7F8093C9058091920190919301079747 |
:1015C00028F0809149048E7F809349048091050121 |
:1015D000882321F081508093050125C080936F04FA |
:1015E0001092F9021092F8021092F7021092F6028D |
:1015F0001092F5021092F402809108019091090175 |
:101600008F5F9F4F81F480912103882361F488E9E3 |
:101610009AE3909329028093280280E09CE09093C3 |
:101620000901809308018091ED01893C48F08150C7 |
:101630008093ED01809149048B7F8093490430C0F1 |
:10164000809140088823E1F0809149048460809370 |
:10165000490480910801909109018F5F9F4F81F4A7 |
:1016600080911803882361F088E99AE39093290216 |
:101670008093280280E098EA909309018093080102 |
:1016800010920104109200041092FF031092FE03C6 |
:101690008FEF9FEF90936E0880936D081092ED018D |
:1016A00080910001282F332780911E0190911F0106 |
:1016B000821793075CF08091A5089091A6081816F0 |
:1016C0001906ECF0809148068823C9F08091ED025C |
:1016D00080628093ED0280910801909109018F5FF3 |
:1016E0009F4FC1F480E797E19093290280932802ED |
:1016F00080E093E090930901809308010BC08091F2 |
:10170000280290912902892B29F48091ED028F7D86 |
:101710008093ED020E94D96684E080932702809135 |
:101720001803882329F45AEA852E55E0952E12C015 |
:101730008091FD018F5F8093FD01813359F41092F8 |
:10174000FD018091F7019091F80101969093F801C5 |
:101750008093F7010894811C911CF2E78F16FBE03F |
:101760009F0609F040C0882499242091FB01309104 |
:10177000FC012F5F3F4F3093FC012093FB018091D0 |
:10178000F9019091FA0101969093FA018093F90181 |
:10179000832F9927682F8EE090E00E94912C8091F2 |
:1017A000FB019091FC019070682F8FE090E00E9407 |
:1017B000912C8091F9019091FA01892F9927682F36 |
:1017C0008AE090E00E94912C8091F9019091FA01B9 |
:1017D0009070682F8BE090E00E94912C84E190E063 |
:1017E0000E9425178C010E9429670E94196D809123 |
:1017F0002702882309F006CE0E94EE6203CE1F92D4 |
:101800000F920FB60F9211248F939F93EF93FF9334 |
:10181000809107018823E1F48091180290911902C8 |
:1018200001969093190280931802FC01E25EFA4F30 |
:10183000E081ED3019F08A3A910539F410921902DD |
:101840001092180281E080930701E093C60004C063 |
:101850001092190210921802FF91EF919F918F91AF |
:101860000F900FBE0F901F9018951F920F920FB6FA |
:101870000F9211242F933F934F935F936F937F9316 |
:101880008F939F93AF93BF93CF93EF93FF9390E08A |
:101890008091FE01813029F48091C6008093CE00B2 |
:1018A000CCC08091FE01823029F48091C6008093E3 |
:1018B0007204C3C08091C6008093100250911E0232 |
:1018C0005A3A10F090931F02809110028D3009F067 |
:1018D00065C080911F02823009F060C090931F02A2 |
:1018E000852F99278E589B4FFC013297408120917C |
:1018F0001A0230911B02241B3109DC0111978C91D3 |
:10190000281B3109C9019F7090931B0280931A0212 |
:1019100046E0969587954A95E1F7982F935C9093CA |
:101920001C022F733070235C20931D028081981756 |
:1019300029F48C91281711F491E006C090E0809171 |
:101940000D028F5F80930D02C0910F02CC2309F02E |
:1019500074C0992309F471C081E080930F02580F7D |
:1019600050930C025150E52FFF27EE58FB4F8DE0AE |
:10197000808380917404823509F05FC00E94E21F69 |
:1019800088E190E02CE00FB6F894A8958093600071 |
:101990000FBE20936000C09326024FC020911F020B |
:1019A000822F992781309105F9F0823091051CF43E |
:1019B000892B21F040C0029711F13DC080911002A7 |
:1019C000833239F480910F02882319F481E08093E7 |
:1019D0001F02809110028093720481E080931E02A6 |
:1019E00080911002992722C02F5F20931F02E52FBC |
:1019F000FF27EE58FB4F80911002808309C0E52F2E |
:101A0000FF27EE58FB4F8091100280835A3A20F452 |
:101A10005F5F50931E0202C010921F0220911002BD |
:101A200080911A0290911B02820F911D90931B02CC |
:101A300080931A0202C010921F02FF91EF91CF9182 |
:101A4000BF91AF919F918F917F916F915F914F91D6 |
:101A50003F912F910F900FBE0F901F901895AC01E2 |
:101A6000A0E0B0E09D01A817B90748F4EEE1F5E069 |
:101A70008191280F311D1196A417B507C8F33F7047 |
:101A8000FD01E25EFA4FC90156E0969587955A9599 |
:101A9000E1F7835C80831196FD01E25EFA4F2F73BC |
:101AA0003070822F835C8083A15EBA4F8DE08C936F |
:101AB0001092070180911E058093C6000895A0E052 |
:101AC000B0E0E5E6FDE00C94B9772C859D850E85A8 |
:101AD000BB2483E280931E059F5990931F0520939A |
:101AE000200533E0E32EF12C002309F49EC0CF84BF |
:101AF000D888BE016D5E7F4FA989BA8901501097C1 |
:101B000009F493C01097B9F0F601EB0DF11DB394F1 |
:101B10009081119791F4002349F1FB016E5F7F4F93 |
:101B2000DB01C080D1806E5F7F4F0D90BC91A02DF6 |
:101B3000BB24015002C090E019C01097B9F0F60123 |
:101B4000EB0DF11DB3944081119791F4002341F105 |
:101B5000FB016E5F7F4FDB01C080D1806E5F7F4FE6 |
:101B60000D90BC91A02DBB24015002C040E018C0D4 |
:101B70001097B1F0F601EB0DF11DB39410811197A0 |
:101B800081F4002371F0FB013296DB01CD90DC90F3 |
:101B9000BF016E5F7F4FA081B181BB24015001C0A6 |
:101BA00010E0F701E25EFA4F892F86958695835CF7 |
:101BB00080830894E11CF11CF701E25EFA4F892F43 |
:101BC00099278370907024E0880F991F2A95E1F778 |
:101BD00055279A0194E0369527959A95E1F7822B3F |
:101BE000835C80830894E11CF11CF701E25EFA4FEC |
:101BF0004F705070440F551F440F551F812F992768 |
:101C000026E0969587952A95E1F7842B835C80835F |
:101C10000894E11CF11CF701E25EFA4F1F73135C9C |
:101C200010830894E11CF11C6ACFC7010E942F0D9C |
:101C3000E9E00C94D577A3E07A2F40910C0246504E |
:101C4000442309F458C0E72FFF27EE58FB4F80814B |
:101C50008D537F5FE72FFF27EE58FB4F20812D53D9 |
:101C60007F5FE72FFF27EE58FB4F30813D537F5FAB |
:101C7000E72FFF27EE58FB4F60816D537F5F992759 |
:101C8000880F991F880F991F522F52955F70582BFC |
:101C9000822F99278F709070F4E0880F991FFA9522 |
:101CA000E1F7232F26952695282B832F99278370DC |
:101CB0009070E6E0880F991FEA95E1F7682B415094 |
:101CC0004F3FC9F0EA2FFF27EE58FB4F5083AF5F1D |
:101CD00041504F3F81F0EA2FFF27EE58FB4F208302 |
:101CE000AF5F41504F3F39F0EA2FFF27EE58FB4FCF |
:101CF0006083AF5FA5CF85E794E090930B0280935C |
:101D00000A02A350A09309020895A2E0B0E0EBE814 |
:101D1000FEE00C94BF7780910F02882309F46BC416 |
:101D20000E941B0E80917304823609F025C38091B6 |
:101D3000740499278037910509F4C1C08137910552 |
:101D4000C4F48A36910509F48DC28B36910544F4AA |
:101D50008B34910571F18636910509F46CC10CC381 |
:101D60008D36910509F47BC08E36910509F45FC06C |
:101D700003C384379105D1F1853791054CF4813740 |
:101D8000910509F4A3C08337910509F4F1C0F4C2A9 |
:101D90008737910509F428C2883791052CF48537D7 |
:101DA000910509F4E4C1E8C28937910509F47AC1C3 |
:101DB000E3C2E0910A02F0910B028081918190933D |
:101DC0003403809333032091310330913203821B1B |
:101DD000930B845E9D4F68E671E00E946077845BA0 |
:101DE00090409093300380932F03C6C280910C02E1 |
:101DF000A0910A02B0910B02853140F080E1EDE440 |
:101E0000F4E00D9001928A95E1F70DC08D919D91BE |
:101E10000D90BC91A02D80934D0490934E04A093FF |
:101E20004F04B093500480EF809307024BC0809121 |
:101E300007018823E1F38DE490E09F938F9383E97A |
:101E400096E09F938F9381E08F938F938EE48F938F |
:101E50000E945F0D8DB79EB707968DBF8DC2A09172 |
:101E60000A02B0910B021C91113081F48DE4E3E978 |
:101E7000F6E00D9001928A95E1F70E94482D1983B2 |
:101E8000809149048F7E8093490401C0198280911A |
:101E900007018823E1F381E090E09F938F93CE01C7 |
:101EA00001969F938F9381E08F938F938DE48F930F |
:101EB0000E945F0DADB7BEB71796ADBF5DC281E0A2 |
:101EC000809312028FEF8093050156C2E0910A02BF |
:101ED000F0910B02E0818E2F8A508A3058F489836A |
:101EE000882311F481E003C0863010F085E08983F7 |
:101EF00061E00EC08E2F84518A3070F4898388236C |
:101F000011F481E003C0863010F085E0898360E041 |
:101F100089810E94BC2D12C0E983EF3F19F40E9411 |
:101F2000AD2D89838981882311F481E003C0863037 |
:101F300010F085E0898389810E94A02C809107019F |
:101F40008823E1F383E790E09F938F938FE196E0FE |
:101F50009F938F9381E090E09F938F93CE010196A2 |
:101F60009F938F9382E08F9381E08F9381E572C17D |
:101F700020910A0230910B02D9018C918150853059 |
:101F800008F040C0F90181818535E1F52F5F3F4FB1 |
:101F900083E7EFE1F6E0D9010D9001928A95E1F730 |
:101FA000F90182910E94E42C809160069927AA276A |
:101FB000BB27BC01CD0124EC39E040E050E00E9499 |
:101FC0002177DC01CB018093D5019093D601A093BA |
:101FD000D701B093D801809161069927AA27BB2722 |
:101FE000BC01CD010E942177DC01CB018093D1019E |
:101FF0009093D201A093D301B093D4010E94AD2D50 |
:10200000898301C01982809107018823E1F381E06F |
:1020100090E09F938F93CE0101969F938F9381E0E1 |
:102020008F938F9383E58F930E945F0D8DB79EB73B |
:1020300007968DBF26C0E0910A02F0910B02E08165 |
:102040008E2F8150853018F48E2F0E94A02C0E9474 |
:10205000AD2D8983809107018823E1F381E090E031 |
:102060009F938F93CE0101969F938F9381E08F93DF |
:102070008F9386E48F930E945F0DADB7BEB717961E |
:10208000ADBF80911803882329F46EE670E0898142 |
:102090000E94FD3680E00E943607809146060E942D |
:1020A00095746AC1E0910A02F0910B028081992730 |
:1020B00087FD9095909365078093640781819927A8 |
:1020C00087FD909590936707809366078281992793 |
:1020D00087FD90959093690780936807838199277E |
:1020E00087FD909590936B0780936A078481992769 |
:1020F00087FD909590936D0780936C078581992754 |
:1021000087FD909590936F0780936E07868199273E |
:1021100087FD909590937107809370078781992729 |
:1021200087FD909590937307809372078085992718 |
:1021300087FD909590937507809374078185992703 |
:1021400087FD9095909377078093760782859927EE |
:1021500087FD9095909379078093780783859927D9 |
:1021600087FD909590937B0780937A0705C1E09156 |
:102170000A02F0910B0280810E94D0328A83882368 |
:1021800019F481E0898301C01982809107018823B5 |
:10219000E1F388E090E09F938F9381EE96E09F9328 |
:1021A0008F9321E030E03F932F9380910A0290912A |
:1021B0000B029F938F933F932F93CE0102969F9391 |
:1021C0008F933F932F93CE01820F931F9F938F93F3 |
:1021D00084E08F9381E08F9385E58F930E945F0D5C |
:1021E000EDB7FEB773963CC080910902893008F4C0 |
:1021F000C3C020910A0230910B022F5F3F4F88E04D |
:10220000A1EEB6E0F90101900D928A95E1F7D901AE |
:102210008E910E9426328A83882319F481E0898373 |
:1022200001C01982809107018823E1F321E030E0A9 |
:102230003F932F93CE0102969F938F933F932F93BB |
:10224000CE01820F931F9F938F9382E08F9381E043 |
:102250008F9387E58F930E945F0DEDB7FEB73B9696 |
:10226000EDBF8AC00E9448748983823019F084309F |
:1022700009F082C0F8948091C1008F738093C100EF |
:102280008091C9008F738093C9008091C100877EBF |
:102290008093C1008091C900877E8093C90080919E |
:1022A000C80087FF03C08091CE00F9CF8091C000A5 |
:1022B00087FF03C08091C600F9CFE0910A02F09138 |
:1022C0000B028081882359F581E08093FE011092F2 |
:1022D000CD0080E490E08093CC008091CD0080938D |
:1022E000C5008091CC008093C4008091CA008F7D8E |
:1022F0008093CA008091CA008F7E8093CA0080912B |
:10230000C9008B7F8093C9008091CA00846080934C |
:10231000CA008091CA0082608093CA0003C082E034 |
:102320008093FE018091CA00877F8093CA008091CC |
:10233000C200877F8093C2008091C9008E7F809306 |
:10234000C9008091C10088618093C1008091C9005B |
:1023500088618093C9008091C10080688093C1002A |
:102360008091C90080688093C90010926E0010921D |
:102370006F001092700078948091740499278436CD |
:10238000910509F4CDC085369105ACF481369105EF |
:1023900009F481C0823691052CF48B34910509F43F |
:1023A0005DC021C18236910509F482C08336910552 |
:1023B00009F491C018C18C36910509F4FFC08D361F |
:1023C00091054CF48736910509F40AC188369105C8 |
:1023D00009F4C4C008C18437910529F086379105F6 |
:1023E00009F4FAC000C180910C02A0910A02B091D8 |
:1023F0000B02803140F080E1EDE4F4E00D900192B9 |
:102400008A95E1F70DC08D919D910D90BC91A02D05 |
:1024100080934D0490934E04A0934F04B0935004C6 |
:10242000809107018823E1F31F92809104018F932B |
:1024300084E58F930E945F0D8AEF809307028FEFF0 |
:102440008093050180EA9FE00E9425179093000287 |
:102450008093FF010F900F900F90C5C0E0910A028A |
:10246000F0910B0280819181909334038093330328 |
:102470002091310330913203821B930B845E9D4F78 |
:1024800068E671E00E946077845B9040909330032F |
:1024900080932F03A8C0E0910A02F0910B02808183 |
:1024A00080930601803298F08FE1809306010FC07F |
:1024B000A0910A02B0910B028BE0E5E6F4E00D90EA |
:1024C00001928A95E1F780916E0480930A068FEF5E |
:1024D0008093050188C08091030290910402892BAA |
:1024E00089F4E0910A02F0910B02E081EE2351F0B1 |
:1024F0008AE0E89FC00111240E94251790934004B0 |
:1025000080933F04E0910A02F0910B0290818AE0EF |
:10251000989FC0011124909304028093030215C078 |
:102520008FEF80930501E0910A02F0910B029081F8 |
:102530008AE0989FC00111249093060280930502BF |
:10254000892B19F081E08093140280EA9FE00E94B9 |
:102550002517909300028093FF0145C08FEF809371 |
:102560000501E0910A02F0910B02908197FD08C0ED |
:1025700082E08093110210920202109201021AC0AE |
:10258000909580916902892B8093690291818AE0FC |
:10259000989FC0011124909302028093010284E06D |
:1025A0008093110280EA9FE00E9425179093000219 |
:1025B0008093FF0181E08093150215C08FEF809317 |
:1025C0000501E0910A02F0910B02808180936A027A |
:1025D00081E08093160207C081E08093130203C05C |
:1025E00081E08093170210920F0210920B0210925A |
:1025F0000A0210920902E3E0CE5F0C94DB77982F79 |
:102600008091C00085FFFCCF9093C60008950F9382 |
:102610001F9388E18093C1008091C0008260809305 |
:10262000C0008091C10080688093C1008091C1008A |
:1026300080648093C10000E010E00093C5008AE24E |
:1026400090E08093C40080910502909106020E9460 |
:10265000251790934204809341048CED90E00E94F2 |
:10266000251790937104809370041092430482E5BF |
:1026700080934404109247048BE0809345041092A9 |
:10268000460410930B0200930A02109209021F9154 |
:102690000F910895A0E1B0E0E0E5F3E10C94BC7780 |
:1026A00080910701882309F4C1C28091FF019091B4 |
:1026B00000020E942E17882361F0109202021092ED |
:1026C000010210920602109205021092040210926A |
:1026D00003028091010290910202892B41F08091C6 |
:1026E0001C0590911D050E942E17882329F48091C6 |
:1026F0001502882309F460C080910701882309F43A |
:102700005BC08091110201E211E08430A8F00E94C8 |
:10271000F61F80E590E09F938F931F930F9381E0C6 |
:102720008F938F9388E48F930E945F0D2DB73EB7F0 |
:10273000295F3F4F2DBF34C010926B0282E194E0BD |
:102740009F938F938BEE9FE19F938F93E0912F0444 |
:10275000F0913004099584E190E09F938F931F934B |
:102760000F9381E090E09F938F9381E192E09F939C |
:102770008F9382E08F9381E08F9388E48F930E9400 |
:102780005F0D80911102982F8F5F809311022DB7FA |
:102790003EB7215F3F4F2DBF943010F010921102D1 |
:1027A00080910102909102020E94251790931D05CD |
:1027B00080931C051092150280911602882351F116 |
:1027C00080910701882331F10E94F61F80E590E097 |
:1027D0009F938F9381E291E09F938F9321E030E06C |
:1027E0003F932F9380E291E09F938F933F932F939A |
:1027F0008AE692E09F938F9383E08F9381E08F939B |
:102800008CE48F930E945F0D109216028DB79EB7D5 |
:102810000F968DBF809113028823D1F0809107011C |
:102820008823B1F08AE090E09F938F9383E494E053 |
:102830009F938F9381E08F938F9386E58F930E9470 |
:102840005F0D109213022DB73EB7295F3F4F2DBF8A |
:10285000809117028823D9F0809107018823B9F06D |
:102860008BE090E09F938F9385E694E09F938F9306 |
:1028700081E08F93809104018F9387E48F930E946E |
:102880005F0D109217028DB79EB707968DBF80918E |
:102890007004909171040E942E17882309F461C07E |
:1028A00080910701882309F45CC080913B06992739 |
:1028B000880F991F880F991F7C010027F7FC00954E |
:1028C000102F8091750390917603A0917703B091BA |
:1028D0007803BC01CD01A80197010E949577309340 |
:1028E0005E0420935D0480916D0390916E03A0912E |
:1028F0006F03B0917003BC01CD01A80197010E9444 |
:1029000095773093600420935F0480910203809355 |
:102910006104809101038093620488E090E09F93BA |
:102920008F938DE594E09F938F9381E08F9383E065 |
:102930008F938BE68F930E945F0D809163042DB778 |
:102940003EB7295F3F4F2DBF853018F086E080935A |
:10295000630483E690E00E942517909371048093AE |
:1029600070048091050290910602892B41F08091BC |
:102970004104909142040E942E17882321F48091F3 |
:102980001402882339F180910701882319F10E94EC |
:10299000F33582E490E09F938F9388EC95E09F93CA |
:1029A0008F9381E08F938F9384E48F930E945F0DC8 |
:1029B000109214028DB79EB707968DBF80910502C5 |
:1029C00090910602009731F00E94251790934204DF |
:1029D000809341048091030290910402892B09F4B1 |
:1029E000B8C080913F04909140040E942E17882324 |
:1029F00009F4AFC080910701882309F4AAC080912F |
:102A00003B069927880F991F880F991F7C01002783 |
:102A1000F7FC0095102F8091750390917603A0919B |
:102A20007703B0917803BC01CD01A80197010E9402 |
:102A30009577309332042093310480916D03909107 |
:102A40006E03A0916F03B0917003BC01CD01A8018A |
:102A500097010E949577309334042093330420919A |
:102A60002608309127084091280850912908DA015A |
:102A7000C90163E0880F991FAA1FBB1F6A95D1F790 |
:102A8000820F931FA41FB51F820F931FA41FB51F92 |
:102A900020919601309197014091980150919901B0 |
:102AA000BC01CD010E949577309336042093350404 |
:102AB00080913D0390913E03A0913F03B09140036C |
:102AC00039E0B595A795979587953A95D1F7809375 |
:102AD00037048091390390913A03A0913B03B09160 |
:102AE0003C0329E0B595A795979587952A95D1F749 |
:102AF000809338048091450390914603A091470349 |
:102B0000B091480309E0B595A795979587950A95E3 |
:102B1000D1F7809339048EE090E09F938F9381E307 |
:102B200094E09F938F9381E08F938F9383E48F93AF |
:102B30000E945F0D80910302909104020E9425176C |
:102B40009093400480933F042DB73EB7295F3F4FD9 |
:102B50002DBF809106018F3F71F1992714E0880FF6 |
:102B6000991F1A95E1F78E5E9D4F40E150E0BC0140 |
:102B7000CE0101960E944F7680E190E09F938F9363 |
:102B8000CE0101969F938F9381E090E09F938F9366 |
:102B900086E091E09F938F9382E08F9381E08F9303 |
:102BA00081E48F930E945F0D8FEF809306018DB7B4 |
:102BB0009EB70B968DBF80910A068823D1F0809135 |
:102BC00007018823B1F081E090E09F938F938AE022 |
:102BD00096E09F938F9381E08F938F9382E48F93FE |
:102BE0000E945F0D10920A062DB73EB7295F3F4F36 |
:102BF0002DBF809112028823C9F08091070188239C |
:102C0000A9F084E390E09F938F938AE497E09F93E9 |
:102C10008F9381E08F938F9380E58F930E945F0D58 |
:102C2000109212028DB79EB707968DBFE6E0C05F87 |
:102C30000C94D8771F920F920FB60F9211242F93F6 |
:102C40003F935F936F937F938F939F93AF93BF93C4 |
:102C5000EF93FF9320E080912702882329F0809151 |
:102C6000270281508093270280911204882319F053 |
:102C700081508093120480912F02815080932F0203 |
:102C80008F3F09F05BC089E080932F0280912D0275 |
:102C900090912E02019690932E0280932D028091A6 |
:102CA0000F018F5F817080930F01882319F481E0F9 |
:102CB00080932C02349903C081E08093300280918C |
:102CC000280290912902892B21F18091280290916C |
:102CD00029020B9750F080912802909129020A97BF |
:102CE000909329028093280204C010922902109226 |
:102CF00028028091280290912902209108013091A8 |
:102D0000090182239323892B11F021E008C020E0E0 |
:102D100006C08FEF9FEF9093090180930801809187 |
:102D20000201222331F08A3011F45A9A07C0479ADF |
:102D300005C08A3011F45A9801C04798809130023A |
:102D4000882309F472C02091ED01222309F06DC09F |
:102D500080912C0683FF69C086B19927FC01E07140 |
:102D6000F07084FF14C080912A0290912B0201968A |
:102D700090932B0280932A0280912A0290912B0239 |
:102D8000895E934008F451C0209330024EC0809178 |
:102D90002A0290912B02892B09F443C080912A02C8 |
:102DA00090912B028A569140E0F580912A029091F1 |
:102DB0002B0269E270E00E944C7780912A02909188 |
:102DC0002B02860F971F90932B0280932A028091EB |
:102DD0002A0290912B020B9750F080912A02909139 |
:102DE0002B020A97909334038093330304C0F0932B |
:102DF0003403E093330380913303909134032091A3 |
:102E0000310330913203821B930B845E9D4F68E641 |
:102E100071E00E946077845B9040909330038093D0 |
:102E20002F0310922B0210922A02FF91EF91BF9173 |
:102E3000AF919F918F917F916F915F913F912F9172 |
:102E40000F900FBE0F901F90189520912D0230917A |
:102E50002E02280F391FC9010196089520912D02D5 |
:102E600030912E02821B930B892F992786958074AF |
:102E700090700895CF93DF930E942517EC01CE0147 |
:102E80000E942E178823D9F3DF91CF910895CF9315 |
:102E9000DF930E942517EC0109C08091100188235F |
:102EA00029F0909310018FEC80937A00CE010E945C |
:102EB0002E17982F882389F3DF91CF9108959FB71C |
:102EC000F8945F983E9A469A8091B0008F708093F4 |
:102ED000B0008091B00083608093B0008091B10019 |
:102EE0008B738093B1008091B1008B608093B100AF |
:102EF0001092B2008FEF8093B3008091B000806891 |
:102F00008093B000809170008A7F809370008091E0 |
:102F100070008260809370009FBF08958AE090E007 |
:102F20000E942517909336028093350282E085BD7A |
:102F300083EA84BD17BC84EB88BD86E086BD8091A2 |
:102F40006E00816080936E000895A0E0B0E0EBEA2F |
:102F5000F7E10C94BB7780915606E82FFF27E456E3 |
:102F6000FE4F9681D08080910E01A92FBB27A7FD2F |
:102F7000B095CB2FDB2F813009F0C9C020917503AC |
:102F8000309176034091770350917803BD01CE01D3 |
:102F90000E94217797FF04C061587F4F8F4F9F4F4A |
:102FA0007B018C0167E015950795F794E7946A9586 |
:102FB000D1F78D2D992787FD9095A92FB92F2091B5 |
:102FC0006D0330916E0340916F0350917003BC010B |
:102FD000CD010E94217797FF04C061587F4F8F4F2A |
:102FE0009F4F57E095958795779567955A95D1F7B7 |
:102FF000F801E701C61BD70BE80BF90B80914D06D2 |
:103000009927AA27BB27BC01CD019E01AF010E94D1 |
:10301000217797FF04C061507E4F8F4F9F4FFC0177 |
:10302000EB0149E0F595E795D795C7954A95D1F716 |
:103030008091C101992736E0880F991F3A95E1F7F1 |
:1030400040910C0150910D01209155063327841BAE |
:10305000950BB9010E94607780910C0190910D0150 |
:10306000860F971F90930D0180930C0180910C01A6 |
:1030700090910D0197FD0F9624E0959587952A95DF |
:10308000E1F790932302809322028091840680FFCF |
:1030900007C080912202909123028C0F9D1F06C0D1 |
:1030A00080912202909123028C1B9D0B909323020E |
:1030B0008093220280914E06282F3327220F331F40 |
:1030C000220F331F809122029091230282179307CF |
:1030D0007CF080914F06282F3327220F331F220FB9 |
:1030E000331F80912202909123022817390724F47C |
:1030F000309323022093220280910201843108F44C |
:10310000C2C080910E018F5F80930E01BEC02091DE |
:103110006D0330916E0340916F0350917003BD01B8 |
:10312000CE010E94217797FF04C061587F4F8F4FD7 |
:103130009F4F7B018C01C7E015950795F794E794A5 |
:10314000CA95D1F78D2D992787FD9095A92FB92F75 |
:103150002091750330917603409177035091780365 |
:10316000BC01CD010E9421779B01AC0197FF04C0F7 |
:1031700021583F4F4F4F5F4FB7E0559547953795D3 |
:103180002795BA95D1F72E0D3F1D401F511F8091F5 |
:1031900051069927AA27BB27BC01CD010E942177A0 |
:1031A00097FF04C061507E4F8F4F9F4FFC01EB0192 |
:1031B000A9E0F595E795D795C795AA95D1F78091A0 |
:1031C000C001992776E0880F991F7A95E1F7409121 |
:1031D0000A0150910B01209155063327841B950B52 |
:1031E000B9010E94607780910A0190910B01860FCE |
:1031F000971F90930B0180930A0180910A0190918F |
:103200000B0197FD0F9664E0959587956A95E1F718 |
:1032100090932102809320028091840681FF07C051 |
:1032200080912002909121028C0F9D1F06C08091F9 |
:103230002002909121028C1B9D0B90932102809380 |
:10324000200280915206282F3327220F331F220F8E |
:10325000331F8091200290912102821793077CF006 |
:1032600080915306282F3327220F331F220F331F3D |
:1032700080912002909121022817390724F430937D |
:1032800021022093200210920E01E7E0CDB7DEB7B5 |
:103290000C94D7771F920F920FB60F9211242F9391 |
:1032A0003F934F935F938F939F93EF93FF938091FF |
:1032B000020190913102843108F04CC0992309F049 |
:1032C0001CC18091B00086FF24C08091B0008F7B2C |
:1032D0008093B000809122029091230287559E4FE7 |
:1032E000909325028093240225E08D3D920718F0EB |
:1032F0008CED95E005C08757914030F487E791E069 |
:1033000090932502809324028091240290912502BB |
:10331000BAC08091B00080648093B0008091540660 |
:10332000282F33278DED96E0289FA001299F500D6F |
:10333000389F500D1124CA0120913202309133027E |
:10334000821B930B909325028093240281E080934B |
:103350000E01D0C0992309F0D0C08091B00086FF43 |
:1033600097C08091B0008F7B8093B000E0913402D1 |
:10337000EE23F1F480915406282F33278DED96E04B |
:10338000289FA001299F500D389F500D1124CA017C |
:103390002091320230913302821B930B90932502CD |
:1033A000809324021092330210923202469AA2C0F5 |
:1033B00089EA93E090932502809324028E2F992727 |
:1033C00083309105D9F08430910534F48130910532 |
:1033D00049F0029761F020C08430910591F0059783 |
:1033E00099F01AC0809122029091230204C080912A |
:1033F00020029091210287559E4F1DC08091E507C4 |
:1034000005C08091BB0702C08091F0079927880F03 |
:10341000991F880F991FEFCFFF27EE0FFF1FE65B65 |
:10342000F84F20813181220F331F80912402909127 |
:103430002502820F931F909325028093240280918E |
:1034400024029091250255E08D3D950718F08CEDF2 |
:1034500095E005C08757914030F487E791E090935D |
:1034600025028093240220912402309125022C5BB6 |
:1034700030403093250220932402809132029091B3 |
:103480003302820F931F909333028093320232C033 |
:103490008091B00080648093B0008CEB90E09093BA |
:1034A0002502809324028091320290913302845449 |
:1034B0009F4F90933302809332028091260288239B |
:1034C00021F080912103833320F480912602823001 |
:1034D00011F4469801C0469A809134028F5F809320 |
:1034E000340290915406981728F481E080930E01DD |
:1034F0001092340281E080933102209124023091B5 |
:10350000250241E02F37340730F08FEF8093B3006E |
:103510002F5F30400FC02F3F3105C9F0C0F0A90127 |
:103520004F5F50404F37510550F480E88093B3000F |
:1035300020583040309325022093240212C08FEF90 |
:103540008093B30050932502409324020AC08091D7 |
:1035500024028093B300109225021092240210924C |
:103560003102FF91EF919F918F915F914F913F9128 |
:103570002F910F900FBE0F901F90189510927C0006 |
:103580008FEC80937A000895CF93DF9310923B02E3 |
:1035900083E090E00E948B2CC82FDD27C531D10538 |
:1035A00008F02A97C7BD84E690E00E9447178091F3 |
:1035B0001401909115018052934010F4C0E0D0E0C6 |
:1035C000CA3FD105F8F4C7BD82E390E00E944717D7 |
:1035D00087E294E09F938F938FEF92E19F938F9375 |
:1035E000E0912F04F091300409958091140190919D |
:1035F00015010F900F900F900F908052934010F094 |
:103600002196DECFC0931B066C2F83E090E00E94D2 |
:10361000912C80912C0680FF0AC080911B068A5055 |
:103620008B3E28F080914804806480934804C7BD95 |
:103630008CE291E00E944717DF91CF910895EF92BD |
:10364000FF921F93CF9310E080ED97E00E94251723 |
:103650007C01CCE8133019F4CB3008F0C9E010E05D |
:1036600080914B0290914C028C5F934024F48091A6 |
:10367000130181500AC080914B0290914C028750F7 |
:10368000944034F0809113018F5F8093130101C047 |
:1036900011E08091490290914A028C5F934024F49A |
:1036A0008091120181500AC08091490290914A0292 |
:1036B0008750944034F0809112018F5F8093120103 |
:1036C00001C01F5F80914702909148028C5F934038 |
:1036D00024F48091110181500AC080914702909199 |
:1036E000480287509440C4F0809111018F5F80930D |
:1036F000110113C089E294E09F938F938FEF92E1C1 |
:103700009F938F93E0912F04F091300409950F90CF |
:103710000F900F900F905FC01F5F82E18093760241 |
:10372000809170028E7F8093700285EA8093BC0046 |
:10373000809113018A3040F4809148048160809325 |
:1037400048048AE08093130180911301863F40F082 |
:103750008091480481608093480485EF8093130131 |
:10376000809112018A3040F48091480482608093F5 |
:1037700048048AE08093120180911201863F40F054 |
:103780008091480482608093480485EF8093120101 |
:10379000809111018A3040F48091480484608093C4 |
:1037A00048048AE08093110180911101863F40F026 |
:1037B0008091480484608093480485EF80931101D0 |
:1037C00080917602882339F0C7010E942E17882342 |
:1037D00009F090CFF5CF109210018FEC80937A0012 |
:1037E000809110018823E1F3CA3020F48AE090E050 |
:1037F0000E944717C15009F02DCF86E490E00E9447 |
:103800004717CF911F91FF90EF9008951F920F924D |
:103810000FB60F921124AF92BF92CF92DF92EF9228 |
:10382000FF920F931F932F933F934F935F936F9349 |
:103830007F938F939F93AF93BF93EF93FF93809169 |
:103840005402282F3327442755278F5F8093540233 |
:10385000F9012231310508F08CC3E25CFF4F0C9472 |
:10386000E777809178009091790046C08091780048 |
:10387000909179002CC1809178009091790090937B |
:1038800057028093560257C180917E0390917F0327 |
:103890002091780030917900821B930B90930C0655 |
:1038A00080930B0680910B0690910C069093610219 |
:1038B000809360025EC180917800909179002091A0 |
:1038C000800330918103821B930B90931A0680939F |
:1038D00019068091190690911A06909363028093BD |
:1038E000620249C380915A0290915B022091780054 |
:1038F00030917900820F931F90935B0280935A025C |
:1039000081E03AC380915802909159022091780049 |
:1039100030917900820F931F90935902809358023F |
:1039200084E02AC380911E0190911F019C01220F07 |
:10393000331F280F391F809178009091790063E040 |
:1039400070E00E944C77260F371F369527953695E5 |
:10395000279530931F0120931E0185E00DC38091B0 |
:1039600078009091790040917A0350917B03841BF9 |
:10397000950B909342028093410280914102909175 |
:103980004202029704F122E04E3E520784F4209155 |
:1039900055022B5F2093550225508091EE029091A5 |
:1039A000EF02845F914018F4215F209355028091CB |
:1039B0005502853684F14F5F5F4F50937B034093F0 |
:1039C0007A03845626C080914102909142028F5F13 |
:1039D0009F4F0CF532E047325307ECF0209155022F |
:1039E0002550209355022B5F8091EE029091EF02BB |
:1039F000845F914018F42F50209355028091550216 |
:103A00008C394CF44150504050937B0340937A03DF |
:103A10008C598093550281E0809340028091780018 |
:103A20009091790090931206809311068091410243 |
:103A3000909142029C01442737FD4095542F80917C |
:103A4000350390913603A0913703B0913803820F6C |
:103A5000931FA41FB51F8093350390933603A09343 |
:103A60003703B093380320913503309136034091EA |
:103A700037035091380357FF04C021503C4F4F4F3C |
:103A80005F4F0AE055954795379527950A95D1F7E9 |
:103A90008091350390913603A0913703B09138039C |
:103AA000821B930BA40BB50B8093350390933603C5 |
:103AB000A0933703B09338032EC1809158029091A0 |
:103AC00059022091780030917900820F931F9093D2 |
:103AD0005902809358021092530250C28091020101 |
:103AE0008A3071F48091780090917900209156028B |
:103AF00030915702820F931F01969695879517C0B4 |
:103B00004091560250915702843158F0209178002C |
:103B100030917900240F351F8FEF97E0821B930BB4 |
:103B200006C08091780090917900840F951F909342 |
:103B300048028093470286E01FC280917E039091E5 |
:103B40007F032091780030917900821B930B909332 |
:103B50000C0680930B0680910B0690910C06209129 |
:103B6000600230916102820F931F9093460280930E |
:103B7000450287E001C28091780090917900209100 |
:103B8000800330918103821B930B90931A068093DC |
:103B900019068091190690911A06209162023091BF |
:103BA0006302820F931F9093440280934302E3C108 |
:103BB00020915A0230915B028091780090917900B7 |
:103BC000280F391F30935B0220935A028091020123 |
:103BD0008A3019F4220F331F04C0220F331F220F23 |
:103BE000331F30935B0220935A0220915A02309186 |
:103BF0005B02C90137FD0796A3E095958795AA95C5 |
:103C0000E1F790934C0280934B0280915C0290917B |
:103C10005D02820F931F97FD01969595879590936E |
:103C20005D0280935C0220918A0330918B03821B9A |
:103C3000930B90931D0180931C01209151023091B0 |
:103C4000520280911C0190911D01280F391F37FFEE |
:103C500002C02F5F3F4F3595279530935202209336 |
:103C600051024ECE20915802309159028091780035 |
:103C700090917900280F391F3093590220935802F0 |
:103C8000809102018A3019F4220F331F04C0220FE1 |
:103C9000331F220F331F3093590220935802209173 |
:103CA000580230915902C90137FD079663E0959596 |
:103CB00087956A95E1F790934A0280934902809133 |
:103CC0005E0290915F02820F931F97FD019695957A |
:103CD000879590935F0280935E02209188033091D4 |
:103CE0008903821B930B90931B0180931A012091EF |
:103CF0004F023091500280911A0190911B01280FC0 |
:103D0000391F37FF02C02F5F3F4F359527953093FE |
:103D1000500220934F0283E02FC11092540281E0A1 |
:103D20008093100180913702909138020196909310 |
:103D300038028093370280917800909179009093B7 |
:103D40001501809314018091140190911501AA2707 |
:103D5000BB27A0906402B0906502C0906602D0902C |
:103D60006702A80EB91ECA1EDB1EA0926402B092A2 |
:103D70006502C0926602D0926702809168028F5FEE |
:103D800080936802823108F4F6C080911601909108 |
:103D90001701A0911801B09119017C018D0123E058 |
:103DA000EE0CFF1C001F111F2A95D1F7E81AF90A23 |
:103DB0000A0B1B0BEA0CFB1C0C1D1D1D80913B020A |
:103DC000992787FD9095A92FB92FBC01CD0126EC2D |
:103DD00034E240E050E00E942177DC01CB01E81A98 |
:103DE000F90A0A0B1B0BD801C7010496A11DB11DCE |
:103DF000B7FF05C0D801C7010B96A11DB11D13E087 |
:103E0000B595A795979587951A95D1F78093160143 |
:103E100090931701A0931801B09319018091130694 |
:103E2000909114067C010027F7FC0095102F8091DB |
:103E3000160190911701A0911801B0911901E81A8B |
:103E4000F90A0A0B1B0BE0921303F0921403009380 |
:103E500015031093160320913C0230913D024091CE |
:103E60003E0250913F0257FF04C0215F3F4F4F4F2A |
:103E70005F4FF4E05595479537952795FA95D1F71B |
:103E800080913C0290913D02A0913E02B0913F0290 |
:103E9000821B930BA40BB50B80933C0290933D02C5 |
:103EA000A0933E02B0933F0280913C0290913D026C |
:103EB000A0913E02B0913F028E0D9F1DA01FB11F29 |
:103EC00080933C0290933D02A0933E02B0933F0248 |
:103ED0008091390290913A02AC01E5E0440F551F00 |
:103EE000EA95E1F7481B590B80913C0290913D0205 |
:103EF000A0913E02B0913F02B7FF03C00F96A11DF3 |
:103F0000B11D74E0B595A795979587957A95D1F7EA |
:103F10002091130330911403281B390B63E0220F07 |
:103F2000331F6A95E1F7240F351F37FF02C0215E6A |
:103F30003F4F45E0359527954A95E1F730933A0292 |
:103F400020933902D601C501D7FE03C00196A11DF9 |
:103F5000B11DB595A7959795879580936402909329 |
:103F60006502A0936602B093670289E080936802BD |
:103F700002C01092540282E0809353028091530257 |
:103F800080937C0080915402882319F08FEC8093F9 |
:103F90007A00FF91EF91BF91AF919F918F917F91A7 |
:103FA0006F915F914F913F912F911F910F91FF90D2 |
:103FB000EF90DF90CF90BF90AF900F900FBE0F901B |
:103FC0001F90189590E2E1E2F1E08FE49193815027 |
:103FD00087FFFCCF089590916B02E1E2F1E0E90FD9 |
:103FE000F11D80839F5F90936B020895EF92FF9283 |
:103FF0000F931F93CF93DF932091690220FF0AC094 |
:1040000080916A02882311F0815002C080912001C2 |
:1040100080936A0221FF0CC090916A028091200176 |
:10402000981719F410926A0203C09F5F90936A0276 |
:10403000822F992780FF04C081FF02C010926A027C |
:104040000E94E21F80916A02282F33275BEEE52E43 |
:104050005FE1F52EC0912F04D09130048A3098F49E |
:1040600081E180936B023F932F9380E694E09F93CE |
:104070008F93FF92EF92FE0109952DB73EB72A5F0D |
:104080003F4F2DBF11C080E180936B023F932F9370 |
:1040900085E694E09F938F93FF92EF92FE0109953E |
:1040A0008DB79EB706968DBF20916A02822F992701 |
:1040B000AA27BB27FC01429710F00C94A72AE05BCB |
:1040C000FF4F4BEEE42E4FE1F42EC0912F04D09120 |
:1040D00030040C94E77710926B028AE694E09F9389 |
:1040E0008F930BEE1FE1FF92EF92FE01099584E1A1 |
:1040F00080936B020F900F900F900F9081E690E0ED |
:104100009F938F9382E590E09F938F931F921F92CE |
:10411000809102016AE00E944077892F99279F933E |
:104120008F93809102010E94407799279F938F93EC |
:104130008AE794E09F938F93FF92EF92E0912F0490 |
:10414000F0913004099588E280936B022DB73EB759 |
:10415000225F3F4F2DBF84E996E09F938F930E948B |
:10416000AD2D99279F938F938FE894E09F938F9322 |
:10417000FF92EF92E0912F04F091300409958DB7F2 |
:104180009EB708968DBF90914804992351F08CE317 |
:1041900080936B02892F99279F938F938DE994E0E9 |
:1041A00081C690917102992371F08CE380936B0228 |
:1041B000892F99279F938F9384EB94E09F938F93FC |
:1041C0001F930F9391C08091490484FF07C08CE333 |
:1041D00080936B0289EC94E00C94392A80919201CF |
:1041E00090919301069710F00C94B02A8CE3809381 |
:1041F0006B0286ED94E00C94392A80912C063BEEFC |
:10420000E32E3FE1F32EC0912F04D091300480FFC4 |
:1042100074C010926B028091130390911403A091CB |
:104220001503B0911603BC01CD0125E030E040E05C |
:1042300050E00E9495773F932F9383EE94E09F93F5 |
:104240008F93FF92EF92FE01099584E180936B02B8 |
:104250002DB73EB72A5F3F4F2DBF80910F0390913E |
:104260001003A0911103B0911203BC01CD0125E010 |
:1042700030E040E050E00E9495773F932F9380EF2D |
:1042800094E09F938F93FF92EF92E0912F04F0912F |
:104290003004099588E280936B028DB79EB706962D |
:1042A0008DBF80911401909115019F938F938DEF95 |
:1042B00094E09F938F93FF92EF92E0912F04F091FF |
:1042C000300409958CE380936B022DB73EB72A5FCB |
:1042D0003F4F2DBF87B599279F938F938AE095E035 |
:1042E0009F938F93FF92EF92E0912F04F09130040F |
:1042F00009958DB79EB7069633C710926B0287E17A |
:1043000095E09F938F93FF92EF92FE01099584E1D0 |
:1043100080936B020F900F900F900F9086E295E0C4 |
:104320009F938F93FF92EF92E0912F04F0913004CE |
:10433000099588E280936B020F900F900F900F9079 |
:104340008FE295E09F938F93FF92EF92E0912F047D |
:10435000F091300409958CE380936B020F900F90DD |
:104360000F900F908EE395E09F938F93FF92EF92C3 |
:104370000C943D2A10926B0287E495E09F938F93F3 |
:104380000BEE1FE1FF92EF92FE01099584E180930D |
:104390006B020F900F900F900F908091750390918A |
:1043A0007603A0917703B0917803B7FF04C08150E2 |
:1043B0009C4FAF4FBF4F2AE0B595A795979587952E |
:1043C0002A95D1F7BF93AF939F938F9384E595E0A0 |
:1043D0009F938F931F930F93E0912F04F0913004DC |
:1043E000099588E280936B022DB73EB7285F3F4F57 |
:1043F0002DBF80916D0390916E03A0916F03B091DA |
:104400007003B7FF04C081509C4FAF4FBF4FCAE04D |
:10441000B595A79597958795CA95D1F7BF93AF9313 |
:104420009F938F9383E695E09F938F931F930F93B2 |
:10443000E0912F04F091300409958CE380936B0296 |
:104440008DB79EB708968DBF80913303909134034A |
:104450009F938F9382E795E09F938F931F930F9382 |
:10446000E0912F04F091300409952DB73EB72A5FF3 |
:104470003F4F11C710926B0280914E0790914F07EA |
:104480009F938F9380914C0790914D079F938F93AB |
:1044900081E895E09F938F93FF92EF92FE0109953B |
:1044A00084E180936B028DB79EB708968DBF809193 |
:1044B0005207909153079F938F938091500790914B |
:1044C00051079F938F9381E995E09F938F93FF927C |
:1044D000EF92E0912F04F0913004099588E28093E7 |
:1044E0006B022DB73EB7285F3F4F2DBF8091560717 |
:1044F000909157079F938F93809154079091550700 |
:104500009F938F9381EA95E09F938F93FF92EF9211 |
:10451000E0912F04F091300409958CE380936B02B5 |
:104520008DB79EB708968DBF80915A0790915B0713 |
:104530009F938F9380915807909159079F938F93E2 |
:1045400081EB95E0A2C010926B0280912106E82FCA |
:10455000FF27EE0FFF1FE65BF84F808191819F934D |
:104560008F9380912006E82FFF27EE0FFF1FE65B59 |
:10457000F84F808191819F938F9381EC95E09F9379 |
:104580008F93FF92EF92FE01099584E180936B0275 |
:104590008DB79EB708968DBF80912306E82FFF2721 |
:1045A000EE0FFF1FE65BF84F808191819F938F9301 |
:1045B00080912206E82FFF27EE0FFF1FE65BF84FE2 |
:1045C0008081918188589F4F9F938F9381ED95E0D3 |
:1045D0009F938F93FF92EF92E0912F04F09130041C |
:1045E000099588E280936B022DB73EB7285F3F4F55 |
:1045F0002DBF80912506E82FFF27EE0FFF1FE65BFA |
:10460000F84F8081918182599F4F9F938F93809122 |
:104610002406E82FFF27EE0FFF1FE65BF84F80818F |
:10462000918182599F4F9F938F9381EE95E09F9345 |
:104630008F93FF92EF92E0912F04F091300409954F |
:104640008CE380936B028DB79EB708968DBF8091E7 |
:104650002706E82FFF27EE0FFF1FE65BF84F80814C |
:10466000918182599F4F9F938F9380912606E82FC7 |
:10467000FF27EE0FFF1FE65BF84F80819181825983 |
:104680009F4F9F938F9381EF95E09F938F93FF921E |
:10469000EF92E0912F04F091300409952DB73EB7C9 |
:1046A000285F3F4FF8C510926B0281E096E09F9320 |
:1046B0008F930BEE1FE1FF92EF92FE01099580911F |
:1046C00002010F900F900F900F908A3009F09DC05B |
:1046D00084E180936B0280918A0390918B039C010B |
:1046E00097FF02C0295F3F4F287F821B930B9F9348 |
:1046F0008F9380918A0390918B0397FD0796A3E097 |
:1047000095958795AA95E1F79F938F9320918A03BA |
:1047100030918B0337FF02C0295F3F4FF3E035959F |
:104720002795FA95E1F780914B0290914C02821BFC |
:10473000930B9F938F938FE096E09F938F931F939C |
:104740000F93E0912F04F0913004099588E2809353 |
:104750006B028DB79EB70A968DBF809188039091AA |
:1047600089039C0197FF02C0295F3F4F287F821B6E |
:10477000930B9F938F93809188039091890397FD6A |
:104780000796E3E095958795EA95E1F79F938F93D8 |
:10479000209188033091890337FF02C0295F3F4F82 |
:1047A00073E0359527957A95E1F7809149029091CC |
:1047B0004A02821B930B9F938F9380E296E09F9314 |
:1047C0008F931F930F93E0912F04F091300409957C |
:1047D0008CE380936B022DB73EB7265F3F4F2DBF12 |
:1047E00080918603909187039F938F938091860396 |
:1047F000909187032091470230914802821B930BCE |
:104800009F938F9381E396E0A7C38B3019F0843197 |
:1048100008F4ADC084E180936B0280918A0390918B |
:104820008B039C0197FF02C0215F3F4F207F821BBB |
:10483000930B97FD0196959587959F938F93809104 |
:104840008A0390918B0397FD0F9654E09595879579 |
:104850005A95E1F79F938F9320918A0330918B03B0 |
:1048600037FF02C0295F3F4F43E0359527954A95B2 |
:10487000E1F780914B0290914C02821B930B9F9326 |
:104880008F938FE396E09F938F931F930F93E09105 |
:104890002F04F0913004099588E280936B022DB7C4 |
:1048A0003EB7265F3F4F2DBF8091880390918903CB |
:1048B0009C0197FF02C0215F3F4F207F821B930B1B |
:1048C00097FD0196959587959F938F938091880387 |
:1048D0009091890397FD0F96C4E095958795CA95A9 |
:1048E000E1F79F938F93209188033091890337FFDD |
:1048F00002C0295F3F4FB3E035952795BA95E1F7A0 |
:104900008091490290914A02821B930B9F938F934F |
:1049100081E596E09F938F931F930F93E0912F046F |
:10492000F091300409958CE380936B028DB79EB7AC |
:104930000A968DBF809186039091870397FD01961B |
:10494000959587959F938F93809186039091870388 |
:104950002091470230914802821B930B9F938F93C3 |
:1049600083E696E09F938F931F930F9392CE8D30A3 |
:1049700009F0F6C584E180936B02809113019927B9 |
:104980009F938F9380918A0390918B0397FD0F964D |
:10499000F4E095958795FA95E1F79F938F93209191 |
:1049A0008A0330918B0337FF02C0295F3F4FE3E05A |
:1049B00035952795EA95E1F780914B0290914C024D |
:1049C000821B930B9F938F9382E796E09F938F9325 |
:1049D0001F930F93E0912F04F0913004099588E222 |
:1049E00080936B028DB79EB70A968DBF809112019E |
:1049F00099279F938F93809188039091890397FDC6 |
:104A00000F9674E0959587957A95E1F79F938F932C |
:104A1000209188033091890337FF02C0295F3F4FFF |
:104A200063E0359527956A95E1F780914902909169 |
:104A30004A02821B930B9F938F9386E896E09F9385 |
:104A40008F931F930F93E0912F04F09130040995F9 |
:104A50008CE380936B022DB73EB7265F3F4F2DBF8F |
:104A60008091110199279F938F9380918603909154 |
:104A7000870397FD0196959587959F938F938091D6 |
:104A80008603909187032091470230914802821B50 |
:104A9000930B9F938F938AE996E09F938F931F9335 |
:104AA0000F93E0912F04F091300409958DB79EB7D4 |
:104AB0000A9656C310926B028EEA96E09F938F93EC |
:104AC000FF92EF92FE01099584E180936B020F90B3 |
:104AD0000F900F900F9080918003909181039F938E |
:104AE0008F9380914302909144029F938F938BEB1D |
:104AF00096E09F938F93FF92EF92E0912F04F091B5 |
:104B00003004099588E280936B022DB73EB7285F89 |
:104B10003F4F2DBF80917E0390917F039F938F9392 |
:104B200080914502909146029F938F938AEC96E084 |
:104B30009F938F93FF92EF92E0912F04F0913004B6 |
:104B400009958CE380936B028DB79EB708968DBF55 |
:104B500080917A0390917B039F938F938091410280 |
:104B6000909142029F938F9389ED96E08ECD1092A3 |
:104B70006B0280911E0190911F016AE070E00E941B |
:104B800060779F938F9380911E0190911F016AE03F |
:104B900070E00E9460777F936F9388EE96E09F931A |
:104BA0008F93FF92EF92FE01099584E180936B024F |
:104BB0008DB79EB708968DBF80919F089091A008F1 |
:104BC0006AE070E00E944C779F938F9380919F08DA |
:104BD0009091A0086AE070E00E944C777F936F93F9 |
:104BE0008CEF96E09F938F93FF92EF92E0912F04CA |
:104BF000F0913004099588E280936B022DB73EB79F |
:104C0000285F3F4F2DBF8091A1089091A2089F93EC |
:104C10008F9380E197E09F938F93FF92EF92E091C3 |
:104C20002F04F091300409958CE380936B028DB7CB |
:104C30009EB706968DBF8091A3089091A4089F937C |
:104C40008F9380E297E02EC110926B0282E397E08F |
:104C50009F938F93FF92EF92FE01099584E18093D9 |
:104C60006B020F900F900F900F9080914A079091D8 |
:104C70004B079F938F938BE397E09F938F93FF92C4 |
:104C8000EF92E0912F04F0913004099588E280932F |
:104C90006B028DB79EB706968DBF80912103992731 |
:104CA0009F938F938BE497E09F938F93FF92EF9264 |
:104CB000E0912F04F091300409958CE380936B020E |
:104CC0002DB73EB72A5F3F4F2DBF809149079927E7 |
:104CD00001979F938F938BE597E002CB10926B0225 |
:104CE0008BE697E09F938F93FF92EF92FE010995D9 |
:104CF00084E180936B020F900F900F900F90809142 |
:104D00002F03909130039F938F9383E797E09F93B6 |
:104D10008F93FF92EF92E0912F04F0913004099568 |
:104D200088E280936B022DB73EB72A5F3F4F2DBFBD |
:104D300080913303909134039F938F9381E897E0A0 |
:104D40009F938F93FF92EF92E0912F04F0913004A4 |
:104D500009958CE380936B028DB79EB706968DBF45 |
:104D600080913103909132039F938F938FE897E066 |
:104D700099C010926B028091220399279F938F9381 |
:104D80008DE997E09F938F93FF92EF92FE01099533 |
:104D900084E180936B028DB79EB706968DBF80919C |
:104DA000230399279F938F9389EA97E09F938F938B |
:104DB000FF92EF92E0912F04F0913004099588E280 |
:104DC00080936B022DB73EB72A5F3F4F2DBF809176 |
:104DD000240399279F938F9385EB97E09F938F935D |
:104DE000FF92EF92E0912F04F091300409958CE34B |
:104DF00080936B028DB79EB706968DBF8091250379 |
:104E000099279F938F9381EC97E04CC010926B028F |
:104E10008091260399279F938F938DEC97E09F9322 |
:104E20008F93FF92EF92FE01099584E180936B02CC |
:104E30008DB79EB706968DBF8091270399279F93C4 |
:104E40008F9389ED97E09F938F93FF92EF92E0917C |
:104E50002F04F0913004099588E280936B022DB7FE |
:104E60003EB72A5F3F4F2DBF8091280399279F931C |
:104E70008F9385EE97E09F938F93FF92EF92E0914F |
:104E80002F04F091300409958CE380936B028DB769 |
:104E90009EB706968DBF8091290399279F938F9384 |
:104EA00081EF97E09F938F93FF92EF92D9CA109270 |
:104EB0006B028DEF97E09F938F930BEE1FE1FF92B4 |
:104EC000EF92FE01099584E180936B020F900F90A1 |
:104ED0000F900F908091C10199279F938F9385E048 |
:104EE00098E09F938F93FF92EF92E0912F04F091BF |
:104EF0003004099588E280936B028DB79EB70696C1 |
:104F00008DBF809122029091230297FD0396959583 |
:104F10008795959587959F938F9383E198E09F93CD |
:104F20008F931F930F93E0912F04F0913004099514 |
:104F30008CE380936B022DB73EB72A5F3F4F2DBFA6 |
:104F400080914F0699279F938F9380914E069927C2 |
:104F50009F938F9381E298E09F938F931F930F937A |
:104F6000E0912F04F091300409958DB79EB7089613 |
:104F7000F7C010926B028FE298E09F938F93FF929D |
:104F8000EF92FE01099584E180936B020F900F90E0 |
:104F90000F900F9080916904992787FD90959F93BA |
:104FA0008F9380916804992787FD90959F938F93A5 |
:104FB0008FE398E09F938F93FF92EF92E0912F04FD |
:104FC000F0913004099588E280936B022DB73EB7CB |
:104FD000285F3F4F2DBF80916A04992787FD9095E8 |
:104FE0009F938F9380916B0499279F938F938FE466 |
:104FF00098E09F938F93FF92EF92E0912F04F091AE |
:10500000300409958CE380936B028DB79EB70896A8 |
:105010008DBF80916F0499279F938F9380916C042B |
:10502000992787FD90959F938F938FE598E02DCBDF |
:1050300010926B028FE698E09F938F93FF92EF920E |
:10504000FE01099584E180936B020F900F900F9001 |
:105050000F908091040799278F7790709F938F937B |
:105060008091FC0699278F7790709F938F93809102 |
:10507000F40699278F7790709F938F938091EC0619 |
:1050800099278F7790709F938F938FE798E09F93E6 |
:105090008F93FF92EF92E0912F04F09130040995E5 |
:1050A00088E280936B028DB79EB70C968DBF80917E |
:1050B000240799278F7790709F938F9380911C0777 |
:1050C00099278F7790709F938F93809114079927DA |
:1050D0008F7790709F938F9380910C0799278F778C |
:1050E00090709F938F9380E998E09F938F93FF92A6 |
:1050F000EF92E0912F04F091300409958CE38093B6 |
:105100006B022DB73EB7245F3F4F2DBF8091440700 |
:1051100099278F7790709F938F9380913C07992761 |
:105120008F7790709F938F938091340799278F7713 |
:1051300090709F938F9380912C0799278F77907011 |
:105140009F938F9381EA98E09F938F93FF92EF92C2 |
:10515000E0912F04F091300409958DB79EB70C961D |
:105160008DBFFEC110926B0282EB98E09F938F93EC |
:10517000FF92EF92FE01099584E180936B020F90FC |
:105180000F900F900F9080910807992787FD9095B9 |
:105190009F938F9380910007992787FD90959F9308 |
:1051A0008F938091F806992787FD90959F938F9311 |
:1051B0008091F006992787FD90959F938F9381ECBE |
:1051C00098E09F938F93FF92EF92E0912F04F091DC |
:1051D0003004099588E280936B022DB73EB7245FB7 |
:1051E0003F4F2DBF80912807992787FD90959F936A |
:1051F0008F9380912007992787FD90959F938F9398 |
:1052000080911807992787FD90959F938F938091A0 |
:105210001007992787FD90959F938F9382ED98E0D3 |
:105220009F938F93FF92EF92E0912F04F0913004BF |
:1052300009958CE380936B028DB79EB70C968DBF5A |
:1052400080914807992787FD90959F938F93809130 |
:105250004007992787FD90959F938F9380913807FA |
:10526000992787FD90959F938F9380913007992779 |
:1052700087FD90959F938F9383EE98E09F938F93F4 |
:10528000FF92EF92E0912F04F091300409952DB731 |
:105290003EB7245F3F4F2DBF63C110926B0284EF76 |
:1052A00098E09F938F930BEE1FE1FF92EF92FE0128 |
:1052B000099584E180936B020F900F900F900F90EF |
:1052C00080910407881F8827881F97E0899FC00165 |
:1052D00011248D969F938F938091FC06881F8827B9 |
:1052E000881F96E0899FC00111248D969F938F930C |
:1052F0008091F406881F8827881F95E0899FC00148 |
:1053000011248D969F938F938091EC06881F882798 |
:10531000881F9927880F991F880F991F8D969F9333 |
:105320008F9383E099E09F938F93FF92EF92E091A8 |
:105330002F04F0913004099588E280936B028DB7B9 |
:105340009EB70C968DBF80912407881F8827881FE1 |
:105350009BE0899FC00111248D969F938F9380912C |
:105360001C07881F8827881F9AE0899FC001112485 |
:105370008D969F938F9380911407881F8827881F8D |
:1053800099E0899FC00111248D969F938F938091FE |
:105390000C07881F8827881F992723E0880F991FEB |
:1053A0002A95E1F78D969F938F9387E199E09F93DC |
:1053B0008F93FF92EF92E0912F04F09130040995C2 |
:1053C0008CE380936B022DB73EB7245F3F4F2DBF18 |
:1053D00080912C07881F8827881F9CE0899FC00127 |
:1053E00011248D969F938F938BE299E09F938F93D7 |
:1053F000FF92EF92E0912F04F09130040995809193 |
:1054000034072DB73EB72A5F3F4F2DBF87FF12C02D |
:1054100080E480936B028CE399E09F938F93FF92DB |
:10542000EF92E0912F04F091300409950F900F90C6 |
:105430000F900F9080913C0787FF12C084E4809307 |
:105440006B028FE399E09F938F931F930F93E091EB |
:105450002F04F091300409950F900F900F900F904A |
:105460008091440787FF7CC088E480936B0282E4CC |
:1054700099E09F938F931F930F93E0912F04F091E6 |
:10548000300409950F900F900F900F9069C0109203 |
:105490006B0285E499E09F938F93FF92EF92FE0158 |
:1054A000099584E180936B020F900F900F900F90FD |
:1054B0008091F9019091FA019F938F9383E599E090 |
:1054C0009F938F93FF92EF92E0912F04F09130041D |
:1054D000099588E280936B028DB79EB706968DBFC3 |
:1054E0008091FB019091FC019F938F9380E699E05E |
:1054F0009F938F93FF92EF92E0912F04F0913004ED |
:10550000099589E480936B022DB73EB72A5F3F4F20 |
:105510002DBF8DE699E09F938F93FF92EF92E091DC |
:105520002F04F09130040995809169020F900F903B |
:105530000F900F9083FF14C01092FC011092FB019A |
:1055400060E070E08EE090E00E949B2C09C08091AA |
:105550002001281719F421502093200110926A028B |
:1055600010926902E6E0CDB7DEB70C94D8774AEA2C |
:1055700020E030E02617370740F4FC018191480F06 |
:105580002F5F3F4F26173707C8F3842F99270895B9 |
:10559000AC019AEA20E030E02617370750F4DA0130 |
:1055A000A20FB31F0E94ED77802D980F2F5F3F4F02 |
:1055B000F3CF892F9927089581E08093220682E016 |
:1055C0008093210683E08093200684E08093230665 |
:1055D00085E08093240686E08093250687E080930B |
:1055E000260688E08093270689E0809328068AE0D3 |
:1055F000809329068BE080932A068CE080932B060B |
:10560000089595E590931F0680910201843170F012 |
:105610008AE080933F06109263068BE180933B06FD |
:105620008EE480936006809361060DC083E08093D2 |
:105630003F0680E2809363068EE180933B06909361 |
:105640006006909361068AE680932C0683E080933F |
:10565000850681E0809346061092820610927F06AE |
:1056600068E06093390686EE80933A0680E880937E |
:105670003C065EE150932D068FEF80932F069FE04E |
:105680009093300650932E061092320660933306A4 |
:1056900080E4809334061092350690933106109280 |
:1056A00048061092490610924A0610924B06109234 |
:1056B000650610926606109267061092680638E733 |
:1056C00030934C0648E240934D0672E07093840696 |
:1056D00090934E0627EF20934F0685E08093540663 |
:1056E0008DE7809357068093580680935906309330 |
:1056F00050069AE590935106109252062093530655 |
:1057000040935506109256068FE58093690683EF05 |
:1057100080936B068AEA80936D0680936E0684E11F |
:1057200080936A0680936C0682E380935A06909376 |
:105730005B0680935C06109283068EEF80936F0663 |
:1057400024E62093700690937106909372069093CE |
:1057500073068BE4809374068093750680937606B7 |
:105760001092770686E0809378066093790690938E |
:105770007A0650937B0620937C0620937D067093D7 |
:105780007E06109280061092810681E28093430685 |
:105790008DE280934406909345060895CF93DF935E |
:1057A0000E94012B8EE08093360620E1209337067D |
:1057B0003CE03093380690E590933D0686E980936F |
:1057C0003E06909340068093410686E08093420611 |
:1057D00080E2809347068AE580935D0690935E069B |
:1057E00081E080935F062093620684E680936406DE |
:1057F000A6E8B6E0E1E7F1E0ED01019009923A9503 |
:10580000E1F763E770E0CD01875690400E94B72A28 |
:1058100080939206DF91CF910895CF93DF930E94FA |
:10582000012B8AE08093360680E18093370626E0DC |
:10583000209338069AE590933D0688E780933E06CC |
:1058400090934006809341062093420620E22093E5 |
:10585000470690935D0680E580935E068CE3809317 |
:105860005F06209362068BE480936406A6E8B6E0A8 |
:105870008CE0E8E7F1E0ED01019009928A95E1F70B |
:1058800063E770E0CD01875690400E94B72A80936D |
:105890009206DF91CF910895CF93DF930E94012B61 |
:1058A00088E08093360630E13093370626E0209377 |
:1058B000380694E690933D0688E780933E069093E1 |
:1058C00040068093410620934206309347068AE5BE |
:1058D00080935D0680E580935E0696E490935F0674 |
:1058E00080E28093620690936406A6E8B6E08CE0BE |
:1058F000E0E8F1E0ED01019009928A95E1F763E7B4 |
:1059000070E0CD01875690400E94B72A809392069E |
:10591000DF91CF910895DC010E94ED77802D9927CA |
:105920000895DC01062E0E94FF770895DC010E9495 |
:10593000FA77CF010895DC010B010E940B780895DE |
:10594000FF920F931F93CF93DF93982F8150853051 |
:1059500008F093E084E7F82E9F9D80011124E80170 |
:10596000609763E770E0CE010E94C82A982FD801A3 |
:10597000AD59BF4F0E94ED77802D891731F4DE01BC |
:105980000E94ED77802D853519F080E090E00AC007 |
:10599000EFE1F6E0DE011F2C0E94F5770E941A6706 |
:1059A00081E090E0E5E0CDB7DEB70C94D9778630A2 |
:1059B00010F085E003C0882309F481E0A2E0B0E0A4 |
:1059C000082E0E94FF7708951F93CF93DF93182F1F |
:1059D000CFE1D6E080911F06853591F5163010F0A5 |
:1059E00015E002C0112361F163E770E08FE196E0FA |
:1059F0000E94B72A8093920684E7189FD001112451 |
:105A00005097FE01182E0E941078E0E2F6E0A0E523 |
:105A1000B0E02CE030E0122E0E941078B90180E254 |
:105A200096E00E94B72AACE5B0E0082E0E94FF770E |
:105A3000812F0E94D72C0E941A6781E090E002C05B |
:105A400080E090E0DF91CF911F9108956DE470E0C8 |
:105A500088EE93E00E94C82AA5E3B4E00E94ED77A7 |
:105A6000902D981739F4A8EEB3E00E94ED77802DC1 |
:105A7000813019F080E090E00895E3E9F6E0A8EEC7 |
:105A8000B3E08EE4182E0E94F57781E090E008954F |
:105A9000CF93DF93C3E9D6E080919306813089F4F8 |
:105AA0006DE470E0CE010E94B72A8093E006A8EE74 |
:105AB000B3E08EE4FE01182E0E94107881E090E0A1 |
:105AC00002C080E090E0DF91CF910895CF93DF9303 |
:105AD00081E080939306E3E9F6E08FE01586168671 |
:105AE0001786108A8150349687FFF8CF80E4809320 |
:105AF000A0068093A1061092A2068093A30680932D |
:105B0000A40690EC9093A5061092A6068093A70693 |
:105B10008093A8061092A9069093AA069093AB06CC |
:105B20008093AC061092AD068093AE069093AF06BC |
:105B3000A4E9B6E087E0EAE8F1E0ED01019009921E |
:105B40008A95E1F76DE470E0CD0101970E94B72AD4 |
:105B50008093E006DF91CF910895A2E0B0E00E942B |
:105B6000ED77802D863030F083E0A2E0B0E0082EA3 |
:105B70000E94FF77992708951F93CF93C82F162F60 |
:105B8000863010F0C5E003C0882309F4C1E08C2FF3 |
:105B900099278230910541F08330910544F40197B3 |
:105BA00031F40E94CE2B05C00E940D2C02C00E9431 |
:105BB0004C2C1123B1F06CE070E080E590E00E9485 |
:105BC000C82AACE5B0E00E94ED77902D981749F413 |
:105BD000E0E2F6E0A0E5B0E08CE0182E0E94F57758 |
:105BE00002C00E94DC2A8C2F0E94E42CCF911F91CE |
:105BF0000895DF92EF92FF920F931F93CF93FF24AC |
:105C0000DF2CEF2C81E090E00E948B2C853539F061 |
:105C100031E0E32E65E581E090E00E94912C6CE09C |
:105C200070E080E590E00E94C82AC82FACE5B0E0A3 |
:105C30000E94ED77802D8C1711F421E0D22EC1E067 |
:105C400001E010E0EE2029F48C2F0E94A02C882384 |
:105C5000B1F591E0F92E1F930F9385E799E09F939B |
:105C60008F938FEF92E19F938F93E0912F04F091A8 |
:105C7000300409958DB79EB706968DBF0230110589 |
:105C800049F0033011054CF40130110531F40E9444 |
:105C9000CE2B05C00E940D2C02C00E944C2CDD2092 |
:105CA00049F0E0E2F6E0A0E5B0E08CE0182E0E94BA |
:105CB000F57702C00E94DC2A8C2F0E94E42CCF5F73 |
:105CC0000F5F1F4FC63008F4BDCFFF2019F083E0EF |
:105CD0000E94D72C0E94AD2DC82F0E94A02C8C2F83 |
:105CE00099279F938F938BE999E09F938F930FEF61 |
:105CF00012E11F930F93E0912F04F0913004099566 |
:105D00008DB79EB706968DBFEE2021F40E94262DFA |
:105D1000882399F484EB99E09F938F931F930F93BB |
:105D2000E0912F04F091300409950E94662D0E94A5 |
:105D3000482D0F900F900F900F9010921E0690E03C |
:105D4000E0EAF6E0CFE08081349618160CF49F5F0D |
:105D5000C150C7FFF8CF90931E06892F99279F93B4 |
:105D60008F9384E996E09F938F9385ED99E09F93BD |
:105D70008F931F930F93E0912F04F09130040995B6 |
:105D80008DB79EB708968DBF86EF99E09F938F934E |
:105D90001F930F93E0912F04F091300409950F9019 |
:105DA0000F900F900F90CF911F910F91FF90EF9058 |
:105DB000DF900895982F2FB7F8943998389A88B1C2 |
:105DC000836088B98091B9008C7F8093B9008AE2A2 |
:105DD0008093B800109276021092740210927302AF |
:105DE000992379F0E9EEF6E08BE0108211821282BD |
:105DF000138214821582168217828150389687FF8B |
:105E0000F4CF78942FBF08951092760284E980939E |
:105E1000BC0080E88093BC001092BD001092BA00D4 |
:105E20001092BB001092B9001092B800109272024A |
:105E300080E00E94DA2E1092BB0085E88093BC00BF |
:105E40008091700282608093700208951F920F9279 |
:105E50000FB60F9211242F933F934F935F938F931D |
:105E60009F93EF93FF9380917602282F3327442747 |
:105E700055278F5F80937602F9012731310508F0AD |
:105E8000C2C2EE59FF4F0C94E77781E08093720213 |
:105E900009C0809174028C3090F4809174028F5FFD |
:105EA0008093740280917402E82FFF27EE0FFF1F8A |
:105EB000EE0FFF1FED56F94F8585181654F78091A8 |
:105EC00074028C3070F010926F0210926E02109279 |
:105ED000740285E08093760280917302880F8D5A58 |
:105EE00004C080917402880F8E5A8093BB0085E8AD |
:105EF0007FC280917402E82FFF2783E0EE0FFF1F1F |
:105F00008A95E1F7E751F94F81818093BB0085E8DD |
:105F10008093BC0080917402E82FFF27EE0FFF1FD3 |
:105F2000EE0FFF1FEE0FFF1FE751F94F808180FF3B |
:105F300091C080917402E82FFF27EE0FFF1FEE0F34 |
:105F4000FF1FEE0FFF1FE751F94F8281882329F0D1 |
:105F500080911E06873008F46CC280916E02909189 |
:105F60006F02892B09F065C280916C0290916D02DD |
:105F7000892B09F05EC26EC08091740221E030E08E |
:105F800002C0220F331F8A95E2F780916C02909134 |
:105F90006D0228233923232B79F080917402E82F96 |
:105FA000FF27EE0FFF1FEE0FFF1FEE0FFF1FE75142 |
:105FB000F94F80E184830DC080917402E82FFF27A0 |
:105FC000EE0FFF1FEE0FFF1FEE0FFF1FE751F94F00 |
:105FD000148280917402E82FFF2753E0EE0FFF1F19 |
:105FE0005A95E1F7E751F94F8481282F332743E091 |
:105FF000220F331F4A95E1F780917402E82FFF27A3 |
:1060000093E0EE0FFF1F9A95E1F7E751F94F828178 |
:106010008770822B8093BB0085E88093BC00209121 |
:10602000740281E090E002C0880F991F2A95E2F780 |
:1060300020916E0230916F0282239323892B51F0BD |
:1060400081EE96E090937A028093790288E08093C3 |
:106050007B02EFC184E089C1E0917902F0917A027C |
:1060600081918093BB0085E88093BC00F0937A0215 |
:10607000E093790280917B02815080937B02882398 |
:1060800009F4D7C183E071C18091B900803351F523 |
:1060900080917702882329F4809174028F5F809326 |
:1060A000770280917402E82FFF2783E0EE0FFF1F35 |
:1060B0008A95E1F7E751F94F838199278F7790709F |
:1060C0008F3791057CF480917402E82FFF27EE0F43 |
:1060D000FF1FEE0FFF1FEE0FFF1FE751F94F8381E8 |
:1060E0008F5F83831092760284E98093BC008AE0FC |
:1060F00090E09093930180939201809174028F5F5E |
:1061000080937402109276026DC18091B900803440 |
:10611000C9F180917302E82FFF27EE0FFF1FEE0FEA |
:10612000FF1FEE0FFF1FE751F94F83818F778383A6 |
:10613000809173028F5F80937302809173028C3021 |
:10614000A0F01092730210926D0210926C02809176 |
:1061500078028F5F809378028C3038F0109278024A |
:10616000809170028D7F80937002809170028160B7 |
:10617000809370021092760284E98093BC001092A2 |
:10618000720273C080917302E82FFF27EE0FFF1F8A |
:10619000EE0FFF1FEE0FFF1FE751F94F838180685D |
:1061A000838380917302E82FFF27EE0FFF1FEE0F0E |
:1061B000FF1FEE0FFF1FE751F94F808180FF2FC0B7 |
:1061C00080917302E82FFF2753E0EE0FFF1F5A95CF |
:1061D000E1F7E751F94F84819927009751F04097F3 |
:1061E000D9F581EE96E090937A028093790288E067 |
:1061F00031C080917302992743E0880F991F4A9517 |
:10620000E1F78251994F90937A02809379029091AD |
:106210007302809178029817E1F483E01BC08091AB |
:106220007302992733E0880F991F3A95E1F782515D |
:10623000994F90937A02809379028091700281FD48 |
:1062400006C09091730280917802981711F482E051 |
:1062500001C081E080937B0280917B02813011F448 |
:1062600085E801C085EC8093BC0080917702809323 |
:10627000710210927702DDC0E0917902F0917A020A |
:106280008091BB0080838091790290917A0201967F |
:1062900090937A028093790280917B02815080935F |
:1062A0007B02823010F085EC5DC0813011F485E80E |
:1062B00059C08091700281FF2DC08091ED0280FD58 |
:1062C0001DC080917302E82FFF2723E0EE0FFF1F10 |
:1062D0002A95E1F7E751F94F86818A3F79F4809159 |
:1062E0007302E82FFF2793E0EE0FFF1F9A95E1F767 |
:1062F000E751F94F8081816080830CC080917302E7 |
:10630000E82FFF2783E0EE0FFF1F8A95E1F7E751A3 |
:10631000F94F1082809173028F5F80937302809196 |
:1063200073028C30A0F01092730210926D021092E2 |
:106330006C02809178028F5F809378028C3038F005 |
:1063400010927802809170028D7F8093700210927B |
:10635000760284E98093BC00809170028160809312 |
:10636000700265C08093BC0086E08093760261C0B5 |
:1063700088E9BBCD80917502880F805FB6CD809192 |
:10638000750299278130910561F0823091051CF4E6 |
:10639000892B21F04EC0029739F04BC08091130138 |
:1063A000A4CD80911201A1CD809111019ECD80E8F4 |
:1063B0009CCD1092760284E98093BC001092720208 |
:1063C0008AE090E09093930180939201809175020E |
:1063D000823088F4809175028F5F8093750282E12C |
:1063E00080937602809170028E7F8093700285EA9E |
:1063F0008093BC001EC01092750280917002816073 |
:106400008093700216C01092760284E98093BC00DB |
:10641000809170028160809370028AE090E0909396 |
:106420009301809392011092740210927302109261 |
:106430007202FF91EF919F918F915F914F913F91E8 |
:106440002F910F900FBE0F901F9018951F93CF9311 |
:10645000DF93182F80911803882321F4809107027D |
:10646000882319F081E090E097C01D3008F092C0B9 |
:106470001123B1F0E12FFF2723E0EE0FFF1F2A9534 |
:10648000E1F7E751F94F35978081359688230CF075 |
:1064900081C03897808180FD03C083E090E07CC09C |
:1064A0008091E106823019F084E090E075C067E0E9 |
:1064B00070E081EE96E00E94B72A9091E806891775 |
:1064C00019F085E090E068C080ED97E00E94251704 |
:1064D000EC018091700280FD05C0CE010E942E1754 |
:1064E0008823B9F3112319F48FEF90E00BC0212F0B |
:1064F00033272150304081E090E002C0880F991F7F |
:106500002A95E2F790936F0280936E02A1E0B0E0CB |
:10651000E9EEF6E040E050E06BE0CD01042E02C071 |
:10652000880F991F0A94E2F720916E0230916F0252 |
:1065300082239323892B11F01182128261504F5FC5 |
:106540005F4F389667FFE9CF10927402109276027F |
:10655000809170028E7F8093700285EA8093BC00E8 |
:106560008091700280FD05C0CE010E942E17882305 |
:10657000B9F380916E0290916F02892B29F0CE01C0 |
:106580000E942E17882311F380916E0290916F0262 |
:10659000009711F082E090E0DF91CF911F91089574 |
:1065A0000F931F93CF93DF93982F80911803882325 |
:1065B00021F480910702882319F081E090E092C0D5 |
:1065C0009D30A0F4992319F486E090E08BC0C92F88 |
:1065D000DD27FE0133E0EE0FFF1F3A95E1F7E751AB |
:1065E000F94F35978081359687FD03C082E090E0B2 |
:1065F00079C03897808180FD03C083E090E072C04D |
:1066000080ED97E00E9425178C018091700280FD3B |
:1066100005C0C8010E942E178823B9F3219721E0F5 |
:1066200030E0C90102C0880F991FCA95E2F7909324 |
:106630006D0280936C02D901E9EEF6E040E050E093 |
:106640006BE0CD01042E02C0880F991F0A94E2F777 |
:1066500020916C0230916D0282239323892B11F0DB |
:106660001182128261504F5F5F4F389667FFE9CF0A |
:10667000109273021092E1061092E80610927602D0 |
:10668000809170028E7F8093700285EA8093BC00B7 |
:106690008091700280FD05C0C8010E942E178823DA |
:1066A000B9F380916C0290916D02892B29F0C80199 |
:1066B0000E942E17882311F38091E106823019F091 |
:1066C00084E090E00FC067E070E081EE96E00E9409 |
:1066D000B72A9091E806891719F085E090E002C08A |
:1066E00080E090E0DF91CF911F910F91089589E1B3 |
:1066F000AEE7B7E0EAE4F7E0118210823296119635 |
:106700001C921E921296815087FFF6CF109287033B |
:1067100010928603109289031092880310928B03C3 |
:1067200010928A0308951F920F920FB60F921124B0 |
:106730000F931F932F933F934F935F936F937F9389 |
:106740008F939F93AF93BF93CF93DF93EF93FF9379 |
:106750008091850682FDCFC04091860050918700D0 |
:1067600080917D0290917E02481B590B809186009A |
:106770009091870090937E0280937D02CA018D5490 |
:106780009440A0917F02B0918002835F9A4178F497 |
:1067900080917F0280934907149714F0109294011E |
:1067A00081E090E09093800280937F0207C2AD3039 |
:1067B000B1050CF003C2CA018B5F9040845B91402D |
:1067C00008F074C0425D5140FD01EA0FFB1FE65B1B |
:1067D000F84F80819181FA01E81BF90BCF01F7FF97 |
:1067E00003C0909581959F4F06975CF4809121039B |
:1067F000883C20F480912103865F01C088EC80935F |
:106800002103FD01EA0FFB1FE65BF84F80819181B8 |
:106810009C01220F331F280F391F240F351F37FF0C |
:1068200002C02D5F3F4FE901D595C795D595C79516 |
:10683000CA0101968C179D0714F4219706C0415098 |
:106840005040C417D5070CF4219680912103833C56 |
:10685000E0F08D010A0F1B1FF801E65BF84F808105 |
:1068600091819E01281B390BC90163E070E00E94F1 |
:106870006077CB01880F991F860F971F0258184F1A |
:10688000D80111969C938E9307C0AA0FBB1FA258E4 |
:10689000B84F11961C921E92E0917F02F0918002F7 |
:1068A000EE0FFF1FE65BF84FD183C08320917F027C |
:1068B000309180022F5F3F4F3093800220937F0200 |
:1068C00080910201843108F079C12530310511F43D |
:1068D0005D9A01C05D9880917F0290918002863020 |
:1068E000910511F45C9A01C05C98079711F45B9ACA |
:1068F00065C15B9863C1409186005091870080918B |
:10690000810290918202481B590B809186009091E0 |
:1069100087009093820280938102CA018D54944033 |
:106920006091EB02835F9A4108F07AC060937C0229 |
:1069300080917C02843008F453C090914907809183 |
:106940007C02981709F04CC05091EC025B3008F4BF |
:106950003FC0109294011092EB0240E05F31C0F012 |
:10696000E42FFF27EE0FFF1F9F0129543D4FDF014A |
:10697000A65BB84F8D919C91D9018D939C93DF01BB |
:10698000A258B84F8D919C91EF52FD4F9183808317 |
:10699000E42FFF27EE0FFF1F9F01265B384FDF011B |
:1069A000AD57BD4F8D919C91D90111969C938E93BB |
:1069B000DF01A356BD4F8D919C91E258F84F918312 |
:1069C0008083842F8F5F482F8D3040F28093EB02BD |
:1069D0008091EC028F3FB9F08F5F8093EC0213C07F |
:1069E0008091EC02853620F08AE08093EC0202C0B0 |
:1069F0001092EC02809102018A3011F0843110F083 |
:106A0000289A01C0289881E08093EB0280911803B6 |
:106A1000882309F0D3C080917C0280934907CEC0BF |
:106A20006D3008F0A3C0CA018B5F9040845B914039 |
:106A300008F07EC0425D5140E62FFF27EE0FFF1F9A |
:106A4000ED57FD4F80819181FA01E81BF90BCF01D1 |
:106A500005960B97B0F48091EC028A3120F080917A |
:106A60002103865F05C08B3028F0809121038E5F63 |
:106A70008093210380912103893C18F088EC809356 |
:106A80002103E62FFF27EE0FFF1FED57FD4F8081FB |
:106A900091819C01220F331F280F391F240F351FAE |
:106AA00037FF02C02D5F3F4FE901D595C795D595BA |
:106AB000C795CA0101968C179D0714F4219706C04B |
:106AC00041505040C417D5070CF421968091210302 |
:106AD0008E3BD8F0E62FFF27EE0FFF1FDF01AD57EB |
:106AE000BD4F8D919C919E01281B390BC90163E01C |
:106AF00070E00E946077CB01880F991F860F971F67 |
:106B0000E356FD4F9183808308C0E62FFF27EE0FE9 |
:106B1000FF1FE356FD4F118210828091EB02E82F98 |
:106B2000FF27EE0FFF1FED57FD4FD183C08309C034 |
:106B3000809102018A3011F0843110F0289A01C04E |
:106B4000289880910201843188F48091EB0285308D |
:106B500011F45D9A05C05D98863011F45C9A05C009 |
:106B60005C98873011F45B9A01C05B988091EB02CE |
:106B7000843120F48F5F8093EB0220C08431F1F4E4 |
:106B8000809102018A3011F0843110F0289A01C0FE |
:106B900028988EE18093EB022CE0CEE7D7E0A7EBBC |
:106BA000B2E0EAE4F7E08D919D9191838083329683 |
:106BB000198218822296215027FFF5CFFF91EF917D |
:106BC000DF91CF91BF91AF919F918F917F916F9105 |
:106BD0005F914F913F912F911F910F910F900FBE99 |
:106BE0000F901F901895EF92FF920F931F93809133 |
:106BF0003B069927880F991F880F991F7C01002752 |
:106C0000F7FC0095102F8091750390917603A09169 |
:106C10007703B0917803BC01CD01A80197010E94D0 |
:106C200095773093CB052093CA0580916D039091A1 |
:106C30006E03A0916F03B0917003BC01CD01A80158 |
:106C400097010E9495773093CD052093CC058091D4 |
:106C500017089091180897FD039695958795959537 |
:106C600087959093CF058093CE0580912A089091C7 |
:106C70002B0897FD03969595879595958795909305 |
:106C8000D1058093D0058091860390918703209150 |
:106C9000470230914802821B930B9093D305809357 |
:106CA000D2058091130390911403A0911503B09124 |
:106CB0001603BC01CD0125E030E040E050E00E9429 |
:106CC00095773093D5052093D4058091410290911A |
:106CD00042029093D7058093D6058091330390911B |
:106CE00034039093DB058093DA0580911E01909127 |
:106CF0001F019093DD058093DC0580912103992786 |
:106D00009093DF058093DE058091260890912708F7 |
:106D1000A0912808B09129082091960130919701FF |
:106D20004091980150919901BC01CD010E94957745 |
:106D30003093E1052093E0058091EA06992790932E |
:106D4000E3058093E2058091F20699279093E5058B |
:106D50008093E4058091FA0699279093E705809344 |
:106D6000E6058091020799279093E9058093E8054D |
:106D700080912202909123029093F3058093F20573 |
:106D800080919F089091A0089093F7058093F60555 |
:106D90008091A5089091A6089093F9058093F80535 |
:106DA0008091A70899279093050680930406809107 |
:106DB0000004909101049093070680930606809149 |
:106DC000FE039091FF03909309068093080680913B |
:106DD0004804882321F480914904882321F080917C |
:106DE000C905816003C08091C9058E7F8093C90564 |
:106DF0001F910F91FF90EF9008951F93CF93DF9312 |
:106E0000182FEB01809118038823A1F411501F3F24 |
:106E100089F0D0932902C093280280912802909192 |
:106E20002902892BD1F7CE018C0F9D1F0E943A17A2 |
:106E3000115078F7DF91CF911F910895CF93DF9391 |
:106E4000809102018D3011F40E941F1B10927A0074 |
:106E500080914B0290914C029093D1078093D00780 |
:106E60008091490290914A029093BF078093BE0798 |
:106E700080914702909148029093200880931F08C8 |
:106E80002091430230914402C901880F991F880F55 |
:106E9000991F820F931F820F931F9093180880935E |
:106EA00017082091450230914602C901880F991FA9 |
:106EB000880F991F820F931F820F931F90932B08A7 |
:106EC00080932A088FEC80937A00A2E2B3E0C4E2B8 |
:106ED000D6E097E08991E82FFF27EE0FFF1FE65BD2 |
:106EE000F84F0190F081E02DE259FF4F1E161F066A |
:106EF0001CF0E0E0F0E005C0EF3FF10514F0EFEF2B |
:106F0000F0E08C91282F3327E217F30714F4815017 |
:106F100004C02E173F0714F48F5F8C939150119685 |
:106F200097FFD8CF809160069927AA27BB27BC017D |
:106F3000CD0124EC39E040E050E00E942177DC01F3 |
:106F4000CB018093D5019093D601A093D701B09344 |
:106F5000D801809161069927AA27BB27BC01CD01E2 |
:106F60000E942177DC01CB018093D1019093D20163 |
:106F7000A093D301B093D401DF91CF910895A0E005 |
:106F8000B0E0E5ECF7E30C94B677882EC0E0D0E0F3 |
:106F90007E016E0110924804469AD0938103C093FB |
:106FA0008003D0937F03C0937E03D0937B03C09371 |
:106FB0007A03D0938B03C0938A03D0938903C09341 |
:106FC0008803D0938703C09386031092BE0110926A |
:106FD000BD0110923B020E941E3784E690E00E94A1 |
:106FE00047170E941E3780912C0680FF10C08091A9 |
:106FF000140190911501875B934038F4809114013E |
:10700000909115018E5E924010F40E94C41A0FE117 |
:107010008AE090E00E9447178091470290914802D1 |
:10702000C80FD91F80914B0290914C02E80EF91EB7 |
:107030008091490290914A02C80ED91E015007FF63 |
:10704000E7CF9701205F3F4F3695279536952795D7 |
:1070500030938B0320938A03C601409696958795BB |
:107060009695879590938903809388036096F5E0C1 |
:10707000D695C795FA95E1F7D0938703C093860319 |
:10708000909385038093840330938303209382033A |
:10709000882009F441C0809117089091180897FF43 |
:1070A00003C0909581959F4F6CE070E00E946077DF |
:1070B0009B01709381036093800380912A089091D3 |
:1070C0002B0897FF03C0909581959F4F6CE070E06F |
:1070D0000E94607770937F0360937E038091110616 |
:1070E0009091120690937B0380937A03B90184E018 |
:1070F00090E00E949B2C60917E0370917F0386E05C |
:1071000090E00E949B2C60917A0370917B0388E051 |
:1071100090E00E949B2C65C084E090E00E94962C39 |
:10712000909381038093800386E090E00E94962CE8 |
:1071300090937F0380937E0388E090E00E94962CDA |
:107140009C0190937B0380937A03809180039091BC |
:1071500081038150984050F480917E0390917F0389 |
:107160008150984018F421503440D8F187E19AE0DA |
:107170009F938F938FEF92E19F938F93E0912F04D2 |
:10718000F09130040995809117089091180897FFA5 |
:1071900003C0909581959F4F6CE070E00E946077EE |
:1071A000709381036093800380912A0890912B084B |
:1071B00097FF03C0909581959F4F6CE070E00E940F |
:1071C000607770937F0360937E03809111069091A6 |
:1071D000120690937B0380937A030F900F900F9089 |
:1071E0000F901092D1071092D0071092BF07109203 |
:1071F000BE071092200810921F0884E690E00E94BB |
:10720000471780914302909144029C01220F331F43 |
:10721000220F331F280F391F280F391F30931808EA |
:107220002093170880914502909146028C01000F2F |
:10723000111F000F111F080F191F080F191F10939E |
:107240002B0800932A0880913B06C82EDD24EE24EB |
:10725000FF24442737FD4095542FC701B6010E94F3 |
:1072600021774B015C0160937503709376038093E3 |
:107270007703909378039801442737FD4095542F66 |
:10728000C701B6010E942177DC01CB0180936D0319 |
:1072900090936E03A0936F03B09370038092510399 |
:1072A00090925203A0925303B092540380934903E7 |
:1072B00090934A03A0934B03B0934C031092450361 |
:1072C00010924603109247031092480380911601D2 |
:1072D00090911701A0911801B09119019093140693 |
:1072E0008093130610923A021092390210923503DD |
:1072F00010923603109237031092380380913303B3 |
:107300009091340390933203809331030E94A362DF |
:1073100082E390E090932902809328028091600696 |
:107320009927AA27BB27BC01CD0124EC39E040E016 |
:1073300050E00E942177DC01CB018856954CAF4F7D |
:10734000BF4F8093D5019093D601A093D701B093FE |
:10735000D801809161069927AA27BB27BC01CD01DE |
:107360000E942177DC01CB018856954CAF4FBF4F6F |
:107370008093D1019093D201A093D301B093D40113 |
:1073800010929B0110929A018091330390913403E3 |
:10739000AA2797FDA095BA2F2091960130919701C9 |
:1073A0004091980150919901BC01CD010E94217733 |
:1073B000DC01CB018093260890932708A09328082E |
:1073C000B093290810922C0310922B0381E0809334 |
:1073D00001010E941A678091ED0284608093ED02A2 |
:1073E0008FEF80939A0810929B0880E280939C080C |
:1073F000C2E2D3E0A4E2B6E007E08D91E82FFF27D8 |
:10740000EE0FFF1FE65BF84F8081918182598993CF |
:10741000015007FFF2CF84E680932103809126027A |
:10742000882311F0469A579A80918A0390918B0392 |
:1074300080569940815C9B4228F08091480481608D |
:1074400080934804809188039091890380569940E5 |
:10745000815C9B4228F080914804826080934804BC |
:1074600080918603909187038C5291408957954073 |
:1074700028F08091480484608093480480918003C0 |
:10748000909181038C529140835C914028F08091CF |
:10749000480488608093480480917E0390917F0324 |
:1074A0008C529140835C914028F080914804806127 |
:1074B0008093480480917A0390917B03805092409E |
:1074C0008355914028F0809148048062809348045D |
:1074D000ECE0CDB7DEB70C94D277A3E1B0E0E3E700 |
:1074E000FAE30C94B0778091860390918703209102 |
:1074F000470230914802821B930B9093200880939F |
:107500001F08809151029091520297FD07969C01AD |
:1075100013E0359527951A95E1F73093D10720931D |
:10752000D00780914F029091500297FD0796B3E0EB |
:1075300095958795BA95E1F79093BF078093BE071D |
:107540003093DD072093DC079093D5078093D40711 |
:107550008091170890911808AC01440F551F480FEF |
:10756000591F2091430230914402C901880F991F8D |
:10757000880F991F820F931F820F931F480F591F67 |
:1075800057FF02C04D5F5F4F5595479555954795FD |
:10759000509318084093170880912A0890912B085F |
:1075A000AC01440F551F480F591F209145023091DF |
:1075B0004602C901880F991F880F991F820F931FD8 |
:1075C000820F931F480F591F57FF02C04D5F5F4F37 |
:1075D000559547955595479550932B0840932A0804 |
:1075E0002091430230914402C901880F991F880FEE |
:1075F000991F820F931F820F931F9C01442737FD11 |
:107600004095542F8091650390916603A091670384 |
:10761000B0916803820F931FA41FB51F8093650369 |
:1076200090936603A0936703B0936803209145028B |
:1076300030914602C901880F991F880F991F820F48 |
:10764000931F820F931F9C01442737FD4095542FB1 |
:107650008091610390916203A0916303B0916403F0 |
:10766000820F931FA41FB51F809361039093620341 |
:10767000A0936303B09364038091E8079091E907B6 |
:107680002091430230914402820F931F9093E907A7 |
:107690008093E80780912208909123082091450269 |
:1076A00030914602820F931F909323088093220803 |
:1076B00080917C0390917D03019690937D0380934C |
:1076C0007C03809111069091120620917A033091EB |
:1076D0007B03821B930B9C01442737FD4095542F5D |
:1076E00080915D0390915E03A0915F03B091600370 |
:1076F000820F931FA41FB51F80935D0390935E03B9 |
:10770000A0935F03B09360038FEC80937A00109294 |
:10771000100120914D0330914E0340914F03509141 |
:10772000500329873A874B875C8729543B46414061 |
:1077300050402CF028E43BE641E050E00DC0898544 |
:107740009A85AB85BC85885B9449AE4FBF4F4CF49E |
:1077500028EB34E94EEF5FEF2D833E834F8358874C |
:1077600008C089859A85AB85BC858D839E83AF8350 |
:10777000B88720915503309156034091570350919B |
:1077800058032D873E874F87588B29543B464140ED |
:1077900050402CF028E43BE641E050E00DC08D85E0 |
:1077A0009E85AF85B889885B9449AE4FBF4F4CF436 |
:1077B00028EB34E94EEF5FEF29833A834B835C83F8 |
:1077C00008C08D859E85AF85B88989839A83AB83F0 |
:1077D000BC83A0911F08B0912008BB8BAA8BFD0130 |
:1077E000CF01AA2797FDA095BA2FA0904503B0908E |
:1077F0004603C0904703D0904803A80EB91ECA1E86 |
:10780000DB1EA0924503B0924603C0924703D0927C |
:107810004803E0902608F09027080091280810916E |
:107820002908E80EF91E0A1F1B1FE0922608F09295 |
:1078300027080093280810932908F0910803F98B72 |
:10784000FF2309F098C180910703882309F093C1B1 |
:1078500080912C0686FF8FC18091BE079091BF0753 |
:10786000AA2797FDA095BA2FBC01CD0129813A81A5 |
:107870004B815C810E9421779B01AC0197FF04C082 |
:107880002150384F4F4F5F4FBBE055954795379587 |
:107890002795BA95D1F78091BD01682E7724882469 |
:1078A0009924CA01B901A40193010E942177DC0146 |
:1078B000CB018093990390939A03A0939B03B09379 |
:1078C0009C03B7FF04C08150904FAF4FBF4F1C01C6 |
:1078D0002D01ACE05594479437942794AA95D1F79D |
:1078E0002092990330929A0340929B0350929C03FA |
:1078F0008091D0079091D107AA2797FDA095BA2F24 |
:10790000BC01CD012D813E814F8158850E94217798 |
:1079100097FF04C06150784F8F4F9F4FFBE09595C4 |
:10792000879577956795FA95D1F7A40193010E9401 |
:107930002177DC01CB0180939D0390939E03A0935C |
:107940009F03B093A003B7FF04C08150904FAF4F87 |
:10795000BF4F9C01AD01ECE05595479537952795B4 |
:10796000EA95D1F720939D0330939E0340939F03A4 |
:107970005093A0038091990390919A039093B40738 |
:107980008093B30780919D0390919E039093B807D5 |
:107990008093B707221933094409550920939D03A1 |
:1079A00030939E0340939F035093A003E20EF31E77 |
:1079B000041F151FE0922608F0922708009328085C |
:1079C000109329088091BC018823B1F457FF04C0AB |
:1079D0002F5F3F4F4F4F5F4F5595479537952795F1 |
:1079E000A21AB30AC40AD50AA0924503B09246036C |
:1079F000C0924703D09248032A893B897901002726 |
:107A0000F7FC0095102F80919D0390919E03A0910B |
:107A10009F03B091A003E80EF91E0A1F1B1FC801A7 |
:107A2000B70129813A814B815C810E9421779B01BA |
:107A3000AC0197FF04C02150384F4F4F5F4F6BE0B0 |
:107A400055954795379527956A95D1F78091BE0151 |
:107A5000A82EBB24CC24DD24CA01B901A6019501BE |
:107A60000E942177DC01CB018093910390939203D4 |
:107A7000A0939303B0939403B7FF04C08150904F39 |
:107A8000AF4FBF4F3C014D013CE0959487947794F4 |
:107A900067943A95D1F76092910370929203809225 |
:107AA000930390929403C801B7012D813E814F81C9 |
:107AB00058850E94217797FF04C06150784F8F4FFF |
:107AC0009F4F2BE095958795779567952A95D1F7E8 |
:107AD000A60195010E942177DC01CB0180939503DB |
:107AE00090939603A0939703B0939803B7FF04C0B5 |
:107AF0008150904FAF4FBF4FAC01BD018CE07595E9 |
:107B00006795579547958A95D1F74093950350937C |
:107B1000960360939703709398032A893B8937FFF4 |
:107B200003C0309521953F4F21343105E4F1D40154 |
:107B3000C30197FE07C0B095A095909581959F4F82 |
:107B4000AF4FBF4F81389105A105B10584F4DB012A |
:107B5000CA0177FF07C0B095A095909581959F4F7A |
:107B6000AF4FBF4F81389105A105B105E4F081E029 |
:107B700080932D0318C01092B8071092B707109287 |
:107B8000B4071092B30710929503109296031092C7 |
:107B900097031092980310929103109292031092FF |
:107BA0009303109294038091950390919603A09172 |
:107BB0009703B0919803BC01CD0124E630E040E08A |
:107BC00050E00E949577E0909103F0909203E21AC2 |
:107BD000F30AF092CE07E092CD0780919103909145 |
:107BE0009203A0919303B0919403BC01CD0124E6CC |
:107BF00030E040E050E00E949577DA01C901209121 |
:107C00009503309196038C01021B130B1093C2074E |
:107C10000093C1078091960190919701A0919801DE |
:107C2000B0919901BC01CD0128E631E040E050E07F |
:107C30000E9421772091260830912708409128083A |
:107C400050912908261737074807590764F0261B63 |
:107C5000370B480B590B2093260830932708409385 |
:107C60002808509329082091260830912708409130 |
:107C700028085091290857FF0CC0260F371F481FAE |
:107C8000591F2093260830932708409328085093C3 |
:107C900029086091BE077091BF076E0D7F1D9B0183 |
:107CA000442737FD4095542F8091490390914A0312 |
:107CB000A0914B03B0914C03820F931FA41FB51FDB |
:107CC0008093490390934A03A0934B03B0934C03D2 |
:107CD00080910D0390910E03681B790BCB01AA27AD |
:107CE00097FDA095BA2F29853A854B855C85820F33 |
:107CF000931FA41FB51F80934D0390934E03A09331 |
:107D00004F03B0935003C090D101D090D201E090C6 |
:107D1000D301F090D401C816D906EA06FB06C4F4D4 |
:107D200088EA91E6A0E0B0E08C199D09AE09BF0990 |
:107D300080934D0390934E03A0934F03B093500351 |
:107D40008093490390934A03A0934B03B0934C0351 |
:107D500022273327A9012C193D094E095F0980917B |
:107D60004D0390914E03A0914F03B09150038217A1 |
:107D70009307A407B507B4F4D701C601885A914602 |
:107D8000A040B04080934D0390934E03A0934F03C7 |
:107D9000B09350038093490390934A03A0934B03FD |
:107DA000B0934C036091D0077091D107600F711FA1 |
:107DB0009B01442737FD4095542F809151039091AA |
:107DC0005203A0915303B0915403820F931FA41F39 |
:107DD000B51F8093510390935203A0935303B09324 |
:107DE000540380910B0390910C03681B790BCB011A |
:107DF000AA2797FDA095BA2F2D853E854F855889D6 |
:107E0000820F931FA41FB51F8093550390935603B1 |
:107E1000A0935703B0935803E090D501F090D6019A |
:107E20000091D7011091D801E816F9060A071B073F |
:107E3000C4F488EA91E6A0E0B0E08E199F09A00B97 |
:107E4000B10B8093550390935603A0935703B093BF |
:107E500058038093510390935203A0935303B0931C |
:107E6000540322273327A9012E193F09400B510B38 |
:107E70008091550390915603A0915703B0915803F8 |
:107E800082179307A407B507B4F4D801C701885A2D |
:107E90009146A040B0408093550390935603A09321 |
:107EA0005703B09358038093510390935203A093C8 |
:107EB0005303B09354038091450390914603A091DE |
:107EC0004703B09148038093590390935A03A093BA |
:107ED0005B03B0935C038091550390915603A0918E |
:107EE0005703B09158038093750390937603A09342 |
:107EF0007703B093780380914D0390914E03A09146 |
:107F00004F03B091500380936D0390936E03A09341 |
:107F10006F03B09370038091510390915203A0912D |
:107F20005303B09154038093710390937203A09311 |
:107F30007303B09374038091490390914A03A09115 |
:107F40004B03B0914C038093690390936A03A09311 |
:107F50006B03B0936C0380911C0190911D0197FD00 |
:107F6000079603E0959587950A95E1F79093D107D9 |
:107F70008093D00780911A0190911B0197FD07967D |
:107F800013E0959587951A95E1F79093BF07809335 |
:107F9000BE0780914B0290914C020F9734F488E118 |
:107FA0009CEF9093D1078093D00780914B029091E2 |
:107FB0004C02079734F480E398EF9093D1078093B5 |
:107FC000D007209102012A30A9F480914B029091B0 |
:107FD0004C02835F934034F088EE93E09093D10796 |
:107FE0008093D00780914B0290914C028A5F93401E |
:107FF000DCF014C080914B0290914C02815D97405F |
:1080000034F088EE93E09093D1078093D00780916D |
:108010004B0290914C02805E974034F080ED97E0E7 |
:108020009093D1078093D0078091490290914A02A2 |
:108030000F9734F488E19CEF9093BF078093BE07BD |
:108040008091490290914A02079734F480E398EFB7 |
:108050009093BF078093BE072A30A9F4809149020C |
:1080600090914A02835F934034F088EE93E09093BE |
:10807000BF078093BE078091490290914A028A5FB0 |
:108080009340DCF014C08091490290914A02815DD6 |
:10809000974034F088EE93E09093BF078093BE073B |
:1080A0008091490290914A02805E974034F080EDC1 |
:1080B00097E09093BF078093BE076091C801662345 |
:1080C00009F4AFC040911C0150911D018091A103A2 |
:1080D0009091A203481B590B5093A8034093A70308 |
:1080E00020911C0130911D01280F391F37FF02C05C |
:1080F0002F5F3F4F359527953093A2032093A1031F |
:10810000413851051CF080E890E005C040585F4FB1 |
:1081100034F480E89FEF9093A8038093A7034091E5 |
:108120001A0150911B018091A3039091A403481B55 |
:10813000590B5093A6034093A50320911A01309147 |
:108140001B01280F391F37FF02C02F5F3F4F3595A6 |
:1081500027953093A4032093A303413851051CF0C5 |
:1081600080E890E005C040585F4F34F480E89FEF0E |
:108170009093A6038093A503462F55278091A703CC |
:108180009091A803849FB001859F700D949F700DFE |
:1081900011249B0177FF02C0215F3F4FF4E035952A |
:1081A0002795FA95E1F78091D0079091D107820F3A |
:1081B000931F9093D1078093D0078091A50390914E |
:1081C000A603849FD001859FB00D949FB00D11240C |
:1081D000AD019D01B7FF02C0215F3F4FE4E035953F |
:1081E0002795EA95E1F78091BE079091BF07820F2E |
:1081F000931F9093BF078093BE0780911C019091BD |
:108200001D01860F971F90931D0180931C01809183 |
:108210001A0190911B01840F951F90931B0180936D |
:108220001A010091D4071091D5078091B30790915E |
:10823000B407101611065CF59C0197FF04C02227B5 |
:108240003327281B390BC901AA2797FDA095BA2F00 |
:108250002091BC01332744275527BC01CD010E9442 |
:1082600021779B01AC0197FF04C0215C3F4F4F4F2A |
:108270005F4F76E055954795379527957A95D1F7D5 |
:108280008091CD079091CE07820F931F27C097FF53 |
:1082900003C0909581959F4FAA2797FDA095BA2F6F |
:1082A0002091BC01332744275527BC01CD010E94F2 |
:1082B00021779B01AC0197FF04C0215C3F4F4F4FDA |
:1082C0005F4F66E055954795379527956A95D1F7A5 |
:1082D0008091CD079091CE07821B930B9093CE0790 |
:1082E0008093CD07E090DC07F090DD078091B70721 |
:1082F0009091B8071E141F045CF59C0197FF04C001 |
:1083000022273327281B390BC901AA2797FDA095DF |
:10831000BA2F2091BC01332744275527BC01CD013A |
:108320000E9421779B01AC0197FF04C0215C3F4F65 |
:108330004F4F5F4F96E055954795379527959A95FE |
:10834000D1F78091C1079091C207820F931F27C078 |
:1083500097FF03C0909581959F4FAA2797FDA09501 |
:10836000BA2F2091BC01332744275527BC01CD01EA |
:108370000E9421779B01AC0197FF04C0215C3F4F15 |
:108380004F4F5F4F86E055954795379527958A95CE |
:10839000D1F78091C1079091C207821B930B9093F4 |
:1083A000C2078093C10780912C0687FF44C0B9891A |
:1083B000BB2309F040C0809107038823E1F5E1E089 |
:1083C000EE16E1E0FE064CF08091D0079091D107C7 |
:1083D0008E0D9F1D805091400DC0F0E0EF16FFEF15 |
:1083E000FF0664F48091D0079091D1078E0D9F1DF8 |
:1083F00080509F4F9093D1078093D00721E00130A8 |
:1084000012074CF08091BE079091BF07800F911F1B |
:10841000805091400CC03FEF0030130764F480910E |
:10842000BE079091BF07800F911F80509F4F909380 |
:10843000BF078093BE07E2E1CD5E0C94CC778091BC |
:108440001803882301F58091ED028C7F8093ED0263 |
:10845000ADE4B4E0E9EEF6E09BE08091070288230A |
:1084600009F48C938D91818312829150389697FFF5 |
:10847000F4CF80910702882359F080910702815040 |
:108480008093070205C08091ED0281608093ED0228 |
:1084900080917202882319F01092720208958093DD |
:1084A000740280937602809170028E7F80937002B6 |
:1084B00085EA8093BC000895CF93DF93A2E2B3E0F6 |
:1084C000C4E2D6E057E08991E82FFF27EE0FFF1FA7 |
:1084D000E65BF84F0190F081E02DE259FF4FEF3F4E |
:1084E000F10521F01CF0EFEFF0E004C0F7FF02C04F |
:1084F000E0E0F0E04C91242F3327E217F307A9F0D6 |
:10850000CF01821B930B97FD0396959587959595C3 |
:108510008795242F280F2C93822F9927E817F90786 |
:1085200014F4215001C02F5F2C935150119657FF26 |
:10853000CACF80912E06883F38F0EFEFF0E0E81BBD |
:10854000F109EE5DFC4F80818093CE018091CE01D8 |
:10855000882329F0843618F084E68093CE01809138 |
:108560003006883F38F0EFEFF0E0E81BF109EE5DF0 |
:10857000FC4F80818093CC018091CC01882329F02D |
:10858000843618F084E68093CC0180913D06883FC4 |
:1085900038F0EFEFF0E0E81BF109EE5DFC4F808171 |
:1085A0008093C7018091C7018B3010F48AE002C02C |
:1085B0008F3F11F48093C70180916A06883F38F09D |
:1085C000EFEFF0E0E81BF109EE5DFC4F8081809356 |
:1085D000EA078091EA07823010F481E002C08F3F01 |
:1085E00011F48093EA0780916C06883F38F0EFEF32 |
:1085F000F0E0E81BF109EE5DFC4F808180931A08E2 |
:1086000080911A08823010F481E002C08F3F11F48B |
:1086100080931A0880915706883F38F0EFEFF0E01A |
:10862000E81BF109EE5DFC4F80818093E5078091A6 |
:108630005806883F38F0EFEFF0E0E81BF109EE5DF7 |
:10864000FC4F80818093BB0780915906883F38F0AA |
:10865000EFEFF0E0E81BF109EE5DFC4F80818093C5 |
:10866000F00790912F06983F18F49093CD0109C020 |
:10867000EFEFF0E0E91BF109EE5DFC4F80818093A4 |
:10868000CD01983F18F49093CD0109C0EFEFF0E0D1 |
:10869000E91BF109EE5DFC4F80818093CD01809153 |
:1086A0003206883F38F0EFEFF0E0E81BF109EE5DAD |
:1086B000FC4F80818093CB0180913406883F38F055 |
:1086C000EFEFF0E0E81BF109EE5DFC4F8081809355 |
:1086D000C90180913C06883F38F0EFEFF0E0E81BDD |
:1086E000F109EE5DFC4F80818093CA0180913E06C6 |
:1086F000883F38F0EFEFF0E0E81BF109EE5DFC4F4A |
:1087000080818093C60180913F06883F38F0EFEF6B |
:10871000F0E0E81BF109EE5DFC4F80818093C80119 |
:1087200080914006883F38F0EFEFF0E0E81BF10958 |
:10873000EE5DFC4F80818093C50180914106883FAA |
:1087400038F0EFEFF0E0E81BF109EE5DFC4F8081BF |
:108750008093C40180914706883F38F0EFEFF0E046 |
:10876000E81BF109EE5DFC4F80818093C20180918E |
:108770004806883F38F0EFEFF0E0E81BF109EE5DC6 |
:10878000FC4F80818093020380914906883F38F036 |
:10879000EFEFF0E0E81BF109EE5DFC4F8081809384 |
:1087A000010380914A06883F38F0EFEFF0E0E81BC4 |
:1087B000F109EE5DFC4F80818093000380914B06B0 |
:1087C000883F38F0EFEFF0E0E81BF109EE5DFC4F79 |
:1087D00080818093FF0280916506883F38F0EFEF3B |
:1087E000F0E0E81BF109EE5DFC4F80818093FE0212 |
:1087F00080916606883F38F0EFEFF0E0E81BF10962 |
:10880000EE5DFC4F80818093FD0280916706883F7A |
:1088100038F0EFEFF0E0E81BF109EE5DFC4F8081EE |
:108820008093FC0280916806883F38F0EFEFF0E01B |
:10883000E81BF109EE5DFC4F80818093FB02809183 |
:108840004C06883F38F0EFEFF0E0E81BF109EE5DF1 |
:10885000FC4F80818093C10180915006883F38F0A1 |
:10886000EFEFF0E0E81BF109EE5DFC4F80818093B3 |
:10887000C00180915A06883F38F0EFEFF0E0E81B26 |
:10888000F109EE5DFC4F80818093BF0180915D0610 |
:10889000883F38F0EFEFF0E0E81BF109EE5DFC4FA8 |
:1088A00080818093BE0180915E06883F38F0EFEFB3 |
:1088B000F0E0E81BF109EE5DFC4F80818093BD0183 |
:1088C00080915F06883F38F0EFEFF0E0E81BF10998 |
:1088D000EE5DFC4F80818093BC0180916406883FEF |
:1088E00038F0EFEFF0E0E81BF109EE5DFC4F80811E |
:1088F0008093BB0180917F06883F38F0EFEFF0E076 |
:10890000E81BF109EE5DFC4F808180932D0880917A |
:10891000C201282F33272F5F3F4F8CE398E2B90124 |
:108920000E9460777093D0016093CF0180913A06E6 |
:1089300080931B08809139068093D6079091810619 |
:10894000933320F181E08093FA02983F58F0EFEFE3 |
:10895000F0E0E91BF109EE5DFC4F8081823310F4F9 |
:108960001092FA0280916D0890916E0897FF08C0EE |
:108970008091FA02882321F080914804806803C026 |
:10898000809148048F778093480402C01092FA02C5 |
:1089900080916D0890916E0897FF1DC0809118031B |
:1089A0008823C9F08091FA028823A9F080910801F8 |
:1089B000909109018F5F9F4F71F488E99AE390933A |
:1089C00029028093280280E094EA90930901809321 |
:1089D00008011092FA028091FA02882339F08091FE |
:1089E000BE01823D18F4825E8093BE01DF91CF917B |
:1089F0000895A8E1B0E0EFEFF4E40C94B0770E94A2 |
:108A00006D3A309102013C3010F4299A01C0299846 |
:108A1000E0901903F0901A03FA82E9828091D60758 |
:108A200099270A96E816F90614F49A8389838091A7 |
:108A30002103843608F05CC08091BD039091BE0391 |
:108A4000009731F001979093BE038093BD0307C058 |
:108A5000109218038091ED028F7E8093ED023A30E0 |
:108A600011F0343110F0289A01C028988091EE025C |
:108A70009091EF02895E9340C0F180914406282FC7 |
:108A800033273A8329838091ED0280618093ED0240 |
:108A900080912006A82FBB27AA0FBB1FFD01E2581B |
:108AA000F84F1182108280912106282F3327220F40 |
:108AB000331FC9018258984FFC0111821082A65BB6 |
:108AC000B84F11961C921E92265B384FD901119611 |
:108AD0001C921E9280912306E82FFF27EE0FFF1FA6 |
:108AE000E65BF84F11821082C9C210921803C6C209 |
:108AF000809121038D3808F4C1C28091ED028F7EF0 |
:108B00008093ED029091450682E3989FC001112465 |
:108B10009093BE038093BD03E981FA81B9978CF0ED |
:108B200080911803882369F08091EE029091EF0202 |
:108B3000FFEF8F3F9F0729F001969093EF028093FC |
:108B4000EE028091EE029091EF028F3F910509F0C5 |
:108B500038F510923D0310923E0310923F0310929D |
:108B600040031092390310923A0310923B03109283 |
:108B70003C031092A9031092AA031092AB03109227 |
:108B8000AC031092450310924603109247031092D3 |
:108B900048038A3F910549F481E08093C30305C0EF |
:108BA0008091ED0282608093ED0280912206E82F91 |
:108BB000FF27EE0FFF1FE65BF84F80819181813523 |
:108BC00091050CF441C120911803222309F03CC106 |
:108BD00080912306E82FFF27EE0FFF1FE65BF84F7B |
:108BE000808191818C3491050CF406C18091BF0382 |
:108BF0008F5F8093BF03893C08F426C13C3010F49A |
:108C0000299801C0299A109218031092BF0310925C |
:108C1000EF021092EE0230912006E32FFF27EE0FB5 |
:108C2000FF1FE65BF84F8081918187349105B4F492 |
:108C300080912106E82FFF27EE0FFF1FE65BF84F1C |
:108C4000808191810190F081E02DF7FF03C0F095C4 |
:108C5000E195FF4FE734F1050CF478C041E0209135 |
:108C60002106A22FBB27AA0FBB1FA65BB84F8D9171 |
:108C70009C9111978734910544F0E32FFF27EE0F65 |
:108C8000FF1FE65BF84F808191818D919C91873425 |
:108C9000910574F080912006E82FFF27EE0FFF1F4B |
:108CA000E65BF84F80819181873491050CF042E0BA |
:108CB000E22FFF27EE0FFF1FE65BF84F80819181C7 |
:108CC0008634910574F480912006E82FFF27EE0F7B |
:108CD000FF1FE65BF84F80819181873491050CF08E |
:108CE00043E0E22FFF27EE0FFF1FE65BF84F808186 |
:108CF00091818A5B9F4F74F480912006E82FFF27B3 |
:108D0000EE0FFF1FE65BF84F80819181873491055C |
:108D10000CF044E0E22FFF27EE0FFF1FE65BF84F59 |
:108D2000808191818A5B9F4F74F480912006E82FA7 |
:108D3000FF27EE0FFF1FE65BF84F8081918186349D |
:108D400091050CF445E0842F0E94D72C80912106D8 |
:108D5000E82FFF27EE0FFF1FE65BF84F8081918120 |
:108D60000190F081E02DF7FF03C0F095E195FF4FF2 |
:108D70007E97BCF480912006E82FFF27EE0FFF1F9F |
:108D8000E65BF84F808191818A5B9F4F54F481E0CC |
:108D90008093630488EE93E09093290280932802E5 |
:108DA00053C00E94AD2D0E94A02C80E00E94360787 |
:108DB000809146060E94957480912C0680FF10C019 |
:108DC0008091140190911501875B934038F4809154 |
:108DD0001401909115018E5E924010F40E94C41A05 |
:108DE0001092260280E00E94BF3781E08093C20388 |
:108DF00080932602579A1FC080819181855B9F4F87 |
:108E00000CF58091BF038F5F8093BF03893CE0F036 |
:108E10003C3010F4299801C0299A1092180310923E |
:108E2000BF031092EF021092EE0281E00E94BF3762 |
:108E300081E08093C2030E94AD2D68E770E00E943C |
:108E4000FD3602C02093BF0380912206E82FFF2742 |
:108E5000EE0FFF1FE65BF84F808191818B5A9F4F89 |
:108E60000CF00CC130911803E0912306332309F074 |
:108E7000DAC0FF27EE0FFF1FE65BF84F808191817C |
:108E8000855B9F4F0CF0CCC020918206E22FFF271C |
:108E9000EE0FFF1FE65BF84F80819181855B9F4F4E |
:108EA0001CF0222309F0BCC08091C0038F5F809327 |
:108EB000C003893C08F4E2C03093C00380914804A9 |
:108EC000882309F0A6C08091C203882309F4A1C0B9 |
:108ED00081E090E09093EF028093EE0281E0809336 |
:108EE00018031092A9031092AA031092AB031092D8 |
:108EF000AC03109245031092460310924703109260 |
:108F000048031092410310924203109243031092BF |
:108F1000440380913B06E82EFF240027112780910F |
:108F20001708909118089C01442737FD4095542F4D |
:108F3000C801B7010E942177DC01CB018093550362 |
:108F400090935603A0935703B093580380912A0837 |
:108F500090912B089C01442737FD4095542FC80160 |
:108F6000B7010E942177DC01CB0180934D039093E0 |
:108F70004E03A0934F03B0935003809175039091DB |
:108F80007603A0917703B091780380935103909377 |
:108F90005203A0935303B093540380916D039091B7 |
:108FA0006E03A0916F03B091700380934903909377 |
:108FB0004A03A0934B03B0934C0310923D031092CD |
:108FC0003E0310923F031092400310923903109217 |
:108FD0003A0310923B0310923C038091ED028860AB |
:108FE0008093ED02909180068FE0989F900111246C |
:108FF0008091330390913403820F931F68E671E0F0 |
:109000000E94607797FD01969595879580937903E7 |
:1090100035C08CED95E090932902809328022EC0F4 |
:109020001092C0032BC0FF27EE0FFF1FE65BF84F27 |
:10903000808191818C349105FCF020918206E22F91 |
:10904000FF27EE0FFF1FE65BF84F80819181855B64 |
:109050009F4F14F0222381F48091C1038F5F80938E |
:10906000C103893C58F0109218031092C10310926A |
:10907000EF021092EE0202C01092C103809194019F |
:10908000815080939401809194018F3F21F08091D1 |
:10909000ED0284FF72C30E945C428091CC039091E8 |
:1090A000CD039C01220F331F280F391FC0902006CB |
:1090B000AC2DBB27AA0FBB1FFD01E65BF84FB0909C |
:1090C00036064B2D552780819181849FF001859F25 |
:1090D000F00D949FF00D11242E0F3F1F37FF02C09B |
:1090E0002D5F3F4FB9017595679575956795A258A6 |
:1090F000B84F80913706082F11278D919C91809F42 |
:109100007001819FF00C909FF00C11246E0D7F1D5B |
:109110007093CD036093CC038091CE039091CF03E5 |
:109120009C01220F331F280F391FD0902106AD2D2F |
:10913000BB27AA0FBB1FFD01E65BF84F8081918121 |
:10914000849FF001859FF00D949FF00D11242E0F48 |
:109150003F1F37FF02C02D5F3F4FA901559547952F |
:1091600055954795A258B84F8D919C91809F70015D |
:10917000819FF00C909FF00C11244E0D5F1D5093B9 |
:10918000CF034093CE038091FA02882309F448C0AC |
:10919000CB0177FD0396DC01B595A795B595A7950D |
:1091A000CA0157FD0396FC01F595E795F595E795FE |
:1091B0008091EE01682F772767FD70956A9F900177 |
:1091C0006B9F300D7A9F300D112480910404482F3D |
:1091D000552747FD50954E9FC0014F9F900D5E9FB4 |
:1091E000900D1124280F391F37FF02C0295F3F4F10 |
:1091F00003E0359527950A95E1F7309320032093F6 |
:109200001F036E9F90016F9F300D7E9F300D1124C4 |
:109210004A9FC0014B9F900D5A9F900D11243FC053 |
:1092200080918006E82FFF27E456FE4F86818093C9 |
:10923000EE01908190930404A82FBB27A7FDB09561 |
:10924000A69F9001A79F300DB69F300D1124E92FE6 |
:10925000FF27E7FDF095E49FC001E59F900DF49F87 |
:10926000900D1124280F391F37FF02C0295F3F4F8F |
:1092700013E0359527951A95E1F730932003209355 |
:109280001F03A49F9001A59F300DB49F300D1124A2 |
:10929000E69FC001E79F900DF69F900D1124281BBB |
:1092A000390B37FF02C0295F3F4FF3E03595279513 |
:1092B000FA95E1F730931E0320931D038091230656 |
:1092C000E82FFF27EE0FFF1FE65BF84F80819181AB |
:1092D000909581959F4F90931C0380931B0383303F |
:1092E000910514F0029705C00FEF8E3F900734F4FC |
:1092F000029690931C0380931B0304C010921C03DE |
:1093000010921B0380910004909101042091FC03B2 |
:109310003091FD03820F931F00911F0310912003D2 |
:10932000081B190B1093200300931F038091FE0369 |
:109330009091FF032091FA033091FB03820F931F5A |
:1093400080901D0390901E03881A990A90921E0324 |
:1093500080921D0380912206E82FFF27EE0FFF1F4A |
:10936000E65BF84FE080F18028E730E0E20EF31E84 |
:10937000F0921A03E09219038091C7019927AA2756 |
:1093800097FDA095BA2FBC01CD010E94C976DC01E2 |
:10939000CB0120E030E040E251E4BC01CD010E946D |
:1093A0006A76DC01CB01BC01CD010E94AC76DC0108 |
:1093B000CB01809324088091C6018093F3078091AC |
:1093C000C5019927AA2797FDA095BA2FBC01CD0109 |
:1093D0000E94C976DC01CB0120E030E040E251E49C |
:1093E000BC01CD010E946A76DC01CB01BC01CD013C |
:1093F0000E94AC76DC01CB018093C7078091C40149 |
:109400008093DE0780916F0480FF59C080912D0802 |
:10941000813808F454C080916804992787FD90959D |
:109420002B2D3327829FA001839F500D929F500DBB |
:109430001124040F151F1093200300931F03809124 |
:109440006904992787FD9095829FB001839F700DD5 |
:10945000929F700D1124860E971E90921E0380928B |
:109460001D0380916A04282F332727FD30958091B2 |
:109470001B0390911C03820F931F90931C038093F6 |
:109480001B0380916C04282F332727FD3095809192 |
:1094900031069927289FD001299FB00D389FB00D24 |
:1094A0001124B0939B01A0939A0180916B0499279A |
:1094B0008E159F0524F490931A03809319038091CD |
:1094C000190390911A0397FF04C010921A03109287 |
:1094D000190380912C0682FF02C01092F30740917D |
:1094E0001F0350912003CA0157FD03969C01359537 |
:1094F00027953595279537FF03C0309521953F4F28 |
:109500008091F2029091F30282179307B4F4CA019A |
:1095100057FF03C0909581959F4F97FD03969595B2 |
:109520008795959587959093F3028093F2028536FF |
:10953000910544F084E690E001C001979093F30216 |
:109540008093F20240911D0350911E03CA0157FD02 |
:1095500003969C01359527953595279537FF03C0D0 |
:10956000309521953F4F8091F0029091F102821742 |
:109570009307B4F4CA0157FF03C0909581959F4F9C |
:1095800097FD039695958795959587959093F1020C |
:109590008093F0028536910544F084E690E001C0A6 |
:1095A00001979093F1028093F0028091ED0284FF85 |
:1095B00008C01092F3021092F2021092F10210927F |
:1095C000F002ED2DFF27EE0FFF1FE65BF84F4091F5 |
:1095D0005B06242F3327808191812817390744F4B3 |
:1095E0008091830682FF04C081E08093060313C04C |
:1095F000ED2DFF27EE0FFF1FE65BF84F842F992715 |
:1096000020915C06821B910920813181281739073E |
:1096100014F41092060340912106E42FFF27EE0F69 |
:10962000FF1FE65BF84F50915B06852F9927222795 |
:109630003327281B390B808191818217930744F4CB |
:109640008091830683FF04C081E08093050316C0E8 |
:1096500080910503882391F0E42FFF27EE0FFF1F71 |
:10966000E65BF84F80915C069927851B9109208164 |
:1096700031818217930714F410920503EC2DFF2714 |
:10968000EE0FFF1FE65BF84F40915B06242F332758 |
:10969000808191812817390744F48091830680FFE7 |
:1096A00004C081E08093030317C0809103038823E3 |
:1096B00099F0EC2DFF27EE0FFF1FE65BF84F842F8C |
:1096C000992720915C06821B9109208131812817FE |
:1096D000390714F41092030340912006E42FFF276A |
:1096E000EE0FFF1FE65BF84F50915B06852F992721 |
:1096F00022273327281B390B8081918182179307FA |
:1097000044F48091830681FF04C081E080930403C8 |
:1097100016C080910403882391F0E42FFF27EE0FF9 |
:10972000FF1FE65BF84F80915C069927851B910926 |
:10973000208131818217930714F4109204038091E1 |
:109740000603882319F480910503811181E0809339 |
:10975000070380910303882321F480910403882365 |
:1097600051F081E0809308031092070310920603E2 |
:109770001092050302C08093080380910703882399 |
:1097800021F480910803882369F080915A06992773 |
:10979000E981FA818E179F0714F49A83898381E007 |
:1097A00080932D038091ED0284FF1AC010921C0358 |
:1097B00010921B031092200310921F0310921E039D |
:1097C00010921D039AE59093240888E78093F3078D |
:1097D0009093C7078093DE07109207031092080347 |
:1097E0008091E1079091E207A091E307B091E4072F |
:1097F000209175033091760340917703509178035F |
:10980000820F931FA41FB51F8093E1079093E20777 |
:10981000A093E307B093E4078091EB079091EC07E6 |
:10982000A091ED07B091EE0720906D0330906E038C |
:1098300040906F0350907003820D931DA41DB51DC1 |
:109840008093EB079093EC07A093ED07B093EE079E |
:109850008091D8079091D907A091DA07B091DB07E2 |
:10986000E0907103F0907203009173031091740300 |
:10987000EB82FC820D831E838E0D9F1DA01FB11FE6 |
:109880008093D8079093D907A093DA07B093DB07AA |
:109890008091C8079091C907A091CA07B091CB07E2 |
:1098A000E0906903F0906A0300916B0310916C03E0 |
:1098B000EF82F88609871A878E0D9F1DA01FB11FA2 |
:1098C0008093C8079093C907A093CA07B093CB07AA |
:1098D000F0900803FB86FF2029F48091070388237A |
:1098E00009F460C01092650310926603109267033A |
:1098F0001092680310926103109262031092630346 |
:10990000109264031092E1071092E2071092E307AD |
:109910001092E4071092EB071092EC071092ED07FB |
:109920001092EE071092D8071092D9071092DA071A |
:109930001092DB071092C8071092C9071092CA074D |
:109940001092CB078091550390915603A091570335 |
:10995000B09158038093510390935203A093530303 |
:10996000B093540380914D0390914E03A0914F0307 |
:10997000B09150038093490390934A03A0934B0303 |
:10998000B0934C03109238021092370210920C03DD |
:1099900010920B0310920E0310920D030B850023FF |
:1099A00009F0F2C180910703882309F0EDC180918D |
:1099B000110690911206815092402CF48091180368 |
:1099C000882309F4E1C190909A08A0903B06609129 |
:1099D000170870911808788F6F8B80912A089091E2 |
:1099E0002B089A8B898B9FEF991609F4D9C0BB2459 |
:1099F000CC24DD24CA01B901A60195010E94957706 |
:109A000079018A01EF89F88DCF01AA2797FDA095EA |
:109A1000BA2FE81AF90A0A0B1B0BC201B101A60101 |
:109A200095010E94957759016A0129893A89C901EE |
:109A3000AA2797FDA095BA2FA81AB90ACA0ADB0A65 |
:109A4000292C332427FC3094432C532CC801B70114 |
:109A5000A20191010E94217797FF04C061507E4FBF |
:109A60008F4F9F4F3B014C0109E095948794779469 |
:109A700067940A95D1F7C601B501A20191010E9430 |
:109A8000217797FF04C061507E4F8F4F9F4F5B013E |
:109A90006C0119E0D594C794B794A7941A95D1F79F |
:109AA0008091F2029091F302813491053CF480910F |
:109AB000F0029091F10281349105D4F0D401C301F8 |
:109AC00097FE03C00196A11DB11D3C014D01959467 |
:109AD000879477946794D601C501D7FE03C0019699 |
:109AE000A11DB11D5C016D01D594C794B794A794D5 |
:109AF00080912306E82FFF27EE0FFF1FE65BF84F4C |
:109B0000808191810190F081E02DF7FF03C0F095F5 |
:109B1000E195FF4F7A97A4F0C401B30123E030E050 |
:109B200040E050E00E94957739014A01C601B50135 |
:109B300023E030E040E050E00E94957759016A014F |
:109B400080919C08282F332727FD3095432F532FD2 |
:109B5000261537054805590514F439014A01992796 |
:109B600087FD9095909581959F4FAA2797FDA09589 |
:109B7000BA2F681679068A069B0614F43C014D013B |
:109B80002A153B054C055D0514F459016A01A81618 |
:109B9000B906CA06DB060CF0CFC05C016D01CCC073 |
:109BA000EA2CFF2400271127CA01B901A801970157 |
:109BB0000E94957739014A014F89588DCA01AA2719 |
:109BC00097FDA095BA2F681A790A8A0A9B0AC201E2 |
:109BD000B101A80197010E94957759016A0169892D |
:109BE0007A89CB01AA2797FDA095BA2FA81AB90A9E |
:109BF000CA0ADB0AD401C30197FE03C00F96A11D58 |
:109C0000B11D3C014D01F4E09594879477946794DD |
:109C1000FA95D1F7D601C501D7FE03C00F96A11D55 |
:109C2000B11D5C016D01E4E0D594C794B794A7948D |
:109C3000EA95D1F78091F2029091F3028134910577 |
:109C40003CF48091F0029091F10281349105A4F0EE |
:109C5000C401B30123E030E040E050E00E9495777A |
:109C600039014A01C601B50123E030E040E050E08F |
:109C70000E94957759016A0180912306E82FFF27FA |
:109C8000EE0FFF1FE65BF84F808191810190F0811C |
:109C9000E02DF7FF03C0F095E195FF4F7A97A4F010 |
:109CA000C401B30123E030E040E050E00E9495772A |
:109CB00039014A01C601B50123E030E040E050E03F |
:109CC0000E94957759016A0171E267167104810457 |
:109CD00091042CF070E2672E712C812C912C80EE77 |
:109CE00068168FEF78068FEF88068FEF980644F49A |
:109CF00060EE662E6FEF762E6FEF862E6FEF962E4C |
:109D000091E2A916B104C104D1042CF050E2A52EB1 |
:109D1000B12CC12CD12CA0EEAA16AFEFBA06AFEF32 |
:109D2000CA06AFEFDA0644F440EEA42E4FEFB42E8D |
:109D30004FEFC42E4FEFD42E8091550390915603D0 |
:109D4000A0915703B091580386199709A809B9093A |
:109D50008093550390935603A0935703B0935803F1 |
:109D600080914D0390914E03A0914F03B091500309 |
:109D70008A199B09AC09BD0980934D0390934E034A |
:109D8000A0934F03B0935003809137029091380213 |
:109D90008F3F910509F008F4C4C5BB85BB2309F0CA |
:109DA0004EC580910703882309F049C580912D0392 |
:109DB000882309F044C5E0916306EC87EE2309F49B |
:109DC0003EC58091E1079091E207A091E307B09131 |
:109DD000E407B7FF04C081509F4FAF4FBF4FE92E3C |
:109DE000FA2E0B2F112707FD1A95E092E107F0924A |
:109DF000E2070093E3071093E4078091EB0790914B |
:109E0000EC07A091ED07B091EE07B7FF04C08150B9 |
:109E10009F4FAF4FBF4F892F9A2FAB2FBB27A7FD67 |
:109E2000BA958D879E87AF87B88B8093EB07909309 |
:109E3000EC07A093ED07B093EE0780913B06A82EA8 |
:109E4000BB24CC24DD24209165033091660340912E |
:109E5000670350916803C601B5010E94217797FFFF |
:109E600004C061507F4F8F4F9F4F672E782E892EF1 |
:109E7000992487FC9A94609265037092660380929D |
:109E800067039092680320916103309162034091CF |
:109E9000630350916403C601B5010E94217797FFC7 |
:109EA00004C061507F4F8F4F9F4F272E382E492E71 |
:109EB000552447FC5A9420926103309262034092E9 |
:109EC00063035092640380915D0390915E03A091BF |
:109ED0005F03B0916003B7FF04C081509F4FAF4F45 |
:109EE000BF4F892F9A2FAB2FBB27A7FDBA95809321 |
:109EF0005D0390935E03A0935F03B0936003D8016A |
:109F0000C70186199709A809B9098093B5039093E9 |
:109F1000B603A093B703B093B80320916206E22E74 |
:109F2000FF2400271127BC01CD01A80197010E9441 |
:109F3000957759016A012093C4033093C503409378 |
:109F4000C6035093C7038D859E85AF85B889821956 |
:109F50009309A409B5098093B9039093BA03A09318 |
:109F6000BB03B093BC03BC01CD01A80197010E94C3 |
:109F700095772093C8033093C9034093CA03509345 |
:109F8000CB03D601C501D7FE04C081509F4FAF4F10 |
:109F9000BF4F892F9A2FAB2FBB27A7FDBA95909360 |
:109FA0000C0380930B0357FF04C021503F4F4F4FCA |
:109FB0005F4FBB2757FDBA95A52F942F832F909302 |
:109FC0000E0380930D038091F2029091F30281348D |
:109FD0009105DCF48091F0029091F10281349105B9 |
:109FE000A4F480912306E82FFF27EE0FFF1FE65B06 |
:109FF000F84F808191810190F081E02DF7FF03C03F |
:10A00000F095E195FF4F7A97E4F080919A088F3FA1 |
:10A01000C1F480910B0390910C0397FD01969595E7 |
:10A02000879590930C0380930B0380910D0390917F |
:10A030000E0397FD01969595879590930E03809357 |
:10A040000D038091D8079091D907A091DA07B091BC |
:10A05000DB07B7FF04C081509F4FAF4FBF4F892F21 |
:10A060009A2FAB2FBB27A7FDBA958093D807909363 |
:10A07000D907A093DA07B093DB078091C8079091C6 |
:10A08000C907A091CA07B091CB07B7FF04C08150A0 |
:10A090009F4FAF4FBF4F892F9A2FAB2FBB27A7FDE5 |
:10A0A000BA958093C8079093C907A093CA07B09345 |
:10A0B000CB078091750390917603A0917703B091BF |
:10A0C00078032B813C814D815E81281B390B4A0B23 |
:10A0D0005B0B2093AD033093AE034093AF035093DB |
:10A0E000B00380916D0390916E03A0916F03B091C6 |
:10A0F0007003EF80F88409851A85E81AF90A0A0BBB |
:10A100001B0BE092B103F092B2030093B3031093E0 |
:10A11000B4032093B5033093B6034093B703509331 |
:10A12000B803E092B903F092BA030093BB03109313 |
:10A13000BC038091510390915203A0915303B091BD |
:10A140005403821B930BA40BB50B80935103909384 |
:10A150005203A0935303B093540380914903909109 |
:10A160004A03A0914B03B0914C038E199F09A00B99 |
:10A17000B10B8093490390934A03A0934B03B09390 |
:10A180004C03FC85FF23E1F020912B0330912C033D |
:10A19000213831054CF08091860390918703019618 |
:10A1A000909387038093860320583F4F4CF480910F |
:10A1B000860390918703019790938703809386038A |
:10A1C00010922C0310922B0381E090E09093D10326 |
:10A1D0008093D003E090B503F090B6030091B703ED |
:10A1E0001091B803D801C70117FF07C08827992726 |
:10A1F000DC018E199F09A00BB10B81509240A04049 |
:10A20000B04034F084E090E09093D1038093D00389 |
:10A210008091D6039091D703A091D803B091D90330 |
:10A220002091E1073091E2074091E3075091E40764 |
:10A23000821B930BA40BB50B815E914BAF4FBF4FAD |
:10A240008F539C49A040B04028F080919B088931F1 |
:10A250000CF4FFC041E0E41640E1F40640E00407DE |
:10A2600040E014070CF473C08091D203882309F4F2 |
:10A270006AC0D801C70117FF07C088279927DC01EA |
:10A280008E199F09A00BB10B9C01AD01B7FF04C053 |
:10A2900021503E4F4F4F5F4FF9E055954795379509 |
:10A2A0002795FA95D1F78091D0039091D103820F31 |
:10A2B000931F9093D1038093D003D801C70117FF58 |
:10A2C00003C00796A11DB11DE3E0B595A79597952D |
:10A2D0008795EA95D1F78093C4039093C503A09323 |
:10A2E000C603B093C70389589341A040B04064F0BF |
:10A2F00088E893E1A0E0B0E08093C4039093C503A5 |
:10A30000A093C603B093C7032091C4033091C50343 |
:10A310004091C6035091C70357FF04C021503F4FDF |
:10A320004F4F5F4F232F342F452F552747FD5A9509 |
:10A3300080910B0390910C03820F931F90930C0359 |
:10A3400080930B0306C081E08093D20302C0109279 |
:10A35000D20360E0E61660EFF6066FEF06076FEFD8 |
:10A3600016070CF073C08091D303882309F46AC0E8 |
:10A37000D801C70117FF07C088279927DC018E196C |
:10A380009F09A00BB10B9C01AD01B7FF04C0215088 |
:10A390003E4F4F4F5F4F69E055954795379527954D |
:10A3A0006A95D1F78091D0039091D103820F931FCA |
:10A3B0009093D1038093D003D801C70117FF03C046 |
:10A3C0000796A11DB11D23E0B595A7959795879593 |
:10A3D0002A95D1F78093C4039093C503A093C60335 |
:10A3E000B093C70388579C4EAF4FBF4F64F488E7C4 |
:10A3F0009CEEAFEFBFEF8093C4039093C503A0938F |
:10A40000C603B093C7032091C4033091C5034091A4 |
:10A41000C6035091C70357FF04C021503F4F4F4F11 |
:10A420005F4F232F342F452F552747FD5A95809195 |
:10A430000B0390910C03820F931F90930C03809356 |
:10A440000B0311C081E08093D3030DC01092D3039E |
:10A450000AC01092D1031092D00388EE93E090933B |
:10A46000DA018093D9018C85282F33278091D0037E |
:10A470009091D1032817390724F43093D103209306 |
:10A48000D00310919B08112379F0212F332727FD4A |
:10A4900030958091D0039091D1032817390724F487 |
:10A4A0003093D1032093D0034091B5035091B6036C |
:10A4B0006091B7037091B80341385105610571058A |
:10A4C00074F080918A0390918B032091D003309196 |
:10A4D000D103820F931F90938B0380938A0340587C |
:10A4E0005F4F6F4F7F4F74F480918A0390918B037D |
:10A4F0002091D0033091D103821B930B90938B0357 |
:10A5000080938A0381E090E09093D1038093D003FD |
:10A51000C090B903D090BA03E090BB03F090BC03A5 |
:10A52000D701C601F7FE07C088279927DC018C19DF |
:10A530009D09AE09BF0981509240A040B04034F05F |
:10A5400084E090E09093D1038093D0038091DA036C |
:10A550009091DB03A091DC03B091DD032091EB0728 |
:10A560003091EC074091ED075091EE07821B930B61 |
:10A57000A40BB50B815E914BAF4FBF4F8F539C49DE |
:10A58000A040B04018F019310CF4FFC001E0C01633 |
:10A5900000E1D00600E0E00600E0F0060CF473C035 |
:10A5A0008091D403882309F46AC0D701C601F7FE5D |
:10A5B00007C088279927DC018C199D09AE09BF09BE |
:10A5C0009C01AD01B7FF04C021503E4F4F4F5F4F7C |
:10A5D00009E055954795379527950A95D1F78091CC |
:10A5E000D0039091D103820F931F9093D103809356 |
:10A5F000D003D701C601F7FE03C00796A11DB11D08 |
:10A6000013E0B595A795979587951A95D1F78093FF |
:10A61000C8039093C903A093CA03B093CB0389588E |
:10A620009341A040B04064F088E893E1A0E0B0E03E |
:10A630008093C8039093C903A093CA03B093CB033C |
:10A640002091C8033091C9034091CA035091CB03B4 |
:10A6500057FF04C021503F4F4F4F5F4F232F342FE0 |
:10A66000452F552747FD5A9580910D0390910E0374 |
:10A67000820F931F90930E0380930D0306C081E019 |
:10A680008093D40302C01092D40320E0C21620EFBE |
:10A69000D2062FEFE2062FEFF2060CF073C0809186 |
:10A6A000D503882309F46AC0D701C601F7FE07C0A5 |
:10A6B00088279927DC018C199D09AE09BF099C01E7 |
:10A6C000AD01B7FF04C021503E4F4F4F5F4FE9E04F |
:10A6D0005595479537952795EA95D1F78091D00301 |
:10A6E0009091D103820F931F9093D1038093D00355 |
:10A6F000D701C601F7FE03C00796A11DB11D73E087 |
:10A70000B595A795979587957A95D1F78093C803C6 |
:10A710009093C903A093CA03B093CB0388579C4E70 |
:10A72000AF4FBF4F64F488E79CEEAFEFBFEF80936D |
:10A73000C8039093C903A093CA03B093CB0320919D |
:10A74000C8033091C9034091CA035091CB0357FF0E |
:10A7500004C021503F4F4F4F5F4F232F342F452FC1 |
:10A76000552747FD5A9580910D0390910E03820F56 |
:10A77000931F90930E0380930D0311C081E080938B |
:10A78000D5030DC01092D5030AC01092D1031092C8 |
:10A79000D00388EE93E09093DA018093D9014C8541 |
:10A7A000242F33278091D0039091D10328173907A4 |
:10A7B00024F43093D1032093D00380919B08882305 |
:10A7C00079F0282F332727FD30958091D003909181 |
:10A7D000D1032817390724F43093D1032093D003F1 |
:10A7E0004091B9035091BA036091BB037091BC03CF |
:10A7F000413851056105710574F08091880390918D |
:10A8000089032091D0033091D103820F931F90933D |
:10A8100089038093880340585F4F6F4F7F4FCCF47C |
:10A8200080918803909189032091D0033091D103C6 |
:10A83000821B930B90938903809388030AC0109224 |
:10A840000E0310920D0310920C0310920B03109242 |
:10A850002D038091F307882341F410920E03109288 |
:10A860000D0310920C0310920B038091E10790915D |
:10A87000E207A091E307B091E4078093D603909399 |
:10A88000D703A093D803B093D9038091EB0790919D |
:10A89000EC07A091ED07B091EE078093DA03909357 |
:10A8A000DB03A093DC03B093DD03109265031092E9 |
:10A8B000660310926703109268031092610310926E |
:10A8C0006203109263031092640310925D0310926E |
:10A8D0005E0310925F03109260031092E1071092E2 |
:10A8E000E2071092E3071092E4071092EB07109230 |
:10A8F000EC071092ED071092EE071092D807109215 |
:10A90000D9071092DA071092DB071092C80710924D |
:10A91000C9071092CA071092CB0710923802109202 |
:10A920003702E0901B03F0901C03C701F7FE04C040 |
:10A93000882799278E199F0940976CF088EE93E03D |
:10A940009093DA018093D90180912C0684FD03C095 |
:10A9500081E08093C30310913806A12EBB24CC2440 |
:10A96000DD24B701882777FD8095982F9701F7FEA2 |
:10A9700004C0222733272E193F09442737FD40956D |
:10A98000542F0E9421779B01AC01C601B5010E94A2 |
:10A99000217797FF04C061507E4F8F4F9F4F59E042 |
:10A9A00095958795779567955A95D1F79B01812F56 |
:10A9B00099278E9DD0018F9DB00D9E9DB00D1124C5 |
:10A9C000CD01B7FD03969595879595958795280FA9 |
:10A9D000391F442737FD4095542F2093A903309306 |
:10A9E000AA034093AB035093AC038091450390912D |
:10A9F0004603A0914703B0914803821B930BA40B1D |
:10AA0000B50B8093450390934603A0934703B093FF |
:10AA100048038155934CA040B04064F080E593EC2E |
:10AA2000A0E0B0E08093450390934603A0934703D2 |
:10AA3000B09348038091450390914603A09147034A |
:10AA4000B0914803805B9C43AF4FBF4F64F480EBF1 |
:10AA50009CE3AFEFBFEF8093450390934603A09331 |
:10AA60004703B0934803409033035090340341149C |
:10AA7000510409F478C180912C0683FF74C1809140 |
:10AA8000750390917603A0917703B0917803B7FF97 |
:10AA900004C081509E4FAF4FBF4F39E0B595A79589 |
:10AAA000979587953A95D1F76C0197FF04C0D0949C |
:10AAB000C194D108D39480916D0390916E03A091BD |
:10AAC0006F03B0917003B7FF04C081509E4FAF4F2A |
:10AAD000BF4F29E0B595A795979587952A95D1F70A |
:10AAE000BC0197FF03C0709561957F4FC616D706CE |
:10AAF0000CF46B01B601D7FE02C0695F7F4F3B01CA |
:10AB000083E0759467948A95E1F702E0E02EF12CDA |
:10AB10006E0C7F1C0CE112E0400E511E72010027EA |
:10AB2000F7FC0095102F24EE3DEF420E531E80914E |
:10AB3000260890912708A0912808B09129088090B4 |
:10AB4000960190909701A0909801B0909901BC0156 |
:10AB5000CD01A50194010E949577E21AF30A040B36 |
:10AB6000150BC801B70128E631E040E050E00E9433 |
:10AB70009577DC01CB011CE4E12E1FEFF12EE80EEE |
:10AB8000F91E0091D9011091DA010115110589F51D |
:10AB900039E1C316D1046CF580912B0390912C03FD |
:10ABA0008E0D9F1D90932C0380932B038091C303E4 |
:10ABB0008823F9F0C201AA2797FDA095BA2FBC01FE |
:10ABC000CD01A50194010E942177DC01CB01809386 |
:10ABD000260890932708A0932808B0932908BC0161 |
:10ABE000CD010E9495773093320320933103109268 |
:10ABF000C303C701B4E0880F991FBA95E1F7B30109 |
:10AC00000E946077CB01AA2797FDA095BA2F2091CB |
:10AC10002608309127084091280850912908280FCC |
:10AC2000391F4A1F5B1F2093260830932708409343 |
:10AC3000280850932908F090CA016F2D7727C69EE7 |
:10AC4000C001C79E900DD69E900D112497FD4F9682 |
:10AC50006C01A5E0D594C794AA95E1F76C197D091C |
:10AC60006B0177FD7AC00115110509F06FC00091E5 |
:10AC7000F2021091F3028091F0029091F102080F1C |
:10AC8000191F17FF02C0095F1F4FF3E015950795C5 |
:10AC9000FA95E1F7005C1F4FCA01B901A5019401C3 |
:10ACA0000E949577DA01C901209131033091320376 |
:10ACB000442737FD4095542F821B930BA40BB50BF3 |
:10ACC000845E9D4FAF4FBF4FBC01CD0128E631E000 |
:10ACD00040E050E00E949577DC01CB01845B90401E |
:10ACE0008C9DA0018D9D500D9C9D500D1124CA017D |
:10ACF000B8010E94607783E0F89E60011124C616B7 |
:10AD0000D70614F4B60108C0882799278C199D0925 |
:10AD1000681779070CF4BC019B01442737FD409567 |
:10AD2000542F8091450390914603A0914703B09121 |
:10AD30004803820F931FA41FB51F80934503909370 |
:10AD40004603A0934703B09348030DC00150104041 |
:10AD50001093DA010093D90106C084EF91E090933B |
:10AD6000DA018093D90180912D03882381F010921C |
:10AD7000390310923A0310923B0310923C03109255 |
:10AD80003D0310923E0310923F0310924003F09057 |
:10AD90000803FF20F1F48091F307282F332744277D |
:10ADA00055278091750390917603A0917703B09118 |
:10ADB0007803BC01CD010E942177DC01CB01BC01ED |
:10ADC000CD0128EF3AE240E050E00E94957739014A |
:10ADD00002C066247724E0900703EE20F1F480910E |
:10ADE000F307282F33274427552780916D0390912F |
:10ADF0006E03A0916F03B0917003BC01CD010E945E |
:10AE00002177DC01CB01BC01CD0128EF3AE240E023 |
:10AE100050E00E949577290102C044245524809176 |
:10AE2000C1079091C207893C91051CF088EC90E025 |
:10AE300005C088539F4F34F488E39FEF9093C20777 |
:10AE40008093C1078091CD079091CE07893C9105F1 |
:10AE50001CF088EC90E005C088539F4F34F488E3E1 |
:10AE60009FEF9093CE078093CD078091D00790916C |
:10AE7000D107AA2797FDA095BA2F20912408A22ECA |
:10AE8000BB24CC24DD24BC01CD01A60195010E9488 |
:10AE900021779B01AC018091C1079091C207AA273D |
:10AEA00097FDA095BA2FE7E0880F991FAA1FBB1F37 |
:10AEB000EA95D1F7280F391F4A1F5B1F57FF04C0BF |
:10AEC000215C3F4F4F4F5F4F76E055954795379543 |
:10AED00027957A95D1F78301020F131F1093D1079D |
:10AEE0000093D0078091BE079091BF07AA2797FDD6 |
:10AEF000A095BA2FBC01CD01A60195010E94217732 |
:10AF00009B01AC018091CD079091CE07AA2797FDB8 |
:10AF1000A095BA2F67E0880F991FAA1FBB1F6A95DB |
:10AF2000D1F7280F391F4A1F5B1F57FF04C0215C50 |
:10AF30003F4F4F4F5F4F96E0559547953795279573 |
:10AF40009A95D1F74201820E931E9092BF0780928C |
:10AF5000BE0780911F0890912008880F991FAA278B |
:10AF600097FDA095BA2F2091C7073327442755276F |
:10AF7000BC01CD010E9421775B016C0197FF08C0E5 |
:10AF80008FE390E0A0E0B0E0A80EB91ECA1EDB1E61 |
:10AF900086E0D594C794B794A7948A95D1F7809109 |
:10AFA000DE07282F33274427552780915903909196 |
:10AFB0005A03A0915B03B0915C03BC01CD010E94D8 |
:10AFC0002177DC01CB01BC01CD0120EF35E540E06C |
:10AFD00050E00E949577B501620F731F70932008AF |
:10AFE00060931F080150104134F080E090E190938D |
:10AFF000D1078093D0078091D0079091D1078050DE |
:10B00000904F34F480E090EF9093D1078093D00775 |
:10B01000B1E08B16B0E19B0634F080E090E19093B4 |
:10B02000BF078093BE078091BE079091BF078050F5 |
:10B03000904F34F480E090EF9093BF078093BE0769 |
:10B040006150704134F080E090E19093200880934B |
:10B050001F0880911F08909120088050904F34F471 |
:10B0600080E090EF9093200880931F08809100016A |
:10B07000482F552780911E0190911F0148175907AD |
:10B0800094F420911E0130911F0169817A81649F9F |
:10B09000C001659F900D749F900D1124B9010E940D |
:10B0A0004C777A83698389819A81880F991F880FE9 |
:10B0B000991F9A83898340912C0640FFBDC6EE20DC |
:10B0C00009F0BAC6FF2009F0B7C6AA24BB2445017F |
:10B0D0008091090390910A039093F5058093F405FC |
:10B0E00020918C0330918D032115310509F03FC06B |
:10B0F00080911401909115018959934058F087B5BA |
:10B10000853F20F480913B02815011C081E0809303 |
:10B11000E9034EC080911401909115018436910588 |
:10B1200008F587B58B30D0F080913B028F5F80931C |
:10B130003B029AE089029001112480911B06821B38 |
:10B1400087BD8CE291E090932902809328028EE5DE |
:10B1500091E090938D0380938C032AC081E08093CB |
:10B16000E80326C0F092E803F092E90321C0809141 |
:10B17000130390911403A0911503B091160314E0EA |
:10B18000880F991FAA1FBB1F1A95D1F780933C0205 |
:10B1900090933D02A0933E02B0933F02B0923A02D8 |
:10B1A000A09239022150304030938D0320938C03BC |
:10B1B0002091CD0141FF24C02233D8F48091E301D6 |
:10B1C00081508093E3018F3FD9F510922E03809137 |
:10B1D000130390911403A0911503B091160380936B |
:10B1E0000F0390931003A0931103B093120381E017 |
:10B1F00004C081E080932E0388EC8093E30120C09B |
:10B2000080919A0190919B01820F911D20913106AE |
:10B210003327829FF001839FF00D929FF00D112440 |
:10B22000CF01AA2797FDA095BA2F80930F03909383 |
:10B230001003A0931103B093120381E080932E03B7 |
:10B240008091750390917603A0917703B091780374 |
:10B25000E0909601F090970100919801109199016A |
:10B26000BC01CD01A80197010E94957759016A019F |
:10B2700080916D0390916E03A0916F03B091700364 |
:10B28000BC01CD01A80197010E949577B901C501C4 |
:10B290000E944B6E8C01CC9714F00CE310E0C801B7 |
:10B2A0000E941D6A8C0180E28093950180912E039B |
:10B2B000882309F447C48091ED0299279C012071ED |
:10B2C000307084FD3FC46091850660FD04C08091AC |
:10B2D0002C0681FD0CC0C980DA803093DF032093F7 |
:10B2E000DE038091ED02806C8093ED0299C1809124 |
:10B2F000ED0281FF6BC14091DF015091E001CA0175 |
:10B300000F962091190330911A0382179307BCF509 |
:10B310008091E803882399F58091ED0287FF15C09D |
:10B320008091ED028F778093ED02809113039091CD |
:10B330001403A0911503B091160380930F0390930B |
:10B340001003A0931103B09312038091ED02806467 |
:10B350008093ED02241B350B2F50304037FF03C084 |
:10B36000309521953F4F8091DE039091DF03820F4E |
:10B37000931F9093DF038093DE038BE26EC0CA01BC |
:10B380000F9728173907BCF58091E903882399F5B1 |
:10B390008091ED0286FF15C08091ED028F7B809336 |
:10B3A000ED028091130390911403A0911503B091C5 |
:10B3B000160380930F0390931003A0931103B0938F |
:10B3C00012038091ED0280688093ED02241B350BFF |
:10B3D000215F3F4F37FF03C0309521953F4F80914C |
:10B3E000DE039091DF03821B930B9093DF03809326 |
:10B3F000DE038DE232C08091ED02807C69F18091A4 |
:10B40000ED028F738093ED021092DF031092DE0342 |
:10B4100020911303309114034091150350911603AA |
:10B4200020930F03309310034093110350931203A2 |
:10B4300061FF06C084EF91E0909329028093280277 |
:10B4400080911703882341F42333310541055105C9 |
:10B450001CF081E0809317038DE380939501209188 |
:10B46000DE033091DF03C90137FF04C08827992725 |
:10B47000821B930B815092400CF491C08091310655 |
:10B480009927289F7001299FF00C389FF00C1124F8 |
:10B49000C70160E075E00E946077CB01AA2797FDA5 |
:10B4A000A095BA2F20910F03309110034091110302 |
:10B4B00050911203280F391F4A1F5B1F20930F035F |
:10B4C0003093100340931103509312031092DF0343 |
:10B4D0001092DE03C0901303D0901403E090150384 |
:10B4E000F0901603D701C60180509440A040B040B0 |
:10B4F00082179307A407B5075CF4D701C6018050F3 |
:10B500009C4FAF4FBF4F281739074A075B0744F0DE |
:10B5100080930F0390931003A0931103B093120331 |
:10B520008091850681FF06C084E690E09093290211 |
:10B530008093280280913506882389F5409109037C |
:10B5400050910A0357FF02C04D5F5F4F55954795D5 |
:10B550005595479580911E0190911F012091000102 |
:10B560003327489FB001499F700D589F700D1124DB |
:10B57000CB01B9010E9460777093E0016093DF0115 |
:10B58000663471051CF486E490E005C067397105E6 |
:10B5900034F086E990E09093E0018093DF018091A0 |
:10B5A0008C0390918D03892BB9F1809113039091B5 |
:10B5B0001403A0911503B091160380930F03909389 |
:10B5C0001003A0931103B093120326C080911303BC |
:10B5D00090911403A0911503B091160380599140E6 |
:10B5E000A040B04080930F0390931003A0931103E9 |
:10B5F000B093120380913506882311F0992702C079 |
:10B6000088E790E09093E0018093DF0189819A813F |
:10B6100090930A0380930903C0900903D0900A0312 |
:10B620002091130330911403409115035091160398 |
:10B630002B8B3C8B4D8B5E8B20910F033091100335 |
:10B6400040911103509112036B897C898D899E89E9 |
:10B65000261737074807590724F08091850680FD93 |
:10B66000B8C280918C0390918D03892B39F0C090E2 |
:10B670000903D0900A03AA24BB24D9C08B899C89D2 |
:10B68000AD89BE89821B930BA40BB50B8093AD03D0 |
:10B690009093AE03A093AF03B093B003823070E8F1 |
:10B6A00097077FEFA7077FEFB7072CF481E090E8BB |
:10B6B000AFEFBFEF09C08F5F9F47A040B04064F07D |
:10B6C0008FEF9FE7A0E0B0E08093AD039093AE03CF |
:10B6D000A093AF03B093B003A090AD03B090AE03BE |
:10B6E0008091CC01282F3327442755278091AD0323 |
:10B6F0009091AE03A091AF03B091B003BC01CD0116 |
:10B700000E94217797FF04C0615E7F4F8F4F9F4F4C |
:10B71000A5E09595879577956795AA95D1F760935C |
:10B72000AD037093AE038093AF039093B003653085 |
:10B73000FEEF7F07FFEF8F07FFEF9F072CF484E0FA |
:10B740009EEFAFEFBFEF09C0605074408040904063 |
:10B7500064F080E094E0A0E0B0E08093AD039093CB |
:10B76000AE03A093AF03B093B0038090AD0390906D |
:10B77000AE032091390230913A0237FF02C0295FAF |
:10B780003F4FF3E035952795FA95E1F74FEF2238D3 |
:10B7900034071CF421E83FEF05C02038310514F0D0 |
:10B7A00020E830E0C901AA2797FDA095BA2F209183 |
:10B7B000CE01332744275527BC01CD010E942177B4 |
:10B7C00097FF04C06D5F7F4F8F4F9F4FE2E09595CD |
:10B7D000879577956795EA95D1F79B015FEF613083 |
:10B7E00075071CF420E03FEF06C06F3F710519F0AC |
:10B7F00014F020E031E08091ED02807C49F0C90135 |
:10B8000037FD03969C0135952795359527950DC0F5 |
:10B810008091850680FF09C0C90137FD07969C010C |
:10B8200043E0359527954A95E1F7820E931E2091C6 |
:10B83000CB01222309F454C0609135037091360383 |
:10B84000809137039091380397FF04C061587F4F70 |
:10B850008F4F9F4F37E095958795779567953A95E8 |
:10B86000D1F73327442755270E94217797FF04C03B |
:10B87000615E7F4F8F4F9F4FB5E095958795779588 |
:10B880006795BA95D1F76093AD037093AE0380933B |
:10B89000AF039093B0036138AFEF7A07AFEF8A0739 |
:10B8A000AFEF9A072CF480E89FEFAFEFBFEF0AC02D |
:10B8B0006F3F71058105910569F064F080E091E0CA |
:10B8C000A0E0B0E08093AD039093AE03A093AF03EC |
:10B8D000B093B0038091AD039091AE03880E991E92 |
:10B8E0008091C901282F332780919E08992787FDD1 |
:10B8F0009095289FF001299FF00D389FF00D11249D |
:10B900009F01F7FF02C021583F4F220F232F221F14 |
:10B91000330BFFEF21383F071CF420E83FEF06C050 |
:10B920002F3F310519F014F020E031E0820E931E14 |
:10B93000C401AA2797FDA095BA2FE0900903F090C3 |
:10B940000A039701442737FD4095542FBC01CD01D0 |
:10B950000E94217797FF04C061507E4F8F4F9F4F09 |
:10B96000F9E09595879577956795FA95D1F7C61A79 |
:10B97000D70A8091DE039091DF03892B09F060C024 |
:10B980001E141F040CF05CC09501B7FE03C0309577 |
:10B9900021953F4F2D33310540F48091E203909182 |
:10B9A000E3038C159D0574F526C02C533040E5E06B |
:10B9B00036952795EA95E1F72031310510F02FE013 |
:10B9C00030E04091E2035091E3031A141B04E4F4C5 |
:10B9D00080E190E0821B930B489F9001499F300DBE |
:10B9E000589F300D112474E0369527957A95E1F72C |
:10B9F0002C153D0520F58091E1019091E201C816DA |
:10BA0000D906F4F06C011CC0205F3F4F8091E1012A |
:10BA10009091E201829FB001839F700D929F700D03 |
:10BA200011249B0164E0369527956A95E1F74C1542 |
:10BA30005D0514F06A0104C0C216D30608F069015E |
:10BA4000C601AA2797FDA095BA2F2DE0880F991F50 |
:10BA5000AA1FBB1F2A95D1F79801442737FD4095AF |
:10BA6000542FBC01CD010E9495772093B1033093F0 |
:10BA7000B2034093B3035093B403C090B103D0908A |
:10BA8000B2038091E0039091E1039C01220F331FE8 |
:10BA9000280F391F2C0D3D1D37FF02C02D5F3F4F72 |
:10BAA000A90155954795559547955093E1034093C6 |
:10BAB000E00380912D06282F3327220F331F220FFA |
:10BAC000331F241735076CF480911B08282F332768 |
:10BAD000220F331F220F331F2055304042175307C8 |
:10BAE00024F03093E1032093E0038091850680FFEA |
:10BAF00014C08091E0039091E103A981BA818A1773 |
:10BB00009B0724F0B093E103A093E003E091E003EE |
:10BB1000F091E103FA83E9835CC029813A812E190F |
:10BB20003F0937FF02C02D5F3F4F3595279535956B |
:10BB30002795E090E003F090E103E20EF31EFA8215 |
:10BB4000E98247C080913506882301F56091090399 |
:10BB500070910A0377FF02C06D5F7F4F75956795FF |
:10BB60007595679540911E0150911F0180910001CC |
:10BB7000282F3327649FC001659F900D749F900DFF |
:10BB80001124B9010E946077CB0101C099279093DD |
:10BB9000E0018093DF018091DF019091E001873423 |
:10BBA00091051CF486E490E005C08639910534F0D7 |
:10BBB00086E990E09093E0018093DF0129813A814A |
:10BBC0003093E1032093E0038091ED02806C809339 |
:10BBD000ED028091ED0299279C012270307081FF67 |
:10BBE0001CC18091E4039091E503A091E603B0911C |
:10BBF000E7030097A105B10521F08091170381307B |
:10BC0000B1F449815A81CA01AA2797FDA095BA2F9C |
:10BC10002EE0880F991FAA1FBB1F2A95D1F780938A |
:10BC2000E4039093E503A093E603B093E7038091C8 |
:10BC30001703813019F482E08093170369817A81B8 |
:10BC4000CB01AA2797FDA095BA2F9801442737FD6D |
:10BC50004095542FBC01CD010E942177DC01CB011E |
:10BC60008093B1039093B203A093B303B093B40352 |
:10BC7000B7FF04C08150904EAF4FBF4F7C018D0184 |
:10BC8000FDE015950795F794E794FA95D1F7E092C2 |
:10BC9000B103F092B2030093B3031093B403609125 |
:10BCA000EE027091EF028FE0603A780750F58091D4 |
:10BCB000E4039091E503A091E603B091E7039C01B2 |
:10BCC000AD01EAE05695479537952795EA95D1F766 |
:10BCD000821B930BA40BB50BA8019701F4E0220F74 |
:10BCE000331F441F551FFA95D1F7820F931FA41FCE |
:10BCF000B51F8093E4039093E503A093E603B0930C |
:10BD0000E70360547F4118F58091E4039091E503C7 |
:10BD1000A091E603B091E7039C01AD01ECE05695DC |
:10BD2000479537952795EA95D1F7821B930BA40B7E |
:10BD3000B50BA801970172E0220F331F441F551F56 |
:10BD40007A95D1F7820F931FA41FB51F29C0809148 |
:10BD5000390290913A028091390290913A0297FF0C |
:10BD600003C0909581959F4F843691050CF5809185 |
:10BD7000E4039091E503A091E603B091E7039C01F1 |
:10BD8000AD016EE056954795379527956A95D1F7A1 |
:10BD9000821B930BA40BB50B8E0D9F1DA01FB11F13 |
:10BDA0008093E4039093E503A093E603B093E70345 |
:10BDB0008091E4039091E503A091E603B091E7033D |
:10BDC0001EE0B695A795979587951A95D1F790930C |
:10BDD0000A038093090340913306442399F05527C1 |
:10BDE0009C01BA010E946077C901861B970B909352 |
:10BDF000E3038093E203260F371F3093E201209381 |
:10BE0000E1011FC01092E3031092E2038FEF93E071 |
:10BE10009093E2018093E10114C0109217031092F5 |
:10BE2000E4031092E5031092E6031092E7033093C7 |
:10BE30000A032093090305C08091ED02806C809372 |
:10BE4000ED022090D607222D3327220F331F220F19 |
:10BE5000331F285D3F4FA981BA812A173B0714F091 |
:10BE60003A83298330901B08832D9927880F991FC7 |
:10BE7000880F991F80559040E981FA818E179F079E |
:10BE800014F49A83898380917102882321F480912C |
:10BE9000A7088F3FA1F08091EE029091EF020297E8 |
:10BEA000C09768F4E980FA801E141F0444F481E00E |
:10BEB00090E09093EF028093EE023A832983098108 |
:10BEC0001A811093D9050093D8058091A903909108 |
:10BED000AA03A091AB03B091AC03F2E0880F991FC5 |
:10BEE000AA1FBB1FFA95D1F700911F0810912008D7 |
:10BEF000081B190B29813A81213A31058CF0C901BF |
:10BF000037FD019695958795801791070CF48C0164 |
:10BF1000909581959F4F081719076CF48C010BC001 |
:10BF20000135110514F000E510E03FEF003B130769 |
:10BF300014F400EB1FEF232D3327220F331F220FA2 |
:10BF4000331FC90149815A81841B950B80179107C2 |
:10BF50000CF48C0169817A81621B730B0617170739 |
:10BF60000CF48B018091D0079091D10760911F0351 |
:10BF700070912003861B970B9093E0078093DF0757 |
:10BF8000D090F30720913D0330913E0340913F0351 |
:10BF900050914003DD2041F0661A770AC301AA27B9 |
:10BFA00097FDA095BA2F04C0AA2797FDA095BA2F98 |
:10BFB000280F391F4A1F5B1F20933D0330933E0318 |
:10BFC00040933F035093400380913D0390913E0383 |
:10BFD000A0913F03B091400381509A4FA040B040E0 |
:10BFE00064F080E09AEFA0E0B0E080933D0390938E |
:10BFF0003E03A0933F03B093400380913D03909193 |
:10C000003E03A0913F03B091400380509640AF4F54 |
:10C01000BF4F64F480E096E0AFEFBFEF80933D0345 |
:10C0200090933E03A0933F03B0934003C090420619 |
:10C030002091DF073091E007F8E0FC1598F08C2D97 |
:10C040009927829F7001839FF00C929FF00C11241E |
:10C05000C701F7FC07967C0163E0F594E7946A95C5 |
:10C06000E1F712C08C2D86959927829FA001839FAE |
:10C07000500D929F500D1124CA0157FD03967C016B |
:10C08000F594E794F594E794A090CF01B090D00197 |
:10C090009501442737FD4095542F80913D039091A1 |
:10C0A0003E03A0913F03B0914003BC01CD010E942B |
:10C0B0009577E20EF31E9090BB01692D77278827B4 |
:10C0C0009927980117FF04C022273327201B310B23 |
:10C0D00037FF02C02F5F3F4F35952795A981BA8161 |
:10C0E0002A0F3B1F442737FD4095542F0E9421778C |
:10C0F00097FF04C0615C7F4F8F4F9F4F26E095955F |
:10C100008795779567952A95D1F79B016E157F05E1 |
:10C110000CF47B01309521953F4FE216F3060CF4A9 |
:10C1200079018091BE079091BF0760911D037091C6 |
:10C130001E03861B970B9093BD078093BC0720912D |
:10C14000390330913A0340913B0350913C03DD2089 |
:10C1500041F0461A570AC201AA2797FDA095BA2FA7 |
:10C1600004C0AA2797FDA095BA2F280F391F4A1F90 |
:10C170005B1F2093390330933A0340933B03509362 |
:10C180003C038091390390913A03A0913B03B09115 |
:10C190003C0381509A4FA040B04064F080E09AEF99 |
:10C1A000A0E0B0E08093390390933A03A0933B035F |
:10C1B000B0933C038091390390913A03A0913B03E3 |
:10C1C000B0913C0380509640AF4FBF4F64F480E085 |
:10C1D00096E0AFEFBFEF8093390390933A03A093BB |
:10C1E0003B03B0933C032091BC073091BD0748E06E |
:10C1F0004C1598F08C2D9927829FB001839F700D6C |
:10C20000929F700D1124CB0177FD07966C01B3E06E |
:10C21000D594C794BA95E1F712C0C6948C2D99278E |
:10C22000829FD001839FB00D929FB00D1124CD014C |
:10C23000B7FD03966C01D594C794D594C794950126 |
:10C24000442737FD4095542F8091390390913A034C |
:10C25000A0913B03B0913C03BC01CD010E949577B6 |
:10C26000C20ED31E692D772788279927980117FFBB |
:10C2700004C022273327201B310B37FF02C02F5F5A |
:10C280003F4F35952795E981FA812E0F3F1F4427AF |
:10C2900037FD4095542F0E94217797FF04C0615CC1 |
:10C2A0007F4F8F4F9F4FE6E09595879577956795E0 |
:10C2B000EA95D1F79B016C157D050CF46B01309567 |
:10C2C00021953F4FC216D3060CF4690169EE862E04 |
:10C2D00066E0962E50EAA52E56E0B52E4BE0542E81 |
:10C2E00038EF632E37E0732ED5012C9112160CF027 |
:10C2F00014C1203429F4E981FA81F88FEF8B1FC033 |
:10C3000049815A81CA01AA2797FDA095BA2F3327E0 |
:10C3100027FD3095432F532FBC01CD010E9421777B |
:10C3200097FF04C0615C7F4F8F4F9F4F26E095952C |
:10C330008795779567952A95D1F7788F6F8BF5015B |
:10C340002181203439F42F89388D2E0D3F1D388FEF |
:10C350002F8B2AC0203C39F44F89588D4E195F0924 |
:10C36000588F4F8B21C0C701AA2797FDA095BA2FE0 |
:10C37000332727FD3095432F532FBC01CD010E9459 |
:10C38000217797FF04C0615C7F4F8F4F9F4FB6E0CE |
:10C390009595879577956795BA95D1F7AF89B88DBB |
:10C3A000A60FB71FB88FAF8BF5012281203439F467 |
:10C3B0002F89388D2C0D3D1D388F2F8B2AC0203CA6 |
:10C3C00039F44F89588D4C195D09588F4F8B21C016 |
:10C3D000C601AA2797FDA095BA2F332727FD3095D0 |
:10C3E000432F532FBC01CD010E94217797FF04C03A |
:10C3F000615C7F4F8F4F9F4FA6E09595879577950E |
:10C400006795AA95D1F7AF89B88DA60FB71FB88FDA |
:10C41000AF8BF5012381203439F42F89388D200F1B |
:10C42000311F388F2F8B2AC0203C39F44F89588D0B |
:10C43000401B510B588F4F8B21C0C801AA2797FD75 |
:10C44000A095BA2F332727FD3095432F532FBC01DA |
:10C45000CD010E94217797FF04C0615C7F4F8F4F11 |
:10C460009F4FF6E09595879577956795FA95D1F763 |
:10C47000AF89B88DA60FB71FB88FAF8BF30180813E |
:10C4800091812F89388D8217930764F4B901680F61 |
:10C49000791F77FF02C06F5F7F4F75956795788F23 |
:10C4A0006F8B08C04F89588D440F551F481B590B7F |
:10C4B000588F4F8B822D9927880F991F880F991FAE |
:10C4C0006F89788D861797075CF4832D9927880FDD |
:10C4D000991F880F991FAF89B88DA817B90714F055 |
:10C4E000988F8F8B8F89988D97FD0396959587955B |
:10C4F00095958795F4018183880F991F880F991F5F |
:10C500002F89388D281B390BC901880F8283EF8949 |
:10C51000F88DD301ED93FC9303C0F40111821282D4 |
:10C520005A9422E030E0620E731E44E050E0A40E04 |
:10C53000B51E68E070E0860E971E57FED5CEE2E18C |
:10C54000C85E0C94CC778091F6039091F703A0918C |
:10C55000F803B091F9038093EE039093EF03A09357 |
:10C56000F003B093F1038091F2039091F303A09153 |
:10C57000F403B091F5038093EA039093EB03A09347 |
:10C58000EC03B093ED03089510920104109200049F |
:10C590001092FF031092FE03089584B1806A84B95B |
:10C5A0003D9A82E58CBD1DBC459A81E0809332089E |
:10C5B0008AEA8093430883E8809344088AE0809362 |
:10C5C00045081092470810924608109249081092A8 |
:10C5D000480810929D08109265080895309132081D |
:10C5E000332309F085C00DB407FE82C084E0809338 |
:10C5F0002702459A2EB5809105049927813091052F |
:10C6000089F0823091051CF4892B21F03EC00297FD |
:10C61000B9F03BC030936408209306042138A9F593 |
:10C6200081E008C0253549F480910604820F80938B |
:10C63000060482E08093050428C03093050425C0D9 |
:10C6400080916408E82FFF27E058F74F20838F5F21 |
:10C6500080936408909106048A31A0F0291769F448 |
:10C660008AE1A0E8B8E0E6E6F8E00D9001928A954C |
:10C67000E1F781E08093650802C03093650810926D |
:10C68000050403C0920F90930604209142082032C3 |
:10C6900008F028C0459800000000000000000000DD |
:10C6A000000000000000000000000000000000008A |
:10C6B000000000000000000000000000000000007A |
:10C6C000000000000000E0913B08F0913C08E20F00 |
:10C6D000F11D80818EBD809162089081890F8093C9 |
:10C6E000620803C081E0809332082F5F20934208E4 |
:10C6F0000895EF92FF920F931F9380913B06992725 |
:10C70000880F991F880F991F7C010027F7FC00955F |
:10C71000102F8091750390917603A0917703B091CB |
:10C720007803BC01CD01A80197010E949577309351 |
:10C7300047082093460880916D0390916E03A09165 |
:10C740006F03B0917003BC01CD01A80197010E9455 |
:10C750009577309349082093480820912608309116 |
:10C7600027084091280850912908DA01C901E3E01F |
:10C77000880F991FAA1FBB1FEA95D1F7820F931F3D |
:10C78000A41FB51F820F931FA41FB51F20919601F0 |
:10C79000309197014091980150919901BC01CD01D0 |
:10C7A0000E94957730934F0820934E08809186031E |
:10C7B000909187032091470230914802821B930B8E |
:10C7C0009093550880935408E0917C03F0917D0389 |
:10C7D0008091E8079091E907BF010E946077CB0143 |
:10C7E0009B01220F331F220F331F280F391F280FE1 |
:10C7F000391F37FF02C02D5F3F4F3595279535957F |
:10C80000279530934B0820934A08809122089091F5 |
:10C810002308BF010E9460779B01220F331F220F64 |
:10C82000331F260F371F260F371F37FF02C02D5F1C |
:10C830003F4F359527953595279530934D08209393 |
:10C840004C0810927D0310927C031092E90710921D |
:10C85000E807109223081092220880914508992732 |
:10C860008D30910509F466C08E3091055CF48B30F3 |
:10C87000910509F48EC08C3091050CF00FC10A9718 |
:10C8800061F0ADC18F30910509F481C18F30910500 |
:10C890000CF45CC1409799F1A2C18091020380938E |
:10C8A000560880910103809357088091000380937C |
:10C8B00058088091FF02809359088091FE0280936E |
:10C8C0005A088091FD0280935B088091FC0280935E |
:10C8D0005C088091FB0280935D088091ED0280935B |
:10C8E0005E088091ED02837F8093ED020E94AD2D62 |
:10C8F00080935F08809179038093600870C1809174 |
:10C900009F089091A00890935708809356088091B3 |
:10C91000A3089091A4089093590880935808809197 |
:10C920001E0190911F0180935A088091000180930D |
:10C930005B0855C180916F06809356088091700600 |
:10C9400080935708809171068093580880917206F1 |
:10C95000809359088091730680935A0880917706D6 |
:10C9600080935B088091780680935C0880917906BB |
:10C9700080935D0880917C0680935E0880917A06A2 |
:10C9800080935F0880917B068093600880917D068C |
:10C99000DAC0F89480912206E82FFF27EE0FFF1FE0 |
:10C9A000E65BF84F0190F081E02DE038F1051CF0D6 |
:10C9B000EFE7F0E006C02FEFE138F20714F4E1E80A |
:10C9C000FFEFE093560880912306E82FFF27EE0F34 |
:10C9D000FF1FE65BF84F0190F081E02DE038F10594 |
:10C9E0001CF0EFE7F0E006C06FEFE138F60714F453 |
:10C9F000E1E8FFEFE093570880912106E82FFF2739 |
:10CA0000EE0FFF1FE65BF84F0190F081E02DE0385C |
:10CA1000F1051CF0EFE7F0E006C08FEFE138F80712 |
:10CA200014F4E1E8FFEFE093580880912006E82F26 |
:10CA3000FF27EE0FFF1FE65BF84F0190F081E02D1E |
:10CA4000E038F1051CF0EFE7F0E006C02FEFE13829 |
:10CA5000F20714F4E1E8FFEF7894E093590880912D |
:10CA6000220380935A088091230380935B0880916E |
:10CA7000240380935C088091250380935D08809156 |
:10CA8000260380935E088091270380935F0880913E |
:10CA90002803809360088091290355C08091630426 |
:10CAA000863018F01092630485E0809356088091D8 |
:10CAB0007E06809357088091130390911403A091F0 |
:10CAC0001503B0911603BC01CD0125E030E040E034 |
:10CAD00050E00E9495773093590820935808809130 |
:10CAE0000F0390911003A0911103B0911203BC01A8 |
:10CAF000CD0125E030E040E050E00E949577309392 |
:10CB00005B0820935A088091740680935C0880919A |
:10CB1000750680935D088091760680935E0880910B |
:10CB2000210380935F0880914A0790914B0780937F |
:10CB300060088091D8059091D90597FD0396959549 |
:10CB40008795959587958093610849C010925608FE |
:10CB500082E5809357081092580880E18093590825 |
:10CB60008091020180935A088091480480935B0869 |
:10CB70008091490480935C0880914A0480935D0809 |
:10CB800080914B0480935E0880914C0426C0809174 |
:10CB900054068093560880918406809357088091AC |
:10CBA000C1018093580880914D0680935908809167 |
:10CBB0004E0680935A0880914F0680935B088091BF |
:10CBC000C00180935C088091510680935D0880913C |
:10CBD000520680935E088091530680935F0880918F |
:10CBE0006508882309F4D8C08AEF8093ED0140914D |
:10CBF000670850916808CA0181509E4F8F5F93402B |
:10CC0000B0F42091690830916A08C90181509E4FA3 |
:10CC10008F5F934060F480912C0685FF08C050938D |
:10CC20000104409300043093FF032093FE0380919E |
:10CC30006D0890916E0821E08936920724F4909354 |
:10CC40003403809333038091330390913403209114 |
:10CC5000310330913203821B930B845E9D4F68E653 |
:10CC600071E00E946077845B9040909330038093E2 |
:10CC70002F032091710830917208809128029091C1 |
:10CC800029028217930740F480916304882321F4DA |
:10CC900030932902209328028091660899278836CC |
:10CCA000910549F18936910524F48736910531F0D3 |
:10CCB0007BC08936910509F445C076C08091730820 |
:10CCC00080939A088091740880939C0880917508DD |
:10CCD00080939B088091760880939D0880917708C7 |
:10CCE00080939E08809178088093EE018091790866 |
:10CCF0008093040459C08091730880933D0880910B |
:10CD0000740880933E088091750880933F08809155 |
:10CD1000760880934008809177088093410880913D |
:10CD2000C80590917808892B8093C805909179085F |
:10CD3000909302048091C90583709C70892B809325 |
:10CD4000C90532C0809173088093330880917408BC |
:10CD50008093340880917508809335088091760817 |
:10CD600080933608809177089091780890933808DE |
:10CD7000809337088091790890917A0890933A08C7 |
:10CD80008093390880917B08992787FD909590932F |
:10CD90007D0780937C0708C0109201041092000464 |
:10CDA0001092FF031092FE031F910F91FF90EF90DE |
:10CDB000089580913208882309F43BC0459883E4A4 |
:10CDC00098E090933C0880933B0890910304E92FEE |
:10CDD000FF27EC51FE4F9F5F909303048081809367 |
:10CDE0004508993010F010920304109232080E9406 |
:10CDF000796381E080934208000000000000000099 |
:10CE00000000000000000000000000000000000022 |
:10CE10000000000000000000000000000000000012 |
:10CE20000000000000000000809143088093620829 |
:10CE30008EBD089587B18C6087B94298439810924F |
:10CE4000080480E88093F001109207048093EF01BA |
:10CE5000089580910D04815080930D048F3F09F057 |
:10CE6000FBC024E020930D048091ED02992780738C |
:10CE70009070892B21F48091490480FF1CC080911F |
:10CE80006D06882349F080911004882311F42093C3 |
:10CE9000080481E08093100480916E068823B9F025 |
:10CEA00080911104882319F484E08093070481E0C1 |
:10CEB000809311040CC01092100410921104809100 |
:10CEC000690680930E0480916B0680930F04809115 |
:10CED0001004882309F040C080918306282F33274F |
:10CEE00024FF07C080911803882319F425FD4DC045 |
:10CEF0004EC090916A06983F50F08091EA078D3DB0 |
:10CF000030F080910E0488230CF43FC040C0983F5D |
:10CF100048F08091EA078A3028F480910E04882333 |
:10CF2000B4F133C0809108048150809308048F3F8E |
:10CF300079F58091EA078150809308048091F0018F |
:10CF4000813011F480E801C086958093F0018091D2 |
:10CF5000F00190910E0417C08091080481508093D5 |
:10CF600008048F3FA9F489E0809308048091F001C0 |
:10CF7000813011F480E801C086958093F0018091A2 |
:10CF8000F00190916D06892311F0429A01C04298F8 |
:10CF900080911104882309F043C080918306282FD3 |
:10CFA000332724FF07C080911803882319F426FD36 |
:10CFB00050C034C090916C06983F50F080911A0890 |
:10CFC0008D3D30F080910F0488230CF442C026C0C0 |
:10CFD000983F48F080911A088A3028F480910F0415 |
:10CFE0008823E4F036C080910704815080930704C1 |
:10CFF0008F3F91F580911A088150809307048091AA |
:10D00000EF01813011F480E801C086958093EF0133 |
:10D010008091EF0190910F048923D9F443980895EA |
:10D02000809107048150809307048F3FA9F489E021 |
:10D03000809307048091EF01813011F480E801C0F2 |
:10D0400086958093EF018091EF0190916E06892380 |
:10D0500011F0439A0895439808954FB724E130E0C2 |
:10D06000F8948091C9008F778093C9008091C9009E |
:10D070008F7B8093C9008091C9008F7D8093C90008 |
:10D080005A9A52985B9A539A832F99278093CD008E |
:10D090002093CC008091C80082608093C80080E11A |
:10D0A0008093C9008091CA008F778093CA008091D5 |
:10D0B000CA008F7B8093CA008091CA008F7D8093C5 |
:10D0C000CA008091CA008F7E8093CA008091CA00F6 |
:10D0D000877F8093CA008091C9008B7F8093C900AD |
:10D0E0008091CA0084608093CA008091CA008260E7 |
:10D0F0008093CA008091C80087FF03C08091CE0052 |
:10D10000F9CF8091C90080688093C9004FBF08950E |
:10D11000EF92FF920F931F93CF93DF93482F00E07E |
:10D1200010E08091F101813061F41092F10184E40A |
:10D130008093120410921404109213041092150498 |
:10D140002BC180911204882319F421E030E001C042 |
:10D15000980190911304992371F4232B11F081E02D |
:10D1600010C084E4809312049093140490931304E9 |
:10D1700090931504FAC0913069F4232B09F0EBC0A9 |
:10D1800082E080931304809114048F5F80931404D1 |
:10D1900083E0E9C09230D1F4232B09F0DCC083E0B6 |
:10D1A000809312044093150490911404923039F442 |
:10D1B0001092160447FF03C081E08093160483E0B9 |
:10D1C000809313049F5F90931404CFC0933009F0B1 |
:10D1D000C2C0232B09F0BFC09093120482E0809359 |
:10D1E0001304809114048F5F80931404209115041C |
:10D1F000822F9927782F6627842F9927682B792BE0 |
:10D2000080914606813049F47370CB018050924082 |
:10D2100063E070E00E94607717C0823061F477703D |
:10D22000CB018050944066E070E00E9460772695C4 |
:10D23000269526950BC0737068567140CB0177FD1B |
:10D240000196BC017595679526952695022F1127A5 |
:10D250000F7010700F5F1F4F0D30110508F074C074 |
:10D260007801E00EF11EF701E65BF84F80819181B5 |
:10D270009B01281B390BC90137FF03C0909581958D |
:10D280009F4F069794F480912103883C30F480915D |
:10D290002103865F8093210308C088EC80932103DB |
:10D2A00080916F008F7D80936F00F701E65BF84FF0 |
:10D2B000808191819C01220F331F280F391F260F77 |
:10D2C000371F37FF02C02D5F3F4FE901D595C79546 |
:10D2D000D595C795CB0101968C179D0714F421971E |
:10D2E00006C061507040C617D7070CF42196809194 |
:10D2F0002103843BD0F0F701E65BF84F80819181F8 |
:10D30000FE01E81BF90BCF0163E070E00E9460773B |
:10D31000CB01880F991F860F971F2EE737E0E20E8B |
:10D32000F31EF7019183808307C02EE737E0E20EFA |
:10D33000F31EF70111821082000F111F065B184FB8 |
:10D34000F801D183C08311C00231110570F081E072 |
:10D350008093F1010AC081E08093F10110921404DE |
:10D360001092160484E48093120480911404803196 |
:10D3700098F080911604882331F48091F10188237C |
:10D3800011F48093940110921404109216041092D8 |
:10D39000130484E480931204E6E0CDB7DEB70C9466 |
:10D3A000D877CF93FC0197FF05C0CFEFF095E195BB |
:10D3B000FF4F01C0C1E028E631E0CF01B9010E9472 |
:10D3C0006077FC018B35910554F08B5590408A3580 |
:10D3D000910538F484EB90E08E1B9F0BFC0141E03B |
:10D3E0000DC0CF01855B90408A35910518F4E45B50 |
:10D3F000F04003C02E1B3F0BF9014FEFEE0FFF1F54 |
:10D40000E15DF54F259134918C2F992787FD9095FB |
:10D41000289FB001299F700D389F700D1124842F13 |
:10D42000992787FD9095689FA001699F500D789F6F |
:10D43000500D1124CA01CF9108952AE530E0281B30 |
:10D44000390BC9010E94D1690895CF93DF9380E021 |
:10D450000E94317080911E0190911F016AE070E07E |
:10D460000E9460779F938F9380911E0190911F017E |
:10D470006AE070E00E9460777F936F938DEF9AE08F |
:10D480009F938F93C4E2D0E7DF93CF93E0912F0473 |
:10D49000F091300409952DB73EB7285F3F4F2DBF5F |
:10D4A0008091ED018823B9F186E00E94317080916E |
:10D4B0003708909138086AE070E00E944C777F93BB |
:10D4C0006F938FED90E09F938F93809126089091BA |
:10D4D0002708A0912808B091290820919601309141 |
:10D4E00097014091980150919901BC01CD010E9492 |
:10D4F00095773F932F9386E09BE09F938F93DF93E5 |
:10D50000CF93E0912F04F091300409958DB79EB729 |
:10D510000A968DBF12C086E00E94317082E19BE0C6 |
:10D520009F938F93DF93CF93E0912F04F09130047A |
:10D5300009950F900F900F900F908091020488230F |
:10D54000C1F086E00E9431708091020499279F9378 |
:10D550008F9389E19BE09F938F93DF93CF93E0912B |
:10D560002F04F091300409952DB73EB72A5F3F4F45 |
:10D570002DBF80E10E9431708091F7019091F801F8 |
:10D580006CE370E00E944C779F938F938091F7013A |
:10D590009091F8016CE370E00E944C777F936F9359 |
:10D5A0008091A5089091A6089F938F9384E29BE0B9 |
:10D5B0009F938F93C4E2D0E7DF93CF93E0912F0442 |
:10D5C000F0913004099580912C062DB73EB7265F67 |
:10D5D0003F4F2DBF80FF29C08AE10E9431708091AA |
:10D5E000950199279F938F93809113039091140332 |
:10D5F000A0911503B0911603BC01CD0124E630E0E3 |
:10D6000040E050E00E9495773F932F9381E39BE0A9 |
:10D610009F938F93DF93CF93E0912F04F091300489 |
:10D6200009958DB79EB708968DBFDF91CF9108956C |
:10D63000CF93DF9380E00E94317080910807992793 |
:10D6400087FD90959F938F9380910007992787FD81 |
:10D6500090959F938F938091F806992787FD9095D9 |
:10D660009F938F938091F006992787FD90959F93C4 |
:10D670008F9388E39BE09F938F93C4E2D0E7DF937F |
:10D68000CF93E0912F04F0913004099580E10E943E |
:10D6900031702DB73EB7245F3F4F2DBF80912807D3 |
:10D6A000992787FD90959F938F93809120079927C5 |
:10D6B00087FD90959F938F9380911807992787FDF9 |
:10D6C00090959F938F9380911007992787FD909550 |
:10D6D0009F938F9388E49BE09F938F93DF93CF93E7 |
:10D6E000E0912F04F0913004099580911E062DB72A |
:10D6F0003EB7245F3F4F2DBF853098F480E10E94F4 |
:10D70000317088E59BE09F938F93DF93CF93E091F7 |
:10D710002F04F091300409950F900F900F900F9007 |
:10D7200018C08730B0F488E10E9431708FED90E02E |
:10D730009F938F9389E69BE09F938F93DF93CF9383 |
:10D74000E0912F04F091300409958DB79EB70696AD |
:10D750008DBFDF91CF9108950F931F9380E00E94BA |
:10D7600031702AE030E080919F089091A008B901C3 |
:10D770000E944C779F938F9380919F089091A0086F |
:10D78000B9010E944C777F936F9380911E01909115 |
:10D790001F01B9010E9460779F938F9380911E01B2 |
:10D7A00090911F01B9010E9460777F936F9382E788 |
:10D7B0009BE09F938F9304E210E71F930F93E091F8 |
:10D7C0002F04F0913004099580E10E9431708DB7EB |
:10D7D0009EB70C968DBF8091A5089091A6089F9347 |
:10D7E0008F938091A1089091A2089F938F9385E8D1 |
:10D7F0009BE09F938F931F930F93E0912F04F091E1 |
:10D80000300409958DB79EB708968DBF1F910F9173 |
:10D8100008950F931F93CF93DF938091ED01C4E29E |
:10D82000D0E7882309F478C080E00E9431708091AD |
:10D83000340899279F938F938091360899279F9357 |
:10D840008F9381E99BE09F938F938E01DF93CF931A |
:10D85000E0912F04F091300409958DB79EB708969A |
:10D860008DBF80913508833031F48CE00E94317097 |
:10D8700080EA9BE005C08CE00E94317085EA9BE065 |
:10D880009F938F93DF93CF93E0912F04F091300417 |
:10D8900009950F900F900F900F908091330881FFA2 |
:10D8A00012C08CE00E9431708AEA9BE09F938F93B4 |
:10D8B0001F930F93E0912F04F091300409950F907E |
:10D8C0000F900F900F9080E10E9431708FED90E0EB |
:10D8D0009F938F938091390890913A089F938F93EB |
:10D8E00080913708909138086AE070E00E944C7788 |
:10D8F0007F936F938FEA9BE09F938F9384E290E7EF |
:10D900009F938F93E0912F04F091300409958DB788 |
:10D910009EB70A968DBF12C082E00E9431708FEBD5 |
:10D920009BE09F938F93DF93CF93E0912F04F0912F |
:10D93000300409950F900F900F900F90DF91CF91C9 |
:10D940001F910F910895CF93C82F20911704209312 |
:10D95000180499278F32910509F1803391051CF441 |
:10D960004F97A1F02CC08F34910501F18F389105AC |
:10D9700031F5222319F481E090E038C086E0289F39 |
:10D98000F0011124EB51F54F849117C086E0289FD8 |
:10D99000F0011124EA51F54F84910FC086E0289FD1 |
:10D9A000F0011124E951F54F849107C086E0289FCA |
:10D9B000F0011124E851F54F849180931704909160 |
:10D9C0001704809118049813C0E00E94377090915A |
:10D9D000170486E0989FF0011124E751F54F259137 |
:10D9E00034918C2FF901099580E090E0CF91089552 |
:10D9F0001092A00810929F081092A4081092A308F9 |
:10DA00001092A2081092A1081092A70890914806BF |
:10DA100084E6989FC00111249093A6088093A508DE |
:10DA20008AE090E00E94251790931A0480931904CD |
:10DA30000895CF93DF938091190490911A040E9466 |
:10DA40002E17882309F4CEC08091190490911A04EE |
:10DA50000A9690931A0480931904E0E0F0E09F0185 |
:10DA600090E05FEFA9EEB6E04BE0ED018B8187FF20 |
:10DA70000BC09F5F8D81E80FF11D8981280F311D3B |
:10DA80008E81851708F4582F4150189647FFEDCF27 |
:10DA90005093A708232B41F520911F0430912004B7 |
:10DAA0004091210450912204BB27A52F942F832F4E |
:10DAB00090931E0480931D04AA27BB27281B390BB3 |
:10DAC0004A0B5B0BCF01AA27BB27280F391F4A1F20 |
:10DAD0005B1F20931F043093200440932104509334 |
:10DAE0002204E5E0F0E013C020911D0430911E04F3 |
:10DAF0002E173F0718F4E21BF30B02C0E0E0F0E042 |
:10DB0000892F9927880F991FE80FF91F3596F093F1 |
:10DB1000A008E0939F08EF3FF10578F480911E0183 |
:10DB200090911F018E9F90018F9F300D9E9F300D11 |
:10DB30001124C90164E670E013C0CF019695879562 |
:10DB40009695879520911E0130911F01289FA00175 |
:10DB5000299F500D389F500D1124CA0169E170E0D2 |
:10DB60000E944C777093A2086093A10820911B0437 |
:10DB700030911C042E0F3F1F30931C0420931B0474 |
:10DB80005EE02131350770F18091A3089091A408DF |
:10DB900001969093A4088093A30820513E403093AF |
:10DBA0001C0420931B044091480624E6429F9001E8 |
:10DBB0001124281B390B3093A6082093A50881E077 |
:10DBC000253F38077CF4C90164E670E00E94607765 |
:10DBD000892B41F4442331F080E197E290932902AC |
:10DBE00080932802DF91CF910895002422273327C4 |
:10DBF000442751E0BB27EE27FF27A0E1660F771FE0 |
:10DC0000881F991F001C221F331F441F660F771F98 |
:10DC1000881F991F001C221F331F441F2AF4050E62 |
:10DC20002B1F3E1F4F1F04C0051A2B0B3E0B4F0B23 |
:10DC3000550FBB1FEE1F587F556047FD5250AA95E8 |
:10DC4000E9F6E695B7955795E695B7955795852FDB |
:10DC50009B2F08952227332741E0552768E0880F3E |
:10DC6000991F221F331F880F991F221F331F1AF479 |
:10DC7000240F351F02C0241B350B440F551F487F4E |
:10DC8000456037FD42506A9551F756954795569530 |
:10DC90004795842F0895AA2797FF04C080959095F3 |
:10DCA0008A1F9A1F77FF04C0609570956A1F7A1FBC |
:10DCB000669F9001779FA001679F300D411D5A1FFD |
:10DCC000300D411D5A1F889FF001999F2E0F3F1F55 |
:10DCD000401D511D899F300D411D5A1F300D411DA2 |
:10DCE0005A1FCA01B901112480CF4FB720E430E098 |
:10DCF000F8948091C9008F778093C9008091C90002 |
:10DD00008F7B8093C9008091C9008F7D8093C9006B |
:10DD10005A9A52985B9A539A832F99278093CD00F1 |
:10DD20002093CC008091C80082608093C80088E175 |
:10DD30008093C9008091CA008F778093CA00809138 |
:10DD4000CA008F7B8093CA008091CA008F7D809328 |
:10DD5000CA008091CA008F7E8093CA008091CA0059 |
:10DD6000877F8093CA008091C9008B7F8093C90010 |
:10DD70008091CA0084608093CA008091CA0082604A |
:10DD80008093CA008091C80087FF03C08091CE00B5 |
:10DD9000F9CF8091C90080688093C9004FBF089572 |
:10DDA0000F931F93CF93DF93482F4F5F893108F074 |
:10DDB0008BC080914907841720F44F5F4093490737 |
:10DDC0004150CB0183539B4268E170E00E94607731 |
:10DDD000A42FBB27FD01EA0FFB1FE65BF84F8081F4 |
:10DDE00091819B01281B390BC90137FF03C0909516 |
:10DDF00081959F4F069794F480912103883C30F4DD |
:10DE000080912103865F8093210308C088EC809372 |
:10DE1000210380916F008F7D80936F00FD01EA0FD9 |
:10DE2000FB1FE65BF84F808191819C01220F331F1D |
:10DE3000280F391F260F371F37FF02C02D5F3F4FB6 |
:10DE4000E901D595C795D595C795CB0101968C1756 |
:10DE50009D0714F4219706C061507040C617D7077C |
:10DE60000CF4219680912103843BD8F08D010A0F98 |
:10DE70001B1FF801E65BF84F80819181FE01E81BD2 |
:10DE8000F90BCF0163E070E00E946077CB01880F4F |
:10DE9000991F860F971F0258184FF80191838083AE |
:10DEA00007C0AA0FBB1FA258B84F11961C921E9212 |
:10DEB000E42FFF27EE0FFF1FE65BF84FD183C083EF |
:10DEC000443011F410929401DF91CF911F910F9182 |
:10DED0000895CF93DF932091A808822F9927807F00 |
:10DEE0009070409709F06CC02F3109F046C08091C6 |
:10DEF000A908809327042091AB08209329048091DE |
:10DF0000AC0880932804822F992790934B07809325 |
:10DF10004A07222309F054C080912006282F332776 |
:10DF2000220F331FF901E258F84F118210828091BD |
:10DF30002106A82FBB27AA0FBB1FFD01E258F84FEF |
:10DF40001182108280912306E82FFF27EE0FFF1F1A |
:10DF5000CF018258984FEC0119821882265B384F06 |
:10DF6000E90119821882A65BB84F11961C921E9285 |
:10DF7000E65BF84F1182108223C0C22FCF70CA30E7 |
:10DF8000F8F48091A9088093D2088091AA08809320 |
:10DF9000D1088091AB088093D4088091AC0880931D |
:10DFA000D3086091D1087091D2088C2F0E94D06E56 |
:10DFB0006091D3087091D4088C2F8F5F0E94D06E2F |
:10DFC000DF91CF910895CF93C82F8F3F49F480916F |
:10DFD0002A048F3F29F410922C0410922B0432C093 |
:10DFE00020912C04222339F4CF3111F485E001C0B3 |
:10DFF00084E080932D0480912D0490912B0482174E |
:10E00000A0F4892F809580932B048F3F19F48EEF15 |
:10E0100080932B0480912B04C81711F40E94696F20 |
:10E0200010922C0410922B040BC0E22FFF27E8550E |
:10E03000F74FC0832F5F20932C049C0F90932B04E9 |
:10E04000C0932A04CF91089590912604933240F40E |
:10E05000E92FFF27E255F74F80839F5F90932604B7 |
:10E060000895833218F48D5F80932604089590E21A |
:10E07000E1EBF8E08FE19193815087FFFCCF0895A9 |
:10E08000CF93CFB723E031E0F8948091C9008F7728 |
:10E090008093C9008091C9008F7B8093C9008091D3 |
:10E0A000C9008F7D8093C9005A9A52985B9A539AFF |
:10E0B000832F99278093CD002093CC008091C800B6 |
:10E0C00082608093C80088E18093C9008091CA0073 |
:10E0D0008F778093CA008091CA008F7B8093CA009B |
:10E0E0008091CA0080628093CA008091CA008061DA |
:10E0F0008093CA008091CA0088608093CA00809192 |
:10E10000C90084608093C9008091CA0084608093B4 |
:10E11000CA008091CA0082608093CA008091C800C2 |
:10E1200087FF03C08091CE00F9CF8091C90080683D |
:10E130008093C9008091C90080648093C9000E94C7 |
:10E140003770CFBFCF910895282F99278F70907087 |
:10E15000892B31F4209580912504822B809325040E |
:10E1600008958091F401882309F441C08091ED0263 |
:10E1700085FF0AC082E98093AE0883E28093AF08EE |
:10E1800085E58093B00802C01092AE088091F50139 |
:10E190008F3071F4809125040E94A36C882341F094 |
:10E1A00081E98093AE088093AF0881E38093B00843 |
:10E1B0001092F4018091C80085FFFCCF8091C900C6 |
:10E1C0008F7E8093C9008091C9008E7F8093C900A3 |
:10E1D0008091AE08882311F48EEF01C08EE7809302 |
:10E1E000CE00809125048093F501109225040895B6 |
:10E1F0001F920F920FB60F9211248F939F93EF935C |
:10E20000FF939091F401992309F040C080912E046E |
:10E21000882361F48091AE08882311F483E003C061 |
:10E22000813999F481E080932E040FC0833099F4F2 |
:10E230008091AE08882349F09093AE088091C90080 |
:10E240008E7F8093C9008EEF1EC08091C9008160CF |
:10E250008093C9000EC0833261F48091C9008E7F23 |
:10E260008093C9008FEF8093CE0081E08093F4010A |
:10E2700014C080912E04E82FFF27E255F74F8F5FDF |
:10E2800080932E0480818093CE0007C010922E04CC |
:10E290008091C90080618093C900FF91EF919F91A7 |
:10E2A0008F910F900FBE0F901F901895EF92FF92D5 |
:10E2B0000F931F93CF93DF937C018B01EA01452BD2 |
:10E2C00039F0F80181918F01F70109952197C9F77C |
:10E2D000E6E0CDB7DEB70C94D877EF92FF920F93BC |
:10E2E0001F93CF93DF937C018B01EA01452B41F013 |
:10E2F000F8010F5F1F4F8491F70109952197C1F72E |
:10E30000E6E0CDB7DEB70C94D8770F931F93CF9389 |
:10E310008C01C62F161634F480E2F8010995C1501D |
:10E320001C16D4F3CF911F910F9108950F931F9353 |
:10E33000CF938C01C62F161634F480E3F8010995AB |
:10E34000C1501C16D4F3CF911F910F910895A5E3EE |
:10E35000B0E0EDEAF1E70C94B0772E96EEADFFADAC |
:10E360002E9788249924540180912404882321F431 |
:10E370002C961FAE1EAE2C975EE4452E512C4C0EF3 |
:10E380005D1E6F01B60105C0153239F00894C11C3D |
:10E39000D11CF60114911123B9F7A601461B570BA6 |
:10E3A00031F02C968EAD9FAD2C970E946D7111238C |
:10E3B00009F46AC20894C11CD11CFF24FDA6FCA666 |
:10E3C0004FEFE42EF9A6F6010894C11CD11C14915C |
:10E3D000153721F0812F80628837B1F4F0FE0AC032 |
:10E3E000F20124E030E0420E531E80809180A28032 |
:10E3F000B3800AC0F20142E050E0440E551E808115 |
:10E4000091814C01AA24BB24103221F489A58823D0 |
:10E41000D1F61DC0133219F458E0F52AD4CF1A32C0 |
:10E4200011F01D3291F41A3259F4F20182E090E0B9 |
:10E43000480E591EE081ECA7EE232CF6E195ECA7DF |
:10E4400090E1F92AAFEDFA22BECF1B3211F419A7E1 |
:10E45000BACF1E32C1F5F6010894C11CD11C14912B |
:10E460001A3279F4F20122E030E0420E531E40816C |
:10E4700051813FEF4F3F530714F44FEF5FEFE42E0E |
:10E48000A2CF40E050E0812F80538A30A0F4CA012F |
:10E4900033E0880F991F3A95E1F7840F951F480FD5 |
:10E4A000591F410F511D40535040F6010894C11CA3 |
:10E4B000D11C1491E8CF8FEF4F3F580714F44FEF62 |
:10E4C0005FEFE42E85CF103329F4F4FC7CCF90E28B |
:10E4D000F92A79CF812F81538930D8F440E050E078 |
:10E4E000CA0123E0880F991F2A95E1F7840F951F31 |
:10E4F000480F591F410F511D40535040F6010894D9 |
:10E50000C11CD11C1491812F80538A3048F34CA731 |
:10E510005FCF183619F4A4E0FA2A55CF1C3619F447 |
:10E52000B1E0FB2A50CF133661F43E010894611C20 |
:10E53000711CF20122E030E0420E531E808189837B |
:10E540003CC1143421F0143611F0193651F514344D |
:10E5500011F431E0F32AF0FE0AC0F20144E050E089 |
:10E56000440E551E80809180A280B3800CC0F201C1 |
:10E5700082E090E0480E591E808191814C01AA24CE |
:10E5800097FCA094BA2CB7FE0AC0B094A0949094C3 |
:10E590008094811C911CA11CB11C8DE289A70AE00A |
:10E5A0006FC01F3411F01F3631F41F3411F491E0A5 |
:10E5B000F92A08E064C0103779F4F201A2E0B0E073 |
:10E5C0004A0E5B1E808191814C01AA24BB2400E18C |
:10E5D000B0E4FB2A18E753C01337C1F5F20122E07B |
:10E5E00030E0420E531E608071806114710489F422 |
:10E5F0003E010894611C711C88E289838EE6F30158 |
:10E60000818385E78B838CE68C838D8389E28E837F |
:10E610001F82E7FC13C08E2D992787FD9095AC01D2 |
:10E6200060E070E0C3010E945C76009729F0382E0C |
:10E630003618E3140CF0C3C03E2CC1C0F3010190A6 |
:10E640000020E9F731973E2E3618B9C0153511F084 |
:10E65000153731F4153511F4F1E0FF2A0AE00FC047 |
:10E66000183519F0183709F0A0C000E1F3FE07C013 |
:10E6700081149104A104B10411F020E4F22A19A636 |
:10E68000EDA6E7FC02C03FEDF32289E2682E712C73 |
:10E690006C0E7D1E81149104A104B10421F44DA5DA |
:10E6A000442309F47BC0802F9927AA27BB278EA774 |
:10E6B0009FA7A8ABB9AB202E332490E0891690E039 |
:10E6C000990691E0A90690E0B90648F0C501B401A9 |
:10E6D0002EA53FA548A959A90E94737717C0AFEF8F |
:10E6E0008A169104A104B10449F040F0C401B101BB |
:10E6F0000E944C779B014427552708C0882D602F26 |
:10E700000E944077282F3327442755272AAB3BAB5D |
:10E710004CAB5DAB0A3059F48AA9880F880F880F7B |
:10E720009AA9990F890F382D381B832F10C00031FB |
:10E7300039F48AA98295807F482D481B842F07C011 |
:10E740008AA9880F880F880F582D581B852F90E0B5 |
:10E750002EA53FA548A959A982169306A406B50679 |
:10E7600008F091E08AA89BA8ACA8BDA88A3010F454 |
:10E77000805D04C0895A183509F48F7DD3018E93CA |
:10E780003D01992309F099CF083041F4F3FE06C00A |
:10E79000803321F080E3FD0182933F01CE01019699 |
:10E7A000382E3618F8E23F0E0BC0112309F46CC066 |
:10E7B0003E010894611C711C1983B1E03B2E19A61F |
:10E7C000032D2DA4231827FC222489A5882311F0CA |
:10E7D0000F5F02C0F6FC0E5F020DEF2CFF24C70195 |
:10E7E00080739070892B49F48CA5801B682F2C9620 |
:10E7F0008EAD9FAD2C970E94857189A5882331F03D |
:10E8000041E050E0BE01675D7F4F0AC0E6FE0EC0EA |
:10E8100080E38AA71BA742E050E0BE01665D7F4F00 |
:10E820002C968EAD9FAD2C970E945671C7018073B8 |
:10E830009070809749F48CA5801B682F2C968EAD24 |
:10E840009FAD2C970E949671622D2C968EAD9FAD38 |
:10E850002C970E949671832D992787FD9095AC0186 |
:10E86000B3012C968EAD9FAD2C970E945671E4FE9D |
:10E8700089CD2CA5201B2CA7622F2C968EAD9FAD89 |
:10E880002C970E9485717ECDE2E1CB5C0C94CC7715 |
:10E890002FB740E0F894E0E0F0E081E28093570089 |
:10E8A0009491E2E0F0E0809357003491E4E0F0E0EE |
:10E8B0008093570084912FBF9E3199F4363941F4EB |
:10E8C000893011F441E00DC08A3059F442E009C0AA |
:10E8D000373939F4863011F443E003C0853009F448 |
:10E8E00044E0842F992708959FB7F8948091C90038 |
:10E8F000877F8093C9008091C9008F7E8093C90073 |
:10E900008091C9008F778093C9008091C9008F7B67 |
:10E910008093C9008091C9008F7D8093C90052986F |
:10E920005A9A53985B9A9FBF08951F93CF93DF9392 |
:10E93000182F80912404882309F48DC08091F3015D |
:10E94000181709F488C080912304882321F40E94B9 |
:10E9500048748093230488EB9CE09F938F93CFEFC0 |
:10E96000D2E1DF93CF93E0912F04F0913004099529 |
:10E970000F900F900F900F90812F99278230910563 |
:10E9800001F1833091052CF4009761F0019769F053 |
:10E9900024C084309105D9F084309105ACF00597FE |
:10E9A000C9F01BC088EA9CE002C086E99CE09F9306 |
:10E9B0008F93DF93CF93E0912F04F091300409956A |
:10E9C00018C08DE79CE0F3CF8AE59CE0F0CF8CE4A3 |
:10E9D0009CE0EDCF84E49CE0EACF85EC9CE09F9343 |
:10E9E0008F93DF93CF93E0912F04F091300409953A |
:10E9F00010E00F900F900F900F90809123048430BF |
:10EA000011F0823099F40E947474812F8150833008 |
:10EA100018F40E942D681DC0143019F40E94407033 |
:10EA200018C01530B1F40E94756E13C0112389F01F |
:10EA30008BED9CE09F938F938FEF92E19F938F9349 |
:10EA4000E0912F04F091300409950F900F900F90F2 |
:10EA50000F901093F301DF91CF911F9108950F93C1 |
:10EA60001F9381E0809324044091F201E4EFFBE0E6 |
:10EA700020E030E05FE4849199272F5F3F4F829F31 |
:10EA8000B001839F700D929F700D11244627515045 |
:10EA9000319657FFF0CF4093F201ECECFBE020E021 |
:10EAA00030E057E2849199272F5F3F4F829FB0015A |
:10EAB000839F700D929F700D1124462751503196FF |
:10EAC00057FFF0CF4093F20180912304882321F473 |
:10EAD0000E944874809323048091F201833459F09A |
:10EAE00088E190E029E20FB6F894A8958093600041 |
:10EAF0000FBE2093600087EA91E7909330048093E3 |
:10EB00002F0486EF9CE09F938F930FEF12E11F93EA |
:10EB10000F93E0912F04F091300409950F900F901E |
:10EB20000F900F9081E690E09F938F9382E590E0A5 |
:10EB30009F938F931F921F92809102016AE00E941F |
:10EB40004077892F99279F938F93809102010E948C |
:10EB5000407799279F938F938CE19DE09F938F93AC |
:10EB60001F930F93E0912F04F0913004099584EFE7 |
:10EB70009BE09F938F931F930F93E0912F04F0914D |
:10EB8000300409958CEC9BE09F938F931F930F9318 |
:10EB9000E0912F04F091300409958DB79EB7469609 |
:10EBA0008DBF80E59DE09F938F931F930F93E0911E |
:10EBB0002F04F0913004099583EC809381008091BB |
:10EBC0006F00806280936F000F900F900F900F90F6 |
:10EBD0001F910F91089580912404882361F0809102 |
:10EBE000F301843011F40E94B1708091F2018334FA |
:10EBF00011F01092240408951F920F920FB60F92F5 |
:10EC000011242F933F934F935F936F937F938F9331 |
:10EC10009F93AF93BF93EF93FF932091CE0080918A |
:10EC2000FE018823B1F02093C6008091FE0182305E |
:10EC300029F52F3F19F58FEF94E3ACE0B0E0C297D0 |
:10EC4000A109B109B7FFFBCF809172048093CE0078 |
:10EC500015C09091F301892F8150833020F4822FC9 |
:10EC60000E9488680BC0943021F4822F0E94A47007 |
:10EC700005C0953019F4822F0E94E36FFF91EF9148 |
:10EC8000BF91AF919F918F917F916F915F914F91C4 |
:10EC90003F912F910F900FBE0F901F901895FB0181 |
:10ECA000DC0140FF05C002C005900D9205900D9259 |
:10ECB00042505040C8F70895FC014150504030F098 |
:10ECC00001900616D1F73197CF010895882799272B |
:10ECD00008955058192E84D001D06AC0BA1762071F |
:10ECE000730784079507B1F188F40EF410940B2E86 |
:10ECF000BA2FA02D062E622F202D072E732F302D18 |
:10ED0000082E842F402D092E952F502DFF27552397 |
:10ED1000B9F0591B49F0573E98F04695379527951D |
:10ED2000A795F0405395C9F776F0BA0F621F731F8D |
:10ED3000841F30F4879577956795B795F040939544 |
:10ED400017FA0F2E0895BF1BBB27BA0B620B730B6C |
:10ED5000840BF6CFDEF670C097FB4ED09F3738F0AD |
:10ED6000FEE9F91B982F872F762F6B2F05C061C006 |
:10ED70009695879577956795F150D0F73EF49095E5 |
:10ED80008095709561957F4F8F4F9F4F0895E894C0 |
:10ED900003C097FB0EF4F3DFB62F672F782F892F70 |
:10EDA0009EE9002405C09A95BB0F661F771F881F38 |
:10EDB00011249923A1F08823B2F79F3F59F0BB0F8C |
:10EDC00048F421F4002011F460FF04C06F5F7F4F0E |
:10EDD0008F4F9F4F881F9795879597F9089529C062 |
:10EDE000052E092607FA440F551F5F3F79F0AA2721 |
:10EDF000A51708F051E04795880F991F9F3F31F004 |
:10EE0000BB27B91708F091E0879508959F919F91CE |
:10EE1000112414C097FB880F991F9F3F31F0BB2727 |
:10EE2000B91708F091E0879508959F919F9111245B |
:10EE300005C0662777278827992708959FEF80ECDC |
:10EE40000895629FD001739FF001829FE00DF11D34 |
:10EE5000649FE00DF11D929FF00D839FF00D749F54 |
:10EE6000F00D659FF00D9927729FB00DE11DF91F00 |
:10EE7000639FB00DE11DF91FBD01CF01112408955D |
:10EE8000991B79E004C0991F961708F0961B881FFC |
:10EE90007A95C9F780950895AA1BBB1B51E107C05D |
:10EEA000AA1FBB1FA617B70710F0A61BB70B881F1A |
:10EEB000991F5A95A9F780959095BC01CD010895A9 |
:10EEC00097FB092E07260AD077FD04D0E5DF06D090 |
:10EED00000201AF4709561957F4F0895F6F790958C |
:10EEE00081959F4F0895A1E21A2EAA1BBB1BFD011D |
:10EEF0000DC0AA1FBB1FEE1FFF1FA217B307E40719 |
:10EF0000F50720F0A21BB30BE40BF50B661F771F70 |
:10EF1000881F991F1A9469F7609570958095909550 |
:10EF20009B01AC01BD01CF01089597FB092E052679 |
:10EF30000ED057FD04D0D7DF0AD0001C38F450950E |
:10EF40004095309521953F4F4F4F5F4F0895F6F70D |
:10EF500090958095709561957F4F8F4F9F4F089545 |
:10EF60002F923F924F925F926F927F928F929F92D9 |
:10EF7000AF92BF92CF92DF92EF92FF920F931F93C7 |
:10EF8000CF93DF93CDB7DEB7CA1BDB0B0FB6F89478 |
:10EF9000DEBF0FBECDBF09942A88398848885F84B8 |
:10EFA0006E847D848C849B84AA84B984C884DF8029 |
:10EFB000EE80FD800C811B81AA81B981CE0FD11D0D |
:10EFC0000FB6F894DEBF0FBECDBFED010895EE0F72 |
:10EFD000FF1F0590F491E02D0994F999FECFB2BD81 |
:10EFE000A1BDF89A119600B40895F7DF01921A9422 |
:10EFF000E1F70895F2DFE02DF0DFF02D0895F999A3 |
:10F00000FECFB2BDA1BD00BC11960FB6F894FA9A1E |
:10F01000F99A0FBE0895F3DF012CF1DF1124089552 |
:0AF020000190EDDF1A94E1F7089566 |
:10F02A005E010A010164FF01FFFFC01FC01F010149 |
:10F03A0001737373FF03007D0000C409C4096400EF |
:10F04A001148656C6C6F20576F726C640000000089 |
:10F05A0000000000000000000000000000000000A6 |
:10F06A000000000000000000000000000000000096 |
:10F07A000000000000000000000000000000000086 |
:10F08A000000000000000000000000000000000076 |
:10F09A000053706F727400004E6F726D616C0000E5 |
:10F0AA00426567696E6E6572000051756164726FC0 |
:10F0BA000000640001200B050000ECFF00020406BA |
:10F0CA00070808080706040200FEFCFAF9F8F8F82F |
:10F0DA00F9FAFCFE000204060708086440415A4691 |
:10F0EA0064640A02969696960840403A10FB3038B5 |
:10F0FA000190D0030090D00300F40105F9FF0578D0 |
:10F10A0000FF03640B0A0D0B0C0E0B0F10FA200103 |
:06F11A00010170FF010F6E |
:00000001FF |
/branches/metro/v0.82a metro_Akku+/Flight-Ctrl_MEGA644_V0_82a_SVN_akku001.map |
---|
0,0 → 1,2111 |
Archive member included because of file (symbol) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) |
fc.o (__addsf3) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3x.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) (__addsf3x) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fixsfsi.o) |
fc.o (__fixunssfsi) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(floatsisf.o) |
fc.o (__floatsisf) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_merge.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) (__fp_merge) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_split.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) (__fp_split3) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_zero.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fixsfsi.o) (__fp_zero) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_nan.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_split.o) (__fp_nan) |
libfc644.a(libfc.o) jetimenu.o (LIBFC_JetiBox_Putchar) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_mulsi3.o) |
uart.o (__mulsi3) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodqi4.o) |
main.o (__udivmodqi4) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodhi4.o) |
timer0.o (__udivmodhi4) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodhi4.o) |
uart.o (__divmodhi4) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodsi4.o) |
libfc644.a(libfc.o) (__udivmodsi4) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodsi4.o) |
uart.o (__divmodsi4) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_prologue.o) |
uart.o (__prologue_saves__) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_epilogue.o) |
uart.o (__epilogue_restores__) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_tablejump.o) |
analog.o (__tablejump2__) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_copy_data.o) |
main.o (__do_copy_data) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_clear_bss.o) |
main.o (__do_clear_bss) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(memcpy_P.o) |
uart.o (memcpy_P) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(memchr.o) |
libfc644.a(libfc.o) (memchr) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o) |
eeprom.o (__eeprom_read_byte_1F2021) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rblk.1F2021.o) |
eeprom.o (__eeprom_read_block_1F2021) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rw.1F2021.o) |
eeprom.o (__eeprom_read_word_1F2021) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o) |
eeprom.o (__eeprom_write_byte_1F2021) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_ww.1F2021.o) |
eeprom.o (__eeprom_write_word_1F2021) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o) |
eeprom.o (__eeprom_write_block_1F2021) |
Allocating common symbols |
Common symbol size file |
Motors5max 0x1 fc.o |
KopplungsteilNickRoll |
0x2 fc.o |
MesswertGierBias 0x2 fc.o |
SPITransferCompleted |
0x1 spi.o |
KopplungsteilRollNick |
0x2 fc.o |
RequiredMotors 0x1 eeprom.o |
MotorsTmax 0x2 fc.o |
Parameter_Servo4 0x1 fc.o |
GPSInfo 0x8 spi.o |
EE_Parameter 0x74 eeprom.o |
DiffRoll 0x2 fc.o |
MesswertRoll 0x2 fc.o |
pos2 0x1 fc.o |
TrimNick 0x2 fc.o |
Parameter_NaviGpsP 0x1 fc.o |
loop2 0x1 fc.o |
ErsatzKompassInGrad |
0x2 fc.o |
GyroFaktorGier 0x1 fc.o |
MittelIntegralRoll2 |
0x4 fc.o |
Parameter_NaviGpsModeControl |
0x1 fc.o |
TrimRoll 0x2 fc.o |
SPI_TX_Buffer 0x2 spi.o |
Motors2max 0x1 fc.o |
MesswertNick 0x2 fc.o |
NC_Version 0x5 spi.o |
SPI_BufferIndex 0x1 spi.o |
Aktuell_ay 0x2 analog.o |
Motors5 0x1 fc.o |
ToNaviCtrl 0x20 spi.o |
Data3D 0xe uart.o |
Parameter_NaviGpsI 0x1 fc.o |
Capacity 0x9 capacity.o |
Timer3D 0x2 uart.o |
SPI_ChkSum 0x1 spi.o |
RohMesswertRoll 0x2 fc.o |
MIN_GAS 0x1 fc.o |
Parameter_NaviGpsACC |
0x1 fc.o |
MittelIntegralNick2 |
0x4 fc.o |
Channels 0x1 rc.o |
Debug_Timer 0x2 uart.o |
RohMesswertNick 0x2 fc.o |
IntegralFaktorGier 0x1 fc.o |
fdknerTjg5i83th589v44 |
0x6 libfc644.a(libfc.o) |
DiffNick 0x2 fc.o |
MittelIntegralNick 0x4 fc.o |
Parameter_Servo3 0x1 fc.o |
VersionInfo 0xa uart.o |
Motors2 0x1 fc.o |
Motors0 0x1 fc.o |
MotorTest 0x10 uart.o |
SPI_RxBufferIndex 0x1 spi.o |
NaviAccNick 0x2 fc.o |
Parameter_J16Timing |
0x1 fc.o |
MittelIntegralRoll 0x4 fc.o |
NeutralAccZ_float 0x4 analog.o |
Motors6 0x1 fc.o |
Parameter_Servo5 0x1 fc.o |
SPI_RxDataValid 0x1 spi.o |
Motors3max 0x1 fc.o |
PPM_in 0x34 rc.o |
pos1 0x1 fc.o |
WinkelOut 0x8 uart.o |
ExternControl 0xb uart.o |
IntegralFaktor 0x1 fc.o |
Motors7 0x1 fc.o |
Motors0max 0x1 fc.o |
Aktuell_az 0x2 analog.o |
Motors4max 0x1 fc.o |
Motors3 0x1 fc.o |
FromNaviCtrl 0x1a spi.o |
StartLuftdruck 0x2 analog.o |
_printf_P 0x2 main.o |
tmp_motorwert 0x18 fc.o |
Kompass_Timer 0x2 uart.o |
RxdBuffer 0xaa uart.o |
Mixer 0x4e eeprom.o |
Motors1max 0x1 fc.o |
Display_Timer 0x2 uart.o |
Parameter_NaviOperatingRadius |
0x1 fc.o |
TxdBuffer 0xaa uart.o |
SPI_Buffer 0x1a spi.o |
Aktuell_Nick 0x2 analog.o |
Aktuell_Roll 0x2 analog.o |
IlIlIlIIIIIIIlIllllll |
0x23 libfc644.a(libfc.o) |
pos3 0x1 fc.o |
Aktuell_ax 0x2 analog.o |
Parameter_NaviWindCorrection |
0x1 fc.o |
s 0x1 fc.o |
h 0x1 fc.o |
Motors4 0x1 fc.o |
Mittelwert_AccNick 0x2 fc.o |
Parameter_NaviSpeedCompensation |
0x1 fc.o |
DebugOut 0x42 uart.o |
DruckOffsetSetting 0x1 analog.o |
FromNaviCtrl_Value 0x5 spi.o |
BLConfig 0x8 twimaster.o |
Motor 0x60 twimaster.o |
Aktuell_Gier 0x2 analog.o |
Parameter_J17Timing |
0x1 fc.o |
MAX_GAS 0x1 fc.o |
Motors1 0x1 fc.o |
loop1 0x1 fc.o |
Motors6max 0x1 fc.o |
MesswertGier 0x2 fc.o |
Parameter_J16Bitmask |
0x1 fc.o |
ConfirmFrame 0x1 uart.o |
NaviAccRoll 0x2 fc.o |
GyroFaktor 0x1 fc.o |
m 0x1 fc.o |
ErsatzKompass 0x4 fc.o |
Mittelwert_AccRoll 0x2 fc.o |
Parameter_NaviGpsGain |
0x1 fc.o |
fgfdogjWEti45e9tjh394 |
0x4 libfc644.a(libfc.o) |
PPM_diff 0x34 rc.o |
Parameter_ExternalControl |
0x1 fc.o |
Motors7max 0x1 fc.o |
loop3 0x1 fc.o |
Parameter_J17Bitmask |
0x1 fc.o |
Parameter_NaviGpsD 0x1 fc.o |
Memory Configuration |
Name Origin Length Attributes |
text 0x00000000 0x00020000 xr |
data 0x00800060 0x0000ffa0 rw !x |
eeprom 0x00810000 0x00010000 rw !x |
*default* 0x00000000 0xffffffff |
Linker script and memory map |
Address of section .data set to 0x800100 |
LOAD C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
LOAD main.o |
LOAD uart.o |
LOAD timer0.o |
LOAD analog.o |
LOAD menu.o |
LOAD eeprom.o |
LOAD twimaster.o |
LOAD rc.o |
LOAD fc.o |
LOAD GPS.o |
LOAD spi.o |
LOAD led.o |
LOAD Spektrum.o |
LOAD mymath.o |
LOAD jetimenu.o |
LOAD capacity.o |
LOAD debug.o |
LOAD isqrt.o |
LOAD C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a |
LOAD libfc644.a |
LOAD C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a |
LOAD C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a |
LOAD C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a |
.hash |
*(.hash) |
.dynsym |
*(.dynsym) |
.dynstr |
*(.dynstr) |
.gnu.version |
*(.gnu.version) |
.gnu.version_d |
*(.gnu.version_d) |
.gnu.version_r |
*(.gnu.version_r) |
.rel.init |
*(.rel.init) |
.rela.init |
*(.rela.init) |
.rel.text |
*(.rel.text) |
*(.rel.text.*) |
*(.rel.gnu.linkonce.t*) |
.rela.text |
*(.rela.text) |
*(.rela.text.*) |
*(.rela.gnu.linkonce.t*) |
.rel.fini |
*(.rel.fini) |
.rela.fini |
*(.rela.fini) |
.rel.rodata |
*(.rel.rodata) |
*(.rel.rodata.*) |
*(.rel.gnu.linkonce.r*) |
.rela.rodata |
*(.rela.rodata) |
*(.rela.rodata.*) |
*(.rela.gnu.linkonce.r*) |
.rel.data |
*(.rel.data) |
*(.rel.data.*) |
*(.rel.gnu.linkonce.d*) |
.rela.data |
*(.rela.data) |
*(.rela.data.*) |
*(.rela.gnu.linkonce.d*) |
.rel.ctors |
*(.rel.ctors) |
.rela.ctors |
*(.rela.ctors) |
.rel.dtors |
*(.rel.dtors) |
.rela.dtors |
*(.rela.dtors) |
.rel.got |
*(.rel.got) |
.rela.got |
*(.rela.got) |
.rel.bss |
*(.rel.bss) |
.rela.bss |
*(.rela.bss) |
.rel.plt |
*(.rel.plt) |
.rela.plt |
*(.rela.plt) |
.text 0x00000000 0xf02a |
*(.vectors) |
.vectors 0x00000000 0x7c C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
0x00000000 __vectors |
0x00000000 __vector_default |
0x0000007c __ctors_start = . |
*(.ctors) |
0x0000007c __ctors_end = . |
0x0000007c __dtors_start = . |
*(.dtors) |
0x0000007c __dtors_end = . |
*(.progmem.gcc*) |
.progmem.gcc_sw_table |
0x0000007c 0x24 analog.o |
.progmem.gcc_sw_table |
0x000000a0 0x24 menu.o |
.progmem.gcc_sw_table |
0x000000c4 0x2e twimaster.o |
*(.progmem*) |
.progmem.data 0x000000f2 0x120 main.o |
.progmem.data 0x00000212 0x215 uart.o |
0x00000212 ANALOG_TEXT |
.progmem.data 0x00000427 0x39 analog.o |
.progmem.data 0x00000460 0x515 menu.o |
.progmem.data 0x00000975 0xa2 eeprom.o |
.progmem.data 0x00000a17 0x18 fc.o |
.progmem.data 0x00000a2f 0xb6 mymath.o |
0x00000a2f pgm_sinlookup |
.progmem.data 0x00000ae5 0xe7 jetimenu.o |
0x00000ae5 JetiBox_Menu |
.progmem.data 0x00000bcc 0x1aa libfc644.a(libfc.o) |
0x00000bf4 Msg1 |
0x00000c5a Rec_Spektrum_LOW_RES |
0x00000bcc Msg2 |
0x00000c4c Rec_Jeti |
0x00000ca8 Rec_PPM |
0x00000c44 Rec_ACT_DSL |
0x00000c96 Rec_Spektrum |
0x00000c7d Rec_Spektrum_HI_RES |
0x00000d76 . = ALIGN (0x2) |
*(.init0) |
*(.init1) |
*(.init2) |
.init2 0x00000d76 0xc C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
*(.init3) |
*(.init4) |
.init4 0x00000d82 0x16 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_copy_data.o) |
0x00000d82 __do_copy_data |
.init4 0x00000d98 0x10 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_clear_bss.o) |
0x00000d98 __do_clear_bss |
*(.init5) |
.init5 0x00000da8 0x52 libfc644.a(libfc.o) |
0x00000da8 ndfcvbghs |
*(.init6) |
*(.init7) |
*(.init8) |
*(.init9) |
.init9 0x00000dfa 0x4 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
*(.text) |
.text 0x00000dfe 0x4 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
0x00000dfe __vector_1 |
0x00000dfe __bad_interrupt |
0x00000dfe __vector_6 |
0x00000dfe __vector_3 |
0x00000dfe __vector_23 |
0x00000dfe __vector_25 |
0x00000dfe __vector_11 |
0x00000dfe __vector_13 |
0x00000dfe __vector_17 |
0x00000dfe __vector_19 |
0x00000dfe __vector_7 |
0x00000dfe __vector_27 |
0x00000dfe __vector_5 |
0x00000dfe __vector_4 |
0x00000dfe __vector_2 |
0x00000dfe __vector_21 |
0x00000dfe __vector_15 |
0x00000dfe __vector_29 |
0x00000dfe __vector_8 |
0x00000dfe __vector_14 |
0x00000dfe __vector_10 |
0x00000dfe __vector_16 |
.text 0x00000e02 0x9fc main.o |
0x00000e6c LipoDetection |
0x00000e02 CalMk3Mag |
0x00000f80 main |
.text 0x000017fe 0x1436 uart.o |
0x000017fe __vector_22 |
0x0000260e UART_Init |
0x00001d0a BearbeiteRxDaten |
0x00001a5e AddCRC |
0x00002694 DatenUebertragung |
0x00001c36 Decode64 |
0x00001abe SendOutData |
0x0000186a __vector_20 |
0x000025fe uart_putchar |
.text 0x00002c34 0x948 timer0.o |
0x00002e4a SetDelay |
0x00002ebe TIMER2_Init |
0x00002f1c Timer_Init |
0x00002f4a CalculateServo |
0x00002e5c CheckDelay |
0x00002e74 Delay_ms |
0x00002e8e Delay_ms_Mess |
0x00003294 __vector_9 |
0x00002c34 __vector_18 |
.text 0x0000357c 0xa48 analog.o |
0x0000380c __vector_24 |
0x0000363e SucheGyroOffset |
0x0000357c ADC_Init |
0x00003588 SucheLuftruckOffset |
.text 0x00003fc4 0x15aa menu.o |
0x00003fc4 LcdClear |
0x00003fd6 Menu_Putchar |
0x00003fec Menu |
.text 0x0000556e 0x846 eeprom.o |
0x000059ae SetActiveParamSet |
0x00005590 EEProm_Checksum |
0x00005916 GetParamByte |
0x00005898 ParamSet_DefaultSet3 |
0x00005a4c MixerTable_ReadFromEEProm |
0x0000556e RAM_Checksum |
0x00005602 CommonDefaults |
0x00005922 SetParamByte |
0x0000592c GetParamWord |
0x00005936 SetParamWord |
0x00005acc MixerTable_Default |
0x00005940 ParamSet_ReadFromEEProm |
0x00005a90 MixerTable_WriteToEEProm |
0x000059c8 ParamSet_WriteToEEProm |
0x00005b78 SetDefaultParameter |
0x00005bf2 ParamSet_Init |
0x00005b5a GetActiveParamSet |
0x0000581a ParamSet_DefaultSet2 |
0x0000579c ParamSet_DefaultSet1 |
0x000055b8 ParamSet_DefaultStickMapping |
.text 0x00005db4 0x93a twimaster.o |
0x00005e08 I2C_Reset |
0x00005db4 I2C_Init |
0x0000644c I2C_WriteBLConfig |
0x000065a0 I2C_ReadBLConfig |
0x00005e4c __vector_26 |
.text 0x000066ee 0x4f8 rc.o |
0x00006726 __vector_12 |
0x000066ee rc_sum_init |
.text 0x00006be6 0x5960 fc.o |
0x00006be6 CopyDebugValues |
0x0000843e SendMotorData |
0x000074da Mittelwert |
0x00006dfa Piep |
0x00006e3c CalibrierMittelwert |
0x00006f7e SetNeutral |
0x000084b8 ParameterZuordnung |
0x000089f2 MotorRegler |
.text 0x0000c546 0x54 GPS.o |
0x0000c546 GPS_Neutral |
0x0000c588 GPS_BerechneZielrichtung |
.text 0x0000c59a 0x89a spi.o |
0x0000c6f2 UpdateSPI_Buffer |
0x0000cdb2 SPI_StartTransmitPacket |
0x0000c5dc SPI_TransmitByte |
0x0000c59a SPI_MasterInit |
.text 0x0000ce34 0x226 led.o |
0x0000ce34 LED_Init |
0x0000ce52 LED_Update |
.text 0x0000d05a 0x348 Spektrum.o |
0x0000d05a SpektrumUartInit |
0x0000d110 SpektrumParser |
.text 0x0000d3a2 0xa8 mymath.o |
0x0000d43a c_cos_8192 |
0x0000d3a2 c_sin_8192 |
.text 0x0000d44a 0x5a6 jetimenu.o |
0x0000d758 Menu_Battery |
0x0000d44a Menu_Status |
0x0000d812 Menu_PosInfo |
0x0000d630 Menu_Temperature |
0x0000d946 JetiBox_Update |
.text 0x0000d9f0 0x1fa capacity.o |
0x0000da32 Capacity_Update |
0x0000d9f0 Capacity_Init |
.text 0x0000dbea 0x100 isqrt.o |
0x0000dbea isqrt32 |
0x0000dc96 ihypot |
0x0000dc54 isqrt16 |
.text 0x0000dcea 0xfb4 libfc644.a(libfc.o) |
0x0000ebf8 __vector_28 |
0x0000e92a LIBFC_ReceiverInit |
0x0000dda0 FGRT0589rge90gj459gg4 |
0x0000ea5e LIBFC_Init |
0x0000e06e LIBFC_JetiBox_Clear |
0x0000dfc6 FGtj76uzh56z3grEg5t45 |
0x0000e1f0 __vector_30 |
0x0000e080 INiuzBtergGIBuB76T0G5 |
0x0000e048 LIBFC_JetiBox_Putchar |
0x0000e34e IIllllIllIlllIIlllII |
0x0000ebd6 LIBFC_Polling |
0x0000e162 a48784362857632195659 |
0x0000e30a fgmjgnrtuth587th9rTrw |
0x0000e890 LIBFC_GetCPUType |
0x0000dcea fomklkdtn89SFGrsgt9rf |
0x0000e2ac njkvnfuhgbuzrgezgf483 |
0x0000e148 KLNMIOHMUHG76GFGr43r3 |
0x0000ded2 DFGeefWEF43tgt5uGreg5 |
0x0000e32c wqqeRT45jth8g758735h4 |
0x0000e8e8 awokdjwqdjcjuhcuweih |
0x0000e062 LIBFC_JetiBox_SetPos |
0x0000e2da lkvgnfdgun57th38rgh84 |
.text 0x0000ec9e 0x1a C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(memcpy_P.o) |
0x0000ec9e memcpy_P |
.text 0x0000ecb8 0x1a C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(memchr.o) |
0x0000ecb8 memchr |
0x0000ecd2 . = ALIGN (0x2) |
*(.text.*) |
.text.fplib 0x0000ecd2 0xa C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) |
0x0000ecd2 __subsf3 |
0x0000ecd4 __addsf3 |
.text.fplib 0x0000ecdc 0x7c C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3x.o) |
0x0000ecdc __addsf3x |
.text.fplib 0x0000ed58 0x36 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fixsfsi.o) |
0x0000ed58 __fixsfsi |
0x0000ed7e __fp_lneg |
0x0000ed58 __fixunssfsi |
.text.fplib 0x0000ed8e 0x18 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(floatsisf.o) |
0x0000ed92 __floatsisf |
0x0000ed8e __floatunssisf |
.text.fplib 0x0000eda6 0x3a C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_merge.o) |
0x0000edb0 __fp_merge |
.text.fplib 0x0000ede0 0x52 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_split.o) |
0x0000ede0 __fp_split3 |
0x0000ede6 __fp_split2 |
0x0000edf8 __fp_split1 |
0x0000ee14 __fp_split_a |
.text.fplib 0x0000ee32 0xa C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_zero.o) |
0x0000ee32 __fp_zero |
0x0000ee38 __fp_zerox |
.text.fplib 0x0000ee3c 0x6 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_nan.o) |
0x0000ee3c __fp_nanERANGE |
0x0000ee3c __fp_nan |
0x0000ee3c __fp_nanEDOM |
0x0000ee3c __fp_nanx |
.text.libgcc 0x0000ee42 0x3e C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_mulsi3.o) |
0x0000ee42 __mulsi3 |
.text.libgcc 0x0000ee80 0x18 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodqi4.o) |
0x0000ee80 __udivmodqi4 |
.text.libgcc 0x0000ee98 0x28 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodhi4.o) |
0x0000ee98 __udivmodhi4 |
.text.libgcc 0x0000eec0 0x26 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodhi4.o) |
0x0000eec0 __divmodhi4 |
0x0000eec0 _div |
.text.libgcc 0x0000eee6 0x44 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodsi4.o) |
0x0000eee6 __udivmodsi4 |
.text.libgcc 0x0000ef2a 0x36 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodsi4.o) |
0x0000ef2a __divmodsi4 |
.text.libgcc 0x0000ef60 0x38 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_prologue.o) |
0x0000ef60 __prologue_saves__ |
.text.libgcc 0x0000ef98 0x36 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_epilogue.o) |
0x0000ef98 __epilogue_restores__ |
.text.libgcc 0x0000efce 0xc C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_tablejump.o) |
0x0000efd2 __tablejump__ |
0x0000efce __tablejump2__ |
.text.eeprom 0x0000efda 0x10 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o) |
0x0000efda __eeprom_read_byte_1F2021 |
.text.eeprom 0x0000efea 0xa C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rblk.1F2021.o) |
0x0000efea __eeprom_read_block_1F2021 |
.text.eeprom 0x0000eff4 0xa C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rw.1F2021.o) |
0x0000eff4 __eeprom_read_word_1F2021 |
.text.eeprom 0x0000effe 0x18 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o) |
0x0000effe __eeprom_write_byte_1F2021 |
.text.eeprom 0x0000f016 0xa C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_ww.1F2021.o) |
0x0000f016 __eeprom_write_word_1F2021 |
.text.eeprom 0x0000f020 0xa C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o) |
0x0000f020 __eeprom_write_block_1F2021 |
0x0000f02a . = ALIGN (0x2) |
*(.fini9) |
*(.fini8) |
*(.fini7) |
*(.fini6) |
*(.fini5) |
*(.fini4) |
*(.fini3) |
*(.fini2) |
*(.fini1) |
*(.fini0) |
0x0000f02a _etext = . |
.data 0x00800100 0xf6 load address 0x0000f02a |
0x00800100 PROVIDE (__data_start, .) |
*(.data) |
.data 0x00800100 0x4 main.o |
0x00800102 PlatinenVersion |
0x00800100 BattLowVoltageWarning |
0x00800101 SendVersionToNavi |
.data 0x00800104 0x4 uart.o |
0x00800104 MeineSlaveAdresse |
0x00800105 PcZugriff |
0x00800107 UebertragungAbgeschlossen |
0x00800106 DebugTextAnforderung |
.data 0x00800108 0x8 timer0.o |
0x0080010a ServoRollOffset |
0x0080010e CalculateServoSignals |
0x00800108 BeepMuster |
0x0080010c ServoNickOffset |
.data 0x00800110 0x10 analog.o |
0x0080011e UBat |
0x00800113 AnalogOffsetNick |
0x00800111 AnalogOffsetGier |
0x0080011a HiResRoll |
0x00800110 AdReady |
0x00800112 AnalogOffsetRoll |
0x00800114 MessLuftdruck |
0x00800116 Luftdruck |
0x0080011c HiResNick |
.data 0x00800120 0x51 menu.o |
0x00800120 MaxMenue |
0x00800121 DisplayBuff |
.data 0x00800171 0x21 eeprom.o |
.data 0x00800192 0x2 twimaster.o |
0x00800192 I2CTimeout |
.data 0x00800194 0x1 rc.o |
0x00800194 NewPpmData |
.data 0x00800195 0x4f fc.o |
0x008001de settingdest |
0x008001dc keynumber |
0x008001bc Parameter_CouplingYawCorrection |
0x008001d5 Umschlag180Nick |
0x008001cf Ki |
0x008001ce Parameter_Luftdruck_D |
0x008001bb Parameter_DynamicStability |
0x008001c5 Parameter_Gyro_Gier_P |
0x008001ca Parameter_KompassWirkung |
0x008001c1 Parameter_ServoNickControl |
0x008001c7 Parameter_Gyro_P |
0x008001c8 Parameter_Gyro_D |
0x008001cc Parameter_Hoehe_P |
0x008001bd Parameter_AchsKopplung2 |
0x0080019a ExternHoehenValue |
0x008001cb Parameter_Hoehe_ACC_Wirkung |
0x00800196 GIER_GRAD_FAKTOR |
0x008001bf Parameter_LoopGasLimit |
0x008001be Parameter_AchsKopplung1 |
0x0080019c sintab |
0x008001db updatemotors |
0x008001c6 Parameter_Gyro_I |
0x008001c4 Parameter_Gyro_Gier_I |
0x008001d1 Umschlag180Roll |
0x008001cd Parameter_MaxHoehe |
0x008001c2 Parameter_I_Faktor |
0x008001c9 Parameter_Hoehe_GPS_Z |
0x00800195 VarioCharacter |
0x008001c0 Parameter_ServoRollControl |
0x008001d9 KompassSignalSchlecht |
0x008001c3 Parameter_Gier_P |
.data 0x008001e4 0xb spi.o |
0x008001e4 SPI_CommandSequence |
0x008001ee FromNC_Rotate_C |
0x008001ed NaviDataOkay |
.data 0x008001ef 0x2 led.o |
0x008001f0 J16Mask |
0x008001ef J17Mask |
.data 0x008001f1 0x1 Spektrum.o |
.data 0x008001f2 0x4 libfc644.a(libfc.o) |
0x008001f3 kf089uwjef89234hffhh |
0x008001f2 md5 |
0x008001f4 f8jhreghreGerg45gE542 |
*(.gnu.linkonce.d*) |
0x008001f6 . = ALIGN (0x2) |
0x008001f6 _edata = . |
0x008001f6 PROVIDE (__data_end, .) |
.bss 0x008001f6 0x6df |
0x008001f6 PROVIDE (__bss_start, .) |
*(.bss) |
.bss 0x008001f6 0x8 main.o |
0x008001f7 FlugSekunden |
0x008001fb FlugMinuten |
0x008001f9 FlugMinutenGesamt |
0x008001f6 FoundMotors |
.bss 0x008001fe 0x22 uart.o |
0x00800210 SioTmp |
0x00800201 Display_Interval |
0x00800208 PC_DebugTimeout |
0x00800213 GetVersionAnforderung |
0x0080020e NeueKoordinateEmpfangen |
0x00800203 Intervall3D |
0x00800214 DebugDataAnforderung |
0x00800207 PC_MotortestActive |
0x0080020f NeuerDatensatzEmpfangen |
0x00800215 DebugDisplayAnforderung |
0x00800205 DebugDataIntervall |
0x0080020d CntCrcError |
0x008001ff AboTimeOut |
0x00800212 GetPPMChannelAnforderung |
0x00800216 DebugDisplayAnforderung1 |
0x00800211 DisplayLine |
0x00800217 GetExternalControl |
0x0080020a pRxData |
0x00800209 RxDataLen |
0x0080020c AnzahlEmpfangsBytes |
0x008001fe JetiUpdateModeActive |
.bss 0x00800220 0x17 timer0.o |
0x00800227 SendSPI |
0x00800224 RemainingPulse |
0x00800228 beeptime |
0x00800222 ServoNickValue |
0x0080022d CountMilliseconds |
0x00800226 ServoActive |
0x0080022a cntKompass |
0x0080022c UpdateMotor |
0x00800220 ServoRollValue |
.bss 0x00800237 0x32 analog.o |
0x00800240 messanzahl_AccHoch |
0x00800237 ZaehlMessungen |
0x00800239 VarioMeter |
0x0080023b ExpandBaro |
0x00800249 AdWertRoll |
0x00800243 AdWertAccNick |
0x0080024b AdWertNick |
0x0080024d AdWertGierFilter |
0x00800247 AdWertGier |
0x00800251 AdWertNickFilter |
0x00800245 AdWertAccRoll |
0x0080023c SummenHoehe |
0x0080024f AdWertRollFilter |
0x00800241 AdWertAccHoch |
.bss 0x00800269 0x3 menu.o |
0x0080026b DispPtr |
0x0080026a MenuePunkt |
0x00800269 RemoteKeys |
.bss 0x0080026c 0x10 twimaster.o |
0x00800274 motor_write |
0x00800270 BLFlags |
0x00800276 twi_state |
0x00800271 MissingMotor |
0x00800273 motor_read |
0x00800275 dac_channel |
0x00800272 I2C_TransferActive |
0x0080026e BLConfig_WriteMask |
0x0080026c BLConfig_ReadMask |
.bss 0x0080027c 0x71 rc.o |
0x0080027c tmpChannels |
.bss 0x008002ed 0xfd fc.o |
0x00800341 Mess_Integral_Gier2 |
0x0080030d LageKorrekturRoll |
0x0080031b StickGier |
0x00800303 Looping_Oben |
0x00800351 Mess_IntegralNick2 |
0x00800371 IntegralNick2 |
0x00800321 SenderOkay |
0x008002fe Parameter_UserParam5 |
0x0080035d IntegralAccZ |
0x00800359 Integral_Gier |
0x0080031f StickNick |
0x00800318 MotorenEin |
0x00800379 ControlHeading |
0x00800308 Looping_Nick |
0x00800365 IntegralAccNick |
0x00800313 HoehenWert |
0x00800349 Mess_IntegralRoll2 |
0x008002f4 ExternStickGier |
0x00800304 Looping_Unten |
0x008002f0 MaxStickRoll |
0x008002ee modell_fliegt |
0x00800302 Parameter_UserParam1 |
0x00800388 AdNeutralRoll |
0x00800309 HoverGas |
0x00800306 Looping_Links |
0x00800375 IntegralNick |
0x00800335 Mess_Integral_Hoch |
0x008002fc Parameter_UserParam7 |
0x0080038c BaroExpandActive |
0x0080037c NaviCntAcc |
0x0080032d TrichterFlug |
0x00800380 NeutralAccX |
0x00800339 SummeRoll |
0x0080038f CurrentOffset |
0x00800345 Mess_Integral_Gier |
0x00800317 StartTrigger |
0x0080030b LageKorrekturNick |
0x008002ff Parameter_UserParam4 |
0x00800331 KompassStartwert |
0x00800319 StickGas |
0x00800307 Looping_Roll |
0x008002fa CareFree |
0x008002f8 ExternStickNick |
0x00800301 Parameter_UserParam2 |
0x00800382 StartNeutralNick |
0x00800333 KompassValue |
0x00800361 IntegralAccRoll |
0x0080032f KompassRichtung |
0x0080034d Mess_IntegralRoll |
0x0080038e pos4 |
0x0080031d StickRoll |
0x0080038a AdNeutralNick |
0x0080037e NeutralAccY |
0x00800322 Poti |
0x0080037a NeutralAccZ |
0x008002fd Parameter_UserParam6 |
0x00800369 IntegralRoll2 |
0x008002f2 MaxStickNick |
0x008002ed FC_StatusFlags |
0x00800300 Parameter_UserParam3 |
0x00800386 AdNeutralGier |
0x00800384 StartNeutralRoll |
0x00800305 Looping_Rechts |
0x008002f6 ExternStickRoll |
0x0080032e HoehenReglerAktiv |
0x0080030f SollHoehe |
0x008002fb Parameter_UserParam8 |
0x0080032b GierGyroFehler |
0x00800355 Mess_IntegralNick |
0x0080033d SummeNick |
0x0080036d IntegralRoll |
.bss 0x008003ea 0x18 GPS.o |
0x008003ee GpsZiel_X |
0x008003fa GPS_Roll2 |
0x008003f2 GpsAktuell_Y |
0x00800400 GPS_Nick |
0x008003fc GPS_Nick2 |
0x008003f6 GpsAktuell_X |
0x008003ea GpsZiel_Y |
0x008003fe GPS_Roll |
.bss 0x00800402 0x5 spi.o |
0x00800404 FromNC_Rotate_S |
0x00800402 NC_ErrorCode |
0x00800403 SPI_CommandCounter |
.bss 0x00800407 0xb led.o |
0x00800409 LED2_Timing |
0x0080040b LED1_Timing |
0x00800407 J17Blinkcount |
0x00800408 J16Blinkcount |
.bss 0x00800412 0x5 Spektrum.o |
0x00800412 SpektrumTimer |
.bss 0x00800417 0x2 jetimenu.o |
.bss 0x00800419 0xa capacity.o |
0x00800419 update_timer |
.bss 0x00800423 0xc libfc644.a(libfc.o) |
0x00800424 IllIIllIlIlIlIllllII |
0x00800427 DJFIORJHcvjr894hjhffj |
0x00800426 IIIIIlIllllllIIllIIll |
0x00800423 weiuncefcnsavsgvghjc |
0x00800428 fij48zrhoih3498fhfo90 |
0x00800429 fojk48fj478fhw7fhw39 |
0x00800425 XSasC2389ufwejiCjuz32 |
*(COMMON) |
COMMON 0x0080042f 0x2 main.o |
0x0080042f _printf_P |
COMMON 0x00800431 0x1da uart.o |
0x00800431 Data3D |
0x0080043f Timer3D |
0x00800441 Debug_Timer |
0x00800443 VersionInfo |
0x0080044d MotorTest |
0x0080045d WinkelOut |
0x00800465 ExternControl |
0x00800470 Kompass_Timer |
0x00800472 RxdBuffer |
0x0080051c Display_Timer |
0x0080051e TxdBuffer |
0x008005c8 DebugOut |
0x0080060a ConfirmFrame |
COMMON 0x0080060b 0x13 analog.o |
0x0080060b Aktuell_ay |
0x0080060d NeutralAccZ_float |
0x00800611 Aktuell_az |
0x00800613 StartLuftdruck |
0x00800615 Aktuell_Nick |
0x00800617 Aktuell_Roll |
0x00800619 Aktuell_ax |
0x0080061b DruckOffsetSetting |
0x0080061c Aktuell_Gier |
COMMON 0x0080061e 0xc3 eeprom.o |
0x0080061e RequiredMotors |
0x0080061f EE_Parameter |
0x00800693 Mixer |
COMMON 0x008006e1 0x68 twimaster.o |
0x008006e1 BLConfig |
0x008006e9 Motor |
COMMON 0x00800749 0x69 rc.o |
0x00800749 Channels |
0x0080074a PPM_in |
0x0080077e PPM_diff |
COMMON 0x008007b2 0x80 fc.o |
0x008007b2 Motors5max |
0x008007b3 KopplungsteilNickRoll |
0x008007b5 MesswertGierBias |
0x008007b7 KopplungsteilRollNick |
0x008007b9 MotorsTmax |
0x008007bb Parameter_Servo4 |
0x008007bc DiffRoll |
0x008007be MesswertRoll |
0x008007c0 pos2 |
0x008007c1 TrimNick |
0x008007c3 Parameter_NaviGpsP |
0x008007c4 loop2 |
0x008007c5 ErsatzKompassInGrad |
0x008007c7 GyroFaktorGier |
0x008007c8 MittelIntegralRoll2 |
0x008007cc Parameter_NaviGpsModeControl |
0x008007cd TrimRoll |
0x008007cf Motors2max |
0x008007d0 MesswertNick |
0x008007d2 Motors5 |
0x008007d3 Parameter_NaviGpsI |
0x008007d4 RohMesswertRoll |
0x008007d6 MIN_GAS |
0x008007d7 Parameter_NaviGpsACC |
0x008007d8 MittelIntegralNick2 |
0x008007dc RohMesswertNick |
0x008007de IntegralFaktorGier |
0x008007df DiffNick |
0x008007e1 MittelIntegralNick |
0x008007e5 Parameter_Servo3 |
0x008007e6 Motors2 |
0x008007e7 Motors0 |
0x008007e8 NaviAccNick |
0x008007ea Parameter_J16Timing |
0x008007eb MittelIntegralRoll |
0x008007ef Motors6 |
0x008007f0 Parameter_Servo5 |
0x008007f1 Motors3max |
0x008007f2 pos1 |
0x008007f3 IntegralFaktor |
0x008007f4 Motors7 |
0x008007f5 Motors0max |
0x008007f6 Motors4max |
0x008007f7 Motors3 |
0x008007f8 tmp_motorwert |
0x00800810 Motors1max |
0x00800811 Parameter_NaviOperatingRadius |
0x00800812 pos3 |
0x00800813 Parameter_NaviWindCorrection |
0x00800814 s |
0x00800815 h |
0x00800816 Motors4 |
0x00800817 Mittelwert_AccNick |
0x00800819 Parameter_NaviSpeedCompensation |
0x0080081a Parameter_J17Timing |
0x0080081b MAX_GAS |
0x0080081c Motors1 |
0x0080081d loop1 |
0x0080081e Motors6max |
0x0080081f MesswertGier |
0x00800821 Parameter_J16Bitmask |
0x00800822 NaviAccRoll |
0x00800824 GyroFaktor |
0x00800825 m |
0x00800826 ErsatzKompass |
0x0080082a Mittelwert_AccRoll |
0x0080082c Parameter_NaviGpsGain |
0x0080082d Parameter_ExternalControl |
0x0080082e Motors7max |
0x0080082f loop3 |
0x00800830 Parameter_J17Bitmask |
0x00800831 Parameter_NaviGpsD |
COMMON 0x00800832 0x6d spi.o |
0x00800832 SPITransferCompleted |
0x00800833 GPSInfo |
0x0080083b SPI_TX_Buffer |
0x0080083d NC_Version |
0x00800842 SPI_BufferIndex |
0x00800843 ToNaviCtrl |
0x00800863 SPI_ChkSum |
0x00800864 SPI_RxBufferIndex |
0x00800865 SPI_RxDataValid |
0x00800866 FromNaviCtrl |
0x00800880 SPI_Buffer |
0x0080089a FromNaviCtrl_Value |
COMMON 0x0080089f 0x9 capacity.o |
0x0080089f Capacity |
COMMON 0x008008a8 0x2d libfc644.a(libfc.o) |
0x008008a8 fdknerTjg5i83th589v44 |
0x008008ae IlIlIlIIIIIIIlIllllll |
0x008008d1 fgfdogjWEti45e9tjh394 |
0x008008d5 PROVIDE (__bss_end, .) |
0x0000f02a __data_load_start = LOADADDR (.data) |
0x0000f120 __data_load_end = (__data_load_start + SIZEOF (.data)) |
.noinit 0x008008d5 0x0 |
0x008008d5 PROVIDE (__noinit_start, .) |
*(.noinit*) |
0x008008d5 PROVIDE (__noinit_end, .) |
0x008008d5 _end = . |
0x008008d5 PROVIDE (__heap_start, .) |
.eeprom 0x00810000 0x0 |
*(.eeprom*) |
0x00810000 __eeprom_end = . |
.stab 0x00000000 0x9d8 |
*(.stab) |
.stab 0x00000000 0x36c C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
.stab 0x0000036c 0x66c isqrt.o |
0x678 (size before relaxing) |
.stabstr 0x00000000 0xda |
*(.stabstr) |
.stabstr 0x00000000 0xda C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
.stab.excl |
*(.stab.excl) |
.stab.exclstr |
*(.stab.exclstr) |
.stab.index |
*(.stab.index) |
.stab.indexstr |
*(.stab.indexstr) |
.comment |
*(.comment) |
.debug |
*(.debug) |
.line |
*(.line) |
.debug_srcinfo |
*(.debug_srcinfo) |
.debug_sfnames |
*(.debug_sfnames) |
.debug_aranges |
*(.debug_aranges) |
.debug_pubnames |
*(.debug_pubnames) |
.debug_info |
*(.debug_info) |
*(.gnu.linkonce.wi.*) |
.debug_abbrev |
*(.debug_abbrev) |
.debug_line |
*(.debug_line) |
.debug_frame |
*(.debug_frame) |
.debug_str |
*(.debug_str) |
.debug_loc |
*(.debug_loc) |
.debug_macinfo |
*(.debug_macinfo) |
OUTPUT(Flight-Ctrl_MEGA644_V0_82a_SVN_akku001.elf elf32-avr) |
Cross Reference Table |
Symbol File |
ADC_Init analog.o |
main.o |
ANALOG_TEXT uart.o |
AboTimeOut uart.o |
AdNeutralGier fc.o |
spi.o |
rc.o |
menu.o |
AdNeutralNick fc.o |
rc.o |
menu.o |
analog.o |
AdNeutralRoll fc.o |
rc.o |
menu.o |
analog.o |
AdReady analog.o |
fc.o |
timer0.o |
main.o |
AdWertAccHoch analog.o |
fc.o |
menu.o |
AdWertAccNick analog.o |
fc.o |
menu.o |
AdWertAccRoll analog.o |
fc.o |
menu.o |
AdWertGier analog.o |
spi.o |
fc.o |
menu.o |
AdWertGierFilter analog.o |
AdWertNick analog.o |
fc.o |
menu.o |
AdWertNickFilter analog.o |
fc.o |
AdWertRoll analog.o |
fc.o |
menu.o |
AdWertRollFilter analog.o |
fc.o |
AddCRC uart.o |
Aktuell_Gier analog.o |
Aktuell_Nick analog.o |
Aktuell_Roll analog.o |
Aktuell_ax analog.o |
Aktuell_ay analog.o |
Aktuell_az fc.o |
analog.o |
AnalogOffsetGier analog.o |
twimaster.o |
menu.o |
AnalogOffsetNick analog.o |
twimaster.o |
menu.o |
AnalogOffsetRoll analog.o |
twimaster.o |
menu.o |
AnzahlEmpfangsBytes uart.o |
BLConfig twimaster.o |
uart.o |
BLConfig_ReadMask twimaster.o |
BLConfig_WriteMask twimaster.o |
BLFlags twimaster.o |
fc.o |
analog.o |
main.o |
BaroExpandActive fc.o |
BattLowVoltageWarning main.o |
spi.o |
fc.o |
BearbeiteRxDaten uart.o |
main.o |
BeepMuster timer0.o |
fc.o |
main.o |
CalMk3Mag main.o |
CalculateServo timer0.o |
main.o |
CalculateServoSignals timer0.o |
main.o |
CalibrierMittelwert fc.o |
Capacity capacity.o |
jetimenu.o |
spi.o |
fc.o |
menu.o |
main.o |
Capacity_Init capacity.o |
main.o |
Capacity_Update capacity.o |
main.o |
CareFree fc.o |
Channels libfc644.a(libfc.o) |
rc.o |
menu.o |
CheckDelay timer0.o |
capacity.o |
twimaster.o |
analog.o |
uart.o |
main.o |
CntCrcError uart.o |
CommonDefaults eeprom.o |
ConfirmFrame uart.o |
ControlHeading fc.o |
spi.o |
CopyDebugValues fc.o |
uart.o |
CountMilliseconds timer0.o |
CurrentOffset fc.o |
DFGeefWEF43tgt5uGreg5 libfc644.a(libfc.o) |
DJFIORJHcvjr894hjhffj libfc644.a(libfc.o) |
Data3D uart.o |
DatenUebertragung uart.o |
main.o |
DebugDataAnforderung uart.o |
DebugDataIntervall uart.o |
DebugDisplayAnforderung uart.o |
DebugDisplayAnforderung1 uart.o |
DebugOut spi.o |
fc.o |
uart.o |
main.o |
DebugTextAnforderung uart.o |
Debug_Timer uart.o |
Decode64 uart.o |
Delay_ms timer0.o |
fc.o |
Delay_ms_Mess timer0.o |
fc.o |
analog.o |
DiffNick fc.o |
DiffRoll fc.o |
DispPtr menu.o |
uart.o |
DisplayBuff menu.o |
uart.o |
DisplayLine uart.o |
Display_Interval uart.o |
Display_Timer uart.o |
DruckOffsetSetting fc.o |
analog.o |
EEProm_Checksum eeprom.o |
EE_Parameter libfc644.a(libfc.o) |
capacity.o |
jetimenu.o |
Spektrum.o |
led.o |
spi.o |
fc.o |
rc.o |
eeprom.o |
menu.o |
analog.o |
timer0.o |
uart.o |
main.o |
ErsatzKompass jetimenu.o |
spi.o |
fc.o |
uart.o |
ErsatzKompassInGrad fc.o |
ExpandBaro analog.o |
fc.o |
ExternControl fc.o |
menu.o |
uart.o |
main.o |
ExternHoehenValue fc.o |
ExternStickGier fc.o |
main.o |
ExternStickNick fc.o |
main.o |
ExternStickRoll fc.o |
main.o |
FC_StatusFlags fc.o |
libfc644.a(libfc.o) |
led.o |
spi.o |
twimaster.o |
main.o |
FGRT0589rge90gj459gg4 libfc644.a(libfc.o) |
FGtj76uzh56z3grEg5t45 libfc644.a(libfc.o) |
FlugMinuten main.o |
menu.o |
FlugMinutenGesamt main.o |
menu.o |
FlugSekunden main.o |
jetimenu.o |
FoundMotors main.o |
FromNC_Rotate_C spi.o |
fc.o |
FromNC_Rotate_S spi.o |
fc.o |
FromNaviCtrl spi.o |
fc.o |
main.o |
FromNaviCtrl_Value spi.o |
fc.o |
GIER_GRAD_FAKTOR fc.o |
jetimenu.o |
spi.o |
uart.o |
main.o |
GPSInfo jetimenu.o |
spi.o |
GPS_BerechneZielrichtung GPS.o |
GPS_Neutral GPS.o |
fc.o |
GPS_Nick GPS.o |
spi.o |
fc.o |
main.o |
GPS_Nick2 GPS.o |
fc.o |
GPS_Roll GPS.o |
spi.o |
fc.o |
main.o |
GPS_Roll2 GPS.o |
fc.o |
GetActiveParamSet eeprom.o |
spi.o |
fc.o |
menu.o |
uart.o |
GetExternalControl uart.o |
GetPPMChannelAnforderung uart.o |
GetParamByte eeprom.o |
analog.o |
main.o |
GetParamWord eeprom.o |
fc.o |
GetVersionAnforderung uart.o |
GierGyroFehler fc.o |
GpsAktuell_X GPS.o |
GpsAktuell_Y GPS.o |
GpsZiel_X GPS.o |
GpsZiel_Y GPS.o |
GyroFaktor fc.o |
GyroFaktorGier fc.o |
HiResNick analog.o |
fc.o |
HiResRoll analog.o |
fc.o |
HoehenReglerAktiv fc.o |
HoehenWert fc.o |
jetimenu.o |
spi.o |
menu.o |
analog.o |
HoverGas fc.o |
I2CTimeout twimaster.o |
menu.o |
main.o |
I2C_Init twimaster.o |
main.o |
I2C_ReadBLConfig twimaster.o |
uart.o |
I2C_Reset twimaster.o |
main.o |
I2C_TransferActive twimaster.o |
fc.o |
I2C_WriteBLConfig twimaster.o |
uart.o |
IIIIIlIllllllIIllIIll libfc644.a(libfc.o) |
IIllllIllIlllIIlllII libfc644.a(libfc.o) |
INiuzBtergGIBuB76T0G5 libfc644.a(libfc.o) |
IlIlIlIIIIIIIlIllllll libfc644.a(libfc.o) |
IllIIllIlIlIlIllllII libfc644.a(libfc.o) |
IntegralAccNick fc.o |
IntegralAccRoll fc.o |
IntegralAccZ fc.o |
IntegralFaktor fc.o |
IntegralFaktorGier fc.o |
IntegralNick fc.o |
spi.o |
menu.o |
timer0.o |
uart.o |
IntegralNick2 fc.o |
IntegralRoll fc.o |
spi.o |
menu.o |
timer0.o |
uart.o |
IntegralRoll2 fc.o |
Integral_Gier fc.o |
Intervall3D uart.o |
J16Blinkcount led.o |
J16Mask led.o |
J17Blinkcount led.o |
J17Mask led.o |
JetiBox_Menu jetimenu.o |
JetiBox_Update jetimenu.o |
libfc644.a(libfc.o) |
JetiUpdateModeActive uart.o |
libfc644.a(libfc.o) |
main.o |
KLNMIOHMUHG76GFGr43r3 libfc644.a(libfc.o) |
Ki fc.o |
KompassRichtung fc.o |
spi.o |
menu.o |
timer0.o |
uart.o |
KompassSignalSchlecht fc.o |
KompassStartwert fc.o |
spi.o |
menu.o |
timer0.o |
uart.o |
KompassValue fc.o |
spi.o |
menu.o |
timer0.o |
uart.o |
Kompass_Timer uart.o |
KopplungsteilNickRoll fc.o |
KopplungsteilRollNick fc.o |
LED1_Timing led.o |
LED2_Timing led.o |
LED_Init led.o |
fc.o |
eeprom.o |
LED_Update led.o |
main.o |
LIBFC_GetCPUType libfc644.a(libfc.o) |
uart.o |
LIBFC_Init libfc644.a(libfc.o) |
main.o |
LIBFC_JetiBox_Clear libfc644.a(libfc.o) |
jetimenu.o |
LIBFC_JetiBox_Putchar libfc644.a(libfc.o) |
jetimenu.o |
LIBFC_JetiBox_SetPos libfc644.a(libfc.o) |
jetimenu.o |
LIBFC_Polling libfc644.a(libfc.o) |
main.o |
LIBFC_ReceiverInit libfc644.a(libfc.o) |
fc.o |
uart.o |
main.o |
LageKorrekturNick fc.o |
LageKorrekturRoll fc.o |
LcdClear menu.o |
uart.o |
main.o |
LipoDetection main.o |
fc.o |
uart.o |
Looping_Links fc.o |
Looping_Nick fc.o |
Looping_Oben fc.o |
Looping_Rechts fc.o |
Looping_Roll fc.o |
Looping_Unten fc.o |
Luftdruck analog.o |
fc.o |
MAX_GAS fc.o |
MIN_GAS fc.o |
MaxMenue menu.o |
uart.o |
MaxStickNick fc.o |
MaxStickRoll fc.o |
MeineSlaveAdresse uart.o |
Menu menu.o |
uart.o |
Menu_Battery jetimenu.o |
Menu_PosInfo jetimenu.o |
Menu_Putchar menu.o |
uart.o |
Menu_Status jetimenu.o |
Menu_Temperature jetimenu.o |
MenuePunkt menu.o |
uart.o |
MessLuftdruck analog.o |
fc.o |
menu.o |
Mess_IntegralNick fc.o |
Mess_IntegralNick2 fc.o |
Mess_IntegralRoll fc.o |
Mess_IntegralRoll2 fc.o |
Mess_Integral_Gier fc.o |
uart.o |
Mess_Integral_Gier2 fc.o |
Mess_Integral_Hoch fc.o |
analog.o |
MesswertGier fc.o |
MesswertGierBias fc.o |
MesswertNick fc.o |
MesswertRoll fc.o |
MissingMotor twimaster.o |
fc.o |
menu.o |
main.o |
MittelIntegralNick fc.o |
MittelIntegralNick2 fc.o |
MittelIntegralRoll fc.o |
MittelIntegralRoll2 fc.o |
Mittelwert fc.o |
Mittelwert_AccNick fc.o |
Mittelwert_AccRoll fc.o |
Mixer fc.o |
twimaster.o |
eeprom.o |
menu.o |
uart.o |
main.o |
MixerTable_Default eeprom.o |
MixerTable_ReadFromEEProm eeprom.o |
MixerTable_WriteToEEProm eeprom.o |
uart.o |
Motor capacity.o |
jetimenu.o |
fc.o |
twimaster.o |
menu.o |
main.o |
MotorRegler fc.o |
main.o |
MotorTest fc.o |
uart.o |
MotorenEin fc.o |
led.o |
rc.o |
twimaster.o |
uart.o |
main.o |
Motors0 fc.o |
Motors0max fc.o |
Motors1 fc.o |
Motors1max fc.o |
Motors2 fc.o |
Motors2max fc.o |
Motors3 fc.o |
Motors3max fc.o |
Motors4 fc.o |
Motors4max fc.o |
Motors5 fc.o |
Motors5max fc.o |
Motors6 fc.o |
Motors6max fc.o |
Motors7 fc.o |
Motors7max fc.o |
MotorsTmax fc.o |
Msg1 libfc644.a(libfc.o) |
Msg2 libfc644.a(libfc.o) |
NC_ErrorCode spi.o |
jetimenu.o |
NC_Version spi.o |
main.o |
NaviAccNick spi.o |
fc.o |
NaviAccRoll spi.o |
fc.o |
NaviCntAcc fc.o |
spi.o |
NaviDataOkay spi.o |
jetimenu.o |
timer0.o |
main.o |
NeueKoordinateEmpfangen uart.o |
NeuerDatensatzEmpfangen uart.o |
NeutralAccX fc.o |
menu.o |
analog.o |
NeutralAccY fc.o |
menu.o |
analog.o |
NeutralAccZ fc.o |
menu.o |
analog.o |
NeutralAccZ_float analog.o |
NewPpmData rc.o |
libfc644.a(libfc.o) |
Spektrum.o |
fc.o |
PC_DebugTimeout uart.o |
PC_MotortestActive uart.o |
fc.o |
twimaster.o |
PPM_diff libfc644.a(libfc.o) |
Spektrum.o |
fc.o |
rc.o |
PPM_in libfc644.a(libfc.o) |
Spektrum.o |
spi.o |
fc.o |
rc.o |
menu.o |
timer0.o |
uart.o |
main.o |
ParamSet_DefaultSet1 eeprom.o |
ParamSet_DefaultSet2 eeprom.o |
ParamSet_DefaultSet3 eeprom.o |
ParamSet_DefaultStickMapping eeprom.o |
ParamSet_Init eeprom.o |
main.o |
ParamSet_ReadFromEEProm eeprom.o |
fc.o |
uart.o |
ParamSet_WriteToEEProm eeprom.o |
uart.o |
ParameterZuordnung fc.o |
Parameter_AchsKopplung1 fc.o |
Parameter_AchsKopplung2 fc.o |
Parameter_CouplingYawCorrection fc.o |
Parameter_DynamicStability fc.o |
Parameter_ExternalControl fc.o |
Parameter_Gier_P fc.o |
Parameter_Gyro_D fc.o |
Parameter_Gyro_Gier_I fc.o |
Parameter_Gyro_Gier_P fc.o |
Parameter_Gyro_I fc.o |
Parameter_Gyro_P fc.o |
Parameter_Hoehe_ACC_Wirkung fc.o |
Parameter_Hoehe_GPS_Z fc.o |
Parameter_Hoehe_P fc.o |
Parameter_I_Faktor fc.o |
Parameter_J16Bitmask fc.o |
Parameter_J16Timing led.o |
fc.o |
Parameter_J17Bitmask fc.o |
Parameter_J17Timing led.o |
fc.o |
Parameter_KompassWirkung fc.o |
Parameter_LoopGasLimit fc.o |
Parameter_Luftdruck_D fc.o |
Parameter_MaxHoehe fc.o |
Parameter_NaviGpsACC fc.o |
Parameter_NaviGpsD fc.o |
Parameter_NaviGpsGain fc.o |
Parameter_NaviGpsI fc.o |
Parameter_NaviGpsModeControl fc.o |
Parameter_NaviGpsP fc.o |
Parameter_NaviOperatingRadius fc.o |
Parameter_NaviSpeedCompensation fc.o |
Parameter_NaviWindCorrection fc.o |
Parameter_Servo3 fc.o |
timer0.o |
Parameter_Servo4 fc.o |
timer0.o |
Parameter_Servo5 fc.o |
timer0.o |
Parameter_ServoNickControl fc.o |
spi.o |
menu.o |
timer0.o |
Parameter_ServoRollControl fc.o |
spi.o |
timer0.o |
Parameter_UserParam1 fc.o |
spi.o |
uart.o |
Parameter_UserParam2 fc.o |
spi.o |
uart.o |
Parameter_UserParam3 fc.o |
spi.o |
Parameter_UserParam4 fc.o |
spi.o |
Parameter_UserParam5 fc.o |
spi.o |
Parameter_UserParam6 fc.o |
spi.o |
Parameter_UserParam7 fc.o |
spi.o |
Parameter_UserParam8 fc.o |
spi.o |
PcZugriff uart.o |
main.o |
Piep fc.o |
uart.o |
main.o |
PlatinenVersion main.o |
libfc644.a(libfc.o) |
spi.o |
fc.o |
rc.o |
eeprom.o |
menu.o |
analog.o |
timer0.o |
Poti fc.o |
spi.o |
menu.o |
RAM_Checksum eeprom.o |
twimaster.o |
Rec_ACT_DSL libfc644.a(libfc.o) |
Rec_Jeti libfc644.a(libfc.o) |
Rec_PPM libfc644.a(libfc.o) |
Rec_Spektrum libfc644.a(libfc.o) |
Rec_Spektrum_HI_RES libfc644.a(libfc.o) |
Rec_Spektrum_LOW_RES libfc644.a(libfc.o) |
RemainingPulse timer0.o |
RemoteKeys menu.o |
uart.o |
RequiredMotors jetimenu.o |
twimaster.o |
eeprom.o |
main.o |
RohMesswertNick fc.o |
RohMesswertRoll fc.o |
RxDataLen uart.o |
RxdBuffer libfc644.a(libfc.o) |
uart.o |
SPITransferCompleted spi.o |
SPI_Buffer spi.o |
SPI_BufferIndex spi.o |
SPI_ChkSum spi.o |
SPI_CommandCounter spi.o |
SPI_CommandSequence spi.o |
SPI_MasterInit spi.o |
main.o |
SPI_RxBufferIndex spi.o |
SPI_RxDataValid spi.o |
SPI_StartTransmitPacket spi.o |
main.o |
SPI_TX_Buffer spi.o |
SPI_TransmitByte spi.o |
main.o |
SendMotorData fc.o |
main.o |
SendOutData uart.o |
SendSPI timer0.o |
spi.o |
main.o |
SendVersionToNavi main.o |
fc.o |
SenderOkay fc.o |
libfc644.a(libfc.o) |
Spektrum.o |
spi.o |
rc.o |
menu.o |
timer0.o |
main.o |
ServoActive timer0.o |
fc.o |
uart.o |
main.o |
ServoNickOffset timer0.o |
ServoNickValue timer0.o |
fc.o |
menu.o |
ServoRollOffset timer0.o |
ServoRollValue timer0.o |
SetActiveParamSet eeprom.o |
fc.o |
SetDefaultParameter eeprom.o |
uart.o |
SetDelay timer0.o |
capacity.o |
twimaster.o |
analog.o |
uart.o |
main.o |
SetNeutral fc.o |
main.o |
SetParamByte eeprom.o |
analog.o |
main.o |
SetParamWord eeprom.o |
fc.o |
menu.o |
SioTmp uart.o |
SollHoehe fc.o |
spi.o |
menu.o |
SpektrumParser Spektrum.o |
libfc644.a(libfc.o) |
SpektrumTimer Spektrum.o |
timer0.o |
SpektrumUartInit Spektrum.o |
libfc644.a(libfc.o) |
StartLuftdruck fc.o |
analog.o |
StartNeutralNick fc.o |
StartNeutralRoll fc.o |
StartTrigger fc.o |
StickGas fc.o |
StickGier fc.o |
main.o |
StickNick fc.o |
main.o |
StickRoll fc.o |
main.o |
SucheGyroOffset analog.o |
fc.o |
SucheLuftruckOffset analog.o |
fc.o |
main.o |
SummeNick fc.o |
uart.o |
SummeRoll fc.o |
uart.o |
SummenHoehe analog.o |
fc.o |
TIMER2_Init timer0.o |
main.o |
Timer3D uart.o |
Timer_Init timer0.o |
main.o |
ToNaviCtrl spi.o |
TrichterFlug fc.o |
TrimNick fc.o |
TrimRoll fc.o |
TxdBuffer uart.o |
UART_Init uart.o |
main.o |
UBat analog.o |
capacity.o |
jetimenu.o |
spi.o |
fc.o |
menu.o |
main.o |
UebertragungAbgeschlossen uart.o |
Umschlag180Nick fc.o |
uart.o |
Umschlag180Roll fc.o |
uart.o |
UpdateMotor timer0.o |
main.o |
UpdateSPI_Buffer spi.o |
VarioCharacter fc.o |
jetimenu.o |
VarioMeter analog.o |
fc.o |
VersionInfo led.o |
spi.o |
fc.o |
menu.o |
analog.o |
uart.o |
main.o |
WinkelOut spi.o |
fc.o |
uart.o |
main.o |
XSasC2389ufwejiCjuz32 libfc644.a(libfc.o) |
ZaehlMessungen analog.o |
fc.o |
__addsf3 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) |
fc.o |
__addsf3x C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3x.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) |
__bad_interrupt C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__bss_end C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_clear_bss.o) |
__bss_start C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_clear_bss.o) |
__data_end C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_copy_data.o) |
__data_load_start C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_copy_data.o) |
__data_start C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_copy_data.o) |
__divmodhi4 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodhi4.o) |
libfc644.a(libfc.o) |
capacity.o |
jetimenu.o |
mymath.o |
Spektrum.o |
spi.o |
fc.o |
rc.o |
menu.o |
timer0.o |
uart.o |
__divmodsi4 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodsi4.o) |
jetimenu.o |
spi.o |
fc.o |
menu.o |
uart.o |
__do_clear_bss C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_clear_bss.o) |
libfc644.a(libfc.o) |
debug.o |
capacity.o |
jetimenu.o |
mymath.o |
Spektrum.o |
led.o |
spi.o |
GPS.o |
fc.o |
rc.o |
twimaster.o |
eeprom.o |
menu.o |
analog.o |
timer0.o |
uart.o |
main.o |
__do_copy_data C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_copy_data.o) |
libfc644.a(libfc.o) |
debug.o |
capacity.o |
jetimenu.o |
mymath.o |
Spektrum.o |
led.o |
spi.o |
GPS.o |
fc.o |
rc.o |
twimaster.o |
eeprom.o |
menu.o |
analog.o |
timer0.o |
uart.o |
main.o |
__eeprom_read_block_1F2021 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rblk.1F2021.o) |
eeprom.o |
__eeprom_read_byte_1F2021 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rw.1F2021.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rblk.1F2021.o) |
eeprom.o |
__eeprom_read_word_1F2021 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_rw.1F2021.o) |
eeprom.o |
__eeprom_write_block_1F2021 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o) |
eeprom.o |
__eeprom_write_byte_1F2021 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_ww.1F2021.o) |
eeprom.o |
__eeprom_write_word_1F2021 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(ee_ww.1F2021.o) |
eeprom.o |
__epilogue_restores__ C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_epilogue.o) |
libfc644.a(libfc.o) |
Spektrum.o |
fc.o |
eeprom.o |
menu.o |
timer0.o |
uart.o |
__fixsfsi C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fixsfsi.o) |
__fixunssfsi C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fixsfsi.o) |
fc.o |
__floatsisf C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(floatsisf.o) |
fc.o |
__floatunssisf C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(floatsisf.o) |
__fp_lneg C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fixsfsi.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(floatsisf.o) |
__fp_merge C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_merge.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(floatsisf.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) |
__fp_nan C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_nan.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_split.o) |
__fp_nanEDOM C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_nan.o) |
__fp_nanERANGE C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_nan.o) |
__fp_nanx C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_nan.o) |
__fp_split1 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_split.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fixsfsi.o) |
__fp_split2 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_split.o) |
__fp_split3 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_split.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) |
__fp_split_a C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_split.o) |
__fp_zero C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_zero.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_merge.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fixsfsi.o) |
__fp_zerox C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(fp_zero.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3x.o) |
__heap_end C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__init C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__mulsi3 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_mulsi3.o) |
fc.o |
analog.o |
timer0.o |
uart.o |
__prologue_saves__ C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_prologue.o) |
libfc644.a(libfc.o) |
fc.o |
timer0.o |
uart.o |
__stack C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
main.o |
__subsf3 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libm.a(addsf3.o) |
__tablejump2__ C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_tablejump.o) |
twimaster.o |
menu.o |
analog.o |
__tablejump__ C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_tablejump.o) |
__udivmodhi4 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodhi4.o) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodhi4.o) |
libfc644.a(libfc.o) |
capacity.o |
jetimenu.o |
fc.o |
menu.o |
analog.o |
timer0.o |
__udivmodqi4 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodqi4.o) |
libfc644.a(libfc.o) |
menu.o |
main.o |
__udivmodsi4 C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_udivmodsi4.o) |
C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodsi4.o) |
libfc644.a(libfc.o) |
__vector_1 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_10 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_11 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_12 rc.o |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_13 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_14 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_15 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_16 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_17 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_18 timer0.o |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_19 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_2 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_20 uart.o |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_21 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_22 uart.o |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_23 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_24 analog.o |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_25 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_26 twimaster.o |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_27 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_28 libfc644.a(libfc.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_29 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_3 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_30 libfc644.a(libfc.o) |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_4 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_5 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_6 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_7 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_8 C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_9 timer0.o |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vector_default C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
__vectors C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
_div C:/WinAVR/lib/gcc/avr/3.4.6/avr5\libgcc.a(_divmodhi4.o) |
_printf_P libfc644.a(libfc.o) |
jetimenu.o |
fc.o |
eeprom.o |
menu.o |
analog.o |
uart.o |
main.o |
a48784362857632195659 libfc644.a(libfc.o) |
awokdjwqdjcjuhcuweih libfc644.a(libfc.o) |
beeptime timer0.o |
capacity.o |
spi.o |
fc.o |
main.o |
c_cos_8192 mymath.o |
fc.o |
c_sin_8192 mymath.o |
cntKompass timer0.o |
dac_channel twimaster.o |
f8jhreghreGerg45gE542 libfc644.a(libfc.o) |
fdknerTjg5i83th589v44 libfc644.a(libfc.o) |
fgfdogjWEti45e9tjh394 libfc644.a(libfc.o) |
fgmjgnrtuth587th9rTrw libfc644.a(libfc.o) |
fij48zrhoih3498fhfo90 libfc644.a(libfc.o) |
fojk48fj478fhw7fhw39 libfc644.a(libfc.o) |
fomklkdtn89SFGrsgt9rf libfc644.a(libfc.o) |
h fc.o |
ihypot isqrt.o |
fc.o |
isqrt16 isqrt.o |
isqrt32 isqrt.o |
keynumber fc.o |
kf089uwjef89234hffhh libfc644.a(libfc.o) |
lkvgnfdgun57th38rgh84 libfc644.a(libfc.o) |
loop1 fc.o |
loop2 fc.o |
loop3 fc.o |
m fc.o |
main main.o |
C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5/crtm644p.o |
md5 libfc644.a(libfc.o) |
memchr C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(memchr.o) |
libfc644.a(libfc.o) |
memcpy_P C:/WinAVR/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr5\libc.a(memcpy_P.o) |
uart.o |
messanzahl_AccHoch analog.o |
modell_fliegt fc.o |
analog.o |
motor_read twimaster.o |
main.o |
motor_write twimaster.o |
fc.o |
ndfcvbghs libfc644.a(libfc.o) |
njkvnfuhgbuzrgezgf483 libfc644.a(libfc.o) |
pRxData uart.o |
pgm_sinlookup mymath.o |
pos1 fc.o |
pos2 fc.o |
pos3 fc.o |
pos4 fc.o |
rc_sum_init rc.o |
main.o |
s fc.o |
settingdest fc.o |
sintab fc.o |
timer0.o |
tmpChannels rc.o |
tmp_motorwert fc.o |
twi_state twimaster.o |
fc.o |
analog.o |
uart_putchar uart.o |
libfc644.a(libfc.o) |
fc.o |
eeprom.o |
analog.o |
main.o |
update_timer capacity.o |
updatemotors fc.o |
weiuncefcnsavsgvghjc libfc644.a(libfc.o) |
wqqeRT45jth8g758735h4 libfc644.a(libfc.o) |
/branches/metro/v0.82a metro_Akku+/FlightCtrl.aps |
---|
0,0 → 1,0 |
<AVRStudio><MANAGEMENT><ProjectName>FlightCtrl</ProjectName><Created>15-May-2007 11:20:41</Created><LastEdit>11-Oct-2007 22:58:54</LastEdit><ICON>241</ICON><ProjectType>0</ProjectType><Created>15-May-2007 11:20:41</Created><Version>4</Version><Build>4, 13, 0, 528</Build><ProjectTypeName>AVR GCC</ProjectTypeName></MANAGEMENT><CODE_CREATION><ObjectFile>default\Flight-Ctrl.elf</ObjectFile><EntryFile></EntryFile><SaveFolder>F:\SVN\MikroKopter\FlightCtrl\branches\V0.64_ZeroWarnings\</SaveFolder></CODE_CREATION><DEBUG_TARGET><CURRENT_TARGET>AVR Simulator</CURRENT_TARGET><CURRENT_PART>ATmega644.xml</CURRENT_PART><BREAKPOINTS></BREAKPOINTS><IO_EXPAND><HIDE>false</HIDE></IO_EXPAND><REGISTERNAMES><Register>R00</Register><Register>R01</Register><Register>R02</Register><Register>R03</Register><Register>R04</Register><Register>R05</Register><Register>R06</Register><Register>R07</Register><Register>R08</Register><Register>R09</Register><Register>R10</Register><Register>R11</Register><Register>R12</Register><Register>R13</Register><Register>R14</Register><Register>R15</Register><Register>R16</Register><Register>R17</Register><Register>R18</Register><Register>R19</Register><Register>R20</Register><Register>R21</Register><Register>R22</Register><Register>R23</Register><Register>R24</Register><Register>R25</Register><Register>R26</Register><Register>R27</Register><Register>R28</Register><Register>R29</Register><Register>R30</Register><Register>R31</Register></REGISTERNAMES><COM>Auto</COM><COMType>0</COMType><WATCHNUM>0</WATCHNUM><WATCHNAMES><Pane0></Pane0><Pane1></Pane1><Pane2></Pane2><Pane3></Pane3></WATCHNAMES><BreakOnTrcaeFull>0</BreakOnTrcaeFull></DEBUG_TARGET><Debugger><Triggers></Triggers></Debugger><AVRGCCPLUGIN><FILES><SOURCEFILE>uart.c</SOURCEFILE><SOURCEFILE>analog.c</SOURCEFILE><SOURCEFILE>eeprom.c</SOURCEFILE><SOURCEFILE>fc.c</SOURCEFILE><SOURCEFILE>GPS.c</SOURCEFILE><SOURCEFILE>main.c</SOURCEFILE><SOURCEFILE>menu.c</SOURCEFILE><SOURCEFILE>printf_P.c</SOURCEFILE><SOURCEFILE>rc.c</SOURCEFILE><SOURCEFILE>timer0.c</SOURCEFILE><SOURCEFILE>twimaster.c</SOURCEFILE><HEADERFILE>uart.h</HEADERFILE><HEADERFILE>_Settings.h</HEADERFILE><HEADERFILE>analog.h</HEADERFILE><HEADERFILE>fc.h</HEADERFILE><HEADERFILE>gps.h</HEADERFILE><HEADERFILE>main.h</HEADERFILE><HEADERFILE>menu.h</HEADERFILE><HEADERFILE>old_macros.h</HEADERFILE><HEADERFILE>printf_P.h</HEADERFILE><HEADERFILE>rc.h</HEADERFILE><HEADERFILE>Settings.h</HEADERFILE><HEADERFILE>timer0.h</HEADERFILE><HEADERFILE>twimaster.h</HEADERFILE></FILES><CONFIGS><CONFIG><NAME>default</NAME><USESEXTERNALMAKEFILE>NO</USESEXTERNALMAKEFILE><EXTERNALMAKEFILE></EXTERNALMAKEFILE><PART>atmega644</PART><HEX>1</HEX><LIST>1</LIST><MAP>1</MAP><OUTPUTFILENAME>Flight-Ctrl.elf</OUTPUTFILENAME><OUTPUTDIR>default\</OUTPUTDIR><ISDIRTY>1</ISDIRTY><OPTIONS><OPTION><FILE>GPS.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>analog.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>eeprom.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>fc.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>main.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>menu.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>printf_P.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>rc.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>timer0.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>twimaster.c</FILE><OPTIONLIST></OPTIONLIST></OPTION><OPTION><FILE>uart.c</FILE><OPTIONLIST></OPTIONLIST></OPTION></OPTIONS><INCDIRS/><LIBDIRS/><LIBS><LIB>libc.a</LIB><LIB>libm.a</LIB></LIBS><LINKOBJECTS/><OPTIONSFORALL>-Wall -gdwarf-2 -Wstrict-prototypes -std=gnu99 -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -DVERSION_HAUPTVERSION=0 -DVERSION_NEBENVERSION=64 -DVERSION_KOMPATIBEL=5</OPTIONSFORALL><LINKEROPTIONS></LINKEROPTIONS><SEGMENTS/></CONFIG></CONFIGS><LASTCONFIG>default</LASTCONFIG><USES_WINAVR>1</USES_WINAVR><GCC_LOC>C:\Program Files\WinAVR\bin\avr-gcc.exe</GCC_LOC><MAKE_LOC>C:\Program Files\WinAVR\utils\bin\make.exe</MAKE_LOC></AVRGCCPLUGIN><IOView><usergroups/></IOView><Files><File00000><FileId>00000</FileId><FileName>main.c</FileName><Status>1</Status></File00000><File00001><FileId>00001</FileId><FileName>uart.c</FileName><Status>1</Status></File00001><File00002><FileId>00002</FileId><FileName>menu.c</FileName><Status>1</Status></File00002><File00003><FileId>00003</FileId><FileName>timer0.c</FileName><Status>1</Status></File00003><File00004><FileId>00004</FileId><FileName>fc.c</FileName><Status>1</Status></File00004><File00005><FileId>00005</FileId><FileName>fc.h</FileName><Status>1</Status></File00005><File00006><FileId>00006</FileId><FileName>menu.h</FileName><Status>1</Status></File00006><File00007><FileId>00007</FileId><FileName>TWIMASTER.C</FileName><Status>1</Status></File00007><File00008><FileId>00008</FileId><FileName>twimaster.h</FileName><Status>1</Status></File00008><File00009><FileId>00009</FileId><FileName>uart.h</FileName><Status>1</Status></File00009><File00010><FileId>00010</FileId><FileName>_Settings.h</FileName><Status>1</Status></File00010><File00011><FileId>00011</FileId><FileName>analog.h</FileName><Status>1</Status></File00011><File00012><FileId>00012</FileId><FileName>gps.h</FileName><Status>1</Status></File00012><File00013><FileId>00013</FileId><FileName>main.h</FileName><Status>1</Status></File00013><File00014><FileId>00014</FileId><FileName>old_macros.h</FileName><Status>1</Status></File00014><File00015><FileId>00015</FileId><FileName>printf_P.h</FileName><Status>1</Status></File00015><File00016><FileId>00016</FileId><FileName>rc.h</FileName><Status>1</Status></File00016><File00017><FileId>00017</FileId><FileName>Settings.h</FileName><Status>1</Status></File00017><File00018><FileId>00018</FileId><FileName>timer0.h</FileName><Status>1</Status></File00018></Files><Events><Bookmarks></Bookmarks></Events><Trace><Filters></Filters></Trace></AVRStudio> |
/branches/metro/v0.82a metro_Akku+/GPS.c |
---|
0,0 → 1,32 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + only for non-profit use |
// + www.MikroKopter.com |
// + see the File "License.txt" for further Informations |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include "main.h" |
signed int GPS_Nick = 0; |
signed int GPS_Roll = 0; |
signed int GPS_Nick2 = 0; |
signed int GPS_Roll2 = 0; |
long GpsAktuell_X = 0; |
long GpsAktuell_Y = 0; |
long GpsZiel_X = 0; |
long GpsZiel_Y = 0; |
void GPS_Neutral(void) |
{ |
GpsZiel_X = GpsAktuell_X; |
GpsZiel_Y = GpsAktuell_Y; |
} |
void GPS_BerechneZielrichtung(void) |
{ |
GPS_Nick = 0; |
GPS_Roll = 0; |
} |
/branches/metro/v0.82a metro_Akku+/GPS.d |
---|
0,0 → 1,3 |
GPS.o GPS.d : GPS.c main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/GPS.lst |
---|
0,0 → 1,101 |
1 .file "GPS.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global GpsZiel_Y |
11 .global GpsZiel_Y |
12 .section .bss |
15 GpsZiel_Y: |
16 0000 0000 0000 .skip 4,0 |
17 .global GpsZiel_X |
18 .global GpsZiel_X |
21 GpsZiel_X: |
22 0004 0000 0000 .skip 4,0 |
23 .global GpsAktuell_Y |
24 .global GpsAktuell_Y |
27 GpsAktuell_Y: |
28 0008 0000 0000 .skip 4,0 |
29 .global GpsAktuell_X |
30 .global GpsAktuell_X |
33 GpsAktuell_X: |
34 000c 0000 0000 .skip 4,0 |
35 .global GPS_Roll2 |
36 .global GPS_Roll2 |
39 GPS_Roll2: |
40 0010 0000 .skip 2,0 |
41 .global GPS_Nick2 |
42 .global GPS_Nick2 |
45 GPS_Nick2: |
46 0012 0000 .skip 2,0 |
47 .global GPS_Roll |
48 .global GPS_Roll |
51 GPS_Roll: |
52 0014 0000 .skip 2,0 |
53 .global GPS_Nick |
54 .global GPS_Nick |
57 GPS_Nick: |
58 0016 0000 .skip 2,0 |
59 .text |
60 .global GPS_Neutral |
62 GPS_Neutral: |
63 /* prologue: frame size=0 */ |
64 /* prologue end (size=0) */ |
65 0000 8091 0000 lds r24,GpsAktuell_X |
66 0004 9091 0000 lds r25,(GpsAktuell_X)+1 |
67 0008 A091 0000 lds r26,(GpsAktuell_X)+2 |
68 000c B091 0000 lds r27,(GpsAktuell_X)+3 |
69 0010 8093 0000 sts GpsZiel_X,r24 |
70 0014 9093 0000 sts (GpsZiel_X)+1,r25 |
71 0018 A093 0000 sts (GpsZiel_X)+2,r26 |
72 001c B093 0000 sts (GpsZiel_X)+3,r27 |
73 0020 8091 0000 lds r24,GpsAktuell_Y |
74 0024 9091 0000 lds r25,(GpsAktuell_Y)+1 |
75 0028 A091 0000 lds r26,(GpsAktuell_Y)+2 |
76 002c B091 0000 lds r27,(GpsAktuell_Y)+3 |
77 0030 8093 0000 sts GpsZiel_Y,r24 |
78 0034 9093 0000 sts (GpsZiel_Y)+1,r25 |
79 0038 A093 0000 sts (GpsZiel_Y)+2,r26 |
80 003c B093 0000 sts (GpsZiel_Y)+3,r27 |
81 /* epilogue: frame size=0 */ |
82 0040 0895 ret |
83 /* epilogue end (size=1) */ |
84 /* function GPS_Neutral size 33 (32) */ |
86 .global GPS_BerechneZielrichtung |
88 GPS_BerechneZielrichtung: |
89 /* prologue: frame size=0 */ |
90 /* prologue end (size=0) */ |
91 0042 1092 0000 sts (GPS_Nick)+1,__zero_reg__ |
92 0046 1092 0000 sts GPS_Nick,__zero_reg__ |
93 004a 1092 0000 sts (GPS_Roll)+1,__zero_reg__ |
94 004e 1092 0000 sts GPS_Roll,__zero_reg__ |
95 /* epilogue: frame size=0 */ |
96 0052 0895 ret |
97 /* epilogue end (size=1) */ |
98 /* function GPS_BerechneZielrichtung size 9 (8) */ |
100 /* File "GPS.c": code 42 = 0x002a ( 40), prologues 0, epilogues 2 */ |
DEFINED SYMBOLS |
*ABS*:00000000 GPS.c |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:15 .bss:00000000 GpsZiel_Y |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:21 .bss:00000004 GpsZiel_X |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:27 .bss:00000008 GpsAktuell_Y |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:33 .bss:0000000c GpsAktuell_X |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:39 .bss:00000010 GPS_Roll2 |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:45 .bss:00000012 GPS_Nick2 |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:51 .bss:00000014 GPS_Roll |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:57 .bss:00000016 GPS_Nick |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:62 .text:00000000 GPS_Neutral |
C:\Users\Thomas\AppData\Local\Temp/ccy4aaaa.s:88 .text:00000042 GPS_BerechneZielrichtung |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
/branches/metro/v0.82a metro_Akku+/Hex-Files/BootLoader_MEGA644P_20MHZ_V0_1.hex |
---|
0,0 → 1,64 |
:10F8000011241FBECFEFD0E1DEBFCDBF11E0A0E0DD |
:10F81000B1E0E0EEFBEF02C005900D92A030B10721 |
:10F82000D9F712E0A0E0B1E001C01D92A230B1070B |
:10F83000E1F70C943B7C0C941D7C0895982F8091EB |
:10F84000C00085FFFCCF9093C60008958091C00052 |
:10F850008823E4F78091C600992708958DE40E94DB |
:10F860001E7C8BE40E941E7C82E40E941E7C8CE441 |
:10F870000E941E7C0895CFEFD0E1DEBFCDBFE0E057 |
:10F88000F0E014915F01772474BE98E10FB6F8940C |
:10F8900090936000109260000FBE7092C5008AE2E3 |
:10F8A0008093C4008091C00082608093C0009093D8 |
:10F8B000C10086E08093C200EF01072D8091C00057 |
:10F8C00087FF0DC0013031F48091C6008A3AB1F152 |
:10F8D00000E005C08091C6008B3109F401E0CE0143 |
:10F8E00021968436910528F11F3F41F0112331F014 |
:10F8F000E0910001F091010109951BC01092C50033 |
:10F900008AE28093C4008AE00E941E7C8DE00E94FF |
:10F910001E7C86E50E941E7C80E30E941E7C8EE297 |
:10F920000E941E7C81E30E941E7C8AE30E941E7C52 |
:10F9300005C080E593EC0197F1F7C0CF0E942E7CC3 |
:10F940000E94267C813611F489E547C1813471F427 |
:10F950000E94267CA82EBB24BA2CAA240E94267CB6 |
:10F960009927A82AB92AB694A79406C1823629F401 |
:10F9700089E50E941E7C81E00BC1823409F083C0BE |
:10F980000E94267C9927D82FCC270E94267C992775 |
:10F99000C82BD92B0E94267C082F12E0812E11E063 |
:10F9A000912EEE24FF2464010894811C911CEC1616 |
:10F9B000FD0618F40E94267C01C08FEFD6018C93BF |
:10F9C0000894E11CF11CBFEFEB16F10461F358F34E |
:10F9D000E4E77E1609F0DEC0063409F03DC0FFEF13 |
:10F9E000AF16F7EFBF0608F033C0DE01A5016627AA |
:10F9F0007727440F551F661F771F6A017B01C2E0FE |
:10FA0000D1E001E08991992729913327322F2227CC |
:10FA1000822B932B0C01FA0100935700E8951124D7 |
:10FA20004E5F5F4F6F4F7F4F129761F785E0F60192 |
:10FA300080935700E89507B600FCFDCF81E18093E5 |
:10FA40005700E89576956795579547955A0194C064 |
:10FA500080E00E941E7C90C0053409F08DC0F50145 |
:10FA60009E01A2E0B1E0E1BD8F2F992782BD8D916B |
:10FA700080BD3196FA9AF99AF999FECF215030401B |
:10FA800091F75F0179C0873609F047C00E94267C54 |
:10FA90009927D82ECC240E94267C9927C82AD92AB7 |
:10FAA0000E94267C863411F5E6016501EE24FF24D0 |
:10FAB000CC0CDD1CEE1CFF1CF60105911491802F6F |
:10FAC0000E941E7C812F99270E941E7C82E090E07C |
:10FAD000A0E0B0E0C80ED91EEA1EFB1E229761F717 |
:10FAE000F694E794D794C79456012ACF853409F049 |
:10FAF00027CF7501E1BC8F2D992782BDF89A089414 |
:10FB0000E11CF11C80B50E941E7C0894C108D1083C |
:10FB1000C114D10479F7570113CF853601F594E765 |
:10FB2000791651F580E090E0A0E0B0E023E0FC0120 |
:10FB300020935700E89507B600FCFDCF80509F4FFB |
:10FB4000AF4FBF4F8F3FE7EF9E07E0E0AE07E0E02B |
:10FB5000BE0768F381E180935700E8950DC08534B6 |
:10FB600069F488E190E02CE00FB6F894A8958093B2 |
:10FB700060000FBE209360008DE02FC08035E1F360 |
:10FB80008C34D1F3803711F483E527C0843721F416 |
:10FB90000E941E7C80E021C0843521F40E94267CD6 |
:10FBA000782EEACF8B3109F4C9CE8A3A09F4C6CE51 |
:10FBB000863529F480E30E941E7C81E30EC08337E2 |
:10FBC00041F489E00E941E7C86E90E941E7C8EE141 |
:10FBD00004C08B3109F4B4CE8FE30E941E7CB0CEFA |
:040000030000F80001 |
:00000001FF |
/branches/metro/v0.82a metro_Akku+/Hex-Files/BootLoader_MEGA644_20MHZ_V0_1.hex |
---|
0,0 → 1,64 |
:10F8000011241FBECFEFD0E1DEBFCDBF11E0A0E0DD |
:10F81000B1E0E0EEFBEF02C005900D92A030B10721 |
:10F82000D9F712E0A0E0B1E001C01D92A230B1070B |
:10F83000E1F70C943B7C0C941D7C0895982F8091EB |
:10F84000C00085FFFCCF9093C60008958091C00052 |
:10F850008823E4F78091C600992708958DE40E94DB |
:10F860001E7C8BE40E941E7C82E40E941E7C8CE441 |
:10F870000E941E7C0895CFEFD0E1DEBFCDBFE0E057 |
:10F88000F0E014915F01772474BE98E10FB6F8940C |
:10F8900090936000109260000FBE7092C5008AE2E3 |
:10F8A0008093C4008091C00082608093C0009093D8 |
:10F8B000C10086E08093C200EF01072D8091C00057 |
:10F8C00087FF0DC0013031F48091C6008A3AB1F152 |
:10F8D00000E005C08091C6008B3109F401E0CE0143 |
:10F8E00021968436910528F11F3F41F0112331F014 |
:10F8F000E0910001F091010109951BC01092C50033 |
:10F900008AE28093C4008AE00E941E7C8DE00E94FF |
:10F910001E7C86E50E941E7C80E30E941E7C8EE297 |
:10F920000E941E7C81E30E941E7C8AE30E941E7C52 |
:10F9300005C080E593EC0197F1F7C0CF0E942E7CC3 |
:10F940000E94267C813611F489E547C1813471F427 |
:10F950000E94267CA82EBB24BA2CAA240E94267CB6 |
:10F960009927A82AB92AB694A79406C1823629F401 |
:10F9700089E50E941E7C81E00BC1823409F083C0BE |
:10F980000E94267C9927D82FCC270E94267C992775 |
:10F99000C82BD92B0E94267C082F12E0812E11E063 |
:10F9A000912EEE24FF2464010894811C911CEC1616 |
:10F9B000FD0618F40E94267C01C08FEFD6018C93BF |
:10F9C0000894E11CF11CBFEFEB16F10461F358F34E |
:10F9D000E4E77E1609F0DEC0063409F03DC0FFEF13 |
:10F9E000AF16F7EFBF0608F033C0DE01A5016627AA |
:10F9F0007727440F551F661F771F6A017B01C2E0FE |
:10FA0000D1E001E08991992729913327322F2227CC |
:10FA1000822B932B0C01FA0100935700E8951124D7 |
:10FA20004E5F5F4F6F4F7F4F129761F785E0F60192 |
:10FA300080935700E89507B600FCFDCF81E18093E5 |
:10FA40005700E89576956795579547955A0194C064 |
:10FA500080E00E941E7C90C0053409F08DC0F50145 |
:10FA60009E01A2E0B1E0E1BD8F2F992782BD8D916B |
:10FA700080BD3196FA9AF99AF999FECF215030401B |
:10FA800091F75F0179C0873609F047C00E94267C54 |
:10FA90009927D82ECC240E94267C9927C82AD92AB7 |
:10FAA0000E94267C863411F5E6016501EE24FF24D0 |
:10FAB000CC0CDD1CEE1CFF1CF60105911491802F6F |
:10FAC0000E941E7C812F99270E941E7C82E090E07C |
:10FAD000A0E0B0E0C80ED91EEA1EFB1E229761F717 |
:10FAE000F694E794D794C79456012ACF853409F049 |
:10FAF00027CF7501E1BC8F2D992782BDF89A089414 |
:10FB0000E11CF11C80B50E941E7C0894C108D1083C |
:10FB1000C114D10479F7570113CF853601F594E765 |
:10FB2000791651F580E090E0A0E0B0E023E0FC0120 |
:10FB300020935700E89507B600FCFDCF80509F4FFB |
:10FB4000AF4FBF4F8F3FE7EF9E07E0E0AE07E0E02B |
:10FB5000BE0768F381E180935700E8950DC08534B6 |
:10FB600069F488E190E02CE00FB6F894A8958093B2 |
:10FB700060000FBE209360008DE02FC08035E1F360 |
:10FB80008C34D1F3803711F483E527C0843721F416 |
:10FB90000E941E7C80E021C0843521F40E94267CD6 |
:10FBA000782EEACF8B3109F4C9CE8A3A09F4C6CE51 |
:10FBB000863529F480E30E941E7C81E30EC08337E2 |
:10FBC00041F489E00E941E7C86E90E941E7C8EE141 |
:10FBD00004C08B3109F4B4CE8FE30E941E7CB0CEFA |
:040000030000F80001 |
:00000001FF |
/branches/metro/v0.82a metro_Akku+/Hex-Files/Flight-Ctrl_MEGA1284p_V0_82a.hex |
---|
0,0 → 1,3896 |
:100000000C94C4060C9413070C9413070C94130758 |
:100010000C9413070C9413070C9413070C941307F8 |
:100020000C9413070C943B190C9413070C941307AE |
:100030000C9425340C9413070C9413070C94130799 |
:100040000C9413070C9413070C940B160C941307C1 |
:100050000C94260C0C9413070C94F00B0C941307BF |
:100060000C941E1C0C9413070C94B82F0C941307BB |
:100070000C94E5750C9413070C94E1700C94130721 |
:100080000C9413070C9413070C941307491C4E1C73 |
:10009000531C5C1C731C8A1C9A1CAA1CC71CB31E14 |
:1000A0008A1C751D861DB51DD31DF01D4A1EA51E7B |
:1000B00083201521D2215222BB226B237225CF250A |
:1000C0003C268626D1261E276F27D1273028CA280E |
:1000D00065295F2AD72F0B304E30BE30D63017310E |
:1000E000CE319532953295329532953295329532A0 |
:1000F00095329532953295324A324C3251326932CC |
:100100006B320A0D426174743A0020256420436505 |
:100110006C6C732000204C6F77207761726E696E73 |
:1001200067206C6576656C3A2025642E2564000A8C |
:100130000D466F756E6420424C2D4374726C3A20EC |
:10014000002564000A0D0A0D2121204D4953534911 |
:100150004E4720424C2D4354524C3A2025642021D6 |
:1001600021000A0D3D3D3D3D3D3D3D3D3D3D3D3D7B |
:100170003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DAF |
:100180003D3D3D3D3D3D3D000A0D43616C69627260 |
:100190006174696E67207072657373757265207320 |
:1001A000656E736F722E2E004F4B0A0D000A0D46BE |
:1001B0006C696768742D74696D65202575206D699B |
:1001C0006E2020546F74616C3A2575206D696E0045 |
:1001D0000A0D436F6E74726F6C3A2000486561645B |
:1001E000696E67486F6C64004E6F726D616C202899 |
:1001F0004143432D4D6F646529000A0D3D3D3D3D52 |
:100200003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D1E |
:100210003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D0A41 |
:100220000D00416E676C654E69636B2020202020B5 |
:100230002020416E676C65526F6C6C20202020205E |
:1002400020204163634E69636B2020202020202002 |
:100250002020416363526F6C6C20202020202020DE |
:1002600020205961774779726F202020202020209C |
:1002700020204865696768742056616C7565202088 |
:1002800020204163635A202020202020202020208D |
:1002900020204761732020202020202020202020A3 |
:1002A0002020436F6D706173732056616C756520FB |
:1002B0002020566F6C74616765205B302E31565D6F |
:1002C00020205265636569766572204C6576656CA1 |
:1002D00020204779726F20436F6D70617373202007 |
:1002E00020204D6F746F722031202020202020208C |
:1002F00020204D6F746F722032202020202020207B |
:1003000020204D6F746F7220332020202020202069 |
:1003100020204D6F746F7220342020202020202058 |
:1003200020203136202020202020202020202020A6 |
:100330002020313720202020202020202020202095 |
:100340002020313820202020202020202020202084 |
:100350002020313920202020202020202020202073 |
:100360002020536572766F2020202020202020201E |
:100370002020486F7665726761732020202020203E |
:10038000202043757272656E74205B302E31415DA2 |
:1003900020204361706163697479205B6D41685D01 |
:1003A0002020323420202020202020202020202027 |
:1003B0002020323520202020202020202020202016 |
:1003C0002020323620202020202020202020202005 |
:1003D00020203237202020202020202020202020F4 |
:1003E00020204932432D4572726F72202020202038 |
:1003F0002020424C204C696D697420202020202050 |
:1004000020204750535F4E69636B2020202020201E |
:1004100020204750535F526F6C6C202020202020FA |
:10042000202021212120494E434F4D504154494223 |
:100430004C4520212121002A002E000A0D20444194 |
:1004400043206F7220493243204552524F5221209F |
:10045000436865636B204932432C203356726566CE |
:100460002C2044414320616E6420424C2D43747221 |
:100470006C005B25695D005B25695D002B204D6983 |
:100480006B726F4B6F70746572202B0048573A5631 |
:1004900025642E25642053573A25642E2564256350 |
:1004A0000053657474696E673A25642025730048AB |
:1004B00061726477617265204572726F7220313AA1 |
:1004C0002564202121004D697373696E6720424CB9 |
:1004D0002D4374726C3A25642121004D6978657250 |
:1004E000204572726F722100493243204552524FAB |
:1004F00052212121004865696768743A202025351A |
:100500006900536574706F696E743A2535690050DF |
:10051000726573737572653A253569004F66667347 |
:1005200065743A202025356900486569676874203C |
:10053000636F6E74726F6C0044495341424C454482 |
:100540000048656967687420636F6E74726F6C0031 |
:1005500044495341424C4544006163742E20626516 |
:100560006172696E67004E69636B3A20202020201B |
:100570002025356900526F6C6C3A20202020202005 |
:1005800025356900436F6D706173733A2020202513 |
:100590003569004B313A25346920204B323A2534F5 |
:1005A0006920004B333A25346920204B343A2534F6 |
:1005B0006920004B353A25346920204B363A2534E2 |
:1005C0006920004B373A25346920204B383A2534CE |
:1005D0006920004E693A2534692020526F3A25344B |
:1005E00069200047733A253469202047693A253449 |
:1005F00069200050313A253469202050323A2534A0 |
:1006000069200050333A253469202050343A25348B |
:100610006920004779726F202D2053656E736F72C9 |
:10062000004E69636B25346920282533692E2569BE |
:100630002900526F6C6C25346920282533692E25DA |
:10064000692900476965722534692028253369299D |
:10065000004E69636B2025346920282533692E25D7 |
:10066000782900526F6C6C20253469202825336965 |
:100670002E257829005961772020253469202825E6 |
:10068000336929004E69636B20253469202825339E |
:100690006929282533692900526F6C6C202534693B |
:1006A00020282533692928253369290059617720B5 |
:1006B0002025346920282533692928253369290014 |
:1006C000414343202D2053656E736F72004E696362 |
:1006D0006B2025346920282533692900526F6C6C02 |
:1006E00020253469202825336929005A202020201C |
:1006F00025346920282533692900566F6C74616799 |
:10070000653A2020202533692E253169560043752E |
:100710007272656E743A2020202533692E25316966 |
:100720004100506F7765723A2020202020253469DF |
:1007300057004469736368617267653A20253569BB |
:100740006D41680052656365697665720052432D9C |
:10075000525353493A202020202534690052432D1A |
:100760005175616C6974793A202534690052432DC2 |
:100770004368616E6E656C733A25346900436F6D32 |
:10078000706173730048656164696E673A20202563 |
:1007900035690056616C75653A2020202025356941 |
:1007A0000053746172743A2020202025356900506E |
:1007B0006F7469313A202025336900506F746932B3 |
:1007C0003A202025336900506F7469333A20202580 |
:1007D000336900506F7469343A2020253369005022 |
:1007E0006F7469353A202025336900506F7469367B |
:1007F0003A202025336900506F7469373A2020254C |
:10080000336900506F7469383A20202533690053EA |
:100810006572766F202000536574706F696E742066 |
:100820002025336900506F736974696F6E3A202513 |
:1008300033690052616E67653A2533692D25336946 |
:100840000045787465726E436F6E74726F6C202011 |
:10085000004E693A2534692020526F3A25346920C8 |
:100860000047733A253469202047693A25346920C6 |
:100870000048693A253469202043663A25346920C6 |
:1008800000424C2D4374726C204572726F7273205B |
:100890000025336420253364202533642025336408 |
:1008A000200025336420253364202533642025333C |
:1008B00064200025336420253364202533642025FB |
:1008C00033642000424C2054656D7065726174750C |
:1008D0007265002533692025336920253369202579 |
:1008E00033692000253369202533692025336920A9 |
:1008F0002533692000253369202533692025336994 |
:10090000202533692000424C2D4374726C20666FA1 |
:10091000756E642000202563202020256320202080 |
:10092000256320202025632000202563202020250A |
:1009300063202020256320202025632000202563BC |
:100940002020202D2020202D2020202D200031307F |
:1009500000313100313200466C696768742D54698A |
:100960006D65202000546F74616C3A2535756D6992 |
:100970006E004163743A20202535756D696E00283C |
:10098000726573657429000A0D47656E657261743E |
:10099000696E672064656661756C74205061726170 |
:1009A0006D6574657220536574202564000A0D55C9 |
:1009B00073696E6720506172616D65746572205352 |
:1009C0006574202564000A0D47656E65726174695F |
:1009D0006E672064656661756C74204D6978657218 |
:1009E000205461626C65000A0D4D697865722D4373 |
:1009F0006F6E6669673A20272573272028257520A2 |
:100A00004D6F746F727329000A0D3D3D3D3D3D3DB4 |
:100A10003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D06 |
:100A20003D3D3D3D3D3D3D3D000A0D414343206E72 |
:100A30006F742063616C69627261746564210D0A70 |
:100A40000000008F001E01AD013B02CA025803E600 |
:100A500003740402058F051B06A7063307BE07486B |
:100A600008D2085B09E3096B0AF20A780BFD0B81D7 |
:100A70000C040D860D070E870E060F840F00107BE9 |
:100A800010F5106E11E5115B12CF124213B3132350 |
:100A9000149214FE146A15D3153B16A11605176798 |
:100AA00017C81727188318DE1837198E19E3193657 |
:100AB0001A871AD61A231B6E1BB61BFD1B411C83FB |
:100AC0001CC31C001D3C1D751DAB1DE01D121E42EC |
:100AD0001E6F1E9A1EC31EE91E0D1F2E1F4D1F697D |
:100AE0001F841F9B1FB01FC31FD31FE11FEC1FF5E7 |
:100AF0001FFB1FFF1F002003010000B76A00020157 |
:100B000001AA6B010302023E6C020003039B6C25E9 |
:100B100032692E253169560025336425632025303E |
:100B200033646D00537461747573004552524F52B3 |
:100B30003A2025326400253469202532693A25306F |
:100B40003269002534696D2563002533692025331A |
:100B50006920253369202533690025336920253331 |
:100B60006920253369202533690054656D706572ED |
:100B70006174757265732020202000256343202056 |
:100B8000202020002532692E25316956202025336A |
:100B9000692E253169410025346957202536696D54 |
:100BA0004168002532756D2F73205361743A2564B6 |
:100BB000200020203344004E6F46780044475053B5 |
:100BC00000486F6D653A2533646D202533642563D5 |
:100BD000004E6F204E6176694374726C21000A0DDD |
:100BE0007777772E4D696B726F4B6F707465722ECD |
:100BF00064652028632920486953797374656D738F |
:100C000020476D6248000A0D746865207573652081 |
:100C10006F66207468697320736F6674776172659C |
:100C2000206973206F6E6C79207065726D697474C1 |
:100C30006564200A0D6F6E206F726967696E616C62 |
:100C4000204D696B726F4B6F707465722D486172C5 |
:100C50006477617265004143542044534C004A65F7 |
:100C6000746920736174656C6C6974005370656B92 |
:100C70007472756D20736174656C6C697420284C96 |
:100C80006F77207265736F6C7574696F6E2900538E |
:100C900070656B7472756D20736174656C6C6974CA |
:100CA00020283230343829005370656B7472756DAA |
:100CB00020736174656C6C6974004D756C74697334 |
:100CC00069676E616C2050504D000A0D5265636576 |
:100CD000697665723A2000756E6B6E6F776E2E20A6 |
:100CE0005573696E672050504D2E2E2E006E6F7416 |
:100CF00020737570706F727465642062792068610A |
:100D000072647761726521000A0D3D3D3D3D3D3DB8 |
:100D10003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D03 |
:100D20003D3D3D3D3D3D3D3D3D3D3D3D3D000A0D93 |
:100D3000466C69676874436F6E74726F6C0A0D4815 |
:100D4000617264776172653A25642E25640A0D53D9 |
:100D50006F6674776172653A5625642E2564256343 |
:100D600020000A0D3D3D3D3D3D3D3D3D3D3D3D3D70 |
:100D70003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DA3 |
:100D80003D3D3D3D3D3D3D0011241FBECFEFD0E434 |
:100D9000DEBFCDBF11E0A0E0B1E0E4E6F2EF00E09D |
:100DA0000BBF02C007900D92A23FB107D9F718E020 |
:100DB000A2EFB1E001C01D92A43BB107E1F77AEACE |
:100DC000E2E0F0E081E280935700D4907E01089445 |
:100DD000E11CF11C20EF37EF41E050E087016FE0AC |
:100DE000DA01C9012F5F3F4F4F4F5F4FABBFFC018F |
:100DF0008791F80181938F01615067FFF1CFF7016F |
:100E00006EE0819178277095615067FFFACF8889ED |
:100E1000781729F0F7E9DF1611F40000FECF0E94E1 |
:100E2000D4070C9431790C94000080911906E82FB6 |
:100E3000FF27EE0FFF1FED5BF84F808191818D5EE4 |
:100E40009F4F14F010920301808191818A5B9F4F24 |
:100E5000CCF4809103018823A9F481E080930301FD |
:100E600080915C048F5F80935C04853038F088EE5D |
:100E700093E0909325028093240204C066E970E019 |
:100E80000E948F3780915C0499279093EA058093A4 |
:100E9000E90508951F93CF93DF93182F882389F0D6 |
:100EA00082E091E09F938F9380EF92E19F938F93E5 |
:100EB000E0912804F091290409950F900F900F906C |
:100EC0000F9080913C06823308F044C084EF91E09B |
:100ED0000E941617EC01112329F0CE010E941F1762 |
:100EE0008823D9F3C2E0D0E026E530E080911E01EE |
:100EF00090911F018217930730F02196255D3F4F97 |
:100F0000C730D10598F380913C069927C89F90017E |
:100F1000C99F300DD89F300D11242093000111235B |
:100F2000D9F068EC70E08C2F0E948F37DF93CF935D |
:100F30008AE091E09F938F9380EF92E19F938F934C |
:100F4000E0912804F091290409958DB79EB7069683 |
:100F50008DBF02C080930001112311F18091000127 |
:100F60006AE00E948478892F99279F938F938091BC |
:100F700000010E94847899279F938F9385E191E0E7 |
:100F80009F938F9380EF92E19F938F93E09128043A |
:100F9000F091290409952DB73EB7285F3F4F2DBF2B |
:100FA000DF91CF911F910895CFEFD0E4DEBFCDBF89 |
:100FB0008824992414B815B8C7EED3E0E297D7FF78 |
:100FC000FDCF85E18093020181E887B93E9A8FEFDA |
:100FD00088B98BE184B911E015B98EE38AB987E449 |
:100FE0008BB9469A84B7877F84BF809160008861FF |
:100FF000809360001092600084EC99E09093250249 |
:10100000809324021092180310921703109248073D |
:101010001092470710921A031092190310921C03A2 |
:1010200010921B0384EC94E0A0E0B0E08093960162 |
:1010300090939701A0939801B093990128980E94EA |
:101040007F170E9450170E94F8120E9409340E94D4 |
:10105000AF1A812F0E946C2F0E945F630E948A6DDD |
:101060000E941875809102018C3010F4299A01C0F9 |
:10107000299878940E94862E80916C0282608093D9 |
:101080006C0210926F020E94B14284EF91E00E94C4 |
:101090001617EC0180916C0280FD05C0CE010E9404 |
:1010A0001F178823B9F38FE291E09F938F93C0EFCE |
:1010B000AC2EC2E1BC2EBF92AF92E0912804F09119 |
:1010C0002904099580EA9FE00E941617EC0100E0D0 |
:1010D00010E00F900F900F900F90B5EEEB2EB6E052 |
:1010E000FB2EA9E9CA2EA6E0DA2E0E94B142809119 |
:1010F0006C0280FD05C0CE010E941F178823B9F342 |
:10110000F60180811816ACF40BC00E94B1428091A8 |
:101110006C0280FD05C0CE010E941F178823B9F321 |
:10112000CE010E941F17882321F4F70180818823B4 |
:1011300064F7F701808187FF1AC00F5F1F4F1F936D |
:101140000F930150104081E491E09F938F93BF92E1 |
:10115000AF92E0912804F091290409958091F20161 |
:101160008F5F8093F2018DB79EB706968DBF0F5F9C |
:101170001F4FE4E0F0E0CE0EDF1E88E090E0E80EC6 |
:10118000F91E0C30110508F4B0CF00E010E0C2EEFB |
:10119000D6E0F9E9EF2EF6E0FF2E8B8187FD1EC029 |
:1011A000F70180811816D4F40F5F1F4F1F930F9320 |
:1011B0000150104084E491E09F938F9380EF92E17F |
:1011C0009F938F93E0912804F0912904099582E080 |
:1011D000809322028DB79EB706968DBF8B81807853 |
:1011E0008B830F5F1F4FE4E0F0E0EE0EFF1E2896AA |
:1011F0000C30110590F282E691E09F938F93E0EF1F |
:10120000EE2EE2E1FE2EFF92EF92E0912804F091A3 |
:1012100029040995909117068091F2010F900F9083 |
:101220000F900F90981728F480914204806180936A |
:10123000420488E891E09F938F93FF92EF92E091B0 |
:101240002804F0912904099588EE93E00E9416176E |
:10125000EC010E94B51A0F900F900F900F90CE01E5 |
:101260000E941F178823D9F388EA91E09F938F93F8 |
:10127000FF92EF92E0912804F0912904099580E013 |
:101280000E945138809102010F900F900F900F90A3 |
:101290008A3011F0843110F0289801C0289A80ED2E |
:1012A00097E0909325028093240285E580935E0465 |
:1012B0008EE090E00E94BB2C9927182F00278FE02A |
:1012C00090E00E94BB2C080F111D1093F8010093B1 |
:1012D000F7018AE090E00E94BB2C9927182F002785 |
:1012E0008BE090E00E94BB2C080F111D1093F601BB |
:1012F0000093F5010F5F1F4F39F08091F701909136 |
:10130000F8018F5F9F4F41F41092F8011092F7019E |
:101310001092F6011092F5018091F5019091F6017D |
:101320009F938F938091F7019091F8019F938F93F2 |
:101330008DEA91E09F938F93FF92EF92E0912804C2 |
:10134000F091290409958DB79EB708968DBF80ED61 |
:1013500091E09F938F93FF92EF92E0912804F09198 |
:1013600029040995809125060F900F900F900F90FA |
:10137000E0912804F091290482FF07C08CED91E0F0 |
:101380009F938F93FF92EF9208C088EE91E09F9316 |
:101390008F9380EF92E19F938F9309950F900F9019 |
:1013A0000F900F900E94FA1F88E893E190939301A9 |
:1013B0008093920181E080935D040E944A078091AE |
:1013C0003F060E947E748AEF91E09F938F93FF9275 |
:1013D000EF92E0912804F0912904099580ED97E0BF |
:1013E0000E941617EC018AEF90E00E9416178C01FC |
:1013F00083E08093C1050F900F900F900F90809124 |
:10140000FA018111FFCFC8010E941F17882339F00C |
:1014100084E690E00E9416178C010E94D47580919A |
:101420002802882309F4D4C180911001882309F48B |
:10143000CFC11092280280915C04882319F00E9489 |
:10144000150702C00E948B450E94B1422091020103 |
:101450002A3011F0243110F0289801C0289A809188 |
:101460001D0390914204882339F080911D0381501F |
:1014700080931D03977F0AC080916F0080628093E4 |
:101480006F001092440710924307986090934204B3 |
:101490008091920190919301019790939301809391 |
:1014A00092018091920190919301892B21F080917A |
:1014B0006D028823C9F18091920190919301892B4B |
:1014C000D9F40E94962F85E090E090939301809349 |
:1014D00092018091FB059091FC0501969093FC058B |
:1014E0008093FB0580914204816080934204809147 |
:1014F000C20582608093C205809108019091090124 |
:101500008F5F9F4F19F5809114038823F9F080E1D4 |
:1015100097E2909325028093240280E890E09093D4 |
:1015200009018093080112C02A3011F0243110F013 |
:10153000289801C0289A8091240290912502892B35 |
:1015400029F4809142048E7F809342048091280286 |
:10155000882309F03DC180910E01882311F00E947B |
:1015600096170E943B130E94760ECE010E941F1711 |
:10157000882309F429C1649680916D0290914204F8 |
:10158000882339F09260909342048091C205826072 |
:101590000CC09D7F909342048091920190919301A1 |
:1015A000079728F08091C2058D7F8093C2058091B6 |
:1015B000920190919301079728F0809142048E7FC9 |
:1015C0008093420480910501882321F0815080930B |
:1015D000050125C0809368041092F5021092F40270 |
:1015E0001092F3021092F2021092F1021092F002A5 |
:1015F00080910801909109018F5F9F4F81F4809144 |
:101600001D03882361F488E99AE39093250280936F |
:10161000240280E09CE0909309018093080180916E |
:10162000E901893C48F081508093E90180914204AE |
:101630008B7F8093420430C0809121088823E1F0A1 |
:1016400080914204846080934204809108019091CB |
:1016500009018F5F9F4F81F480911403882361F00B |
:1016600088E99AE3909325028093240280E098EA27 |
:1016700090930901809308011092FA031092F903E4 |
:101680001092F8031092F7038FEF9FEF90934F089B |
:1016900080934E081092E90180910001282F332792 |
:1016A00080911E0190911F0182179307CCF48091C5 |
:1016B000E90280628093E90280910801909109011A |
:1016C0008F5F9F4FC1F480E797E19093250280934D |
:1016D000240280E093E090930901809308010BC0FD |
:1016E0008091240290912502892B29F48091E902AE |
:1016F0008F7D8093E9020E946B6784E080932302D0 |
:1017000080911403882329F45AEA852E55E0952EFA |
:1017100012C08091F9018F5F8093F901813359F4F0 |
:101720001092F9018091F3019091F4010196909348 |
:10173000F4018093F3010894811C911CF2E78F1649 |
:10174000FBE09F0609F040C0882499242091F7010E |
:101750003091F8012F5F3F4F3093F8012093F7014C |
:101760008091F5019091F60101969093F601809396 |
:10177000F501832F9927682F8EE090E00E94C32CFB |
:101780008091F7019091F8019070682F8FE090E0C0 |
:101790000E94C32C8091F5019091F601892F992721 |
:1017A000682F8AE090E00E94C32C8091F50190910F |
:1017B000F6019070682F8BE090E00E94C32C84E1CA |
:1017C00090E00E941617EC010E94BB670E94A16D79 |
:1017D00080912302882309F012CE0E9480630FCEED |
:1017E0001F920F920FB60F9211248F939F93EF9336 |
:1017F000FF93809107018823E1F480911402909176 |
:10180000150201969093150280931402FC01E95E83 |
:10181000FA4FE081ED3019F08A3A910539F41092CF |
:1018200015021092140281E080930701E093C60034 |
:1018300004C01092150210921402FF91EF919F9133 |
:101840008F910F900FBE0F901F9018951F920F92BF |
:101850000FB60F9211242F933F934F935F936F9383 |
:101860007F938F939F93AF93BF93CF93EF93FF9308 |
:1018700090E08091FA01813029F48091C600809334 |
:10188000CE00CCC08091FA01823029F48091C6004C |
:1018900080936B04C3C08091C60080930C0250916A |
:1018A0001A025A3A10F090931B0280910C028D306C |
:1018B00009F065C080911B02823009F060C09093EE |
:1018C0001B02852F992785599B4FFC013297408138 |
:1018D0002091160230911702241B3109DC01119767 |
:1018E0008C91281B3109C9019F7090931702809336 |
:1018F000160246E0969587954A95E1F7982F935CF6 |
:10190000909318022F733070235C2093190280810A |
:10191000981729F48C91281711F491E006C090E0F3 |
:10192000809109028F5F80930902C0910B02CC2342 |
:1019300009F074C0992309F471C081E080930B020F |
:10194000580F509308025150E52FFF27E559FB4FE0 |
:101950008DE0808380916D04823509F05FC00E9424 |
:10196000FA1F88E190E02CE00FB6F894A8958093D8 |
:1019700060000FBE20936000C09322024FC02091F0 |
:101980001B02822F992781309105F9F08230910551 |
:101990001CF4892B21F040C0029711F13DC08091C9 |
:1019A0000C02833239F480910B02882319F481E010 |
:1019B00080931B0280910C0280936B0481E08093E2 |
:1019C0001A0280910C02992722C02F5F20931B02DC |
:1019D000E52FFF27E559FB4F80910C02808309C05A |
:1019E000E52FFF27E559FB4F80910C0280835A3A7F |
:1019F00020F45F5F50931A0202C010921B022091E4 |
:101A00000C028091160290911702820F911D909303 |
:101A100017028093160202C010921B02FF91EF91F1 |
:101A2000CF91BF91AF919F918F917F916F915F9176 |
:101A30004F913F912F910F900FBE0F901F901895CF |
:101A4000AC01A0E0B0E09D01A817B90748F4E7E1B8 |
:101A5000F5E08191280F311D1196A417B507C8F341 |
:101A60003F70FD01E95EFA4FC90156E096958795F2 |
:101A70005A95E1F7835C80831196FD01E95EFA4F88 |
:101A80002F733070822F835C8083A85EBA4F8DE005 |
:101A90008C9310920701809117058093C6000895DA |
:101AA000A0E0B0E0E6E5FDE00C94FD782C859D8596 |
:101AB0000E85BB2483E2809317059F5990931805E8 |
:101AC0002093190533E0E32EF12C002309F49EC086 |
:101AD000CF84D888BE016D5E7F4FA989BA89015035 |
:101AE000109709F493C01097B9F0F601EB0DF11DB2 |
:101AF000B3949081119791F4002349F1FB016E5F3B |
:101B00007F4FDB01C080D1806E5F7F4F0D90BC9115 |
:101B1000A02DBB24015002C090E019C01097B9F06D |
:101B2000F601EB0DF11DB3944081119791F4002360 |
:101B300041F1FB016E5F7F4FDB01C080D1806E5FA2 |
:101B40007F4F0D90BC91A02DBB24015002C040E0FE |
:101B500018C01097B1F0F601EB0DF11DB394108190 |
:101B6000119781F4002371F0FB013296DB01CD90D7 |
:101B7000DC90BF016E5F7F4FA081B181BB2401501B |
:101B800001C010E0F701E95EFA4F892F869586952E |
:101B9000835C80830894E11CF11CF701E95EFA4F35 |
:101BA000892F99278370907024E0880F991F2A95B8 |
:101BB000E1F755279A0194E0369527959A95E1F734 |
:101BC000822B835C80830894E11CF11CF701E95EA1 |
:101BD000FA4F4F705070440F551F440F551F812FFF |
:101BE000992726E0969587952A95E1F7842B835CC3 |
:101BF00080830894E11CF11CF701E95EFA4F1F7322 |
:101C0000135C10830894E11CF11C6ACFC7010E9489 |
:101C1000200DE9E00C941979A3E07A2F4091080295 |
:101C20004650442309F458C0E72FFF27E559FB4FDE |
:101C300080818D537F5FE72FFF27E559FB4F208180 |
:101C40002D537F5FE72FFF27E559FB4F30813D5331 |
:101C50007F5FE72FFF27E559FB4F60816D537F5F63 |
:101C60009927880F991F880F991F522F52955F70DF |
:101C7000582B822F99278F709070F4E0880F991F4E |
:101C8000FA95E1F7232F26952695282B832F992760 |
:101C900083709070E6E0880F991FEA95E1F7682B52 |
:101CA00041504F3FC9F0EA2FFF27E559FB4F5083C2 |
:101CB000AF5F41504F3F81F0EA2FFF27E559FB4FBF |
:101CC0002083AF5F41504F3F39F0EA2FFF27E5599E |
:101CD000FB4F6083AF5FA5CF8EE694E09093070241 |
:101CE00080930602A350A09305020895A2E0B0E0FD |
:101CF000ECE7FEE00C94037980910B02882309F451 |
:101D00006BC40E940C0E80916C04823609F025C3CE |
:101D100080916D0499278037910509F4C1C08137FE |
:101D20009105C4F48A36910509F48DC28B3691056C |
:101D300044F48B34910571F18636910509F46CC138 |
:101D40000CC38D36910509F47BC08E36910509F4DC |
:101D50005FC003C384379105D1F1853791054CF4F9 |
:101D60008137910509F4A3C08337910509F4F1C0C7 |
:101D7000F4C28737910509F428C2883791052CF4FD |
:101D80008537910509F4E4C1E8C28937910509F462 |
:101D90007AC1E3C2E0910602F0910702808191814D |
:101DA0009093300380932F0320912D0330912E03C5 |
:101DB000821B930B845E9D4F68E671E00E94A478BD |
:101DC000845B904090932C0380932B03C6C2809138 |
:101DD0000802A0910602B0910702853140F080E12F |
:101DE000E6E4F4E00D9001928A95E1F70DC08D9143 |
:101DF0009D910D90BC91A02D809346049093470433 |
:101E0000A0934804B093490480EF809303024BC031 |
:101E1000809107018823E1F38DE490E09F938F93F5 |
:101E20008CE896E09F938F9381E08F938F938EE45D |
:101E30008F930E94500D8DB79EB707968DBF8DC2B0 |
:101E4000A0910602B09107021C91113081F48DE43B |
:101E5000ECE8F6E00D9001928A95E1F70E94C32D1F |
:101E60001983809142048F7E8093420401C01982BD |
:101E7000809107018823E1F381E090E09F938F93A5 |
:101E8000CE0101969F938F9381E08F938F938DE482 |
:101E90008F930E94500DADB7BEB71796ADBF5DC210 |
:101EA00081E080930E028FEF8093050156C2E0918E |
:101EB0000602F0910702E0818E2F8A508A3058F492 |
:101EC0008983882311F481E003C0863010F085E017 |
:101ED000898361E00EC08E2F84518A3070F489832B |
:101EE000882311F481E003C0863010F085E08983F7 |
:101EF00060E089810E94432E12C0E983EF3F19F40C |
:101F00000E94262E89838981882311F481E003C0F1 |
:101F1000863010F085E0898389810E94D92C8091D8 |
:101F200007018823E1F383E790E09F938F9388E193 |
:101F300096E09F938F9381E090E09F938F93CE01E3 |
:101F400001969F938F9382E08F9381E08F9381E539 |
:101F500072C12091060230910702D9018C91815003 |
:101F6000853008F040C0F90181818535E1F52F5FAA |
:101F70003F4F83E7E8E1F6E0D9010D9001928A95A1 |
:101F8000E1F7F90182910E94422D8091590699272B |
:101F9000AA27BB27BC01CD0124EC39E040E050E08A |
:101FA0000E946578DC01CB018093D5019093D60126 |
:101FB000A093D701B093D80180915A069927AA27F8 |
:101FC000BB27BC01CD010E946578DC01CB01809369 |
:101FD000D1019093D201A093D301B093D4010E9478 |
:101FE000262E898301C01982809107018823E1F39D |
:101FF00081E090E09F938F93CE0101969F938F9302 |
:1020000081E08F938F9383E58F930E94500D8DB75E |
:102010009EB707968DBF26C0E0910602F091070299 |
:10202000E0818E2F8150853018F48E2F0E94D92C9C |
:102030000E94262E8983809107018823E1F381E0A5 |
:1020400090E09F938F93CE0101969F938F9381E0B1 |
:102050008F938F9386E48F930E94500DADB7BEB7D8 |
:102060001796ADBF80911403882329F46EE670E0C3 |
:1020700089810E948F3780E00E944A0780913F0645 |
:102080000E947E746AC1E0910602F091070280818D |
:10209000992787FD909590935E0780935D078181D6 |
:1020A000992787FD90959093600780935F078281C1 |
:1020B000992787FD909590936207809361078381AC |
:1020C000992787FD90959093640780936307848197 |
:1020D000992787FD90959093660780936507858182 |
:1020E000992787FD9095909368078093670786816D |
:1020F000992787FD909590936A0780936907878158 |
:10210000992787FD909590936C0780936B07808546 |
:10211000992787FD909590936E0780936D07818531 |
:10212000992787FD90959093700780936F0782851C |
:10213000992787FD90959093720780937107838507 |
:10214000992787FD9095909374078093730705C135 |
:10215000E0910602F091070280810E9462338A8337 |
:10216000882319F481E0898301C0198280910701D5 |
:102170008823E1F388E090E09F938F938AED96E0C7 |
:102180009F938F9321E030E03F932F93809106023D |
:10219000909107029F938F933F932F93CE010296C6 |
:1021A0009F938F933F932F93CE01820F931F9F9303 |
:1021B0008F9384E08F9381E08F9385E58F930E94C6 |
:1021C000500DEDB7FEB773963CC080910502893083 |
:1021D00008F4C3C020910602309107022F5F3F4FE1 |
:1021E00088E0AAEDB6E0F90101900D928A95E1F739 |
:1021F000D9018E910E94B8328A83882319F481E034 |
:10220000898301C01982809107018823E1F321E0CD |
:1022100030E03F932F93CE0102969F938F933F938D |
:102220002F93CE01820F931F9F938F9382E08F9302 |
:1022300081E08F9387E58F930E94500DEDB7FEB735 |
:102240003B96EDBF8AC00E9431748983823019F0B9 |
:10225000843009F082C0F8948091C1008F7380931C |
:10226000C1008091C9008F738093C9008091C10023 |
:10227000877E8093C1008091C900877E8093C900CA |
:102280008091C80087FF03C08091CE00F9CF809174 |
:10229000C00087FF03C08091C600F9CFE09106021D |
:1022A000F09107028081882359F581E08093FA013B |
:1022B0001092CD0080E490E08093CC008091CD001E |
:1022C0008093C5008091CC008093C4008091CA00A7 |
:1022D0008F7D8093CA008091CA008F7E8093CA0050 |
:1022E0008091C9008B7F8093C9008091CA0084606F |
:1022F0008093CA008091CA0082608093CA0003C0A4 |
:1023000082E08093FA018091CA00877F8093CA009F |
:102310008091C200877F8093C2008091C9008E7F28 |
:102320008093C9008091C10088618093C100809131 |
:10233000C90088618093C9008091C1008068809342 |
:10234000C1008091C90080688093C90010926E001E |
:1023500010926F0010927000789480916D0499270C |
:102360008436910509F4CDC085369105ACF48136EB |
:10237000910509F481C0823691052CF48B349105C6 |
:1023800009F45DC021C18236910509F482C083360B |
:10239000910509F491C018C18C36910509F4FFC06C |
:1023A0008D3691054CF48736910509F40AC18836BB |
:1023B000910509F4C4C008C18437910529F0863716 |
:1023C000910509F4FAC000C180910802A0910602AB |
:1023D000B0910702803140F080E1E6E4F4E00D9036 |
:1023E00001928A95E1F70DC08D919D910D90BC9160 |
:1023F000A02D8093460490934704A0934804B09383 |
:102400004904809107018823E1F31F928091040120 |
:102410008F9384E58F930E94500D8AEF809303027F |
:102420008FEF8093050180EA9FE00E94161790933A |
:10243000FC018093FB010F900F900F90C5C0E091BD |
:102440000602F0910702808191819093300380937E |
:102450002F0320912D0330912E03821B930B845E5A |
:102460009D4F68E671E00E94A478845B9040909351 |
:102470002C0380932B03A8C0E0910602F091070281 |
:10248000808180930601803298F08FE1809306016D |
:102490000FC0A0910602B09107028BE0EEE5F4E0D8 |
:1024A0000D9001928A95E1F780916704809303066D |
:1024B0008FEF8093050188C08091FF019091000209 |
:1024C000892B89F4E0910602F0910702E081EE2366 |
:1024D00051F08AE0E89FC00111240E9416179093E2 |
:1024E000390480933804E0910602F091070290814C |
:1024F0008AE0989FC0011124909300028093FF010D |
:1025000015C08FEF80930501E0910602F09107025C |
:1025100090818AE0989FC0011124909302028093D9 |
:102520000102892B19F081E08093100280EA9FE07C |
:102530000E9416179093FC018093FB0145C08FEF1A |
:1025400080930501E0910602F0910702908197FDCA |
:1025500008C082E080930D021092FE011092FD01EE |
:102560001AC0909580916502892B809365029181B4 |
:102570008AE0989FC00111249093FE018093FD0191 |
:1025800084E080930D0280EA9FE00E9416179093EA |
:10259000FC018093FB0181E08093110215C08FEF55 |
:1025A00080930501E0910602F091070280818093FB |
:1025B000660281E08093120207C081E080930F02DF |
:1025C00003C081E08093130210920B021092070265 |
:1025D0001092060210920502E3E0CE5F0C941F7980 |
:1025E000982F8091C00085FFFCCF9093C60008957E |
:1025F0000F931F9388E18093C1008091C000826097 |
:102600008093C0008091C10080688093C100809158 |
:10261000C10080648093C10000E010E00093C50019 |
:102620008AE290E08093C4008091010290910202BE |
:102630000E94161790933B0480933A048CED90E02F |
:102640000E94161790936A048093690410923C04C8 |
:1026500082E580933D04109240048BE080933E0419 |
:1026600010923F0410930702009306021092050295 |
:102670001F910F910895A0E1B0E0E1E4F3E10C9423 |
:10268000007980910701882309F4C1C28091FB0180 |
:102690009091FC010E941F17882361F01092FE01A7 |
:1026A0001092FD011092020210920102109200029B |
:1026B0001092FF018091FD019091FE01892B41F064 |
:1026C00080911505909116050E941F17882329F403 |
:1026D00080911102882309F460C08091070188234A |
:1026E00009F45BC080910D0201E211E08430A8F092 |
:1026F0000E940E2080E590E09F938F931F930F938D |
:1027000081E08F938F9388E48F930E94500D2DB7B3 |
:102710003EB7295F3F4F2DBF34C01092670282E25F |
:1027200094E09F938F9383E090E29F938F93E09147 |
:102730002804F0912904099584E190E09F938F93F8 |
:102740001F930F9381E090E09F938F938DE092E031 |
:102750009F938F9382E08F9381E08F9388E48F9390 |
:102760000E94500D80910D02982F8F5F80930D0273 |
:102770002DB73EB7215F3F4F2DBF943010F0109220 |
:102780000D028091FD019091FE010E941617909319 |
:10279000160580931505109211028091120288236C |
:1027A00051F180910701882331F10E940E2080E5CC |
:1027B00090E09F938F9381E291E09F938F9321E02C |
:1027C00030E03F932F9380E291E09F938F933F936C |
:1027D0002F9386E692E09F938F9383E08F9381E01F |
:1027E0008F938CE48F930E94500D109212028DB73C |
:1027F0009EB70F968DBF80910F028823D1F08091F4 |
:1028000007018823B1F08AE090E09F938F938CE3D7 |
:1028100094E09F938F9381E08F938F9386E58F93BE |
:102820000E94500D10920F022DB73EB7295F3F4F07 |
:102830002DBF809113028823D9F08091070188234E |
:10284000B9F08BE090E09F938F938EE594E09F9397 |
:102850008F9381E08F93809104018F9387E48F930E |
:102860000E94500D109213028DB79EB707968DBF30 |
:102870008091690490916A040E941F17882309F4CB |
:1028800061C080910701882309F45CC080913406FF |
:102890009927880F991F880F991F7C010027F7FC43 |
:1028A0000095102F8091710390917203A091730392 |
:1028B000B0917403BC01CD01A80197010E94D978A1 |
:1028C00030935704209356048091690390916A03D2 |
:1028D000A0916B03B0916C03BC01CD01A8019701DD |
:1028E0000E94D97830935904209358048091FE02B5 |
:1028F00080935A048091FD0280935B0488E090E00D |
:102900009F938F9386E594E09F938F9381E08F93BD |
:1029100083E08F938BE68F930E94500D80915C042F |
:102920002DB73EB7295F3F4F2DBF853018F086E0A9 |
:1029300080935C0483E690E00E94161790936A04EB |
:10294000809369048091010290910202892B41F0E9 |
:1029500080913A0490913B040E941F17882321F430 |
:1029600080911002882339F180910701882319F1A1 |
:102970000E94853682E490E09F938F9381EC95E0EE |
:102980009F938F9381E08F938F9384E48F930E9422 |
:10299000500D109210028DB79EB707968DBF809193 |
:1029A000010290910202009731F00E941617909355 |
:1029B0003B0480933A048091FF0190910002892B9F |
:1029C00009F4B8C080913804909139040E941F170F |
:1029D000882309F4AFC080910701882309F4AAC0B5 |
:1029E000809134069927880F991F880F991F7C01C1 |
:1029F0000027F7FC0095102F8091710390917203CE |
:102A0000A0917303B0917403BC01CD01A80197019B |
:102A10000E94D97830932B0420932A048091690373 |
:102A200090916A03A0916B03B0916C03BC01CD013E |
:102A3000A80197010E94D97830932D0420932C048B |
:102A40002091090830910A0840910B0850910C0818 |
:102A5000DA01C90163E0880F991FAA1FBB1F6A959D |
:102A6000D1F7820F931FA41FB51F820F931FA41FBE |
:102A7000B51F209196013091970140919801509196 |
:102A80009901BC01CD010E94D97830932F04209385 |
:102A90002E048091390390913A03A0913B03B091A9 |
:102AA0003C0339E0B595A795979587953A95D1F769 |
:102AB000809330048091350390913603A0913703C1 |
:102AC000B091380329E0B595A795979587952A95F4 |
:102AD000D1F7809331048091410390914203A091FA |
:102AE0004303B091440309E0B595A7959795879561 |
:102AF0000A95D1F7809332048EE090E09F938F93F4 |
:102B00008AE294E09F938F9381E08F938F9383E485 |
:102B10008F930E94500D8091FF01909100020E94BE |
:102B2000161790933904809338042DB73EB7295F68 |
:102B30003F4F2DBF809106018F3F71F1992714E01F |
:102B4000880F991F1A95E1F78E5D9D4F40E150E087 |
:102B5000BC01CE0101960E94B87680E190E09F937F |
:102B60008F93CE0101969F938F9381E090E09F9386 |
:102B70008F9386E091E09F938F9382E08F9381E023 |
:102B80008F9381E48F930E94500D8FEF8093060105 |
:102B90008DB79EB70B968DBF809103068823D1F029 |
:102BA000809107018823B1F081E090E09F938F939B |
:102BB00083E096E09F938F9381E08F938F9382E4DD |
:102BC0008F930E94500D109203062DB73EB7295FD8 |
:102BD0003F4F2DBF80910E028823C9F080910701DD |
:102BE0008823A9F084E390E09F938F9383E497E098 |
:102BF0009F938F9381E08F938F9380E58F930E94B3 |
:102C0000500D10920E028DB79EB707968DBFE6E06D |
:102C1000C05F0C941C791F920F920FB60F92112473 |
:102C20002F933F935F936F937F938F939F93AF9374 |
:102C3000BF93EF93FF9320E080912302882329F034 |
:102C40008091230281508093230280910B0488237A |
:102C500019F0815080930B0480912B028150809356 |
:102C60002B028F3F09F05BC089E080932B0280919B |
:102C7000290290912A02019690932A0280932902B8 |
:102C800080910F018F5F817080930F01882319F469 |
:102C900081E080932802349903C081E080932C0264 |
:102CA0008091240290912502892B21F180912402A8 |
:102CB000909125020B9750F080912402909125026B |
:102CC0000A97909325028093240204C01092250253 |
:102CD00010922402809124029091250220910801F3 |
:102CE0003091090182239323892B11F021E008C040 |
:102CF00020E006C08FEF9FEF9093090180930801B9 |
:102D000080910201222331F08A3011F45A9A07C0CF |
:102D1000479A05C08A3011F45A9801C047988091AB |
:102D20002C02882309F472C02091E901222309F0C2 |
:102D30006DC08091250683FF69C086B19927FC018B |
:102D4000E071F07084FF14C08091260290912702F8 |
:102D500001969093270280932602809126029091FB |
:102D60002702895E934008F451C020932C024EC084 |
:102D70008091260290912702892B09F443C080910B |
:102D80002602909127028A569140E0F58091260212 |
:102D90009091270269E270E00E949078809126026B |
:102DA00090912702860F971F909327028093260207 |
:102DB00080912602909127020B9750F08091260275 |
:102DC000909127020A979093300380932F0304C0B9 |
:102DD000F0933003E0932F0380912F039091300301 |
:102DE00020912D0330912E03821B930B845E9D4F07 |
:102DF00068E671E00E94A478845B904090932C0375 |
:102E000080932B031092270210922602FF91EF91DC |
:102E1000BF91AF919F918F917F916F915F913F9102 |
:102E20002F910F900FBE0F901F901895209129029F |
:102E300030912A02280F391FC90101960895209167 |
:102E4000290230912A02821B930B892F992786959C |
:102E5000807490700895CF93DF930E941617EC0151 |
:102E6000CE010E941F178823D9F3DF91CF910895D7 |
:102E7000CF93DF930E941617EC0109C080911001D7 |
:102E8000882329F0909310018FEC80937A00CE0173 |
:102E90000E941F17982F882389F3DF91CF910895FF |
:102EA0009FB7F8945F983E9A469A8091B0008F70D1 |
:102EB0008093B0008091B00083608093B0008091D7 |
:102EC000B1008B738093B1008091B1008B608093CF |
:102ED000B1001092B2008FEF8093B3008091B000E8 |
:102EE00080688093B000809170008A7F809370002A |
:102EF000809170008260809370009FBF08958AE087 |
:102F000090E00E941617909332028093310282E083 |
:102F100085BD83EA84BD17BC84EB88BD86E086BD91 |
:102F200080916E00816080936E000895A0E0B0E013 |
:102F3000ECE9F7E10C94FF7880914F06E82FFF272A |
:102F4000E456FE4F9681D08080910E01A92FBB27B9 |
:102F5000A7FDB095CB2FDB2F813009F0C9C02091A0 |
:102F60007103309172034091730350917403BD015A |
:102F7000CE010E94657897FF04C061587F4F8F4F44 |
:102F80009F4F7B018C0167E015950795F794E794B7 |
:102F90006A95D1F78D2D992787FD9095A92FB92F87 |
:102FA0002091690330916A0340916B0350916C0347 |
:102FB000BC01CD010E94657897FF04C061587F4F26 |
:102FC0008F4F9F4F57E095958795779567955A95C1 |
:102FD000D1F7F801E701C61BD70BE80BF90B80917D |
:102FE00046069927AA27BB27BC01CD019E01AF0148 |
:102FF0000E94657897FF04C061507E4F8F4F9F4FAE |
:10300000FC01EB0149E0F595E795D795C7954A9501 |
:10301000D1F78091C101992736E0880F991F3A9521 |
:10302000E1F740910C0150910D0120914E0633279C |
:10303000841B950BB9010E94A47880910C0190919A |
:103040000D01860F971F90930D0180930C018091C5 |
:103050000C0190910D0197FD0F9624E095958795B1 |
:103060002A95E1F790931F0280931E0280917D06BE |
:1030700080FF07C080911E0290911F028C0F9D1F40 |
:1030800006C080911E0290911F028C1B9D0B909395 |
:103090001F0280931E0280914706282F3327220F9C |
:1030A000331F220F331F80911E0290911F0282173F |
:1030B00093077CF080914806282F3327220F331F77 |
:1030C000220F331F80911E0290911F02281739078B |
:1030D00024F430931F0220931E0280910201843158 |
:1030E00008F4C2C080910E018F5F80930E01BEC0B4 |
:1030F0002091690330916A0340916B0350916C03F6 |
:10310000BD01CE010E94657897FF04C061587F4FD2 |
:103110008F4F9F4F7B018C01C7E015950795F79462 |
:10312000E794CA95D1F78D2D992787FD9095A92F02 |
:10313000B92F209171033091720340917303509124 |
:103140007403BC01CD010E9465789B01AC0197FF1F |
:1031500004C021583F4F4F4F5F4FB7E055954795FB |
:1031600037952795BA95D1F72E0D3F1D401F511F5A |
:1031700080914A069927AA27BB27BC01CD010E944E |
:10318000657897FF04C061507E4F8F4F9F4FFC01C1 |
:10319000EB01A9E0F595E795D795C795AA95D1F7E5 |
:1031A0008091C001992776E0880F991F7A95E1F701 |
:1031B00040910A0150910B0120914E063327841B48 |
:1031C000950BB9010E94A47880910A0190910B019E |
:1031D000860F971F90930B0180930A0180910A013B |
:1031E00090910B0197FD0F9664E0959587956A95F0 |
:1031F000E1F790931D0280931C0280917D0681FF70 |
:1032000007C080911C0290911D028C0F9D1F06C06B |
:1032100080911C0290911D028C1B9D0B90931D02AE |
:1032200080931C0280914B06282F3327220F331FD7 |
:10323000220F331F80911C0290911D028217930769 |
:103240007CF080914C06282F3327220F331F220F4A |
:10325000331F80911C0290911D022817390724F416 |
:1032600030931D0220931C0210920E01E7E0CDB7AF |
:10327000DEB70C941B791F920F920FB60F92112498 |
:103280002F933F934F935F938F939F93EF93FF936E |
:103290008091020190912D02843108F04CC0992355 |
:1032A00009F01CC18091B00086FF24C08091B0005D |
:1032B0008F7B8093B00080911E0290911F028755F2 |
:1032C0009E4F909321028093200225E08D3D92072E |
:1032D00018F08CED95E005C08757914030F487E7F2 |
:1032E00091E090932102809320028091200290919E |
:1032F0002102BAC08091B00080648093B0008091B8 |
:103300004D06282F33278DED96E0289FA001299F99 |
:10331000500D389F500D1124CA0120912E0230917A |
:103320002F02821B930B909321028093200281E055 |
:1033300080930E01D0C0992309F0D0C08091B000D5 |
:1033400086FF97C08091B0008F7B8093B000E091A2 |
:103350003002EE23F1F480914D06282F33278DEDB6 |
:1033600096E0289FA001299F500D389F500D1124F1 |
:10337000CA0120912E0230912F02821B930B909351 |
:1033800021028093200210922F0210922E02469A60 |
:10339000A2C089EA93E090932102809320028E2FAD |
:1033A000992783309105D9F08430910534F4813028 |
:1033B000910549F0029761F020C08430910591F0A9 |
:1033C000059799F01AC080911E0290911F0204C0C7 |
:1033D00080911C0290911D0287559E4F1DC08091C7 |
:1033E000D70705C08091B10702C08091DF079927F8 |
:1033F000880F991F880F991FEFCFFF27EE0FFF1F30 |
:10340000ED5BF84F20813181220F331F8091200224 |
:1034100090912102820F931F9093210280932002AA |
:10342000809120029091210255E08D3D950718F082 |
:103430008CED95E005C08757914030F487E791E027 |
:10344000909321028093200220912002309121024A |
:103450002C5B3040309321022093200280912E0279 |
:1034600090912F02820F931F90932F0280932E0230 |
:1034700032C08091B00080648093B0008CEB90E00B |
:10348000909321028093200280912E0290912F022E |
:1034900084549F4F90932F0280932E02809122029A |
:1034A000882321F080911D03833320F48091220230 |
:1034B000823011F4469801C0469A809130028F5FA5 |
:1034C0008093300290914D06981728F481E0809304 |
:1034D0000E011092300281E080932D022091200293 |
:1034E0003091210241E02F37340730F08FEF809385 |
:1034F000B3002F5F30400FC02F3F3105C9F0C0F03F |
:10350000A9014F5F50404F37510550F480E8809338 |
:10351000B30020583040309321022093200212C083 |
:103520008FEF8093B30050932102409320020AC092 |
:10353000809120028093B300109221021092200209 |
:1035400010922D02FF91EF919F918F915F914F917A |
:103550003F912F910F900FBE0F901F9018951092D2 |
:103560007C008FEC80937A000895CF93DF931092C4 |
:10357000370286E987BD83E090E00E94BB2CC82F0C |
:10358000863E08F4C65FC8BD84E690E00E94381706 |
:1035900080911401909115018152934010F0C0EF79 |
:1035A00002C0C530F8F0C8BD82E390E00E94381731 |
:1035B00087E394E09F938F9380EF92E19F938F93A3 |
:1035C000E0912804F09129040995809114019091CB |
:1035D00015010F900F900F900F908152934010F4AF |
:1035E000C550DFCF6C2F83E090E00E94C32CCF301A |
:1035F00018F0CCE8D0E002C0C0E0D0E0CA3FD1056E |
:10360000F8F4C7BD82E390E00E94381789E394E0A4 |
:103610009F938F9380EF92E19F938F93E091280483 |
:10362000F0912904099580911401909115010F9052 |
:103630000F900F900F908052934010F02196DECFA4 |
:10364000C09314068091250680FF09C08C2F8A50F4 |
:103650008B3E28F080914104806480934104C7BD73 |
:103660008CE291E00E943817DF91CF910895EF929C |
:10367000FF921F93CF9310E080ED97E00E94161702 |
:103680007C01CCE8133019F4CB3008F0C9E010E02D |
:1036900080914702909148028C5F934024F480917E |
:1036A000130181500AC080914702909148028750CF |
:1036B000944034F0809113018F5F8093130101C017 |
:1036C00011E080914502909146028C5F934024F472 |
:1036D0008091120181500AC080914502909146026A |
:1036E0008750944034F0809112018F5F80931201D3 |
:1036F00001C01F5F80914302909144028C5F934010 |
:1037000024F48091110181500AC08091430290916C |
:10371000440287509440C4F0809111018F5F8093E0 |
:10372000110113C08BE394E09F938F9380EF92E19C |
:103730009F938F93E0912804F091290409950F90AD |
:103740000F900F900F905FC01F5F82E18093720215 |
:1037500080916C028E7F80936C0285EA8093BC001E |
:10376000809113018A3040F48091410481608093FC |
:1037700041048AE08093130180911301863F40F059 |
:103780008091410481608093410485EF809313010F |
:10379000809112018A3040F48091410482608093CC |
:1037A00041048AE08093120180911201863F40F02B |
:1037B0008091410482608093410485EF80931201DF |
:1037C000809111018A3040F480914104846080939B |
:1037D00041048AE08093110180911101863F40F0FD |
:1037E0008091410484608093410485EF80931101AE |
:1037F00080917202882339F0C7010E941F17882325 |
:1038000009F090CFF5CF109210018FEC80937A00E1 |
:10381000809110018823E1F3CA3020F48AE090E01F |
:103820000E943817C15009F02DCF86E490E00E9425 |
:103830003817CF911F91FF90EF9008951F920F922C |
:103840000FB60F921124AF92BF92CF92DF92EF92F8 |
:10385000FF920F931F932F933F934F935F936F9319 |
:103860007F938F939F93AF93BF93EF93FF93809139 |
:103870005002282F3327442755278F5F809350020B |
:10388000F9012231310508F08CC3EA5BFF4F0C943B |
:103890002B79809178009091790046C080917800D2 |
:1038A000909179002CC1809178009091790090934B |
:1038B00053028093520257C180917A0390917B0307 |
:1038C0002091780030917900821B930B909305062C |
:1038D00080930406809104069091050690935D0202 |
:1038E00080935C025EC18091780090917900209174 |
:1038F0007C0330917D03821B930B9093130680937E |
:103900001206809112069091130690935F028093A5 |
:103910005E0249C38091560290915702209178002F |
:1039200030917900820F931F909357028093560233 |
:1039300081E03AC380915402909155022091780021 |
:1039400030917900820F931F909355028093540217 |
:1039500084E02AC380911E0190911F019C01220FD7 |
:10396000331F280F391F809178009091790063E010 |
:1039700070E00E949078260F371F36952795369570 |
:10398000279530931F0120931E0185E00DC3809180 |
:103990007800909179004091760350917703841BD1 |
:1039A000950B90933E0280933D0280913D02909151 |
:1039B0003E02029704F122E04E3E520784F4209129 |
:1039C00051022B5F2093510225508091EA02909181 |
:1039D000EB02845F914018F4215F209351028091A3 |
:1039E0005102853684F14F5F5F4F509377034093C8 |
:1039F0007603845626C080913D0290913E028F5FEF |
:103A00009F4F0CF532E047325307ECF02091510202 |
:103A10002550209351022B5F8091EA029091EB0296 |
:103A2000845F914018F42F502093510280915102ED |
:103A30008C394CF4415050405093770340937603B7 |
:103A40008C598093510281E080933C0280917800F0 |
:103A50009091790090930B0680930A0680913D0225 |
:103A600090913E029C01442737FD4095542F809150 |
:103A7000310390913203A0913303B0913403820F4C |
:103A8000931FA41FB51F8093310390933203A0931B |
:103A90003303B093340320913103309132034091CA |
:103AA00033035091340357FF04C021503C4F4F4F14 |
:103AB0005F4F0AE055954795379527950A95D1F7B9 |
:103AC0008091310390913203A0913303B09134037C |
:103AD000821B930BA40BB50B80933103909332039D |
:103AE000A0933303B09334032EC18091540290917C |
:103AF00055022091780030917900820F931F9093A6 |
:103B000055028093540210924F0250C280910201DC |
:103B10008A3071F48091780090917900209152025E |
:103B200030915302820F931F01969695879517C087 |
:103B30004091520250915302843158F02091780004 |
:103B400030917900240F351F8FEF97E0821B930B84 |
:103B500006C08091780090917900840F951F909312 |
:103B600044028093430286E01FC280917A039091C1 |
:103B70007B032091780030917900821B930B909306 |
:103B80000506809304068091040690910506209115 |
:103B90005C0230915D02820F931F909342028093EA |
:103BA000410287E001C280917800909179002091D4 |
:103BB0007C0330917D03821B930B909313068093BB |
:103BC0001206809112069091130620915E023091A8 |
:103BD0005F02820F931F9093400280933F02E3C1E4 |
:103BE000209156023091570280917800909179008F |
:103BF000280F391F309357022093560280910201FB |
:103C00008A3019F4220F331F04C0220F331F220FF2 |
:103C1000331F309357022093560220915602309161 |
:103C20005702C90137FD0796A3E095958795AA9598 |
:103C3000E1F7909348028093470280915802909157 |
:103C40005902820F931F97FD019695958795909342 |
:103C50005902809358022091860330918703821B7A |
:103C6000930B90931D0180931C0120914D02309184 |
:103C70004E0280911C0190911D01280F391F37FFC2 |
:103C800002C02F5F3F4F3595279530934E0220930A |
:103C90004D024ECE20915402309155028091780011 |
:103CA00090917900280F391F3093550220935402C8 |
:103CB000809102018A3019F4220F331F04C0220FB1 |
:103CC000331F220F331F309355022093540220914B |
:103CD000540230915502C90137FD079663E095956E |
:103CE00087956A95E1F7909346028093450280910B |
:103CF0005A0290915B02820F931F97FD0196959552 |
:103D0000879590935B0280935A02209184033091AF |
:103D10008503821B930B90931B0180931A012091C2 |
:103D20004B0230914C0280911A0190911B01280F97 |
:103D3000391F37FF02C02F5F3F4F359527953093CE |
:103D40004C0220934B0283E02FC11092500281E07D |
:103D500080931001809133029091340201969093E8 |
:103D6000340280933302809178009091790090938F |
:103D70001501809314018091140190911501AA27D7 |
:103D8000BB27A0906002B0906102C0906202D09008 |
:103D90006302A80EB91ECA1EDB1EA0926002B0927A |
:103DA0006102C0926202D0926302809164028F5FCE |
:103DB00080936402823108F4F6C0809116019091DC |
:103DC0001701A0911801B09119017C018D0123E028 |
:103DD000EE0CFF1C001F111F2A95D1F7E81AF90AF3 |
:103DE0000A0B1B0BEA0CFB1C0C1D1D1D80913702DE |
:103DF000992787FD9095A92FB92FBC01CD0126ECFD |
:103E000034E240E050E00E946578DC01CB01E81A22 |
:103E1000F90A0A0B1B0BD801C7010496A11DB11D9D |
:103E2000B7FF05C0D801C7010B96A11DB11D13E056 |
:103E3000B595A795979587951A95D1F78093160113 |
:103E400090931701A0931801B093190180910C066B |
:103E500090910D067C010027F7FC0095102F8091B2 |
:103E6000160190911701A0911801B0911901E81A5B |
:103E7000F90A0A0B1B0BE0920F03F0921003009358 |
:103E800011031093120320913802309139024091AE |
:103E90003A0250913B0257FF04C0215F3F4F4F4F02 |
:103EA0005F4FF4E05595479537952795FA95D1F7EB |
:103EB0008091380290913902A0913A02B0913B0270 |
:103EC000821B930BA40BB50B80933802909339029D |
:103ED000A0933A02B0933B0280913802909139024C |
:103EE000A0913A02B0913B028E0D9F1DA01FB11F01 |
:103EF0008093380290933902A0933A02B0933B0228 |
:103F00008091350290913602AC01E5E0440F551FD7 |
:103F1000EA95E1F7481B590B8091380290913902DC |
:103F2000A0913A02B0913B02B7FF03C00F96A11DCA |
:103F3000B11D74E0B595A795979587957A95D1F7BA |
:103F400020910F0330911003281B390B63E0220FDF |
:103F5000331F6A95E1F7240F351F37FF02C0215E3A |
:103F60003F4F45E0359527954A95E1F73093360266 |
:103F700020933502D601C501D7FE03C00196A11DCD |
:103F8000B11DB595A79597958795809360029093FD |
:103F90006102A0936202B093630289E0809364029D |
:103FA00002C01092500282E080934F0280914F0233 |
:103FB00080937C0080915002882319F08FEC8093CD |
:103FC0007A00FF91EF91BF91AF919F918F917F9177 |
:103FD0006F915F914F913F912F911F910F91FF90A2 |
:103FE000EF90DF90CF90BF90AF900F900FBE0F90EB |
:103FF0001F90189590E2E1E2F1E08FE491938150F7 |
:1040000087FFFCCF089590916702E1E2F1E0E90FAC |
:10401000F11D80839F5F909367020895EF92FF9256 |
:104020000F931F93CF93DF932091650220FF0AC067 |
:1040300080916602882311F0815002C08091200196 |
:104040008093660221FF0CC090916602809120014E |
:10405000981719F41092660203C09F5F909366024E |
:10406000822F992780FF04C081FF02C01092660250 |
:104070000E94FA1F80916602282F332753E0E52E15 |
:1040800050E2F52EC0912804D09129048A3098F48A |
:1040900081E1809367023F932F9382E794E09F939F |
:1040A0008F93FF92EF92FE0109952DB73EB72A5FDD |
:1040B0003F4F2DBF11C080E1809367023F932F9344 |
:1040C00087E794E09F938F93FF92EF92FE0109950B |
:1040D0008DB79EB706968DBF20916602822F9927D5 |
:1040E000AA27BB27FC01429710F00C94BF2AE85A7C |
:1040F000FF4F43E0E42E40E2F42EC0912804D0911B |
:1041000029040C942B79109267028CE794E09F931A |
:104110008F9303E010E2FF92EF92FE01099584E194 |
:10412000809367020F900F900F900F9081E690E0C0 |
:104130009F938F9382E590E09F938F931F921F929E |
:10414000809102016AE00E948478892F99279F93C9 |
:104150008F93809102010E94847899279F938F9377 |
:104160008CE894E09F938F93FF92EF92E091280464 |
:10417000F0912904099588E2809367022DB73EB734 |
:10418000225F3F4F2DBF8DE896E09F938F930E9453 |
:10419000262E99279F938F9381EA94E09F938F9384 |
:1041A000FF92EF92E0912804F091290409958DB7D0 |
:1041B0009EB708968DBF90914104992351F08CE3EE |
:1041C00080936702892F99279F938F938FEA94E0BA |
:1041D00081C690916D02992371F08CE38093670200 |
:1041E000892F99279F938F9386EC94E09F938F93C9 |
:1041F0001F930F9391C08091420484FF07C08CE30A |
:10420000809367028BED94E00C94512A8091920187 |
:1042100090919301069710F00C94C82A8CE3809338 |
:10422000670288EE94E00C94512A8091250633E0D1 |
:10423000E32E30E2F32EC0912804D091290480FFB0 |
:1042400074C01092670280910F0390911003A091A7 |
:104250001103B0911203BC01CD0125E030E040E034 |
:1042600050E00E94D9783F932F9385EF94E09F937D |
:104270008F93FF92EF92FE01099584E1809367028C |
:104280002DB73EB72A5F3F4F2DBF80910B03909112 |
:104290000C03A0910D03B0910E03BC01CD0125E0EC |
:1042A00030E040E050E00E94D9783F932F9382E0C5 |
:1042B00095E09F938F93FF92EF92E0912804F09105 |
:1042C0002904099588E2809367028DB79EB7069608 |
:1042D0008DBF80911401909115019F938F938FE072 |
:1042E00095E09F938F93FF92EF92E0912804F091D5 |
:1042F000290409958CE3809367022DB73EB72A5FA6 |
:104300003F4F2DBF87B599279F938F938CE195E001 |
:104310009F938F93FF92EF92E0912804F0912904EC |
:1043200009958DB79EB7069633C71092670289E24A |
:1043300095E09F938F93FF92EF92FE01099584E1A0 |
:10434000809367020F900F900F900F9088E395E095 |
:104350009F938F93FF92EF92E0912804F0912904AC |
:10436000099588E2809367020F900F900F900F904D |
:1043700081E495E09F938F93FF92EF92E091280460 |
:10438000F091290409958CE3809367020F900F90B8 |
:104390000F900F9080E595E09F938F93FF92EF929F |
:1043A0000C94552A1092670289E595E09F938F93AC |
:1043B00003E010E2FF92EF92FE01099584E1809301 |
:1043C00067020F900F900F900F9080917103909162 |
:1043D0007203A0917303B0917403B7FF04C08150BE |
:1043E0009C4FAF4FBF4F2AE0B595A79597958795FE |
:1043F0002A95D1F7BF93AF939F938F9386E695E06D |
:104400009F938F931F930F93E0912804F0912904B9 |
:10441000099588E2809367022DB73EB7285F3F4F2A |
:104420002DBF8091690390916A03A0916B03B091B5 |
:104430006C03B7FF04C081509C4FAF4FBF4FCAE021 |
:10444000B595A79597958795CA95D1F7BF93AF93E3 |
:104450009F938F9385E795E09F938F931F930F937F |
:10446000E0912804F091290409958CE38093670278 |
:104470008DB79EB708968DBF80912F039091300322 |
:104480009F938F9384E895E09F938F931F930F934F |
:10449000E0912804F091290409952DB73EB72A5FD1 |
:1044A0003F4F11C7109267028091470790914807CC |
:1044B0009F938F9380914507909146079F938F9389 |
:1044C00083E995E09F938F93FF92EF92FE01099508 |
:1044D00084E1809367028DB79EB708968DBF809167 |
:1044E0004B0790914C079F938F9380914907909130 |
:1044F0004A079F938F9383EA95E09F938F93FF9250 |
:10450000EF92E0912804F0912904099588E28093C4 |
:1045100067022DB73EB7285F3F4F2DBF80914F07F1 |
:10452000909150079F938F9380914D0790914E07E4 |
:104530009F938F9383EB95E09F938F93FF92EF92DE |
:10454000E0912804F091290409958CE38093670297 |
:104550008DB79EB708968DBF8091530790915407F1 |
:104560009F938F9380915107909152079F938F93C0 |
:1045700083EC95E0A2C01092670280911A06E82FA2 |
:10458000FF27EE0FFF1FED5BF84F808191819F9316 |
:104590008F9380911906E82FFF27EE0FFF1FED5B29 |
:1045A000F84F808191819F938F9383ED95E09F9346 |
:1045B0008F93FF92EF92FE01099584E18093670249 |
:1045C0008DB79EB708968DBF80911C06E82FFF27F8 |
:1045D000EE0FFF1FED5BF84F808191819F938F93CA |
:1045E00080911B06E82FFF27EE0FFF1FED5BF84FB2 |
:1045F0008081918188589F4F9F938F9383EE95E0A0 |
:104600009F938F93FF92EF92E0912804F0912904F9 |
:10461000099588E2809367022DB73EB7285F3F4F28 |
:104620002DBF80911E06E82FFF27EE0FFF1FED5BC9 |
:10463000F84F8081918182599F4F9F938F938091F2 |
:104640001D06E82FFF27EE0FFF1FED5BF84F80815F |
:10465000918182599F4F9F938F9383EF95E09F9312 |
:104660008F93FF92EF92E0912804F091290409952D |
:104670008CE3809367028DB79EB708968DBF8091BB |
:104680002006E82FFF27EE0FFF1FED5BF84F80811C |
:10469000918182599F4F9F938F9380911F06E82F9E |
:1046A000FF27EE0FFF1FED5BF84F8081918182594C |
:1046B0009F4F9F938F9383E096E09F938F93FF92FA |
:1046C000EF92E0912804F091290409952DB73EB7A7 |
:1046D000285F3F4FF8C51092670283E196E09F93F1 |
:1046E0008F9303E010E2FF92EF92FE010995809113 |
:1046F00002010F900F900F900F908A3009F09DC02B |
:1047000084E18093670280918603909187039C01E6 |
:1047100097FF02C0295F3F4F287F821B930B9F9317 |
:104720008F93809186039091870397FD0796A3E06E |
:1047300095958795AA95E1F79F938F93209186038E |
:104740003091870337FF02C0295F3F4FF3E0359573 |
:104750002795FA95E1F78091470290914802821BD4 |
:10476000930B9F938F9381E296E09F938F931F9378 |
:104770000F93E0912804F0912904099588E2809331 |
:1047800067028DB79EB70A968DBF80918403909182 |
:1047900085039C0197FF02C0295F3F4F287F821B42 |
:1047A000930B9F938F93809184039091850397FD42 |
:1047B0000796E3E095958795EA95E1F79F938F93A8 |
:1047C000209184033091850337FF02C0295F3F4F5A |
:1047D00073E0359527957A95E1F7809145029091A0 |
:1047E0004602821B930B9F938F9382E396E09F93E5 |
:1047F0008F931F930F93E0912804F091290409955A |
:104800008CE3809367022DB73EB7265F3F4F2DBFE5 |
:1048100080918203909183039F938F938091820371 |
:10482000909183032091430230914402821B930BA9 |
:104830009F938F9383E496E0A7C38B3019F0843164 |
:1048400008F4ADC084E18093670280918603909163 |
:1048500087039C0197FF02C0215F3F4F207F821B8F |
:10486000930B97FD0196959587959F938F938091D4 |
:1048700086039091870397FD0F9654E09595879551 |
:104880005A95E1F79F938F93209186033091870388 |
:1048900037FF02C0295F3F4F43E0359527954A9582 |
:1048A000E1F78091470290914802821B930B9F93FE |
:1048B0008F9381E596E09F938F931F930F93E091E1 |
:1048C0002804F0912904099588E2809367022DB7A6 |
:1048D0003EB7265F3F4F2DBF8091840390918503A3 |
:1048E0009C0197FF02C0215F3F4F207F821B930BEB |
:1048F00097FD0196959587959F938F93809184035B |
:104900009091850397FD0F96C4E095958795CA957C |
:10491000E1F79F938F93209184033091850337FFB4 |
:1049200002C0295F3F4FB3E035952795BA95E1F76F |
:104930008091450290914602821B930B9F938F9327 |
:1049400083E696E09F938F931F930F93E091280443 |
:10495000F091290409958CE3809367028DB79EB787 |
:104960000A968DBF809182039091830397FD0196F3 |
:10497000959587959F938F93809182039091830360 |
:104980002091430230914402821B930B9F938F939B |
:1049900085E796E09F938F931F930F9392CE8D3070 |
:1049A00009F0F6C584E1809367028091130199278D |
:1049B0009F938F93809186039091870397FD0F9625 |
:1049C000F4E095958795FA95E1F79F938F93209161 |
:1049D00086033091870337FF02C0295F3F4FE3E032 |
:1049E00035952795EA95E1F7809147029091480225 |
:1049F000821B930B9F938F9384E896E09F938F93F2 |
:104A00001F930F93E0912804F0912904099588E2FF |
:104A1000809367028DB79EB70A968DBF8091120171 |
:104A200099279F938F93809184039091850397FD9D |
:104A30000F9674E0959587957A95E1F79F938F93FC |
:104A4000209184033091850337FF02C0295F3F4FD7 |
:104A500063E0359527956A95E1F78091450290913D |
:104A60004602821B930B9F938F9388E996E09F9356 |
:104A70008F931F930F93E0912804F09129040995D7 |
:104A80008CE3809367022DB73EB7265F3F4F2DBF63 |
:104A90008091110199279F938F9380918203909128 |
:104AA000830397FD0196959587959F938F938091AA |
:104AB0008203909183032091430230914402821B30 |
:104AC000930B9F938F938CEA96E09F938F931F9302 |
:104AD0000F93E0912804F091290409958DB79EB7B2 |
:104AE0000A9656C31092670280EC96E09F938F93CC |
:104AF000FF92EF92FE01099584E1809367020F9087 |
:104B00000F900F900F9080917C0390917D039F9365 |
:104B10008F9380913F02909140029F938F938DECF1 |
:104B200096E09F938F93FF92EF92E0912804F0918B |
:104B30002904099588E2809367022DB73EB7285F64 |
:104B40003F4F2DBF80917A0390917B039F938F936A |
:104B500080914102909142029F938F938CED96E059 |
:104B60009F938F93FF92EF92E0912804F091290494 |
:104B700009958CE3809367028DB79EB708968DBF29 |
:104B800080917603909177039F938F9380913D025C |
:104B900090913E029F938F938BEE96E08ECD109274 |
:104BA000670280911E0190911F016AE070E00E94EF |
:104BB000A4789F938F9380911E0190911F016AE0CA |
:104BC00070E00E94A4787F936F938AEF96E09F93A2 |
:104BD0008F93FF92EF92FE01099584E18093670223 |
:104BE0008DB79EB708968DBF8091800890918108FF |
:104BF0006AE070E00E9490789F938F938091800884 |
:104C0000909181086AE070E00E9490787F936F93A2 |
:104C10008EE097E09F938F93FF92EF92E0912804AC |
:104C2000F0912904099588E2809367022DB73EB779 |
:104C3000285F3F4F2DBF80918208909183089F93FA |
:104C40008F9382E297E09F938F93FF92EF92E09190 |
:104C50002804F091290409958CE3809367028DB7AD |
:104C60009EB706968DBF80918408909185089F938A |
:104C70008F9382E397E02EC11092670284E497E05D |
:104C80009F938F93FF92EF92FE01099584E18093A9 |
:104C900067020F900F900F900F90809143079091B3 |
:104CA00044079F938F938DE497E09F938F93FF9298 |
:104CB000EF92E0912804F0912904099588E280930D |
:104CC00067028DB79EB706968DBF80911D03992709 |
:104CD0009F938F938DE597E09F938F93FF92EF9231 |
:104CE000E0912804F091290409958CE380936702F0 |
:104CF0002DB73EB72A5F3F4F2DBF809142079927BE |
:104D000001979F938F938DE697E002CB10926702F5 |
:104D10008DE797E09F938F93FF92EF92FE010995A5 |
:104D200084E1809367020F900F900F900F90809115 |
:104D30002B0390912C039F938F9385E897E09F938B |
:104D40008F93FF92EF92E0912804F0912904099546 |
:104D500088E2809367022DB73EB72A5F3F4F2DBF91 |
:104D600080912F03909130039F938F9383E997E075 |
:104D70009F938F93FF92EF92E0912804F091290482 |
:104D800009958CE3809367028DB79EB706968DBF19 |
:104D900080912D0390912E039F938F9381EA97E04A |
:104DA00099C01092670280911E0399279F938F9359 |
:104DB0008FEA97E09F938F93FF92EF92FE01099500 |
:104DC00084E1809367028DB79EB706968DBF809170 |
:104DD0001F0399279F938F938BEB97E09F938F935C |
:104DE000FF92EF92E0912804F0912904099588E25E |
:104DF000809367022DB73EB72A5F3F4F2DBF80914A |
:104E0000200399279F938F9387EC97E09F938F932D |
:104E1000FF92EF92E0912804F091290409958CE328 |
:104E2000809367028DB79EB706968DBF8091210350 |
:104E300099279F938F9383ED97E04CC01092670260 |
:104E40008091220399279F938F938FED97E09F93F3 |
:104E50008F93FF92EF92FE01099584E180936702A0 |
:104E60008DB79EB706968DBF8091230399279F9398 |
:104E70008F938BEE97E09F938F93FF92EF92E09149 |
:104E80002804F0912904099588E2809367022DB7E0 |
:104E90003EB72A5F3F4F2DBF8091240399279F93F0 |
:104EA0008F9387EF97E09F938F93FF92EF92E0911C |
:104EB0002804F091290409958CE3809367028DB74B |
:104EC0009EB706968DBF8091250399279F938F9358 |
:104ED00083E098E09F938F93FF92EF92D9CA10924C |
:104EE00067028FE098E09F938F9303E010E2FF92B8 |
:104EF000EF92FE01099584E1809367020F900F9075 |
:104F00000F900F908091C10199279F938F9387E114 |
:104F100098E09F938F93FF92EF92E0912804F09195 |
:104F20002904099588E2809367028DB79EB706969B |
:104F30008DBF80911E0290911F0297FD039695955B |
:104F40008795959587959F938F9385E298E09F939A |
:104F50008F931F930F93E0912804F09129040995F2 |
:104F60008CE3809367022DB73EB72A5F3F4F2DBF7A |
:104F70008091480699279F938F93809147069927A0 |
:104F80009F938F9383E398E09F938F931F930F9347 |
:104F9000E0912804F091290409958DB79EB70896F1 |
:104FA000F7C01092670281E498E09F938F93FF927D |
:104FB000EF92FE01099584E1809367020F900F90B4 |
:104FC0000F900F9080916204992787FD90959F9391 |
:104FD0008F9380916104992787FD90959F938F937C |
:104FE00081E598E09F938F93FF92EF92E0912804E0 |
:104FF000F0912904099588E2809367022DB73EB7A6 |
:10500000285F3F4F2DBF80916304992787FD9095BE |
:105010009F938F938091640499279F938F9381E648 |
:1050200098E09F938F93FF92EF92E0912804F09184 |
:10503000290409958CE3809367028DB79EB7089683 |
:105040008DBF8091680499279F938F938091650409 |
:10505000992787FD90959F938F9381E798E02DCBBB |
:105060001092670281E898E09F938F93FF92EF92EE |
:10507000FE01099584E1809367020F900F900F90D5 |
:105080000F908091FD0699278F7790709F938F9353 |
:105090008091F50699278F7790709F938F938091D9 |
:1050A000ED0699278F7790709F938F938091E506F7 |
:1050B00099278F7790709F938F9381E998E09F93C2 |
:1050C0008F93FF92EF92E0912804F09129040995C3 |
:1050D00088E2809367028DB79EB70C968DBF809152 |
:1050E0001D0799278F7790709F938F938091150755 |
:1050F00099278F7790709F938F9380910D079927B1 |
:105100008F7790709F938F938091050799278F7762 |
:1051100090709F938F9382EA98E09F938F93FF9272 |
:10512000EF92E0912804F091290409958CE3809393 |
:1051300067022DB73EB7245F3F4F2DBF80913D07DB |
:1051400099278F7790709F938F9380913507992738 |
:105150008F7790709F938F9380912D0799278F77EA |
:1051600090709F938F938091250799278F779070E8 |
:105170009F938F9383EB98E09F938F93FF92EF928F |
:10518000E0912804F091290409958DB79EB70C96FB |
:105190008DBFFEC11092670284EC98E09F938F93BD |
:1051A000FF92EF92FE01099584E1809367020F90D0 |
:1051B0000F900F900F9080910107992787FD909590 |
:1051C0009F938F938091F906992787FD90959F93E0 |
:1051D0008F938091F106992787FD90959F938F93E8 |
:1051E0008091E906992787FD90959F938F9383ED92 |
:1051F00098E09F938F93FF92EF92E0912804F091B3 |
:105200002904099588E2809367022DB73EB7245F91 |
:105210003F4F2DBF80912107992787FD90959F9340 |
:105220008F9380911907992787FD90959F938F936E |
:1052300080911107992787FD90959F938F93809177 |
:105240000907992787FD90959F938F9384EE98E0A7 |
:105250009F938F93FF92EF92E0912804F09129049D |
:1052600009958CE3809367028DB79EB70C968DBF2E |
:1052700080914107992787FD90959F938F93809107 |
:105280003907992787FD90959F938F9380913107D8 |
:10529000992787FD90959F938F9380912907992750 |
:1052A00087FD90959F938F9385EF98E09F938F93C1 |
:1052B000FF92EF92E0912804F091290409952DB70F |
:1052C0003EB7245F3F4F2DBF63C11092670286E057 |
:1052D00099E09F938F9303E010E2FF92EF92FE011B |
:1052E000099584E1809367020F900F900F900F90C3 |
:1052F0008091FD06881F8827881F97E0899FC0013D |
:1053000011248D969F938F938091F506881F88278F |
:10531000881F96E0899FC00111248D969F938F93DB |
:105320008091ED06881F8827881F95E0899FC0011E |
:1053300011248D969F938F938091E506881F88276F |
:10534000881F9927880F991F880F991F8D969F9303 |
:105350008F9385E199E09F938F93FF92EF92E09175 |
:105360002804F0912904099588E2809367028DB79B |
:105370009EB70C968DBF80911D07881F8827881FB8 |
:105380009BE0899FC00111248D969F938F938091FC |
:105390001507881F8827881F9AE0899FC00111245C |
:1053A0008D969F938F9380910D07881F8827881F64 |
:1053B00099E0899FC00111248D969F938F938091CE |
:1053C0000507881F8827881F992723E0880F991FC2 |
:1053D0002A95E1F78D969F938F9389E299E09F93A9 |
:1053E0008F93FF92EF92E0912804F09129040995A0 |
:1053F0008CE3809367022DB73EB7245F3F4F2DBFEC |
:1054000080912507881F8827881F9CE0899FC001FD |
:1054100011248D969F938F938DE399E09F938F93A3 |
:10542000FF92EF92E0912804F09129040995809170 |
:105430002D072DB73EB72A5F3F4F2DBF87FF12C004 |
:1054400080E4809367028EE499E09F938F93FF92AC |
:10545000EF92E0912804F091290409950F900F90A4 |
:105460000F900F908091350787FF12C084E48093DE |
:10547000670281E599E09F938F931F930F93E091CB |
:105480002804F091290409950F900F900F900F9028 |
:1054900080913D0787FF7CC088E48093670284E5A4 |
:1054A00099E09F938F931F930F93E0912804F091BD |
:1054B000290409950F900F900F900F9069C01092DA |
:1054C000670287E599E09F938F93FF92EF92FE0129 |
:1054D000099584E1809367020F900F900F900F90D1 |
:1054E0008091F5019091F6019F938F9385E699E065 |
:1054F0009F938F93FF92EF92E0912804F0912904FB |
:10550000099588E2809367028DB79EB706968DBF96 |
:105510008091F7019091F8019F938F9382E799E032 |
:105520009F938F93FF92EF92E0912804F0912904CA |
:10553000099589E4809367022DB73EB72A5F3F4FF4 |
:105540002DBF8FE799E09F938F93FF92EF92E091A9 |
:105550002804F09129040995809165020F900F901D |
:105560000F900F9083FF14C01092F8011092F70172 |
:1055700060E070E08EE090E00E94D42C09C0809141 |
:105580002001281719F4215020932001109266025F |
:1055900010926502E6E0CDB7DEB70C941C79F9995C |
:1055A000FECF92BD81BDF89A80B599270895F999EB |
:1055B000FECF1FBA92BD81BD60BD0FB6F894FA9AB6 |
:1055C000F99A0FBE08954AEA20E030E0261737071F |
:1055D00040F4FC018191480F2F5F3F4F261737079A |
:1055E000C8F3842F99270895EAEA40E050E046176F |
:1055F000570778F49C01F999FECF32BD21BDF89A86 |
:1056000080B5E80F4F5F5F4F2F5F3F4F461757073B |
:1056100090F38E2F9927089581E080931B0682E0F6 |
:1056200080931A0683E08093190684E080931C0619 |
:1056300085E080931D0686E080931E0687E08093B8 |
:105640001F0688E08093200689E0809321068AE087 |
:10565000809322068BE0809323068CE080932406BF |
:10566000089595E59093180680910201843170F0B9 |
:105670008AE08093380610925C068BE180933406B2 |
:105680008EE48093590680935A060DC083E0809380 |
:10569000380680E280935C068EE180933406909316 |
:1056A000590690935A068AE68093250683E08093F4 |
:1056B0007E0681E080933F0610927B06109278066A |
:1056C00068E06093320686EE8093330680E880932C |
:1056D00035065EE1509326068FEF809328069FE003 |
:1056E000909329065093270610922B0660932C0660 |
:1056F00080E480932D0610922E0690932A06109235 |
:1057000041061092420610924306109244061092EF |
:105710005E0610925F06109260061092610638E7EE |
:105720003093450648E24093460672E070937D064A |
:105730009093470627EF2093480685E080934D0617 |
:105740008DE78093500680935106809352063093E4 |
:1057500049069AE590934A0610924B0620934C0610 |
:1057600040934E0610924F068FE58093620683EFBA |
:10577000809364068AEA809366068093670684E1D4 |
:10578000809363068093650682E38093530690932B |
:1057900054068093550610927C068EEF809368061F |
:1057A00024E62093690690936A0690936B06909383 |
:1057B0006C068BE480936D0680936E0680936F0673 |
:1057C0001092700686E08093710660937206909343 |
:1057D0007306509374062093750620937606709393 |
:1057E00077061092790610927A0681E280933C0641 |
:1057F0008DE280933D0690933E060895CF93DF930C |
:105800000E94312B8EE080932F0620E120933006FA |
:105810003CE03093310690E59093360686E980931C |
:1058200037069093390680933A0686E080933B06CC |
:1058300080E2809340068AE580935606909357064F |
:1058400081E08093580620935B0684E680935D0692 |
:10585000AFE7B6E0E1E7F1E0ED01019009923A959A |
:10586000E1F763E770E0CD01875690400E94E32A9C |
:1058700080938B06DF91CF910895CF93DF930E94A1 |
:10588000312B8AE080932F0680E18093300626E05A |
:10589000209331069AE59093360688E78093370681 |
:1058A0009093390680933A0620933B0620E220939A |
:1058B00040069093560680E5809357068CE38093CC |
:1058C000580620935B068BE480935D06AFE7B6E055 |
:1058D0008CE0E8E7F1E0ED01019009928A95E1F7AB |
:1058E00063E770E0CD01875690400E94E32A8093E1 |
:1058F0008B06DF91CF910895CF93DF930E94312BD8 |
:1059000088E080932F0630E13093300626E0209324 |
:10591000310694E69093360688E780933706909395 |
:10592000390680933A0620933B06309340068AE579 |
:105930008093560680E58093570696E49093580628 |
:1059400080E280935B0690935D06AFE7B6E08CE063 |
:10595000E0E8F1E0ED01019009928A95E1F763E753 |
:1059600070E0CD01875690400E94E32A80938B0619 |
:10597000DF91CF910895F999FECF92BD81BDF89A3C |
:1059800080B599270895F999FECF1FBA92BD81BDC0 |
:1059900060BD0FB6F894FA9AF99A0FBE08956FECAD |
:1059A0007AE20E94F376089547ED5AE20E942D773D |
:1059B0000895EF92FF920F931F93CF93C82F8150BA |
:1059C000853008F0C3E084E7C89F8001112480EF90 |
:1059D000E82E8FEFF82EE00EF11E63E770E0C701AE |
:1059E0000E94F42A682F98012D593F4F8FB39927B1 |
:1059F000AC014270507081FDF9CF32BD21BDF89AE3 |
:105A000080B5861711F0CA0121C08FB399279C0178 |
:105A10002270307081FDF9CFF2BCE1BCF89A80B5FC |
:105A2000853511F0C90112C084E7C89FC001112457 |
:105A300040972FEC3AE244E750E0BC0188E196E061 |
:105A40000E94CE760E94AC6781E090E0CF911F91DA |
:105A50000F91FF90EF900895282F863010F025E0E9 |
:105A600003C0882309F421E0F999FECF1FBA82E030 |
:105A700090E092BD81BD20BD0FB6F894FA9AF99AD4 |
:105A80000FBE0895CF93C82F80911806853509F071 |
:105A900042C0C63010F0C5E003C0CC2309F43BC0BF |
:105AA00063E770E088E196E00E94E32A80938B062A |
:105AB00084E7C89FC001112427ED3AE244E750E093 |
:105AC00068E176E040970E940B7727ED3AE24CE0E0 |
:105AD00050E069E176E080E590E00E940B776CE0B1 |
:105AE00070E089E196E00E94E32A282FF999FECF21 |
:105AF0001FBA8CE590E092BD81BD20BD0FB6F89431 |
:105B0000FA9AF99A0FBE8C2F0E942C2D0E94AC6736 |
:105B100081E090E002C080E090E0CF9108956DE4D4 |
:105B200070E088EE93E00E94F42A482F8FB3992703 |
:105B30009C012270307081FDF9CF85E394E092BD25 |
:105B400081BDF89A80B5841779F48FB399279C01A9 |
:105B50002270307081FDF9CF88EE93E092BD81BD57 |
:105B6000F89A80B5813011F0C90108952FEC3AE21E |
:105B70004EE450E068EE73E08CE896E00E94CE764A |
:105B800081E090E0089580918C068130A9F46DE465 |
:105B900070E08CE896E00E94E32A8093D90627ED16 |
:105BA0003AE24EE450E06CE876E088EE93E00E9442 |
:105BB0000B7781E090E0089580E090E00895CF9326 |
:105BC000DF9381E080938C06ECE8F6E08FE01586A9 |
:105BD00016861786108A8150349687FFF8CF80E4A6 |
:105BE0008093990680939A0610929B0680939C0658 |
:105BF00080939D0690EC90939E0610929F06809352 |
:105C0000A0068093A1061092A2069093A3069093FB |
:105C1000A4068093A5061092A6068093A7069093EB |
:105C2000A806ADE8B6E087E0EAE8F1E0ED01019012 |
:105C300009928A95E1F76DE470E0CD0101970E9429 |
:105C4000E32A8093D906DF91CF910895F999FECF89 |
:105C500082E090E092BD81BDF89A80B5282F863011 |
:105C600078F023E0322FF999FECF1FBA82E090E05E |
:105C700092BD81BD30BD0FB6F894FA9AF99A0FBE65 |
:105C8000822F992708951F93CF93C82F162F863000 |
:105C900010F0C5E003C0882309F4C1E08C2F9927D8 |
:105CA0008230910541F08330910544F4019731F43D |
:105CB0000E94FE2B05C00E943D2C02C00E947C2C3D |
:105CC0001123E1F06CE070E080E590E00E94F42A9E |
:105CD000282FF999FECF8CE590E092BD81BDF89A0E |
:105CE00080B5821759F42FEC3AE24CE050E060E5C1 |
:105CF00070E089E196E00E94CE7602C00E940C2BF3 |
:105D00008C2F0E94422DCF911F910895DF92EF9228 |
:105D1000FF920F931F93CF93FF24DF2CEF2C81E092 |
:105D200090E00E94BB2C853539F031E0E32E65E52B |
:105D300081E090E00E94C32C6CE070E080E590E090 |
:105D40000E94F42AC82FF999FECF8CE590E092BD0D |
:105D500081BDF89A80B58C1711F421E0D22EC1E0F4 |
:105D600001E010E0EE2029F48C2F0E94D92C88232A |
:105D7000C1F591E0F92E1F930F9387E899E09F9367 |
:105D80008F9380EF92E19F938F93E0912804F0919D |
:105D9000290409958DB79EB706968DBF023011056F |
:105DA00049F0033011054CF40130110531F40E9423 |
:105DB000FE2B05C00E943D2C02C00E947C2CDD20E1 |
:105DC00059F02FEC3AE24CE050E060E570E089E1F8 |
:105DD00096E00E94CE7602C00E940C2B8C2F0E946F |
:105DE000422DCF5F0F5F1F4FC63008F4BBCFFF209F |
:105DF00019F083E00E942C2D0E94262EC82F0E94AD |
:105E0000D92C8C2F99279F938F938DEA99E09F939C |
:105E10008F9300EF12E11F930F93E0912804F0910C |
:105E2000290409958DB79EB706968DBFEE2021F403 |
:105E30000E948F2D882399F486EC99E09F938F938D |
:105E40001F930F93E0912804F091290409950E9473 |
:105E5000DF2D0E94C32D0F900F900F900F90109286 |
:105E6000170690E0E9E9F6E0CFE080813496181655 |
:105E70000CF49F5FC150C7FFF8CF90931706892F8E |
:105E800099279F938F938DE896E09F938F9387EE4A |
:105E900099E09F938F931F930F93E0912804F091C3 |
:105EA000290409958DB79EB708968DBF88E09AE0C2 |
:105EB0009F938F931F930F93E0912804F0912904EF |
:105EC00009950F900F900F900F90CF911F910F9108 |
:105ED000FF90EF90DF900895982F2FB7F89439989E |
:105EE000389A88B1836088B98091B9008C7F80939B |
:105EF000B9008AE28093B800109272021092700288 |
:105F000010926F02992379F0E2EEF6E08BE01082B6 |
:105F10001182128213821482158216821782815096 |
:105F2000389687FFF4CF78942FBF089510927202AD |
:105F300084E98093BC0080E88093BC001092BD008F |
:105F40001092BA001092BB001092B9001092B800E3 |
:105F500010926E0280E00E946C2F1092BB0085E8C8 |
:105F60008093BC0080916C02826080936C020895E3 |
:105F70001F920F920FB60F9211242F933F934F93BE |
:105F80005F938F939F93EF93FF9380917202282FDB |
:105F90003327442755278F5F80937202F9012731F9 |
:105FA000310508F0C2C2E659FF4F0C942B7981E00D |
:105FB00080936E0209C0809170028C3090F48091C1 |
:105FC00070028F5F8093700280917002E82FFF272C |
:105FD000EE0FFF1FEE0FFF1FE457F94F85851816D0 |
:105FE00054F7809170028C3070F010926B02109216 |
:105FF0006A021092700285E08093720280916F02B3 |
:10600000880F8D5A04C080917002880F8E5A809339 |
:10601000BB0085E87FC280917002E82FFF2783E0F4 |
:10602000EE0FFF1F8A95E1F7EE51F94F81818093C2 |
:10603000BB0085E88093BC0080917002E82FFF27A9 |
:10604000EE0FFF1FEE0FFF1FEE0FFF1FEE51F94F78 |
:10605000808180FF91C080917002E82FFF27EE0FB2 |
:10606000FF1FEE0FFF1FEE0FFF1FEE51F94F828152 |
:10607000882329F080911706873008F46CC280913C |
:106080006A0290916B02892B09F065C280916802C7 |
:1060900090916902892B09F05EC26EC080917002F6 |
:1060A00021E030E002C0220F331F8A95E2F7809191 |
:1060B00068029091690228233923232B79F080917B |
:1060C0007002E82FFF27EE0FFF1FEE0FFF1FEE0FEE |
:1060D000FF1FEE51F94F80E184830DC08091700263 |
:1060E000E82FFF27EE0FFF1FEE0FFF1FEE0FFF1F22 |
:1060F000EE51F94F148280917002E82FFF2753E090 |
:10610000EE0FFF1F5A95E1F7EE51F94F8481282FCA |
:10611000332743E0220F331F4A95E1F78091700245 |
:10612000E82FFF2793E0EE0FFF1F9A95E1F7EE515E |
:10613000F94F82818770822B8093BB0085E8809322 |
:10614000BC002091700281E090E002C0880F991F8E |
:106150002A95E2F720916A0230916B028223932301 |
:10616000892B51F08AED96E0909376028093750228 |
:1061700088E080937702EFC184E089C1E0917502E5 |
:10618000F091760281918093BB0085E88093BC00FA |
:10619000F0937602E09375028091770281508093AC |
:1061A0007702882309F4D7C183E071C18091B900D7 |
:1061B000803351F580917302882329F48091700215 |
:1061C0008F5F8093730280917002E82FFF2783E036 |
:1061D000EE0FFF1F8A95E1F7EE51F94F8381992762 |
:1061E0008F7790708F3791057CF480917002E82F43 |
:1061F000FF27EE0FFF1FEE0FFF1FEE0FFF1FEE51E9 |
:10620000F94F83818F5F83831092720284E98093B8 |
:10621000BC008AE090E0909393018093920180917A |
:1062200070028F5F80937002109272026DC1809134 |
:10623000B9008034C9F180916F02E82FFF27EE0F7B |
:10624000FF1FEE0FFF1FEE0FFF1FEE51F94F83816F |
:106250008F77838380916F028F5F80936F0280912D |
:106260006F028C30A0F010926F02109269021092AF |
:106270006802809174028F5F809374028C3038F0D2 |
:106280001092740280916C028D7F80936C028091D9 |
:106290006C02816080936C021092720284E9809398 |
:1062A000BC0010926E0273C080916F02E82FFF272E |
:1062B000EE0FFF1FEE0FFF1FEE0FFF1FEE51F94F06 |
:1062C00083818068838380916F02E82FFF27EE0F20 |
:1062D000FF1FEE0FFF1FEE0FFF1FEE51F94F8081E2 |
:1062E00080FF2FC080916F02E82FFF2753E0EE0F51 |
:1062F000FF1F5A95E1F7EE51F94F848199270097D6 |
:1063000051F04097D9F58AED96E09093760280930C |
:10631000750288E031C080916F02992743E0880FB1 |
:10632000991F4A95E1F78951994F9093760280938E |
:10633000750290916F02809174029817E1F483E0E6 |
:106340001BC080916F02992733E0880F991F3A95FF |
:10635000E1F78951994F909376028093750280916D |
:106360006C0281FD06C090916F02809174029817B3 |
:1063700011F482E001C081E080937702809177027E |
:10638000813011F485E801C085EC8093BC008091D8 |
:10639000730280936D0210927302DDC0E09175026A |
:1063A000F09176028091BB0080838091750290917C |
:1063B000760201969093760280937502809177021F |
:1063C000815080937702823010F085EC5DC081307F |
:1063D00011F485E859C080916C0281FF2DC0809135 |
:1063E000E90280FD1DC080916F02E82FFF2723E0A6 |
:1063F000EE0FFF1F2A95E1F7EE51F94F86818A3F94 |
:1064000079F480916F02E82FFF2793E0EE0FFF1FD2 |
:106410009A95E1F7EE51F94F8081816080830CC03D |
:1064200080916F02E82FFF2783E0EE0FFF1F8A9510 |
:10643000E1F7EE51F94F108280916F028F5F8093E8 |
:106440006F0280916F028C30A0F010926F02109258 |
:10645000690210926802809174028F5F80937402C7 |
:106460008C3038F01092740280916C028D7F809392 |
:106470006C021092720284E98093BC0080916C02DD |
:10648000816080936C0265C08093BC0086E080933D |
:10649000720261C088E9BBCD80917102880F805F74 |
:1064A000B6CD8091710299278130910561F08230DB |
:1064B00091051CF4892B21F04EC0029739F04BC096 |
:1064C00080911301A4CD80911201A1CD8091110181 |
:1064D0009ECD80E89CCD1092720284E98093BC002E |
:1064E00010926E028AE090E0909393018093920163 |
:1064F00080917102823088F4809171028F5F809365 |
:10650000710282E18093720280916C028E7F80938F |
:106510006C0285EA8093BC001EC0109271028091CB |
:106520006C02816080936C0216C01092720284E942 |
:106530008093BC0080916C02816080936C028AE041 |
:1065400090E09093930180939201109270021092C8 |
:106550006F0210926E02FF91EF919F918F915F9168 |
:106560004F913F912F910F900FBE0F901F90189554 |
:106570001F93CF93DF93182F80911403882321F466 |
:1065800080910302882319F081E090E097C01D30CC |
:1065900008F092C01123B1F0E12FFF2723E0EE0FA6 |
:1065A000FF1F2A95E1F7EE51F94F35978081359617 |
:1065B00088230CF081C03897808180FD03C083E080 |
:1065C00090E07CC08091DA06823019F084E090E09F |
:1065D00075C067E070E08AED96E00E94E32A909132 |
:1065E000E106891719F085E090E068C080ED97E03A |
:1065F0000E941617EC0180916C0280FD05C0CE014F |
:106600000E941F178823B9F3112319F48FEF90E02C |
:106610000BC0212F33272150304081E090E002C091 |
:10662000880F991F2A95E2F790936B0280936A0274 |
:10663000A1E0B0E0E2EEF6E040E050E06BE0CD013A |
:10664000042E02C0880F991F0A94E2F720916A0273 |
:1066500030916B0282239323892B11F011821282D5 |
:1066600061504F5F5F4F389667FFE9CF109270021D |
:106670001092720280916C028E7F80936C0285EA88 |
:106680008093BC0080916C0280FD05C0CE010E9409 |
:106690001F178823B9F380916A0290916B02892BAE |
:1066A00029F0CE010E941F17882311F380916A02FE |
:1066B00090916B02009711F082E090E0DF91CF9112 |
:1066C0001F9108950F931F93CF93DF93982F80917D |
:1066D0001403882321F480910302882319F081E0B8 |
:1066E00090E092C09D30A0F4992319F486E090E0E8 |
:1066F0008BC0C92FDD27FE0133E0EE0FFF1F3A9557 |
:10670000E1F7EE51F94F35978081359687FD03C04B |
:1067100082E090E079C03897808180FD03C083E0FB |
:1067200090E072C080ED97E00E9416178C01809176 |
:106730006C0280FD05C0C8010E941F178823B9F3B1 |
:10674000219721E030E0C90102C0880F991FCA9546 |
:10675000E2F79093690280936802D901E2EEF6E0D5 |
:1067600040E050E06BE0CD01042E02C0880F991F7D |
:106770000A94E2F720916802309169028223932300 |
:10678000892B11F01182128261504F5F5F4F389652 |
:1067900067FFE9CF10926F021092DA061092E106BD |
:1067A0001092720280916C028E7F80936C0285EA57 |
:1067B0008093BC0080916C0280FD05C0C8010E94DE |
:1067C0001F178823B9F38091680290916902892B81 |
:1067D00029F0C8010E941F17882311F38091DA065F |
:1067E000823019F084E090E00FC067E070E08AED3D |
:1067F00096E00E94E32A9091E106891719F085E05E |
:1068000090E002C080E090E0DF91CF911F910F9166 |
:10681000089589E1A7E7B7E0E3E4F7E01182108289 |
:10682000329611961C921E921296815087FFF6CFD7 |
:1068300010928303109282031092850310928403B6 |
:10684000109287031092860308951F920F920FB63D |
:106850000F9211240F931F932F933F934F935F93A6 |
:106860006F937F938F939F93AF93BF93CF93DF9358 |
:10687000EF93FF9380917E0682FDCFC0409186000A |
:10688000509187008091790290917A02481B590BB0 |
:10689000809186009091870090937A02809379028C |
:1068A000CA018D549440A0917B02B0917C02835F19 |
:1068B0009A4178F480917B0280934207149714F0F8 |
:1068C0001092940181E090E090937C0280937B028F |
:1068D00007C2AD30B1050CF003C2CA018B5F904016 |
:1068E000845B914008F074C0425D5140FD01EA0FA5 |
:1068F000FB1FED5BF84F80819181FA01E81BF90BDA |
:10690000CF01F7FF03C0909581959F4F06975CF4E8 |
:1069100080911D03883C20F480911D03865F01C097 |
:1069200088EC80931D03FD01EA0FFB1FED5BF84F20 |
:10693000808191819C01220F331F280F391F240F62 |
:10694000351F37FF02C02D5F3F4FE901D595C79531 |
:10695000D595C795CA0101968C179D0714F4219708 |
:1069600006C041505040C417D5070CF421968091C1 |
:106970001D03833CE0F08D010A0F1B1FF801ED5B46 |
:10698000F84F808191819E01281B390BC90163E07A |
:1069900070E00E94A478CB01880F991F860F971F83 |
:1069A0000958184FD80111969C938E9307C0AA0FCF |
:1069B000BB1FA958B84F11961C921E92E0917B0202 |
:1069C000F0917C02EE0FFF1FED5BF84FD183C08387 |
:1069D00020917B0230917C022F5F3F4F30937C02ED |
:1069E00020937B0280910201843108F079C1253027 |
:1069F000310511F45D9A01C05D9880917B02909100 |
:106A00007C028630910511F45C9A01C05C9807976E |
:106A100011F45B9A65C15B9863C140918600509107 |
:106A2000870080917D0290917E02481B590B8091D6 |
:106A300086009091870090937E0280937D02CA0128 |
:106A40008D5494406091E702835F9A4108F07AC0C8 |
:106A50006093780280917802843008F453C090915A |
:106A6000420780917802981709F04CC05091E802D3 |
:106A70005B3008F43FC0109294011092E70240E0AE |
:106A80005F31C0F0E42FFF27EE0FFF1F9F012D5451 |
:106A90003D4FDF01AD5BB84F8D919C91D9018D9336 |
:106AA0009C93DF01A958B84F8D919C91E353FD4F02 |
:106AB00091838083E42FFF27EE0FFF1F9F012D5B43 |
:106AC000384FDF01A158BD4F8D919C91D90111968E |
:106AD0009C938E93DF01A756BD4F8D919C91E958F1 |
:106AE000F84F91838083842F8F5F482F8D3040F241 |
:106AF0008093E7028091E8028F3FB9F08F5F809327 |
:106B0000E80213C08091E802853620F08AE0809385 |
:106B1000E80202C01092E802809102018A3011F06E |
:106B2000843110F0289A01C0289881E08093E70210 |
:106B300080911403882309F0D3C080917802809358 |
:106B40004207CEC06D3008F0A3C0CA018B5F9040F1 |
:106B5000845B914008F07EC0425D5140E62FFF27E4 |
:106B6000EE0FFF1FE158FD4F80819181FA01E81B74 |
:106B7000F90BCF0105960B97B0F48091E8028A31AA |
:106B800020F080911D03865F05C08B3028F0809136 |
:106B90001D038E5F80931D0380911D03893C18F0B7 |
:106BA00088EC80931D03E62FFF27EE0FFF1FE158AF |
:106BB000FD4F808191819C01220F331F280F391FC7 |
:106BC000240F351F37FF02C02D5F3F4FE901D595D8 |
:106BD000C795D595C795CA0101968C179D0714F4E2 |
:106BE000219706C041505040C417D5070CF4219698 |
:106BF00080911D038E3BD8F0E62FFF27EE0FFF1F7D |
:106C0000DF01A158BD4F8D919C919E01281B390B2E |
:106C1000C90163E070E00E94A478CB01880F991F3E |
:106C2000860F971FE756FD4F9183808308C0E62F9C |
:106C3000FF27EE0FFF1FE756FD4F11821082809154 |
:106C4000E702E82FFF27EE0FFF1FE158FD4FD1832A |
:106C5000C08309C0809102018A3011F0843110F0A4 |
:106C6000289A01C0289880910201843188F480918B |
:106C7000E702853011F45D9A05C05D98863011F405 |
:106C80005C9A05C05C98873011F45B9A01C05B98F0 |
:106C90008091E702843120F48F5F8093E70220C067 |
:106CA0008431F1F4809102018A3011F0843110F0C6 |
:106CB000289A01C028988EE18093E7022CE0C7E76C |
:106CC000D7E0A3EBB2E0E3E4F7E08D919D919183EF |
:106CD00080833296198218822296215027FFF5CFA1 |
:106CE000FF91EF91DF91CF91BF91AF919F918F91E4 |
:106CF0007F916F915F914F913F912F911F910F91D4 |
:106D00000F900FBE0F901F901895EF92FF920F9368 |
:106D10001F93809134069927880F991F880F991F18 |
:106D20007C010027F7FC0095102F80917103909152 |
:106D30007203A0917303B0917403BC01CD01A8014B |
:106D400097010E94D9783093C4052093C3058091A0 |
:106D5000690390916A03A0916B03B0916C03BC012D |
:106D6000CD01A80197010E94D9783093C6052093E0 |
:106D7000C5058091FD079091FE0797FD03969595B7 |
:106D80008795959587959093C8058093C7058091C1 |
:106D90000D0890910E0897FD03969595879595950A |
:106DA00087959093CA058093C9058091820390913D |
:106DB00083032091430230914402821B930B9093F2 |
:106DC000CC058093CB0580910F0390911003A09187 |
:106DD0001103B0911203BC01CD0125E030E040E089 |
:106DE00050E00E94D9783093CE052093CD05809154 |
:106DF0003D0290913E029093D0058093CF05809103 |
:106E00002F03909130039093D4058093D305809104 |
:106E10001E0190911F019093D6058093D505809116 |
:106E20001D0399279093D8058093D7058091090871 |
:106E300090910A08A0910B08B0910C08209196013E |
:106E4000309197014091980150919901BC01CD0179 |
:106E50000E94D9783093DA052093D9058091E30612 |
:106E600099279093DC058093DB058091EB069927A9 |
:106E70009093DE058093DD058091F306992790932A |
:106E8000E0058093DF058091FB0699279093E2054A |
:106E90008093E10580911E0290911F029093EC0572 |
:106EA0008093EB0580918008909181089093F00584 |
:106EB0008093EF0580918408909185089093F20566 |
:106EC0008093F1058091860899279093FE05809321 |
:106ED000FD058091F9039091FA0390930006809349 |
:106EE000FF058091F7039091F80390930206809339 |
:106EF000010680914104882321F480914204882373 |
:106F000021F08091C205816003C08091C2058E7F0F |
:106F10008093C2051F910F91FF90EF9008951F93EA |
:106F2000CF93DF93182FEB01809114038823A1F4F2 |
:106F300011501F3F89F0D0932502C0932402809105 |
:106F4000240290912502892BD1F7CE018C0F9D1F31 |
:106F50000E942B17115078F7DF91CF911F91089560 |
:106F6000CF93DF93809102018D3011F40E94371B83 |
:106F700010927A0080914702909148029093C40742 |
:106F80008093C30780914502909146029093B50784 |
:106F90008093B40780914302909144029093030838 |
:106FA0008093020820913F0230914002C901880F6E |
:106FB000991F880F991F820F931F820F931F909321 |
:106FC000FE078093FD072091410230914202C901E2 |
:106FD000880F991F880F991F820F931F820F931F8D |
:106FE00090930E0880930D088FEC80937A00AEE1A9 |
:106FF000B3E0CDE1D6E097E08991E82FFF27EE0FCF |
:10700000FF1FED5BF84F0190F081E02DE259FF4F3B |
:107010001E161F061CF0E0E0F0E005C0EF3FF10592 |
:1070200014F0EFEFF0E08C91282F3327E217F307ED |
:1070300014F4815004C02E173F0714F48F5F8C9313 |
:107040009150119697FFD8CF809159069927AA277A |
:10705000BB27BC01CD0124EC39E040E050E00E94A8 |
:107060006578DC01CB018093D5019093D601A09384 |
:10707000D701B093D80180915A069927AA27BB2738 |
:10708000BC01CD010E946578DC01CB018093D10168 |
:107090009093D201A093D301B093D401DF91CF910B |
:1070A0000895A0E0B0E0E7E5F8E30C94FA78882EC4 |
:1070B000C0E0D0E07E016E0110924104469AD09368 |
:1070C0007D03C0937C03D0937B03C0937A03D0935A |
:1070D0007703C0937603D0938703C0938603D0933E |
:1070E0008503C0938403D0938303C09382031092DB |
:1070F000BE011092BD01109237020E94B03784E6A3 |
:1071000090E00E9438170E94B0378091250680FFDA |
:1071100010C08091140190911501875B934038F461 |
:1071200080911401909115018E5E924010F40E949E |
:10713000B51A0FE18AE090E00E943817809143026F |
:1071400090914402C80FD91F809147029091480244 |
:10715000E80EF91E8091450290914602C80ED91E94 |
:10716000015007FFE7CF9701205F3F4F36952795E6 |
:10717000369527953093870320938603C601409662 |
:10718000969587959695879590938503809384032C |
:107190006096F5E0D695C795FA95E1F7D09383030D |
:1071A000C0938203909381038093800330937F0385 |
:1071B00020937E03882009F441C08091FD079091BF |
:1071C000FE0797FF03C0909581959F4F6CE070E09C |
:1071D0000E94A4789B0170937D0360937C0380914F |
:1071E0000D0890910E0897FF03C0909581959F4FD1 |
:1071F0006CE070E00E94A47870937B0360937A0344 |
:1072000080910A0690910B06909377038093760302 |
:10721000B90184E090E00E94D42C60917A037091CF |
:107220007B0386E090E00E94D42C609176037091FD |
:10723000770388E090E00E94D42C65C084E090E061 |
:107240000E94CF2C90937D0380937C0386E090E096 |
:107250000E94CF2C90937B0380937A0388E090E088 |
:107260000E94CF2C9C0190937703809376038091AA |
:107270007C0390917D038150984050F480917A0373 |
:1072800090917B038150984018F421503440D8F1FC |
:1072900089E29AE09F938F9380EF92E19F938F937F |
:1072A000E0912804F091290409958091FD079091BF |
:1072B000FE0797FF03C0909581959F4F6CE070E0AB |
:1072C0000E94A47870937D0360937C0380910D08E5 |
:1072D00090910E0897FF03C0909581959F4F6CE0A9 |
:1072E00070E00E94A47870937B0360937A0380918E |
:1072F0000A0690910B0690937703809376030F9084 |
:107300000F900F900F901092C4071092C307109225 |
:10731000B5071092B407109203081092020884E691 |
:1073200090E00E94381780913F02909140029C01AA |
:10733000220F331F220F331F280F391F280F391F29 |
:107340003093FE072093FD07809141029091420205 |
:107350008C01000F111F000F111F080F191F080FBC |
:10736000191F10930E0800930D0880913406C82E43 |
:10737000DD24EE24FF24442737FD4095542FC70118 |
:10738000B6010E9465784B015C01609371037093B4 |
:10739000720380937303909374039801442737FD1D |
:1073A0004095542FC701B6010E946578DC01CB01DE |
:1073B0008093690390936A03A0936B03B0936C036B |
:1073C00080924D0390924E03A0924F03B0925003CF |
:1073D0008093450390934603A0934703B0934803DB |
:1073E00010924103109242031092430310924403FF |
:1073F0008091160190911701A0911801B091190187 |
:1074000090930D0680930C0610923602109235026E |
:10741000109231031092320310923303109234030E |
:1074200080912F039091300390932E0380932D032E |
:107430000E94356382E390E09093250280932402BA |
:10744000809159069927AA27BB27BC01CD0124ECBE |
:1074500039E040E050E00E946578DC01CB018856BD |
:10746000954CAF4FBF4F8093D5019093D601A09319 |
:10747000D701B093D80180915A069927AA27BB2734 |
:10748000BC01CD010E946578DC01CB018856954C8A |
:10749000AF4FBF4F8093D1019093D201A093D301FE |
:1074A000B093D40110929B0110929A0180912F0306 |
:1074B00090913003AA2797FDA095BA2F20919601AD |
:1074C000309197014091980150919901BC01CD01F3 |
:1074D0000E946578DC01CB018093090890930A082B |
:1074E000A0930B08B0930C08109228031092270366 |
:1074F00081E0809301010E94AC678091E902846081 |
:107500008093E9028FEF80937B0810927C0880E2E1 |
:1075100080937D08CEE1D3E0ADE1B6E007E08D9148 |
:10752000E82FFF27EE0FFF1FED5BF84F8081918161 |
:1075300082598993015007FFF2CF84E680931D039F |
:1075400080912202882311F0469A579A80918603EF |
:107550009091870380569940815C9B4228F08091EE |
:10756000410481608093410480918403909185035C |
:1075700080569940815C9B4228F080914104826052 |
:107580008093410480918203909183038C529140B7 |
:107590008957954028F0809141048460809341048C |
:1075A00080917C0390917D038C529140835C91404B |
:1075B00028F08091410488608093410480917A038F |
:1075C00090917B038C529140835C914028F0809194 |
:1075D0004104806180934104809176039091770308 |
:1075E000805092408355914028F080914104806200 |
:1075F00080934104ECE0CDB7DEB70C941679A3E19B |
:10760000B0E0E5E0FBE30C94F47880918203909184 |
:1076100083032091430230914402821B930B909389 |
:1076200003088093020880914D0290914E0297FDCD |
:1076300007969C0113E0359527951A95E1F730934D |
:10764000C4072093C30780914B0290914C0297FD91 |
:107650000796B3E095958795BA95E1F79093B507AE |
:107660008093B4073093CF072093CE079093C7073A |
:107670008093C6078091FD079091FE07AC01440FEF |
:10768000551F480F591F20913F0230914002C901F8 |
:10769000880F991F880F991F820F931F820F931FC6 |
:1076A000480F591F57FF02C04D5F5F4F55954795D3 |
:1076B000559547955093FE074093FD0780910D081F |
:1076C00090910E08AC01440F551F480F591F20918F |
:1076D000410230914202C901880F991F880F991FFA |
:1076E000820F931F820F931F480F591F57FF02C02D |
:1076F0004D5F5F4F559547955595479550930E08AB |
:1077000040930D0820913F0230914002C901880F3B |
:10771000991F880F991F820F931F820F931F9C013F |
:10772000442737FD4095542F809161039091620367 |
:10773000A0916303B0916403820F931FA41FB51F30 |
:107740008093610390936203A0936303B0936403F7 |
:107750002091410230914202C901880F991F880F80 |
:10776000991F820F931F820F931F9C01442737FD9F |
:107770004095542F80915D0390915E03A0915F032B |
:10778000B0916003820F931FA41FB51F80935D0308 |
:1077900090935E03A0935F03B09360038091D8073A |
:1077A0009091D90720913F0230914002820F931FA0 |
:1077B0009093D9078093D807809105089091060887 |
:1077C0002091410230914202820F931F909306084C |
:1077D00080930508809178039091790301969093A6 |
:1077E00079038093780380910A0690910B0620918B |
:1077F000760330917703821B930B9C01442737FD5E |
:107800004095542F8091590390915A03A0915B03A6 |
:10781000B0915C03820F931FA41FB51F809359037F |
:1078200090935A03A0935B03B0935C038FEC809317 |
:107830007A00109210012091490330914A0340913F |
:107840004B0350914C0329873A874B875C87295417 |
:107850003B46414050402CF028E43BE641E050E0FC |
:107860000DC089859A85AB85BC85885B9449AE4FF0 |
:10787000BF4F4CF428EB34E94EEF5FEF2D833E838E |
:107880004F83588708C089859A85AB85BC858D83D1 |
:107890009E83AF83B887209151033091520340916A |
:1078A0005303509154032D873E874F87588B29549B |
:1078B0003B46414050402CF028E43BE641E050E09C |
:1078C0000DC08D859E85AF85B889885B9449AE4F84 |
:1078D000BF4F4CF428EB34E94EEF5FEF29833A8336 |
:1078E0004B835C8308C08D859E85AF85B88989836D |
:1078F0009A83AB83BC83A0910208B0910308BB8B31 |
:10790000AA8BFD01CF01AA2797FDA095BA2FA090C1 |
:107910004103B0904203C0904303D0904403A80EAB |
:10792000B91ECA1EDB1EA0924103B0924203C09250 |
:107930004303D0924403E0900908F0900A080091B4 |
:107940000B0810910C08E80EF91E0A1F1B1FE0928D |
:107950000908F0920A0800930B0810930C08F091A4 |
:107960000403F98BFF2309F098C180910303882356 |
:1079700009F093C18091250686FF8FC18091B407DD |
:107980009091B507AA2797FDA095BA2FBC01CD010C |
:1079900029813A814B815C810E9465789B01AC0111 |
:1079A00097FF04C02150384F4F4F5F4FBBE05595B4 |
:1079B000479537952795BA95D1F78091BD01682EE7 |
:1079C000772488249924CA01B901A40193010E9453 |
:1079D0006578DC01CB018093920390939303A0938D |
:1079E0009403B0939503B7FF04C08150904FAF4FFD |
:1079F000BF4F1C012D01ACE0559447943794279458 |
:107A0000AA95D1F720929203309293034092940367 |
:107A1000509295038091C3079091C407AA2797FDC0 |
:107A2000A095BA2FBC01CD012D813E814F81588593 |
:107A30000E94657897FF04C06150784F8F4F9F4F29 |
:107A4000FBE09595879577956795FA95D1F7A40111 |
:107A500093010E946578DC01CB018093960390939B |
:107A60009703A0939803B0939903B7FF04C0815084 |
:107A7000904FAF4FBF4F9C01AD01ECE0559547953E |
:107A800037952795EA95D1F720939603309397037E |
:107A9000409398035093990380919203909193039C |
:107AA0009093AC078093AB078091960390919703D6 |
:107AB0009093B0078093AF07221933094409550901 |
:107AC0002093960330939703409398035093990320 |
:107AD000E20EF31E041F151FE0920908F0920A0837 |
:107AE00000930B0810930C088091BC018823B1F41B |
:107AF00057FF04C02F5F3F4F4F4F5F4F559547953E |
:107B000037952795A21AB30AC40AD50AA092410351 |
:107B1000B0924203C0924303D09244032A893B8926 |
:107B200079010027F7FC0095102F80919603909122 |
:107B30009703A0919803B0919903E80EF91E0A1FCC |
:107B40001B1FC801B70129813A814B815C810E94CA |
:107B500065789B01AC0197FF04C02150384F4F4F0F |
:107B60005F4F6BE055954795379527956A95D1F707 |
:107B70008091BE01A82EBB24CC24DD24CA01B9010A |
:107B8000A60195010E946578DC01CB0180938A03F0 |
:107B900090938B03A0938C03B0938D03B7FF04C025 |
:107BA0008150904FAF4FBF4F3C014D013CE0959449 |
:107BB0008794779467943A95D1F760928A0370928C |
:107BC0008B0380928C0390928D03C801B7012D81A5 |
:107BD0003E814F8158850E94657897FF04C06150AF |
:107BE000784F8F4F9F4F2BE09595879577956795A9 |
:107BF0002A95D1F7A60195010E946578DC01CB0199 |
:107C000080938E0390938F03A0939003B09391037E |
:107C1000B7FF04C08150904FAF4FBF4FAC01BD01C3 |
:107C20008CE075956795579547958A95D1F7409360 |
:107C30008E0350938F0360939003709391032A896E |
:107C40003B8937FF03C0309521953F4F21343105E3 |
:107C5000E4F1D401C30197FE07C0B095A0959095BB |
:107C600081959F4FAF4FBF4F81389105A105B10559 |
:107C700084F4DB01CA0177FF07C0B095A095909509 |
:107C800081959F4FAF4FBF4F81389105A105B10539 |
:107C9000E4F081E08093290318C01092B00710929D |
:107CA000AF071092AC071092AB0710928E031092A0 |
:107CB0008F03109290031092910310928A031092F6 |
:107CC0008B0310928C0310928D0380918E03909100 |
:107CD0008F03A0919003B0919103BC01CD0124E6E4 |
:107CE00030E040E050E00E94D978E0908A03F090C4 |
:107CF0008B03E21AF30AF092C207E092C107809167 |
:107D00008A0390918B03A0918C03B0918D03BC01E9 |
:107D1000CD0124E630E040E050E00E94D978DA015D |
:107D2000C90120918E0330918F038C01021B130B2C |
:107D30001093B7070093B607809196019091970131 |
:107D4000A0919801B0919901BC01CD0128E631E0E4 |
:107D500040E050E00E9465782091090830910A08BF |
:107D600040910B0850910C08261737074807590710 |
:107D700064F0261B370B480B590B209309083093EE |
:107D80000A0840930B0850930C0820910908309181 |
:107D90000A0840910B0850910C0857FF0CC0260FA1 |
:107DA000371F481F591F2093090830930A08409332 |
:107DB0000B0850930C086091B4077091B5076E0DD5 |
:107DC0007F1D9B01442737FD4095542F809145032B |
:107DD00090914603A0914703B0914803820F931FEF |
:107DE000A41FB51F8093450390934603A0934703B8 |
:107DF000B09348038091090390910A03681B790BA3 |
:107E0000CB01AA2797FDA095BA2F29853A854B85E6 |
:107E10005C85820F931FA41FB51F80934903909325 |
:107E20004A03A0934B03B0934C03C090D101D09070 |
:107E3000D201E090D301F090D401C816D906EA0629 |
:107E4000FB06C4F488EA91E6A0E0B0E08C199D0935 |
:107E5000AE09BF098093490390934A03A0934B0353 |
:107E6000B0934C038093450390934603A09347033C |
:107E7000B093480322273327A9012C193D094E0945 |
:107E80005F098091490390914A03A0914B03B091FF |
:107E90004C0382179307A407B507B4F4D701C601B2 |
:107EA000885A9146A040B0408093490390934A037A |
:107EB000A0934B03B0934C038093450390934603E8 |
:107EC000A0934703B09348036091C3077091C40720 |
:107ED000600F711F9B01442737FD4095542F8091FF |
:107EE0004D0390914E03A0914F03B0915003820F28 |
:107EF000931FA41FB51F80934D0390934E03A0932F |
:107F00004F03B09350038091070390910803681BBF |
:107F1000790BCB01AA2797FDA095BA2F2D853E8519 |
:107F20004F855889820F931FA41FB51F809351035B |
:107F300090935203A0935303B0935403E090D50160 |
:107F4000F090D6010091D7011091D801E816F906FA |
:107F50000A071B07C4F488EA91E6A0E0B0E08E1996 |
:107F60009F09A00BB10B8093510390935203A093F0 |
:107F70005303B093540380934D0390934E03A09307 |
:107F80004F03B093500322273327A9012E193F092D |
:107F9000400B510B8091510390915203A0915303D8 |
:107FA000B091540382179307A407B507B4F4D8011E |
:107FB000C701885A9146A040B040809351039093E6 |
:107FC0005203A0935303B093540380934D039093B3 |
:107FD0004E03A0934F03B0935003809141039091BF |
:107FE0004203A0914303B0914403809355039093BF |
:107FF0005603A0935703B093580380915103909177 |
:108000005203A0915303B091540380937103909352 |
:108010007203A0937303B09374038091490390910A |
:108020004A03A0914B03B0914C0380936903909352 |
:108030006A03A0936B03B0936C0380914D039091FE |
:108040004E03A0914F03B091500380936D03909322 |
:108050006E03A0936F03B0937003809145039091DA |
:108060004603A0914703B091480380936503909322 |
:108070006603A0936703B093680380911C019091FD |
:108080001D0197FD079603E0959587950A95E1F701 |
:108090009093C4078093C30780911A0190911B01AC |
:1080A00097FD079613E0959587951A95E1F79093BC |
:1080B000B5078093B40780914702909148020F97CB |
:1080C00034F488E19CEF9093C4078093C3078091B8 |
:1080D000470290914802079734F480E398EF909319 |
:1080E000C4078093C307209102012A30A9F480912C |
:1080F000470290914802835F934034F088EE93E00A |
:108100009093C4078093C3078091470290914802DF |
:108110008A5F9340DCF014C080914702909148023E |
:10812000815D974034F088EE93E09093C40780938C |
:10813000C3078091470290914802805E974034F0D7 |
:1081400080ED97E09093C4078093C3078091450228 |
:10815000909146020F9734F488E19CEF9093B50715 |
:108160008093B4078091450290914602079734F4BA |
:1081700080E398EF9093B5078093B4072A30A9F471 |
:108180008091450290914602835F934034F088EEDF |
:1081900093E09093B5078093B40780914502909146 |
:1081A00046028A5F9340DCF014C0809145029091B2 |
:1081B0004602815D974034F088EE93E09093B507D6 |
:1081C0008093B4078091450290914602805E97406B |
:1081D00034F080ED97E09093B5078093B4076091F9 |
:1081E000C801662309F4AFC040911C0150911D01E4 |
:1081F00080919A0390919B03481B590B5093A103C4 |
:108200004093A00320911C0130911D01280F391FBC |
:1082100037FF02C02F5F3F4F3595279530939B0363 |
:1082200020939A03413851051CF080E890E005C086 |
:1082300040585F4F34F480E89FEF9093A103809300 |
:10824000A00340911A0150911B0180919C039091D1 |
:108250009D03481B590B50939F0340939E0320910D |
:108260001A0130911B01280F391F37FF02C02F5F01 |
:108270003F4F3595279530939D0320939C034138BC |
:1082800051051CF080E890E005C040585F4F34F481 |
:1082900080E89FEF90939F0380939E03462F55277E |
:1082A0008091A0039091A103849FB001859F700DE0 |
:1082B000949F700D11249B0177FF02C0215F3F4FF7 |
:1082C000F4E035952795FA95E1F78091C3079091F1 |
:1082D000C407820F931F9093C4078093C3078091B4 |
:1082E0009E0390919F03849FD001859FB00D949F22 |
:1082F000B00D1124AD019D01B7FF02C0215F3F4FBA |
:10830000E4E035952795EA95E1F78091B4079091DF |
:10831000B507820F931F9093B5078093B4078091A0 |
:108320001C0190911D01860F971F90931D01809352 |
:108330001C0180911A0190911B01840F951F90934D |
:108340001B0180931A010091C6071091C707809105 |
:10835000AB079091AC07101611065CF59C0197FFD6 |
:1083600004C022273327281B390BC901AA2797FDF0 |
:10837000A095BA2F2091BC01332744275527BC0173 |
:10838000CD010E9465789B01AC0197FF04C0215C80 |
:108390003F4F4F4F5F4F76E055954795379527955F |
:1083A0007A95D1F78091C1079091C207820F931FF0 |
:1083B00027C097FF03C0909581959F4FAA2797FDEF |
:1083C000A095BA2F2091BC01332744275527BC0123 |
:1083D000CD010E9465789B01AC0197FF04C0215C30 |
:1083E0003F4F4F4F5F4F66E055954795379527951F |
:1083F0006A95D1F78091C1079091C207821B930BB8 |
:108400009093C2078093C107E090CE07F090CF070A |
:108410008091AF079091B0071E141F045CF59C017A |
:1084200097FF04C022273327281B390BC901AA272D |
:1084300097FDA095BA2F2091BC01332744275527DB |
:10844000BC01CD010E9465789B01AC0197FF04C07F |
:10845000215C3F4F4F4F5F4F96E0559547953795BD |
:1084600027959A95D1F78091B6079091B707820F1B |
:10847000931F27C097FF03C0909581959F4FAA2710 |
:1084800097FDA095BA2F2091BC013327442755278B |
:10849000BC01CD010E9465789B01AC0197FF04C02F |
:1084A000215C3F4F4F4F5F4F86E05595479537957D |
:1084B00027958A95D1F78091B6079091B707821BCF |
:1084C000930B9093B7078093B6078091250687FF9B |
:1084D00044C0B989BB2309F040C0809103038823BD |
:1084E000E1F5E1E0EE16E1E0FE064CF08091C30715 |
:1084F0009091C4078E0D9F1D805091400DC0F0E0FB |
:10850000EF16FFEFFF0664F48091C3079091C40754 |
:108510008E0D9F1D80509F4F9093C4078093C3077B |
:1085200021E0013012074CF08091B4079091B5071B |
:10853000800F911F805091400CC03FEF0030130717 |
:1085400064F48091B4079091B507800F911F80501B |
:108550009F4F9093B5078093B407E2E1CD5E0C94F2 |
:10856000107980911403882301F58091E9028C7FB2 |
:108570008093E902A6E4B4E0E2EEF6E09BE08091AD |
:108580000302882309F48C938D9181831282915088 |
:10859000389697FFF4CF80910302882359F0809199 |
:1085A000030281508093030205C08091E90281603B |
:1085B0008093E90280916E02882319F010926E0276 |
:1085C0000895809370028093720280916C028E7F76 |
:1085D00080936C0285EA8093BC000895CF93DF936B |
:1085E000AEE1B3E0CDE1D6E057E08991E82FFF2777 |
:1085F000EE0FFF1FED5BF84F0190F081E02DE25987 |
:10860000FF4FEF3FF10521F01CF0EFEFF0E004C069 |
:10861000F7FF02C0E0E0F0E04C91242F3327E2178F |
:10862000F307A9F0CF01821B930B97FD0396959555 |
:10863000879595958795242F280F2C93822F99271E |
:10864000E817F90714F4215001C02F5F2C93515003 |
:10865000119657FFCACF80912706883F38F0EFEF79 |
:10866000F0E0E81BF109E25EFC4F80818093CE01CF |
:108670008091CE01882329F0843618F084E6809317 |
:10868000CE0180912906883F38F0EFEFF0E0E81B3B |
:10869000F109E25EFC4F80818093CC018091CC0196 |
:1086A000882329F0843618F084E68093CC018091E9 |
:1086B0003606883F38F0EFEFF0E0E81BF109E25EA4 |
:1086C000FC4F80818093C7018091C7018B3010F4EB |
:1086D0008AE002C08F3F11F48093C7018091630646 |
:1086E000883F38F0EFEFF0E0E81BF109E25EFC4F65 |
:1086F00080818093DA078091DA07823010F481E07C |
:1087000002C08F3F11F48093DA0780916506883F9D |
:1087100038F0EFEFF0E0E81BF109E25EFC4F8081FA |
:108720008093000880910008823010F481E002C03C |
:108730008F3F11F48093000880915006883F38F0F5 |
:10874000EFEFF0E0E81BF109E25EFC4F80818093DF |
:10875000D70780915106883F38F0EFEFF0E0E81B33 |
:10876000F109E25EFC4F80818093B107809152064F |
:10877000883F38F0EFEFF0E0E81BF109E25EFC4FD4 |
:1087800080818093DF0790912806983F18F490939A |
:10879000CD0109C0EFEFF0E0E91BF109E25EFC4F0B |
:1087A00080818093CD01983F18F49093CD0109C04A |
:1087B000EFEFF0E0E91BF109E25EFC4F808180936E |
:1087C000CD0180912B06883F38F0EFEFF0E0E81BF9 |
:1087D000F109E25EFC4F80818093CB0180912D06F0 |
:1087E000883F38F0EFEFF0E0E81BF109E25EFC4F64 |
:1087F00080818093C90180913506883F38F0EFEF82 |
:10880000F0E0E81BF109E25EFC4F80818093CA0131 |
:1088100080913706883F38F0EFEFF0E0E81BF10970 |
:10882000E25EFC4F80818093C60180913806883FCC |
:1088300038F0EFEFF0E0E81BF109E25EFC4F8081D9 |
:108840008093C80180913906883F38F0EFEFF0E05F |
:10885000E81BF109E25EFC4F80818093C5018091A5 |
:108860003A06883F38F0EFEFF0E0E81BF109E25EEE |
:10887000FC4F80818093C40180914006883F38F08E |
:10888000EFEFF0E0E81BF109E25EFC4F808180939E |
:10889000C20180914106883F38F0EFEFF0E0E81B1D |
:1088A000F109E25EFC4F80818093FE0280914206D6 |
:1088B000883F38F0EFEFF0E0E81BF109E25EFC4F93 |
:1088C00080818093FD0280914306883F38F0EFEF6E |
:1088D000F0E0E81BF109E25EFC4F80818093FC022E |
:1088E00080914406883F38F0EFEFF0E0E81BF10993 |
:1088F000E25EFC4F80818093FB0280915E06883FA0 |
:1089000038F0EFEFF0E0E81BF109E25EFC4F808108 |
:108910008093FA0280915F06883F38F0EFEFF0E035 |
:10892000E81BF109E25EFC4F80818093F90280919F |
:108930006006883F38F0EFEFF0E0E81BF109E25EF7 |
:10894000FC4F80818093F80280916106883F38F067 |
:10895000EFEFF0E0E81BF109E25EFC4F80818093CD |
:10896000F70280914506883F38F0EFEFF0E0E81B12 |
:10897000F109E25EFC4F80818093C101809149063C |
:10898000883F38F0EFEFF0E0E81BF109E25EFC4FC2 |
:1089900080818093C00180915306883F38F0EFEFCB |
:1089A000F0E0E81BF109E25EFC4F80818093BF019B |
:1089B00080915606883F38F0EFEFF0E0E81BF109B0 |
:1089C000E25EFC4F80818093BE0180915706883F14 |
:1089D00038F0EFEFF0E0E81BF109E25EFC4F808138 |
:1089E0008093BD0180915806883F38F0EFEFF0E0AA |
:1089F000E81BF109E25EFC4F80818093BC0180910D |
:108A00005D06883F38F0EFEFF0E0E81BF109E25E29 |
:108A1000FC4F80818093BB0180917806883F38F0BD |
:108A2000EFEFF0E0E81BF109E25EFC4F80818093FC |
:108A300010088091C201282F33272F5F3F4F8CE30E |
:108A400098E2B9010E94A4787093D0016093CF019D |
:108A50008091330680930108809132068093C80785 |
:108A600090917A06933320F181E08093F602983F4B |
:108A700058F0EFEFF0E0E91BF109E25EFC4F808176 |
:108A8000823310F41092F60280914E0890914F08B4 |
:108A900097FF08C08091F602882321F0809141045D |
:108AA000806803C0809141048F778093410402C0A5 |
:108AB0001092F60280914E0890914F0897FF1DC0CA |
:108AC000809114038823C9F08091F6028823A9F0CD |
:108AD00080910801909109018F5F9F4F71F488E99F |
:108AE0009AE3909325028093240280E094EA909385 |
:108AF0000901809308011092F6028091F602882302 |
:108B000039F08091BE01823D18F4825E8093BE01EF |
:108B1000DF91CF910895A8E1B0E0E1E9F5E40C948C |
:108B2000F4780E94FF3A309102013C3010F4299A07 |
:108B300001C02998E0901503F0901603FA82E982AB |
:108B40008091C80799270A96E816F90614F49A83C3 |
:108B5000898380911D03843608F05CC08091B60340 |
:108B60009091B703009731F001979093B7038093EA |
:108B7000B60307C0109214038091E9028F7E8093A0 |
:108B8000E9023A3011F0343110F0289A01C02898E7 |
:108B90008091EA029091EB02895E9340C0F180914E |
:108BA0003D06282F33273A8329838091E90280618B |
:108BB0008093E90280911906A82FBB27AA0FBB1F3B |
:108BC000FD01E958F84F1182108280911A06282F72 |
:108BD0003327220F331FC9018958984FFC01118296 |
:108BE0001082AD5BB84F11961C921E922D5B384FD0 |
:108BF000D90111961C921E9280911C06E82FFF2726 |
:108C0000EE0FFF1FED5BF84F11821082C9C2109268 |
:108C10001403C6C280911D038D3808F4C1C280912F |
:108C2000E9028F7E8093E90290913E0682E3989F4D |
:108C3000C00111249093B7038093B603E981FA81B0 |
:108C4000B9978CF080911403882369F08091EA022F |
:108C50009091EB02FFEF8F3F9F0729F001969093D1 |
:108C6000EB028093EA028091EA029091EB028F3F3F |
:108C7000910509F038F51092390310923A031092D9 |
:108C80003B0310923C03109235031092360310926E |
:108C90003703109238031092A2031092A30310928C |
:108CA000A4031092A5031092410310924203109264 |
:108CB0004303109244038A3F910549F481E0809375 |
:108CC000BC0305C08091E90282608093E902809133 |
:108CD0001B06E82FFF27EE0FFF1FED5BF84F80818B |
:108CE0009181813591050CF441C120911403222317 |
:108CF00009F03CC180911C06E82FFF27EE0FFF1FF3 |
:108D0000ED5BF84F808191818C3491050CF406C1A4 |
:108D10008091B8038F5F8093B803893C08F426C123 |
:108D20003C3010F4299801C0299A10921403109233 |
:108D3000B8031092EB021092EA0230911906E32F69 |
:108D4000FF27EE0FFF1FED5BF84F80819181873485 |
:108D50009105B4F480911A06E82FFF27EE0FFF1F4C |
:108D6000ED5BF84F808191810190F081E02DF7FF5C |
:108D700003C0F095E195FF4FE734F1050CF478C09E |
:108D800041E020911A06A22FBB27AA0FBB1FAD5BA3 |
:108D9000B84F8D919C9111978734910544F0E32F42 |
:108DA000FF27EE0FFF1FED5BF84F808191818D91C2 |
:108DB0009C918734910574F080911906E82FFF2764 |
:108DC000EE0FFF1FED5BF84F808191818734910595 |
:108DD0000CF042E0E22FFF27EE0FFF1FED5BF84F94 |
:108DE000808191818634910574F480911906E82F71 |
:108DF000FF27EE0FFF1FED5BF84F808191818734D5 |
:108E000091050CF043E0E22FFF27EE0FFF1FED5B13 |
:108E1000F84F808191818A5B9F4F74F4809119068D |
:108E2000E82FFF27EE0FFF1FED5BF84F8081918148 |
:108E3000873491050CF044E0E22FFF27EE0FFF1F6F |
:108E4000ED5BF84F808191818A5B9F4F74F4809134 |
:108E50001906E82FFF27EE0FFF1FED5BF84F80810B |
:108E60009181863491050CF445E0842F0E942C2DCD |
:108E700080911A06E82FFF27EE0FFF1FED5BF84FDA |
:108E8000808191810190F081E02DF7FF03C0F09582 |
:108E9000E195FF4F7E97BCF480911906E82FFF27DC |
:108EA000EE0FFF1FED5BF84F808191818A5B9F4F32 |
:108EB00054F481E080935C0488EE93E09093250263 |
:108EC0008093240253C00E94262E0E94D92C80E059 |
:108ED0000E944A0780913F060E947E748091250679 |
:108EE00080FF10C08091140190911501875B934021 |
:108EF00038F480911401909115018E5E924010F427 |
:108F00000E94B51A1092220280E00E94513881E03E |
:108F10008093BB0380932202579A1FC08081918166 |
:108F2000855B9F4F0CF58091B8038F5F8093B803EA |
:108F3000893CE0F03C3010F4299801C0299A109245 |
:108F400014031092B8031092EB021092EA0281E02F |
:108F50000E94513881E08093BB030E94262E68E76F |
:108F600070E00E948F3702C02093B80380911B06E7 |
:108F7000E82FFF27EE0FFF1FED5BF84F80819181F7 |
:108F80008B5A9F4F0CF00CC130911403E0911C06DA |
:108F9000332309F0DAC0FF27EE0FFF1FED5BF84F18 |
:108FA00080819181855B9F4F0CF0CCC020917B0626 |
:108FB000E22FFF27EE0FFF1FED5BF84F80819181BD |
:108FC000855B9F4F1CF0222309F0BCC08091B90340 |
:108FD0008F5F8093B903893C08F4E2C03093B903F2 |
:108FE00080914104882309F0A6C08091BB038823A7 |
:108FF00009F4A1C081E090E09093EB028093EA0233 |
:1090000081E0809314031092A2031092A3031092A4 |
:10901000A4031092A50310924103109242031092F0 |
:1090200043031092440310923D0310923E031092AA |
:109030003F031092400380913406E82EFF2400275E |
:1090400011278091FD079091FE079C01442737FD71 |
:109050004095542FC801B7010E946578DC01CB010F |
:109060008093510390935203A0935303B0935403FE |
:1090700080910D0890910E089C01442737FD409582 |
:10908000542FC801B7010E946578DC01CB018093A1 |
:10909000490390934A03A0934B03B0934C038091F0 |
:1090A000710390917203A0917303B0917403809344 |
:1090B0004D0390934E03A0934F03B09350038091C0 |
:1090C000690390916A03A0916B03B0916C03809344 |
:1090D000450390934603A0934703B093480310922F |
:1090E000390310923A0310923B0310923C03109202 |
:1090F0003503109236031092370310923803809193 |
:10910000E90288608093E902909179068FE0989F48 |
:109110009001112480912F0390913003820F931FAF |
:1091200068E671E00E94A47897FD01969595879571 |
:109130008093750335C08CED95E090932502809364 |
:1091400024022EC01092B9032BC0FF27EE0FFF1F81 |
:10915000ED5BF84F808191818C349105FCF020917A |
:109160007B06E22FFF27EE0FFF1FED5BF84F80819C |
:109170009181855B9F4F14F0222381F48091BA0383 |
:109180008F5F8093BA03893C58F0109214031092B9 |
:10919000BA031092EB021092EA0202C01092BA03D4 |
:1091A00080919401815080939401809194018F3F2C |
:1091B00021F08091E90284FF72C30E94EE42809107 |
:1091C000C5039091C6039C01220F331F280F391F3E |
:1091D000C0901906AC2DBB27AA0FBB1FFD01ED5B8C |
:1091E000F84FB0902F064B2D552780819181849F99 |
:1091F000F001859FF00D949FF00D11242E0F3F1F5D |
:1092000037FF02C02D5F3F4FB90175956795759582 |
:109210006795A958B84F80913006082F11278D9176 |
:109220009C91809F7001819FF00C909FF00C112405 |
:109230006E0D7F1D7093C6036093C5038091C703B5 |
:109240009091C8039C01220F331F280F391FD09023 |
:109250001A06AD2DBB27AA0FBB1FFD01ED5BF84F12 |
:1092600080819181849FF001859FF00D949FF00D86 |
:1092700011242E0F3F1F37FF02C02D5F3F4FA90162 |
:109280005595479555954795A958B84F8D919C91FF |
:10929000809F7001819FF00C909FF00C11244E0D67 |
:1092A0005F1D5093C8034093C7038091F602882343 |
:1092B00009F448C0CB0177FD0396DC01B595A7956D |
:1092C000B595A795CA0157FD0396FC01F595E7955D |
:1092D000F595E7958091EA01682F772767FD7095EE |
:1092E0006A9F90016B9F300D7A9F300D1124809101 |
:1092F000FD03482F552747FD50954E9FC0014F9FB6 |
:10930000900D5E9F900D1124280F391F37FF02C06A |
:10931000295F3F4F03E0359527950A95E1F7309394 |
:109320001C0320931B036E9F90016F9F300D7E9F47 |
:10933000300D11244A9FC0014B9F900D5A9F900DF4 |
:1093400011243FC080917906E82FFF27E456FE4F95 |
:1093500086818093EA0190819093FD03A82FBB271B |
:10936000A7FDB095A69F9001A79F300DB69F300D29 |
:109370001124E92FFF27E7FDF095E49FC001E59F49 |
:10938000900DF49F900D1124280F391F37FF02C054 |
:10939000295F3F4F13E0359527951A95E1F73093F4 |
:1093A0001C0320931B03A49F9001A59F300DB49F25 |
:1093B000300D1124E69FC001E79F900DF69F900DA0 |
:1093C0001124281B390B37FF02C0295F3F4FF3E000 |
:1093D00035952795FA95E1F730931A0320931903F1 |
:1093E00080911C06E82FFF27EE0FFF1FED5BF84F63 |
:1093F00080819181909581959F4F909318038093E0 |
:1094000017038330910514F0029705C00FEF8E3FCC |
:10941000900734F40296909318038093170304C0C6 |
:1094200010921803109217038091F9039091FA0398 |
:109430002091F5033091F603820F931F00911B03D7 |
:1094400010911C03081B190B10931C0300931B03A2 |
:109450008091F7039091F8032091F3033091F40386 |
:10946000820F931F8090190390901A03881A990A0B |
:1094700090921A038092190380911B06E82FFF2710 |
:10948000EE0FFF1FED5BF84FE080F18028E730E042 |
:10949000E20EF31EF0921603E09215038091C701CD |
:1094A0009927AA2797FDA095BA2FBC01CD010E944C |
:1094B000D977DC01CB0120E030E040E251E4BC018F |
:1094C000CD010E944777DC01CB01BC01CD010E9498 |
:1094D000AB77DC01CB01809307088091C6018093B4 |
:1094E000E0078091C5019927AA2797FDA095BA2F7B |
:1094F000BC01CD010E94D977DC01CB0120E030E036 |
:1095000040E251E4BC01CD010E944777DC01CB0170 |
:10951000BC01CD010E94AB77DC01CB018093BB077E |
:109520008091C4018093D0078091680480FF59C066 |
:1095300080911008813808F454C080916104992703 |
:1095400087FD90952B2D3327829FA001839F500D7F |
:10955000929F500D1124040F151F10931C030093AC |
:109560001B0380916204992787FD9095829FB0012B |
:10957000839F700D929F700D1124860E971E9092FE |
:109580001A038092190380916304282F332727FD43 |
:1095900030958091170390911803820F931F909339 |
:1095A00018038093170380916504282F332727FD24 |
:1095B000309580912A069927289FD001299FB00DC8 |
:1095C000389FB00D1124B0939B01A0939A01809114 |
:1095D000640499278E159F0524F4909316038093B5 |
:1095E0001503809115039091160397FF04C0109204 |
:1095F0001603109215038091250682FF02C0109277 |
:10960000E00740911B0350911C03CA0157FD0396CC |
:109610009C01359527953595279537FF03C03095E3 |
:1096200021953F4F8091EE029091EF0282179307B0 |
:10963000B4F4CA0157FF03C0909581959F4F97FDE1 |
:10964000039695958795959587959093EF028093CE |
:10965000EE028536910544F084E690E001C0019762 |
:109660009093EF028093EE024091190350911A03F8 |
:10967000CA0157FD03969C01359527953595279589 |
:1096800037FF03C0309521953F4F8091EC029091B8 |
:10969000ED0282179307B4F4CA0157FF03C09095F7 |
:1096A00081959F4F97FD03969595879595958795FD |
:1096B0009093ED028093EC028536910544F084E6A8 |
:1096C00090E001C001979093ED028093EC028091AD |
:1096D000E90284FF08C01092EF021092EE0210928D |
:1096E000ED021092EC02ED2DFF27EE0FFF1FED5B58 |
:1096F000F84F40915406242F3327808191812817F9 |
:10970000390744F480917C0682FF04C081E0809395 |
:10971000020313C0ED2DFF27EE0FFF1FED5BF84F87 |
:10972000842F992720915506821B91092081318130 |
:109730002817390714F41092020340911A06E42FF7 |
:10974000FF27EE0FFF1FED5BF84F50915406852F5A |
:10975000992722273327281B390B80819181821773 |
:10976000930744F480917C0683FF04C081E08093DA |
:10977000010316C080910103882391F0E42FFF2795 |
:10978000EE0FFF1FED5BF84F809155069927851B63 |
:109790009109208131818217930714F410920103FB |
:1097A000EC2DFF27EE0FFF1FED5BF84F40915406A5 |
:1097B000242F3327808191812817390744F4809121 |
:1097C0007C0680FF04C081E08093FF0217C0809177 |
:1097D000FF02882399F0EC2DFF27EE0FFF1FED5BB2 |
:1097E000F84F842F992720915506821B91092081DB |
:1097F00031812817390714F41092FF02409119069D |
:10980000E42FFF27EE0FFF1FED5BF84F509154063A |
:10981000852F992722273327281B390B8081918197 |
:109820008217930744F480917C0681FF04C081E095 |
:109830008093000316C080910003882391F0E42FE9 |
:10984000FF27EE0FFF1FED5BF84F8091550699271C |
:10985000851B9109208131818217930714F410929E |
:10986000000380910203882319F480910103811180 |
:1098700081E0809303038091FF02882321F480918B |
:109880000003882351F081E08093040310920303C6 |
:10989000109202031092010302C08093040380918E |
:1098A0000303882321F480910403882369F08091C5 |
:1098B00053069927E981FA818E179F0714F49A833A |
:1098C000898381E0809329038091E90284FF1AC093 |
:1098D000109218031092170310921C0310921B038E |
:1098E00010921A03109219039AE59093070888E7DB |
:1098F0008093E0079093BB078093D00710920303F7 |
:10990000109204038091D3079091D407A091D507BA |
:10991000B091D60720917103309172034091730387 |
:1099200050917403820F931FA41FB51F8093D30718 |
:109930009093D407A093D507B093D6078091DB0707 |
:109940009091DC07A091DD07B091DE0720906903BC |
:1099500030906A0340906B0350906C03820D931D0E |
:10996000A41DB51D8093DB079093DC07A093DD0752 |
:10997000B093DE078091CA079091CB07A091CC07E6 |
:10998000B091CD07E0906D03F0906E0300916F03EE |
:1099900010917003EB82FC820D831E838E0D9F1D40 |
:1099A000A01FB11F8093CA079093CB07A093CC0749 |
:1099B000B093CD078091BC079091BD07A091BE07E1 |
:1099C000B091BF07E0906503F090660300916703D4 |
:1099D00010916803EF82F88609871A878E0D9F1D04 |
:1099E000A01FB11F8093BC079093BD07A093BE0733 |
:1099F000B093BF07F0900403FB86FF2029F4809109 |
:109A00000303882309F460C010926103109262037B |
:109A1000109263031092640310925D0310925E0330 |
:109A200010925F03109260031092D3071092D40734 |
:109A30001092D5071092D6071092DB071092DC0720 |
:109A40001092DD071092DE071092CA071092CB0722 |
:109A50001092CC071092CD071092BC071092BD0750 |
:109A60001092BE071092BF0780915103909152034C |
:109A7000A0915303B091540380934D0390934E03F0 |
:109A8000A0934F03B09350038091490390914A03F0 |
:109A9000A0914B03B0914C038093450390934603F0 |
:109AA000A0934703B09348031092340210923302FC |
:109AB000109208031092070310920A0310920903F0 |
:109AC0000B85002309F0F2C180910303882309F07C |
:109AD000EDC180910A0690910B06815092402CF4C2 |
:109AE00080911403882309F4E1C190907B08A09031 |
:109AF00034066091FD077091FE07788F6F8B80911F |
:109B00000D0890910E089A8B898B9FEF991609F496 |
:109B1000D9C0BB24CC24DD24CA01B901A60195011A |
:109B20000E94D97879018A01EF89F88DCF01AA279F |
:109B300097FDA095BA2FE81AF90A0A0B1B0BC20170 |
:109B4000B101A60195010E94D97859016A012989BC |
:109B50003A89C901AA2797FDA095BA2FA81AB90A70 |
:109B6000CA0ADB0A292C332427FC3094432C532CBB |
:109B7000C801B701A20191010E94657897FF04C056 |
:109B800061507E4F8F4F9F4F3B014C0109E09594F0 |
:109B90008794779467940A95D1F7C601B501A2011D |
:109BA00091010E94657897FF04C061507E4F8F4FEE |
:109BB0009F4F5B016C0119E0D594C794B794A794AB |
:109BC0001A95D1F78091EE029091EF0281349105C0 |
:109BD0003CF48091EC029091ED0281349105D4F037 |
:109BE000D401C30197FE03C00196A11DB11D3C0124 |
:109BF0004D019594879477946794D601C501D7FE5B |
:109C000003C00196A11DB11D5C016D01D594C794DF |
:109C1000B794A79480911C06E82FFF27EE0FFF1F33 |
:109C2000ED5BF84F808191810190F081E02DF7FF8D |
:109C300003C0F095E195FF4F7A97A4F0C401B301FA |
:109C400023E030E040E050E00E94D97839014A0139 |
:109C5000C601B50123E030E040E050E00E94D97831 |
:109C600059016A0180917D08282F332727FD3095FF |
:109C7000432F532F261537054805590514F439018C |
:109C80004A01992787FD9095909581959F4FAA2726 |
:109C900097FDA095BA2F681679068A069B0614F4DC |
:109CA0003C014D012A153B054C055D0514F4590195 |
:109CB0006A01A816B906CA06DB060CF0CFC05C0123 |
:109CC0006D01CCC0EA2CFF2400271127CA01B9017D |
:109CD000A80197010E94D97839014A014F89588D0E |
:109CE000CA01AA2797FDA095BA2F681A790A8A0A8D |
:109CF0009B0AC201B101A80197010E94D9785901BC |
:109D00006A0169897A89CB01AA2797FDA095BA2FA4 |
:109D1000A81AB90ACA0ADB0AD401C30197FE03C014 |
:109D20000F96A11DB11D3C014D01F4E0959487945F |
:109D300077946794FA95D1F7D601C501D7FE03C091 |
:109D40000F96A11DB11D5C016D01E4E0D594C7948F |
:109D5000B794A794EA95D1F78091EE029091EF0223 |
:109D6000813491053CF48091EC029091ED028134B4 |
:109D70009105A4F0C401B30123E030E040E050E0DD |
:109D80000E94D97839014A01C601B50123E030E0CB |
:109D900040E050E00E94D97859016A0180911C0688 |
:109DA000E82FFF27EE0FFF1FED5BF84F80819181B9 |
:109DB0000190F081E02DF7FF03C0F095E195FF4F92 |
:109DC0007A97A4F0C401B30123E030E040E050E012 |
:109DD0000E94D97839014A01C601B50123E030E07B |
:109DE00040E050E00E94D97859016A0171E267169B |
:109DF0007104810491042CF070E2672E712C812C87 |
:109E0000912C80EE68168FEF78068FEF88068FEF23 |
:109E1000980644F460EE662E6FEF762E6FEF862E76 |
:109E20006FEF962E91E2A916B104C104D1042CF073 |
:109E300050E2A52EB12CC12CD12CA0EEAA16AFEF6A |
:109E4000BA06AFEFCA06AFEFDA0644F440EEA42E2E |
:109E50004FEFB42E4FEFC42E4FEFD42E809151030D |
:109E600090915203A0915303B0915403861997091E |
:109E7000A809B9098093510390935203A093530307 |
:109E8000B09354038091490390914A03A0914B03EE |
:109E9000B0914C038A199B09AC09BD098093490311 |
:109EA00090934A03A0934B03B0934C0380913302E9 |
:109EB000909134028F3F910509F008F4C4C5BB8529 |
:109EC000BB2309F04EC580910303882309F049C5DF |
:109ED00080912903882309F044C5E0915C06EC8752 |
:109EE000EE2309F43EC58091D3079091D407A09149 |
:109EF000D507B091D607B7FF04C081509F4FAF4F31 |
:109F0000BF4FE92EFA2E0B2F112707FD1A95E0926D |
:109F1000D307F092D4070093D5071093D60780910A |
:109F2000DB079091DC07A091DD07B091DE07B7FF5A |
:109F300004C081509F4FAF4FBF4F892F9A2FAB2F37 |
:109F4000BB27A7FDBA958D879E87AF87B88B809377 |
:109F5000DB079093DC07A093DD07B093DE078091C9 |
:109F60003406A82EBB24CC24DD242091610330913B |
:109F700062034091630350916403C601B5010E94DE |
:109F8000657897FF04C061507F4F8F4F9F4F672EBA |
:109F9000782E892E992487FC9A946092610370929E |
:109FA0006203809263039092640320915D03309179 |
:109FB0005E0340915F0350916003C601B5010E94AA |
:109FC000657897FF04C061507F4F8F4F9F4F272EBA |
:109FD000382E492E552447FC5A9420925D03309226 |
:109FE0005E0340925F035092600380915903909109 |
:109FF0005A03A0915B03B0915C03B7FF04C081508A |
:10A000009F4FAF4FBF4F892F9A2FAB2FBB27A7FD75 |
:10A01000BA958093590390935A03A0935B03B0932E |
:10A020005C03D801C70186199709A809B90980936B |
:10A03000AE039093AF03A093B003B093B10320910C |
:10A040005B06E22EFF2400271127BC01CD01A801E9 |
:10A0500097010E94D97859016A012093BD0330937A |
:10A06000BE034093BF035093C0038D859E85AF858B |
:10A07000B88982199309A409B5098093B203909312 |
:10A08000B303A093B403B093B503BC01CD01A80101 |
:10A0900097010E94D9782093C1033093C203409363 |
:10A0A000C3035093C403D601C501D7FE04C0815039 |
:10A0B0009F4FAF4FBF4F892F9A2FAB2FBB27A7FDC5 |
:10A0C000BA95909308038093070357FF04C021506B |
:10A0D0003F4F4F4F5F4FBB2757FDBA95A52F942F8A |
:10A0E000832F90930A03809309038091EE0290914D |
:10A0F000EF0281349105DCF48091EC029091ED0245 |
:10A1000081349105A4F480911C06E82FFF27EE0FFF |
:10A11000FF1FED5BF84F808191810190F081E02D70 |
:10A12000F7FF03C0F095E195FF4F7A97E4F0809137 |
:10A130007B088F3FC1F4809107039091080397FD3E |
:10A1400001969595879590930803809307038091D6 |
:10A15000090390910A0397FD019695958795909331 |
:10A160000A03809309038091CA079091CB07A091BD |
:10A17000CC07B091CD07B7FF04C081509F4FAF4FC0 |
:10A18000BF4F892F9A2FAB2FBB27A7FDBA9580937E |
:10A19000CA079093CB07A093CC07B093CD078091CB |
:10A1A000BC079091BD07A091BE07B091BF07B7FF54 |
:10A1B00004C081509F4FAF4FBF4F892F9A2FAB2FB5 |
:10A1C000BB27A7FDBA958093BC079093BD07A093CA |
:10A1D000BE07B093BF078091710390917203A09165 |
:10A1E0007303B09174032B813C814D815E81281BE8 |
:10A1F000390B4A0B5B0B2093A6033093A7034093C4 |
:10A20000A8035093A9038091690390916A03A091D8 |
:10A210006B03B0916C03EF80F88409851A85E81A06 |
:10A22000F90A0A0B1B0BE092AA03F092AB0300930E |
:10A23000AC031093AD032093AE033093AF03409370 |
:10A24000B0035093B103E092B203F092B3030093D2 |
:10A25000B4031093B50380914D0390914E03A091E8 |
:10A260004F03B0915003821B930BA40BB50B80934B |
:10A270004D0390934E03A0934F03B09350038091EE |
:10A28000450390914603A0914703B09148038E196E |
:10A290009F09A00BB10B8093450390934603A093B5 |
:10A2A0004703B0934803FC85FF23E1F02091270387 |
:10A2B00030912803213831054CF080918203909130 |
:10A2C00083030196909383038093820320583F4F2A |
:10A2D0004CF48091820390918303019790938303C0 |
:10A2E00080938203109228031092270381E090E06C |
:10A2F0009093CA038093C903E090AE03F090AF033C |
:10A300000091B0031091B103D801C70117FF07C036 |
:10A3100088279927DC018E199F09A00BB10B81506A |
:10A320009240A040B04034F084E090E09093CA03A3 |
:10A330008093C9038091CF039091D003A091D10362 |
:10A34000B091D2032091D3073091D4074091D50723 |
:10A350005091D607821B930BA40BB50B815E914BDA |
:10A36000AF4FBF4F8F539C49A040B04028F0809121 |
:10A370007C0889310CF4FFC041E0E41640E1F406AA |
:10A3800040E0040740E014070CF473C08091CB0355 |
:10A39000882309F46AC0D801C70117FF07C08827BE |
:10A3A0009927DC018E199F09A00BB10B9C01AD010F |
:10A3B000B7FF04C021503E4F4F4F5F4FF9E0559516 |
:10A3C000479537952795FA95D1F78091C9039091D4 |
:10A3D000CA03820F931F9093CA038093C903D801C5 |
:10A3E000C70117FF03C00796A11DB11DE3E0B59596 |
:10A3F000A79597958795EA95D1F78093BD0390939C |
:10A40000BE03A093BF03B093C00389589341A040FB |
:10A41000B04064F088E893E1A0E0B0E08093BD0331 |
:10A420009093BE03A093BF03B093C0032091BD03DC |
:10A430003091BE034091BF035091C00357FF04C049 |
:10A4400021503F4F4F4F5F4F232F342F452F55271C |
:10A4500047FD5A958091070390910803820F931F3F |
:10A46000909308038093070306C081E08093CB0399 |
:10A4700002C01092CB0360E0E61660EFF6066FEFC5 |
:10A4800006076FEF16070CF073C08091CC0388238A |
:10A4900009F46AC0D801C70117FF07C088279927A8 |
:10A4A000DC018E199F09A00BB10B9C01AD01B7FF18 |
:10A4B00004C021503E4F4F4F5F4F69E0559547957F |
:10A4C000379527956A95D1F78091C9039091CA0372 |
:10A4D000820F931F9093CA038093C903D801C701C9 |
:10A4E00017FF03C00796A11DB11D23E0B595A795E1 |
:10A4F000979587952A95D1F78093BD039093BE03D6 |
:10A50000A093BF03B093C00388579C4EAF4FBF4F7B |
:10A5100064F488E79CEEAFEFBFEF8093BD039093A8 |
:10A52000BE03A093BF03B093C0032091BD0330913D |
:10A53000BE034091BF035091C00357FF04C0215098 |
:10A540003F4F4F4F5F4F232F342F452F552747FD48 |
:10A550005A958091070390910803820F931F90935F |
:10A5600008038093070311C081E08093CC030DC0E2 |
:10A570001092CC030AC01092CA031092C90388EE4D |
:10A5800093E09093DA018093D9018C85282F3327AB |
:10A590008091C9039091CA032817390724F4309396 |
:10A5A000CA032093C90310917C08112379F0212F4D |
:10A5B000332727FD30958091C9039091CA0328174E |
:10A5C000390724F43093CA032093C9034091AE03A2 |
:10A5D0005091AF036091B0037091B10341385105C0 |
:10A5E0006105710574F08091860390918703209135 |
:10A5F000C9033091CA03820F931F909387038093FE |
:10A60000860340585F4F6F4F7F4F74F480918603ED |
:10A61000909187032091C9033091CA03821B930B49 |
:10A62000909387038093860381E090E09093CA0320 |
:10A630008093C903C090B203D090B303E090B403F9 |
:10A64000F090B503D701C601F7FE07C08827992708 |
:10A65000DC018C199D09AE09BF0981509240A040D0 |
:10A66000B04034F084E090E09093CA038093C90333 |
:10A670008091D3039091D403A091D503B091D603D8 |
:10A680002091DB073091DC074091DD075091DE0718 |
:10A69000821B930BA40BB50B815E914BAF4FBF4F49 |
:10A6A0008F539C49A040B04018F019310CF4FFC002 |
:10A6B00001E0C01600E1D00600E0E00600E0F00690 |
:10A6C0000CF473C08091CD03882309F46AC0D701CC |
:10A6D000C601F7FE07C088279927DC018C199D0960 |
:10A6E000AE09BF099C01AD01B7FF04C021503E4F28 |
:10A6F0004F4F5F4F09E055954795379527950A9538 |
:10A70000D1F78091C9039091CA03820F931F909350 |
:10A71000CA038093C903D701C601F7FE03C0079699 |
:10A72000A11DB11D13E0B595A795979587951A952D |
:10A73000D1F78093C1039093C203A093C303B09356 |
:10A74000C40389589341A040B04064F088E893E185 |
:10A75000A0E0B0E08093C1039093C203A093C30331 |
:10A76000B093C4032091C1033091C2034091C3034D |
:10A770005091C40357FF04C021503F4F4F4F5F4FCC |
:10A78000232F342F452F552747FD5A9580910903D4 |
:10A7900090910A03820F931F90930A0380930903F9 |
:10A7A00006C081E08093CD0302C01092CD0320E06B |
:10A7B000C21620EFD2062FEFE2062FEFF2060CF0C2 |
:10A7C00073C08091CE03882309F46AC0D701C60103 |
:10A7D000F7FE07C088279927DC018C199D09AE096F |
:10A7E000BF099C01AD01B7FF04C021503E4F4F4F40 |
:10A7F0005F4FE9E05595479537952795EA95D1F74D |
:10A800008091C9039091CA03820F931F9093CA034A |
:10A810008093C903D701C601F7FE03C00796A11DA7 |
:10A82000B11D73E0B595A795979587957A95D1F762 |
:10A830008093C1039093C203A093C303B093C40356 |
:10A8400088579C4EAF4FBF4F64F488E79CEEAFEF44 |
:10A85000BFEF8093C1039093C203A093C303B0934F |
:10A86000C4032091C1033091C2034091C3035091AE |
:10A87000C40357FF04C021503F4F4F4F5F4F232F5A |
:10A88000342F452F552747FD5A9580910903909104 |
:10A890000A03820F931F90930A038093090311C048 |
:10A8A00081E08093CE030DC01092CE030AC01092B7 |
:10A8B000CA031092C90388EE93E09093DA01809363 |
:10A8C000D9014C85242F33278091C9039091CA0365 |
:10A8D0002817390724F43093CA032093C9038091C1 |
:10A8E0007C08882379F0282F332727FD3095809125 |
:10A8F000C9039091CA032817390724F43093CA0377 |
:10A900002093C9034091B2035091B3036091B40303 |
:10A910007091B503413851056105710574F080915E |
:10A920008403909185032091C9033091CA03820F5B |
:10A93000931F909385038093840340585F4F6F4F1C |
:10A940007F4FCCF480918403909185032091C903BB |
:10A950003091CA03821B930B9093850380938403E9 |
:10A960000AC010920A031092090310920803109271 |
:10A970000703109229038091E007882341F4109285 |
:10A980000A031092090310920803109207038091A2 |
:10A99000D3079091D407A091D507B091D6078093A3 |
:10A9A000CF039093D003A093D103B093D2038091AF |
:10A9B000DB079091DC07A091DD07B091DE07809363 |
:10A9C000D3039093D403A093D503B093D6031092EE |
:10A9D0006103109262031092630310926403109259 |
:10A9E0005D0310925E0310925F0310926003109259 |
:10A9F000590310925A0310925B0310925C03109259 |
:10AA0000D3071092D4071092D5071092D607109250 |
:10AA1000DB071092DC071092DD071092DE07109220 |
:10AA2000CA071092CB071092CC071092CD07109254 |
:10AA3000BC071092BD071092BE071092BF0710927C |
:10AA4000340210923302E0901703F0901803C7010C |
:10AA5000F7FE04C0882799278E199F0940976CF04C |
:10AA600088EE93E09093DA018093D90180912506D6 |
:10AA700084FD03C081E08093BC0310913106A12EB8 |
:10AA8000BB24CC24DD24B701882777FD8095982F3F |
:10AA90009701F7FE04C0222733272E193F094427C8 |
:10AAA00037FD4095542F0E9465789B01AC01C6018B |
:10AAB000B5010E94657897FF04C061507E4F8F4FAB |
:10AAC0009F4F59E095958795779567955A95D1F75A |
:10AAD0009B01812F99278E9DD0018F9DB00D9E9D4A |
:10AAE000B00D1124CD01B7FD0396959587959595E9 |
:10AAF0008795280F391F442737FD4095542F209301 |
:10AB0000A2033093A3034093A4035093A503809121 |
:10AB1000410390914203A0914303B0914403821BEF |
:10AB2000930BA40BB50B8093410390934203A09326 |
:10AB30004303B09344038155934CA040B04064F06C |
:10AB400080E593ECA0E0B0E0809341039093420352 |
:10AB5000A0934303B0934403809141039091420337 |
:10AB6000A0914303B0914403805B9C43AF4FBF4F20 |
:10AB700064F480EB9CE3AFEFBFEF809341039093CD |
:10AB80004203A0934303B093440340902F0350909B |
:10AB900030034114510409F478C18091250683FFE4 |
:10ABA00074C18091710390917203A0917303B0916D |
:10ABB0007403B7FF04C081509E4FAF4FBF4F39E0C1 |
:10ABC000B595A795979587953A95D1F76C0197FF1D |
:10ABD00004C0D094C194D108D3948091690390911A |
:10ABE0006A03A0916B03B0916C03B7FF04C081505E |
:10ABF0009E4FAF4FBF4F29E0B595A7959795879585 |
:10AC00002A95D1F7BC0197FF03C0709561957F4FDE |
:10AC1000C616D7060CF46B01B601D7FE02C0695FF9 |
:10AC20007F4F3B0183E0759467948A95E1F702E0DA |
:10AC3000E02EF12C6E0C7F1C0CE112E0400E511E38 |
:10AC400072010027F7FC0095102F24EE3DEF420E15 |
:10AC5000531E8091090890910A08A0910B08B091A9 |
:10AC60000C088090960190909701A0909801B09068 |
:10AC70009901BC01CD01A50194010E94D978E21A85 |
:10AC8000F30A040B150BC801B70128E631E040E0D8 |
:10AC900050E00E94D978DC01CB011CE4E12E1FEFCB |
:10ACA000F12EE80EF91E0091D9011091DA0101157B |
:10ACB000110589F539E1C316D1046CF5809127039C |
:10ACC000909128038E0D9F1D909328038093270356 |
:10ACD0008091BC038823F9F0C201AA2797FDA095B3 |
:10ACE000BA2FBC01CD01A50194010E946578DC0159 |
:10ACF000CB018093090890930A08A0930B08B093A6 |
:10AD00000C08BC01CD010E94D97830932E0320930A |
:10AD10002D031092BC03C701B4E0880F991FBA95A8 |
:10AD2000E1F7B3010E94A478CB01AA2797FDA09573 |
:10AD3000BA2F2091090830910A0840910B085091D0 |
:10AD40000C08280F391F4A1F5B1F209309083093F6 |
:10AD50000A0840930B0850930C08F090CA016F2D1D |
:10AD60007727C69EC001C79E900DD69E900D1124D8 |
:10AD700097FD4F966C01A5E0D594C794AA95E1F78D |
:10AD80006C197D096B0177FD7AC00115110509F079 |
:10AD90006FC00091EE021091EF028091EC02909151 |
:10ADA000ED02080F191F17FF02C0095F1F4FF3E0E4 |
:10ADB00015950795FA95E1F7005C1F4FCA01B90197 |
:10ADC000A50194010E94D978DA01C90120912D03CF |
:10ADD00030912E03442737FD4095542F821B930B4F |
:10ADE000A40BB50B845E9D4FAF4FBF4FBC01CD018F |
:10ADF00028E631E040E050E00E94D978DC01CB0148 |
:10AE0000845B90408C9DA0018D9D500D9C9D500DAC |
:10AE10001124CA01B8010E94A47883E0F89E600161 |
:10AE20001124C616D70614F4B60108C0882799273E |
:10AE30008C199D09681779070CF4BC019B01442704 |
:10AE400037FD4095542F8091410390914203A0918A |
:10AE50004303B0914403820F931FA41FB51F809337 |
:10AE6000410390934203A0934303B09344030DC066 |
:10AE7000015010401093DA010093D90106C084EF0D |
:10AE800091E09093DA018093D9018091290388237E |
:10AE900081F010923503109236031092370310920E |
:10AEA00038031092390310923A0310923B03109228 |
:10AEB0003C03F0900403FF20F1F48091E007282F79 |
:10AEC0003327442755278091710390917203A091F5 |
:10AED0007303B0917403BC01CD010E946578DC015D |
:10AEE000CB01BC01CD0128EF3AE240E050E00E94E6 |
:10AEF000D978390102C066247724E0900303EE205C |
:10AF0000F1F48091E007282F3327442755278091BB |
:10AF1000690390916A03A0916B03B0916C03BC012B |
:10AF2000CD010E946578DC01CB01BC01CD0128EF89 |
:10AF30003AE240E050E00E94D978290102C044245E |
:10AF400055248091B6079091B707893C91051CF074 |
:10AF500088EC90E005C088539F4F34F488E39FEF5E |
:10AF60009093B7078093B6078091C1079091C2076D |
:10AF7000893C91051CF088EC90E005C088539F4FF8 |
:10AF800034F488E39FEF9093C2078093C1078091C8 |
:10AF9000C3079091C407AA2797FDA095BA2F2091C7 |
:10AFA0000708A22EBB24CC24DD24BC01CD01A601C0 |
:10AFB00095010E9465789B01AC018091B607909144 |
:10AFC000B707AA2797FDA095BA2FE7E0880F991F2A |
:10AFD000AA1FBB1FEA95D1F7280F391F4A1F5B1F15 |
:10AFE00057FF04C0215C3F4F4F4F5F4F76E05595B0 |
:10AFF0004795379527957A95D1F78301020F131F4F |
:10B000001093C4070093C3078091B4079091B507CC |
:10B01000AA2797FDA095BA2FBC01CD01A6019501E5 |
:10B020000E9465789B01AC018091C1079091C20795 |
:10B03000AA2797FDA095BA2F67E0880F991FAA1F2E |
:10B04000BB1F6A95D1F7280F391F4A1F5B1F57FF97 |
:10B0500004C0215C3F4F4F4F5F4F96E05595479599 |
:10B06000379527959A95D1F74201820E931E9092BB |
:10B07000B5078092B4078091020890910308880F69 |
:10B08000991FAA2797FDA095BA2F2091BB073327B8 |
:10B0900044275527BC01CD010E9465785B016C01F6 |
:10B0A00097FF08C08FE390E0A0E0B0E0A80EB91EC3 |
:10B0B000CA1EDB1E86E0D594C794B794A7948A95E0 |
:10B0C000D1F78091D007282F332744275527809127 |
:10B0D000550390915603A0915703B0915803BC01BA |
:10B0E000CD010E946578DC01CB01BC01CD0120EFD0 |
:10B0F00035E540E050E00E94D978B501620F731F3A |
:10B1000070930308609302080150104134F080E00E |
:10B1100090E19093C4078093C3078091C3079091F7 |
:10B12000C4078050904F34F480E090EF9093C407B0 |
:10B130008093C307B1E08B16B0E19B0634F080E04A |
:10B1400090E19093B5078093B4078091B4079091F4 |
:10B15000B5078050904F34F480E090EF9093B5079E |
:10B160008093B4076150704134F080E090E1909397 |
:10B170000308809302088091020890910308805090 |
:10B18000904F34F480E090EF90930308809302088E |
:10B1900080910001482F552780911E0190911F0139 |
:10B1A0004817590794F420911E0130911F016981BD |
:10B1B0007A81649FC001659F900D749F900D11244A |
:10B1C000B9010E9490787A83698389819A81880F76 |
:10B1D000991F880F991F9A8389834091250640FF04 |
:10B1E000BDC6EE2009F0BAC6FF2009F0B7C6AA24F2 |
:10B1F000BB24450180910503909106039093EE05D1 |
:10B200008093ED0520918803309189032115310544 |
:10B2100009F03FC080911401909115018959934024 |
:10B2200058F087B5803F20F480913702815011C0DB |
:10B2300081E08093E2034EC080911401909115014A |
:10B240008436910508F587B58031D0F080913702BA |
:10B250008F5F809337029FE08902900111248091D3 |
:10B260001406821B87BD8CE291E0909325028093A7 |
:10B2700024028EE591E090938903809388032AC08D |
:10B2800081E08093E10326C0F092E103F092E203B3 |
:10B2900021C080910F0390911003A0911103B091F0 |
:10B2A000120314E0880F991FAA1FBB1F1A95D1F72C |
:10B2B0008093380290933902A0933A02B0933B02F4 |
:10B2C000B0923602A092350221503040309389036B |
:10B2D000209388032091CD0141FF24C02233D8F46C |
:10B2E0008091DF0181508093DF018F3FD9F510926B |
:10B2F0002A0380910F0390911003A0911103B09144 |
:10B30000120380930B0390930C03A0930D03B0934F |
:10B310000E0381E004C081E080932A0388EC8093CF |
:10B32000DF0120C080919A0190919B01820F911DB5 |
:10B3300020912A063327829FF001839FF00D929F70 |
:10B34000F00D1124CF01AA2797FDA095BA2F809365 |
:10B350000B0390930C03A0930D03B0930E0381E0B5 |
:10B3600080932A038091710390917203A0917303DB |
:10B37000B0917403E0909601F090970100919801CC |
:10B3800010919901BC01CD01A80197010E94D978C3 |
:10B3900059016A018091690390916A03A0916B033E |
:10B3A000B0916C03BC01CD01A80197010E94D9782E |
:10B3B000B901C5010E948E768C01CC9714F00CE384 |
:10B3C00010E0C8010E94AF6A8C0180E28093950171 |
:10B3D00080912A03882309F447C48091E9029927C0 |
:10B3E0009C012071307084FD3FC460917E0660FD39 |
:10B3F00004C08091250681FD0CC0C980DA8030939D |
:10B40000D8032093D7038091E902806C8093E902EE |
:10B4100099C18091E90281FF6BC14091DB0150919C |
:10B42000DC01CA010F962091150330911603821793 |
:10B430009307BCF58091E103882399F58091E90297 |
:10B4400087FF15C08091E9028F778093E902809190 |
:10B450000F0390911003A0911103B09112038093F8 |
:10B460000B0390930C03A0930D03B0930E038091F4 |
:10B47000E90280648093E902241B350B2F50304091 |
:10B4800037FF03C0309521953F4F8091D7039091AE |
:10B49000D803820F931F9093D8038093D7038BE236 |
:10B4A0006EC0CA010F9728173907BCF58091E203D7 |
:10B4B000882399F58091E90286FF15C08091E90201 |
:10B4C0008F7B8093E90280910F0390911003A091EC |
:10B4D0001103B091120380930B0390930C03A0937C |
:10B4E0000D03B0930E038091E90280688093E90216 |
:10B4F000241B350B215F3F4F37FF03C0309521954B |
:10B500003F4F8091D7039091D803821B930B909368 |
:10B51000D8038093D7038DE232C08091E902807C0A |
:10B5200069F18091E9028F738093E9021092D80348 |
:10B530001092D70320910F03309110034091110313 |
:10B540005091120320930B0330930C0340930D038F |
:10B5500050930E0361FF06C084EF91E090932502A3 |
:10B560008093240280911303882341F4233331050F |
:10B57000410551051CF081E0809313038DE3809316 |
:10B5800095012091D7033091D803C90137FF04C03A |
:10B5900088279927821B930B815092400CF491C00D |
:10B5A00080912A069927289F7001299FF00C389FC7 |
:10B5B000F00C1124C70160E075E00E94A478CB0173 |
:10B5C000AA2797FDA095BA2F20910B0330910C0369 |
:10B5D00040910D0350910E03280F391F4A1F5B1F26 |
:10B5E00020930B0330930C0340930D0350930E03F1 |
:10B5F0001092D8031092D703C0900F03D09010037D |
:10B60000E0901103F0901203D701C60180509440DE |
:10B61000A040B04082179307A407B5075CF4D70198 |
:10B62000C60180509C4FAF4FBF4F281739074A07BC |
:10B630005B0744F080930B0390930C03A0930D03DE |
:10B64000B0930E0380917E0681FF06C084E690E0F1 |
:10B65000909325028093240280912E06882389F5F9 |
:10B66000409105035091060357FF02C04D5F5F4FA5 |
:10B67000559547955595479580911E0190911F01CD |
:10B68000209100013327489FB001499F700D589FBA |
:10B69000700D1124CB01B9010E94A4787093DC01D4 |
:10B6A0006093DB01663471051CF486E490E005C00C |
:10B6B0006739710534F086E990E09093DC0180935E |
:10B6C000DB018091880390918903892BB9F18091E6 |
:10B6D0000F0390911003A0911103B0911203809376 |
:10B6E0000B0390930C03A0930D03B0930E0326C09D |
:10B6F00080910F0390911003A0911103B091120358 |
:10B7000080599140A040B04080930B0390930C036C |
:10B71000A0930D03B0930E0380912E06882311F0A1 |
:10B72000992702C088E790E09093DC018093DB01C9 |
:10B7300089819A819093060380930503C090050345 |
:10B74000D090060320910F03309110034091110314 |
:10B75000509112032B8B3C8B4D8B5E8B20910B03F6 |
:10B7600030910C0340910D0350910E036B897C893D |
:10B770008D899E89261737074807590724F080913D |
:10B780007E0680FDB8C28091880390918903892B41 |
:10B7900039F0C0900503D0900603AA24BB24D9C079 |
:10B7A0008B899C89AD89BE89821B930BA40BB50B39 |
:10B7B0008093A6039093A703A093A803B093A90333 |
:10B7C000823070E897077FEFA7077FEFB7072CF469 |
:10B7D00081E090E8AFEFBFEF09C08F5F9F47A040C7 |
:10B7E000B04064F08FEF9FE7A0E0B0E08093A60345 |
:10B7F0009093A703A093A803B093A903A090A603D6 |
:10B80000B090A7038091CC01282F332744275527D8 |
:10B810008091A6039091A703A091A803B091A903DA |
:10B82000BC01CD010E94657897FF04C0615E7F4F27 |
:10B830008F4F9F4FA5E09595879577956795AA952A |
:10B84000D1F76093A6037093A7038093A803909306 |
:10B85000A9036530FEEF7F07FFEF8F07FFEF9F071C |
:10B860002CF484E09EEFAFEFBFEF09C0605074404E |
:10B870008040904064F080E094E0A0E0B0E08093ED |
:10B88000A6039093A703A093A803B093A903809065 |
:10B89000A6039090A703209135023091360237FF1E |
:10B8A00002C0295F3F4FF3E035952795FA95E1F700 |
:10B8B0004FEF223834071CF421E83FEF05C0203851 |
:10B8C000310514F020E830E0C901AA2797FDA095C2 |
:10B8D000BA2F2091CE01332744275527BC01CD0133 |
:10B8E0000E94657897FF04C06D5F7F4F8F4F9F4F19 |
:10B8F000E2E09595879577956795EA95D1F79B0155 |
:10B900005FEF613075071CF420E03FEF06C06F3F2A |
:10B91000710519F014F020E031E08091E902807C9B |
:10B9200049F0C90137FD03969C013595279535955A |
:10B9300027950DC080917E0680FF09C0C90137FDA3 |
:10B9400007969C0143E0359527954A95E1F7820ECD |
:10B95000931E2091CB01222309F454C0609131033E |
:10B9600070913203809133039091340397FF04C0A8 |
:10B9700061587F4F8F4F9F4F37E09595879577950B |
:10B9800067953A95D1F73327442755270E94657864 |
:10B9900097FF04C0615E7F4F8F4F9F4FB5E0959535 |
:10B9A000879577956795BA95D1F76093A6037093BD |
:10B9B000A7038093A8039093A9036138AFEF7A0798 |
:10B9C000AFEF8A07AFEF9A072CF480E89FEFAFEF55 |
:10B9D000BFEF0AC06F3F71058105910569F064F002 |
:10B9E00080E091E0A0E0B0E08093A6039093A703ED |
:10B9F000A093A803B093A9038091A6039091A703F5 |
:10BA0000880E991E8091C901282F332780917F08C5 |
:10BA1000992787FD9095289FF001299FF00D389F69 |
:10BA2000F00D11249F01F7FF02C021583F4F220F54 |
:10BA3000232F221F330BFFEF21383F071CF420E890 |
:10BA40003FEF06C02F3F310519F014F020E031E040 |
:10BA5000820E931EC401AA2797FDA095BA2FE090ED |
:10BA60000503F09006039701442737FD4095542FB6 |
:10BA7000BC01CD010E94657897FF04C061507E4FE4 |
:10BA80008F4F9F4FF9E09595879577956795FA9534 |
:10BA9000D1F7C61AD70A8091D7039091D803892B82 |
:10BAA00009F060C01E141F040CF05CC09501B7FEC5 |
:10BAB00003C0309521953F4F2D33310540F48091DF |
:10BAC000DB039091DC038C159D0574F526C02C5387 |
:10BAD0003040E5E036952795EA95E1F720313105CC |
:10BAE00010F02FE030E04091DB035091DC031A149A |
:10BAF0001B04E4F480E190E0821B930B489F9001CB |
:10BB0000499F300D589F300D112474E036952795CC |
:10BB10007A95E1F72C153D0520F58091DD01909196 |
:10BB2000DE01C816D906F4F06C011CC0205F3F4F3F |
:10BB30008091DD019091DE01829FB001839F700DA5 |
:10BB4000929F700D11249B0164E0369527956A95AC |
:10BB5000E1F74C155D0514F06A0104C0C216D30666 |
:10BB600008F06901C601AA2797FDA095BA2F2DE01C |
:10BB7000880F991FAA1FBB1F2A95D1F79801442748 |
:10BB800037FD4095542FBC01CD010E94D9782093F8 |
:10BB9000AA033093AB034093AC035093AD03C09022 |
:10BBA000AA03D090AB038091D9039091DA039C0152 |
:10BBB000220F331F280F391F2C0D3D1D37FF02C0E8 |
:10BBC0002D5F3F4FA9015595479555954795509342 |
:10BBD000DA034093D90380912606282F3327220FBA |
:10BBE000331F220F331F241735076CF4809101088F |
:10BBF000282F3327220F331F220F331F20553040A9 |
:10BC00004217530724F03093DA032093D90380912D |
:10BC10007E0680FF14C08091D9039091DA03A98138 |
:10BC2000BA818A179B0724F0B093DA03A093D90353 |
:10BC3000E091D903F091DA03FA83E9835CC02981AA |
:10BC40003A812E193F0937FF02C02D5F3F4F3595CE |
:10BC5000279535952795E090D903F090DA03E20E09 |
:10BC6000F31EFA82E98247C080912E06882301F5EF |
:10BC7000609105037091060377FF02C06D5F7F4FEF |
:10BC8000759567957595679540911E0150911F01B7 |
:10BC900080910001282F3327649FC001659F900D7C |
:10BCA000749F900D1124B9010E94A478CB0101C0AA |
:10BCB00099279093DC018093DB018091DB019091C7 |
:10BCC000DC01873491051CF486E490E005C08639D8 |
:10BCD000910534F086E990E09093DC018093DB01DC |
:10BCE00029813A813093DA032093D9038091E902C4 |
:10BCF000806C8093E9028091E90299279C0122706F |
:10BD0000307081FF1CC18091DD039091DE03A09112 |
:10BD1000DF03B091E0030097A105B10521F0809108 |
:10BD200013038130B1F449815A81CA01AA2797FDD2 |
:10BD3000A095BA2F2EE0880F991FAA1FBB1F2A9526 |
:10BD4000D1F78093DD039093DE03A093DF03B093DC |
:10BD5000E00380911303813019F482E08093130390 |
:10BD600069817A81CB01AA2797FDA095BA2F980106 |
:10BD7000442737FD4095542FBC01CD010E946578C2 |
:10BD8000DC01CB018093AA039093AB03A093AC0397 |
:10BD9000B093AD03B7FF04C08150904EAF4FBF4F7B |
:10BDA0007C018D01FDE015950795F794E794FA95D0 |
:10BDB000D1F7E092AA03F092AB030093AC03109387 |
:10BDC000AD036091EA027091EB028FE0603A780770 |
:10BDD00050F58091DD039091DE03A091DF03B091D7 |
:10BDE000E0039C01AD01EAE056954795379527950C |
:10BDF000EA95D1F7821B930BA40BB50BA801970111 |
:10BE0000F4E0220F331F441F551FFA95D1F7820F1C |
:10BE1000931FA41FB51F8093DD039093DE03A093AF |
:10BE2000DF03B093E00360547F4118F58091DD0398 |
:10BE30009091DE03A091DF03B091E0039C01AD017E |
:10BE4000ECE05695479537952795EA95D1F7821BF3 |
:10BE5000930BA40BB50BA801970172E0220F331FBF |
:10BE6000441F551F7A95D1F7820F931FA41FB51F4A |
:10BE700029C08091350290913602809135029091CF |
:10BE8000360297FF03C0909581959F4F84369105A8 |
:10BE90000CF58091DD039091DE03A091DF03B0915A |
:10BEA000E0039C01AD016EE05695479537952795C7 |
:10BEB0006A95D1F7821B930BA40BB50B8E0D9F1DBA |
:10BEC000A01FB11F8093DD039093DE03A093DF03D7 |
:10BED000B093E0038091DD039091DE03A091DF0336 |
:10BEE000B091E0031EE0B695A795979587951A95B2 |
:10BEF000D1F7909306038093050340912C064423C9 |
:10BF000099F055279C01BA010E94A478C901861BAB |
:10BF1000970B9093DC038093DB03260F371F30933E |
:10BF2000DE012093DD011FC01092DC031092DB03C1 |
:10BF30008FEF93E09093DE018093DD0114C01092A7 |
:10BF400013031092DD031092DE031092DF031092B0 |
:10BF5000E003309306032093050305C08091E902B6 |
:10BF6000806C8093E9022090C807222D3327220F8E |
:10BF7000331F220F331F285D3F4FA981BA812A1733 |
:10BF80003B0714F03A83298330900108832D9927C9 |
:10BF9000880F991F880F991F80559040E981FA8179 |
:10BFA0008E179F0714F49A83898380916D028823EA |
:10BFB00021F4809186088F3FA1F08091EA02909150 |
:10BFC000EB020297C09768F4E980FA801E141F0400 |
:10BFD00044F481E090E09093EB028093EA023A838C |
:10BFE000298309811A811093D2050093D10580918C |
:10BFF000A2039091A303A091A403B091A503F2E042 |
:10C00000880F991FAA1FBB1FFA95D1F7009102084C |
:10C0100010910308081B190B29813A81213A310537 |
:10C020008CF0C90137FD019695958795801791078A |
:10C030000CF48C01909581959F4F081719076CF4AB |
:10C040008C010BC00135110514F000E510E03FEF45 |
:10C05000003B130714F400EB1FEF232D3327220FAF |
:10C06000331F220F331FC90149815A81841B950B4D |
:10C07000801791070CF48C0169817A81621B730B24 |
:10C08000061717070CF48B018091C3079091C40722 |
:10C0900060911B0370911C03861B970B9093D20732 |
:10C0A0008093D107D090E0072091390330913A0373 |
:10C0B00040913B0350913C03DD2041F0661A770A22 |
:10C0C000C301AA2797FDA095BA2F04C0AA2797FD00 |
:10C0D000A095BA2F280F391F4A1F5B1F20933903E1 |
:10C0E00030933A0340933B0350933C0380913903D0 |
:10C0F00090913A03A0913B03B0913C0381509A4F39 |
:10C10000A040B04064F080E09AEFA0E0B0E08093FF |
:10C11000390390933A03A0933B03B0933C0380917F |
:10C12000390390913A03A0913B03B0913C038050B6 |
:10C130009640AF4FBF4F64F480E096E0AFEFBFEFA3 |
:10C140008093390390933A03A0933B03B0933C034D |
:10C15000C0903B062091D1073091D207F8E0FC1542 |
:10C1600098F08C2D9927829F7001839FF00C929FED |
:10C17000F00C1124C701F7FC07967C0163E0F594ED |
:10C18000E7946A95E1F712C08C2D86959927829FD6 |
:10C19000A001839F500D929F500D1124CA0157FD9D |
:10C1A00003967C01F594E794F594E794A090CF0171 |
:10C1B000B090D0019501442737FD4095542F8091D0 |
:10C1C000390390913A03A0913B03B0913C03BC0129 |
:10C1D000CD010E94D978E20EF31E9090BB01692D2B |
:10C1E000772788279927980117FF04C0222733272C |
:10C1F000201B310B37FF02C02F5F3F4F359527952E |
:10C20000A981BA812A0F3B1F442737FD4095542F3F |
:10C210000E94657897FF04C0615C7F4F8F4F9F4FEE |
:10C2200026E095958795779567952A95D1F79B0197 |
:10C230006E157F050CF47B01309521953F4FE2167A |
:10C24000F3060CF479018091B4079091B5076091E1 |
:10C25000190370911A03861B970B9093B307809371 |
:10C26000B207209135033091360340913703509146 |
:10C270003803DD2041F0461A570AC201AA2797FD6C |
:10C28000A095BA2F04C0AA2797FDA095BA2F280F12 |
:10C29000391F4A1F5B1F20933503309336034093A9 |
:10C2A0003703509338038091350390913603A09162 |
:10C2B0003703B091380381509A4FA040B04064F0EA |
:10C2C00080E09AEFA0E0B0E08093350390933603CE |
:10C2D000A0933703B09338038091350390913603D0 |
:10C2E000A0913703B091380380509640AF4FBF4FB5 |
:10C2F00064F480E096E0AFEFBFEF80933503909356 |
:10C300003603A0933703B09338032091B2073091DE |
:10C31000B30748E04C1598F08C2D9927829FB00107 |
:10C32000839F700D929F700D1124CB0177FD0796AE |
:10C330006C01B3E0D594C794BA95E1F712C0C694E6 |
:10C340008C2D9927829FD001839FB00D929FB00DB5 |
:10C350001124CD01B7FD03966C01D594C794D594F3 |
:10C36000C7949501442737FD4095542F809135039C |
:10C3700090913603A0913703B0913803BC01CD01F1 |
:10C380000E94D978C20ED31E692D77278827992756 |
:10C39000980117FF04C022273327201B310B37FFDA |
:10C3A00002C02F5F3F4F35952795E981FA812E0F07 |
:10C3B0003F1F442737FD4095542F0E94657897FF13 |
:10C3C00004C0615C7F4F8F4F9F4FE6E09595879546 |
:10C3D00077956795EA95D1F79B016C157D050CF46F |
:10C3E0006B01309521953F4FC216D3060CF46901BD |
:10C3F00062EE862E66E0962E59E9A52E56E0B52E01 |
:10C400004BE0542E31EE632E37E0732ED5012C9184 |
:10C4100012160CF014C1203429F4E981FA81F88F46 |
:10C42000EF8B1FC049815A81CA01AA2797FDA095A9 |
:10C43000BA2F332727FD3095432F532FBC01CD0151 |
:10C440000E94657897FF04C0615C7F4F8F4F9F4FBC |
:10C4500026E095958795779567952A95D1F7788FFA |
:10C460006F8BF5012181203439F42F89388D2E0D01 |
:10C470003F1D388F2F8B2AC0203C39F44F89588DAF |
:10C480004E195F09588F4F8B21C0C701AA2797FD0E |
:10C49000A095BA2F332727FD3095432F532FBC018A |
:10C4A000CD010E94657897FF04C0615C7F4F8F4F7C |
:10C4B0009F4FB6E09595879577956795BA95D1F793 |
:10C4C000AF89B88DA60FB71FB88FAF8BF50122814A |
:10C4D000203439F42F89388D2C0D3D1D388F2F8B4A |
:10C4E0002AC0203C39F44F89588D4C195D09588F6A |
:10C4F0004F8B21C0C601AA2797FDA095BA2F3327DD |
:10C5000027FD3095432F532FBC01CD010E94657844 |
:10C5100097FF04C0615C7F4F8F4F9F4FA6E09595BA |
:10C52000879577956795AA95D1F7AF89B88DA60FAE |
:10C53000B71FB88FAF8BF5012381203439F42F89D1 |
:10C54000388D200F311F388F2F8B2AC0203C39F4B3 |
:10C550004F89588D401B510B588F4F8B21C0C801FC |
:10C56000AA2797FDA095BA2F332727FD3095432F93 |
:10C57000532FBC01CD010E94657897FF04C0615C18 |
:10C580007F4F8F4F9F4FF6E09595879577956795ED |
:10C59000FA95D1F7AF89B88DA60FB71FB88FAF8BBB |
:10C5A000F301808191812F89388D8217930764F47C |
:10C5B000B901680F791F77FF02C06F5F7F4F7595D4 |
:10C5C0006795788F6F8B08C04F89588D440F551F22 |
:10C5D000481B590B588F4F8B822D9927880F991F15 |
:10C5E000880F991F6F89788D861797075CF4832DC4 |
:10C5F0009927880F991F880F991FAF89B88DA817A1 |
:10C60000B90714F0988F8F8B8F89988D97FD0396BB |
:10C610009595879595958795F4018183880F991F46 |
:10C62000880F991F2F89388D281B390BC901880F56 |
:10C630008283EF89F88DD301ED93FC9303C0F4015D |
:10C64000118212825A9422E030E0620E731E44E09E |
:10C6500050E0A40EB51E68E070E0860E971E57FEEF |
:10C66000D5CEE2E1C85E0C9410798091EF039091F1 |
:10C67000F003A091F103B091F2038093E70390934C |
:10C68000E803A093E903B093EA038091EB03909150 |
:10C69000EC03A091ED03B091EE038093E30390933C |
:10C6A000E403A093E503B093E60308951092FA0320 |
:10C6B0001092F9031092F8031092F703089584B1D1 |
:10C6C000806A84B93D9A82E58CBD1DBC459A81E0A3 |
:10C6D000809313088AEA8093240883E880932508CE |
:10C6E0008AE080932608109228081092270810925A |
:10C6F0002A081092290810927E0810924608089580 |
:10C7000030911308332309F085C00DB407FE82C0B1 |
:10C7100084E080932302459A2EB58091FE039927E9 |
:10C720008130910589F0823091051CF4892B21F02C |
:10C730003EC00297B9F03BC0309345082093FF03F9 |
:10C740002138A9F581E008C0253549F48091FF031F |
:10C75000820F8093FF0382E08093FE0328C0309312 |
:10C76000FE0325C080914508E82FFF27EF59F74FBA |
:10C7700020838F5F809345089091FF038A31A0F05A |
:10C78000291769F48AE1A1E6B8E0E7E4F8E00D9042 |
:10C7900001928A95E1F781E08093460802C03093C8 |
:10C7A00046081092FE0303C0920F9093FF0320915E |
:10C7B0002308203208F028C045980000000000003F |
:10C7C0000000000000000000000000000000000069 |
:10C7D0000000000000000000000000000000000059 |
:10C7E00000000000000000000000E0911C08F09133 |
:10C7F0001D08E20FF11D80818EBD8091430890815C |
:10C80000890F8093430803C081E0809313082F5F52 |
:10C81000209323080895EF92FF920F931F93809126 |
:10C8200034069927880F991F880F991F7C010027CC |
:10C83000F7FC0095102F8091710390917203A091E5 |
:10C840007303B0917403BC01CD01A80197010E944C |
:10C85000D978309328082093270880916903909114 |
:10C860006A03A0916B03B0916C03BC01CD01A801D8 |
:10C8700097010E94D97830932A08209329082091A3 |
:10C88000090830910A0840910B0850910C08DA0110 |
:10C89000C901E3E0880F991FAA1FBB1FEA95D1F7D2 |
:10C8A000820F931FA41FB51F820F931FA41FB51FD4 |
:10C8B00020919601309197014091980150919901F2 |
:10C8C000BC01CD010E94D9783093300820932F0805 |
:10C8D000809182039091830320914302309144021E |
:10C8E000821B930B9093360880933508E091780370 |
:10C8F000F09179038091D8079091D907BF010E94E8 |
:10C90000A478CB019B01220F331F220F331F280F66 |
:10C91000391F280F391F37FF02C02D5F3F4F359554 |
:10C9200027953595279530932C0820932B088091D7 |
:10C93000050890910608BF010E94A4789B01220F70 |
:10C94000331F220F331F260F371F260F371F37FFC6 |
:10C9500002C02D5F3F4F359527953595279530932C |
:10C960002E0820932D0810927903109278031092CC |
:10C97000D9071092D80710920608109205088091E6 |
:10C98000260899278D30910509F466C08E309105EF |
:10C990005CF48B30910509F48EC08C3091050CF05D |
:10C9A0000FC10A9761F0ADC18F30910509F481C1C3 |
:10C9B0008F3091050CF45CC1409799F1A2C1809130 |
:10C9C000FE02809337088091FD02809338088091A1 |
:10C9D000FC02809339088091FB0280933A08809191 |
:10C9E000FA0280933B088091F90280933C08809181 |
:10C9F000F80280933D088091F70280933E08809171 |
:10CA0000E90280933F088091E902837F8093E902E5 |
:10CA10000E94262E809340088091750380934108E0 |
:10CA200070C180918008909181089093380880931C |
:10CA30003708809184089091850890933A088093F4 |
:10CA4000390880911E0190911F0180933B088091CD |
:10CA5000000180933C0855C1809168068093370897 |
:10CA6000809169068093380880916A06809339081E |
:10CA700080916B0680933A0880916C0680933B0806 |
:10CA80008091700680933C088091710680933D08E8 |
:10CA90008091720680933E088091750680933F08CE |
:10CAA00080917306809340088091740680934108BA |
:10CAB00080917606DAC0F89480911B06E82FFF2754 |
:10CAC000EE0FFF1FED5BF84F0190F081E02DE03895 |
:10CAD000F1051CF0EFE7F0E006C02FEFE138F207B8 |
:10CAE00014F4E1E8FFEFE093370880911C06E82F8B |
:10CAF000FF27EE0FFF1FED5BF84F0190F081E02D57 |
:10CB0000E038F1051CF0EFE7F0E006C06FEFE13828 |
:10CB1000F60714F4E1E8FFEFE093380880911A0675 |
:10CB2000E82FFF27EE0FFF1FED5BF84F0190F0811C |
:10CB3000E02DE038F1051CF0EFE7F0E006C08FEFE4 |
:10CB4000E138F80714F4E1E8FFEFE0933908809149 |
:10CB50001906E82FFF27EE0FFF1FED5BF84F01903E |
:10CB6000F081E02DE038F1051CF0EFE7F0E006C0C1 |
:10CB70002FEFE138F20714F4E1E8FFEF7894E09347 |
:10CB80003A0880911E0380933B0880911F03809395 |
:10CB90003C088091200380933D088091210380937D |
:10CBA0003E088091220380933F0880912303809365 |
:10CBB000400880912403809341088091250355C04B |
:10CBC00080915C04863018F010925C0485E08093BC |
:10CBD0003708809177068093380880910F039091F1 |
:10CBE0001003A0911103B0911203BC01CD0125E007 |
:10CBF00030E040E050E00E94D97830933A0820932A |
:10CC0000390880910B0390910C03A0910D03B09112 |
:10CC10000E03BC01CD0125E030E040E050E00E9471 |
:10CC2000D97830933C0820933B0880916D0680931F |
:10CC30003D0880916E0680933E0880916F06809338 |
:10CC40003F0880911D038093400880914307909195 |
:10CC50004407809341088091D1059091D20597FDBA |
:10CC6000039695958795959587958093420849C039 |
:10CC70001092370882E5809338081092390880E1D5 |
:10CC800080933A088091020180933B08809141048F |
:10CC900080933C088091420480933D088091430436 |
:10CCA00080933E088091440480933F08809145041E |
:10CCB00026C080914D068093370880917D06809331 |
:10CCC00038088091C101809339088091460680938D |
:10CCD0003A088091470680933B08809148068093EC |
:10CCE0003C088091C00180933D0880914A06809362 |
:10CCF0003E0880914B0680933F0880914C068093BC |
:10CD0000400880914608882309F4D8C08AEF8093B0 |
:10CD1000E9014091480850914908CA0181509E4F4D |
:10CD20008F5F9340B0F420914A0830914B08C901BD |
:10CD300081509E4F8F5F934060F48091250685FF60 |
:10CD400008C05093FA034093F9033093F8032093FB |
:10CD5000F70380914E0890914F0821E089369207A1 |
:10CD600024F49093300380932F0380912F039091AC |
:10CD7000300320912D0330912E03821B930B845E90 |
:10CD80009D4F68E671E00E94A478845B9040909388 |
:10CD90002C0380932B0320915208309153088091EB |
:10CDA0002402909125028217930740F480915C043D |
:10CDB000882321F430932502209324028091470890 |
:10CDC00099278836910549F18936910524F48736EB |
:10CDD000910531F07BC08936910509F445C076C0D4 |
:10CDE0008091540880937B088091550880937D083A |
:10CDF0008091560880937C088091570880937E0824 |
:10CE00008091580880937F08809159088093EA01A7 |
:10CE100080915A088093FD0359C0809154088093F3 |
:10CE20001E088091550880931F08809156088093B2 |
:10CE3000200880915708809321088091580880939A |
:10CE400022088091C10590915908892B8093C105D2 |
:10CE500090915A089093FB038091C20583709C7057 |
:10CE6000892B8093C20532C08091540880931408A6 |
:10CE70008091550880931508809156088093160874 |
:10CE8000809157088093170880915808909159080D |
:10CE9000909319088093180880915A0890915B0824 |
:10CEA00090931B0880931A0880915C08992787FD4E |
:10CEB0009095909376078093750708C01092FA03B7 |
:10CEC0001092F9031092F8031092F7031F910F913B |
:10CED000FF90EF90089580911308882309F43BC0D8 |
:10CEE000459884E298E090931D0880931C089091E7 |
:10CEF000FC03E92FFF27E052FE4F9F5F9093FC0356 |
:10CF0000808180932608993010F01092FC031092D3 |
:10CF100013080E940B6481E0809323080000000046 |
:10CF20000000000000000000000000000000000001 |
:10CF300000000000000000000000000000000000F1 |
:10CF400000000000000000000000000080912408A4 |
:10CF5000809343088EBD089587B18C6087B942984D |
:10CF600043981092010480E88093EC011092000431 |
:10CF70008093EB010895809106048150809306040C |
:10CF80008F3F09F0FBC024E0209306048091E90262 |
:10CF9000992780739070892B21F48091420480FF3F |
:10CFA0001CC080916606882349F08091090488237B |
:10CFB00011F42093010481E08093090480916706B5 |
:10CFC0008823B9F080910A04882319F484E08093BF |
:10CFD000000481E080930A040CC0109209041092AE |
:10CFE0000A0480916206809307048091640680930E |
:10CFF000080480910904882309F040C080917C06D0 |
:10D00000282F332724FF07C080911403882319F4A5 |
:10D0100025FD4DC04EC090916306983F50F0809121 |
:10D02000DA078D3D30F08091070488230CF43FC06F |
:10D0300040C0983F48F08091DA078A3028F4809108 |
:10D0400007048823B4F133C0809101048150809398 |
:10D0500001048F3F79F58091DA07815080930104B4 |
:10D060008091EC01813011F480E801C086958093B5 |
:10D07000EC018091EC019091070417C080910104AC |
:10D080008150809301048F3FA9F489E080930104CB |
:10D090008091EC01813011F480E801C08695809385 |
:10D0A000EC018091EC0190916606892311F0429A7F |
:10D0B00001C0429880910A04882309F043C08091FE |
:10D0C0007C06282F332724FF07C080911403882370 |
:10D0D00019F426FD50C034C090916506983F50F079 |
:10D0E000809100088D3D30F08091080488230CF475 |
:10D0F00042C026C0983F48F0809100088A3028F44A |
:10D10000809108048823E4F036C0809100048150A7 |
:10D11000809300048F3F91F58091000881508093A7 |
:10D1200000048091EB01813011F480E801C0869504 |
:10D130008093EB018091EB01909108048923D9F44D |
:10D1400043980895809100048150809300048F3F9C |
:10D15000A9F489E0809300048091EB01813011F4FF |
:10D1600080E801C086958093EB018091EB0190915E |
:10D170006706892311F0439A0895439808954FB79D |
:10D1800024E130E0F8948091C9008F778093C90042 |
:10D190008091C9008F7B8093C9008091C9008F7DE9 |
:10D1A0008093C9005A9A52985B9A539A832F992771 |
:10D1B0008093CD002093CC008091C8008260809342 |
:10D1C000C80080E18093C9008091CA008F77809366 |
:10D1D000CA008091CA008F7B8093CA008091CA00E8 |
:10D1E0008F7D8093CA008091CA008F7E8093CA0091 |
:10D1F0008091CA00877F8093CA008091C9008B7F8D |
:10D200008093C9008091CA0084608093CA00809195 |
:10D21000CA0082608093CA008091C80087FF03C063 |
:10D220008091CE00F9CF8091C90080688093C900B9 |
:10D230004FBF0895EF92FF920F931F93CF93DF9309 |
:10D24000482F00E010E08091ED01813061F41092F0 |
:10D25000ED0184E480930B0410920D0410920C04F1 |
:10D2600010920E042BC180910B04882319F421E045 |
:10D2700030E001C0980190910C04992371F4232BA4 |
:10D2800011F081E010C084E480930B0490930D04AE |
:10D2900090930C0490930E04FAC0913069F4232B00 |
:10D2A00009F0EBC082E080930C0480910D048F5F45 |
:10D2B00080930D0483E0E9C09230D1F4232B09F070 |
:10D2C000DCC083E080930B0440930E0490910D0426 |
:10D2D000923039F410920F0447FF03C081E080932D |
:10D2E0000F0483E080930C049F5F90930D04CFC0E4 |
:10D2F000933009F0C2C0232B09F0BFC090930B04F8 |
:10D3000082E080930C0480910D048F5F80930D0464 |
:10D3100020910E04822F9927782F6627842F992732 |
:10D32000682B792B80913F06813049F47370CB01D3 |
:10D330008050924063E070E00E94A47817C0823071 |
:10D3400061F47770CB018050944066E070E00E94F9 |
:10D35000A4782695269526950BC073706856714063 |
:10D36000CB0177FD0196BC017595679526952695AD |
:10D37000022F11270F7010700F5F1F4F0D30110516 |
:10D3800008F074C07801E00EF11EF701ED5BF84F74 |
:10D39000808191819B01281B390BC90137FF03C094 |
:10D3A000909581959F4F069794F480911D03883C3A |
:10D3B00030F480911D03865F80931D0308C088ECC4 |
:10D3C00080931D0380916F008F7D80936F00F70124 |
:10D3D000ED5BF84F808191819C01220F331F280F54 |
:10D3E000391F260F371F37FF02C02D5F3F4FE9015E |
:10D3F000D595C795D595C795CB0101968C179D07F7 |
:10D4000014F4219706C061507040C617D7070CF47A |
:10D41000219680911D03843BD0F0F701ED5BF84F1E |
:10D4200080819181FE01E81BF90BCF0163E070E080 |
:10D430000E94A478CB01880F991F860F971F27E7BA |
:10D4400037E0E20EF31EF7019183808307C027E7E0 |
:10D4500037E0E20EF31EF70111821082000F111F58 |
:10D460000D5B184FF801D183C08311C00231110543 |
:10D4700070F081E08093ED010AC081E08093ED01BE |
:10D4800010920D0410920F0484E480930B04809199 |
:10D490000D04803198F080910F04882331F480913D |
:10D4A000ED01882311F48093940110920D041092E1 |
:10D4B0000F0410920C0484E480930B04E6E0CDB7D3 |
:10D4C000DEB70C941C79CF93FC0197FF05C0CFEF1A |
:10D4D000F095E195FF4F01C0C1E028E631E0CF01B2 |
:10D4E000B9010E94A478FC018B35910554F08B554D |
:10D4F00090408A35910538F484EB90E08E1B9F0BA9 |
:10D50000FC0141E00DC0CF01855B90408A3591055B |
:10D5100018F4E45BF04003C02E1B3F0BF9014FEF02 |
:10D52000EE0FFF1FEF5BF54F259134918C2F99275C |
:10D5300087FD9095289FB001299F700D389F700D31 |
:10D540001124842F992787FD9095689FA001699FDA |
:10D55000500D789F500D1124CA01CF9108952AE5EE |
:10D5600030E0281B390BC9010E94636A0895CF93EC |
:10D57000DF9380E00E941A7080911E0190911F013C |
:10D580006AE070E00E94A4789F938F9380911E01BF |
:10D5900090911F016AE070E00E94A4787F936F93DE |
:10D5A0008FE09BE09F938F93CDE0D0E7DF93CF9305 |
:10D5B000E0912804F091290409952DB73EB7285F22 |
:10D5C0003F4F2DBF8091E9018823B9F186E00E9489 |
:10D5D0001A7080911808909119086AE070E00E9412 |
:10D5E00090787F936F938FED90E09F938F938091CE |
:10D5F000090890910A08A0910B08B0910C0820919D |
:10D600009601309197014091980150919901BC0188 |
:10D61000CD010E94D9783F932F9388E19BE09F939F |
:10D620008F93DF93CF93E0912804F091290409951B |
:10D630008DB79EB70A968DBF12C086E00E941A7001 |
:10D6400084E29BE09F938F93DF93CF93E091280434 |
:10D65000F091290409950F900F900F900F908091F1 |
:10D66000FB038823C1F086E00E941A708091FB03BF |
:10D6700099279F938F938BE29BE09F938F93DF93E8 |
:10D68000CF93E0912804F091290409952DB73EB776 |
:10D690002A5F3F4F2DBF80E10E941A708091F301F5 |
:10D6A0009091F4016CE370E00E9490789F938F93C7 |
:10D6B0008091F3019091F4016CE370E00E94907806 |
:10D6C0007F936F9380918408909185089F938F93A7 |
:10D6D00086E39BE09F938F93CDE0D0E7DF93CF93DA |
:10D6E000E0912804F09129040995809125062DB731 |
:10D6F0003EB7265F3F4F2DBF80FF29C08AE10E94C1 |
:10D700001A708091950199279F938F9380910F03B1 |
:10D7100090911003A0911103B0911203BC01CD01AF |
:10D7200024E630E040E050E00E94D9783F932F9308 |
:10D7300083E49BE09F938F93DF93CF93E091280442 |
:10D74000F091290409958DB79EB708968DBFDF919A |
:10D75000CF910895CF93DF9380E00E941A7080915B |
:10D760000107992787FD90959F938F938091F906E4 |
:10D77000992787FD90959F938F938091F106992724 |
:10D7800087FD90959F938F938091E906992787FD58 |
:10D7900090959F938F938AE49BE09F938F93CDE026 |
:10D7A000D0E7DF93CF93E0912804F0912904099505 |
:10D7B00080E10E941A702DB73EB7245F3F4F2DBF06 |
:10D7C00080912107992787FD90959F938F93809152 |
:10D7D0001907992787FD90959F938F938091110743 |
:10D7E000992787FD90959F938F938091090799279B |
:10D7F00087FD90959F938F938AE59BE09F938F93EE |
:10D80000DF93CF93E0912804F0912904099580914A |
:10D8100017062DB73EB7245F3F4F2DBF853098F4D4 |
:10D8200080E10E941A708AE69BE09F938F93DF93BA |
:10D83000CF93E0912804F091290409950F900F905F |
:10D840000F900F9018C08730B0F488E10E941A70D2 |
:10D850008FED90E09F938F938BE79BE09F938F9347 |
:10D86000DF93CF93E0912804F091290409958DB7B7 |
:10D870009EB706968DBFDF91CF9108950F931F93AA |
:10D8800080E00E941A702AE030E080918008909138 |
:10D890008108B9010E9490789F938F9380918008AE |
:10D8A00090918108B9010E9490787F936F93809145 |
:10D8B0001E0190911F01B9010E94A4789F938F933C |
:10D8C00080911E0190911F01B9010E94A4787F935D |
:10D8D0006F9384E89BE09F938F930DE010E71F9375 |
:10D8E0000F93E0912804F0912904099580E10E94AA |
:10D8F0001A708DB79EB70C968DBF80918408909159 |
:10D9000085089F938F9380918208909183089F93BD |
:10D910008F9387E99BE09F938F931F930F93E091E1 |
:10D920002804F091290409958DB79EB708968DBFFC |
:10D930001F910F9108950F931F93CF93DF938091C1 |
:10D94000E901CDE0D0E7882309F478C080E00E94A7 |
:10D950001A708091150899279F938F9380911708CB |
:10D9600099279F938F9383EA9BE09F938F938E01D8 |
:10D97000DF93CF93E0912804F091290409958DB7A6 |
:10D980009EB708968DBF80911608833031F48CE0E5 |
:10D990000E941A7082EB9BE005C08CE00E941A7016 |
:10D9A00087EB9BE09F938F93DF93CF93E0912804C5 |
:10D9B000F091290409950F900F900F900F9080918E |
:10D9C000140881FF12C08CE00E941A708CEB9BE05F |
:10D9D0009F938F931F930F93E0912804F091290454 |
:10D9E00009950F900F900F900F9080E10E941A7090 |
:10D9F0008FED90E09F938F9380911A0890911B0870 |
:10DA00009F938F9380911808909119086AE070E0B5 |
:10DA10000E9490787F936F9381EC9BE09F938F930C |
:10DA20008DE090E79F938F93E0912804F091290473 |
:10DA300009958DB79EB70A968DBF12C082E00E94ED |
:10DA40001A7081ED9BE09F938F93DF93CF93E091CA |
:10DA50002804F091290409950F900F900F900F90D2 |
:10DA6000DF91CF911F910F910895CF93C82F2091EF |
:10DA700010042093110499278F32910509F1803306 |
:10DA800091051CF44F97A1F02CC08F34910501F142 |
:10DA90008F38910531F5222319F481E090E038C0E8 |
:10DAA00086E0289FF0011124E950F54F849117C0BA |
:10DAB00086E0289FF0011124E850F54F84910FC0B3 |
:10DAC00086E0289FF0011124E750F54F849107C0AC |
:10DAD00086E0289FF0011124E650F54F8491809351 |
:10DAE000100490911004809111049813C0E00E94DA |
:10DAF00020709091100486E0989FF0011124E55069 |
:10DB0000F54F259134918C2FF901099580E090E033 |
:10DB1000CF91089510928108109280081092850884 |
:10DB2000109284081092830810928208109286083E |
:10DB30008AE090E00E9416179093130480931204D9 |
:10DB40000895CF93DF9380911204909113040E9463 |
:10DB50001F17882309F4AFC0809112049091130419 |
:10DB60000A969093130480931204E0E0F0E09F0182 |
:10DB700090E05FEFA2EEB6E04BE0ED018B8187FF16 |
:10DB80000BC09F5F8D81E80FF11D8981280F311D2A |
:10DB90008E81851708F4582F4150189647FFEDCF16 |
:10DBA00050938608232B41F52091180430911904D5 |
:10DBB00040911A0450911B04BB27A52F942F832F4B |
:10DBC0009093170480931604AA27BB27281B390BB0 |
:10DBD0004A0B5B0BCF01AA27BB27280F391F4A1F0F |
:10DBE0005B1F209318043093190440931A04509338 |
:10DBF0001B04E5E0F0E013C02091160430911704F7 |
:10DC00002E173F0718F4E21BF30B02C0E0E0F0E030 |
:10DC1000892F9927880F991FE80FF91F3596F093E0 |
:10DC20008108E0938008EF3FF10578F480911E01B0 |
:10DC300090911F018E9F90018F9F300D9E9F300D00 |
:10DC40001124C90164E670E013C0CF019695879551 |
:10DC50009695879520911E0130911F01289FA00164 |
:10DC6000299F500D389F500D1124CA0169E170E0C1 |
:10DC70000E94907870938308609382082091140426 |
:10DC8000309115042E0F3F1F309315042093140478 |
:10DC90005EE02131350778F0809184089091850805 |
:10DCA0000196909385088093840820513E403093DC |
:10DCB000150420931404DF91CF9108954FB720E409 |
:10DCC00030E0F8948091C9008F778093C9008091EB |
:10DCD000C9008F7B8093C9008091C9008F7D80939C |
:10DCE000C9005A9A52985B9A539A832F9927809326 |
:10DCF000CD002093CC008091C80082608093C80042 |
:10DD000088E18093C9008091CA008F778093CA0010 |
:10DD10008091CA008F7B8093CA008091CA008F7D5A |
:10DD20008093CA008091CA008F7E8093CA00809140 |
:10DD3000CA00877F8093CA008091C9008B7F80933F |
:10DD4000C9008091CA0084608093CA008091CA0093 |
:10DD500082608093CA008091C80087FF03C08091D1 |
:10DD6000CE00F9CF8091C90080688093C9004FBF71 |
:10DD700008950F931F93CF93DF93482F4F5F8931FF |
:10DD800008F08BC080914207841720F44F5F4093C6 |
:10DD900042074150CB0183539B4268E170E00E94EF |
:10DDA000A478A42FBB27FD01EA0FFB1FED5BF84F02 |
:10DDB000808191819B01281B390BC90137FF03C06A |
:10DDC000909581959F4F069794F480911D03883C10 |
:10DDD00030F480911D03865F80931D0308C088EC9A |
:10DDE00080931D0380916F008F7D80936F00FD01F4 |
:10DDF000EA0FFB1FED5BF84F808191819C01220FA0 |
:10DE0000331F280F391F260F371F37FF02C02D5F22 |
:10DE10003F4FE901D595C795D595C795CB0101969B |
:10DE20008C179D0714F4219706C061507040C617E7 |
:10DE3000D7070CF4219680911D03843BD8F08D0107 |
:10DE40000A0F1B1FF801ED5BF84F80819181FE01E5 |
:10DE5000E81BF90BCF0163E070E00E94A478CB01CE |
:10DE6000880F991F860F971F0958184FF801918343 |
:10DE7000808307C0AA0FBB1FA958B84F11961C92E8 |
:10DE80001E92E42FFF27EE0FFF1FED5BF84FD183AB |
:10DE9000C083443011F410929401DF91CF911F910F |
:10DEA0000F910895CF93DF9320918708822F9927B0 |
:10DEB000807F9070409709F06CC02F3109F046C008 |
:10DEC000809188088093200420918A08209322045E |
:10DED00080918B0880932104822F99279093440787 |
:10DEE00080934307222309F054C080911906282FFC |
:10DEF0003327220F331FF901E958F84F118210829E |
:10DF000080911A06A82FBB27AA0FBB1FFD01E95855 |
:10DF1000F84F1182108280911C06E82FFF27EE0F28 |
:10DF2000FF1FCF018958984FEC01198218822D5B91 |
:10DF3000384FE90119821882AD5BB84F11961C92D7 |
:10DF40001E92ED5BF84F1182108223C0C22FCF705A |
:10DF5000CA30F8F4809188088093B10880918908CC |
:10DF60008093B00880918A088093B30880918B08D1 |
:10DF70008093B2086091B0087091B1088C2F0E9414 |
:10DF8000B96E6091B2087091B3088C2F8F5F0E94B8 |
:10DF9000B96EDF91CF910895CF93C82F8F3F49F489 |
:10DFA000809123048F3F29F41092250410922404B9 |
:10DFB00032C020912504222339F4CF3111F485E0B9 |
:10DFC00001C084E08093260480912604909124046B |
:10DFD0008217A0F4892F8095809324048F3F19F431 |
:10DFE0008EEF8093240480912404C81711F40E94BA |
:10DFF000526F10922504109224040BC0E22FFF27C9 |
:10E00000E957F74FC0832F5F209325049C0F90930F |
:10E010002404C0932304CF91089590911F04933258 |
:10E0200040F4E92FFF27E357F74F80839F5F9093DA |
:10E030001F040895833218F48D5F80931F040895A0 |
:10E0400090E2E0E9F8E08FE19193815087FFFCCF07 |
:10E050000895CF93CFB723E031E0F8948091C900C1 |
:10E060008F778093C9008091C9008F7B8093C9000E |
:10E070008091C9008F7D8093C9005A9A52985B9A0B |
:10E08000539A832F99278093CD002093CC008091C1 |
:10E09000C80082608093C80088E18093C9008091A5 |
:10E0A000CA008F778093CA008091CA008F7B8093CB |
:10E0B000CA008091CA0080628093CA008091CA0021 |
:10E0C00080618093CA008091CA0088608093CA00F2 |
:10E0D0008091C90084608093C9008091CA008460E7 |
:10E0E0008093CA008091CA0082608093CA008091A8 |
:10E0F000C80087FF03C08091CE00F9CF8091C9008E |
:10E1000080688093C9008091C90080648093C900B1 |
:10E110000E942070CFBFCF910895282F99278F702C |
:10E120009070892B31F4209580911E04822B80936E |
:10E130001E0408958091F001882309F441C0809164 |
:10E14000E90285FF0AC082E980938D0883E280930B |
:10E150008E0885E580938F0802C010928D0880910B |
:10E16000F1018F3071F480911E040E94356D882377 |
:10E1700041F081E980938D0880938E0881E380933C |
:10E180008F081092F0018091C80085FFFCCF80912C |
:10E19000C9008F7E8093C9008091C9008E7F8093D3 |
:10E1A000C90080918D08882311F48EEF01C08EE79D |
:10E1B0008093CE0080911E048093F10110921E0482 |
:10E1C00008951F920F920FB60F9211248F939F9371 |
:10E1D000EF93FF939091F001992309F040C0809153 |
:10E1E0002704882361F480918D08882311F483E04B |
:10E1F00003C0813999F481E0809327040FC08330F4 |
:10E2000099F480918D08882349F090938D0880912E |
:10E21000C9008E7F8093C9008EEF1EC08091C90017 |
:10E2200081608093C9000EC0833261F48091C9007F |
:10E230008E7F8093C9008FEF8093CE0081E0809322 |
:10E24000F00114C080912704E82FFF27E357F74F10 |
:10E250008F5F8093270480818093CE0007C0109247 |
:10E2600027048091C90080618093C900FF91EF91DC |
:10E270009F918F910F900FBE0F901F901895EF9266 |
:10E28000FF920F931F93CF93DF937C018B01EA01E1 |
:10E29000452B39F0F80181918F01F70109952197FC |
:10E2A000C9F7E6E0CDB7DEB70C941C79EF92FF9288 |
:10E2B0000F931F93CF93DF937C018B01EA01452BD2 |
:10E2C00041F0F8010F5F1F4F8491F70109952197E5 |
:10E2D000C1F7E6E0CDB7DEB70C941C790F931F931E |
:10E2E000CF938C01C62F161634F480E2F8010995FD |
:10E2F000C1501C16D4F3CF911F910F9108950F9325 |
:10E300001F93CF938C01C62F161634F480E3F801C7 |
:10E310000995C1501C16D4F3CF911F910F91089508 |
:10E32000A5E3B0E0E6E9F1E70C94F4782E96EEADC3 |
:10E33000FFAD2E9788249924540180911D048823D1 |
:10E3400021F42C961FAE1EAE2C975EE4452E512C68 |
:10E350004C0E5D1E6F01B60105C0153239F00894F0 |
:10E36000C11CD11CF60114911123B9F7A601461B5B |
:10E37000570B31F02C968EAD9FAD2C970E945671A5 |
:10E38000112309F46AC20894C11CD11CFF24FDA604 |
:10E39000FCA64FEFE42EF9A6F6010894C11CD11C8F |
:10E3A0001491153721F0812F80628837B1F4F0FE87 |
:10E3B0000AC0F20124E030E0420E531E80809180BA |
:10E3C000A280B3800AC0F20142E050E0440E551E24 |
:10E3D000808191814C01AA24BB24103221F489A5AB |
:10E3E0008823D1F61DC0133219F458E0F52AD4CF92 |
:10E3F0001A3211F01D3291F41A3259F4F20182E00E |
:10E4000090E0480E591EE081ECA7EE232CF6E19532 |
:10E41000ECA790E1F92AAFEDFA22BECF1B3211F43E |
:10E4200019A7BACF1E32C1F5F6010894C11CD11C40 |
:10E4300014911A3279F4F20122E030E0420E531EB8 |
:10E44000408151813FEF4F3F530714F44FEF5FEF8F |
:10E45000E42EA2CF40E050E0812F80538A30A0F418 |
:10E46000CA0133E0880F991F3A95E1F7840F951F91 |
:10E47000480F591F410F511D40535040F601089459 |
:10E48000C11CD11C1491E8CF8FEF4F3F580714F4F3 |
:10E490004FEF5FEFE42E85CF103329F4F4FC7CCFEF |
:10E4A00090E2F92A79CF812F81538930D8F440E066 |
:10E4B00050E0CA0123E0880F991F2A95E1F7840FE5 |
:10E4C000951F480F591F410F511D40535040F601F1 |
:10E4D0000894C11CD11C1491812F80538A3048F3B9 |
:10E4E0004CA75FCF183619F4A4E0FA2A55CF1C3692 |
:10E4F00019F4B1E0FB2A50CF133661F43E010894C1 |
:10E50000611C711CF20122E030E0420E531E80813A |
:10E5100089833CC1143421F0143611F0193651F5B9 |
:10E52000143411F431E0F32AF0FE0AC0F20144E0A1 |
:10E5300050E0440E551E80809180A280B3800CC0B4 |
:10E54000F20182E090E0480E591E808191814C01D9 |
:10E55000AA2497FCA094BA2CB7FE0AC0B094A09449 |
:10E5600090948094811C911CA11CB11C8DE289A700 |
:10E570000AE06FC01F3411F01F3631F41F3411F45C |
:10E5800091E0F92A08E064C0103779F4F201A2E0C2 |
:10E59000B0E04A0E5B1E808191814C01AA24BB240D |
:10E5A00000E1B0E4FB2A18E753C01337C1F5F201CC |
:10E5B00022E030E0420E531E6080718061147104CD |
:10E5C00089F43E010894611C711C88E289838EE6FF |
:10E5D000F301818385E78B838CE68C838D8389E2CD |
:10E5E0008E831F82E7FC13C08E2D992787FD90959F |
:10E5F000AC0160E070E0C3010E94C176009729F091 |
:10E60000382E3618E3140CF0C3C03E2CC1C0F30101 |
:10E6100001900020E9F731973E2E3618B9C0153524 |
:10E6200011F0153731F4153511F4F1E0FF2A0AE045 |
:10E630000FC0183519F0183709F0A0C000E1F3FE3B |
:10E6400007C081149104A104B10411F020E4F22A5E |
:10E6500019A6EDA6E7FC02C03FEDF32289E2682E81 |
:10E66000712C6C0E7D1E81149104A104B10421F45F |
:10E670004DA5442309F47BC0802F9927AA27BB27E7 |
:10E680008EA79FA7A8ABB9AB202E332490E08916A4 |
:10E6900090E0990691E0A90690E0B90648F0C5011E |
:10E6A000B4012EA53FA548A959A90E94B77817C063 |
:10E6B000AFEF8A169104A104B10449F040F0C401FF |
:10E6C000B1010E9490789B014427552708C0882DEE |
:10E6D000602F0E948478282F3327442755272AABA0 |
:10E6E0003BAB4CAB5DAB0A3059F48AA9880F880F5D |
:10E6F000880F9AA9990F890F382D381B832F10C0C6 |
:10E70000003139F48AA98295807F482D481B842FD7 |
:10E7100007C08AA9880F880F880F582D581B852F8E |
:10E7200090E02EA53FA548A959A982169306A406F4 |
:10E73000B50608F091E08AA89BA8ACA8BDA88A30CD |
:10E7400010F4805D04C0895A183509F48F7DD30117 |
:10E750008E933D01992309F099CF083041F4F3FEDF |
:10E7600006C0803321F080E3FD0182933F01CE019A |
:10E770000196382E3618F8E23F0E0BC0112309F42B |
:10E780006CC03E010894611C711C1983B1E03B2EE2 |
:10E7900019A6032D2DA4231827FC222489A588233C |
:10E7A00011F00F5F02C0F6FC0E5F020DEF2CFF248C |
:10E7B000C70180739070892B49F48CA5801B682F4A |
:10E7C0002C968EAD9FAD2C970E946E7189A58823E3 |
:10E7D00031F041E050E0BE01675D7F4F0AC0E6FEC8 |
:10E7E0000EC080E38AA71BA742E050E0BE01665D31 |
:10E7F0007F4F2C968EAD9FAD2C970E943F71C70125 |
:10E8000080739070809749F48CA5801B682F2C969C |
:10E810008EAD9FAD2C970E947F71622D2C968EAD90 |
:10E820009FAD2C970E947F71832D992787FD90952E |
:10E83000AC01B3012C968EAD9FAD2C970E943F7119 |
:10E84000E4FE89CD2CA5201B2CA7622F2C968EAD23 |
:10E850009FAD2C970E946E717ECDE2E1CB5C0C9453 |
:10E8600010792FB740E0F894E0E0F0E081E2809387 |
:10E8700057009491E2E0F0E0809357003491E4E097 |
:10E88000F0E08093570084912FBF9E3199F4363980 |
:10E8900041F4893011F441E00DC08A3059F442E06E |
:10E8A00009C0373939F4863011F443E003C08530AC |
:10E8B00009F444E0842F992708959FB7F894809134 |
:10E8C000C900877F8093C9008091C9008F7E8093A3 |
:10E8D000C9008091C9008F778093C9008091C900D9 |
:10E8E0008F7B8093C9008091C9008F7D8093C90080 |
:10E8F00052985A9A53985B9A9FBF08951F93CF934B |
:10E90000DF93182F80911D04882309F48DC0809116 |
:10E91000EF01181709F488C080911C04882321F4A2 |
:10E920000E94317480931C048AEC9CE09F938F9327 |
:10E93000C0EFD2E1DF93CF93E0912804F091290456 |
:10E9400009950F900F900F900F90812F992782308B |
:10E95000910501F1833091052CF4009761F0019746 |
:10E9600069F024C084309105D9F084309105ACF071 |
:10E970000597C9F01BC08AEB9CE002C088EA9CE0C6 |
:10E980009F938F93DF93CF93E0912804F091290414 |
:10E99000099518C08FE89CE0F3CF8CE69CE0F0CF9F |
:10E9A0008EE59CE0EDCF86E59CE0EACF87ED9CE02C |
:10E9B0009F938F93DF93CF93E0912804F0912904E4 |
:10E9C000099510E00F900F900F900F9080911C040C |
:10E9D000843011F0823099F40E945D74812F81504F |
:10E9E000833018F40E94BF681DC0143019F40E94CF |
:10E9F000297018C01530B1F40E945E6E13C0112347 |
:10EA000089F08DEE9CE09F938F9380EF92E19F932E |
:10EA10008F93E0912804F091290409950F900F90AD |
:10EA20000F900F901093EF01DF91CF911F910895F8 |
:10EA30000F931F9381E080931D044091EE01E6E067 |
:10EA4000FCE020E030E05FE4849199272F5F3F4FA6 |
:10EA5000829FB001839F700D929F700D11244627F5 |
:10EA60005150319657FFF0CF4093EE01EEEDFBE0B1 |
:10EA700020E030E057E2849199272F5F3F4F829F3B |
:10EA8000B001839F700D929F700D11244627515045 |
:10EA9000319657FFF0CF4093EE0180911C048823FC |
:10EAA00021F40E94317480931C048091EE01833420 |
:10EAB00059F088E190E029E20FB6F894A895809388 |
:10EAC00060000FBE2093600080E991E790932904D5 |
:10EAD0008093280488E09DE09F938F9300EF12E1DC |
:10EAE0001F930F93E0912804F091290409950F904A |
:10EAF0000F900F900F9081E690E09F938F9382E5A7 |
:10EB000090E09F938F931F921F92809102016AE081 |
:10EB10000E948478892F99279F938F938091020177 |
:10EB20000E94847899279F938F938EE29DE09F9314 |
:10EB30008F931F930F93E0912804F0912904099576 |
:10EB400086E09CE09F938F931F930F93E09128049E |
:10EB5000F091290409958EED9BE09F938F931F936D |
:10EB60000F93E0912804F091290409958DB79EB781 |
:10EB700046968DBF82E69DE09F938F931F930F93E0 |
:10EB8000E0912804F0912904099583EC8093810099 |
:10EB900080916F00806280936F000F900F900F90B4 |
:10EBA0000F901F910F91089580911D04882361F0AB |
:10EBB0008091EF01843011F40E949A708091EE01EF |
:10EBC000833411F010921D0408951F920F920FB616 |
:10EBD0000F9211242F933F934F935F936F937F93E3 |
:10EBE0008F939F93AF93BF93EF93FF932091CE00AA |
:10EBF0008091FA018823B1F02093C6008091FA0138 |
:10EC0000823029F52F3F19F58FEF94E3ACE0B0E0A7 |
:10EC1000C297A109B109B7FFFBCF80916B04809324 |
:10EC2000CE0015C09091EF01892F8150833020F4E0 |
:10EC3000822F0E941A690BC0943021F4822F0E9407 |
:10EC40008D7005C0953019F4822F0E94CC6FFF9112 |
:10EC5000EF91BF91AF919F918F917F916F915F9154 |
:10EC60004F913F912F910F900FBE0F901F901895CD |
:10EC7000002422273327442751E0BB27EE27FF2714 |
:10EC8000A0E1660F771F881F991F001C221F331FEA |
:10EC9000441F660F771F881F991F001C221F331FF8 |
:10ECA000441F2AF4050E2B1F3E1F4F1F04C0051AD8 |
:10ECB0002B0B3E0B4F0B550FBB1FEE1F587F5560A4 |
:10ECC00047FD5250AA95E9F6E695B7955795E69512 |
:10ECD000B7955795852F9B2F08952227332741E01D |
:10ECE000552768E0880F991F221F331F880F991F2F |
:10ECF000221F331F1AF4240F351F02C0241B350BAB |
:10ED0000440F551F487F456037FD42506A9551F7C3 |
:10ED10005695479556954795842F0895AA2797FFAE |
:10ED200004C0809590958A1F9A1F77FF04C0609554 |
:10ED300070956A1F7A1F669F9001779FA001679F59 |
:10ED4000300D411D5A1F300D411D5A1F889FF00183 |
:10ED5000999F2E0F3F1F401D511D899F300D411D52 |
:10ED60005A1F300D411D5A1FCA01B901112480CF0D |
:10ED7000FB01DC0102C005900D9241505040D8F7D4 |
:10ED80000895FC014150504030F001900616D1F733 |
:10ED90003197CF010895882799270895A0E0B0E022 |
:10EDA000E4EDF6E70C94FC786C017B01EA01590173 |
:10EDB00021978FEFCF3FD80789F086010894C11CB7 |
:10EDC000D11CC7010894E11CF11CF5010995F8015B |
:10EDD00080832197FFEFCF3FDF0779F7EAE0CDB7D8 |
:10EDE000DEB70C941879CF92DF92EF92FF920F93D7 |
:10EDF0001F937C016B01FB010995082FC701019648 |
:10EE0000F6010995182FC8011F910F91FF90EF90FF |
:10EE1000DF90CF900895A0E0B0E0E1E1F7E70C9437 |
:10EE2000FE788C017B01EA01690121978FEFCF3FCA |
:10EE3000D80771F0F70121917F01C8010F5F1F4FC3 |
:10EE4000622FF60109952197FFEFCF3FDF0791F77A |
:10EE5000E8E0CDB7DEB70C941A79CF92DF92EF924B |
:10EE6000FF920F931F936C018B017A01FA010995B0 |
:10EE7000812F9927682FC6010196F70109951F91E7 |
:10EE80000F91FF90EF90DF90CF9008955058BB27DF |
:10EE9000AA270ED0E0C0D1D030F0D6D020F031F487 |
:10EEA0009F3F11F41EF4C6C00EF4E095E7FBBCC012 |
:10EEB000E92FE2D080F3BA1762077307840795073A |
:10EEC00018F071F49EF5FAC00EF4E0950B2EBA2FEF |
:10EED000A02D0B01B90190010C01CA01A001112460 |
:10EEE000FF27591B99F0593F50F4503E68F11A160C |
:10EEF000F040A22F232F342F4427585FF3CF46959D |
:10EF000037952795A795F0405395C9F77EF41F16BE |
:10EF1000BA0B620B730B840BBAF09150A1F0FF0F88 |
:10EF2000BB1F661F771F881FC2F70EC0BA0F621F74 |
:10EF3000731F841F48F4879577956795B795F79564 |
:10EF40009E3F08F0B3CF9395880F08F09927EE0FF6 |
:10EF500097958795089598D088F09F5790F0B92F8E |
:10EF60009927B751A0F0D1F0660F771F881F991F1E |
:10EF70001AF0BA95C9F712C0B13081F09FD0B1E054 |
:10EF800008959CC0672F782F8827B85F39F0B93F64 |
:10EF9000CCF3869577956795B395D9F73EF4909520 |
:10EFA0008095709561957F4F8F4F9F4F0895E8949E |
:10EFB00009C097FB3EF490958095709561957F4FC1 |
:10EFC0008F4F9F4F9923A9F0F92F96E9BB2793956F |
:10EFD000F695879577956795B795F111F8CFFAF47F |
:10EFE000BB0F11F460FF1BC06F5F7F4F8F4F9F4FB0 |
:10EFF00016C0882311F096E911C0772321F09EE80E |
:10F00000872F762F05C0662371F096E8862F70E073 |
:10F0100060E02AF09A95660F771F881FDAF7880F4D |
:10F020009695879597F9089597F99F6780E870E01E |
:10F0300060E008959FEF80EC089500240A9416166E |
:10F04000170618060906089500240A9412161306D6 |
:10F05000140605060895092E0394000C11F4882364 |
:10F0600052F0BB0F40F4BF2B11F460FF04C06F5F80 |
:10F070007F4F8F4F9F4F089557FD9058440F551F56 |
:10F0800059F05F3F71F04795880F97FB991F61F02A |
:10F090009F3F79F087950895121613061406551FA1 |
:10F0A000F2CF4695F1DF08C0161617061806991F0D |
:10F0B000F1CF86957105610508940895E894BB2702 |
:10F0C00066277727CB0197F90895629FD001739F38 |
:10F0D000F001829FE00DF11D649FE00DF11D929FF4 |
:10F0E000F00D839FF00D749FF00D659FF00D992733 |
:10F0F000729FB00DE11DF91F639FB00DE11DF91F57 |
:10F10000BD01CF0111240895991B79E004C0991F16 |
:10F11000961708F0961B881F7A95C9F78095089571 |
:10F12000AA1BBB1B51E107C0AA1FBB1FA617B7072D |
:10F1300010F0A61BB70B881F991F5A95A9F7809549 |
:10F140009095BC01CD01089597FB092E07260AD0A2 |
:10F1500077FD04D0E5DF06D000201AF470956195A4 |
:10F160007F4F0895F6F7909581959F4F0895A1E2FE |
:10F170001A2EAA1BBB1BFD010DC0AA1FBB1FEE1F31 |
:10F18000FF1FA217B307E407F50720F0A21BB30B7C |
:10F19000E40BF50B661F771F881F991F1A9469F7F8 |
:10F1A00060957095809590959B01AC01BD01CF0154 |
:10F1B000089597FB092E05260ED057FD04D0D7DF02 |
:10F1C0000AD0001C38F450954095309521953F4F5A |
:10F1D0004F4F5F4F0895F6F7909580957095619524 |
:10F1E0007F4F8F4F9F4F08952F923F924F925F9284 |
:10F1F0006F927F928F929F92AF92BF92CF92DF9247 |
:10F20000EF92FF920F931F93CF93DF93CDB7DEB7AB |
:10F21000CA1BDB0B0FB6F894DEBF0FBECDBF09943F |
:10F220002A88398848885F846E847D848C849B8496 |
:10F23000AA84B984C884DF80EE80FD800C811B81A4 |
:10F24000AA81B981CE0FD11D0FB6F894DEBF0FBED3 |
:10F25000CDBFED010895EE0FFF1F0590F491E02D55 |
:04F260000994FFCF3F |
:10F264005E010A010164FF01FFFFC01FC01F01010D |
:10F2740001737373FF03007D0000C409C4096400B3 |
:10F284001148656C6C6F20576F726C64000000004D |
:10F29400000000000000000000000000000000006A |
:10F2A400000000000000000000000000000000005A |
:10F2B400000000000000000000000000000000004A |
:10F2C400000000000000000000000000000000003A |
:10F2D4000053706F727400004E6F726D616C0000A9 |
:10F2E400426567696E6E6572000051756164726F84 |
:10F2F4000000640001200B050000ECFF000204067E |
:10F30400070808080706040200FEFCFAF9F8F8F8F2 |
:10F31400F9FAFCFE000204060708086440415A4654 |
:10F3240064640A02969696960840403A10FB303878 |
:10F334000190D0030090D00300F4017800FF03642F |
:10F344000B0A0D0B0C0E0B0F10FA2001010170FFBC |
:02F35400010FA7 |
:00000001FF |
/branches/metro/v0.82a metro_Akku+/Hex-Files/Flight-Ctrl_MEGA1284p_V0_82a_S3D.hex |
---|
0,0 → 1,3847 |
:100000000C94C4060C9413070C9413070C94130758 |
:100010000C9413070C9413070C9413070C941307F8 |
:100020000C9413070C943B190C9413070C941307AE |
:100030000C9425340C9413070C9413070C94130799 |
:100040000C9413070C9413070C940B160C941307C1 |
:100050000C94260C0C9413070C94F00B0C941307BF |
:100060000C941E1C0C9413070C94B82F0C941307BB |
:100070000C945D740C9413070C94596F0C94130733 |
:100080000C9413070C9413070C941307491C4E1C73 |
:10009000531C5C1C731C8A1C9A1CAA1CC71CB31E14 |
:1000A0008A1C751D861DB51DD31DF01D4A1EA51E7B |
:1000B00083201521D2215222BB226B237225CF250A |
:1000C0003C268626D1261E276F27D1273028CA280E |
:1000D00065295F2AD72F0B304E30BE30D63017310E |
:1000E000CE319532953295329532953295329532A0 |
:1000F00095329532953295324A324C3251326932CC |
:100100006B320A0D426174743A0020256420436505 |
:100110006C6C732000204C6F77207761726E696E73 |
:1001200067206C6576656C3A2025642E2564000A8C |
:100130000D466F756E6420424C2D4374726C3A20EC |
:10014000002564000A0D0A0D2121204D4953534911 |
:100150004E4720424C2D4354524C3A2025642021D6 |
:1001600021000A0D3D3D3D3D3D3D3D3D3D3D3D3D7B |
:100170003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DAF |
:100180003D3D3D3D3D3D3D000A0D43616C69627260 |
:100190006174696E67207072657373757265207320 |
:1001A000656E736F722E2E004F4B0A0D000A0D46BE |
:1001B0006C696768742D74696D65202575206D699B |
:1001C0006E2020546F74616C3A2575206D696E0045 |
:1001D0000A0D436F6E74726F6C3A2000486561645B |
:1001E000696E67486F6C64004E6F726D616C202899 |
:1001F0004143432D4D6F646529000A0D3D3D3D3D52 |
:100200003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D1E |
:100210003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D0A41 |
:100220000D00416E676C654E69636B2020202020B5 |
:100230002020416E676C65526F6C6C20202020205E |
:1002400020204163634E69636B2020202020202002 |
:100250002020416363526F6C6C20202020202020DE |
:1002600020205961774779726F202020202020209C |
:1002700020204865696768742056616C7565202088 |
:1002800020204163635A202020202020202020208D |
:1002900020204761732020202020202020202020A3 |
:1002A0002020436F6D706173732056616C756520FB |
:1002B0002020566F6C74616765205B302E31565D6F |
:1002C00020205265636569766572204C6576656CA1 |
:1002D00020204779726F20436F6D70617373202007 |
:1002E00020204D6F746F722031202020202020208C |
:1002F00020204D6F746F722032202020202020207B |
:1003000020204D6F746F7220332020202020202069 |
:1003100020204D6F746F7220342020202020202058 |
:1003200020203136202020202020202020202020A6 |
:100330002020313720202020202020202020202095 |
:100340002020313820202020202020202020202084 |
:100350002020313920202020202020202020202073 |
:100360002020536572766F2020202020202020201E |
:100370002020486F7665726761732020202020203E |
:10038000202043757272656E74205B302E31415DA2 |
:1003900020204361706163697479205B6D41685D01 |
:1003A0002020323420202020202020202020202027 |
:1003B0002020323520202020202020202020202016 |
:1003C0002020323620202020202020202020202005 |
:1003D00020203237202020202020202020202020F4 |
:1003E00020204932432D4572726F72202020202038 |
:1003F0002020424C204C696D697420202020202050 |
:1004000020204750535F4E69636B2020202020201E |
:1004100020204750535F526F6C6C202020202020FA |
:10042000202021212120494E434F4D504154494223 |
:100430004C4520212121002A002E000A0D20444194 |
:1004400043206F7220493243204552524F5221209F |
:10045000436865636B204932432C203356726566CE |
:100460002C2044414320616E6420424C2D43747221 |
:100470006C005B25695D005B25695D002B204D6983 |
:100480006B726F4B6F70746572202B0048573A5631 |
:1004900025642E25642053573A25642E2564256350 |
:1004A0000053657474696E673A25642025730048AB |
:1004B00061726477617265204572726F7220313AA1 |
:1004C0002564202121004D697373696E6720424CB9 |
:1004D0002D4374726C3A25642121004D6978657250 |
:1004E000204572726F722100493243204552524FAB |
:1004F00052212121004865696768743A202025351A |
:100500006900536574706F696E743A2535690050DF |
:10051000726573737572653A253569004F66667347 |
:1005200065743A202025356900486569676874203C |
:10053000636F6E74726F6C0044495341424C454482 |
:100540000048656967687420636F6E74726F6C0031 |
:1005500044495341424C4544006163742E20626516 |
:100560006172696E67004E69636B3A20202020201B |
:100570002025356900526F6C6C3A20202020202005 |
:1005800025356900436F6D706173733A2020202513 |
:100590003569004B313A25346920204B323A2534F5 |
:1005A0006920004B333A25346920204B343A2534F6 |
:1005B0006920004B353A25346920204B363A2534E2 |
:1005C0006920004B373A25346920204B383A2534CE |
:1005D0006920004E693A2534692020526F3A25344B |
:1005E00069200047733A253469202047693A253449 |
:1005F00069200050313A253469202050323A2534A0 |
:1006000069200050333A253469202050343A25348B |
:100610006920004779726F202D2053656E736F72C9 |
:10062000004E69636B25346920282533692E2569BE |
:100630002900526F6C6C25346920282533692E25DA |
:10064000692900476965722534692028253369299D |
:10065000004E69636B2025346920282533692E25D7 |
:10066000782900526F6C6C20253469202825336965 |
:100670002E257829005961772020253469202825E6 |
:10068000336929004E69636B20253469202825339E |
:100690006929282533692900526F6C6C202534693B |
:1006A00020282533692928253369290059617720B5 |
:1006B0002025346920282533692928253369290014 |
:1006C000414343202D2053656E736F72004E696362 |
:1006D0006B2025346920282533692900526F6C6C02 |
:1006E00020253469202825336929005A202020201C |
:1006F00025346920282533692900566F6C74616799 |
:10070000653A2020202533692E253169560043752E |
:100710007272656E743A2020202533692E25316966 |
:100720004100506F7765723A2020202020253469DF |
:1007300057004469736368617267653A20253569BB |
:100740006D41680052656365697665720052432D9C |
:10075000525353493A202020202534690052432D1A |
:100760005175616C6974793A202534690052432DC2 |
:100770004368616E6E656C733A25346900436F6D32 |
:10078000706173730048656164696E673A20202563 |
:1007900035690056616C75653A2020202025356941 |
:1007A0000053746172743A2020202025356900506E |
:1007B0006F7469313A202025336900506F746932B3 |
:1007C0003A202025336900506F7469333A20202580 |
:1007D000336900506F7469343A2020253369005022 |
:1007E0006F7469353A202025336900506F7469367B |
:1007F0003A202025336900506F7469373A2020254C |
:10080000336900506F7469383A20202533690053EA |
:100810006572766F202000536574706F696E742066 |
:100820002025336900506F736974696F6E3A202513 |
:1008300033690052616E67653A2533692D25336946 |
:100840000045787465726E436F6E74726F6C202011 |
:10085000004E693A2534692020526F3A25346920C8 |
:100860000047733A253469202047693A25346920C6 |
:100870000048693A253469202043663A25346920C6 |
:1008800000424C2D4374726C204572726F7273205B |
:100890000025336420253364202533642025336408 |
:1008A000200025336420253364202533642025333C |
:1008B00064200025336420253364202533642025FB |
:1008C00033642000424C2054656D7065726174750C |
:1008D0007265002533692025336920253369202579 |
:1008E00033692000253369202533692025336920A9 |
:1008F0002533692000253369202533692025336994 |
:10090000202533692000424C2D4374726C20666FA1 |
:10091000756E642000202563202020256320202080 |
:10092000256320202025632000202563202020250A |
:1009300063202020256320202025632000202563BC |
:100940002020202D2020202D2020202D200031307F |
:1009500000313100313200466C696768742D54698A |
:100960006D65202000546F74616C3A2535756D6992 |
:100970006E004163743A20202535756D696E00283C |
:10098000726573657429000A0D47656E657261743E |
:10099000696E672064656661756C74205061726170 |
:1009A0006D6574657220536574202564000A0D55C9 |
:1009B00073696E6720506172616D65746572205352 |
:1009C0006574202564000A0D47656E65726174695F |
:1009D0006E672064656661756C74204D6978657218 |
:1009E000205461626C65000A0D4D697865722D4373 |
:1009F0006F6E6669673A20272573272028257520A2 |
:100A00004D6F746F727329000A0D3D3D3D3D3D3DB4 |
:100A10003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D06 |
:100A20003D3D3D3D3D3D3D3D000A0D414343206E72 |
:100A30006F742063616C69627261746564210D0A70 |
:100A40000000008F001E01AD013B02CA025803E600 |
:100A500003740402058F051B06A7063307BE07486B |
:100A600008D2085B09E3096B0AF20A780BFD0B81D7 |
:100A70000C040D860D070E870E060F840F00107BE9 |
:100A800010F5106E11E5115B12CF124213B3132350 |
:100A9000149214FE146A15D3153B16A11605176798 |
:100AA00017C81727188318DE1837198E19E3193657 |
:100AB0001A871AD61A231B6E1BB61BFD1B411C83FB |
:100AC0001CC31C001D3C1D751DAB1DE01D121E42EC |
:100AD0001E6F1E9A1EC31EE91E0D1F2E1F4D1F697D |
:100AE0001F841F9B1FB01FC31FD31FE11FEC1FF5E7 |
:100AF0001FFB1FFF1F0020030100002F69000201E0 |
:100B000001226A01030202B66A02000303136B2585 |
:100B100032692E253169560025336425632025303E |
:100B200033646D00537461747573004552524F52B3 |
:100B30003A2025326400253469202532693A25306F |
:100B40003269002534696D2563002533692025331A |
:100B50006920253369202533690025336920253331 |
:100B60006920253369202533690054656D706572ED |
:100B70006174757265732020202000256343202056 |
:100B8000202020002532692E25316956202025336A |
:100B9000692E253169410025346957202536696D54 |
:100BA0004168002532756D2F73205361743A2564B6 |
:100BB000200020203344004E6F46780044475053B5 |
:100BC00000486F6D653A2533646D202533642563D5 |
:100BD000004E6F204E6176694374726C21000A0DDD |
:100BE0007777772E4D696B726F4B6F707465722ECD |
:100BF00064652028632920486953797374656D738F |
:100C000020476D6248000A0D746865207573652081 |
:100C10006F66207468697320736F6674776172659C |
:100C2000206973206F6E6C79207065726D697474C1 |
:100C30006564200A0D6F6E206F726967696E616C62 |
:100C4000204D696B726F4B6F707465722D486172C5 |
:100C50006477617265004143542044534C004A65F7 |
:100C6000746920736174656C6C6974005370656B92 |
:100C70007472756D20736174656C6C697420284C96 |
:100C80006F77207265736F6C7574696F6E2900538E |
:100C900070656B7472756D20736174656C6C6974CA |
:100CA00020283230343829005370656B7472756DAA |
:100CB00020736174656C6C6974004D756C74697334 |
:100CC00069676E616C2050504D000A0D5265636576 |
:100CD000697665723A2000756E6B6E6F776E2E20A6 |
:100CE0005573696E672050504D2E2E2E006E6F7416 |
:100CF00020737570706F727465642062792068610A |
:100D000072647761726521000A0D3D3D3D3D3D3DB8 |
:100D10003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D03 |
:100D20003D3D3D3D3D3D3D3D3D3D3D3D3D000A0D93 |
:100D3000466C69676874436F6E74726F6C0A0D4815 |
:100D4000617264776172653A25642E25640A0D53D9 |
:100D50006F6674776172653A5625642E2564256343 |
:100D600020000A0D3D3D3D3D3D3D3D3D3D3D3D3D70 |
:100D70003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DA3 |
:100D80003D3D3D3D3D3D3D0011241FBECFEFD0E434 |
:100D9000DEBFCDBF11E0A0E0B1E0E4E5FFEE00E092 |
:100DA0000BBF02C007900D92A23FB107D9F718E020 |
:100DB000A2EFB1E001C01D92A834B107E1F77AEAD1 |
:100DC000E2E0F0E081E280935700D4907E01089445 |
:100DD000E11CF11C20EF37EF41E050E087016FE0AC |
:100DE000DA01C9012F5F3F4F4F4F5F4FABBFFC018F |
:100DF0008791F80181938F01615067FFF1CFF7016F |
:100E00006EE0819178277095615067FFFACF8889ED |
:100E1000781729F0F7E9DF1611F40000FECF0E94E1 |
:100E2000D4070C94A9770C9400008091AD05E82FAD |
:100E3000FF27EE0FFF1FE952F94F808191818D5EF0 |
:100E40009F4F14F010920301808191818A5B9F4F24 |
:100E5000CCF4809103018823A9F481E080930301FD |
:100E60008091F0038F5F8093F003853038F088EE37 |
:100E700093E0909325028093240204C066E970E019 |
:100E80000E9407368091F003992790937E05809306 |
:100E90007D0508951F93CF93DF93182F882389F042 |
:100EA00082E091E09F938F9380EF92E19F938F93E5 |
:100EB000E091BC03F091BD0309950F900F900F9046 |
:100EC0000F908091D005823308F044C084EF91E008 |
:100ED0000E941617EC01112329F0CE010E941F1762 |
:100EE0008823D9F3C2E0D0E026E530E080911E01EE |
:100EF00090911F018217930730F02196255D3F4F97 |
:100F0000C730D10598F38091D0059927C89F9001EB |
:100F1000C99F300DD89F300D11242093000111235B |
:100F2000D9F068EC70E08C2F0E940736DF93CF93E6 |
:100F30008AE091E09F938F9380EF92E19F938F934C |
:100F4000E091BC03F091BD0309958DB79EB706965D |
:100F50008DBF02C080930001112311F18091000127 |
:100F60006AE00E94FC76892F99279F938F93809146 |
:100F700000010E94FC7699279F938F9385E191E071 |
:100F80009F938F9380EF92E19F938F93E091BC03A7 |
:100F9000F091BD0309952DB73EB7285F3F4F2DBF98 |
:100FA000DF91CF911F910895CFEFD0E4DEBFCDBF89 |
:100FB0008824992414B815B8C7EED3E0E297D7FF78 |
:100FC000FDCF85E18093020181E887B93E9A8FEFDA |
:100FD00088B98BE184B911E015B98EE38AB987E449 |
:100FE0008BB9469A84B7877F84BF809160008861FF |
:100FF000809360001092600084EC99E09093250249 |
:10100000809324021092AC021092AB021092DC0684 |
:101010001092DB061092AE021092AD021092B00256 |
:101020001092AF0284EC94E0A0E0B0E080939601CF |
:1010300090939701A0939801B093990128980E94EA |
:101040007F170E9450170E94F8120E9409340E94D4 |
:10105000AF1A812F0E946C2F0E94D7610E94026CF0 |
:101060000E949073809102018C3010F4299A01C083 |
:10107000299878940E94862E80916C0282608093D9 |
:101080006C0210926F020E94294184EF91E00E944D |
:101090001617EC0180916C0280FD05C0CE010E9404 |
:1010A0001F178823B9F38FE291E09F938F93C0EFCE |
:1010B000AC2EC2E1BC2EBF92AF92E091BC03F09186 |
:1010C000BD03099580EA9FE00E941617EC0100E03D |
:1010D00010E00F900F900F900F90B9E7EB2EB6E055 |
:1010E000FB2EADE2CA2EA6E0DA2E0E9429418091A5 |
:1010F0006C0280FD05C0CE010E941F178823B9F342 |
:10110000F60180811816ACF40BC00E942941809131 |
:101110006C0280FD05C0CE010E941F178823B9F321 |
:10112000CE010E941F17882321F4F70180818823B4 |
:1011300064F7F701808187FF1AC00F5F1F4F1F936D |
:101140000F930150104081E491E09F938F93BF92E1 |
:10115000AF92E091BC03F091BD0309958091F2013B |
:101160008F5F8093F2018DB79EB706968DBF0F5F9C |
:101170001F4FE4E0F0E0CE0EDF1E88E090E0E80EC6 |
:10118000F91E0C30110508F4B0CF00E010E0C6E7FE |
:10119000D6E0FDE2EF2EF6E0FF2E8B8187FD1EC02C |
:1011A000F70180811816D4F40F5F1F4F1F930F9320 |
:1011B0000150104084E491E09F938F9380EF92E17F |
:1011C0009F938F93E091BC03F091BD03099582E05A |
:1011D000809322028DB79EB706968DBF8B81807853 |
:1011E0008B830F5F1F4FE4E0F0E0EE0EFF1E2896AA |
:1011F0000C30110590F282E691E09F938F93E0EF1F |
:10120000EE2EE2E1FE2EFF92EF92E091BC03F09110 |
:10121000BD0309959091AB058091F2010F900F905D |
:101220000F900F90981728F48091D60380618093D7 |
:10123000D60388E891E09F938F93FF92EF92E0911D |
:10124000BC03F091BD03099588EE93E00E94161748 |
:10125000EC010E94B51A0F900F900F900F90CE01E5 |
:101260000E941F178823D9F388EA91E09F938F93F8 |
:10127000FF92EF92E091BC03F091BD03099580E0ED |
:101280000E94C936809102010F900F900F900F902D |
:101290008A3011F0843110F0289801C0289A80ED2E |
:1012A00097E0909325028093240285E58093F203D2 |
:1012B0008EE090E00E94BB2C9927182F00278FE02A |
:1012C00090E00E94BB2C080F111D1093F8010093B1 |
:1012D000F7018AE090E00E94BB2C9927182F002785 |
:1012E0008BE090E00E94BB2C080F111D1093F601BB |
:1012F0000093F5010F5F1F4F39F08091F701909136 |
:10130000F8018F5F9F4F41F41092F8011092F7019E |
:101310001092F6011092F5018091F5019091F6017D |
:101320009F938F938091F7019091F8019F938F93F2 |
:101330008DEA91E09F938F93FF92EF92E091BC032F |
:10134000F091BD0309958DB79EB708968DBF80EDCE |
:1013500091E09F938F93FF92EF92E091BC03F09105 |
:10136000BD0309958091B9050F900F900F900F90D4 |
:10137000E091BC03F091BD0382FF07C08CED91E0CA |
:101380009F938F93FF92EF9208C088EE91E09F9316 |
:101390008F9380EF92E19F938F9309950F900F9019 |
:1013A0000F900F900E94FA1F88E893E190939301A9 |
:1013B0008093920181E08093F1030E944A0780911B |
:1013C000D3050E94F6728AEF91E09F938F93FF926C |
:1013D000EF92E091BC03F091BD03099580ED97E099 |
:1013E0000E941617EC018AEF90E00E9416178C01FC |
:1013F00083E0809355050F900F900F900F90809190 |
:10140000FA018111FFCFC8010E941F17882339F00C |
:1014100084E690E00E9416178C010E944C74809123 |
:101420002802882309F4D4C180911001882309F48B |
:10143000CFC1109228028091F003882319F00E94F6 |
:10144000150702C00E9403440E9429412091020115 |
:101450002A3011F0243110F0289801C0289A809188 |
:10146000B1029091D603882339F08091B102815066 |
:101470008093B102977F0AC080916F008062809351 |
:101480006F001092D8061092D70698609093D603FA |
:101490008091920190919301019790939301809391 |
:1014A00092018091920190919301892B21F080917A |
:1014B0006D028823C9F18091920190919301892B4B |
:1014C000D9F40E94962F85E090E090939301809349 |
:1014D000920180918F0590919005019690939005CF |
:1014E00080938F058091D60381608093D60380918D |
:1014F00056058260809356058091080190910901FC |
:101500008F5F9F4F19F58091A8028823F9F080E141 |
:1015100097E2909325028093240280E890E09093D4 |
:1015200009018093080112C02A3011F0243110F013 |
:10153000289801C0289A8091240290912502892B35 |
:1015400029F48091D6038E7F8093D6038091280260 |
:10155000882309F03DC180910E01882311F00E947B |
:1015600096170E943B130E94760ECE010E941F1711 |
:10157000882309F429C1649680916D029091D60365 |
:10158000882339F092609093D6038091560582604B |
:101590000CC09D7F9093D60380919201909193010E |
:1015A000079728F0809156058D7F8093560580918E |
:1015B000920190919301079728F08091D6038E7F36 |
:1015C0008093D60380910501882321F08150809378 |
:1015D000050125C08093FC031092890210928802B5 |
:1015E0001092870210928602109285021092840255 |
:1015F00080910801909109018F5F9F4F81F4809144 |
:10160000B102882361F488E99AE3909325028093DC |
:10161000240280E09CE0909309018093080180916E |
:10162000E901893C48F081508093E9018091D6031B |
:101630008B7F8093D60330C08091B5078823E1F07B |
:101640008091D60384608093D603809108019091A5 |
:1016500009018F5F9F4F81F48091A802882361F078 |
:1016600088E99AE3909325028093240280E098EA27 |
:10167000909309018093080110928E0310928D03BC |
:1016800010928C0310928B038FEF9FEF9093E307E0 |
:101690008093E2071092E90180910001282F3327FF |
:1016A00080911E0190911F0182179307CCF48091C5 |
:1016B0007D02806280937D028091080190910901F2 |
:1016C0008F5F9F4FC1F480E797E19093250280934D |
:1016D000240280E093E090930901809308010BC0FD |
:1016E0008091240290912502892B29F480917D021A |
:1016F0008F7D80937D020E94E36584E080932302C6 |
:101700008091A802882329F45AEA852E55E0952E67 |
:1017100012C08091F9018F5F8093F901813359F4F0 |
:101720001092F9018091F3019091F4010196909348 |
:10173000F4018093F3010894811C911CF2E78F1649 |
:10174000FBE09F0609F040C0882499242091F7010E |
:101750003091F8012F5F3F4F3093F8012093F7014C |
:101760008091F5019091F60101969093F601809396 |
:10177000F501832F9927682F8EE090E00E94C32CFB |
:101780008091F7019091F8019070682F8FE090E0C0 |
:101790000E94C32C8091F5019091F601892F992721 |
:1017A000682F8AE090E00E94C32C8091F50190910F |
:1017B000F6019070682F8BE090E00E94C32C84E1CA |
:1017C00090E00E941617EC010E9433660E94196C8B |
:1017D00080912302882309F012CE0E94F8610FCE77 |
:1017E0001F920F920FB60F9211248F939F93EF9336 |
:1017F000FF93809107018823E1F480911402909176 |
:10180000150201969093150280931402FC01E55590 |
:10181000FB4FE081ED3019F08A3A910539F41092CE |
:1018200015021092140281E080930701E093C60034 |
:1018300004C01092150210921402FF91EF919F9133 |
:101840008F910F900FBE0F901F9018951F920F92BF |
:101850000FB60F9211242F933F934F935F936F9383 |
:101860007F938F939F93AF93BF93CF93EF93FF9308 |
:1018700090E08091FA01813029F48091C600809334 |
:10188000CE00CCC08091FA01823029F48091C6004C |
:101890008093FF03C3C08091C60080930C025091D7 |
:1018A0001A025A3A10F090931B0280910C028D306C |
:1018B00009F065C080911B02823009F060C09093EE |
:1018C0001B02852F992781509C4FFC013297408144 |
:1018D0002091160230911702241B3109DC01119767 |
:1018E0008C91281B3109C9019F7090931702809336 |
:1018F000160246E0969587954A95E1F7982F935CF6 |
:10190000909318022F733070235C2093190280810A |
:10191000981729F48C91281711F491E006C090E0F3 |
:10192000809109028F5F80930902C0910B02CC2342 |
:1019300009F074C0992309F471C081E080930B020F |
:10194000580F509308025150E52FFF27E150FC4FEC |
:101950008DE0808380910104823509F05FC00E9490 |
:10196000FA1F88E190E02CE00FB6F894A8958093D8 |
:1019700060000FBE20936000C09322024FC02091F0 |
:101980001B02822F992781309105F9F08230910551 |
:101990001CF4892B21F040C0029711F13DC08091C9 |
:1019A0000C02833239F480910B02882319F481E010 |
:1019B00080931B0280910C028093FF0381E080934F |
:1019C0001A0280910C02992722C02F5F20931B02DC |
:1019D000E52FFF27E150FC4F80910C02808309C066 |
:1019E000E52FFF27E150FC4F80910C0280835A3A8B |
:1019F00020F45F5F50931A0202C010921B022091E4 |
:101A00000C028091160290911702820F911D909303 |
:101A100017028093160202C010921B02FF91EF91F1 |
:101A2000CF91BF91AF919F918F917F916F915F9176 |
:101A30004F913F912F910F900FBE0F901F901895CF |
:101A4000AC01A0E0B0E09D01A817B90748F4EBEAAB |
:101A5000F4E08191280F311D1196A417B507C8F342 |
:101A60003F70FD01E555FB4FC90156E096958795FE |
:101A70005A95E1F7835C80831196FD01E555FB4F94 |
:101A80002F733070822F835C8083A455BB4F8DE011 |
:101A90008C93109207018091AB048093C600089547 |
:101AA000A0E0B0E0E6E5FDE00C9475772C859D851F |
:101AB0000E85BB2483E28093AB049F599093AC04C2 |
:101AC0002093AD0433E0E32EF12C002309F49EC0F3 |
:101AD000CF84D888BE016D5E7F4FA989BA89015035 |
:101AE000109709F493C01097B9F0F601EB0DF11DB2 |
:101AF000B3949081119791F4002349F1FB016E5F3B |
:101B00007F4FDB01C080D1806E5F7F4F0D90BC9115 |
:101B1000A02DBB24015002C090E019C01097B9F06D |
:101B2000F601EB0DF11DB3944081119791F4002360 |
:101B300041F1FB016E5F7F4FDB01C080D1806E5FA2 |
:101B40007F4F0D90BC91A02DBB24015002C040E0FE |
:101B500018C01097B1F0F601EB0DF11DB394108190 |
:101B6000119781F4002371F0FB013296DB01CD90D7 |
:101B7000DC90BF016E5F7F4FA081B181BB2401501B |
:101B800001C010E0F701E555FB4F892F869586953A |
:101B9000835C80830894E11CF11CF701E555FB4F41 |
:101BA000892F99278370907024E0880F991F2A95B8 |
:101BB000E1F755279A0194E0369527959A95E1F734 |
:101BC000822B835C80830894E11CF11CF701E555AE |
:101BD000FB4F4F705070440F551F440F551F812FFE |
:101BE000992726E0969587952A95E1F7842B835CC3 |
:101BF00080830894E11CF11CF701E555FB4F1F732E |
:101C0000135C10830894E11CF11C6ACFC7010E9489 |
:101C1000200DE9E00C949177A3E07A2F409108021F |
:101C20004650442309F458C0E72FFF27E150FC4FEA |
:101C300080818D537F5FE72FFF27E150FC4F20818C |
:101C40002D537F5FE72FFF27E150FC4F30813D533D |
:101C50007F5FE72FFF27E150FC4F60816D537F5F6F |
:101C60009927880F991F880F991F522F52955F70DF |
:101C7000582B822F99278F709070F4E0880F991F4E |
:101C8000FA95E1F7232F26952695282B832F992760 |
:101C900083709070E6E0880F991FEA95E1F7682B52 |
:101CA00041504F3FC9F0EA2FFF27E150FC4F5083CE |
:101CB000AF5F41504F3F81F0EA2FFF27E150FC4FCB |
:101CC0002083AF5F41504F3F39F0EA2FFF27E150AB |
:101CD000FC4F6083AF5FA5CF82E094E09093070252 |
:101CE00080930602A350A09305020895A2E0B0E0FD |
:101CF000ECE7FEE00C947B7780910B02882309F4DB |
:101D00006BC40E940C0E80910004823609F025C33A |
:101D10008091010499278037910509F4C1C081376A |
:101D20009105C4F48A36910509F48DC28B3691056C |
:101D300044F48B34910571F18636910509F46CC138 |
:101D40000CC38D36910509F47BC08E36910509F4DC |
:101D50005FC003C384379105D1F1853791054CF4F9 |
:101D60008137910509F4A3C08337910509F4F1C0C7 |
:101D7000F4C28737910509F428C2883791052CF4FD |
:101D80008537910509F4E4C1E8C28937910509F462 |
:101D90007AC1E3C2E0910602F0910702808191814D |
:101DA0009093C4028093C3022091C1023091C20279 |
:101DB000821B930B845E9D4F68E671E00E941C7746 |
:101DC000845B90409093C0028093BF02C6C2809112 |
:101DD0000802A0910602B0910702853140F080E12F |
:101DE000EAEDF3E00D9001928A95E1F70DC08D9137 |
:101DF0009D910D90BC91A02D8093DA039093DB030D |
:101E0000A093DC03B093DD0380EF809303024BC00B |
:101E1000809107018823E1F38DE490E09F938F93F5 |
:101E200080E296E09F938F9381E08F938F938EE46F |
:101E30008F930E94500D8DB79EB707968DBF8DC2B0 |
:101E4000A0910602B09107021C91113081F48DE43B |
:101E5000E0E2F6E00D9001928A95E1F70E94C32D31 |
:101E600019838091D6038F7E8093D60301C0198297 |
:101E7000809107018823E1F381E090E09F938F93A5 |
:101E8000CE0101969F938F9381E08F938F938DE482 |
:101E90008F930E94500DADB7BEB71796ADBF5DC210 |
:101EA00081E080930E028FEF8093050156C2E0918E |
:101EB0000602F0910702E0818E2F8A508A3058F492 |
:101EC0008983882311F481E003C0863010F085E017 |
:101ED000898361E00EC08E2F84518A3070F489832B |
:101EE000882311F481E003C0863010F085E08983F7 |
:101EF00060E089810E94432E12C0E983EF3F19F40C |
:101F00000E94262E89838981882311F481E003C0F1 |
:101F1000863010F085E0898389810E94D92C8091D8 |
:101F200007018823E1F383E790E09F938F938CEA86 |
:101F300095E09F938F9381E090E09F938F93CE01E4 |
:101F400001969F938F9382E08F9381E08F9381E539 |
:101F500072C12091060230910702D9018C91815003 |
:101F6000853008F040C0F90181818535E1F52F5FAA |
:101F70003F4F83E7ECEAF5E0D9010D9001928A9595 |
:101F8000E1F7F90182910E94422D8091ED05992798 |
:101F9000AA27BB27BC01CD0124EC39E040E050E08A |
:101FA0000E94DD76DC01CB018093D5019093D601B0 |
:101FB000A093D701B093D8018091EE059927AA2765 |
:101FC000BB27BC01CD010E94DD76DC01CB018093F3 |
:101FD000D1019093D201A093D301B093D4010E9478 |
:101FE000262E898301C01982809107018823E1F39D |
:101FF00081E090E09F938F93CE0101969F938F9302 |
:1020000081E08F938F9383E58F930E94500D8DB75E |
:102010009EB707968DBF26C0E0910602F091070299 |
:10202000E0818E2F8150853018F48E2F0E94D92C9C |
:102030000E94262E8983809107018823E1F381E0A5 |
:1020400090E09F938F93CE0101969F938F9381E0B1 |
:102050008F938F9386E48F930E94500DADB7BEB7D8 |
:102060001796ADBF8091A802882329F46EE670E030 |
:1020700089810E94073680E00E944A078091D3053B |
:102080000E94F6726AC1E0910602F0910702808117 |
:10209000992787FD90959093F2068093F1068181B0 |
:1020A000992787FD90959093F4068093F30682819B |
:1020B000992787FD90959093F6068093F506838186 |
:1020C000992787FD90959093F8068093F706848171 |
:1020D000992787FD90959093FA068093F90685815C |
:1020E000992787FD90959093FC068093FB06868147 |
:1020F000992787FD90959093FE068093FD06878132 |
:10210000992787FD9095909300078093FF0680851F |
:10211000992787FD90959093020780930107818509 |
:10212000992787FD909590930407809303078285F4 |
:10213000992787FD909590930607809305078385DF |
:10214000992787FD9095909308078093070705C10D |
:10215000E0910602F091070280810E9462338A8337 |
:10216000882319F481E0898301C0198280910701D5 |
:102170008823E1F388E090E09F938F938EE696E0CA |
:102180009F938F9321E030E03F932F93809106023D |
:10219000909107029F938F933F932F93CE010296C6 |
:1021A0009F938F933F932F93CE01820F931F9F9303 |
:1021B0008F9384E08F9381E08F9385E58F930E94C6 |
:1021C000500DEDB7FEB773963CC080910502893083 |
:1021D00008F4C3C020910602309107022F5F3F4FE1 |
:1021E00088E0AEE6B6E0F90101900D928A95E1F73C |
:1021F000D9018E910E94B8328A83882319F481E034 |
:10220000898301C01982809107018823E1F321E0CD |
:1022100030E03F932F93CE0102969F938F933F938D |
:102220002F93CE01820F931F9F938F9382E08F9302 |
:1022300081E08F9387E58F930E94500DEDB7FEB735 |
:102240003B96EDBF8AC00E94A9728983823019F043 |
:10225000843009F082C0F8948091C1008F7380931C |
:10226000C1008091C9008F738093C9008091C10023 |
:10227000877E8093C1008091C900877E8093C900CA |
:102280008091C80087FF03C08091CE00F9CF809174 |
:10229000C00087FF03C08091C600F9CFE09106021D |
:1022A000F09107028081882359F581E08093FA013B |
:1022B0001092CD0080E490E08093CC008091CD001E |
:1022C0008093C5008091CC008093C4008091CA00A7 |
:1022D0008F7D8093CA008091CA008F7E8093CA0050 |
:1022E0008091C9008B7F8093C9008091CA0084606F |
:1022F0008093CA008091CA0082608093CA0003C0A4 |
:1023000082E08093FA018091CA00877F8093CA009F |
:102310008091C200877F8093C2008091C9008E7F28 |
:102320008093C9008091C10088618093C100809131 |
:10233000C90088618093C9008091C1008068809342 |
:10234000C1008091C90080688093C90010926E001E |
:1023500010926F0010927000789480910104992778 |
:102360008436910509F4CDC085369105ACF48136EB |
:10237000910509F481C0823691052CF48B349105C6 |
:1023800009F45DC021C18236910509F482C083360B |
:10239000910509F491C018C18C36910509F4FFC06C |
:1023A0008D3691054CF48736910509F40AC18836BB |
:1023B000910509F4C4C008C18437910529F0863716 |
:1023C000910509F4FAC000C180910802A0910602AB |
:1023D000B0910702803140F080E1EAEDF3E00D902A |
:1023E00001928A95E1F70DC08D919D910D90BC9160 |
:1023F000A02D8093DA039093DB03A093DC03B093CA |
:10240000DD03809107018823E1F31F92809104018D |
:102410008F9384E58F930E94500D8AEF809303027F |
:102420008FEF8093050180EA9FE00E94161790933A |
:10243000FC018093FB010F900F900F90C5C0E091BD |
:102440000602F0910702808191819093C4028093EB |
:10245000C3022091C1023091C202821B930B845EA1 |
:102460009D4F68E671E00E941C77845B90409093DA |
:10247000C0028093BF02A8C0E0910602F09107025B |
:10248000808180930601803298F08FE1809306016D |
:102490000FC0A0910602B09107028BE0E2EFF3E0DB |
:1024A0000D9001928A95E1F78091FB038093970547 |
:1024B0008FEF8093050188C08091FF019091000209 |
:1024C000892B89F4E0910602F0910702E081EE2366 |
:1024D00051F08AE0E89FC00111240E9416179093E2 |
:1024E000CD038093CC03E0910602F0910702908126 |
:1024F0008AE0989FC0011124909300028093FF010D |
:1025000015C08FEF80930501E0910602F09107025C |
:1025100090818AE0989FC0011124909302028093D9 |
:102520000102892B19F081E08093100280EA9FE07C |
:102530000E9416179093FC018093FB0145C08FEF1A |
:1025400080930501E0910602F0910702908197FDCA |
:1025500008C082E080930D021092FE011092FD01EE |
:102560001AC0909580916502892B809365029181B4 |
:102570008AE0989FC00111249093FE018093FD0191 |
:1025800084E080930D0280EA9FE00E9416179093EA |
:10259000FC018093FB0181E08093110215C08FEF55 |
:1025A00080930501E0910602F091070280818093FB |
:1025B000660281E08093120207C081E080930F02DF |
:1025C00003C081E08093130210920B021092070265 |
:1025D0001092060210920502E3E0CE5F0C9497770A |
:1025E000982F8091C00085FFFCCF9093C60008957E |
:1025F0000F931F9388E18093C1008091C000826097 |
:102600008093C0008091C10080688093C100809158 |
:10261000C10080648093C10000E010E00093C50019 |
:102620008AE290E08093C4008091010290910202BE |
:102630000E9416179093CF038093CE038CED90E009 |
:102640000E9416179093FE038093FD031092D0030F |
:1026500082E58093D1031092D4038BE08093D20360 |
:102660001092D30310930702009306021092050202 |
:102670001F910F910895A0E1B0E0E1E4F3E10C9423 |
:10268000787780910701882309F4C1C28091FB010A |
:102690009091FC010E941F17882361F01092FE01A7 |
:1026A0001092FD011092020210920102109200029B |
:1026B0001092FF018091FD019091FE01892B41F064 |
:1026C0008091A9049091AA040E941F17882329F4DD |
:1026D00080911102882309F460C08091070188234A |
:1026E00009F45BC080910D0201E211E08430A8F092 |
:1026F0000E940E2080E590E09F938F931F930F938D |
:1027000081E08F938F9388E48F930E94500D2DB7B3 |
:102710003EB7295F3F4F2DBF34C01092670282E25F |
:1027200094E09F938F9383E090E29F938F93E09147 |
:10273000BC03F091BD03099584E190E09F938F93D2 |
:102740001F930F9381E090E09F938F938DE092E031 |
:102750009F938F9382E08F9381E08F9388E48F9390 |
:102760000E94500D80910D02982F8F5F80930D0273 |
:102770002DB73EB7215F3F4F2DBF943010F0109220 |
:102780000D028091FD019091FE010E941617909319 |
:10279000AA048093A9041092110280911202882346 |
:1027A00051F180910701882331F10E940E2080E5CC |
:1027B00090E09F938F9381E291E09F938F9321E02C |
:1027C00030E03F932F9380E291E09F938F933F936C |
:1027D0002F9386E692E09F938F9383E08F9381E01F |
:1027E0008F938CE48F930E94500D109212028DB73C |
:1027F0009EB70F968DBF80910F028823D1F08091F4 |
:1028000007018823B1F08AE090E09F938F9380EDD9 |
:1028100093E09F938F9381E08F938F9386E58F93BF |
:102820000E94500D10920F022DB73EB7295F3F4F07 |
:102830002DBF809113028823D9F08091070188234E |
:10284000B9F08BE090E09F938F9382EF93E09F939A |
:102850008F9381E08F93809104018F9387E48F930E |
:102860000E94500D109213028DB79EB707968DBF30 |
:102870008091FD039091FE030E941F17882309F4A5 |
:1028800061C080910701882309F45CC08091C8056C |
:102890009927880F991F880F991F7C010027F7FC43 |
:1028A0000095102F8091050390910603A0910703D6 |
:1028B000B0910803BC01CD01A80197010E94517796 |
:1028C0003093EB032093EA038091FD029091FE0286 |
:1028D000A091FF02B0910003BC01CD01A8019701B6 |
:1028E0000E9451773093ED032093EC038091920284 |
:1028F0008093EE03809191028093EF0388E090E053 |
:102900009F938F938AEE93E09F938F9381E08F93B1 |
:1029100083E08F938BE68F930E94500D8091F0039C |
:102920002DB73EB7295F3F4F2DBF853018F086E0A9 |
:102930008093F00383E690E00E9416179093FE03C5 |
:102940008093FD038091010290910202892B41F056 |
:102950008091CE039091CF030E941F17882321F40A |
:1029600080911002882339F180910701882319F1A1 |
:102970000E94FD3482E490E09F938F9385E595E07B |
:102980009F938F9381E08F938F9384E48F930E9422 |
:10299000500D109210028DB79EB707968DBF809193 |
:1029A000010290910202009731F00E941617909355 |
:1029B000CF038093CE038091FF0190910002892B79 |
:1029C00009F4B8C08091CC039091CD030E941F17E9 |
:1029D000882309F4AFC080910701882309F4AAC0B5 |
:1029E0008091C8059927880F991F880F991F7C012E |
:1029F0000027F7FC0095102F8091050390910603A6 |
:102A0000A0910703B0910803BC01CD01A801970173 |
:102A10000E9451773093BF032093BE038091FD0243 |
:102A20009091FE02A091FF02B0910003BC01CD0184 |
:102A3000A80197010E9451773093C1032093C003EE |
:102A400020919D0730919E0740919F075091A007CC |
:102A5000DA01C90163E0880F991FAA1FBB1F6A959D |
:102A6000D1F7820F931FA41FB51F820F931FA41FBE |
:102A7000B51F209196013091970140919801509196 |
:102A80009901BC01CD010E9451773093C30320937B |
:102A9000C2038091CD029091CE02A091CF02B0915D |
:102AA000D00239E0B595A795979587953A95D1F7D6 |
:102AB0008093C4038091C9029091CA02A091CB0275 |
:102AC000B091CC0229E0B595A795979587952A9561 |
:102AD000D1F78093C5038091D5029091D602A09141 |
:102AE000D702B091D80209E0B595A795979587953B |
:102AF0000A95D1F78093C6038EE090E09F938F9361 |
:102B00008EEB93E09F938F9381E08F938F9383E479 |
:102B10008F930E94500D8091FF01909100020E94BE |
:102B200016179093CD038093CC032DB73EB7295F42 |
:102B30003F4F2DBF809106018F3F71F1992714E01F |
:102B4000880F991F1A95E1F78E5D9D4F40E150E087 |
:102B5000BC01CE0101960E94307580E190E09F9308 |
:102B60008F93CE0101969F938F9381E090E09F9386 |
:102B70008F9386E091E09F938F9382E08F9381E023 |
:102B80008F9381E48F930E94500D8FEF8093060105 |
:102B90008DB79EB70B968DBF809197058823D1F096 |
:102BA000809107018823B1F081E090E09F938F939B |
:102BB00087E995E09F938F9381E08F938F9382E4D1 |
:102BC0008F930E94500D109297052DB73EB7295F45 |
:102BD0003F4F2DBF80910E028823C9F080910701DD |
:102BE0008823A9F084E390E09F938F9387ED96E08C |
:102BF0009F938F9381E08F938F9380E58F930E94B3 |
:102C0000500D10920E028DB79EB707968DBFE6E06D |
:102C1000C05F0C9494771F920F920FB60F921124FD |
:102C20002F933F935F936F937F938F939F93AF9374 |
:102C3000BF93EF93FF9320E080912302882329F034 |
:102C40008091230281508093230280919F038823E7 |
:102C500019F0815080939F0380912B0281508093C3 |
:102C60002B028F3F09F05BC089E080932B0280919B |
:102C7000290290912A02019690932A0280932902B8 |
:102C800080910F018F5F817080930F01882319F469 |
:102C900081E080932802349903C081E080932C0264 |
:102CA0008091240290912502892B21F180912402A8 |
:102CB000909125020B9750F080912402909125026B |
:102CC0000A97909325028093240204C01092250253 |
:102CD00010922402809124029091250220910801F3 |
:102CE0003091090182239323892B11F021E008C040 |
:102CF00020E006C08FEF9FEF9093090180930801B9 |
:102D000080910201222331F08A3011F45A9A07C0CF |
:102D1000479A05C08A3011F45A9801C047988091AB |
:102D20002C02882309F472C02091E901222309F0C2 |
:102D30006DC08091B90583FF69C086B19927FC01F8 |
:102D4000E071F07084FF14C08091260290912702F8 |
:102D500001969093270280932602809126029091FB |
:102D60002702895E934008F451C020932C024EC084 |
:102D70008091260290912702892B09F443C080910B |
:102D80002602909127028A569140E0F58091260212 |
:102D90009091270269E270E00E94087780912602F4 |
:102DA00090912702860F971F909327028093260207 |
:102DB00080912602909127020B9750F08091260275 |
:102DC000909127020A979093C4028093C30204C093 |
:102DD000F093C402E093C3028091C3029091C402B5 |
:102DE0002091C1023091C202821B930B845E9D4FE1 |
:102DF00068E671E00E941C77845B90409093C0026B |
:102E00008093BF021092270210922602FF91EF9149 |
:102E1000BF91AF919F918F917F916F915F913F9102 |
:102E20002F910F900FBE0F901F901895209129029F |
:102E300030912A02280F391FC90101960895209167 |
:102E4000290230912A02821B930B892F992786959C |
:102E5000807490700895CF93DF930E941617EC0151 |
:102E6000CE010E941F178823D9F3DF91CF910895D7 |
:102E7000CF93DF930E941617EC0109C080911001D7 |
:102E8000882329F0909310018FEC80937A00CE0173 |
:102E90000E941F17982F882389F3DF91CF910895FF |
:102EA0009FB7F8945F983E9A469A8091B0008F70D1 |
:102EB0008093B0008091B00083608093B0008091D7 |
:102EC000B1008B738093B1008091B1008B608093CF |
:102ED000B1001092B2008FEF8093B3008091B000E8 |
:102EE00080688093B000809170008A7F809370002A |
:102EF000809170008260809370009FBF08958AE087 |
:102F000090E00E941617909332028093310282E083 |
:102F100085BD83EA84BD17BC84EB88BD86E086BD91 |
:102F200080916E00816080936E000895A0E0B0E013 |
:102F3000ECE9F7E10C9477778091E305E82FFF2720 |
:102F4000E456FE4F9681D08080910E01A92FBB27B9 |
:102F5000A7FDB095CB2FDB2F813009F0C9C02091A0 |
:102F60000503309106034091070350910803BD010A |
:102F7000CE010E94DD7697FF04C061587F4F8F4FCE |
:102F80009F4F7B018C0167E015950795F794E794B7 |
:102F90006A95D1F78D2D992787FD9095A92FB92F87 |
:102FA0002091FD023091FE024091FF0250910003FA |
:102FB000BC01CD010E94DD7697FF04C061587F4FB0 |
:102FC0008F4F9F4F57E095958795779567955A95C1 |
:102FD000D1F7F801E701C61BD70BE80BF90B80917D |
:102FE000DA059927AA27BB27BC01CD019E01AF01B5 |
:102FF0000E94DD7697FF04C061507E4F8F4F9F4F38 |
:10300000FC01EB0149E0F595E795D795C7954A9501 |
:10301000D1F78091C101992736E0880F991F3A9521 |
:10302000E1F740910C0150910D012091E205332709 |
:10303000841B950BB9010E941C7780910C01909123 |
:103040000D01860F971F90930D0180930C018091C5 |
:103050000C0190910D0197FD0F9624E095958795B1 |
:103060002A95E1F790931F0280931E02809111062A |
:1030700080FF07C080911E0290911F028C0F9D1F40 |
:1030800006C080911E0290911F028C1B9D0B909395 |
:103090001F0280931E028091DB05282F3327220F09 |
:1030A000331F220F331F80911E0290911F0282173F |
:1030B00093077CF08091DC05282F3327220F331FE4 |
:1030C000220F331F80911E0290911F02281739078B |
:1030D00024F430931F0220931E0280910201843158 |
:1030E00008F4C2C080910E018F5F80930E01BEC0B4 |
:1030F0002091FD023091FE024091FF0250910003A9 |
:10310000BD01CE010E94DD7697FF04C061587F4F5C |
:103110008F4F9F4F7B018C01C7E015950795F79462 |
:10312000E794CA95D1F78D2D992787FD9095A92F02 |
:10313000B92F209105033091060340910703509168 |
:103140000803BC01CD010E94DD769B01AC0197FF15 |
:1031500004C021583F4F4F4F5F4FB7E055954795FB |
:1031600037952795BA95D1F72E0D3F1D401F511F5A |
:103170008091DE059927AA27BB27BC01CD010E94BB |
:10318000DD7697FF04C061507E4F8F4F9F4FFC014B |
:10319000EB01A9E0F595E795D795C795AA95D1F7E5 |
:1031A0008091C001992776E0880F991F7A95E1F701 |
:1031B00040910A0150910B012091E2053327841BB5 |
:1031C000950BB9010E941C7780910A0190910B0127 |
:1031D000860F971F90930B0180930A0180910A013B |
:1031E00090910B0197FD0F9664E0959587956A95F0 |
:1031F000E1F790931D0280931C028091110681FFDC |
:1032000007C080911C0290911D028C0F9D1F06C06B |
:1032100080911C0290911D028C1B9D0B90931D02AE |
:1032200080931C028091DF05282F3327220F331F44 |
:10323000220F331F80911C0290911D028217930769 |
:103240007CF08091E005282F3327220F331F220FB7 |
:10325000331F80911C0290911D022817390724F416 |
:1032600030931D0220931C0210920E01E7E0CDB7AF |
:10327000DEB70C9493771F920F920FB60F92112422 |
:103280002F933F934F935F938F939F93EF93FF936E |
:103290008091020190912D02843108F04CC0992355 |
:1032A00009F01CC18091B00086FF24C08091B0005D |
:1032B0008F7B8093B00080911E0290911F028755F2 |
:1032C0009E4F909321028093200225E08D3D92072E |
:1032D00018F08CED95E005C08757914030F487E7F2 |
:1032E00091E090932102809320028091200290919E |
:1032F0002102BAC08091B00080648093B0008091B8 |
:10330000E105282F33278DED96E0289FA001299F06 |
:10331000500D389F500D1124CA0120912E0230917A |
:103320002F02821B930B909321028093200281E055 |
:1033300080930E01D0C0992309F0D0C08091B000D5 |
:1033400086FF97C08091B0008F7B8093B000E091A2 |
:103350003002EE23F1F48091E105282F33278DED23 |
:1033600096E0289FA001299F500D389F500D1124F1 |
:10337000CA0120912E0230912F02821B930B909351 |
:1033800021028093200210922F0210922E02469A60 |
:10339000A2C089EA93E090932102809320028E2FAD |
:1033A000992783309105D9F08430910534F4813028 |
:1033B000910549F0029761F020C08430910591F0A9 |
:1033C000059799F01AC080911E0290911F0204C0C7 |
:1033D00080911C0290911D0287559E4F1DC08091C7 |
:1033E0006B0705C08091450702C08091730799273C |
:1033F000880F991F880F991FEFCFFF27EE0FFF1F30 |
:10340000E952F94F20813181220F331F8091200230 |
:1034100090912102820F931F9093210280932002AA |
:10342000809120029091210255E08D3D950718F082 |
:103430008CED95E005C08757914030F487E791E027 |
:10344000909321028093200220912002309121024A |
:103450002C5B3040309321022093200280912E0279 |
:1034600090912F02820F931F90932F0280932E0230 |
:1034700032C08091B00080648093B0008CEB90E00B |
:10348000909321028093200280912E0290912F022E |
:1034900084549F4F90932F0280932E02809122029A |
:1034A000882321F08091B102833320F4809122029D |
:1034B000823011F4469801C0469A809130028F5FA5 |
:1034C000809330029091E105981728F481E0809371 |
:1034D0000E011092300281E080932D022091200293 |
:1034E0003091210241E02F37340730F08FEF809385 |
:1034F000B3002F5F30400FC02F3F3105C9F0C0F03F |
:10350000A9014F5F50404F37510550F480E8809338 |
:10351000B30020583040309321022093200212C083 |
:103520008FEF8093B30050932102409320020AC092 |
:10353000809120028093B300109221021092200209 |
:1035400010922D02FF91EF919F918F915F914F917A |
:103550003F912F910F900FBE0F901F9018951092D2 |
:103560007C008FEC80937A000895CF93DF931092C4 |
:10357000370286E987BD83E090E00E94BB2CC82F0C |
:10358000863E08F4C65FC8BD84E690E00E94381706 |
:1035900080911401909115018152934010F0C0EF79 |
:1035A00002C0C530F8F0C8BD82E390E00E94381731 |
:1035B00087E394E09F938F9380EF92E19F938F93A3 |
:1035C000E091BC03F091BD030995809114019091A5 |
:1035D00015010F900F900F900F908152934010F4AF |
:1035E000C550DFCF6C2F83E090E00E94C32CCF301A |
:1035F00018F0CCE8D0E002C0C0E0D0E0CA3FD1056E |
:10360000F8F4C7BD82E390E00E94381789E394E0A4 |
:103610009F938F9380EF92E19F938F93E091BC03F0 |
:10362000F091BD03099580911401909115010F90BF |
:103630000F900F900F908052934010F02196DECFA4 |
:10364000C093A8058091B90580FF09C08C2F8A50CE |
:103650008B3E28F08091D50380648093D503C7BD4D |
:103660008CE291E00E943817DF91CF910895EF929C |
:10367000FF921F93CF9310E080ED97E00E94161702 |
:103680007C01CCE8133019F4CB3008F0C9E010E02D |
:1036900080914702909148028C5F934024F480917E |
:1036A000130181500AC080914702909148028750CF |
:1036B000944034F0809113018F5F8093130101C017 |
:1036C00011E080914502909146028C5F934024F472 |
:1036D0008091120181500AC080914502909146026A |
:1036E0008750944034F0809112018F5F80931201D3 |
:1036F00001C01F5F80914302909144028C5F934010 |
:1037000024F48091110181500AC08091430290916C |
:10371000440287509440C4F0809111018F5F8093E0 |
:10372000110113C08BE394E09F938F9380EF92E19C |
:103730009F938F93E091BC03F091BD0309950F9087 |
:103740000F900F900F905FC01F5F82E18093720215 |
:1037500080916C028E7F80936C0285EA8093BC001E |
:10376000809113018A3040F48091D5038160809369 |
:10377000D5038AE08093130180911301863F40F0C6 |
:103780008091D50381608093D50385EF80931301E9 |
:10379000809112018A3040F48091D5038260809339 |
:1037A000D5038AE08093120180911201863F40F098 |
:1037B0008091D50382608093D50385EF80931201B9 |
:1037C000809111018A3040F48091D5038460809308 |
:1037D000D5038AE08093110180911101863F40F06A |
:1037E0008091D50384608093D50385EF8093110188 |
:1037F00080917202882339F0C7010E941F17882325 |
:1038000009F090CFF5CF109210018FEC80937A00E1 |
:10381000809110018823E1F3CA3020F48AE090E01F |
:103820000E943817C15009F02DCF86E490E00E9425 |
:103830003817CF911F91FF90EF9008951F920F922C |
:103840000FB60F921124AF92BF92CF92DF92EF92F8 |
:10385000FF920F931F932F933F934F935F936F9319 |
:103860007F938F939F93AF93BF93EF93FF93809139 |
:103870005002282F3327442755278F5F809350020B |
:10388000F9012231310508F08CC3EA5BFF4F0C943B |
:10389000A377809178009091790046C0809178005C |
:1038A000909179002CC1809178009091790090934B |
:1038B00053028093520257C180910E0390910F03DF |
:1038C0002091780030917900821B930B9093990599 |
:1038D00080939805809198059091990590935D0249 |
:1038E00080935C025EC18091780090917900209174 |
:1038F000100330911103821B930B9093A7058093C3 |
:10390000A6058091A6059091A70590935F028093EC |
:103910005E0249C38091560290915702209178002F |
:1039200030917900820F931F909357028093560233 |
:1039300081E03AC380915402909155022091780021 |
:1039400030917900820F931F909355028093540217 |
:1039500084E02AC380911E0190911F019C01220FD7 |
:10396000331F280F391F809178009091790063E010 |
:1039700070E00E940877260F371F369527953695F9 |
:10398000279530931F0120931E0185E00DC3809180 |
:1039900078009091790040910A0350910B03841BA9 |
:1039A000950B90933E0280933D0280913D02909151 |
:1039B0003E02029704F122E04E3E520784F4209129 |
:1039C00051022B5F20935102255080917E029091ED |
:1039D0007F02845F914018F4215F2093510280910F |
:1039E0005102853684F14F5F5F4F50930B03409334 |
:1039F0000A03845626C080913D0290913E028F5F5B |
:103A00009F4F0CF532E047325307ECF02091510202 |
:103A10002550209351022B5F80917E0290917F026E |
:103A2000845F914018F42F502093510280915102ED |
:103A30008C394CF44150504050930B0340930A038F |
:103A40008C598093510281E080933C0280917800F0 |
:103A50009091790090939F0580939E0580913D02FF |
:103A600090913E029C01442737FD4095542F809150 |
:103A7000C5029091C602A091C702B091C802820F00 |
:103A8000931FA41FB51F8093C5029093C602A093F5 |
:103A9000C702B093C8022091C5023091C60240917E |
:103AA000C7025091C80257FF04C021503C4F4F4FEE |
:103AB0005F4F0AE055954795379527950A95D1F7B9 |
:103AC0008091C5029091C602A091C702B091C80230 |
:103AD000821B930BA40BB50B8093C5029093C60277 |
:103AE000A093C702B093C8022EC180915402909156 |
:103AF00055022091780030917900820F931F9093A6 |
:103B000055028093540210924F0250C280910201DC |
:103B10008A3071F48091780090917900209152025E |
:103B200030915302820F931F01969695879517C087 |
:103B30004091520250915302843158F02091780004 |
:103B400030917900240F351F8FEF97E0821B930B84 |
:103B500006C08091780090917900840F951F909312 |
:103B600044028093430286E01FC280910E0390912D |
:103B70000F032091780030917900821B930B909372 |
:103B800099058093980580919805909199052091C9 |
:103B90005C0230915D02820F931F909342028093EA |
:103BA000410287E001C280917800909179002091D4 |
:103BB000100330911103821B930B9093A705809300 |
:103BC000A6058091A6059091A70520915E023091EF |
:103BD0005F02820F931F9093400280933F02E3C1E4 |
:103BE000209156023091570280917800909179008F |
:103BF000280F391F309357022093560280910201FB |
:103C00008A3019F4220F331F04C0220F331F220FF2 |
:103C1000331F309357022093560220915602309161 |
:103C20005702C90137FD0796A3E095958795AA9598 |
:103C3000E1F7909348028093470280915802909157 |
:103C40005902820F931F97FD019695958795909342 |
:103C500059028093580220911A0330911B03821B52 |
:103C6000930B90931D0180931C0120914D02309184 |
:103C70004E0280911C0190911D01280F391F37FFC2 |
:103C800002C02F5F3F4F3595279530934E0220930A |
:103C90004D024ECE20915402309155028091780011 |
:103CA00090917900280F391F3093550220935402C8 |
:103CB000809102018A3019F4220F331F04C0220FB1 |
:103CC000331F220F331F309355022093540220914B |
:103CD000540230915502C90137FD079663E095956E |
:103CE00087956A95E1F7909346028093450280910B |
:103CF0005A0290915B02820F931F97FD0196959552 |
:103D0000879590935B0280935A022091180330911B |
:103D10001903821B930B90931B0180931A0120912E |
:103D20004B0230914C0280911A0190911B01280F97 |
:103D3000391F37FF02C02F5F3F4F359527953093CE |
:103D40004C0220934B0283E02FC11092500281E07D |
:103D500080931001809133029091340201969093E8 |
:103D6000340280933302809178009091790090938F |
:103D70001501809314018091140190911501AA27D7 |
:103D8000BB27A0906002B0906102C0906202D09008 |
:103D90006302A80EB91ECA1EDB1EA0926002B0927A |
:103DA0006102C0926202D0926302809164028F5FCE |
:103DB00080936402823108F4F6C0809116019091DC |
:103DC0001701A0911801B09119017C018D0123E028 |
:103DD000EE0CFF1C001F111F2A95D1F7E81AF90AF3 |
:103DE0000A0B1B0BEA0CFB1C0C1D1D1D80913702DE |
:103DF000992787FD9095A92FB92FBC01CD0126ECFD |
:103E000034E240E050E00E94DD76DC01CB01E81AAC |
:103E1000F90A0A0B1B0BD801C7010496A11DB11D9D |
:103E2000B7FF05C0D801C7010B96A11DB11D13E056 |
:103E3000B595A795979587951A95D1F78093160113 |
:103E400090931701A0931801B09319018091A005D8 |
:103E50009091A1057C010027F7FC0095102F80911F |
:103E6000160190911701A0911801B0911901E81A5B |
:103E7000F90A0A0B1B0BE092A302F092A402009332 |
:103E8000A5021093A6022091380230913902409188 |
:103E90003A0250913B0257FF04C0215F3F4F4F4F02 |
:103EA0005F4FF4E05595479537952795FA95D1F7EB |
:103EB0008091380290913902A0913A02B0913B0270 |
:103EC000821B930BA40BB50B80933802909339029D |
:103ED000A0933A02B0933B0280913802909139024C |
:103EE000A0913A02B0913B028E0D9F1DA01FB11F01 |
:103EF0008093380290933902A0933A02B0933B0228 |
:103F00008091350290913602AC01E5E0440F551FD7 |
:103F1000EA95E1F7481B590B8091380290913902DC |
:103F2000A0913A02B0913B02B7FF03C00F96A11DCA |
:103F3000B11D74E0B595A795979587957A95D1F7BA |
:103F40002091A3023091A402281B390B63E0220FB9 |
:103F5000331F6A95E1F7240F351F37FF02C0215E3A |
:103F60003F4F45E0359527954A95E1F73093360266 |
:103F700020933502D601C501D7FE03C00196A11DCD |
:103F8000B11DB595A79597958795809360029093FD |
:103F90006102A0936202B093630289E0809364029D |
:103FA00002C01092500282E080934F0280914F0233 |
:103FB00080937C0080915002882319F08FEC8093CD |
:103FC0007A00FF91EF91BF91AF919F918F917F9177 |
:103FD0006F915F914F913F912F911F910F91FF90A2 |
:103FE000EF90DF90CF90BF90AF900F900FBE0F90EB |
:103FF0001F90189590E2E1E2F1E08FE491938150F7 |
:1040000087FFFCCF089590916702E1E2F1E0E90FAC |
:10401000F11D80839F5F909367020895EF92FF9256 |
:104020000F931F93CF93DF932091650220FF0AC067 |
:1040300080916602882311F0815002C08091200196 |
:104040008093660221FF0CC090916602809120014E |
:10405000981719F41092660203C09F5F909366024E |
:10406000822F992780FF04C081FF02C01092660250 |
:104070000E94FA1F80916602282F332753E0E52E15 |
:1040800050E2F52EC091BC03D091BD038A3098F464 |
:1040900081E1809367023F932F9382E794E09F939F |
:1040A0008F93FF92EF92FE0109952DB73EB72A5FDD |
:1040B0003F4F2DBF11C080E1809367023F932F9344 |
:1040C00087E794E09F938F93FF92EF92FE0109950B |
:1040D0008DB79EB706968DBF20916602822F9927D5 |
:1040E000AA27BB27FC01429710F00C94BF2AE85A7C |
:1040F000FF4F43E0E42E40E2F42EC091BC03D09188 |
:10410000BD030C94A377109267028CE794E09F9311 |
:104110008F9303E010E2FF92EF92FE01099584E194 |
:10412000809367020F900F900F900F9081E690E0C0 |
:104130009F938F9382E590E09F938F931F921F929E |
:10414000809102016AE00E94FC76892F99279F9353 |
:104150008F93809102010E94FC7699279F938F9301 |
:104160008CE894E09F938F93FF92EF92E091BC03D1 |
:10417000F091BD03099588E2809367022DB73EB7A1 |
:10418000225F3F4F2DBF81E296E09F938F930E9465 |
:10419000262E99279F938F9381EA94E09F938F9384 |
:1041A000FF92EF92E091BC03F091BD0309958DB7AA |
:1041B0009EB708968DBF9091D503992351F08CE35B |
:1041C00080936702892F99279F938F938FEA94E0BA |
:1041D00081C690916D02992371F08CE38093670200 |
:1041E000892F99279F938F9386EC94E09F938F93C9 |
:1041F0001F930F9391C08091D60384FF07C08CE377 |
:10420000809367028BED94E00C94512A8091920187 |
:1042100090919301069710F00C94C82A8CE3809338 |
:10422000670288EE94E00C94512A8091B90533E03E |
:10423000E32E30E2F32EC091BC03D091BD0380FF8A |
:1042400074C0109267028091A3029091A402A09181 |
:10425000A502B091A602BC01CD0125E030E040E00E |
:1042600050E00E9451773F932F9385EF94E09F9306 |
:104270008F93FF92EF92FE01099584E1809367028C |
:104280002DB73EB72A5F3F4F2DBF80919F0290917F |
:10429000A002A091A102B091A202BC01CD0125E033 |
:1042A00030E040E050E00E9451773F932F9382E04E |
:1042B00095E09F938F93FF92EF92E091BC03F09172 |
:1042C000BD03099588E2809367028DB79EB7069675 |
:1042D0008DBF80911401909115019F938F938FE072 |
:1042E00095E09F938F93FF92EF92E091BC03F09142 |
:1042F000BD0309958CE3809367022DB73EB72A5F13 |
:104300003F4F2DBF87B599279F938F938CE195E001 |
:104310009F938F93FF92EF92E091BC03F091BD03C6 |
:1043200009958DB79EB7069633C71092670289E24A |
:1043300095E09F938F93FF92EF92FE01099584E1A0 |
:10434000809367020F900F900F900F9088E395E095 |
:104350009F938F93FF92EF92E091BC03F091BD0386 |
:10436000099588E2809367020F900F900F900F904D |
:1043700081E495E09F938F93FF92EF92E091BC03CD |
:10438000F091BD0309958CE3809367020F900F9025 |
:104390000F900F9080E595E09F938F93FF92EF929F |
:1043A0000C94552A1092670289E595E09F938F93AC |
:1043B00003E010E2FF92EF92FE01099584E1809301 |
:1043C00067020F900F900F900F90809105039091CE |
:1043D0000603A0910703B0910803B7FF04C0815002 |
:1043E0009C4FAF4FBF4F2AE0B595A79597958795FE |
:1043F0002A95D1F7BF93AF939F938F9386E695E06D |
:104400009F938F931F930F93E091BC03F091BD0393 |
:10441000099588E2809367022DB73EB7285F3F4F2A |
:104420002DBF8091FD029091FE02A091FF02B091FC |
:104430000003B7FF04C081509C4FAF4FBF4FCAE08D |
:10444000B595A79597958795CA95D1F7BF93AF93E3 |
:104450009F938F9385E795E09F938F931F930F937F |
:10446000E091BC03F091BD0309958CE38093670252 |
:104470008DB79EB708968DBF8091C3029091C402FC |
:104480009F938F9384E895E09F938F931F930F934F |
:10449000E091BC03F091BD0309952DB73EB72A5FAB |
:1044A0003F4F11C7109267028091DB069091DC06A6 |
:1044B0009F938F938091D9069091DA069F938F9363 |
:1044C00083E995E09F938F93FF92EF92FE01099508 |
:1044D00084E1809367028DB79EB708968DBF809167 |
:1044E000DF069091E0069F938F938091DD06909177 |
:1044F000DE069F938F9383EA95E09F938F93FF92BD |
:10450000EF92E091BC03F091BD03099588E280939E |
:1045100067022DB73EB7285F3F4F2DBF8091E3065E |
:104520009091E4069F938F938091E1069091E2062B |
:104530009F938F9383EB95E09F938F93FF92EF92DE |
:10454000E091BC03F091BD0309958CE38093670271 |
:104550008DB79EB708968DBF8091E7069091E806CB |
:104560009F938F938091E5069091E6069F938F939A |
:1045700083EC95E0A2C0109267028091AE05E82F0F |
:10458000FF27EE0FFF1FE952F94F808191819F9322 |
:104590008F938091AD05E82FFF27EE0FFF1FE952A3 |
:1045A000F94F808191819F938F9383ED95E09F9345 |
:1045B0008F93FF92EF92FE01099584E18093670249 |
:1045C0008DB79EB708968DBF8091B005E82FFF2765 |
:1045D000EE0FFF1FE952F94F808191819F938F93D6 |
:1045E0008091AF05E82FFF27EE0FFF1FE952F94F2B |
:1045F0008081918188589F4F9F938F9383EE95E0A0 |
:104600009F938F93FF92EF92E091BC03F091BD03D3 |
:10461000099588E2809367022DB73EB7285F3F4F28 |
:104620002DBF8091B205E82FFF27EE0FFF1FE95243 |
:10463000F94F8081918182599F4F9F938F938091F1 |
:10464000B105E82FFF27EE0FFF1FE952F94F8081D8 |
:10465000918182599F4F9F938F9383EF95E09F9312 |
:104660008F93FF92EF92E091BC03F091BD03099507 |
:104670008CE3809367028DB79EB708968DBF8091BB |
:10468000B405E82FFF27EE0FFF1FE952F94F808195 |
:10469000918182599F4F9F938F938091B305E82F0B |
:1046A000FF27EE0FFF1FE952F94F80819181825958 |
:1046B0009F4F9F938F9383E096E09F938F93FF92FA |
:1046C000EF92E091BC03F091BD0309952DB73EB781 |
:1046D000285F3F4FF8C51092670283E196E09F93F1 |
:1046E0008F9303E010E2FF92EF92FE010995809113 |
:1046F00002010F900F900F900F908A3009F09DC02B |
:1047000084E18093670280911A0390911B039C01BE |
:1047100097FF02C0295F3F4F287F821B930B9F9317 |
:104720008F9380911A0390911B0397FD0796A3E046 |
:1047300095958795AA95E1F79F938F9320911A03FA |
:1047400030911B0337FF02C0295F3F4FF3E03595DF |
:104750002795FA95E1F78091470290914802821BD4 |
:10476000930B9F938F9381E296E09F938F931F9378 |
:104770000F93E091BC03F091BD03099588E280930B |
:1047800067028DB79EB70A968DBF809118039091EE |
:1047900019039C0197FF02C0295F3F4F287F821BAE |
:1047A000930B9F938F93809118039091190397FD1A |
:1047B0000796E3E095958795EA95E1F79F938F93A8 |
:1047C000209118033091190337FF02C0295F3F4F32 |
:1047D00073E0359527957A95E1F7809145029091A0 |
:1047E0004602821B930B9F938F9382E396E09F93E5 |
:1047F0008F931F930F93E091BC03F091BD03099534 |
:104800008CE3809367022DB73EB7265F3F4F2DBFE5 |
:1048100080911603909117039F938F9380911603B5 |
:10482000909117032091430230914402821B930B15 |
:104830009F938F9383E496E0A7C38B3019F0843164 |
:1048400008F4ADC084E18093670280911A039091CF |
:104850001B039C0197FF02C0215F3F4F207F821BFB |
:10486000930B97FD0196959587959F938F938091D4 |
:104870001A0390911B0397FD0F9654E09595879529 |
:104880005A95E1F79F938F9320911A0330911B0360 |
:1048900037FF02C0295F3F4F43E0359527954A9582 |
:1048A000E1F78091470290914802821B930B9F93FE |
:1048B0008F9381E596E09F938F931F930F93E091E1 |
:1048C000BC03F091BD03099588E2809367022DB780 |
:1048D0003EB7265F3F4F2DBF80911803909119037B |
:1048E0009C0197FF02C0215F3F4F207F821B930BEB |
:1048F00097FD0196959587959F938F9380911803C7 |
:104900009091190397FD0F96C4E095958795CA95E8 |
:10491000E1F79F938F93209118033091190337FF8C |
:1049200002C0295F3F4FB3E035952795BA95E1F76F |
:104930008091450290914602821B930B9F938F9327 |
:1049400083E696E09F938F931F930F93E091BC03B0 |
:10495000F091BD0309958CE3809367028DB79EB7F4 |
:104960000A968DBF809116039091170397FD0196CB |
:10497000959587959F938F93809116039091170338 |
:104980002091430230914402821B930B9F938F939B |
:1049900085E796E09F938F931F930F9392CE8D3070 |
:1049A00009F0F6C584E1809367028091130199278D |
:1049B0009F938F9380911A0390911B0397FD0F96FD |
:1049C000F4E095958795FA95E1F79F938F93209161 |
:1049D0001A0330911B0337FF02C0295F3F4FE3E00A |
:1049E00035952795EA95E1F7809147029091480225 |
:1049F000821B930B9F938F9384E896E09F938F93F2 |
:104A00001F930F93E091BC03F091BD03099588E2D9 |
:104A1000809367028DB79EB70A968DBF8091120171 |
:104A200099279F938F93809118039091190397FD75 |
:104A30000F9674E0959587957A95E1F79F938F93FC |
:104A4000209118033091190337FF02C0295F3F4FAF |
:104A500063E0359527956A95E1F78091450290913D |
:104A60004602821B930B9F938F9388E996E09F9356 |
:104A70008F931F930F93E091BC03F091BD030995B1 |
:104A80008CE3809367022DB73EB7265F3F4F2DBF63 |
:104A90008091110199279F938F9380911603909194 |
:104AA000170397FD0196959587959F938F93809116 |
:104AB0001603909117032091430230914402821B08 |
:104AC000930B9F938F938CEA96E09F938F931F9302 |
:104AD0000F93E091BC03F091BD0309958DB79EB78C |
:104AE0000A9656C31092670280EC96E09F938F93CC |
:104AF000FF92EF92FE01099584E1809367020F9087 |
:104B00000F900F900F9080911003909111039F933D |
:104B10008F9380913F02909140029F938F938DECF1 |
:104B200096E09F938F93FF92EF92E091BC03F091F8 |
:104B3000BD03099588E2809367022DB73EB7285FD1 |
:104B40003F4F2DBF80910E0390910F039F938F9342 |
:104B500080914102909142029F938F938CED96E059 |
:104B60009F938F93FF92EF92E091BC03F091BD036E |
:104B700009958CE3809367028DB79EB708968DBF29 |
:104B800080910A0390910B039F938F9380913D0234 |
:104B900090913E029F938F938BEE96E08ECD109274 |
:104BA000670280911E0190911F016AE070E00E94EF |
:104BB0001C779F938F9380911E0190911F016AE053 |
:104BC00070E00E941C777F936F938AEF96E09F932B |
:104BD0008F93FF92EF92FE01099584E18093670223 |
:104BE0008DB79EB708968DBF8091140890911508D7 |
:104BF0006AE070E00E9408779F938F938091140879 |
:104C0000909115086AE070E00E9408777F936F9397 |
:104C10008EE097E09F938F93FF92EF92E091BC0319 |
:104C2000F091BD03099588E2809367022DB73EB7E6 |
:104C3000285F3F4F2DBF80911608909117089F93D2 |
:104C40008F9382E297E09F938F93FF92EF92E09190 |
:104C5000BC03F091BD0309958CE3809367028DB787 |
:104C60009EB706968DBF80911808909119089F9362 |
:104C70008F9382E397E02EC11092670284E497E05D |
:104C80009F938F93FF92EF92FE01099584E18093A9 |
:104C900067020F900F900F900F908091D706909120 |
:104CA000D8069F938F938DE497E09F938F93FF9205 |
:104CB000EF92E091BC03F091BD03099588E28093E7 |
:104CC00067028DB79EB706968DBF8091B102992776 |
:104CD0009F938F938DE597E09F938F93FF92EF9231 |
:104CE000E091BC03F091BD0309958CE380936702CA |
:104CF0002DB73EB72A5F3F4F2DBF8091D60699272B |
:104D000001979F938F938DE697E002CB10926702F5 |
:104D10008DE797E09F938F93FF92EF92FE010995A5 |
:104D200084E1809367020F900F900F900F90809115 |
:104D3000BF029091C0029F938F9385E897E09F9365 |
:104D40008F93FF92EF92E091BC03F091BD03099520 |
:104D500088E2809367022DB73EB72A5F3F4F2DBF91 |
:104D60008091C3029091C4029F938F9383E997E04F |
:104D70009F938F93FF92EF92E091BC03F091BD035C |
:104D800009958CE3809367028DB79EB706968DBF19 |
:104D90008091C1029091C2029F938F9381EA97E024 |
:104DA00099C0109267028091B20299279F938F93C6 |
:104DB0008FEA97E09F938F93FF92EF92FE01099500 |
:104DC00084E1809367028DB79EB706968DBF809170 |
:104DD000B30299279F938F938BEB97E09F938F93C9 |
:104DE000FF92EF92E091BC03F091BD03099588E238 |
:104DF000809367022DB73EB72A5F3F4F2DBF80914A |
:104E0000B40299279F938F9387EC97E09F938F939A |
:104E1000FF92EF92E091BC03F091BD0309958CE302 |
:104E2000809367028DB79EB706968DBF8091B502BD |
:104E300099279F938F9383ED97E04CC01092670260 |
:104E40008091B60299279F938F938FED97E09F9360 |
:104E50008F93FF92EF92FE01099584E180936702A0 |
:104E60008DB79EB706968DBF8091B70299279F9305 |
:104E70008F938BEE97E09F938F93FF92EF92E09149 |
:104E8000BC03F091BD03099588E2809367022DB7BA |
:104E90003EB72A5F3F4F2DBF8091B80299279F935D |
:104EA0008F9387EF97E09F938F93FF92EF92E0911C |
:104EB000BC03F091BD0309958CE3809367028DB725 |
:104EC0009EB706968DBF8091B90299279F938F93C5 |
:104ED00083E098E09F938F93FF92EF92D9CA10924C |
:104EE00067028FE098E09F938F9303E010E2FF92B8 |
:104EF000EF92FE01099584E1809367020F900F9075 |
:104F00000F900F908091C10199279F938F9387E114 |
:104F100098E09F938F93FF92EF92E091BC03F09102 |
:104F2000BD03099588E2809367028DB79EB7069608 |
:104F30008DBF80911E0290911F0297FD039695955B |
:104F40008795959587959F938F9385E298E09F939A |
:104F50008F931F930F93E091BC03F091BD030995CC |
:104F60008CE3809367022DB73EB72A5F3F4F2DBF7A |
:104F70008091DC0599279F938F938091DB0599277A |
:104F80009F938F9383E398E09F938F931F930F9347 |
:104F9000E091BC03F091BD0309958DB79EB70896CB |
:104FA000F7C01092670281E498E09F938F93FF927D |
:104FB000EF92FE01099584E1809367020F900F90B4 |
:104FC0000F900F908091F603992787FD90959F93FE |
:104FD0008F938091F503992787FD90959F938F93E9 |
:104FE00081E598E09F938F93FF92EF92E091BC034D |
:104FF000F091BD03099588E2809367022DB73EB713 |
:10500000285F3F4F2DBF8091F703992787FD90952B |
:105010009F938F938091F80399279F938F9381E6B5 |
:1050200098E09F938F93FF92EF92E091BC03F091F1 |
:10503000BD0309958CE3809367028DB79EB70896F0 |
:105040008DBF8091FC0399279F938F938091F903E3 |
:10505000992787FD90959F938F9381E798E02DCBBB |
:105060001092670281E898E09F938F93FF92EF92EE |
:10507000FE01099584E1809367020F900F900F90D5 |
:105080000F908091910699278F7790709F938F93BF |
:105090008091890699278F7790709F938F93809145 |
:1050A000810699278F7790709F938F9380917906CF |
:1050B00099278F7790709F938F9381E998E09F93C2 |
:1050C0008F93FF92EF92E091BC03F091BD0309959D |
:1050D00088E2809367028DB79EB70C968DBF809152 |
:1050E000B10699278F7790709F938F938091A9062F |
:1050F00099278F7790709F938F938091A10699271E |
:105100008F7790709F938F938091990699278F77CF |
:1051100090709F938F9382EA98E09F938F93FF9272 |
:10512000EF92E091BC03F091BD0309958CE380936D |
:1051300067022DB73EB7245F3F4F2DBF8091D10648 |
:1051400099278F7790709F938F938091C9069927A5 |
:105150008F7790709F938F938091C10699278F7757 |
:1051600090709F938F938091B90699278F77907055 |
:105170009F938F9383EB98E09F938F93FF92EF928F |
:10518000E091BC03F091BD0309958DB79EB70C96D5 |
:105190008DBFFEC11092670284EC98E09F938F93BD |
:1051A000FF92EF92FE01099584E1809367020F90D0 |
:1051B0000F900F900F9080919506992787FD9095FD |
:1051C0009F938F9380918D06992787FD90959F934C |
:1051D0008F9380918506992787FD90959F938F9354 |
:1051E00080917D06992787FD90959F938F9383EDFE |
:1051F00098E09F938F93FF92EF92E091BC03F09120 |
:10520000BD03099588E2809367022DB73EB7245FFE |
:105210003F4F2DBF8091B506992787FD90959F93AD |
:105220008F938091AD06992787FD90959F938F93DB |
:105230008091A506992787FD90959F938F938091E4 |
:105240009D06992787FD90959F938F9384EE98E014 |
:105250009F938F93FF92EF92E091BC03F091BD0377 |
:1052600009958CE3809367028DB79EB70C968DBF2E |
:105270008091D506992787FD90959F938F93809174 |
:10528000CD06992787FD90959F938F938091C506B2 |
:10529000992787FD90959F938F938091BD069927BD |
:1052A00087FD90959F938F9385EF98E09F938F93C1 |
:1052B000FF92EF92E091BC03F091BD0309952DB7E9 |
:1052C0003EB7245F3F4F2DBF63C11092670286E057 |
:1052D00099E09F938F9303E010E2FF92EF92FE011B |
:1052E000099584E1809367020F900F900F900F90C3 |
:1052F00080919106881F8827881F97E0899FC001A9 |
:1053000011248D969F938F9380918906881F8827FB |
:10531000881F96E0899FC00111248D969F938F93DB |
:1053200080918106881F8827881F95E0899FC0018A |
:1053300011248D969F938F9380917906881F8827DB |
:10534000881F9927880F991F880F991F8D969F9303 |
:105350008F9385E199E09F938F93FF92EF92E09175 |
:10536000BC03F091BD03099588E2809367028DB775 |
:105370009EB70C968DBF8091B106881F8827881F25 |
:105380009BE0899FC00111248D969F938F938091FC |
:10539000A906881F8827881F9AE0899FC0011124C9 |
:1053A0008D969F938F938091A106881F8827881FD1 |
:1053B00099E0899FC00111248D969F938F938091CE |
:1053C0009906881F8827881F992723E0880F991F2F |
:1053D0002A95E1F78D969F938F9389E299E09F93A9 |
:1053E0008F93FF92EF92E091BC03F091BD0309957A |
:1053F0008CE3809367022DB73EB7245F3F4F2DBFEC |
:105400008091B906881F8827881F9CE0899FC0016A |
:1054100011248D969F938F938DE399E09F938F93A3 |
:10542000FF92EF92E091BC03F091BD03099580914A |
:10543000C1062DB73EB72A5F3F4F2DBF87FF12C071 |
:1054400080E4809367028EE499E09F938F93FF92AC |
:10545000EF92E091BC03F091BD0309950F900F907E |
:105460000F900F908091C90687FF12C084E480934B |
:10547000670281E599E09F938F931F930F93E091CB |
:10548000BC03F091BD0309950F900F900F900F9002 |
:105490008091D10687FF7CC088E48093670284E511 |
:1054A00099E09F938F931F930F93E091BC03F0912A |
:1054B000BD0309950F900F900F900F9069C0109247 |
:1054C000670287E599E09F938F93FF92EF92FE0129 |
:1054D000099584E1809367020F900F900F900F90D1 |
:1054E0008091F5019091F6019F938F9385E699E065 |
:1054F0009F938F93FF92EF92E091BC03F091BD03D5 |
:10550000099588E2809367028DB79EB706968DBF96 |
:105510008091F7019091F8019F938F9382E799E032 |
:105520009F938F93FF92EF92E091BC03F091BD03A4 |
:10553000099589E4809367022DB73EB72A5F3F4FF4 |
:105540002DBF8FE799E09F938F93FF92EF92E091A9 |
:10555000BC03F091BD030995809165020F900F90F7 |
:105560000F900F9083FF14C01092F8011092F70172 |
:1055700060E070E08EE090E00E94D42C09C0809141 |
:105580002001281719F4215020932001109266025F |
:1055900010926502E6E0CDB7DEB70C949477F999E6 |
:1055A000FECF92BD81BDF89A80B599270895F999EB |
:1055B000FECF1FBA92BD81BD60BD0FB6F894FA9AB6 |
:1055C000F99A0FBE08954AEA20E030E0261737071F |
:1055D00040F4FC018191480F2F5F3F4F261737079A |
:1055E000C8F3842F99270895EAEA40E050E046176F |
:1055F000570778F49C01F999FECF32BD21BDF89A86 |
:1056000080B5E80F4F5F5F4F2F5F3F4F461757073B |
:1056100090F38E2F9927089581E08093AF0582E063 |
:105620008093AE0583E08093AD0584E08093B00560 |
:1056300085E08093B10586E08093B20587E0809392 |
:10564000B30588E08093B40589E08093B5058AE0CE |
:105650008093B6058BE08093B7058CE08093B80506 |
:10566000089595E59093AC0580910201843170F026 |
:105670008AE08093CC051092F0058BE18093C805F9 |
:105680008EE48093ED058093EE050DC083E080935A |
:10569000CC0580E28093F0058EE18093C80590935D |
:1056A000ED059093EE058AE68093B90583E080933B |
:1056B000120681E08093D30510920F0610920C061B |
:1056C00068E06093C60586EE8093C70580E8809306 |
:1056D000C9055EE15093BA058FEF8093BC059FE04A |
:1056E0009093BD055093BB051092BF056093C00514 |
:1056F00080E48093C1051092C2059093BE0510927C |
:10570000D5051092D6051092D7051092D8051092A3 |
:10571000F2051092F3051092F4051092F50538E7A2 |
:105720003093D90548E24093DA0572E07093110690 |
:105730009093DB0527EF2093DC0585E08093E1055E |
:105740008DE78093E4058093E5058093E60530932B |
:10575000DD059AE59093DE051092DF052093E005C4 |
:105760004093E2051092E3058FE58093F60583EF01 |
:105770008093F8058AEA8093FA058093FB0584E11B |
:105780008093F7058093F90582E38093E705909372 |
:10579000E8058093E905109210068EEF8093FC05D2 |
:1057A00024E62093FD059093FE059093FF059093CA |
:1057B00000068BE480930106809302068093030623 |
:1057C0001092040686E08093050660930606909387 |
:1057D0000706509308062093090620930A06709343 |
:1057E0000B0610920D0610920E0681E28093D005F2 |
:1057F0008DE28093D1059093D2050895CF93DF93E6 |
:105800000E94312B8EE08093C30520E12093C405D4 |
:105810003CE03093C50590E59093CA0586E98093F6 |
:10582000CB059093CD058093CE0586E08093CF0580 |
:1058300080E28093D4058AE58093EA059093EB0596 |
:1058400081E08093EC052093EF0584E68093F105D9 |
:10585000A3E1B6E0E1E7F1E0ED01019009923A95AC |
:10586000E1F763E770E0CD01875690400E94E32A9C |
:1058700080931F06DF91CF910895CF93DF930E940D |
:10588000312B8AE08093C30580E18093C40526E034 |
:105890002093C5059AE59093CA0588E78093CB05C8 |
:1058A0009093CD058093CE052093CF0520E22093E1 |
:1058B000D4059093EA0580E58093EB058CE3809313 |
:1058C000EC052093EF058BE48093F105A3E1B6E0AE |
:1058D0008CE0E8E7F1E0ED01019009928A95E1F7AB |
:1058E00063E770E0CD01875690400E94E32A8093E1 |
:1058F0001F06DF91CF910895CF93DF930E94312B44 |
:1059000088E08093C30530E13093C40526E02093FE |
:10591000C50594E69093CA0588E78093CB059093DC |
:10592000CD058093CE052093CF053093D4058AE52D |
:105930008093EA0580E58093EB0596E49093EC056F |
:1059400080E28093EF059093F105A3E1B6E08CE04F |
:10595000E0E8F1E0ED01019009928A95E1F763E753 |
:1059600070E0CD01875690400E94E32A80931F0685 |
:10597000DF91CF910895F999FECF92BD81BDF89A3C |
:1059800080B599270895F999FECF1FBA92BD81BDC0 |
:1059900060BD0FB6F894FA9AF99A0FBE08956FECAD |
:1059A0007AE20E946B75089547ED5AE20E94A57550 |
:1059B0000895EF92FF920F931F93CF93C82F8150BA |
:1059C000853008F0C3E084E7C89F8001112480EF90 |
:1059D000E82E8FEFF82EE00EF11E63E770E0C701AE |
:1059E0000E94F42A682F98012D593F4F8FB39927B1 |
:1059F000AC014270507081FDF9CF32BD21BDF89AE3 |
:105A000080B5861711F0CA0121C08FB399279C0178 |
:105A10002270307081FDF9CFF2BCE1BCF89A80B5FC |
:105A2000853511F0C90112C084E7C89FC001112457 |
:105A300040972FEC3AE244E750E0BC018CEA95E055 |
:105A40000E9446750E94246681E090E0CF911F91EC |
:105A50000F91FF90EF900895282F863010F025E0E9 |
:105A600003C0882309F421E0F999FECF1FBA82E030 |
:105A700090E092BD81BD20BD0FB6F894FA9AF99AD4 |
:105A80000FBE0895CF93C82F8091AC05853509F0DE |
:105A900042C0C63010F0C5E003C0CC2309F43BC0BF |
:105AA00063E770E08CEA95E00E94E32A80931F068A |
:105AB00084E7C89FC001112427ED3AE244E750E093 |
:105AC0006CEA75E040970E94837527ED3AE24CE05E |
:105AD00050E06DEA75E080E590E00E9483756CE02F |
:105AE00070E08DEA95E00E94E32A282FF999FECF15 |
:105AF0001FBA8CE590E092BD81BD20BD0FB6F89431 |
:105B0000FA9AF99A0FBE8C2F0E942C2D0E942466BF |
:105B100081E090E002C080E090E0CF9108956DE4D4 |
:105B200070E088EE93E00E94F42A482F8FB3992703 |
:105B30009C012270307081FDF9CF85E394E092BD25 |
:105B400081BDF89A80B5841779F48FB399279C01A9 |
:105B50002270307081FDF9CF88EE93E092BD81BD57 |
:105B6000F89A80B5813011F0C90108952FEC3AE21E |
:105B70004EE450E068EE73E080E296E00E944675E5 |
:105B800081E090E00895809120068130A9F46DE4D1 |
:105B900070E080E296E00E94E32A80936D0627ED94 |
:105BA0003AE24EE450E060E276E088EE93E00E9454 |
:105BB000837581E090E0089580E090E00895CF93B0 |
:105BC000DF9381E080932006E0E2F6E08FE0158627 |
:105BD00016861786108A8150349687FFF8CF80E4A6 |
:105BE00080932D0680932E0610922F068093300608 |
:105BF0008093310690EC9093320610923306809396 |
:105C000034068093350610923606909337069093AB |
:105C100038068093390610923A0680933B0690939B |
:105C20003C06A1E2B6E087E0EAE8F1E0ED01019090 |
:105C300009928A95E1F76DE470E0CD0101970E9429 |
:105C4000E32A80936D06DF91CF910895F999FECFF5 |
:105C500082E090E092BD81BDF89A80B5282F863011 |
:105C600078F023E0322FF999FECF1FBA82E090E05E |
:105C700092BD81BD30BD0FB6F894FA9AF99A0FBE65 |
:105C8000822F992708951F93CF93C82F162F863000 |
:105C900010F0C5E003C0882309F4C1E08C2F9927D8 |
:105CA0008230910541F08330910544F4019731F43D |
:105CB0000E94FE2B05C00E943D2C02C00E947C2C3D |
:105CC0001123E1F06CE070E080E590E00E94F42A9E |
:105CD000282FF999FECF8CE590E092BD81BDF89A0E |
:105CE00080B5821759F42FEC3AE24CE050E060E5C1 |
:105CF00070E08DEA95E00E94467502C00E940C2B70 |
:105D00008C2F0E94422DCF911F910895DF92EF9228 |
:105D1000FF920F931F93CF93FF24DF2CEF2C81E092 |
:105D200090E00E94BB2C853539F031E0E32E65E52B |
:105D300081E090E00E94C32C6CE070E080E590E090 |
:105D40000E94F42AC82FF999FECF8CE590E092BD0D |
:105D500081BDF89A80B58C1711F421E0D22EC1E0F4 |
:105D600001E010E0EE2029F48C2F0E94D92C88232A |
:105D7000C1F591E0F92E1F930F9387E899E09F9367 |
:105D80008F9380EF92E19F938F93E091BC03F0910A |
:105D9000BD0309958DB79EB706968DBF02301105DC |
:105DA00049F0033011054CF40130110531F40E9423 |
:105DB000FE2B05C00E943D2C02C00E947C2CDD20E1 |
:105DC00059F02FEC3AE24CE050E060E570E08DEAEB |
:105DD00095E00E94467502C00E940C2B8C2F0E94F9 |
:105DE000422DCF5F0F5F1F4FC63008F4BBCFFF209F |
:105DF00019F083E00E942C2D0E94262EC82F0E94AD |
:105E0000D92C8C2F99279F938F938DEA99E09F939C |
:105E10008F9300EF12E11F930F93E091BC03F09179 |
:105E2000BD0309958DB79EB706968DBFEE2021F470 |
:105E30000E948F2D882399F486EC99E09F938F938D |
:105E40001F930F93E091BC03F091BD0309950E944D |
:105E5000DF2D0E94C32D0F900F900F900F90109286 |
:105E6000AB0590E0EDE2F6E0CFE0808134961816C5 |
:105E70000CF49F5FC150C7FFF8CF9093AB05892FFB |
:105E800099279F938F9381E296E09F938F9387EE5C |
:105E900099E09F938F931F930F93E091BC03F09130 |
:105EA000BD0309958DB79EB708968DBF88E09AE02F |
:105EB0009F938F931F930F93E091BC03F091BD03C9 |
:105EC00009950F900F900F900F90CF911F910F9108 |
:105ED000FF90EF90DF900895982F2FB7F89439989E |
:105EE000389A88B1836088B98091B9008C7F80939B |
:105EF000B9008AE28093B800109272021092700288 |
:105F000010926F02992379F0E6E7F6E08BE01082B9 |
:105F10001182128213821482158216821782815096 |
:105F2000389687FFF4CF78942FBF089510927202AD |
:105F300084E98093BC0080E88093BC001092BD008F |
:105F40001092BA001092BB001092B9001092B800E3 |
:105F500010926E0280E00E946C2F1092BB0085E8C8 |
:105F60008093BC0080916C02826080936C020895E3 |
:105F70001F920F920FB60F9211242F933F934F93BE |
:105F80005F938F939F93EF93FF9380917202282FDB |
:105F90003327442755278F5F80937202F9012731F9 |
:105FA000310508F0C2C2E659FF4F0C94A37781E097 |
:105FB00080936E0209C0809170028C3090F48091C1 |
:105FC00070028F5F8093700280917002E82FFF272C |
:105FD000EE0FFF1FEE0FFF1FE05EF94F85851816CD |
:105FE00054F7809170028C3070F010926B02109216 |
:105FF0006A021092700285E08093720280916F02B3 |
:10600000880F8D5A04C080917002880F8E5A809339 |
:10601000BB0085E87FC280917002E82FFF2783E0F4 |
:10602000EE0FFF1F8A95E1F7EA58F94F81818093BF |
:10603000BB0085E88093BC0080917002E82FFF27A9 |
:10604000EE0FFF1FEE0FFF1FEE0FFF1FEA58F94F75 |
:10605000808180FF91C080917002E82FFF27EE0FB2 |
:10606000FF1FEE0FFF1FEE0FFF1FEA58F94F82814F |
:10607000882329F08091AB05873008F46CC28091A9 |
:106080006A0290916B02892B09F065C280916802C7 |
:1060900090916902892B09F05EC26EC080917002F6 |
:1060A00021E030E002C0220F331F8A95E2F7809191 |
:1060B00068029091690228233923232B79F080917B |
:1060C0007002E82FFF27EE0FFF1FEE0FFF1FEE0FEE |
:1060D000FF1FEA58F94F80E184830DC08091700260 |
:1060E000E82FFF27EE0FFF1FEE0FFF1FEE0FFF1F22 |
:1060F000EA58F94F148280917002E82FFF2753E08D |
:10610000EE0FFF1F5A95E1F7EA58F94F8481282FC7 |
:10611000332743E0220F331F4A95E1F78091700245 |
:10612000E82FFF2793E0EE0FFF1F9A95E1F7EA585B |
:10613000F94F82818770822B8093BB0085E8809322 |
:10614000BC002091700281E090E002C0880F991F8E |
:106150002A95E2F720916A0230916B028223932301 |
:10616000892B51F08EE696E090937602809375022B |
:1061700088E080937702EFC184E089C1E0917502E5 |
:10618000F091760281918093BB0085E88093BC00FA |
:10619000F0937602E09375028091770281508093AC |
:1061A0007702882309F4D7C183E071C18091B900D7 |
:1061B000803351F580917302882329F48091700215 |
:1061C0008F5F8093730280917002E82FFF2783E036 |
:1061D000EE0FFF1F8A95E1F7EA58F94F838199275F |
:1061E0008F7790708F3791057CF480917002E82F43 |
:1061F000FF27EE0FFF1FEE0FFF1FEE0FFF1FEA58E6 |
:10620000F94F83818F5F83831092720284E98093B8 |
:10621000BC008AE090E0909393018093920180917A |
:1062200070028F5F80937002109272026DC1809134 |
:10623000B9008034C9F180916F02E82FFF27EE0F7B |
:10624000FF1FEE0FFF1FEE0FFF1FEA58F94F83816C |
:106250008F77838380916F028F5F80936F0280912D |
:106260006F028C30A0F010926F02109269021092AF |
:106270006802809174028F5F809374028C3038F0D2 |
:106280001092740280916C028D7F80936C028091D9 |
:106290006C02816080936C021092720284E9809398 |
:1062A000BC0010926E0273C080916F02E82FFF272E |
:1062B000EE0FFF1FEE0FFF1FEE0FFF1FEA58F94F03 |
:1062C00083818068838380916F02E82FFF27EE0F20 |
:1062D000FF1FEE0FFF1FEE0FFF1FEA58F94F8081DF |
:1062E00080FF2FC080916F02E82FFF2753E0EE0F51 |
:1062F000FF1F5A95E1F7EA58F94F848199270097D3 |
:1063000051F04097D9F58EE696E09093760280930F |
:10631000750288E031C080916F02992743E0880FB1 |
:10632000991F4A95E1F78558994F9093760280938B |
:10633000750290916F02809174029817E1F483E0E6 |
:106340001BC080916F02992733E0880F991F3A95FF |
:10635000E1F78558994F909376028093750280916A |
:106360006C0281FD06C090916F02809174029817B3 |
:1063700011F482E001C081E080937702809177027E |
:10638000813011F485E801C085EC8093BC008091D8 |
:10639000730280936D0210927302DDC0E09175026A |
:1063A000F09176028091BB0080838091750290917C |
:1063B000760201969093760280937502809177021F |
:1063C000815080937702823010F085EC5DC081307F |
:1063D00011F485E859C080916C0281FF2DC0809135 |
:1063E0007D0280FD1DC080916F02E82FFF2723E012 |
:1063F000EE0FFF1F2A95E1F7EA58F94F86818A3F91 |
:1064000079F480916F02E82FFF2793E0EE0FFF1FD2 |
:106410009A95E1F7EA58F94F8081816080830CC03A |
:1064200080916F02E82FFF2783E0EE0FFF1F8A9510 |
:10643000E1F7EA58F94F108280916F028F5F8093E5 |
:106440006F0280916F028C30A0F010926F02109258 |
:10645000690210926802809174028F5F80937402C7 |
:106460008C3038F01092740280916C028D7F809392 |
:106470006C021092720284E98093BC0080916C02DD |
:10648000816080936C0265C08093BC0086E080933D |
:10649000720261C088E9BBCD80917102880F805F74 |
:1064A000B6CD8091710299278130910561F08230DB |
:1064B00091051CF4892B21F04EC0029739F04BC096 |
:1064C00080911301A4CD80911201A1CD8091110181 |
:1064D0009ECD80E89CCD1092720284E98093BC002E |
:1064E00010926E028AE090E0909393018093920163 |
:1064F00080917102823088F4809171028F5F809365 |
:10650000710282E18093720280916C028E7F80938F |
:106510006C0285EA8093BC001EC0109271028091CB |
:106520006C02816080936C0216C01092720284E942 |
:106530008093BC0080916C02816080936C028AE041 |
:1065400090E09093930180939201109270021092C8 |
:106550006F0210926E02FF91EF919F918F915F9168 |
:106560004F913F912F910F900FBE0F901F90189554 |
:106570001F93CF93DF93182F8091A802882321F4D3 |
:1065800080910302882319F081E090E097C01D30CC |
:1065900008F092C01123B1F0E12FFF2723E0EE0FA6 |
:1065A000FF1F2A95E1F7EA58F94F35978081359614 |
:1065B00088230CF081C03897808180FD03C083E080 |
:1065C00090E07CC080916E06823019F084E090E00B |
:1065D00075C067E070E08EE696E00E94E32A909135 |
:1065E0007506891719F085E090E068C080ED97E0A6 |
:1065F0000E941617EC0180916C0280FD05C0CE014F |
:106600000E941F178823B9F3112319F48FEF90E02C |
:106610000BC0212F33272150304081E090E002C091 |
:10662000880F991F2A95E2F790936B0280936A0274 |
:10663000A1E0B0E0E6E7F6E040E050E06BE0CD013D |
:10664000042E02C0880F991F0A94E2F720916A0273 |
:1066500030916B0282239323892B11F011821282D5 |
:1066600061504F5F5F4F389667FFE9CF109270021D |
:106670001092720280916C028E7F80936C0285EA88 |
:106680008093BC0080916C0280FD05C0CE010E9409 |
:106690001F178823B9F380916A0290916B02892BAE |
:1066A00029F0CE010E941F17882311F380916A02FE |
:1066B00090916B02009711F082E090E0DF91CF9112 |
:1066C0001F9108950F931F93CF93DF93982F80917D |
:1066D000A802882321F480910302882319F081E025 |
:1066E00090E092C09D30A0F4992319F486E090E0E8 |
:1066F0008BC0C92FDD27FE0133E0EE0FFF1F3A9557 |
:10670000E1F7EA58F94F35978081359687FD03C048 |
:1067100082E090E079C03897808180FD03C083E0FB |
:1067200090E072C080ED97E00E9416178C01809176 |
:106730006C0280FD05C0C8010E941F178823B9F3B1 |
:10674000219721E030E0C90102C0880F991FCA9546 |
:10675000E2F79093690280936802D901E6E7F6E0D8 |
:1067600040E050E06BE0CD01042E02C0880F991F7D |
:106770000A94E2F720916802309169028223932300 |
:10678000892B11F01182128261504F5F5F4F389652 |
:1067900067FFE9CF10926F0210926E061092750695 |
:1067A0001092720280916C028E7F80936C0285EA57 |
:1067B0008093BC0080916C0280FD05C0C8010E94DE |
:1067C0001F178823B9F38091680290916902892B81 |
:1067D00029F0C8010E941F17882311F380916E06CB |
:1067E000823019F084E090E00FC067E070E08EE640 |
:1067F00096E00E94E32A90917506891719F085E0CA |
:1068000090E002C080E090E0DF91CF911F910F9166 |
:10681000089589E1ABE0B7E0E7EDF6E01182108280 |
:10682000329611961C921E921296815087FFF6CFD7 |
:106830001092170310921603109219031092180366 |
:1068400010921B0310921A0308951F920F920FB615 |
:106850000F9211240F931F932F933F934F935F93A6 |
:106860006F937F938F939F93AF93BF93CF93DF9358 |
:10687000EF93FF93409186005091870080917902B9 |
:1068800090917A02481B590BCA0157FD0196AC0141 |
:1068900055954795809186009091870090937A0254 |
:1068A00080937902CA0189599840A0917B02B091E6 |
:1068B0007C02875E954338F4149714F0109294018B |
:1068C00081E090E081C0AD30B1050CF081C0CA011B |
:1068D0008B5F90408356944008F071C0425C5340F7 |
:1068E000FD01EA0FFB1FE952F94F80819181FA0106 |
:1068F000E81BF90BCF01F7FF03C0909581959F4FDF |
:1069000006974CF48091B102883C28F48091B10242 |
:10691000865F8093B102FD01EA0FFB1FE952F94F38 |
:10692000808191819C01220F331F280F391F240F72 |
:10693000351F37FF02C02D5F3F4FE901D595C79541 |
:10694000D595C795CA0101968C179D0714F4219718 |
:1069500006C041505040C417D5070CF421968091D1 |
:10696000B102833CD8F08D010A0F1B1FF801E952D8 |
:10697000F94F808191819E01281B390BC90163E089 |
:1069800070E00E941C77CB01880F991F860F971F1C |
:10699000055F184FF8019183808307C0AA0FBB1FC2 |
:1069A000A55FB84F11961C921E92E0917B02F09168 |
:1069B0007C02EE0FFF1FE952F94FD183C083809113 |
:1069C0007B0290917C02019690937C0280937B02E3 |
:1069D000FF91EF91DF91CF91BF91AF919F918F91F7 |
:1069E0007F916F915F914F913F912F911F910F91E7 |
:1069F0000F900FBE0F901F901895EF92FF920F937C |
:106A00001F938091C8059927880F991F880F991F98 |
:106A10007C010027F7FC0095102F809105039091D1 |
:106A20000603A0910703B0910803BC01CD01A801A2 |
:106A300097010E9451773093580520935705809114 |
:106A4000FD029091FE02A091FF02B0910003BC01F3 |
:106A5000CD01A80197010E94517730935A052093E8 |
:106A60005905809191079091920797FD039695950E |
:106A700087959595879590935C0580935B058091AC |
:106A8000A1079091A20797FD0396959587959595F7 |
:106A9000879590935E0580935D0580911603909194 |
:106AA00017032091430230914402821B930B909371 |
:106AB000600580935F058091A3029091A402A0914C |
:106AC000A502B091A602BC01CD0125E030E040E076 |
:106AD00050E00E94517730936205209361058091C8 |
:106AE0003D0290913E0290936405809363058091EE |
:106AF000C3029091C40290936805809367058091CA |
:106B00001E0190911F0190936A0580936905809101 |
:106B1000B102992790936C0580936B0580919D0736 |
:106B200090919E07A0919F07B091A0072091960198 |
:106B3000309197014091980150919901BC01CD018C |
:106B40000E94517730936E0520936D0580917706F2 |
:106B500099279093700580936F0580917F06992700 |
:106B60009093720580937105809187069927909381 |
:106B700074058093730580918F069927909376050D |
:106B80008093750580911E0290911F02909380055D |
:106B900080937F0580911408909115089093840547 |
:106BA0008093830580911808909119089093860529 |
:106BB0008093850580911A08992790939205809378 |
:106BC000910580918D0390918E039093940580930D |
:106BD000930580918B0390918C03909396058093FD |
:106BE00095058091D503882321F48091D6038823CD |
:106BF00021F080915605816003C0809156058E7FFB |
:106C0000809356051F910F91FF90EF9008951F9369 |
:106C1000CF93DF93182FEB018091A8028823A1F472 |
:106C200011501F3F89F0D0932502C0932402809118 |
:106C3000240290912502892BD1F7CE018C0F9D1F44 |
:106C40000E942B17115078F7DF91CF911F91089573 |
:106C5000CF93DF93809102018D3011F40E94371B96 |
:106C600010927A00809147029091480290935807C1 |
:106C7000809357078091450290914602909349076F |
:106C80008093480780914302909144029093970724 |
:106C90008093960720913F0230914002C901880FEE |
:106CA000991F880F991F820F931F820F931F909334 |
:106CB0009207809391072091410230914202C901CD |
:106CC000880F991F880F991F820F931F820F931FA0 |
:106CD0009093A2078093A1078FEC80937A00A2EB98 |
:106CE000B2E0C1EBD5E097E08991E82FFF27EE0FE6 |
:106CF000FF1FE952F94F0190F081E02DE259FF4F5B |
:106D00001E161F061CF0E0E0F0E005C0EF3FF105A5 |
:106D100014F0EFEFF0E08C91282F3327E217F30700 |
:106D200014F4815004C02E173F0714F48F5F8C9326 |
:106D30009150119697FFD8CF8091ED059927AA27FA |
:106D4000BB27BC01CD0124EC39E040E050E00E94BB |
:106D5000DD76DC01CB018093D5019093D601A09321 |
:106D6000D701B093D8018091EE059927AA27BB27B8 |
:106D7000BC01CD010E94DD76DC01CB018093D10105 |
:106D80009093D201A093D301B093D401DF91CF911E |
:106D90000895A0E0B0E0EFECF6E30C947277882E53 |
:106DA000C0E0D0E07E016E011092D503469AD093E8 |
:106DB0001103C0931003D0930F03C0930E03D0931D |
:106DC0000B03C0930A03D0931B03C0931A03D09301 |
:106DD0001903C0931803D0931703C093160310929E |
:106DE000BE011092BD01109237020E94283684E63F |
:106DF00090E00E9438170E9428368091B90580FFE4 |
:106E000010C08091140190911501875B934038F474 |
:106E100080911401909115018E5E924010F40E94B1 |
:106E2000B51A0FE18AE090E00E9438178091430282 |
:106E300090914402C80FD91F809147029091480257 |
:106E4000E80EF91E8091450290914602C80ED91EA7 |
:106E5000015007FFE7CF9701205F3F4F36952795F9 |
:106E60003695279530931B0320931A03C60140964D |
:106E70009695879596958795909319038093180317 |
:106E80006096F5E0D695C795FA95E1F7D09317038C |
:106E9000C093160390931503809314033093130348 |
:106EA00020931203882009F441C0809191079091AA |
:106EB000920797FF03C0909581959F4F6CE070E01B |
:106EC0000E941C779B0170931103609310038091C3 |
:106ED000A1079091A20797FF03C0909581959F4FBE |
:106EE0006CE070E00E941C7770930F0360930E03B8 |
:106EF00080919E0590919F0590930B0380930A03C8 |
:106F0000B90184E090E00E94D42C60910E0370914E |
:106F10000F0386E090E00E94D42C60910A037091E8 |
:106F20000B0388E090E00E94D42C65C084E090E0E0 |
:106F30000E94CF2C909311038093100386E090E081 |
:106F40000E94CF2C90930F0380930E0388E090E073 |
:106F50000E94CF2C9C0190930B0380930A03809195 |
:106F60001003909111038150984050F480910E03CA |
:106F700090910F038150984018F421503440D8F17B |
:106F800089E29AE09F938F9380EF92E19F938F9392 |
:106F9000E091BC03F091BD03099580919107909118 |
:106FA000920797FF03C0909581959F4F6CE070E02A |
:106FB0000E941C7770931103609310038091A107C6 |
:106FC0009091A20797FF03C0909581959F4F6CE029 |
:106FD00070E00E941C7770930F0360930E03809102 |
:106FE0009E0590919F0590930B0380930A030F9049 |
:106FF0000F900F900F901092580710925707109211 |
:10700000490710924807109297071092960784E656 |
:1070100090E00E94381780913F02909140029C01BD |
:10702000220F331F220F331F280F391F280F391F3C |
:1070300030939207209391078091410290914202F0 |
:107040008C01000F111F000F111F080F191F080FCF |
:10705000191F1093A2070093A1078091C805C82E9D |
:10706000DD24EE24FF24442737FD4095542FC7012B |
:10707000B6010E94DD764B015C01609305037093BD |
:10708000060380930703909308039801442737FD74 |
:107090004095542FC701B6010E94DD76DC01CB017B |
:1070A0008093FD029093FE02A093FF02B093000331 |
:1070B0008092E1029092E202A092E302B092E40296 |
:1070C0008093D9029093DA02A093DB02B093DC02A2 |
:1070D0001092D5021092D6021092D7021092D802C6 |
:1070E0008091160190911701A0911801B09119019A |
:1070F0009093A1058093A00510923602109235025C |
:107100001092C5021092C6021092C7021092C802D5 |
:107110008091C3029091C4029093C2028093C102F5 |
:107120000E94AD6182E390E0909325028093240257 |
:107130008091ED059927AA27BB27BC01CD0124EC3E |
:1071400039E040E050E00E94DD76DC01CB0188565A |
:10715000954CAF4FBF4F8093D5019093D601A0932C |
:10716000D701B093D8018091EE059927AA27BB27B4 |
:10717000BC01CD010E94DD76DC01CB018856954C27 |
:10718000AF4FBF4F8093D1019093D201A093D30111 |
:10719000B093D40110929B0110929A018091C30286 |
:1071A0009091C402AA2797FDA095BA2F209196012D |
:1071B000309197014091980150919901BC01CD0106 |
:1071C0000E94DD76DC01CB0180939D0790939E07A2 |
:1071D000A0939F07B093A0071092BC021092BB022D |
:1071E00081E0809301010E94246680917D02846089 |
:1071F00080937D028FEF80930F081092100880E239 |
:1072000080931108C2EBD2E0A1EBB5E007E08D91CD |
:10721000E82FFF27EE0FFF1FE952F94F8081918180 |
:1072200082598993015007FFF2CF84E68093B1021F |
:1072300080912202882311F0469A579A80911A036E |
:1072400090911B0380569940815C9B4228F080916D |
:10725000D50381608093D503809118039091190321 |
:1072600080569940815C9B4228F08091D5038260D2 |
:107270008093D50380911603909117038C5291400F |
:107280008957954028F08091D50384608093D50379 |
:1072900080911003909111038C529140835C914036 |
:1072A00028F08091D50388608093D50380910E03E8 |
:1072B00090910F038C529140835C914028F0809113 |
:1072C000D50380618093D50380910A0390910B03CD |
:1072D000805092408355914028F08091D503806280 |
:1072E0008093D503ECE0CDB7DEB70C948E77A3E1A5 |
:1072F000B0E0EDE7F9E30C946C7780911603909180 |
:1073000017032091430230914402821B930B909308 |
:1073100097078093960780914D0290914E0297FDBA |
:1073200007969C0113E0359527951A95E1F7309360 |
:1073300058072093570780914B0290914C0297FD7C |
:107340000796B3E095958795BA95E1F7909349072D |
:1073500080934807309363072093620790935B07FD |
:1073600080935A078091910790919207AC01440F46 |
:10737000551F480F591F20913F0230914002C9010B |
:10738000880F991F880F991F820F931F820F931FD9 |
:10739000480F591F57FF02C04D5F5F4F55954795E6 |
:1073A0005595479550939207409391078091A10777 |
:1073B0009091A207AC01440F551F480F591F20910F |
:1073C000410230914202C901880F991F880F991F0D |
:1073D000820F931F820F931F480F591F57FF02C040 |
:1073E0004D5F5F4F55954795559547955093A2072B |
:1073F0004093A10720913F0230914002C901880FBC |
:10740000991F880F991F820F931F820F931F9C0152 |
:10741000442737FD4095542F8091F5029091F60254 |
:10742000A091F702B091F802820F931FA41FB51F1D |
:107430008093F5029093F602A093F702B093F802BE |
:107440002091410230914202C901880F991F880F93 |
:10745000991F820F931F820F931F9C01442737FDB2 |
:107460004095542F8091F1029091F202A091F30285 |
:10747000B091F402820F931FA41FB51F8093F102F5 |
:107480009093F202A093F302B093F40280916C0700 |
:1074900090916D0720913F0230914002820F931F1F |
:1074A00090936D0780936C078091990790919A074C |
:1074B0002091410230914202820F931F90939A07CC |
:1074C0008093990780910C0390910D0301969093FE |
:1074D0000D0380930C0380919E0590919F05209150 |
:1074E0000A0330910B03821B930B9C01442737FD49 |
:1074F0004095542F8091ED029091EE02A091EF0201 |
:10750000B091F002820F931FA41FB51F8093ED026C |
:107510009093EE02A093EF02B093F0028FEC809371 |
:107520007A00109210012091DD023091DE0240912C |
:10753000DF025091E00229873A874B875C87295404 |
:107540003B46414050402CF028E43BE641E050E00F |
:107550000DC089859A85AB85BC85885B9449AE4F03 |
:10756000BF4F4CF428EB34E94EEF5FEF2D833E83A1 |
:107570004F83588708C089859A85AB85BC858D83E4 |
:107580009E83AF83B8872091E5023091E602409157 |
:10759000E7025091E8022D873E874F87588B295488 |
:1075A0003B46414050402CF028E43BE641E050E0AF |
:1075B0000DC08D859E85AF85B889885B9449AE4F97 |
:1075C000BF4F4CF428EB34E94EEF5FEF29833A8349 |
:1075D0004B835C8308C08D859E85AF85B889898380 |
:1075E0009A83AB83BC83A0919607B0919707BB8B1E |
:1075F000AA8BFD01CF01AA2797FDA095BA2FA090D5 |
:10760000D502B090D602C090D702D090D802A80E72 |
:10761000B91ECA1EDB1EA092D502B092D602C0923D |
:10762000D702D092D802E0909D07F0909E0700917B |
:107630009F071091A007E80EF91E0A1F1B1FE0927A |
:107640009D07F0929E0700939F071093A007F0916B |
:107650009802F98BFF2309F098C180919702882343 |
:1076600009F093C18091B90586FF8FC180914807C9 |
:1076700090914907AA2797FDA095BA2FBC01CD018B |
:1076800029813A814B815C810E94DD769B01AC01AE |
:1076900097FF04C02150384F4F4F5F4FBBE05595C7 |
:1076A000479537952795BA95D1F78091BD01682EFA |
:1076B000772488249924CA01B901A40193010E9466 |
:1076C000DD76DC01CB018093260390932703A09302 |
:1076D0002803B0932903B7FF04C08150904FAF4FE8 |
:1076E000BF4F1C012D01ACE055944794379427946B |
:1076F000AA95D1F7209226033092270340922803BF |
:10770000509229038091570790915807AA2797FD17 |
:10771000A095BA2FBC01CD012D813E814F815885A6 |
:107720000E94DD7697FF04C06150784F8F4F9F4FC6 |
:10773000FBE09595879577956795FA95D1F7A40124 |
:1077400093010E94DD76DC01CB0180932A039093A4 |
:107750002B03A0932C03B0932D03B7FF04C08150DB |
:10776000904FAF4FBF4F9C01AD01ECE05595479551 |
:1077700037952795EA95D1F720932A0330932B0369 |
:1077800040932C0350932D0380912603909127035F |
:107790009093400780933F0780912A0390912B0399 |
:1077A00090934407809343072219330944095509EC |
:1077B00020932A0330932B0340932C0350932D03E3 |
:1077C000E20EF31E041F151FE0929D07F0929E0724 |
:1077D00000939F071093A0078091BC018823B1F408 |
:1077E00057FF04C02F5F3F4F4F4F5F4F5595479551 |
:1077F00037952795A21AB30AC40AD50AA092D502D2 |
:10780000B092D602C092D702D092D8022A893B8980 |
:1078100079010027F7FC0095102F80912A039091A1 |
:107820002B03A0912C03B0912D03E80EF91E0A1F23 |
:107830001B1FC801B70129813A814B815C810E94DD |
:10784000DD769B01AC0197FF04C02150384F4F4FAC |
:107850005F4F6BE055954795379527956A95D1F71A |
:107860008091BE01A82EBB24CC24DD24CA01B9011D |
:10787000A60195010E94DD76DC01CB0180931E03F9 |
:1078800090931F03A0932003B0932103B7FF04C07C |
:107890008150904FAF4FBF4F3C014D013CE095945C |
:1078A0008794779467943A95D1F760921E0370920B |
:1078B0001F038092200390922103C801B7012D81FC |
:1078C0003E814F8158850E94DD7697FF04C061504C |
:1078D000784F8F4F9F4F2BE09595879577956795BC |
:1078E0002A95D1F7A60195010E94DD76DC01CB0136 |
:1078F0008093220390932303A0932403B093250342 |
:10790000B7FF04C08150904FAF4FBF4FAC01BD01D6 |
:107910008CE075956795579547958A95D1F7409373 |
:1079200022035093230360932403709325032A8931 |
:107930003B8937FF03C0309521953F4F21343105F6 |
:10794000E4F1D401C30197FE07C0B095A0959095CE |
:1079500081959F4FAF4FBF4F81389105A105B1056C |
:1079600084F4DB01CA0177FF07C0B095A09590951C |
:1079700081959F4FAF4FBF4F81389105A105B1054C |
:10798000E4F081E08093BD0218C010924407109289 |
:1079900043071092400710923F0710922203109263 |
:1079A0002303109224031092250310921E031092B9 |
:1079B0001F031092200310922103809122039091C3 |
:1079C0002303A0912403B0912503BC01CD0124E63B |
:1079D00030E040E050E00E945177E0901E03F090CC |
:1079E0001F03E21AF30AF0925607E09255078091BE |
:1079F0001E0390911F03A0912003B0912103BC01AD |
:107A0000CD0124E630E040E050E00E945177DA01F9 |
:107A1000C90120912203309123038C01021B130B17 |
:107A200010934B0700934A0780919601909197011C |
:107A3000A0919801B0919901BC01CD0128E631E0F7 |
:107A400040E050E00E94DD7620919D0730919E0736 |
:107A500040919F075091A0072617370748075907FD |
:107A600064F0261B370B480B590B20939D0730936E |
:107A70009E0740939F075093A00720919D07309148 |
:107A80009E0740919F075091A00757FF0CC0260FFB |
:107A9000371F481F591F20939D0730939E0740931F |
:107AA0009F075093A00760914807709149076E0D9A |
:107AB0007F1D9B01442737FD4095542F8091D902AB |
:107AC0009091DA02A091DB02B091DC02820F931F49 |
:107AD000A41FB51F8093D9029093DA02A093DB0212 |
:107AE000B093DC0280919D0290919E02681B790BFD |
:107AF000CB01AA2797FDA095BA2F29853A854B85FA |
:107B00005C85820F931FA41FB51F8093DD029093A5 |
:107B1000DE02A093DF02B093E002C090D101D090CA |
:107B2000D201E090D301F090D401C816D906EA063C |
:107B3000FB06C4F488EA91E6A0E0B0E08C199D0948 |
:107B4000AE09BF098093DD029093DE02A093DF02AD |
:107B5000B093E0028093D9029093DA02A093DB0203 |
:107B6000B093DC0222273327A9012C193D094E09C5 |
:107B70005F098091DD029091DE02A091DF02B09159 |
:107B8000E00282179307A407B507B4F4D701C60132 |
:107B9000885A9146A040B0408093DD029093DE0267 |
:107BA000A093DF02B093E0028093D9029093DA02AF |
:107BB000A093DB02B093DC026091570770915807E5 |
:107BC000600F711F9B01442737FD4095542F809112 |
:107BD000E1029091E202A091E302B091E402820FEF |
:107BE000931FA41FB51F8093E1029093E202A0931C |
:107BF000E302B093E40280919B0290919C02681B87 |
:107C0000790BCB01AA2797FDA095BA2F2D853E852C |
:107C10004F855889820F931FA41FB51F8093E502DB |
:107C20009093E602A093E702B093E802E090D501BA |
:107C3000F090D6010091D7011091D801E816F9060D |
:107C40000A071B07C4F488EA91E6A0E0B0E08E19A9 |
:107C50009F09A00BB10B8093E5029093E602A093DD |
:107C6000E702B093E8028093E1029093E202A093CE |
:107C7000E302B093E40222273327A9012E193F091A |
:107C8000400B510B8091E5029091E602A091E70232 |
:107C9000B091E80282179307A407B507B4F4D8019E |
:107CA000C701885A9146A040B0408093E502909366 |
:107CB000E602A093E702B093E8028093E10290937A |
:107CC000E202A093E302B093E4028091D502909186 |
:107CD000D602A091D702B091D8028093E902909386 |
:107CE000EA02A093EB02B093EC028091E50290913E |
:107CF000E602A091E702B091E80280930503909319 |
:107D00000603A0930703B09308038091DD029091CE |
:107D1000DE02A091DF02B091E0028093FD02909319 |
:107D2000FE02A093FF02B09300038091E1029091C4 |
:107D3000E202A091E302B091E402809301039093E8 |
:107D40000203A0930303B09304038091D90290919E |
:107D5000DA02A091DB02B091DC028093F9029093E9 |
:107D6000FA02A093FB02B093FC0280911C01909157 |
:107D70001D0197FD079603E0959587950A95E1F714 |
:107D8000909358078093570780911A0190911B0197 |
:107D900097FD079613E0959587951A95E1F79093CF |
:107DA00049078093480780914702909148020F97B6 |
:107DB00034F488E19CEF90935807809357078091A3 |
:107DC000470290914802079734F480E398EF90932C |
:107DD000580780935707209102012A30A9F4809117 |
:107DE000470290914802835F934034F088EE93E01D |
:107DF00090935807809357078091470290914802CB |
:107E00008A5F9340DCF014C0809147029091480251 |
:107E1000815D974034F088EE93E09093580780930B |
:107E200057078091470290914802805E974034F056 |
:107E300080ED97E090935807809357078091450213 |
:107E4000909146020F9734F488E19CEF9093490794 |
:107E5000809348078091450290914602079734F439 |
:107E600080E398EF90934907809348072A30A9F45C |
:107E70008091450290914602835F934034F088EEF2 |
:107E800093E0909349078093480780914502909131 |
:107E900046028A5F9340DCF014C0809145029091C5 |
:107EA0004602815D974034F088EE93E09093490755 |
:107EB000809348078091450290914602805E9740EA |
:107EC00034F080ED97E090934907809348076091E4 |
:107ED000C801662309F4AFC040911C0150911D01F7 |
:107EE00080912E0390912F03481B590B509335031B |
:107EF0004093340320911C0130911D01280F391F3C |
:107F000037FF02C02F5F3F4F3595279530932F03E2 |
:107F100020932E03413851051CF080E890E005C005 |
:107F200040585F4F34F480E89FEF9093350380937F |
:107F3000340340911A0150911B01809130039091BC |
:107F40003103481B590B5093330340933203209164 |
:107F50001A0130911B01280F391F37FF02C02F5F14 |
:107F60003F4F3595279530933103209330034138A7 |
:107F700051051CF080E890E005C040585F4F34F494 |
:107F800080E89FEF9093330380933203462F552769 |
:107F90008091340390913503849FB001859F700DCB |
:107FA000949F700D11249B0177FF02C0215F3F4F0A |
:107FB000F4E035952795FA95E1F780915707909170 |
:107FC0005807820F931F909358078093570780910B |
:107FD000320390913303849FD001859FB00D949F0D |
:107FE000B00D1124AD019D01B7FF02C0215F3F4FCD |
:107FF000E4E035952795EA95E1F78091480790915F |
:108000004907820F931F90934907809348078091F7 |
:108010001C0190911D01860F971F90931D01809365 |
:108020001C0180911A0190911B01840F951F909360 |
:108030001B0180931A0100915A0710915B078091F0 |
:108040003F0790914007101611065CF59C0197FFC1 |
:1080500004C022273327281B390BC901AA2797FD03 |
:10806000A095BA2F2091BC01332744275527BC0186 |
:10807000CD010E94DD769B01AC0197FF04C0215C1D |
:108080003F4F4F4F5F4F76E0559547953795279572 |
:108090007A95D1F78091550790915607820F931FDB |
:1080A00027C097FF03C0909581959F4FAA2797FD02 |
:1080B000A095BA2F2091BC01332744275527BC0136 |
:1080C000CD010E94DD769B01AC0197FF04C0215CCD |
:1080D0003F4F4F4F5F4F66E0559547953795279532 |
:1080E0006A95D1F78091550790915607821B930BA3 |
:1080F0009093560780935507E0906207F0906307CE |
:1081000080914307909144071E141F045CF59C0165 |
:1081100097FF04C022273327281B390BC901AA2740 |
:1081200097FDA095BA2F2091BC01332744275527EE |
:10813000BC01CD010E94DD769B01AC0197FF04C01C |
:10814000215C3F4F4F4F5F4F96E0559547953795D0 |
:1081500027959A95D1F780914A0790914B07820F06 |
:10816000931F27C097FF03C0909581959F4FAA2723 |
:1081700097FDA095BA2F2091BC013327442755279E |
:10818000BC01CD010E94DD769B01AC0197FF04C0CC |
:10819000215C3F4F4F4F5F4F86E055954795379590 |
:1081A00027958A95D1F780914A0790914B07821BBA |
:1081B000930B90934B0780934A078091B90587FFF3 |
:1081C00044C0B989BB2309F040C08091970288233D |
:1081D000E1F5E1E0EE16E1E0FE064CF08091570794 |
:1081E000909158078E0D9F1D805091400DC0F0E07A |
:1081F000EF16FFEFFF0664F4809157079091580740 |
:108200008E0D9F1D80509F4F909358078093570766 |
:1082100021E0013012074CF0809148079091490706 |
:10822000800F911F805091400CC03FEF003013072A |
:1082300064F48091480790914907800F911F805006 |
:108240009F4F9093490780934807E2E1CD5E0C94DD |
:1082500088778091A802882301F580917D028C7F28 |
:1082600080937D02AAEDB3E0E6E7F6E09BE0809123 |
:108270000302882309F48C938D918183128291509B |
:10828000389697FFF4CF80910302882359F08091AC |
:10829000030281508093030205C080917D028160BA |
:1082A00080937D0280916E02882319F010926E02F5 |
:1082B0000895809370028093720280916C028E7F89 |
:1082C00080936C0285EA8093BC000895CF93DF937E |
:1082D000A2EBB2E0C1EBD5E057E08991E82FFF2790 |
:1082E000EE0FFF1FE952F94F0190F081E02DE259A6 |
:1082F000FF4FEF3FF10521F01CF0EFEFF0E004C07D |
:10830000F7FF02C0E0E0F0E04C91242F3327E217A2 |
:10831000F307A9F0CF01821B930B97FD0396959568 |
:10832000879595958795242F280F2C93822F992731 |
:10833000E817F90714F4215001C02F5F2C93515016 |
:10834000119657FFCACF8091BB05883F38F0EFEFF9 |
:10835000F0E0E81BF109EE54FD4F80818093CE01DF |
:108360008091CE01882329F0843618F084E680932A |
:10837000CE018091BD05883F38F0EFEFF0E0E81BBB |
:10838000F109EE54FD4F80818093CC018091CC01A6 |
:10839000882329F0843618F084E68093CC018091FC |
:1083A000CA05883F38F0EFEFF0E0E81BF109EE5422 |
:1083B000FD4F80818093C7018091C7018B3010F4FD |
:1083C0008AE002C08F3F11F48093C7018091F705C6 |
:1083D000883F38F0EFEFF0E0E81BF109EE54FD4F75 |
:1083E000808180936E0780916E07823010F481E067 |
:1083F00002C08F3F11F480936E078091F905883F8A |
:1084000038F0EFEFF0E0E81BF109EE54FD4F80810A |
:108410008093940780919407823010F481E002C029 |
:108420008F3F11F4809394078091E405883F38F0E2 |
:10843000EFEFF0E0E81BF109EE54FD4F80818093EF |
:108440006B078091E505883F38F0EFEFF0E0E81B1F |
:10845000F109EE54FD4F8081809345078091E60538 |
:10846000883F38F0EFEFF0E0E81BF109EE54FD4FE4 |
:108470008081809373079091BC05983F18F4909386 |
:10848000CD0109C0EFEFF0E0E91BF109EE54FD4F1B |
:1084900080818093CD01983F18F49093CD0109C05D |
:1084A000EFEFF0E0E91BF109EE54FD4F808180937E |
:1084B000CD018091BF05883F38F0EFEFF0E0E81B79 |
:1084C000F109EE54FD4F80818093CB018091C1056D |
:1084D000883F38F0EFEFF0E0E81BF109EE54FD4F74 |
:1084E00080818093C9018091C905883F38F0EFEF02 |
:1084F000F0E0E81BF109EE54FD4F80818093CA0142 |
:108500008091CB05883F38F0EFEFF0E0E81BF109F0 |
:10851000EE54FD4F80818093C6018091CC05883F49 |
:1085200038F0EFEFF0E0E81BF109EE54FD4F8081E9 |
:108530008093C8018091CD05883F38F0EFEFF0E0DF |
:10854000E81BF109EE54FD4F80818093C5018091B5 |
:10855000CE05883F38F0EFEFF0E0E81BF109EE546C |
:10856000FD4F80818093C4018091D405883F38F00D |
:10857000EFEFF0E0E81BF109EE54FD4F80818093AE |
:10858000C2018091D505883F38F0EFEFF0E0E81B9D |
:10859000F109EE54FD4F8081809392028091D605BF |
:1085A000883F38F0EFEFF0E0E81BF109EE54FD4FA3 |
:1085B0008081809391028091D705883F38F0EFEF5A |
:1085C000F0E0E81BF109EE54FD4F808180939002AA |
:1085D0008091D805883F38F0EFEFF0E0E81BF10913 |
:1085E000EE54FD4F808180938F028091F205883F89 |
:1085F00038F0EFEFF0E0E81BF109EE54FD4F808119 |
:1086000080938E028091F305883F38F0EFEFF0E021 |
:10861000E81BF109EE54FD4F808180938D0280911B |
:10862000F405883F38F0EFEFF0E0E81BF109EE5475 |
:10863000FD4F808180938C028091F505883F38F052 |
:10864000EFEFF0E0E81BF109EE54FD4F80818093DD |
:108650008B028091D905883F38F0EFEFF0E0E81BFE |
:10866000F109EE54FD4F80818093C1018091DD05B9 |
:10867000883F38F0EFEFF0E0E81BF109EE54FD4FD2 |
:1086800080818093C0018091E705883F38F0EFEF4B |
:10869000F0E0E81BF109EE54FD4F80818093BF01AB |
:1086A0008091EA05883F38F0EFEFF0E0E81BF10930 |
:1086B000EE54FD4F80818093BE018091EB05883F91 |
:1086C00038F0EFEFF0E0E81BF109EE54FD4F808148 |
:1086D0008093BD018091EC05883F38F0EFEFF0E02A |
:1086E000E81BF109EE54FD4F80818093BC0180911D |
:1086F000F105883F38F0EFEFF0E0E81BF109EE54A8 |
:10870000FD4F80818093BB0180910C06883F38F03B |
:10871000EFEFF0E0E81BF109EE54FD4F808180930C |
:10872000A4078091C201282F33272F5F3F4F8CE38E |
:1087300098E2B9010E941C777093D0016093CF0139 |
:108740008091C705809395078091C60580935C074B |
:1087500090910E06933320F181E080938A02983F36 |
:1087600058F0EFEFF0E0E91BF109EE54FD4F808186 |
:10877000823310F410928A028091E2079091E3070D |
:1087800097FF08C080918A02882321F08091D50349 |
:10879000806803C08091D5038F778093D50302C092 |
:1087A00010928A028091E2079091E30797FF1DC023 |
:1087B0008091A8028823C9F080918A028823A9F0B9 |
:1087C00080910801909109018F5F9F4F71F488E9B2 |
:1087D0009AE3909325028093240280E094EA909398 |
:1087E00009018093080110928A0280918A028823ED |
:1087F00039F08091BE01823D18F4825E8093BE0103 |
:10880000DF91CF910895A8E1B0E0E9E0F4E40C94A1 |
:108810006C770E947739309102013C3010F4299A2C |
:1088200001C02998E090A902F090AA02FA82E98298 |
:1088300080915C0799270A96E816F90614F49A8342 |
:1088400089838091B102843608F05CC080914A032C |
:1088500090914B03009731F0019790934B038093D5 |
:108860004A0307C01092A80280917D028F7E8093F8 |
:108870007D023A3011F0343110F0289A01C0289866 |
:1088800080917E0290917F02895E9340C0F1809139 |
:10889000D105282F33273A83298380917D02806177 |
:1088A00080937D028091AD05A82FBB27AA0FBB1F27 |
:1088B000FD01E55FF84F118210828091AE05282FEF |
:1088C0003327220F331FC901855F984FFC011182A6 |
:1088D0001082A952B94F11961C921E922952394FFB |
:1088E000D90111961C921E928091B005E82FFF27A6 |
:1088F000EE0FFF1FE952F94F11821082C9C2109288 |
:10890000A802C6C28091B1028D3808F4C1C280911C |
:108910007D028F7E80937D029091D20582E3989FA5 |
:10892000C001112490934B0380934A03E981FA819B |
:10893000B9978CF08091A802882369F080917E021B |
:1089400090917F02FFEF8F3F9F0729F00196909350 |
:108950007F0280937E0280917E0290917F028F3F02 |
:10896000910509F038F51092CD021092CE021092C6 |
:10897000CF021092D0021092C9021092CA02109235 |
:10898000CB021092CC021092360310923703109251 |
:108990003803109239031092D5021092D602109229 |
:1089A000D7021092D8028A3F910549F481E0809362 |
:1089B000500305C080917D02826080937D0280918A |
:1089C000AF05E82FFF27EE0FFF1FE952F94F808117 |
:1089D0009181813591050CF441C12091A802222397 |
:1089E00009F03CC18091B005E82FFF27EE0FFF1F73 |
:1089F000E952F94F808191818C3491050CF406C1C4 |
:108A000080914C038F5F80934C03893C08F426C10E |
:108A10003C3010F4299801C0299A1092A8021092B3 |
:108A20004C0310927F0210927E023091AD05E32F2D |
:108A3000FF27EE0FFF1FE952F94F808191818734A4 |
:108A40009105B4F48091AE05E82FFF27EE0FFF1FCC |
:108A5000E952F94F808191810190F081E02DF7FF7B |
:108A600003C0F095E195FF4FE734F1050CF478C0B1 |
:108A700041E02091AE05A22FBB27AA0FBB1FA95230 |
:108A8000B94F8D919C9111978734910544F0E32F54 |
:108A9000FF27EE0FFF1FE952F94F808191818D91E1 |
:108AA0009C918734910574F08091AD05E82FFF27E4 |
:108AB000EE0FFF1FE952F94F8081918187349105B4 |
:108AC0000CF042E0E22FFF27EE0FFF1FE952F94FB3 |
:108AD000808191818634910574F48091AD05E82FF1 |
:108AE000FF27EE0FFF1FE952F94F808191818734F4 |
:108AF00091050CF043E0E22FFF27EE0FFF1FE95234 |
:108B0000F94F808191818A5B9F4F74F48091AD050C |
:108B1000E82FFF27EE0FFF1FE952F94F8081918167 |
:108B2000873491050CF044E0E22FFF27EE0FFF1F82 |
:108B3000E952F94F808191818A5B9F4F74F4809153 |
:108B4000AD05E82FFF27EE0FFF1FE952F94F808197 |
:108B50009181863491050CF445E0842F0E942C2DE0 |
:108B60008091AE05E82FFF27EE0FFF1FE952F94F66 |
:108B7000808191810190F081E02DF7FF03C0F09595 |
:108B8000E195FF4F7E97BCF48091AD05E82FFF275C |
:108B9000EE0FFF1FE952F94F808191818A5B9F4F51 |
:108BA00054F481E08093F00388EE93E090932502E3 |
:108BB0008093240253C00E94262E0E94D92C80E06C |
:108BC0000E944A078091D3050E94F6728091B905F0 |
:108BD00080FF10C08091140190911501875B934034 |
:108BE00038F480911401909115018E5E924010F43A |
:108BF0000E94B51A1092220280E00E94C93681E0DC |
:108C000080934F0380932202579A1FC080819181E5 |
:108C1000855B9F4F0CF580914C038F5F80934C03D5 |
:108C2000893CE0F03C3010F4299801C0299A109258 |
:108C3000A80210924C0310927F0210927E0281E0F3 |
:108C40000E94C93681E080934F030E94262E68E778 |
:108C500070E00E94073602C020934C038091AF055C |
:108C6000E82FFF27EE0FFF1FE952F94F8081918116 |
:108C70008B5A9F4F0CF00CC13091A802E091B005C7 |
:108C8000332309F0DAC0FF27EE0FFF1FE952F94F37 |
:108C900080819181855B9F4F0CF0CCC020910F06A5 |
:108CA000E22FFF27EE0FFF1FE952F94F80819181DC |
:108CB000855B9F4F1CF0222309F0BCC080914D03BF |
:108CC0008F5F80934D03893C08F4E2C030934D03DD |
:108CD0008091D503882309F0A6C080914F03882393 |
:108CE00009F4A1C081E090E090937F0280937E021E |
:108CF00081E08093A80210923603109237031092FD |
:108D00003803109239031092D5021092D6021092B5 |
:108D1000D7021092D8021092D1021092D202109271 |
:108D2000D3021092D4028091C805E82EFF240027B8 |
:108D3000112780919107909192079C01442737FD5C |
:108D40004095542FC801B7010E94DD76DC01CB01AC |
:108D50008093E5029093E602A093E702B093E802C5 |
:108D60008091A1079091A2079C01442737FD40956F |
:108D7000542FC801B7010E94DD76DC01CB0180933E |
:108D8000DD029093DE02A093DF02B093E0028091B7 |
:108D9000050390910603A0910703B0910803809307 |
:108DA000E1029093E202A093E302B093E402809187 |
:108DB000FD029091FE02A091FF02B091000380930A |
:108DC000D9029093DA02A093DB02B093DC021092F6 |
:108DD000CD021092CE021092CF021092D0021092C9 |
:108DE000C9021092CA021092CB021092CC0280915A |
:108DF0007D02886080937D0290910D068FE0989FA0 |
:108E0000900111248091C3029091C402820F931F9C |
:108E100068E671E00E941C7797FD0196959587950D |
:108E20008093090335C08CED95E0909325028093E3 |
:108E300024022EC010924D032BC0FF27EE0FFF1F00 |
:108E4000E952F94F808191818C349105FCF0209199 |
:108E50000F06E22FFF27EE0FFF1FE952F94F808127 |
:108E60009181855B9F4F14F0222381F480914E0302 |
:108E70008F5F80934E03893C58F01092A8021092A5 |
:108E80004E0310927F0210927E0202C010924E0397 |
:108E900080919401815080939401809194018F3F3F |
:108EA00021F080917D0284FF72C30E94664180910F |
:108EB000590390915A039C01220F331F280F391F29 |
:108EC000C090AD05AC2DBB27AA0FBB1FFD01E95219 |
:108ED000F94FB090C3054B2D552780819181849F18 |
:108EE000F001859FF00D949FF00D11242E0F3F1F70 |
:108EF00037FF02C02D5F3F4FB90175956795759596 |
:108F00006795A55FB84F8091C405082F11278D91F3 |
:108F10009C91809F7001819FF00C909FF00C112418 |
:108F20006E0D7F1D70935A036093590380915B030C |
:108F300090915C039C01220F331F280F391FD090A2 |
:108F4000AE05AD2DBB27AA0FBB1FFD01E952F94F9E |
:108F500080819181849FF001859FF00D949FF00D99 |
:108F600011242E0F3F1F37FF02C02D5F3F4FA90175 |
:108F70005595479555954795A55FB84F8D919C910F |
:108F8000809F7001819FF00C909FF00C11244E0D7A |
:108F90005F1D50935C0340935B0380918A0288239A |
:108FA00009F448C0CB0177FD0396DC01B595A79580 |
:108FB000B595A795CA0157FD0396FC01F595E79570 |
:108FC000F595E7958091EA01682F772767FD709501 |
:108FD0006A9F90016B9F300D7A9F300D1124809114 |
:108FE0009103482F552747FD50954E9FC0014F9F35 |
:108FF000900D5E9F900D1124280F391F37FF02C07E |
:10900000295F3F4F03E0359527950A95E1F73093A7 |
:10901000B0022093AF026E9F90016F9F300D7E9F34 |
:10902000300D11244A9FC0014B9F900D5A9F900D07 |
:1090300011243FC080910D06E82FFF27E456FE4F14 |
:1090400086818093EA01908190939103A82FBB279A |
:10905000A7FDB095A69F9001A79F300DB69F300D3C |
:109060001124E92FFF27E7FDF095E49FC001E59F5C |
:10907000900DF49F900D1124280F391F37FF02C067 |
:10908000295F3F4F13E0359527951A95E1F7309307 |
:10909000B0022093AF02A49F9001A59F300DB49F12 |
:1090A000300D1124E69FC001E79F900DF69F900DB3 |
:1090B0001124281B390B37FF02C0295F3F4FF3E013 |
:1090C00035952795FA95E1F73093AE022093AD02DE |
:1090D0008091B005E82FFF27EE0FFF1FE952F94FEF |
:1090E00080819181909581959F4F9093AC02809360 |
:1090F000AB028330910514F0029705C00FEF8E3F4D |
:10910000900734F402969093AC028093AB0204C0B3 |
:109110001092AC021092AB0280918D0390918E035D |
:109120002091890330918A03820F931F0091AF022F |
:109130001091B002081B190B1093B0020093AF02FC |
:1091400080918B0390918C03209187033091880349 |
:10915000820F931F8090AD029090AE02881A990AF8 |
:109160009092AE028092AD028091AF05E82FFF276A |
:10917000EE0FFF1FE952F94FE080F18028E730E061 |
:10918000E20EF31EF092AA02E092A9028091C701BA |
:109190009927AA2797FDA095BA2FBC01CD010E945F |
:1091A0005176DC01CB0120E030E040E251E4BC012B |
:1091B000CD010E94BF75DC01CB01BC01CD010E9435 |
:1091C0002376DC01CB0180939B078091C6018093BD |
:1091D00074078091C5019927AA2797FDA095BA2FFA |
:1091E000BC01CD010E945176DC01CB0120E030E0D2 |
:1091F00040E251E4BC01CD010E94BF75DC01CB010E |
:10920000BC01CD010E942376DC01CB0180934F0786 |
:109210008091C401809364078091FC0380FF59C052 |
:109220008091A407813808F454C08091F5039927F0 |
:1092300087FD90952B2D3327829FA001839F500D92 |
:10924000929F500D1124040F151F1093B00200932C |
:10925000AF028091F603992787FD9095829FB00118 |
:10926000839F700D929F700D1124860E971E909211 |
:10927000AE028092AD028091F703282F332727FD9D |
:1092800030958091AB029091AC02820F931F909326 |
:10929000AC028093AB028091F903282F332727FD7E |
:1092A00030958091BE059927289FD001299FB00D48 |
:1092B000389FB00D1124B0939B01A0939A01809127 |
:1092C000F80399278E159F0524F49093AA028093A2 |
:1092D000A9028091A9029091AA0297FF04C010925E |
:1092E000AA021092A9028091B90582FF02C01092D1 |
:1092F00074074091AF025091B002CA0157FD039626 |
:109300009C01359527953595279537FF03C03095F6 |
:1093100021953F4F8091820290918302821793079B |
:10932000B4F4CA0157FF03C0909581959F4F97FDF4 |
:10933000039695958795959587959093830280934D |
:1093400082028536910544F084E690E001C00197E1 |
:1093500090938302809382024091AD025091AE02BD |
:10936000CA0157FD03969C0135952795359527959C |
:1093700037FF03C0309521953F4F80918002909137 |
:10938000810282179307B4F4CA0157FF03C0909576 |
:1093900081959F4F97FD0396959587959595879510 |
:1093A00090938102809380028536910544F084E693 |
:1093B00090E001C001979093810280938002809198 |
:1093C0007D0284FF08C010928302109282021092E4 |
:1093D000810210928002ED2DFF27EE0FFF1FE95250 |
:1093E000F94F4091E805242F332780819181281778 |
:1093F000390744F48091100682FF04C081E0809315 |
:10940000960213C0ED2DFF27EE0FFF1FE952F94F13 |
:10941000842F99272091E905821B910920813181B0 |
:109420002817390714F4109296024091AE05E42FE4 |
:10943000FF27EE0FFF1FE952F94F5091E805852FE6 |
:10944000992722273327281B390B80819181821786 |
:10945000930744F48091100683FF04C081E0809359 |
:10946000950216C080919502882391F0E42FFF2782 |
:10947000EE0FFF1FE952F94F8091E9059927851BEF |
:109480009109208131818217930714F4109295027B |
:10949000EC2DFF27EE0FFF1FE952F94F4091E80531 |
:1094A000242F3327808191812817390744F4809134 |
:1094B000100680FF04C081E08093930217C0809162 |
:1094C0009302882399F0EC2DFF27EE0FFF1FE9523E |
:1094D000F94F842F99272091E905821B910920815A |
:1094E00031812817390714F4109293024091AD0589 |
:1094F000E42FFF27EE0FFF1FE952F94F5091E805C7 |
:10950000852F992722273327281B390B80819181AA |
:109510008217930744F48091100681FF04C081E014 |
:109520008093940216C080919402882391F0E42FD6 |
:10953000FF27EE0FFF1FE952F94F8091E9059927A8 |
:10954000851B9109208131818217930714F41092B1 |
:10955000940280919602882319F4809195028111DA |
:1095600081E08093970280919302882321F4809177 |
:109570009402882351F081E0809398021092970220 |
:10958000109296021092950202C0809398028091E8 |
:109590009702882321F480919802882369F08091B2 |
:1095A000E7059927E981FA818E179F0714F49A83BA |
:1095B000898381E08093BD0280917D0284FF1AC07F |
:1095C0001092AC021092AB021092B0021092AF0255 |
:1095D0001092AE021092AD029AE590939B0788E735 |
:1095E0008093740790934F078093640710929702BB |
:1095F000109298028091670790916807A09169077F |
:10960000B0916A072091050330910603409107034A |
:1096100050910803820F931FA41FB51F8093670703 |
:1096200090936807A0936907B0936A0780916F07CA |
:1096300090917007A0917107B09172072090FD0280 |
:109640003090FE024090FF0250900003820D931D67 |
:10965000A41DB51D80936F0790937007A0937107A9 |
:10966000B093720780915E0790915F07A0916007A9 |
:10967000B0916107E0900103F090020300910303B1 |
:1096800010910403EB82FC820D831E838E0D9F1DBF |
:10969000A01FB11F80935E0790935F07A0936007A0 |
:1096A000B09361078091500790915107A0915207A4 |
:1096B000B0915307E090F902F090FA020091FB029A |
:1096C0001091FC02EF82F88609871A878E0D9F1D84 |
:1096D000A01FB11F8093500790935107A09352078A |
:1096E000B0935307F0909802FB86FF2029F48091F5 |
:1096F0009702882309F460C01092F5021092F602D6 |
:109700001092F7021092F8021092F1021092F202F7 |
:109710001092F3021092F4021092670710926807F9 |
:109720001092690710926A0710926F0710927007E3 |
:10973000109271071092720710925E0710925F07E5 |
:109740001092600710926107109250071092510713 |
:1097500010925207109253078091E5029091E60211 |
:10976000A091E702B091E8028093E1029093E202B7 |
:10977000A093E302B093E4028091DD029091DE02B7 |
:10978000A091DF02B091E0028093D9029093DA02B7 |
:10979000A093DB02B093DC021092340210923302E9 |
:1097A00010929C0210929B0210929E0210929D02B7 |
:1097B0000B85002309F0F2C180919702882309F0FC |
:1097C000EDC180919E0590919F05815092402CF4AF |
:1097D0008091A802882309F4E1C190900F08A0901D |
:1097E000C8056091910770919207788F6F8B809177 |
:1097F000A1079091A2079A8B898B9FEF991609F484 |
:10980000D9C0BB24CC24DD24CA01B901A60195012D |
:109810000E94517779018A01EF89F88DCF01AA273B |
:1098200097FDA095BA2FE81AF90A0A0B1B0BC20183 |
:10983000B101A60195010E94517759016A01298958 |
:109840003A89C901AA2797FDA095BA2FA81AB90A83 |
:10985000CA0ADB0A292C332427FC3094432C532CCE |
:10986000C801B701A20191010E94DD7697FF04C0F3 |
:1098700061507E4F8F4F9F4F3B014C0109E0959403 |
:109880008794779467940A95D1F7C601B501A20130 |
:1098900091010E94DD7697FF04C061507E4F8F4F8B |
:1098A0009F4F5B016C0119E0D594C794B794A794BE |
:1098B0001A95D1F7809182029091830281349105AB |
:1098C0003CF4809180029091810281349105D4F022 |
:1098D000D401C30197FE03C00196A11DB11D3C0137 |
:1098E0004D019594879477946794D601C501D7FE6E |
:1098F00003C00196A11DB11D5C016D01D594C794F3 |
:10990000B794A7948091B005E82FFF27EE0FFF1FB3 |
:10991000E952F94F808191810190F081E02DF7FFAC |
:1099200003C0F095E195FF4F7A97A4F0C401B3010D |
:1099300023E030E040E050E00E94517739014A01D5 |
:10994000C601B50123E030E040E050E00E945177CD |
:1099500059016A0180911108282F332727FD30957E |
:10996000432F532F261537054805590514F439019F |
:109970004A01992787FD9095909581959F4FAA2739 |
:1099800097FDA095BA2F681679068A069B0614F4EF |
:109990003C014D012A153B054C055D0514F45901A8 |
:1099A0006A01A816B906CA06DB060CF0CFC05C0136 |
:1099B0006D01CCC0EA2CFF2400271127CA01B90190 |
:1099C000A80197010E94517739014A014F89588DAA |
:1099D000CA01AA2797FDA095BA2F681A790A8A0AA0 |
:1099E0009B0AC201B101A80197010E945177590158 |
:1099F0006A0169897A89CB01AA2797FDA095BA2FB8 |
:109A0000A81AB90ACA0ADB0AD401C30197FE03C027 |
:109A10000F96A11DB11D3C014D01F4E09594879472 |
:109A200077946794FA95D1F7D601C501D7FE03C0A4 |
:109A30000F96A11DB11D5C016D01E4E0D594C794A2 |
:109A4000B794A794EA95D1F780918202909183020E |
:109A5000813491053CF4809180029091810281349F |
:109A60009105A4F0C401B30123E030E040E050E0F0 |
:109A70000E94517739014A01C601B50123E030E067 |
:109A800040E050E00E94517759016A018091B00591 |
:109A9000E82FFF27EE0FFF1FE952F94F80819181D8 |
:109AA0000190F081E02DF7FF03C0F095E195FF4FA5 |
:109AB0007A97A4F0C401B30123E030E040E050E025 |
:109AC0000E94517739014A01C601B50123E030E017 |
:109AD00040E050E00E94517759016A0171E2671637 |
:109AE0007104810491042CF070E2672E712C812C9A |
:109AF000912C80EE68168FEF78068FEF88068FEF37 |
:109B0000980644F460EE662E6FEF762E6FEF862E89 |
:109B10006FEF962E91E2A916B104C104D1042CF086 |
:109B200050E2A52EB12CC12CD12CA0EEAA16AFEF7D |
:109B3000BA06AFEFCA06AFEFDA0644F440EEA42E41 |
:109B40004FEFB42E4FEFC42E4FEFD42E8091E5028D |
:109B50009091E602A091E702B091E8028619970978 |
:109B6000A809B9098093E5029093E602A093E70261 |
:109B7000B093E8028091DD029091DE02A091DF02B5 |
:109B8000B091E0028A199B09AC09BD098093DD02FE |
:109B90009093DE02A093DF02B093E0028091330243 |
:109BA000909134028F3F910509F008F4C4C5BB853C |
:109BB000BB2309F04EC580919702882309F049C55F |
:109BC0008091BD02882309F044C5E091F005EC873F |
:109BD000EE2309F43EC58091670790916807A09134 |
:109BE0006907B0916A07B7FF04C081509F4FAF4F1C |
:109BF000BF4FE92EFA2E0B2F112707FD1A95E09281 |
:109C00006707F09268070093690710936A078091CD |
:109C10006F0790917007A0917107B0917207B7FF1D |
:109C200004C081509F4FAF4FBF4F892F9A2FAB2F4A |
:109C3000BB27A7FDBA958D879E87AF87B88B80938A |
:109C40006F0790937007A0937107B093720780918C |
:109C5000C805A82EBB24CC24DD242091F502309128 |
:109C6000F6024091F7025091F802C601B5010E9438 |
:109C7000DD7697FF04C061507F4F8F4F9F4F672E57 |
:109C8000782E892E992487FC9A946092F50270921E |
:109C9000F6028092F7029092F8022091F102309140 |
:109CA000F2024091F3025091F402C601B5010E9404 |
:109CB000DD7697FF04C061507F4F8F4F9F4F272E57 |
:109CC000382E492E552447FC5A942092F1023092A6 |
:109CD000F2024092F3025092F4028091ED029091D0 |
:109CE000EE02A091EF02B091F002B7FF04C08150E4 |
:109CF0009F4FAF4FBF4F892F9A2FAB2FBB27A7FD89 |
:109D0000BA958093ED029093EE02A093EF02B09388 |
:109D1000F002D801C70186199709A809B9098093EB |
:109D2000420390934303A0934403B09345032091CF |
:109D3000EF05E22EFF2400271127BC01CD01A80169 |
:109D400097010E94517759016A0120935103309382 |
:109D5000520340935303509354038D859E85AF85E2 |
:109D6000B88982199309A409B50980934603909391 |
:109D70004703A0934803B0934903BC01CD01A80158 |
:109D800097010E94517720935503309356034093D7 |
:109D9000570350935803D601C501D7FE04C0815024 |
:109DA0009F4FAF4FBF4F892F9A2FAB2FBB27A7FDD8 |
:109DB000BA9590939C0280939B0257FF04C0215058 |
:109DC0003F4F4F4F5F4FBB2757FDBA95A52F942F9D |
:109DD000832F90939E0280939D02809182029091A6 |
:109DE000830281349105DCF480918002909181029C |
:109DF00081349105A4F48091B005E82FFF27EE0F80 |
:109E0000FF1FE952F94F808191810190F081E02D8F |
:109E1000F7FF03C0F095E195FF4F7A97E4F080914A |
:109E20000F088F3FC1F480919B0290919C0297FD97 |
:109E300001969595879590939C0280939B028091C3 |
:109E40009D0290919E0297FD01969595879590931E |
:109E50009E0280939D0280915E0790915F07A09182 |
:109E60006007B0916107B7FF04C081509F4FAF4FAB |
:109E7000BF4F892F9A2FAB2FBB27A7FDBA95809391 |
:109E80005E0790935F07A0936007B093610780918E |
:109E9000500790915107A0915207B0915307B7FF17 |
:109EA00004C081509F4FAF4FBF4F892F9A2FAB2FC8 |
:109EB000BB27A7FDBA958093500790935107A093B5 |
:109EC0005207B09353078091050390910603A09128 |
:109ED0000703B09108032B813C814D815E81281BD3 |
:109EE000390B4A0B5B0B20933A0330933B034093AF |
:109EF0003C0350933D038091FD029091FE02A0919E |
:109F0000FF02B0910003EF80F88409851A85E81AF2 |
:109F1000F90A0A0B1B0BE0923E03F0923F030093F9 |
:109F20004003109341032093420330934303409333 |
:109F3000440350934503E0924603F0924703009395 |
:109F40004803109349038091E1029091E202A091AD |
:109F5000E302B091E402821B930BA40BB50B809338 |
:109F6000E1029093E202A093E302B093E4028091B5 |
:109F7000D9029091DA02A091DB02B091DC028E1935 |
:109F80009F09A00BB10B8093D9029093DA02A093A2 |
:109F9000DB02B093DC02FC85FF23E1F02091BB02E1 |
:109FA0003091BC02213831054CF08091160390911C |
:109FB00017030196909317038093160320583F4F81 |
:109FC0004CF4809116039091170301979093170317 |
:109FD000809316031092BC021092BB0281E090E0C5 |
:109FE00090935E0380935D03E0904203F0904303FF |
:109FF0000091440310914503D801C70117FF07C022 |
:10A0000088279927DC018E199F09A00BB10B81507D |
:10A010009240A040B04034F084E090E090935E0322 |
:10A0200080935D038091630390916403A091650325 |
:10A03000B0916603209167073091680740916907E6 |
:10A0400050916A07821B930BA40BB50B815E914B59 |
:10A05000AF4FBF4F8F539C49A040B04028F0809134 |
:10A06000100889310CF4FFC041E0E41640E1F40629 |
:10A0700040E0040740E014070CF473C080915F03D4 |
:10A08000882309F46AC0D801C70117FF07C08827D1 |
:10A090009927DC018E199F09A00BB10B9C01AD0122 |
:10A0A000B7FF04C021503E4F4F4F5F4FF9E0559529 |
:10A0B000479537952795FA95D1F780915D03909153 |
:10A0C0005E03820F931F90935E0380935D03D8011C |
:10A0D000C70117FF03C00796A11DB11DE3E0B595A9 |
:10A0E000A79597958795EA95D1F78093510390931B |
:10A0F0005203A0935303B093540389589341A04053 |
:10A10000B04064F088E893E1A0E0B0E080935103B0 |
:10A1100090935203A0935303B0935403209151039F |
:10A1200030915203409153035091540357FF04C0A0 |
:10A1300021503F4F4F4F5F4F232F342F452F55272F |
:10A1400047FD5A9580919B0290919C02820F931F2C |
:10A1500090939C0280939B0206C081E080935F03F2 |
:10A1600002C010925F0360E0E61660EFF6066FEF44 |
:10A1700006076FEF16070CF073C080916003882309 |
:10A1800009F46AC0D801C70117FF07C088279927BB |
:10A19000DC018E199F09A00BB10B9C01AD01B7FF2B |
:10A1A00004C021503E4F4F4F5F4F69E05595479592 |
:10A1B000379527956A95D1F780915D0390915E035D |
:10A1C000820F931F90935E0380935D03D801C701B4 |
:10A1D00017FF03C00796A11DB11D23E0B595A795F4 |
:10A1E000979587952A95D1F78093510390935203C1 |
:10A1F000A0935303B093540388579C4EAF4FBF4F67 |
:10A2000064F488E79CEEAFEFBFEF80935103909327 |
:10A210005203A0935303B093540320915103309100 |
:10A220005203409153035091540357FF04C02150EF |
:10A230003F4F4F4F5F4F232F342F452F552747FD5B |
:10A240005A9580919B0290919C02820F931F90934C |
:10A250009C0280939B0211C081E0809360030DC03B |
:10A26000109260030AC010925E0310925D0388EEA4 |
:10A2700093E09093DA018093D9018C85282F3327BE |
:10A2800080915D0390915E032817390724F4309381 |
:10A290005E0320935D0310911008112379F0212FA4 |
:10A2A000332727FD309580915D0390915E03281739 |
:10A2B000390724F430935E0320935D0340914203F9 |
:10A2C0005091430360914403709145034138510517 |
:10A2D0006105710574F080911A0390911B03209120 |
:10A2E0005D0330915E03820F931F90931B03809355 |
:10A2F0001A0340585F4F6F4F7F4F74F480911A03D9 |
:10A3000090911B0320915D0330915E03821B930BA0 |
:10A3100090931B0380931A0381E090E090935E0377 |
:10A3200080935D03C0904603D0904703E0904803BC |
:10A33000F0904903D701C601F7FE07C08827992787 |
:10A34000DC018C199D09AE09BF0981509240A040E3 |
:10A35000B04034F084E090E090935E0380935D031E |
:10A360008091670390916803A0916903B0916A039B |
:10A3700020916F07309170074091710750917207DB |
:10A38000821B930BA40BB50B815E914BAF4FBF4F5C |
:10A390008F539C49A040B04018F019310CF4FFC015 |
:10A3A00001E0C01600E1D00600E0E00600E0F006A3 |
:10A3B0000CF473C080916103882309F46AC0D7014B |
:10A3C000C601F7FE07C088279927DC018C199D0973 |
:10A3D000AE09BF099C01AD01B7FF04C021503E4F3B |
:10A3E0004F4F5F4F09E055954795379527950A954B |
:10A3F000D1F780915D0390915E03820F931F90933C |
:10A400005E0380935D03D701C601F7FE03C0079684 |
:10A41000A11DB11D13E0B595A795979587951A9540 |
:10A42000D1F78093550390935603A0935703B093AD |
:10A43000580389589341A040B04064F088E893E104 |
:10A44000A0E0B0E08093550390935603A093570388 |
:10A45000B093580320915503309156034091570310 |
:10A460005091580357FF04C021503F4F4F4F5F4F4B |
:10A47000232F342F452F552747FD5A9580919D0254 |
:10A4800090919E02820F931F90939E0280939D0253 |
:10A4900006C081E08093610302C01092610320E056 |
:10A4A000C21620EFD2062FEFE2062FEFF2060CF0D5 |
:10A4B00073C080916203882309F46AC0D701C60182 |
:10A4C000F7FE07C088279927DC018C199D09AE0982 |
:10A4D000BF099C01AD01B7FF04C021503E4F4F4F53 |
:10A4E0005F4FE9E05595479537952795EA95D1F760 |
:10A4F00080915D0390915E03820F931F90935E03A2 |
:10A5000080935D03D701C601F7FE03C00796A11D26 |
:10A51000B11D73E0B595A795979587957A95D1F775 |
:10A520008093550390935603A0935703B093580319 |
:10A5300088579C4EAF4FBF4F64F488E79CEEAFEF57 |
:10A54000BFEF8093550390935603A0935703B093A6 |
:10A550005803209155033091560340915703509171 |
:10A56000580357FF04C021503F4F4F4F5F4F232FD9 |
:10A57000342F452F552747FD5A9580919D02909184 |
:10A580009E02820F931F90939E0280939D0211C0A2 |
:10A5900081E0809362030DC0109262030AC01092A2 |
:10A5A0005E0310925D0388EE93E09093DA0180934E |
:10A5B000D9014C85242F332780915D0390915E0350 |
:10A5C0002817390724F430935E0320935D038091AC |
:10A5D0001008882379F0282F332727FD30958091A4 |
:10A5E0005D0390915E032817390724F430935E03CE |
:10A5F00020935D03409146035091470360914803C7 |
:10A6000070914903413851056105710574F08091DD |
:10A6100018039091190320915D0330915E03820F1E |
:10A62000931F909319038093180340585F4F6F4F07 |
:10A630007F4FCCF4809118039091190320915D0312 |
:10A6400030915E03821B930B909319038093180340 |
:10A650000AC010929E0210929D0210929C021092CB |
:10A660009B021092BD0280917407882341F41092DE |
:10A670009E0210929D0210929C0210929B02809169 |
:10A68000670790916807A0916907B0916A07809366 |
:10A69000630390936403A0936503B0936603809172 |
:10A6A0006F0790917007A0917107B0917207809326 |
:10A6B000670390936803A0936903B0936A031092B1 |
:10A6C000F5021092F6021092F7021092F802109220 |
:10A6D000F1021092F2021092F3021092F402109220 |
:10A6E000ED021092EE021092EF021092F002109220 |
:10A6F0006707109268071092690710926A07109214 |
:10A700006F071092700710927107109272071092E3 |
:10A710005E0710925F071092600710926107109217 |
:10A72000500710925107109252071092530710923F |
:10A73000340210923302E090AB02F090AC02C701F9 |
:10A74000F7FE04C0882799278E199F0940976CF05F |
:10A7500088EE93E09093DA018093D9018091B90556 |
:10A7600084FD03C081E0809350031091C505A12EA4 |
:10A77000BB24CC24DD24B701882777FD8095982F52 |
:10A780009701F7FE04C0222733272E193F094427DB |
:10A7900037FD4095542F0E94DD769B01AC01C60128 |
:10A7A000B5010E94DD7697FF04C061507E4F8F4F48 |
:10A7B0009F4F59E095958795779567955A95D1F76D |
:10A7C0009B01812F99278E9DD0018F9DB00D9E9D5D |
:10A7D000B00D1124CD01B7FD0396959587959595FC |
:10A7E0008795280F391F442737FD4095542F209314 |
:10A7F00036033093370340933803509339038091E5 |
:10A80000D5029091D602A091D702B091D802821BB6 |
:10A81000930BA40BB50B8093D5029093D602A09313 |
:10A82000D702B093D8028155934CA040B04064F059 |
:10A8300080E593ECA0E0B0E08093D5029093D6023F |
:10A84000A093D702B093D8028091D5029091D602FE |
:10A85000A091D702B091D802805B9C43AF4FBF4F0D |
:10A8600064F480EB9CE3AFEFBFEF8093D50290934D |
:10A87000D602A093D702B093D8024090C302509062 |
:10A88000C4024114510409F478C18091B90583FFD1 |
:10A8900074C18091050390910603A0910703B091C4 |
:10A8A0000803B7FF04C081509E4FAF4FBF4F39E040 |
:10A8B000B595A795979587953A95D1F76C0197FF30 |
:10A8C00004C0D094C194D108D3948091FD0290919A |
:10A8D000FE02A091FF02B0910003B7FF04C08150B7 |
:10A8E0009E4FAF4FBF4F29E0B595A7959795879598 |
:10A8F0002A95D1F7BC0197FF03C0709561957F4FF2 |
:10A90000C616D7060CF46B01B601D7FE02C0695F0C |
:10A910007F4F3B0183E0759467948A95E1F702E0ED |
:10A92000E02EF12C6E0C7F1C0CE112E0400E511E4B |
:10A9300072010027F7FC0095102F24EE3DEF420E28 |
:10A94000531E80919D0790919E07A0919F07B09103 |
:10A95000A0078090960190909701A0909801B090E8 |
:10A960009901BC01CD01A50194010E945177E21A21 |
:10A97000F30A040B150BC801B70128E631E040E0EB |
:10A9800050E00E945177DC01CB011CE4E12E1FEF67 |
:10A99000F12EE80EF91E0091D9011091DA0101158E |
:10A9A000110589F539E1C316D1046CF58091BB021C |
:10A9B0009091BC028E0D9F1D9093BC028093BB02B0 |
:10A9C000809150038823F9F0C201AA2797FDA09532 |
:10A9D000BA2FBC01CD01A50194010E94DD76DC01F6 |
:10A9E000CB0180939D0790939E07A0939F07B09300 |
:10A9F000A007BC01CD010E9451773093C202209381 |
:10AA0000C10210925003C701B4E0880F991FBA9594 |
:10AA1000E1F7B3010E941C77CB01AA2797FDA0950F |
:10AA2000BA2F20919D0730919E0740919F0750912A |
:10AA3000A007280F391F4A1F5B1F20939D073093E3 |
:10AA40009E0740939F075093A007F090CA016F2D77 |
:10AA50007727C69EC001C79E900DD69E900D1124EB |
:10AA600097FD4F966C01A5E0D594C794AA95E1F7A0 |
:10AA70006C197D096B0177FD7AC00115110509F08C |
:10AA80006FC00091820210918302809180029091A8 |
:10AA90008102080F191F17FF02C0095F1F4FF3E063 |
:10AAA00015950795FA95E1F7005C1F4FCA01B901AA |
:10AAB000A50194010E945177DA01C9012091C102D8 |
:10AAC0003091C202442737FD4095542F821B930BCF |
:10AAD000A40BB50B845E9D4FAF4FBF4FBC01CD01A2 |
:10AAE00028E631E040E050E00E945177DC01CB01E4 |
:10AAF000845B90408C9DA0018D9D500D9C9D500DC0 |
:10AB00001124CA01B8010E941C7783E0F89E6001FD |
:10AB10001124C616D70614F4B60108C08827992751 |
:10AB20008C199D09681779070CF4BC019B01442717 |
:10AB300037FD4095542F8091D5029091D602A09177 |
:10AB4000D702B091D802820F931FA41FB51F809324 |
:10AB5000D5029093D602A093D702B093D8020DC02D |
:10AB6000015010401093DA010093D90106C084EF20 |
:10AB700091E09093DA018093D9018091BD028823FE |
:10AB800081F01092C9021092CA021092CB02109268 |
:10AB9000CC021092CD021092CE021092CF021092EF |
:10ABA000D002F0909802FF20F1F480917407282FD2 |
:10ABB0003327442755278091050390910603A091E0 |
:10ABC0000703B0910803BC01CD010E94DD76DC01D2 |
:10ABD000CB01BC01CD0128EF3AE240E050E00E94F9 |
:10ABE0005177390102C066247724E0909702EE2065 |
:10ABF000F1F480917407282F33274427552780913B |
:10AC0000FD029091FE02A091FF02B0910003BC01F1 |
:10AC1000CD010E94DD76DC01CB01BC01CD0128EF26 |
:10AC20003AE240E050E00E945177290102C04424FA |
:10AC3000552480914A0790914B07893C91051CF05F |
:10AC400088EC90E005C088539F4F34F488E39FEF71 |
:10AC500090934B0780934A07809155079091560730 |
:10AC6000893C91051CF088EC90E005C088539F4F0B |
:10AC700034F488E39FEF90935607809355078091B3 |
:10AC8000570790915807AA2797FDA095BA2F2091B2 |
:10AC90009B07A22EBB24CC24DD24BC01CD01A60140 |
:10ACA00095010E94DD769B01AC0180914A0790914D |
:10ACB0004B07AA2797FDA095BA2FE7E0880F991FA9 |
:10ACC000AA1FBB1FEA95D1F7280F391F4A1F5B1F28 |
:10ACD00057FF04C0215C3F4F4F4F5F4F76E05595C3 |
:10ACE0004795379527957A95D1F78301020F131F62 |
:10ACF0001093580700935707809148079091490790 |
:10AD0000AA2797FDA095BA2FBC01CD01A6019501F8 |
:10AD10000E94DD769B01AC0180915507909156070A |
:10AD2000AA2797FDA095BA2F67E0880F991FAA1F41 |
:10AD3000BB1F6A95D1F7280F391F4A1F5B1F57FFAA |
:10AD400004C0215C3F4F4F4F5F4F96E055954795AC |
:10AD5000379527959A95D1F74201820E931E9092CE |
:10AD60004907809248078091960790919707880F2E |
:10AD7000991FAA2797FDA095BA2F20914F07332737 |
:10AD800044275527BC01CD010E94DD765B016C0193 |
:10AD900097FF08C08FE390E0A0E0B0E0A80EB91ED6 |
:10ADA000CA1EDB1E86E0D594C794B794A7948A95F3 |
:10ADB000D1F780916407282F3327442755278091A6 |
:10ADC000E9029091EA02A091EB02B091EC02BC0181 |
:10ADD000CD010E94DD76DC01CB01BC01CD0120EF6D |
:10ADE00035E540E050E00E945177B501620F731FD6 |
:10ADF00070939707609396070150104134F080E0FC |
:10AE000090E190935807809357078091570790914E |
:10AE100058078050904F34F480E090EF909358079B |
:10AE200080935707B1E08B16B0E19B0634F080E0C9 |
:10AE300090E190934907809348078091480790914B |
:10AE400049078050904F34F480E090EF9093490789 |
:10AE5000809348076150704134F080E090E1909316 |
:10AE60009707809396078091960790919707805057 |
:10AE7000904F34F480E090EF90939707809396077B |
:10AE800080910001482F552780911E0190911F014C |
:10AE90004817590794F420911E0130911F016981D0 |
:10AEA0007A81649FC001659F900D749F900D11245D |
:10AEB000B9010E9408777A83698389819A81880F12 |
:10AEC000991F880F991F9A8389834091B90540FF84 |
:10AED000BDC6EE2009F0BAC6FF2009F0B7C6AA2405 |
:10AEE000BB2445018091990290919A02909382052A |
:10AEF0008093810520911C0330911D03211531059C |
:10AF000009F03FC080911401909115018959934037 |
:10AF100058F087B5803F20F480913702815011C0EE |
:10AF200081E0809376034EC08091140190911501C9 |
:10AF30008436910508F587B58031D0F080913702CD |
:10AF40008F5F809337029FE08902900111248091E6 |
:10AF5000A805821B87BD8CE291E090932502809327 |
:10AF600024028EE591E090931D0380931C032AC078 |
:10AF700081E08093750326C0F0927503F09276030A |
:10AF800021C08091A3029091A402A091A502B0914A |
:10AF9000A60214E0880F991FAA1FBB1F1A95D1F7AC |
:10AFA0008093380290933902A0933A02B0933B0207 |
:10AFB000B0923602A09235022150304030931D03EA |
:10AFC00020931C032091CD0141FF24C02233D8F4EB |
:10AFD0008091DF0181508093DF018F3FD9F510927E |
:10AFE000BE028091A3029091A402A091A502B0910B |
:10AFF000A60280939F029093A002A093A102B09317 |
:10B00000A20281E004C081E08093BE0288EC8093BC |
:10B01000DF0120C080919A0190919B01820F911DC8 |
:10B020002091BE053327829FF001839FF00D929FF0 |
:10B03000F00D1124CF01AA2797FDA095BA2F809378 |
:10B040009F029093A002A093A102B093A20281E07C |
:10B050008093BE028091050390910603A09107039F |
:10B06000B0910803E0909601F0909701009198014B |
:10B0700010919901BC01CD01A80197010E9451775F |
:10B0800059016A018091FD029091FE02A091FF0298 |
:10B09000B0910003BC01CD01A80197010E94517736 |
:10B0A000B901C5010E9406758C01CC9714F00CE320 |
:10B0B00010E0C8010E9427698C0180E2809395010D |
:10B0C0008091BE02882309F447C480917D029927AC |
:10B0D0009C012071307084FD3FC46091120660FDB8 |
:10B0E00004C08091B90581FD0CC0C980DA8030931D |
:10B0F0006C0320936B0380917D02806C80937D02B2 |
:10B1000099C180917D0281FF6BC14091DB0150911B |
:10B11000DC01CA010F962091A9023091AA02821780 |
:10B120009307BCF580917503882399F580917D0282 |
:10B1300087FF15C080917D028F7780937D0280917B |
:10B14000A3029091A402A091A502B091A6028093BF |
:10B150009F029093A002A093A102B093A2028091BB |
:10B160007D02806480937D02241B350B2F5030407C |
:10B1700037FF03C0309521953F4F80916B0390912D |
:10B180006C03820F931F90936C0380936B038BE28D |
:10B190006EC0CA010F9728173907BCF58091760356 |
:10B1A000882399F580917D0286FF15C080917D02EC |
:10B1B0008F7B80937D028091A3029091A402A09145 |
:10B1C000A502B091A60280939F029093A002A09343 |
:10B1D000A102B093A20280917D02806880937D02DB |
:10B1E000241B350B215F3F4F37FF03C0309521955E |
:10B1F0003F4F80916B0390916C03821B930B909354 |
:10B200006C0380936B038DE232C080917D02807C61 |
:10B2100069F180917D028F7380937D0210926C039F |
:10B2200010926B032091A3023091A4024091A502D9 |
:10B230005091A60220939F023093A0024093A10256 |
:10B240005093A20261FF06C084EF91E09093250223 |
:10B25000809324028091A702882341F4233331058F |
:10B26000410551051CF081E08093A7028DE3809396 |
:10B27000950120916B0330916C03C90137FF04C025 |
:10B2800088279927821B930B815092400CF491C020 |
:10B290008091BE059927289F7001299FF00C389F47 |
:10B2A000F00C1124C70160E075E00E941C77CB010F |
:10B2B000AA2797FDA095BA2F20919F023091A00256 |
:10B2C0004091A1025091A202280F391F4A1F5B1F13 |
:10B2D00020939F023093A0024093A1025093A202B8 |
:10B2E00010926C0310926B03C090A302D090A40242 |
:10B2F000E090A502F090A602D701C60180509440CC |
:10B30000A040B04082179307A407B5075CF4D701AB |
:10B31000C60180509C4FAF4FBF4F281739074A07CF |
:10B320005B0744F080939F029093A002A093A10238 |
:10B33000B093A2028091120681FF06C084E690E0DD |
:10B3400090932502809324028091C205882389F579 |
:10B350004091990250919A0257FF02C04D5F5F4F92 |
:10B36000559547955595479580911E0190911F01E0 |
:10B37000209100013327489FB001499F700D589FCD |
:10B38000700D1124CB01B9010E941C777093DC0170 |
:10B390006093DB01663471051CF486E490E005C01F |
:10B3A0006739710534F086E990E09093DC01809371 |
:10B3B000DB0180911C0390911D03892BB9F18091D1 |
:10B3C000A3029091A402A091A502B091A60280933D |
:10B3D0009F029093A002A093A102B093A20226C064 |
:10B3E0008091A3029091A402A091A502B091A6021F |
:10B3F00080599140A040B04080939F029093A0025A |
:10B40000A093A102B093A2028091C205882311F0FB |
:10B41000992702C088E790E09093DC018093DB01DC |
:10B4200089819A8190939A0280939902C09099029F |
:10B43000D0909A022091A3023091A4024091A502DB |
:10B440005091A6022B8B3C8B4D8B5E8B20919F02E3 |
:10B450003091A0024091A1025091A2026B897C8997 |
:10B460008D899E89261737074807590724F0809150 |
:10B47000120680FDB8C280911C0390911D03892B98 |
:10B4800039F0C0909902D0909A02AA24BB24D9C066 |
:10B490008B899C89AD89BE89821B930BA40BB50B4C |
:10B4A00080933A0390933B03A0933C03B0933D03F6 |
:10B4B000823070E897077FEFA7077FEFB7072CF47C |
:10B4C00081E090E8AFEFBFEF09C08F5F9F47A040DA |
:10B4D000B04064F08FEF9FE7A0E0B0E080933A03C4 |
:10B4E00090933B03A0933C03B0933D03A0903A0399 |
:10B4F000B0903B038091CC01282F33274427552758 |
:10B5000080913A0390913B03A0913C03B0913D039D |
:10B51000BC01CD010E94DD7697FF04C0615E7F4FC4 |
:10B520008F4F9F4FA5E09595879577956795AA953D |
:10B53000D1F760933A0370933B0380933C0390935D |
:10B540003D036530FEEF7F07FFEF8F07FFEF9F079B |
:10B550002CF484E09EEFAFEFBFEF09C06050744061 |
:10B560008040904064F080E094E0A0E0B0E0809300 |
:10B570003A0390933B03A0933C03B0933D03809028 |
:10B580003A0390903B03209135023091360237FF09 |
:10B5900002C0295F3F4FF3E035952795FA95E1F713 |
:10B5A0004FEF223834071CF421E83FEF05C0203864 |
:10B5B000310514F020E830E0C901AA2797FDA095D5 |
:10B5C000BA2F2091CE01332744275527BC01CD0146 |
:10B5D0000E94DD7697FF04C06D5F7F4F8F4F9F4FB6 |
:10B5E000E2E09595879577956795EA95D1F79B0168 |
:10B5F0005FEF613075071CF420E03FEF06C06F3F3E |
:10B60000710519F014F020E031E080917D02807C1A |
:10B6100049F0C90137FD03969C013595279535956D |
:10B6200027950DC08091120680FF09C0C90137FD22 |
:10B6300007969C0143E0359527954A95E1F7820EE0 |
:10B64000931E2091CB01222309F454C06091C502BE |
:10B650007091C6028091C7029091C80297FF04C002 |
:10B6600061587F4F8F4F9F4F37E09595879577951E |
:10B6700067953A95D1F73327442755270E94DD7601 |
:10B6800097FF04C0615E7F4F8F4F9F4FB5E0959548 |
:10B69000879577956795BA95D1F760933A0370933C |
:10B6A0003B0380933C0390933D036138AFEF7A07EF |
:10B6B000AFEF8A07AFEF9A072CF480E89FEFAFEF68 |
:10B6C000BFEF0AC06F3F71058105910569F064F015 |
:10B6D00080E091E0A0E0B0E080933A0390933B03D8 |
:10B6E000A0933C03B0933D0380913A0390913B03B8 |
:10B6F000880E991E8091C901282F33278091130845 |
:10B70000992787FD9095289FF001299FF00D389F7C |
:10B71000F00D11249F01F7FF02C021583F4F220F67 |
:10B72000232F221F330BFFEF21383F071CF420E8A3 |
:10B730003FEF06C02F3F310519F014F020E031E053 |
:10B74000820E931EC401AA2797FDA095BA2FE09000 |
:10B750009902F0909A029701442737FD4095542FA3 |
:10B76000BC01CD010E94DD7697FF04C061507E4F81 |
:10B770008F4F9F4FF9E09595879577956795FA9547 |
:10B78000D1F7C61AD70A80916B0390916C03892B6D |
:10B7900009F060C01E141F040CF05CC09501B7FED8 |
:10B7A00003C0309521953F4F2D33310540F48091F2 |
:10B7B0006F03909170038C159D0574F526C02C5372 |
:10B7C0003040E5E036952795EA95E1F720313105DF |
:10B7D00010F02FE030E040916F03509170031A1485 |
:10B7E0001B04E4F480E190E0821B930B489F9001DE |
:10B7F000499F300D589F300D112474E036952795E0 |
:10B800007A95E1F72C153D0520F58091DD019091A9 |
:10B81000DE01C816D906F4F06C011CC0205F3F4F52 |
:10B820008091DD019091DE01829FB001839F700DB8 |
:10B83000929F700D11249B0164E0369527956A95BF |
:10B84000E1F74C155D0514F06A0104C0C216D30679 |
:10B8500008F06901C601AA2797FDA095BA2F2DE02F |
:10B86000880F991FAA1FBB1F2A95D1F7980144275B |
:10B8700037FD4095542FBC01CD010E945177209394 |
:10B880003E0330933F034093400350934103C090E5 |
:10B890003E03D0903F0380916D0390916E039C0115 |
:10B8A000220F331F280F391F2C0D3D1D37FF02C0FB |
:10B8B0002D5F3F4FA9015595479555954795509355 |
:10B8C0006E0340936D038091BA05282F3327220F12 |
:10B8D000331F220F331F241735076CF4809195070F |
:10B8E000282F3327220F331F220F331F20553040BC |
:10B8F0004217530724F030936E0320936D03809119 |
:10B90000120680FF14C080916D0390916E03A9818F |
:10B91000BA818A179B0724F0B0936E03A0936D033E |
:10B92000E0916D03F0916E03FA83E9835CC0298195 |
:10B930003A812E193F0937FF02C02D5F3F4F3595E1 |
:10B94000279535952795E0906D03F0906E03E20EF4 |
:10B95000F31EFA82E98247C08091C205882301F56F |
:10B960006091990270919A0277FF02C06D5F7F4FDC |
:10B97000759567957595679540911E0150911F01CA |
:10B9800080910001282F3327649FC001659F900D8F |
:10B99000749F900D1124B9010E941C77CB0101C046 |
:10B9A00099279093DC018093DB018091DB019091DA |
:10B9B000DC01873491051CF486E490E005C08639EB |
:10B9C000910534F086E990E09093DC018093DB01EF |
:10B9D00029813A8130936E0320936D0380917D021B |
:10B9E000806C80937D0280917D0299279C0122705A |
:10B9F000307081FF1CC18091710390917203A091FE |
:10BA00007303B09174030097A105B10521F08091F3 |
:10BA1000A7028130B1F449815A81CA01AA2797FD52 |
:10BA2000A095BA2F2EE0880F991FAA1FBB1F2A9539 |
:10BA3000D1F78093710390937203A0937303B09333 |
:10BA400074038091A702813019F482E08093A702E9 |
:10BA500069817A81CB01AA2797FDA095BA2F980119 |
:10BA6000442737FD4095542FBC01CD010E94DD765F |
:10BA7000DC01CB0180933E0390933F03A0934003EE |
:10BA8000B0934103B7FF04C08150904EAF4FBF4FFA |
:10BA90007C018D01FDE015950795F794E794FA95E3 |
:10BAA000D1F7E0923E03F0923F03009340031093DE |
:10BAB000410360917E0270917F028FE0603A7807C7 |
:10BAC00050F58091710390917203A0917303B0912E |
:10BAD00074039C01AD01EAE056954795379527958B |
:10BAE000EA95D1F7821B930BA40BB50BA801970124 |
:10BAF000F4E0220F331F441F551FFA95D1F7820F30 |
:10BB0000931FA41FB51F8093710390937203A0939A |
:10BB10007303B093740360547F4118F580917103EF |
:10BB200090917203A0917303B09174039C01AD01D5 |
:10BB3000ECE05695479537952795EA95D1F7821B06 |
:10BB4000930BA40BB50BA801970172E0220F331FD2 |
:10BB5000441F551F7A95D1F7820F931FA41FB51F5D |
:10BB600029C08091350290913602809135029091E2 |
:10BB7000360297FF03C0909581959F4F84369105BB |
:10BB80000CF58091710390917203A0917303B091B1 |
:10BB900074039C01AD016EE0569547953795279546 |
:10BBA0006A95D1F7821B930BA40BB50B8E0D9F1DCD |
:10BBB000A01FB11F8093710390937203A09373032E |
:10BBC000B09374038091710390917203A0917303F9 |
:10BBD000B09174031EE0B695A795979587951A9531 |
:10BBE000D1F790939A02809399024091C005442323 |
:10BBF00099F055279C01BA010E941C77C901861B48 |
:10BC0000970B9093700380936F03260F371F309329 |
:10BC1000DE012093DD011FC01092700310926F03AC |
:10BC20008FEF93E09093DE018093DD0114C01092BA |
:10BC3000A702109271031092720310927303109274 |
:10BC4000740330939A022093990205C080917D027B |
:10BC5000806C80937D0220905C07222D3327220F79 |
:10BC6000331F220F331F285D3F4FA981BA812A1746 |
:10BC70003B0714F03A83298330909507832D992749 |
:10BC8000880F991F880F991F80559040E981FA818C |
:10BC90008E179F0714F49A83898380916D028823FD |
:10BCA00021F480911A088F3FA1F080917E0290913B |
:10BCB0007F020297C09768F4E980FA801E141F047F |
:10BCC00044F481E090E090937F0280937E023A8377 |
:10BCD000298309811A811093660500936505809177 |
:10BCE000360390913703A0913803B0913903F2E005 |
:10BCF000880F991FAA1FBB1FFA95D1F700919607CD |
:10BD000010919707081B190B29813A81213A3105B7 |
:10BD10008CF0C90137FD019695958795801791079D |
:10BD20000CF48C01909581959F4F081719076CF4BE |
:10BD30008C010BC00135110514F000E510E03FEF58 |
:10BD4000003B130714F400EB1FEF232D3327220FC2 |
:10BD5000331F220F331FC90149815A81841B950B60 |
:10BD6000801791070CF48C0169817A81621B730B37 |
:10BD7000061717070CF48B0180915707909158070D |
:10BD80006091AF027091B002861B970B909366078B |
:10BD900080936507D09074072091CD023091CE0238 |
:10BDA0004091CF025091D002DD2041F0661A770A0F |
:10BDB000C301AA2797FDA095BA2F04C0AA2797FD13 |
:10BDC000A095BA2F280F391F4A1F5B1F2093CD0261 |
:10BDD0003093CE024093CF025093D0028091CD0297 |
:10BDE0009091CE02A091CF02B091D00281509A4F93 |
:10BDF000A040B04064F080E09AEFA0E0B0E0809313 |
:10BE0000CD029093CE02A093CF02B093D002809146 |
:10BE1000CD029091CE02A091CF02B091D00280507D |
:10BE20009640AF4FBF4F64F480E096E0AFEFBFEFB6 |
:10BE30008093CD029093CE02A093CF02B093D00214 |
:10BE4000C090CF052091650730916607F8E0FC159A |
:10BE500098F08C2D9927829F7001839FF00C929F00 |
:10BE6000F00C1124C701F7FC07967C0163E0F59400 |
:10BE7000E7946A95E1F712C08C2D86959927829FE9 |
:10BE8000A001839F500D929F500D1124CA0157FDB0 |
:10BE900003967C01F594E794F594E794A090CF0184 |
:10BEA000B090D0019501442737FD4095542F8091E3 |
:10BEB000CD029091CE02A091CF02B091D002BC01F0 |
:10BEC000CD010E945177E20EF31E9090BB01692DC7 |
:10BED000772788279927980117FF04C0222733273F |
:10BEE000201B310B37FF02C02F5F3F4F3595279541 |
:10BEF000A981BA812A0F3B1F442737FD4095542F53 |
:10BF00000E94DD7697FF04C0615C7F4F8F4F9F4F8B |
:10BF100026E095958795779567952A95D1F79B01AA |
:10BF20006E157F050CF47B01309521953F4FE2168D |
:10BF3000F3060CF4790180914807909149076091CC |
:10BF4000AD027091AE02861B970B909347078093CA |
:10BF500046072091C9023091CA024091CB0250910C |
:10BF6000CC02DD2041F0461A570AC201AA2797FDEC |
:10BF7000A095BA2F04C0AA2797FDA095BA2F280F25 |
:10BF8000391F4A1F5B1F2093C9023093CA02409396 |
:10BF9000CB025093CC028091C9029091CA02A09129 |
:10BFA000CB02B091CC0281509A4FA040B04064F0D7 |
:10BFB00080E09AEFA0E0B0E08093C9029093CA02BB |
:10BFC000A093CB02B093CC028091C9029091CA0297 |
:10BFD000A091CB02B091CC0280509640AF4FBF4FA2 |
:10BFE00064F480E096E0AFEFBFEF8093C9029093D6 |
:10BFF000CA02A093CB02B093CC02209146073091A5 |
:10C00000470748E04C1598F08C2D9927829FB00186 |
:10C01000839F700D929F700D1124CB0177FD0796C1 |
:10C020006C01B3E0D594C794BA95E1F712C0C694F9 |
:10C030008C2D9927829FD001839FB00D929FB00DC8 |
:10C040001124CD01B7FD03966C01D594C794D59406 |
:10C05000C7949501442737FD4095542F8091C9021C |
:10C060009091CA02A091CB02B091CC02BC01CD014B |
:10C070000E945177C20ED31E692D772788279927F2 |
:10C08000980117FF04C022273327201B310B37FFED |
:10C0900002C02F5F3F4F35952795E981FA812E0F1A |
:10C0A0003F1F442737FD4095542F0E94DD7697FFB0 |
:10C0B00004C0615C7F4F8F4F9F4FE6E09595879559 |
:10C0C00077956795EA95D1F79B016C157D050CF482 |
:10C0D0006B01309521953F4FC216D3060CF46901D0 |
:10C0E00066E7862E66E0962E5DE2A52E56E0B52E1A |
:10C0F0004BE0542E35E7632E37E0732ED5012C919B |
:10C1000012160CF014C1203429F4E981FA81F88F59 |
:10C11000EF8B1FC049815A81CA01AA2797FDA095BC |
:10C12000BA2F332727FD3095432F532FBC01CD0164 |
:10C130000E94DD7697FF04C0615C7F4F8F4F9F4F59 |
:10C1400026E095958795779567952A95D1F7788F0D |
:10C150006F8BF5012181203439F42F89388D2E0D14 |
:10C160003F1D388F2F8B2AC0203C39F44F89588DC2 |
:10C170004E195F09588F4F8B21C0C701AA2797FD21 |
:10C18000A095BA2F332727FD3095432F532FBC019D |
:10C19000CD010E94DD7697FF04C0615C7F4F8F4F19 |
:10C1A0009F4FB6E09595879577956795BA95D1F7A6 |
:10C1B000AF89B88DA60FB71FB88FAF8BF50122815D |
:10C1C000203439F42F89388D2C0D3D1D388F2F8B5D |
:10C1D0002AC0203C39F44F89588D4C195D09588F7D |
:10C1E0004F8B21C0C601AA2797FDA095BA2F3327F0 |
:10C1F00027FD3095432F532FBC01CD010E94DD76E2 |
:10C2000097FF04C0615C7F4F8F4F9F4FA6E09595CD |
:10C21000879577956795AA95D1F7AF89B88DA60FC1 |
:10C22000B71FB88FAF8BF5012381203439F42F89E4 |
:10C23000388D200F311F388F2F8B2AC0203C39F4C6 |
:10C240004F89588D401B510B588F4F8B21C0C8010F |
:10C25000AA2797FDA095BA2F332727FD3095432FA6 |
:10C26000532FBC01CD010E94DD7697FF04C0615CB5 |
:10C270007F4F8F4F9F4FF6E0959587957795679500 |
:10C28000FA95D1F7AF89B88DA60FB71FB88FAF8BCE |
:10C29000F301808191812F89388D8217930764F48F |
:10C2A000B901680F791F77FF02C06F5F7F4F7595E7 |
:10C2B0006795788F6F8B08C04F89588D440F551F35 |
:10C2C000481B590B588F4F8B822D9927880F991F28 |
:10C2D000880F991F6F89788D861797075CF4832DD7 |
:10C2E0009927880F991F880F991FAF89B88DA817B4 |
:10C2F000B90714F0988F8F8B8F89988D97FD0396CF |
:10C300009595879595958795F4018183880F991F59 |
:10C31000880F991F2F89388D281B390BC901880F69 |
:10C320008283EF89F88DD301ED93FC9303C0F40170 |
:10C33000118212825A9422E030E0620E731E44E0B1 |
:10C3400050E0A40EB51E68E070E0860E971E57FE02 |
:10C35000D5CEE2E1C85E0C948877809183039091FA |
:10C360008403A0918503B091860380937B0390930F |
:10C370007C03A0937D03B0937E0380917F03909113 |
:10C380008003A0918103B0918203809377039093FF |
:10C390007803A0937903B0937A03089510928E03E3 |
:10C3A00010928D0310928C0310928B03089584B128 |
:10C3B000806A84B93D9A82E58CBD1DBC459A81E0B6 |
:10C3C0008093A7078AEA8093B80783E88093B90728 |
:10C3D0008AE08093BA071092BC071092BB071092B4 |
:10C3E000BE071092BD07109212081092DA07089546 |
:10C3F0003091A707332309F085C00DB407FE82C032 |
:10C4000084E080932302459A2EB580919203992768 |
:10C410008130910589F0823091051CF4892B21F03F |
:10C420003EC00297B9F03BC03093D90720939303E5 |
:10C430002138A9F581E008C0253549F4809193039E |
:10C44000820F8093930382E08093920328C03093FD |
:10C45000920325C08091D907E82FFF27EB50F84FB2 |
:10C4600020838F5F8093D907909193038A31A0F046 |
:10C47000291769F48AE1A5EFB7E0EBEDF7E00D903D |
:10C4800001928A95E1F781E08093DA0702C0309348 |
:10C49000DA071092920303C0920F909393032091B6 |
:10C4A000B707203208F028C04598000000000000BF |
:10C4B000000000000000000000000000000000007C |
:10C4C000000000000000000000000000000000006C |
:10C4D00000000000000000000000E091B007F091B3 |
:10C4E000B107E20FF11D80818EBD8091D707908149 |
:10C4F000890F8093D70703C081E08093A7072F5F40 |
:10C500002093B7070895EF92FF920F931F938091A6 |
:10C51000C8059927880F991F880F991F7C0100274C |
:10C52000F7FC0095102F8091050390910603A091D0 |
:10C530000703B0910803BC01CD01A80197010E9437 |
:10C5400051773093BC072093BB078091FD029091F7 |
:10C55000FE02A091FF02B0910003BC01CD01A80131 |
:10C5600097010E9451773093BE072093BD07209119 |
:10C570009D0730919E0740919F075091A007DA01D7 |
:10C58000C901E3E0880F991FAA1FBB1FEA95D1F7E5 |
:10C59000820F931FA41FB51F820F931FA41FB51FE7 |
:10C5A0002091960130919701409198015091990105 |
:10C5B000BC01CD010E9451773093C4072093C3077B |
:10C5C0008091160390911703209143023091440209 |
:10C5D000821B930B9093CA078093C907E0910C03C9 |
:10C5E000F0910D0380916C0790916D07BF010E943F |
:10C5F0001C77CB019B01220F331F220F331F280F03 |
:10C60000391F280F391F37FF02C02D5F3F4F359567 |
:10C610002795359527953093C0072093BF078091C4 |
:10C62000990790919A07BF010E941C779B01220FE6 |
:10C63000331F220F331F260F371F260F371F37FFD9 |
:10C6400002C02D5F3F4F359527953595279530933F |
:10C65000C2072093C10710920D0310920C03109291 |
:10C660006D0710926C0710929A07109299078091AB |
:10C67000BA0799278D30910509F466C08E3091056F |
:10C680005CF48B30910509F48EC08C3091050CF070 |
:10C690000FC10A9761F0ADC18F30910509F481C1D6 |
:10C6A0008F3091050CF45CC1409799F1A2C1809143 |
:10C6B00092028093CB07809191028093CC07809166 |
:10C6C00090028093CD0780918F028093CE07809156 |
:10C6D0008E028093CF0780918D028093D007809146 |
:10C6E0008C028093D10780918B028093D207809136 |
:10C6F0007D028093D30780917D02837F80937D02AA |
:10C700000E94262E8093D407809109038093D50739 |
:10C7100070C180911408909115089093CC07809374 |
:10C72000CB0780911808909119089093CE078093B9 |
:10C73000CD0780911E0190911F018093CF078091BA |
:10C7400000018093D00755C18091FC058093CB07F1 |
:10C750008091FD058093CC078091FE058093CD07E5 |
:10C760008091FF058093CE07809100068093CF07CC |
:10C77000809104068093D007809105068093D107AD |
:10C78000809106068093D207809109068093D30793 |
:10C79000809107068093D407809108068093D5077F |
:10C7A00080910A06DAC0F8948091AF05E82FFF2740 |
:10C7B000EE0FFF1FE952F94F0190F081E02DE038B4 |
:10C7C000F1051CF0EFE7F0E006C02FEFE138F207CB |
:10C7D00014F4E1E8FFEFE093CB078091B005E82F78 |
:10C7E000FF27EE0FFF1FE952F94F0190F081E02D76 |
:10C7F000E038F1051CF0EFE7F0E006C06FEFE1383C |
:10C80000F60714F4E1E8FFEFE093CC078091AE0562 |
:10C81000E82FFF27EE0FFF1FE952F94F0190F0813B |
:10C82000E02DE038F1051CF0EFE7F0E006C08FEFF7 |
:10C83000E138F80714F4E1E8FFEFE093CD078091C9 |
:10C84000AD05E82FFF27EE0FFF1FE952F94F0190CA |
:10C85000F081E02DE038F1051CF0EFE7F0E006C0D4 |
:10C860002FEFE138F20714F4E1E8FFEF7894E0935A |
:10C87000CE078091B2028093CF078091B30280935C |
:10C88000D0078091B4028093D1078091B502809344 |
:10C89000D2078091B6028093D3078091B70280932C |
:10C8A000D4078091B8028093D5078091B90255C012 |
:10C8B0008091F003863018F01092F00385E08093A9 |
:10C8C000CB0780910B068093CC078091A3029091B7 |
:10C8D000A402A091A502B091A602BC01CD0125E061 |
:10C8E00030E040E050E00E9451773093CE07209333 |
:10C8F000CD0780919F029091A002A091A102B091DA |
:10C90000A202BC01CD0125E030E040E050E00E94F1 |
:10C9100051773093D0072093CF0780910106809301 |
:10C92000D107809102068093D207809103068093FD |
:10C93000D3078091B1028093D4078091D70690915C |
:10C94000D8068093D507809165059091660597FD7F |
:10C95000039695958795959587958093D60749C0B9 |
:10C960001092CB0782E58093CC071092CD0780E12F |
:10C970008093CE07809102018093CF078091D503E9 |
:10C980008093D0078091D6038093D1078091D703FD |
:10C990008093D2078091D8038093D3078091D903E5 |
:10C9A00026C08091E1058093CB078091110680938A |
:10C9B000CC078091C1018093CD078091DA058093E7 |
:10C9C000CE078091DB058093CF078091DC058093B3 |
:10C9D000D0078091C0018093D1078091DE058093BC |
:10C9E000D2078091DF058093D3078091E005809383 |
:10C9F000D4078091DA07882309F4D8C08AEF80939E |
:10CA0000E9014091DC075091DD07CA0181509E4F3A |
:10CA10008F5F9340B0F42091DE073091DF07C901AA |
:10CA200081509E4F8F5F934060F48091B90585FFE0 |
:10CA300008C050938E0340938D0330938C03209352 |
:10CA40008B038091E2079091E30721E089369207FA |
:10CA500024F49093C4028093C3028091C302909106 |
:10CA6000C4022091C1023091C202821B930B845EEA |
:10CA70009D4F68E671E00E941C77845B9040909324 |
:10CA8000C0028093BF022091E6073091E7078091B2 |
:10CA90002402909125028217930740F48091F003BD |
:10CAA000882321F430932502209324028091DB0710 |
:10CAB00099278836910549F18936910524F48736FE |
:10CAC000910531F07BC08936910509F445C076C0E7 |
:10CAD0008091E80780930F088091E90780931108FF |
:10CAE0008091EA07809310088091EB0780931208E9 |
:10CAF0008091EC07809313088091ED078093EA0101 |
:10CB00008091EE078093910359C08091E80780934C |
:10CB1000B2078091E9078093B3078091EA07809379 |
:10CB2000B4078091EB078093B5078091EC07809361 |
:10CB3000B607809155059091ED07892B8093550597 |
:10CB40009091EE0790938F038091560583709C70AF |
:10CB5000892B8093560532C08091E8078093A807FF |
:10CB60008091E9078093A9078091EA078093AA073B |
:10CB70008091EB078093AB078091EC079091ED07D4 |
:10CB80009093AD078093AC078091EE079091EF07EB |
:10CB90009093AF078093AE078091F007992787FDA8 |
:10CBA000909590930A078093090708C010928E030E |
:10CBB00010928D0310928C0310928B031F910F9192 |
:10CBC000FF90EF9008958091A707882309F43BC058 |
:10CBD000459888EB97E09093B1078093B0079091C8 |
:10CBE0009003E92FFF27E052FE4F9F5F9093900341 |
:10CBF00080818093BA07993010F0109290031092C0 |
:10CC0000A7070E94836281E08093B70700000000BD |
:10CC10000000000000000000000000000000000014 |
:10CC20000000000000000000000000000000000004 |
:10CC30000000000000000000000000008091B80724 |
:10CC40008093D7078EBD089587B18C6087B94298CD |
:10CC500043981092950380E88093EC01109294031E |
:10CC60008093EB01089580919A03815080939A03F9 |
:10CC70008F3F09F0FBC024E020939A0380917D024E |
:10CC8000992780739070892B21F48091D60380FFBF |
:10CC90001CC08091FA05882349F080919D03882368 |
:10CCA00011F42093950381E080939D038091FB050F |
:10CCB0008823B9F080919E03882319F484E080933F |
:10CCC000940381E080939E030CC010929D03109208 |
:10CCD0009E038091F60580939B038091F8058093D5 |
:10CCE0009C0380919D03882309F040C08091100629 |
:10CCF000282F332724FF07C08091A802882319F426 |
:10CD000025FD4DC04EC09091F705983F50F08091A1 |
:10CD10006E078D3D30F080919B0388230CF43FC05B |
:10CD200040C0983F48F080916E078A3028F4809187 |
:10CD30009B038823B4F133C0809195038150809385 |
:10CD400095038F3F79F580916E078150809395030D |
:10CD50008091EC01813011F480E801C086958093C8 |
:10CD6000EC018091EC0190919B0317C08091950399 |
:10CD70008150809395038F3FA9F489E080939503B8 |
:10CD80008091EC01813011F480E801C08695809398 |
:10CD9000EC018091EC019091FA05892311F0429AFF |
:10CDA00001C0429880919E03882309F043C080917E |
:10CDB0001006282F332724FF07C08091A80288235C |
:10CDC00019F426FD50C034C09091F905983F50F0F9 |
:10CDD000809194078D3D30F080919C0388230CF462 |
:10CDE00042C026C0983F48F0809194078A3028F4CA |
:10CDF00080919C038823E4F036C080919403815095 |
:10CE0000809394038F3F91F5809194078150809394 |
:10CE100094038091EB01813011F480E801C0869584 |
:10CE20008093EB018091EB0190919C038923D9F4CD |
:10CE300043980895809194038150809394038F3F89 |
:10CE4000A9F489E0809394038091EB01813011F47F |
:10CE500080E801C086958093EB018091EB01909171 |
:10CE6000FB05892311F0439A0895439808954FB71D |
:10CE700024E130E0F8948091C9008F778093C90055 |
:10CE80008091C9008F7B8093C9008091C9008F7DFC |
:10CE90008093C9005A9A52985B9A539A832F992784 |
:10CEA0008093CD002093CC008091C8008260809355 |
:10CEB000C80080E18093C9008091CA008F77809379 |
:10CEC000CA008091CA008F7B8093CA008091CA00FB |
:10CED0008F7D8093CA008091CA008F7E8093CA00A4 |
:10CEE0008091CA00877F8093CA008091C9008B7FA0 |
:10CEF0008093C9008091CA0084608093CA008091A9 |
:10CF0000CA0082608093CA008091C80087FF03C076 |
:10CF10008091CE00F9CF8091C90080688093C900CC |
:10CF20004FBF0895EF92FF920F931F93CF93DF931C |
:10CF3000482F00E010E08091ED01813061F4109203 |
:10CF4000ED0184E480939F031092A1031092A0034B |
:10CF50001092A2032BC180919F03882319F421E032 |
:10CF600030E001C098019091A003992371F4232B24 |
:10CF700011F081E010C084E480939F039093A1039B |
:10CF80009093A0039093A203FAC0913069F4232BED |
:10CF900009F0EBC082E08093A0038091A1038F5F32 |
:10CFA0008093A10383E0E9C09230D1F4232B09F0F0 |
:10CFB000DCC083E080939F034093A2039091A10380 |
:10CFC000923039F41092A30347FF03C081E08093AD |
:10CFD000A30383E08093A0039F5F9093A103CFC03E |
:10CFE000933009F0C2C0232B09F0BFC090939F0378 |
:10CFF00082E08093A0038091A1038F5F8093A103BF |
:10D000002091A203822F9927782F6627842F9927B2 |
:10D01000682B792B8091D305813049F47370CB0153 |
:10D020008050924063E070E00E941C7717C082300D |
:10D0300061F47770CB018050944066E070E00E940C |
:10D040001C772695269526950BC0737068567140FF |
:10D05000CB0177FD0196BC017595679526952695C0 |
:10D06000022F11270F7010700F5F1F4F0D30110529 |
:10D0700008F074C07801E00EF11EF701E952F94F93 |
:10D08000808191819B01281B390BC90137FF03C0A7 |
:10D09000909581959F4F069794F48091B102883CBA |
:10D0A00030F48091B102865F8093B10208C088ECB1 |
:10D0B0008093B10280916F008F7D80936F00F701A4 |
:10D0C000E952F94F808191819C01220F331F280F73 |
:10D0D000391F260F371F37FF02C02D5F3F4FE90171 |
:10D0E000D595C795D595C795CB0101968C179D070A |
:10D0F00014F4219706C061507040C617D7070CF48E |
:10D1000021968091B102843BD0F0F701E952F94FAA |
:10D1100080819181FE01E81BF90BCF0163E070E093 |
:10D120000E941C77CB01880F991F860F971F2BE059 |
:10D1300037E0E20EF31EF7019183808307C02BE0F6 |
:10D1400037E0E20EF31EF70111821082000F111F6B |
:10D150000952194FF801D183C08311C00231110562 |
:10D1600070F081E08093ED010AC081E08093ED01D1 |
:10D170001092A1031092A30384E480939F038091F3 |
:10D18000A103803198F08091A303882331F480912A |
:10D19000ED01882311F4809394011092A103109261 |
:10D1A000A3031092A00384E480939F03E6E0CDB72D |
:10D1B000DEB70C949477CF93FC0197FF05C0CFEFB7 |
:10D1C000F095E195FF4F01C0C1E028E631E0CF01C5 |
:10D1D000B9010E941C77FC018B35910554F08B55E9 |
:10D1E00090408A35910538F484EB90E08E1B9F0BBC |
:10D1F000FC0141E00DC0CF01855B90408A3591056F |
:10D2000018F4E45BF04003C02E1B3F0BF9014FEF15 |
:10D21000EE0FFF1FEF5BF54F259134918C2F99276F |
:10D2200087FD9095289FB001299F700D389F700D44 |
:10D230001124842F992787FD9095689FA001699FED |
:10D24000500D789F500D1124CA01CF9108952AE501 |
:10D2500030E0281B390BC9010E94DB680895CF9389 |
:10D26000DF9380E00E94926E80911E0190911F01D9 |
:10D270006AE070E00E941C779F938F9380911E015B |
:10D2800090911F016AE070E00E941C777F936F937A |
:10D290008FE09BE09F938F93C5E8DEE6DF93CF930B |
:10D2A000E091BC03F091BD0309952DB73EB7285F0F |
:10D2B0003F4F2DBF8091E9018823B9F186E00E949C |
:10D2C000926E8091AC079091AD076AE070E00E9489 |
:10D2D00008777F936F938FED90E09F938F9380916A |
:10D2E0009D0790919E07A0919F07B091A007209164 |
:10D2F0009601309197014091980150919901BC019C |
:10D30000CD010E9451773F932F9388E19BE09F933B |
:10D310008F93DF93CF93E091BC03F091BD03099508 |
:10D320008DB79EB70A968DBF12C086E00E94926E9E |
:10D3300084E29BE09F938F93DF93CF93E091BC03B4 |
:10D34000F091BD0309950F900F900F900F90809171 |
:10D350008F038823C1F086E00E94926E80918F0334 |
:10D3600099279F938F938BE29BE09F938F93DF93FB |
:10D37000CF93E091BC03F091BD0309952DB73EB763 |
:10D380002A5F3F4F2DBF80E10E94926E8091F30192 |
:10D390009091F4016CE370E00E9408779F938F9363 |
:10D3A0008091F3019091F4016CE370E00E940877A2 |
:10D3B0007F936F9380911808909119089F938F9392 |
:10D3C00086E39BE09F938F93C5E8DEE6DF93CF93E0 |
:10D3D000E091BC03F091BD0309958091B9052DB78B |
:10D3E0003EB7265F3F4F2DBF80FF29C08AE10E94D4 |
:10D3F000926E8091950199279F938F938091A302BC |
:10D400009091A402A091A502B091A602BC01CD0109 |
:10D4100024E630E040E050E00E9451773F932F93A4 |
:10D4200083E49BE09F938F93DF93CF93E091BC03C2 |
:10D43000F091BD0309958DB79EB708968DBFDF911A |
:10D44000CF910895CF93DF9380E00E94926E8091F8 |
:10D450009506992787FD90959F938F9380918D06D0 |
:10D46000992787FD90959F938F93809185069927A3 |
:10D4700087FD90959F938F9380917D06992787FDD7 |
:10D4800090959F938F938AE49BE09F938F93C5E839 |
:10D49000DEE6DF93CF93E091BC03F091BD030995E5 |
:10D4A00080E10E94926E2DB73EB7245F3F4F2DBFA3 |
:10D4B0008091B506992787FD90959F938F938091D2 |
:10D4C000AD06992787FD90959F938F938091A50630 |
:10D4D000992787FD90959F938F9380919D0699271B |
:10D4E00087FD90959F938F938AE59BE09F938F9301 |
:10D4F000DF93CF93E091BC03F091BD030995809138 |
:10D50000AB052DB73EB7245F3F4F2DBF853098F454 |
:10D5100080E10E94926E8AE69BE09F938F93DF9357 |
:10D52000CF93E091BC03F091BD0309950F900F904C |
:10D530000F900F9018C08730B0F488E10E94926E6F |
:10D540008FED90E09F938F938BE79BE09F938F935A |
:10D55000DF93CF93E091BC03F091BD0309958DB7A4 |
:10D560009EB706968DBFDF91CF9108950F931F93BD |
:10D5700080E00E94926E2AE030E080911408909141 |
:10D580001508B9010E9408779F938F938091140822 |
:10D5900090911508B9010E9408777F936F9380914D |
:10D5A0001E0190911F01B9010E941C779F938F93D8 |
:10D5B00080911E0190911F01B9010E941C777F93F9 |
:10D5C0006F9384E89BE09F938F9305E81EE61F937B |
:10D5D0000F93E091BC03F091BD03099580E10E9497 |
:10D5E000926E8DB79EB70C968DBF80911808909162 |
:10D5F00019089F938F9380911608909117089F9315 |
:10D600008F9387E99BE09F938F931F930F93E091F4 |
:10D61000BC03F091BD0309958DB79EB708968DBFE9 |
:10D620001F910F9108950F931F93CF93DF938091D4 |
:10D63000E901C5E8DEE6882309F478C080E00E94AD |
:10D64000926E8091A90799279F938F938091AB0742 |
:10D6500099279F938F9383EA9BE09F938F938E01EB |
:10D66000DF93CF93E091BC03F091BD0309958DB793 |
:10D670009EB708968DBF8091AA07833031F48CE065 |
:10D680000E94926E82EB9BE005C08CE00E94926E3D |
:10D6900087EB9BE09F938F93DF93CF93E091BC0345 |
:10D6A000F091BD0309950F900F900F900F9080910E |
:10D6B000A80781FF12C08CE00E94926E8CEB9BE069 |
:10D6C0009F938F931F930F93E091BC03F091BD0341 |
:10D6D00009950F900F900F900F9080E10E94926E2D |
:10D6E0008FED90E09F938F938091AE079091AF075D |
:10D6F0009F938F938091AC079091AD076AE070E0A3 |
:10D700000E9408777F936F9381EC9BE09F938F93A8 |
:10D7100085E89EE69F938F93E091BC03F091BD0353 |
:10D7200009958DB79EB70A968DBF12C082E00E9400 |
:10D73000926E81ED9BE09F938F93DF93CF93E09167 |
:10D74000BC03F091BD0309950F900F900F900F90BF |
:10D75000DF91CF911F910F910895CF93C82F209102 |
:10D76000A4032093A50399278F32910509F18033F3 |
:10D7700091051CF44F97A1F02CC08F34910501F155 |
:10D780008F38910531F5222319F481E090E038C0FB |
:10D7900086E0289FF0011124E950F54F849117C0CD |
:10D7A00086E0289FF0011124E850F54F84910FC0C6 |
:10D7B00086E0289FF0011124E750F54F849107C0BF |
:10D7C00086E0289FF0011124E650F54F8491809364 |
:10D7D000A4039091A4038091A5039813C0E00E9434 |
:10D7E000986E9091A40386E0989FF0011124E55073 |
:10D7F000F54F259134918C2FF901099580E090E047 |
:10D80000CF910895109215081092140810921908DB |
:10D8100010921808109217081092160810921A0801 |
:10D820008AE090E00E9416179093A7038093A603C6 |
:10D830000895CF93DF938091A6039091A7030E9450 |
:10D840001F17882309F4AFC08091A6039091A70306 |
:10D850000A969093A7038093A603E0E0F0E09F016F |
:10D8600090E05FEFA6E7B6E04BE0ED018B8187FF2C |
:10D870000BC09F5F8D81E80FF11D8981280F311D3D |
:10D880008E81851708F4582F4150189647FFEDCF29 |
:10D8900050931A08232B41F52091AC033091AD032E |
:10D8A0004091AE035091AF03BB27A52F942F832F38 |
:10D8B0009093AB038093AA03AA27BB27281B390B9D |
:10D8C0004A0B5B0BCF01AA27BB27280F391F4A1F22 |
:10D8D0005B1F2093AC033093AD034093AE03509392 |
:10D8E000AF03E5E0F0E013C02091AA033091AB0351 |
:10D8F0002E173F0718F4E21BF30B02C0E0E0F0E044 |
:10D90000892F9927880F991FE80FF91F3596F093F3 |
:10D910001508E0931408EF3FF10578F480911E019B |
:10D9200090911F018E9F90018F9F300D9E9F300D13 |
:10D930001124C90164E670E013C0CF019695879564 |
:10D940009695879520911E0130911F01289FA00177 |
:10D95000299F500D389F500D1124CA0169E170E0D4 |
:10D960000E94087770931708609316082091A80307 |
:10D970003091A9032E0F3F1F3093A9032093A803D2 |
:10D980005EE02131350778F08091180890911908F0 |
:10D990000196909319088093180820513E403093C7 |
:10D9A000A9032093A803DF91CF9108954FB720E4F6 |
:10D9B00030E0F8948091C9008F778093C9008091FE |
:10D9C000C9008F7B8093C9008091C9008F7D8093AF |
:10D9D000C9005A9A52985B9A539A832F9927809339 |
:10D9E000CD002093CC008091C80082608093C80055 |
:10D9F00088E18093C9008091CA008F778093CA0024 |
:10DA00008091CA008F7B8093CA008091CA008F7D6D |
:10DA10008093CA008091CA008F7E8093CA00809153 |
:10DA2000CA00877F8093CA008091C9008B7F809352 |
:10DA3000C9008091CA0084608093CA008091CA00A6 |
:10DA400082608093CA008091C80087FF03C08091E4 |
:10DA5000CE00F9CF8091C90080688093C9004FBF84 |
:10DA600008950F931F93CF93DF93482F4F5F893112 |
:10DA700008F08BC08091D606841720F44F5F409346 |
:10DA8000D6064150CB0183539B4268E170E00E946F |
:10DA90001C77A42FBB27FD01EA0FFB1FE952F94FAA |
:10DAA000808191819B01281B390BC90137FF03C07D |
:10DAB000909581959F4F069794F48091B102883C90 |
:10DAC00030F48091B102865F8093B10208C088EC87 |
:10DAD0008093B10280916F008F7D80936F00FD0174 |
:10DAE000EA0FFB1FE952F94F808191819C01220FBF |
:10DAF000331F280F391F260F371F37FF02C02D5F36 |
:10DB00003F4FE901D595C795D595C795CB010196AE |
:10DB10008C179D0714F4219706C061507040C617FA |
:10DB2000D7070CF421968091B102843BD8F08D0187 |
:10DB30000A0F1B1FF801E952F94F80819181FE0104 |
:10DB4000E81BF90BCF0163E070E00E941C77CB016A |
:10DB5000880F991F860F971F055F184FF801918353 |
:10DB6000808307C0AA0FBB1FA55FB84F11961C92F8 |
:10DB70001E92E42FFF27EE0FFF1FE952F94FD183CA |
:10DB8000C083443011F410929401DF91CF911F9122 |
:10DB90000F910895CF93DF9320911B08822F99272F |
:10DBA000807F9070409709F06CC02F3109F046C01B |
:10DBB00080911C088093B40320911E082093B60323 |
:10DBC00080911F088093B503822F99279093D806E0 |
:10DBD0008093D706222309F054C08091AD05282FE9 |
:10DBE0003327220F331FF901E55FF84F11821082AE |
:10DBF0008091AE05A82FBB27AA0FBB1FFD01E55FD3 |
:10DC0000F84F118210828091B005E82FFF27EE0FA8 |
:10DC1000FF1FCF01855F984FEC01198218822952AE |
:10DC2000394FE90119821882A952B94F11961C92F5 |
:10DC30001E92E952F94F1182108223C0C22FCF7079 |
:10DC4000CA30F8F480911C088093450880911D0823 |
:10DC50008093440880911E088093470880911F0894 |
:10DC60008093460860914408709145088C2F0E946B |
:10DC7000316D60914608709147088C2F8F5F0E942C |
:10DC8000316DDF91CF910895CF93C82F8F3F49F425 |
:10DC90008091B7038F3F29F41092B9031092B80313 |
:10DCA00032C02091B903222339F4CF3111F485E039 |
:10DCB00001C084E08093BA038091BA039091B803C5 |
:10DCC0008217A0F4892F80958093B8038F3F19F4B1 |
:10DCD0008EEF8093B8038091B803C81711F40E94A7 |
:10DCE000CA6D1092B9031092B8030BC0E22FFF2740 |
:10DCF000E55EF74FC0832F5F2093B9039C0F90938D |
:10DD0000B803C093B703CF9108959091B3039332B2 |
:10DD100040F4E92FFF27EF5DF74F80839F5F9093DB |
:10DD2000B3030895833218F48D5F8093B30308958D |
:10DD300090E2E4E2F8E08FE19193815087FFFCCF1D |
:10DD40000895CF93CFB723E031E0F8948091C900D4 |
:10DD50008F778093C9008091C9008F7B8093C90021 |
:10DD60008091C9008F7D8093C9005A9A52985B9A1E |
:10DD7000539A832F99278093CD002093CC008091D4 |
:10DD8000C80082608093C80088E18093C9008091B8 |
:10DD9000CA008F778093CA008091CA008F7B8093DE |
:10DDA000CA008091CA0080628093CA008091CA0034 |
:10DDB00080618093CA008091CA0088608093CA0005 |
:10DDC0008091C90084608093C9008091CA008460FA |
:10DDD0008093CA008091CA0082608093CA008091BB |
:10DDE000C80087FF03C08091CE00F9CF8091C900A1 |
:10DDF00080688093C9008091C90080648093C900C5 |
:10DE00000E94986ECFBFCF910895282F99278F70C9 |
:10DE10009070892B31F420958091B203822B8093EE |
:10DE2000B20308958091F001882309F441C08091E4 |
:10DE30007D0285FF0AC082E98093210883E28093F6 |
:10DE4000220885E58093230802C010922108809162 |
:10DE5000F1018F3071F48091B2030E94AD6B882381 |
:10DE600041F081E9809321088093220881E3809327 |
:10DE700023081092F0018091C80085FFFCCF8091AB |
:10DE8000C9008F7E8093C9008091C9008E7F8093E6 |
:10DE9000C90080912108882311F48EEF01C08EE71C |
:10DEA0008093CE008091B2038093F1011092B2036F |
:10DEB00008951F920F920FB60F9211248F939F9384 |
:10DEC000EF93FF939091F001992309F040C0809166 |
:10DED000BB03882361F480912108882311F483E037 |
:10DEE00003C0813999F481E08093BB030FC0833074 |
:10DEF00099F480912108882349F09093210880911A |
:10DF0000C9008E7F8093C9008EEF1EC08091C9002A |
:10DF100081608093C9000EC0833261F48091C90092 |
:10DF20008E7F8093C9008FEF8093CE0081E0809335 |
:10DF3000F00114C08091BB03E82FFF27EF5DF74F7E |
:10DF40008F5F8093BB0380818093CE0007C01092C7 |
:10DF5000BB038091C90080618093C900FF91EF915C |
:10DF60009F918F910F900FBE0F901F901895EF9279 |
:10DF7000FF920F931F93CF93DF937C018B01EA01F4 |
:10DF8000452B39F0F80181918F01F701099521970F |
:10DF9000C9F7E6E0CDB7DEB70C949477EF92FF9225 |
:10DFA0000F931F93CF93DF937C018B01EA01452BE5 |
:10DFB00041F0F8010F5F1F4F8491F70109952197F8 |
:10DFC000C1F7E6E0CDB7DEB70C9494770F931F93BB |
:10DFD000CF938C01C62F161634F480E2F801099510 |
:10DFE000C1501C16D4F3CF911F910F9108950F9338 |
:10DFF0001F93CF938C01C62F161634F480E3F801DB |
:10E000000995C1501C16D4F3CF911F910F9108951B |
:10E01000A5E3B0E0EEE0F0E70C946C772E96EEAD61 |
:10E02000FFAD2E978824992454018091B103882351 |
:10E0300021F42C961FAE1EAE2C975EE4452E512C7B |
:10E040004C0E5D1E6F01B60105C0153239F0089403 |
:10E05000C11CD11CF60114911123B9F7A601461B6E |
:10E06000570B31F02C968EAD9FAD2C970E94CE6F42 |
:10E07000112309F46AC20894C11CD11CFF24FDA617 |
:10E08000FCA64FEFE42EF9A6F6010894C11CD11CA2 |
:10E090001491153721F0812F80628837B1F4F0FE9A |
:10E0A0000AC0F20124E030E0420E531E80809180CD |
:10E0B000A280B3800AC0F20142E050E0440E551E37 |
:10E0C000808191814C01AA24BB24103221F489A5BE |
:10E0D0008823D1F61DC0133219F458E0F52AD4CFA5 |
:10E0E0001A3211F01D3291F41A3259F4F20182E021 |
:10E0F00090E0480E591EE081ECA7EE232CF6E19546 |
:10E10000ECA790E1F92AAFEDFA22BECF1B3211F451 |
:10E1100019A7BACF1E32C1F5F6010894C11CD11C53 |
:10E1200014911A3279F4F20122E030E0420E531ECB |
:10E13000408151813FEF4F3F530714F44FEF5FEFA2 |
:10E14000E42EA2CF40E050E0812F80538A30A0F42B |
:10E15000CA0133E0880F991F3A95E1F7840F951FA4 |
:10E16000480F591F410F511D40535040F60108946C |
:10E17000C11CD11C1491E8CF8FEF4F3F580714F406 |
:10E180004FEF5FEFE42E85CF103329F4F4FC7CCF02 |
:10E1900090E2F92A79CF812F81538930D8F440E079 |
:10E1A00050E0CA0123E0880F991F2A95E1F7840FF8 |
:10E1B000951F480F591F410F511D40535040F60104 |
:10E1C0000894C11CD11C1491812F80538A3048F3CC |
:10E1D0004CA75FCF183619F4A4E0FA2A55CF1C36A5 |
:10E1E00019F4B1E0FB2A50CF133661F43E010894D4 |
:10E1F000611C711CF20122E030E0420E531E80814E |
:10E2000089833CC1143421F0143611F0193651F5CC |
:10E21000143411F431E0F32AF0FE0AC0F20144E0B4 |
:10E2200050E0440E551E80809180A280B3800CC0C7 |
:10E23000F20182E090E0480E591E808191814C01EC |
:10E24000AA2497FCA094BA2CB7FE0AC0B094A0945C |
:10E2500090948094811C911CA11CB11C8DE289A713 |
:10E260000AE06FC01F3411F01F3631F41F3411F46F |
:10E2700091E0F92A08E064C0103779F4F201A2E0D5 |
:10E28000B0E04A0E5B1E808191814C01AA24BB2420 |
:10E2900000E1B0E4FB2A18E753C01337C1F5F201DF |
:10E2A00022E030E0420E531E6080718061147104E0 |
:10E2B00089F43E010894611C711C88E289838EE612 |
:10E2C000F301818385E78B838CE68C838D8389E2E0 |
:10E2D0008E831F82E7FC13C08E2D992787FD9095B2 |
:10E2E000AC0160E070E0C3010E943975009729F02D |
:10E2F000382E3618E3140CF0C3C03E2CC1C0F30115 |
:10E3000001900020E9F731973E2E3618B9C0153537 |
:10E3100011F0153731F4153511F4F1E0FF2A0AE058 |
:10E320000FC0183519F0183709F0A0C000E1F3FE4E |
:10E3300007C081149104A104B10411F020E4F22A71 |
:10E3400019A6EDA6E7FC02C03FEDF32289E2682E94 |
:10E35000712C6C0E7D1E81149104A104B10421F472 |
:10E360004DA5442309F47BC0802F9927AA27BB27FA |
:10E370008EA79FA7A8ABB9AB202E332490E08916B7 |
:10E3800090E0990691E0A90690E0B90648F0C50131 |
:10E39000B4012EA53FA548A959A90E942F7717C0FF |
:10E3A000AFEF8A169104A104B10449F040F0C40112 |
:10E3B000B1010E9408779B014427552708C0882D8A |
:10E3C000602F0E94FC76282F3327442755272AAB3D |
:10E3D0003BAB4CAB5DAB0A3059F48AA9880F880F70 |
:10E3E000880F9AA9990F890F382D381B832F10C0D9 |
:10E3F000003139F48AA98295807F482D481B842FEB |
:10E4000007C08AA9880F880F880F582D581B852FA1 |
:10E4100090E02EA53FA548A959A982169306A40607 |
:10E42000B50608F091E08AA89BA8ACA8BDA88A30E0 |
:10E4300010F4805D04C0895A183509F48F7DD3012A |
:10E440008E933D01992309F099CF083041F4F3FEF2 |
:10E4500006C0803321F080E3FD0182933F01CE01AD |
:10E460000196382E3618F8E23F0E0BC0112309F43E |
:10E470006CC03E010894611C711C1983B1E03B2EF5 |
:10E4800019A6032D2DA4231827FC222489A588234F |
:10E4900011F00F5F02C0F6FC0E5F020DEF2CFF249F |
:10E4A000C70180739070892B49F48CA5801B682F5D |
:10E4B0002C968EAD9FAD2C970E94E66F89A5882380 |
:10E4C00031F041E050E0BE01675D7F4F0AC0E6FEDB |
:10E4D0000EC080E38AA71BA742E050E0BE01665D44 |
:10E4E0007F4F2C968EAD9FAD2C970E94B76FC701C2 |
:10E4F00080739070809749F48CA5801B682F2C96B0 |
:10E500008EAD9FAD2C970E94F76F622D2C968EAD2D |
:10E510009FAD2C970E94F76F832D992787FD9095CB |
:10E52000AC01B3012C968EAD9FAD2C970E94B76FB6 |
:10E53000E4FE89CD2CA5201B2CA7622F2C968EAD36 |
:10E540009FAD2C970E94E66F7ECDE2E1CB5C0C94F0 |
:10E5500088772FB740E0F894E0E0F0E081E2809324 |
:10E5600057009491E2E0F0E0809357003491E4E0AA |
:10E57000F0E08093570084912FBF9E3199F4363993 |
:10E5800041F4893011F441E00DC08A3059F442E081 |
:10E5900009C0373939F4863011F443E003C08530BF |
:10E5A00009F444E0842F992708959FB7F894809147 |
:10E5B000C900877F8093C9008091C9008F7E8093B6 |
:10E5C000C9008091C9008F778093C9008091C900EC |
:10E5D0008F7B8093C9008091C9008F7D8093C90093 |
:10E5E00052985A9A53985B9A9FBF08951F93CF935E |
:10E5F000DF93182F8091B103882309F48DC0809197 |
:10E60000EF01181709F488C08091B003882321F422 |
:10E610000E94A9728093B0038AEC9CE09F938F9331 |
:10E62000C0EFD2E1DF93CF93E091BC03F091BD0343 |
:10E6300009950F900F900F900F90812F992782309E |
:10E64000910501F1833091052CF4009761F0019759 |
:10E6500069F024C084309105D9F084309105ACF084 |
:10E660000597C9F01BC08AEB9CE002C088EA9CE0D9 |
:10E670009F938F93DF93CF93E091BC03F091BD0301 |
:10E68000099518C08FE89CE0F3CF8CE69CE0F0CFB2 |
:10E690008EE59CE0EDCF86E59CE0EACF87ED9CE03F |
:10E6A0009F938F93DF93CF93E091BC03F091BD03D1 |
:10E6B000099510E00F900F900F900F908091B0038C |
:10E6C000843011F0823099F40E94D572812F8150EC |
:10E6D000833018F40E9437671DC0143019F40E946B |
:10E6E000A16E18C01530B1F40E94D66C13C011236E |
:10E6F00089F08DEE9CE09F938F9380EF92E19F9342 |
:10E700008F93E091BC03F091BD0309950F900F909A |
:10E710000F900F901093EF01DF91CF911F9108950B |
:10E720000F931F9381E08093B1034091EE01E6E0E7 |
:10E73000FCE020E030E05FE4849199272F5F3F4FB9 |
:10E74000829FB001839F700D929F700D1124462708 |
:10E750005150319657FFF0CF4093EE01EEEDFBE0C4 |
:10E7600020E030E057E2849199272F5F3F4F829F4E |
:10E77000B001839F700D929F700D11244627515058 |
:10E78000319657FFF0CF4093EE018091B00388237C |
:10E7900021F40E94A9728093B0038091EE0183342A |
:10E7A00059F088E190E029E20FB6F894A89580939B |
:10E7B00060000FBE2093600088E090E79093BD0357 |
:10E7C0008093BC0388E09DE09F938F9300EF12E15C |
:10E7D0001F930F93E091BC03F091BD0309950F9037 |
:10E7E0000F900F900F9081E690E09F938F9382E5BA |
:10E7F00090E09F938F931F921F92809102016AE095 |
:10E800000E94FC76892F99279F938F938091020114 |
:10E810000E94FC7699279F938F938EE29DE09F93B1 |
:10E820008F931F930F93E091BC03F091BD03099563 |
:10E8300086E09CE09F938F931F930F93E091BC031E |
:10E84000F091BD0309958EED9BE09F938F931F93ED |
:10E850000F93E091BC03F091BD0309958DB79EB76E |
:10E8600046968DBF82E69DE09F938F931F930F93F3 |
:10E87000E091BC03F091BD03099582EC8093810087 |
:10E8800080916F00806280936F000F900F900F90C7 |
:10E890000F901F910F9108958091B103882361F02B |
:10E8A0008091EF01843011F40E94126F8091EE018B |
:10E8B000833411F01092B10308951F920F920FB696 |
:10E8C0000F9211242F933F934F935F936F937F93F6 |
:10E8D0008F939F93AF93BF93EF93FF932091CE00BD |
:10E8E0008091FA018823B1F02093C6008091FA014B |
:10E8F000823029F52F3F19F58FEF94E3ACE0B0E0BB |
:10E90000C297A109B109B7FFFBCF8091FF038093A4 |
:10E91000CE0015C09091EF01892F8150833020F4F3 |
:10E92000822F0E9492670BC0943021F4822F0E94A4 |
:10E93000056F05C0953019F4822F0E94446EFF9137 |
:10E94000EF91BF91AF919F918F917F916F915F9167 |
:10E950004F913F912F910F900FBE0F901F901895E0 |
:10E96000002422273327442751E0BB27EE27FF2727 |
:10E97000A0E1660F771F881F991F001C221F331FFD |
:10E98000441F660F771F881F991F001C221F331F0B |
:10E99000441F2AF4050E2B1F3E1F4F1F04C0051AEB |
:10E9A0002B0B3E0B4F0B550FBB1FEE1F587F5560B7 |
:10E9B00047FD5250AA95E9F6E695B7955795E69525 |
:10E9C000B7955795852F9B2F08952227332741E030 |
:10E9D000552768E0880F991F221F331F880F991F42 |
:10E9E000221F331F1AF4240F351F02C0241B350BBE |
:10E9F000440F551F487F456037FD42506A9551F7D7 |
:10EA00005695479556954795842F0895AA2797FFC1 |
:10EA100004C0809590958A1F9A1F77FF04C0609567 |
:10EA200070956A1F7A1F669F9001779FA001679F6C |
:10EA3000300D411D5A1F300D411D5A1F889FF00196 |
:10EA4000999F2E0F3F1F401D511D899F300D411D65 |
:10EA50005A1F300D411D5A1FCA01B901112480CF20 |
:10EA6000FB01DC0102C005900D9241505040D8F7E7 |
:10EA70000895FC014150504030F001900616D1F746 |
:10EA80003197CF010895882799270895A0E0B0E035 |
:10EA9000ECE4F5E70C9474776C017B01EA01590111 |
:10EAA00021978FEFCF3FD80789F086010894C11CCA |
:10EAB000D11CC7010894E11CF11CF5010995F8016E |
:10EAC00080832197FFEFCF3FDF0779F7EAE0CDB7EB |
:10EAD000DEB70C949077CF92DF92EF92FF920F9374 |
:10EAE0001F937C016B01FB010995082FC70101965B |
:10EAF000F6010995182FC8011F910F91FF90EF9013 |
:10EB0000DF90CF900895A0E0B0E0E9E8F5E70C943D |
:10EB100076778C017B01EA01690121978FEFCF3F66 |
:10EB2000D80771F0F70121917F01C8010F5F1F4FD6 |
:10EB3000622FF60109952197FFEFCF3FDF0791F78D |
:10EB4000E8E0CDB7DEB70C949277CF92DF92EF92E8 |
:10EB5000FF920F931F936C018B017A01FA010995C3 |
:10EB6000812F9927682FC6010196F70109951F91FA |
:10EB70000F91FF90EF90DF90CF9008955058BB27F2 |
:10EB8000AA270ED0E0C0D1D030F0D6D020F031F49A |
:10EB90009F3F11F41EF4C6C00EF4E095E7FBBCC025 |
:10EBA000E92FE2D080F3BA1762077307840795074D |
:10EBB00018F071F49EF5FAC00EF4E0950B2EBA2F02 |
:10EBC000A02D0B01B90190010C01CA01A001112473 |
:10EBD000FF27591B99F0593F50F4503E68F11A161F |
:10EBE000F040A22F232F342F4427585FF3CF4695B0 |
:10EBF00037952795A795F0405395C9F77EF41F16D2 |
:10EC0000BA0B620B730B840BBAF09150A1F0FF0F9B |
:10EC1000BB1F661F771F881FC2F70EC0BA0F621F87 |
:10EC2000731F841F48F4879577956795B795F79577 |
:10EC30009E3F08F0B3CF9395880F08F09927EE0F09 |
:10EC400097958795089598D088F09F5790F0B92FA1 |
:10EC50009927B751A0F0D1F0660F771F881F991F31 |
:10EC60001AF0BA95C9F712C0B13081F09FD0B1E067 |
:10EC700008959CC0672F782F8827B85F39F0B93F77 |
:10EC8000CCF3869577956795B395D9F73EF4909533 |
:10EC90008095709561957F4F8F4F9F4F0895E894B1 |
:10ECA00009C097FB3EF490958095709561957F4FD4 |
:10ECB0008F4F9F4F9923A9F0F92F96E9BB27939582 |
:10ECC000F695879577956795B795F111F8CFFAF492 |
:10ECD000BB0F11F460FF1BC06F5F7F4F8F4F9F4FC3 |
:10ECE00016C0882311F096E911C0772321F09EE821 |
:10ECF000872F762F05C0662371F096E8862F70E087 |
:10ED000060E02AF09A95660F771F881FDAF7880F60 |
:10ED10009695879597F9089597F99F6780E870E031 |
:10ED200060E008959FEF80EC089500240A94161681 |
:10ED3000170618060906089500240A9412161306E9 |
:10ED4000140605060895092E0394000C11F4882377 |
:10ED500052F0BB0F40F4BF2B11F460FF04C06F5F93 |
:10ED60007F4F8F4F9F4F089557FD9058440F551F69 |
:10ED700059F05F3F71F04795880F97FB991F61F03D |
:10ED80009F3F79F087950895121613061406551FB4 |
:10ED9000F2CF4695F1DF08C0161617061806991F20 |
:10EDA000F1CF86957105610508940895E894BB2715 |
:10EDB00066277727CB0197F90895629FD001739F4B |
:10EDC000F001829FE00DF11D649FE00DF11D929F07 |
:10EDD000F00D839FF00D749FF00D659FF00D992746 |
:10EDE000729FB00DE11DF91F639FB00DE11DF91F6A |
:10EDF000BD01CF0111240895991B79E004C0991F2A |
:10EE0000961708F0961B881F7A95C9F78095089584 |
:10EE1000AA1BBB1B51E107C0AA1FBB1FA617B70740 |
:10EE200010F0A61BB70B881F991F5A95A9F780955C |
:10EE30009095BC01CD01089597FB092E07260AD0B5 |
:10EE400077FD04D0E5DF06D000201AF470956195B7 |
:10EE50007F4F0895F6F7909581959F4F0895A1E211 |
:10EE60001A2EAA1BBB1BFD010DC0AA1FBB1FEE1F44 |
:10EE7000FF1FA217B307E407F50720F0A21BB30B8F |
:10EE8000E40BF50B661F771F881F991F1A9469F70B |
:10EE900060957095809590959B01AC01BD01CF0167 |
:10EEA000089597FB092E05260ED057FD04D0D7DF15 |
:10EEB0000AD0001C38F450954095309521953F4F6D |
:10EEC0004F4F5F4F0895F6F7909580957095619537 |
:10EED0007F4F8F4F9F4F08952F923F924F925F9297 |
:10EEE0006F927F928F929F92AF92BF92CF92DF925A |
:10EEF000EF92FF920F931F93CF93DF93CDB7DEB7BF |
:10EF0000CA1BDB0B0FB6F894DEBF0FBECDBF099452 |
:10EF10002A88398848885F846E847D848C849B84A9 |
:10EF2000AA84B984C884DF80EE80FD800C811B81B7 |
:10EF3000AA81B981CE0FD11D0FB6F894DEBF0FBEE6 |
:10EF4000CDBFED010895EE0FFF1F0590F491E02D68 |
:04EF50000994FFCF52 |
:10EF54005E010A010164FF01FFFFC01FC01F010120 |
:10EF640001737373FF03007D0000C409C4096400C6 |
:10EF74001148656C6C6F20576F726C640000000060 |
:10EF8400000000000000000000000000000000007D |
:10EF9400000000000000000000000000000000006D |
:10EFA400000000000000000000000000000000005D |
:10EFB400000000000000000000000000000000004D |
:10EFC4000053706F727400004E6F726D616C0000BC |
:10EFD400426567696E6E6572000051756164726F97 |
:10EFE4000000640001200B050000ECFF0002040691 |
:10EFF400070808080706040200FEFCFAF9F8F8F806 |
:10F00400F9FAFCFE000204060708086440415A4667 |
:10F0140064640A02969696960840403A10FB30388B |
:10F024000190D0030090D00300F4017800FF036442 |
:10F034000B0A0D0B0C0E0B0F10FA2001010170FFCF |
:02F04400010FBA |
:00000001FF |
/branches/metro/v0.82a metro_Akku+/Hex-Files/Flight-Ctrl_MEGA644_V0_82a.hex |
---|
0,0 → 1,3892 |
:100000000C94BB060C9401070C9401070C94010797 |
:100010000C9401070C9401070C9401070C94010740 |
:100020000C9401070C9441190C9401070C940107DE |
:100030000C9404340C9401070C9401070C940107F0 |
:100040000C9401070C9401070C9411160C940107F1 |
:100050000C942C0C0C9401070C94F60B0C940107D7 |
:100060000C94FD1B0C9401070C94972F0C94010722 |
:100070000C94C4750C9401070C94C070281C2D1CA2 |
:10008000321C3B1C521C691C791C891CA61C921E2C |
:10009000691C541D651D941DB21DCF1D291E841E93 |
:1000A0006220F420B12131229A224A235125AE2523 |
:1000B0001B266526B026FD264E27B0270F28A92827 |
:1000C00044293E2AB62FEA2F2D309D30B530F63028 |
:1000D000AD317432743274327432743274327432B8 |
:1000E000743274327432743229322B3230324832E4 |
:1000F0004A320A0D426174743A0020256420436537 |
:100100006C6C732000204C6F77207761726E696E83 |
:1001100067206C6576656C3A2025642E2564000A9C |
:100120000D466F756E6420424C2D4374726C3A20FC |
:10013000002564000A0D0A0D2121204D4953534921 |
:100140004E4720424C2D4354524C3A2025642021E6 |
:1001500021000A0D3D3D3D3D3D3D3D3D3D3D3D3D8B |
:100160003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DBF |
:100170003D3D3D3D3D3D3D000A0D43616C69627270 |
:100180006174696E67207072657373757265207330 |
:10019000656E736F722E2E004F4B0A0D000A0D46CE |
:1001A0006C696768742D74696D65202575206D69AB |
:1001B0006E2020546F74616C3A2575206D696E0055 |
:1001C0000A0D436F6E74726F6C3A2000486561646B |
:1001D000696E67486F6C64004E6F726D616C2028A9 |
:1001E0004143432D4D6F646529000A0D3D3D3D3D62 |
:1001F0003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2F |
:100200003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D0A51 |
:100210000D00416E676C654E69636B2020202020C5 |
:100220002020416E676C65526F6C6C20202020206E |
:1002300020204163634E69636B2020202020202012 |
:100240002020416363526F6C6C20202020202020EE |
:1002500020205961774779726F20202020202020AC |
:1002600020204865696768742056616C7565202098 |
:1002700020204163635A202020202020202020209D |
:1002800020204761732020202020202020202020B3 |
:100290002020436F6D706173732056616C7565200B |
:1002A0002020566F6C74616765205B302E31565D7F |
:1002B00020205265636569766572204C6576656CB1 |
:1002C00020204779726F20436F6D70617373202017 |
:1002D00020204D6F746F722031202020202020209C |
:1002E00020204D6F746F722032202020202020208B |
:1002F00020204D6F746F722033202020202020207A |
:1003000020204D6F746F7220342020202020202068 |
:1003100020203136202020202020202020202020B6 |
:1003200020203137202020202020202020202020A5 |
:100330002020313820202020202020202020202094 |
:100340002020313920202020202020202020202083 |
:100350002020536572766F2020202020202020202E |
:100360002020486F7665726761732020202020204E |
:10037000202043757272656E74205B302E31415DB2 |
:1003800020204361706163697479205B6D41685D11 |
:100390002020323420202020202020202020202037 |
:1003A0002020323520202020202020202020202026 |
:1003B0002020323620202020202020202020202015 |
:1003C0002020323720202020202020202020202004 |
:1003D00020204932432D4572726F72202020202048 |
:1003E0002020424C204C696D697420202020202060 |
:1003F00020204750535F4E69636B2020202020202F |
:1004000020204750535F526F6C6C2020202020200A |
:10041000202021212120494E434F4D504154494233 |
:100420004C4520212121002E000A0D20444143206B |
:100430006F7220493243204552524F522120436867 |
:1004400065636B204932432C2033567265662C203D |
:1004500044414320616E6420424C2D4374726C0011 |
:100460005B25695D005B25695D002B204D696B7222 |
:100470006F4B6F70746572202B0048573A56256495 |
:100480002E25642053573A25642E25642563005396 |
:10049000657474696E673A2564202573004861723B |
:1004A0006477617265204572726F7220313A2564FB |
:1004B000202121004D697373696E6720424C2D43E2 |
:1004C00074726C3A25642121004D6978657220456B |
:1004D00072726F722100493243204552524F5221AD |
:1004E0002121004865696768743A20202535690034 |
:1004F000536574706F696E743A2535690050726582 |
:1005000073737572653A253569004F666673657455 |
:100510003A20202535690048656967687420636F53 |
:100520006E74726F6C0044495341424C454400481C |
:10053000656967687420636F6E74726F6C004449FC |
:100540005341424C4544006163742E2062656172E0 |
:10055000696E67004E69636B3A20202020202025B9 |
:10056000356900526F6C6C3A202020202020253500 |
:100570006900436F6D706173733A202020253569DF |
:10058000004B313A25346920204B323A253469201A |
:10059000004B333A25346920204B343A2534692006 |
:1005A000004B353A25346920204B363A25346920F2 |
:1005B000004B373A25346920204B383A25346920DE |
:1005C000004E693A2534692020526F3A253469205B |
:1005D0000047733A253469202047693A2534692059 |
:1005E0000050313A253469202050323A25346920B0 |
:1005F0000050333A253469202050343A253469209C |
:10060000004779726F202D2053656E736F72004E14 |
:1006100069636B25346920282533692E25692900F3 |
:10062000526F6C6C25346920282533692E25692981 |
:100630000047696572253469202825336929004EF1 |
:1006400069636B2025346920282533692E25782994 |
:1006500000526F6C6C2025346920282533692E25C3 |
:1006600078290059617720202534692028253369AD |
:1006700029004E69636B20253469202825336929B8 |
:10068000282533692900526F6C6C20253469202895 |
:1006900025336929282533692900596177202025C8 |
:1006A00034692028253369292825336929004143E5 |
:1006B00043202D2053656E736F72004E69636B206B |
:1006C00025346920282533692900526F6C6C202558 |
:1006D0003469202825336929005A20202020253418 |
:1006E0006920282533692900566F6C746167653A63 |
:1006F0002020202533692E253169560043757272FA |
:10070000656E743A2020202533692E253169410019 |
:10071000506F7765723A20202020202534695700D9 |
:100720004469736368617267653A202535696D4174 |
:10073000680052656365697665720052432D5253B5 |
:1007400053493A202020202534690052432D517509 |
:10075000616C6974793A202534690052432D4368ED |
:10076000616E6E656C733A25346900436F6D70611C |
:1007700073730048656164696E673A2020253569A6 |
:100780000056616C75653A2020202025356900539C |
:10079000746172743A2020202025356900506F74EE |
:1007A00069313A202025336900506F7469323A204C |
:1007B0002025336900506F7469333A20202533694E |
:1007C00000506F7469343A202025336900506F74EB |
:1007D00069353A202025336900506F7469363A2014 |
:1007E0002025336900506F7469373A20202533691A |
:1007F00000506F7469383A202025336900536572C0 |
:10080000766F202000536574706F696E7420202508 |
:10081000336900506F736974696F6E3A20253369CC |
:100820000052616E67653A2533692D2533690045AD |
:10083000787465726E436F6E74726F6C2020004E18 |
:10084000693A2534692020526F3A253469200047DF |
:10085000733A253469202047693A253469200048D5 |
:10086000693A253469202043663A253469200042DC |
:100870004C2D4374726C204572726F727320002588 |
:10088000336420253364202533642025336420001D |
:1008900025336420253364202533642025336420E8 |
:1008A00000253364202533642025336420253364F8 |
:1008B0002000424C2054656D7065726174757265DC |
:1008C00000253369202533692025336920253369C4 |
:1008D00020002533692025336920253369202533FD |
:1008E00069200025336920253369202533692025B7 |
:1008F00033692000424C2D4374726C20666F756E14 |
:1009000064200020256320202025632020202563EB |
:10091000202020256320002025632020202563201F |
:10092000202025632020202563200020256320200F |
:10093000202D2020202D2020202D2000313000319E |
:100940003100313200466C696768742D54696D65F9 |
:10095000202000546F74616C3A2535756D696E0006 |
:100960004163743A20202535756D696E00287265E3 |
:1009700073657429000A0D47656E65726174696E4E |
:10098000672064656661756C7420506172616D6585 |
:1009900074657220536574202564000A0D557369CF |
:1009A0006E6720506172616D657465722053657465 |
:1009B000202564000A0D47656E65726174696E6773 |
:1009C0002064656661756C74204D69786572205489 |
:1009D00061626C65000A0D4D697865722D436F6E1A |
:1009E0006669673A202725732720282575204D6FD3 |
:1009F000746F727329000A0D3D3D3D3D3D3D3D3D07 |
:100A00003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D16 |
:100A10003D3D3D3D3D3D000A0D414343206E6F7419 |
:100A20002063616C69627261746564210D0A000063 |
:100A3000008F001E01AD013B02CA025803E6037499 |
:100A40000402058F051B06A7063307BE074808D218 |
:100A5000085B09E3096B0AF20A780BFD0B810C04B1 |
:100A60000D860D070E870E060F840F00107B10F504 |
:100A7000106E11E5115B12CF124213B313231492BF |
:100A800014FE146A15D3153B16A11605176717C86F |
:100A90001727188318DE1837198E19E319361A87A5 |
:100AA0001AD61A231B6E1BB61BFD1B411C831CC3CD |
:100AB0001C001D3C1D751DAB1DE01D121E421E6F4E |
:100AC0001E9A1EC31EE91E0D1F2E1F4D1F691F8477 |
:100AD0001F9B1FB01FC31FD31FE11FEC1FF51FFB80 |
:100AE0001FFF1F002003010000966A000201018918 |
:100AF0006B010302021D6C020003037A6C2532694C |
:100B00002E25316956002533642563202530336452 |
:100B10006D00537461747573004552524F523A2000 |
:100B200025326400253469202532693A253032693E |
:100B3000002534696D25630025336920253369203C |
:100B40002533692025336900253369202533692041 |
:100B5000253369202533690054656D7065726174B1 |
:100B600075726573202020200025634320202020FB |
:100B700020002532692E2531695620202533692E23 |
:100B8000253169410025346957202536696D416852 |
:100B9000002532756D2F73205361743A256420004F |
:100BA00020203344004E6F4678004447505300489D |
:100BB0006F6D653A2533646D202533642563004EDF |
:100BC0006F204E6176694374726C21000A0D77774D |
:100BD000772E4D696B726F4B6F707465722E646502 |
:100BE0002028632920486953797374656D73204701 |
:100BF0006D6248000A0D74686520757365206F6624 |
:100C0000207468697320736F6674776172652069F8 |
:100C100073206F6E6C79207065726D697474656491 |
:100C2000200A0D6F6E206F726967696E616C204DCE |
:100C3000696B726F4B6F707465722D486172647767 |
:100C4000617265004143542044534C004A65746905 |
:100C500020736174656C6C6974005370656B747299 |
:100C6000756D20736174656C6C697420284C6F77A6 |
:100C7000207265736F6C7574696F6E2900537065AF |
:100C80006B7472756D20736174656C6C6974202867 |
:100C90003230343829005370656B7472756D20736F |
:100CA0006174656C6C6974004D756C746973696707 |
:100CB0006E616C2050504D000A0D52656365697677 |
:100CC00065723A2000756E6B6E6F776E2E205573CD |
:100CD000696E672050504D2E2E2E006E6F7420735B |
:100CE0007570706F727465642062792068617264D7 |
:100CF0007761726521000A0D3D3D3D3D3D3D3D3D25 |
:100D00003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D13 |
:100D10003D3D3D3D3D3D3D3D3D3D3D000A0D466C6B |
:100D200069676874436F6E74726F6C0A0D48617204 |
:100D300064776172653A25642E25640A0D536F66E7 |
:100D400074776172653A5625642E25642563200008 |
:100D50000A0D3D3D3D3D3D3D3D3D3D3D3D3D3D3D26 |
:100D60003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DB3 |
:100D70003D3D3D3D3D0011241FBECFEFD0E1DEBF24 |
:100D8000CDBF11E0A0E0B1E0E2E2F2EF02C00590D9 |
:100D90000D92A23FB107D9F718E0A2EFB1E001C070 |
:100DA0001D92A43BB107E1F76AEAE2E0F0E081E2DC |
:100DB000809357007491AE014F5F5F4F20EF37EF84 |
:100DC000DA019FE0F9012F5F3F4F84918D9391509D |
:100DD00097FFF8CF773911F40000FECFFA019EE0BB |
:100DE000819168276095915097FFFACF888968179D |
:100DF00021F0773911F40000FECF0E94C2070C9455 |
:100E000010790C94000080911906E82FFF27EE0F4F |
:100E1000FF1FED5BF84F808191818D5E9F4F14F035 |
:100E200010920301808191818A5B9F4FCCF4809165 |
:100E300003018823A9F481E08093030180915C047D |
:100E40008F5F80935C04853038F088EE93E0909358 |
:100E500025028093240204C066E970E00E946E3788 |
:100E600080915C0499279093EA058093E9050895A1 |
:100E70001F93CF93DF93182F882389F082EF90E0A0 |
:100E80009F938F9386EF92E19F938F93E091280435 |
:100E9000F091290409950F900F900F900F90809179 |
:100EA0003C06823308F044C084EF91E00E941C1796 |
:100EB000EC01112329F0CE010E9425178823D9F3D4 |
:100EC000C2E0D0E026E530E080911E0190911F0144 |
:100ED0008217930730F02196255D3F4FC730D1052B |
:100EE00098F380913C069927C89F9001C99F300DC7 |
:100EF000D89F300D1124209300011123D9F068EC04 |
:100F000070E08C2F0E946E37DF93CF938AEF90E0D2 |
:100F10009F938F9386EF92E19F938F93E0912804A4 |
:100F2000F091290409958DB79EB706968DBF02C032 |
:100F300080930001112311F1809100016AE00E9469 |
:100F40006378892F99279F938F93809100010E9446 |
:100F5000637899279F938F9385E091E09F938F9378 |
:100F600086EF92E19F938F93E0912804F0912904FA |
:100F700009952DB73EB7285F3F4F2DBFDF91CF9129 |
:100F80001F910895CFEFD0E1DEBFCDBF8824992413 |
:100F900014B815B807EE13E00253104017FFFCCF4A |
:100FA000189B06C0199B02C08DE007C08BE005C0EE |
:100FB000199B02C084E101C08AE08093020181E8AC |
:100FC00087B93E9A8FEF88B98BE184B981E085B902 |
:100FD0008EE38AB987E48BB9469A84B7877F84BF4A |
:100FE000809160008861809360001092600084ECC2 |
:100FF00099E0909325028093240210921803109296 |
:101000001703109248071092470710921A03109284 |
:10101000190310921C0310921B032091020124312A |
:1010200028F084EC94E0A0E0B0E004C08BE095E010 |
:10103000A0E0B0E08093960190939701A09398016F |
:10104000B09399012A3011F0243110F0289801C092 |
:10105000289A0E9485170E9456170E94FE120E942D |
:10106000E8330E94B51A81E00E944B2F0E943E6334 |
:101070000E94696D0E94F774809102018C3010F417 |
:10108000299A01C0299878940E94652E80916C025B |
:10109000826080936C0210926F020E94904284EFF3 |
:1010A00091E00E941C178C0180916C0280FD05C0AC |
:1010B000C8010E9425178823B9F38FE191E09F931F |
:1010C0008F93B6EFAB2EB2E1BB2EBF92AF92E09101 |
:1010D0002804F0912904099580EA9FE00E941C17DA |
:1010E0008C01C0E0D0E00F900F900F900F90A5EE14 |
:1010F000EA2EA6E0FA2EF9E9CF2EF6E0DF2E0E94C6 |
:10110000904280916C0280FD05C0C8010E942517A5 |
:101110008823B9F3F60180811816ACF40BC00E9445 |
:10112000904280916C0280FD05C0C8010E94251785 |
:101130008823B9F3C8010E942517882321F4F701F9 |
:101140008081882364F7F701808187FF18C021968A |
:10115000DF93CF93219781E391E09F938F93BF9289 |
:10116000AF92E0912804F091290409958091F20151 |
:101170008F5F8093F2018DB79EB706968DBF219643 |
:10118000E4E0F0E0CE0EDF1E88E090E0E80EF91E0D |
:10119000CC30D10508F4B3CFC0E0D0E002EE16E0C9 |
:1011A000E9E9EE2EE6E0FE2EF801838187FD1CC002 |
:1011B000F70180811816C4F42196DF93CF9321970D |
:1011C00084E391E09F938F9386EF92E19F938F93B7 |
:1011D000E0912804F0912904099582E0809322028D |
:1011E0008DB79EB706968DBFF80183818078838383 |
:1011F000219684E090E0E80EF91E085F1F4FCC3086 |
:10120000D10590F282E591E09F938F93C6EFD2E1F2 |
:10121000DF93CF93E0912804F091290409959091F0 |
:1012200017068091F2010F900F900F900F90981772 |
:1012300028F48091420480618093420488E791E021 |
:101240009F938F93DF93CF93E0912804F09129042B |
:10125000099588EE93E00E941C178C010E94BB1A2E |
:101260000F900F900F900F90C8010E9425178823B0 |
:10127000D9F388E991E09F938F93DF93CF93E09127 |
:101280002804F0912904099580E00E94303880916B |
:1012900002010F900F900F900F908A3011F084315F |
:1012A00010F0289801C0289A80ED97E090932502CD |
:1012B0008093240285E580935E048EE090E00E9496 |
:1012C0009A2C9927182F00278FE090E00E949A2CE3 |
:1012D000080F111D1093F8010093F7018AE090E0C8 |
:1012E0000E949A2C9927182F00278BE090E00E94EB |
:1012F0009A2C080F111D1093F6010093F5010F5F52 |
:101300001F4F39F08091F7019091F8018F5F9F4F47 |
:1013100041F41092F8011092F7011092F601109228 |
:10132000F5018091F5019091F6019F938F93809143 |
:10133000F7019091F8019F938F938DE991E09F932E |
:101340008F93DF93CF93E0912804F09129040995BE |
:101350008DB79EB708968DBF80EC91E09F938F93D9 |
:10136000DF93CF93E0912804F091290409958091AF |
:1013700025060F900F900F900F90E0912804F091A8 |
:10138000290482FF07C08CEC91E09F938F93DF9339 |
:10139000CF9308C088ED91E09F938F9386EF92E101 |
:1013A0009F938F9309950F900F900F900F900E942D |
:1013B000D91F88E893E1909393018093920181E093 |
:1013C00080935D040E94380780913F060E945D74FF |
:1013D0008AEE91E09F938F93DF93CF93E09128045F |
:1013E000F0912904099580ED97E00E941C178C016B |
:1013F0008AEF90E00E941C17EC0183E08093C10506 |
:101400000F900F900F900F908091FA018111FFCFF4 |
:10141000CE010E942517882339F084E690E00E94CF |
:101420001C17EC010E94B37580912802882309F4EF |
:10143000D5C180911001882309F4D0C110922802EF |
:1014400080915C04882319F00E94030702C00E9467 |
:101450006A450E949042209102012A3011F0243105 |
:1014600010F0289801C0289A80911D0390914204A1 |
:10147000882339F080911D03815080931D03977F4D |
:101480000AC080916F00806280936F0010924407C1 |
:10149000109243079860909342048091920190913A |
:1014A000930101979093930180939201809192010F |
:1014B00090919301892B21F080916D028823C9F1CD |
:1014C0008091920190919301892BD9F40E94752FFC |
:1014D00085E090E090939301809392018091FB05C9 |
:1014E0009091FC0501969093FC058093FB058091FB |
:1014F00042048160809342048091C205826080939F |
:10150000C20580910801909109018F5F9F4F19F5E5 |
:10151000809114038823F9F080E197E290932502EB |
:101520008093240280E890E0909309018093080161 |
:1015300012C02A3011F0243110F0289801C0289AE6 |
:101540008091240290912502892B29F480914204F4 |
:101550008E7F8093420480912802882309F03EC147 |
:1015600080910E01882311F00E949C170E94411364 |
:101570000E947C0EC8010E942517882309F42AC105 |
:101580000C5E1F4F80916D0290914204882339F0C8 |
:101590009260909342048091C20582600CC09D7F4E |
:1015A000909342048091920190919301079728F0C3 |
:1015B0008091C2058D7F8093C205809192019091A8 |
:1015C0009301079728F0809142048E7F8093420414 |
:1015D00080910501882321F081508093050125C069 |
:1015E000809368041092F5021092F4021092F302B4 |
:1015F0001092F2021092F1021092F0028091080112 |
:10160000909109018F5F9F4F81F480911D03882382 |
:1016100061F488E99AE3909325028093240280E0A4 |
:101620009CE090930901809308018091E901893C35 |
:1016300048F081508093E901809142048B7F809330 |
:10164000420430C0809121088823E1F08091420457 |
:1016500084608093420480910801909109018F5F1A |
:101660009F4F81F480911403882361F088E99AE305 |
:10167000909325028093240280E098EA90930901D8 |
:10168000809308011092FA031092F9031092F80364 |
:101690001092F7038FEF9FEF90934F0880934E08BF |
:1016A0001092E90180910001282F332780911E01BB |
:1016B00090911F0182179307CCF48091E902806218 |
:1016C0008093E90280910801909109018F5F9F4FFB |
:1016D000C1F480E797E1909325028093240280E093 |
:1016E00093E090930901809308010BC0809124023C |
:1016F00090912502892B29F48091E9028F7D8093B6 |
:10170000E9020E944A6784E08093230280911403D7 |
:10171000882329F45AEA852E55E0952E12C080912F |
:10172000F9018F5F8093F901813359F41092F90127 |
:101730008091F3019091F40101969093F4018093CC |
:10174000F3010894811C911CF2E78F16FBE09F06C1 |
:1017500009F040C0882499242091F7013091F801C4 |
:101760002F5F3F4F3093F8012093F7018091F501EF |
:101770009091F60101969093F6018093F501832FE5 |
:101780009927682F8EE090E00E94A22C8091F701AB |
:101790009091F8019070682F8FE090E00E94A22C49 |
:1017A0008091F5019091F601892F9927682F8AE0A1 |
:1017B00090E00E94A22C8091F5019091F60190702A |
:1017C000682F8BE090E00E94A22C84E190E00E94C0 |
:1017D0001C178C010E949A670E94806D80912302E1 |
:1017E000882309F011CE0E945F630ECE1F920F92E4 |
:1017F0000FB60F9211248F939F93EF93FF938091D5 |
:1018000007018823E1F4809114029091150201965A |
:101810009093150280931402FC01E95EFA4FE08177 |
:10182000ED3019F08A3A910539F4109215021092B0 |
:10183000140281E080930701E093C60004C0109277 |
:10184000150210921402FF91EF919F918F910F90CA |
:101850000FBE0F901F9018951F920F920FB60F9208 |
:1018600011242F933F934F935F936F937F938F93A5 |
:101870009F93AF93BF93CF93EF93FF9390E08091AB |
:10188000FA01813029F48091C6008093CE00CCC04B |
:101890008091FA01823029F48091C60080936B0414 |
:1018A000C3C08091C60080930C0250911A025A3A2C |
:1018B00010F090931B0280910C028D3009F065C0EE |
:1018C00080911B02823009F060C090931B02852F2B |
:1018D000992785599B4FFC01329740812091160230 |
:1018E00030911702241B3109DC0111978C91281BC0 |
:1018F0003109C9019F70909317028093160246E048 |
:10190000969587954A95E1F7982F935C90931802E6 |
:101910002F733070235C209319028081981729F46B |
:101920008C91281711F491E006C090E08091090293 |
:101930008F5F80930902C0910B02CC2309F074C021 |
:10194000992309F471C081E080930B02580F5093E2 |
:1019500008025150E52FFF27E559FB4F8DE08083AA |
:1019600080916D04823509F05FC00E94D91F88E123 |
:1019700090E02CE00FB6F894A895809360000FBE1D |
:1019800020936000C09322024FC020911B02822F3F |
:10199000992781309105F9F0823091051CF4892B4B |
:1019A00021F040C0029711F13DC080910C028332BA |
:1019B00039F480910B02882319F481E080931B0293 |
:1019C00080910C0280936B0481E080931A028091D5 |
:1019D0000C02992722C02F5F20931B02E52FFF27BF |
:1019E000E559FB4F80910C02808309C0E52FFF274A |
:1019F000E559FB4F80910C0280835A3A20F45F5FD7 |
:101A000050931A0202C010921B0220910C02809186 |
:101A1000160290911702820F911D909317028093E6 |
:101A2000160202C010921B02FF91EF91CF91BF915D |
:101A3000AF919F918F917F916F915F914F913F9166 |
:101A40002F910F900FBE0F901F901895AC01A0E042 |
:101A5000B0E09D01A817B90748F4E7E1F5E08191EE |
:101A6000280F311D1196A417B507C8F33F70FD016B |
:101A7000E95EFA4FC90156E0969587955A95E1F7C8 |
:101A8000835C80831196FD01E95EFA4F2F733070FD |
:101A9000822F835C8083A85EBA4F8DE08C93109276 |
:101AA0000701809117058093C6000895A0E0B0E07B |
:101AB000ECE5FDE00C94DC782C859D850E85BB243F |
:101AC00083E2809317059F59909318052093190579 |
:101AD00033E0E32EF12C002309F49EC0CF84D88894 |
:101AE000BE016D5E7F4FA989BA890150109709F434 |
:101AF00093C01097B9F0F601EB0DF11DB3949081EE |
:101B0000119791F4002349F1FB016E5F7F4FDB01D8 |
:101B1000C080D1806E5F7F4F0D90BC91A02DBB2403 |
:101B2000015002C090E019C01097B9F0F601EB0D1A |
:101B3000F11DB3944081119791F4002341F1FB0111 |
:101B40006E5F7F4FDB01C080D1806E5F7F4F0D9055 |
:101B5000BC91A02DBB24015002C040E018C01097DA |
:101B6000B1F0F601EB0DF11DB3941081119781F4E2 |
:101B7000002371F0FB013296DB01CD90DC90BF01B8 |
:101B80006E5F7F4FA081B181BB24015001C010E086 |
:101B9000F701E95EFA4F892F86958695835C8083ED |
:101BA0000894E11CF11CF701E95EFA4F892F99278F |
:101BB0008370907024E0880F991F2A95E1F75527CC |
:101BC0009A0194E0369527959A95E1F7822B835CEC |
:101BD00080830894E11CF11CF701E95EFA4F4F7015 |
:101BE0005070440F551F440F551F812F992726E031 |
:101BF000969587952A95E1F7842B835C80830894DA |
:101C0000E11CF11CF701E95EFA4F1F73135C1083AE |
:101C10000894E11CF11C6ACFC7010E94260DE9E07F |
:101C20000C94F878A3E07A2F4091080246504423A0 |
:101C300009F458C0E72FFF27E559FB4F80818D53EA |
:101C40007F5FE72FFF27E559FB4F20812D537F5FF3 |
:101C5000E72FFF27E559FB4F30813D537F5FE72F8B |
:101C6000FF27E559FB4F60816D537F5F9927880FF0 |
:101C7000991F880F991F522F52955F70582B822FF2 |
:101C800099278F709070F4E0880F991FFA95E1F70B |
:101C9000232F26952695282B832F992783709070C4 |
:101CA000E6E0880F991FEA95E1F7682B41504F3F16 |
:101CB000C9F0EA2FFF27E559FB4F5083AF5F415032 |
:101CC0004F3F81F0EA2FFF27E559FB4F2083AF5F9D |
:101CD00041504F3F39F0EA2FFF27E559FB4F608312 |
:101CE000AF5FA5CF8EE694E0909307028093060243 |
:101CF000A350A09305020895A2E0B0E0E2E8FEE060 |
:101D00000C94E27880910B02882309F46BC40E9442 |
:101D1000120E80916C04823609F025C380916D0407 |
:101D200099278037910509F4C1C081379105C4F422 |
:101D30008A36910509F48DC28B36910544F48B34B3 |
:101D4000910571F18636910509F46CC10CC38D368D |
:101D5000910509F47BC08E36910509F45FC003C379 |
:101D600084379105D1F1853791054CF48137910580 |
:101D700009F4A3C08337910509F4F1C0F4C2873791 |
:101D8000910509F428C2883791052CF4853791050F |
:101D900009F4E4C1E8C28937910509F47AC1E3C2C4 |
:101DA000E0910602F09107028081918190933003C7 |
:101DB00080932F0320912D0330912E03821B930BD0 |
:101DC000845E9D4F68E671E00E948378845B90405A |
:101DD00090932C0380932B03C6C280910802A0919C |
:101DE0000602B0910702853140F080E1E6E4F4E0BC |
:101DF0000D9001928A95E1F70DC08D919D910D9006 |
:101E0000BC91A02D8093460490934704A09348046E |
:101E1000B093490480EF809303024BC08091070187 |
:101E20008823E1F38DE490E09F938F938CE896E014 |
:101E30009F938F9381E08F938F938EE48F930E9473 |
:101E4000560D8DB79EB707968DBF8DC2A091060225 |
:101E5000B09107021C91113081F48DE4ECE8F6E0BA |
:101E60000D9001928A95E1F70E94A22D198380912D |
:101E700042048F7E8093420401C019828091070141 |
:101E80008823E1F381E090E09F938F93CE01019648 |
:101E90009F938F9381E08F938F938DE48F930E9414 |
:101EA000560DADB7BEB71796ADBF5DC281E080934A |
:101EB0000E028FEF8093050156C2E0910602F09169 |
:101EC0000702E0818E2F8A508A3058F48983882354 |
:101ED00011F481E003C0863010F085E0898361E071 |
:101EE0000EC08E2F84518A3070F48983882311F4B8 |
:101EF00081E003C0863010F085E0898360E089814D |
:101F00000E94222E12C0E983EF3F19F40E94052E91 |
:101F100089838981882311F481E003C0863010F021 |
:101F200085E0898389810E94B82C809107018823EC |
:101F3000E1F383E790E09F938F9388E196E09F938E |
:101F40008F9381E090E09F938F93CE0101969F93B2 |
:101F50008F9382E08F9381E08F9381E572C120910E |
:101F6000060230910702D9018C918150853008F02A |
:101F700040C0F90181818535E1F52F5F3F4F83E74F |
:101F8000E8E1F6E0D9010D9001928A95E1F7F901B7 |
:101F900082910E94212D809159069927AA27BB275B |
:101FA000BC01CD0124EC39E040E050E00E944478CF |
:101FB000DC01CB018093D5019093D601A093D7018A |
:101FC000B093D80180915A069927AA27BB27BC0154 |
:101FD000CD010E944478DC01CB018093D101909324 |
:101FE000D201A093D301B093D4010E94052E89831E |
:101FF00001C01982809107018823E1F381E090E01C |
:102000009F938F93CE0101969F938F9381E08F933F |
:102010008F9383E58F930E94560D8DB79EB70796D9 |
:102020008DBF26C0E0910602F0910702E0818E2F5D |
:102030008150853018F48E2F0E94B82C0E94052EF6 |
:102040008983809107018823E1F381E090E09F93E9 |
:102050008F93CE0101969F938F9381E08F938F93FF |
:1020600086E48F930E94560DADB7BEB71796ADBFED |
:1020700080911403882329F46EE670E089810E9420 |
:102080006E3780E00E94380780913F060E945D74A1 |
:102090006AC1E0910602F09107028081992787FDCD |
:1020A000909590935E0780935D078181992787FDC6 |
:1020B00090959093600780935F078281992787FDB1 |
:1020C000909590936207809361078381992787FD9C |
:1020D000909590936407809363078481992787FD87 |
:1020E000909590936607809365078581992787FD72 |
:1020F000909590936807809367078681992787FD5D |
:10210000909590936A07809369078781992787FD47 |
:10211000909590936C0780936B078085992787FD36 |
:10212000909590936E0780936D078185992787FD21 |
:1021300090959093700780936F078285992787FD0C |
:10214000909590937207809371078385992787FDF7 |
:102150009095909374078093730705C1E0910602F0 |
:10216000F091070280810E9441338A83882319F409 |
:1021700081E0898301C01982809107018823E1F3FE |
:1021800088E090E09F938F938AED96E09F938F93E2 |
:1021900021E030E03F932F93809106029091070257 |
:1021A0009F938F933F932F93CE0102969F938F938C |
:1021B0003F932F93CE01820F931F9F938F9384E0C1 |
:1021C0008F9381E08F9385E58F930E94560DEDB735 |
:1021D000FEB773963CC080910502893008F4C3C0F5 |
:1021E00020910602309107022F5F3F4F88E0AAED51 |
:1021F000B6E0F90101900D928A95E1F7D9018E912F |
:102200000E9497328A83882319F481E0898301C070 |
:102210001982809107018823E1F321E030E03F93A8 |
:102220002F93CE0102969F938F933F932F93CE01CE |
:10223000820F931F9F938F9382E08F9381E08F9300 |
:1022400087E58F930E94560DEDB7FEB73B96EDBF25 |
:102250008AC00E9410748983823019F0843009F09A |
:1022600082C0F8948091C1008F738093C1008091E7 |
:10227000C9008F738093C9008091C100877E8093CD |
:10228000C1008091C900877E8093C9008091C800F9 |
:1022900087FF03C08091CE00F9CF8091C00087FFF7 |
:1022A00003C08091C600F9CFE0910602F0910702C9 |
:1022B0008081882359F581E08093FA011092CD0046 |
:1022C00080E490E08093CC008091CD008093C500A5 |
:1022D0008091CC008093C4008091CA008F7D809350 |
:1022E000CA008091CA008F7E8093CA008091C90085 |
:1022F0008B7F8093C9008091CA0084608093CA005C |
:102300008091CA0082608093CA0003C082E08093FB |
:10231000FA018091CA00877F8093CA008091C20031 |
:10232000877F8093C2008091C9008E7F8093C9000F |
:102330008091C10088618093C1008091C90088614B |
:102340008093C9008091C10080688093C100809112 |
:10235000C90080688093C90010926E0010926F00CF |
:1023600010927000789480916D04992784369105BD |
:1023700009F4CDC085369105ACF48136910509F498 |
:1023800081C0823691052CF48B34910509F45DC02F |
:1023900021C18236910509F482C08336910509F482 |
:1023A00091C018C18C36910509F4FFC08D36910596 |
:1023B0004CF48736910509F40AC18836910509F471 |
:1023C000C4C008C18437910529F08637910509F406 |
:1023D000FAC000C180910802A0910602B0910702E4 |
:1023E000803140F080E1E6E4F4E00D9001928A95BE |
:1023F000E1F70DC08D919D910D90BC91A02D809322 |
:10240000460490934704A0934804B09349048091F4 |
:1024100007018823E1F31F92809104018F9384E5E3 |
:102420008F930E94560D8AEF809303028FEF809363 |
:10243000050180EA9FE00E941C179093FC018093A5 |
:10244000FB010F900F900F90C5C0E0910602F09134 |
:102450000702808191819093300380932F03209114 |
:102460002D0330912E03821B930B845E9D4F68E6F3 |
:1024700071E00E948378845B904090932C0380935A |
:102480002B03A8C0E0910602F0910702808180939F |
:102490000601803298F08FE1809306010FC0A09171 |
:1024A0000602B09107028BE0EEE5F4E00D90019298 |
:1024B0008A95E1F780916704809303068FEF8093FC |
:1024C000050188C08091FF0190910002892B89F459 |
:1024D000E0910602F0910702E081EE2351F08AE0DC |
:1024E000E89FC00111240E941C1790933904809327 |
:1024F0003804E0910602F091070290818AE0989FEB |
:10250000C0011124909300028093FF0115C08FEF4A |
:1025100080930501E0910602F091070290818AE024 |
:10252000989FC00111249093020280930102892B8D |
:1025300019F081E08093100280EA9FE00E941C174E |
:102540009093FC018093FB0145C08FEF80930501C0 |
:10255000E0910602F0910702908197FD08C082E0A9 |
:1025600080930D021092FE011092FD011AC0909509 |
:1025700080916502892B8093650291818AE0989F02 |
:10258000C00111249093FE018093FD0184E08093AB |
:102590000D0280EA9FE00E941C179093FC0180933B |
:1025A000FB0181E08093110215C08FEF809305013C |
:1025B000E0910602F091070280818093660281E03B |
:1025C0008093120207C081E080930F0203C081E074 |
:1025D0008093130210920B021092070210920602CF |
:1025E00010920502E3E0CE5F0C94FE78982F809164 |
:1025F000C00085FFFCCF9093C60008950F931F93F2 |
:1026000088E18093C1008091C00082608093C00007 |
:102610008091C10080688093C1008091C100806476 |
:102620008093C10000E010E00093C5008AE290E0D2 |
:102630008093C40080910102909102020E941C17B5 |
:1026400090933B0480933A048CED90E00E941C1719 |
:1026500090936A048093690410923C0482E580930D |
:102660003D04109240048BE080933E0410923F049E |
:102670001093070200930602109205021F910F911A |
:102680000895A0E1B0E0E7E4F3E10C94DF788091F5 |
:102690000701882309F4C1C28091FB019091FC01DC |
:1026A0000E942517882361F01092FE011092FD010F |
:1026B0001092020210920102109200021092FF0189 |
:1026C0008091FD019091FE01892B41F080911505CB |
:1026D000909116050E942517882329F480911102F4 |
:1026E000882309F460C080910701882309F45BC046 |
:1026F00080910D0201E211E08430A8F00E94ED1FEC |
:1027000080E590E09F938F931F930F9381E08F93C9 |
:102710008F9388E48F930E94560D2DB73EB7295FA3 |
:102720003F4F2DBF34C01092670282E194E09F9327 |
:102730008F9382EE9FE19F938F93E0912804F09115 |
:102740002904099584E190E09F938F931F930F9341 |
:1027500081E090E09F938F938DE092E09F938F9321 |
:1027600082E08F9381E08F9388E48F930E94560DCF |
:1027700080910D02982F8F5F80930D022DB73EB789 |
:10278000215F3F4F2DBF943010F010920D028091C9 |
:10279000FD019091FE010E941C17909316058093F5 |
:1027A00015051092110280911202882351F1809137 |
:1027B0000701882331F10E94ED1F80E590E09F938F |
:1027C0008F9381E291E09F938F9321E030E03F93DC |
:1027D0002F9380E291E09F938F933F932F9386E610 |
:1027E00092E09F938F9383E08F9381E08F938CE4AB |
:1027F0008F930E94560D109212028DB79EB70F96BE |
:102800008DBF80910F028823D1F08091070188232A |
:10281000B1F08AE090E09F938F938CE394E09F93D4 |
:102820008F9381E08F938F9386E58F930E94560D4F |
:1028300010920F022DB73EB7295F3F4F2DBF8091F9 |
:1028400013028823D9F0809107018823B9F08BE027 |
:1028500090E09F938F938EE594E09F938F9381E018 |
:102860008F93809104018F9387E48F930E94560D7C |
:10287000109213028DB79EB707968DBF80916904A1 |
:1028800090916A040E942517882309F461C0809101 |
:102890000701882309F45CC0809134069927880FCA |
:1028A000991F880F991F7C010027F7FC0095102FB6 |
:1028B0008091710390917203A0917303B09174039E |
:1028C000BC01CD01A80197010E94B878309357044C |
:1028D000209356048091690390916A03A0916B0341 |
:1028E000B0916C03BC01CD01A80197010E94B8789A |
:1028F00030935904209358048091FE0280935A0427 |
:102900008091FD0280935B0488E090E09F938F9319 |
:1029100086E594E09F938F9381E08F9383E08F937C |
:102920008BE68F930E94560D80915C042DB73EB7C5 |
:10293000295F3F4F2DBF853018F086E080935C04FF |
:1029400083E690E00E941C1790936A0480936904C8 |
:102950008091010290910202892B41F080913A040A |
:1029600090913B040E942517882321F48091100246 |
:10297000882339F180910701882319F10E94643678 |
:1029800082E490E09F938F9381EC95E09F938F93E7 |
:1029900081E08F938F9384E48F930E94560D109261 |
:1029A00010028DB79EB707968DBF8091010290915E |
:1029B0000202009731F00E941C1790933B04809311 |
:1029C0003A048091FF0190910002892B09F4B8C06C |
:1029D00080913804909139040E942517882309F4C6 |
:1029E000AFC080910701882309F4AAC08091340602 |
:1029F0009927880F991F880F991F7C010027F7FCE2 |
:102A00000095102F8091710390917203A091730330 |
:102A1000B0917403BC01CD01A80197010E94B87860 |
:102A200030932B0420932A048091690390916A03C8 |
:102A3000A0916B03B0916C03BC01CD01A80197017B |
:102A40000E94B87830932D0420932C04209109081B |
:102A500030910A0840910B0850910C08DA01C90125 |
:102A600063E0880F991FAA1FBB1F6A95D1F7820FD9 |
:102A7000931FA41FB51F820F931FA41FB51F209182 |
:102A80009601309197014091980150919901BC01B4 |
:102A9000CD010E94B87830932F0420932E048091AA |
:102AA000390390913A03A0913B03B0913C0339E084 |
:102AB000B595A795979587953A95D1F7809330046A |
:102AC0008091350390913603A0913703B09138037C |
:102AD00029E0B595A795979587952A95D1F7809385 |
:102AE00031048091410390914203A0914303B0913E |
:102AF000440309E0B595A795979587950A95D1F771 |
:102B0000809332048EE090E09F938F938AE294E06A |
:102B10009F938F9381E08F938F9383E48F930E9491 |
:102B2000560D8091FF01909100020E941C17909316 |
:102B30003904809338042DB73EB7295F3F4F2DBF2E |
:102B4000809106018F3F71F1992714E0880F991F3A |
:102B50001A95E1F78E5E9D4F40E150E0BC01CE0139 |
:102B600001960E94977680E190E09F938F93CE012B |
:102B700001969F938F9381E090E09F938F9386E0DF |
:102B800091E09F938F9382E08F9381E08F9381E414 |
:102B90008F930E94560D8FEF809306018DB79EB7DD |
:102BA0000B968DBF809103068823D1F08091070199 |
:102BB0008823B1F081E090E09F938F9383E096E0CB |
:102BC0009F938F9381E08F938F9382E48F930E94E2 |
:102BD000560D109203062DB73EB7295F3F4F2DBF0C |
:102BE00080910E028823C9F0809107018823A9F003 |
:102BF00084E390E09F938F9383E497E09F938F9378 |
:102C000081E08F938F9380E58F930E94560D1092F1 |
:102C10000E028DB79EB707968DBFE6E0C05F0C949D |
:102C2000FB781F920F920FB60F9211242F933F93B0 |
:102C30005F936F937F938F939F93AF93BF93EF9324 |
:102C4000FF9320E080912302882329F080912302C2 |
:102C500081508093230280910B04882319F08150C6 |
:102C600080930B0480912B02815080932B028F3F25 |
:102C700009F05BC089E080932B028091290290913A |
:102C80002A02019690932A028093290280910F01D3 |
:102C90008F5F817080930F01882319F481E0809306 |
:102CA0002802349903C081E080932C028091240291 |
:102CB00090912502892B21F1809124029091250287 |
:102CC0000B9750F080912402909125020A979093DF |
:102CD00025028093240204C010922502109224023F |
:102CE00080912402909125022091080130910901E0 |
:102CF00082239323892B11F021E008C020E006C035 |
:102D00008FEF9FEF9093090180930801809102015A |
:102D1000222331F08A3011F45A9A07C0479A05C02D |
:102D20008A3011F45A9801C0479880912C02882368 |
:102D300009F472C02091E901222309F06DC080914D |
:102D4000250683FF69C086B19927FC01E071F07008 |
:102D500084FF14C0809126029091270201969093DF |
:102D60002702809326028091260290912702895E95 |
:102D7000934008F451C020932C024EC0809126024B |
:102D800090912702892B09F443C0809126029091EB |
:102D900027028A569140E0F5809126029091270201 |
:102DA00069E270E00E946F7880912602909127027C |
:102DB000860F971F90932702809326028091260208 |
:102DC000909127020B9750F0809126029091270254 |
:102DD0000A979093300380932F0304C0F09330033D |
:102DE000E0932F0380912F039091300320912D03C6 |
:102DF00030912E03821B930B845E9D4F68E671E039 |
:102E00000E948378845B904090932C0380932B03E3 |
:102E10001092270210922602FF91EF91BF91AF917D |
:102E20009F918F917F916F915F913F912F910F9023 |
:102E30000FBE0F901F9018952091290230912A0201 |
:102E4000280F391FC9010196089520912902309158 |
:102E50002A02821B930B892F992786958074907084 |
:102E60000895CF93DF930E941C17EC01CE010E94BE |
:102E700025178823D9F3DF91CF910895CF93DF935E |
:102E80000E941C17EC0109C080911001882329F0D1 |
:102E9000909310018FEC80937A00CE010E94251749 |
:102EA000982F882389F3DF91CF9108959FB7F894E5 |
:102EB0005F983E9A469A8091B0008F708093B000E0 |
:102EC0008091B00083608093B0008091B1008B73DB |
:102ED0008093B1008091B1008B608093B10010921B |
:102EE000B2008FEF8093B3008091B0008068809330 |
:102EF000B000809170008A7F809370008091700094 |
:102F00008260809370009FBF08958AE090E00E94E5 |
:102F10001C17909332028093310282E085BD83EAD0 |
:102F200084BD17BC84EB88BD86E086BD80916E00B1 |
:102F3000816080936E000895A0E0B0E0E2EAF7E1DE |
:102F40000C94DE7880914F06E82FFF27E456FE4F61 |
:102F50009681D08080910E01A92FBB27A7FDB09547 |
:102F6000CB2FDB2F813009F0C9C020917103309144 |
:102F700072034091730350917403BD01CE010E940E |
:102F8000447897FF04C061587F4F8F4F9F4F7B015C |
:102F90008C0167E015950795F794E7946A95D1F74A |
:102FA0008D2D992787FD9095A92FB92F2091690321 |
:102FB00030916A0340916B0350916C03BC01CD01C9 |
:102FC0000E94447897FF04C061587F4F8F4F9F4FF6 |
:102FD00057E095958795779567955A95D1F7F801BC |
:102FE000E701C61BD70BE80BF90B80914606992722 |
:102FF000AA27BB27BC01CD019E01AF010E944478E6 |
:1030000097FF04C061507E4F8F4F9F4FFC01EB0133 |
:1030100049E0F595E795D795C7954A95D1F7809101 |
:10302000C101992736E0880F991F3A95E1F7409141 |
:103030000C0150910D0120914E063327841B950BF6 |
:10304000B9010E94837880910C0190910D01860F47 |
:10305000971F90930D0180930C0180910C0190912A |
:103060000D0197FD0F9624E0959587952A95E1F738 |
:1030700090931F0280931E0280917D0680FF07C0FF |
:1030800080911E0290911F028C0F9D1F06C080919F |
:103090001E0290911F028C1B9D0B90931F02809328 |
:1030A0001E0280914706282F3327220F331F220F3D |
:1030B000331F80911E0290911F02821793077CF0AC |
:1030C00080914806282F3327220F331F220F331FEA |
:1030D00080911E0290911F022817390724F4309323 |
:1030E0001F0220931E0280910201843108F4C2C0A5 |
:1030F00080910E018F5F80930E01BEC02091690305 |
:1031000030916A0340916B0350916C03BD01CE0175 |
:103110000E94447897FF04C061587F4F8F4F9F4FA4 |
:103120007B018C01C7E015950795F794E794CA9544 |
:10313000D1F78D2D992787FD9095A92FB92F209133 |
:103140007103309172034091730350917403BC0179 |
:10315000CD010E9444789B01AC0197FF04C0215827 |
:103160003F4F4F4F5F4FB7E05595479537952795A0 |
:10317000BA95D1F72E0D3F1D401F511F80914A0671 |
:103180009927AA27BB27BC01CD010E94447897FF4D |
:1031900004C061507E4F8F4F9F4FFC01EB01A9E0AF |
:1031A000F595E795D795C795AA95D1F78091C00178 |
:1031B000992776E0880F991F7A95E1F740910A01E7 |
:1031C00050910B0120914E063327841B950BB901BA |
:1031D0000E94837880910A0190910B01860F971FBE |
:1031E00090930B0180930A0180910A0190910B0149 |
:1031F00097FD0F9664E0959587956A95E1F7909312 |
:103200001D0280931C0280917D0681FF07C0809182 |
:103210001C0290911D028C0F9D1F06C080911C0204 |
:1032200090911D028C1B9D0B90931D0280931C029C |
:1032300080914B06282F3327220F331F220F331F75 |
:1032400080911C0290911D02821793077CF080915F |
:103250004C06282F3327220F331F220F331F809154 |
:103260001C0290911D022817390724F430931D0287 |
:1032700020931C0210920E01E7E0CDB7DEB70C944C |
:10328000FA781F920F920FB60F9211242F933F934B |
:103290004F935F938F939F93EF93FF9380910201DE |
:1032A00090912D02843108F04CC0992309F01CC183 |
:1032B0008091B00086FF24C08091B0008F7B809306 |
:1032C000B00080911E0290911F0287559E4F9093EF |
:1032D00021028093200225E08D3D920718F08CEDAD |
:1032E00095E005C08757914030F487E791E09093CF |
:1032F0002102809320028091200290912102BAC085 |
:103300008091B00080648093B00080914D06282F9A |
:1033100033278DED96E0289FA001299F500D389FFF |
:10332000500D1124CA0120912E0230912F02821BD0 |
:10333000930B909321028093200281E080930E01F1 |
:10334000D0C0992309F0D0C08091B00086FF97C00B |
:103350008091B0008F7B8093B000E0913002EE232B |
:10336000F1F480914D06282F33278DED96E0289FAC |
:10337000A001299F500D389F500D1124CA012091A2 |
:103380002E0230912F02821B930B90932102809387 |
:10339000200210922F0210922E02469AA2C089EAB1 |
:1033A00093E090932102809320028E2F99278330FF |
:1033B0009105D9F08430910534F48130910549F0BC |
:1033C000029761F020C08430910591F0059799F043 |
:1033D0001AC080911E0290911F0204C080911C02AD |
:1033E00090911D0287559E4F1DC08091D70705C043 |
:1033F0008091B10702C08091DF079927880F991F3C |
:10340000880F991FEFCFFF27EE0FFF1FED5BF84FDF |
:1034100020813181220F331F80912002909121025F |
:10342000820F931F909321028093200280912002AB |
:103430009091210255E08D3D950718F08CED95E0B7 |
:1034400005C08757914030F487E791E090932102BF |
:103450008093200220912002309121022C5B304089 |
:10346000309321022093200280912E0290912F020E |
:10347000820F931F90932F0280932E0232C080916F |
:10348000B00080648093B0008CEB90E090932102B8 |
:103490008093200280912E0290912F0284549F4F9E |
:1034A00090932F0280932E0280912202882321F094 |
:1034B00080911D03833320F480912202823011F425 |
:1034C000469801C0469A809130028F5F8093300207 |
:1034D00090914D06981728F481E080930E01109288 |
:1034E000300281E080932D02209120023091210250 |
:1034F00041E02F37340730F08FEF8093B3002F5F18 |
:1035000030400FC02F3F3105C9F0C0F0A9014F5F17 |
:1035100050404F37510550F480E88093B300205855 |
:103520003040309321022093200212C08FEF80930D |
:10353000B30050932102409320020AC080912002E0 |
:103540008093B300109221021092200210922D025B |
:10355000FF91EF919F918F915F914F913F912F91AB |
:103560000F900FBE0F901F90189510927C008FEC5B |
:1035700080937A000895CF93DF931092370283E00F |
:1035800090E00E949A2CC82FDD27C531D10508F0A4 |
:103590002A97C7BD84E690E00E943E1780911401EF |
:1035A000909115018052934010F4C0E0D0E0CA3FE2 |
:1035B000D105F8F4C7BD82E390E00E943E1787E290 |
:1035C00094E09F938F9386EF92E19F938F93E09186 |
:1035D0002804F09129040995809114019091150116 |
:1035E0000F900F900F900F908052934010F0219603 |
:1035F000DECFC09314066C2F83E090E00E94A22CD3 |
:103600008091250680FF0AC0809114068A508B3E67 |
:1036100028F080914104806480934104C7BD8CE20E |
:1036200091E00E943E17DF91CF910895EF92FF92B3 |
:103630001F93CF9310E080ED97E00E941C177C0150 |
:10364000CCE8133019F4CB3008F0C9E010E08091D9 |
:103650004702909148028C5F934024F480911301BB |
:1036600081500AC08091470290914802875094404F |
:1036700034F0809113018F5F8093130101C011E03A |
:1036800080914502909146028C5F934024F4809192 |
:10369000120181500AC080914502909146028750E4 |
:1036A000944034F0809112018F5F8093120101C029 |
:1036B0001F5F80914302909144028C5F934024F4F9 |
:1036C0008091110181500AC080914302909144027F |
:1036D00087509440C4F0809111018F5F8093110155 |
:1036E00013C089E294E09F938F9386EF92E19F93BA |
:1036F0008F93E0912804F091290409950F900F9081 |
:103700000F900F905FC01F5F82E1809372028091E3 |
:103710006C028E7F80936C0285EA8093BC0080915E |
:1037200013018A3040F48091410481608093410408 |
:103730008AE08093130180911301863F40F08091CD |
:10374000410481608093410485EF8093130180914F |
:1037500012018A3040F480914104826080934104D8 |
:103760008AE08093120180911201863F40F080919F |
:10377000410482608093410485EF8093120180911F |
:1037800011018A3040F480914104846080934104A7 |
:103790008AE08093110180911101863F40F0809171 |
:1037A000410484608093410485EF809311018091EE |
:1037B0007202882339F0C7010E942517882309F077 |
:1037C00090CFF5CF109210018FEC80937A0080910A |
:1037D00010018823E1F3CA3020F48AE090E00E94CF |
:1037E0003E17C15009F02DCF86E490E00E943E17AD |
:1037F000CF911F91FF90EF9008951F920F920FB6F7 |
:103800000F921124AF92BF92CF92DF92EF92FF926C |
:103810000F931F932F933F934F935F936F937F93D8 |
:103820008F939F93AF93BF93EF93FF938091500239 |
:10383000282F3327442755278F5F80935002F901A3 |
:103840002231310508F08CC3E25CFF4F0C940A79F9 |
:10385000809178009091790046C080917800909195 |
:1038600079002CC180917800909179009093530257 |
:103870008093520257C180917A0390917B032091EB |
:10388000780030917900821B930B9093050680930A |
:103890000406809104069091050690935D02809342 |
:1038A0005C025EC1809178009091790020917C0348 |
:1038B00030917D03821B930B909313068093120625 |
:1038C000809112069091130690935F0280935E029E |
:1038D00049C380915602909157022091780030910F |
:1038E0007900820F931F909357028093560281E0D4 |
:1038F0003AC3809154029091550220917800309102 |
:103900007900820F931F909355028093540284E0B4 |
:103910002AC380911E0190911F019C01220F331F29 |
:10392000280F391F809178009091790063E070E052 |
:103930000E946F78260F371F369527953695279565 |
:1039400030931F0120931E0185E00DC38091780004 |
:10395000909179004091760350917703841B950BE9 |
:1039600090933E0280933D0280913D0290913E02F1 |
:10397000029704F122E04E3E520784F42091510256 |
:103980002B5F2093510225508091EA029091EB0227 |
:10399000845F914018F4215F20935102809151027D |
:1039A000853684F14F5F5F4F5093770340937603E2 |
:1039B000845626C080913D0290913E028F5F9F4FBA |
:1039C0000CF532E047325307ECF0209151022550BC |
:1039D000209351022B5F8091EA029091EB02845F69 |
:1039E000914018F42F5020935102809151028C394C |
:1039F0004CF44150504050937703409376038C59D8 |
:103A00008093510281E080933C02809178009091F4 |
:103A1000790090930B0680930A0680913D02909165 |
:103A20003E029C01442737FD4095542F809131037D |
:103A300090913203A0913303B0913403820F931F0E |
:103A4000A41FB51F8093310390933203A0933303D7 |
:103A5000B09334032091310330913203409133030A |
:103A60005091340357FF04C021503C4F4F4F5F4FDC |
:103A70000AE055954795379527950A95D1F7809196 |
:103A8000310390913203A0913303B0913403821B30 |
:103A9000930BA40BB50B8093310390933203A09347 |
:103AA0003303B09334032EC1809154029091550298 |
:103AB0002091780030917900820F931F90935502E6 |
:103AC0008093540210924F0250C2809102018A30BA |
:103AD00071F4809178009091790020915202309198 |
:103AE0005302820F931F01969695879517C04091B8 |
:103AF000520250915302843158F020917800309155 |
:103B00007900240F351F8FEF97E0821B930B06C0BF |
:103B10008091780090917900840F951F90934402D2 |
:103B20008093430286E01FC280917A0390917B03C9 |
:103B30002091780030917900821B930B90930506B9 |
:103B400080930406809104069091050620915C0202 |
:103B500030915D02820F931F909342028093410245 |
:103B600087E001C2809178009091790020917C03D8 |
:103B700030917D03821B930B909313068093120662 |
:103B8000809112069091130620915E0230915F029F |
:103B9000820F931F9093400280933F02E3C12091D4 |
:103BA0005602309157028091780090917900280F49 |
:103BB000391F3093570220935602809102018A30B8 |
:103BC00019F4220F331F04C0220F331F220F331F9B |
:103BD000309357022093560220915602309157029B |
:103BE000C90137FD0796A3E095958795AA95E1F75A |
:103BF0009093480280934702809158029091590215 |
:103C0000820F931F97FD0196959587959093590282 |
:103C1000809358022091860330918703821B930B77 |
:103C200090931D0180931C0120914D0230914E0212 |
:103C300080911C0190911D01280F391F37FF02C090 |
:103C40002F5F3F4F3595279530934E0220934D02BD |
:103C50004ECE20915402309155028091780090917F |
:103C60007900280F391F3093550220935402809118 |
:103C700002018A3019F4220F331F04C0220F331FB0 |
:103C8000220F331F30935502209354022091540287 |
:103C900030915502C90137FD079663E095958795E8 |
:103CA0006A95E1F7909346028093450280915A020B |
:103CB00090915B02820F931F97FD019695958795D2 |
:103CC00090935B0280935A02209184033091850384 |
:103CD000821B930B90931B0180931A0120914B023E |
:103CE00030914C0280911A0190911B01280F391FCD |
:103CF00037FF02C02F5F3F4F3595279530934C0219 |
:103D000020934B0283E02FC11092500281E08093F8 |
:103D10001001809133029091340201969093340205 |
:103D200080933302809178009091790090931501EF |
:103D3000809314018091140190911501AA27BB274B |
:103D4000A0906002B0906102C0906202D0906302C5 |
:103D5000A80EB91ECA1EDB1EA0926002B0926102BC |
:103D6000C0926202D0926302809164028F5F80935E |
:103D70006402823108F4F6C0809116019091170117 |
:103D8000A0911801B09119017C018D0123E0EE0C86 |
:103D9000FF1C001F111F2A95D1F7E81AF90A0A0B18 |
:103DA0001B0BEA0CFB1C0C1D1D1D80913702992773 |
:103DB00087FD9095A92FB92FBC01CD0126EC34E2E7 |
:103DC00040E050E00E944478DC01CB01E81AF90A97 |
:103DD0000A0B1B0BD801C7010496A11DB11DB7FF2B |
:103DE00005C0D801C7010B96A11DB11D13E0B59503 |
:103DF000A795979587951A95D1F78093160190937B |
:103E00001701A0931801B093190180910C069091AD |
:103E10000D067C010027F7FC0095102F80911601FC |
:103E200090911701A0911801B0911901E81AF90AAF |
:103E30000A0B1B0BE0920F03F09210030093110387 |
:103E400010931203209138023091390240913A02C6 |
:103E500050913B0257FF04C0215F3F4F4F4F5F4FD0 |
:103E6000F4E05595479537952795FA95D1F78091C8 |
:103E7000380290913902A0913A02B0913B02821B24 |
:103E8000930BA40BB50B8093380290933902A09347 |
:103E90003A02B0933B028091380290913902A0918E |
:103EA0003A02B0913B028E0D9F1DA01FB11F80935F |
:103EB000380290933902A0933A02B0933B0280916A |
:103EC000350290913602AC01E5E0440F551FEA95AA |
:103ED000E1F7481B590B8091380290913902A0916B |
:103EE0003A02B0913B02B7FF03C00F96A11DB11D6E |
:103EF00074E0B595A795979587957A95D1F7209118 |
:103F00000F0330911003281B390B63E0220F331F7E |
:103F10006A95E1F7240F351F37FF02C0215E3F4F3E |
:103F200045E0359527954A95E1F730933602209381 |
:103F30003502D601C501D7FE03C00196A11DB11DF2 |
:103F4000B595A795979587958093600290936102A8 |
:103F5000A0936202B093630289E08093640202C07E |
:103F60001092500282E080934F0280914F02809322 |
:103F70007C0080915002882319F08FEC80937A00A6 |
:103F8000FF91EF91BF91AF919F918F917F916F9131 |
:103F90005F914F913F912F911F910F91FF90EF9063 |
:103FA000DF90CF90BF90AF900F900FBE0F901F90FB |
:103FB000189590E2E1E2F1E08FE49193815087FF60 |
:103FC000FCCF089590916702E1E2F1E0E90FF11D65 |
:103FD00080839F5F909367020895EF92FF920F9303 |
:103FE0001F93CF93DF932091650220FF0AC0809139 |
:103FF0006602882311F0815002C0809120018093D5 |
:10400000660221FF0CC090916602809120019817F2 |
:1040100019F41092660203C09F5F90936602822F8C |
:10402000992780FF04C081FF02C0109266020E949F |
:10403000D91F80916602282F332752EEE52E5FE1CB |
:10404000F52EC0912804D09129048A3098F481E19A |
:10405000809367023F932F9380E694E09F938F9322 |
:10406000FF92EF92FE0109952DB73EB72A5F3F4FB1 |
:104070002DBF11C080E1809367023F932F9385E6A7 |
:1040800094E09F938F93FF92EF92FE0109958DB775 |
:104090009EB706968DBF20916602822F9927AA2788 |
:1040A000BB27FC01429710F00C949E2AE05BFF4F67 |
:1040B00042EEE42E4FE1F42EC0912804D091290461 |
:1040C0000C940A79109267028AE694E09F938F938A |
:1040D00002EE1FE1FF92EF92FE01099584E18093C9 |
:1040E00067020F900F900F900F9081E690E09F93E2 |
:1040F0008F9382E590E09F938F931F921F92809100 |
:1041000002016AE00E946378892F99279F938F9319 |
:10411000809102010E94637899279F938F938AE789 |
:1041200094E09F938F93FF92EF92E0912804F09197 |
:104130002904099588E2809367022DB73EB7225F74 |
:104140003F4F2DBF8DE896E09F938F930E94052EE1 |
:1041500099279F938F938FE894E09F938F93FF927B |
:10416000EF92E0912804F091290409958DB79EB74C |
:1041700008968DBF90914104992351F08CE3809370 |
:104180006702892F99279F938F938DE994E081C6C9 |
:1041900090916D02992371F08CE380936702892FCF |
:1041A00099279F938F9384EB94E09F938F931F9312 |
:1041B0000F9391C08091420484FF07C08CE38093E9 |
:1041C000670289EC94E00C94302A809192019091DE |
:1041D0009301069710F00C94A72A8CE38093670252 |
:1041E00086ED94E00C94302A8091250632EEE32E81 |
:1041F0003FE1F32EC0912804D091290480FF74C0C0 |
:104200001092670280910F0390911003A091110307 |
:10421000B0911203BC01CD0125E030E040E050E058 |
:104220000E94B8783F932F9383EE94E09F938F93EF |
:10423000FF92EF92FE01099584E1809367022DB70A |
:104240003EB72A5F3F4F2DBF80910B0390910C0327 |
:10425000A0910D03B0910E03BC01CD0125E030E02B |
:1042600040E050E00E94B8783F932F9380EF94E0B5 |
:104270009F938F93FF92EF92E0912804F09129048D |
:10428000099588E2809367028DB79EB706968DBF29 |
:1042900080911401909115019F938F938DEF94E07D |
:1042A0009F938F93FF92EF92E0912804F09129045D |
:1042B00009958CE3809367022DB73EB72A5F3F4F85 |
:1042C0002DBF87B599279F938F938AE095E09F93A1 |
:1042D0008F93FF92EF92E0912804F09129040995C1 |
:1042E0008DB79EB7069633C71092670287E195E0B7 |
:1042F0009F938F93FF92EF92FE01099584E1809343 |
:1043000067020F900F900F900F9086E295E09F93B9 |
:104310008F93FF92EF92E0912804F0912904099580 |
:1043200088E2809367020F900F900F900F908FE2BA |
:1043300095E09F938F93FF92EF92E0912804F09184 |
:10434000290409958CE3809367020F900F900F90DA |
:104350000F908EE395E09F938F93FF92EF920C94D2 |
:10436000342A1092670287E495E09F938F9302EEC0 |
:104370001FE1FF92EF92FE01099584E180936702AD |
:104380000F900F900F900F90809171039091720396 |
:10439000A0917303B0917403B7FF04C081509C4F88 |
:1043A000AF4FBF4F2AE0B595A795979587952A956A |
:1043B000D1F7BF93AF939F938F9384E595E09F933D |
:1043C0008F931F930F93E0912804F091290409958E |
:1043D00088E2809367022DB73EB7285F3F4F2DBF1D |
:1043E0008091690390916A03A0916B03B0916C0373 |
:1043F000B7FF04C081509C4FAF4FBF4FCAE0B59587 |
:10440000A79597958795CA95D1F7BF93AF939F933B |
:104410008F9383E695E09F938F931F930F93E09183 |
:104420002804F091290409958CE3809367028DB7E5 |
:104430009EB708968DBF80912F03909130039F9374 |
:104440008F9382E795E09F938F931F930F93E09153 |
:104450002804F091290409952DB73EB72A5F3F4FF4 |
:1044600011C71092670280914707909148079F9368 |
:104470008F9380914507909146079F938F9381E892 |
:1044800095E09F938F93FF92EF92FE01099584E14F |
:10449000809367028DB79EB708968DBF80914B07BA |
:1044A00090914C079F938F938091490790914A0771 |
:1044B0009F938F9381E995E09F938F93FF92EF9263 |
:1044C000E0912804F0912904099588E2809367021D |
:1044D0002DB73EB7285F3F4F2DBF80914F0790917A |
:1044E00050079F938F9380914D0790914E079F9314 |
:1044F0008F9381EA95E09F938F93FF92EF92E091E3 |
:104500002804F091290409958CE3809367028DB704 |
:104510009EB708968DBF80915307909154079F9343 |
:104520008F9380915107909152079F938F9381EBC6 |
:1045300095E0A2C01092670280911A06E82FFF272B |
:10454000EE0FFF1FED5BF84F808191819F938F935A |
:1045500080911906E82FFF27EE0FFF1FED5BF84F44 |
:10456000808191819F938F9381EC95E09F938F93AE |
:10457000FF92EF92FE01099584E1809367028DB767 |
:104580009EB708968DBF80911C06E82FFF27EE0F7F |
:10459000FF1FED5BF84F808191819F938F938091F6 |
:1045A0001B06E82FFF27EE0FFF1FED5BF84F808102 |
:1045B000918188589F4F9F938F9381ED95E09F93B2 |
:1045C0008F93FF92EF92E0912804F09129040995CE |
:1045D00088E2809367022DB73EB7285F3F4F2DBF1B |
:1045E00080911E06E82FFF27EE0FFF1FED5BF84FAF |
:1045F0008081918182599F4F9F938F9380911D0657 |
:10460000E82FFF27EE0FFF1FED5BF84F80819181B0 |
:1046100082599F4F9F938F9381EE95E09F938F9345 |
:10462000FF92EF92E0912804F091290409958CE320 |
:10463000809367028DB79EB708968DBF8091200644 |
:10464000E82FFF27EE0FFF1FED5BF84F8081918170 |
:1046500082599F4F9F938F9380911F06E82FFF27CA |
:10466000EE0FFF1FED5BF84F8081918182599F4FC4 |
:104670009F938F9381EF95E09F938F93FF92EF929B |
:10468000E0912804F091290409952DB73EB7285FE1 |
:104690003F4FF8C51092670281E096E09F938F9399 |
:1046A00002EE1FE1FF92EF92FE0109958091020157 |
:1046B0000F900F900F900F908A3009F09DC084E109 |
:1046C0008093670280918603909187039C0197FFF6 |
:1046D00002C0295F3F4F287F821B930B9F938F93CC |
:1046E000809186039091870397FD0796A3E09595A7 |
:1046F0008795AA95E1F79F938F9320918603309138 |
:10470000870337FF02C0295F3F4FF3E035952795B8 |
:10471000FA95E1F78091470290914802821B930B32 |
:104720009F938F938FE096E09F938F931F930F93A8 |
:10473000E0912804F0912904099588E280936702AA |
:104740008DB79EB70A968DBF8091840390918503A3 |
:104750009C0197FF02C0295F3F4F287F821B930B6C |
:104760009F938F93809184039091850397FD079683 |
:10477000E3E095958795EA95E1F79F938F932091D4 |
:1047800084033091850337FF02C0295F3F4F73E0F8 |
:10479000359527957A95E1F78091450290914602EB |
:1047A000821B930B9F938F9380E296E09F938F934E |
:1047B0001F930F93E0912804F091290409958CE34D |
:1047C000809367022DB73EB7265F3F4F2DBF809184 |
:1047D0008203909183039F938F93809182039091A2 |
:1047E00083032091430230914402821B930B9F93D9 |
:1047F0008F9381E396E0A7C38B3019F0843108F4DE |
:10480000ADC084E180936702809186039091870315 |
:104810009C0197FF02C0215F3F4F207F821B930BBB |
:1048200097FD0196959587959F938F938091860329 |
:104830009091870397FD0F9654E0959587955A952B |
:10484000E1F79F938F93209186033091870337FF81 |
:1048500002C0295F3F4F43E0359527954A95E1F720 |
:104860008091470290914802821B930B9F938F93F4 |
:104870008FE396E09F938F931F930F93E09128040B |
:10488000F0912904099588E2809367022DB73EB71D |
:10489000265F3F4F2DBF80918403909185039C013B |
:1048A00097FF02C0215F3F4F207F821B930B97FD34 |
:1048B0000196959587959F938F938091840390910E |
:1048C000850397FD0F96C4E095958795CA95E1F706 |
:1048D0009F938F93209184033091850337FF02C00B |
:1048E000295F3F4FB3E035952795BA95E1F7809161 |
:1048F000450290914602821B930B9F938F9381E513 |
:1049000096E09F938F931F930F93E0912804F0916B |
:10491000290409958CE3809367028DB79EB70A96A8 |
:104920008DBF809182039091830397FD01969595A9 |
:1049300087959F938F938091820390918303209119 |
:10494000430230914402821B930B9F938F9383E623 |
:1049500096E09F938F931F930F9392CE8D3009F023 |
:10496000F6C584E1809367028091130199279F9394 |
:104970008F93809186039091870397FD0F96F4E0C3 |
:1049800095958795FA95E1F79F938F9320918603EC |
:104990003091870337FF02C0295F3F4FE3E0359531 |
:1049A0002795EA95E1F78091470290914802821B92 |
:1049B000930B9F938F9382E796E09F938F931F9320 |
:1049C0000F93E0912804F0912904099588E28093DF |
:1049D00067028DB79EB70A968DBF80911201992705 |
:1049E0009F938F93809184039091850397FD0F96F9 |
:1049F00074E0959587957A95E1F79F938F93209131 |
:104A000084033091850337FF02C0295F3F4F63E085 |
:104A1000359527956A95E1F7809145029091460278 |
:104A2000821B930B9F938F9386E896E09F938F93BF |
:104A30001F930F93E0912804F091290409958CE3CA |
:104A4000809367022DB73EB7265F3F4F2DBF809101 |
:104A5000110199279F938F938091820390918303F3 |
:104A600097FD0196959587959F938F9380918203EB |
:104A7000909183032091430230914402821B930B57 |
:104A80009F938F938AE996E09F938F931F930F9341 |
:104A9000E0912804F091290409958DB79EB70A96F4 |
:104AA00056C3109267028EEA96E09F938F93FF920F |
:104AB000EF92FE01099584E1809367020F900F90B9 |
:104AC0000F900F9080917C0390917D039F938F9323 |
:104AD00080913F02909140029F938F938BEB96E0E1 |
:104AE0009F938F93FF92EF92E0912804F091290415 |
:104AF000099588E2809367022DB73EB7285F3F4F44 |
:104B00002DBF80917A0390917B039F938F93809127 |
:104B10004102909142029F938F938AEC96E09F937B |
:104B20008F93FF92EF92E0912804F0912904099568 |
:104B30008CE3809367028DB79EB708968DBF8091F6 |
:104B40007603909177039F938F9380913D0290918C |
:104B50003E029F938F9389ED96E08ECD109267026F |
:104B600080911E0190911F016AE070E00E9483789D |
:104B70009F938F9380911E0190911F016AE070E0D6 |
:104B80000E9483787F936F9388EE96E09F938F9334 |
:104B9000FF92EF92FE01099584E1809367028DB741 |
:104BA0009EB708968DBF80918008909181086AE039 |
:104BB00070E00E946F789F938F938091800890910E |
:104BC00081086AE070E00E946F787F936F938CEFAA |
:104BD00096E09F938F93FF92EF92E0912804F091DB |
:104BE0002904099588E2809367022DB73EB7285FB4 |
:104BF0003F4F2DBF80918208909183089F938F93A0 |
:104C000080E197E09F938F93FF92EF92E0912804C9 |
:104C1000F091290409958CE3809367028DB79EB7C4 |
:104C200006968DBF80918408909185089F938F93FD |
:104C300080E297E02EC11092670282E397E09F9393 |
:104C40008F93FF92EF92FE01099584E180936702B2 |
:104C50000F900F900F900F90809143079091440711 |
:104C60009F938F938BE397E09F938F93FF92EF92A5 |
:104C7000E0912804F0912904099588E28093670265 |
:104C80008DB79EB706968DBF80911D0399279F9380 |
:104C90008F938BE497E09F938F93FF92EF92E09135 |
:104CA0002804F091290409958CE3809367022DB7BD |
:104CB0003EB72A5F3F4F2DBF80914207992701974A |
:104CC0009F938F938BE597E002CB109267028BE660 |
:104CD00097E09F938F93FF92EF92FE01099584E1F5 |
:104CE000809367020F900F900F900F9080912B038D |
:104CF00090912C039F938F9383E797E09F938F93DB |
:104D0000FF92EF92E0912804F0912904099588E23E |
:104D1000809367022DB73EB72A5F3F4F2DBF80912A |
:104D20002F03909130039F938F9381E897E09F9397 |
:104D30008F93FF92EF92E0912804F0912904099556 |
:104D40008CE3809367028DB79EB706968DBF8091E6 |
:104D50002D0390912E039F938F938FE897E099C036 |
:104D60001092670280911E0399279F938F938DE97C |
:104D700097E09F938F93FF92EF92FE01099584E154 |
:104D8000809367028DB79EB706968DBF80911F03F3 |
:104D900099279F938F9389EA97E09F938F93FF9230 |
:104DA000EF92E0912804F0912904099588E280931C |
:104DB00067022DB73EB72A5F3F4F2DBF809120037A |
:104DC00099279F938F9385EB97E09F938F93FF9203 |
:104DD000EF92E0912804F091290409958CE38093E7 |
:104DE00067028DB79EB706968DBF809121039927E4 |
:104DF0009F938F9381EC97E04CC010926702809153 |
:104E0000220399279F938F938DEC97E09F938F9325 |
:104E1000FF92EF92FE01099584E1809367028DB7BE |
:104E20009EB706968DBF8091230399279F938F93FA |
:104E300089ED97E09F938F93FF92EF92E091280482 |
:104E4000F0912904099588E2809367022DB73EB757 |
:104E50002A5F3F4F2DBF8091240399279F938F9303 |
:104E600085EE97E09F938F93FF92EF92E091280455 |
:104E7000F091290409958CE3809367028DB79EB762 |
:104E800006968DBF8091250399279F938F9381EF7D |
:104E900097E09F938F93FF92EF92D9CA1092670287 |
:104EA0008DEF97E09F938F9302EE1FE1FF92EF92B9 |
:104EB000FE01099584E1809367020F900F900F9097 |
:104EC0000F908091C10199279F938F9385E098E07F |
:104ED0009F938F93FF92EF92E0912804F091290421 |
:104EE000099588E2809367028DB79EB706968DBFBD |
:104EF00080911E0290911F0297FD039695958795CC |
:104F0000959587959F938F9383E198E09F938F93D7 |
:104F10001F930F93E0912804F091290409958CE3E5 |
:104F2000809367022DB73EB72A5F3F4F2DBF809118 |
:104F3000480699279F938F938091470699279F93BF |
:104F40008F9381E298E09F938F931F930F93E0914B |
:104F50002804F091290409958DB79EB70896F7C0EB |
:104F6000109267028FE298E09F938F93FF92EF92E7 |
:104F7000FE01099584E1809367020F900F900F90D6 |
:104F80000F9080916204992787FD90959F938F934E |
:104F900080916104992787FD90959F938F938FE36C |
:104FA00098E09F938F93FF92EF92E0912804F09105 |
:104FB0002904099588E2809367022DB73EB7285FE0 |
:104FC0003F4F2DBF80916304992787FD90959F9354 |
:104FD0008F938091640499279F938F938FE498E037 |
:104FE0009F938F93FF92EF92E0912804F091290410 |
:104FF00009958CE3809367028DB79EB708968DBFA5 |
:105000008091680499279F938F93809165049927D5 |
:1050100087FD90959F938F938FE598E02DCB10920D |
:1050200067028FE698E09F938F93FF92EF92FE01C5 |
:10503000099584E1809367020F900F900F900F9075 |
:105040008091FD0699278F7790709F938F93809121 |
:10505000F50699278F7790709F938F938091ED0637 |
:1050600099278F7790709F938F938091E50699276A |
:105070008F7790709F938F938FE798E09F938F9394 |
:10508000FF92EF92E0912804F0912904099588E2BB |
:10509000809367028DB79EB70C968DBF80911D07D8 |
:1050A00099278F7790709F938F93809115079927F9 |
:1050B0008F7790709F938F9380910D0799278F77AB |
:1050C00090709F938F938091050799278F779070A9 |
:1050D0009F938F9380E998E09F938F93FF92EF9235 |
:1050E000E0912804F091290409958CE380936702EC |
:1050F0002DB73EB7245F3F4F2DBF80913D079927C5 |
:105100008F7790709F938F938091350799278F7732 |
:1051100090709F938F9380912D0799278F77907030 |
:105120009F938F938091250799278F7790709F93F6 |
:105130008F9381EA98E09F938F93FF92EF92E09193 |
:105140002804F091290409958DB79EB70C968DBF60 |
:10515000FEC11092670282EB98E09F938F93FF92BB |
:10516000EF92FE01099584E1809367020F900F9002 |
:105170000F900F9080910107992787FD90959F933D |
:105180008F938091F906992787FD90959F938F9330 |
:105190008091F106992787FD90959F938F93809139 |
:1051A000E906992787FD90959F938F9381EC98E06E |
:1051B0009F938F93FF92EF92E0912804F09129043E |
:1051C000099588E2809367022DB73EB7245F3F4F71 |
:1051D0002DBF80912107992787FD90959F938F93ED |
:1051E00080911907992787FD90959F938F938091C0 |
:1051F0001107992787FD90959F938F9380910907B9 |
:10520000992787FD90959F938F9382ED98E09F93C8 |
:105210008F93FF92EF92E0912804F0912904099571 |
:105220008CE3809367028DB79EB70C968DBF8091FB |
:105230004107992787FD90959F938F938091390718 |
:10524000992787FD90959F938F9380913107992798 |
:1052500087FD90959F938F9380912907992787FDCC |
:1052600090959F938F9383EE98E09F938F93FF92F7 |
:10527000EF92E0912804F091290409952DB73EB7EB |
:10528000245F3F4F2DBF63C11092670284EF98E007 |
:105290009F938F9302EE1FE1FF92EF92FE0109951B |
:1052A00084E1809367020F900F900F900F90809190 |
:1052B000FD06881F8827881F97E0899FC001112459 |
:1052C0008D969F938F938091F506881F8827881F5E |
:1052D00096E0899FC00111248D969F938F938091B2 |
:1052E000ED06881F8827881F95E0899FC00111243B |
:1052F0008D969F938F938091E506881F8827881F3E |
:105300009927880F991F880F991F8D969F938F93C8 |
:1053100083E099E09F938F93FF92EF92E0912804AE |
:10532000F0912904099588E2809367028DB79EB7B2 |
:105330000C968DBF80911D07881F8827881F9BE0D2 |
:10534000899FC00111248D969F938F93809115079B |
:10535000881F8827881F9AE0899FC00111248D9695 |
:105360009F938F9380910D07881F8827881F99E04E |
:10537000899FC00111248D969F938F93809105077B |
:10538000881F8827881F992723E0880F991F2A954F |
:10539000E1F78D969F938F9387E199E09F938F9389 |
:1053A000FF92EF92E0912804F091290409958CE393 |
:1053B000809367022DB73EB7245F3F4F2DBF80918A |
:1053C0002507881F8827881F9CE0899FC00111241A |
:1053D0008D969F938F938BE299E09F938F93FF928B |
:1053E000EF92E0912804F0912904099580912D070E |
:1053F0002DB73EB72A5F3F4F2DBF87FF12C080E415 |
:10540000809367028CE399E09F938F93FF92EF92D2 |
:10541000E0912804F091290409950F900F900F90C6 |
:105420000F908091350787FF12C084E48093670254 |
:105430008FE399E09F938F931F930F93E09128043C |
:10544000F091290409950F900F900F900F90809183 |
:105450003D0787FF7CC088E48093670282E499E07F |
:105460009F938F931F930F93E0912804F091290449 |
:1054700009950F900F900F900F9069C010926702DE |
:1054800085E499E09F938F93FF92EF92FE01099537 |
:1054900084E1809367020F900F900F900F9080919E |
:1054A000F5019091F6019F938F9383E599E09F9387 |
:1054B0008F93FF92EF92E0912804F09129040995CF |
:1054C00088E2809367028DB79EB706968DBF809164 |
:1054D000F7019091F8019F938F9380E699E09F9355 |
:1054E0008F93FF92EF92E0912804F091290409959F |
:1054F00089E4809367022DB73EB72A5F3F4F2DBFE7 |
:105500008DE699E09F938F93FF92EF92E0912804AC |
:10551000F09129040995809165020F900F900F90EA |
:105520000F9083FF14C01092F8011092F70160E011 |
:1055300070E08EE090E00E94B32C09C080912001C1 |
:10554000281719F42150209320011092660210921E |
:105550006502E6E0CDB7DEB70C94FB78F999FECF93 |
:1055600092BD81BDF89A80B599270895F999FECF2B |
:105570001FBA92BD81BD60BD0FB6F894FA9AF99A30 |
:105580000FBE08954AEA20E030E02617370740F4BE |
:10559000FC018191480F2F5F3F4F26173707C8F353 |
:1055A000842F99270895EAEA40E050E0461757070C |
:1055B00078F49C01F999FECF32BD21BDF89A80B5EF |
:1055C000E80F4F5F5F4F2F5F3F4F4617570790F32E |
:1055D0008E2F9927089581E080931B0682E08093A7 |
:1055E0001A0683E08093190684E080931C0685E008 |
:1055F00080931D0686E080931E0687E080931F0639 |
:1056000088E08093200689E0809321068AE08093D9 |
:1056100022068BE0809323068CE080932406089575 |
:1056200095E59093180680910201843170F08AE02C |
:105630008093380610925C068BE1809334068EE4EA |
:105640008093590680935A060DC083E080933806F4 |
:1056500080E280935C068EE1809334069093590635 |
:1056600090935A068AE68093250683E080937E060F |
:1056700081E080933F0610927B061092780668E0E6 |
:105680006093320686EE8093330680E88093350679 |
:105690005EE1509326068FEF809328069FE090935B |
:1056A00029065093270610922B0660932C0680E45F |
:1056B00080932D0610922E0690932A061092410692 |
:1056C00010924206109243061092440610925E0613 |
:1056D00010925F06109260061092610638E73093D0 |
:1056E000450648E24093460672E070937D0690932B |
:1056F000470627EF2093480685E080934D068DE707 |
:105700008093500680935106809352063093490649 |
:105710009AE590934A0610924B0620934C064093CC |
:105720004E0610924F068FE58093620683EF8093BA |
:1057300064068AEA809366068093670684E1809314 |
:1057400063068093650682E3809353069093540624 |
:105750008093550610927C068EEF8093680624E6AF |
:105760002093690690936A0690936B0690936C065B |
:105770008BE480936D0680936E0680936F06109283 |
:10578000700686E0809371066093720690937306AC |
:1057900050937406209375062093760670937706CF |
:1057A0001092790610927A0681E280933C068DE28F |
:1057B00080933D0690933E060895CF93DF930E9419 |
:1057C000102B8EE080932F0620E1209330063CE0E2 |
:1057D0003093310690E59093360686E9809337063C |
:1057E0009093390680933A0686E080933B0680E2E8 |
:1057F000809340068AE5809356069093570681E091 |
:105800008093580620935B0684E680935D06AFE79D |
:10581000B6E0E1E7F1E0ED01019009923A95E1F798 |
:1058200063E770E0CD01875690400E94C22A8093C2 |
:105830008B06DF91CF910895CF93DF930E94102BB9 |
:105840008AE080932F0680E18093300626E0209343 |
:1058500031069AE59093360688E780933706909351 |
:10586000390680933A0620933B0620E220934006B7 |
:105870009093560680E5809357068CE380935806F4 |
:1058800020935B068BE480935D06AFE7B6E08CE087 |
:10589000E8E7F1E0ED01019009928A95E1F763E70D |
:1058A00070E0CD01875690400E94C22A80938B06FB |
:1058B000DF91CF910895CF93DF930E94102B88E062 |
:1058C00080932F0630E13093300626E02093310696 |
:1058D00094E69093360688E78093370690933906CE |
:1058E00080933A0620933B06309340068AE58093E6 |
:1058F000560680E58093570696E49093580680E21A |
:1059000080935B0690935D06AFE7B6E08CE0E0E83D |
:10591000F1E0ED01019009928A95E1F763E770E00B |
:10592000CD01875690400E94C22A80938B06DF915A |
:10593000CF910895F999FECF92BD81BDF89A80B5B7 |
:1059400099270895F999FECF1FBA92BD81BD60BD18 |
:105950000FB6F894FA9AF99A0FBE08956EEA7AE2B1 |
:105960000E94D276089546EB5AE20E940C77089581 |
:10597000EF92FF920F931F93CF93C82F81508530E2 |
:1059800008F0C3E084E7C89F8001112480EFE82E6F |
:105990008FEFF82EE00EF11E63E770E0C7010E9462 |
:1059A000D32A682F98012D593F4F8FB39927AC0107 |
:1059B0004270507081FDF9CF32BD21BDF89A80B59B |
:1059C000861711F0CA0121C08FB399279C0122705C |
:1059D000307081FDF9CFF2BCE1BCF89A80B5853515 |
:1059E00011F0C90112C084E7C89FC001112440977B |
:1059F0002EEA3AE244E750E0BC0188E196E00E94DA |
:105A0000AD760E948B6781E090E0CF911F910F915E |
:105A1000FF90EF900895282F863010F025E003C006 |
:105A2000882309F421E0F999FECF1FBA82E090E0C3 |
:105A300092BD81BD20BD0FB6F894FA9AF99A0FBEB7 |
:105A40000895CF93C82F80911806853509F042C07C |
:105A5000C63010F0C5E003C0CC2309F43BC063E7B7 |
:105A600070E088E196E00E94C22A80938B0684E76A |
:105A7000C89FC001112426EB3AE244E750E068E1F8 |
:105A800076E040970E94EA7626EB3AE24CE050E05E |
:105A900069E176E080E590E00E94EA766CE070E0F3 |
:105AA00089E196E00E94C22A282FF999FECF1FBAF9 |
:105AB0008CE590E092BD81BD20BD0FB6F894FA9AB6 |
:105AC000F99A0FBE8C2F0E940B2D0E948B6781E0EC |
:105AD00090E002C080E090E0CF9108956DE470E026 |
:105AE00088EE93E00E94D32A482F8FB399279C0118 |
:105AF0002270307081FDF9CF85E394E092BD81BDC5 |
:105B0000F89A80B5841779F48FB399279C01227095 |
:105B1000307081FDF9CF88EE93E092BD81BDF89A97 |
:105B200080B5813011F0C90108952EEA3AE24EE4C1 |
:105B300050E068EE73E08CE896E00E94AD7681E07C |
:105B400090E0089580918C068130A9F46DE470E0B6 |
:105B50008CE896E00E94C22A8093D90626EB3AE2AE |
:105B60004EE450E06CE876E088EE93E00E94EA763E |
:105B700081E090E0089580E090E00895CF93DF9376 |
:105B800081E080938C06ECE8F6E08FE015861686BF |
:105B90001786108A8150349687FFF8CF80E480936F |
:105BA000990680939A0610929B0680939C06809398 |
:105BB0009D0690EC90939E0610929F068093A006FF |
:105BC0008093A1061092A2069093A3069093A40638 |
:105BD0008093A5061092A6068093A7069093A80628 |
:105BE000ADE8B6E087E0EAE8F1E0ED010190099266 |
:105BF0008A95E1F76DE470E0CD0101970E94C22A19 |
:105C00008093D906DF91CF910895F999FECF82E074 |
:105C100090E092BD81BDF89A80B5282F863078F04B |
:105C200023E0322FF999FECF1FBA82E090E092BDB7 |
:105C300081BD30BD0FB6F894FA9AF99A0FBE822F43 |
:105C4000992708951F93CF93C82F162F863010F0F1 |
:105C5000C5E003C0882309F4C1E08C2F9927823066 |
:105C6000910541F08330910544F4019731F40E948D |
:105C7000DD2B05C00E941C2C02C00E945B2C11234E |
:105C8000E1F06CE070E080E590E00E94D32A282FDC |
:105C9000F999FECF8CE590E092BD81BDF89A80B570 |
:105CA000821759F42EEA3AE24CE050E060E570E0E9 |
:105CB00089E196E00E94AD7602C00E94EB2A8C2F0B |
:105CC0000E94212DCF911F910895DF92EF92FF92B4 |
:105CD0000F931F93CF93FF24DF2CEF2C81E090E0F4 |
:105CE0000E949A2C853539F031E0E32E65E581E09C |
:105CF00090E00E94A22C6CE070E080E590E00E94B1 |
:105D0000D32AC82FF999FECF8CE590E092BD81BDD2 |
:105D1000F89A80B58C1711F421E0D22EC1E001E091 |
:105D200010E0EE2029F48C2F0E94B82C8823C1F5B6 |
:105D300091E0F92E1F930F9385E799E09F938F933E |
:105D400086EF92E19F938F93E0912804F0912904CC |
:105D500009958DB79EB706968DBF0230110549F0A3 |
:105D6000033011054CF40130110531F40E94DD2B94 |
:105D700005C00E941C2C02C00E945B2CDD2059F043 |
:105D80002EEA3AE24CE050E060E570E089E196E00E |
:105D90000E94AD7602C00E94EB2A8C2F0E94212D1A |
:105DA000CF5F0F5F1F4FC63008F4BBCFFF2019F045 |
:105DB00083E00E940B2D0E94052EC82F0E94B82C54 |
:105DC0008C2F99279F938F938BE999E09F938F93C3 |
:105DD00006EF12E11F930F93E0912804F09129043C |
:105DE00009958DB79EB706968DBFEE2021F40E94CF |
:105DF0006E2D882399F484EB99E09F938F931F93E2 |
:105E00000F93E0912804F091290409950E94BE2D7A |
:105E10000E94A22D0F900F900F900F9010921706D6 |
:105E200090E0E9E9F6E0CFE08081349618160CF4B2 |
:105E30009F5FC150C7FFF8CF90931706892F99270E |
:105E40009F938F938DE896E09F938F9385ED99E0D4 |
:105E50009F938F931F930F93E0912804F09129044F |
:105E600009958DB79EB708968DBF86EF99E09F93F1 |
:105E70008F931F930F93E0912804F09129040995C3 |
:105E80000F900F900F900F90CF911F910F91FF9057 |
:105E9000EF90DF900895982F2FB7F8943998389A9B |
:105EA00088B1836088B98091B9008C7F8093B900F4 |
:105EB0008AE28093B80010927202109270021092DF |
:105EC0006F02992379F0E2EEF6E08BE01082118206 |
:105ED000128213821482158216821782815038969C |
:105EE00087FFF4CF78942FBF08951092720284E94F |
:105EF0008093BC0080E88093BC001092BD0010929B |
:105F0000BA001092BB001092B9001092B800109223 |
:105F10006E0280E00E944B2F1092BB0085E88093B8 |
:105F2000BC0080916C02826080936C0208951F9285 |
:105F30000F920FB60F9211242F933F934F935F93BD |
:105F40008F939F93EF93FF9380917202282F3327B3 |
:105F5000442755278F5F80937202F901273131055D |
:105F600008F0C2C2EE59FF4F0C940A7981E0809389 |
:105F70006E0209C0809170028C3090F480917002A2 |
:105F80008F5F8093700280917002E82FFF27EE0FE1 |
:105F9000FF1FEE0FFF1FE457F94F8585181654F7C2 |
:105FA000809170028C3070F010926B0210926A0235 |
:105FB0001092700285E08093720280916F02880FC8 |
:105FC0008D5A04C080917002880F8E5A8093BB0056 |
:105FD00085E87FC280917002E82FFF2783E0EE0FF3 |
:105FE000FF1F8A95E1F7EE51F94F81818093BB0045 |
:105FF00085E88093BC0080917002E82FFF27EE0FA8 |
:10600000FF1FEE0FFF1FEE0FFF1FEE51F94F8081B4 |
:1060100080FF91C080917002E82FFF27EE0FFF1FD5 |
:10602000EE0FFF1FEE0FFF1FEE51F94F8281882305 |
:1060300029F080911706873008F46CC280916A02BB |
:1060400090916B02892B09F065C280916802909152 |
:106050006902892B09F05EC26EC08091700221E056 |
:1060600030E002C0220F331F8A95E2F78091680268 |
:106070009091690228233923232B79F080917002B3 |
:10608000E82FFF27EE0FFF1FEE0FFF1FEE0FFF1F82 |
:10609000EE51F94F80E184830DC080917002E82FAA |
:1060A000FF27EE0FFF1FEE0FFF1FEE0FFF1FEE513A |
:1060B000F94F148280917002E82FFF2753E0EE0F12 |
:1060C000FF1F5A95E1F7EE51F94F8481282F3327AE |
:1060D00043E0220F331F4A95E1F780917002E82FC9 |
:1060E000FF2793E0EE0FFF1F9A95E1F7EE51F94F6E |
:1060F00082818770822B8093BB0085E88093BC00EF |
:106100002091700281E090E002C0880F991F2A95CB |
:10611000E2F720916A0230916B0282239323892B4C |
:1061200051F08AED96E0909376028093750288E0B4 |
:1061300080937702EFC184E089C1E0917502F0910C |
:10614000760281918093BB0085E88093BC00F09338 |
:106150007602E093750280917702815080937702F6 |
:10616000882309F4D7C183E071C18091B9008033DD |
:1061700051F580917302882329F4809170028F5F1A |
:106180008093730280917002E82FFF2783E0EE0F67 |
:10619000FF1F8A95E1F7EE51F94F838199278F7799 |
:1061A00090708F3791057CF480917002E82FFF2763 |
:1061B000EE0FFF1FEE0FFF1FEE0FFF1FEE51F94F07 |
:1061C00083818F5F83831092720284E98093BC0085 |
:1061D0008AE090E090939301809392018091700205 |
:1061E0008F5F80937002109272026DC18091B9002E |
:1061F0008034C9F180916F02E82FFF27EE0FFF1F57 |
:10620000EE0FFF1FEE0FFF1FEE51F94F83818F77C7 |
:10621000838380916F028F5F80936F0280916F0202 |
:106220008C30A0F010926F021092690210926802F6 |
:10623000809174028F5F809374028C3038F01092DA |
:10624000740280916C028D7F80936C0280916C024D |
:10625000816080936C021092720284E98093BC008A |
:1062600010926E0273C080916F02E82FFF27EE0F2D |
:10627000FF1FEE0FFF1FEE0FFF1FEE51F94F83813F |
:106280008068838380916F02E82FFF27EE0FFF1F46 |
:10629000EE0FFF1FEE0FFF1FEE51F94F808180FFC1 |
:1062A0002FC080916F02E82FFF2753E0EE0FFF1FF2 |
:1062B0005A95E1F7EE51F94F84819927009751F0F3 |
:1062C0004097D9F58AED96E0909376028093750217 |
:1062D00088E031C080916F02992743E0880F991FB1 |
:1062E0004A95E1F78951994F909376028093750210 |
:1062F00090916F02809174029817E1F483E01BC0C3 |
:1063000080916F02992733E0880F991F3A95E1F742 |
:106310008951994F909376028093750280916C0217 |
:1063200081FD06C090916F0280917402981711F45C |
:1063300082E001C081E08093770280917702813012 |
:1063400011F485E801C085EC8093BC008091730254 |
:1063500080936D0210927302DDC0E0917502F0919E |
:1063600076028091BB0080838091750290917602C5 |
:106370000196909376028093750280917702815006 |
:1063800080937702823010F085EC5DC0813011F48B |
:1063900085E859C080916C0281FF2DC08091E9028F |
:1063A00080FD1DC080916F02E82FFF2723E0EE0FD4 |
:1063B000FF1F2A95E1F7EE51F94F86818A3F79F464 |
:1063C00080916F02E82FFF2793E0EE0FFF1F9A9551 |
:1063D000E1F7EE51F94F8081816080830CC080919C |
:1063E0006F02E82FFF2783E0EE0FFF1F8A95E1F78A |
:1063F000EE51F94F108280916F028F5F80936F0290 |
:1064000080916F028C30A0F010926F02109269029E |
:1064100010926802809174028F5F809374028C30B6 |
:1064200038F01092740280916C028D7F80936C0220 |
:106430001092720284E98093BC0080916C028160AA |
:1064400080936C0265C08093BC0086E080937202EA |
:1064500061C088E9BBCD80917102880F805FB6CDA5 |
:106460008091710299278130910561F08230910508 |
:106470001CF4892B21F04EC0029739F04BC080915B |
:106480001301A4CD80911201A1CD809111019ECD67 |
:1064900080E89CCD1092720284E98093BC00109237 |
:1064A0006E028AE090E09093930180939201809134 |
:1064B0007102823088F4809171028F5F8093710243 |
:1064C00082E18093720280916C028E7F80936C02D5 |
:1064D00085EA8093BC001EC01092710280916C020C |
:1064E000816080936C0216C01092720284E98093DE |
:1064F000BC0080916C02816080936C028AE090E025 |
:1065000090939301809392011092700210926F0207 |
:1065100010926E02FF91EF919F918F915F914F9139 |
:106520003F912F910F900FBE0F901F9018951F93C2 |
:10653000CF93DF93182F80911403882321F4809147 |
:106540000302882319F081E090E097C01D3008F025 |
:1065500092C01123B1F0E12FFF2723E0EE0FFF1FC0 |
:106560002A95E1F7EE51F94F3597808135968823CA |
:106570000CF081C03897808180FD03C083E090E0FB |
:106580007CC08091DA06823019F084E090E075C01A |
:1065900067E070E08AED96E00E94C22A9091E106E1 |
:1065A000891719F085E090E068C080ED97E00E94BF |
:1065B0001C17EC0180916C0280FD05C0CE010E9489 |
:1065C00025178823B9F3112319F48FEF90E00BC03E |
:1065D000212F33272150304081E090E002C0880F06 |
:1065E000991F2A95E2F790936B0280936A02A1E0CB |
:1065F000B0E0E2EEF6E040E050E06BE0CD01042ECA |
:1066000002C0880F991F0A94E2F720916A02309124 |
:106610006B0282239323892B11F011821282615025 |
:106620004F5F5F4F389667FFE9CF1092700210926C |
:10663000720280916C028E7F80936C0285EA809357 |
:10664000BC0080916C0280FD05C0CE010E94251720 |
:106650008823B9F380916A0290916B02892B29F00B |
:10666000CE010E942517882311F380916A02909130 |
:106670006B02009711F082E090E0DF91CF911F91C3 |
:1066800008950F931F93CF93DF93982F8091140356 |
:10669000882321F480910302882319F081E090E09F |
:1066A00092C09D30A0F4992319F486E090E08BC04D |
:1066B000C92FDD27FE0133E0EE0FFF1F3A95E1F70A |
:1066C000EE51F94F35978081359687FD03C082E002 |
:1066D00090E079C03897808180FD03C083E090E02E |
:1066E00072C080ED97E00E941C178C0180916C02B3 |
:1066F00080FD05C0C8010E9425178823B9F32197A2 |
:1067000021E030E0C90102C0880F991FCA95E2F765 |
:106710009093690280936802D901E2EEF6E040E0CE |
:1067200050E06BE0CD01042E02C0880F991F0A943F |
:10673000E2F7209168023091690282239323892B2A |
:1067400011F01182128261504F5F5F4F389667FFE0 |
:10675000E9CF10926F021092DA061092E1061092C1 |
:10676000720280916C028E7F80936C0285EA809326 |
:10677000BC0080916C0280FD05C0C8010E942517F5 |
:106780008823B9F38091680290916902892B29F0DE |
:10679000C8010E942517882311F38091DA06823000 |
:1067A00019F084E090E00FC067E070E08AED96E0B9 |
:1067B0000E94C22A9091E106891719F085E090E0C5 |
:1067C00002C080E090E0DF91CF911F910F9108957A |
:1067D00089E1A7E7B7E0E3E4F7E01182108232969F |
:1067E00011961C921E921296815087FFF6CF10923E |
:1067F00083031092820310928503109284031092F7 |
:1068000087031092860308951F920F920FB60F927E |
:1068100011240F931F932F933F934F935F936F9385 |
:106820007F938F939F93AF93BF93CF93DF93EF9318 |
:10683000FF9380917E0682FDCFC0409186005091EB |
:1068400087008091790290917A02481B590B8091C0 |
:1068500086009091870090937A0280937902CA0112 |
:106860008D549440A0917B02B0917C02835F9A4149 |
:1068700078F480917B0280934207149714F0109271 |
:10688000940181E090E090937C0280937B0207C2A8 |
:10689000AD30B1050CF003C2CA018B5F9040845B40 |
:1068A000914008F074C0425D5140FD01EA0FFB1FAA |
:1068B000ED5BF84F80819181FA01E81BF90BCF0164 |
:1068C000F7FF03C0909581959F4F06975CF48091E8 |
:1068D0001D03883C20F480911D03865F01C088EC75 |
:1068E00080931D03FD01EA0FFB1FED5BF84F8081D4 |
:1068F00091819C01220F331F280F391F240F351F50 |
:1069000037FF02C02D5F3F4FE901D595C795D5955B |
:10691000C795CA0101968C179D0714F4219706C0EC |
:1069200041505040C417D5070CF4219680911D03A7 |
:10693000833CE0F08D010A0F1B1FF801ED5BF84F5F |
:10694000808191819E01281B390BC90163E070E0B1 |
:106950000E948378CB01880F991F860F971F0958D3 |
:10696000184FD80111969C938E9307C0AA0FBB1F96 |
:10697000A958B84F11961C921E92E0917B02F0919B |
:106980007C02EE0FFF1FED5BF84FD183C083209197 |
:106990007B0230917C022F5F3F4F30937C0220932B |
:1069A0007B0280910201843108F079C125303105E4 |
:1069B00011F45D9A01C05D9880917B0290917C02F8 |
:1069C0008630910511F45C9A01C05C98079711F428 |
:1069D0005B9A65C15B9863C14091860050918700C6 |
:1069E00080917D0290917E02481B590B8091860018 |
:1069F0009091870090937E0280937D02CA018D540E |
:106A000094406091E702835F9A4108F07AC06093F6 |
:106A1000780280917802843008F453C09091420744 |
:106A200080917802981709F04CC05091E8025B30D1 |
:106A300008F43FC0109294011092E70240E05F31E9 |
:106A4000C0F0E42FFF27EE0FFF1F9F012D543D4F95 |
:106A5000DF01AD5BB84F8D919C91D9018D939C93D3 |
:106A6000DF01A958B84F8D919C91E353FD4F91835D |
:106A70008083E42FFF27EE0FFF1F9F012D5B384F10 |
:106A8000DF01A158BD4F8D919C91D90111969C9326 |
:106A90008E93DF01A756BD4F8D919C91E958F84F19 |
:106AA00091838083842F8F5F482F8D3040F28093B5 |
:106AB000E7028091E8028F3FB9F08F5F8093E80290 |
:106AC00013C08091E802853620F08AE08093E802C6 |
:106AD00002C01092E802809102018A3011F08431E4 |
:106AE00010F0289A01C0289881E08093E7028091F5 |
:106AF0001403882309F0D3C0809178028093420761 |
:106B0000CEC06D3008F0A3C0CA018B5F9040845B9B |
:106B1000914008F07EC0425D5140E62FFF27EE0F06 |
:106B2000FF1FE158FD4F80819181FA01E81BF90BAD |
:106B3000CF0105960B97B0F48091E8028A3120F0DE |
:106B400080911D03865F05C08B3028F080911D0366 |
:106B50008E5F80931D0380911D03893C18F088ECA3 |
:106B600080931D03E62FFF27EE0FFF1FE158FD4F17 |
:106B7000808191819C01220F331F280F391F240F20 |
:106B8000351F37FF02C02D5F3F4FE901D595C795EF |
:106B9000D595C795CA0101968C179D0714F42197C6 |
:106BA00006C041505040C417D5070CF4219680917F |
:106BB0001D038E3BD8F0E62FFF27EE0FFF1FDF01EE |
:106BC000A158BD4F8D919C919E01281B390BC90185 |
:106BD00063E070E00E948378CB01880F991F860FD5 |
:106BE000971FE756FD4F9183808308C0E62FFF274C |
:106BF000EE0FFF1FE756FD4F118210828091E702D2 |
:106C0000E82FFF27EE0FFF1FE158FD4FD183C08310 |
:106C100009C0809102018A3011F0843110F0289A65 |
:106C200001C0289880910201843188F48091E702A4 |
:106C3000853011F45D9A05C05D98863011F45C9A38 |
:106C400005C05C98873011F45B9A01C05B98809115 |
:106C5000E702843120F48F5F8093E70220C0843103 |
:106C6000F1F4809102018A3011F0843110F0289AF9 |
:106C700001C028988EE18093E7022CE0C7E7D7E0B7 |
:106C8000A3EBB2E0E3E4F7E08D919D9191838083E3 |
:106C90003296198218822296215027FFF5CFFF9154 |
:106CA000EF91DF91CF91BF91AF919F918F917F91A4 |
:106CB0006F915F914F913F912F911F910F910F9085 |
:106CC0000FBE0F901F901895EF92FF920F931F9396 |
:106CD000809134069927880F991F880F991F7C018E |
:106CE0000027F7FC0095102F80917103909172039B |
:106CF000A0917303B0917403BC01CD01A801970169 |
:106D00000E94B8783093C4052093C305809169032D |
:106D100090916A03A0916B03B0916C03BC01CD010B |
:106D2000A80197010E94B8783093C6052093C50545 |
:106D30008091FD079091FE0797FD039695958795A5 |
:106D4000959587959093C8058093C70580910D0808 |
:106D500090910E0897FD0396959587959595879543 |
:106D60009093CA058093C905809182039091830313 |
:106D70002091430230914402821B930B9093CC05E7 |
:106D80008093CB0580910F0390911003A091110384 |
:106D9000B0911203BC01CD0125E030E040E050E0AD |
:106DA0000E94B8783093CE052093CD0580913D02A6 |
:106DB00090913E029093D0058093CF0580912F0350 |
:106DC000909130039093D4058093D30580911E0158 |
:106DD00090911F019093D6058093D50580911D0356 |
:106DE00099279093D8058093D705809109089091B1 |
:106DF0000A08A0910B08B0910C08209196013091DF |
:106E000097014091980150919901BC01CD010E94D8 |
:106E1000B8783093DA052093D9058091E306992755 |
:106E20009093DC058093DB058091EB069927909386 |
:106E3000DE058093DD058091F30699279093E005A8 |
:106E40008093DF058091FB0699279093E20580935C |
:106E5000E10580911E0290911F029093EC058093B2 |
:106E6000EB0580918008909181089093F0058093C4 |
:106E7000EF0580918408909185089093F2058093A6 |
:106E8000F1058091860899279093FE058093FD0572 |
:106E90008091F9039091FA03909300068093FF0587 |
:106EA0008091F7039091F803909302068093010676 |
:106EB00080914104882321F480914204882321F0A9 |
:106EC0008091C205816003C08091C2058E7F80934E |
:106ED000C2051F910F91FF90EF9008951F93CF93DC |
:106EE000DF93182FEB01809114038823A1F4115034 |
:106EF0001F3F89F0D0932502C09324028091240281 |
:106F000090912502892BD1F7CE018C0F9D1F0E94F5 |
:106F10003117115078F7DF91CF911F910895CF93DA |
:106F2000DF93809102018D3011F40E94161B1092A4 |
:106F30007A0080914702909148029093C407809311 |
:106F4000C30780914502909146029093B5078093C4 |
:106F5000B407809143029091440290930308809378 |
:106F6000020820913F0230914002C901880F991F09 |
:106F7000880F991F820F931F820F931F9093FE0714 |
:106F80008093FD072091410230914202C901880F90 |
:106F9000991F880F991F820F931F820F931F909341 |
:106FA0000E0880930D088FEC80937A00AEE1B3E079 |
:106FB000CDE1D6E097E08991E82FFF27EE0FFF1F84 |
:106FC000ED5BF84F0190F081E02DE259FF4F1E1666 |
:106FD0001F061CF0E0E0F0E005C0EF3FF10514F003 |
:106FE000EFEFF0E08C91282F3327E217F30714F42A |
:106FF000815004C02E173F0714F48F5F8C9391507B |
:10700000119697FFD8CF809159069927AA27BB27B9 |
:10701000BC01CD0124EC39E040E050E00E9444780E |
:10702000DC01CB018093D5019093D601A093D701C9 |
:10703000B093D80180915A069927AA27BB27BC0193 |
:10704000CD010E944478DC01CB018093D101909363 |
:10705000D201A093D301B093D401DF91CF910895D1 |
:10706000A0E0B0E0E6E3F8E30C94D978882EC0E025 |
:10707000D0E07E016E0110924104469AD0937D03C8 |
:10708000C0937C03D0937B03C0937A03D0937703A0 |
:10709000C0937603D0938703C0938603D093850370 |
:1070A000C0938403D0938303C09382031092BE01E4 |
:1070B0001092BD01109237020E948F3784E690E053 |
:1070C0000E943E170E948F378091250680FF10C0D6 |
:1070D0008091140190911501875B934038F4809161 |
:1070E0001401909115018E5E924010F40E94BB1A1B |
:1070F0000FE18AE090E00E943E1780914302909158 |
:107100004402C80FD91F8091470290914802E80EAF |
:10711000F91E8091450290914602C80ED91E015079 |
:1071200007FFE7CF9701205F3F4F369527953695AC |
:1071300027953093870320938603C6014096969542 |
:1071400087959695879590938503809384036096A1 |
:10715000F5E0D695C795FA95E1F7D0938303C093F0 |
:107160008203909381038093800330937F03209365 |
:107170007E03882009F441C08091FD079091FE07AD |
:1071800097FF03C0909581959F4F6CE070E00E943F |
:1071900083789B0170937D0360937C0380910D083D |
:1071A00090910E0897FF03C0909581959F4F6CE0DA |
:1071B00070E00E94837870937B0360937A038091E0 |
:1071C0000A0690910B069093770380937603B9019A |
:1071D00084E090E00E94B32C60917A0370917B036D |
:1071E00086E090E00E94B32C609176037091770363 |
:1071F00088E090E00E94B32C65C084E090E00E949B |
:10720000AE2C90937D0380937C0386E090E00E94F7 |
:10721000AE2C90937B0380937A0388E090E00E94E9 |
:10722000AE2C9C01909377038093760380917C032E |
:1072300090917D038150984050F480917A03909111 |
:107240007B038150984018F421503440D8F187E1F5 |
:107250009AE09F938F9386EF92E19F938F93E091B3 |
:107260002804F091290409958091FD079091FE076B |
:1072700097FF03C0909581959F4F6CE070E00E944E |
:10728000837870937D0360937C0380910D089091C7 |
:107290000E0897FF03C0909581959F4F6CE070E0BA |
:1072A0000E94837870937B0360937A0380910A062F |
:1072B00090910B0690937703809376030F900F9035 |
:1072C0000F900F901092C4071092C3071092B50749 |
:1072D0001092B407109203081092020884E690E01E |
:1072E0000E943E1780913F02909140029C01220F24 |
:1072F000331F220F331F280F391F280F391F3093D8 |
:10730000FE072093FD0780914102909142028C017B |
:10731000000F111F000F111F080F191F080F191F51 |
:1073200010930E0800930D0880913406C82EDD24BA |
:10733000EE24FF24442737FD4095542FC701B601A2 |
:107340000E9444784B015C01609371037093720357 |
:1073500080937303909374039801442737FD4095FD |
:10736000542FC701B6010E944478DC01CB01809301 |
:10737000690390936A03A0936B03B0936C038092AC |
:107380004D0390924E03A0924F03B092500380930E |
:10739000450390934603A0934703B093480310928C |
:1073A00041031092420310924303109244038091D0 |
:1073B000160190911701A0911801B09119019093B5 |
:1073C0000D0680930C061092360210923502109230 |
:1073D00031031092320310923303109234038091E0 |
:1073E0002F039091300390932E0380932D030E94DE |
:1073F000146382E390E090932502809324028091AD |
:1074000059069927AA27BB27BC01CD0124EC39E0F6 |
:1074100040E050E00E944478DC01CB018856954C56 |
:10742000AF4FBF4F8093D5019093D601A093D70162 |
:10743000B093D80180915A069927AA27BB27BC018F |
:10744000CD010E944478DC01CB018856954CAF4FAA |
:10745000BF4F8093D1019093D201A093D301B093F9 |
:10746000D40110929B0110929A0180912F03909168 |
:107470003003AA2797FDA095BA2F2091960130914D |
:1074800097014091980150919901BC01CD010E9452 |
:107490004478DC01CB018093090890930A08A093FB |
:1074A0000B08B0930C08109228031092270381E078 |
:1074B000809301010E948B678091E9028460809330 |
:1074C000E9028FEF80937B0810927C0880E2809322 |
:1074D0007D08CEE1D3E0ADE1B6E007E08D91E82F85 |
:1074E000FF27EE0FFF1FED5BF84F808191818259DE |
:1074F0008993015007FFF2CF84E680931D038091AA |
:107500002202882311F0469A579A8091860390911F |
:10751000870380569940815C9B4228F0809141040A |
:10752000816080934104809184039091850380560B |
:107530009940815C9B4228F0809141048260809355 |
:10754000410480918203909183038C52914089572A |
:10755000954028F08091410484608093410480919B |
:107560007C0390917D038C529140835C914028F084 |
:107570008091410488608093410480917A039091C6 |
:107580007B038C529140835C914028F080914104B0 |
:1075900080618093410480917603909177038050BD |
:1075A00092408355914028F08091410480628093FD |
:1075B0004104ECE0CDB7DEB70C94F578A3E1B0E080 |
:1075C000E4EEFAE30C94D3788091820390918303E4 |
:1075D0002091430230914402821B930B9093030845 |
:1075E0008093020880914D0290914E0297FD07967C |
:1075F0009C0113E0359527951A95E1F73093C40760 |
:107600002093C30780914B0290914C0297FD0796FF |
:10761000B3E095958795BA95E1F79093B507809378 |
:10762000B4073093CF072093CE079093C70780937A |
:10763000C6078091FD079091FE07AC01440F551FCE |
:10764000480F591F20913F0230914002C901880F15 |
:10765000991F880F991F820F931F820F931F480F46 |
:10766000591F57FF02C04D5F5F4F55954795559580 |
:1076700047955093FE074093FD0780910D08909128 |
:107680000E08AC01440F551F480F591F20914102AD |
:1076900030914202C901880F991F880F991F820FEC |
:1076A000931F820F931F480F591F57FF02C04D5F52 |
:1076B0005F4F559547955595479550930E084093C4 |
:1076C0000D0820913F0230914002C901880F991F97 |
:1076D000880F991F820F931F820F931F9C014427CD |
:1076E00037FD4095542F8091610390916203A091E2 |
:1076F0006303B0916403820F931FA41FB51F80938F |
:10770000610390936203A0936303B0936403209199 |
:10771000410230914202C901880F991F880F991FB9 |
:10772000820F931F820F931F9C01442737FD4095C2 |
:10773000542F80915D0390915E03A0915F03B091FF |
:107740006003820F931FA41FB51F80935D03909366 |
:107750005E03A0935F03B09360038091D80790917C |
:10776000D90720913F0230914002820F931F9093DE |
:10777000D9078093D8078091050890910608209139 |
:10778000410230914202820F931F9093060880932A |
:10779000050880917803909179030196909379037D |
:1077A0008093780380910A0690910B0620917603CE |
:1077B00030917703821B930B9C01442737FD409542 |
:1077C000542F8091590390915A03A0915B03B0917B |
:1077D0005C03820F931FA41FB51F809359039093DE |
:1077E0005A03A0935B03B0935C038FEC80937A0001 |
:1077F000109210012091490330914A0340914B03AC |
:1078000050914C0329873A874B875C8729543B4624 |
:10781000414050402CF028E43BE641E050E00DC0F0 |
:1078200089859A85AB85BC85885B9449AE4FBF4FEF |
:107830004CF428EB34E94EEF5FEF2D833E834F830A |
:10784000588708C089859A85AB85BC858D839E83C2 |
:10785000AF83B88720915103309152034091530375 |
:10786000509154032D873E874F87588B29543B46B0 |
:10787000414050402CF028E43BE641E050E00DC090 |
:107880008D859E85AF85B889885B9449AE4FBF4F83 |
:107890004CF428EB34E94EEF5FEF29833A834B83B6 |
:1078A0005C8308C08D859E85AF85B88989839A835E |
:1078B000AB83BC83A0910208B0910308BB8BAA8B59 |
:1078C000FD01CF01AA2797FDA095BA2FA0904103F3 |
:1078D000B0904203C0904303D0904403A80EB91E59 |
:1078E000CA1EDB1EA0924103B0924203C092430322 |
:1078F000D0924403E0900908F0900A0800910B0828 |
:1079000010910C08E80EF91E0A1F1B1FE0920908CF |
:10791000F0920A0800930B0810930C08F0910403EE |
:10792000F98BFF2309F098C180910303882309F0A4 |
:1079300093C18091250686FF8FC18091B4079091F5 |
:10794000B507AA2797FDA095BA2FBC01CD012981C3 |
:107950003A814B815C810E9444789B01AC0197FF86 |
:1079600004C02150384F4F4F5F4FBBE055954795AE |
:1079700037952795BA95D1F78091BD01682E772468 |
:1079800088249924CA01B901A40193010E94447872 |
:10799000DC01CB018093920390939303A093940313 |
:1079A000B0939503B7FF04C08150904FAF4FBF4FC6 |
:1079B0001C012D01ACE05594479437942794AA9567 |
:1079C000D1F7209292033092930340929403509205 |
:1079D00095038091C3079091C407AA2797FDA095AE |
:1079E000BA2FBC01CD012D813E814F8158850E9467 |
:1079F000447897FF04C06150784F8F4F9F4FFBE052 |
:107A00009595879577956795FA95D1F7A401930198 |
:107A10000E944478DC01CB018093960390939703F6 |
:107A2000A0939803B0939903B7FF04C08150904F7F |
:107A3000AF4FBF4F9C01AD01ECE055954795379591 |
:107A40002795EA95D1F720939603309397034093B7 |
:107A5000980350939903809192039091930390938C |
:107A6000AC078093AB078091960390919703909316 |
:107A7000B0078093AF0722193309440955092093B1 |
:107A80009603309397034093980350939903E20E23 |
:107A9000F31E041F151FE0920908F0920A080093D4 |
:107AA0000B0810930C088091BC018823B1F457FF98 |
:107AB00004C02F5F3F4F4F4F5F4F55954795379508 |
:107AC0002795A21AB30AC40AD50AA0924103B0921C |
:107AD0004203C0924303D09244032A893B8979012F |
:107AE0000027F7FC0095102F809196039091970343 |
:107AF000A0919803B0919903E80EF91E0A1F1B1F6D |
:107B0000C801B70129813A814B815C810E94447888 |
:107B10009B01AC0197FF04C02150384F4F4F5F4F7E |
:107B20006BE055954795379527956A95D1F78091E4 |
:107B3000BE01A82EBB24CC24DD24CA01B901A601B4 |
:107B400095010E944478DC01CB0180938A039093D5 |
:107B50008B03A0938C03B0938D03B7FF04C08150B7 |
:107B6000904FAF4FBF4F3C014D013CE0959487943F |
:107B7000779467943A95D1F760928A0370928B0359 |
:107B800080928C0390928D03C801B7012D813E81B4 |
:107B90004F8158850E94447897FF04C06150784F08 |
:107BA0008F4F9F4F2BE095958795779567952A95F1 |
:107BB000D1F7A60195010E944478DC01CB018093A6 |
:107BC0008E0390938F03A0939003B0939103B7FF1C |
:107BD00004C08150904FAF4FBF4FAC01BD018CE04E |
:107BE00075956795579547958A95D1F740938E037C |
:107BF00050938F0360939003709391032A893B897C |
:107C000037FF03C0309521953F4F21343105E4F112 |
:107C1000D401C30197FE07C0B095A09590958195BA |
:107C20009F4FAF4FBF4F81389105A105B10584F437 |
:107C3000DB01CA0177FF07C0B095A09590958195AB |
:107C40009F4FAF4FBF4F81389105A105B105E4F0BB |
:107C500081E08093290318C01092B0071092AF07FB |
:107C60001092AC071092AB0710928E0310928F0304 |
:107C7000109290031092910310928A0310928B033A |
:107C800010928C0310928D0380918E0390918F033C |
:107C9000A0919003B0919103BC01CD0124E630E0A6 |
:107CA00040E050E00E94B878E0908A03F0908B03A7 |
:107CB000E21AF30AF092C207E092C10780918A03A8 |
:107CC00090918B03A0918C03B0918D03BC01CD01E9 |
:107CD00024E630E040E050E00E94B878DA01C901C3 |
:107CE00020918E0330918F038C01021B130B109394 |
:107CF000B7070093B6078091960190919701A091E4 |
:107D00009801B0919901BC01CD0128E631E040E035 |
:107D100050E00E9444782091090830910A0840916F |
:107D20000B0850910C08261737074807590764F0CD |
:107D3000261B370B480B590B2093090830930A0870 |
:107D400040930B0850930C082091090830910A08C1 |
:107D500040910B0850910C0857FF0CC0260F371F9D |
:107D6000481F591F2093090830930A0840930B08B5 |
:107D700050930C086091B4077091B5076E0D7F1D8C |
:107D80009B01442737FD4095542F809145039091E6 |
:107D90004603A0914703B0914803820F931FA41F8D |
:107DA000B51F8093450390934603A0934703B09378 |
:107DB00048038091090390910A03681B790BCB015A |
:107DC000AA2797FDA095BA2F29853A854B855C8512 |
:107DD000820F931FA41FB51F8093490390934A03FA |
:107DE000A0934B03B0934C03C090D101D090D2012B |
:107DF000E090D301F090D401C816D906EA06FB063C |
:107E0000C4F488EA91E6A0E0B0E08C199D09AE09BF |
:107E1000BF098093490390934A03A0934B03B09307 |
:107E20004C038093450390934603A0934703B0937C |
:107E3000480322273327A9012C193D094E095F0960 |
:107E40008091490390914A03A0914B03B0914C0358 |
:107E500082179307A407B507B4F4D701C601885A5F |
:107E60009146A040B0408093490390934A03A09369 |
:107E70004B03B0934C038093450390934603A09328 |
:107E80004703B09348036091C3077091C407600F24 |
:107E9000711F9B01442737FD4095542F80914D035E |
:107EA00090914E03A0914F03B0915003820F931F06 |
:107EB000A41FB51F80934D0390934E03A0934F03CF |
:107EC000B09350038091070390910803681B790BCE |
:107ED000CB01AA2797FDA095BA2F2D853E854F850A |
:107EE0005889820F931FA41FB51F8093510390934D |
:107EF0005203A0935303B0935403E090D501F09044 |
:107F0000D6010091D7011091D801E816F9060A07A9 |
:107F10001B07C4F488EA91E6A0E0B0E08E199F093F |
:107F2000A00BB10B8093510390935203A093530382 |
:107F3000B093540380934D0390934E03A0934F034B |
:107F4000B093500322273327A9012E193F09400B74 |
:107F5000510B8091510390915203A0915303B09122 |
:107F6000540382179307A407B507B4F4D801C701D7 |
:107F7000885A9146A040B040809351039093520399 |
:107F8000A0935303B093540380934D0390934E03F7 |
:107F9000A0934F03B093500380914103909142030B |
:107FA000A0914303B09144038093550390935603EB |
:107FB000A0935703B09358038091510390915203BB |
:107FC000A0915303B0915403809371039093720373 |
:107FD000A0937303B09374038091490390914A0373 |
:107FE000A0914B03B0914C038093690390936A0373 |
:107FF000A0936B03B0936C0380914D0390914E035B |
:10800000A0914F03B091500380936D0390936E0342 |
:10801000A0936F03B0937003809145039091460342 |
:10802000A0914703B0914803809365039093660342 |
:10803000A0936703B093680380911C0190911D0188 |
:1080400097FD079603E0959587950A95E1F790933C |
:10805000C4078093C30780911A0190911B0197FD7B |
:10806000079613E0959587951A95E1F79093B507D4 |
:108070008093B40780914702909148020F9734F49F |
:1080800088E19CEF9093C4078093C30780914702D7 |
:1080900090914802079734F480E398EF9093C407D7 |
:1080A0008093C307209102012A30A9F480914702EE |
:1080B00090914802835F934034F088EE93E0909370 |
:1080C000C4078093C30780914702909148028A5F5A |
:1080D0009340DCF014C08091470290914802815D8A |
:1080E000974034F088EE93E09093C4078093C307E1 |
:1080F0008091470290914802805E974034F080ED75 |
:1081000097E09093C4078093C307809145029091B4 |
:1081100046020F9734F488E19CEF9093B507809363 |
:10812000B4078091450290914602079734F480E3AA |
:1081300098EF9093B5078093B4072A30A9F4809103 |
:10814000450290914602835F934034F088EE93E0BD |
:108150009093B5078093B4078091450290914602B1 |
:108160008A5F9340DCF014C08091450290914602F2 |
:10817000815D974034F088EE93E09093B50780934B |
:10818000B4078091450290914602805E974034F09A |
:1081900080ED97E09093B5078093B4076091C80194 |
:1081A000662309F4AFC040911C0150911D018091DC |
:1081B0009A0390919B03481B590B5093A103409342 |
:1081C000A00320911C0130911D01280F391F37FF9A |
:1081D00002C02F5F3F4F3595279530939B03209327 |
:1081E0009A03413851051CF080E890E005C04058E2 |
:1081F0005F4F34F480E89FEF9093A1038093A00336 |
:1082000040911A0150911B0180919C0390919D0314 |
:10821000481B590B50939F0340939E0320911A01D2 |
:1082200030911B01280F391F37FF02C02F5F3F4FCE |
:108230003595279530939D0320939C034138510534 |
:108240001CF080E890E005C040585F4F34F480E8AF |
:108250009FEF90939F0380939E03462F5527809115 |
:10826000A0039091A103849FB001859F700D949FFE |
:10827000700D11249B0177FF02C0215F3F4FF4E096 |
:1082800035952795FA95E1F78091C3079091C4073A |
:10829000820F931F9093C4078093C30780919E031E |
:1082A00090919F03849FD001859FB00D949FB00D46 |
:1082B0001124AD019D01B7FF02C0215F3F4FE4E0F3 |
:1082C00035952795EA95E1F78091B4079091B50728 |
:1082D000820F931F9093B5078093B40780911C0180 |
:1082E00090911D01860F971F90931D0180931C0193 |
:1082F00080911A0190911B01840F951F90931B018F |
:1083000080931A010091C6071091C7078091AB07AF |
:108310009091AC07101611065CF59C0197FF04C004 |
:1083200022273327281B390BC901AA2797FDA095BF |
:10833000BA2F2091BC01332744275527BC01CD011A |
:108340000E9444789B01AC0197FF04C0215C3F4F21 |
:108350004F4F5F4F76E055954795379527957A951E |
:10836000D1F78091C1079091C207820F931F27C058 |
:1083700097FF03C0909581959F4FAA2797FDA095E1 |
:10838000BA2F2091BC01332744275527BC01CD01CA |
:108390000E9444789B01AC0197FF04C0215C3F4FD1 |
:1083A0004F4F5F4F66E055954795379527956A95EE |
:1083B000D1F78091C1079091C207821B930B9093D4 |
:1083C000C2078093C107E090CE07F090CF0780915D |
:1083D000AF079091B0071E141F045CF59C0197FF36 |
:1083E00004C022273327281B390BC901AA2797FD70 |
:1083F000A095BA2F2091BC01332744275527BC01F3 |
:10840000CD010E9444789B01AC0197FF04C0215C20 |
:108410003F4F4F4F5F4F96E05595479537952795BE |
:108420009A95D1F78091B6079091B707820F931F65 |
:1084300027C097FF03C0909581959F4FAA2797FD6E |
:10844000A095BA2F2091BC01332744275527BC01A2 |
:10845000CD010E9444789B01AC0197FF04C0215CD0 |
:108460003F4F4F4F5F4F86E055954795379527957E |
:108470008A95D1F78091B6079091B707821B930B2D |
:108480009093B7078093B6078091250687FF44C075 |
:10849000B989BB2309F040C0809103038823E1F52B |
:1084A000E1E0EE16E1E0FE064CF08091C30790910A |
:1084B000C4078E0D9F1D805091400DC0F0E0EF1657 |
:1084C000FFEFFF0664F48091C3079091C4078E0DFF |
:1084D0009F1D80509F4F9093C4078093C30721E056 |
:1084E000013012074CF08091B4079091B507800FCE |
:1084F000911F805091400CC03FEF0030130764F48F |
:108500008091B4079091B507800F911F80509F4FC5 |
:108510009093B5078093B407E2E1CD5E0C94EF78B9 |
:1085200080911403882301F58091E9028C7F809368 |
:10853000E902A6E4B4E0E2EEF6E09BE080910302FB |
:10854000882309F48C938D918183128291503896FF |
:1085500097FFF4CF80910302882359F080910302A2 |
:1085600081508093030205C08091E902816080936D |
:10857000E90280916E02882319F010926E0208952C |
:10858000809370028093720280916C028E7F809340 |
:108590006C0285EA8093BC000895CF93DF93AEE12F |
:1085A000B3E0CDE1D6E057E08991E82FFF27EE0F49 |
:1085B000FF1FED5BF84F0190F081E02DE259FF4F76 |
:1085C000EF3FF10521F01CF0EFEFF0E004C0F7FF02 |
:1085D00002C0E0E0F0E04C91242F3327E217F307CC |
:1085E000A9F0CF01821B930B97FD03969595879574 |
:1085F00095958795242F280F2C93822F9927E8177C |
:10860000F90714F4215001C02F5F2C93515011969B |
:1086100057FFCACF80912706883F38F0EFEFF0E090 |
:10862000E81BF109E25EFC4F80818093CE018091CE |
:10863000CE01882329F0843618F084E68093CE0199 |
:1086400080912906883F38F0EFEFF0E0E81BF10950 |
:10865000E25EFC4F80818093CC018091CC01882325 |
:1086600029F0843618F084E68093CC018091360698 |
:10867000883F38F0EFEFF0E0E81BF109E25EFC4FD5 |
:1086800080818093C7018091C7018B3010F48AE00C |
:1086900002C08F3F11F48093C70180916306883F29 |
:1086A00038F0EFEFF0E0E81BF109E25EFC4F80816B |
:1086B0008093DA078091DA07823010F481E002C0FB |
:1086C0008F3F11F48093DA0780916506883F38F078 |
:1086D000EFEFF0E0E81BF109E25EFC4F8081809350 |
:1086E000000880910008823010F481E002C08F3FC2 |
:1086F00011F48093000880915006883F38F0EFEF26 |
:10870000F0E0E81BF109E25EFC4F80818093D7071F |
:1087100080915106883F38F0EFEFF0E0E81BF10957 |
:10872000E25EFC4F80818093B10780915206883FC2 |
:1087300038F0EFEFF0E0E81BF109E25EFC4F8081DA |
:108740008093DF0790912806983F18F49093CD010D |
:1087500009C0EFEFF0E0E91BF109E25EFC4F808118 |
:108760008093CD01983F18F49093CD0109C0EFEFAD |
:10877000F0E0E91BF109E25EFC4F80818093CD01BE |
:1087800080912B06883F38F0EFEFF0E0E81BF1090D |
:10879000E25EFC4F80818093CB0180912D06883F63 |
:1087A00038F0EFEFF0E0E81BF109E25EFC4F80816A |
:1087B0008093C90180913506883F38F0EFEFF0E0F3 |
:1087C000E81BF109E25EFC4F80818093CA01809131 |
:1087D0003706883F38F0EFEFF0E0E81BF109E25E82 |
:1087E000FC4F80818093C60180913806883F38F025 |
:1087F000EFEFF0E0E81BF109E25EFC4F808180932F |
:10880000C80180913906883F38F0EFEFF0E0E81BAF |
:10881000F109E25EFC4F80818093C50180913A06A8 |
:10882000883F38F0EFEFF0E0E81BF109E25EFC4F23 |
:1088300080818093C40180914006883F38F0EFEF3B |
:10884000F0E0E81BF109E25EFC4F80818093C201F9 |
:1088500080914106883F38F0EFEFF0E0E81BF10926 |
:10886000E25EFC4F80818093FE0280914206883F49 |
:1088700038F0EFEFF0E0E81BF109E25EFC4F808199 |
:108880008093FD0280914306883F38F0EFEFF0E0DF |
:10889000E81BF109E25EFC4F80818093FC0280912D |
:1088A0004406883F38F0EFEFF0E0E81BF109E25EA4 |
:1088B000FC4F80818093FB0280915E06883F38F0F8 |
:1088C000EFEFF0E0E81BF109E25EFC4F808180935E |
:1088D000FA0280915F06883F38F0EFEFF0E0E81B86 |
:1088E000F109E25EFC4F80818093F902809160067D |
:1088F000883F38F0EFEFF0E0E81BF109E25EFC4F53 |
:1089000080818093F80280916106883F38F0EFEF14 |
:10891000F0E0E81BF109E25EFC4F80818093F702F2 |
:1089200080914506883F38F0EFEFF0E0E81BF10951 |
:10893000E25EFC4F80818093C10180914906883FAF |
:1089400038F0EFEFF0E0E81BF109E25EFC4F8081C8 |
:108950008093C00180915306883F38F0EFEFF0E03C |
:10896000E81BF109E25EFC4F80818093BF0180919A |
:108970005606883F38F0EFEFF0E0E81BF109E25EC1 |
:10898000FC4F80818093BE0180915706883F38F06C |
:10899000EFEFF0E0E81BF109E25EFC4F808180938D |
:1089A000BD0180915806883F38F0EFEFF0E0E81BFA |
:1089B000F109E25EFC4F80818093BC0180915D06ED |
:1089C000883F38F0EFEFF0E0E81BF109E25EFC4F82 |
:1089D00080818093BB0180917806883F38F0EFEF6B |
:1089E000F0E0E81BF109E25EFC4F80818093100803 |
:1089F0008091C201282F33272F5F3F4F8CE398E2ED |
:108A0000B9010E9483787093D0016093CF01809167 |
:108A1000330680930108809132068093C8079091B5 |
:108A20007A06933320F181E08093F602983F58F064 |
:108A3000EFEFF0E0E91BF109E25EFC4F8081823349 |
:108A400010F41092F60280914E0890914F0897FF13 |
:108A500008C08091F602882321F08091410480684B |
:108A600003C0809141048F778093410402C010922B |
:108A7000F60280914E0890914F0897FF1DC080919B |
:108A800014038823C9F08091F6028823A9F080910D |
:108A90000801909109018F5F9F4F71F488E99AE373 |
:108AA000909325028093240280E094EA9093090138 |
:108AB000809308011092F6028091F602882339F023 |
:108AC0008091BE01823D18F4825E8093BE01DF91E9 |
:108AD000CF910895A8E1B0E0E0E7F5E40C94D378F5 |
:108AE0000E94DE3A309102013C3010F4299A01C014 |
:108AF0002998E0901503F0901603FA82E98280919C |
:108B0000C80799270A96E816F90614F49A83898308 |
:108B100080911D03843608F05CC08091B60390916B |
:108B2000B703009731F001979093B7038093B60392 |
:108B300007C0109214038091E9028F7E8093E902AE |
:108B40003A3011F0343110F0289A01C02898809101 |
:108B5000EA029091EB02895E9340C0F180913D065C |
:108B6000282F33273A8329838091E90280618093FB |
:108B7000E90280911906A82FBB27AA0FBB1FFD0190 |
:108B8000E958F84F1182108280911A06282F332756 |
:108B9000220F331FC9018958984FFC01118210829E |
:108BA000AD5BB84F11961C921E922D5B384FD901C8 |
:108BB00011961C921E9280911C06E82FFF27EE0F43 |
:108BC000FF1FED5BF84F11821082C9C2109214038F |
:108BD000C6C280911D038D3808F4C1C28091E9029C |
:108BE0008F7E8093E90290913E0682E3989FC001B8 |
:108BF00011249093B7038093B603E981FA81B99762 |
:108C00008CF080911403882369F08091EA0290919E |
:108C1000EB02FFEF8F3F9F0729F001969093EB0245 |
:108C20008093EA028091EA029091EB028F3F9105D6 |
:108C300009F038F51092390310923A0310923B0371 |
:108C400010923C03109235031092360310923703B2 |
:108C5000109238031092A2031092A3031092A4035F |
:108C60001092A50310924103109242031092430305 |
:108C7000109244038A3F910549F481E08093BC033C |
:108C800005C08091E90282608093E90280911B0611 |
:108C9000E82FFF27EE0FFF1FED5BF84F80819181DA |
:108CA000813591050CF441C120911403222309F070 |
:108CB0003CC180911C06E82FFF27EE0FFF1FED5BE4 |
:108CC000F84F808191818C3491050CF406C180911C |
:108CD000B8038F5F8093B803893C08F426C13C3009 |
:108CE00010F4299801C0299A109214031092B80325 |
:108CF0001092EB021092EA0230911906E32FFF273F |
:108D0000EE0FFF1FED5BF84F808191818734910555 |
:108D1000B4F480911A06E82FFF27EE0FFF1FED5BDA |
:108D2000F84F808191810190F081E02DF7FF03C021 |
:108D3000F095E195FF4FE734F1050CF478C041E080 |
:108D400020911A06A22FBB27AA0FBB1FAD5BB84FFD |
:108D50008D919C9111978734910544F0E32FFF2763 |
:108D6000EE0FFF1FED5BF84F808191818D919C91FB |
:108D70008734910574F080911906E82FFF27EE0FD4 |
:108D8000FF1FED5BF84F80819181873491050CF0D6 |
:108D900042E0E22FFF27EE0FFF1FED5BF84F8081CF |
:108DA00091818634910574F480911906E82FFF278C |
:108DB000EE0FFF1FED5BF84F8081918187349105A5 |
:108DC0000CF043E0E22FFF27EE0FFF1FED5BF84FA3 |
:108DD000808191818A5B9F4F74F480911906E82FFE |
:108DE000FF27EE0FFF1FED5BF84F808191818734E5 |
:108DF00091050CF044E0E22FFF27EE0FFF1FED5B23 |
:108E0000F84F808191818A5B9F4F74F4809119069D |
:108E1000E82FFF27EE0FFF1FED5BF84F8081918158 |
:108E2000863491050CF445E0842F0E940B2D80912F |
:108E30001A06E82FFF27EE0FFF1FED5BF84F80812A |
:108E400091810190F081E02DF7FF03C0F095E1954D |
:108E5000FF4F7E97BCF480911906E82FFF27EE0F95 |
:108E6000FF1FED5BF84F808191818A5B9F4F54F427 |
:108E700081E080935C0488EE93E0909325028093D8 |
:108E8000240253C00E94052E0E94B82C80E00E944C |
:108E9000380780913F060E945D748091250680FF0F |
:108EA00010C08091140190911501875B934038F4B4 |
:108EB00080911401909115018E5E924010F40E94F1 |
:108EC000BB1A1092220280E00E94303881E0809329 |
:108ED000BB0380932202579A1FC080819181855BDA |
:108EE0009F4F0CF58091B8038F5F8093B803893C46 |
:108EF000E0F03C3010F4299801C0299A1092140334 |
:108F00001092B8031092EB021092EA0281E00E94E4 |
:108F1000303881E08093BB030E94052E68E770E043 |
:108F20000E946E3702C02093B80380911B06E82F81 |
:108F3000FF27EE0FFF1FED5BF84F808191818B5A69 |
:108F40009F4F0CF00CC130911403E0911C063323A9 |
:108F500009F0DAC0FF27EE0FFF1FED5BF84F8081AD |
:108F60009181855B9F4F0CF0CCC020917B06E22F56 |
:108F7000FF27EE0FFF1FED5BF84F80819181855B2E |
:108F80009F4F1CF0222309F0BCC08091B9038F5F72 |
:108F90008093B903893C08F4E2C03093B90380910F |
:108FA0004104882309F0A6C08091BB03882309F4FB |
:108FB000A1C081E090E09093EB028093EA0281E00F |
:108FC000809314031092A2031092A3031092A4039F |
:108FD0001092A50310924103109242031092430392 |
:108FE0001092440310923D0310923E0310923F03EF |
:108FF0001092400380913406E82EFF2400271127A9 |
:109000008091FD079091FE079C01442737FD409514 |
:10901000542FC801B7010E944478DC01CB01809332 |
:10902000510390935203A0935303B0935403809140 |
:109030000D0890910E089C01442737FD4095542F50 |
:10904000C801B7010E944478DC01CB018093490339 |
:1090500090934A03A0934B03B0934C038091710308 |
:1090600090917203A0917303B091740380934D03A8 |
:1090700090934E03A0934F03B093500380916903E4 |
:1090800090916A03A0916B03B0916C0380934503A8 |
:1090900090934603A0934703B0934803109239037B |
:1090A00010923A0310923B0310923C031092350346 |
:1090B0001092360310923703109238038091E90220 |
:1090C00088608093E902909179068FE0989F9001E3 |
:1090D000112480912F0390913003820F931F68E633 |
:1090E00071E00E94837897FD01969595879580930E |
:1090F000750335C08CED95E0909325028093240292 |
:109100002EC01092B9032BC0FF27EE0FFF1FED5B9F |
:10911000F84F808191818C349105FCF020917B0681 |
:10912000E22FFF27EE0FFF1FED5BF84F808191814B |
:10913000855B9F4F14F0222381F48091BA038F5FE7 |
:109140008093BA03893C58F0109214031092BA032A |
:109150001092EB021092EA0202C01092BA038091C0 |
:109160009401815080939401809194018F3F21F06C |
:109170008091E90284FF72C30E94CD428091C503B1 |
:109180009091C6039C01220F331F280F391FC090F6 |
:109190001906AC2DBB27AA0FBB1FFD01ED5BF84FD5 |
:1091A000B0902F064B2D552780819181849FF0012F |
:1091B000859FF00D949FF00D11242E0F3F1F37FF58 |
:1091C00002C02D5F3F4FB9017595679575956795FD |
:1091D000A958B84F80913006082F11278D919C9186 |
:1091E000809F7001819FF00C909FF00C11246E0DF8 |
:1091F0007F1D7093C6036093C5038091C703909150 |
:10920000C8039C01220F331F280F391FD0901A0664 |
:10921000AD2DBB27AA0FBB1FFD01ED5BF84F808171 |
:109220009181849FF001859FF00D949FF00D112492 |
:109230002E0F3F1F37FF02C02D5F3F4FA9015595ED |
:10924000479555954795A958B84F8D919C91809F0A |
:109250007001819FF00C909FF00C11244E0D5F1D4A |
:109260005093C8034093C7038091F602882309F402 |
:1092700048C0CB0177FD0396DC01B595A795B59560 |
:10928000A795CA0157FD0396FC01F595E795F5955D |
:10929000E7958091EA01682F772767FD70956A9FAF |
:1092A00090016B9F300D7A9F300D11248091FD034A |
:1092B000482F552747FD50954E9FC0014F9F900D59 |
:1092C0005E9F900D1124280F391F37FF02C0295FC0 |
:1092D0003F4F03E0359527950A95E1F730931C033E |
:1092E00020931B036E9F90016F9F300D7E9F300D6A |
:1092F00011244A9FC0014B9F900D5A9F900D11243D |
:109300003FC080917906E82FFF27E456FE4F868103 |
:109310008093EA0190819093FD03A82FBB27A7FDBE |
:10932000B095A69F9001A79F300DB69F300D1124D8 |
:10933000E92FFF27E7FDF095E49FC001E59F900D21 |
:10934000F49F900D1124280F391F37FF02C0295FA9 |
:109350003F4F13E0359527951A95E1F730931C039D |
:1093600020931B03A49F9001A59F300DB49F300D47 |
:109370001124E69FC001E79F900DF69F900D1124E8 |
:10938000281B390B37FF02C0295F3F4FF3E03595AB |
:109390002795FA95E1F730931A03209319038091EA |
:1093A0001C06E82FFF27EE0FFF1FED5BF84F8081B3 |
:1093B0009181909581959F4F909318038093170307 |
:1093C0008330910514F0029705C00FEF8E3F900790 |
:1093D00034F40296909318038093170304C01092FC |
:1093E0001803109217038091F9039091FA032091CA |
:1093F000F5033091F603820F931F00911B03109128 |
:109400001C03081B190B10931C0300931B03809172 |
:10941000F7039091F8032091F3033091F403820F46 |
:10942000931F8090190390901A03881A990A9092BA |
:109430001A038092190380911B06E82FFF27EE0F75 |
:10944000FF1FED5BF84FE080F18028E730E0E20E8F |
:10945000F31EF0921603E09215038091C70199273D |
:10946000AA2797FDA095BA2FBC01CD010E94B8771D |
:10947000DC01CB0120E030E040E251E4BC01CD0151 |
:109480000E942677DC01CB01BC01CD010E948A77C6 |
:10949000DC01CB01809307088091C6018093E0072F |
:1094A0008091C5019927AA2797FDA095BA2FBC01E5 |
:1094B000CD010E94B877DC01CB0120E030E040E232 |
:1094C00051E4BC01CD010E942677DC01CB01BC0137 |
:1094D000CD010E948A77DC01CB018093BB0780918C |
:1094E000C4018093D0078091680480FF59C08091A7 |
:1094F0001008813808F454C080916104992787FDD1 |
:1095000090952B2D3327829FA001839F500D929F12 |
:10951000500D1124040F151F10931C0300931B03FF |
:1095200080916204992787FD9095829FB001839F67 |
:10953000700D929F700D1124860E971E90921A0343 |
:109540008092190380916304282F332727FD3095DB |
:109550008091170390911803820F931F9093180323 |
:109560008093170380916504282F332727FD3095BA |
:1095700080912A069927289FD001299FB00D389FF6 |
:10958000B00D1124B0939B01A0939A0180916404C3 |
:1095900099278E159F0524F4909316038093150345 |
:1095A000809115039091160397FF04C01092160343 |
:1095B000109215038091250682FF02C01092E007E9 |
:1095C00040911B0350911C03CA0157FD03969C0157 |
:1095D000359527953595279537FF03C0309521950B |
:1095E0003F4F8091EE029091EF0282179307B4F4FF |
:1095F000CA0157FF03C0909581959F4F97FD039631 |
:1096000095958795959587959093EF028093EE02B7 |
:109610008536910544F084E690E001C0019790936F |
:10962000EF028093EE024091190350911A03CA0190 |
:1096300057FD03969C01359527953595279537FF5E |
:1096400003C0309521953F4F8091EC029091ED023F |
:1096500082179307B4F4CA0157FF03C09095819510 |
:109660009F4F97FD03969595879595958795909330 |
:10967000ED028093EC028536910544F084E690E09B |
:1096800001C001979093ED028093EC028091E90272 |
:1096900084FF08C01092EF021092EE021092ED02C9 |
:1096A0001092EC02ED2DFF27EE0FFF1FED5BF84F40 |
:1096B00040915406242F3327808191812817390740 |
:1096C00044F480917C0682FF04C081E08093020311 |
:1096D00013C0ED2DFF27EE0FFF1FED5BF84F842F1A |
:1096E000992720915506821B9109208131812817E5 |
:1096F000390714F41092020340911A06E42FFF2751 |
:10970000EE0FFF1FED5BF84F50915406852F992700 |
:1097100022273327281B390B8081918182179307D9 |
:1097200044F480917C0683FF04C081E080930103B0 |
:1097300016C080910103882391F0E42FFF27EE0FDC |
:10974000FF1FED5BF84F809155069927851B910906 |
:10975000208131818217930714F410920103EC2DBC |
:10976000FF27EE0FFF1FED5BF84F40915406242FAB |
:109770003327808191812817390744F480917C0632 |
:1097800080FF04C081E08093FF0217C08091FF0238 |
:10979000882399F0EC2DFF27EE0FFF1FED5BF84FAC |
:1097A000842F992720915506821B910920813181B0 |
:1097B0002817390714F41092FF0240911906E42F7C |
:1097C000FF27EE0FFF1FED5BF84F50915406852FDA |
:1097D000992722273327281B390B808191818217F3 |
:1097E000930744F480917C0681FF04C081E080935C |
:1097F000000316C080910003882391F0E42FFF2717 |
:10980000EE0FFF1FED5BF84F809155069927851BE2 |
:109810009109208131818217930714F4109200037B |
:1098200080910203882319F480910103811181E062 |
:10983000809303038091FF02882321F48091000329 |
:10984000882351F081E08093040310920303109267 |
:1098500002031092010302C080930403809103036A |
:10986000882321F480910403882369F080915306B2 |
:109870009927E981FA818E179F0714F49A838983C7 |
:1098800081E0809329038091E90284FF1AC010923D |
:1098900018031092170310921C0310921B031092CE |
:1098A0001A03109219039AE59093070888E78093AA |
:1098B000E0079093BB078093D007109203031092A8 |
:1098C00004038091D3079091D407A091D507B0915C |
:1098D000D607209171033091720340917303509128 |
:1098E0007403820F931FA41FB51F8093D307909317 |
:1098F000D407A093D507B093D6078091DB0790914A |
:10990000DC07A091DD07B091DE072090690330905D |
:109910006A0340906B0350906C03820D931DA41D4D |
:10992000B51D8093DB079093DC07A093DD07B09310 |
:10993000DE078091CA079091CB07A091CC07B09128 |
:10994000CD07E0906D03F0906E0300916F031091CE |
:109950007003EB82FC820D831E838E0D9F1DA01F62 |
:10996000B11F8093CA079093CB07A093CC07B09305 |
:10997000CD078091BC079091BD07A091BE07B09123 |
:10998000BF07E0906503F0906603009167031091B4 |
:109990006803EF82F88609871A878E0D9F1DA01F26 |
:1099A000B11F8093BC079093BD07A093BE07B093EF |
:1099B000BF07F0900403FB86FF2029F48091030386 |
:1099C000882309F460C01092610310926203109220 |
:1099D00063031092640310925D0310925E03109271 |
:1099E0005F03109260031092D3071092D407109275 |
:1099F000D5071092D6071092DB071092DC07109261 |
:109A0000DD071092DE071092CA071092CB07109262 |
:109A1000CC071092CD071092BC071092BD07109290 |
:109A2000BE071092BF078091510390915203A091FD |
:109A30005303B091540380934D0390934E03A0932E |
:109A40004F03B09350038091490390914A03A09132 |
:109A50004B03B0914C038093450390934603A0932E |
:109A60004703B093480310923402109233021092CD |
:109A700008031092070310920A03109209030B8542 |
:109A8000002309F0F2C180910303882309F0EDC19E |
:109A900080910A0690910B06815092402CF480919F |
:109AA0001403882309F4E1C190907B08A090340648 |
:109AB0006091FD077091FE07788F6F8B80910D0884 |
:109AC00090910E089A8B898B9FEF991609F4D9C053 |
:109AD000BB24CC24DD24CA01B901A60195010E9452 |
:109AE000B87879018A01EF89F88DCF01AA2797FD0F |
:109AF000A095BA2FE81AF90A0A0B1B0BC201B10193 |
:109B0000A60195010E94B87859016A0129893A890C |
:109B1000C901AA2797FDA095BA2FA81AB90ACA0A9F |
:109B2000DB0A292C332427FC3094432C532CC80106 |
:109B3000B701A20191010E94447897FF04C06150CF |
:109B40007E4F8F4F9F4F3B014C0109E095948794C6 |
:109B5000779467940A95D1F7C601B501A2019101E6 |
:109B60000E94447897FF04C061507E4F8F4F9F4FF3 |
:109B70005B016C0119E0D594C794B794A7941A952A |
:109B8000D1F78091EE029091EF02813491053CF47F |
:109B90008091EC029091ED0281349105D4F0D401D2 |
:109BA000C30197FE03C00196A11DB11D3C014D01EB |
:109BB0009594879477946794D601C501D7FE03C026 |
:109BC0000196A11DB11D5C016D01D594C794B79498 |
:109BD000A79480911C06E82FFF27EE0FFF1FED5B77 |
:109BE000F84F808191810190F081E02DF7FF03C053 |
:109BF000F095E195FF4F7A97A4F0C401B30123E0FB |
:109C000030E040E050E00E94B87839014A01C601D6 |
:109C1000B50123E030E040E050E00E94B8785901FF |
:109C20006A0180917D08282F332727FD3095432F27 |
:109C3000532F261537054805590514F439014A01F3 |
:109C4000992787FD9095909581959F4FAA2797FD1D |
:109C5000A095BA2F681679068A069B0614F43C0173 |
:109C60004D012A153B054C055D0514F459016A01A7 |
:109C7000A816B906CA06DB060CF0CFC05C016D0160 |
:109C8000CCC0EA2CFF2400271127CA01B901A80182 |
:109C900097010E94B87839014A014F89588DCA014D |
:109CA000AA2797FDA095BA2F681A790A8A0A9B0AF3 |
:109CB000C201B101A80197010E94B87859016A0157 |
:109CC00069897A89CB01AA2797FDA095BA2FA81A8E |
:109CD000B90ACA0ADB0AD401C30197FE03C00F9672 |
:109CE000A11DB11D3C014D01F4E09594879477943A |
:109CF0006794FA95D1F7D601C501D7FE03C00F9638 |
:109D0000A11DB11D5C016D01E4E0D594C794B79429 |
:109D1000A794EA95D1F78091EE029091EF028134F9 |
:109D200091053CF48091EC029091ED028134910513 |
:109D3000A4F0C401B30123E030E040E050E00E9411 |
:109D4000B87839014A01C601B50123E030E040E0AE |
:109D500050E00E94B87859016A0180911C06E82FF2 |
:109D6000FF27EE0FFF1FED5BF84F8081918101907F |
:109D7000F081E02DF7FF03C0F095E195FF4F7A9752 |
:109D8000A4F0C401B30123E030E040E050E00E94C1 |
:109D9000B87839014A01C601B50123E030E040E05E |
:109DA00050E00E94B87859016A0171E267167104A7 |
:109DB000810491042CF070E2672E712C812C912C7F |
:109DC00080EE68168FEF78068FEF88068FEF980683 |
:109DD00044F460EE662E6FEF762E6FEF862E6FEFF7 |
:109DE000962E91E2A916B104C104D1042CF050E2E0 |
:109DF000A52EB12CC12CD12CA0EEAA16AFEFBA061D |
:109E0000AFEFCA06AFEFDA0644F440EEA42E4FEFF0 |
:109E1000B42E4FEFC42E4FEFD42E8091510390916A |
:109E20005203A0915303B091540386199709A809CE |
:109E3000B9098093510390935203A0935303B093B5 |
:109E400054038091490390914A03A0914B03B09130 |
:109E50004C038A199B09AC09BD098093490390936F |
:109E60004A03A0934B03B0934C038091330290912B |
:109E700034028F3F910509F008F4C4C5BB85BB23AC |
:109E800009F04EC580910303882309F049C58091EC |
:109E90002903882309F044C5E0915C06EC87EE2392 |
:109EA00009F43EC58091D3079091D407A091D507BE |
:109EB000B091D607B7FF04C081509F4FAF4FBF4F3F |
:109EC000E92EFA2E0B2F112707FD1A95E092D307E2 |
:109ED000F092D4070093D5071093D6078091DB0743 |
:109EE0009091DC07A091DD07B091DE07B7FF04C0B9 |
:109EF00081509F4FAF4FBF4F892F9A2FAB2FBB275A |
:109F0000A7FDBA958D879E87AF87B88B8093DB07B7 |
:109F10009093DC07A093DD07B093DE0780913406B1 |
:109F2000A82EBB24CC24DD24209161033091620350 |
:109F30004091630350916403C601B5010E944478C7 |
:109F400097FF04C061507F4F8F4F9F4F672E782E31 |
:109F5000892E992487FC9A9460926103709262031F |
:109F6000809263039092640320915D0330915E03BD |
:109F700040915F0350916003C601B5010E9444788F |
:109F800097FF04C061507F4F8F4F9F4F272E382E71 |
:109F9000492E552447FC5A9420925D0330925E036B |
:109FA00040925F03509260038091590390915A034D |
:109FB000A0915B03B0915C03B7FF04C081509F4F39 |
:109FC000AF4FBF4F892F9A2FAB2FBB27A7FDBA9555 |
:109FD0008093590390935A03A0935B03B0935C035F |
:109FE000D801C70186199709A809B9098093AE035A |
:109FF0009093AF03A093B003B093B10320915B069D |
:10A00000E22EFF2400271127BC01CD01A8019701F2 |
:10A010000E94B87859016A012093BD033093BE03B2 |
:10A020004093BF035093C0038D859E85AF85B8894B |
:10A0300082199309A409B5098093B2039093B303DD |
:10A04000A093B403B093B503BC01CD01A80197015F |
:10A050000E94B8782093C1033093C2034093C30396 |
:10A060005093C403D601C501D7FE04C081509F4F51 |
:10A07000AF4FBF4F892F9A2FAB2FBB27A7FDBA95A4 |
:10A08000909308038093070357FF04C021503F4F6C |
:10A090004F4F5F4FBB2757FDBA95A52F942F832FA6 |
:10A0A00090930A03809309038091EE029091EF024E |
:10A0B00081349105DCF48091EC029091ED028134C1 |
:10A0C0009105A4F480911C06E82FFF27EE0FFF1FD7 |
:10A0D000ED5BF84F808191810190F081E02DF7FFD9 |
:10A0E00003C0F095E195FF4F7A97E4F080917B08EB |
:10A0F0008F3FC1F4809107039091080397FD01966B |
:10A1000095958795909308038093070380910903A1 |
:10A1100090910A0397FD01969595879590930A0370 |
:10A12000809309038091CA079091CB07A091CC0737 |
:10A13000B091CD07B7FF04C081509F4FAF4FBF4FC5 |
:10A14000892F9A2FAB2FBB27A7FDBA958093CA07FB |
:10A150009093CB07A093CC07B093CD078091BC0719 |
:10A160009091BD07A091BE07B091BF07B7FF04C093 |
:10A1700081509F4FAF4FBF4F892F9A2FAB2FBB27D7 |
:10A18000A7FDBA958093BC079093BD07A093BE0727 |
:10A19000B093BF078091710390917203A0917303F4 |
:10A1A000B09174032B813C814D815E81281B390B5A |
:10A1B0004A0B5B0B2093A6033093A7034093A8039D |
:10A1C0005093A9038091690390916A03A0916B0356 |
:10A1D000B0916C03EF80F88409851A85E81AF90AB2 |
:10A1E0000A0B1B0BE092AA03F092AB030093AC03A3 |
:10A1F0001093AD032093AE033093AF034093B003AD |
:10A200005093B103E092B203F092B3030093B4030E |
:10A210001093B50380914D0390914E03A0914F038D |
:10A22000B0915003821B930BA40BB50B80934D038D |
:10A2300090934E03A0934F03B09350038091450336 |
:10A2400090914603A0914703B09148038E199F094E |
:10A25000A00BB10B8093450390934603A093470353 |
:10A26000B0934803FC85FF23E1F020912703309150 |
:10A270002803213831054CF08091820390918303AB |
:10A280000196909383038093820320583F4F4CF4B0 |
:10A29000809182039091830301979093830380932D |
:10A2A0008203109228031092270381E090E090939C |
:10A2B000CA038093C903E090AE03F090AF0300910E |
:10A2C000B0031091B103D801C70117FF07C0882759 |
:10A2D0009927DC018E199F09A00BB10B8150924088 |
:10A2E000A040B04034F084E090E09093CA038093A3 |
:10A2F000C9038091CF039091D003A091D103B09175 |
:10A30000D2032091D3073091D4074091D5075091C3 |
:10A31000D607821B930BA40BB50B815E914BAF4FFD |
:10A32000BF4F8F539C49A040B04028F080917C08DB |
:10A3300089310CF4FFC041E0E41640E1F40640E04E |
:10A34000040740E014070CF473C08091CB0388230A |
:10A3500009F46AC0D801C70117FF07C088279927E9 |
:10A36000DC018E199F09A00BB10B9C01AD01B7FF59 |
:10A3700004C021503E4F4F4F5F4FF9E05595479530 |
:10A3800037952795FA95D1F78091C9039091CA0323 |
:10A39000820F931F9093CA038093C903D801C7010A |
:10A3A00017FF03C00796A11DB11DE3E0B595A79562 |
:10A3B00097958795EA95D1F78093BD039093BE0357 |
:10A3C000A093BF03B093C00389589341A040B0400D |
:10A3D00064F088E893E1A0E0B0E08093BD0390933F |
:10A3E000BE03A093BF03B093C0032091BD0330917F |
:10A3F000BE034091BF035091C00357FF04C02150DA |
:10A400003F4F4F4F5F4F232F342F452F552747FD89 |
:10A410005A958091070390910803820F931F9093A0 |
:10A4200008038093070306C081E08093CB0302C03A |
:10A430001092CB0360E0E61660EFF6066FEF0607BA |
:10A440006FEF16070CF073C08091CC03882309F4DA |
:10A450006AC0D801C70117FF07C088279927DC0108 |
:10A460008E199F09A00BB10B9C01AD01B7FF04C071 |
:10A4700021503E4F4F4F5F4F69E0559547953795B7 |
:10A4800027956A95D1F78091C9039091CA03820FED |
:10A49000931F9093CA038093C903D801C70117FF84 |
:10A4A00003C00796A11DB11D23E0B595A79597950B |
:10A4B00087952A95D1F78093BD039093BE03A0930F |
:10A4C000BF03B093C00388579C4EAF4FBF4F64F497 |
:10A4D00088E79CEEAFEFBFEF8093BD039093BE0380 |
:10A4E000A093BF03B093C0032091BD033091BE037E |
:10A4F0004091BF035091C00357FF04C021503F4F0C |
:10A500004F4F5F4F232F342F452F552747FD5A9527 |
:10A510008091070390910803820F931F9093080383 |
:10A520008093070311C081E08093CC030DC010928B |
:10A53000CC030AC01092CA031092C90388EE93E0BC |
:10A540009093DA018093D9018C85282F332780914D |
:10A55000C9039091CA032817390724F43093CA031A |
:10A560002093C90310917C08112379F0212F332700 |
:10A5700027FD30958091C9039091CA0328173907A8 |
:10A5800024F43093CA032093C9034091AE03509141 |
:10A59000AF036091B0037091B1034138510561057B |
:10A5A000710574F080918603909187032091C9030F |
:10A5B0003091CA03820F931F909387038093860381 |
:10A5C00040585F4F6F4F7F4F74F480918603909196 |
:10A5D00087032091C9033091CA03821B930B909388 |
:10A5E00087038093860381E090E09093CA03809371 |
:10A5F000C903C090B203D090B303E090B403F090CD |
:10A60000B503D701C601F7FE07C088279927DC01EB |
:10A610008C199D09AE09BF0981509240A040B040FD |
:10A6200034F084E090E09093CA038093C903809152 |
:10A63000D3039091D403A091D503B091D603209178 |
:10A64000DB073091DC074091DD075091DE07821B6C |
:10A65000930BA40BB50B815E914BAF4FBF4F8F5344 |
:10A660009C49A040B04018F019310CF4FFC001E043 |
:10A67000C01600E1D00600E0E00600E0F0060CF4B1 |
:10A6800073C08091CD03882309F46AC0D701C60145 |
:10A69000F7FE07C088279927DC018C199D09AE09B0 |
:10A6A000BF099C01AD01B7FF04C021503E4F4F4F81 |
:10A6B0005F4F09E055954795379527950A95D1F74E |
:10A6C0008091C9039091CA03820F931F9093CA038C |
:10A6D0008093C903D701C601F7FE03C00796A11DE9 |
:10A6E000B11D13E0B595A795979587951A95D1F764 |
:10A6F0008093C1039093C203A093C303B093C40398 |
:10A7000089589341A040B04064F088E893E1A0E00C |
:10A71000B0E08093C1039093C203A093C303B093AE |
:10A72000C4032091C1033091C2034091C3035091EF |
:10A73000C40357FF04C021503F4F4F4F5F4F232F9B |
:10A74000342F452F552747FD5A9580910903909145 |
:10A750000A03820F931F90930A038093090306C094 |
:10A7600081E08093CD0302C01092CD0320E0C21699 |
:10A7700020EFD2062FEFE2062FEFF2060CF073C0A7 |
:10A780008091CE03882309F46AC0D701C601F7FE81 |
:10A7900007C088279927DC018C199D09AE09BF09DC |
:10A7A0009C01AD01B7FF04C021503E4F4F4F5F4F9A |
:10A7B000E9E05595479537952795EA95D1F780912A |
:10A7C000C9039091CA03820F931F9093CA03809389 |
:10A7D000C903D701C601F7FE03C00796A11DB11D2D |
:10A7E00073E0B595A795979587957A95D1F780935E |
:10A7F000C1039093C203A093C303B093C4038857CB |
:10A800009C4EAF4FBF4F64F488E79CEEAFEFBFEFB5 |
:10A810008093C1039093C203A093C303B093C40376 |
:10A820002091C1033091C2034091C3035091C403EE |
:10A8300057FF04C021503F4F4F4F5F4F232F342FFE |
:10A84000452F552747FD5A958091090390910A039A |
:10A85000820F931F90930A038093090311C081E034 |
:10A860008093CE030DC01092CE030AC01092CA038B |
:10A870001092C90388EE93E09093DA018093D90196 |
:10A880004C85242F33278091C9039091CA03281740 |
:10A89000390724F43093CA032093C90380917C08BC |
:10A8A000882379F0282F332727FD30958091C9031D |
:10A8B0009091CA032817390724F43093CA032093D0 |
:10A8C000C9034091B2035091B3036091B4037091F6 |
:10A8D000B503413851056105710574F08091840319 |
:10A8E000909185032091C9033091CA03820F931F71 |
:10A8F000909385038093840340585F4F6F4F7F4F41 |
:10A90000CCF480918403909185032091C903309108 |
:10A91000CA03821B930B90938503809384030AC020 |
:10A9200010920A0310920903109208031092070371 |
:10A93000109229038091E007882341F410920A03C2 |
:10A940001092090310920803109207038091D30715 |
:10A950009091D407A091D507B091D6078093CF03EB |
:10A960009093D003A093D103B093D2038091DB07DF |
:10A970009091DC07A091DD07B091DE078093D303AF |
:10A980009093D403A093D503B093D60310926103A0 |
:10A9900010926203109263031092640310925D039D |
:10A9A00010925E0310925F0310926003109259039D |
:10A9B00010925A0310925B0310925C031092D3071B |
:10A9C0001092D4071092D5071092D6071092DB0789 |
:10A9D0001092DC071092DD071092DE071092CA0772 |
:10A9E0001092CB071092CC071092CD071092BC07A3 |
:10A9F0001092BD071092BE071092BF07109234024A |
:10AA000010923302E0901703F0901803C701F7FE8D |
:10AA100004C0882799278E199F0940976CF088EE0B |
:10AA200093E09093DA018093D9018091250684FD0B |
:10AA300003C081E08093BC0310913106A12EBB249A |
:10AA4000CC24DD24B701882777FD8095982F9701C6 |
:10AA5000F7FE04C0222733272E193F09442737FD6C |
:10AA60004095542F0E9444789B01AC01C601B5016A |
:10AA70000E94447897FF04C061507E4F8F4F9F4FD4 |
:10AA800059E095958795779567955A95D1F79B01EC |
:10AA9000812F99278E9DD0018F9DB00D9E9DB00D69 |
:10AAA0001124CD01B7FD03969595879595958795CA |
:10AAB000280F391F442737FD4095542F2093A203B8 |
:10AAC0003093A3034093A4035093A50380914103C3 |
:10AAD00090914203A0914303B0914403821B930BD6 |
:10AAE000A40BB50B8093410390934203A0934303BF |
:10AAF000B09344038155934CA040B04064F080E58E |
:10AB000093ECA0E0B0E08093410390934203A093C4 |
:10AB10004303B09344038091410390914203A09179 |
:10AB20004303B0914403805B9C43AF4FBF4F64F439 |
:10AB300080EB9CE3AFEFBFEF809341039093420320 |
:10AB4000A0934303B093440340902F0350903003ED |
:10AB50004114510409F478C18091250683FF74C122 |
:10AB60008091710390917203A0917303B09174036B |
:10AB7000B7FF04C081509E4FAF4FBF4F39E0B5952E |
:10AB8000A795979587953A95D1F76C0197FF04C0E3 |
:10AB9000D094C194D108D3948091690390916A03B1 |
:10ABA000A0916B03B0916C03B7FF04C081509E4F1E |
:10ABB000AF4FBF4F29E0B595A795979587952A95F3 |
:10ABC000D1F7BC0197FF03C0709561957F4FC61602 |
:10ABD000D7060CF46B01B601D7FE02C0695F7F4F48 |
:10ABE0003B0183E0759467948A95E1F702E0E02EDB |
:10ABF000F12C6E0C7F1C0CE112E0400E511E720114 |
:10AC00000027F7FC0095102F24EE3DEF420E531E57 |
:10AC10008091090890910A08A0910B08B0910C0846 |
:10AC20008090960190909701A0909801B090990122 |
:10AC3000BC01CD01A50194010E94B878E21AF30A83 |
:10AC4000040B150BC801B70128E631E040E050E0E5 |
:10AC50000E94B878DC01CB011CE4E12E1FEFF12E3D |
:10AC6000E80EF91E0091D9011091DA0101151105C4 |
:10AC700089F539E1C316D1046CF5809127039091D1 |
:10AC800028038E0D9F1D90932803809327038091A6 |
:10AC9000BC038823F9F0C201AA2797FDA095BA2F1B |
:10ACA000BC01CD01A50194010E944478DC01CB01D7 |
:10ACB0008093090890930A08A0930B08B0930C089E |
:10ACC000BC01CD010E94B87830932E0320932D0350 |
:10ACD0001092BC03C701B4E0880F991FBA95E1F741 |
:10ACE000B3010E948378CB01AA2797FDA095BA2FC4 |
:10ACF0002091090830910A0840910B0850910C08E6 |
:10AD0000280F391F4A1F5B1F2093090830930A0838 |
:10AD100040930B0850930C08F090CA016F2D7727D1 |
:10AD2000C69EC001C79E900DD69E900D112497FD22 |
:10AD30004F966C01A5E0D594C794AA95E1F76C19DC |
:10AD40007D096B0177FD7AC00115110509F06FC00F |
:10AD50000091EE021091EF028091EC029091ED02D1 |
:10AD6000080F191F17FF02C0095F1F4FF3E0159569 |
:10AD70000795FA95E1F7005C1F4FCA01B901A501DB |
:10AD800094010E94B878DA01C90120912D03309115 |
:10AD90002E03442737FD4095542F821B930BA40BA1 |
:10ADA000B50B845E9D4FAF4FBF4FBC01CD0128E670 |
:10ADB00031E040E050E00E94B878DC01CB01845BD8 |
:10ADC00090408C9DA0018D9D500D9C9D500D112497 |
:10ADD000CA01B8010E94837883E0F89E60011124C3 |
:10ADE000C616D70614F4B60108C0882799278C190F |
:10ADF0009D09681779070CF4BC019B01442737FDB6 |
:10AE00004095542F8091410390914203A0914303B8 |
:10AE1000B0914403820F931FA41FB51F8093410379 |
:10AE200090934203A0934303B09344030DC0015099 |
:10AE300010401093DA010093D90106C084EF91E02D |
:10AE40009093DA018093D90180912903882381F0BE |
:10AE50001092350310923603109237031092380384 |
:10AE60001092390310923A0310923B0310923C0364 |
:10AE7000F0900403FF20F1F48091E007282F33279E |
:10AE8000442755278091710390917203A091730319 |
:10AE9000B0917403BC01CD010E944478DC01CB0168 |
:10AEA000BC01CD0128EF3AE240E050E00E94B878C2 |
:10AEB000390102C066247724E0900303EE20F1F408 |
:10AEC0008091E007282F3327442755278091690375 |
:10AED00090916A03A0916B03B0916C03BC01CD010A |
:10AEE0000E944478DC01CB01BC01CD0128EF3AE29D |
:10AEF00040E050E00E94B878290102C04424552463 |
:10AF00008091B6079091B707893C91051CF088ECB9 |
:10AF100090E005C088539F4F34F488E39FEF9093EF |
:10AF2000B7078093B6078091C1079091C207893C0B |
:10AF300091051CF088EC90E005C088539F4F34F4D5 |
:10AF400088E39FEF9093C2078093C1078091C30766 |
:10AF50009091C407AA2797FDA095BA2F20910708C2 |
:10AF6000A22EBB24CC24DD24BC01CD01A601950179 |
:10AF70000E9444789B01AC018091B6079091B7077D |
:10AF8000AA2797FDA095BA2FE7E0880F991FAA1F5F |
:10AF9000BB1FEA95D1F7280F391F4A1F5B1F57FFC8 |
:10AFA00004C0215C3F4F4F4F5F4F76E0559547956A |
:10AFB000379527957A95D1F78301020F131F1093C8 |
:10AFC000C4070093C3078091B4079091B507AA27DF |
:10AFD00097FDA095BA2FBC01CD01A60195010E9455 |
:10AFE00044789B01AC018091C1079091C207AA27C8 |
:10AFF00097FDA095BA2F67E0880F991FAA1FBB1F66 |
:10B000006A95D1F7280F391F4A1F5B1F57FF04C0ED |
:10B01000215C3F4F4F4F5F4F96E0559547953795D1 |
:10B0200027959A95D1F74201820E931E9092B5070B |
:10B030008092B4078091020890910308880F991FAD |
:10B04000AA2797FDA095BA2F2091BB073327442745 |
:10B050005527BC01CD010E9444785B016C0197FF2C |
:10B0600008C08FE390E0A0E0B0E0A80EB91ECA1EB1 |
:10B07000DB1E86E0D594C794B794A7948A95D1F740 |
:10B080008091D007282F33274427552780915503D7 |
:10B0900090915603A0915703B0915803BC01CD0184 |
:10B0A0000E944478DC01CB01BC01CD0120EF35E5E5 |
:10B0B00040E050E00E94B878B501620F731F7093B2 |
:10B0C0000308609302080150104134F080E090E1E1 |
:10B0D0009093C4078093C3078091C3079091C407DE |
:10B0E0008050904F34F480E090EF9093C4078093A9 |
:10B0F000C307B1E08B16B0E19B0634F080E090E12D |
:10B100009093B5078093B4078091B4079091B507E9 |
:10B110008050904F34F480E090EF9093B507809387 |
:10B12000B4076150704134F080E090E190930308DF |
:10B130008093020880910208909103088050904FFC |
:10B1400034F480E090EF909303088093020880919C |
:10B150000001482F552780911E0190911F0148172B |
:10B16000590794F420911E0130911F0169817A8161 |
:10B17000649FC001659F900D749F900D1124B901CB |
:10B180000E946F787A83698389819A81880F991FD9 |
:10B19000880F991F9A8389834091250640FFBDC679 |
:10B1A000EE2009F0BAC6FF2009F0B7C6AA24BB24D6 |
:10B1B000450180910503909106039093EE058093DD |
:10B1C000ED0520918803309189032115310509F09F |
:10B1D0003FC080911401909115018959934058F016 |
:10B1E00087B5853F20F480913702815011C081E0FE |
:10B1F0008093E2034EC08091140190911501843632 |
:10B20000910508F587B58B30D0F0809137028F5FBC |
:10B21000809337029AE089029001112480911406EC |
:10B22000821B87BD8CE291E09093250280932402DB |
:10B230008EE591E090938903809388032AC081E092 |
:10B240008093E10326C0F092E103F092E20321C073 |
:10B2500080910F0390911003A0911103B0911203FC |
:10B2600014E0880F991FAA1FBB1F1A95D1F780936E |
:10B27000380290933902A0933A02B0933B02B09205 |
:10B280003602A0923502215030403093890320933A |
:10B2900088032091CD0141FF24C02233D8F480914E |
:10B2A000DF0181508093DF018F3FD9F510922A038F |
:10B2B00080910F0390911003A0911103B09112039C |
:10B2C00080930B0390930C03A0930D03B0930E0394 |
:10B2D00081E004C081E080932A0388EC8093DF0141 |
:10B2E00020C080919A0190919B01820F911D209125 |
:10B2F0002A063327829FF001839FF00D929FF00D65 |
:10B300001124CF01AA2797FDA095BA2F80930B0394 |
:10B3100090930C03A0930D03B0930E0381E08093F0 |
:10B320002A038091710390917203A0917303B091ED |
:10B330007403E0909601F0909701009198011091AC |
:10B340009901BC01CD01A80197010E94B87859016B |
:10B350006A018091690390916A03A0916B03B09197 |
:10B360006C03BC01CD01A80197010E94B878B90116 |
:10B37000C5010E946D768C01CC9714F00CE310E0AF |
:10B38000C8010E948E6A8C0180E2809395018091B1 |
:10B390002A03882309F447C48091E90299279C0174 |
:10B3A0002071307084FD3FC460917E0660FD04C052 |
:10B3B0008091250681FD0CC0C980DA803093D803C6 |
:10B3C0002093D7038091E902806C8093E90299C1B0 |
:10B3D0008091E90281FF6BC14091DB015091DC015A |
:10B3E000CA010F9620911503309116038217930717 |
:10B3F000BCF58091E103882399F58091E90287FFEC |
:10B4000015C08091E9028F778093E90280910F0344 |
:10B4100090911003A0911103B091120380930B033C |
:10B4200090930C03A0930D03B0930E038091E90257 |
:10B4300080648093E902241B350B2F50304037FF86 |
:10B4400003C0309521953F4F8091D7039091D80349 |
:10B45000820F931F9093D8038093D7038BE26EC023 |
:10B46000CA010F9728173907BCF58091E20388239A |
:10B4700099F58091E90286FF15C08091E9028F7BE2 |
:10B480008093E90280910F0390911003A091110322 |
:10B49000B091120380930B0390930C03A0930D03C0 |
:10B4A000B0930E038091E90280688093E902241B27 |
:10B4B000350B215F3F4F37FF03C0309521953F4F3C |
:10B4C0008091D7039091D803821B930B9093D8035C |
:10B4D0008093D7038DE232C08091E902807C69F1CC |
:10B4E0008091E9028F738093E9021092D803109241 |
:10B4F000D70320910F033091100340911103509115 |
:10B50000120320930B0330930C0340930D035093CD |
:10B510000E0361FF06C084EF91E0909325028093B3 |
:10B52000240280911303882341F42333310541051C |
:10B5300051051CF081E0809313038DE38093950106 |
:10B540002091D7033091D803C90137FF04C0882761 |
:10B550009927821B930B815092400CF491C08091EB |
:10B560002A069927289F7001299FF00C389FF00C1C |
:10B570001124C70160E075E00E948378CB01AA27FF |
:10B5800097FDA095BA2F20910B0330910C034091A9 |
:10B590000D0350910E03280F391F4A1F5B1F209384 |
:10B5A0000B0330930C0340930D0350930E03109242 |
:10B5B000D8031092D703C0900F03D0901003E090EF |
:10B5C0001103F0901203D701C60180509440A040AF |
:10B5D000B04082179307A407B5075CF4D701C601F2 |
:10B5E00080509C4FAF4FBF4F281739074A075B0762 |
:10B5F00044F080930B0390930C03A0930D03B0933E |
:10B600000E0380917E0681FF06C084E690E0909351 |
:10B6100025028093240280912E06882389F540918B |
:10B6200005035091060357FF02C04D5F5F4F5595CC |
:10B6300047955595479580911E0190911F01209146 |
:10B6400000013327489FB001499F700D589F700D2E |
:10B650001124CB01B9010E9483787093DC016093BF |
:10B66000DB01663471051CF486E490E005C067399F |
:10B67000710534F086E990E09093DC018093DB0162 |
:10B680008091880390918903892BB9F180910F03F0 |
:10B6900090911003A0911103B091120380930B03BA |
:10B6A00090930C03A0930D03B0930E0326C08091DA |
:10B6B0000F0390911003A0911103B09112038059D0 |
:10B6C0009140A040B04080930B0390930C03A09353 |
:10B6D0000D03B0930E0380912E06882311F0992755 |
:10B6E00002C088E790E09093DC018093DB018981C0 |
:10B6F0009A819093060380930503C0900503D09030 |
:10B70000060320910F0330911003409111035091D3 |
:10B7100012032B8B3C8B4D8B5E8B20910B03309156 |
:10B720000C0340910D0350910E036B897C898D8928 |
:10B730009E89261737074807590724F080917E060F |
:10B7400080FDB8C28091880390918903892B39F0DC |
:10B75000C0900503D0900603AA24BB24D9C08B89CE |
:10B760009C89AD89BE89821B930BA40BB50B80937A |
:10B77000A6039093A703A093A803B093A9038230D4 |
:10B7800070E897077FEFA7077FEFB7072CF481E0FA |
:10B7900090E8AFEFBFEF09C08F5F9F47A040B04078 |
:10B7A00064F08FEF9FE7A0E0B0E08093A603909352 |
:10B7B000A703A093A803B093A903A090A603B090F9 |
:10B7C000A7038091CC01282F332744275527809148 |
:10B7D000A6039091A703A091A803B091A903BC016F |
:10B7E000CD010E94447897FF04C0615E7F4F8F4F68 |
:10B7F0009F4FA5E09595879577956795AA95D1F781 |
:10B800006093A6037093A7038093A8039093A90362 |
:10B810006530FEEF7F07FFEF8F07FFEF9F072CF4E8 |
:10B8200084E09EEFAFEFBFEF09C0605074408040EE |
:10B83000904064F080E094E0A0E0B0E08093A60344 |
:10B840009093A703A093A803B093A9038090A603A5 |
:10B850009090A703209135023091360237FF02C045 |
:10B86000295F3F4FF3E035952795FA95E1F74FEFC4 |
:10B87000223834071CF421E83FEF05C02038310599 |
:10B8800014F020E830E0C901AA2797FDA095BA2F4F |
:10B890002091CE01332744275527BC01CD010E94BA |
:10B8A000447897FF04C06D5F7F4F8F4F9F4FE2E05A |
:10B8B0009595879577956795EA95D1F79B015FEF09 |
:10B8C000613075071CF420E03FEF06C06F3F710543 |
:10B8D00019F014F020E031E08091E902807C49F019 |
:10B8E000C90137FD03969C01359527953595279518 |
:10B8F0000DC080917E0680FF09C0C90137FD079603 |
:10B900009C0143E0359527954A95E1F7820E931EF9 |
:10B910002091CB01222309F454C06091310370912E |
:10B920003203809133039091340397FF04C0615830 |
:10B930007F4F8F4F9F4F37E0959587957795679508 |
:10B940003A95D1F73327442755270E94447897FF2B |
:10B9500004C0615E7F4F8F4F9F4FB5E095958795EF |
:10B9600077956795BA95D1F76093A6037093A7036F |
:10B970008093A8039093A9036138AFEF7A07AFEFE4 |
:10B980008A07AFEF9A072CF480E89FEFAFEFBFEF85 |
:10B990000AC06F3F71058105910569F064F080E090 |
:10B9A00091E0A0E0B0E08093A6039093A703A0935A |
:10B9B000A803B093A9038091A6039091A703880ED2 |
:10B9C000991E8091C901282F332780917F089927DC |
:10B9D00087FD9095289FF001299FF00D389FF00D6D |
:10B9E00011249F01F7FF02C021583F4F220F232F40 |
:10B9F000221F330BFFEF21383F071CF420E83FEFF5 |
:10BA000006C02F3F310519F014F020E031E0820E1E |
:10BA1000931EC401AA2797FDA095BA2FE0900503B5 |
:10BA2000F09006039701442737FD4095542FBC0141 |
:10BA3000CD010E94447897FF04C061507E4F8F4F24 |
:10BA40009F4FF9E09595879577956795FA95D1F78A |
:10BA5000C61AD70A8091D7039091D803892B09F091 |
:10BA600060C01E141F040CF05CC09501B7FE03C03B |
:10BA7000309521953F4F2D33310540F48091DB0304 |
:10BA80009091DC038C159D0574F526C02C53304035 |
:10BA9000E5E036952795EA95E1F72031310510F07C |
:10BAA0002FE030E04091DB035091DC031A141B04BB |
:10BAB000E4F480E190E0821B930B489F9001499F42 |
:10BAC000300D589F300D112474E0369527957A95E6 |
:10BAD000E1F72C153D0520F58091DD019091DE0107 |
:10BAE000C816D906F4F06C011CC0205F3F4F80914E |
:10BAF000DD019091DE01829FB001839F700D929FC6 |
:10BB0000700D11249B0164E0369527956A95E1F745 |
:10BB10004C155D0514F06A0104C0C216D30608F086 |
:10BB20006901C601AA2797FDA095BA2F2DE0880FBD |
:10BB3000991FAA1FBB1F2A95D1F79801442737FDEB |
:10BB40004095542FBC01CD010E94B8782093AA03E0 |
:10BB50003093AB034093AC035093AD03C090AA0362 |
:10BB6000D090AB038091D9039091DA039C01220F0E |
:10BB7000331F280F391F2C0D3D1D37FF02C02D5FCD |
:10BB80003F4FA90155954795559547955093DA0331 |
:10BB90004093D90380912606282F3327220F331F85 |
:10BBA000220F331F241735076CF480910108282FCA |
:10BBB0003327220F331F220F331F205530404217E7 |
:10BBC000530724F03093DA032093D90380917E0643 |
:10BBD00080FF14C08091D9039091DA03A981BA81C2 |
:10BBE0008A179B0724F0B093DA03A093D903E0915E |
:10BBF000D903F091DA03FA83E9835CC029813A81A1 |
:10BC00002E193F0937FF02C02D5F3F4F359527950D |
:10BC100035952795E090D903F090DA03E20EF31EF4 |
:10BC2000FA82E98247C080912E06882301F560914F |
:10BC300005037091060377FF02C06D5F7F4F759516 |
:10BC400067957595679540911E0150911F018091F0 |
:10BC50000001282F3327649FC001659F900D749FBA |
:10BC6000900D1124B9010E948378CB0101C099275E |
:10BC70009093DC018093DB018091DB019091DC01EA |
:10BC8000873491051CF486E490E005C0863991055F |
:10BC900034F086E990E09093DC018093DB01298108 |
:10BCA0003A813093DA032093D9038091E902806CC2 |
:10BCB0008093E9028091E90299279C0122703070FB |
:10BCC00081FF1CC18091DD039091DE03A091DF0311 |
:10BCD000B091E0030097A105B10521F08091130315 |
:10BCE0008130B1F449815A81CA01AA2797FDA095F4 |
:10BCF000BA2F2EE0880F991FAA1FBB1F2A95D1F7D4 |
:10BD00008093DD039093DE03A093DF03B093E00301 |
:10BD100080911303813019F482E0809313036981C9 |
:10BD20007A81CB01AA2797FDA095BA2F98014427C5 |
:10BD300037FD4095542FBC01CD010E944478DC01B1 |
:10BD4000CB018093AA039093AB03A093AC03B09371 |
:10BD5000AD03B7FF04C08150904EAF4FBF4F7C0181 |
:10BD60008D01FDE015950795F794E794FA95D1F7C5 |
:10BD7000E092AA03F092AB030093AC031093AD03DF |
:10BD80006091EA027091EB028FE0603A780750F51B |
:10BD90008091DD039091DE03A091DF03B091E00379 |
:10BDA0009C01AD01EAE05695479537952795EA95B0 |
:10BDB000D1F7821B930BA40BB50BA8019701F4E0FC |
:10BDC000220F331F441F551FFA95D1F7820F931F7F |
:10BDD000A41FB51F8093DD039093DE03A093DF03C0 |
:10BDE000B093E00360547F4118F58091DD0390919A |
:10BDF000DE03A091DF03B091E0039C01AD01ECE014 |
:10BE00005695479537952795EA95D1F7821B930B61 |
:10BE1000A40BB50BA801970172E0220F331F441F3A |
:10BE2000551F7A95D1F7820F931FA41FB51F29C004 |
:10BE300080913502909136028091350290913602C0 |
:10BE400097FF03C0909581959F4F843691050CF51F |
:10BE50008091DD039091DE03A091DF03B091E003B8 |
:10BE60009C01AD016EE056954795379527956A95EB |
:10BE7000D1F7821B930BA40BB50B8E0D9F1DA01F3A |
:10BE8000B11F8093DD039093DE03A093DF03B09393 |
:10BE9000E0038091DD039091DE03A091DF03B09178 |
:10BEA000E0031EE0B695A795979587951A95D1F76B |
:10BEB000909306038093050340912C06442399F048 |
:10BEC00055279C01BA010E948378C901861B970BF4 |
:10BED0009093DC038093DB03260F371F3093DE0142 |
:10BEE0002093DD011FC01092DC031092DB038FEF63 |
:10BEF00093E09093DE018093DD0114C01092130350 |
:10BF00001092DD031092DE031092DF031092E00323 |
:10BF1000309306032093050305C08091E902806CED |
:10BF20008093E9022090C807222D3327220F331F68 |
:10BF3000220F331F285D3F4FA981BA812A173B0783 |
:10BF400014F03A83298330900108832D9927880FB4 |
:10BF5000991F880F991F80559040E981FA818E17AB |
:10BF60009F0714F49A83898380916D02882321F4BA |
:10BF7000809186088F3FA1F08091EA029091EB02B8 |
:10BF80000297C09768F4E980FA801E141F0444F4F5 |
:10BF900081E090E09093EB028093EA023A83298358 |
:10BFA00009811A811093D2050093D1058091A203D3 |
:10BFB0009091A303A091A403B091A503F2E0880F90 |
:10BFC000991FAA1FBB1FFA95D1F700910208109183 |
:10BFD0000308081B190B29813A81213A31058CF09D |
:10BFE000C90137FD019695958795801791070CF447 |
:10BFF0008C01909581959F4F081719076CF48C015F |
:10C000000BC00135110514F000E510E03FEF003BD7 |
:10C01000130714F400EB1FEF232D3327220F331FD8 |
:10C02000220F331FC90149815A81841B950B801748 |
:10C0300091070CF48C0169817A81621B730B0617DE |
:10C0400017070CF48B018091C3079091C40760918E |
:10C050001B0370911C03861B970B9093D207809350 |
:10C06000D107D090E0072091390330913A034091F5 |
:10C070003B0350913C03DD2041F0661A770AC3016F |
:10C08000AA2797FDA095BA2F04C0AA2797FDA095CF |
:10C09000BA2F280F391F4A1F5B1F20933903309393 |
:10C0A0003A0340933B0350933C03809139039091B2 |
:10C0B0003A03A0913B03B0913C0381509A4FA040BA |
:10C0C000B04064F080E09AEFA0E0B0E080933903E4 |
:10C0D00090933A03A0933B03B0933C0380913903C0 |
:10C0E00090913A03A0913B03B0913C03805096405D |
:10C0F000AF4FBF4F64F480E096E0AFEFBFEF8093A7 |
:10C10000390390933A03A0933B03B0933C03C09050 |
:10C110003B062091D1073091D207F8E0FC1598F04A |
:10C120008C2D9927829F7001839FF00C929FF00CB9 |
:10C130001124C701F7FC07967C0163E0F594E794AE |
:10C140006A95E1F712C08C2D86959927829FA001F0 |
:10C15000839F500D929F500D1124CA0157FD0396E5 |
:10C160007C01F594E794F594E794A090CF01B0900A |
:10C17000D0019501442737FD4095542F8091390314 |
:10C1800090913A03A0913B03B0913C03BC01CD01D7 |
:10C190000E94B878E20EF31E9090BB01692D7727BC |
:10C1A00088279927980117FF04C022273327201BCF |
:10C1B000310B37FF02C02F5F3F4F35952795A9817F |
:10C1C000BA812A0F3B1F442737FD4095542F0E9408 |
:10C1D000447897FF04C0615C7F4F8F4F9F4F26E0EC |
:10C1E00095958795779567952A95D1F79B016E155B |
:10C1F0007F050CF47B01309521953F4FE216F30645 |
:10C200000CF479018091B4079091B50760911903FE |
:10C2100070911A03861B970B9093B3078093B20714 |
:10C220002091350330913603409137035091380304 |
:10C23000DD2041F0461A570AC201AA2797FDA095B2 |
:10C24000BA2F04C0AA2797FDA095BA2F280F391F2F |
:10C250004A1F5B1F20933503309336034093370307 |
:10C26000509338038091350390913603A0913703A2 |
:10C27000B091380381509A4FA040B04064F080E004 |
:10C280009AEFA0E0B0E08093350390933603A0933B |
:10C290003703B09338038091350390913603A09112 |
:10C2A0003703B091380380509640AF4FBF4F64F4CE |
:10C2B00080E096E0AFEFBFEF8093350390933603B5 |
:10C2C000A0933703B09338032091B2073091B3079E |
:10C2D00048E04C1598F08C2D9927829FB001839FE0 |
:10C2E000700D929F700D1124CB0177FD07966C01A4 |
:10C2F000B3E0D594C794BA95E1F712C0C6948C2DDB |
:10C300009927829FD001839FB00D929FB00D112479 |
:10C31000CD01B7FD03966C01D594C794D594C7940D |
:10C320009501442737FD4095542F80913503909116 |
:10C330003603A0913703B0913803BC01CD010E94B0 |
:10C34000B878C20ED31E692D7727882799279801C0 |
:10C3500017FF04C022273327201B310B37FF02C0F1 |
:10C360002F5F3F4F35952795E981FA812E0F3F1FAB |
:10C37000442737FD4095542F0E94447897FF04C00E |
:10C38000615C7F4F8F4F9F4FE6E09595879577953E |
:10C390006795EA95D1F79B016C157D050CF46B014F |
:10C3A000309521953F4FC216D3060CF4690162EE19 |
:10C3B000862E66E0962E59E9A52E56E0B52E4BE066 |
:10C3C000542E31EE632E37E0732ED5012C911216C8 |
:10C3D0000CF014C1203429F4E981FA81F88FEF8B35 |
:10C3E0001FC049815A81CA01AA2797FDA095BA2F7B |
:10C3F000332727FD3095432F532FBC01CD010E94D9 |
:10C40000447897FF04C0615C7F4F8F4F9F4F26E0B9 |
:10C4100095958795779567952A95D1F7788F6F8B46 |
:10C42000F5012181203439F42F89388D2E0D3F1DDF |
:10C43000388F2F8B2AC0203C39F44F89588D4E19E4 |
:10C440005F09588F4F8B21C0C701AA2797FDA09580 |
:10C45000BA2F332727FD3095432F532FBC01CD0131 |
:10C460000E94447897FF04C0615C7F4F8F4F9F4FBD |
:10C47000B6E09595879577956795BA95D1F7AF8989 |
:10C48000B88DA60FB71FB88FAF8BF501228120346E |
:10C4900039F42F89388D2C0D3D1D388F2F8B2AC0F4 |
:10C4A000203C39F44F89588D4C195D09588F4F8BBA |
:10C4B00021C0C601AA2797FDA095BA2F332727FDD3 |
:10C4C0003095432F532FBC01CD010E94447897FF34 |
:10C4D00004C0615C7F4F8F4F9F4FA6E09595879575 |
:10C4E00077956795AA95D1F7AF89B88DA60FB71F35 |
:10C4F000B88FAF8BF5012381203439F42F89388D23 |
:10C50000200F311F388F2F8B2AC0203C39F44F89E0 |
:10C51000588D401B510B588F4F8B21C0C801AA2743 |
:10C5200097FDA095BA2F332727FD3095432F532F22 |
:10C53000BC01CD010E94447897FF04C0615C7F4F2D |
:10C540008F4F9F4FF6E09595879577956795FA956C |
:10C55000D1F7AF89B88DA60FB71FB88FAF8BF30196 |
:10C56000808191812F89388D8217930764F4B901F6 |
:10C57000680F791F77FF02C06F5F7F4F75956795D2 |
:10C58000788F6F8B08C04F89588D440F551F481BFB |
:10C59000590B588F4F8B822D9927880F991F880F21 |
:10C5A000991F6F89788D861797075CF4832D9927DB |
:10C5B000880F991F880F991FAF89B88DA817B907E1 |
:10C5C00014F0988F8F8B8F89988D97FD0396959592 |
:10C5D000879595958795F4018183880F991F880F1A |
:10C5E000991F2F89388D281B390BC901880F828329 |
:10C5F000EF89F88DD301ED93FC9303C0F401118210 |
:10C6000012825A9422E030E0620E731E44E050E041 |
:10C61000A40EB51E68E070E0860E971E57FED5CEBC |
:10C62000E2E1C85E0C94EF788091EF039091F00303 |
:10C63000A091F103B091F2038093E7039093E80394 |
:10C64000A093E903B093EA038091EB039091EC038C |
:10C65000A091ED03B091EE038093E3039093E40384 |
:10C66000A093E503B093E60308951092FA031092A5 |
:10C67000F9031092F8031092F703089584B1806AC9 |
:10C6800084B93D9A82E58CBD1DBC459A81E08093BA |
:10C6900013088AEA8093240883E8809325088AE0B7 |
:10C6A00080932608109228081092270810922A08D2 |
:10C6B0001092290810927E08109246080895309131 |
:10C6C0001308332309F085C00DB407FE82C084E04F |
:10C6D00080932302459A2EB58091FE0399278130DD |
:10C6E000910589F0823091051CF4892B21F03EC020 |
:10C6F0000297B9F03BC0309345082093FF032138DF |
:10C70000A9F581E008C0253549F48091FF03820F27 |
:10C710008093FF0382E08093FE0328C03093FE03E2 |
:10C7200025C080914508E82FFF27EF59F74F208358 |
:10C730008F5F809345089091FF038A31A0F02917FD |
:10C7400069F48AE1A1E6B8E0E7E4F8E00D9001922F |
:10C750008A95E1F781E08093460802C0309346084D |
:10C760001092FE0303C0920F9093FF0320912308C1 |
:10C77000203208F028C045980000000000000000AA |
:10C7800000000000000000000000000000000000A9 |
:10C790000000000000000000000000000000000099 |
:10C7A0000000000000000000E0911C08F0911D084E |
:10C7B000E20FF11D80818EBD809143089081890F29 |
:10C7C0008093430803C081E0809313082F5F209378 |
:10C7D00023080895EF92FF920F931F9380913406E0 |
:10C7E0009927880F991F880F991F7C010027F7FC54 |
:10C7F0000095102F8091710390917203A0917303A3 |
:10C80000B0917403BC01CD01A80197010E94B878D2 |
:10C8100030932808209327088091690390916A0338 |
:10C82000A0916B03B0916C03BC01CD01A8019701ED |
:10C830000E94B87830932A0820932908209109088B |
:10C8400030910A0840910B0850910C08DA01C90197 |
:10C85000E3E0880F991FAA1FBB1FEA95D1F7820F4B |
:10C86000931FA41FB51F820F931FA41FB51F2091F4 |
:10C870009601309197014091980150919901BC0126 |
:10C88000CD010E94B8783093300820932F08809112 |
:10C890008203909183032091430230914402821BD2 |
:10C8A000930B9093360880933508E0917803F091CC |
:10C8B00079038091D8079091D907BF010E948378AE |
:10C8C000CB019B01220F331F220F331F280F391F6B |
:10C8D000280F391F37FF02C02D5F3F4F3595279531 |
:10C8E0003595279530932C0820932B0880910508C7 |
:10C8F00090910608BF010E9483789B01220F331F8D |
:10C90000220F331F260F371F260F371F37FF02C096 |
:10C910002D5F3F4F359527953595279530932E08F8 |
:10C9200020932D0810927903109278031092D90762 |
:10C930001092D807109206081092050880912608D8 |
:10C9400099278D30910509F466C08E3091055CF40D |
:10C950008B30910509F48EC08C3091050CF00FC11D |
:10C960000A9761F0ADC18F30910509F481C18F3014 |
:10C9700091050CF45CC1409799F1A2C18091FE022F |
:10C98000809337088091FD02809338088091FC02E3 |
:10C99000809339088091FB0280933A088091FA02D3 |
:10C9A00080933B088091F90280933C088091F802C3 |
:10C9B00080933D088091F70280933E088091E902C0 |
:10C9C00080933F088091E902837F8093E9020E946F |
:10C9D000052E80934008809175038093410870C1B3 |
:10C9E000809180089091810890933808809337084F |
:10C9F000809184089091850890933A088093390833 |
:10CA000080911E0190911F0180933B08809100014D |
:10CA100080933C0855C180916806809337088091C7 |
:10CA200069068093380880916A068093390880915E |
:10CA30006B0680933A0880916C0680933B08809146 |
:10CA4000700680933C088091710680933D08809128 |
:10CA5000720680933E088091750680933F0880910E |
:10CA600073068093400880917406809341088091FA |
:10CA70007606DAC0F89480911B06E82FFF27EE0FA8 |
:10CA8000FF1FED5BF84F0190F081E02DE038F105DC |
:10CA90001CF0EFE7F0E006C02FEFE138F20714F4E6 |
:10CAA000E1E8FFEFE093370880911C06E82FFF27AD |
:10CAB000EE0FFF1FED5BF84F0190F081E02DE038A5 |
:10CAC000F1051CF0EFE7F0E006C06FEFE138F60784 |
:10CAD00014F4E1E8FFEFE093380880911A06E82F9C |
:10CAE000FF27EE0FFF1FED5BF84F0190F081E02D67 |
:10CAF000E038F1051CF0EFE7F0E006C08FEFE13819 |
:10CB0000F80714F4E1E8FFEFE09339088091190683 |
:10CB1000E82FFF27EE0FFF1FED5BF84F0190F0812C |
:10CB2000E02DE038F1051CF0EFE7F0E006C02FEF54 |
:10CB3000E138F20714F4E1E8FFEF7894E0933A0863 |
:10CB400080911E0380933B0880911F0380933C08D3 |
:10CB50008091200380933D088091210380933E08BB |
:10CB60008091220380933F088091230380934008A3 |
:10CB700080912403809341088091250355C08091C2 |
:10CB80005C04863018F010925C0485E080933708CE |
:10CB9000809177068093380880910F03909110035D |
:10CBA000A0911103B0911203BC01CD0125E030E04A |
:10CBB00040E050E00E94B87830933A08209339085A |
:10CBC00080910B0390910C03A0910D03B0910E0383 |
:10CBD000BC01CD0125E030E040E050E00E94B87893 |
:10CBE00030933C0820933B0880916D0680933D086C |
:10CBF00080916E0680933E0880916F0680933F0877 |
:10CC000080911D03809340088091430790914407D1 |
:10CC1000809341088091D1059091D20597FD0396AC |
:10CC200095958795959587958093420849C0109270 |
:10CC3000370882E5809338081092390880E18093A4 |
:10CC40003A088091020180933B08809141048093CF |
:10CC50003C088091420480933D0880914304809376 |
:10CC60003E088091440480933F088091450426C08B |
:10CC700080914D068093370880917D068093380817 |
:10CC80008091C101809339088091460680933A08CB |
:10CC90008091470680933B088091480680933C082A |
:10CCA0008091C00180933D0880914A0680933E08A0 |
:10CCB00080914B0680933F0880914C0680934008FA |
:10CCC00080914608882309F4D8C08AEF8093E9014F |
:10CCD0004091480850914908CA0181509E4F8F5F8A |
:10CCE0009340B0F420914A0830914B08C90181501B |
:10CCF0009E4F8F5F934060F48091250685FF08C0AA |
:10CD00005093FA034093F9033093F8032093F70309 |
:10CD100080914E0890914F0821E08936920724F4C3 |
:10CD20009093300380932F0380912F0390913003D1 |
:10CD300020912D0330912E03821B930B845E9D4F17 |
:10CD400068E671E00E948378845B904090932C03A6 |
:10CD500080932B0320915208309153088091240234 |
:10CD6000909125028217930740F480915C048823F8 |
:10CD700021F43093250220932402809147089927BB |
:10CD80008836910549F18936910524F48736910555 |
:10CD900031F07BC08936910509F445C076C0809199 |
:10CDA000540880937B088091550880937D0880917A |
:10CDB000560880937C088091570880937E08809164 |
:10CDC000580880937F08809159088093EA018091E8 |
:10CDD0005A088093FD0359C08091540880931E081F |
:10CDE0008091550880931F088091560880932008F1 |
:10CDF00080915708809321088091580880932208D9 |
:10CE00008091C10590915908892B8093C10590911B |
:10CE10005A089093FB038091C20583709C70892B04 |
:10CE20008093C20532C08091540880931408809189 |
:10CE300055088093150880915608809316088091B4 |
:10CE4000570880931708809158089091590890933B |
:10CE500019088093180880915A0890915B08909364 |
:10CE60001B0880931A0880915C08992787FD90958C |
:10CE7000909376078093750708C01092FA0310927A |
:10CE8000F9031092F8031092F7031F910F91FF908E |
:10CE9000EF90089580911308882309F43BC04598CA |
:10CEA00084E298E090931D0880931C089091FC0305 |
:10CEB000E92FFF27E052FE4F9F5F9093FC03808194 |
:10CEC00080932608993010F01092FC0310921308FA |
:10CED0000E94EA6381E080932308000000000000C4 |
:10CEE0000000000000000000000000000000000042 |
:10CEF0000000000000000000000000000000000032 |
:10CF000000000000000000000000809124088093D1 |
:10CF100043088EBD089587B18C6087B942984398C5 |
:10CF20001092010480E88093EC0110920004809339 |
:10CF3000EB010895809106048150809306048F3F91 |
:10CF400009F0FBC024E0209306048091E9029927B0 |
:10CF500080739070892B21F48091420480FF1CC063 |
:10CF600080916606882349F080910904882311F492 |
:10CF70002093010481E0809309048091670688234F |
:10CF8000B9F080910A04882319F484E080930004A6 |
:10CF900081E080930A040CC01092090410920A04E4 |
:10CFA0008091620680930704809164068093080450 |
:10CFB00080910904882309F040C080917C06282FC5 |
:10CFC000332724FF07C080911403882319F425FD1B |
:10CFD0004DC04EC090916306983F50F08091DA07A3 |
:10CFE0008D3D30F08091070488230CF43FC040C091 |
:10CFF000983F48F08091DA078A3028F4809107043E |
:10D000008823B4F133C080910104815080930104DE |
:10D010008F3F79F58091DA078150809301048091E8 |
:10D02000EC01813011F480E801C086958093EC0119 |
:10D030008091EC019091070417C080910104815008 |
:10D04000809301048F3FA9F489E0809301048091CB |
:10D05000EC01813011F480E801C086958093EC01E9 |
:10D060008091EC0190916606892311F0429A01C0EB |
:10D07000429880910A04882309F043C080917C067D |
:10D08000282F332724FF07C080911403882319F425 |
:10D0900026FD50C034C090916506983F50F08091B5 |
:10D0A00000088D3D30F08091080488230CF442C0C4 |
:10D0B00026C0983F48F0809100088A3028F480917B |
:10D0C00008048823E4F036C08091000481508093E6 |
:10D0D00000048F3F91F580910008815080930004F7 |
:10D0E0008091EB01813011F480E801C08695809336 |
:10D0F000EB018091EB01909108048923D9F44398C6 |
:10D100000895809100048150809300048F3FA9F41A |
:10D1100089E0809300048091EB01813011F480E874 |
:10D1200001C086958093EB018091EB019091670699 |
:10D13000892311F0439A0895439808954FB724E145 |
:10D1400030E0F8948091C9008F778093C900809176 |
:10D15000C9008F7B8093C9008091C9008F7D809327 |
:10D16000C9005A9A52985B9A539A832F99278093B1 |
:10D17000CD002093CC008091C80082608093C800CD |
:10D1800080E18093C9008091CA008F778093CA00A4 |
:10D190008091CA008F7B8093CA008091CA008F7DE6 |
:10D1A0008093CA008091CA008F7E8093CA008091CC |
:10D1B000CA00877F8093CA008091C9008B7F8093CB |
:10D1C000C9008091CA0084608093CA008091CA001F |
:10D1D00082608093CA008091C80087FF03C080915D |
:10D1E000CE00F9CF8091C90080688093C9004FBFFD |
:10D1F0000895EF92FF920F931F93CF93DF93482FE1 |
:10D2000000E010E08091ED01813061F41092ED01B9 |
:10D2100084E480930B0410920D0410920C0410927D |
:10D220000E042BC180910B04882319F421E030E017 |
:10D2300001C0980190910C04992371F4232B11F0F3 |
:10D2400081E010C084E480930B0490930D049093CC |
:10D250000C0490930E04FAC0913069F4232B09F06A |
:10D26000EBC082E080930C0480910D048F5F80936B |
:10D270000D0483E0E9C09230D1F4232B09F0DCC027 |
:10D2800083E080930B0440930E0490910D04923040 |
:10D2900039F410920F0447FF03C081E080930F041C |
:10D2A00083E080930C049F5F90930D04CFC0933074 |
:10D2B00009F0C2C0232B09F0BFC090930B0482E099 |
:10D2C00080930C0480910D048F5F80930D04209156 |
:10D2D0000E04822F9927782F6627842F9927682B91 |
:10D2E000792B80913F06813049F47370CB018050D7 |
:10D2F000924063E070E00E94837817C0823061F44E |
:10D300007770CB018050944066E070E00E94837893 |
:10D310002695269526950BC0737068567140CB01F3 |
:10D3200077FD0196BC017595679526952695022F88 |
:10D3300011270F7010700F5F1F4F0D30110508F08F |
:10D3400074C07801E00EF11EF701ED5BF84F8081AB |
:10D3500091819B01281B390BC90137FF03C09095B0 |
:10D3600081959F4F069794F480911D03883C30F47B |
:10D3700080911D03865F80931D0308C088EC809315 |
:10D380001D0380916F008F7D80936F00F701ED5B2F |
:10D39000F84F808191819C01220F331F280F391F84 |
:10D3A000260F371F37FF02C02D5F3F4FE901D5958C |
:10D3B000C795D595C795CB0101968C179D0714F499 |
:10D3C000219706C061507040C617D7070CF421960C |
:10D3D00080911D03843BD0F0F701ED5BF84F808115 |
:10D3E0009181FE01E81BF90BCF0163E070E00E9420 |
:10D3F0008378CB01880F991F860F971F27E737E0A7 |
:10D40000E20EF31EF7019183808307C027E737E020 |
:10D41000E20EF31EF70111821082000F111F0D5B47 |
:10D42000184FF801D183C08311C00231110570F08B |
:10D4300081E08093ED010AC081E08093ED011092BC |
:10D440000D0410920F0484E480930B0480910D046A |
:10D45000803198F080910F04882331F48091ED01A0 |
:10D46000882311F48093940110920D0410920F04FC |
:10D4700010920C0484E480930B04E6E0CDB7DEB791 |
:10D480000C94FB78CF93FC0197FF05C0CFEFF0958C |
:10D49000E195FF4F01C0C1E028E631E0CF01B901BD |
:10D4A0000E948378FC018B35910554F08B55904098 |
:10D4B0008A35910538F484EB90E08E1B9F0BFC01BC |
:10D4C00041E00DC0CF01855B90408A35910518F48D |
:10D4D000E45BF04003C02E1B3F0BF9014FEFEE0F52 |
:10D4E000FF1FE15DF54F259134918C2F992787FD22 |
:10D4F0009095289FB001299F700D389F700D1124C1 |
:10D50000842F992787FD9095689FA001699F500DF2 |
:10D51000789F500D1124CA01CF9108952AE530E07B |
:10D52000281B390BC9010E94426A0895CF93DF93EB |
:10D5300080E00E94F96F80911E0190911F016AE0C6 |
:10D5400070E00E9483789F938F9380911E01909149 |
:10D550001F016AE070E00E9483787F936F938DEFE4 |
:10D560009AE09F938F93CCEEDFE6DF93CF93E09129 |
:10D570002804F091290409952DB73EB7285F3F4F45 |
:10D580002DBF8091E9018823B9F186E00E94F96FEF |
:10D5900080911808909119086AE070E00E946F78F5 |
:10D5A0007F936F938FED90E09F938F938091090805 |
:10D5B00090910A08A0910B08B0910C082091960157 |
:10D5C000309197014091980150919901BC01CD0192 |
:10D5D0000E94B8783F932F9386E09BE09F938F93B0 |
:10D5E000DF93CF93E0912804F091290409958DB73A |
:10D5F0009EB70A968DBF12C086E00E94F96F82E145 |
:10D600009BE09F938F93DF93CF93E0912804F09159 |
:10D61000290409950F900F900F900F908091FB03B4 |
:10D620008823C1F086E00E94F96F8091FB0399275F |
:10D630009F938F9389E19BE09F938F93DF93CF9389 |
:10D64000E0912804F091290409952DB73EB72A5F8F |
:10D650003F4F2DBF80E10E94F96F8091F3019091BF |
:10D66000F4016CE370E00E946F789F938F93809138 |
:10D67000F3019091F4016CE370E00E946F787F9366 |
:10D680006F9380918408909185089F938F9384E293 |
:10D690009BE09F938F93CCEEDFE6DF93CF93E091F7 |
:10D6A0002804F09129040995809125062DB73EB7ED |
:10D6B000265F3F4F2DBF80FF29C08AE10E94F96F8E |
:10D6C0008091950199279F938F9380910F0390915B |
:10D6D0001003A0911103B0911203BC01CD0124E607 |
:10D6E00030E040E050E00E94B8783F932F9381E310 |
:10D6F0009BE09F938F93DF93CF93E0912804F09169 |
:10D70000290409958DB79EB708968DBFDF91CF91FB |
:10D710000895CF93DF9380E00E94F96F8091010715 |
:10D72000992787FD90959F938F938091F90699276C |
:10D7300087FD90959F938F938091F106992787FDA0 |
:10D7400090959F938F938091E906992787FD9095F7 |
:10D750009F938F9388E39BE09F938F93CCEEDFE6BC |
:10D76000DF93CF93E0912804F0912904099580E19B |
:10D770000E94F96F2DB73EB7245F3F4F2DBF8091B8 |
:10D780002107992787FD90959F938F938091190783 |
:10D79000992787FD90959F938F93809111079927E3 |
:10D7A00087FD90959F938F9380910907992787FD17 |
:10D7B00090959F938F9388E49BE09F938F93DF9343 |
:10D7C000CF93E0912804F0912904099580911706E0 |
:10D7D0002DB73EB7245F3F4F2DBF853098F480E1D1 |
:10D7E0000E94F96F88E59BE09F938F93DF93CF931F |
:10D7F000E0912804F091290409950F900F900F9063 |
:10D800000F9018C08730B0F488E10E94F96F8FED57 |
:10D8100090E09F938F9389E69BE09F938F93DF9394 |
:10D82000CF93E0912804F091290409958DB79EB714 |
:10D8300006968DBFDF91CF9108950F931F9380E0DF |
:10D840000E94F96F2AE030E0809180089091810871 |
:10D85000B9010E946F789F938F9380918008909177 |
:10D860008108B9010E946F787F936F9380911E01A8 |
:10D8700090911F01B9010E9483789F938F938091AB |
:10D880001E0190911F01B9010E9483787F936F93CD |
:10D8900082E79BE09F938F930CEE1FE61F930F93FD |
:10D8A000E0912804F0912904099580E10E94F96F24 |
:10D8B0008DB79EB70C968DBF809184089091850896 |
:10D8C0009F938F9380918208909183089F938F9369 |
:10D8D00085E89BE09F938F931F930F93E09128041B |
:10D8E000F091290409958DB79EB708968DBF1F91B9 |
:10D8F0000F9108950F931F93CF93DF938091E901C8 |
:10D90000CCEEDFE6882309F478C080E00E94F96F4E |
:10D910008091150899279F938F93809117089927D5 |
:10D920009F938F9381E99BE09F938F938E01DF9369 |
:10D93000CF93E0912804F091290409958DB79EB703 |
:10D9400008968DBF80911608833031F48CE00E94D8 |
:10D95000F96F80EA9BE005C08CE00E94F96F85EAD0 |
:10D960009BE09F938F93DF93CF93E0912804F091F6 |
:10D97000290409950F900F900F900F908091140833 |
:10D9800081FF12C08CE00E94F96F8AEA9BE09F93AE |
:10D990008F931F930F93E0912804F0912904099528 |
:10D9A0000F900F900F900F9080E10E94F96F8FED14 |
:10D9B00090E09F938F9380911A0890911B089F93FA |
:10D9C0008F9380911808909119086AE070E00E9486 |
:10D9D0006F787F936F938FEA9BE09F938F938CEE8A |
:10D9E0009FE69F938F93E0912804F0912904099575 |
:10D9F0008DB79EB70A968DBF12C082E00E94F96F64 |
:10DA00008FEB9BE09F938F93DF93CF93E09128045C |
:10DA1000F091290409950F900F900F900F90DF91CE |
:10DA2000CF911F910F910895CF93C82F209110048B |
:10DA30002093110499278F32910509F180339105C4 |
:10DA40001CF44F97A1F02CC08F34910501F18F3851 |
:10DA5000910531F5222319F481E090E038C086E089 |
:10DA6000289FF0011124EB51F54F849117C086E0F7 |
:10DA7000289FF0011124EA51F54F84910FC086E0F0 |
:10DA8000289FF0011124E951F54F849107C086E0E9 |
:10DA9000289FF0011124E851F54F849180931004E0 |
:10DAA00090911004809111049813C0E00E94FF6FC0 |
:10DAB0009091100486E0989FF0011124E751F54FF2 |
:10DAC000259134918C2FF901099580E090E0CF9158 |
:10DAD0000895109281081092800810928508109283 |
:10DAE00084081092830810928208109286088AE0B7 |
:10DAF00090E00E941C1790931304809312040895E1 |
:10DB0000CF93DF9380911204909113040E94251704 |
:10DB1000882309F4AFC080911204909113040A96EF |
:10DB20009093130480931204E0E0F0E09F0190E0F2 |
:10DB30005FEFA2EEB6E04BE0ED018B8187FF0BC0FB |
:10DB40009F5F8D81E80FF11D8981280F311D8E8126 |
:10DB5000851708F4582F4150189647FFEDCF509382 |
:10DB60008608232B41F52091180430911904409127 |
:10DB70001A0450911B04BB27A52F942F832F909339 |
:10DB8000170480931604AA27BB27281B390B4A0BBE |
:10DB90005B0BCF01AA27BB27280F391F4A1F5B1F2A |
:10DBA000209318043093190440931A0450931B04D3 |
:10DBB000E5E0F0E013C020911604309117042E1711 |
:10DBC0003F0718F4E21BF30B02C0E0E0F0E0892FFE |
:10DBD0009927880F991FE80FF91F3596F093810850 |
:10DBE000E0938008EF3FF10578F480911E01909159 |
:10DBF0001F018E9F90018F9F300D9E9F300D11242D |
:10DC0000C90164E670E013C0CF019695879596959B |
:10DC1000879520911E0130911F01289FA001299F07 |
:10DC2000500D389F500D1124CA0169E170E00E9427 |
:10DC30006F78709383086093820820911404309168 |
:10DC400015042E0F3F1F30931504209314045EE03B |
:10DC50002131350778F080918408909185080196EC |
:10DC6000909385088093840820513E40309315049A |
:10DC700020931404DF91CF9108954FB720E430E052 |
:10DC8000F8948091C9008F778093C9008091C90072 |
:10DC90008F7B8093C9008091C9008F7D8093C900DC |
:10DCA0005A9A52985B9A539A832F99278093CD0062 |
:10DCB0002093CC008091C80082608093C80088E1E6 |
:10DCC0008093C9008091CA008F778093CA008091A9 |
:10DCD000CA008F7B8093CA008091CA008F7D809399 |
:10DCE000CA008091CA008F7E8093CA008091CA00CA |
:10DCF000877F8093CA008091C9008B7F8093C90081 |
:10DD00008091CA0084608093CA008091CA008260BA |
:10DD10008093CA008091C80087FF03C08091CE0025 |
:10DD2000F9CF8091C90080688093C9004FBF0895E2 |
:10DD30000F931F93CF93DF93482F4F5F893108F0E4 |
:10DD40008BC080914207841720F44F5F40934207B5 |
:10DD50004150CB0183539B4268E170E00E9483787D |
:10DD6000A42FBB27FD01EA0FFB1FED5BF84F80815D |
:10DD700091819B01281B390BC90137FF03C0909586 |
:10DD800081959F4F069794F480911D03883C30F451 |
:10DD900080911D03865F80931D0308C088EC8093EB |
:10DDA0001D0380916F008F7D80936F00FD01EA0F4E |
:10DDB000FB1FED5BF84F808191819C01220F331F87 |
:10DDC000280F391F260F371F37FF02C02D5F3F4F27 |
:10DDD000E901D595C795D595C795CB0101968C17C7 |
:10DDE0009D0714F4219706C061507040C617D707ED |
:10DDF0000CF4219680911D03843BD8F08D010A0F0D |
:10DE00001B1FF801ED5BF84F80819181FE01E81B3B |
:10DE1000F90BCF0163E070E00E948378CB01880F9B |
:10DE2000991F860F971F0958184FF8019183808317 |
:10DE300007C0AA0FBB1FA958B84F11961C921E927B |
:10DE4000E42FFF27EE0FFF1FED5BF84FD183C08358 |
:10DE5000443011F410929401DF91CF911F910F91F2 |
:10DE60000895CF93DF9320918708822F9927807F91 |
:10DE70009070409709F06CC02F3109F046C0809136 |
:10DE800088088093200420918A082093220480919E |
:10DE90008B0880932104822F9927909344078093C5 |
:10DEA0004307222309F054C080911906282F3327F5 |
:10DEB000220F331FF901E958F84F11821082809127 |
:10DEC0001A06A82FBB27AA0FBB1FFD01E958F84F60 |
:10DED0001182108280911C06E82FFF27EE0FFF1F92 |
:10DEE000CF018958984FEC01198218822D5B384F69 |
:10DEF000E90119821882AD5BB84F11961C921E92EF |
:10DF0000ED5BF84F1182108223C0C22FCF70CA3050 |
:10DF1000F8F4809188088093B108809189088093F3 |
:10DF2000B00880918A088093B30880918B08809311 |
:10DF3000B2086091B0087091B1088C2F0E94986E61 |
:10DF40006091B2087091B3088C2F8F5F0E94986E19 |
:10DF5000DF91CF910895CF93C82F8F3F49F48091DF |
:10DF600023048F3F29F4109225041092240432C018 |
:10DF700020912504222339F4CF3111F485E001C02A |
:10DF800084E08093260480912604909124048217D3 |
:10DF9000A0F4892F8095809324048F3F19F48EEF8D |
:10DFA0008093240480912404C81711F40E94316FD7 |
:10DFB00010922504109224040BC0E22FFF27E9578A |
:10DFC000F74FC0832F5F209325049C0F9093240468 |
:10DFD000C0932304CF91089590911F04933240F48D |
:10DFE000E92FFF27E357F74F80839F5F90931F042C |
:10DFF0000895833218F48D5F80931F04089590E292 |
:10E00000E0E9F8E08FE19193815087FFFCCF08951C |
:10E01000CF93CFB723E031E0F8948091C9008F7798 |
:10E020008093C9008091C9008F7B8093C900809143 |
:10E03000C9008F7D8093C9005A9A52985B9A539A6F |
:10E04000832F99278093CD002093CC008091C80026 |
:10E0500082608093C80088E18093C9008091CA00E3 |
:10E060008F778093CA008091CA008F7B8093CA000B |
:10E070008091CA0080628093CA008091CA0080614A |
:10E080008093CA008091CA0088608093CA00809102 |
:10E09000C90084608093C9008091CA008460809325 |
:10E0A000CA008091CA0082608093CA008091C80033 |
:10E0B00087FF03C08091CE00F9CF8091C9008068AE |
:10E0C0008093C9008091C90080648093C9000E9438 |
:10E0D000FF6FCFBFCF910895282F99278F70907031 |
:10E0E000892B31F4209580911E04822B80931E048D |
:10E0F00008958091F001882309F441C08091E902DC |
:10E1000085FF0AC082E980938D0883E280938E08A0 |
:10E1100085E580938F0802C010928D088091F101EF |
:10E120008F3071F480911E040E94146D882341F099 |
:10E1300081E980938D0880938E0881E380938F0816 |
:10E140001092F0018091C80085FFFCCF8091C9003A |
:10E150008F7E8093C9008091C9008E7F8093C90013 |
:10E1600080918D08882311F48EEF01C08EE7809393 |
:10E17000CE0080911E048093F10110921E04089538 |
:10E180001F920F920FB60F9211248F939F93EF93CC |
:10E19000FF939091F001992309F040C080912704EA |
:10E1A000882361F480918D08882311F483E003C0F3 |
:10E1B000813999F481E0809327040FC0833099F46A |
:10E1C00080918D08882349F090938D088091C90033 |
:10E1D0008E7F8093C9008EEF1EC08091C900816040 |
:10E1E0008093C9000EC0833261F48091C9008E7F94 |
:10E1F0008093C9008FEF8093CE0081E08093F0017F |
:10E2000014C080912704E82FFF27E357F74F8F5F53 |
:10E210008093270480818093CE0007C0109227044A |
:10E220008091C90080618093C900FF91EF919F9117 |
:10E230008F910F900FBE0F901F901895EF92FF9245 |
:10E240000F931F93CF93DF937C018B01EA01452B42 |
:10E2500039F0F80181918F01F70109952197C9F7EC |
:10E26000E6E0CDB7DEB70C94FB78EF92FF920F9308 |
:10E270001F93CF93DF937C018B01EA01452B41F083 |
:10E28000F8010F5F1F4F8491F70109952197C1F79E |
:10E29000E6E0CDB7DEB70C94FB780F931F93CF93D6 |
:10E2A0008C01C62F161634F480E2F8010995C1508E |
:10E2B0001C16D4F3CF911F910F9108950F931F93C4 |
:10E2C000CF938C01C62F161634F480E3F80109951C |
:10E2D000C1501C16D4F3CF911F910F910895A5E35F |
:10E2E000B0E0E5E7F1E70C94D3782E96EEADFFAD04 |
:10E2F0002E9788249924540180911D04882321F4A9 |
:10E300002C961FAE1EAE2C975EE4452E512C4C0E63 |
:10E310005D1E6F01B60105C0153239F00894C11CAD |
:10E32000D11CF60114911123B9F7A601461B570B16 |
:10E3300031F02C968EAD9FAD2C970E943571112334 |
:10E3400009F46AC20894C11CD11CFF24FDA6FCA6D6 |
:10E350004FEFE42EF9A6F6010894C11CD11C1491CC |
:10E36000153721F0812F80628837B1F4F0FE0AC0A2 |
:10E37000F20124E030E0420E531E80809180A280A2 |
:10E38000B3800AC0F20142E050E0440E551E808185 |
:10E3900091814C01AA24BB24103221F489A5882341 |
:10E3A000D1F61DC0133219F458E0F52AD4CF1A3231 |
:10E3B00011F01D3291F41A3259F4F20182E090E02A |
:10E3C000480E591EE081ECA7EE232CF6E195ECA750 |
:10E3D00090E1F92AAFEDFA22BECF1B3211F419A752 |
:10E3E000BACF1E32C1F5F6010894C11CD11C14919C |
:10E3F0001A3279F4F20122E030E0420E531E4081DD |
:10E4000051813FEF4F3F530714F44FEF5FEFE42E7E |
:10E41000A2CF40E050E0812F80538A30A0F4CA019F |
:10E4200033E0880F991F3A95E1F7840F951F480F45 |
:10E43000591F410F511D40535040F6010894C11C13 |
:10E44000D11C1491E8CF8FEF4F3F580714F44FEFD2 |
:10E450005FEFE42E85CF103329F4F4FC7CCF90E2FB |
:10E46000F92A79CF812F81538930D8F440E050E0E8 |
:10E47000CA0123E0880F991F2A95E1F7840F951FA1 |
:10E48000480F591F410F511D40535040F601089449 |
:10E49000C11CD11C1491812F80538A3048F34CA7A2 |
:10E4A0005FCF183619F4A4E0FA2A55CF1C3619F4B8 |
:10E4B000B1E0FB2A50CF133661F43E010894611C91 |
:10E4C000711CF20122E030E0420E531E80818983EC |
:10E4D0003CC1143421F0143611F0193651F51434BE |
:10E4E00011F431E0F32AF0FE0AC0F20144E050E0FA |
:10E4F000440E551E80809180A280B3800CC0F20132 |
:10E5000082E090E0480E591E808191814C01AA243E |
:10E5100097FCA094BA2CB7FE0AC0B094A094909433 |
:10E520008094811C911CA11CB11C8DE289A70AE07A |
:10E530006FC01F3411F01F3631F41F3411F491E015 |
:10E54000F92A08E064C0103779F4F201A2E0B0E0E3 |
:10E550004A0E5B1E808191814C01AA24BB2400E1FC |
:10E56000B0E4FB2A18E753C01337C1F5F20122E0EB |
:10E5700030E0420E531E608071806114710489F492 |
:10E580003E010894611C711C88E289838EE6F301C8 |
:10E59000818385E78B838CE68C838D8389E28E83F0 |
:10E5A0001F82E7FC13C08E2D992787FD9095AC0143 |
:10E5B00060E070E0C3010E94A076009729F0382E39 |
:10E5C0003618E3140CF0C3C03E2CC1C0F301019017 |
:10E5D0000020E9F731973E2E3618B9C0153511F0F5 |
:10E5E000153731F4153511F4F1E0FF2A0AE00FC0B8 |
:10E5F000183519F0183709F0A0C000E1F3FE07C084 |
:10E6000081149104A104B10411F020E4F22A19A6A6 |
:10E61000EDA6E7FC02C03FEDF32289E2682E712CE3 |
:10E620006C0E7D1E81149104A104B10421F44DA54A |
:10E63000442309F47BC0802F9927AA27BB278EA7E4 |
:10E640009FA7A8ABB9AB202E332490E0891690E0A9 |
:10E65000990691E0A90690E0B90648F0C501B40119 |
:10E660002EA53FA548A959A90E94967817C0AFEFDB |
:10E670008A169104A104B10449F040F0C401B1012B |
:10E680000E946F789B014427552708C0882D602F72 |
:10E690000E946378282F3327442755272AAB3BABAA |
:10E6A0004CAB5DAB0A3059F48AA9880F880F880FEC |
:10E6B0009AA9990F890F382D381B832F10C000316C |
:10E6C00039F48AA98295807F482D481B842F07C082 |
:10E6D0008AA9880F880F880F582D581B852F90E026 |
:10E6E0002EA53FA548A959A982169306A406B506EA |
:10E6F00008F091E08AA89BA8ACA8BDA88A3010F4C5 |
:10E70000805D04C0895A183509F48F7DD3018E933A |
:10E710003D01992309F099CF083041F4F3FE06C07A |
:10E72000803321F080E3FD0182933F01CE01019609 |
:10E73000382E3618F8E23F0E0BC0112309F46CC0D6 |
:10E740003E010894611C711C1983B1E03B2E19A68F |
:10E75000032D2DA4231827FC222489A5882311F03A |
:10E760000F5F02C0F6FC0E5F020DEF2CFF24C70105 |
:10E7700080739070892B49F48CA5801B682F2C9690 |
:10E780008EAD9FAD2C970E944D7189A5882331F0E5 |
:10E7900041E050E0BE01675D7F4F0AC0E6FE0EC05B |
:10E7A00080E38AA71BA742E050E0BE01665D7F4F71 |
:10E7B0002C968EAD9FAD2C970E941E71C701807361 |
:10E7C0009070809749F48CA5801B682F2C968EAD95 |
:10E7D0009FAD2C970E945E71622D2C968EAD9FADE1 |
:10E7E0002C970E945E71832D992787FD9095AC012F |
:10E7F000B3012C968EAD9FAD2C970E941E71E4FE46 |
:10E8000089CD2CA5201B2CA7622F2C968EAD9FADF9 |
:10E810002C970E944D717ECDE2E1CB5C0C94EF7899 |
:10E820002FB740E0F894E0E0F0E081E280935700F9 |
:10E830009491E2E0F0E0809357003491E4E0F0E05E |
:10E840008093570084912FBF9E3199F4363941F45B |
:10E85000893011F441E00DC08A3059F442E009C01A |
:10E86000373939F4863011F443E003C0853009F4B8 |
:10E8700044E0842F992708959FB7F8948091C900A8 |
:10E88000877F8093C9008091C9008F7E8093C900E3 |
:10E890008091C9008F778093C9008091C9008F7BD8 |
:10E8A0008093C9008091C9008F7D8093C9005298E0 |
:10E8B0005A9A53985B9A9FBF08951F93CF93DF9303 |
:10E8C000182F80911D04882309F48DC08091EF01D9 |
:10E8D000181709F488C080911C04882321F40E9431 |
:10E8E000107480931C0488EB9CE09F938F93C6EF79 |
:10E8F000D2E1DF93CF93E0912804F09129040995A8 |
:10E900000F900F900F900F90812F992782309105D3 |
:10E9100001F1833091052CF4009761F0019769F0C3 |
:10E9200024C084309105D9F084309105ACF005976E |
:10E93000C9F01BC088EA9CE002C086E99CE09F9376 |
:10E940008F93DF93CF93E0912804F09129040995E8 |
:10E9500018C08DE79CE0F3CF8AE59CE0F0CF8CE413 |
:10E960009CE0EDCF84E49CE0EACF85EC9CE09F93B3 |
:10E970008F93DF93CF93E0912804F09129040995B8 |
:10E9800010E00F900F900F900F9080911C04843036 |
:10E9900011F0823099F40E943C74812F81508330B1 |
:10E9A00018F40E949E681DC0143019F40E9408706B |
:10E9B00018C01530B1F40E943D6E13C0112389F0C8 |
:10E9C0008BED9CE09F938F9386EF92E19F938F93C3 |
:10E9D000E0912804F091290409950F900F900F9071 |
:10E9E0000F901093EF01DF91CF911F9108950F9336 |
:10E9F0001F9381E080931D044091EE01E4EFFBE062 |
:10EA000020E030E05FE4849199272F5F3F4F829FA1 |
:10EA1000B001839F700D929F700D112446275150B5 |
:10EA2000319657FFF0CF4093EE01ECECFBE020E095 |
:10EA300030E057E2849199272F5F3F4F829FB001CA |
:10EA4000839F700D929F700D11244627515031966F |
:10EA500057FFF0CF4093EE0180911C04882321F4EE |
:10EA60000E94107480931C048091EE01833459F04D |
:10EA700088E190E029E20FB6F894A89580936000B1 |
:10EA80000FBE209360008FE691E790932904809356 |
:10EA9000280486EF9CE09F938F9306EF12E11F936B |
:10EAA0000F93E0912804F091290409950F900F909D |
:10EAB0000F900F9081E690E09F938F9382E590E016 |
:10EAC0009F938F931F921F92809102016AE00E9490 |
:10EAD0006378892F99279F938F93809102010E94D9 |
:10EAE000637899279F938F938CE19DE09F938F93F9 |
:10EAF0001F930F93E0912804F0912904099584EF66 |
:10EB00009BE09F938F931F930F93E0912804F091C4 |
:10EB1000290409958CEC9BE09F938F931F930F938F |
:10EB2000E0912804F091290409958DB79EB7469687 |
:10EB30008DBF80E59DE09F938F931F930F93E0918E |
:10EB40002804F0912904099583EC80938100809139 |
:10EB50006F00806280936F000F900F900F900F9066 |
:10EB60001F910F91089580911D04882361F0809179 |
:10EB7000EF01843011F40E9479708091EE018334AA |
:10EB800011F010921D0408951F920F920FB60F926C |
:10EB900011242F933F934F935F936F937F938F93A2 |
:10EBA0009F93AF93BF93EF93FF932091CE008091FB |
:10EBB000FA018823B1F02093C6008091FA018230D7 |
:10EBC00029F52F3F19F58FEF94E3ACE0B0E0C29741 |
:10EBD000A109B109B7FFFBCF80916B048093CE00F0 |
:10EBE00015C09091EF01892F8150833020F4822F3E |
:10EBF0000E94F9680BC0943021F4822F0E946C703F |
:10EC000005C0953019F4822F0E94AB6FFF91EF91F0 |
:10EC1000BF91AF919F918F917F916F915F914F9134 |
:10EC20003F912F910F900FBE0F901F9018950024C9 |
:10EC300022273327442751E0BB27EE27FF27A0E1F7 |
:10EC4000660F771F881F991F001C221F331F441F48 |
:10EC5000660F771F881F991F001C221F331F441F38 |
:10EC60002AF4050E2B1F3E1F4F1F04C0051A2B0B45 |
:10EC70003E0B4F0B550FBB1FEE1F587F556047FDD6 |
:10EC80005250AA95E9F6E695B7955795E695B7954A |
:10EC90005795852F9B2F08952227332741E055272D |
:10ECA00068E0880F991F221F331F880F991F221FAA |
:10ECB000331F1AF4240F351F02C0241B350B440FD9 |
:10ECC000551F487F456037FD42506A9551F756956C |
:10ECD000479556954795842F0895AA2797FF04C016 |
:10ECE000809590958A1F9A1F77FF04C06095709554 |
:10ECF0006A1F7A1F669F9001779FA001679F300D62 |
:10ED0000411D5A1F300D411D5A1F889FF001999FC8 |
:10ED10002E0F3F1F401D511D899F300D411D5A1F51 |
:10ED2000300D411D5A1FCA01B901112480CFFB01CA |
:10ED3000DC0102C005900D9241505040D8F7089573 |
:10ED4000FC014150504030F001900616D1F7319748 |
:10ED5000CF010895882799270895A0E0B0E0E3EB5C |
:10ED6000F6E70C94DB786C017B01EA0159012197ED |
:10ED70008FEFCF3FD80789F086010894C11CD11CC2 |
:10ED8000C7010894E11CF11CF5010995F801808385 |
:10ED90002197FFEFCF3FDF0779F7EAE0CDB7DEB786 |
:10EDA0000C94F778CF92DF92EF92FF920F931F931C |
:10EDB0007C016B01FB010995082FC7010196F60143 |
:10EDC0000995182FC8011F910F91FF90EF90DF90C8 |
:10EDD000CF900895A0E0B0E0E0EFF6E70C94DD7886 |
:10EDE0008C017B01EA01690121978FEFCF3FD807A2 |
:10EDF00071F0F70121917F01C8010F5F1F4F622F52 |
:10EE0000F60109952197FFEFCF3FDF0791F7E8E083 |
:10EE1000CDB7DEB70C94F978CF92DF92EF92FF92E4 |
:10EE20000F931F936C018B017A01FA010995812FD1 |
:10EE30009927682FC6010196F70109951F910F9137 |
:10EE4000FF90EF90DF90CF9008955058BB27AA27EE |
:10EE50000ED0E0C0D1D030F0D6D020F031F49F3FBA |
:10EE600011F41EF4C6C00EF4E095E7FBBCC0E92F18 |
:10EE7000E2D080F3BA17620773078407950718F08A |
:10EE800071F49EF5FAC00EF4E0950B2EBA2FA02D6A |
:10EE90000B01B90190010C01CA01A0011124FF2747 |
:10EEA000591B99F0593F50F4503E68F11A16F04042 |
:10EEB000A22F232F342F4427585FF3CF4695379541 |
:10EEC0002795A795F0405395C9F77EF41F16BA0B06 |
:10EED000620B730B840BBAF09150A1F0FF0FBB1FB4 |
:10EEE000661F771F881FC2F70EC0BA0F621F731FFD |
:10EEF000841F48F4879577956795B795F7959E3F5A |
:10EF000008F0B3CF9395880F08F09927EE0F9795E7 |
:10EF10008795089598D088F09F5790F0B92F99273A |
:10EF2000B751A0F0D1F0660F771F881F991F1AF014 |
:10EF3000BA95C9F712C0B13081F09FD0B1E0089501 |
:10EF40009CC0672F782F8827B85F39F0B93FCCF382 |
:10EF5000869577956795B395D9F73EF4909580950A |
:10EF6000709561957F4F8F4F9F4F0895E89409C02A |
:10EF700097FB3EF490958095709561957F4F8F4FEC |
:10EF80009F4F9923A9F0F92F96E9BB279395F69502 |
:10EF9000879577956795B795F111F8CFFAF4BB0F80 |
:10EFA00011F460FF1BC06F5F7F4F8F4F9F4F16C0E4 |
:10EFB000882311F096E911C0772321F09EE8872F6E |
:10EFC000762F05C0662371F096E8862F70E060E02A |
:10EFD0002AF09A95660F771F881FDAF7880F9695A3 |
:10EFE000879597F9089597F99F6780E870E060E04A |
:10EFF00008959FEF80EC089500240A9416161706D2 |
:10F0000018060906089500240A9412161306140619 |
:10F0100005060895092E0394000C11F4882352F07C |
:10F02000BB0F40F4BF2B11F460FF04C06F5F7F4F34 |
:10F030008F4F9F4F089557FD9058440F551F59F01B |
:10F040005F3F71F04795880F97FB991F61F09F3FD5 |
:10F0500079F087950895121613061406551FF2CFFE |
:10F060004695F1DF08C0161617061806991FF1CF4E |
:10F0700086957105610508940895E894BB27662775 |
:10F080007727CB0197F90895629FD001739FF00114 |
:10F09000829FE00DF11D649FE00DF11D929FF00D28 |
:10F0A000839FF00D749FF00D659FF00D9927729F5F |
:10F0B000B00DE11DF91F639FB00DE11DF91FBD01EA |
:10F0C000CF0111240895991B79E004C0991F961768 |
:10F0D00008F0961B881F7A95C9F780950895AA1B9A |
:10F0E000BB1B51E107C0AA1FBB1FA617B70710F033 |
:10F0F000A61BB70B881F991F5A95A9F78095909565 |
:10F10000BC01CD01089597FB092E07260AD077FD93 |
:10F1100004D0E5DF06D000201AF4709561957F4F8A |
:10F120000895F6F7909581959F4F0895A1E21A2EC4 |
:10F13000AA1BBB1BFD010DC0AA1FBB1FEE1FFF1F9B |
:10F14000A217B307E407F50720F0A21BB30BE40BEB |
:10F15000F50B661F771F881F991F1A9469F7609532 |
:10F160007095809590959B01AC01BD01CF010895EC |
:10F1700097FB092E05260ED057FD04D0D7DF0AD005 |
:10F18000001C38F450954095309521953F4F4F4FD6 |
:10F190005F4F0895F6F790958095709561957F4F34 |
:10F1A0008F4F9F4F08952F923F924F925F926F9291 |
:10F1B0007F928F929F92AF92BF92CF92DF92EF9207 |
:10F1C000FF920F931F93CF93DF93CDB7DEB7CA1B88 |
:10F1D000DB0B0FB6F894DEBF0FBECDBF09942A88B3 |
:10F1E000398848885F846E847D848C849B84AA845B |
:10F1F000B984C884DF80EE80FD800C811B81AA81E8 |
:10F20000B981CE0FD11D0FB6F894DEBF0FBECDBFB2 |
:10F21000ED010895EE0FFF1F0590F491E02D099484 |
:02F22000FFCF1E |
:10F222005E010A010164FF01FFFFC01FC01F01014F |
:10F2320001737373FF03007D0000C409C4096400F5 |
:10F242001148656C6C6F20576F726C64000000008F |
:10F2520000000000000000000000000000000000AC |
:10F26200000000000000000000000000000000009C |
:10F27200000000000000000000000000000000008C |
:10F28200000000000000000000000000000000007C |
:10F292000053706F727400004E6F726D616C0000EB |
:10F2A200426567696E6E6572000051756164726FC6 |
:10F2B2000000640001200B050000ECFF00020406C0 |
:10F2C200070808080706040200FEFCFAF9F8F8F835 |
:10F2D200F9FAFCFE000204060708086440415A4697 |
:10F2E20064640A02969696960840403A10FB3038BB |
:10F2F2000190D0030090D00300F4017800FF036472 |
:10F302000B0A0D0B0C0E0B0F10FA2001010170FFFE |
:02F31200010FE9 |
:00000001FF |
/branches/metro/v0.82a metro_Akku+/Hex-Files/Flight-Ctrl_MEGA644_V0_82a_S3D.hex |
---|
0,0 → 1,3843 |
:100000000C94BB060C9401070C9401070C94010797 |
:100010000C9401070C9401070C9401070C94010740 |
:100020000C9401070C9441190C9401070C940107DE |
:100030000C9404340C9401070C9401070C940107F0 |
:100040000C9401070C9401070C9411160C940107F1 |
:100050000C942C0C0C9401070C94F60B0C940107D7 |
:100060000C94FD1B0C9401070C94972F0C94010722 |
:100070000C943C740C9401070C94386F281C2D1CB4 |
:10008000321C3B1C521C691C791C891CA61C921E2C |
:10009000691C541D651D941DB21DCF1D291E841E93 |
:1000A0006220F420B12131229A224A235125AE2523 |
:1000B0001B266526B026FD264E27B0270F28A92827 |
:1000C00044293E2AB62FEA2F2D309D30B530F63028 |
:1000D000AD317432743274327432743274327432B8 |
:1000E000743274327432743229322B3230324832E4 |
:1000F0004A320A0D426174743A0020256420436537 |
:100100006C6C732000204C6F77207761726E696E83 |
:1001100067206C6576656C3A2025642E2564000A9C |
:100120000D466F756E6420424C2D4374726C3A20FC |
:10013000002564000A0D0A0D2121204D4953534921 |
:100140004E4720424C2D4354524C3A2025642021E6 |
:1001500021000A0D3D3D3D3D3D3D3D3D3D3D3D3D8B |
:100160003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DBF |
:100170003D3D3D3D3D3D3D000A0D43616C69627270 |
:100180006174696E67207072657373757265207330 |
:10019000656E736F722E2E004F4B0A0D000A0D46CE |
:1001A0006C696768742D74696D65202575206D69AB |
:1001B0006E2020546F74616C3A2575206D696E0055 |
:1001C0000A0D436F6E74726F6C3A2000486561646B |
:1001D000696E67486F6C64004E6F726D616C2028A9 |
:1001E0004143432D4D6F646529000A0D3D3D3D3D62 |
:1001F0003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D2F |
:100200003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D0A51 |
:100210000D00416E676C654E69636B2020202020C5 |
:100220002020416E676C65526F6C6C20202020206E |
:1002300020204163634E69636B2020202020202012 |
:100240002020416363526F6C6C20202020202020EE |
:1002500020205961774779726F20202020202020AC |
:1002600020204865696768742056616C7565202098 |
:1002700020204163635A202020202020202020209D |
:1002800020204761732020202020202020202020B3 |
:100290002020436F6D706173732056616C7565200B |
:1002A0002020566F6C74616765205B302E31565D7F |
:1002B00020205265636569766572204C6576656CB1 |
:1002C00020204779726F20436F6D70617373202017 |
:1002D00020204D6F746F722031202020202020209C |
:1002E00020204D6F746F722032202020202020208B |
:1002F00020204D6F746F722033202020202020207A |
:1003000020204D6F746F7220342020202020202068 |
:1003100020203136202020202020202020202020B6 |
:1003200020203137202020202020202020202020A5 |
:100330002020313820202020202020202020202094 |
:100340002020313920202020202020202020202083 |
:100350002020536572766F2020202020202020202E |
:100360002020486F7665726761732020202020204E |
:10037000202043757272656E74205B302E31415DB2 |
:1003800020204361706163697479205B6D41685D11 |
:100390002020323420202020202020202020202037 |
:1003A0002020323520202020202020202020202026 |
:1003B0002020323620202020202020202020202015 |
:1003C0002020323720202020202020202020202004 |
:1003D00020204932432D4572726F72202020202048 |
:1003E0002020424C204C696D697420202020202060 |
:1003F00020204750535F4E69636B2020202020202F |
:1004000020204750535F526F6C6C2020202020200A |
:10041000202021212120494E434F4D504154494233 |
:100420004C4520212121002E000A0D20444143206B |
:100430006F7220493243204552524F522120436867 |
:1004400065636B204932432C2033567265662C203D |
:1004500044414320616E6420424C2D4374726C0011 |
:100460005B25695D005B25695D002B204D696B7222 |
:100470006F4B6F70746572202B0048573A56256495 |
:100480002E25642053573A25642E25642563005396 |
:10049000657474696E673A2564202573004861723B |
:1004A0006477617265204572726F7220313A2564FB |
:1004B000202121004D697373696E6720424C2D43E2 |
:1004C00074726C3A25642121004D6978657220456B |
:1004D00072726F722100493243204552524F5221AD |
:1004E0002121004865696768743A20202535690034 |
:1004F000536574706F696E743A2535690050726582 |
:1005000073737572653A253569004F666673657455 |
:100510003A20202535690048656967687420636F53 |
:100520006E74726F6C0044495341424C454400481C |
:10053000656967687420636F6E74726F6C004449FC |
:100540005341424C4544006163742E2062656172E0 |
:10055000696E67004E69636B3A20202020202025B9 |
:10056000356900526F6C6C3A202020202020253500 |
:100570006900436F6D706173733A202020253569DF |
:10058000004B313A25346920204B323A253469201A |
:10059000004B333A25346920204B343A2534692006 |
:1005A000004B353A25346920204B363A25346920F2 |
:1005B000004B373A25346920204B383A25346920DE |
:1005C000004E693A2534692020526F3A253469205B |
:1005D0000047733A253469202047693A2534692059 |
:1005E0000050313A253469202050323A25346920B0 |
:1005F0000050333A253469202050343A253469209C |
:10060000004779726F202D2053656E736F72004E14 |
:1006100069636B25346920282533692E25692900F3 |
:10062000526F6C6C25346920282533692E25692981 |
:100630000047696572253469202825336929004EF1 |
:1006400069636B2025346920282533692E25782994 |
:1006500000526F6C6C2025346920282533692E25C3 |
:1006600078290059617720202534692028253369AD |
:1006700029004E69636B20253469202825336929B8 |
:10068000282533692900526F6C6C20253469202895 |
:1006900025336929282533692900596177202025C8 |
:1006A00034692028253369292825336929004143E5 |
:1006B00043202D2053656E736F72004E69636B206B |
:1006C00025346920282533692900526F6C6C202558 |
:1006D0003469202825336929005A20202020253418 |
:1006E0006920282533692900566F6C746167653A63 |
:1006F0002020202533692E253169560043757272FA |
:10070000656E743A2020202533692E253169410019 |
:10071000506F7765723A20202020202534695700D9 |
:100720004469736368617267653A202535696D4174 |
:10073000680052656365697665720052432D5253B5 |
:1007400053493A202020202534690052432D517509 |
:10075000616C6974793A202534690052432D4368ED |
:10076000616E6E656C733A25346900436F6D70611C |
:1007700073730048656164696E673A2020253569A6 |
:100780000056616C75653A2020202025356900539C |
:10079000746172743A2020202025356900506F74EE |
:1007A00069313A202025336900506F7469323A204C |
:1007B0002025336900506F7469333A20202533694E |
:1007C00000506F7469343A202025336900506F74EB |
:1007D00069353A202025336900506F7469363A2014 |
:1007E0002025336900506F7469373A20202533691A |
:1007F00000506F7469383A202025336900536572C0 |
:10080000766F202000536574706F696E7420202508 |
:10081000336900506F736974696F6E3A20253369CC |
:100820000052616E67653A2533692D2533690045AD |
:10083000787465726E436F6E74726F6C2020004E18 |
:10084000693A2534692020526F3A253469200047DF |
:10085000733A253469202047693A253469200048D5 |
:10086000693A253469202043663A253469200042DC |
:100870004C2D4374726C204572726F727320002588 |
:10088000336420253364202533642025336420001D |
:1008900025336420253364202533642025336420E8 |
:1008A00000253364202533642025336420253364F8 |
:1008B0002000424C2054656D7065726174757265DC |
:1008C00000253369202533692025336920253369C4 |
:1008D00020002533692025336920253369202533FD |
:1008E00069200025336920253369202533692025B7 |
:1008F00033692000424C2D4374726C20666F756E14 |
:1009000064200020256320202025632020202563EB |
:10091000202020256320002025632020202563201F |
:10092000202025632020202563200020256320200F |
:10093000202D2020202D2020202D2000313000319E |
:100940003100313200466C696768742D54696D65F9 |
:10095000202000546F74616C3A2535756D696E0006 |
:100960004163743A20202535756D696E00287265E3 |
:1009700073657429000A0D47656E65726174696E4E |
:10098000672064656661756C7420506172616D6585 |
:1009900074657220536574202564000A0D557369CF |
:1009A0006E6720506172616D657465722053657465 |
:1009B000202564000A0D47656E65726174696E6773 |
:1009C0002064656661756C74204D69786572205489 |
:1009D00061626C65000A0D4D697865722D436F6E1A |
:1009E0006669673A202725732720282575204D6FD3 |
:1009F000746F727329000A0D3D3D3D3D3D3D3D3D07 |
:100A00003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D16 |
:100A10003D3D3D3D3D3D000A0D414343206E6F7419 |
:100A20002063616C69627261746564210D0A000063 |
:100A3000008F001E01AD013B02CA025803E6037499 |
:100A40000402058F051B06A7063307BE074808D218 |
:100A5000085B09E3096B0AF20A780BFD0B810C04B1 |
:100A60000D860D070E870E060F840F00107B10F504 |
:100A7000106E11E5115B12CF124213B313231492BF |
:100A800014FE146A15D3153B16A11605176717C86F |
:100A90001727188318DE1837198E19E319361A87A5 |
:100AA0001AD61A231B6E1BB61BFD1B411C831CC3CD |
:100AB0001C001D3C1D751DAB1DE01D121E421E6F4E |
:100AC0001E9A1EC31EE91E0D1F2E1F4D1F691F8477 |
:100AD0001F9B1FB01FC31FD31FE11FEC1FF51FFB80 |
:100AE0001FFF1F0020030100000E69000201010129 |
:100AF0006A01030202956A02000303F26A25326961 |
:100B00002E25316956002533642563202530336452 |
:100B10006D00537461747573004552524F523A2000 |
:100B200025326400253469202532693A253032693E |
:100B3000002534696D25630025336920253369203C |
:100B40002533692025336900253369202533692041 |
:100B5000253369202533690054656D7065726174B1 |
:100B600075726573202020200025634320202020FB |
:100B700020002532692E2531695620202533692E23 |
:100B8000253169410025346957202536696D416852 |
:100B9000002532756D2F73205361743A256420004F |
:100BA00020203344004E6F4678004447505300489D |
:100BB0006F6D653A2533646D202533642563004EDF |
:100BC0006F204E6176694374726C21000A0D77774D |
:100BD000772E4D696B726F4B6F707465722E646502 |
:100BE0002028632920486953797374656D73204701 |
:100BF0006D6248000A0D74686520757365206F6624 |
:100C0000207468697320736F6674776172652069F8 |
:100C100073206F6E6C79207065726D697474656491 |
:100C2000200A0D6F6E206F726967696E616C204DCE |
:100C3000696B726F4B6F707465722D486172647767 |
:100C4000617265004143542044534C004A65746905 |
:100C500020736174656C6C6974005370656B747299 |
:100C6000756D20736174656C6C697420284C6F77A6 |
:100C7000207265736F6C7574696F6E2900537065AF |
:100C80006B7472756D20736174656C6C6974202867 |
:100C90003230343829005370656B7472756D20736F |
:100CA0006174656C6C6974004D756C746973696707 |
:100CB0006E616C2050504D000A0D52656365697677 |
:100CC00065723A2000756E6B6E6F776E2E205573CD |
:100CD000696E672050504D2E2E2E006E6F7420735B |
:100CE0007570706F727465642062792068617264D7 |
:100CF0007761726521000A0D3D3D3D3D3D3D3D3D25 |
:100D00003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D13 |
:100D10003D3D3D3D3D3D3D3D3D3D3D000A0D466C6B |
:100D200069676874436F6E74726F6C0A0D48617204 |
:100D300064776172653A25642E25640A0D536F66E7 |
:100D400074776172653A5625642E25642563200008 |
:100D50000A0D3D3D3D3D3D3D3D3D3D3D3D3D3D3D26 |
:100D60003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3DB3 |
:100D70003D3D3D3D3D0011241FBECFEFD0E1DEBF24 |
:100D8000CDBF11E0A0E0B1E0E2E1FFEE02C00590CE |
:100D90000D92A23FB107D9F718E0A2EFB1E001C070 |
:100DA0001D92A834B107E1F76AEAE2E0F0E081E2DF |
:100DB000809357007491AE014F5F5F4F20EF37EF84 |
:100DC000DA019FE0F9012F5F3F4F84918D9391509D |
:100DD00097FFF8CF773911F40000FECFFA019EE0BB |
:100DE000819168276095915097FFFACF888968179D |
:100DF00021F0773911F40000FECF0E94C2070C9455 |
:100E000088770C9400008091AD05E82FFF27EE0F46 |
:100E1000FF1FE952F94F808191818D5E9F4F14F041 |
:100E200010920301808191818A5B9F4FCCF4809165 |
:100E300003018823A9F481E0809303018091F003EA |
:100E40008F5F8093F003853038F088EE93E09093C5 |
:100E500025028093240204C066E970E00E94E63512 |
:100E60008091F003992790937E0580937D050895E6 |
:100E70001F93CF93DF93182F882389F082EF90E0A0 |
:100E80009F938F9386EF92E19F938F93E091BC03A2 |
:100E9000F091BD0309950F900F900F900F908091E6 |
:100EA000D005823308F044C084EF91E00E941C1703 |
:100EB000EC01112329F0CE010E9425178823D9F3D4 |
:100EC000C2E0D0E026E530E080911E0190911F0144 |
:100ED0008217930730F02196255D3F4FC730D1052B |
:100EE00098F38091D0059927C89F9001C99F300D34 |
:100EF000D89F300D1124209300011123D9F068EC04 |
:100F000070E08C2F0E94E635DF93CF938AEF90E05C |
:100F10009F938F9386EF92E19F938F93E091BC0311 |
:100F2000F091BD0309958DB79EB706968DBF02C09F |
:100F300080930001112311F1809100016AE00E9469 |
:100F4000DB76892F99279F938F93809100010E94D0 |
:100F5000DB7699279F938F9385E091E09F938F9302 |
:100F600086EF92E19F938F93E091BC03F091BD03D4 |
:100F700009952DB73EB7285F3F4F2DBFDF91CF9129 |
:100F80001F910895CFEFD0E1DEBFCDBF8824992413 |
:100F900014B815B807EE13E00253104017FFFCCF4A |
:100FA000189B06C0199B02C08DE007C08BE005C0EE |
:100FB000199B02C084E101C08AE08093020181E8AC |
:100FC00087B93E9A8FEF88B98BE184B981E085B902 |
:100FD0008EE38AB987E48BB9469A84B7877F84BF4A |
:100FE000809160008861809360001092600084ECC2 |
:100FF00099E090932502809324021092AC02109203 |
:10100000AB021092DC061092DB061092AE02109238 |
:10101000AD021092B0021092AF0220910201243171 |
:1010200028F084EC94E0A0E0B0E004C08BE095E010 |
:10103000A0E0B0E08093960190939701A09398016F |
:10104000B09399012A3011F0243110F0289801C092 |
:10105000289A0E9485170E9456170E94FE120E942D |
:10106000E8330E94B51A81E00E944B2F0E94B661BE |
:101070000E94E16B0E946F73809102018C3010F42A |
:10108000299A01C0299878940E94652E80916C025B |
:10109000826080936C0210926F020E94084184EF7C |
:1010A00091E00E941C178C0180916C0280FD05C0AC |
:1010B000C8010E9425178823B9F38FE191E09F931F |
:1010C0008F93B6EFAB2EB2E1BB2EBF92AF92E09101 |
:1010D000BC03F091BD03099580EA9FE00E941C17B4 |
:1010E0008C01C0E0D0E00F900F900F900F90A9E717 |
:1010F000EA2EA6E0FA2EFDE2CF2EF6E0DF2E0E94C9 |
:10110000084180916C0280FD05C0C8010E9425172E |
:101110008823B9F3F60180811816ACF40BC00E9445 |
:10112000084180916C0280FD05C0C8010E9425170E |
:101130008823B9F3C8010E942517882321F4F701F9 |
:101140008081882364F7F701808187FF18C021968A |
:10115000DF93CF93219781E391E09F938F93BF9289 |
:10116000AF92E091BC03F091BD0309958091F2012B |
:101170008F5F8093F2018DB79EB706968DBF219643 |
:10118000E4E0F0E0CE0EDF1E88E090E0E80EF91E0D |
:10119000CC30D10508F4B3CFC0E0D0E006E716E0CC |
:1011A000EDE2EE2EE6E0FE2EF801838187FD1CC005 |
:1011B000F70180811816C4F42196DF93CF9321970D |
:1011C00084E391E09F938F9386EF92E19F938F93B7 |
:1011D000E091BC03F091BD03099582E08093220267 |
:1011E0008DB79EB706968DBFF80183818078838383 |
:1011F000219684E090E0E80EF91E085F1F4FCC3086 |
:10120000D10590F282E591E09F938F93C6EFD2E1F2 |
:10121000DF93CF93E091BC03F091BD0309959091CA |
:10122000AB058091F2010F900F900F900F909817DF |
:1012300028F48091D60380618093D60388E791E0FB |
:101240009F938F93DF93CF93E091BC03F091BD0305 |
:10125000099588EE93E00E941C178C010E94BB1A2E |
:101260000F900F900F900F90C8010E9425178823B0 |
:10127000D9F388E991E09F938F93DF93CF93E09127 |
:10128000BC03F091BD03099580E00E94A8368091CF |
:1012900002010F900F900F900F908A3011F084315F |
:1012A00010F0289801C0289A80ED97E090932502CD |
:1012B0008093240285E58093F2038EE090E00E9403 |
:1012C0009A2C9927182F00278FE090E00E949A2CE3 |
:1012D000080F111D1093F8010093F7018AE090E0C8 |
:1012E0000E949A2C9927182F00278BE090E00E94EB |
:1012F0009A2C080F111D1093F6010093F5010F5F52 |
:101300001F4F39F08091F7019091F8018F5F9F4F47 |
:1013100041F41092F8011092F7011092F601109228 |
:10132000F5018091F5019091F6019F938F93809143 |
:10133000F7019091F8019F938F938DE991E09F932E |
:101340008F93DF93CF93E091BC03F091BD03099598 |
:101350008DB79EB708968DBF80EC91E09F938F93D9 |
:10136000DF93CF93E091BC03F091BD030995809189 |
:10137000B9050F900F900F900F90E091BC03F09182 |
:10138000BD0382FF07C08CEC91E09F938F93DF93A6 |
:10139000CF9308C088ED91E09F938F9386EF92E101 |
:1013A0009F938F9309950F900F900F900F900E942D |
:1013B000D91F88E893E1909393018093920181E093 |
:1013C0008093F1030E9438078091D3050E94D57263 |
:1013D0008AEE91E09F938F93DF93CF93E091BC03CC |
:1013E000F091BD03099580ED97E00E941C178C01D8 |
:1013F0008AEF90E00E941C17EC0183E08093550572 |
:101400000F900F900F900F908091FA018111FFCFF4 |
:10141000CE010E942517882339F084E690E00E94CF |
:101420001C17EC010E942B7480912802882309F478 |
:10143000D5C180911001882309F4D0C110922802EF |
:101440008091F003882319F00E94030702C00E94D4 |
:10145000E2430E940841209102012A3011F0243118 |
:1014600010F0289801C0289A8091B1029091D6037B |
:10147000882339F08091B10281508093B102977F27 |
:101480000AC080916F00806280936F001092D8062E |
:101490001092D70698609093D60380919201909114 |
:1014A000930101979093930180939201809192010F |
:1014B00090919301892B21F080916D028823C9F1CD |
:1014C0008091920190919301892BD9F40E94752FFC |
:1014D00085E090E0909393018093920180918F0535 |
:1014E0009091900501969093900580938F0580913F |
:1014F000D60381608093D6038091560582608093E5 |
:10150000560580910801909109018F5F9F4F19F551 |
:101510008091A8028823F9F080E197E29093250258 |
:101520008093240280E890E0909309018093080161 |
:1015300012C02A3011F0243110F0289801C0289AE6 |
:101540008091240290912502892B29F48091D60361 |
:101550008E7F8093D60380912802882309F03EC1B4 |
:1015600080910E01882311F00E949C170E94411364 |
:101570000E947C0EC8010E942517882309F42AC105 |
:101580000C5E1F4F80916D029091D603882339F035 |
:1015900092609093D6038091560582600CC09D7F27 |
:1015A0009093D6038091920190919301079728F030 |
:1015B000809156058D7F8093560580919201909180 |
:1015C0009301079728F08091D6038E7F8093D603EE |
:1015D00080910501882321F081508093050125C069 |
:1015E0008093FC0310928902109288021092870265 |
:1015F0001092860210928502109284028091080156 |
:10160000909109018F5F9F4F81F48091B1028823EF |
:1016100061F488E99AE3909325028093240280E0A4 |
:101620009CE090930901809308018091E901893C35 |
:1016300048F081508093E9018091D6038B7F80939D |
:10164000D60330C08091B5078823E1F08091D6039E |
:1016500084608093D60380910801909109018F5F87 |
:101660009F4F81F48091A802882361F088E99AE372 |
:10167000909325028093240280E098EA90930901D8 |
:101680008093080110928E0310928D0310928C03A8 |
:1016900010928B038FEF9FEF9093E3078093E20705 |
:1016A0001092E90180910001282F332780911E01BB |
:1016B00090911F0182179307CCF480917D02806284 |
:1016C00080937D0280910801909109018F5F9F4F67 |
:1016D000C1F480E797E1909325028093240280E093 |
:1016E00093E090930901809308010BC0809124023C |
:1016F00090912502892B29F480917D028F7D809322 |
:101700007D020E94C26584E0809323028091A8023A |
:10171000882329F45AEA852E55E0952E12C080912F |
:10172000F9018F5F8093F901813359F41092F90127 |
:101730008091F3019091F40101969093F4018093CC |
:10174000F3010894811C911CF2E78F16FBE09F06C1 |
:1017500009F040C0882499242091F7013091F801C4 |
:101760002F5F3F4F3093F8012093F7018091F501EF |
:101770009091F60101969093F6018093F501832FE5 |
:101780009927682F8EE090E00E94A22C8091F701AB |
:101790009091F8019070682F8FE090E00E94A22C49 |
:1017A0008091F5019091F601892F9927682F8AE0A1 |
:1017B00090E00E94A22C8091F5019091F60190702A |
:1017C000682F8BE090E00E94A22C84E190E00E94C0 |
:1017D0001C178C010E9412660E94F86B80912302F4 |
:1017E000882309F011CE0E94D7610ECE1F920F926E |
:1017F0000FB60F9211248F939F93EF93FF938091D5 |
:1018000007018823E1F4809114029091150201965A |
:101810009093150280931402FC01E555FB4FE08183 |
:10182000ED3019F08A3A910539F4109215021092B0 |
:10183000140281E080930701E093C60004C0109277 |
:10184000150210921402FF91EF919F918F910F90CA |
:101850000FBE0F901F9018951F920F920FB60F9208 |
:1018600011242F933F934F935F936F937F938F93A5 |
:101870009F93AF93BF93CF93EF93FF9390E08091AB |
:10188000FA01813029F48091C6008093CE00CCC04B |
:101890008091FA01823029F48091C6008093FF0381 |
:1018A000C3C08091C60080930C0250911A025A3A2C |
:1018B00010F090931B0280910C028D3009F065C0EE |
:1018C00080911B02823009F060C090931B02852F2B |
:1018D000992781509C4FFC0132974081209116023C |
:1018E00030911702241B3109DC0111978C91281BC0 |
:1018F0003109C9019F70909317028093160246E048 |
:10190000969587954A95E1F7982F935C90931802E6 |
:101910002F733070235C209319028081981729F46B |
:101920008C91281711F491E006C090E08091090293 |
:101930008F5F80930902C0910B02CC2309F074C021 |
:10194000992309F471C081E080930B02580F5093E2 |
:1019500008025150E52FFF27E150FC4F8DE08083B6 |
:1019600080910104823509F05FC00E94D91F88E18F |
:1019700090E02CE00FB6F894A895809360000FBE1D |
:1019800020936000C09322024FC020911B02822F3F |
:10199000992781309105F9F0823091051CF4892B4B |
:1019A00021F040C0029711F13DC080910C028332BA |
:1019B00039F480910B02882319F481E080931B0293 |
:1019C00080910C028093FF0381E080931A02809142 |
:1019D0000C02992722C02F5F20931B02E52FFF27BF |
:1019E000E150FC4F80910C02808309C0E52FFF2756 |
:1019F000E150FC4F80910C0280835A3A20F45F5FE3 |
:101A000050931A0202C010921B0220910C02809186 |
:101A1000160290911702820F911D909317028093E6 |
:101A2000160202C010921B02FF91EF91CF91BF915D |
:101A3000AF919F918F917F916F915F914F913F9166 |
:101A40002F910F900FBE0F901F901895AC01A0E042 |
:101A5000B0E09D01A817B90748F4EBEAF4E08191E2 |
:101A6000280F311D1196A417B507C8F33F70FD016B |
:101A7000E555FB4FC90156E0969587955A95E1F7D4 |
:101A8000835C80831196FD01E555FB4F2F73307009 |
:101A9000822F835C8083A455BB4F8DE08C93109282 |
:101AA00007018091AB048093C6000895A0E0B0E0E8 |
:101AB000ECE5FDE00C9454772C859D850E85BB24C8 |
:101AC00083E28093AB049F599093AC042093AD04C0 |
:101AD00033E0E32EF12C002309F49EC0CF84D88894 |
:101AE000BE016D5E7F4FA989BA890150109709F434 |
:101AF00093C01097B9F0F601EB0DF11DB3949081EE |
:101B0000119791F4002349F1FB016E5F7F4FDB01D8 |
:101B1000C080D1806E5F7F4F0D90BC91A02DBB2403 |
:101B2000015002C090E019C01097B9F0F601EB0D1A |
:101B3000F11DB3944081119791F4002341F1FB0111 |
:101B40006E5F7F4FDB01C080D1806E5F7F4F0D9055 |
:101B5000BC91A02DBB24015002C040E018C01097DA |
:101B6000B1F0F601EB0DF11DB3941081119781F4E2 |
:101B7000002371F0FB013296DB01CD90DC90BF01B8 |
:101B80006E5F7F4FA081B181BB24015001C010E086 |
:101B9000F701E555FB4F892F86958695835C8083F9 |
:101BA0000894E11CF11CF701E555FB4F892F99279B |
:101BB0008370907024E0880F991F2A95E1F75527CC |
:101BC0009A0194E0369527959A95E1F7822B835CEC |
:101BD00080830894E11CF11CF701E555FB4F4F7021 |
:101BE0005070440F551F440F551F812F992726E031 |
:101BF000969587952A95E1F7842B835C80830894DA |
:101C0000E11CF11CF701E555FB4F1F73135C1083BA |
:101C10000894E11CF11C6ACFC7010E94260DE9E07F |
:101C20000C947077A3E07A2F409108024650442329 |
:101C300009F458C0E72FFF27E150FC4F80818D53F6 |
:101C40007F5FE72FFF27E150FC4F20812D537F5FFF |
:101C5000E72FFF27E150FC4F30813D537F5FE72F97 |
:101C6000FF27E150FC4F60816D537F5F9927880FFC |
:101C7000991F880F991F522F52955F70582B822FF2 |
:101C800099278F709070F4E0880F991FFA95E1F70B |
:101C9000232F26952695282B832F992783709070C4 |
:101CA000E6E0880F991FEA95E1F7682B41504F3F16 |
:101CB000C9F0EA2FFF27E150FC4F5083AF5F41503E |
:101CC0004F3F81F0EA2FFF27E150FC4F2083AF5FA9 |
:101CD00041504F3F39F0EA2FFF27E150FC4F60831E |
:101CE000AF5FA5CF82E094E0909307028093060255 |
:101CF000A350A09305020895A2E0B0E0E2E8FEE060 |
:101D00000C945A7780910B02882309F46BC40E94CB |
:101D1000120E80910004823609F025C380910104DF |
:101D200099278037910509F4C1C081379105C4F422 |
:101D30008A36910509F48DC28B36910544F48B34B3 |
:101D4000910571F18636910509F46CC10CC38D368D |
:101D5000910509F47BC08E36910509F45FC003C379 |
:101D600084379105D1F1853791054CF48137910580 |
:101D700009F4A3C08337910509F4F1C0F4C2873791 |
:101D8000910509F428C2883791052CF4853791050F |
:101D900009F4E4C1E8C28937910509F47AC1E3C2C4 |
:101DA000E0910602F0910702808191819093C40234 |
:101DB0008093C3022091C1023091C202821B930B17 |
:101DC000845E9D4F68E671E00E94FB76845B9040E4 |
:101DD0009093C0028093BF02C6C280910802A09176 |
:101DE0000602B0910702853140F080E1EAEDF3E0B0 |
:101DF0000D9001928A95E1F70DC08D919D910D9006 |
:101E0000BC91A02D8093DA039093DB03A093DC03B5 |
:101E1000B093DD0380EF809303024BC080910701F4 |
:101E20008823E1F38DE490E09F938F9380E296E026 |
:101E30009F938F9381E08F938F938EE48F930E9473 |
:101E4000560D8DB79EB707968DBF8DC2A091060225 |
:101E5000B09107021C91113081F48DE4E0E2F6E0CC |
:101E60000D9001928A95E1F70E94A22D198380912D |
:101E7000D6038F7E8093D60301C01982809107011B |
:101E80008823E1F381E090E09F938F93CE01019648 |
:101E90009F938F9381E08F938F938DE48F930E9414 |
:101EA000560DADB7BEB71796ADBF5DC281E080934A |
:101EB0000E028FEF8093050156C2E0910602F09169 |
:101EC0000702E0818E2F8A508A3058F48983882354 |
:101ED00011F481E003C0863010F085E0898361E071 |
:101EE0000EC08E2F84518A3070F48983882311F4B8 |
:101EF00081E003C0863010F085E0898360E089814D |
:101F00000E94222E12C0E983EF3F19F40E94052E91 |
:101F100089838981882311F481E003C0863010F021 |
:101F200085E0898389810E94B82C809107018823EC |
:101F3000E1F383E790E09F938F938CEA95E09F9382 |
:101F40008F9381E090E09F938F93CE0101969F93B2 |
:101F50008F9382E08F9381E08F9381E572C120910E |
:101F6000060230910702D9018C918150853008F02A |
:101F700040C0F90181818535E1F52F5F3F4F83E74F |
:101F8000ECEAF5E0D9010D9001928A95E1F7F901AB |
:101F900082910E94212D8091ED059927AA27BB27C8 |
:101FA000BC01CD0124EC39E040E050E00E94BC7659 |
:101FB000DC01CB018093D5019093D601A093D7018A |
:101FC000B093D8018091EE059927AA27BB27BC01C1 |
:101FD000CD010E94BC76DC01CB018093D1019093AE |
:101FE000D201A093D301B093D4010E94052E89831E |
:101FF00001C01982809107018823E1F381E090E01C |
:102000009F938F93CE0101969F938F9381E08F933F |
:102010008F9383E58F930E94560D8DB79EB70796D9 |
:102020008DBF26C0E0910602F0910702E0818E2F5D |
:102030008150853018F48E2F0E94B82C0E94052EF6 |
:102040008983809107018823E1F381E090E09F93E9 |
:102050008F93CE0101969F938F9381E08F938F93FF |
:1020600086E48F930E94560DADB7BEB71796ADBFED |
:102070008091A802882329F46EE670E089810E948D |
:10208000E63580E00E9438078091D3050E94D57222 |
:102090006AC1E0910602F09107028081992787FDCD |
:1020A00090959093F2068093F1068181992787FDA0 |
:1020B00090959093F4068093F3068281992787FD8B |
:1020C00090959093F6068093F5068381992787FD76 |
:1020D00090959093F8068093F7068481992787FD61 |
:1020E00090959093FA068093F9068581992787FD4C |
:1020F00090959093FC068093FB068681992787FD37 |
:1021000090959093FE068093FD068781992787FD21 |
:102110009095909300078093FF068085992787FD0F |
:10212000909590930207809301078185992787FDF9 |
:10213000909590930407809303078285992787FDE4 |
:10214000909590930607809305078385992787FDCF |
:102150009095909308078093070705C1E0910602C8 |
:10216000F091070280810E9441338A83882319F409 |
:1021700081E0898301C01982809107018823E1F3FE |
:1021800088E090E09F938F938EE696E09F938F93E5 |
:1021900021E030E03F932F93809106029091070257 |
:1021A0009F938F933F932F93CE0102969F938F938C |
:1021B0003F932F93CE01820F931F9F938F9384E0C1 |
:1021C0008F9381E08F9385E58F930E94560DEDB735 |
:1021D000FEB773963CC080910502893008F4C3C0F5 |
:1021E00020910602309107022F5F3F4F88E0AEE654 |
:1021F000B6E0F90101900D928A95E1F7D9018E912F |
:102200000E9497328A83882319F481E0898301C070 |
:102210001982809107018823E1F321E030E03F93A8 |
:102220002F93CE0102969F938F933F932F93CE01CE |
:10223000820F931F9F938F9382E08F9381E08F9300 |
:1022400087E58F930E94560DEDB7FEB73B96EDBF25 |
:102250008AC00E9488728983823019F0843009F024 |
:1022600082C0F8948091C1008F738093C1008091E7 |
:10227000C9008F738093C9008091C100877E8093CD |
:10228000C1008091C900877E8093C9008091C800F9 |
:1022900087FF03C08091CE00F9CF8091C00087FFF7 |
:1022A00003C08091C600F9CFE0910602F0910702C9 |
:1022B0008081882359F581E08093FA011092CD0046 |
:1022C00080E490E08093CC008091CD008093C500A5 |
:1022D0008091CC008093C4008091CA008F7D809350 |
:1022E000CA008091CA008F7E8093CA008091C90085 |
:1022F0008B7F8093C9008091CA0084608093CA005C |
:102300008091CA0082608093CA0003C082E08093FB |
:10231000FA018091CA00877F8093CA008091C20031 |
:10232000877F8093C2008091C9008E7F8093C9000F |
:102330008091C10088618093C1008091C90088614B |
:102340008093C9008091C10080688093C100809112 |
:10235000C90080688093C90010926E0010926F00CF |
:102360001092700078948091010499278436910529 |
:1023700009F4CDC085369105ACF48136910509F498 |
:1023800081C0823691052CF48B34910509F45DC02F |
:1023900021C18236910509F482C08336910509F482 |
:1023A00091C018C18C36910509F4FFC08D36910596 |
:1023B0004CF48736910509F40AC18836910509F471 |
:1023C000C4C008C18437910529F08637910509F406 |
:1023D000FAC000C180910802A0910602B0910702E4 |
:1023E000803140F080E1EAEDF3E00D9001928A95B2 |
:1023F000E1F70DC08D919D910D90BC91A02D809322 |
:10240000DA039093DB03A093DC03B093DD038091A8 |
:1024100007018823E1F31F92809104018F9384E5E3 |
:102420008F930E94560D8AEF809303028FEF809363 |
:10243000050180EA9FE00E941C179093FC018093A5 |
:10244000FB010F900F900F90C5C0E0910602F09134 |
:102450000702808191819093C4028093C3022091EE |
:10246000C1023091C202821B930B845E9D4F68E6CD |
:1024700071E00E94FB76845B90409093C002809351 |
:10248000BF02A8C0E0910602F0910702808180930C |
:102490000601803298F08FE1809306010FC0A09171 |
:1024A0000602B09107028BE0E2EFF3E00D9001929B |
:1024B0008A95E1F78091FB03809397058FEF8093D6 |
:1024C000050188C08091FF0190910002892B89F459 |
:1024D000E0910602F0910702E081EE2351F08AE0DC |
:1024E000E89FC00111240E941C179093CD03809394 |
:1024F000CC03E0910602F091070290818AE0989F58 |
:10250000C0011124909300028093FF0115C08FEF4A |
:1025100080930501E0910602F091070290818AE024 |
:10252000989FC00111249093020280930102892B8D |
:1025300019F081E08093100280EA9FE00E941C174E |
:102540009093FC018093FB0145C08FEF80930501C0 |
:10255000E0910602F0910702908197FD08C082E0A9 |
:1025600080930D021092FE011092FD011AC0909509 |
:1025700080916502892B8093650291818AE0989F02 |
:10258000C00111249093FE018093FD0184E08093AB |
:102590000D0280EA9FE00E941C179093FC0180933B |
:1025A000FB0181E08093110215C08FEF809305013C |
:1025B000E0910602F091070280818093660281E03B |
:1025C0008093120207C081E080930F0203C081E074 |
:1025D0008093130210920B021092070210920602CF |
:1025E00010920502E3E0CE5F0C947677982F8091ED |
:1025F000C00085FFFCCF9093C60008950F931F93F2 |
:1026000088E18093C1008091C00082608093C00007 |
:102610008091C10080688093C1008091C100806476 |
:102620008093C10000E010E00093C5008AE290E0D2 |
:102630008093C40080910102909102020E941C17B5 |
:102640009093CF038093CE038CED90E00E941C17F3 |
:102650009093FE038093FD031092D00382E5809354 |
:10266000D1031092D4038BE08093D2031092D30352 |
:102670001093070200930602109205021F910F911A |
:102680000895A0E1B0E0E7E4F3E10C94577780917E |
:102690000701882309F4C1C28091FB019091FC01DC |
:1026A0000E942517882361F01092FE011092FD010F |
:1026B0001092020210920102109200021092FF0189 |
:1026C0008091FD019091FE01892B41F08091A90438 |
:1026D0009091AA040E942517882329F48091110261 |
:1026E000882309F460C080910701882309F45BC046 |
:1026F00080910D0201E211E08430A8F00E94ED1FEC |
:1027000080E590E09F938F931F930F9381E08F93C9 |
:102710008F9388E48F930E94560D2DB73EB7295FA3 |
:102720003F4F2DBF34C01092670282E194E09F9327 |
:102730008F9382EE9FE19F938F93E091BC03F09182 |
:10274000BD03099584E190E09F938F931F930F93AE |
:1027500081E090E09F938F938DE092E09F938F9321 |
:1027600082E08F9381E08F9388E48F930E94560DCF |
:1027700080910D02982F8F5F80930D022DB73EB789 |
:10278000215F3F4F2DBF943010F010920D028091C9 |
:10279000FD019091FE010E941C179093AA04809362 |
:1027A000A9041092110280911202882351F18091A4 |
:1027B0000701882331F10E94ED1F80E590E09F938F |
:1027C0008F9381E291E09F938F9321E030E03F93DC |
:1027D0002F9380E291E09F938F933F932F9386E610 |
:1027E00092E09F938F9383E08F9381E08F938CE4AB |
:1027F0008F930E94560D109212028DB79EB70F96BE |
:102800008DBF80910F028823D1F08091070188232A |
:10281000B1F08AE090E09F938F9380ED93E09F93D7 |
:102820008F9381E08F938F9386E58F930E94560D4F |
:1028300010920F022DB73EB7295F3F4F2DBF8091F9 |
:1028400013028823D9F0809107018823B9F08BE027 |
:1028500090E09F938F9382EF93E09F938F9381E01B |
:102860008F93809104018F9387E48F930E94560D7C |
:10287000109213028DB79EB707968DBF8091FD030E |
:102880009091FE030E942517882309F461C080916E |
:102890000701882309F45CC08091C8059927880F37 |
:1028A000991F880F991F7C010027F7FC0095102FB6 |
:1028B0008091050390910603A0910703B09108034E |
:1028C000BC01CD01A80197010E9430773093EB0342 |
:1028D0002093EA038091FD029091FE02A091FF02F5 |
:1028E000B0910003BC01CD01A80197010E9430778F |
:1028F0003093ED032093EC03809192028093EE03DA |
:10290000809191028093EF0388E090E09F938F93F2 |
:102910008AEE93E09F938F9381E08F9383E08F9370 |
:102920008BE68F930E94560D8091F0032DB73EB732 |
:10293000295F3F4F2DBF853018F086E08093F0036C |
:1029400083E690E00E941C179093FE038093FD03A2 |
:102950008091010290910202892B41F08091CE0377 |
:102960009091CF030E942517882321F480911002B3 |
:10297000882339F180910701882319F10E94DC3402 |
:1029800082E490E09F938F9385E595E09F938F93EA |
:1029900081E08F938F9384E48F930E94560D109261 |
:1029A00010028DB79EB707968DBF8091010290915E |
:1029B0000202009731F00E941C179093CF0380937E |
:1029C000CE038091FF0190910002892B09F4B8C0D9 |
:1029D0008091CC039091CD030E942517882309F4A0 |
:1029E000AFC080910701882309F4AAC08091C8056F |
:1029F0009927880F991F880F991F7C010027F7FCE2 |
:102A00000095102F8091050390910603A091070374 |
:102A1000B0910803BC01CD01A80197010E94307755 |
:102A20003093BF032093BE038091FD029091FE027C |
:102A3000A091FF02B0910003BC01CD01A801970154 |
:102A40000E9430773093C1032093C00320919D07EB |
:102A500030919E0740919F075091A007DA01C9016C |
:102A600063E0880F991FAA1FBB1F6A95D1F7820FD9 |
:102A7000931FA41FB51F820F931FA41FB51F209182 |
:102A80009601309197014091980150919901BC01B4 |
:102A9000CD010E9430773093C3032093C20380910D |
:102AA000CD029091CE02A091CF02B091D00239E038 |
:102AB000B595A795979587953A95D1F78093C403D7 |
:102AC0008091C9029091CA02A091CB02B091CC0230 |
:102AD00029E0B595A795979587952A95D1F7809385 |
:102AE000C5038091D5029091D602A091D702B091F2 |
:102AF000D80209E0B595A795979587950A95D1F7DE |
:102B00008093C6038EE090E09F938F938EEB93E0CB |
:102B10009F938F9381E08F938F9383E48F930E9491 |
:102B2000560D8091FF01909100020E941C17909316 |
:102B3000CD038093CC032DB73EB7295F3F4F2DBF08 |
:102B4000809106018F3F71F1992714E0880F991F3A |
:102B50001A95E1F78E5E9D4F40E150E0BC01CE0139 |
:102B600001960E940F7580E190E09F938F93CE01B4 |
:102B700001969F938F9381E090E09F938F9386E0DF |
:102B800091E09F938F9382E08F9381E08F9381E414 |
:102B90008F930E94560D8FEF809306018DB79EB7DD |
:102BA0000B968DBF809197058823D1F08091070106 |
:102BB0008823B1F081E090E09F938F9387E995E0BF |
:102BC0009F938F9381E08F938F9382E48F930E94E2 |
:102BD000560D109297052DB73EB7295F3F4F2DBF79 |
:102BE00080910E028823C9F0809107018823A9F003 |
:102BF00084E390E09F938F9387ED96E09F938F936C |
:102C000081E08F938F9380E58F930E94560D1092F1 |
:102C10000E028DB79EB707968DBFE6E0C05F0C949D |
:102C200073771F920F920FB60F9211242F933F9339 |
:102C30005F936F937F938F939F93AF93BF93EF9324 |
:102C4000FF9320E080912302882329F080912302C2 |
:102C500081508093230280919F03882319F0815033 |
:102C600080939F0380912B02815080932B028F3F92 |
:102C700009F05BC089E080932B028091290290913A |
:102C80002A02019690932A028093290280910F01D3 |
:102C90008F5F817080930F01882319F481E0809306 |
:102CA0002802349903C081E080932C028091240291 |
:102CB00090912502892B21F1809124029091250287 |
:102CC0000B9750F080912402909125020A979093DF |
:102CD00025028093240204C010922502109224023F |
:102CE00080912402909125022091080130910901E0 |
:102CF00082239323892B11F021E008C020E006C035 |
:102D00008FEF9FEF9093090180930801809102015A |
:102D1000222331F08A3011F45A9A07C0479A05C02D |
:102D20008A3011F45A9801C0479880912C02882368 |
:102D300009F472C02091E901222309F06DC080914D |
:102D4000B90583FF69C086B19927FC01E071F07075 |
:102D500084FF14C0809126029091270201969093DF |
:102D60002702809326028091260290912702895E95 |
:102D7000934008F451C020932C024EC0809126024B |
:102D800090912702892B09F443C0809126029091EB |
:102D900027028A569140E0F5809126029091270201 |
:102DA00069E270E00E94E776809126029091270206 |
:102DB000860F971F90932702809326028091260208 |
:102DC000909127020B9750F0809126029091270254 |
:102DD0000A979093C4028093C30204C0F093C40284 |
:102DE000E093C3028091C3029091C4022091C1027A |
:102DF0003091C202821B930B845E9D4F68E671E0A6 |
:102E00000E94FB76845B90409093C0028093BF0247 |
:102E10001092270210922602FF91EF91BF91AF917D |
:102E20009F918F917F916F915F913F912F910F9023 |
:102E30000FBE0F901F9018952091290230912A0201 |
:102E4000280F391FC9010196089520912902309158 |
:102E50002A02821B930B892F992786958074907084 |
:102E60000895CF93DF930E941C17EC01CE010E94BE |
:102E700025178823D9F3DF91CF910895CF93DF935E |
:102E80000E941C17EC0109C080911001882329F0D1 |
:102E9000909310018FEC80937A00CE010E94251749 |
:102EA000982F882389F3DF91CF9108959FB7F894E5 |
:102EB0005F983E9A469A8091B0008F708093B000E0 |
:102EC0008091B00083608093B0008091B1008B73DB |
:102ED0008093B1008091B1008B608093B10010921B |
:102EE000B2008FEF8093B3008091B0008068809330 |
:102EF000B000809170008A7F809370008091700094 |
:102F00008260809370009FBF08958AE090E00E94E5 |
:102F10001C17909332028093310282E085BD83EAD0 |
:102F200084BD17BC84EB88BD86E086BD80916E00B1 |
:102F3000816080936E000895A0E0B0E0E2EAF7E1DE |
:102F40000C9456778091E305E82FFF27E456FE4F57 |
:102F50009681D08080910E01A92FBB27A7FDB09547 |
:102F6000CB2FDB2F813009F0C9C0209105033091B0 |
:102F700006034091070350910803BD01CE010E9452 |
:102F8000BC7697FF04C061587F4F8F4F9F4F7B01E6 |
:102F90008C0167E015950795F794E7946A95D1F74A |
:102FA0008D2D992787FD9095A92FB92F2091FD028E |
:102FB0003091FE024091FF0250910003BC01CD010F |
:102FC0000E94BC7697FF04C061587F4F8F4F9F4F80 |
:102FD00057E095958795779567955A95D1F7F801BC |
:102FE000E701C61BD70BE80BF90B8091DA0599278F |
:102FF000AA27BB27BC01CD019E01AF010E94BC7670 |
:1030000097FF04C061507E4F8F4F9F4FFC01EB0133 |
:1030100049E0F595E795D795C7954A95D1F7809101 |
:10302000C101992736E0880F991F3A95E1F7409141 |
:103030000C0150910D012091E2053327841B950B63 |
:10304000B9010E94FB7680910C0190910D01860FD1 |
:10305000971F90930D0180930C0180910C0190912A |
:103060000D0197FD0F9624E0959587952A95E1F738 |
:1030700090931F0280931E028091110680FF07C06B |
:1030800080911E0290911F028C0F9D1F06C080919F |
:103090001E0290911F028C1B9D0B90931F02809328 |
:1030A0001E028091DB05282F3327220F331F220FAA |
:1030B000331F80911E0290911F02821793077CF0AC |
:1030C0008091DC05282F3327220F331F220F331F57 |
:1030D00080911E0290911F022817390724F4309323 |
:1030E0001F0220931E0280910201843108F4C2C0A5 |
:1030F00080910E018F5F80930E01BEC02091FD0272 |
:103100003091FE024091FF0250910003BD01CE01BB |
:103110000E94BC7697FF04C061587F4F8F4F9F4F2E |
:103120007B018C01C7E015950795F794E794CA9544 |
:10313000D1F78D2D992787FD9095A92FB92F209133 |
:103140000503309106034091070350910803BC0129 |
:10315000CD010E94BC769B01AC0197FF04C02158B1 |
:103160003F4F4F4F5F4FB7E05595479537952795A0 |
:10317000BA95D1F72E0D3F1D401F511F8091DE05DE |
:103180009927AA27BB27BC01CD010E94BC7697FFD7 |
:1031900004C061507E4F8F4F9F4FFC01EB01A9E0AF |
:1031A000F595E795D795C795AA95D1F78091C00178 |
:1031B000992776E0880F991F7A95E1F740910A01E7 |
:1031C00050910B012091E2053327841B950BB90127 |
:1031D0000E94FB7680910A0190910B01860F971F48 |
:1031E00090930B0180930A0180910A0190910B0149 |
:1031F00097FD0F9664E0959587956A95E1F7909312 |
:103200001D0280931C028091110681FF07C08091EE |
:103210001C0290911D028C0F9D1F06C080911C0204 |
:1032200090911D028C1B9D0B90931D0280931C029C |
:103230008091DF05282F3327220F331F220F331FE2 |
:1032400080911C0290911D02821793077CF080915F |
:10325000E005282F3327220F331F220F331F8091C1 |
:103260001C0290911D022817390724F430931D0287 |
:1032700020931C0210920E01E7E0CDB7DEB70C944C |
:1032800072771F920F920FB60F9211242F933F93D4 |
:103290004F935F938F939F93EF93FF9380910201DE |
:1032A00090912D02843108F04CC0992309F01CC183 |
:1032B0008091B00086FF24C08091B0008F7B809306 |
:1032C000B00080911E0290911F0287559E4F9093EF |
:1032D00021028093200225E08D3D920718F08CEDAD |
:1032E00095E005C08757914030F487E791E09093CF |
:1032F0002102809320028091200290912102BAC085 |
:103300008091B00080648093B0008091E105282F07 |
:1033100033278DED96E0289FA001299F500D389FFF |
:10332000500D1124CA0120912E0230912F02821BD0 |
:10333000930B909321028093200281E080930E01F1 |
:10334000D0C0992309F0D0C08091B00086FF97C00B |
:103350008091B0008F7B8093B000E0913002EE232B |
:10336000F1F48091E105282F33278DED96E0289F19 |
:10337000A001299F500D389F500D1124CA012091A2 |
:103380002E0230912F02821B930B90932102809387 |
:10339000200210922F0210922E02469AA2C089EAB1 |
:1033A00093E090932102809320028E2F99278330FF |
:1033B0009105D9F08430910534F48130910549F0BC |
:1033C000029761F020C08430910591F0059799F043 |
:1033D0001AC080911E0290911F0204C080911C02AD |
:1033E00090911D0287559E4F1DC080916B0705C0AF |
:1033F0008091450702C0809173079927880F991F14 |
:10340000880F991FEFCFFF27EE0FFF1FE952F94FEB |
:1034100020813181220F331F80912002909121025F |
:10342000820F931F909321028093200280912002AB |
:103430009091210255E08D3D950718F08CED95E0B7 |
:1034400005C08757914030F487E791E090932102BF |
:103450008093200220912002309121022C5B304089 |
:10346000309321022093200280912E0290912F020E |
:10347000820F931F90932F0280932E0232C080916F |
:10348000B00080648093B0008CEB90E090932102B8 |
:103490008093200280912E0290912F0284549F4F9E |
:1034A00090932F0280932E0280912202882321F094 |
:1034B0008091B102833320F480912202823011F492 |
:1034C000469801C0469A809130028F5F8093300207 |
:1034D0009091E105981728F481E080930E011092F5 |
:1034E000300281E080932D02209120023091210250 |
:1034F00041E02F37340730F08FEF8093B3002F5F18 |
:1035000030400FC02F3F3105C9F0C0F0A9014F5F17 |
:1035100050404F37510550F480E88093B300205855 |
:103520003040309321022093200212C08FEF80930D |
:10353000B30050932102409320020AC080912002E0 |
:103540008093B300109221021092200210922D025B |
:10355000FF91EF919F918F915F914F913F912F91AB |
:103560000F900FBE0F901F90189510927C008FEC5B |
:1035700080937A000895CF93DF931092370283E00F |
:1035800090E00E949A2CC82FDD27C531D10508F0A4 |
:103590002A97C7BD84E690E00E943E1780911401EF |
:1035A000909115018052934010F4C0E0D0E0CA3FE2 |
:1035B000D105F8F4C7BD82E390E00E943E1787E290 |
:1035C00094E09F938F9386EF92E19F938F93E09186 |
:1035D000BC03F091BD0309958091140190911501F0 |
:1035E0000F900F900F900F908052934010F0219603 |
:1035F000DECFC093A8056C2F83E090E00E94A22C40 |
:103600008091B90580FF0AC08091A8058A508B3E41 |
:1036100028F08091D50380648093D503C7BD8CE2E8 |
:1036200091E00E943E17DF91CF910895EF92FF92B3 |
:103630001F93CF9310E080ED97E00E941C177C0150 |
:10364000CCE8133019F4CB3008F0C9E010E08091D9 |
:103650004702909148028C5F934024F480911301BB |
:1036600081500AC08091470290914802875094404F |
:1036700034F0809113018F5F8093130101C011E03A |
:1036800080914502909146028C5F934024F4809192 |
:10369000120181500AC080914502909146028750E4 |
:1036A000944034F0809112018F5F8093120101C029 |
:1036B0001F5F80914302909144028C5F934024F4F9 |
:1036C0008091110181500AC080914302909144027F |
:1036D00087509440C4F0809111018F5F8093110155 |
:1036E00013C089E294E09F938F9386EF92E19F93BA |
:1036F0008F93E091BC03F091BD0309950F900F905B |
:103700000F900F905FC01F5F82E1809372028091E3 |
:103710006C028E7F80936C0285EA8093BC0080915E |
:1037200013018A3040F48091D50381608093D503E2 |
:103730008AE08093130180911301863F40F08091CD |
:10374000D50381608093D50385EF80931301809129 |
:1037500012018A3040F48091D50382608093D503B2 |
:103760008AE08093120180911201863F40F080919F |
:10377000D50382608093D50385EF809312018091F9 |
:1037800011018A3040F48091D50384608093D50381 |
:103790008AE08093110180911101863F40F0809171 |
:1037A000D50384608093D50385EF809311018091C8 |
:1037B0007202882339F0C7010E942517882309F077 |
:1037C00090CFF5CF109210018FEC80937A0080910A |
:1037D00010018823E1F3CA3020F48AE090E00E94CF |
:1037E0003E17C15009F02DCF86E490E00E943E17AD |
:1037F000CF911F91FF90EF9008951F920F920FB6F7 |
:103800000F921124AF92BF92CF92DF92EF92FF926C |
:103810000F931F932F933F934F935F936F937F93D8 |
:103820008F939F93AF93BF93EF93FF938091500239 |
:10383000282F3327442755278F5F80935002F901A3 |
:103840002231310508F08CC3E25CFF4F0C94827783 |
:10385000809178009091790046C080917800909195 |
:1038600079002CC180917800909179009093530257 |
:103870008093520257C180910E0390910F032091C3 |
:10388000780030917900821B930B90939905809377 |
:103890009805809198059091990590935D02809389 |
:1038A0005C025EC1809178009091790020911003B4 |
:1038B00030911103821B930B9093A7058093A6056B |
:1038C0008091A6059091A70590935F0280935E0278 |
:1038D00049C380915602909157022091780030910F |
:1038E0007900820F931F909357028093560281E0D4 |
:1038F0003AC3809154029091550220917800309102 |
:103900007900820F931F909355028093540284E0B4 |
:103910002AC380911E0190911F019C01220F331F29 |
:10392000280F391F809178009091790063E070E052 |
:103930000E94E776260F371F3695279536952795EF |
:1039400030931F0120931E0185E00DC38091780004 |
:103950009091790040910A0350910B03841B950BC1 |
:1039600090933E0280933D0280913D0290913E02F1 |
:10397000029704F122E04E3E520784F42091510256 |
:103980002B5F20935102255080917E0290917F02FF |
:10399000845F914018F4215F20935102809151027D |
:1039A000853684F14F5F5F4F50930B0340930A03BA |
:1039B000845626C080913D0290913E028F5F9F4FBA |
:1039C0000CF532E047325307ECF0209151022550BC |
:1039D000209351022B5F80917E0290917F02845F41 |
:1039E000914018F42F5020935102809151028C394C |
:1039F0004CF44150504050930B0340930A038C59B0 |
:103A00008093510281E080933C02809178009091F4 |
:103A1000790090939F0580939E0580913D0290913F |
:103A20003E029C01442737FD4095542F8091C502EA |
:103A30009091C602A091C702B091C802820F931F55 |
:103A4000A41FB51F8093C5029093C602A093C7021E |
:103A5000B093C8022091C5023091C6024091C702BE |
:103A60005091C80257FF04C021503C4F4F4F5F4F49 |
:103A70000AE055954795379527950A95D1F7809196 |
:103A8000C5029091C602A091C702B091C802821BE4 |
:103A9000930BA40BB50B8093C5029093C602A09321 |
:103AA000C702B093C8022EC1809154029091550272 |
:103AB0002091780030917900820F931F90935502E6 |
:103AC0008093540210924F0250C2809102018A30BA |
:103AD00071F4809178009091790020915202309198 |
:103AE0005302820F931F01969695879517C04091B8 |
:103AF000520250915302843158F020917800309155 |
:103B00007900240F351F8FEF97E0821B930B06C0BF |
:103B10008091780090917900840F951F90934402D2 |
:103B20008093430286E01FC280910E0390910F03A1 |
:103B30002091780030917900821B930B9093990526 |
:103B400080939805809198059091990520915C0249 |
:103B500030915D02820F931F909342028093410245 |
:103B600087E001C280917800909179002091100344 |
:103B700030911103821B930B9093A7058093A605A8 |
:103B80008091A6059091A70520915E0230915F0279 |
:103B9000820F931F9093400280933F02E3C12091D4 |
:103BA0005602309157028091780090917900280F49 |
:103BB000391F3093570220935602809102018A30B8 |
:103BC00019F4220F331F04C0220F331F220F331F9B |
:103BD000309357022093560220915602309157029B |
:103BE000C90137FD0796A3E095958795AA95E1F75A |
:103BF0009093480280934702809158029091590215 |
:103C0000820F931F97FD0196959587959093590282 |
:103C10008093580220911A0330911B03821B930B4F |
:103C200090931D0180931C0120914D0230914E0212 |
:103C300080911C0190911D01280F391F37FF02C090 |
:103C40002F5F3F4F3595279530934E0220934D02BD |
:103C50004ECE20915402309155028091780090917F |
:103C60007900280F391F3093550220935402809118 |
:103C700002018A3019F4220F331F04C0220F331FB0 |
:103C8000220F331F30935502209354022091540287 |
:103C900030915502C90137FD079663E095958795E8 |
:103CA0006A95E1F7909346028093450280915A020B |
:103CB00090915B02820F931F97FD019695958795D2 |
:103CC00090935B0280935A0220911803309119035C |
:103CD000821B930B90931B0180931A0120914B023E |
:103CE00030914C0280911A0190911B01280F391FCD |
:103CF00037FF02C02F5F3F4F3595279530934C0219 |
:103D000020934B0283E02FC11092500281E08093F8 |
:103D10001001809133029091340201969093340205 |
:103D200080933302809178009091790090931501EF |
:103D3000809314018091140190911501AA27BB274B |
:103D4000A0906002B0906102C0906202D0906302C5 |
:103D5000A80EB91ECA1EDB1EA0926002B0926102BC |
:103D6000C0926202D0926302809164028F5F80935E |
:103D70006402823108F4F6C0809116019091170117 |
:103D8000A0911801B09119017C018D0123E0EE0C86 |
:103D9000FF1C001F111F2A95D1F7E81AF90A0A0B18 |
:103DA0001B0BEA0CFB1C0C1D1D1D80913702992773 |
:103DB00087FD9095A92FB92FBC01CD0126EC34E2E7 |
:103DC00040E050E00E94BC76DC01CB01E81AF90A21 |
:103DD0000A0B1B0BD801C7010496A11DB11DB7FF2B |
:103DE00005C0D801C7010B96A11DB11D13E0B59503 |
:103DF000A795979587951A95D1F78093160190937B |
:103E00001701A0931801B09319018091A00590911A |
:103E1000A1057C010027F7FC0095102F8091160169 |
:103E200090911701A0911801B0911901E81AF90AAF |
:103E30000A0B1B0BE092A302F092A4020093A502CE |
:103E40001093A602209138023091390240913A0233 |
:103E500050913B0257FF04C0215F3F4F4F4F5F4FD0 |
:103E6000F4E05595479537952795FA95D1F78091C8 |
:103E7000380290913902A0913A02B0913B02821B24 |
:103E8000930BA40BB50B8093380290933902A09347 |
:103E90003A02B0933B028091380290913902A0918E |
:103EA0003A02B0913B028E0D9F1DA01FB11F80935F |
:103EB000380290933902A0933A02B0933B0280916A |
:103EC000350290913602AC01E5E0440F551FEA95AA |
:103ED000E1F7481B590B8091380290913902A0916B |
:103EE0003A02B0913B02B7FF03C00F96A11DB11D6E |
:103EF00074E0B595A795979587957A95D1F7209118 |
:103F0000A3023091A402281B390B63E0220F331F58 |
:103F10006A95E1F7240F351F37FF02C0215E3F4F3E |
:103F200045E0359527954A95E1F730933602209381 |
:103F30003502D601C501D7FE03C00196A11DB11DF2 |
:103F4000B595A795979587958093600290936102A8 |
:103F5000A0936202B093630289E08093640202C07E |
:103F60001092500282E080934F0280914F02809322 |
:103F70007C0080915002882319F08FEC80937A00A6 |
:103F8000FF91EF91BF91AF919F918F917F916F9131 |
:103F90005F914F913F912F911F910F91FF90EF9063 |
:103FA000DF90CF90BF90AF900F900FBE0F901F90FB |
:103FB000189590E2E1E2F1E08FE49193815087FF60 |
:103FC000FCCF089590916702E1E2F1E0E90FF11D65 |
:103FD00080839F5F909367020895EF92FF920F9303 |
:103FE0001F93CF93DF932091650220FF0AC0809139 |
:103FF0006602882311F0815002C0809120018093D5 |
:10400000660221FF0CC090916602809120019817F2 |
:1040100019F41092660203C09F5F90936602822F8C |
:10402000992780FF04C081FF02C0109266020E949F |
:10403000D91F80916602282F332752EEE52E5FE1CB |
:10404000F52EC091BC03D091BD038A3098F481E174 |
:10405000809367023F932F9380E694E09F938F9322 |
:10406000FF92EF92FE0109952DB73EB72A5F3F4FB1 |
:104070002DBF11C080E1809367023F932F9385E6A7 |
:1040800094E09F938F93FF92EF92FE0109958DB775 |
:104090009EB706968DBF20916602822F9927AA2788 |
:1040A000BB27FC01429710F00C949E2AE05BFF4F67 |
:1040B00042EEE42E4FE1F42EC091BC03D091BD033B |
:1040C0000C948277109267028AE694E09F938F9314 |
:1040D00002EE1FE1FF92EF92FE01099584E18093C9 |
:1040E00067020F900F900F900F9081E690E09F93E2 |
:1040F0008F9382E590E09F938F931F921F92809100 |
:1041000002016AE00E94DB76892F99279F938F93A3 |
:10411000809102010E94DB7699279F938F938AE713 |
:1041200094E09F938F93FF92EF92E091BC03F09104 |
:10413000BD03099588E2809367022DB73EB7225FE1 |
:104140003F4F2DBF81E296E09F938F930E94052EF3 |
:1041500099279F938F938FE894E09F938F93FF927B |
:10416000EF92E091BC03F091BD0309958DB79EB726 |
:1041700008968DBF9091D503992351F08CE38093DD |
:104180006702892F99279F938F938DE994E081C6C9 |
:1041900090916D02992371F08CE380936702892FCF |
:1041A00099279F938F9384EB94E09F938F931F9312 |
:1041B0000F9391C08091D60384FF07C08CE3809356 |
:1041C000670289EC94E00C94302A809192019091DE |
:1041D0009301069710F00C94A72A8CE38093670252 |
:1041E00086ED94E00C94302A8091B90532EEE32EEE |
:1041F0003FE1F32EC091BC03D091BD0380FF74C09A |
:10420000109267028091A3029091A402A091A5024E |
:10421000B091A602BC01CD0125E030E040E050E0C5 |
:104220000E9430773F932F9383EE94E09F938F9378 |
:10423000FF92EF92FE01099584E1809367022DB70A |
:104240003EB72A5F3F4F2DBF80919F029091A00201 |
:10425000A091A102B091A202BC01CD0125E030E005 |
:1042600040E050E00E9430773F932F9380EF94E03E |
:104270009F938F93FF92EF92E091BC03F091BD0367 |
:10428000099588E2809367028DB79EB706968DBF29 |
:1042900080911401909115019F938F938DEF94E07D |
:1042A0009F938F93FF92EF92E091BC03F091BD0337 |
:1042B00009958CE3809367022DB73EB72A5F3F4F85 |
:1042C0002DBF87B599279F938F938AE095E09F93A1 |
:1042D0008F93FF92EF92E091BC03F091BD0309959B |
:1042E0008DB79EB7069633C71092670287E195E0B7 |
:1042F0009F938F93FF92EF92FE01099584E1809343 |
:1043000067020F900F900F900F9086E295E09F93B9 |
:104310008F93FF92EF92E091BC03F091BD0309955A |
:1043200088E2809367020F900F900F900F908FE2BA |
:1043300095E09F938F93FF92EF92E091BC03F091F1 |
:10434000BD0309958CE3809367020F900F900F9047 |
:104350000F908EE395E09F938F93FF92EF920C94D2 |
:10436000342A1092670287E495E09F938F9302EEC0 |
:104370001FE1FF92EF92FE01099584E180936702AD |
:104380000F900F900F900F9080910503909106036E |
:10439000A0910703B0910803B7FF04C081509C4F60 |
:1043A000AF4FBF4F2AE0B595A795979587952A956A |
:1043B000D1F7BF93AF939F938F9384E595E09F933D |
:1043C0008F931F930F93E091BC03F091BD03099568 |
:1043D00088E2809367022DB73EB7285F3F4F2DBF1D |
:1043E0008091FD029091FE02A091FF02B091000326 |
:1043F000B7FF04C081509C4FAF4FBF4FCAE0B59587 |
:10440000A79597958795CA95D1F7BF93AF939F933B |
:104410008F9383E695E09F938F931F930F93E09183 |
:10442000BC03F091BD0309958CE3809367028DB7BF |
:104430009EB708968DBF8091C3029091C4029F934E |
:104440008F9382E795E09F938F931F930F93E09153 |
:10445000BC03F091BD0309952DB73EB72A5F3F4FCE |
:1044600011C7109267028091DB069091DC069F9342 |
:104470008F938091D9069091DA069F938F9381E86C |
:1044800095E09F938F93FF92EF92FE01099584E14F |
:10449000809367028DB79EB708968DBF8091DF0627 |
:1044A0009091E0069F938F938091DD069091DE06B8 |
:1044B0009F938F9381E995E09F938F93FF92EF9263 |
:1044C000E091BC03F091BD03099588E280936702F7 |
:1044D0002DB73EB7285F3F4F2DBF8091E3069091E7 |
:1044E000E4069F938F938091E1069091E2069F935B |
:1044F0008F9381EA95E09F938F93FF92EF92E091E3 |
:10450000BC03F091BD0309958CE3809367028DB7DE |
:104510009EB708968DBF8091E7069091E8069F931D |
:104520008F938091E5069091E6069F938F9381EBA0 |
:1045300095E0A2C0109267028091AE05E82FFF2798 |
:10454000EE0FFF1FE952F94F808191819F938F9366 |
:104550008091AD05E82FFF27EE0FFF1FE952F94FBD |
:10456000808191819F938F9381EC95E09F938F93AE |
:10457000FF92EF92FE01099584E1809367028DB767 |
:104580009EB708968DBF8091B005E82FFF27EE0FEC |
:10459000FF1FE952F94F808191819F938F93809102 |
:1045A000AF05E82FFF27EE0FFF1FE952F94F80817B |
:1045B000918188589F4F9F938F9381ED95E09F93B2 |
:1045C0008F93FF92EF92E091BC03F091BD030995A8 |
:1045D00088E2809367022DB73EB7285F3F4F2DBF1B |
:1045E0008091B205E82FFF27EE0FFF1FE952F94F28 |
:1045F0008081918182599F4F9F938F938091B105C4 |
:10460000E82FFF27EE0FFF1FE952F94F80819181BC |
:1046100082599F4F9F938F9381EE95E09F938F9345 |
:10462000FF92EF92E091BC03F091BD0309958CE3FA |
:10463000809367028DB79EB708968DBF8091B405B1 |
:10464000E82FFF27EE0FFF1FE952F94F808191817C |
:1046500082599F4F9F938F938091B305E82FFF2737 |
:10466000EE0FFF1FE952F94F8081918182599F4FD0 |
:104670009F938F9381EF95E09F938F93FF92EF929B |
:10468000E091BC03F091BD0309952DB73EB7285FBB |
:104690003F4FF8C51092670281E096E09F938F9399 |
:1046A00002EE1FE1FF92EF92FE0109958091020157 |
:1046B0000F900F900F900F908A3009F09DC084E109 |
:1046C0008093670280911A0390911B039C0197FFCE |
:1046D00002C0295F3F4F287F821B930B9F938F93CC |
:1046E00080911A0390911B0397FD0796A3E095957F |
:1046F0008795AA95E1F79F938F9320911A033091A4 |
:104700001B0337FF02C0295F3F4FF3E03595279524 |
:10471000FA95E1F78091470290914802821B930B32 |
:104720009F938F938FE096E09F938F931F930F93A8 |
:10473000E091BC03F091BD03099588E28093670284 |
:104740008DB79EB70A968DBF80911803909119037B |
:104750009C0197FF02C0295F3F4F287F821B930B6C |
:104760009F938F93809118039091190397FD07965B |
:10477000E3E095958795EA95E1F79F938F932091D4 |
:1047800018033091190337FF02C0295F3F4F73E0D0 |
:10479000359527957A95E1F78091450290914602EB |
:1047A000821B930B9F938F9380E296E09F938F934E |
:1047B0001F930F93E091BC03F091BD0309958CE327 |
:1047C000809367022DB73EB7265F3F4F2DBF809184 |
:1047D0001603909117039F938F93809116039091E6 |
:1047E00017032091430230914402821B930B9F9345 |
:1047F0008F9381E396E0A7C38B3019F0843108F4DE |
:10480000ADC084E18093670280911A0390911B03ED |
:104810009C0197FF02C0215F3F4F207F821B930BBB |
:1048200097FD0196959587959F938F9380911A0395 |
:1048300090911B0397FD0F9654E0959587955A9597 |
:10484000E1F79F938F9320911A0330911B0337FF59 |
:1048500002C0295F3F4F43E0359527954A95E1F720 |
:104860008091470290914802821B930B9F938F93F4 |
:104870008FE396E09F938F931F930F93E091BC0378 |
:10488000F091BD03099588E2809367022DB73EB78A |
:10489000265F3F4F2DBF80911803909119039C0113 |
:1048A00097FF02C0215F3F4F207F821B930B97FD34 |
:1048B0000196959587959F938F938091180390917A |
:1048C000190397FD0F96C4E095958795CA95E1F772 |
:1048D0009F938F93209118033091190337FF02C0E3 |
:1048E000295F3F4FB3E035952795BA95E1F7809161 |
:1048F000450290914602821B930B9F938F9381E513 |
:1049000096E09F938F931F930F93E091BC03F091D8 |
:10491000BD0309958CE3809367028DB79EB70A9615 |
:104920008DBF809116039091170397FD0196959581 |
:1049300087959F938F9380911603909117032091F1 |
:10494000430230914402821B930B9F938F9383E623 |
:1049500096E09F938F931F930F9392CE8D3009F023 |
:10496000F6C584E1809367028091130199279F9394 |
:104970008F9380911A0390911B0397FD0F96F4E09B |
:1049800095958795FA95E1F79F938F9320911A0358 |
:1049900030911B0337FF02C0295F3F4FE3E035959D |
:1049A0002795EA95E1F78091470290914802821B92 |
:1049B000930B9F938F9382E796E09F938F931F9320 |
:1049C0000F93E091BC03F091BD03099588E28093B9 |
:1049D00067028DB79EB70A968DBF80911201992705 |
:1049E0009F938F93809118039091190397FD0F96D1 |
:1049F00074E0959587957A95E1F79F938F93209131 |
:104A000018033091190337FF02C0295F3F4F63E05D |
:104A1000359527956A95E1F7809145029091460278 |
:104A2000821B930B9F938F9386E896E09F938F93BF |
:104A30001F930F93E091BC03F091BD0309958CE3A4 |
:104A4000809367022DB73EB7265F3F4F2DBF809101 |
:104A5000110199279F938F938091160390911703CB |
:104A600097FD0196959587959F938F938091160357 |
:104A7000909117032091430230914402821B930BC3 |
:104A80009F938F938AE996E09F938F931F930F9341 |
:104A9000E091BC03F091BD0309958DB79EB70A96CE |
:104AA00056C3109267028EEA96E09F938F93FF920F |
:104AB000EF92FE01099584E1809367020F900F90B9 |
:104AC0000F900F9080911003909111039F938F93FB |
:104AD00080913F02909140029F938F938BEB96E0E1 |
:104AE0009F938F93FF92EF92E091BC03F091BD03EF |
:104AF000099588E2809367022DB73EB7285F3F4F44 |
:104B00002DBF80910E0390910F039F938F938091FF |
:104B10004102909142029F938F938AEC96E09F937B |
:104B20008F93FF92EF92E091BC03F091BD03099542 |
:104B30008CE3809367028DB79EB708968DBF8091F6 |
:104B40000A0390910B039F938F9380913D02909164 |
:104B50003E029F938F9389ED96E08ECD109267026F |
:104B600080911E0190911F016AE070E00E94FB7627 |
:104B70009F938F9380911E0190911F016AE070E0D6 |
:104B80000E94FB767F936F9388EE96E09F938F93BE |
:104B9000FF92EF92FE01099584E1809367028DB741 |
:104BA0009EB708968DBF80911408909115086AE011 |
:104BB00070E00E94E7769F938F9380911408909104 |
:104BC00015086AE070E00E94E7767F936F938CEFA0 |
:104BD00096E09F938F93FF92EF92E091BC03F09148 |
:104BE000BD03099588E2809367022DB73EB7285F21 |
:104BF0003F4F2DBF80911608909117089F938F9378 |
:104C000080E197E09F938F93FF92EF92E091BC0336 |
:104C1000F091BD0309958CE3809367028DB79EB731 |
:104C200006968DBF80911808909119089F938F93D5 |
:104C300080E297E02EC11092670282E397E09F9393 |
:104C40008F93FF92EF92FE01099584E180936702B2 |
:104C50000F900F900F900F908091D7069091D806EB |
:104C60009F938F938BE397E09F938F93FF92EF92A5 |
:104C7000E091BC03F091BD03099588E2809367023F |
:104C80008DB79EB706968DBF8091B10299279F93ED |
:104C90008F938BE497E09F938F93FF92EF92E09135 |
:104CA000BC03F091BD0309958CE3809367022DB797 |
:104CB0003EB72A5F3F4F2DBF8091D60699270197B7 |
:104CC0009F938F938BE597E002CB109267028BE660 |
:104CD00097E09F938F93FF92EF92FE01099584E1F5 |
:104CE000809367020F900F900F900F908091BF02FA |
:104CF0009091C0029F938F9383E797E09F938F9348 |
:104D0000FF92EF92E091BC03F091BD03099588E218 |
:104D1000809367022DB73EB72A5F3F4F2DBF80912A |
:104D2000C3029091C4029F938F9381E897E09F9371 |
:104D30008F93FF92EF92E091BC03F091BD03099530 |
:104D40008CE3809367028DB79EB706968DBF8091E6 |
:104D5000C1029091C2029F938F938FE897E099C010 |
:104D6000109267028091B20299279F938F938DE9E9 |
:104D700097E09F938F93FF92EF92FE01099584E154 |
:104D8000809367028DB79EB706968DBF8091B30260 |
:104D900099279F938F9389EA97E09F938F93FF9230 |
:104DA000EF92E091BC03F091BD03099588E28093F6 |
:104DB00067022DB73EB72A5F3F4F2DBF8091B402E7 |
:104DC00099279F938F9385EB97E09F938F93FF9203 |
:104DD000EF92E091BC03F091BD0309958CE38093C1 |
:104DE00067028DB79EB706968DBF8091B502992751 |
:104DF0009F938F9381EC97E04CC010926702809153 |
:104E0000B60299279F938F938DEC97E09F938F9392 |
:104E1000FF92EF92FE01099584E1809367028DB7BE |
:104E20009EB706968DBF8091B70299279F938F9367 |
:104E300089ED97E09F938F93FF92EF92E091BC03EF |
:104E4000F091BD03099588E2809367022DB73EB7C4 |
:104E50002A5F3F4F2DBF8091B80299279F938F9370 |
:104E600085EE97E09F938F93FF92EF92E091BC03C2 |
:104E7000F091BD0309958CE3809367028DB79EB7CF |
:104E800006968DBF8091B90299279F938F9381EFEA |
:104E900097E09F938F93FF92EF92D9CA1092670287 |
:104EA0008DEF97E09F938F9302EE1FE1FF92EF92B9 |
:104EB000FE01099584E1809367020F900F900F9097 |
:104EC0000F908091C10199279F938F9385E098E07F |
:104ED0009F938F93FF92EF92E091BC03F091BD03FB |
:104EE000099588E2809367028DB79EB706968DBFBD |
:104EF00080911E0290911F0297FD039695958795CC |
:104F0000959587959F938F9383E198E09F938F93D7 |
:104F10001F930F93E091BC03F091BD0309958CE3BF |
:104F2000809367022DB73EB72A5F3F4F2DBF809118 |
:104F3000DC0599279F938F938091DB0599279F9399 |
:104F40008F9381E298E09F938F931F930F93E0914B |
:104F5000BC03F091BD0309958DB79EB70896F7C0C5 |
:104F6000109267028FE298E09F938F93FF92EF92E7 |
:104F7000FE01099584E1809367020F900F900F90D6 |
:104F80000F908091F603992787FD90959F938F93BB |
:104F90008091F503992787FD90959F938F938FE3D9 |
:104FA00098E09F938F93FF92EF92E091BC03F09172 |
:104FB000BD03099588E2809367022DB73EB7285F4D |
:104FC0003F4F2DBF8091F703992787FD90959F93C1 |
:104FD0008F938091F80399279F938F938FE498E0A4 |
:104FE0009F938F93FF92EF92E091BC03F091BD03EA |
:104FF00009958CE3809367028DB79EB708968DBFA5 |
:105000008091FC0399279F938F938091F9039927AF |
:1050100087FD90959F938F938FE598E02DCB10920D |
:1050200067028FE698E09F938F93FF92EF92FE01C5 |
:10503000099584E1809367020F900F900F900F9075 |
:105040008091910699278F7790709F938F9380918D |
:10505000890699278F7790709F938F93809181060F |
:1050600099278F7790709F938F93809179069927D6 |
:105070008F7790709F938F938FE798E09F938F9394 |
:10508000FF92EF92E091BC03F091BD03099588E295 |
:10509000809367028DB79EB70C968DBF8091B10645 |
:1050A00099278F7790709F938F938091A906992766 |
:1050B0008F7790709F938F938091A10699278F7718 |
:1050C00090709F938F938091990699278F77907016 |
:1050D0009F938F9380E998E09F938F93FF92EF9235 |
:1050E000E091BC03F091BD0309958CE380936702C6 |
:1050F0002DB73EB7245F3F4F2DBF8091D106992732 |
:105100008F7790709F938F938091C90699278F779F |
:1051100090709F938F938091C10699278F7790709D |
:105120009F938F938091B90699278F7790709F9363 |
:105130008F9381EA98E09F938F93FF92EF92E09193 |
:10514000BC03F091BD0309958DB79EB70C968DBF3A |
:10515000FEC11092670282EB98E09F938F93FF92BB |
:10516000EF92FE01099584E1809367020F900F9002 |
:105170000F900F9080919506992787FD90959F93AA |
:105180008F9380918D06992787FD90959F938F939C |
:1051900080918506992787FD90959F938F938091A5 |
:1051A0007D06992787FD90959F938F9381EC98E0DA |
:1051B0009F938F93FF92EF92E091BC03F091BD0318 |
:1051C000099588E2809367022DB73EB7245F3F4F71 |
:1051D0002DBF8091B506992787FD90959F938F935A |
:1051E0008091AD06992787FD90959F938F9380912D |
:1051F000A506992787FD90959F938F9380919D0693 |
:10520000992787FD90959F938F9382ED98E09F93C8 |
:105210008F93FF92EF92E091BC03F091BD0309954B |
:105220008CE3809367028DB79EB70C968DBF8091FB |
:10523000D506992787FD90959F938F938091CD06F2 |
:10524000992787FD90959F938F938091C506992705 |
:1052500087FD90959F938F938091BD06992787FD39 |
:1052600090959F938F9383EE98E09F938F93FF92F7 |
:10527000EF92E091BC03F091BD0309952DB73EB7C5 |
:10528000245F3F4F2DBF63C11092670284EF98E007 |
:105290009F938F9302EE1FE1FF92EF92FE0109951B |
:1052A00084E1809367020F900F900F900F90809190 |
:1052B0009106881F8827881F97E0899FC0011124C5 |
:1052C0008D969F938F9380918906881F8827881FCA |
:1052D00096E0899FC00111248D969F938F938091B2 |
:1052E0008106881F8827881F95E0899FC0011124A7 |
:1052F0008D969F938F9380917906881F8827881FAA |
:105300009927880F991F880F991F8D969F938F93C8 |
:1053100083E099E09F938F93FF92EF92E091BC031B |
:10532000F091BD03099588E2809367028DB79EB71F |
:105330000C968DBF8091B106881F8827881F9BE03F |
:10534000899FC00111248D969F938F938091A90608 |
:10535000881F8827881F9AE0899FC00111248D9695 |
:105360009F938F938091A106881F8827881F99E0BB |
:10537000899FC00111248D969F938F9380919906E8 |
:10538000881F8827881F992723E0880F991F2A954F |
:10539000E1F78D969F938F9387E199E09F938F9389 |
:1053A000FF92EF92E091BC03F091BD0309958CE36D |
:1053B000809367022DB73EB7245F3F4F2DBF80918A |
:1053C000B906881F8827881F9CE0899FC001112487 |
:1053D0008D969F938F938BE299E09F938F93FF928B |
:1053E000EF92E091BC03F091BD0309958091C10655 |
:1053F0002DB73EB72A5F3F4F2DBF87FF12C080E415 |
:10540000809367028CE399E09F938F93FF92EF92D2 |
:10541000E091BC03F091BD0309950F900F900F90A0 |
:105420000F908091C90687FF12C084E480936702C1 |
:105430008FE399E09F938F931F930F93E091BC03A9 |
:10544000F091BD0309950F900F900F900F908091F0 |
:10545000D10687FF7CC088E48093670282E499E0EC |
:105460009F938F931F930F93E091BC03F091BD0323 |
:1054700009950F900F900F900F9069C010926702DE |
:1054800085E499E09F938F93FF92EF92FE01099537 |
:1054900084E1809367020F900F900F900F9080919E |
:1054A000F5019091F6019F938F9383E599E09F9387 |
:1054B0008F93FF92EF92E091BC03F091BD030995A9 |
:1054C00088E2809367028DB79EB706968DBF809164 |
:1054D000F7019091F8019F938F9380E699E09F9355 |
:1054E0008F93FF92EF92E091BC03F091BD03099579 |
:1054F00089E4809367022DB73EB72A5F3F4F2DBFE7 |
:105500008DE699E09F938F93FF92EF92E091BC0319 |
:10551000F091BD030995809165020F900F900F9057 |
:105520000F9083FF14C01092F8011092F70160E011 |
:1055300070E08EE090E00E94B32C09C080912001C1 |
:10554000281719F42150209320011092660210921E |
:105550006502E6E0CDB7DEB70C947377F999FECF1C |
:1055600092BD81BDF89A80B599270895F999FECF2B |
:105570001FBA92BD81BD60BD0FB6F894FA9AF99A30 |
:105580000FBE08954AEA20E030E02617370740F4BE |
:10559000FC018191480F2F5F3F4F26173707C8F353 |
:1055A000842F99270895EAEA40E050E0461757070C |
:1055B00078F49C01F999FECF32BD21BDF89A80B5EF |
:1055C000E80F4F5F5F4F2F5F3F4F4617570790F32E |
:1055D0008E2F9927089581E08093AF0582E0809314 |
:1055E000AE0583E08093AD0584E08093B00585E04F |
:1055F0008093B10586E08093B20587E08093B30580 |
:1056000088E08093B40589E08093B5058AE08093B3 |
:10561000B6058BE08093B7058CE08093B8050895BC |
:1056200095E59093AC0580910201843170F08AE099 |
:105630008093CC051092F0058BE18093C8058EE431 |
:105640008093ED058093EE050DC083E08093CC053B |
:1056500080E28093F0058EE18093C8059093ED057C |
:105660009093EE058AE68093B90583E08093120655 |
:1056700081E08093D30510920F0610920C0668E02B |
:105680006093C60586EE8093C70580E88093C905C0 |
:105690005EE15093BA058FEF8093BC059FE0909335 |
:1056A000BD055093BB051092BF056093C00580E413 |
:1056B0008093C1051092C2059093BE051092D50546 |
:1056C0001092D6051092D7051092D8051092F205C7 |
:1056D0001092F3051092F4051092F50538E7309317 |
:1056E000D90548E24093DA0572E070931106909371 |
:1056F000DB0527EF2093DC0585E08093E1058DE74E |
:105700008093E4058093E5058093E6053093DD05FD |
:105710009AE59093DE051092DF052093E005409313 |
:10572000E2051092E3058FE58093F60583EF809301 |
:10573000F8058AEA8093FA058093FB0584E180935B |
:10574000F7058093F90582E38093E7059093E805D8 |
:105750008093E905109210068EEF8093FC0524E6F5 |
:105760002093FD059093FE059093FF05909300060E |
:105770008BE48093010680930206809303061092C7 |
:10578000040686E08093050660930606909307065C |
:10579000509308062093090620930A0670930B067F |
:1057A00010920D0610920E0681E28093D0058DE2D4 |
:1057B0008093D1059093D2050895CF93DF930E94F3 |
:1057C000102B8EE08093C30520E12093C4053CE0BC |
:1057D0003093C50590E59093CA0586E98093CB0583 |
:1057E0009093CD058093CE0586E08093CF0580E22F |
:1057F0008093D4058AE58093EA059093EB0581E0D8 |
:105800008093EC052093EF0584E68093F105A3E1F6 |
:10581000B6E0E1E7F1E0ED01019009923A95E1F798 |
:1058200063E770E0CD01875690400E94C22A8093C2 |
:105830001F06DF91CF910895CF93DF930E94102B25 |
:105840008AE08093C30580E18093C40526E020931D |
:10585000C5059AE59093CA0588E78093CB05909398 |
:10586000CD058093CE052093CF0520E22093D4056B |
:105870009093EA0580E58093EB058CE38093EC053B |
:105880002093EF058BE48093F105A3E1B6E08CE073 |
:10589000E8E7F1E0ED01019009928A95E1F763E70D |
:1058A00070E0CD01875690400E94C22A80931F0667 |
:1058B000DF91CF910895CF93DF930E94102B88E062 |
:1058C0008093C30530E13093C40526E02093C505DD |
:1058D00094E69093CA0588E78093CB059093CD0515 |
:1058E0008093CE052093CF053093D4058AE580932D |
:1058F000EA0580E58093EB0596E49093EC0580E261 |
:105900008093EF059093F105A3E1B6E08CE0E0E829 |
:10591000F1E0ED01019009928A95E1F763E770E00B |
:10592000CD01875690400E94C22A80931F06DF91C6 |
:10593000CF910895F999FECF92BD81BDF89A80B5B7 |
:1059400099270895F999FECF1FBA92BD81BD60BD18 |
:105950000FB6F894FA9AF99A0FBE08956EEA7AE2B1 |
:105960000E944A75089546EB5AE20E948475089594 |
:10597000EF92FF920F931F93CF93C82F81508530E2 |
:1059800008F0C3E084E7C89F8001112480EFE82E6F |
:105990008FEFF82EE00EF11E63E770E0C7010E9462 |
:1059A000D32A682F98012D593F4F8FB39927AC0107 |
:1059B0004270507081FDF9CF32BD21BDF89A80B59B |
:1059C000861711F0CA0121C08FB399279C0122705C |
:1059D000307081FDF9CFF2BCE1BCF89A80B5853515 |
:1059E00011F0C90112C084E7C89FC001112440977B |
:1059F0002EEA3AE244E750E0BC018CEA95E00E94CE |
:105A000025750E94036681E090E0CF911F910F9170 |
:105A1000FF90EF900895282F863010F025E003C006 |
:105A2000882309F421E0F999FECF1FBA82E090E0C3 |
:105A300092BD81BD20BD0FB6F894FA9AF99A0FBEB7 |
:105A40000895CF93C82F8091AC05853509F042C0E9 |
:105A5000C63010F0C5E003C0CC2309F43BC063E7B7 |
:105A600070E08CEA95E00E94C22A80931F0684E7CA |
:105A7000C89FC001112426EB3AE244E750E06CEAEB |
:105A800075E040970E94627526EB3AE24CE050E0E8 |
:105A90006DEA75E080E590E00E9462756CE070E070 |
:105AA0008DEA95E00E94C22A282FF999FECF1FBAED |
:105AB0008CE590E092BD81BD20BD0FB6F894FA9AB6 |
:105AC000F99A0FBE8C2F0E940B2D0E94036681E075 |
:105AD00090E002C080E090E0CF9108956DE470E026 |
:105AE00088EE93E00E94D32A482F8FB399279C0118 |
:105AF0002270307081FDF9CF85E394E092BD81BDC5 |
:105B0000F89A80B5841779F48FB399279C01227095 |
:105B1000307081FDF9CF88EE93E092BD81BDF89A97 |
:105B200080B5813011F0C90108952EEA3AE24EE4C1 |
:105B300050E068EE73E080E296E00E94257581E017 |
:105B400090E00895809120068130A9F46DE470E022 |
:105B500080E296E00E94C22A80936D0626EB3AE22C |
:105B60004EE450E060E276E088EE93E00E946275D9 |
:105B700081E090E0089580E090E00895CF93DF9376 |
:105B800081E080932006E0E2F6E08FE0158616863D |
:105B90001786108A8150349687FFF8CF80E480936F |
:105BA0002D0680932E0610922F0680933006809348 |
:105BB000310690EC909332061092330680933406AF |
:105BC00080933506109236069093370690933806E8 |
:105BD0008093390610923A0680933B0690933C06D8 |
:105BE000A1E2B6E087E0EAE8F1E0ED010190099278 |
:105BF0008A95E1F76DE470E0CD0101970E94C22A19 |
:105C000080936D06DF91CF910895F999FECF82E0E0 |
:105C100090E092BD81BDF89A80B5282F863078F04B |
:105C200023E0322FF999FECF1FBA82E090E092BDB7 |
:105C300081BD30BD0FB6F894FA9AF99A0FBE822F43 |
:105C4000992708951F93CF93C82F162F863010F0F1 |
:105C5000C5E003C0882309F4C1E08C2F9927823066 |
:105C6000910541F08330910544F4019731F40E948D |
:105C7000DD2B05C00E941C2C02C00E945B2C11234E |
:105C8000E1F06CE070E080E590E00E94D32A282FDC |
:105C9000F999FECF8CE590E092BD81BDF89A80B570 |
:105CA000821759F42EEA3AE24CE050E060E570E0E9 |
:105CB0008DEA95E00E94257502C00E94EB2A8C2F88 |
:105CC0000E94212DCF911F910895DF92EF92FF92B4 |
:105CD0000F931F93CF93FF24DF2CEF2C81E090E0F4 |
:105CE0000E949A2C853539F031E0E32E65E581E09C |
:105CF00090E00E94A22C6CE070E080E590E00E94B1 |
:105D0000D32AC82FF999FECF8CE590E092BD81BDD2 |
:105D1000F89A80B58C1711F421E0D22EC1E001E091 |
:105D200010E0EE2029F48C2F0E94B82C8823C1F5B6 |
:105D300091E0F92E1F930F9385E799E09F938F933E |
:105D400086EF92E19F938F93E091BC03F091BD03A6 |
:105D500009958DB79EB706968DBF0230110549F0A3 |
:105D6000033011054CF40130110531F40E94DD2B94 |
:105D700005C00E941C2C02C00E945B2CDD2059F043 |
:105D80002EEA3AE24CE050E060E570E08DEA95E002 |
:105D90000E94257502C00E94EB2A8C2F0E94212DA3 |
:105DA000CF5F0F5F1F4FC63008F4BBCFFF2019F045 |
:105DB00083E00E940B2D0E94052EC82F0E94B82C54 |
:105DC0008C2F99279F938F938BE999E09F938F93C3 |
:105DD00006EF12E11F930F93E091BC03F091BD0316 |
:105DE00009958DB79EB706968DBFEE2021F40E94CF |
:105DF0006E2D882399F484EB99E09F938F931F93E2 |
:105E00000F93E091BC03F091BD0309950E94BE2D54 |
:105E10000E94A22D0F900F900F900F901092AB0543 |
:105E200090E0EDE2F6E0CFE08081349618160CF4B5 |
:105E30009F5FC150C7FFF8CF9093AB05892F99277B |
:105E40009F938F9381E296E09F938F9385ED99E0E6 |
:105E50009F938F931F930F93E091BC03F091BD0329 |
:105E600009958DB79EB708968DBF86EF99E09F93F1 |
:105E70008F931F930F93E091BC03F091BD0309959D |
:105E80000F900F900F900F90CF911F910F91FF9057 |
:105E9000EF90DF900895982F2FB7F8943998389A9B |
:105EA00088B1836088B98091B9008C7F8093B900F4 |
:105EB0008AE28093B80010927202109270021092DF |
:105EC0006F02992379F0E6E7F6E08BE01082118209 |
:105ED000128213821482158216821782815038969C |
:105EE00087FFF4CF78942FBF08951092720284E94F |
:105EF0008093BC0080E88093BC001092BD0010929B |
:105F0000BA001092BB001092B9001092B800109223 |
:105F10006E0280E00E944B2F1092BB0085E88093B8 |
:105F2000BC0080916C02826080936C0208951F9285 |
:105F30000F920FB60F9211242F933F934F935F93BD |
:105F40008F939F93EF93FF9380917202282F3327B3 |
:105F5000442755278F5F80937202F901273131055D |
:105F600008F0C2C2EE59FF4F0C94827781E0809313 |
:105F70006E0209C0809170028C3090F480917002A2 |
:105F80008F5F8093700280917002E82FFF27EE0FE1 |
:105F9000FF1FEE0FFF1FE05EF94F8585181654F7BF |
:105FA000809170028C3070F010926B0210926A0235 |
:105FB0001092700285E08093720280916F02880FC8 |
:105FC0008D5A04C080917002880F8E5A8093BB0056 |
:105FD00085E87FC280917002E82FFF2783E0EE0FF3 |
:105FE000FF1F8A95E1F7EA58F94F81818093BB0042 |
:105FF00085E88093BC0080917002E82FFF27EE0FA8 |
:10600000FF1FEE0FFF1FEE0FFF1FEA58F94F8081B1 |
:1060100080FF91C080917002E82FFF27EE0FFF1FD5 |
:10602000EE0FFF1FEE0FFF1FEA58F94F8281882302 |
:1060300029F08091AB05873008F46CC280916A0228 |
:1060400090916B02892B09F065C280916802909152 |
:106050006902892B09F05EC26EC08091700221E056 |
:1060600030E002C0220F331F8A95E2F78091680268 |
:106070009091690228233923232B79F080917002B3 |
:10608000E82FFF27EE0FFF1FEE0FFF1FEE0FFF1F82 |
:10609000EA58F94F80E184830DC080917002E82FA7 |
:1060A000FF27EE0FFF1FEE0FFF1FEE0FFF1FEA5837 |
:1060B000F94F148280917002E82FFF2753E0EE0F12 |
:1060C000FF1F5A95E1F7EA58F94F8481282F3327AB |
:1060D00043E0220F331F4A95E1F780917002E82FC9 |
:1060E000FF2793E0EE0FFF1F9A95E1F7EA58F94F6B |
:1060F00082818770822B8093BB0085E88093BC00EF |
:106100002091700281E090E002C0880F991F2A95CB |
:10611000E2F720916A0230916B0282239323892B4C |
:1061200051F08EE696E0909376028093750288E0B7 |
:1061300080937702EFC184E089C1E0917502F0910C |
:10614000760281918093BB0085E88093BC00F09338 |
:106150007602E093750280917702815080937702F6 |
:10616000882309F4D7C183E071C18091B9008033DD |
:1061700051F580917302882329F4809170028F5F1A |
:106180008093730280917002E82FFF2783E0EE0F67 |
:10619000FF1F8A95E1F7EA58F94F838199278F7796 |
:1061A00090708F3791057CF480917002E82FFF2763 |
:1061B000EE0FFF1FEE0FFF1FEE0FFF1FEA58F94F04 |
:1061C00083818F5F83831092720284E98093BC0085 |
:1061D0008AE090E090939301809392018091700205 |
:1061E0008F5F80937002109272026DC18091B9002E |
:1061F0008034C9F180916F02E82FFF27EE0FFF1F57 |
:10620000EE0FFF1FEE0FFF1FEA58F94F83818F77C4 |
:10621000838380916F028F5F80936F0280916F0202 |
:106220008C30A0F010926F021092690210926802F6 |
:10623000809174028F5F809374028C3038F01092DA |
:10624000740280916C028D7F80936C0280916C024D |
:10625000816080936C021092720284E98093BC008A |
:1062600010926E0273C080916F02E82FFF27EE0F2D |
:10627000FF1FEE0FFF1FEE0FFF1FEA58F94F83813C |
:106280008068838380916F02E82FFF27EE0FFF1F46 |
:10629000EE0FFF1FEE0FFF1FEA58F94F808180FFBE |
:1062A0002FC080916F02E82FFF2753E0EE0FFF1FF2 |
:1062B0005A95E1F7EA58F94F84819927009751F0F0 |
:1062C0004097D9F58EE696E090937602809375021A |
:1062D00088E031C080916F02992743E0880F991FB1 |
:1062E0004A95E1F78558994F90937602809375020D |
:1062F00090916F02809174029817E1F483E01BC0C3 |
:1063000080916F02992733E0880F991F3A95E1F742 |
:106310008558994F909376028093750280916C0214 |
:1063200081FD06C090916F0280917402981711F45C |
:1063300082E001C081E08093770280917702813012 |
:1063400011F485E801C085EC8093BC008091730254 |
:1063500080936D0210927302DDC0E0917502F0919E |
:1063600076028091BB0080838091750290917602C5 |
:106370000196909376028093750280917702815006 |
:1063800080937702823010F085EC5DC0813011F48B |
:1063900085E859C080916C0281FF2DC080917D02FB |
:1063A00080FD1DC080916F02E82FFF2723E0EE0FD4 |
:1063B000FF1F2A95E1F7EA58F94F86818A3F79F461 |
:1063C00080916F02E82FFF2793E0EE0FFF1F9A9551 |
:1063D000E1F7EA58F94F8081816080830CC0809199 |
:1063E0006F02E82FFF2783E0EE0FFF1F8A95E1F78A |
:1063F000EA58F94F108280916F028F5F80936F028D |
:1064000080916F028C30A0F010926F02109269029E |
:1064100010926802809174028F5F809374028C30B6 |
:1064200038F01092740280916C028D7F80936C0220 |
:106430001092720284E98093BC0080916C028160AA |
:1064400080936C0265C08093BC0086E080937202EA |
:1064500061C088E9BBCD80917102880F805FB6CDA5 |
:106460008091710299278130910561F08230910508 |
:106470001CF4892B21F04EC0029739F04BC080915B |
:106480001301A4CD80911201A1CD809111019ECD67 |
:1064900080E89CCD1092720284E98093BC00109237 |
:1064A0006E028AE090E09093930180939201809134 |
:1064B0007102823088F4809171028F5F8093710243 |
:1064C00082E18093720280916C028E7F80936C02D5 |
:1064D00085EA8093BC001EC01092710280916C020C |
:1064E000816080936C0216C01092720284E98093DE |
:1064F000BC0080916C02816080936C028AE090E025 |
:1065000090939301809392011092700210926F0207 |
:1065100010926E02FF91EF919F918F915F914F9139 |
:106520003F912F910F900FBE0F901F9018951F93C2 |
:10653000CF93DF93182F8091A802882321F48091B4 |
:106540000302882319F081E090E097C01D3008F025 |
:1065500092C01123B1F0E12FFF2723E0EE0FFF1FC0 |
:106560002A95E1F7EA58F94F3597808135968823C7 |
:106570000CF081C03897808180FD03C083E090E0FB |
:106580007CC080916E06823019F084E090E075C086 |
:1065900067E070E08EE696E00E94C22A9091750650 |
:1065A000891719F085E090E068C080ED97E00E94BF |
:1065B0001C17EC0180916C0280FD05C0CE010E9489 |
:1065C00025178823B9F3112319F48FEF90E00BC03E |
:1065D000212F33272150304081E090E002C0880F06 |
:1065E000991F2A95E2F790936B0280936A02A1E0CB |
:1065F000B0E0E6E7F6E040E050E06BE0CD01042ECD |
:1066000002C0880F991F0A94E2F720916A02309124 |
:106610006B0282239323892B11F011821282615025 |
:106620004F5F5F4F389667FFE9CF1092700210926C |
:10663000720280916C028E7F80936C0285EA809357 |
:10664000BC0080916C0280FD05C0CE010E94251720 |
:106650008823B9F380916A0290916B02892B29F00B |
:10666000CE010E942517882311F380916A02909130 |
:106670006B02009711F082E090E0DF91CF911F91C3 |
:1066800008950F931F93CF93DF93982F8091A802C3 |
:10669000882321F480910302882319F081E090E09F |
:1066A00092C09D30A0F4992319F486E090E08BC04D |
:1066B000C92FDD27FE0133E0EE0FFF1F3A95E1F70A |
:1066C000EA58F94F35978081359687FD03C082E0FF |
:1066D00090E079C03897808180FD03C083E090E02E |
:1066E00072C080ED97E00E941C178C0180916C02B3 |
:1066F00080FD05C0C8010E9425178823B9F32197A2 |
:1067000021E030E0C90102C0880F991FCA95E2F765 |
:106710009093690280936802D901E6E7F6E040E0D1 |
:1067200050E06BE0CD01042E02C0880F991F0A943F |
:10673000E2F7209168023091690282239323892B2A |
:1067400011F01182128261504F5F5F4F389667FFE0 |
:10675000E9CF10926F0210926E0610927506109299 |
:10676000720280916C028E7F80936C0285EA809326 |
:10677000BC0080916C0280FD05C0C8010E942517F5 |
:106780008823B9F38091680290916902892B29F0DE |
:10679000C8010E942517882311F380916E0682306C |
:1067A00019F084E090E00FC067E070E08EE696E0BC |
:1067B0000E94C22A90917506891719F085E090E031 |
:1067C00002C080E090E0DF91CF911F910F9108957A |
:1067D00089E1ABE0B7E0E7EDF6E011821082329696 |
:1067E00011961C921E921296815087FFF6CF10923E |
:1067F00017031092160310921903109218031092A7 |
:106800001B0310921A0308951F920F920FB60F9256 |
:1068100011240F931F932F933F934F935F936F9385 |
:106820007F938F939F93AF93BF93CF93DF93EF9318 |
:10683000FF9340918600509187008091790290915A |
:106840007A02481B590BCA0157FD0196AC015595B8 |
:106850004795809186009091870090937A0280936B |
:106860007902CA0189599840A0917B02B0917C02BB |
:10687000875E954338F4149714F01092940181E0E8 |
:1068800090E081C0AD30B1050CF081C0CA018B5FD2 |
:1068900090408356944008F071C0425C5340FD0123 |
:1068A000EA0FFB1FE952F94F80819181FA01E81B41 |
:1068B000F90BCF01F7FF03C0909581959F4F069785 |
:1068C0004CF48091B102883C28F48091B102865F3B |
:1068D0008093B102FD01EA0FFB1FE952F94F80815D |
:1068E00091819C01220F331F280F391F240F351F60 |
:1068F00037FF02C02D5F3F4FE901D595C795D5956C |
:10690000C795CA0101968C179D0714F4219706C0FC |
:1069100041505040C417D5070CF421968091B10224 |
:10692000833CD8F08D010A0F1B1FF801E952F94F83 |
:10693000808191819E01281B390BC90163E070E0C1 |
:106940000E94FB76CB01880F991F860F971F055F6A |
:10695000184FF8019183808307C0AA0FBB1FA55F62 |
:10696000B84F11961C921E92E0917B02F0917C022E |
:10697000EE0FFF1FE952F94FD183C08380917B0254 |
:1069800090917C02019690937C0280937B02FF9110 |
:10699000EF91DF91CF91BF91AF919F918F917F91B7 |
:1069A0006F915F914F913F912F911F910F910F9098 |
:1069B0000FBE0F901F901895EF92FF920F931F93A9 |
:1069C0008091C8059927880F991F880F991F7C010E |
:1069D0000027F7FC0095102F809105039091060386 |
:1069E000A0910703B0910803BC01CD01A801970154 |
:1069F0000E94307730935805209357058091FD020F |
:106A00009091FE02A091FF02B0910003BC01CD0164 |
:106A1000A80197010E94307730935A0520935905B9 |
:106A2000809191079091920797FD03969595879590 |
:106A30009595879590935C0580935B058091A10760 |
:106A40009091A20797FD03969595879595958795C3 |
:106A500090935E0580935D058091160390911703D6 |
:106A60002091430230914402821B930B9093600566 |
:106A700080935F058091A3029091A402A091A5024A |
:106A8000B091A602BC01CD0125E030E040E050E02D |
:106A90000E943077309362052093610580913D021A |
:106AA00090913E0290936405809363058091C302A8 |
:106AB0009091C402909368058093670580911E01B0 |
:106AC00090911F0190936A05809369058091B102AE |
:106AD000992790936C0580936B0580919D07909109 |
:106AE0009E07A0919F07B091A00720919601309139 |
:106AF00097014091980150919901BC01CD010E94EC |
:106B0000307730936E0520936D0580917706992735 |
:106B10009093700580936F0580917F0699279093DD |
:106B2000720580937105809187069927909374056B |
:106B30008093730580918F069927909376058093B3 |
:106B4000750580911E0290911F029093800580939D |
:106B50007F05809114089091150890938405809387 |
:106B60008305809118089091190890938605809369 |
:106B7000850580911A089927909392058093910535 |
:106B800080918D0390918E0390939405809393054B |
:106B900080918B0390918C0390939605809395053B |
:106BA0008091D503882321F48091D603882321F096 |
:106BB00080915605816003C0809156058E7F809339 |
:106BC00056051F910F91FF90EF9008951F93CF935B |
:106BD000DF93182FEB018091A8028823A1F41150B4 |
:106BE0001F3F89F0D0932502C09324028091240294 |
:106BF00090912502892BD1F7CE018C0F9D1F0E9409 |
:106C00003117115078F7DF91CF911F910895CF93ED |
:106C1000DF93809102018D3011F40E94161B1092B7 |
:106C20007A00809147029091480290935807809390 |
:106C300057078091450290914602909349078093AF |
:106C40004807809143029091440290939707809364 |
:106C5000960720913F0230914002C901880F991F89 |
:106C6000880F991F820F931F820F931F9093920793 |
:106C7000809391072091410230914202C901880F0F |
:106C8000991F880F991F820F931F820F931F909354 |
:106C9000A2078093A1078FEC80937A00A2EBB2E069 |
:106CA000C1EBD5E097E08991E82FFF27EE0FFF1F9A |
:106CB000E952F94F0190F081E02DE259FF4F1E1685 |
:106CC0001F061CF0E0E0F0E005C0EF3FF10514F016 |
:106CD000EFEFF0E08C91282F3327E217F30714F43D |
:106CE000815004C02E173F0714F48F5F8C9391508E |
:106CF000119697FFD8CF8091ED059927AA27BB273A |
:106D0000BC01CD0124EC39E040E050E00E94BC76AB |
:106D1000DC01CB018093D5019093D601A093D701DC |
:106D2000B093D8018091EE059927AA27BB27BC0113 |
:106D3000CD010E94BC76DC01CB018093D101909300 |
:106D4000D201A093D301B093D401DF91CF910895E4 |
:106D5000A0E0B0E0EEEAF6E30C945177882EC0E0B4 |
:106D6000D0E07E016E011092D503469AD0931103B4 |
:106D7000C0931003D0930F03C0930E03D0930B0363 |
:106D8000C0930A03D0931B03C0931A03D093190333 |
:106D9000C0931803D0931703C09316031092BE013B |
:106DA0001092BD01109237020E94073684E690E0EF |
:106DB0000E943E170E9407368091B90580FF10C0DF |
:106DC0008091140190911501875B934038F4809174 |
:106DD0001401909115018E5E924010F40E94BB1A2E |
:106DE0000FE18AE090E00E943E178091430290916B |
:106DF0004402C80FD91F8091470290914802E80EC3 |
:106E0000F91E8091450290914602C80ED91E01508C |
:106E100007FFE7CF9701205F3F4F369527953695BF |
:106E2000279530931B0320931A03C601409696952D |
:106E3000879596958795909319038093180360968C |
:106E4000F5E0D695C795FA95E1F7D0931703C0936F |
:106E50001603909315038093140330931303209328 |
:106E60001203882009F441C0809191079091920704 |
:106E700097FF03C0909581959F4F6CE070E00E9452 |
:106E8000FB769B0170931103609310038091A1071F |
:106E90009091A20797FF03C0909581959F4F6CE05A |
:106EA00070E00E94FB7670930F0360930E03809155 |
:106EB0009E0590919F0590930B0380930A03B9015F |
:106EC00084E090E00E94B32C60910E0370910F0358 |
:106ED00086E090E00E94B32C60910A0370910B034E |
:106EE00088E090E00E94B32C65C084E090E00E94AE |
:106EF000AE2C909311038093100386E090E00E94E3 |
:106F0000AE2C90930F0380930E0388E090E00E94D4 |
:106F1000AE2C9C0190930B0380930A038091100385 |
:106F2000909111038150984050F480910E039091FC |
:106F30000F038150984018F421503440D8F187E174 |
:106F40009AE09F938F9386EF92E19F938F93E091C6 |
:106F5000BC03F091BD030995809191079091920730 |
:106F600097FF03C0909581959F4F6CE070E00E9461 |
:106F7000FB7670931103609310038091A1079091A9 |
:106F8000A20797FF03C0909581959F4F6CE070E03A |
:106F90000E94FB7670930F0360930E0380919E0511 |
:106FA00090919F0590930B0380930A030F900F908D |
:106FB0000F900F90109258071092570710924907A0 |
:106FC00010924807109297071092960784E690E077 |
:106FD0000E943E1780913F02909140029C01220F37 |
:106FE000331F220F331F280F391F280F391F3093EB |
:106FF00092072093910780914102909142028C0167 |
:10700000000F111F000F111F080F191F080F191F64 |
:107010001093A2070093A1078091C805C82EDD2414 |
:10702000EE24FF24442737FD4095542FC701B601B5 |
:107030000E94BC764B015C016093050370930603CC |
:1070400080930703909308039801442737FD4095E8 |
:10705000542FC701B6010E94BC76DC01CB0180939E |
:10706000FD029093FE02A093FF02B0930003809272 |
:10707000E1029092E202A092E302B092E4028093D5 |
:10708000D9029093DA02A093DB02B093DC02109253 |
:10709000D5021092D6021092D7021092D802809197 |
:1070A000160190911701A0911801B09119019093C8 |
:1070B000A1058093A005109236021092350210921D |
:1070C000C5021092C6021092C7021092C8028091A7 |
:1070D000C3029091C4029093C2028093C1020E94A5 |
:1070E0008C6182E390E0909325028093240280914A |
:1070F000ED059927AA27BB27BC01CD0124EC39E077 |
:1071000040E050E00E94BC76DC01CB018856954CF3 |
:10711000AF4FBF4F8093D5019093D601A093D70175 |
:10712000B093D8018091EE059927AA27BB27BC010F |
:10713000CD010E94BC76DC01CB018856954CAF4F47 |
:10714000BF4F8093D1019093D201A093D301B0930C |
:10715000D40110929B0110929A018091C3029091E8 |
:10716000C402AA2797FDA095BA2F209196013091CD |
:1071700097014091980150919901BC01CD010E9465 |
:10718000BC76DC01CB0180939D0790939E07A09372 |
:107190009F07B093A0071092BC021092BB0281E03F |
:1071A000809301010E94036680917D028460809338 |
:1071B0007D028FEF80930F081092100880E2809379 |
:1071C0001108C2EBD2E0A1EBB5E007E08D91E82F0A |
:1071D000FF27EE0FFF1FE952F94F808191818259FD |
:1071E0008993015007FFF2CF84E68093B10280912A |
:1071F0002202882311F0469A579A80911A0390919F |
:107200001B0380569940815C9B4228F08091D503F6 |
:1072100081608093D5038091180390911903805663 |
:107220009940815C9B4228F08091D50382608093D5 |
:10723000D50380911603909117038C529140895782 |
:10724000954028F08091D50384608093D503809188 |
:107250001003909111038C529140835C914028F06F |
:107260008091D50388608093D50380910E0390911F |
:107270000F038C529140835C914028F08091D5039C |
:1072800080618093D50380910A0390910B03805015 |
:1072900092408355914028F08091D503806280937D |
:1072A000D503ECE0CDB7DEB70C946D77A3E1B0E089 |
:1072B000ECE5F9E30C944B7780911603909117035A |
:1072C0002091430230914402821B930B90939707C5 |
:1072D0008093960780914D0290914E0297FD0796FC |
:1072E0009C0113E0359527951A95E1F730935807DF |
:1072F0002093570780914B0290914C0297FD07967F |
:10730000B3E095958795BA95E1F7909349078093F7 |
:107310004807309363072093620790935B0780933D |
:107320005A078091910790919207AC01440F551F25 |
:10733000480F591F20913F0230914002C901880F28 |
:10734000991F880F991F820F931F820F931F480F59 |
:10735000591F57FF02C04D5F5F4F55954795559593 |
:10736000479550939207409391078091A107909180 |
:10737000A207AC01440F551F480F591F209141022D |
:1073800030914202C901880F991F880F991F820FFF |
:10739000931F820F931F480F591F57FF02C04D5F65 |
:1073A0005F4F55954795559547955093A207409344 |
:1073B000A10720913F0230914002C901880F991F17 |
:1073C000880F991F820F931F820F931F9C014427E0 |
:1073D00037FD4095542F8091F5029091F602A091CF |
:1073E000F702B091F802820F931FA41FB51F80937C |
:1073F000F5029093F602A093F702B093F802209161 |
:10740000410230914202C901880F991F880F991FCC |
:10741000820F931F820F931F9C01442737FD4095D5 |
:10742000542F8091F1029091F202A091F302B09159 |
:10743000F402820F931FA41FB51F8093F102909353 |
:10744000F202A093F302B093F40280916C07909142 |
:107450006D0720913F0230914002820F931F90935D |
:107460006D0780936C078091990790919A072091FE |
:10747000410230914202820F931F90939A078093AA |
:10748000990780910C0390910D03019690930D0341 |
:1074900080930C0380919E0590919F0520910A0393 |
:1074A00030910B03821B930B9C01442737FD4095C1 |
:1074B000542F8091ED029091EE02A091EF02B091D5 |
:1074C000F002820F931FA41FB51F8093ED029093CB |
:1074D000EE02A093EF02B093F0028FEC80937A005B |
:1074E000109210012091DD023091DE024091DF0206 |
:1074F0005091E00229873A874B875C8729543B46A5 |
:10750000414050402CF028E43BE641E050E00DC003 |
:1075100089859A85AB85BC85885B9449AE4FBF4F02 |
:107520004CF428EB34E94EEF5FEF2D833E834F831D |
:10753000588708C089859A85AB85BC858D839E83D5 |
:10754000AF83B8872091E5023091E6024091E702CF |
:107550005091E8022D873E874F87588B29543B4630 |
:10756000414050402CF028E43BE641E050E00DC0A3 |
:107570008D859E85AF85B889885B9449AE4FBF4F96 |
:107580004CF428EB34E94EEF5FEF29833A834B83C9 |
:107590005C8308C08D859E85AF85B88989839A8371 |
:1075A000AB83BC83A0919607B0919707BB8BAA8B46 |
:1075B000FD01CF01AA2797FDA095BA2FA090D50273 |
:1075C000B090D602C090D702D090D802A80EB91EB3 |
:1075D000CA1EDB1EA092D502B092D602C092D7027C |
:1075E000D092D802E0909D07F0909E0700919F07EF |
:1075F0001091A007E80EF91E0A1F1B1FE0929D07BD |
:10760000F0929E0700939F071093A007F0919802B5 |
:10761000F98BFF2309F098C180919702882309F024 |
:1076200093C18091B90586FF8FC1809148079091E1 |
:107630004907AA2797FDA095BA2FBC01CD01298142 |
:107640003A814B815C810E94BC769B01AC0197FF23 |
:1076500004C02150384F4F4F5F4FBBE055954795C1 |
:1076600037952795BA95D1F78091BD01682E77247B |
:1076700088249924CA01B901A40193010E94BC760F |
:10768000DC01CB018093260390932703A09328036A |
:10769000B0932903B7FF04C08150904FAF4FBF4F45 |
:1076A0001C012D01ACE05594479437942794AA957A |
:1076B000D1F720922603309227034092280350925C |
:1076C00029038091570790915807AA2797FDA09505 |
:1076D000BA2FBC01CD012D813E814F8158850E947A |
:1076E000BC7697FF04C06150784F8F4F9F4FFBE0EF |
:1076F0009595879577956795FA95D1F7A4019301AC |
:107700000E94BC76DC01CB0180932A0390932B036B |
:10771000A0932C03B0932D03B7FF04C08150904F6A |
:10772000AF4FBF4F9C01AD01ECE0559547953795A4 |
:107730002795EA95D1F720932A0330932B034093A2 |
:107740002C0350932D03809126039091270390934F |
:10775000400780933F0780912A0390912B039093D9 |
:10776000440780934307221933094409550920939C |
:107770002A0330932B0340932C0350932D03E20EE6 |
:10778000F31E041F151FE0929D07F0929E070093C1 |
:107790009F071093A0078091BC018823B1F457FF85 |
:1077A00004C02F5F3F4F4F4F5F4F5595479537951B |
:1077B0002795A21AB30AC40AD50AA092D502B0929C |
:1077C000D602C092D702D092D8022A893B89790189 |
:1077D0000027F7FC0095102F80912A0390912B032E |
:1077E000A0912C03B0912D03E80EF91E0A1F1B1F58 |
:1077F000C801B70129813A814B815C810E94BC7626 |
:107800009B01AC0197FF04C02150384F4F4F5F4F91 |
:107810006BE055954795379527956A95D1F78091F7 |
:10782000BE01A82EBB24CC24DD24CA01B901A601C7 |
:1078300095010E94BC76DC01CB0180931E039093DE |
:107840001F03A0932003B0932103B7FF04C081500E |
:10785000904FAF4FBF4F3C014D013CE09594879452 |
:10786000779467943A95D1F760921E0370921F0344 |
:107870008092200390922103C801B7012D813E819F |
:107880004F8158850E94BC7697FF04C06150784FA5 |
:107890008F4F9F4F2BE095958795779567952A9504 |
:1078A000D1F7A60195010E94BC76DC01CB01809343 |
:1078B000220390932303A0932403B0932503B7FFDF |
:1078C00004C08150904FAF4FBF4FAC01BD018CE061 |
:1078D00075956795579547958A95D1F740932203FB |
:1078E0005093230360932403709325032A893B89D3 |
:1078F00037FF03C0309521953F4F21343105E4F126 |
:10790000D401C30197FE07C0B095A09590958195CD |
:107910009F4FAF4FBF4F81389105A105B10584F44A |
:10792000DB01CA0177FF07C0B095A09590958195BE |
:107930009F4FAF4FBF4F81389105A105B105E4F0CE |
:1079400081E08093BD0218C0109244071092430753 |
:107950001092400710923F071092220310922303C7 |
:10796000109224031092250310921E0310921F03FD |
:1079700010922003109221038091220390912303FF |
:10798000A0912403B0912503BC01CD0124E630E091 |
:1079900040E050E00E943077E0901E03F0901F031B |
:1079A000E21AF30AF0925607E092550780911E03FF |
:1079B00090911F03A0912003B0912103BC01CD0140 |
:1079C00024E630E040E050E00E943077DA01C9015F |
:1079D00020912203309123038C01021B130B10937F |
:1079E0004B0700934A078091960190919701A091CF |
:1079F0009801B0919901BC01CD0128E631E040E049 |
:107A000050E00E94BC7620919D0730919E074091E6 |
:107A10009F075091A007261737074807590764F0BA |
:107A2000261B370B480B590B20939D0730939E075D |
:107A300040939F075093A00720919D0730919E0788 |
:107A400040919F075091A00757FF0CC0260F371F8A |
:107A5000481F591F20939D0730939E0740939F070F |
:107A60005093A00760914807709149076E0D7F1DE4 |
:107A70009B01442737FD4095542F8091D902909166 |
:107A8000DA02A091DB02B091DC02820F931FA41FE7 |
:107A9000B51F8093D9029093DA02A093DB02B093D2 |
:107AA000DC0280919D0290919E02681B790BCB01B4 |
:107AB000AA2797FDA095BA2F29853A854B855C8525 |
:107AC000820F931FA41FB51F8093DD029093DE02E7 |
:107AD000A093DF02B093E002C090D101D090D20118 |
:107AE000E090D301F090D401C816D906EA06FB064F |
:107AF000C4F488EA91E6A0E0B0E08C199D09AE09D3 |
:107B0000BF098093DD029093DE02A093DF02B09361 |
:107B1000E0028093D9029093DA02A093DB02B09343 |
:107B2000DC0222273327A9012C193D094E095F09E0 |
:107B30008091DD029091DE02A091DF02B091E0021F |
:107B400082179307A407B507B4F4D701C601885A72 |
:107B50009146A040B0408093DD029093DE02A09356 |
:107B6000DF02B093E0028093D9029093DA02A093EF |
:107B7000DB02B093DC026091570770915807600FE9 |
:107B8000711F9B01442737FD4095542F8091E102DE |
:107B90009091E202A091E302B091E402820F931F60 |
:107BA000A41FB51F8093E1029093E202A093E30229 |
:107BB000B093E40280919B0290919C02681B790B28 |
:107BC000CB01AA2797FDA095BA2F2D853E854F851D |
:107BD0005889820F931FA41FB51F8093E5029093CD |
:107BE000E602A093E702B093E802E090D501F0909E |
:107BF000D6010091D7011091D801E816F9060A07BD |
:107C00001B07C4F488EA91E6A0E0B0E08E199F0952 |
:107C1000A00BB10B8093E5029093E602A093E702DC |
:107C2000B093E8028093E1029093E202A093E30212 |
:107C3000B093E40222273327A9012E193F09400BF4 |
:107C4000510B8091E5029091E602A091E702B0917C |
:107C5000E80282179307A407B507B4F4D801C70157 |
:107C6000885A9146A040B0408093E5029093E60286 |
:107C7000A093E702B093E8028093E1029093E202BE |
:107C8000A093E302B093E4028091D5029091D602D2 |
:107C9000A091D702B091D8028093E9029093EA02B2 |
:107CA000A093EB02B093EC028091E5029091E60282 |
:107CB000A091E702B091E802809305039093060338 |
:107CC000A0930703B09308038091DD029091DE0238 |
:107CD000A091DF02B091E0028093FD029093FE023A |
:107CE000A093FF02B09300038091E1029091E20221 |
:107CF000A091E302B091E402809301039093020308 |
:107D0000A0930303B09304038091D9029091DA0207 |
:107D1000A091DB02B091DC028093F9029093FA0209 |
:107D2000A093FB02B093FC0280911C0190911D0175 |
:107D300097FD079603E0959587950A95E1F790934F |
:107D400058078093570780911A0190911B0197FD66 |
:107D5000079613E0959587951A95E1F79093490753 |
:107D60008093480780914702909148020F9734F41E |
:107D700088E19CEF909358078093570780914702C2 |
:107D800090914802079734F480E398EF9093580756 |
:107D900080935707209102012A30A9F4809147026D |
:107DA00090914802835F934034F088EE93E0909383 |
:107DB00058078093570780914702909148028A5F45 |
:107DC0009340DCF014C08091470290914802815D9D |
:107DD000974034F088EE93E09093580780935707CC |
:107DE0008091470290914802805E974034F080ED88 |
:107DF00097E09093580780935707809145029091A0 |
:107E000046020F9734F488E19CEF909349078093E2 |
:107E100048078091450290914602079734F480E329 |
:107E200098EF90934907809348072A30A9F48091EE |
:107E3000450290914602835F934034F088EE93E0D0 |
:107E4000909349078093480780914502909146029C |
:107E50008A5F9340DCF014C0809145029091460205 |
:107E6000815D974034F088EE93E0909349078093CA |
:107E700048078091450290914602805E974034F019 |
:107E800080ED97E090934907809348076091C8017F |
:107E9000662309F4AFC040911C0150911D018091EF |
:107EA0002E0390912F03481B590B50933503409399 |
:107EB000340320911C0130911D01280F391F37FF19 |
:107EC00002C02F5F3F4F3595279530932F032093A6 |
:107ED0002E03413851051CF080E890E005C0405861 |
:107EE0005F4F34F480E89FEF909335038093340321 |
:107EF00040911A0150911B01809130039091310300 |
:107F0000481B590B509333034093320320911A01BD |
:107F100030911B01280F391F37FF02C02F5F3F4FE1 |
:107F2000359527953093310320933003413851051F |
:107F30001CF080E890E005C040585F4F34F480E8C2 |
:107F40009FEF9093330380933203462F5527809100 |
:107F5000340390913503849FB001859F700D949FE9 |
:107F6000700D11249B0177FF02C0215F3F4FF4E0A9 |
:107F700035952795FA95E1F7809157079091580725 |
:107F8000820F931F90935807809357078091320375 |
:107F900090913303849FD001859FB00D949FB00DC5 |
:107FA0001124AD019D01B7FF02C0215F3F4FE4E006 |
:107FB00035952795EA95E1F7809148079091490713 |
:107FC000820F931F909349078093480780911C016B |
:107FD00090911D01860F971F90931D0180931C01A6 |
:107FE00080911A0190911B01840F951F90931B01A2 |
:107FF00080931A0100915A0710915B0780913F0707 |
:1080000090914007101611065CF59C0197FF04C083 |
:1080100022273327281B390BC901AA2797FDA095D2 |
:10802000BA2F2091BC01332744275527BC01CD012D |
:108030000E94BC769B01AC0197FF04C0215C3F4FBE |
:108040004F4F5F4F76E055954795379527957A9531 |
:10805000D1F78091550790915607820F931F27C043 |
:1080600097FF03C0909581959F4FAA2797FDA095F4 |
:10807000BA2F2091BC01332744275527BC01CD01DD |
:108080000E94BC769B01AC0197FF04C0215C3F4F6E |
:108090004F4F5F4F66E055954795379527956A9501 |
:1080A000D1F78091550790915607821B930B9093BF |
:1080B000560780935507E0906207F0906307809120 |
:1080C0004307909144071E141F045CF59C0197FF21 |
:1080D00004C022273327281B390BC901AA2797FD83 |
:1080E000A095BA2F2091BC01332744275527BC0106 |
:1080F000CD010E94BC769B01AC0197FF04C0215CBE |
:108100003F4F4F4F5F4F96E05595479537952795D1 |
:108110009A95D1F780914A0790914B07820F931F50 |
:1081200027C097FF03C0909581959F4FAA2797FD81 |
:10813000A095BA2F2091BC01332744275527BC01B5 |
:10814000CD010E94BC769B01AC0197FF04C0215C6D |
:108150003F4F4F4F5F4F86E0559547953795279591 |
:108160008A95D1F780914A0790914B07821B930B18 |
:1081700090934B0780934A078091B90587FF44C0CD |
:10818000B989BB2309F040C0809197028823E1F5AB |
:10819000E1E0EE16E1E0FE064CF080915707909189 |
:1081A00058078E0D9F1D805091400DC0F0E0EF16D6 |
:1081B000FFEFFF0664F480915707909158078E0DEA |
:1081C0009F1D80509F4F909358078093570721E041 |
:1081D000013012074CF08091480790914907800FB9 |
:1081E000911F805091400CC03FEF0030130764F4A2 |
:1081F0008091480790914907800F911F80509F4FB1 |
:108200009093490780934807E2E1CD5E0C9467772D |
:108210008091A802882301F580917D028C7F809354 |
:108220007D02AAEDB3E0E6E7F6E09BE08091030271 |
:10823000882309F48C938D91818312829150389612 |
:1082400097FFF4CF80910302882359F080910302B5 |
:1082500081508093030205C080917D0281608093EC |
:108260007D0280916E02882319F010926E020895AB |
:10827000809370028093720280916C028E7F809353 |
:108280006C0285EA8093BC000895CF93DF93A2EB44 |
:10829000B2E0C1EBD5E057E08991E82FFF27EE0F60 |
:1082A000FF1FE952F94F0190F081E02DE259FF4F95 |
:1082B000EF3FF10521F01CF0EFEFF0E004C0F7FF15 |
:1082C00002C0E0E0F0E04C91242F3327E217F307DF |
:1082D000A9F0CF01821B930B97FD03969595879587 |
:1082E00095958795242F280F2C93822F9927E8178F |
:1082F000F90714F4215001C02F5F2C9351501196AF |
:1083000057FFCACF8091BB05883F38F0EFEFF0E010 |
:10831000E81BF109EE54FD4F80818093CE018091DE |
:10832000CE01882329F0843618F084E68093CE01AC |
:108330008091BD05883F38F0EFEFF0E0E81BF109D0 |
:10834000EE54FD4F80818093CC018091CC01882335 |
:1083500029F0843618F084E68093CC018091CA0518 |
:10836000883F38F0EFEFF0E0E81BF109EE54FD4FE5 |
:1083700080818093C7018091C7018B3010F48AE01F |
:1083800002C08F3F11F48093C7018091F705883FA9 |
:1083900038F0EFEFF0E0E81BF109EE54FD4F80817B |
:1083A00080936E0780916E07823010F481E002C0E6 |
:1083B0008F3F11F480936E078091F905883F38F064 |
:1083C000EFEFF0E0E81BF109EE54FD4F8081809360 |
:1083D000940780919407823010F481E002C08F3FAF |
:1083E00011F4809394078091E405883F38F0EFEF13 |
:1083F000F0E0E81BF109EE54FD4F808180936B079C |
:108400008091E505883F38F0EFEFF0E0E81BF109D7 |
:10841000EE54FD4F8081809345078091E605883FAB |
:1084200038F0EFEFF0E0E81BF109EE54FD4F8081EA |
:10843000809373079091BC05983F18F49093CD01F9 |
:1084400009C0EFEFF0E0E91BF109EE54FD4F808128 |
:108450008093CD01983F18F49093CD0109C0EFEFC0 |
:10846000F0E0E91BF109EE54FD4F80818093CD01CE |
:108470008091BF05883F38F0EFEFF0E0E81BF1098D |
:10848000EE54FD4F80818093CB018091C105883FE0 |
:1084900038F0EFEFF0E0E81BF109EE54FD4F80817A |
:1084A0008093C9018091C905883F38F0EFEFF0E073 |
:1084B000E81BF109EE54FD4F80818093CA01809141 |
:1084C000CB05883F38F0EFEFF0E0E81BF109EE5400 |
:1084D000FD4F80818093C6018091CC05883F38F0A4 |
:1084E000EFEFF0E0E81BF109EE54FD4F808180933F |
:1084F000C8018091CD05883F38F0EFEFF0E0E81B30 |
:10850000F109EE54FD4F80818093C5018091CE0525 |
:10851000883F38F0EFEFF0E0E81BF109EE54FD4F33 |
:1085200080818093C4018091D405883F38F0EFEFBB |
:10853000F0E0E81BF109EE54FD4F80818093C20109 |
:108540008091D505883F38F0EFEFF0E0E81BF109A6 |
:10855000EE54FD4F8081809392028091D605883F32 |
:1085600038F0EFEFF0E0E81BF109EE54FD4F8081A9 |
:10857000809391028091D705883F38F0EFEFF0E0CB |
:10858000E81BF109EE54FD4F8081809390028091A9 |
:10859000D805883F38F0EFEFF0E0E81BF109EE5422 |
:1085A000FD4F808180938F028091F205883F38F0E3 |
:1085B000EFEFF0E0E81BF109EE54FD4F808180936E |
:1085C0008E028091F305883F38F0EFEFF0E0E81B72 |
:1085D000F109EE54FD4F808180938D028091F40566 |
:1085E000883F38F0EFEFF0E0E81BF109EE54FD4F63 |
:1085F000808180938C028091F505883F38F0EFEF01 |
:10860000F0E0E81BF109EE54FD4F808180938B026E |
:108610008091D905883F38F0EFEFF0E0E81BF109D1 |
:10862000EE54FD4F80818093C1018091DD05883F2C |
:1086300038F0EFEFF0E0E81BF109EE54FD4F8081D8 |
:108640008093C0018091E705883F38F0EFEFF0E0BC |
:10865000E81BF109EE54FD4F80818093BF018091AA |
:10866000EA05883F38F0EFEFF0E0E81BF109EE543F |
:10867000FD4F80818093BE018091EB05883F38F0EB |
:10868000EFEFF0E0E81BF109EE54FD4F808180939D |
:10869000BD018091EC05883F38F0EFEFF0E0E81B7A |
:1086A000F109EE54FD4F80818093BC018091F1056A |
:1086B000883F38F0EFEFF0E0E81BF109EE54FD4F92 |
:1086C00080818093BB0180910C06883F38F0EFEFEA |
:1086D000F0E0E81BF109EE54FD4F80818093A40780 |
:1086E0008091C201282F33272F5F3F4F8CE398E200 |
:1086F000B9010E94FB767093D0016093CF01809105 |
:10870000C705809395078091C60580935C0790917B |
:108710000E06933320F181E080938A02983F58F04F |
:10872000EFEFF0E0E91BF109EE54FD4F8081823359 |
:1087300010F410928A028091E2079091E30797FF6C |
:1087400008C080918A02882321F08091D503806837 |
:1087500003C08091D5038F778093D50302C0109218 |
:108760008A028091E2079091E30797FF1DC08091F4 |
:10877000A8028823C9F080918A028823A9F08091F9 |
:108780000801909109018F5F9F4F71F488E99AE386 |
:10879000909325028093240280E094EA909309014B |
:1087A0008093080110928A0280918A02882339F00E |
:1087B0008091BE01823D18F4825E8093BE01DF91FC |
:1087C000CF910895A8E1B0E0E8EEF3E40C944B7784 |
:1087D0000E945639309102013C3010F4299A01C0B0 |
:1087E0002998E090A902F090AA02FA82E982809189 |
:1087F0005C0799270A96E816F90614F49A83898388 |
:108800008091B102843608F05CC080914A03909157 |
:108810004B03009731F0019790934B0380934A03E9 |
:1088200007C01092A80280917D028F7E80937D0206 |
:108830003A3011F0343110F0289A01C02898809114 |
:108840007E0290917F02895E9340C0F18091D105B4 |
:10885000282F33273A83298380917D02806180937A |
:108860007D028091AD05A82FBB27AA0FBB1FFD017C |
:10887000E55FF84F118210828091AE05282F3327D3 |
:10888000220F331FC901855F984FFC0111821082AE |
:10889000A952B94F11961C921E922952394FD901F3 |
:1088A00011961C921E928091B005E82FFF27EE0FC3 |
:1088B000FF1FE952F94F11821082C9C21092A8021B |
:1088C000C6C28091B1028D3808F4C1C280917D0288 |
:1088D0008F7E80937D029091D20582E3989FC001A4 |
:1088E000112490934B0380934A03E981FA81B9974D |
:1088F0008CF08091A802882369F080917E0290918B |
:108900007F02FFEF8F3F9F0729F0019690937F0230 |
:1089100080937E0280917E0290917F028F3F91052D |
:1089200009F038F51092CD021092CE021092CF02CB |
:108930001092D0021092C9021092CA021092CB0279 |
:108940001092CC0210923603109237031092380323 |
:10895000109239031092D5021092D6021092D702CB |
:108960001092D8028A3F910549F481E08093500328 |
:1089700005C080917D02826080937D028091AF0569 |
:10898000E82FFF27EE0FFF1FE952F94F80819181F9 |
:10899000813591050CF441C12091A802222309F0F0 |
:1089A0003CC18091B005E82FFF27EE0FFF1FE95271 |
:1089B000F94F808191818C3491050CF406C180912E |
:1089C0004C038F5F80934C03893C08F426C13C30F4 |
:1089D00010F4299801C0299A1092A80210924C0311 |
:1089E00010927F0210927E023091AD05E32FFF2797 |
:1089F000EE0FFF1FE952F94F808191818734910575 |
:108A0000B4F48091AE05E82FFF27EE0FFF1FE95267 |
:108A1000F94F808191810190F081E02DF7FF03C033 |
:108A2000F095E195FF4FE734F1050CF478C041E093 |
:108A30002091AE05A22FBB27AA0FBB1FA952B94F89 |
:108A40008D919C9111978734910544F0E32FFF2776 |
:108A5000EE0FFF1FE952F94F808191818D919C911A |
:108A60008734910574F08091AD05E82FFF27EE0F54 |
:108A7000FF1FE952F94F80819181873491050CF0F5 |
:108A800042E0E22FFF27EE0FFF1FE952F94F8081EE |
:108A900091818634910574F48091AD05E82FFF270C |
:108AA000EE0FFF1FE952F94F8081918187349105C4 |
:108AB0000CF043E0E22FFF27EE0FFF1FE952F94FC2 |
:108AC000808191818A5B9F4F74F48091AD05E82F7E |
:108AD000FF27EE0FFF1FE952F94F80819181873404 |
:108AE00091050CF044E0E22FFF27EE0FFF1FE95243 |
:108AF000F94F808191818A5B9F4F74F48091AD051D |
:108B0000E82FFF27EE0FFF1FE952F94F8081918177 |
:108B1000863491050CF445E0842F0E940B2D809142 |
:108B2000AE05E82FFF27EE0FFF1FE952F94F8081B6 |
:108B300091810190F081E02DF7FF03C0F095E19560 |
:108B4000FF4F7E97BCF48091AD05E82FFF27EE0F15 |
:108B5000FF1FE952F94F808191818A5B9F4F54F446 |
:108B600081E08093F00388EE93E090932502809358 |
:108B7000240253C00E94052E0E94B82C80E00E945F |
:108B800038078091D3050E94D5728091B90580FF86 |
:108B900010C08091140190911501875B934038F4C7 |
:108BA00080911401909115018E5E924010F40E9404 |
:108BB000BB1A1092220280E00E94A83681E08093C6 |
:108BC0004F0380932202579A1FC080819181855B59 |
:108BD0009F4F0CF580914C038F5F80934C03893C31 |
:108BE000E0F03C3010F4299801C0299A1092A802B4 |
:108BF00010924C0310927F0210927E0281E00E943C |
:108C0000A83681E080934F030E94052E68E770E04C |
:108C10000E94E63502C020934C038091AF05E82FF7 |
:108C2000FF27EE0FFF1FE952F94F808191818B5A88 |
:108C30009F4F0CF00CC13091A802E091B005332396 |
:108C400009F0DAC0FF27EE0FFF1FE952F94F8081CC |
:108C50009181855B9F4F0CF0CCC020910F06E22FD5 |
:108C6000FF27EE0FFF1FE952F94F80819181855B4D |
:108C70009F4F1CF0222309F0BCC080914D038F5FF1 |
:108C800080934D03893C08F4E2C030934D038091FA |
:108C9000D503882309F0A6C080914F03882309F4E7 |
:108CA000A1C081E090E090937F0280937E0281E0FA |
:108CB0008093A80210923603109237031092380363 |
:108CC000109239031092D5021092D6021092D70258 |
:108CD0001092D8021092D1021092D2021092D302B6 |
:108CE0001092D4028091C805E82EFF240027112796 |
:108CF00080919107909192079C01442737FD409500 |
:108D0000542FC801B7010E94BC76DC01CB018093CF |
:108D1000E5029093E602A093E702B093E802809107 |
:108D2000A1079091A2079C01442737FD4095542F3D |
:108D3000C801B7010E94BC76DC01CB018093DD0243 |
:108D40009093DE02A093DF02B093E00280910503CE |
:108D500090910603A0910703B09108038093E1026C |
:108D60009093E202A093E302B093E4028091FD02AB |
:108D70009091FE02A091FF02B09100038093D9026E |
:108D80009093DA02A093DB02B093DC021092CD0242 |
:108D90001092CE021092CF021092D0021092C9020D |
:108DA0001092CA021092CB021092CC0280917D02E6 |
:108DB000886080937D0290910D068FE0989F9001CE |
:108DC00011248091C3029091C402820F931F68E620 |
:108DD00071E00E94FB7697FD0196959587958093AB |
:108DE000090335C08CED95E0909325028093240211 |
:108DF0002EC010924D032BC0FF27EE0FFF1FE9522C |
:108E0000F94F808191818C349105FCF020910F06FF |
:108E1000E22FFF27EE0FFF1FE952F94F808191816A |
:108E2000855B9F4F14F0222381F480914E038F5F66 |
:108E300080934E03893C58F01092A80210924E0382 |
:108E400010927F0210927E0202C010924E03809117 |
:108E50009401815080939401809194018F3F21F07F |
:108E600080917D0284FF72C30E9445418091590325 |
:108E700090915A039C01220F331F280F391FC09075 |
:108E8000AD05AC2DBB27AA0FBB1FFD01E952F94F61 |
:108E9000B090C3054B2D552780819181849FF001AF |
:108EA000859FF00D949FF00D11242E0F3F1F37FF6B |
:108EB00002C02D5F3F4FB901759567957595679510 |
:108EC000A55FB84F8091C405082F11278D919C9103 |
:108ED000809F7001819FF00C909FF00C11246E0D0B |
:108EE0007F1D70935A036093590380915B039091A7 |
:108EF0005C039C01220F331F280F391FD090AE0551 |
:108F0000AD2DBB27AA0FBB1FFD01E952F94F808190 |
:108F10009181849FF001859FF00D949FF00D1124A5 |
:108F20002E0F3F1F37FF02C02D5F3F4FA901559500 |
:108F3000479555954795A55FB84F8D919C91809F1A |
:108F40007001819FF00C909FF00C11244E0D5F1D5D |
:108F500050935C0340935B0380918A02882309F459 |
:108F600048C0CB0177FD0396DC01B595A795B59573 |
:108F7000A795CA0157FD0396FC01F595E795F59570 |
:108F8000E7958091EA01682F772767FD70956A9FC2 |
:108F900090016B9F300D7A9F300D112480919103C9 |
:108FA000482F552747FD50954E9FC0014F9F900D6C |
:108FB0005E9F900D1124280F391F37FF02C0295FD3 |
:108FC0003F4F03E0359527950A95E1F73093B002BE |
:108FD0002093AF026E9F90016F9F300D7E9F300DEA |
:108FE00011244A9FC0014B9F900D5A9F900D112450 |
:108FF0003FC080910D06E82FFF27E456FE4F868183 |
:109000008093EA01908190939103A82FBB27A7FD3D |
:10901000B095A69F9001A79F300DB69F300D1124EB |
:10902000E92FFF27E7FDF095E49FC001E59F900D34 |
:10903000F49F900D1124280F391F37FF02C0295FBC |
:109040003F4F13E0359527951A95E1F73093B0021D |
:109050002093AF02A49F9001A59F300DB49F300DC7 |
:109060001124E69FC001E79F900DF69F900D1124FB |
:10907000281B390B37FF02C0295F3F4FF3E03595BE |
:109080002795FA95E1F73093AE022093AD028091D7 |
:10909000B005E82FFF27EE0FFF1FE952F94F80813F |
:1090A0009181909581959F4F9093AC028093AB02F4 |
:1090B0008330910514F0029705C00FEF8E3F9007A3 |
:1090C00034F402969093AC028093AB0204C01092E9 |
:1090D000AC021092AB0280918D0390918E0320918F |
:1090E000890330918A03820F931F0091AF02109180 |
:1090F000B002081B190B1093B0020093AF028091CD |
:109100008B0390918C032091870330918803820F09 |
:10911000931F8090AD029090AE02881A990A9092A7 |
:10912000AE028092AD028091AF05E82FFF27EE0FCF |
:10913000FF1FE952F94FE080F18028E730E0E20EAE |
:10914000F31EF092AA02E092A9028091C70199272A |
:10915000AA2797FDA095BA2FBC01CD010E943076B9 |
:10916000DC01CB0120E030E040E251E4BC01CD0164 |
:109170000E949E75DC01CB01BC01CD010E940276EC |
:10918000DC01CB0180939B078091C601809374071B |
:109190008091C5019927AA2797FDA095BA2FBC01F8 |
:1091A000CD010E943076DC01CB0120E030E040E2CE |
:1091B00051E4BC01CD010E949E75DC01CB01BC01D4 |
:1091C000CD010E940276DC01CB0180934F07809194 |
:1091D000C401809364078091FC0380FF59C0809193 |
:1091E000A407813808F454C08091F503992787FDBE |
:1091F00090952B2D3327829FA001839F500D929F26 |
:10920000500D1124040F151F1093B0020093AF02EC |
:109210008091F603992787FD9095829FB001839FE7 |
:10922000700D929F700D1124860E971E9092AE02C3 |
:109230008092AD028091F703282F332727FD3095C8 |
:109240008091AB029091AC02820F931F9093AC027D |
:109250008093AB028091F903282F332727FD3095A7 |
:109260008091BE059927289FD001299FB00D389F76 |
:10927000B00D1124B0939B01A0939A018091F80343 |
:1092800099278E159F0524F49093AA028093A90232 |
:109290008091A9029091AA0297FF04C01092AA029D |
:1092A0001092A9028091B90582FF02C01092740742 |
:1092B0004091AF025091B002CA0157FD03969C0144 |
:1092C000359527953595279537FF03C0309521951E |
:1092D0003F4F809182029091830282179307B4F4EA |
:1092E000CA0157FF03C0909581959F4F97FD039644 |
:1092F00095958795959587959093830280938202A3 |
:109300008536910544F084E690E001C00197909382 |
:109310008302809382024091AD025091AE02CA0155 |
:1093200057FD03969C01359527953595279537FF71 |
:1093300003C0309521953F4F80918002909181022A |
:1093400082179307B4F4CA0157FF03C09095819523 |
:109350009F4F97FD03969595879595958795909343 |
:109360008102809380028536910544F084E690E086 |
:1093700001C00197909381028093800280917D02C9 |
:1093800084FF08C010928302109282021092810220 |
:1093900010928002ED2DFF27EE0FFF1FE952F94FCB |
:1093A0004091E805242F33278081918128173907C0 |
:1093B00044F48091100682FF04C081E080939602FD |
:1093C00013C0ED2DFF27EE0FFF1FE952F94F842F39 |
:1093D00099272091E905821B910920813181281765 |
:1093E000390714F4109296024091AE05E42FFF273E |
:1093F000EE0FFF1FE952F94F5091E805852F99278D |
:1094000022273327281B390B8081918182179307EC |
:1094100044F48091100683FF04C081E0809395029C |
:1094200016C080919502882391F0E42FFF27EE0F5C |
:10943000FF1FE952F94F8091E9059927851B910992 |
:10944000208131818217930714F410929502EC2D3C |
:10945000FF27EE0FFF1FE952F94F4091E805242F37 |
:109460003327808191812817390744F480911006B1 |
:1094700080FF04C081E08093930217C08091930223 |
:10948000882399F0EC2DFF27EE0FFF1FE952F94FCB |
:10949000842F99272091E905821B91092081318130 |
:1094A0002817390714F4109293024091AD05E42F68 |
:1094B000FF27EE0FFF1FE952F94F5091E805852F66 |
:1094C000992722273327281B390B80819181821706 |
:1094D000930744F48091100681FF04C081E08093DB |
:1094E000940216C080919402882391F0E42FFF2704 |
:1094F000EE0FFF1FE952F94F8091E9059927851B6F |
:109500009109208131818217930714F410929402FB |
:1095100080919602882319F480919502811181E04F |
:109520008093970280919302882321F48091940282 |
:10953000882351F081E08093980210929702109254 |
:1095400096021092950202C0809398028091970231 |
:10955000882321F480919802882369F08091E7059F |
:109560009927E981FA818E179F0714F49A838983DA |
:1095700081E08093BD0280917D0284FF1AC0109229 |
:10958000AC021092AB021092B0021092AF02109295 |
:10959000AE021092AD029AE590939B0788E7809304 |
:1095A000740790934F07809364071092970210926C |
:1095B00098028091670790916807A0916907B09120 |
:1095C0006A072091050330910603409107035091EB |
:1095D0000803820F931FA41FB51F80936707909302 |
:1095E0006807A0936907B0936A0780916F0790910D |
:1095F0007007A0917107B09172072090FD02309022 |
:10960000FE024090FF0250900003820D931DA41DA6 |
:10961000B51D80936F0790937007A0937107B09367 |
:10962000720780915E0790915F07A0916007B091EB |
:109630006107E0900103F090020300910303109191 |
:109640000403EB82FC820D831E838E0D9F1DA01FE1 |
:10965000B11F80935E0790935F07A0936007B0935C |
:1096600061078091500790915107A0915207B091E6 |
:109670005307E090F902F090FA020091FB0210917A |
:10968000FC02EF82F88609871A878E0D9F1DA01FA6 |
:10969000B11F8093500790935107A0935207B09346 |
:1096A0005307F0909802FB86FF2029F480919702DF |
:1096B000882309F460C01092F5021092F60210920D |
:1096C000F7021092F8021092F1021092F202109238 |
:1096D000F3021092F402109267071092680710923A |
:1096E000690710926A0710926F0710927007109224 |
:1096F00071071092720710925E0710925F07109226 |
:109700006007109261071092500710925107109253 |
:109710005207109253078091E5029091E602A091C2 |
:10972000E702B091E8028093E1029093E202A093F5 |
:10973000E302B093E4028091DD029091DE02A091F9 |
:10974000DF02B091E0028093D9029093DA02A093F5 |
:10975000DB02B093DC0210923402109233021092BA |
:109760009C0210929B0210929E0210929D020B8509 |
:10977000002309F0F2C180919702882309F0EDC11E |
:1097800080919E0590919F05815092402CF480918C |
:10979000A802882309F4E1C190900F08A090C805A1 |
:1097A0006091910770919207788F6F8B8091A107DC |
:1097B0009091A2079A8B898B9FEF991609F4D9C0D3 |
:1097C000BB24CC24DD24CA01B901A60195010E9465 |
:1097D000307779018A01EF89F88DCF01AA2797FDAB |
:1097E000A095BA2FE81AF90A0A0B1B0BC201B101A6 |
:1097F000A60195010E94307759016A0129893A89A9 |
:10980000C901AA2797FDA095BA2FA81AB90ACA0AB2 |
:10981000DB0A292C332427FC3094432C532CC80119 |
:10982000B701A20191010E94BC7697FF04C061506C |
:109830007E4F8F4F9F4F3B014C0109E095948794D9 |
:10984000779467940A95D1F7C601B501A2019101F9 |
:109850000E94BC7697FF04C061507E4F8F4F9F4F90 |
:109860005B016C0119E0D594C794B794A7941A953D |
:10987000D1F78091820290918302813491053CF46A |
:10988000809180029091810281349105D4F0D401BD |
:10989000C30197FE03C00196A11DB11D3C014D01FE |
:1098A0009594879477946794D601C501D7FE03C039 |
:1098B0000196A11DB11D5C016D01D594C794B794AB |
:1098C000A7948091B005E82FFF27EE0FFF1FE95204 |
:1098D000F94F808191810190F081E02DF7FF03C065 |
:1098E000F095E195FF4F7A97A4F0C401B30123E00E |
:1098F00030E040E050E00E94307739014A01C60173 |
:10990000B50123E030E040E050E00E94307759019B |
:109910006A0180911108282F332727FD3095432FA6 |
:10992000532F261537054805590514F439014A0106 |
:10993000992787FD9095909581959F4FAA2797FD30 |
:10994000A095BA2F681679068A069B0614F43C0186 |
:109950004D012A153B054C055D0514F459016A01BA |
:10996000A816B906CA06DB060CF0CFC05C016D0173 |
:10997000CCC0EA2CFF2400271127CA01B901A80195 |
:1099800097010E94307739014A014F89588DCA01E9 |
:10999000AA2797FDA095BA2F681A790A8A0A9B0A06 |
:1099A000C201B101A80197010E94307759016A01F3 |
:1099B00069897A89CB01AA2797FDA095BA2FA81AA1 |
:1099C000B90ACA0ADB0AD401C30197FE03C00F9685 |
:1099D000A11DB11D3C014D01F4E09594879477944D |
:1099E0006794FA95D1F7D601C501D7FE03C00F964B |
:1099F000A11DB11D5C016D01E4E0D594C794B7943D |
:109A0000A794EA95D1F780918202909183028134E4 |
:109A100091053CF4809180029091810281349105FE |
:109A2000A4F0C401B30123E030E040E050E00E9424 |
:109A3000307739014A01C601B50123E030E040E04A |
:109A400050E00E94307759016A018091B005E82FFB |
:109A5000FF27EE0FFF1FE952F94F8081918101909E |
:109A6000F081E02DF7FF03C0F095E195FF4F7A9765 |
:109A7000A4F0C401B30123E030E040E050E00E94D4 |
:109A8000307739014A01C601B50123E030E040E0FA |
:109A900050E00E94307759016A0171E26716710443 |
:109AA000810491042CF070E2672E712C812C912C92 |
:109AB00080EE68168FEF78068FEF88068FEF980696 |
:109AC00044F460EE662E6FEF762E6FEF862E6FEF0A |
:109AD000962E91E2A916B104C104D1042CF050E2F3 |
:109AE000A52EB12CC12CD12CA0EEAA16AFEFBA0630 |
:109AF000AFEFCA06AFEFDA0644F440EEA42E4FEF04 |
:109B0000B42E4FEFC42E4FEFD42E8091E5029091EA |
:109B1000E602A091E702B091E80286199709A80928 |
:109B2000B9098093E5029093E602A093E702B0930F |
:109B3000E8028091DD029091DE02A091DF02B091F7 |
:109B4000E0028A199B09AC09BD098093DD0290935C |
:109B5000DE02A093DF02B093E00280913302909185 |
:109B600034028F3F910509F008F4C4C5BB85BB23BF |
:109B700009F04EC580919702882309F049C580916C |
:109B8000BD02882309F044C5E091F005EC87EE237F |
:109B900009F43EC58091670790916807A091690715 |
:109BA000B0916A07B7FF04C081509F4FAF4FBF4FBE |
:109BB000E92EFA2E0B2F112707FD1A95E092670761 |
:109BC000F09268070093690710936A0780916F0706 |
:109BD00090917007A0917107B0917207B7FF04C010 |
:109BE00081509F4FAF4FBF4F892F9A2FAB2FBB276D |
:109BF000A7FDBA958D879E87AF87B88B80936F0737 |
:109C000090937007A0937107B09372078091C80575 |
:109C1000A82EBB24CC24DD242091F5023091F6023D |
:109C20004091F7025091F802C601B5010E94BC763E |
:109C300097FF04C061507F4F8F4F9F4F672E782E44 |
:109C4000892E992487FC9A946092F5027092F6020C |
:109C50008092F7029092F8022091F1023091F20284 |
:109C60004091F3025091F402C601B5010E94BC7606 |
:109C700097FF04C061507F4F8F4F9F4F272E382E84 |
:109C8000492E552447FC5A942092F1023092F20258 |
:109C90004092F3025092F4028091ED029091EE0214 |
:109CA000A091EF02B091F002B7FF04C081509F4F26 |
:109CB000AF4FBF4F892F9A2FAB2FBB27A7FDBA9568 |
:109CC0008093ED029093EE02A093EF02B093F00226 |
:109CD000D801C70186199709A809B90980934203D9 |
:109CE00090934303A0934403B09345032091EF0561 |
:109CF000E22EFF2400271127BC01CD01A801970106 |
:109D00000E94307759016A01209351033093520326 |
:109D100040935303509354038D859E85AF85B88936 |
:109D200082199309A409B5098093460390934703C8 |
:109D3000A0934803B0934903BC01CD01A80197014A |
:109D40000E94307720935503309356034093570376 |
:109D500050935803D601C501D7FE04C081509F4FD0 |
:109D6000AF4FBF4F892F9A2FAB2FBB27A7FDBA95B7 |
:109D700090939C0280939B0257FF04C021503F4F59 |
:109D80004F4F5F4FBB2757FDBA95A52F942F832FB9 |
:109D900090939E0280939D02809182029091830213 |
:109DA00081349105DCF480918002909181028134AC |
:109DB0009105A4F48091B005E82FFF27EE0FFF1F57 |
:109DC000E952F94F808191810190F081E02DF7FFF8 |
:109DD00003C0F095E195FF4F7A97E4F080910F086A |
:109DE0008F3FC1F480919B0290919C0297FD019658 |
:109DF0009595879590939C0280939B0280919D02FC |
:109E000090919E0297FD01969595879590939E025D |
:109E100080939D0280915E0790915F07A0916007FB |
:109E2000B0916107B7FF04C081509F4FAF4FBF4F44 |
:109E3000892F9A2FAB2FBB27A7FDBA9580935E077A |
:109E400090935F07A0936007B093610780915007DC |
:109E500090915107A0915207B0915307B7FF04C0EA |
:109E600081509F4FAF4FBF4F892F9A2FAB2FBB27EA |
:109E7000A7FDBA958093500790935107A09352077E |
:109E8000B09353078091050390910603A0910703B7 |
:109E9000B09108032B813C814D815E81281B390BD9 |
:109EA0004A0B5B0B20933A0330933B0340933C03F4 |
:109EB00050933D038091FD029091FE02A091FF021C |
:109EC000B0910003EF80F88409851A85E81AF90A31 |
:109ED0000A0B1B0BE0923E03F0923F0300934003FA |
:109EE0001093410320934203309343034093440370 |
:109EF00050934503E0924603F092470300934803D2 |
:109F0000109349038091E1029091E202A091E30253 |
:109F1000B091E402821B930BA40BB50B8093E1027A |
:109F20009093E202A093E302B093E4028091D902FD |
:109F30009091DA02A091DB02B091DC028E199F09A8 |
:109F4000A00BB10B8093D9029093DA02A093DB02AD |
:109F5000B093DC02FC85FF23E1F02091BB0230913D |
:109F6000BC02213831054CF0809116039091170303 |
:109F70000196909317038093160320583F4F4CF49B |
:109F80008091160390911703019790931703809384 |
:109F900016031092BC021092BB0281E090E09093F5 |
:109FA0005E0380935D03E0904203F09043030091D1 |
:109FB000440310914503D801C70117FF07C0882744 |
:109FC0009927DC018E199F09A00BB10B815092409B |
:109FD000A040B04034F084E090E090935E03809322 |
:109FE0005D038091630390916403A0916503B09138 |
:109FF0006603209167073091680740916907509187 |
:10A000006A07821B930BA40BB50B815E914BAF4F7C |
:10A01000BF4F8F539C49A040B04028F0809110085A |
:10A0200089310CF4FFC041E0E41640E1F40640E061 |
:10A03000040740E014070CF473C080915F03882389 |
:10A0400009F46AC0D801C70117FF07C088279927FC |
:10A05000DC018E199F09A00BB10B9C01AD01B7FF6C |
:10A0600004C021503E4F4F4F5F4FF9E05595479543 |
:10A0700037952795FA95D1F780915D0390915E030E |
:10A08000820F931F90935E0380935D03D801C701F5 |
:10A0900017FF03C00796A11DB11DE3E0B595A79575 |
:10A0A00097958795EA95D1F7809351039093520342 |
:10A0B000A0935303B093540389589341A040B040F8 |
:10A0C00064F088E893E1A0E0B0E0809351039093BE |
:10A0D0005203A0935303B093540320915103309142 |
:10A0E0005203409153035091540357FF04C0215031 |
:10A0F0003F4F4F4F5F4F232F342F452F552747FD9D |
:10A100005A9580919B0290919C02820F931F90938D |
:10A110009C0280939B0206C081E080935F0302C093 |
:10A1200010925F0360E0E61660EFF6066FEF060739 |
:10A130006FEF16070CF073C080916003882309F459 |
:10A140006AC0D801C70117FF07C088279927DC011B |
:10A150008E199F09A00BB10B9C01AD01B7FF04C084 |
:10A1600021503E4F4F4F5F4F69E0559547953795CA |
:10A1700027956A95D1F780915D0390915E03820FD8 |
:10A18000931F90935E0380935D03D801C70117FF6F |
:10A1900003C00796A11DB11D23E0B595A79597951E |
:10A1A00087952A95D1F78093510390935203A093FA |
:10A1B0005303B093540388579C4EAF4FBF4F64F482 |
:10A1C00088E79CEEAFEFBFEF80935103909352036B |
:10A1D000A0935303B0935403209151033091520341 |
:10A1E000409153035091540357FF04C021503F4FF7 |
:10A1F0004F4F5F4F232F342F452F552747FD5A953B |
:10A2000080919B0290919C02820F931F90939C02DD |
:10A2100080939B0211C081E0809360030DC0109277 |
:10A2200060030AC010925E0310925D0388EE93E013 |
:10A230009093DA018093D9018C85282F3327809160 |
:10A240005D0390915E032817390724F430935E0371 |
:10A2500020935D0310911008112379F0212F3327EB |
:10A2600027FD309580915D0390915E032817390793 |
:10A2700024F430935E0320935D0340914203509198 |
:10A2800043036091440370914503413851056105D2 |
:10A29000710574F080911A0390911B0320915D0366 |
:10A2A00030915E03820F931F90931B0380931A03D8 |
:10A2B00040585F4F6F4F7F4F74F480911A03909115 |
:10A2C0001B0320915D0330915E03821B930B9093DF |
:10A2D0001B0380931A0381E090E090935E038093C8 |
:10A2E0005D03C0904603D0904703E0904803F09090 |
:10A2F0004903D701C601F7FE07C088279927DC016B |
:10A300008C199D09AE09BF0981509240A040B04010 |
:10A3100034F084E090E090935E0380935D0380913D |
:10A32000670390916803A0916903B0916A0320913B |
:10A330006F07309170074091710750917207821B2F |
:10A34000930BA40BB50B815E914BAF4FBF4F8F5357 |
:10A350009C49A040B04018F019310CF4FFC001E056 |
:10A36000C01600E1D00600E0E00600E0F0060CF4C4 |
:10A3700073C080916103882309F46AC0D701C601C4 |
:10A38000F7FE07C088279927DC018C199D09AE09C3 |
:10A39000BF099C01AD01B7FF04C021503E4F4F4F94 |
:10A3A0005F4F09E055954795379527950A95D1F761 |
:10A3B00080915D0390915E03820F931F90935E03E3 |
:10A3C00080935D03D701C601F7FE03C00796A11D68 |
:10A3D000B11D13E0B595A795979587951A95D1F777 |
:10A3E0008093550390935603A0935703B09358035B |
:10A3F00089589341A040B04064F088E893E1A0E020 |
:10A40000B0E08093550390935603A0935703B09305 |
:10A4100058032091550330915603409157035091B2 |
:10A42000580357FF04C021503F4F4F4F5F4F232F1A |
:10A43000342F452F552747FD5A9580919D029091C5 |
:10A440009E02820F931F90939E0280939D0206C0EE |
:10A4500081E08093610302C01092610320E0C21684 |
:10A4600020EFD2062FEFE2062FEFF2060CF073C0BA |
:10A4700080916203882309F46AC0D701C601F7FE00 |
:10A4800007C088279927DC018C199D09AE09BF09EF |
:10A490009C01AD01B7FF04C021503E4F4F4F5F4FAD |
:10A4A000E9E05595479537952795EA95D1F780913D |
:10A4B0005D0390915E03820F931F90935E038093E0 |
:10A4C0005D03D701C601F7FE03C00796A11DB11DAC |
:10A4D00073E0B595A795979587957A95D1F7809371 |
:10A4E000550390935603A0935703B093580388578E |
:10A4F0009C4EAF4FBF4F64F488E79CEEAFEFBFEFC9 |
:10A500008093550390935603A0935703B093580339 |
:10A5100020915503309156034091570350915803B1 |
:10A5200057FF04C021503F4F4F4F5F4F232F342F11 |
:10A53000452F552747FD5A9580919D0290919E0287 |
:10A54000820F931F90939E0280939D0211C081E021 |
:10A55000809362030DC0109262030AC010925E03E2 |
:10A5600010925D0388EE93E09093DA018093D90115 |
:10A570004C85242F332780915D0390915E0328172B |
:10A58000390724F430935E0320935D038091100813 |
:10A59000882379F0282F332727FD309580915D039C |
:10A5A00090915E032817390724F430935E032093BB |
:10A5B0005D034091460350914703609148037091B9 |
:10A5C0004903413851056105710574F08091180304 |
:10A5D0009091190320915D0330915E03820F931FC8 |
:10A5E000909319038093180340585F4F6F4F7F4F2C |
:10A5F000CCF4809118039091190320915D03309160 |
:10A600005E03821B930B90931903809318030AC077 |
:10A6100010929E0210929D0210929C0210929B0238 |
:10A620001092BD0280917407882341F410929E021B |
:10A6300010929D0210929C0210929B0280916707DB |
:10A6400090916807A0916907B0916A0780936303AE |
:10A6500090936403A0936503B093660380916F07A2 |
:10A6600090917007A0917107B09172078093670372 |
:10A6700090936803A0936903B0936A031092F50264 |
:10A680001092F6021092F7021092F8021092F10264 |
:10A690001092F2021092F3021092F4021092ED0264 |
:10A6A0001092EE021092EF021092F00210926707E1 |
:10A6B000109268071092690710926A0710926F074C |
:10A6C00010927007109271071092720710925E0735 |
:10A6D00010925F0710926007109261071092500766 |
:10A6E00010925107109252071092530710923402A1 |
:10A6F00010923302E090AB02F090AC02C701F7FE7B |
:10A7000004C0882799278E199F0940976CF088EE1E |
:10A7100093E09093DA018093D9018091B90584FD8B |
:10A7200003C081E0809350031091C505A12EBB2486 |
:10A73000CC24DD24B701882777FD8095982F9701D9 |
:10A74000F7FE04C0222733272E193F09442737FD7F |
:10A750004095542F0E94BC769B01AC01C601B50107 |
:10A760000E94BC7697FF04C061507E4F8F4F9F4F71 |
:10A7700059E095958795779567955A95D1F79B01FF |
:10A78000812F99278E9DD0018F9DB00D9E9DB00D7C |
:10A790001124CD01B7FD03969595879595958795DD |
:10A7A000280F391F442737FD4095542F2093360337 |
:10A7B0003093370340933803509339038091D50287 |
:10A7C0009091D602A091D702B091D802821B930B30 |
:10A7D000A40BB50B8093D5029093D602A093D70219 |
:10A7E000B093D8028155934CA040B04064F080E50E |
:10A7F00093ECA0E0B0E08093D5029093D602A093B2 |
:10A80000D702B093D8028091D5029091D602A09140 |
:10A81000D702B091D802805B9C43AF4FBF4F64F426 |
:10A8200080EB9CE3AFEFBFEF8093D5029093D6020D |
:10A83000A093D702B093D8024090C3025090C402B4 |
:10A840004114510409F478C18091B90583FF74C1A2 |
:10A850008091050390910603A0910703B09108032E |
:10A86000B7FF04C081509E4FAF4FBF4F39E0B59541 |
:10A87000A795979587953A95D1F76C0197FF04C0F6 |
:10A88000D094C194D108D3948091FD029091FE029E |
:10A89000A091FF02B0910003B7FF04C081509E4F0A |
:10A8A000AF4FBF4F29E0B595A795979587952A9506 |
:10A8B000D1F7BC0197FF03C0709561957F4FC61615 |
:10A8C000D7060CF46B01B601D7FE02C0695F7F4F5B |
:10A8D0003B0183E0759467948A95E1F702E0E02EEE |
:10A8E000F12C6E0C7F1C0CE112E0400E511E720127 |
:10A8F0000027F7FC0095102F24EE3DEF420E531E6B |
:10A9000080919D0790919E07A0919F07B091A0070D |
:10A910008090960190909701A0909801B090990135 |
:10A92000BC01CD01A50194010E943077E21AF30A1F |
:10A93000040B150BC801B70128E631E040E050E0F8 |
:10A940000E943077DC01CB011CE4E12E1FEFF12ED9 |
:10A95000E80EF91E0091D9011091DA0101151105D7 |
:10A9600089F539E1C316D1046CF58091BB02909151 |
:10A97000BC028E0D9F1D9093BC028093BB02809100 |
:10A9800050038823F9F0C201AA2797FDA095BA2F9A |
:10A99000BC01CD01A50194010E94BC76DC01CB0174 |
:10A9A00080939D0790939E07A0939F07B093A00765 |
:10A9B000BC01CD010E9430773093C2022093C102C6 |
:10A9C00010925003C701B4E0880F991FBA95E1F7C0 |
:10A9D000B3010E94FB76CB01AA2797FDA095BA2F61 |
:10A9E00020919D0730919E0740919F075091A007AD |
:10A9F000280F391F4A1F5B1F20939D0730939E0726 |
:10AA000040939F075093A007F090CA016F2D7727BE |
:10AA1000C69EC001C79E900DD69E900D112497FD35 |
:10AA20004F966C01A5E0D594C794AA95E1F76C19EF |
:10AA30007D096B0177FD7AC00115110509F06FC022 |
:10AA40000091820210918302809180029091810294 |
:10AA5000080F191F17FF02C0095F1F4FF3E015957C |
:10AA60000795FA95E1F7005C1F4FCA01B901A501EE |
:10AA700094010E943077DA01C9012091C10230911E |
:10AA8000C202442737FD4095542F821B930BA40B21 |
:10AA9000B50B845E9D4FAF4FBF4FBC01CD0128E683 |
:10AAA00031E040E050E00E943077DC01CB01845B74 |
:10AAB00090408C9DA0018D9D500D9C9D500D1124AA |
:10AAC000CA01B8010E94FB7683E0F89E6001112460 |
:10AAD000C616D70614F4B60108C0882799278C1922 |
:10AAE0009D09681779070CF4BC019B01442737FDC9 |
:10AAF0004095542F8091D5029091D602A091D70213 |
:10AB0000B091D802820F931FA41FB51F8093D50266 |
:10AB10009093D602A093D702B093D8020DC00150F3 |
:10AB200010401093DA010093D90106C084EF91E040 |
:10AB30009093DA018093D9018091BD02882381F03E |
:10AB40001092C9021092CA021092CB021092CC024B |
:10AB50001092CD021092CE021092CF021092D0022B |
:10AB6000F0909802FF20F1F480917407282F33278A |
:10AB7000442755278091050390910603A091070370 |
:10AB8000B0910803BC01CD010E94BC76DC01CB0171 |
:10AB9000BC01CD0128EF3AE240E050E00E9430775E |
:10ABA000390102C066247724E0909702EE20F1F488 |
:10ABB00080917407282F3327442755278091FD0261 |
:10ABC0009091FE02A091FF02B0910003BC01CD0163 |
:10ABD0000E94BC76DC01CB01BC01CD0128EF3AE23A |
:10ABE00040E050E00E943077290102C044245524FF |
:10ABF00080914A0790914B07893C91051CF088ECA5 |
:10AC000090E005C088539F4F34F488E39FEF909302 |
:10AC10004B0780934A078091550790915607893CCE |
:10AC200091051CF088EC90E005C088539F4F34F4E8 |
:10AC300088E39FEF909356078093550780915707BD |
:10AC400090915807AA2797FDA095BA2F20919B07AE |
:10AC5000A22EBB24CC24DD24BC01CD01A60195018C |
:10AC60000E94BC769B01AC0180914A0790914B07F2 |
:10AC7000AA2797FDA095BA2FE7E0880F991FAA1F72 |
:10AC8000BB1FEA95D1F7280F391F4A1F5B1F57FFDB |
:10AC900004C0215C3F4F4F4F5F4F76E0559547957D |
:10ACA000379527957A95D1F78301020F131F1093DB |
:10ACB0005807009357078091480790914907AA27A2 |
:10ACC00097FDA095BA2FBC01CD01A60195010E9468 |
:10ACD000BC769B01AC018091550790915607AA273D |
:10ACE00097FDA095BA2F67E0880F991FAA1FBB1F79 |
:10ACF0006A95D1F7280F391F4A1F5B1F57FF04C001 |
:10AD0000215C3F4F4F4F5F4F96E0559547953795E4 |
:10AD100027959A95D1F74201820E931E909249078A |
:10AD2000809248078091960790919707880F991F06 |
:10AD3000AA2797FDA095BA2F20914F0733274427C4 |
:10AD40005527BC01CD010E94BC765B016C0197FFC9 |
:10AD500008C08FE390E0A0E0B0E0A80EB91ECA1EC4 |
:10AD6000DB1E86E0D594C794B794A7948A95D1F753 |
:10AD700080916407282F3327442755278091E902C3 |
:10AD80009091EA02A091EB02B091EC02BC01CD01DE |
:10AD90000E94BC76DC01CB01BC01CD0120EF35E582 |
:10ADA00040E050E00E943077B501620F731F70934E |
:10ADB0009707609396070150104134F080E090E1CE |
:10ADC00090935807809357078091570790915807A1 |
:10ADD0008050904F34F480E090EF90935807809328 |
:10ADE0005707B1E08B16B0E19B0634F080E090E1AC |
:10ADF00090934907809348078091480790914907AD |
:10AE00008050904F34F480E090EF90934907809306 |
:10AE100048076150704134F080E090E190939707CB |
:10AE20008093960780919607909197078050904F56 |
:10AE300034F480E090EF9093970780939607809189 |
:10AE40000001482F552780911E0190911F0148173E |
:10AE5000590794F420911E0130911F0169817A8174 |
:10AE6000649FC001659F900D749F900D1124B901DE |
:10AE70000E94E7767A83698389819A81880F991F76 |
:10AE8000880F991F9A8389834091B90540FFBDC6F9 |
:10AE9000EE2009F0BAC6FF2009F0B7C6AA24BB24E9 |
:10AEA00045018091990290919A0290938205809336 |
:10AEB000810520911C0330911D032115310509F0F6 |
:10AEC0003FC080911401909115018959934058F029 |
:10AED00087B5853F20F480913702815011C081E011 |
:10AEE000809376034EC080911401909115018436B1 |
:10AEF000910508F587B58B30D0F0809137028F5FD0 |
:10AF0000809337029AE08902900111248091A8056C |
:10AF1000821B87BD8CE291E09093250280932402EE |
:10AF20008EE591E090931D0380931C032AC081E07D |
:10AF30008093750326C0F0927503F092760321C0CA |
:10AF40008091A3029091A402A091A502B091A602C3 |
:10AF500014E0880F991FAA1FBB1F1A95D1F7809381 |
:10AF6000380290933902A0933A02B0933B02B09218 |
:10AF70003602A09235022150304030931D032093B9 |
:10AF80001C032091CD0141FF24C02233D8F48091CD |
:10AF9000DF0181508093DF018F3FD9F51092BE020F |
:10AFA0008091A3029091A402A091A502B091A60263 |
:10AFB00080939F029093A002A093A102B093A2025B |
:10AFC00081E004C081E08093BE0288EC8093DF01C1 |
:10AFD00020C080919A0190919B01820F911D209138 |
:10AFE000BE053327829FF001839FF00D929FF00DE5 |
:10AFF0001124CF01AA2797FDA095BA2F80939F0215 |
:10B000009093A002A093A102B093A20281E080934A |
:10B01000BE028091050390910603A0910703B091B1 |
:10B020000803E0909601F09097010091980110912B |
:10B030009901BC01CD01A80197010E943077590107 |
:10B040006A018091FD029091FE02A091FF02B091F1 |
:10B050000003BC01CD01A80197010E943077B9011E |
:10B06000C5010E94E5748C01CC9714F00CE310E04C |
:10B07000C8010E9406698C0180E28093950180914D |
:10B08000BE02882309F447C480917D0299279C0160 |
:10B090002071307084FD3FC46091120660FD04C0D1 |
:10B0A0008091B90581FD0CC0C980DA8030936C03B2 |
:10B0B00020936B0380917D02806C80937D0299C107 |
:10B0C00080917D0281FF6BC14091DB015091DC01D9 |
:10B0D000CA010F962091A9023091AA028217930704 |
:10B0E000BCF580917503882399F580917D0287FFD7 |
:10B0F00015C080917D028F7780937D028091A3029D |
:10B100009091A402A091A502B091A60280939F0203 |
:10B110009093A002A093A102B093A20280917D021D |
:10B12000806480937D02241B350B2F50304037FF05 |
:10B1300003C0309521953F4F80916B0390916C0334 |
:10B14000820F931F90936C0380936B038BE26EC00E |
:10B15000CA010F9728173907BCF580917603882319 |
:10B1600099F580917D0286FF15C080917D028F7BCD |
:10B1700080937D028091A3029091A402A091A502E8 |
:10B18000B091A60280939F029093A002A093A10287 |
:10B19000B093A20280917D02806880937D02241B7F |
:10B1A000350B215F3F4F37FF03C0309521953F4F4F |
:10B1B00080916B0390916C03821B930B90936C03B3 |
:10B1C00080936B038DE232C080917D02807C69F1B7 |
:10B1D00080917D028F7380937D0210926C03109298 |
:10B1E0006B032091A3023091A4024091A5025091DB |
:10B1F000A60220939F023093A0024093A102509395 |
:10B20000A20261FF06C084EF91E090932502809333 |
:10B2100024028091A702882341F42333310541059C |
:10B2200051051CF081E08093A7028DE38093950186 |
:10B2300020916B0330916C03C90137FF04C088274C |
:10B240009927821B930B815092400CF491C08091FE |
:10B25000BE059927289F7001299FF00C389FF00C9C |
:10B260001124C70160E075E00E94FB76CB01AA279C |
:10B2700097FDA095BA2F20919F023091A002409196 |
:10B28000A1025091A202280F391F4A1F5B1F209371 |
:10B290009F023093A0024093A1025093A202109209 |
:10B2A0006C0310926B03C090A302D090A402E090B4 |
:10B2B000A502F090A602D701C60180509440A0409C |
:10B2C000B04082179307A407B5075CF4D701C60105 |
:10B2D00080509C4FAF4FBF4F281739074A075B0775 |
:10B2E00044F080939F029093A002A093A102B09398 |
:10B2F000A2028091120681FF06C084E690E090933E |
:10B300002502809324028091C205882389F540910B |
:10B31000990250919A0257FF02C04D5F5F4F5595B9 |
:10B3200047955595479580911E0190911F01209159 |
:10B3300000013327489FB001499F700D589F700D41 |
:10B340001124CB01B9010E94FB767093DC0160935C |
:10B35000DB01663471051CF486E490E005C06739B2 |
:10B36000710534F086E990E09093DC018093DB0175 |
:10B3700080911C0390911D03892BB9F18091A30248 |
:10B380009091A402A091A502B091A60280939F0281 |
:10B390009093A002A093A102B093A20226C0809134 |
:10B3A000A3029091A402A091A502B091A602805997 |
:10B3B0009140A040B04080939F029093A002A09340 |
:10B3C000A102B093A2028091C205882311F09927AF |
:10B3D00002C088E790E09093DC018093DB018981D3 |
:10B3E0009A8190939A0280939902C0909902D0908A |
:10B3F0009A022091A3023091A4024091A50250919B |
:10B40000A6022B8B3C8B4D8B5E8B20919F02309143 |
:10B41000A0024091A1025091A2026B897C898D8982 |
:10B420009E89261737074807590724F0809112068E |
:10B4300080FDB8C280911C0390911D03892B39F0C7 |
:10B44000C0909902D0909A02AA24BB24D9C08B89BB |
:10B450009C89AD89BE89821B930BA40BB50B80938D |
:10B460003A0390933B03A0933C03B0933D03823097 |
:10B4700070E897077FEFA7077FEFB7072CF481E00D |
:10B4800090E8AFEFBFEF09C08F5F9F47A040B0408B |
:10B4900064F08FEF9FE7A0E0B0E080933A039093D1 |
:10B4A0003B03A0933C03B0933D03A0903A03B090BC |
:10B4B0003B038091CC01282F3327442755278091C7 |
:10B4C0003A0390913B03A0913C03B0913D03BC0132 |
:10B4D000CD010E94BC7697FF04C0615E7F4F8F4F05 |
:10B4E0009F4FA5E09595879577956795AA95D1F794 |
:10B4F00060933A0370933B0380933C0390933D0326 |
:10B500006530FEEF7F07FFEF8F07FFEF9F072CF4FB |
:10B5100084E09EEFAFEFBFEF09C060507440804001 |
:10B52000904064F080E094E0A0E0B0E080933A03C3 |
:10B5300090933B03A0933C03B0933D0380903A0368 |
:10B5400090903B03209135023091360237FF02C0C4 |
:10B55000295F3F4FF3E035952795FA95E1F74FEFD7 |
:10B56000223834071CF421E83FEF05C020383105AC |
:10B5700014F020E830E0C901AA2797FDA095BA2F62 |
:10B580002091CE01332744275527BC01CD010E94CD |
:10B59000BC7697FF04C06D5F7F4F8F4F9F4FE2E0F7 |
:10B5A0009595879577956795EA95D1F79B015FEF1C |
:10B5B000613075071CF420E03FEF06C06F3F710556 |
:10B5C00019F014F020E031E080917D02807C49F098 |
:10B5D000C90137FD03969C0135952795359527952B |
:10B5E0000DC08091120680FF09C0C90137FD079682 |
:10B5F0009C0143E0359527954A95E1F7820E931E0D |
:10B600002091CB01222309F454C06091C5027091AE |
:10B61000C6028091C7029091C80297FF04C061588A |
:10B620007F4F8F4F9F4F37E095958795779567951B |
:10B630003A95D1F73327442755270E94BC7697FFC8 |
:10B6400004C0615E7F4F8F4F9F4FB5E09595879502 |
:10B6500077956795BA95D1F760933A0370933B035A |
:10B6600080933C0390933D036138AFEF7A07AFEFCF |
:10B670008A07AFEF9A072CF480E89FEFAFEFBFEF98 |
:10B680000AC06F3F71058105910569F064F080E0A3 |
:10B6900091E0A0E0B0E080933A0390933B03A09345 |
:10B6A0003C03B0933D0380913A0390913B03880E95 |
:10B6B000991E8091C901282F33278091130899275B |
:10B6C00087FD9095289FF001299FF00D389FF00D80 |
:10B6D00011249F01F7FF02C021583F4F220F232F53 |
:10B6E000221F330BFFEF21383F071CF420E83FEF08 |
:10B6F00006C02F3F310519F014F020E031E0820E32 |
:10B70000931EC401AA2797FDA095BA2FE090990235 |
:10B71000F0909A029701442737FD4095542FBC01C1 |
:10B72000CD010E94BC7697FF04C061507E4F8F4FC1 |
:10B730009F4FF9E09595879577956795FA95D1F79D |
:10B74000C61AD70A80916B0390916C03892B09F07C |
:10B7500060C01E141F040CF05CC09501B7FE03C04E |
:10B76000309521953F4F2D33310540F480916F0383 |
:10B77000909170038C159D0574F526C02C533040B4 |
:10B78000E5E036952795EA95E1F72031310510F08F |
:10B790002FE030E040916F03509170031A141B04A6 |
:10B7A000E4F480E190E0821B930B489F9001499F55 |
:10B7B000300D589F300D112474E0369527957A95F9 |
:10B7C000E1F72C153D0520F58091DD019091DE011A |
:10B7D000C816D906F4F06C011CC0205F3F4F809161 |
:10B7E000DD019091DE01829FB001839F700D929FD9 |
:10B7F000700D11249B0164E0369527956A95E1F759 |
:10B800004C155D0514F06A0104C0C216D30608F099 |
:10B810006901C601AA2797FDA095BA2F2DE0880FD0 |
:10B82000991FAA1FBB1F2A95D1F79801442737FDFE |
:10B830004095542FBC01CD010E94307720933E03E8 |
:10B8400030933F034093400350934103C0903E0325 |
:10B85000D0903F0380916D0390916E039C01220F65 |
:10B86000331F280F391F2C0D3D1D37FF02C02D5FE0 |
:10B870003F4FA901559547955595479550936E03B0 |
:10B8800040936D038091BA05282F3327220F331F71 |
:10B89000220F331F241735076CF480919507282F4A |
:10B8A0003327220F331F220F331F205530404217FA |
:10B8B000530724F030936E0320936D03809112069A |
:10B8C00080FF14C080916D0390916E03A981BA81AD |
:10B8D0008A179B0724F0B0936E03A0936D03E09149 |
:10B8E0006D03F0916E03FA83E9835CC029813A818C |
:10B8F0002E193F0937FF02C02D5F3F4F3595279521 |
:10B9000035952795E0906D03F0906E03E20EF31EDF |
:10B91000FA82E98247C08091C205882301F56091CF |
:10B92000990270919A0277FF02C06D5F7F4F759503 |
:10B9300067957595679540911E0150911F01809103 |
:10B940000001282F3327649FC001659F900D749FCD |
:10B95000900D1124B9010E94FB76CB0101C09927FB |
:10B960009093DC018093DB018091DB019091DC01FD |
:10B97000873491051CF486E490E005C08639910572 |
:10B9800034F086E990E09093DC018093DB0129811B |
:10B990003A8130936E0320936D0380917D02806C19 |
:10B9A00080937D0280917D0299279C0122703070E6 |
:10B9B00081FF1CC18091710390917203A091730368 |
:10B9C000B09174030097A105B10521F08091A70201 |
:10B9D0008130B1F449815A81CA01AA2797FDA09507 |
:10B9E000BA2F2EE0880F991FAA1FBB1F2A95D1F7E7 |
:10B9F0008093710390937203A0937303B0937403C5 |
:10BA00008091A702813019F482E08093A7026981B6 |
:10BA10007A81CB01AA2797FDA095BA2F98014427D8 |
:10BA200037FD4095542FBC01CD010E94BC76DC014E |
:10BA3000CB0180933E0390933F03A0934003B093C8 |
:10BA40004103B7FF04C08150904EAF4FBF4F7C0100 |
:10BA50008D01FDE015950795F794E794FA95D1F7D8 |
:10BA6000E0923E03F0923F030093400310934103A2 |
:10BA700060917E0270917F028FE0603A780750F506 |
:10BA80008091710390917203A0917303B09174033C |
:10BA90009C01AD01EAE05695479537952795EA95C3 |
:10BAA000D1F7821B930BA40BB50BA8019701F4E00F |
:10BAB000220F331F441F551FFA95D1F7820F931F92 |
:10BAC000A41FB51F8093710390937203A093730317 |
:10BAD000B093740360547F4118F580917103909185 |
:10BAE0007203A0917303B09174039C01AD01ECE06B |
:10BAF0005695479537952795EA95D1F7821B930B75 |
:10BB0000A40BB50BA801970172E0220F331F441F4D |
:10BB1000551F7A95D1F7820F931FA41FB51F29C017 |
:10BB200080913502909136028091350290913602D3 |
:10BB300097FF03C0909581959F4F843691050CF532 |
:10BB40008091710390917203A0917303B09174037B |
:10BB50009C01AD016EE056954795379527956A95FE |
:10BB6000D1F7821B930BA40BB50B8E0D9F1DA01F4D |
:10BB7000B11F8093710390937203A0937303B093EA |
:10BB800074038091710390917203A0917303B0913B |
:10BB900074031EE0B695A795979587951A95D1F7EA |
:10BBA00090939A02809399024091C005442399F0A2 |
:10BBB00055279C01BA010E94FB76C901861B970B91 |
:10BBC0009093700380936F03260F371F3093DE012D |
:10BBD0002093DD011FC01092700310926F038FEF4E |
:10BBE00093E09093DE018093DD0114C01092A702D0 |
:10BBF00010927103109272031092730310927403E7 |
:10BC000030939A022093990205C080917D02806C46 |
:10BC100080937D0220905C07222D3327220F331F53 |
:10BC2000220F331F285D3F4FA981BA812A173B0796 |
:10BC300014F03A83298330909507832D9927880F34 |
:10BC4000991F880F991F80559040E981FA818E17BE |
:10BC50009F0714F49A83898380916D02882321F4CD |
:10BC600080911A088F3FA1F080917E0290917F020F |
:10BC70000297C09768F4E980FA801E141F0444F408 |
:10BC800081E090E090937F0280937E023A83298343 |
:10BC900009811A811093660500936505809136032A |
:10BCA00090913703A0913803B0913903F2E0880FE7 |
:10BCB000991FAA1FBB1FFA95D1F700919607109103 |
:10BCC0009707081B190B29813A81213A31058CF01D |
:10BCD000C90137FD019695958795801791070CF45A |
:10BCE0008C01909581959F4F081719076CF48C0172 |
:10BCF0000BC00135110514F000E510E03FEF003BEB |
:10BD0000130714F400EB1FEF232D3327220F331FEB |
:10BD1000220F331FC90149815A81841B950B80175B |
:10BD200091070CF48C0169817A81621B730B0617F1 |
:10BD300017070CF48B018091570790915807609179 |
:10BD4000AF027091B002861B970B909366078093A9 |
:10BD50006507D09074072091CD023091CE024091BA |
:10BD6000CF025091D002DD2041F0661A770AC3015C |
:10BD7000AA2797FDA095BA2F04C0AA2797FDA095E2 |
:10BD8000BA2F280F391F4A1F5B1F2093CD02309313 |
:10BD9000CE024093CF025093D0028091CD02909179 |
:10BDA000CE02A091CF02B091D00281509A4FA04014 |
:10BDB000B04064F080E09AEFA0E0B0E08093CD0264 |
:10BDC0009093CE02A093CF02B093D0028091CD0287 |
:10BDD0009091CE02A091CF02B091D00280509640B7 |
:10BDE000AF4FBF4F64F480E096E0AFEFBFEF8093BA |
:10BDF000CD029093CE02A093CF02B093D002C09018 |
:10BE0000CF052091650730916607F8E0FC1598F0A2 |
:10BE10008C2D9927829F7001839FF00C929FF00CCC |
:10BE20001124C701F7FC07967C0163E0F594E794C1 |
:10BE30006A95E1F712C08C2D86959927829FA00103 |
:10BE4000839F500D929F500D1124CA0157FD0396F8 |
:10BE50007C01F594E794F594E794A090CF01B0901D |
:10BE6000D0019501442737FD4095542F8091CD0294 |
:10BE70009091CE02A091CF02B091D002BC01CD0131 |
:10BE80000E943077E20EF31E9090BB01692D772758 |
:10BE900088279927980117FF04C022273327201BE2 |
:10BEA000310B37FF02C02F5F3F4F35952795A98192 |
:10BEB000BA812A0F3B1F442737FD4095542F0E941B |
:10BEC000BC7697FF04C0615C7F4F8F4F9F4F26E089 |
:10BED00095958795779567952A95D1F79B016E156E |
:10BEE0007F050CF47B01309521953F4FE216F30658 |
:10BEF0000CF4790180914807909149076091AD0257 |
:10BF00007091AE02861B970B90934707809346076C |
:10BF10002091C9023091CA024091CB025091CC02CB |
:10BF2000DD2041F0461A570AC201AA2797FDA095C5 |
:10BF3000BA2F04C0AA2797FDA095BA2F280F391F42 |
:10BF40004A1F5B1F2093C9023093CA024093CB0261 |
:10BF50005093CC028091C9029091CA02A091CB0269 |
:10BF6000B091CC0281509A4FA040B04064F080E084 |
:10BF70009AEFA0E0B0E08093C9029093CA02A09328 |
:10BF8000CB02B093CC028091C9029091CA02A091D9 |
:10BF9000CB02B091CC0280509640AF4FBF4F64F4BB |
:10BFA00080E096E0AFEFBFEF8093C9029093CA02A2 |
:10BFB000A093CB02B093CC02209146073091470763 |
:10BFC00048E04C1598F08C2D9927829FB001839FF3 |
:10BFD000700D929F700D1124CB0177FD07966C01B7 |
:10BFE000B3E0D594C794BA95E1F712C0C6948C2DEE |
:10BFF0009927829FD001839FB00D929FB00D11248D |
:10C00000CD01B7FD03966C01D594C794D594C79420 |
:10C010009501442737FD4095542F8091C902909196 |
:10C02000CA02A091CB02B091CC02BC01CD010E940A |
:10C030003077C20ED31E692D77278827992798015C |
:10C0400017FF04C022273327201B310B37FF02C004 |
:10C050002F5F3F4F35952795E981FA812E0F3F1FBE |
:10C06000442737FD4095542F0E94BC7697FF04C0AB |
:10C07000615C7F4F8F4F9F4FE6E095958795779551 |
:10C080006795EA95D1F79B016C157D050CF46B0162 |
:10C09000309521953F4FC216D3060CF4690166E72F |
:10C0A000862E66E0962E5DE2A52E56E0B52E4BE07C |
:10C0B000542E35E7632E37E0732ED5012C911216DE |
:10C0C0000CF014C1203429F4E981FA81F88FEF8B48 |
:10C0D0001FC049815A81CA01AA2797FDA095BA2F8E |
:10C0E000332727FD3095432F532FBC01CD010E94EC |
:10C0F000BC7697FF04C0615C7F4F8F4F9F4F26E057 |
:10C1000095958795779567952A95D1F7788F6F8B59 |
:10C11000F5012181203439F42F89388D2E0D3F1DF2 |
:10C12000388F2F8B2AC0203C39F44F89588D4E19F7 |
:10C130005F09588F4F8B21C0C701AA2797FDA09593 |
:10C14000BA2F332727FD3095432F532FBC01CD0144 |
:10C150000E94BC7697FF04C0615C7F4F8F4F9F4F5A |
:10C16000B6E09595879577956795BA95D1F7AF899C |
:10C17000B88DA60FB71FB88FAF8BF5012281203481 |
:10C1800039F42F89388D2C0D3D1D388F2F8B2AC007 |
:10C19000203C39F44F89588D4C195D09588F4F8BCD |
:10C1A00021C0C601AA2797FDA095BA2F332727FDE6 |
:10C1B0003095432F532FBC01CD010E94BC7697FFD1 |
:10C1C00004C0615C7F4F8F4F9F4FA6E09595879588 |
:10C1D00077956795AA95D1F7AF89B88DA60FB71F48 |
:10C1E000B88FAF8BF5012381203439F42F89388D36 |
:10C1F000200F311F388F2F8B2AC0203C39F44F89F4 |
:10C20000588D401B510B588F4F8B21C0C801AA2756 |
:10C2100097FDA095BA2F332727FD3095432F532F35 |
:10C22000BC01CD010E94BC7697FF04C0615C7F4FCA |
:10C230008F4F9F4FF6E09595879577956795FA957F |
:10C24000D1F7AF89B88DA60FB71FB88FAF8BF301A9 |
:10C25000808191812F89388D8217930764F4B90109 |
:10C26000680F791F77FF02C06F5F7F4F75956795E5 |
:10C27000788F6F8B08C04F89588D440F551F481B0E |
:10C28000590B588F4F8B822D9927880F991F880F34 |
:10C29000991F6F89788D861797075CF4832D9927EE |
:10C2A000880F991F880F991FAF89B88DA817B907F4 |
:10C2B00014F0988F8F8B8F89988D97FD03969595A5 |
:10C2C000879595958795F4018183880F991F880F2D |
:10C2D000991F2F89388D281B390BC901880F82833C |
:10C2E000EF89F88DD301ED93FC9303C0F401118223 |
:10C2F00012825A9422E030E0620E731E44E050E055 |
:10C30000A40EB51E68E070E0860E971E57FED5CECF |
:10C31000E2E1C85E0C946777809183039091840377 |
:10C32000A0918503B091860380937B0390937C0357 |
:10C33000A0937D03B0937E0380917F03909180034F |
:10C34000A0918103B0918203809377039093780347 |
:10C35000A0937903B0937A03089510928E031092FC |
:10C360008D0310928C0310928B03089584B1806A20 |
:10C3700084B93D9A82E58CBD1DBC459A81E08093CD |
:10C38000A7078AEA8093B80783E88093B9078AE011 |
:10C390008093BA071092BC071092BB071092BE0799 |
:10C3A0001092BD07109212081092DA07089530918A |
:10C3B000A707332309F085C00DB407FE82C084E0CF |
:10C3C00080932302459A2EB580919203992781305C |
:10C3D000910589F0823091051CF4892B21F03EC033 |
:10C3E0000297B9F03BC03093D907209393032138CB |
:10C3F000A9F581E008C0253549F480919303820FA7 |
:10C400008093930382E08093920328C03093920339 |
:10C4100025C08091D907E82FFF27EB50F84F2083E4 |
:10C420008F5F8093D907909193038A31A0F02917E9 |
:10C4300069F48AE1A5EFB7E0EBEDF7E00D9001922A |
:10C440008A95E1F781E08093DA0702C03093DA073A |
:10C450001092920303C0920F909393032091B70719 |
:10C46000203208F028C045980000000000000000BD |
:10C4700000000000000000000000000000000000BC |
:10C4800000000000000000000000000000000000AC |
:10C490000000000000000000E091B007F091B1073B |
:10C4A000E20FF11D80818EBD8091D7079081890FA9 |
:10C4B0008093D70703C081E08093A7072F5F209365 |
:10C4C000B7070895EF92FF920F931F938091C805CD |
:10C4D0009927880F991F880F991F7C010027F7FC67 |
:10C4E0000095102F8091050390910603A0910703FA |
:10C4F000B0910803BC01CD01A80197010E943077DB |
:10C500003093BC072093BB078091FD029091FE02FF |
:10C51000A091FF02B0910003BC01CD01A8019701D9 |
:10C520000E9430773093BE072093BD0720919D076E |
:10C5300030919E0740919F075091A007DA01C901F1 |
:10C54000E3E0880F991FAA1FBB1FEA95D1F7820F5E |
:10C55000931FA41FB51F820F931FA41FB51F209107 |
:10C560009601309197014091980150919901BC0139 |
:10C57000CD010E9430773093C4072093C307809188 |
:10C580001603909117032091430230914402821BBD |
:10C59000930B9093CA078093C907E0910C03F09125 |
:10C5A0000D0380916C0790916D07BF010E94FB768F |
:10C5B000CB019B01220F331F220F331F280F391F7E |
:10C5C000280F391F37FF02C02D5F3F4F3595279544 |
:10C5D000359527953093C0072093BF078091990721 |
:10C5E00090919A07BF010E94FB769B01220F331F97 |
:10C5F000220F331F260F371F260F371F37FF02C0AA |
:10C600002D5F3F4F35952795359527953093C20778 |
:10C610002093C10710920D0310920C0310926D0726 |
:10C6200010926C0710929A07109299078091BA079E |
:10C6300099278D30910509F466C08E3091055CF420 |
:10C640008B30910509F48EC08C3091050CF00FC130 |
:10C650000A9761F0ADC18F30910509F481C18F3027 |
:10C6600091050CF45CC1409799F1A2C180919202AE |
:10C670008093CB07809191028093CC0780919002A8 |
:10C680008093CD0780918F028093CE0780918E0298 |
:10C690008093CF0780918D028093D00780918C0288 |
:10C6A0008093D10780918B028093D20780917D0285 |
:10C6B0008093D30780917D02837F80937D020E94C7 |
:10C6C000052E8093D407809109038093D50770C10C |
:10C6D00080911408909115089093CC078093CB0714 |
:10C6E00080911808909119089093CE078093CD07F8 |
:10C6F00080911E0190911F018093CF0780910001CE |
:10C700008093D00755C18091FC058093CB07809121 |
:10C71000FD058093CC078091FE058093CD07809125 |
:10C72000FF058093CE07809100068093CF0780910C |
:10C7300004068093D007809105068093D1078091ED |
:10C7400006068093D207809109068093D3078091D3 |
:10C7500007068093D407809108068093D5078091BF |
:10C760000A06DAC0F8948091AF05E82FFF27EE0F94 |
:10C77000FF1FE952F94F0190F081E02DE038F105FB |
:10C780001CF0EFE7F0E006C02FEFE138F20714F4F9 |
:10C79000E1E8FFEFE093CB078091B005E82FFF279A |
:10C7A000EE0FFF1FE952F94F0190F081E02DE038C4 |
:10C7B000F1051CF0EFE7F0E006C06FEFE138F60797 |
:10C7C00014F4E1E8FFEFE093CC078091AE05E82F89 |
:10C7D000FF27EE0FFF1FE952F94F0190F081E02D86 |
:10C7E000E038F1051CF0EFE7F0E006C08FEFE1382C |
:10C7F000F80714F4E1E8FFEFE093CD078091AD0571 |
:10C80000E82FFF27EE0FFF1FE952F94F0190F0814B |
:10C81000E02DE038F1051CF0EFE7F0E006C02FEF67 |
:10C82000E138F20714F4E1E8FFEF7894E093CE07E3 |
:10C830008091B2028093CF078091B3028093D0079A |
:10C840008091B4028093D1078091B5028093D20782 |
:10C850008091B6028093D3078091B7028093D4076A |
:10C860008091B8028093D5078091B90255C080911C |
:10C87000F003863018F01092F00385E08093CB0728 |
:10C8800080910B068093CC078091A3029091A40223 |
:10C89000A091A502B091A602BC01CD0125E030E037 |
:10C8A00040E050E00E9430773093CE072093CD07D0 |
:10C8B00080919F029091A002A091A102B091A2024A |
:10C8C000BC01CD0125E030E040E050E00E9430772F |
:10C8D0003093D0072093CF07809101068093D10732 |
:10C8E000809102068093D207809103068093D3073C |
:10C8F0008091B1028093D4078091D7069091D80699 |
:10C900008093D507809165059091660597FD039604 |
:10C9100095958795959587958093D60749C01092F0 |
:10C92000CB0782E58093CC071092CD0780E18093FE |
:10C93000CE07809102018093CF078091D503809329 |
:10C94000D0078091D6038093D1078091D70380933D |
:10C95000D2078091D8038093D3078091D90326C052 |
:10C960008091E1058093CB07809111068093CC07DD |
:10C970008091C1018093CD078091DA058093CE0725 |
:10C980008091DB058093CF078091DC058093D007F1 |
:10C990008091C0018093D1078091DE058093D207FA |
:10C9A0008091DF058093D3078091E0058093D407C1 |
:10C9B0008091DA07882309F4D8C08AEF8093E901CF |
:10C9C0004091DC075091DD07CA0181509E4F8F5F77 |
:10C9D0009340B0F42091DE073091DF07C901815008 |
:10C9E0009E4F8F5F934060F48091B90585FF08C02A |
:10C9F00050938E0340938D0330938C0320938B03CD |
:10CA00008091E2079091E30721E08936920724F4B0 |
:10CA10009093C4028093C3028091C3029091C40298 |
:10CA20002091C1023091C202821B930B845E9D4F04 |
:10CA300068E671E00E94FB76845B90409093C002B0 |
:10CA40008093BF022091E6073091E707809124028E |
:10CA5000909125028217930740F48091F003882378 |
:10CA600021F430932502209324028091DB0799273B |
:10CA70008836910549F18936910524F48736910568 |
:10CA800031F07BC08936910509F445C076C08091AC |
:10CA9000E80780930F088091E9078093110880913F |
:10CAA000EA07809310088091EB0780931208809129 |
:10CAB000EC07809313088091ED078093EA01809141 |
:10CAC000EE078093910359C08091E8078093B207E5 |
:10CAD0008091E9078093B3078091EA078093B407B8 |
:10CAE0008091EB078093B5078091EC078093B607A0 |
:10CAF000809155059091ED07892B80935505909174 |
:10CB0000EE0790938F038091560583709C70892B5C |
:10CB10008093560532C08091E8078093A8078091E2 |
:10CB2000E9078093A9078091EA078093AA0780917B |
:10CB3000EB078093AB078091EC079091ED07909302 |
:10CB4000AD078093AC078091EE079091EF0790932B |
:10CB5000AF078093AE078091F007992787FD9095E6 |
:10CB600090930A078093090708C010928E031092D1 |
:10CB70008D0310928C0310928B031F910F91FF90E5 |
:10CB8000EF9008958091A707882309F43BC045984A |
:10CB900088EB97E09093B1078093B0079091900352 |
:10CBA000E92FFF27E052FE4F9F5F90939003808113 |
:10CBB0008093BA07993010F0109290031092A70753 |
:10CBC0000E94626281E08093B707000000000000CD |
:10CBD0000000000000000000000000000000000055 |
:10CBE0000000000000000000000000000000000045 |
:10CBF000000000000000000000008091B807809352 |
:10CC0000D7078EBD089587B18C6087B94298439845 |
:10CC10001092950380E88093EC0110929403809326 |
:10CC2000EB01089580919A03815080939A038F3F7E |
:10CC300009F0FBC024E020939A0380917D0299279C |
:10CC400080739070892B21F48091D60380FF1CC0E3 |
:10CC50008091FA05882349F080919D03882311F47F |
:10CC60002093950381E080939D038091FB058823A9 |
:10CC7000B9F080919E03882319F484E08093940393 |
:10CC800081E080939E030CC010929D0310929E033E |
:10CC90008091F60580939B038091F80580939C0317 |
:10CCA00080919D03882309F040C080911006282FB1 |
:10CCB000332724FF07C08091A802882319F425FD9B |
:10CCC0004DC04EC09091F705983F50F080916E078F |
:10CCD0008D3D30F080919B0388230CF43FC040C011 |
:10CCE000983F48F080916E078A3028F480919B032A |
:10CCF0008823B4F133C080919503815080939503CC |
:10CD00008F3F79F580916E078150809395038091D4 |
:10CD1000EC01813011F480E801C086958093EC012C |
:10CD20008091EC0190919B0317C0809195038150F5 |
:10CD3000809395038F3FA9F489E0809395038091B8 |
:10CD4000EC01813011F480E801C086958093EC01FC |
:10CD50008091EC019091FA05892311F0429A01C06B |
:10CD6000429880919E03882309F043C08091100669 |
:10CD7000282F332724FF07C08091A802882319F4A5 |
:10CD800026FD50C034C09091F905983F50F0809135 |
:10CD900094078D3D30F080919C0388230CF442C0B1 |
:10CDA00026C0983F48F0809194078A3028F48091FB |
:10CDB0009C038823E4F036C08091940381508093D3 |
:10CDC00094038F3F91F58091940781508093940351 |
:10CDD0008091EB01813011F480E801C08695809349 |
:10CDE000EB018091EB0190919C038923D9F4439846 |
:10CDF0000895809194038150809394038F3FA9F408 |
:10CE000089E0809394038091EB01813011F480E8F4 |
:10CE100001C086958093EB018091EB019091FB0519 |
:10CE2000892311F0439A0895439808954FB724E158 |
:10CE300030E0F8948091C9008F778093C900809189 |
:10CE4000C9008F7B8093C9008091C9008F7D80933A |
:10CE5000C9005A9A52985B9A539A832F99278093C4 |
:10CE6000CD002093CC008091C80082608093C800E0 |
:10CE700080E18093C9008091CA008F778093CA00B7 |
:10CE80008091CA008F7B8093CA008091CA008F7DF9 |
:10CE90008093CA008091CA008F7E8093CA008091DF |
:10CEA000CA00877F8093CA008091C9008B7F8093DE |
:10CEB000C9008091CA0084608093CA008091CA0032 |
:10CEC00082608093CA008091C80087FF03C0809170 |
:10CED000CE00F9CF8091C90080688093C9004FBF10 |
:10CEE0000895EF92FF920F931F93CF93DF93482FF4 |
:10CEF00000E010E08091ED01813061F41092ED01CD |
:10CF000084E480939F031092A1031092A0031092D7 |
:10CF1000A2032BC180919F03882319F421E030E004 |
:10CF200001C098019091A003992371F4232B11F073 |
:10CF300081E010C084E480939F039093A1039093B9 |
:10CF4000A0039093A203FAC0913069F4232B09F057 |
:10CF5000EBC082E08093A0038091A1038F5F809358 |
:10CF6000A10383E0E9C09230D1F4232B09F0DCC0A7 |
:10CF700083E080939F034093A2039091A10392309A |
:10CF800039F41092A30347FF03C081E08093A30309 |
:10CF900083E08093A0039F5F9093A103CFC0933061 |
:10CFA00009F0C2C0232B09F0BFC090939F0382E019 |
:10CFB0008093A0038091A1038F5F8093A1032091B0 |
:10CFC000A203822F9927782F6627842F9927682B11 |
:10CFD000792B8091D305813049F47370CB01805057 |
:10CFE000924063E070E00E94FB7617C0823061F4EB |
:10CFF0007770CB018050944066E070E00E94FB7631 |
:10D000002695269526950BC0737068567140CB0106 |
:10D0100077FD0196BC017595679526952695022F9B |
:10D0200011270F7010700F5F1F4F0D30110508F0A2 |
:10D0300074C07801E00EF11EF701E952F94F8081CA |
:10D0400091819B01281B390BC90137FF03C09095C3 |
:10D0500081959F4F069794F48091B102883C30F4FB |
:10D060008091B102865F8093B10208C088EC809302 |
:10D07000B10280916F008F7D80936F00F701E952BC |
:10D08000F94F808191819C01220F331F280F391F96 |
:10D09000260F371F37FF02C02D5F3F4FE901D5959F |
:10D0A000C795D595C795CB0101968C179D0714F4AC |
:10D0B000219706C061507040C617D7070CF421961F |
:10D0C0008091B102843BD0F0F701E952F94F8081A1 |
:10D0D0009181FE01E81BF90BCF0163E070E00E9433 |
:10D0E000FB76CB01880F991F860F971F2BE037E047 |
:10D0F000E20EF31EF7019183808307C02BE037E037 |
:10D10000E20EF31EF70111821082000F111F095267 |
:10D11000194FF801D183C08311C00231110570F09D |
:10D1200081E08093ED010AC081E08093ED011092CF |
:10D13000A1031092A30384E480939F038091A10331 |
:10D14000803198F08091A303882331F48091ED0120 |
:10D15000882311F4809394011092A1031092A303E9 |
:10D160001092A00384E480939F03E6E0CDB7DEB77E |
:10D170000C947377CF93FC0197FF05C0CFEFF09528 |
:10D18000E195FF4F01C0C1E028E631E0CF01B901D0 |
:10D190000E94FB76FC018B35910554F08B55904035 |
:10D1A0008A35910538F484EB90E08E1B9F0BFC01CF |
:10D1B00041E00DC0CF01855B90408A35910518F4A0 |
:10D1C000E45BF04003C02E1B3F0BF9014FEFEE0F65 |
:10D1D000FF1FE15DF54F259134918C2F992787FD35 |
:10D1E0009095289FB001299F700D389F700D1124D4 |
:10D1F000842F992787FD9095689FA001699F500D06 |
:10D20000789F500D1124CA01CF9108952AE530E08E |
:10D21000281B390BC9010E94BA680895CF93DF9388 |
:10D2200080E00E94716E80911E0190911F016AE062 |
:10D2300070E00E94FB769F938F9380911E019091E6 |
:10D240001F016AE070E00E94FB767F936F938DEF81 |
:10D250009AE09F938F93C4E6DEE6DF93CF93E0914D |
:10D26000BC03F091BD0309952DB73EB7285F3F4F32 |
:10D270002DBF8091E9018823B9F186E00E94716E8B |
:10D280008091AC079091AD076AE070E00E94E7766C |
:10D290007F936F938FED90E09F938F9380919D0785 |
:10D2A00090919E07A0919F07B091A00720919601B1 |
:10D2B000309197014091980150919901BC01CD01A5 |
:10D2C0000E9430773F932F9386E09BE09F938F934C |
:10D2D000DF93CF93E091BC03F091BD0309958DB727 |
:10D2E0009EB70A968DBF12C086E00E94716E82E1E1 |
:10D2F0009BE09F938F93DF93CF93E091BC03F091DA |
:10D30000BD0309950F900F900F900F9080918F03A0 |
:10D310008823C1F086E00E94716E80918F03992767 |
:10D320009F938F9389E19BE09F938F93DF93CF939C |
:10D33000E091BC03F091BD0309952DB73EB72A5F7C |
:10D340003F4F2DBF80E10E94716E8091F30190915B |
:10D35000F4016CE370E00E94E7769F938F938091D5 |
:10D36000F3019091F4016CE370E00E94E7767F9303 |
:10D370006F9380911808909119089F938F9384E27E |
:10D380009BE09F938F93C4E6DEE6DF93CF93E0911B |
:10D39000BC03F091BD0309958091B9052DB73EB747 |
:10D3A000265F3F4F2DBF80FF29C08AE10E94716E2A |
:10D3B0008091950199279F938F938091A3029091DB |
:10D3C000A402A091A502B091A602BC01CD0124E661 |
:10D3D00030E040E050E00E9430773F932F9381E3AC |
:10D3E0009BE09F938F93DF93CF93E091BC03F091E9 |
:10D3F000BD0309958DB79EB708968DBFDF91CF917C |
:10D400000895CF93DF9380E00E94716E809195061E |
:10D41000992787FD90959F938F9380918D069927EB |
:10D4200087FD90959F938F9380918506992787FD1F |
:10D4300090959F938F9380917D06992787FD909576 |
:10D440009F938F9388E39BE09F938F93C4E6DEE6E0 |
:10D45000DF93CF93E091BC03F091BD03099580E188 |
:10D460000E94716E2DB73EB7245F3F4F2DBF809154 |
:10D47000B506992787FD90959F938F938091AD0670 |
:10D48000992787FD90959F938F938091A506992763 |
:10D4900087FD90959F938F9380919D06992787FD97 |
:10D4A00090959F938F9388E49BE09F938F93DF9356 |
:10D4B000CF93E091BC03F091BD0309958091AB053A |
:10D4C0002DB73EB7245F3F4F2DBF853098F480E1E4 |
:10D4D0000E94716E88E59BE09F938F93DF93CF93BB |
:10D4E000E091BC03F091BD0309950F900F900F9050 |
:10D4F0000F9018C08730B0F488E10E94716E8FEDF4 |
:10D5000090E09F938F9389E69BE09F938F93DF93A7 |
:10D51000CF93E091BC03F091BD0309958DB79EB701 |
:10D5200006968DBFDF91CF9108950F931F9380E0F2 |
:10D530000E94716E2AE030E08091140890911508E5 |
:10D54000B9010E94E7769F938F9380911408909180 |
:10D550001508B9010E94E7767F936F9380911E01B1 |
:10D5600090911F01B9010E94FB769F938F93809148 |
:10D570001E0190911F01B9010E94FB767F936F936A |
:10D5800082E79BE09F938F9304E61EE61F930F9321 |
:10D59000E091BC03F091BD03099580E10E94716E9A |
:10D5A0008DB79EB70C968DBF809118089091190881 |
:10D5B0009F938F9380911608909117089F938F9354 |
:10D5C00085E89BE09F938F931F930F93E091BC039B |
:10D5D000F091BD0309958DB79EB708968DBF1F9139 |
:10D5E0000F9108950F931F93CF93DF938091E901DB |
:10D5F000C4E6DEE6882309F478C080E00E94716EFC |
:10D600008091A90799279F938F938091AB079927C2 |
:10D610009F938F9381E99BE09F938F938E01DF937C |
:10D62000CF93E091BC03F091BD0309958DB79EB7F0 |
:10D6300008968DBF8091AA07833031F48CE00E9458 |
:10D64000716E80EA9BE005C08CE00E94716E85EAF5 |
:10D650009BE09F938F93DF93CF93E091BC03F09176 |
:10D66000BD0309950F900F900F900F908091A80720 |
:10D6700081FF12C08CE00E94716E8AEA9BE09F934A |
:10D680008F931F930F93E091BC03F091BD03099515 |
:10D690000F900F900F900F9080E10E94716E8FEDB0 |
:10D6A00090E09F938F938091AE079091AF079F93E7 |
:10D6B0008F938091AC079091AD076AE070E00E9473 |
:10D6C000E7767F936F938FEA9BE09F938F9384E637 |
:10D6D0009EE69F938F93E091BC03F091BD03099563 |
:10D6E0008DB79EB70A968DBF12C082E00E94716E00 |
:10D6F0008FEB9BE09F938F93DF93CF93E091BC03DD |
:10D70000F091BD0309950F900F900F900F90DF914E |
:10D71000CF911F910F910895CF93C82F2091A4030B |
:10D720002093A50399278F32910509F18033910544 |
:10D730001CF44F97A1F02CC08F34910501F18F3864 |
:10D74000910531F5222319F481E090E038C086E09C |
:10D75000289FF0011124EB51F54F849117C086E00A |
:10D76000289FF0011124EA51F54F84910FC086E003 |
:10D77000289FF0011124E951F54F849107C086E0FC |
:10D78000289FF0011124E851F54F84918093A40360 |
:10D790009091A4038091A5039813C0E00E94776E36 |
:10D7A0009091A40386E0989FF0011124E751F54F72 |
:10D7B000259134918C2FF901099580E090E0CF916B |
:10D7C00008951092150810921408109219081092DA |
:10D7D0001808109217081092160810921A088AE07A |
:10D7E00090E00E941C179093A7038093A6030895CE |
:10D7F000CF93DF938091A6039091A7030E942517F2 |
:10D80000882309F4AFC08091A6039091A7030A96DC |
:10D810009093A7038093A603E0E0F0E09F0190E0DF |
:10D820005FEFA6E7B6E04BE0ED018B8187FF0BC011 |
:10D830009F5F8D81E80FF11D8981280F311D8E8139 |
:10D84000851708F4582F4150189647FFEDCF509395 |
:10D850001A08232B41F52091AC033091AD03409180 |
:10D86000AE035091AF03BB27A52F942F832F909326 |
:10D87000AB038093AA03AA27BB27281B390B4A0BAB |
:10D880005B0BCF01AA27BB27280F391F4A1F5B1F3D |
:10D890002093AC033093AD034093AE035093AF039A |
:10D8A000E5E0F0E013C02091AA033091AB032E17FE |
:10D8B0003F0718F4E21BF30B02C0E0E0F0E0892F11 |
:10D8C0009927880F991FE80FF91F3596F0931508CF |
:10D8D000E0931408EF3FF10578F480911E019091D8 |
:10D8E0001F018E9F90018F9F300D9E9F300D112440 |
:10D8F000C90164E670E013C0CF01969587959695AF |
:10D90000879520911E0130911F01289FA001299F1A |
:10D91000500D389F500D1124CA0169E170E00E943A |
:10D92000E77670931708609316082091A80330914A |
:10D93000A9032E0F3F1F3093A9032093A8035EE095 |
:10D940002131350778F080911808909119080196D7 |
:10D95000909319088093180820513E403093A903F2 |
:10D960002093A803DF91CF9108954FB720E430E0D2 |
:10D97000F8948091C9008F778093C9008091C90085 |
:10D980008F7B8093C9008091C9008F7D8093C900EF |
:10D990005A9A52985B9A539A832F99278093CD0075 |
:10D9A0002093CC008091C80082608093C80088E1F9 |
:10D9B0008093C9008091CA008F778093CA008091BC |
:10D9C000CA008F7B8093CA008091CA008F7D8093AC |
:10D9D000CA008091CA008F7E8093CA008091CA00DD |
:10D9E000877F8093CA008091C9008B7F8093C90094 |
:10D9F0008091CA0084608093CA008091CA008260CE |
:10DA00008093CA008091C80087FF03C08091CE0038 |
:10DA1000F9CF8091C90080688093C9004FBF0895F5 |
:10DA20000F931F93CF93DF93482F4F5F893108F0F7 |
:10DA30008BC08091D606841720F44F5F4093D606A2 |
:10DA40004150CB0183539B4268E170E00E94FB761A |
:10DA5000A42FBB27FD01EA0FFB1FE952F94F80817C |
:10DA600091819B01281B390BC90137FF03C0909599 |
:10DA700081959F4F069794F48091B102883C30F4D1 |
:10DA80008091B102865F8093B10208C088EC8093D8 |
:10DA9000B10280916F008F7D80936F00FD01EA0FCE |
:10DAA000FB1FE952F94F808191819C01220F331FA6 |
:10DAB000280F391F260F371F37FF02C02D5F3F4F3A |
:10DAC000E901D595C795D595C795CB0101968C17DA |
:10DAD0009D0714F4219706C061507040C617D70700 |
:10DAE0000CF421968091B102843BD8F08D010A0F8D |
:10DAF0001B1FF801E952F94F80819181FE01E81B5B |
:10DB0000F90BCF0163E070E00E94FB76CB01880F38 |
:10DB1000991F860F971F055F184FF8019183808327 |
:10DB200007C0AA0FBB1FA55FB84F11961C921E928B |
:10DB3000E42FFF27EE0FFF1FE952F94FD183C08377 |
:10DB4000443011F410929401DF91CF911F910F9105 |
:10DB50000895CF93DF9320911B08822F9927807F10 |
:10DB60009070409709F06CC02F3109F046C0809149 |
:10DB70001C088093B40320911E082093B603809163 |
:10DB80001F088093B503822F99279093D80680931E |
:10DB9000D706222309F054C08091AD05282F3327E2 |
:10DBA000220F331FF901E55FF84F11821082809137 |
:10DBB000AE05A82FBB27AA0FBB1FFD01E55FF84FDD |
:10DBC000118210828091B005E82FFF27EE0FFF1F12 |
:10DBD000CF01855F984FEC01198218822952394F85 |
:10DBE000E90119821882A952B94F11961C921E920E |
:10DBF000E952F94F1182108223C0C22FCF70CA3070 |
:10DC0000F8F480911C088093450880911D0880934A |
:10DC1000440880911E088093470880911F088093D4 |
:10DC2000460860914408709145088C2F0E94106D41 |
:10DC300060914608709147088C2F8F5F0E94106D8D |
:10DC4000DF91CF910895CF93C82F8F3F49F48091F2 |
:10DC5000B7038F3F29F41092B9031092B80332C072 |
:10DC60002091B903222339F4CF3111F485E001C0AA |
:10DC700084E08093BA038091BA039091B80382172D |
:10DC8000A0F4892F80958093B8038F3F19F48EEF0D |
:10DC90008093B8038091B803C81711F40E94A96D4E |
:10DCA0001092B9031092B8030BC0E22FFF27E55E74 |
:10DCB000F74FC0832F5F2093B9039C0F9093B80355 |
:10DCC000C093B703CF9108959091B303933240F47A |
:10DCD000E92FFF27EF5DF74F80839F5F9093B3039A |
:10DCE0000895833218F48D5F8093B303089590E212 |
:10DCF000E4E2F8E08FE19193815087FFFCCF089533 |
:10DD0000CF93CFB723E031E0F8948091C9008F77AB |
:10DD10008093C9008091C9008F7B8093C900809156 |
:10DD2000C9008F7D8093C9005A9A52985B9A539A82 |
:10DD3000832F99278093CD002093CC008091C80039 |
:10DD400082608093C80088E18093C9008091CA00F6 |
:10DD50008F778093CA008091CA008F7B8093CA001E |
:10DD60008091CA0080628093CA008091CA0080615D |
:10DD70008093CA008091CA0088608093CA00809115 |
:10DD8000C90084608093C9008091CA008460809338 |
:10DD9000CA008091CA0082608093CA008091C80046 |
:10DDA00087FF03C08091CE00F9CF8091C9008068C1 |
:10DDB0008093C9008091C90080648093C9000E944B |
:10DDC000776ECFBFCF910895282F99278F709070CD |
:10DDD000892B31F420958091B203822B8093B2037A |
:10DDE00008958091F001882309F441C080917D025B |
:10DDF00085FF0AC082E98093210883E2809322088C |
:10DE000085E58093230802C0109221088091F101DA |
:10DE10008F3071F48091B2030E948C6B882341F0A3 |
:10DE200081E9809321088093220881E3809323086D |
:10DE30001092F0018091C80085FFFCCF8091C9004D |
:10DE40008F7E8093C9008091C9008E7F8093C90026 |
:10DE500080912108882311F48EEF01C08EE7809312 |
:10DE6000CE008091B2038093F1011092B203089525 |
:10DE70001F920F920FB60F9211248F939F93EF93DF |
:10DE8000FF939091F001992309F040C08091BB036A |
:10DE9000882361F480912108882311F483E003C072 |
:10DEA000813999F481E08093BB030FC0833099F4EA |
:10DEB00080912108882349F0909321088091C9001E |
:10DEC0008E7F8093C9008EEF1EC08091C900816053 |
:10DED0008093C9000EC0833261F48091C9008E7FA7 |
:10DEE0008093C9008FEF8093CE0081E08093F00192 |
:10DEF00014C08091BB03E82FFF27EF5DF74F8F5FC2 |
:10DF00008093BB0380818093CE0007C01092BB0337 |
:10DF10008091C90080618093C900FF91EF919F912A |
:10DF20008F910F900FBE0F901F901895EF92FF9258 |
:10DF30000F931F93CF93DF937C018B01EA01452B55 |
:10DF400039F0F80181918F01F70109952197C9F7FF |
:10DF5000E6E0CDB7DEB70C947377EF92FF920F93A4 |
:10DF60001F93CF93DF937C018B01EA01452B41F096 |
:10DF7000F8010F5F1F4F8491F70109952197C1F7B1 |
:10DF8000E6E0CDB7DEB70C9473770F931F93CF9372 |
:10DF90008C01C62F161634F480E2F8010995C150A1 |
:10DFA0001C16D4F3CF911F910F9108950F931F93D7 |
:10DFB000CF938C01C62F161634F480E3F80109952F |
:10DFC000C1501C16D4F3CF911F910F910895A5E372 |
:10DFD000B0E0EDEEFFE60C944B772E96EEADFFAD84 |
:10DFE0002E978824992454018091B103882321F429 |
:10DFF0002C961FAE1EAE2C975EE4452E512C4C0E77 |
:10E000005D1E6F01B60105C0153239F00894C11CC0 |
:10E01000D11CF60114911123B9F7A601461B570B29 |
:10E0200031F02C968EAD9FAD2C970E94AD6F1123D1 |
:10E0300009F46AC20894C11CD11CFF24FDA6FCA6E9 |
:10E040004FEFE42EF9A6F6010894C11CD11C1491DF |
:10E05000153721F0812F80628837B1F4F0FE0AC0B5 |
:10E06000F20124E030E0420E531E80809180A280B5 |
:10E07000B3800AC0F20142E050E0440E551E808198 |
:10E0800091814C01AA24BB24103221F489A5882354 |
:10E09000D1F61DC0133219F458E0F52AD4CF1A3244 |
:10E0A00011F01D3291F41A3259F4F20182E090E03D |
:10E0B000480E591EE081ECA7EE232CF6E195ECA763 |
:10E0C00090E1F92AAFEDFA22BECF1B3211F419A765 |
:10E0D000BACF1E32C1F5F6010894C11CD11C1491AF |
:10E0E0001A3279F4F20122E030E0420E531E4081F0 |
:10E0F00051813FEF4F3F530714F44FEF5FEFE42E92 |
:10E10000A2CF40E050E0812F80538A30A0F4CA01B2 |
:10E1100033E0880F991F3A95E1F7840F951F480F58 |
:10E12000591F410F511D40535040F6010894C11C26 |
:10E13000D11C1491E8CF8FEF4F3F580714F44FEFE5 |
:10E140005FEFE42E85CF103329F4F4FC7CCF90E20E |
:10E15000F92A79CF812F81538930D8F440E050E0FB |
:10E16000CA0123E0880F991F2A95E1F7840F951FB4 |
:10E17000480F591F410F511D40535040F60108945C |
:10E18000C11CD11C1491812F80538A3048F34CA7B5 |
:10E190005FCF183619F4A4E0FA2A55CF1C3619F4CB |
:10E1A000B1E0FB2A50CF133661F43E010894611CA4 |
:10E1B000711CF20122E030E0420E531E80818983FF |
:10E1C0003CC1143421F0143611F0193651F51434D1 |
:10E1D00011F431E0F32AF0FE0AC0F20144E050E00D |
:10E1E000440E551E80809180A280B3800CC0F20145 |
:10E1F00082E090E0480E591E808191814C01AA2452 |
:10E2000097FCA094BA2CB7FE0AC0B094A094909446 |
:10E210008094811C911CA11CB11C8DE289A70AE08D |
:10E220006FC01F3411F01F3631F41F3411F491E028 |
:10E23000F92A08E064C0103779F4F201A2E0B0E0F6 |
:10E240004A0E5B1E808191814C01AA24BB2400E10F |
:10E25000B0E4FB2A18E753C01337C1F5F20122E0FE |
:10E2600030E0420E531E608071806114710489F4A5 |
:10E270003E010894611C711C88E289838EE6F301DB |
:10E28000818385E78B838CE68C838D8389E28E8303 |
:10E290001F82E7FC13C08E2D992787FD9095AC0156 |
:10E2A00060E070E0C3010E941875009729F0382ED5 |
:10E2B0003618E3140CF0C3C03E2CC1C0F30101902A |
:10E2C0000020E9F731973E2E3618B9C0153511F008 |
:10E2D000153731F4153511F4F1E0FF2A0AE00FC0CB |
:10E2E000183519F0183709F0A0C000E1F3FE07C097 |
:10E2F00081149104A104B10411F020E4F22A19A6BA |
:10E30000EDA6E7FC02C03FEDF32289E2682E712CF6 |
:10E310006C0E7D1E81149104A104B10421F44DA55D |
:10E32000442309F47BC0802F9927AA27BB278EA7F7 |
:10E330009FA7A8ABB9AB202E332490E0891690E0BC |
:10E34000990691E0A90690E0B90648F0C501B4012C |
:10E350002EA53FA548A959A90E940E7717C0AFEF77 |
:10E360008A169104A104B10449F040F0C401B1013E |
:10E370000E94E7769B014427552708C0882D602F0F |
:10E380000E94DB76282F3327442755272AAB3BAB47 |
:10E390004CAB5DAB0A3059F48AA9880F880F880FFF |
:10E3A0009AA9990F890F382D381B832F10C000317F |
:10E3B00039F48AA98295807F482D481B842F07C095 |
:10E3C0008AA9880F880F880F582D581B852F90E039 |
:10E3D0002EA53FA548A959A982169306A406B506FD |
:10E3E00008F091E08AA89BA8ACA8BDA88A3010F4D8 |
:10E3F000805D04C0895A183509F48F7DD3018E934E |
:10E400003D01992309F099CF083041F4F3FE06C08D |
:10E41000803321F080E3FD0182933F01CE0101961C |
:10E42000382E3618F8E23F0E0BC0112309F46CC0E9 |
:10E430003E010894611C711C1983B1E03B2E19A6A2 |
:10E44000032D2DA4231827FC222489A5882311F04D |
:10E450000F5F02C0F6FC0E5F020DEF2CFF24C70118 |
:10E4600080739070892B49F48CA5801B682F2C96A3 |
:10E470008EAD9FAD2C970E94C56F89A5882331F082 |
:10E4800041E050E0BE01675D7F4F0AC0E6FE0EC06E |
:10E4900080E38AA71BA742E050E0BE01665D7F4F84 |
:10E4A0002C968EAD9FAD2C970E94966FC7018073FE |
:10E4B0009070809749F48CA5801B682F2C968EADA8 |
:10E4C0009FAD2C970E94D66F622D2C968EAD9FAD7E |
:10E4D0002C970E94D66F832D992787FD9095AC01CC |
:10E4E000B3012C968EAD9FAD2C970E94966FE4FEE3 |
:10E4F00089CD2CA5201B2CA7622F2C968EAD9FAD0D |
:10E500002C970E94C56F7ECDE2E1CB5C0C946777BF |
:10E510002FB740E0F894E0E0F0E081E2809357000C |
:10E520009491E2E0F0E0809357003491E4E0F0E071 |
:10E530008093570084912FBF9E3199F4363941F46E |
:10E54000893011F441E00DC08A3059F442E009C02D |
:10E55000373939F4863011F443E003C0853009F4CB |
:10E5600044E0842F992708959FB7F8948091C900BB |
:10E57000877F8093C9008091C9008F7E8093C900F6 |
:10E580008091C9008F778093C9008091C9008F7BEB |
:10E590008093C9008091C9008F7D8093C9005298F3 |
:10E5A0005A9A53985B9A9FBF08951F93CF93DF9316 |
:10E5B000182F8091B103882309F48DC08091EF0159 |
:10E5C000181709F488C08091B003882321F40E94B1 |
:10E5D00088728093B00388EB9CE09F938F93C6EF83 |
:10E5E000D2E1DF93CF93E091BC03F091BD03099595 |
:10E5F0000F900F900F900F90812F992782309105E7 |
:10E6000001F1833091052CF4009761F0019769F0D6 |
:10E6100024C084309105D9F084309105ACF0059781 |
:10E62000C9F01BC088EA9CE002C086E99CE09F9389 |
:10E630008F93DF93CF93E091BC03F091BD030995D5 |
:10E6400018C08DE79CE0F3CF8AE59CE0F0CF8CE426 |
:10E650009CE0EDCF84E49CE0EACF85EC9CE09F93C6 |
:10E660008F93DF93CF93E091BC03F091BD030995A5 |
:10E6700010E00F900F900F900F908091B0038430B6 |
:10E6800011F0823099F40E94B472812F815083304E |
:10E6900018F40E9416671DC0143019F40E94806E91 |
:10E6A00018C01530B1F40E94B56C13C0112389F065 |
:10E6B0008BED9CE09F938F9386EF92E19F938F93D6 |
:10E6C000E091BC03F091BD0309950F900F900F905E |
:10E6D0000F901093EF01DF91CF911F9108950F9349 |
:10E6E0001F9381E08093B1034091EE01E4EFFBE0E2 |
:10E6F00020E030E05FE4849199272F5F3F4F829FB5 |
:10E70000B001839F700D929F700D112446275150C8 |
:10E71000319657FFF0CF4093EE01ECECFBE020E0A8 |
:10E7200030E057E2849199272F5F3F4F829FB001DD |
:10E73000839F700D929F700D112446275150319682 |
:10E7400057FFF0CF4093EE018091B003882321F46E |
:10E750000E9488728093B0038091EE01833459F057 |
:10E7600088E190E029E20FB6F894A89580936000C4 |
:10E770000FBE2093600087EE9FE69093BD038093C9 |
:10E78000BC0386EF9CE09F938F9306EF12E11F93EB |
:10E790000F93E091BC03F091BD0309950F900F908A |
:10E7A0000F900F9081E690E09F938F9382E590E029 |
:10E7B0009F938F931F921F92809102016AE00E94A3 |
:10E7C000DB76892F99279F938F93809102010E9476 |
:10E7D000DB7699279F938F938CE19DE09F938F9396 |
:10E7E0001F930F93E091BC03F091BD03099584EF53 |
:10E7F0009BE09F938F931F930F93E091BC03F09145 |
:10E80000BD0309958CEC9BE09F938F931F930F930F |
:10E81000E091BC03F091BD0309958DB79EB7469674 |
:10E820008DBF80E59DE09F938F931F930F93E091A1 |
:10E83000BC03F091BD03099582EC80938100809127 |
:10E840006F00806280936F000F900F900F900F9079 |
:10E850001F910F9108958091B103882361F08091F9 |
:10E86000EF01843011F40E94F16E8091EE01833447 |
:10E8700011F01092B10308951F920F920FB60F92EC |
:10E8800011242F933F934F935F936F937F938F93B5 |
:10E890009F93AF93BF93EF93FF932091CE0080910E |
:10E8A000FA018823B1F02093C6008091FA018230EA |
:10E8B00029F52F3F19F58FEF94E3ACE0B0E0C29754 |
:10E8C000A109B109B7FFFBCF8091FF038093CE0070 |
:10E8D00015C09091EF01892F8150833020F4822F51 |
:10E8E0000E9471670BC0943021F4822F0E94E46E65 |
:10E8F00005C0953019F4822F0E94236EFF91EF918D |
:10E90000BF91AF919F918F917F916F915F914F9147 |
:10E910003F912F910F900FBE0F901F9018950024DC |
:10E9200022273327442751E0BB27EE27FF27A0E10A |
:10E93000660F771F881F991F001C221F331F441F5B |
:10E94000660F771F881F991F001C221F331F441F4B |
:10E950002AF4050E2B1F3E1F4F1F04C0051A2B0B58 |
:10E960003E0B4F0B550FBB1FEE1F587F556047FDE9 |
:10E970005250AA95E9F6E695B7955795E695B7955D |
:10E980005795852F9B2F08952227332741E0552740 |
:10E9900068E0880F991F221F331F880F991F221FBD |
:10E9A000331F1AF4240F351F02C0241B350B440FEC |
:10E9B000551F487F456037FD42506A9551F756957F |
:10E9C000479556954795842F0895AA2797FF04C029 |
:10E9D000809590958A1F9A1F77FF04C06095709567 |
:10E9E0006A1F7A1F669F9001779FA001679F300D75 |
:10E9F000411D5A1F300D411D5A1F889FF001999FDC |
:10EA00002E0F3F1F401D511D899F300D411D5A1F64 |
:10EA1000300D411D5A1FCA01B901112480CFFB01DD |
:10EA2000DC0102C005900D9241505040D8F7089586 |
:10EA3000FC014150504030F001900616D1F731975B |
:10EA4000CF010895882799270895A0E0B0E0EBE270 |
:10EA5000F5E70C9453776C017B01EA01590121978A |
:10EA60008FEFCF3FD80789F086010894C11CD11CD5 |
:10EA7000C7010894E11CF11CF5010995F801808398 |
:10EA80002197FFEFCF3FDF0779F7EAE0CDB7DEB799 |
:10EA90000C946F77CF92DF92EF92FF920F931F93B8 |
:10EAA0007C016B01FB010995082FC7010196F60156 |
:10EAB0000995182FC8011F910F91FF90EF90DF90DB |
:10EAC000CF900895A0E0B0E0E8E6F5E70C94557724 |
:10EAD0008C017B01EA01690121978FEFCF3FD807B5 |
:10EAE00071F0F70121917F01C8010F5F1F4F622F65 |
:10EAF000F60109952197FFEFCF3FDF0791F7E8E097 |
:10EB0000CDB7DEB70C947177CF92DF92EF92FF9280 |
:10EB10000F931F936C018B017A01FA010995812FE4 |
:10EB20009927682FC6010196F70109951F910F914A |
:10EB3000FF90EF90DF90CF9008955058BB27AA2701 |
:10EB40000ED0E0C0D1D030F0D6D020F031F49F3FCD |
:10EB500011F41EF4C6C00EF4E095E7FBBCC0E92F2B |
:10EB6000E2D080F3BA17620773078407950718F09D |
:10EB700071F49EF5FAC00EF4E0950B2EBA2FA02D7D |
:10EB80000B01B90190010C01CA01A0011124FF275A |
:10EB9000591B99F0593F50F4503E68F11A16F04055 |
:10EBA000A22F232F342F4427585FF3CF4695379554 |
:10EBB0002795A795F0405395C9F77EF41F16BA0B19 |
:10EBC000620B730B840BBAF09150A1F0FF0FBB1FC7 |
:10EBD000661F771F881FC2F70EC0BA0F621F731F10 |
:10EBE000841F48F4879577956795B795F7959E3F6D |
:10EBF00008F0B3CF9395880F08F09927EE0F9795FB |
:10EC00008795089598D088F09F5790F0B92F99274D |
:10EC1000B751A0F0D1F0660F771F881F991F1AF027 |
:10EC2000BA95C9F712C0B13081F09FD0B1E0089514 |
:10EC30009CC0672F782F8827B85F39F0B93FCCF395 |
:10EC4000869577956795B395D9F73EF4909580951D |
:10EC5000709561957F4F8F4F9F4F0895E89409C03D |
:10EC600097FB3EF490958095709561957F4F8F4FFF |
:10EC70009F4F9923A9F0F92F96E9BB279395F69515 |
:10EC8000879577956795B795F111F8CFFAF4BB0F93 |
:10EC900011F460FF1BC06F5F7F4F8F4F9F4F16C0F7 |
:10ECA000882311F096E911C0772321F09EE8872F81 |
:10ECB000762F05C0662371F096E8862F70E060E03D |
:10ECC0002AF09A95660F771F881FDAF7880F9695B6 |
:10ECD000879597F9089597F99F6780E870E060E05D |
:10ECE00008959FEF80EC089500240A9416161706E5 |
:10ECF00018060906089500240A941216130614062D |
:10ED000005060895092E0394000C11F4882352F08F |
:10ED1000BB0F40F4BF2B11F460FF04C06F5F7F4F47 |
:10ED20008F4F9F4F089557FD9058440F551F59F02E |
:10ED30005F3F71F04795880F97FB991F61F09F3FE8 |
:10ED400079F087950895121613061406551FF2CF11 |
:10ED50004695F1DF08C0161617061806991FF1CF61 |
:10ED600086957105610508940895E894BB27662788 |
:10ED70007727CB0197F90895629FD001739FF00127 |
:10ED8000829FE00DF11D649FE00DF11D929FF00D3B |
:10ED9000839FF00D749FF00D659FF00D9927729F72 |
:10EDA000B00DE11DF91F639FB00DE11DF91FBD01FD |
:10EDB000CF0111240895991B79E004C0991F96177B |
:10EDC00008F0961B881F7A95C9F780950895AA1BAD |
:10EDD000BB1B51E107C0AA1FBB1FA617B70710F046 |
:10EDE000A61BB70B881F991F5A95A9F78095909578 |
:10EDF000BC01CD01089597FB092E07260AD077FDA7 |
:10EE000004D0E5DF06D000201AF4709561957F4F9D |
:10EE10000895F6F7909581959F4F0895A1E21A2ED7 |
:10EE2000AA1BBB1BFD010DC0AA1FBB1FEE1FFF1FAE |
:10EE3000A217B307E407F50720F0A21BB30BE40BFE |
:10EE4000F50B661F771F881F991F1A9469F7609545 |
:10EE50007095809590959B01AC01BD01CF010895FF |
:10EE600097FB092E05260ED057FD04D0D7DF0AD018 |
:10EE7000001C38F450954095309521953F4F4F4FE9 |
:10EE80005F4F0895F6F790958095709561957F4F47 |
:10EE90008F4F9F4F08952F923F924F925F926F92A4 |
:10EEA0007F928F929F92AF92BF92CF92DF92EF921A |
:10EEB000FF920F931F93CF93DF93CDB7DEB7CA1B9B |
:10EEC000DB0B0FB6F894DEBF0FBECDBF09942A88C6 |
:10EED000398848885F846E847D848C849B84AA846E |
:10EEE000B984C884DF80EE80FD800C811B81AA81FB |
:10EEF000B981CE0FD11D0FB6F894DEBF0FBECDBFC6 |
:10EF0000ED010895EE0FFF1F0590F491E02D099497 |
:02EF1000FFCF31 |
:10EF12005E010A010164FF01FFFFC01FC01F010162 |
:10EF220001737373FF03007D0000C409C409640008 |
:10EF32001148656C6C6F20576F726C6400000000A2 |
:10EF420000000000000000000000000000000000BF |
:10EF520000000000000000000000000000000000AF |
:10EF6200000000000000000000000000000000009F |
:10EF7200000000000000000000000000000000008F |
:10EF82000053706F727400004E6F726D616C0000FE |
:10EF9200426567696E6E6572000051756164726FD9 |
:10EFA2000000640001200B050000ECFF00020406D3 |
:10EFB200070808080706040200FEFCFAF9F8F8F848 |
:10EFC200F9FAFCFE000204060708086440415A46AA |
:10EFD20064640A02969696960840403A10FB3038CE |
:10EFE2000190D0030090D00300F4017800FF036485 |
:10EFF2000B0A0D0B0C0E0B0F10FA2001010170FF12 |
:02F00200010FFC |
:00000001FF |
/branches/metro/v0.82a metro_Akku+/Hex-Files/WasIstWas.txt |
---|
0,0 → 1,17 |
+++++++++++++++++++++++++ |
+ Flight-Ctrl: |
+++++++++++++++++++++++++ |
BootLoader_MEGA644_20MHZ_V0_1.hex |
Der Bootloader wird per ISP eingespielt |
Der Bootloader nur dann eingespielt werden, wenn noch nie ein Bootloader eingespielt wurde! |
Danach können Softwareupdates seriell eingespielt werden. |
Flight-Ctrl_MEGA644_Vx_yy.hex |
Aktuelle Firmware |
Wird per serielle Schnittstelle (durch den Bootloader) eingespielt |
Achtung: Die Programme für den ATMEGA1284 dürfen ausschliesslich per Bootloader, also seriell eingespielt werden und NICHT per ISP |
Warning: do not program the ATMEGA1284 (FC2.1) via SPI. Only use the MKUSB and the Koptertool for update! |
/branches/metro/v0.82a metro_Akku+/License.txt |
---|
0,0 → 1,52 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + Nur für den privaten Gebrauch / NON-COMMERCIAL USE ONLY |
// + www.MikroKopter.com |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Es gilt für das gesamte Projekt (Hardware, Software, Binärfiles, Sourcecode und Dokumentation), |
// + dass eine Nutzung (auch auszugsweise) nur für den privaten und nichtkommerziellen Gebrauch zulässig ist. |
// + Sollten direkte oder indirekte kommerzielle Absichten verfolgt werden, ist mit uns (info@mikrokopter.de) Kontakt |
// + bzgl. der Nutzungsbedingungen aufzunehmen. |
// + Eine kommerzielle Nutzung ist z.B.Verkauf von MikroKoptern, Bestückung und Verkauf von Platinen oder Bausätzen, |
// + Verkauf von Luftbildaufnahmen, usw. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Werden Teile des Quellcodes (mit oder ohne Modifikation) weiterverwendet oder veröffentlicht, |
// + unterliegen sie auch diesen Nutzungsbedingungen und diese Nutzungsbedingungen incl. Copyright müssen dann beiliegen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Sollte die Software (auch auszugesweise) oder sonstige Informationen des MikroKopter-Projekts |
// + auf anderen Webseiten oder sonstigen Medien veröffentlicht werden, muss unsere Webseite "http://www.mikrokopter.de" |
// + eindeutig als Ursprung verlinkt und genannt werden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Keine Gewähr auf Fehlerfreiheit, Vollständigkeit oder Funktion |
// + Benutzung auf eigene Gefahr |
// + Wir übernehmen keinerlei Haftung für direkte oder indirekte Personen- oder Sachschäden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Portierung oder Nutzung der Software (oder Teile davon) auf andere Systeme (ausser der Hardware von www.mikrokopter.de) ist nur |
// + mit unserer Zustimmung zulässig |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Funktion printf_P() unterliegt ihrer eigenen Lizenz und ist hiervon nicht betroffen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Redistributions of source code (with or without modifications) must retain the above copyright notice, |
// + this list of conditions and the following disclaimer. |
// + * Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived |
// + from this software without specific prior written permission. |
// + * The use of this project (hardware, software, binary files, sources and documentation) is only permittet |
// + for non-profit use (directly or indirectly) |
// + Commercial use (for excample: selling of MikroKopters, selling of PCBs, assembly, ...) is only permitted |
// + with our written permission |
// + * If sources or documentations are redistributet, our webpage (http://www.MikroKopter.de) must be |
// + clearly linked and named as origin |
// + * porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
// + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
// + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
// + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
// + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
// + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
// + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
// + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
// + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
// + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
// + POSSIBILITY OF SUCH DAMAGE. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
/branches/metro/v0.82a metro_Akku+/Settings.h |
---|
--- metro/v0.82a metro_Akku+/Spektrum.c (nonexistent) |
+++ metro/v0.82a metro_Akku+/Spektrum.c (revision 1825) |
@@ -0,0 +1,407 @@ |
+/*####################################################################################### |
+Decodieren eines RC Summen Signals oder Spektrum Empfänger-Satellit |
+#######################################################################################*/ |
+ |
+#include "Spektrum.h" |
+#include "main.h" |
+// Achtung: RECEIVER_SPEKTRUM_EXP wird in der Main.h gesetzt |
+ |
+unsigned char SpektrumTimer = 0; |
+ |
+#ifdef RECEIVER_SPEKTRUM_EXP |
+unsigned char s_excnt = 0; // Counter for Spektrum-Expander |
+unsigned char s_exparity = 0; // Parity Bit for Spektrum-Expander |
+signed char s_exdata[11]; // Data for Spektrum-Expander |
+#endif |
+//--------------------------------------------------------------// |
+//--------------------------------------------------------------// |
+/* |
+void SpektrumBinding(void) |
+{ |
+ unsigned int timerTimeout = SetDelay(10000); // Timeout 10 sec. |
+ unsigned char connected = 0; |
+ unsigned int delaycounter; |
+ |
+ UCSR1B &= ~(1 << RXCIE1); // disable rx-interrupt |
+ UCSR1B &= ~(1<<RXEN1); // disable Uart-Rx |
+ PORTD &= ~(1 << PORTD2); // disable pull-up |
+ |
+ printf("\n\rPlease connect Spektrum receiver for binding NOW..."); |
+ |
+ while(!CheckDelay(timerTimeout)) |
+ { |
+ if (PIND & (1 << PORTD2)) { timerTimeout = SetDelay(90); connected = 1; break; } |
+ } |
+ |
+ if (connected) |
+ { |
+ |
+ printf("ok.\n\r"); |
+ DDRD |= (1 << DDD2); // Rx as output |
+ |
+ while(!CheckDelay(timerTimeout)); // delay after startup of RX |
+ for (delaycounter = 0; delaycounter < 100; delaycounter++) PORTD |= (1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 400; delaycounter++) PORTD &= ~(1 << PORTD2); |
+ |
+ for (delaycounter = 0; delaycounter < 10; delaycounter++) PORTD |= (1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 10; delaycounter++) PORTD &= ~(1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 400; delaycounter++) PORTD |= (1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 400; delaycounter++) PORTD &= ~(1 << PORTD2); |
+ |
+ for (delaycounter = 0; delaycounter < 10; delaycounter++) PORTD |= (1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 10; delaycounter++) PORTD &= ~(1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 400; delaycounter++) PORTD |= (1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 400; delaycounter++) PORTD &= ~(1 << PORTD2); |
+ |
+ for (delaycounter = 0; delaycounter < 10; delaycounter++) PORTD |= (1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 10; delaycounter++) PORTD &= ~(1 << PORTD2); |
+ for (delaycounter = 0; delaycounter < 400; delaycounter++) PORTD |= (1 << PORTD2); |
+ |
+ } |
+ else |
+ { printf("Timeout.\n\r"); |
+ |
+ |
+ } |
+ |
+ DDRD &= ~(1 << DDD2); // RX as input |
+ PORTD &= ~(1 << PORTD2); |
+ |
+ SpektrumUartInit(); // init Uart again |
+} |
+*/ |
+//############################################################################ |
+// USART1 initialisation from killagreg |
+void SpektrumUartInit(void) |
+//############################################################################ |
+ { |
+ // -- Start of USART1 initialisation for Spekturm seriell-mode |
+ // USART1 Control and Status Register A, B, C and baud rate register |
+ uint8_t sreg = SREG; |
+ |
+ uint16_t ubrr = (uint16_t) ((uint32_t) SYSCLK/(8 * 115200) - 1); |
+ |
+ // disable all interrupts before reconfiguration |
+ cli(); |
+ // disable RX-Interrupt |
+ UCSR1B &= ~(1 << RXCIE1); |
+ // disable TX-Interrupt |
+ UCSR1B &= ~(1 << TXCIE1); |
+ // disable DRE-Interrupt |
+ UCSR1B &= ~(1 << UDRIE1); |
+ // set direction of RXD1 and TXD1 pins |
+ // set RXD1 (PD2) as an input pin |
+ PORTD |= (1 << PORTD2); |
+ DDRD &= ~(1 << DDD2); |
+ |
+ // set TXD1 (PD3) as an output pin |
+ PORTD |= (1 << PORTD3); |
+ DDRD |= (1 << DDD3); |
+ |
+ // USART0 Baud Rate Register |
+ // set clock divider |
+ UBRR1H = (uint8_t)(ubrr>>8); |
+ UBRR1L = (uint8_t)ubrr; |
+ // enable double speed operation |
+ UCSR1A |= (1 << U2X1); |
+ // enable receiver and transmitter |
+ //UCSR1B = (1<<RXEN1)|(1<<TXEN1); |
+ |
+ UCSR1B = (1<<RXEN1); |
+ // set asynchronous mode |
+ UCSR1C &= ~(1 << UMSEL11); |
+ UCSR1C &= ~(1 << UMSEL10); |
+ // no parity |
+ UCSR1C &= ~(1 << UPM11); |
+ UCSR1C &= ~(1 << UPM10); |
+ // 1 stop bit |
+ UCSR1C &= ~(1 << USBS1); |
+ // 8-bit |
+ UCSR1B &= ~(1 << UCSZ12); |
+ UCSR1C |= (1 << UCSZ11); |
+ UCSR1C |= (1 << UCSZ10); |
+ // flush receive buffer explicit |
+ while(UCSR1A & (1<<RXC1)) UDR1; |
+ // enable RX-interrupts at the end |
+ UCSR1B |= (1 << RXCIE1); |
+ // -- End of USART1 initialisation |
+ // restore global interrupt flags |
+ |
+ SREG = sreg; |
+ return; |
+ } |
+ |
+// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
+// + Copyright (c) Rainer Walther |
+// + RC-routines from original MK rc.c (c) H&I |
+// + Useful infos from Walter: http://www.rcgroups.com/forums/showthread.php?t=714299&page=2 |
+// + only for non-profit use |
+// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
+// |
+// 20080808 rw Modified for Spektrum AR6100 (PPM) |
+// 20080823 rw Add Spektrum satellite receiver on USART1 (644P only) |
+// 20081213 rw Add support for Spektrum DS9 Air-Tx-Module (9 channels) |
+// Replace AR6100-coding with original composit-signal routines |
+// |
+// --- |
+// Entweder Summensignal ODER Spektrum-Receiver anschließen. Nicht beides gleichzeitig betreiben! |
+// Binding is not implemented. Bind with external Receiver. |
+// Servo output J3, J4, J5 not serviced |
+// |
+// Anschuß Spektrum Receiver |
+// Orange: 3V von der FC (keinesfalls an 5V anschließen!) |
+// Schwarz: GND |
+// Grau: RXD1 (Pin 3) auf 10-Pol FC-Stecker |
+// |
+// --- |
+// Satellite-Reciever connected on USART1: |
+// |
+// DX7/DX6i: One data-frame at 115200 baud every 22ms. |
+// DX7se: One data-frame at 115200 baud every 11ms. |
+// byte1: unknown |
+// byte2: unknown |
+// byte3: and byte4: channel data (FLT-Mode) |
+// byte5: and byte6: channel data (Roll) |
+// byte7: and byte8: channel data (Nick) |
+// byte9: and byte10: channel data (Gier) |
+// byte11: and byte12: channel data (Gear Switch) |
+// byte13: and byte14: channel data (Gas) |
+// byte15: and byte16: channel data (AUX2) |
+// |
+// DS9 (9 Channel): One data-frame at 115200 baud every 11ms, alternating frame 1/2 for CH1-7 / CH8-9 |
+// 1st Frame: |
+// byte1: unknown |
+// byte2: unknown |
+// byte3: and byte4: channel data |
+// byte5: and byte6: channel data |
+// byte7: and byte8: channel data |
+// byte9: and byte10: channel data |
+// byte11: and byte12: channel data |
+// byte13: and byte14: channel data |
+// byte15: and byte16: channel data |
+// 2nd Frame: |
+// byte1: unknown |
+// byte2: unknown |
+// byte3: and byte4: channel data |
+// byte5: and byte6: channel data |
+// byte7: and byte8: 0xffff |
+// byte9: and byte10: 0xffff |
+// byte11: and byte12: 0xffff |
+// byte13: and byte14: 0xffff |
+// byte15: and byte16: 0xffff |
+// |
+// Each channel data (16 bit= 2byte, first msb, second lsb) is arranged as: |
+// |
+// Bits: F 0 C3 C2 C1 C0 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 |
+// |
+// 0 means a '0' bit |
+// F: 1 = indicates beginning of 2nd frame for CH8-9 (DS9 only) |
+// C3 to C0 is the channel number. 0 to 9 (4 bit, as assigned in the transmitter) |
+// D9 to D0 is the channel data (10 bit) 0xaa..0x200..0x356 for 100% transmitter-travel |
+// |
+// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
+ |
+#define MIN_FRAMEGAP 68 // 7ms |
+#define MAX_BYTEGAP 3 // 310us |
+ |
+ |
+//############################################################################ |
+// Wird im UART-Interrupt aufgerufen |
+//############################################################################ |
+void SpektrumParser(unsigned char c) |
+{ |
+ static unsigned char Sync=0, FrameCnt=0, ByteHigh=0, ReSync=1, Frame2=0; |
+ unsigned int Channel, index = 0; |
+ signed int signal = 0, tmp; |
+ int bCheckDelay; |
+// c = UDR1; // get data byte |
+ if(ReSync == 1) |
+ { |
+ // wait for beginning of new frame |
+ ReSync = 0; |
+ SpektrumTimer = MIN_FRAMEGAP; |
+ FrameCnt = 0; |
+ Sync = 0; |
+ ByteHigh = 0; |
+ } |
+ else |
+ { |
+ if(!SpektrumTimer) bCheckDelay = 1; else bCheckDelay = 0;//CheckDelay(FrameTimer); |
+ if ( Sync == 0 ) |
+ { |
+ if(bCheckDelay) |
+ { |
+ // nach einer Pause von mind. 7ms erstes Sync-Character gefunden |
+ // Zeichen ignorieren, da Bedeutung unbekannt |
+ Sync = 1; |
+ FrameCnt ++; |
+ SpektrumTimer = MAX_BYTEGAP; |
+ } |
+ else |
+ { |
+ // Zeichen kam vor Ablauf der 7ms Sync-Pause |
+ // warten auf erstes Sync-Zeichen |
+ SpektrumTimer = MIN_FRAMEGAP; |
+ FrameCnt = 0; |
+ Sync = 0; |
+ ByteHigh = 0; |
+ } |
+ } |
+ else if((Sync == 1) && !bCheckDelay) |
+ { |
+ // zweites Sync-Character ignorieren, Bedeutung unbekannt |
+ Sync = 2; |
+ FrameCnt ++; |
+ SpektrumTimer = MAX_BYTEGAP; |
+ } |
+ else if((Sync == 2) && !bCheckDelay) |
+ { |
+ SpektrumTimer = MAX_BYTEGAP; |
+ // Datenbyte high |
+ ByteHigh = c; |
+ if (FrameCnt == 2) |
+ { |
+ // is 1st Byte of Channel-data |
+ // Frame 1 with Channel 1-7 comming next |
+ Frame2 = 0; |
+ if(ByteHigh & 0x80) |
+ { |
+ // DS9: Frame 2 with Channel 8-9 comming next |
+ Frame2 = 1; |
+ } |
+ } |
+ Sync = 3; |
+ FrameCnt ++; |
+ } |
+ else if((Sync == 3) && !bCheckDelay) |
+ { |
+ // Datenbyte low |
+ // High-Byte for next channel comes next |
+ SpektrumTimer = MAX_BYTEGAP; |
+ Sync = 2; |
+ FrameCnt ++; |
+ Channel = ((unsigned int)ByteHigh << 8) | c; |
+ if(EE_Parameter.Receiver == RECEIVER_SPEKTRUM) |
+ { |
+ signal = Channel & 0x3ff; |
+ signal -= 0x200; // Offset, range 0x000..0x3ff? |
+ signal = signal/3; // scaling to fit PPM resolution |
+ index = (ByteHigh >> 2) & 0x0f; |
+ } |
+ else |
+ if(EE_Parameter.Receiver == RECEIVER_SPEKTRUM_HI_RES) |
+ { |
+ signal = Channel & 0x7ff; |
+ signal -= 0x400; // Offset, range 0x000..0x7ff? |
+ signal = signal/6; // scaling to fit PPM resolution |
+ index = (ByteHigh >> 3) & 0x0f; |
+ } |
+ else |
+ //if(EE_Parameter.Receiver == RECEIVER_SPEKTRUM_LOW_RES) |
+ { |
+ signal = Channel & 0x3ff; |
+ signal -= 360; // Offset, range 0x000..0x3ff? |
+ signal = signal/2; // scaling to fit PPM resolution |
+ index = (ByteHigh >> 2) & 0x0f; |
+ } |
+ |
+ index++; |
+ if(index < 13) |
+ { |
+ // Stabiles Signal |
+#ifdef RECEIVER_SPEKTRUM_EXP |
+ if (index == 2) index = 4; // Analog channel reassigment (2 <-> 4) for logical numbering (1,2,3,4) |
+ else if (index == 4) index = 2; |
+#endif |
+ if(abs(signal - PPM_in[index]) < 6) |
+ { |
+ if(SenderOkay < 200) SenderOkay += 10; |
+ else |
+ { |
+ SenderOkay = 200; |
+ TIMSK1 &= ~_BV(ICIE1); // disable PPM-Input |
+ } |
+ } |
+ tmp = (3 * (PPM_in[index]) + signal) / 4; |
+ if(tmp > signal+1) tmp--; else |
+ if(tmp < signal-1) tmp++; |
+ |
+#ifdef RECEIVER_SPEKTRUM_EXP |
+ if(index == 6) // FLIGHT-MODE - The channel used for our data uplink |
+ { |
+ if (signal > 100) // SYNC received |
+ { |
+ if (s_exdata[s_excnt] == 125) s_exparity = ~s_exparity; // Bit = 1 -> Re-Invert parity bit |
+ if ((s_excnt == 6 && ((s_exparity != 0 && s_exdata[s_excnt] == -125) || (s_exparity == 0 && s_exdata[s_excnt] == 125))) || (s_excnt == 9 && ((s_exparity == 0 && s_exdata[s_excnt] == -125) || (s_exparity != 0 && s_exdata[s_excnt] == 125)))) // Parity check |
+ { |
+ if (s_exdata[1] == 125 && s_exdata[2] == -125) PPM_in[5] = -125; // Reconstruct tripole Flight-Mode value (CH5) |
+ else if (s_exdata[1] == -125 && s_exdata[2] == -125) PPM_in[5] = 0; // Reconstruct tripole Flight-Mode value (CH5) |
+ else if (s_exdata[1] == -125 && s_exdata[2] == 125) PPM_in[5] = 125; // Reconstruct tripole Flight-Mode value (CH5) |
+ PPM_in[6] = s_exdata[3]; // Elevator (CH6) |
+ PPM_in[11] = s_exdata[4]; // Aileron (CH11) |
+ PPM_in[12] = s_exdata[5]; // Rudder (CH12) |
+ |
+ if (s_excnt == 9) // New Mode (12 Channels) |
+ { |
+ if (s_exdata[7] == 125) PPM_in[8] += 5; // Hover Pitch UP (CH8) |
+ if (s_exdata[8] == 125) PPM_in[8] -= 5; // Hover Pitch DN (CH8) |
+ if (PPM_in[8] < -125) PPM_in[8] = -125; // Range-Limit |
+ else if (PPM_in[8] > 125) PPM_in[8] = 125; // Range-Limit |
+ PPM_in[10] = s_exdata[6]; // AUX2 (CH10) |
+ } |
+ } |
+ |
+ s_excnt = 0; // Reset bitcounter |
+ s_exparity = 0; // Reset parity bit |
+ } |
+ |
+ if (signal < 10) s_exdata[++s_excnt] = -125; // Bit = 0 -> value = -125 (min) |
+ if (s_excnt == 10) s_excnt = 0; // Overflow protection |
+ if (signal < -100) |
+ { |
+ s_exdata[s_excnt] = 125; // Bit = 1 -> value = 125 (max) |
+ s_exparity = ~s_exparity; // Bit = 1 -> Invert parity bit |
+ } |
+ |
+ } |
+#endif |
+ if(SenderOkay >= 180) PPM_diff[index] = ((tmp - PPM_in[index]) / 3) * 3; |
+ else PPM_diff[index] = 0; |
+ |
+#ifdef RECEIVER_SPEKTRUM_EXP |
+ if (index < 5 ) PPM_in[index] = tmp; // Update normal potis (CH1-4) |
+ else if (index == 5) PPM_in[7] = signal; // Gear (CH7) |
+ else if (index == 7) PPM_in[9] = signal; // Hover Throttle (CH9) |
+#else |
+ PPM_in[index] = tmp; |
+#endif |
+ } |
+ else if(index > 17) ReSync = 1; // hier stimmt was nicht: neu synchronisieren |
+ } |
+ else |
+ { |
+ // hier stimmt was nicht: neu synchronisieren |
+ ReSync = 1; |
+ FrameCnt = 0; |
+ Frame2 = 0; |
+ // new frame next, nach fruehestens 7ms erwartet |
+ SpektrumTimer = MIN_FRAMEGAP; |
+ } |
+ |
+ // 16 Bytes eingetroffen -> Komplett |
+ if(FrameCnt >= 16) |
+ { |
+ // Frame complete |
+ if(Frame2 == 0) |
+ { |
+ // Null bedeutet: Neue Daten |
+ // nur beim ersten Frame (CH 0-7) setzen |
+ if(!ReSync) NewPpmData = 0; |
+ } |
+ FrameCnt = 0; |
+ Frame2 = 0; |
+ Sync = 0; |
+ SpektrumTimer = MIN_FRAMEGAP; |
+ } |
+ } |
+} |
/branches/metro/v0.82a metro_Akku+/Spektrum.d |
---|
0,0 → 1,3 |
Spektrum.o Spektrum.d : Spektrum.c Spektrum.h main.h old_macros.h printf_P.h timer0.h \ |
uart.h analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h \ |
spektrum.h capacity.h eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/Spektrum.h |
---|
0,0 → 1,12 |
/*####################################################################################### |
Dekodieren eines Spektrum Signals |
#######################################################################################*/ |
#ifndef _SPEKTRUM_H |
#define _SPEKTRUM_H |
void SpektrumUartInit(void); |
void SpektrumBinding(void); |
extern unsigned char SpektrumTimer; |
extern void SpektrumParser(unsigned char c); |
#endif //_RC_H |
/branches/metro/v0.82a metro_Akku+/Spektrum.lst |
---|
0,0 → 1,433 |
1 .file "Spektrum.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global SpektrumTimer |
11 .global SpektrumTimer |
12 .section .bss |
15 SpektrumTimer: |
16 0000 00 .skip 1,0 |
17 .text |
18 .global SpektrumUartInit |
20 SpektrumUartInit: |
21 /* prologue: frame size=0 */ |
22 /* prologue end (size=0) */ |
23 0000 4FB7 in r20,95-0x20 |
24 0002 24E1 ldi r18,lo8(20) |
25 0004 30E0 ldi r19,hi8(20) |
26 /* #APP */ |
27 0006 F894 cli |
28 /* #NOAPP */ |
29 0008 8091 C900 lds r24,201 |
30 000c 8F77 andi r24,lo8(127) |
31 000e 8093 C900 sts 201,r24 |
32 0012 8091 C900 lds r24,201 |
33 0016 8F7B andi r24,lo8(-65) |
34 0018 8093 C900 sts 201,r24 |
35 001c 8091 C900 lds r24,201 |
36 0020 8F7D andi r24,lo8(-33) |
37 0022 8093 C900 sts 201,r24 |
38 0026 5A9A sbi 43-0x20,2 |
39 0028 5298 cbi 42-0x20,2 |
40 002a 5B9A sbi 43-0x20,3 |
41 002c 539A sbi 42-0x20,3 |
42 002e 832F mov r24,r19 |
43 0030 9927 clr r25 |
44 0032 8093 CD00 sts 205,r24 |
45 0036 2093 CC00 sts 204,r18 |
46 003a 8091 C800 lds r24,200 |
47 003e 8260 ori r24,lo8(2) |
48 0040 8093 C800 sts 200,r24 |
49 0044 80E1 ldi r24,lo8(16) |
50 0046 8093 C900 sts 201,r24 |
51 004a 8091 CA00 lds r24,202 |
52 004e 8F77 andi r24,lo8(127) |
53 0050 8093 CA00 sts 202,r24 |
54 0054 8091 CA00 lds r24,202 |
55 0058 8F7B andi r24,lo8(-65) |
56 005a 8093 CA00 sts 202,r24 |
57 005e 8091 CA00 lds r24,202 |
58 0062 8F7D andi r24,lo8(-33) |
59 0064 8093 CA00 sts 202,r24 |
60 0068 8091 CA00 lds r24,202 |
61 006c 8F7E andi r24,lo8(-17) |
62 006e 8093 CA00 sts 202,r24 |
63 0072 8091 CA00 lds r24,202 |
64 0076 877F andi r24,lo8(-9) |
65 0078 8093 CA00 sts 202,r24 |
66 007c 8091 C900 lds r24,201 |
67 0080 8B7F andi r24,lo8(-5) |
68 0082 8093 C900 sts 201,r24 |
69 0086 8091 CA00 lds r24,202 |
70 008a 8460 ori r24,lo8(4) |
71 008c 8093 CA00 sts 202,r24 |
72 0090 8091 CA00 lds r24,202 |
73 0094 8260 ori r24,lo8(2) |
74 0096 8093 CA00 sts 202,r24 |
75 .L7: |
76 009a 8091 C800 lds r24,200 |
77 009e 87FF sbrs r24,7 |
78 00a0 03C0 rjmp .L6 |
79 00a2 8091 CE00 lds r24,206 |
80 00a6 F9CF rjmp .L7 |
81 .L6: |
82 00a8 8091 C900 lds r24,201 |
83 00ac 8068 ori r24,lo8(-128) |
84 00ae 8093 C900 sts 201,r24 |
85 00b2 4FBF out 95-0x20,r20 |
86 /* epilogue: frame size=0 */ |
87 00b4 0895 ret |
88 /* epilogue end (size=1) */ |
89 /* function SpektrumUartInit size 92 (91) */ |
91 .lcomm Sync.0,1 |
92 .lcomm FrameCnt.1,1 |
93 .lcomm ByteHigh.2,1 |
94 .data |
97 ReSync.3: |
98 0000 01 .byte 1 |
99 .lcomm Frame2.4,1 |
100 .text |
101 .global SpektrumParser |
103 SpektrumParser: |
104 /* prologue: frame size=0 */ |
105 00b6 EF92 push r14 |
106 00b8 FF92 push r15 |
107 00ba 0F93 push r16 |
108 00bc 1F93 push r17 |
109 00be CF93 push r28 |
110 00c0 DF93 push r29 |
111 /* prologue end (size=6) */ |
112 00c2 482F mov r20,r24 |
113 00c4 00E0 ldi r16,lo8(0) |
114 00c6 10E0 ldi r17,hi8(0) |
115 00c8 8091 0000 lds r24,ReSync.3 |
116 00cc 8130 cpi r24,lo8(1) |
117 00ce 61F4 brne .L9 |
118 00d0 1092 0000 sts ReSync.3,__zero_reg__ |
119 00d4 84E4 ldi r24,lo8(68) |
120 00d6 8093 0000 sts SpektrumTimer,r24 |
121 00da 1092 0000 sts FrameCnt.1,__zero_reg__ |
122 00de 1092 0000 sts Sync.0,__zero_reg__ |
123 00e2 1092 0000 sts ByteHigh.2,__zero_reg__ |
124 00e6 2BC1 rjmp .L8 |
125 .L9: |
126 00e8 8091 0000 lds r24,SpektrumTimer |
127 00ec 8823 tst r24 |
128 00ee 19F4 brne .L11 |
129 00f0 21E0 ldi r18,lo8(1) |
130 00f2 30E0 ldi r19,hi8(1) |
131 00f4 01C0 rjmp .L12 |
132 .L11: |
133 00f6 9801 movw r18,r16 |
134 .L12: |
135 00f8 9091 0000 lds r25,Sync.0 |
136 00fc 9923 tst r25 |
137 00fe 71F4 brne .L13 |
138 0100 232B or r18,r19 |
139 0102 11F0 breq .L14 |
140 0104 81E0 ldi r24,lo8(1) |
141 0106 10C0 rjmp .L49 |
142 .L14: |
143 0108 84E4 ldi r24,lo8(68) |
144 010a 8093 0000 sts SpektrumTimer,r24 |
145 010e 9093 0000 sts FrameCnt.1,r25 |
146 0112 9093 0000 sts Sync.0,r25 |
147 0116 9093 0000 sts ByteHigh.2,r25 |
148 011a FAC0 rjmp .L16 |
149 .L13: |
150 011c 9130 cpi r25,lo8(1) |
151 011e 69F4 brne .L17 |
152 0120 232B or r18,r19 |
153 0122 09F0 breq .+2 |
154 0124 EBC0 rjmp .L23 |
155 0126 82E0 ldi r24,lo8(2) |
156 .L49: |
157 0128 8093 0000 sts Sync.0,r24 |
158 012c 8091 0000 lds r24,FrameCnt.1 |
159 0130 8F5F subi r24,lo8(-(1)) |
160 0132 8093 0000 sts FrameCnt.1,r24 |
161 0136 83E0 ldi r24,lo8(3) |
162 0138 E9C0 rjmp .L47 |
163 .L17: |
164 013a 9230 cpi r25,lo8(2) |
165 013c D1F4 brne .L19 |
166 013e 232B or r18,r19 |
167 0140 09F0 breq .+2 |
168 0142 DCC0 rjmp .L23 |
169 0144 83E0 ldi r24,lo8(3) |
170 0146 8093 0000 sts SpektrumTimer,r24 |
171 014a 4093 0000 sts ByteHigh.2,r20 |
172 014e 9091 0000 lds r25,FrameCnt.1 |
173 0152 9230 cpi r25,lo8(2) |
174 0154 39F4 brne .L20 |
175 0156 1092 0000 sts Frame2.4,__zero_reg__ |
176 015a 47FF sbrs r20,7 |
177 015c 03C0 rjmp .L20 |
178 015e 81E0 ldi r24,lo8(1) |
179 0160 8093 0000 sts Frame2.4,r24 |
180 .L20: |
181 0164 83E0 ldi r24,lo8(3) |
182 0166 8093 0000 sts Sync.0,r24 |
183 016a 9F5F subi r25,lo8(-(1)) |
184 016c 9093 0000 sts FrameCnt.1,r25 |
185 0170 CFC0 rjmp .L16 |
186 .L19: |
187 0172 9330 cpi r25,lo8(3) |
188 0174 09F0 breq .+2 |
189 0176 C2C0 rjmp .L23 |
190 0178 232B or r18,r19 |
191 017a 09F0 breq .+2 |
192 017c BFC0 rjmp .L23 |
193 017e 9093 0000 sts SpektrumTimer,r25 |
194 0182 82E0 ldi r24,lo8(2) |
195 0184 8093 0000 sts Sync.0,r24 |
196 0188 8091 0000 lds r24,FrameCnt.1 |
197 018c 8F5F subi r24,lo8(-(1)) |
198 018e 8093 0000 sts FrameCnt.1,r24 |
199 0192 2091 0000 lds r18,ByteHigh.2 |
200 0196 822F mov r24,r18 |
201 0198 9927 clr r25 |
202 019a 782F mov r23,r24 |
203 019c 6627 clr r22 |
204 019e 842F mov r24,r20 |
205 01a0 9927 clr r25 |
206 01a2 682B or r22,r24 |
207 01a4 792B or r23,r25 |
208 01a6 8091 0000 lds r24,EE_Parameter+39 |
209 01aa 8130 cpi r24,lo8(1) |
210 01ac 49F4 brne .L24 |
211 01ae 7370 andi r23,hi8(1023) |
212 01b0 CB01 movw r24,r22 |
213 01b2 8050 subi r24,lo8(-(-512)) |
214 01b4 9240 sbci r25,hi8(-(-512)) |
215 01b6 63E0 ldi r22,lo8(3) |
216 01b8 70E0 ldi r23,hi8(3) |
217 01ba 0E94 0000 call __divmodhi4 |
218 01be 17C0 rjmp .L48 |
219 .L24: |
220 01c0 8230 cpi r24,lo8(2) |
221 01c2 61F4 brne .L26 |
222 01c4 7770 andi r23,hi8(2047) |
223 01c6 CB01 movw r24,r22 |
224 01c8 8050 subi r24,lo8(-(-1024)) |
225 01ca 9440 sbci r25,hi8(-(-1024)) |
226 01cc 66E0 ldi r22,lo8(6) |
227 01ce 70E0 ldi r23,hi8(6) |
228 01d0 0E94 0000 call __divmodhi4 |
229 01d4 2695 lsr r18 |
230 01d6 2695 lsr r18 |
231 01d8 2695 lsr r18 |
232 01da 0BC0 rjmp .L46 |
233 .L26: |
234 01dc 7370 andi r23,hi8(1023) |
235 01de 6856 subi r22,lo8(-(-360)) |
236 01e0 7140 sbci r23,hi8(-(-360)) |
237 01e2 CB01 movw r24,r22 |
238 01e4 77FD sbrc r23,7 |
239 01e6 0196 adiw r24,1 |
240 .L28: |
241 01e8 BC01 movw r22,r24 |
242 01ea 7595 asr r23 |
243 01ec 6795 ror r22 |
244 .L48: |
245 01ee 2695 lsr r18 |
246 01f0 2695 lsr r18 |
247 .L46: |
248 01f2 022F mov r16,r18 |
249 01f4 1127 clr r17 |
250 01f6 0F70 andi r16,lo8(15) |
251 01f8 1070 andi r17,hi8(15) |
252 01fa 0F5F subi r16,lo8(-(1)) |
253 01fc 1F4F sbci r17,hi8(-(1)) |
254 01fe 0D30 cpi r16,13 |
255 0200 1105 cpc r17,__zero_reg__ |
256 0202 08F0 brlo .+2 |
257 0204 74C0 rjmp .L29 |
258 0206 7801 movw r14,r16 |
259 0208 E00E add r14,r16 |
260 020a F11E adc r15,r17 |
261 020c F701 movw r30,r14 |
262 020e E050 subi r30,lo8(-(PPM_in)) |
263 0210 F040 sbci r31,hi8(-(PPM_in)) |
264 0212 8081 ld r24,Z |
265 0214 9181 ldd r25,Z+1 |
266 0216 9B01 movw r18,r22 |
267 0218 281B sub r18,r24 |
268 021a 390B sbc r19,r25 |
269 021c C901 movw r24,r18 |
270 021e 37FF sbrs r19,7 |
271 0220 03C0 rjmp .L31 |
272 0222 9095 com r25 |
273 0224 8195 neg r24 |
274 0226 9F4F sbci r25,lo8(-1) |
275 .L31: |
276 0228 0697 sbiw r24,6 |
277 022a 94F4 brge .L30 |
278 022c 8091 0000 lds r24,SenderOkay |
279 0230 883C cpi r24,lo8(-56) |
280 0232 30F4 brsh .L32 |
281 0234 8091 0000 lds r24,SenderOkay |
282 0238 865F subi r24,lo8(-(10)) |
283 023a 8093 0000 sts SenderOkay,r24 |
284 023e 08C0 rjmp .L30 |
285 .L32: |
286 0240 88EC ldi r24,lo8(-56) |
287 0242 8093 0000 sts SenderOkay,r24 |
288 0246 8091 6F00 lds r24,111 |
289 024a 8F7D andi r24,lo8(-33) |
290 024c 8093 6F00 sts 111,r24 |
291 .L30: |
292 0250 F701 movw r30,r14 |
293 0252 E050 subi r30,lo8(-(PPM_in)) |
294 0254 F040 sbci r31,hi8(-(PPM_in)) |
295 0256 8081 ld r24,Z |
296 0258 9181 ldd r25,Z+1 |
297 025a 9C01 movw r18,r24 |
298 025c 220F lsl r18 |
299 025e 331F rol r19 |
300 0260 280F add r18,r24 |
301 0262 391F adc r19,r25 |
302 0264 260F add r18,r22 |
303 0266 371F adc r19,r23 |
304 0268 37FF sbrs r19,7 |
305 026a 02C0 rjmp .L34 |
306 026c 2D5F subi r18,lo8(-(3)) |
307 026e 3F4F sbci r19,hi8(-(3)) |
308 .L34: |
309 0270 E901 movw r28,r18 |
310 0272 D595 asr r29 |
311 0274 C795 ror r28 |
312 0276 D595 asr r29 |
313 0278 C795 ror r28 |
314 027a CB01 movw r24,r22 |
315 027c 0196 adiw r24,1 |
316 027e 8C17 cp r24,r28 |
317 0280 9D07 cpc r25,r29 |
318 0282 14F4 brge .L35 |
319 0284 2197 sbiw r28,1 |
320 0286 06C0 rjmp .L36 |
321 .L35: |
322 0288 6150 subi r22,lo8(-(-1)) |
323 028a 7040 sbci r23,hi8(-(-1)) |
324 028c C617 cp r28,r22 |
325 028e D707 cpc r29,r23 |
326 0290 0CF4 brge .L36 |
327 0292 2196 adiw r28,1 |
328 .L36: |
329 0294 8091 0000 lds r24,SenderOkay |
330 0298 843B cpi r24,lo8(-76) |
331 029a D0F0 brlo .L38 |
332 029c F701 movw r30,r14 |
333 029e E050 subi r30,lo8(-(PPM_in)) |
334 02a0 F040 sbci r31,hi8(-(PPM_in)) |
335 02a2 8081 ld r24,Z |
336 02a4 9181 ldd r25,Z+1 |
337 02a6 FE01 movw r30,r28 |
338 02a8 E81B sub r30,r24 |
339 02aa F90B sbc r31,r25 |
340 02ac CF01 movw r24,r30 |
341 02ae 63E0 ldi r22,lo8(3) |
342 02b0 70E0 ldi r23,hi8(3) |
343 02b2 0E94 0000 call __divmodhi4 |
344 02b6 CB01 movw r24,r22 |
345 02b8 880F lsl r24 |
346 02ba 991F rol r25 |
347 02bc 860F add r24,r22 |
348 02be 971F adc r25,r23 |
349 02c0 20E0 ldi r18,lo8(PPM_diff) |
350 02c2 30E0 ldi r19,hi8(PPM_diff) |
351 02c4 E20E add r14,r18 |
352 02c6 F31E adc r15,r19 |
353 02c8 F701 movw r30,r14 |
354 02ca 9183 std Z+1,r25 |
355 02cc 8083 st Z,r24 |
356 02ce 07C0 rjmp .L39 |
357 .L38: |
358 02d0 20E0 ldi r18,lo8(PPM_diff) |
359 02d2 30E0 ldi r19,hi8(PPM_diff) |
360 02d4 E20E add r14,r18 |
361 02d6 F31E adc r15,r19 |
362 02d8 F701 movw r30,r14 |
363 02da 1182 std Z+1,__zero_reg__ |
364 02dc 1082 st Z,__zero_reg__ |
365 .L39: |
366 02de 000F add r16,r16 |
367 02e0 111F adc r17,r17 |
368 02e2 0050 subi r16,lo8(-(PPM_in)) |
369 02e4 1040 sbci r17,hi8(-(PPM_in)) |
370 02e6 F801 movw r30,r16 |
371 02e8 D183 std Z+1,r29 |
372 02ea C083 st Z,r28 |
373 02ec 11C0 rjmp .L16 |
374 .L29: |
375 02ee 0231 cpi r16,18 |
376 02f0 1105 cpc r17,__zero_reg__ |
377 02f2 70F0 brlo .L16 |
378 02f4 81E0 ldi r24,lo8(1) |
379 02f6 8093 0000 sts ReSync.3,r24 |
380 02fa 0AC0 rjmp .L16 |
381 .L23: |
382 02fc 81E0 ldi r24,lo8(1) |
383 02fe 8093 0000 sts ReSync.3,r24 |
384 0302 1092 0000 sts FrameCnt.1,__zero_reg__ |
385 0306 1092 0000 sts Frame2.4,__zero_reg__ |
386 030a 84E4 ldi r24,lo8(68) |
387 .L47: |
388 030c 8093 0000 sts SpektrumTimer,r24 |
389 .L16: |
390 0310 8091 0000 lds r24,FrameCnt.1 |
391 0314 8031 cpi r24,lo8(16) |
392 0316 98F0 brlo .L8 |
393 0318 8091 0000 lds r24,Frame2.4 |
394 031c 8823 tst r24 |
395 031e 31F4 brne .L44 |
396 0320 8091 0000 lds r24,ReSync.3 |
397 0324 8823 tst r24 |
398 0326 11F4 brne .L44 |
399 0328 8093 0000 sts NewPpmData,r24 |
400 .L44: |
401 032c 1092 0000 sts FrameCnt.1,__zero_reg__ |
402 0330 1092 0000 sts Frame2.4,__zero_reg__ |
403 0334 1092 0000 sts Sync.0,__zero_reg__ |
404 0338 84E4 ldi r24,lo8(68) |
405 033a 8093 0000 sts SpektrumTimer,r24 |
406 .L8: |
407 /* epilogue: frame size=0 */ |
408 033e E6E0 ldi r30,6 |
409 0340 CDB7 in r28,__SP_L__ |
410 0342 DEB7 in r29,__SP_H__ |
411 0344 0C94 0000 jmp __epilogue_restores__+24 |
412 /* epilogue end (size=5) */ |
413 /* function SpektrumParser size 334 (323) */ |
415 /* File "Spektrum.c": code 426 = 0x01aa ( 414), prologues 6, epilogues 6 */ |
DEFINED SYMBOLS |
*ABS*:00000000 Spektrum.c |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:15 .bss:00000000 SpektrumTimer |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:20 .text:00000000 SpektrumUartInit |
.bss:00000001 Sync.0 |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:91 .bss:00000002 FrameCnt.1 |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:92 .bss:00000003 ByteHigh.2 |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:97 .data:00000000 ReSync.3 |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:93 .bss:00000004 Frame2.4 |
C:\Users\Thomas\AppData\Local\Temp/ccUXbaaa.s:103 .text:000000b6 SpektrumParser |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
EE_Parameter |
__divmodhi4 |
PPM_in |
SenderOkay |
PPM_diff |
NewPpmData |
__epilogue_restores__ |
/branches/metro/v0.82a metro_Akku+/analog.c |
---|
0,0 → 1,283 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + only for non-profit use |
// + www.MikroKopter.com |
// + porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// + see the File "License.txt" for further Informations |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include "main.h" |
#include "eeprom.h" |
volatile int Aktuell_Nick,Aktuell_Roll,Aktuell_Gier,Aktuell_ax, Aktuell_ay,Aktuell_az, UBat = 100; |
volatile int AdWertNickFilter = 0, AdWertRollFilter = 0, AdWertGierFilter = 0; |
volatile int HiResNick = 2500, HiResRoll = 2500; |
volatile int AdWertNick = 0, AdWertRoll = 0, AdWertGier = 0; |
volatile int AdWertAccRoll = 0,AdWertAccNick = 0,AdWertAccHoch = 0; |
volatile char messanzahl_AccHoch = 0; |
volatile long Luftdruck = 32000; |
volatile long SummenHoehe = 0; |
volatile int StartLuftdruck; |
volatile unsigned int MessLuftdruck = 1023; |
unsigned char DruckOffsetSetting; |
signed char ExpandBaro = 0; |
volatile int VarioMeter = 0; |
volatile unsigned int ZaehlMessungen = 0; |
unsigned char AnalogOffsetNick = 115,AnalogOffsetRoll = 115,AnalogOffsetGier = 115; |
volatile unsigned char AdReady = 1; |
float NeutralAccZ_float; |
//####################################################################################### |
// |
void ADC_Init(void) |
//####################################################################################### |
{ |
ADMUX = 0;//Referenz ist extern |
ANALOG_ON; |
} |
#define DESIRED_H_ADC 800 |
void SucheLuftruckOffset(void) |
{ |
unsigned int off; |
ExpandBaro = 0; |
#if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)) |
{ |
unsigned char off2; |
OCR0A = 150; |
off2 = GetParamByte(PID_PRESSURE_OFFSET); |
if(off2 < 230) off2 += 10; |
OCR0B = off2; |
Delay_ms_Mess(100); |
if(MessLuftdruck > DESIRED_H_ADC) off2 = 240; |
for(; off2 >= 5; off2 -= 5) |
{ |
OCR0B = off2; |
Delay_ms_Mess(50); |
printf("*"); |
if(MessLuftdruck > DESIRED_H_ADC) break; |
} |
SetParamByte(PID_PRESSURE_OFFSET, off2); |
if(off2 >= 15) off = 140; else off = 0; |
for(; off < 250;off++) |
{ |
OCR0A = off; |
Delay_ms_Mess(50); |
printf("."); |
if(MessLuftdruck < DESIRED_H_ADC) break; |
} |
DruckOffsetSetting = off; |
} |
#else |
off = GetParamByte(PID_PRESSURE_OFFSET); |
if(off > 20) off -= 10; |
OCR0A = off; |
Delay_ms_Mess(100); |
if(MessLuftdruck < DESIRED_H_ADC) off = 0; |
for(; off < 250;off++) |
{ |
OCR0A = off; |
Delay_ms_Mess(50); |
printf("."); |
if(MessLuftdruck < DESIRED_H_ADC) break; |
} |
DruckOffsetSetting = off; |
SetParamByte(PID_PRESSURE_OFFSET, off); |
#endif |
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG) && (DruckOffsetSetting < 10 || DruckOffsetSetting >= 245)) VersionInfo.HardwareError[0] |= FC_ERROR0_PRESSURE; |
OCR0A = off; |
Delay_ms_Mess(300); |
} |
void SucheGyroOffset(void) |
{ |
unsigned char i, ready = 0; |
int timeout; |
timeout = SetDelay(2000); |
for(i=140; i != 0; i--) |
{ |
if(ready == 3 && i > 10) i = 9; |
ready = 0; |
if(AdWertNick < 1020) AnalogOffsetNick--; else if(AdWertNick > 1030) AnalogOffsetNick++; else ready++; |
if(AdWertRoll < 1020) AnalogOffsetRoll--; else if(AdWertRoll > 1030) AnalogOffsetRoll++; else ready++; |
if(AdWertGier < 1020) AnalogOffsetGier--; else if(AdWertGier > 1030) AnalogOffsetGier++; else ready++; |
I2C_Start(TWI_STATE_GYRO_OFFSET_TX); |
if(AnalogOffsetNick < 10) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_NICK; AnalogOffsetNick = 10;}; if(AnalogOffsetNick > 245) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_NICK; AnalogOffsetNick = 245;}; |
if(AnalogOffsetRoll < 10) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_ROLL; AnalogOffsetRoll = 10;}; if(AnalogOffsetRoll > 245) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_ROLL; AnalogOffsetRoll = 245;}; |
if(AnalogOffsetGier < 10) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_YAW; AnalogOffsetGier = 10;}; if(AnalogOffsetGier > 245) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_YAW; AnalogOffsetGier = 245;}; |
while(twi_state) if(CheckDelay(timeout)) {printf("\n\r DAC or I2C ERROR! Check I2C, 3Vref, DAC and BL-Ctrl"); break;} |
AdReady = 0; |
ANALOG_ON; |
while(!AdReady); |
if(i<10) Delay_ms_Mess(10); |
} |
Delay_ms_Mess(70); |
} |
/* |
0 n |
1 r |
2 g |
3 y |
4 x |
5 n |
6 r |
7 u |
8 z |
9 L |
10 n |
11 r |
12 g |
13 y |
14 x |
15 n |
16 r |
17 L |
*/ |
//####################################################################################### |
// |
ISR(ADC_vect) |
//####################################################################################### |
{ |
static unsigned char kanal=0,state = 0; |
static signed char subcount = 0; |
static signed int gier1, roll1, nick1, nick_filter, roll_filter; |
static signed int accy, accx; |
static long tmpLuftdruck = 0; |
static char messanzahl_Druck = 0; |
switch(state++) |
{ |
case 0: |
nick1 = ADC; |
kanal = AD_ROLL; |
break; |
case 1: |
roll1 = ADC; |
kanal = AD_GIER; |
break; |
case 2: |
gier1 = ADC; |
kanal = AD_ACC_Y; |
break; |
case 3: |
Aktuell_ay = NeutralAccY - ADC; |
accy = Aktuell_ay; |
kanal = AD_ACC_X; |
break; |
case 4: |
Aktuell_ax = ADC - NeutralAccX; |
accx = Aktuell_ax; |
kanal = AD_NICK; |
break; |
case 5: |
nick1 += ADC; |
kanal = AD_ROLL; |
break; |
case 6: |
roll1 += ADC; |
kanal = AD_UBAT; |
break; |
case 7: |
UBat = (3 * UBat + ADC / 3) / 4; |
kanal = AD_ACC_Z; |
break; |
case 8: |
AdWertAccHoch = (signed int) ADC - NeutralAccZ; |
if(AdWertAccHoch > 1) |
{ |
if(NeutralAccZ < 750) |
{ |
subcount += 5; |
if(modell_fliegt < 500) subcount += 10; |
} |
if(subcount > 100) { NeutralAccZ++; subcount -= 100;} |
} |
else if(AdWertAccHoch < -1) |
{ |
if(NeutralAccZ > 550) |
{ |
subcount -= 5; |
if(modell_fliegt < 500) subcount -= 10; |
if(subcount < -100) { NeutralAccZ--; subcount += 100;} |
} |
} |
messanzahl_AccHoch = 1; |
Aktuell_az = ADC; |
Mess_Integral_Hoch += AdWertAccHoch; // Integrieren |
Mess_Integral_Hoch -= Mess_Integral_Hoch / 1024; // dämfen |
kanal = AD_DRUCK; |
break; |
// "case 9:" fehlt hier absichtlich |
case 10: |
nick1 += ADC; |
kanal = AD_ROLL; |
break; |
case 11: |
roll1 += ADC; |
kanal = AD_GIER; |
break; |
case 12: |
if(PlatinenVersion == 10) AdWertGier = (ADC + gier1 + 1) / 2; |
else |
if(PlatinenVersion >= 20) AdWertGier = 2047 - (ADC + gier1); |
else AdWertGier = (ADC + gier1); |
kanal = AD_ACC_Y; |
break; |
case 13: |
Aktuell_ay = NeutralAccY - ADC; |
AdWertAccRoll = (Aktuell_ay + accy); |
kanal = AD_ACC_X; |
break; |
case 14: |
Aktuell_ax = ADC - NeutralAccX; |
AdWertAccNick = (Aktuell_ax + accx); |
kanal = AD_NICK; |
break; |
case 15: |
nick1 += ADC; |
if(PlatinenVersion == 10) nick1 *= 2; else nick1 *= 4; |
AdWertNick = nick1 / 8; |
nick_filter = (nick_filter + nick1) / 2; |
HiResNick = nick_filter - AdNeutralNick; |
AdWertNickFilter = (AdWertNickFilter + HiResNick) / 2; |
kanal = AD_ROLL; |
break; |
case 16: |
roll1 += ADC; |
if(PlatinenVersion == 10) roll1 *= 2; else roll1 *= 4; |
AdWertRoll = roll1 / 8; |
roll_filter = (roll_filter + roll1) / 2; |
HiResRoll = roll_filter - AdNeutralRoll; |
AdWertRollFilter = (AdWertRollFilter + HiResRoll) / 2; |
kanal = AD_DRUCK; |
break; |
case 17: |
state = 0; |
AdReady = 1; |
ZaehlMessungen++; |
// "break" fehlt hier absichtlich |
case 9: |
MessLuftdruck = ADC; |
tmpLuftdruck += MessLuftdruck; |
if(++messanzahl_Druck >= 18) |
{ |
Luftdruck = (7 * Luftdruck + tmpLuftdruck - (18 * 523) * (long)ExpandBaro + 4) / 8; // -523.19 counts per 10 counts offset step |
HoehenWert = StartLuftdruck - Luftdruck; |
SummenHoehe -= SummenHoehe/SM_FILTER; |
SummenHoehe += HoehenWert; |
VarioMeter = (31 * VarioMeter + 8 * (int)(HoehenWert - SummenHoehe/SM_FILTER))/32; |
tmpLuftdruck /= 2; |
messanzahl_Druck = 18/2; |
} |
kanal = AD_NICK; |
break; |
default: |
kanal = 0; state = 0; kanal = AD_NICK; |
break; |
} |
ADMUX = kanal; |
if(state != 0) ANALOG_ON; |
} |
/branches/metro/v0.82a metro_Akku+/analog.d |
---|
0,0 → 1,3 |
analog.o analog.d : analog.c main.h old_macros.h printf_P.h timer0.h uart.h \ |
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h \ |
capacity.h eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/analog.h |
---|
0,0 → 1,47 |
#ifndef _ANALOG_H |
#define _ANALOG_H |
/*####################################################################################### |
#######################################################################################*/ |
#define SM_FILTER 16 |
extern volatile int UBat; |
extern volatile int AdWertNick, AdWertRoll, AdWertGier; |
extern volatile int AdWertAccRoll,AdWertAccNick,AdWertAccHoch; |
extern volatile int HiResNick, HiResRoll; |
extern volatile int AdWertNickFilter, AdWertRollFilter, AdWertGierFilter; |
extern volatile int Aktuell_Nick,Aktuell_Roll,Aktuell_Gier,Aktuell_ax, Aktuell_ay,Aktuell_az; |
extern volatile long Luftdruck; |
extern volatile long SummenHoehe; |
extern volatile char messanzahl_Druck; |
extern volatile unsigned int ZaehlMessungen; |
extern unsigned char DruckOffsetSetting; |
extern signed char ExpandBaro; |
extern volatile int VarioMeter; |
extern volatile unsigned int MessLuftdruck; |
extern volatile int StartLuftdruck; |
extern volatile char MessanzahlNick; |
extern unsigned char AnalogOffsetNick,AnalogOffsetRoll,AnalogOffsetGier; |
extern volatile unsigned char AdReady; |
unsigned int ReadADC(unsigned char adc_input); |
void ADC_Init(void); |
void SucheLuftruckOffset(void); |
void SucheGyroOffset(void); |
#define AD_GIER 0 |
#define AD_ROLL 1 |
#define AD_NICK 2 |
#define AD_DRUCK 3 |
#define AD_UBAT 4 |
#define AD_ACC_Z 5 |
#define AD_ACC_Y 6 |
#define AD_ACC_X 7 |
#define ANALOG_OFF ADCSRA=0 |
#define ANALOG_ON ADCSRA=(1<<ADEN)|(1<<ADSC)|(0<<ADATE)|(1<<ADPS2)|(1<<ADPS1)|(1<<ADPS0)|(1<<ADIE) |
//Signle trigger Mode, Interrupt on |
#endif //_ANALOG_H |
/branches/metro/v0.82a metro_Akku+/analog.lst |
---|
0,0 → 1,1304 |
1 .file "analog.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global AdReady |
11 .data |
14 AdReady: |
15 0000 01 .byte 1 |
16 .global AnalogOffsetGier |
19 AnalogOffsetGier: |
20 0001 73 .byte 115 |
21 .global AnalogOffsetRoll |
24 AnalogOffsetRoll: |
25 0002 73 .byte 115 |
26 .global AnalogOffsetNick |
29 AnalogOffsetNick: |
30 0003 73 .byte 115 |
31 .global ZaehlMessungen |
32 .global ZaehlMessungen |
33 .section .bss |
36 ZaehlMessungen: |
37 0000 0000 .skip 2,0 |
38 .global VarioMeter |
39 .global VarioMeter |
42 VarioMeter: |
43 0002 0000 .skip 2,0 |
44 .global ExpandBaro |
45 .global ExpandBaro |
48 ExpandBaro: |
49 0004 00 .skip 1,0 |
50 .global MessLuftdruck |
51 .data |
54 MessLuftdruck: |
55 0004 FF03 .word 1023 |
56 .global SummenHoehe |
57 .global SummenHoehe |
58 .section .bss |
61 SummenHoehe: |
62 0005 0000 0000 .skip 4,0 |
63 .global Luftdruck |
64 .data |
67 Luftdruck: |
68 0006 007D 0000 .long 32000 |
69 .global messanzahl_AccHoch |
70 .global messanzahl_AccHoch |
71 .section .bss |
74 messanzahl_AccHoch: |
75 0009 00 .skip 1,0 |
76 .global AdWertAccHoch |
77 .global AdWertAccHoch |
80 AdWertAccHoch: |
81 000a 0000 .skip 2,0 |
82 .global AdWertAccNick |
83 .global AdWertAccNick |
86 AdWertAccNick: |
87 000c 0000 .skip 2,0 |
88 .global AdWertAccRoll |
89 .global AdWertAccRoll |
92 AdWertAccRoll: |
93 000e 0000 .skip 2,0 |
94 .global AdWertGier |
95 .global AdWertGier |
98 AdWertGier: |
99 0010 0000 .skip 2,0 |
100 .global AdWertRoll |
101 .global AdWertRoll |
104 AdWertRoll: |
105 0012 0000 .skip 2,0 |
106 .global AdWertNick |
107 .global AdWertNick |
110 AdWertNick: |
111 0014 0000 .skip 2,0 |
112 .global HiResRoll |
113 .data |
116 HiResRoll: |
117 000a C409 .word 2500 |
118 .global HiResNick |
121 HiResNick: |
122 000c C409 .word 2500 |
123 .global AdWertGierFilter |
124 .global AdWertGierFilter |
125 .section .bss |
128 AdWertGierFilter: |
129 0016 0000 .skip 2,0 |
130 .global AdWertRollFilter |
131 .global AdWertRollFilter |
134 AdWertRollFilter: |
135 0018 0000 .skip 2,0 |
136 .global AdWertNickFilter |
137 .global AdWertNickFilter |
140 AdWertNickFilter: |
141 001a 0000 .skip 2,0 |
142 .global UBat |
143 .data |
146 UBat: |
147 000e 6400 .word 100 |
148 .text |
149 .global ADC_Init |
151 ADC_Init: |
152 /* prologue: frame size=0 */ |
153 /* prologue end (size=0) */ |
154 0000 1092 7C00 sts 124,__zero_reg__ |
155 0004 8FEC ldi r24,lo8(-49) |
156 0006 8093 7A00 sts 122,r24 |
157 /* epilogue: frame size=0 */ |
158 000a 0895 ret |
159 /* epilogue end (size=1) */ |
160 /* function ADC_Init size 6 (5) */ |
162 .section .progmem.data,"a",@progbits |
165 __c.13: |
166 0000 2E00 .string "." |
167 .text |
168 .global SucheLuftruckOffset |
170 SucheLuftruckOffset: |
171 /* prologue: frame size=0 */ |
172 000c CF93 push r28 |
173 000e DF93 push r29 |
174 /* prologue end (size=2) */ |
175 0010 1092 0000 sts ExpandBaro,__zero_reg__ |
176 0014 83E0 ldi r24,lo8(3) |
177 0016 90E0 ldi r25,hi8(3) |
178 0018 0E94 0000 call GetParamByte |
179 001c C82F mov r28,r24 |
180 001e DD27 clr r29 |
181 0020 C531 cpi r28,21 |
182 0022 D105 cpc r29,__zero_reg__ |
183 0024 08F0 brlo .L3 |
184 0026 2A97 sbiw r28,10 |
185 .L3: |
186 0028 C7BD out 71-0x20,r28 |
187 002a 84E6 ldi r24,lo8(100) |
188 002c 90E0 ldi r25,hi8(100) |
189 002e 0E94 0000 call Delay_ms_Mess |
190 0032 8091 0000 lds r24,MessLuftdruck |
191 0036 9091 0000 lds r25,(MessLuftdruck)+1 |
192 003a 8052 subi r24,lo8(800) |
193 003c 9340 sbci r25,hi8(800) |
194 003e 10F4 brsh .L4 |
195 0040 C0E0 ldi r28,lo8(0) |
196 0042 D0E0 ldi r29,hi8(0) |
197 .L4: |
198 0044 CA3F cpi r28,250 |
199 0046 D105 cpc r29,__zero_reg__ |
200 0048 F8F4 brsh .L6 |
201 004a C7BD out 71-0x20,r28 |
202 004c 82E3 ldi r24,lo8(50) |
203 004e 90E0 ldi r25,hi8(50) |
204 0050 0E94 0000 call Delay_ms_Mess |
205 0054 80E0 ldi r24,lo8(__c.13) |
206 0056 90E0 ldi r25,hi8(__c.13) |
207 0058 9F93 push r25 |
208 005a 8F93 push r24 |
209 005c 80E0 ldi r24,lo8(pm(uart_putchar)) |
210 005e 90E0 ldi r25,hi8(pm(uart_putchar)) |
211 0060 9F93 push r25 |
212 0062 8F93 push r24 |
213 0064 E091 0000 lds r30,_printf_P |
214 0068 F091 0000 lds r31,(_printf_P)+1 |
215 006c 0995 icall |
216 006e 8091 0000 lds r24,MessLuftdruck |
217 0072 9091 0000 lds r25,(MessLuftdruck)+1 |
218 0076 0F90 pop __tmp_reg__ |
219 0078 0F90 pop __tmp_reg__ |
220 007a 0F90 pop __tmp_reg__ |
221 007c 0F90 pop __tmp_reg__ |
222 007e 8052 subi r24,lo8(800) |
223 0080 9340 sbci r25,hi8(800) |
224 0082 10F0 brlo .L6 |
225 0084 2196 adiw r28,1 |
226 0086 DECF rjmp .L4 |
227 .L6: |
228 0088 C093 0000 sts DruckOffsetSetting,r28 |
229 008c 6C2F mov r22,r28 |
230 008e 83E0 ldi r24,lo8(3) |
231 0090 90E0 ldi r25,hi8(3) |
232 0092 0E94 0000 call SetParamByte |
233 0096 8091 0000 lds r24,EE_Parameter+13 |
234 009a 80FF sbrs r24,0 |
235 009c 0AC0 rjmp .L10 |
236 009e 8091 0000 lds r24,DruckOffsetSetting |
237 00a2 8A50 subi r24,lo8(-(-10)) |
238 00a4 8B3E cpi r24,lo8(-21) |
239 00a6 28F0 brlo .L10 |
240 00a8 8091 0000 lds r24,VersionInfo+5 |
241 00ac 8064 ori r24,lo8(64) |
242 00ae 8093 0000 sts VersionInfo+5,r24 |
243 .L10: |
244 00b2 C7BD out 71-0x20,r28 |
245 00b4 8CE2 ldi r24,lo8(300) |
246 00b6 91E0 ldi r25,hi8(300) |
247 00b8 0E94 0000 call Delay_ms_Mess |
248 /* epilogue: frame size=0 */ |
249 00bc DF91 pop r29 |
250 00be CF91 pop r28 |
251 00c0 0895 ret |
252 /* epilogue end (size=3) */ |
253 /* function SucheLuftruckOffset size 93 (88) */ |
255 .section .progmem.data |
258 __c.12: |
259 0002 0A0D 2044 .string "\n\r DAC or I2C ERROR! Check I2C, 3Vref, DAC and BL-Ctrl" |
259 4143 206F |
259 7220 4932 |
259 4320 4552 |
259 524F 5221 |
260 .text |
261 .global SucheGyroOffset |
263 SucheGyroOffset: |
264 /* prologue: frame size=0 */ |
265 00c2 EF92 push r14 |
266 00c4 FF92 push r15 |
267 00c6 1F93 push r17 |
268 00c8 CF93 push r28 |
269 /* prologue end (size=4) */ |
270 00ca 10E0 ldi r17,lo8(0) |
271 00cc 80ED ldi r24,lo8(2000) |
272 00ce 97E0 ldi r25,hi8(2000) |
273 00d0 0E94 0000 call SetDelay |
274 00d4 7C01 movw r14,r24 |
275 00d6 CCE8 ldi r28,lo8(-116) |
276 .L43: |
277 00d8 1330 cpi r17,lo8(3) |
278 00da 19F4 brne .L16 |
279 00dc CB30 cpi r28,lo8(11) |
280 00de 08F0 brlo .L16 |
281 00e0 C9E0 ldi r28,lo8(9) |
282 .L16: |
283 00e2 10E0 ldi r17,lo8(0) |
284 00e4 8091 0000 lds r24,AdWertNick |
285 00e8 9091 0000 lds r25,(AdWertNick)+1 |
286 00ec 8C5F subi r24,lo8(1020) |
287 00ee 9340 sbci r25,hi8(1020) |
288 00f0 24F4 brge .L17 |
289 00f2 8091 0000 lds r24,AnalogOffsetNick |
290 00f6 8150 subi r24,lo8(-(-1)) |
291 00f8 0AC0 rjmp .L48 |
292 .L17: |
293 00fa 8091 0000 lds r24,AdWertNick |
294 00fe 9091 0000 lds r25,(AdWertNick)+1 |
295 0102 8750 subi r24,lo8(1031) |
296 0104 9440 sbci r25,hi8(1031) |
297 0106 34F0 brlt .L19 |
298 0108 8091 0000 lds r24,AnalogOffsetNick |
299 010c 8F5F subi r24,lo8(-(1)) |
300 .L48: |
301 010e 8093 0000 sts AnalogOffsetNick,r24 |
302 0112 01C0 rjmp .L18 |
303 .L19: |
304 0114 11E0 ldi r17,lo8(1) |
305 .L18: |
306 0116 8091 0000 lds r24,AdWertRoll |
307 011a 9091 0000 lds r25,(AdWertRoll)+1 |
308 011e 8C5F subi r24,lo8(1020) |
309 0120 9340 sbci r25,hi8(1020) |
310 0122 24F4 brge .L21 |
311 0124 8091 0000 lds r24,AnalogOffsetRoll |
312 0128 8150 subi r24,lo8(-(-1)) |
313 012a 0AC0 rjmp .L49 |
314 .L21: |
315 012c 8091 0000 lds r24,AdWertRoll |
316 0130 9091 0000 lds r25,(AdWertRoll)+1 |
317 0134 8750 subi r24,lo8(1031) |
318 0136 9440 sbci r25,hi8(1031) |
319 0138 34F0 brlt .L23 |
320 013a 8091 0000 lds r24,AnalogOffsetRoll |
321 013e 8F5F subi r24,lo8(-(1)) |
322 .L49: |
323 0140 8093 0000 sts AnalogOffsetRoll,r24 |
324 0144 01C0 rjmp .L22 |
325 .L23: |
326 0146 1F5F subi r17,lo8(-(1)) |
327 .L22: |
328 0148 8091 0000 lds r24,AdWertGier |
329 014c 9091 0000 lds r25,(AdWertGier)+1 |
330 0150 8C5F subi r24,lo8(1020) |
331 0152 9340 sbci r25,hi8(1020) |
332 0154 24F4 brge .L25 |
333 0156 8091 0000 lds r24,AnalogOffsetGier |
334 015a 8150 subi r24,lo8(-(-1)) |
335 015c 0AC0 rjmp .L50 |
336 .L25: |
337 015e 8091 0000 lds r24,AdWertGier |
338 0162 9091 0000 lds r25,(AdWertGier)+1 |
339 0166 8750 subi r24,lo8(1031) |
340 0168 9440 sbci r25,hi8(1031) |
341 016a C4F0 brlt .L27 |
342 016c 8091 0000 lds r24,AnalogOffsetGier |
343 0170 8F5F subi r24,lo8(-(1)) |
344 .L50: |
345 0172 8093 0000 sts AnalogOffsetGier,r24 |
346 0176 13C0 rjmp .L26 |
347 .L47: |
348 0178 80E0 ldi r24,lo8(__c.12) |
349 017a 90E0 ldi r25,hi8(__c.12) |
350 017c 9F93 push r25 |
351 017e 8F93 push r24 |
352 0180 80E0 ldi r24,lo8(pm(uart_putchar)) |
353 0182 90E0 ldi r25,hi8(pm(uart_putchar)) |
354 0184 9F93 push r25 |
355 0186 8F93 push r24 |
356 0188 E091 0000 lds r30,_printf_P |
357 018c F091 0000 lds r31,(_printf_P)+1 |
358 0190 0995 icall |
359 0192 0F90 pop __tmp_reg__ |
360 0194 0F90 pop __tmp_reg__ |
361 0196 0F90 pop __tmp_reg__ |
362 0198 0F90 pop __tmp_reg__ |
363 019a 5FC0 rjmp .L36 |
364 .L27: |
365 019c 1F5F subi r17,lo8(-(1)) |
366 .L26: |
367 019e 82E1 ldi r24,lo8(18) |
368 01a0 8093 0000 sts twi_state,r24 |
369 01a4 8091 0000 lds r24,BLFlags |
370 01a8 8E7F andi r24,lo8(-2) |
371 01aa 8093 0000 sts BLFlags,r24 |
372 01ae 85EA ldi r24,lo8(-91) |
373 01b0 8093 BC00 sts 188,r24 |
374 01b4 8091 0000 lds r24,AnalogOffsetNick |
375 01b8 8A30 cpi r24,lo8(10) |
376 01ba 40F4 brsh .L29 |
377 01bc 8091 0000 lds r24,VersionInfo+5 |
378 01c0 8160 ori r24,lo8(1) |
379 01c2 8093 0000 sts VersionInfo+5,r24 |
380 01c6 8AE0 ldi r24,lo8(10) |
381 01c8 8093 0000 sts AnalogOffsetNick,r24 |
382 .L29: |
383 01cc 8091 0000 lds r24,AnalogOffsetNick |
384 01d0 863F cpi r24,lo8(-10) |
385 01d2 40F0 brlo .L30 |
386 01d4 8091 0000 lds r24,VersionInfo+5 |
387 01d8 8160 ori r24,lo8(1) |
388 01da 8093 0000 sts VersionInfo+5,r24 |
389 01de 85EF ldi r24,lo8(-11) |
390 01e0 8093 0000 sts AnalogOffsetNick,r24 |
391 .L30: |
392 01e4 8091 0000 lds r24,AnalogOffsetRoll |
393 01e8 8A30 cpi r24,lo8(10) |
394 01ea 40F4 brsh .L31 |
395 01ec 8091 0000 lds r24,VersionInfo+5 |
396 01f0 8260 ori r24,lo8(2) |
397 01f2 8093 0000 sts VersionInfo+5,r24 |
398 01f6 8AE0 ldi r24,lo8(10) |
399 01f8 8093 0000 sts AnalogOffsetRoll,r24 |
400 .L31: |
401 01fc 8091 0000 lds r24,AnalogOffsetRoll |
402 0200 863F cpi r24,lo8(-10) |
403 0202 40F0 brlo .L32 |
404 0204 8091 0000 lds r24,VersionInfo+5 |
405 0208 8260 ori r24,lo8(2) |
406 020a 8093 0000 sts VersionInfo+5,r24 |
407 020e 85EF ldi r24,lo8(-11) |
408 0210 8093 0000 sts AnalogOffsetRoll,r24 |
409 .L32: |
410 0214 8091 0000 lds r24,AnalogOffsetGier |
411 0218 8A30 cpi r24,lo8(10) |
412 021a 40F4 brsh .L33 |
413 021c 8091 0000 lds r24,VersionInfo+5 |
414 0220 8460 ori r24,lo8(4) |
415 0222 8093 0000 sts VersionInfo+5,r24 |
416 0226 8AE0 ldi r24,lo8(10) |
417 0228 8093 0000 sts AnalogOffsetGier,r24 |
418 .L33: |
419 022c 8091 0000 lds r24,AnalogOffsetGier |
420 0230 863F cpi r24,lo8(-10) |
421 0232 40F0 brlo .L34 |
422 0234 8091 0000 lds r24,VersionInfo+5 |
423 0238 8460 ori r24,lo8(4) |
424 023a 8093 0000 sts VersionInfo+5,r24 |
425 023e 85EF ldi r24,lo8(-11) |
426 0240 8093 0000 sts AnalogOffsetGier,r24 |
427 .L34: |
428 0244 8091 0000 lds r24,twi_state |
429 0248 8823 tst r24 |
430 024a 39F0 breq .L36 |
431 024c C701 movw r24,r14 |
432 024e 0E94 0000 call CheckDelay |
433 0252 8823 tst r24 |
434 0254 09F0 breq .+2 |
435 0256 90CF rjmp .L47 |
436 0258 F5CF rjmp .L34 |
437 .L36: |
438 025a 1092 0000 sts AdReady,__zero_reg__ |
439 025e 8FEC ldi r24,lo8(-49) |
440 0260 8093 7A00 sts 122,r24 |
441 .L39: |
442 0264 8091 0000 lds r24,AdReady |
443 0268 8823 tst r24 |
444 026a E1F3 breq .L39 |
445 026c CA30 cpi r28,lo8(10) |
446 026e 20F4 brsh .L15 |
447 0270 8AE0 ldi r24,lo8(10) |
448 0272 90E0 ldi r25,hi8(10) |
449 0274 0E94 0000 call Delay_ms_Mess |
450 .L15: |
451 0278 C150 subi r28,lo8(-(-1)) |
452 027a 09F0 breq .+2 |
453 027c 2DCF rjmp .L43 |
454 027e 86E4 ldi r24,lo8(70) |
455 0280 90E0 ldi r25,hi8(70) |
456 0282 0E94 0000 call Delay_ms_Mess |
457 /* epilogue: frame size=0 */ |
458 0286 CF91 pop r28 |
459 0288 1F91 pop r17 |
460 028a FF90 pop r15 |
461 028c EF90 pop r14 |
462 028e 0895 ret |
463 /* epilogue end (size=5) */ |
464 /* function SucheGyroOffset size 238 (229) */ |
466 .lcomm kanal.0,1 |
467 .lcomm state.1,1 |
468 .lcomm subcount.2,1 |
469 .lcomm gier1.3,2 |
470 .lcomm roll1.4,2 |
471 .lcomm nick1.5,2 |
472 .lcomm nick_filter.6,2 |
473 .lcomm roll_filter.7,2 |
474 .lcomm accy.8,2 |
475 .lcomm accx.9,2 |
476 .lcomm tmpLuftdruck.10,4 |
477 .lcomm messanzahl_Druck.11,1 |
478 .global __vector_24 |
480 __vector_24: |
481 /* prologue: frame size=0 */ |
482 0290 1F92 push __zero_reg__ |
483 0292 0F92 push __tmp_reg__ |
484 0294 0FB6 in __tmp_reg__,__SREG__ |
485 0296 0F92 push __tmp_reg__ |
486 0298 1124 clr __zero_reg__ |
487 029a AF92 push r10 |
488 029c BF92 push r11 |
489 029e CF92 push r12 |
490 02a0 DF92 push r13 |
491 02a2 EF92 push r14 |
492 02a4 FF92 push r15 |
493 02a6 0F93 push r16 |
494 02a8 1F93 push r17 |
495 02aa 2F93 push r18 |
496 02ac 3F93 push r19 |
497 02ae 4F93 push r20 |
498 02b0 5F93 push r21 |
499 02b2 6F93 push r22 |
500 02b4 7F93 push r23 |
501 02b6 8F93 push r24 |
502 02b8 9F93 push r25 |
503 02ba AF93 push r26 |
504 02bc BF93 push r27 |
505 02be EF93 push r30 |
506 02c0 FF93 push r31 |
507 /* prologue end (size=25) */ |
508 02c2 8091 0000 lds r24,state.1 |
509 02c6 282F mov r18,r24 |
510 02c8 3327 clr r19 |
511 02ca 4427 clr r20 |
512 02cc 5527 clr r21 |
513 02ce 8F5F subi r24,lo8(-(1)) |
514 02d0 8093 0000 sts state.1,r24 |
515 02d4 F901 movw r30,r18 |
516 02d6 2231 cpi r18,18 |
517 02d8 3105 cpc r19,__zero_reg__ |
518 02da 08F0 brlo .+2 |
519 02dc 8CC3 rjmp .L101 |
520 02de E050 subi r30,lo8(-(pm(.L102))) |
521 02e0 F040 sbci r31,hi8(-(pm(.L102))) |
522 02e2 0C94 0000 jmp __tablejump2__ |
523 .data |
524 .section .progmem.gcc_sw_table, "a", @progbits |
525 .p2align 1 |
526 .L102: |
527 0000 0000 .word pm(.L53) |
528 0002 0000 .word pm(.L54) |
529 0004 0000 .word pm(.L55) |
530 0006 0000 .word pm(.L56) |
531 0008 0000 .word pm(.L57) |
532 000a 0000 .word pm(.L58) |
533 000c 0000 .word pm(.L59) |
534 000e 0000 .word pm(.L60) |
535 0010 0000 .word pm(.L61) |
536 0012 0000 .word pm(.L94) |
537 0014 0000 .word pm(.L58) |
538 0016 0000 .word pm(.L73) |
539 0018 0000 .word pm(.L74) |
540 001a 0000 .word pm(.L79) |
541 001c 0000 .word pm(.L80) |
542 001e 0000 .word pm(.L81) |
543 0020 0000 .word pm(.L87) |
544 0022 0000 .word pm(.L93) |
545 .text |
546 .L53: |
547 02e6 8091 7800 lds r24,120 |
548 02ea 9091 7900 lds r25,(120)+1 |
549 02ee 46C0 rjmp .L111 |
550 .L54: |
551 02f0 8091 7800 lds r24,120 |
552 02f4 9091 7900 lds r25,(120)+1 |
553 02f8 2CC1 rjmp .L110 |
554 .L55: |
555 02fa 8091 7800 lds r24,120 |
556 02fe 9091 7900 lds r25,(120)+1 |
557 0302 9093 0000 sts (gier1.3)+1,r25 |
558 0306 8093 0000 sts gier1.3,r24 |
559 030a 57C1 rjmp .L112 |
560 .L56: |
561 030c 8091 0000 lds r24,NeutralAccY |
562 0310 9091 0000 lds r25,(NeutralAccY)+1 |
563 0314 2091 7800 lds r18,120 |
564 0318 3091 7900 lds r19,(120)+1 |
565 031c 821B sub r24,r18 |
566 031e 930B sbc r25,r19 |
567 0320 9093 0000 sts (Aktuell_ay)+1,r25 |
568 0324 8093 0000 sts Aktuell_ay,r24 |
569 0328 8091 0000 lds r24,Aktuell_ay |
570 032c 9091 0000 lds r25,(Aktuell_ay)+1 |
571 0330 9093 0000 sts (accy.8)+1,r25 |
572 0334 8093 0000 sts accy.8,r24 |
573 0338 5EC1 rjmp .L113 |
574 .L57: |
575 033a 8091 7800 lds r24,120 |
576 033e 9091 7900 lds r25,(120)+1 |
577 0342 2091 0000 lds r18,NeutralAccX |
578 0346 3091 0000 lds r19,(NeutralAccX)+1 |
579 034a 821B sub r24,r18 |
580 034c 930B sbc r25,r19 |
581 034e 9093 0000 sts (Aktuell_ax)+1,r25 |
582 0352 8093 0000 sts Aktuell_ax,r24 |
583 0356 8091 0000 lds r24,Aktuell_ax |
584 035a 9091 0000 lds r25,(Aktuell_ax)+1 |
585 035e 9093 0000 sts (accx.9)+1,r25 |
586 0362 8093 0000 sts accx.9,r24 |
587 0366 49C3 rjmp .L108 |
588 .L58: |
589 0368 8091 0000 lds r24,nick1.5 |
590 036c 9091 0000 lds r25,(nick1.5)+1 |
591 0370 2091 7800 lds r18,120 |
592 0374 3091 7900 lds r19,(120)+1 |
593 0378 820F add r24,r18 |
594 037a 931F adc r25,r19 |
595 .L111: |
596 037c 9093 0000 sts (nick1.5)+1,r25 |
597 0380 8093 0000 sts nick1.5,r24 |
598 .L115: |
599 0384 81E0 ldi r24,lo8(1) |
600 0386 3AC3 rjmp .L109 |
601 .L59: |
602 0388 8091 0000 lds r24,roll1.4 |
603 038c 9091 0000 lds r25,(roll1.4)+1 |
604 0390 2091 7800 lds r18,120 |
605 0394 3091 7900 lds r19,(120)+1 |
606 0398 820F add r24,r18 |
607 039a 931F adc r25,r19 |
608 039c 9093 0000 sts (roll1.4)+1,r25 |
609 03a0 8093 0000 sts roll1.4,r24 |
610 03a4 84E0 ldi r24,lo8(4) |
611 03a6 2AC3 rjmp .L109 |
612 .L60: |
613 03a8 8091 0000 lds r24,UBat |
614 03ac 9091 0000 lds r25,(UBat)+1 |
615 03b0 9C01 movw r18,r24 |
616 03b2 220F lsl r18 |
617 03b4 331F rol r19 |
618 03b6 280F add r18,r24 |
619 03b8 391F adc r19,r25 |
620 03ba 8091 7800 lds r24,120 |
621 03be 9091 7900 lds r25,(120)+1 |
622 03c2 63E0 ldi r22,lo8(3) |
623 03c4 70E0 ldi r23,hi8(3) |
624 03c6 0E94 0000 call __udivmodhi4 |
625 03ca 260F add r18,r22 |
626 03cc 371F adc r19,r23 |
627 03ce 3695 lsr r19 |
628 03d0 2795 ror r18 |
629 03d2 3695 lsr r19 |
630 03d4 2795 ror r18 |
631 03d6 3093 0000 sts (UBat)+1,r19 |
632 03da 2093 0000 sts UBat,r18 |
633 03de 85E0 ldi r24,lo8(5) |
634 03e0 0DC3 rjmp .L109 |
635 .L61: |
636 03e2 8091 7800 lds r24,120 |
637 03e6 9091 7900 lds r25,(120)+1 |
638 03ea 4091 0000 lds r20,NeutralAccZ |
639 03ee 5091 0000 lds r21,(NeutralAccZ)+1 |
640 03f2 841B sub r24,r20 |
641 03f4 950B sbc r25,r21 |
642 03f6 9093 0000 sts (AdWertAccHoch)+1,r25 |
643 03fa 8093 0000 sts AdWertAccHoch,r24 |
644 03fe 8091 0000 lds r24,AdWertAccHoch |
645 0402 9091 0000 lds r25,(AdWertAccHoch)+1 |
646 0406 0297 sbiw r24,2 |
647 0408 04F1 brlt .L62 |
648 040a 22E0 ldi r18,hi8(750) |
649 040c 4E3E cpi r20,lo8(750) |
650 040e 5207 cpc r21,r18 |
651 0410 84F4 brge .L63 |
652 0412 2091 0000 lds r18,subcount.2 |
653 0416 2B5F subi r18,lo8(-(5)) |
654 0418 2093 0000 sts subcount.2,r18 |
655 041c 2550 subi r18,lo8(-(-5)) |
656 041e 8091 0000 lds r24,modell_fliegt |
657 0422 9091 0000 lds r25,(modell_fliegt)+1 |
658 0426 845F subi r24,lo8(500) |
659 0428 9140 sbci r25,hi8(500) |
660 042a 18F4 brsh .L63 |
661 042c 215F subi r18,lo8(-(15)) |
662 042e 2093 0000 sts subcount.2,r18 |
663 .L63: |
664 0432 8091 0000 lds r24,subcount.2 |
665 0436 8536 cpi r24,lo8(101) |
666 0438 84F1 brlt .L66 |
667 043a 4F5F subi r20,lo8(-(1)) |
668 043c 5F4F sbci r21,hi8(-(1)) |
669 043e 5093 0000 sts (NeutralAccZ)+1,r21 |
670 0442 4093 0000 sts NeutralAccZ,r20 |
671 0446 8456 subi r24,lo8(-(-100)) |
672 0448 26C0 rjmp .L104 |
673 .L62: |
674 044a 8091 0000 lds r24,AdWertAccHoch |
675 044e 9091 0000 lds r25,(AdWertAccHoch)+1 |
676 0452 8F5F subi r24,lo8(-1) |
677 0454 9F4F sbci r25,hi8(-1) |
678 0456 0CF5 brge .L66 |
679 0458 32E0 ldi r19,hi8(551) |
680 045a 4732 cpi r20,lo8(551) |
681 045c 5307 cpc r21,r19 |
682 045e ECF0 brlt .L66 |
683 0460 2091 0000 lds r18,subcount.2 |
684 0464 2550 subi r18,lo8(-(-5)) |
685 0466 2093 0000 sts subcount.2,r18 |
686 046a 2B5F subi r18,lo8(-(5)) |
687 046c 8091 0000 lds r24,modell_fliegt |
688 0470 9091 0000 lds r25,(modell_fliegt)+1 |
689 0474 845F subi r24,lo8(500) |
690 0476 9140 sbci r25,hi8(500) |
691 0478 18F4 brsh .L69 |
692 047a 2F50 subi r18,lo8(-(-15)) |
693 047c 2093 0000 sts subcount.2,r18 |
694 .L69: |
695 0480 8091 0000 lds r24,subcount.2 |
696 0484 8C39 cpi r24,lo8(-100) |
697 0486 4CF4 brge .L66 |
698 0488 4150 subi r20,lo8(-(-1)) |
699 048a 5040 sbci r21,hi8(-(-1)) |
700 048c 5093 0000 sts (NeutralAccZ)+1,r21 |
701 0490 4093 0000 sts NeutralAccZ,r20 |
702 0494 8C59 subi r24,lo8(-(100)) |
703 .L104: |
704 0496 8093 0000 sts subcount.2,r24 |
705 .L66: |
706 049a 81E0 ldi r24,lo8(1) |
707 049c 8093 0000 sts messanzahl_AccHoch,r24 |
708 04a0 8091 7800 lds r24,120 |
709 04a4 9091 7900 lds r25,(120)+1 |
710 04a8 9093 0000 sts (Aktuell_az)+1,r25 |
711 04ac 8093 0000 sts Aktuell_az,r24 |
712 04b0 8091 0000 lds r24,AdWertAccHoch |
713 04b4 9091 0000 lds r25,(AdWertAccHoch)+1 |
714 04b8 9C01 movw r18,r24 |
715 04ba 4427 clr r20 |
716 04bc 37FD sbrc r19,7 |
717 04be 4095 com r20 |
718 04c0 542F mov r21,r20 |
719 04c2 8091 0000 lds r24,Mess_Integral_Hoch |
720 04c6 9091 0000 lds r25,(Mess_Integral_Hoch)+1 |
721 04ca A091 0000 lds r26,(Mess_Integral_Hoch)+2 |
722 04ce B091 0000 lds r27,(Mess_Integral_Hoch)+3 |
723 04d2 820F add r24,r18 |
724 04d4 931F adc r25,r19 |
725 04d6 A41F adc r26,r20 |
726 04d8 B51F adc r27,r21 |
727 04da 8093 0000 sts Mess_Integral_Hoch,r24 |
728 04de 9093 0000 sts (Mess_Integral_Hoch)+1,r25 |
729 04e2 A093 0000 sts (Mess_Integral_Hoch)+2,r26 |
730 04e6 B093 0000 sts (Mess_Integral_Hoch)+3,r27 |
731 04ea 2091 0000 lds r18,Mess_Integral_Hoch |
732 04ee 3091 0000 lds r19,(Mess_Integral_Hoch)+1 |
733 04f2 4091 0000 lds r20,(Mess_Integral_Hoch)+2 |
734 04f6 5091 0000 lds r21,(Mess_Integral_Hoch)+3 |
735 04fa 57FF sbrs r21,7 |
736 04fc 04C0 rjmp .L71 |
737 04fe 2150 subi r18,lo8(-(1023)) |
738 0500 3C4F sbci r19,hi8(-(1023)) |
739 0502 4F4F sbci r20,hlo8(-(1023)) |
740 0504 5F4F sbci r21,hhi8(-(1023)) |
741 .L71: |
742 0506 0AE0 ldi r16,10 |
743 0508 5595 1: asr r21 |
744 050a 4795 ror r20 |
745 050c 3795 ror r19 |
746 050e 2795 ror r18 |
747 0510 0A95 dec r16 |
748 0512 D1F7 brne 1b |
749 0514 8091 0000 lds r24,Mess_Integral_Hoch |
750 0518 9091 0000 lds r25,(Mess_Integral_Hoch)+1 |
751 051c A091 0000 lds r26,(Mess_Integral_Hoch)+2 |
752 0520 B091 0000 lds r27,(Mess_Integral_Hoch)+3 |
753 0524 821B sub r24,r18 |
754 0526 930B sbc r25,r19 |
755 0528 A40B sbc r26,r20 |
756 052a B50B sbc r27,r21 |
757 052c 8093 0000 sts Mess_Integral_Hoch,r24 |
758 0530 9093 0000 sts (Mess_Integral_Hoch)+1,r25 |
759 0534 A093 0000 sts (Mess_Integral_Hoch)+2,r26 |
760 0538 B093 0000 sts (Mess_Integral_Hoch)+3,r27 |
761 053c 2EC1 rjmp .L114 |
762 .L73: |
763 053e 8091 0000 lds r24,roll1.4 |
764 0542 9091 0000 lds r25,(roll1.4)+1 |
765 0546 2091 7800 lds r18,120 |
766 054a 3091 7900 lds r19,(120)+1 |
767 054e 820F add r24,r18 |
768 0550 931F adc r25,r19 |
769 .L110: |
770 0552 9093 0000 sts (roll1.4)+1,r25 |
771 0556 8093 0000 sts roll1.4,r24 |
772 055a 1092 0000 sts kanal.0,__zero_reg__ |
773 055e 50C2 rjmp .L52 |
774 .L74: |
775 0560 8091 0000 lds r24,PlatinenVersion |
776 0564 8A30 cpi r24,lo8(10) |
777 0566 71F4 brne .L75 |
778 0568 8091 7800 lds r24,120 |
779 056c 9091 7900 lds r25,(120)+1 |
780 0570 2091 0000 lds r18,gier1.3 |
781 0574 3091 0000 lds r19,(gier1.3)+1 |
782 0578 820F add r24,r18 |
783 057a 931F adc r25,r19 |
784 057c 0196 adiw r24,1 |
785 057e 9695 lsr r25 |
786 0580 8795 ror r24 |
787 0582 17C0 rjmp .L105 |
788 .L75: |
789 0584 4091 0000 lds r20,gier1.3 |
790 0588 5091 0000 lds r21,(gier1.3)+1 |
791 058c 8431 cpi r24,lo8(20) |
792 058e 58F0 brlo .L77 |
793 0590 2091 7800 lds r18,120 |
794 0594 3091 7900 lds r19,(120)+1 |
795 0598 240F add r18,r20 |
796 059a 351F adc r19,r21 |
797 059c 8FEF ldi r24,lo8(2047) |
798 059e 97E0 ldi r25,hi8(2047) |
799 05a0 821B sub r24,r18 |
800 05a2 930B sbc r25,r19 |
801 05a4 06C0 rjmp .L105 |
802 .L77: |
803 05a6 8091 7800 lds r24,120 |
804 05aa 9091 7900 lds r25,(120)+1 |
805 05ae 840F add r24,r20 |
806 05b0 951F adc r25,r21 |
807 .L105: |
808 05b2 9093 0000 sts (AdWertGier)+1,r25 |
809 05b6 8093 0000 sts AdWertGier,r24 |
810 .L112: |
811 05ba 86E0 ldi r24,lo8(6) |
812 05bc 1FC2 rjmp .L109 |
813 .L79: |
814 05be 8091 0000 lds r24,NeutralAccY |
815 05c2 9091 0000 lds r25,(NeutralAccY)+1 |
816 05c6 2091 7800 lds r18,120 |
817 05ca 3091 7900 lds r19,(120)+1 |
818 05ce 821B sub r24,r18 |
819 05d0 930B sbc r25,r19 |
820 05d2 9093 0000 sts (Aktuell_ay)+1,r25 |
821 05d6 8093 0000 sts Aktuell_ay,r24 |
822 05da 8091 0000 lds r24,Aktuell_ay |
823 05de 9091 0000 lds r25,(Aktuell_ay)+1 |
824 05e2 2091 0000 lds r18,accy.8 |
825 05e6 3091 0000 lds r19,(accy.8)+1 |
826 05ea 820F add r24,r18 |
827 05ec 931F adc r25,r19 |
828 05ee 9093 0000 sts (AdWertAccRoll)+1,r25 |
829 05f2 8093 0000 sts AdWertAccRoll,r24 |
830 .L113: |
831 05f6 87E0 ldi r24,lo8(7) |
832 05f8 01C2 rjmp .L109 |
833 .L80: |
834 05fa 8091 7800 lds r24,120 |
835 05fe 9091 7900 lds r25,(120)+1 |
836 0602 2091 0000 lds r18,NeutralAccX |
837 0606 3091 0000 lds r19,(NeutralAccX)+1 |
838 060a 821B sub r24,r18 |
839 060c 930B sbc r25,r19 |
840 060e 9093 0000 sts (Aktuell_ax)+1,r25 |
841 0612 8093 0000 sts Aktuell_ax,r24 |
842 0616 8091 0000 lds r24,Aktuell_ax |
843 061a 9091 0000 lds r25,(Aktuell_ax)+1 |
844 061e 2091 0000 lds r18,accx.9 |
845 0622 3091 0000 lds r19,(accx.9)+1 |
846 0626 820F add r24,r18 |
847 0628 931F adc r25,r19 |
848 062a 9093 0000 sts (AdWertAccNick)+1,r25 |
849 062e 8093 0000 sts AdWertAccNick,r24 |
850 0632 E3C1 rjmp .L108 |
851 .L81: |
852 0634 2091 0000 lds r18,nick1.5 |
853 0638 3091 0000 lds r19,(nick1.5)+1 |
854 063c 8091 7800 lds r24,120 |
855 0640 9091 7900 lds r25,(120)+1 |
856 0644 280F add r18,r24 |
857 0646 391F adc r19,r25 |
858 0648 3093 0000 sts (nick1.5)+1,r19 |
859 064c 2093 0000 sts nick1.5,r18 |
860 0650 8091 0000 lds r24,PlatinenVersion |
861 0654 8A30 cpi r24,lo8(10) |
862 0656 19F4 brne .L82 |
863 0658 220F add r18,r18 |
864 065a 331F adc r19,r19 |
865 065c 04C0 rjmp .L106 |
866 .L82: |
867 065e 220F lsl r18 |
868 0660 331F rol r19 |
869 0662 220F lsl r18 |
870 0664 331F rol r19 |
871 .L106: |
872 0666 3093 0000 sts (nick1.5)+1,r19 |
873 066a 2093 0000 sts nick1.5,r18 |
874 066e 2091 0000 lds r18,nick1.5 |
875 0672 3091 0000 lds r19,(nick1.5)+1 |
876 0676 C901 movw r24,r18 |
877 0678 37FD sbrc r19,7 |
878 067a 0796 adiw r24,7 |
879 .L84: |
880 067c A3E0 ldi r26,3 |
881 067e 9595 1: asr r25 |
882 0680 8795 ror r24 |
883 0682 AA95 dec r26 |
884 0684 E1F7 brne 1b |
885 0686 9093 0000 sts (AdWertNick)+1,r25 |
886 068a 8093 0000 sts AdWertNick,r24 |
887 068e 8091 0000 lds r24,nick_filter.6 |
888 0692 9091 0000 lds r25,(nick_filter.6)+1 |
889 0696 820F add r24,r18 |
890 0698 931F adc r25,r19 |
891 069a 97FD sbrc r25,7 |
892 069c 0196 adiw r24,1 |
893 .L85: |
894 069e 9595 asr r25 |
895 06a0 8795 ror r24 |
896 06a2 9093 0000 sts (nick_filter.6)+1,r25 |
897 06a6 8093 0000 sts nick_filter.6,r24 |
898 06aa 2091 0000 lds r18,AdNeutralNick |
899 06ae 3091 0000 lds r19,(AdNeutralNick)+1 |
900 06b2 821B sub r24,r18 |
901 06b4 930B sbc r25,r19 |
902 06b6 9093 0000 sts (HiResNick)+1,r25 |
903 06ba 8093 0000 sts HiResNick,r24 |
904 06be 2091 0000 lds r18,AdWertNickFilter |
905 06c2 3091 0000 lds r19,(AdWertNickFilter)+1 |
906 06c6 8091 0000 lds r24,HiResNick |
907 06ca 9091 0000 lds r25,(HiResNick)+1 |
908 06ce 280F add r18,r24 |
909 06d0 391F adc r19,r25 |
910 06d2 37FF sbrs r19,7 |
911 06d4 02C0 rjmp .L86 |
912 06d6 2F5F subi r18,lo8(-(1)) |
913 06d8 3F4F sbci r19,hi8(-(1)) |
914 .L86: |
915 06da 3595 asr r19 |
916 06dc 2795 ror r18 |
917 06de 3093 0000 sts (AdWertNickFilter)+1,r19 |
918 06e2 2093 0000 sts AdWertNickFilter,r18 |
919 06e6 4ECE rjmp .L115 |
920 .L87: |
921 06e8 2091 0000 lds r18,roll1.4 |
922 06ec 3091 0000 lds r19,(roll1.4)+1 |
923 06f0 8091 7800 lds r24,120 |
924 06f4 9091 7900 lds r25,(120)+1 |
925 06f8 280F add r18,r24 |
926 06fa 391F adc r19,r25 |
927 06fc 3093 0000 sts (roll1.4)+1,r19 |
928 0700 2093 0000 sts roll1.4,r18 |
929 0704 8091 0000 lds r24,PlatinenVersion |
930 0708 8A30 cpi r24,lo8(10) |
931 070a 19F4 brne .L88 |
932 070c 220F add r18,r18 |
933 070e 331F adc r19,r19 |
934 0710 04C0 rjmp .L107 |
935 .L88: |
936 0712 220F lsl r18 |
937 0714 331F rol r19 |
938 0716 220F lsl r18 |
939 0718 331F rol r19 |
940 .L107: |
941 071a 3093 0000 sts (roll1.4)+1,r19 |
942 071e 2093 0000 sts roll1.4,r18 |
943 0722 2091 0000 lds r18,roll1.4 |
944 0726 3091 0000 lds r19,(roll1.4)+1 |
945 072a C901 movw r24,r18 |
946 072c 37FD sbrc r19,7 |
947 072e 0796 adiw r24,7 |
948 .L90: |
949 0730 63E0 ldi r22,3 |
950 0732 9595 1: asr r25 |
951 0734 8795 ror r24 |
952 0736 6A95 dec r22 |
953 0738 E1F7 brne 1b |
954 073a 9093 0000 sts (AdWertRoll)+1,r25 |
955 073e 8093 0000 sts AdWertRoll,r24 |
956 0742 8091 0000 lds r24,roll_filter.7 |
957 0746 9091 0000 lds r25,(roll_filter.7)+1 |
958 074a 820F add r24,r18 |
959 074c 931F adc r25,r19 |
960 074e 97FD sbrc r25,7 |
961 0750 0196 adiw r24,1 |
962 .L91: |
963 0752 9595 asr r25 |
964 0754 8795 ror r24 |
965 0756 9093 0000 sts (roll_filter.7)+1,r25 |
966 075a 8093 0000 sts roll_filter.7,r24 |
967 075e 2091 0000 lds r18,AdNeutralRoll |
968 0762 3091 0000 lds r19,(AdNeutralRoll)+1 |
969 0766 821B sub r24,r18 |
970 0768 930B sbc r25,r19 |
971 076a 9093 0000 sts (HiResRoll)+1,r25 |
972 076e 8093 0000 sts HiResRoll,r24 |
973 0772 2091 0000 lds r18,AdWertRollFilter |
974 0776 3091 0000 lds r19,(AdWertRollFilter)+1 |
975 077a 8091 0000 lds r24,HiResRoll |
976 077e 9091 0000 lds r25,(HiResRoll)+1 |
977 0782 280F add r18,r24 |
978 0784 391F adc r19,r25 |
979 0786 37FF sbrs r19,7 |
980 0788 02C0 rjmp .L92 |
981 078a 2F5F subi r18,lo8(-(1)) |
982 078c 3F4F sbci r19,hi8(-(1)) |
983 .L92: |
984 078e 3595 asr r19 |
985 0790 2795 ror r18 |
986 0792 3093 0000 sts (AdWertRollFilter)+1,r19 |
987 0796 2093 0000 sts AdWertRollFilter,r18 |
988 .L114: |
989 079a 83E0 ldi r24,lo8(3) |
990 079c 2FC1 rjmp .L109 |
991 .L93: |
992 079e 1092 0000 sts state.1,__zero_reg__ |
993 07a2 81E0 ldi r24,lo8(1) |
994 07a4 8093 0000 sts AdReady,r24 |
995 07a8 8091 0000 lds r24,ZaehlMessungen |
996 07ac 9091 0000 lds r25,(ZaehlMessungen)+1 |
997 07b0 0196 adiw r24,1 |
998 07b2 9093 0000 sts (ZaehlMessungen)+1,r25 |
999 07b6 8093 0000 sts ZaehlMessungen,r24 |
1000 .L94: |
1001 07ba 8091 7800 lds r24,120 |
1002 07be 9091 7900 lds r25,(120)+1 |
1003 07c2 9093 0000 sts (MessLuftdruck)+1,r25 |
1004 07c6 8093 0000 sts MessLuftdruck,r24 |
1005 07ca 8091 0000 lds r24,MessLuftdruck |
1006 07ce 9091 0000 lds r25,(MessLuftdruck)+1 |
1007 07d2 AA27 clr r26 |
1008 07d4 BB27 clr r27 |
1009 07d6 A090 0000 lds r10,tmpLuftdruck.10 |
1010 07da B090 0000 lds r11,(tmpLuftdruck.10)+1 |
1011 07de C090 0000 lds r12,(tmpLuftdruck.10)+2 |
1012 07e2 D090 0000 lds r13,(tmpLuftdruck.10)+3 |
1013 07e6 A80E add r10,r24 |
1014 07e8 B91E adc r11,r25 |
1015 07ea CA1E adc r12,r26 |
1016 07ec DB1E adc r13,r27 |
1017 07ee A092 0000 sts tmpLuftdruck.10,r10 |
1018 07f2 B092 0000 sts (tmpLuftdruck.10)+1,r11 |
1019 07f6 C092 0000 sts (tmpLuftdruck.10)+2,r12 |
1020 07fa D092 0000 sts (tmpLuftdruck.10)+3,r13 |
1021 07fe 8091 0000 lds r24,messanzahl_Druck.11 |
1022 0802 8F5F subi r24,lo8(-(1)) |
1023 0804 8093 0000 sts messanzahl_Druck.11,r24 |
1024 0808 8231 cpi r24,lo8(18) |
1025 080a 08F4 brsh .+2 |
1026 080c F6C0 rjmp .L108 |
1027 080e 8091 0000 lds r24,Luftdruck |
1028 0812 9091 0000 lds r25,(Luftdruck)+1 |
1029 0816 A091 0000 lds r26,(Luftdruck)+2 |
1030 081a B091 0000 lds r27,(Luftdruck)+3 |
1031 081e 7C01 movw r14,r24 |
1032 0820 8D01 movw r16,r26 |
1033 0822 23E0 ldi r18,3 |
1034 0824 EE0C 1: lsl r14 |
1035 0826 FF1C rol r15 |
1036 0828 001F rol r16 |
1037 082a 111F rol r17 |
1038 082c 2A95 dec r18 |
1039 082e D1F7 brne 1b |
1040 0830 E81A sub r14,r24 |
1041 0832 F90A sbc r15,r25 |
1042 0834 0A0B sbc r16,r26 |
1043 0836 1B0B sbc r17,r27 |
1044 0838 EA0C add r14,r10 |
1045 083a FB1C adc r15,r11 |
1046 083c 0C1D adc r16,r12 |
1047 083e 1D1D adc r17,r13 |
1048 0840 8091 0000 lds r24,ExpandBaro |
1049 0844 9927 clr r25 |
1050 0846 87FD sbrc r24,7 |
1051 0848 9095 com r25 |
1052 084a A92F mov r26,r25 |
1053 084c B92F mov r27,r25 |
1054 084e BC01 movw r22,r24 |
1055 0850 CD01 movw r24,r26 |
1056 0852 26EC ldi r18,lo8(9414) |
1057 0854 34E2 ldi r19,hi8(9414) |
1058 0856 40E0 ldi r20,hlo8(9414) |
1059 0858 50E0 ldi r21,hhi8(9414) |
1060 085a 0E94 0000 call __mulsi3 |
1061 085e DC01 movw r26,r24 |
1062 0860 CB01 movw r24,r22 |
1063 0862 E81A sub r14,r24 |
1064 0864 F90A sbc r15,r25 |
1065 0866 0A0B sbc r16,r26 |
1066 0868 1B0B sbc r17,r27 |
1067 086a D801 movw r26,r16 |
1068 086c C701 movw r24,r14 |
1069 086e 0496 adiw r24,4 |
1070 0870 A11D adc r26,__zero_reg__ |
1071 0872 B11D adc r27,__zero_reg__ |
1072 0874 B7FF sbrs r27,7 |
1073 0876 05C0 rjmp .L96 |
1074 0878 D801 movw r26,r16 |
1075 087a C701 movw r24,r14 |
1076 087c 0B96 adiw r24,11 |
1077 087e A11D adc r26,__zero_reg__ |
1078 0880 B11D adc r27,__zero_reg__ |
1079 .L96: |
1080 0882 13E0 ldi r17,3 |
1081 0884 B595 1: asr r27 |
1082 0886 A795 ror r26 |
1083 0888 9795 ror r25 |
1084 088a 8795 ror r24 |
1085 088c 1A95 dec r17 |
1086 088e D1F7 brne 1b |
1087 0890 8093 0000 sts Luftdruck,r24 |
1088 0894 9093 0000 sts (Luftdruck)+1,r25 |
1089 0898 A093 0000 sts (Luftdruck)+2,r26 |
1090 089c B093 0000 sts (Luftdruck)+3,r27 |
1091 08a0 8091 0000 lds r24,StartLuftdruck |
1092 08a4 9091 0000 lds r25,(StartLuftdruck)+1 |
1093 08a8 7C01 movw r14,r24 |
1094 08aa 0027 clr r16 |
1095 08ac F7FC sbrc r15,7 |
1096 08ae 0095 com r16 |
1097 08b0 102F mov r17,r16 |
1098 08b2 8091 0000 lds r24,Luftdruck |
1099 08b6 9091 0000 lds r25,(Luftdruck)+1 |
1100 08ba A091 0000 lds r26,(Luftdruck)+2 |
1101 08be B091 0000 lds r27,(Luftdruck)+3 |
1102 08c2 E81A sub r14,r24 |
1103 08c4 F90A sbc r15,r25 |
1104 08c6 0A0B sbc r16,r26 |
1105 08c8 1B0B sbc r17,r27 |
1106 08ca E092 0000 sts HoehenWert,r14 |
1107 08ce F092 0000 sts (HoehenWert)+1,r15 |
1108 08d2 0093 0000 sts (HoehenWert)+2,r16 |
1109 08d6 1093 0000 sts (HoehenWert)+3,r17 |
1110 08da 2091 0000 lds r18,SummenHoehe |
1111 08de 3091 0000 lds r19,(SummenHoehe)+1 |
1112 08e2 4091 0000 lds r20,(SummenHoehe)+2 |
1113 08e6 5091 0000 lds r21,(SummenHoehe)+3 |
1114 08ea 57FF sbrs r21,7 |
1115 08ec 04C0 rjmp .L97 |
1116 08ee 215F subi r18,lo8(-(15)) |
1117 08f0 3F4F sbci r19,hi8(-(15)) |
1118 08f2 4F4F sbci r20,hlo8(-(15)) |
1119 08f4 5F4F sbci r21,hhi8(-(15)) |
1120 .L97: |
1121 08f6 F4E0 ldi r31,4 |
1122 08f8 5595 1: asr r21 |
1123 08fa 4795 ror r20 |
1124 08fc 3795 ror r19 |
1125 08fe 2795 ror r18 |
1126 0900 FA95 dec r31 |
1127 0902 D1F7 brne 1b |
1128 0904 8091 0000 lds r24,SummenHoehe |
1129 0908 9091 0000 lds r25,(SummenHoehe)+1 |
1130 090c A091 0000 lds r26,(SummenHoehe)+2 |
1131 0910 B091 0000 lds r27,(SummenHoehe)+3 |
1132 0914 821B sub r24,r18 |
1133 0916 930B sbc r25,r19 |
1134 0918 A40B sbc r26,r20 |
1135 091a B50B sbc r27,r21 |
1136 091c 8093 0000 sts SummenHoehe,r24 |
1137 0920 9093 0000 sts (SummenHoehe)+1,r25 |
1138 0924 A093 0000 sts (SummenHoehe)+2,r26 |
1139 0928 B093 0000 sts (SummenHoehe)+3,r27 |
1140 092c 8091 0000 lds r24,SummenHoehe |
1141 0930 9091 0000 lds r25,(SummenHoehe)+1 |
1142 0934 A091 0000 lds r26,(SummenHoehe)+2 |
1143 0938 B091 0000 lds r27,(SummenHoehe)+3 |
1144 093c 8E0D add r24,r14 |
1145 093e 9F1D adc r25,r15 |
1146 0940 A01F adc r26,r16 |
1147 0942 B11F adc r27,r17 |
1148 0944 8093 0000 sts SummenHoehe,r24 |
1149 0948 9093 0000 sts (SummenHoehe)+1,r25 |
1150 094c A093 0000 sts (SummenHoehe)+2,r26 |
1151 0950 B093 0000 sts (SummenHoehe)+3,r27 |
1152 0954 8091 0000 lds r24,VarioMeter |
1153 0958 9091 0000 lds r25,(VarioMeter)+1 |
1154 095c AC01 movw r20,r24 |
1155 095e E5E0 ldi r30,5 |
1156 0960 440F 1: lsl r20 |
1157 0962 551F rol r21 |
1158 0964 EA95 dec r30 |
1159 0966 E1F7 brne 1b |
1160 0968 481B sub r20,r24 |
1161 096a 590B sbc r21,r25 |
1162 096c 8091 0000 lds r24,SummenHoehe |
1163 0970 9091 0000 lds r25,(SummenHoehe)+1 |
1164 0974 A091 0000 lds r26,(SummenHoehe)+2 |
1165 0978 B091 0000 lds r27,(SummenHoehe)+3 |
1166 097c B7FF sbrs r27,7 |
1167 097e 03C0 rjmp .L98 |
1168 0980 0F96 adiw r24,15 |
1169 0982 A11D adc r26,__zero_reg__ |
1170 0984 B11D adc r27,__zero_reg__ |
1171 .L98: |
1172 0986 74E0 ldi r23,4 |
1173 0988 B595 1: asr r27 |
1174 098a A795 ror r26 |
1175 098c 9795 ror r25 |
1176 098e 8795 ror r24 |
1177 0990 7A95 dec r23 |
1178 0992 D1F7 brne 1b |
1179 0994 2091 0000 lds r18,HoehenWert |
1180 0998 3091 0000 lds r19,(HoehenWert)+1 |
1181 099c 281B sub r18,r24 |
1182 099e 390B sbc r19,r25 |
1183 09a0 63E0 ldi r22,3 |
1184 09a2 220F 1: lsl r18 |
1185 09a4 331F rol r19 |
1186 09a6 6A95 dec r22 |
1187 09a8 E1F7 brne 1b |
1188 09aa 240F add r18,r20 |
1189 09ac 351F adc r19,r21 |
1190 09ae 37FF sbrs r19,7 |
1191 09b0 02C0 rjmp .L99 |
1192 09b2 215E subi r18,lo8(-(31)) |
1193 09b4 3F4F sbci r19,hi8(-(31)) |
1194 .L99: |
1195 09b6 45E0 ldi r20,5 |
1196 09b8 3595 1: asr r19 |
1197 09ba 2795 ror r18 |
1198 09bc 4A95 dec r20 |
1199 09be E1F7 brne 1b |
1200 09c0 3093 0000 sts (VarioMeter)+1,r19 |
1201 09c4 2093 0000 sts VarioMeter,r18 |
1202 09c8 D601 movw r26,r12 |
1203 09ca C501 movw r24,r10 |
1204 09cc D7FE sbrs r13,7 |
1205 09ce 03C0 rjmp .L100 |
1206 09d0 0196 adiw r24,1 |
1207 09d2 A11D adc r26,__zero_reg__ |
1208 09d4 B11D adc r27,__zero_reg__ |
1209 .L100: |
1210 09d6 B595 asr r27 |
1211 09d8 A795 ror r26 |
1212 09da 9795 ror r25 |
1213 09dc 8795 ror r24 |
1214 09de 8093 0000 sts tmpLuftdruck.10,r24 |
1215 09e2 9093 0000 sts (tmpLuftdruck.10)+1,r25 |
1216 09e6 A093 0000 sts (tmpLuftdruck.10)+2,r26 |
1217 09ea B093 0000 sts (tmpLuftdruck.10)+3,r27 |
1218 09ee 89E0 ldi r24,lo8(9) |
1219 09f0 8093 0000 sts messanzahl_Druck.11,r24 |
1220 09f4 02C0 rjmp .L108 |
1221 .L101: |
1222 09f6 1092 0000 sts state.1,__zero_reg__ |
1223 .L108: |
1224 09fa 82E0 ldi r24,lo8(2) |
1225 .L109: |
1226 09fc 8093 0000 sts kanal.0,r24 |
1227 .L52: |
1228 0a00 8091 0000 lds r24,kanal.0 |
1229 0a04 8093 7C00 sts 124,r24 |
1230 0a08 8091 0000 lds r24,state.1 |
1231 0a0c 8823 tst r24 |
1232 0a0e 19F0 breq .L51 |
1233 0a10 8FEC ldi r24,lo8(-49) |
1234 0a12 8093 7A00 sts 122,r24 |
1235 .L51: |
1236 /* epilogue: frame size=0 */ |
1237 0a16 FF91 pop r31 |
1238 0a18 EF91 pop r30 |
1239 0a1a BF91 pop r27 |
1240 0a1c AF91 pop r26 |
1241 0a1e 9F91 pop r25 |
1242 0a20 8F91 pop r24 |
1243 0a22 7F91 pop r23 |
1244 0a24 6F91 pop r22 |
1245 0a26 5F91 pop r21 |
1246 0a28 4F91 pop r20 |
1247 0a2a 3F91 pop r19 |
1248 0a2c 2F91 pop r18 |
1249 0a2e 1F91 pop r17 |
1250 0a30 0F91 pop r16 |
1251 0a32 FF90 pop r15 |
1252 0a34 EF90 pop r14 |
1253 0a36 DF90 pop r13 |
1254 0a38 CF90 pop r12 |
1255 0a3a BF90 pop r11 |
1256 0a3c AF90 pop r10 |
1257 0a3e 0F90 pop __tmp_reg__ |
1258 0a40 0FBE out __SREG__,__tmp_reg__ |
1259 0a42 0F90 pop __tmp_reg__ |
1260 0a44 1F90 pop __zero_reg__ |
1261 0a46 1895 reti |
1262 /* epilogue end (size=25) */ |
1263 /* function __vector_24 size 1014 (964) */ |
1265 .comm Aktuell_Nick,2,1 |
1266 .comm Aktuell_Roll,2,1 |
1267 .comm Aktuell_Gier,2,1 |
1268 .comm Aktuell_ax,2,1 |
1269 .comm Aktuell_ay,2,1 |
1270 .comm Aktuell_az,2,1 |
1271 .comm DruckOffsetSetting,1,1 |
1272 .comm StartLuftdruck,2,1 |
1273 .comm NeutralAccZ_float,4,1 |
1274 /* File "analog.c": code 1351 = 0x0547 (1286), prologues 31, epilogues 34 */ |
DEFINED SYMBOLS |
*ABS*:00000000 analog.c |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:14 .data:00000000 AdReady |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:19 .data:00000001 AnalogOffsetGier |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:24 .data:00000002 AnalogOffsetRoll |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:29 .data:00000003 AnalogOffsetNick |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:36 .bss:00000000 ZaehlMessungen |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:42 .bss:00000002 VarioMeter |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:48 .bss:00000004 ExpandBaro |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:54 .data:00000004 MessLuftdruck |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:61 .bss:00000005 SummenHoehe |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:67 .data:00000006 Luftdruck |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:74 .bss:00000009 messanzahl_AccHoch |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:80 .bss:0000000a AdWertAccHoch |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:86 .bss:0000000c AdWertAccNick |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:92 .bss:0000000e AdWertAccRoll |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:98 .bss:00000010 AdWertGier |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:104 .bss:00000012 AdWertRoll |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:110 .bss:00000014 AdWertNick |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:116 .data:0000000a HiResRoll |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:121 .data:0000000c HiResNick |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:128 .bss:00000016 AdWertGierFilter |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:134 .bss:00000018 AdWertRollFilter |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:140 .bss:0000001a AdWertNickFilter |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:146 .data:0000000e UBat |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:151 .text:00000000 ADC_Init |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:165 .progmem.data:00000000 __c.13 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:170 .text:0000000c SucheLuftruckOffset |
*COM*:00000001 DruckOffsetSetting |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:258 .progmem.data:00000002 __c.12 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:263 .text:000000c2 SucheGyroOffset |
.bss:0000001c kanal.0 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:466 .bss:0000001d state.1 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:467 .bss:0000001e subcount.2 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:468 .bss:0000001f gier1.3 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:469 .bss:00000021 roll1.4 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:470 .bss:00000023 nick1.5 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:471 .bss:00000025 nick_filter.6 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:472 .bss:00000027 roll_filter.7 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:473 .bss:00000029 accy.8 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:474 .bss:0000002b accx.9 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:475 .bss:0000002d tmpLuftdruck.10 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:476 .bss:00000031 messanzahl_Druck.11 |
C:\Users\Thomas\AppData\Local\Temp/ccmObaaa.s:480 .text:00000290 __vector_24 |
*COM*:00000002 Aktuell_ay |
*COM*:00000002 Aktuell_ax |
*COM*:00000002 Aktuell_az |
*COM*:00000002 StartLuftdruck |
*COM*:00000002 Aktuell_Nick |
*COM*:00000002 Aktuell_Roll |
*COM*:00000002 Aktuell_Gier |
*COM*:00000004 NeutralAccZ_float |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
GetParamByte |
Delay_ms_Mess |
uart_putchar |
_printf_P |
SetParamByte |
EE_Parameter |
VersionInfo |
SetDelay |
twi_state |
BLFlags |
CheckDelay |
__tablejump2__ |
NeutralAccY |
NeutralAccX |
__udivmodhi4 |
NeutralAccZ |
modell_fliegt |
Mess_Integral_Hoch |
PlatinenVersion |
AdNeutralNick |
AdNeutralRoll |
__mulsi3 |
HoehenWert |
/branches/metro/v0.82a metro_Akku+/capacity.c |
---|
0,0 → 1,148 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + Thanks to Marcel Haller (Lion) for the nice idea and first implementation |
// + Nur für den privaten Gebrauch |
// + www.MikroKopter.com |
// + porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Es gilt für das gesamte Projekt (Hardware, Software, Binärfiles, Sourcecode und Dokumentation), |
// + dass eine Nutzung (auch auszugsweise) nur für den privaten (nicht-kommerziellen) Gebrauch zulässig ist. |
// + Sollten direkte oder indirekte kommerzielle Absichten verfolgt werden, ist mit uns (info@mikrokopter.de) Kontakt |
// + bzgl. der Nutzungsbedingungen aufzunehmen. |
// + Eine kommerzielle Nutzung ist z.B.Verkauf von MikroKoptern, Bestückung und Verkauf von Platinen oder Bausätzen, |
// + Verkauf von Luftbildaufnahmen, usw. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Werden Teile des Quellcodes (mit oder ohne Modifikation) weiterverwendet oder veröffentlicht, |
// + unterliegen sie auch diesen Nutzungsbedingungen und diese Nutzungsbedingungen incl. Copyright müssen dann beiliegen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Sollte die Software (auch auszugesweise) oder sonstige Informationen des MikroKopter-Projekts |
// + auf anderen Webseiten oder sonstigen Medien veröffentlicht werden, muss unsere Webseite "http://www.mikrokopter.de" |
// + eindeutig als Ursprung verlinkt werden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Keine Gewähr auf Fehlerfreiheit, Vollständigkeit oder Funktion |
// + Benutzung auf eigene Gefahr |
// + Wir übernehmen keinerlei Haftung für direkte oder indirekte Personen- oder Sachschäden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Portierung der Software (oder Teile davon) auf andere Systeme (ausser der Hardware von www.mikrokopter.de) ist nur |
// + mit unserer Zustimmung zulässig |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Funktion printf_P() unterliegt ihrer eigenen Lizenz und ist hiervon nicht betroffen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Redistributions of source code (with or without modifications) must retain the above copyright notice, |
// + this list of conditions and the following disclaimer. |
// + * Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived |
// + from this software without specific prior written permission. |
// + * The use of this project (hardware, software, binary files, sources and documentation) is only permittet |
// + for non-commercial use (directly or indirectly) |
// + Commercial use (for excample: selling of MikroKopters, selling of PCBs, assembly, ...) is only permitted |
// + with our written permission |
// + * If sources or documentations are redistributet on other webpages, out webpage (http://www.MikroKopter.de) must be |
// + clearly linked as origin |
// + * porting to systems other than hardware from www.mikrokopter.de is not allowed |
// + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
// + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
// + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
// + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
// + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
// + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
// + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
// + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN// + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
// + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
// + POSSIBILITY OF SUCH DAMAGE. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include "capacity.h" |
#include "twimaster.h" |
#include "main.h" |
#include "timer0.h" |
#include "analog.h" |
#define CAPACITY_UPDATE_INTERVAL 10 // 10 ms |
#define FC_OFFSET_CURRENT 5 // calculate with a current of 0.5A |
#define BL_OFFSET_CURRENT 2 // calculate with a current of 0.2A |
// global varialbles |
unsigned short update_timer = 0; |
Capacity_t Capacity; |
// initialize capacity calculation |
void Capacity_Init(void) |
{ |
Capacity.ActualCurrent = 0; |
Capacity.UsedCapacity = 0; |
Capacity.ActualPower = 0; |
Capacity.MinOfMaxPWM = 0; |
Capacity.RemainCapacity = (EE_Parameter.UserParam1*100); |
update_timer = SetDelay(CAPACITY_UPDATE_INTERVAL); |
} |
// called in main loop at a regular interval |
void Capacity_Update(void) |
{ |
unsigned short Current, SetSum; // max value will be 255 * 12 = 3060 |
static unsigned short SubCounter = 0; |
static unsigned short CurrentOffset = 0; |
static unsigned long SumCurrentOffset = 0; |
unsigned char i, NumOfMotors, MinOfMaxPWM; |
if(CheckDelay(update_timer)) |
{ |
update_timer += CAPACITY_UPDATE_INTERVAL; // do not use SetDelay to avoid timing leaks |
// determine sum of all present BL currents and setpoints |
Current = 0; |
SetSum = 0; |
NumOfMotors = 0; |
MinOfMaxPWM = 255; |
for(i = 0; i < MAX_MOTORS; i++) |
{ |
if(Motor[i].State & MOTOR_STATE_PRESENT_MASK) |
{ |
NumOfMotors++; |
Current += (unsigned int)(Motor[i].Current); |
SetSum += (unsigned int)(Motor[i].SetPoint); |
if(Motor[i].MaxPWM < MinOfMaxPWM) MinOfMaxPWM = Motor[i].MaxPWM; |
} |
} |
Capacity.MinOfMaxPWM = MinOfMaxPWM; |
if(SetSum == 0) // if all setpoints are 0 |
{ // determine offsets of motor currents |
#define CURRENT_AVERAGE 8 // 8bit = 256 * 10 ms = 2.56s average time |
CurrentOffset = (unsigned int)(SumCurrentOffset>>CURRENT_AVERAGE); |
SumCurrentOffset -= CurrentOffset; |
SumCurrentOffset += Current; |
// after averaging set current to static offset |
Current = FC_OFFSET_CURRENT; |
} |
else // some motors are running, includes also motor test condition, where "MotorRunning" is false |
{ // subtract offset |
if(Current > CurrentOffset) Current -= CurrentOffset; |
else Current = 0; |
// add the FC and BL Offsets |
Current += FC_OFFSET_CURRENT + NumOfMotors * BL_OFFSET_CURRENT; |
} |
// update actual Current |
Capacity.ActualCurrent = Current; |
// update actual Power |
if(Current < 255) Capacity.ActualPower = (UBat * Current) / 100; // in W higher resolution |
else Capacity.ActualPower = (UBat * (Current/4)) / 25; // in W |
// update used capacity |
SubCounter += Current; |
// 100mA * 1ms * CAPACITY_UPDATE_INTERVAL = 1 mA * 100 ms * CAPACITY_UPDATE_INTERVAL |
// = 1mA * 0.1s * CAPACITY_UPDATE_INTERVAL = 1mA * 1min / (600 / CAPACITY_UPDATE_INTERVAL) |
// = 1mAh / (36000 / CAPACITY_UPDATE_INTERVAL) |
#define SUB_COUNTER_LIMIT (36000 / CAPACITY_UPDATE_INTERVAL) |
if(SubCounter > SUB_COUNTER_LIMIT) |
{ |
Capacity.UsedCapacity++; // we have one mAh more |
SubCounter -= SUB_COUNTER_LIMIT; // keep the remaining sub part |
Capacity.RemainCapacity=(EE_Parameter.UserParam1*100)-Capacity.UsedCapacity; //Added by metro |
if((Capacity.RemainCapacity<=500)&&(Capacity.RemainCapacity%100==0)&&(EE_Parameter.UserParam1!=0)) beeptime = 10000; |
} |
} // EOF check delay update timer |
} |
/branches/metro/v0.82a metro_Akku+/capacity.d |
---|
0,0 → 1,3 |
capacity.o capacity.d : capacity.c capacity.h twimaster.h main.h old_macros.h \ |
printf_P.h timer0.h uart.h analog.h menu.h rc.h fc.h gps.h spi.h led.h \ |
spektrum.h eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/capacity.h |
---|
0,0 → 1,19 |
#ifndef _CAPACITY_H |
#define _CAPACITY_H |
typedef struct |
{ |
unsigned short ActualCurrent; // in 0.1A Steps |
unsigned short ActualPower; // in 0.1W |
signed short UsedCapacity; // in mAh //Modified by metro |
signed short RemainCapacity; // in mAh //Added by metro |
unsigned char MinOfMaxPWM; // BL Power Limit |
} __attribute__((packed)) Capacity_t; |
extern Capacity_t Capacity; |
void Capacity_Init(void); |
void Capacity_Update(void); |
#endif //_CAPACITY_H |
/branches/metro/v0.82a metro_Akku+/capacity.lst |
---|
0,0 → 1,264 |
1 .file "capacity.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global update_timer |
11 .global update_timer |
12 .section .bss |
15 update_timer: |
16 0000 0000 .skip 2,0 |
17 .text |
18 .global Capacity_Init |
20 Capacity_Init: |
21 /* prologue: frame size=0 */ |
22 /* prologue end (size=0) */ |
23 0000 1092 0000 sts (Capacity)+1,__zero_reg__ |
24 0004 1092 0000 sts Capacity,__zero_reg__ |
25 0008 1092 0000 sts (Capacity+4)+1,__zero_reg__ |
26 000c 1092 0000 sts Capacity+4,__zero_reg__ |
27 0010 1092 0000 sts (Capacity+2)+1,__zero_reg__ |
28 0014 1092 0000 sts Capacity+2,__zero_reg__ |
29 0018 1092 0000 sts Capacity+8,__zero_reg__ |
30 001c 9091 0000 lds r25,EE_Parameter+41 |
31 0020 84E6 ldi r24,lo8(100) |
32 0022 989F mul r25,r24 |
33 0024 C001 movw r24,r0 |
34 0026 1124 clr r1 |
35 0028 9093 0000 sts (Capacity+6)+1,r25 |
36 002c 8093 0000 sts Capacity+6,r24 |
37 0030 8AE0 ldi r24,lo8(10) |
38 0032 90E0 ldi r25,hi8(10) |
39 0034 0E94 0000 call SetDelay |
40 0038 9093 0000 sts (update_timer)+1,r25 |
41 003c 8093 0000 sts update_timer,r24 |
42 /* epilogue: frame size=0 */ |
43 0040 0895 ret |
44 /* epilogue end (size=1) */ |
45 /* function Capacity_Init size 33 (32) */ |
47 .lcomm SubCounter.0,2 |
48 .lcomm CurrentOffset.1,2 |
49 .lcomm SumCurrentOffset.2,4 |
50 .global Capacity_Update |
52 Capacity_Update: |
53 /* prologue: frame size=0 */ |
54 0042 CF93 push r28 |
55 0044 DF93 push r29 |
56 /* prologue end (size=2) */ |
57 0046 8091 0000 lds r24,update_timer |
58 004a 9091 0000 lds r25,(update_timer)+1 |
59 004e 0E94 0000 call CheckDelay |
60 0052 8823 tst r24 |
61 0054 09F4 brne .+2 |
62 0056 CEC0 rjmp .L2 |
63 0058 8091 0000 lds r24,update_timer |
64 005c 9091 0000 lds r25,(update_timer)+1 |
65 0060 0A96 adiw r24,10 |
66 0062 9093 0000 sts (update_timer)+1,r25 |
67 0066 8093 0000 sts update_timer,r24 |
68 006a E0E0 ldi r30,lo8(0) |
69 006c F0E0 ldi r31,hi8(0) |
70 006e 9F01 movw r18,r30 |
71 0070 90E0 ldi r25,lo8(0) |
72 0072 5FEF ldi r21,lo8(-1) |
73 0074 A0E0 ldi r26,lo8(Motor) |
74 0076 B0E0 ldi r27,hi8(Motor) |
75 0078 4BE0 ldi r20,lo8(11) |
76 .L9: |
77 007a ED01 movw r28,r26 |
78 007c 8B81 ldd r24,Y+3 |
79 007e 87FF sbrs r24,7 |
80 0080 0BC0 rjmp .L6 |
81 0082 9F5F subi r25,lo8(-(1)) |
82 0084 8D81 ldd r24,Y+5 |
83 0086 E80F add r30,r24 |
84 0088 F11D adc r31,__zero_reg__ |
85 008a 8981 ldd r24,Y+1 |
86 008c 280F add r18,r24 |
87 008e 311D adc r19,__zero_reg__ |
88 0090 8E81 ldd r24,Y+6 |
89 0092 8517 cp r24,r21 |
90 0094 08F4 brsh .L6 |
91 0096 582F mov r21,r24 |
92 .L6: |
93 0098 4150 subi r20,lo8(-(-1)) |
94 009a 1896 adiw r26,8 |
95 009c 47FF sbrs r20,7 |
96 009e EDCF rjmp .L9 |
97 00a0 5093 0000 sts Capacity+8,r21 |
98 00a4 232B or r18,r19 |
99 00a6 41F5 brne .L10 |
100 00a8 2091 0000 lds r18,SumCurrentOffset.2 |
101 00ac 3091 0000 lds r19,(SumCurrentOffset.2)+1 |
102 00b0 4091 0000 lds r20,(SumCurrentOffset.2)+2 |
103 00b4 5091 0000 lds r21,(SumCurrentOffset.2)+3 |
104 00b8 BB27 clr r27 |
105 00ba A52F mov r26,r21 |
106 00bc 942F mov r25,r20 |
107 00be 832F mov r24,r19 |
108 00c0 9093 0000 sts (CurrentOffset.1)+1,r25 |
109 00c4 8093 0000 sts CurrentOffset.1,r24 |
110 00c8 AA27 clr r26 |
111 00ca BB27 clr r27 |
112 00cc 281B sub r18,r24 |
113 00ce 390B sbc r19,r25 |
114 00d0 4A0B sbc r20,r26 |
115 00d2 5B0B sbc r21,r27 |
116 00d4 CF01 movw r24,r30 |
117 00d6 AA27 clr r26 |
118 00d8 BB27 clr r27 |
119 00da 280F add r18,r24 |
120 00dc 391F adc r19,r25 |
121 00de 4A1F adc r20,r26 |
122 00e0 5B1F adc r21,r27 |
123 00e2 2093 0000 sts SumCurrentOffset.2,r18 |
124 00e6 3093 0000 sts (SumCurrentOffset.2)+1,r19 |
125 00ea 4093 0000 sts (SumCurrentOffset.2)+2,r20 |
126 00ee 5093 0000 sts (SumCurrentOffset.2)+3,r21 |
127 00f2 E5E0 ldi r30,lo8(5) |
128 00f4 F0E0 ldi r31,hi8(5) |
129 00f6 13C0 rjmp .L11 |
130 .L10: |
131 00f8 2091 0000 lds r18,CurrentOffset.1 |
132 00fc 3091 0000 lds r19,(CurrentOffset.1)+1 |
133 0100 2E17 cp r18,r30 |
134 0102 3F07 cpc r19,r31 |
135 0104 18F4 brsh .L12 |
136 0106 E21B sub r30,r18 |
137 0108 F30B sbc r31,r19 |
138 010a 02C0 rjmp .L13 |
139 .L12: |
140 010c E0E0 ldi r30,lo8(0) |
141 010e F0E0 ldi r31,hi8(0) |
142 .L13: |
143 0110 892F mov r24,r25 |
144 0112 9927 clr r25 |
145 0114 880F add r24,r24 |
146 0116 991F adc r25,r25 |
147 0118 E80F add r30,r24 |
148 011a F91F adc r31,r25 |
149 011c 3596 adiw r30,5 |
150 .L11: |
151 011e F093 0000 sts (Capacity)+1,r31 |
152 0122 E093 0000 sts Capacity,r30 |
153 0126 EF3F cpi r30,255 |
154 0128 F105 cpc r31,__zero_reg__ |
155 012a 78F4 brsh .L14 |
156 012c 8091 0000 lds r24,UBat |
157 0130 9091 0000 lds r25,(UBat)+1 |
158 0134 8E9F mul r24,r30 |
159 0136 9001 movw r18,r0 |
160 0138 8F9F mul r24,r31 |
161 013a 300D add r19,r0 |
162 013c 9E9F mul r25,r30 |
163 013e 300D add r19,r0 |
164 0140 1124 clr r1 |
165 0142 C901 movw r24,r18 |
166 0144 64E6 ldi r22,lo8(100) |
167 0146 70E0 ldi r23,hi8(100) |
168 0148 13C0 rjmp .L20 |
169 .L14: |
170 014a CF01 movw r24,r30 |
171 014c 9695 lsr r25 |
172 014e 8795 ror r24 |
173 0150 9695 lsr r25 |
174 0152 8795 ror r24 |
175 0154 2091 0000 lds r18,UBat |
176 0158 3091 0000 lds r19,(UBat)+1 |
177 015c 289F mul r18,r24 |
178 015e A001 movw r20,r0 |
179 0160 299F mul r18,r25 |
180 0162 500D add r21,r0 |
181 0164 389F mul r19,r24 |
182 0166 500D add r21,r0 |
183 0168 1124 clr r1 |
184 016a CA01 movw r24,r20 |
185 016c 69E1 ldi r22,lo8(25) |
186 016e 70E0 ldi r23,hi8(25) |
187 .L20: |
188 0170 0E94 0000 call __udivmodhi4 |
189 0174 7093 0000 sts (Capacity+2)+1,r23 |
190 0178 6093 0000 sts Capacity+2,r22 |
191 017c 2091 0000 lds r18,SubCounter.0 |
192 0180 3091 0000 lds r19,(SubCounter.0)+1 |
193 0184 2E0F add r18,r30 |
194 0186 3F1F adc r19,r31 |
195 0188 3093 0000 sts (SubCounter.0)+1,r19 |
196 018c 2093 0000 sts SubCounter.0,r18 |
197 0190 5EE0 ldi r21,hi8(3601) |
198 0192 2131 cpi r18,lo8(3601) |
199 0194 3507 cpc r19,r21 |
200 0196 70F1 brlo .L2 |
201 0198 8091 0000 lds r24,Capacity+4 |
202 019c 9091 0000 lds r25,(Capacity+4)+1 |
203 01a0 0196 adiw r24,1 |
204 01a2 9093 0000 sts (Capacity+4)+1,r25 |
205 01a6 8093 0000 sts Capacity+4,r24 |
206 01aa 2051 subi r18,lo8(-(-3600)) |
207 01ac 3E40 sbci r19,hi8(-(-3600)) |
208 01ae 3093 0000 sts (SubCounter.0)+1,r19 |
209 01b2 2093 0000 sts SubCounter.0,r18 |
210 01b6 4091 0000 lds r20,EE_Parameter+41 |
211 01ba 24E6 ldi r18,lo8(100) |
212 01bc 429F mul r20,r18 |
213 01be 9001 movw r18,r0 |
214 01c0 1124 clr r1 |
215 01c2 281B sub r18,r24 |
216 01c4 390B sbc r19,r25 |
217 01c6 3093 0000 sts (Capacity+6)+1,r19 |
218 01ca 2093 0000 sts Capacity+6,r18 |
219 01ce 81E0 ldi r24,hi8(501) |
220 01d0 253F cpi r18,lo8(501) |
221 01d2 3807 cpc r19,r24 |
222 01d4 7CF4 brge .L2 |
223 01d6 C901 movw r24,r18 |
224 01d8 64E6 ldi r22,lo8(100) |
225 01da 70E0 ldi r23,hi8(100) |
226 01dc 0E94 0000 call __divmodhi4 |
227 01e0 892B or r24,r25 |
228 01e2 41F4 brne .L2 |
229 01e4 4423 tst r20 |
230 01e6 31F0 breq .L2 |
231 01e8 80E1 ldi r24,lo8(10000) |
232 01ea 97E2 ldi r25,hi8(10000) |
233 01ec 9093 0000 sts (beeptime)+1,r25 |
234 01f0 8093 0000 sts beeptime,r24 |
235 .L2: |
236 /* epilogue: frame size=0 */ |
237 01f4 DF91 pop r29 |
238 01f6 CF91 pop r28 |
239 01f8 0895 ret |
240 /* epilogue end (size=3) */ |
241 /* function Capacity_Update size 220 (215) */ |
243 .comm Capacity,9,1 |
244 /* File "capacity.c": code 253 = 0x00fd ( 247), prologues 2, epilogues 4 */ |
DEFINED SYMBOLS |
*ABS*:00000000 capacity.c |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:15 .bss:00000000 update_timer |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:20 .text:00000000 Capacity_Init |
*COM*:00000009 Capacity |
.bss:00000002 SubCounter.0 |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:47 .bss:00000004 CurrentOffset.1 |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:48 .bss:00000006 SumCurrentOffset.2 |
C:\Users\Thomas\AppData\Local\Temp/ccENaaaa.s:52 .text:00000042 Capacity_Update |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
EE_Parameter |
SetDelay |
CheckDelay |
Motor |
UBat |
__udivmodhi4 |
__divmodhi4 |
beeptime |
/branches/metro/v0.82a metro_Akku+/debug.c |
---|
0,0 → 1,48 |
#include "main.h" |
#include "debug.h" |
#ifdef DEBUG // only include functions if DEBUG is defined in main.h |
#warning : "### DEBUG-Funktion aktiv ###" |
unsigned char Debug_BufPtr = 0; |
struct str_Debug tDebug; |
unsigned char SendDebugOutput = 0; |
// function called from _printf_P to output character |
void Debug_Putchar(char c) |
{ |
if (!SendDebugOutput) |
{ |
tDebug.Text[Debug_BufPtr++] = c; // copy character to buffer |
if (Debug_BufPtr > 30) Debug_BufPtr = 30; // avoid buffer overflow |
} |
} |
void DebugSend(unsigned char cmd) |
{ |
if (!SendDebugOutput) |
{ |
tDebug.Cmd = cmd; |
tDebug.Text[Debug_BufPtr] = '\0'; // end of text marker |
Debug_BufPtr = 0; // set bufferindex to 0 |
SendDebugOutput = 1; // set flag to trasmit data the next time in serial transmit function |
} |
} |
#endif |
/* |
add the following code block to the serial transmit function |
#ifdef DEBUG // only include functions if DEBUG is defined |
if(SendDebugOutput && UebertragungAbgeschlossen) |
{ |
SendOutData('0', FC_ADDRESS, 1, (unsigned char *) &tDebug, sizeof(tDebug)); |
SendDebugOutput = 0; |
} |
#endif |
*/ |
/branches/metro/v0.82a metro_Akku+/debug.d |
---|
0,0 → 1,3 |
debug.o debug.d : debug.c main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/debug.h |
---|
0,0 → 1,60 |
#ifndef _DEBUG_H |
#define _DEBUG_H |
// ---------------------------------------------- |
#define CMD_NONE 0x00 |
#define CMD_RAW_OUTPUT 0x01 |
#define CMD_ERROR_MSG 0x02 |
#define CMD_WARNING_MSG 0x04 |
#define CMD_GREEN_MSG 0x08 |
// debug console in MK-Tool can also handle ANSI ESC seq. |
#define ANSI_ATTRIBUTE_OFF "\033[0m" |
#define ANSI_BOLD "\033[1m" |
#define ANSI_UNDERSCORE "\033[4m" |
#define ANSI_BLINK "\033[5m" |
#define ANSI_INVERSE "\033[7m" |
#define ANSI_INVISIBLE "\033[8m" |
#define ANSI_COLOR_BLACK "\033[30m" |
#define ANSI_COLOR_RED "\033[31m" |
#define ANSI_COLOR_GREEN "\033[32m" |
#define ANSI_COLOR_YELLOW "\033[33m" |
#define ANSI_COLOR_BLUE "\033[34m" |
#define ANSI_COLOR_VIOLETT "\033[35m" |
#define ANSI_COLOR_KOBALTBLUE "\033[36m" |
#define ANSI_COLOR_WHITE "\033[37m" |
#define ANSI_CLEAR "\033[2J" |
#define ANSI_HOME "\033[H" |
// macros for easier use |
#ifdef DEBUG // only include functions if DEBUG is defined in main.h |
#define Debug(format, args...) { _printf_P(&Debug_Putchar, PSTR(format) , ## args); DebugSend(CMD_NONE); } |
#define Debug_Raw(format, args...) { _printf_P(&Debug_Putchar, PSTR(format) , ## args); DebugSend(CMD_RAW_OUTPUT); } |
#define Debug_Warning(format, args...) { _printf_P(&Debug_Putchar, PSTR(format) , ## args); DebugSend(CMD_WARNING_MSG); } |
#define Debug_Error(format, args...) { _printf_P(&Debug_Putchar, PSTR(format) , ## args); DebugSend(CMD_ERROR_MSG); } |
#define Debug_OK(format, args...) { _printf_P(&Debug_Putchar, PSTR(format) , ## args); DebugSend(CMD_GREEN_MSG); } |
struct str_Debug |
{ |
unsigned char Cmd; // bitcoded command |
char Text[32]; |
}; |
extern struct str_Debug tDebug; |
unsigned char SendDebugOutput; |
void Debug_Putchar(char c); |
void DebugSend(unsigned char cmd); |
#else // dummy macros (won't waste flash, if #DEBUG is disabled) |
#define Debug(format, args...) ; |
#define Debug_Raw(format, args...) ; |
#define Debug_Warning(format, args...) ; |
#define Debug_Error(format, args...) ; |
#define Debug_OK(format, args...) ; |
#endif |
// ---------------------------------------------- |
#endif |
/branches/metro/v0.82a metro_Akku+/debug.lst |
---|
0,0 → 1,21 |
1 .file "debug.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 /* File "debug.c": code 0 = 0x0000 ( 0), prologues 0, epilogues 0 */ |
DEFINED SYMBOLS |
*ABS*:00000000 debug.c |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:7 *ABS*:00000001 __zero_reg__ |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
/branches/metro/v0.82a metro_Akku+/eeprom.c |
---|
0,0 → 1,595 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + Nur für den privaten Gebrauch |
// + porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// + www.MikroKopter.com |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Es gilt für das gesamte Projekt (Hardware, Software, Binärfiles, Sourcecode und Dokumentation), |
// + dass eine Nutzung (auch auszugsweise) nur für den privaten (nicht-kommerziellen) Gebrauch zulässig ist. |
// + Sollten direkte oder indirekte kommerzielle Absichten verfolgt werden, ist mit uns (info@mikrokopter.de) Kontakt |
// + bzgl. der Nutzungsbedingungen aufzunehmen. |
// + Eine kommerzielle Nutzung ist z.B.Verkauf von MikroKoptern, Bestückung und Verkauf von Platinen oder Bausätzen, |
// + Verkauf von Luftbildaufnahmen, usw. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Werden Teile des Quellcodes (mit oder ohne Modifikation) weiterverwendet oder veröffentlicht, |
// + unterliegen sie auch diesen Nutzungsbedingungen und diese Nutzungsbedingungen incl. Copyright müssen dann beiliegen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Sollte die Software (auch auszugesweise) oder sonstige Informationen des MikroKopter-Projekts |
// + auf anderen Webseiten oder sonstigen Medien veröffentlicht werden, muss unsere Webseite "http://www.mikrokopter.de" |
// + eindeutig als Ursprung verlinkt werden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Keine Gewähr auf Fehlerfreiheit, Vollständigkeit oder Funktion |
// + Benutzung auf eigene Gefahr |
// + Wir übernehmen keinerlei Haftung für direkte oder indirekte Personen- oder Sachschäden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Portierung der Software (oder Teile davon) auf andere Systeme (ausser der Hardware von www.mikrokopter.de) ist nur |
// + mit unserer Zustimmung zulässig |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Funktion printf_P() unterliegt ihrer eigenen Lizenz und ist hiervon nicht betroffen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Redistributions of source code (with or without modifications) must retain the above copyright notice, |
// + this list of conditions and the following disclaimer. |
// + * Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived |
// + from this software without specific prior written permission. |
// + * The use of this project (hardware, software, binary files, sources and documentation) is only permittet |
// + for non-commercial use (directly or indirectly) |
// + Commercial use (for excample: selling of MikroKopters, selling of PCBs, assembly, ...) is only permitted |
// + with our written permission |
// + * If sources or documentations are redistributet on other webpages, out webpage (http://www.MikroKopter.de) must be |
// + clearly linked as origin |
// + * porting to systems other than hardware from www.mikrokopter.de is not allowed |
// + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
// + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
// + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
// + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
// + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
// + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
// + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
// + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN// + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
// + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
// + POSSIBILITY OF SUCH DAMAGE. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#ifndef EEMEM |
#define EEMEM __attribute__ ((section (".eeprom"))) |
#endif |
#include <avr/eeprom.h> |
#include <string.h> |
#include "eeprom.h" |
#include "uart.h" |
#include "led.h" |
#include "main.h" |
#include "fc.h" |
#include "twimaster.h" |
paramset_t EE_Parameter; |
MixerTable_t Mixer; |
uint8_t RequiredMotors; |
uint8_t RAM_Checksum(uint8_t* pBuffer, uint16_t len) |
{ |
uint8_t crc = 0xAA; |
uint16_t i; |
for(i=0; i<len; i++) |
{ |
crc += pBuffer[i]; |
} |
return crc; |
} |
uint8_t EEProm_Checksum(uint16_t EEAddr, uint16_t len) |
{ |
uint8_t crc = 0xAA; |
uint16_t off; |
for(off=0; off<len; off++) |
{ |
crc += eeprom_read_byte((uint8_t*)(EEAddr + off));; |
} |
return crc; |
} |
void ParamSet_DefaultStickMapping(void) |
{ |
EE_Parameter.Kanalbelegung[K_GAS] = 1; |
EE_Parameter.Kanalbelegung[K_ROLL] = 2; |
EE_Parameter.Kanalbelegung[K_NICK] = 3; |
EE_Parameter.Kanalbelegung[K_GIER] = 4; |
EE_Parameter.Kanalbelegung[K_POTI1] = 5; |
EE_Parameter.Kanalbelegung[K_POTI2] = 6; |
EE_Parameter.Kanalbelegung[K_POTI3] = 7; |
EE_Parameter.Kanalbelegung[K_POTI4] = 8; |
EE_Parameter.Kanalbelegung[K_POTI5] = 9; |
EE_Parameter.Kanalbelegung[K_POTI6] = 10; |
EE_Parameter.Kanalbelegung[K_POTI7] = 11; |
EE_Parameter.Kanalbelegung[K_POTI8] = 12; |
} |
/***************************************************/ |
/* Default Values for parameter set 1 */ |
/***************************************************/ |
void CommonDefaults(void) |
{ |
EE_Parameter.Revision = EEPARAM_REVISION; |
if(PlatinenVersion >= 20) |
{ |
EE_Parameter.Gyro_D = 10; |
EE_Parameter.Driftkomp = 0; |
EE_Parameter.GyroAccFaktor = 27; |
EE_Parameter.WinkelUmschlagNick = 78; |
EE_Parameter.WinkelUmschlagRoll = 78; |
} |
else |
{ |
EE_Parameter.Gyro_D = 3; |
EE_Parameter.Driftkomp = 32; |
EE_Parameter.GyroAccFaktor = 30; |
EE_Parameter.WinkelUmschlagNick = 85; |
EE_Parameter.WinkelUmschlagRoll = 85; |
} |
EE_Parameter.GlobalConfig = CFG_ACHSENKOPPLUNG_AKTIV | CFG_KOMPASS_AKTIV | CFG_GPS_AKTIV | CFG_HOEHEN_SCHALTER; |
EE_Parameter.ExtraConfig = CFG2_HEIGHT_LIMIT | CFG2_VARIO_BEEP; |
EE_Parameter.Receiver = RECEIVER_SPEKTRUM; |
EE_Parameter.MotorSafetySwitch = 0; |
EE_Parameter.ExternalControl = 0; |
EE_Parameter.Gas_Min = 8; // Wert : 0-32 |
EE_Parameter.Gas_Max = 230; // Wert : 33-247 |
EE_Parameter.KompassWirkung = 128; // Wert : 0-247 |
EE_Parameter.Hoehe_MinGas = 30; |
EE_Parameter.MaxHoehe = 255; // Wert : 0-247 255 -> Poti1 |
EE_Parameter.Hoehe_P = 15; // Wert : 0-32 |
EE_Parameter.Luftdruck_D = 30; // Wert : 0-247 |
EE_Parameter.Hoehe_ACC_Wirkung = 0; // Wert : 0-247 |
EE_Parameter.Hoehe_HoverBand = 8; // Wert : 0-247 |
EE_Parameter.Hoehe_GPS_Z = 64; // Wert : 0-247 |
EE_Parameter.Hoehe_StickNeutralPoint = 0;// Wert : 0-247 (0 = Hover-Estimation) |
EE_Parameter.Hoehe_Verstaerkung = 15; // Wert : 0-50 |
EE_Parameter.UserParam1 = 0; // zur freien Verwendung |
EE_Parameter.UserParam2 = 0; // zur freien Verwendung |
EE_Parameter.UserParam3 = 0; // zur freien Verwendung |
EE_Parameter.UserParam4 = 0; // zur freien Verwendung |
EE_Parameter.UserParam5 = 0; // zur freien Verwendung |
EE_Parameter.UserParam6 = 0; // zur freien Verwendung |
EE_Parameter.UserParam7 = 0; // zur freien Verwendung |
EE_Parameter.UserParam8 = 0; // zur freien Verwendung |
EE_Parameter.ServoNickControl = 120; // Wert : 0-247 // Stellung des Servos |
EE_Parameter.ServoNickComp = 40; // Wert : 0-247 // Einfluss Gyro/Servo |
EE_Parameter.ServoCompInvert = 2; // Wert : 0-247 // Richtung Einfluss Gyro/Servo |
EE_Parameter.ServoNickMin = 15; // Wert : 0-247 // Anschlag |
EE_Parameter.ServoNickMax = 247; // Wert : 0-247 // Anschlag |
EE_Parameter.ServoNickRefresh = 5; |
EE_Parameter.Servo3 = 125; |
EE_Parameter.Servo4 = 125; |
EE_Parameter.Servo5 = 125; |
EE_Parameter.ServoRollControl = 120; // Wert : 0-247 // Stellung des Servos |
EE_Parameter.ServoRollComp = 90; // Wert : 0-247 // Einfluss Gyro/Servo |
EE_Parameter.ServoRollMin = 0; // Wert : 0-247 // Anschlag |
EE_Parameter.ServoRollMax = 247; // Wert : 0-247 // Anschlag |
EE_Parameter.ServoManualControlSpeed = 40; |
EE_Parameter.CamOrientation = 0; |
EE_Parameter.J16Bitmask = 95; |
EE_Parameter.J17Bitmask = 243; |
EE_Parameter.WARN_J16_Bitmask = 0xAA; |
EE_Parameter.WARN_J17_Bitmask = 0xAA; |
EE_Parameter.J16Timing = 20; |
EE_Parameter.J17Timing = 20; |
EE_Parameter.LoopGasLimit = 50; |
EE_Parameter.LoopThreshold = 90; // Wert: 0-247 Schwelle für Stickausschlag |
EE_Parameter.LoopHysterese = 50; |
EE_Parameter.BitConfig = 0; // Bitcodiert: 0x01=oben, 0x02=unten, 0x04=links, 0x08=rechts / wird getrennt behandelt |
EE_Parameter.NaviGpsModeControl = 254; // 254 -> Poti 2 |
EE_Parameter.NaviGpsGain = 100; |
EE_Parameter.NaviGpsP = 90; |
EE_Parameter.NaviGpsI = 90; |
EE_Parameter.NaviGpsD = 90; |
EE_Parameter.NaviGpsPLimit = 75; |
EE_Parameter.NaviGpsILimit = 75; |
EE_Parameter.NaviGpsDLimit = 75; |
EE_Parameter.NaviGpsACC = 0; |
EE_Parameter.NaviGpsMinSat = 6; |
EE_Parameter.NaviStickThreshold = 8; |
EE_Parameter.NaviWindCorrection = 90; |
EE_Parameter.NaviSpeedCompensation = 30; |
EE_Parameter.NaviOperatingRadius = 100; |
EE_Parameter.NaviAngleLimitation = 100; |
EE_Parameter.NaviPH_LoginTime = 2; |
EE_Parameter.OrientationAngle = 0; |
EE_Parameter.OrientationModeControl = 0; |
EE_Parameter.UnterspannungsWarnung = 33; // Wert : 0-247 ( Automatische Zellenerkennung bei < 50) |
EE_Parameter.NotGas = 45; // Wert : 0-247 // Gaswert bei Empangsverlust |
EE_Parameter.NotGasZeit = 90; // Wert : 0-247 // Zeit bis auf NotGas geschaltet wird, wg. Rx-Problemen |
} |
void ParamSet_DefaultSet1(void) // sport |
{ |
CommonDefaults(); |
EE_Parameter.Stick_P = 14; // Wert : 1-20 |
EE_Parameter.Stick_D = 16; // Wert : 0-20 |
EE_Parameter.Gier_P = 12; // Wert : 1-20 |
EE_Parameter.Gyro_P = 80; // Wert : 0-247 |
EE_Parameter.Gyro_I = 150; // Wert : 0-247 |
EE_Parameter.Gyro_Gier_P = 80; // Wert : 0-247 |
EE_Parameter.Gyro_Gier_I = 150; // Wert : 0-247 |
EE_Parameter.Gyro_Stability = 6; // Wert : 1-8 |
EE_Parameter.I_Faktor = 32; |
EE_Parameter.AchsKopplung1 = 90; |
EE_Parameter.AchsKopplung2 = 80; |
EE_Parameter.CouplingYawCorrection = 1; |
EE_Parameter.GyroAccAbgleich = 16; // 1/k; |
EE_Parameter.DynamicStability = 100; |
memcpy(EE_Parameter.Name, "Sport\0", 12); |
EE_Parameter.crc = RAM_Checksum((uint8_t*)(&EE_Parameter), sizeof(EE_Parameter)-1); |
} |
/***************************************************/ |
/* Default Values for parameter set 2 */ |
/***************************************************/ |
void ParamSet_DefaultSet2(void) // normal |
{ |
CommonDefaults(); |
EE_Parameter.Stick_P = 10; // Wert : 1-20 |
EE_Parameter.Stick_D = 16; // Wert : 0-20 |
EE_Parameter.Gier_P = 6; // Wert : 1-20 |
EE_Parameter.Gyro_P = 90; // Wert : 0-247 |
EE_Parameter.Gyro_I = 120; // Wert : 0-247 |
EE_Parameter.Gyro_Gier_P = 90; // Wert : 0-247 |
EE_Parameter.Gyro_Gier_I = 120; // Wert : 0-247 |
EE_Parameter.Gyro_Stability = 6; // Wert : 1-8 |
EE_Parameter.I_Faktor = 32; |
EE_Parameter.AchsKopplung1 = 90; |
EE_Parameter.AchsKopplung2 = 80; |
EE_Parameter.CouplingYawCorrection = 60; |
EE_Parameter.GyroAccAbgleich = 32; // 1/k |
EE_Parameter.DynamicStability = 75; |
memcpy(EE_Parameter.Name, "Normal\0", 12); |
EE_Parameter.crc = RAM_Checksum((uint8_t*)(&EE_Parameter), sizeof(EE_Parameter)-1); |
} |
/***************************************************/ |
/* Default Values for parameter set 3 */ |
/***************************************************/ |
void ParamSet_DefaultSet3(void) // beginner |
{ |
CommonDefaults(); |
EE_Parameter.Stick_P = 8; // Wert : 1-20 |
EE_Parameter.Stick_D = 16; // Wert : 0-20 |
EE_Parameter.Gier_P = 6; // Wert : 1-20 |
EE_Parameter.Gyro_P = 100; // Wert : 0-247 |
EE_Parameter.Gyro_I = 120; // Wert : 0-247 |
EE_Parameter.Gyro_Gier_P = 100; // Wert : 0-247 |
EE_Parameter.Gyro_Gier_I = 120; // Wert : 0-247 |
EE_Parameter.Gyro_Stability = 6; // Wert : 1-8 |
EE_Parameter.I_Faktor = 16; |
EE_Parameter.AchsKopplung1 = 90; |
EE_Parameter.AchsKopplung2 = 80; |
EE_Parameter.CouplingYawCorrection = 70; |
EE_Parameter.GyroAccAbgleich = 32; // 1/k |
EE_Parameter.DynamicStability = 70; |
memcpy(EE_Parameter.Name, "Beginner\0", 12); |
EE_Parameter.crc = RAM_Checksum((uint8_t*)(&EE_Parameter), sizeof(EE_Parameter)-1); |
} |
/***************************************************/ |
/* Read Parameter from EEPROM as byte */ |
/***************************************************/ |
uint8_t GetParamByte(uint16_t param_id) |
{ |
return eeprom_read_byte((uint8_t*)(EEPROM_ADR_PARAM_BEGIN + param_id)); |
} |
/***************************************************/ |
/* Write Parameter to EEPROM as byte */ |
/***************************************************/ |
void SetParamByte(uint16_t param_id, uint8_t value) |
{ |
eeprom_write_byte((uint8_t*)(EEPROM_ADR_PARAM_BEGIN + param_id), value); |
} |
/***************************************************/ |
/* Read Parameter from EEPROM as word */ |
/***************************************************/ |
uint16_t GetParamWord(uint16_t param_id) |
{ |
return eeprom_read_word((uint16_t *)(EEPROM_ADR_PARAM_BEGIN + param_id)); |
} |
/***************************************************/ |
/* Write Parameter to EEPROM as word */ |
/***************************************************/ |
void SetParamWord(uint16_t param_id, uint16_t value) |
{ |
eeprom_write_word((uint16_t*)(EEPROM_ADR_PARAM_BEGIN + param_id), value); |
} |
/***************************************************/ |
/* Read Parameter Set from EEPROM */ |
/***************************************************/ |
// number [1..5] |
uint8_t ParamSet_ReadFromEEProm(uint8_t setnumber) |
{ |
uint8_t crc; |
uint16_t eeaddr; |
// range the setnumber |
if((1 > setnumber) || (setnumber > 5)) setnumber = 3; |
// calculate eeprom addr |
eeaddr = EEPROM_ADR_PARAMSET + PARAMSET_STRUCT_LEN * (setnumber - 1); |
// calculate checksum from eeprom |
crc = EEProm_Checksum(eeaddr, PARAMSET_STRUCT_LEN - 1); |
// check crc |
if(crc != eeprom_read_byte((uint8_t*)(eeaddr + PARAMSET_STRUCT_LEN - 1))) return 0; |
// check revision |
if(eeprom_read_byte((uint8_t*)(eeaddr)) != EEPARAM_REVISION) return 0; |
// read paramset from eeprom |
eeprom_read_block((void *) &EE_Parameter, (void*)(EEPROM_ADR_PARAMSET + PARAMSET_STRUCT_LEN * (setnumber - 1)), PARAMSET_STRUCT_LEN); |
LED_Init(); |
return 1; |
} |
/***************************************************/ |
/* Write Parameter Set to EEPROM */ |
/***************************************************/ |
// number [1..5] |
uint8_t ParamSet_WriteToEEProm(uint8_t setnumber) |
{ |
uint8_t crc; |
if(EE_Parameter.Revision == EEPARAM_REVISION) // write only the right revision to eeprom |
{ |
if(setnumber > 5) setnumber = 5; |
if(setnumber < 1) return 0; |
// update checksum |
EE_Parameter.crc = RAM_Checksum((uint8_t*)(&EE_Parameter), sizeof(EE_Parameter)-1); |
// write paramset to eeprom |
eeprom_write_block((void *) &EE_Parameter, (void*)(EEPROM_ADR_PARAMSET + PARAMSET_STRUCT_LEN * (setnumber - 1)), PARAMSET_STRUCT_LEN); |
// backup channel settings to separate block in eeprom |
eeprom_write_block( (void*)(EE_Parameter.Kanalbelegung), (void*)(EEPROM_ADR_CHANNELS), sizeof(EE_Parameter.Kanalbelegung)); |
// write crc of channel block to eeprom |
crc = RAM_Checksum((uint8_t*)(EE_Parameter.Kanalbelegung), sizeof(EE_Parameter.Kanalbelegung)); |
eeprom_write_byte((uint8_t*)(EEPROM_ADR_CHANNELS + sizeof(EE_Parameter.Kanalbelegung)), crc); |
// update active settings number |
SetActiveParamSet(setnumber); |
LED_Init(); |
return 1; |
} |
// wrong revision |
return 0; |
} |
/***************************************************/ |
/* Read MixerTable from EEPROM */ |
/***************************************************/ |
uint8_t MixerTable_ReadFromEEProm(void) |
{ |
uint8_t crc; |
// calculate checksum in eeprom |
crc = EEProm_Checksum(EEPROM_ADR_MIXERTABLE, sizeof(Mixer) - 1); |
// check crc |
if( crc != eeprom_read_byte((uint8_t*)(EEPROM_ADR_MIXERTABLE + sizeof(Mixer) - 1)) ) return 0; |
// check revision |
if(eeprom_read_byte((uint8_t*)(EEPROM_ADR_MIXERTABLE)) != EEMIXER_REVISION) return 0; |
// read mixer table |
eeprom_read_block((void *) &Mixer, (void*)(EEPROM_ADR_MIXERTABLE), sizeof(Mixer)); |
return 1; |
} |
/***************************************************/ |
/* Write Mixer Table to EEPROM */ |
/***************************************************/ |
uint8_t MixerTable_WriteToEEProm(void) |
{ |
if(Mixer.Revision == EEMIXER_REVISION) |
{ |
// update crc |
Mixer.crc = RAM_Checksum((uint8_t*)(&Mixer), sizeof(Mixer) - 1); |
// write to eeprom |
eeprom_write_block((void *) &Mixer, (void*)(EEPROM_ADR_MIXERTABLE), sizeof(Mixer)); |
return 1; |
} |
else return 0; |
} |
/***************************************************/ |
/* Default Values for Mixer Table */ |
/***************************************************/ |
void MixerTable_Default(void) // Quadro |
{ |
uint8_t i; |
Mixer.Revision = EEMIXER_REVISION; |
// clear mixer table |
for(i = 0; i < 16; i++) |
{ |
Mixer.Motor[i][MIX_GAS] = 0; |
Mixer.Motor[i][MIX_NICK] = 0; |
Mixer.Motor[i][MIX_ROLL] = 0; |
Mixer.Motor[i][MIX_YAW] = 0; |
} |
// default = Quadro |
Mixer.Motor[0][MIX_GAS] = 64; Mixer.Motor[0][MIX_NICK] = +64; Mixer.Motor[0][MIX_ROLL] = 0; Mixer.Motor[0][MIX_YAW] = +64; |
Mixer.Motor[1][MIX_GAS] = 64; Mixer.Motor[1][MIX_NICK] = -64; Mixer.Motor[1][MIX_ROLL] = 0; Mixer.Motor[1][MIX_YAW] = +64; |
Mixer.Motor[2][MIX_GAS] = 64; Mixer.Motor[2][MIX_NICK] = 0; Mixer.Motor[2][MIX_ROLL] = -64; Mixer.Motor[2][MIX_YAW] = -64; |
Mixer.Motor[3][MIX_GAS] = 64; Mixer.Motor[3][MIX_NICK] = 0; Mixer.Motor[3][MIX_ROLL] = +64; Mixer.Motor[3][MIX_YAW] = -64; |
memcpy(Mixer.Name, "Quadro\0", 7); |
Mixer.crc = Mixer.crc = RAM_Checksum((uint8_t*)(&Mixer), sizeof(Mixer) - 1); |
} |
/***************************************************/ |
/* Get active parameter set */ |
/***************************************************/ |
uint8_t GetActiveParamSet(void) |
{ |
uint8_t setnumber; |
setnumber = eeprom_read_byte((uint8_t*)(EEPROM_ADR_PARAM_BEGIN + PID_ACTIVE_SET)); |
if(setnumber > 5) |
{ |
setnumber = 3; |
eeprom_write_byte((void*)(EEPROM_ADR_PARAM_BEGIN+PID_ACTIVE_SET), setnumber); |
} |
return(setnumber); |
} |
/***************************************************/ |
/* Set active parameter set */ |
/***************************************************/ |
void SetActiveParamSet(uint8_t setnumber) |
{ |
if(setnumber > 5) setnumber = 5; |
if(setnumber < 1) setnumber = 1; |
eeprom_write_byte((uint8_t*)(EEPROM_ADR_PARAM_BEGIN + PID_ACTIVE_SET), setnumber); |
} |
/***************************************************/ |
/* Set default parameter set */ |
/***************************************************/ |
void SetDefaultParameter(uint8_t set, uint8_t restore_channels) |
{ |
if(set > 5) set = 5; |
else if(set < 1) set = 1; |
switch(set) |
{ |
case 1: |
ParamSet_DefaultSet1(); // Fill ParamSet Structure to default parameter set 1 (Sport) |
break; |
case 2: |
ParamSet_DefaultSet2(); // Kamera |
break; |
case 3: |
ParamSet_DefaultSet3(); // Beginner |
break; |
default: |
ParamSet_DefaultSet3(); // Beginner |
break; |
} |
if(restore_channels) |
{ |
uint8_t crc; |
// 1st check for a valid channel backup in eeprom |
crc = EEProm_Checksum(EEPROM_ADR_CHANNELS, sizeof(EE_Parameter.Kanalbelegung)); |
if(crc == eeprom_read_byte((uint8_t*)(EEPROM_ADR_CHANNELS + sizeof(EE_Parameter.Kanalbelegung))) ) |
{ |
eeprom_read_block((void *)EE_Parameter.Kanalbelegung, (void*)(EEPROM_ADR_CHANNELS), sizeof(EE_Parameter.Kanalbelegung)); |
} |
else ParamSet_DefaultStickMapping(); |
} |
else ParamSet_DefaultStickMapping(); |
ParamSet_WriteToEEProm(set); |
} |
/***************************************************/ |
/* Initialize EEPROM Parameter Sets */ |
/***************************************************/ |
void ParamSet_Init(void) |
{ |
uint8_t channel_backup = 0, bad_params = 0, ee_default = 0,i; |
if(EEPARAM_REVISION != GetParamByte(PID_EE_REVISION) ) |
{ |
ee_default = 1; // software update or forced by mktool |
SetParamByte(PID_EE_REVISION, EEPARAM_REVISION); |
} |
// 1st check for a valid channel backup in eeprom |
i = EEProm_Checksum(EEPROM_ADR_CHANNELS, sizeof(EE_Parameter.Kanalbelegung)); |
if(i == eeprom_read_byte((uint8_t*)(EEPROM_ADR_CHANNELS + sizeof(EE_Parameter.Kanalbelegung))) ) channel_backup = 1; |
// parameter check |
// check all 5 parameter settings |
for (i = 1;i < 6; i++) |
{ |
if(ee_default || !ParamSet_ReadFromEEProm(i)) // could not read paramset from eeprom |
{ |
bad_params = 1; |
printf("\n\rGenerating default Parameter Set %d",i); |
switch(i) |
{ |
case 1: |
ParamSet_DefaultSet1(); // Fill ParamSet Structure to default parameter set 1 (Sport) |
break; |
case 2: |
ParamSet_DefaultSet2(); // Kamera |
break; |
case 3: |
ParamSet_DefaultSet3(); // Beginner |
break; |
default: |
ParamSet_DefaultSet3(); // Kamera |
break; |
} |
if(channel_backup) // if we have an channel mapping backup in eeprom |
{ // restore it from eeprom |
eeprom_read_block((void *)EE_Parameter.Kanalbelegung, (void*)(EEPROM_ADR_CHANNELS), sizeof(EE_Parameter.Kanalbelegung)); |
} |
else |
{ // use default mapping |
ParamSet_DefaultStickMapping(); |
} |
ParamSet_WriteToEEProm(i); |
} |
} |
if(bad_params) // at least one of the parameter settings were invalid |
{ |
// default-Setting is parameter set 3 |
SetActiveParamSet(3); |
} |
// read active parameter set to ParamSet stucture |
i = GetActiveParamSet(); |
ParamSet_ReadFromEEProm(i); |
printf("\n\rUsing Parameter Set %d", i); |
// load mixer table |
if(ee_default || !MixerTable_ReadFromEEProm() ) |
{ |
printf("\n\rGenerating default Mixer Table"); |
MixerTable_Default(); // Quadro |
MixerTable_WriteToEEProm(); |
} |
// determine motornumber |
RequiredMotors = 0; |
for(i = 0; i < 16; i++) |
{ |
if(Mixer.Motor[i][MIX_GAS] > 0) RequiredMotors++; |
} |
printf("\n\rMixer-Config: '%s' (%u Motors)",Mixer.Name, RequiredMotors); |
printf("\n\r=============================="); |
} |
/branches/metro/v0.82a metro_Akku+/eeprom.d |
---|
0,0 → 1,3 |
eeprom.o eeprom.d : eeprom.c eeprom.h twimaster.h uart.h led.h main.h old_macros.h \ |
printf_P.h timer0.h analog.h menu.h rc.h fc.h gps.h spi.h spektrum.h \ |
capacity.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/eeprom.h |
---|
0,0 → 1,241 |
#ifndef _EEPROM_H |
#define _EEPROM_H |
#include <inttypes.h> |
#include "twimaster.h" |
#define EEPARAM_REVISION 85 // is count up, if paramater stucture has changed (compatibility) |
#define EEMIXER_REVISION 1 // is count up, if mixer stucture has changed (compatibility) |
#define EEPROM_ADR_PARAM_BEGIN 0 |
#define PID_EE_REVISION 1 // byte |
#define PID_ACTIVE_SET 2 // byte |
#define PID_PRESSURE_OFFSET 3 // byte |
#define PID_ACC_NICK 4 // word |
#define PID_ACC_ROLL 6 // word |
#define PID_ACC_TOP 8 // word |
#define PID_FLIGHT_MINUTES_TOTAL 10 // word |
#define PID_FLIGHT_MINUTES 14 // word |
#define EEPROM_ADR_CHANNELS 80 // 80 - 93, 12 bytes + 1 byte crc |
#define EEPROM_ADR_PARAMSET 100 // 100 - 650, 5 * 110 bytes |
#define EEPROM_ADR_MIXERTABLE 1000 // 1000 - 1078, 78 bytes |
#define EEPROM_ADR_BLCONFIG 1200 // 1200 - 1296, 12 * 8 bytes |
#define MIX_GAS 0 |
#define MIX_NICK 1 |
#define MIX_ROLL 2 |
#define MIX_YAW 3 |
typedef struct |
{ |
uint8_t Revision; |
int8_t Name[12]; |
int8_t Motor[16][4]; |
uint8_t crc; |
} __attribute__((packed)) MixerTable_t; |
extern MixerTable_t Mixer; |
extern uint8_t RequiredMotors; |
#define CFG_HOEHENREGELUNG 0x01 |
#define CFG_HOEHEN_SCHALTER 0x02 |
#define CFG_HEADING_HOLD 0x04 |
#define CFG_KOMPASS_AKTIV 0x08 |
#define CFG_KOMPASS_FIX 0x10 |
#define CFG_GPS_AKTIV 0x20 |
#define CFG_ACHSENKOPPLUNG_AKTIV 0x40 |
#define CFG_DREHRATEN_BEGRENZER 0x80 |
#define CFG_LOOP_OBEN 0x01 |
#define CFG_LOOP_UNTEN 0x02 |
#define CFG_LOOP_LINKS 0x04 |
#define CFG_LOOP_RECHTS 0x08 |
#define CFG_MOTOR_BLINK 0x10 |
#define CFG_MOTOR_OFF_LED1 0x20 |
#define CFG_MOTOR_OFF_LED2 0x40 |
#define CFG_RES4 0x80 |
#define CFG2_HEIGHT_LIMIT 0x01 |
#define CFG2_VARIO_BEEP 0x02 |
#define CFG_SENSITIVE_RC 0x04 |
// bit mask for ParamSet.Config0 |
#define CFG0_AIRPRESS_SENSOR 0x01 |
#define CFG0_HEIGHT_SWITCH 0x02 |
#define CFG0_HEADING_HOLD 0x04 |
#define CFG0_COMPASS_ACTIVE 0x08 |
#define CFG0_COMPASS_FIX 0x10 |
#define CFG0_GPS_ACTIVE 0x20 |
#define CFG0_AXIS_COUPLING_ACTIVE 0x40 |
#define CFG0_ROTARY_RATE_LIMITER 0x80 |
// defines for the receiver selection |
#define RECEIVER_PPM 0 |
#define RECEIVER_SPEKTRUM 1 |
#define RECEIVER_SPEKTRUM_HI_RES 2 |
#define RECEIVER_SPEKTRUM_LOW_RES 3 |
#define RECEIVER_JETI 4 |
#define RECEIVER_ACT_DSL 5 |
#define RECEIVER_UNKNOWN 0xFF |
// defines for lookup ParamSet.ChannelAssignment |
#define K_NICK 0 |
#define K_ROLL 1 |
#define K_GAS 2 |
#define K_GIER 3 |
#define K_POTI1 4 |
#define K_POTI2 5 |
#define K_POTI3 6 |
#define K_POTI4 7 |
#define K_POTI5 8 |
#define K_POTI6 9 |
#define K_POTI7 10 |
#define K_POTI8 11 |
// values above 247 representing poti1 to poti8 |
// poti1 = 255 |
// poti2 = 254 |
// poti3 = 253 |
// poti4 = 252 |
// poti5 = 251 |
// poti6 = 250 |
// poti7 = 249 |
// poti8 = 248 |
typedef struct |
{ |
unsigned char Revision; |
unsigned char Kanalbelegung[12]; // GAS[0], GIER[1],NICK[2], ROLL[3], POTI1, POTI2, POTI3 |
unsigned char GlobalConfig; // 0x01=Höhenregler aktiv,0x02=Kompass aktiv, 0x04=GPS aktiv, 0x08=Heading Hold aktiv |
unsigned char Hoehe_MinGas; // Wert : 0-100 |
unsigned char Luftdruck_D; // Wert : 0-250 |
unsigned char MaxHoehe; // Wert : 0-32 |
unsigned char Hoehe_P; // Wert : 0-32 |
unsigned char Hoehe_Verstaerkung; // Wert : 0-50 |
unsigned char Hoehe_ACC_Wirkung; // Wert : 0-250 |
unsigned char Hoehe_HoverBand; // Wert : 0-250 |
unsigned char Hoehe_GPS_Z; // Wert : 0-250 |
unsigned char Hoehe_StickNeutralPoint;// Wert : 0-250 |
unsigned char Stick_P; // Wert : 1-6 |
unsigned char Stick_D; // Wert : 0-64 |
unsigned char Gier_P; // Wert : 1-20 |
unsigned char Gas_Min; // Wert : 0-32 |
unsigned char Gas_Max; // Wert : 33-250 |
unsigned char GyroAccFaktor; // Wert : 1-64 |
unsigned char KompassWirkung; // Wert : 0-32 |
unsigned char Gyro_P; // Wert : 10-250 |
unsigned char Gyro_I; // Wert : 0-250 |
unsigned char Gyro_D; // Wert : 0-250 |
unsigned char Gyro_Gier_P; // Wert : 10-250 |
unsigned char Gyro_Gier_I; // Wert : 0-250 |
unsigned char Gyro_Stability; // Wert : 0-16 |
unsigned char UnterspannungsWarnung; // Wert : 0-250 |
unsigned char NotGas; // Wert : 0-250 //Gaswert bei Empängsverlust |
unsigned char NotGasZeit; // Wert : 0-250 // Zeitbis auf NotGas geschaltet wird, wg. Rx-Problemen |
unsigned char Receiver; // 0= Summensignal, 1= Spektrum, 2 =Jeti, 3=ACT DSL, 4=ACT S3D |
unsigned char I_Faktor; // Wert : 0-250 |
unsigned char UserParam1; // Wert : 0-250 |
unsigned char UserParam2; // Wert : 0-250 |
unsigned char UserParam3; // Wert : 0-250 |
unsigned char UserParam4; // Wert : 0-250 |
unsigned char ServoNickControl; // Wert : 0-250 // Stellung des Servos |
unsigned char ServoNickComp; // Wert : 0-250 // Einfluss Gyro/Servo |
unsigned char ServoNickMin; // Wert : 0-250 // Anschlag |
unsigned char ServoNickMax; // Wert : 0-250 // Anschlag |
//--- Seit V0.75 |
unsigned char ServoRollControl; // Wert : 0-250 // Stellung des Servos |
unsigned char ServoRollComp; // Wert : 0-250 |
unsigned char ServoRollMin; // Wert : 0-250 |
unsigned char ServoRollMax; // Wert : 0-250 |
//--- |
unsigned char ServoNickRefresh; // Speed of the Servo |
unsigned char ServoManualControlSpeed;// |
unsigned char CamOrientation; // |
unsigned char Servo3; // Value or mapping of the Servo Output |
unsigned char Servo4; // Value or mapping of the Servo Output |
unsigned char Servo5; // Value or mapping of the Servo Output |
unsigned char LoopGasLimit; // Wert: 0-250 max. Gas während Looping |
unsigned char LoopThreshold; // Wert: 0-250 Schwelle für Stickausschlag |
unsigned char LoopHysterese; // Wert: 0-250 Hysterese für Stickausschlag |
unsigned char AchsKopplung1; // Wert: 0-250 Faktor, mit dem Gier die Achsen Roll und Nick koppelt (NickRollMitkopplung) |
unsigned char AchsKopplung2; // Wert: 0-250 Faktor, mit dem Nick und Roll verkoppelt werden |
unsigned char CouplingYawCorrection; // Wert: 0-250 Faktor, mit dem Nick und Roll verkoppelt werden |
unsigned char WinkelUmschlagNick; // Wert: 0-250 180°-Punkt |
unsigned char WinkelUmschlagRoll; // Wert: 0-250 180°-Punkt |
unsigned char GyroAccAbgleich; // 1/k (Koppel_ACC_Wirkung) |
unsigned char Driftkomp; |
unsigned char DynamicStability; |
unsigned char UserParam5; // Wert : 0-250 |
unsigned char UserParam6; // Wert : 0-250 |
unsigned char UserParam7; // Wert : 0-250 |
unsigned char UserParam8; // Wert : 0-250 |
//---Output --------------------------------------------- |
unsigned char J16Bitmask; // for the J16 Output |
unsigned char J16Timing; // for the J16 Output |
unsigned char J17Bitmask; // for the J17 Output |
unsigned char J17Timing; // for the J17 Output |
// seit version V0.75c |
unsigned char WARN_J16_Bitmask; // for the J16 Output |
unsigned char WARN_J17_Bitmask; // for the J17 Output |
//---NaviCtrl--------------------------------------------- |
unsigned char NaviGpsModeControl; // Parameters for the Naviboard |
unsigned char NaviGpsGain; |
unsigned char NaviGpsP; |
unsigned char NaviGpsI; |
unsigned char NaviGpsD; |
unsigned char NaviGpsPLimit; |
unsigned char NaviGpsILimit; |
unsigned char NaviGpsDLimit; |
unsigned char NaviGpsACC; |
unsigned char NaviGpsMinSat; |
unsigned char NaviStickThreshold; |
unsigned char NaviWindCorrection; |
unsigned char NaviSpeedCompensation; |
unsigned char NaviOperatingRadius; |
unsigned char NaviAngleLimitation; |
unsigned char NaviPH_LoginTime; |
//---Ext.Ctrl--------------------------------------------- |
unsigned char ExternalControl; // for serial Control |
//---CareFree--------------------------------------------- |
unsigned char OrientationAngle; // Where is the front-direction? |
unsigned char OrientationModeControl; // switch for CareFree |
unsigned char MotorSafetySwitch; |
//------------------------------------------------ |
unsigned char BitConfig; // (war Loop-Cfg) Bitcodiert: 0x01=oben, 0x02=unten, 0x04=links, 0x08=rechts / wird getrennt behandelt |
unsigned char ServoCompInvert; // // 0x01 = Nick, 0x02 = Roll 0 oder 1 // WICHTIG!!! am Ende lassen |
unsigned char ExtraConfig; // bitcodiert |
char Name[12]; |
unsigned char crc; // must be the last byte! |
} paramset_t; |
#define PARAMSET_STRUCT_LEN sizeof(paramset_t) |
extern paramset_t EE_Parameter; |
extern uint8_t RAM_Checksum(uint8_t* pBuffer, uint16_t len); |
extern void ParamSet_Init(void); |
extern void SetDefaultParameter(uint8_t set, uint8_t restore_channels); |
extern uint8_t ParamSet_ReadFromEEProm(uint8_t setnumber); |
extern uint8_t ParamSet_WriteToEEProm(uint8_t setnumber); |
extern uint8_t GetActiveParamSet(void); |
extern void SetActiveParamSet(uint8_t setnumber); |
extern uint8_t MixerTable_ReadFromEEProm(void); |
extern uint8_t MixerTable_WriteToEEProm(void); |
extern uint8_t GetParamByte(uint16_t param_id); |
extern void SetParamByte(uint16_t param_id, uint8_t value); |
extern uint16_t GetParamWord(uint16_t param_id); |
extern void SetParamWord(uint16_t param_id, uint16_t value); |
#endif //_EEPROM_H |
/branches/metro/v0.82a metro_Akku+/eeprom.lst |
---|
0,0 → 1,1178 |
1 .file "eeprom.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .text |
11 .global RAM_Checksum |
13 RAM_Checksum: |
14 /* prologue: frame size=0 */ |
15 /* prologue end (size=0) */ |
16 0000 4AEA ldi r20,lo8(-86) |
17 0002 20E0 ldi r18,lo8(0) |
18 0004 30E0 ldi r19,hi8(0) |
19 0006 2617 cp r18,r22 |
20 0008 3707 cpc r19,r23 |
21 000a 40F4 brsh .L7 |
22 000c FC01 movw r30,r24 |
23 .L5: |
24 000e 8191 ld r24,Z+ |
25 0010 480F add r20,r24 |
26 0012 2F5F subi r18,lo8(-(1)) |
27 0014 3F4F sbci r19,hi8(-(1)) |
28 0016 2617 cp r18,r22 |
29 0018 3707 cpc r19,r23 |
30 001a C8F3 brlo .L5 |
31 .L7: |
32 001c 842F mov r24,r20 |
33 001e 9927 clr r25 |
34 /* epilogue: frame size=0 */ |
35 0020 0895 ret |
36 /* epilogue end (size=1) */ |
37 /* function RAM_Checksum size 17 (16) */ |
39 .global EEProm_Checksum |
41 EEProm_Checksum: |
42 /* prologue: frame size=0 */ |
43 /* prologue end (size=0) */ |
44 0022 AC01 movw r20,r24 |
45 0024 9AEA ldi r25,lo8(-86) |
46 0026 20E0 ldi r18,lo8(0) |
47 0028 30E0 ldi r19,hi8(0) |
48 .L16: |
49 002a 2617 cp r18,r22 |
50 002c 3707 cpc r19,r23 |
51 002e 50F4 brsh .L15 |
52 0030 DA01 movw r26,r20 |
53 0032 A20F add r26,r18 |
54 0034 B31F adc r27,r19 |
55 /* #APP */ |
56 0036 0E94 0000 call __eeprom_read_byte_1F2021 |
57 003a 802D mov r24,__tmp_reg__ |
58 /* #NOAPP */ |
59 003c 980F add r25,r24 |
60 003e 2F5F subi r18,lo8(-(1)) |
61 0040 3F4F sbci r19,hi8(-(1)) |
62 0042 F3CF rjmp .L16 |
63 .L15: |
64 0044 892F mov r24,r25 |
65 0046 9927 clr r25 |
66 /* epilogue: frame size=0 */ |
67 0048 0895 ret |
68 /* epilogue end (size=1) */ |
69 /* function EEProm_Checksum size 21 (20) */ |
71 .global ParamSet_DefaultStickMapping |
73 ParamSet_DefaultStickMapping: |
74 /* prologue: frame size=0 */ |
75 /* prologue end (size=0) */ |
76 004a 81E0 ldi r24,lo8(1) |
77 004c 8093 0000 sts EE_Parameter+3,r24 |
78 0050 82E0 ldi r24,lo8(2) |
79 0052 8093 0000 sts EE_Parameter+2,r24 |
80 0056 83E0 ldi r24,lo8(3) |
81 0058 8093 0000 sts EE_Parameter+1,r24 |
82 005c 84E0 ldi r24,lo8(4) |
83 005e 8093 0000 sts EE_Parameter+4,r24 |
84 0062 85E0 ldi r24,lo8(5) |
85 0064 8093 0000 sts EE_Parameter+5,r24 |
86 0068 86E0 ldi r24,lo8(6) |
87 006a 8093 0000 sts EE_Parameter+6,r24 |
88 006e 87E0 ldi r24,lo8(7) |
89 0070 8093 0000 sts EE_Parameter+7,r24 |
90 0074 88E0 ldi r24,lo8(8) |
91 0076 8093 0000 sts EE_Parameter+8,r24 |
92 007a 89E0 ldi r24,lo8(9) |
93 007c 8093 0000 sts EE_Parameter+9,r24 |
94 0080 8AE0 ldi r24,lo8(10) |
95 0082 8093 0000 sts EE_Parameter+10,r24 |
96 0086 8BE0 ldi r24,lo8(11) |
97 0088 8093 0000 sts EE_Parameter+11,r24 |
98 008c 8CE0 ldi r24,lo8(12) |
99 008e 8093 0000 sts EE_Parameter+12,r24 |
100 /* epilogue: frame size=0 */ |
101 0092 0895 ret |
102 /* epilogue end (size=1) */ |
103 /* function ParamSet_DefaultStickMapping size 37 (36) */ |
105 .global CommonDefaults |
107 CommonDefaults: |
108 /* prologue: frame size=0 */ |
109 /* prologue end (size=0) */ |
110 0094 95E5 ldi r25,lo8(85) |
111 0096 9093 0000 sts EE_Parameter,r25 |
112 009a 8091 0000 lds r24,PlatinenVersion |
113 009e 8431 cpi r24,lo8(20) |
114 00a0 70F0 brlo .L19 |
115 00a2 8AE0 ldi r24,lo8(10) |
116 00a4 8093 0000 sts EE_Parameter+32,r24 |
117 00a8 1092 0000 sts EE_Parameter+68,__zero_reg__ |
118 00ac 8BE1 ldi r24,lo8(27) |
119 00ae 8093 0000 sts EE_Parameter+28,r24 |
120 00b2 8EE4 ldi r24,lo8(78) |
121 00b4 8093 0000 sts EE_Parameter+65,r24 |
122 00b8 8093 0000 sts EE_Parameter+66,r24 |
123 00bc 0DC0 rjmp .L20 |
124 .L19: |
125 00be 83E0 ldi r24,lo8(3) |
126 00c0 8093 0000 sts EE_Parameter+32,r24 |
127 00c4 80E2 ldi r24,lo8(32) |
128 00c6 8093 0000 sts EE_Parameter+68,r24 |
129 00ca 8EE1 ldi r24,lo8(30) |
130 00cc 8093 0000 sts EE_Parameter+28,r24 |
131 00d0 9093 0000 sts EE_Parameter+65,r25 |
132 00d4 9093 0000 sts EE_Parameter+66,r25 |
133 .L20: |
134 00d8 8AE6 ldi r24,lo8(106) |
135 00da 8093 0000 sts EE_Parameter+13,r24 |
136 00de 83E0 ldi r24,lo8(3) |
137 00e0 8093 0000 sts EE_Parameter+102,r24 |
138 00e4 81E0 ldi r24,lo8(1) |
139 00e6 8093 0000 sts EE_Parameter+39,r24 |
140 00ea 1092 0000 sts EE_Parameter+99,__zero_reg__ |
141 00ee 1092 0000 sts EE_Parameter+96,__zero_reg__ |
142 00f2 68E0 ldi r22,lo8(8) |
143 00f4 6093 0000 sts EE_Parameter+26,r22 |
144 00f8 86EE ldi r24,lo8(-26) |
145 00fa 8093 0000 sts EE_Parameter+27,r24 |
146 00fe 80E8 ldi r24,lo8(-128) |
147 0100 8093 0000 sts EE_Parameter+29,r24 |
148 0104 5EE1 ldi r21,lo8(30) |
149 0106 5093 0000 sts EE_Parameter+14,r21 |
150 010a 8FEF ldi r24,lo8(-1) |
151 010c 8093 0000 sts EE_Parameter+16,r24 |
152 0110 9FE0 ldi r25,lo8(15) |
153 0112 9093 0000 sts EE_Parameter+17,r25 |
154 0116 5093 0000 sts EE_Parameter+15,r21 |
155 011a 1092 0000 sts EE_Parameter+19,__zero_reg__ |
156 011e 6093 0000 sts EE_Parameter+20,r22 |
157 0122 80E4 ldi r24,lo8(64) |
158 0124 8093 0000 sts EE_Parameter+21,r24 |
159 0128 1092 0000 sts EE_Parameter+22,__zero_reg__ |
160 012c 9093 0000 sts EE_Parameter+18,r25 |
161 0130 1092 0000 sts EE_Parameter+41,__zero_reg__ |
162 0134 1092 0000 sts EE_Parameter+42,__zero_reg__ |
163 0138 1092 0000 sts EE_Parameter+43,__zero_reg__ |
164 013c 1092 0000 sts EE_Parameter+44,__zero_reg__ |
165 0140 1092 0000 sts EE_Parameter+70,__zero_reg__ |
166 0144 1092 0000 sts EE_Parameter+71,__zero_reg__ |
167 0148 1092 0000 sts EE_Parameter+72,__zero_reg__ |
168 014c 1092 0000 sts EE_Parameter+73,__zero_reg__ |
169 0150 38E7 ldi r19,lo8(120) |
170 0152 3093 0000 sts EE_Parameter+45,r19 |
171 0156 48E2 ldi r20,lo8(40) |
172 0158 4093 0000 sts EE_Parameter+46,r20 |
173 015c 72E0 ldi r23,lo8(2) |
174 015e 7093 0000 sts EE_Parameter+101,r23 |
175 0162 9093 0000 sts EE_Parameter+47,r25 |
176 0166 27EF ldi r18,lo8(-9) |
177 0168 2093 0000 sts EE_Parameter+48,r18 |
178 016c 85E0 ldi r24,lo8(5) |
179 016e 8093 0000 sts EE_Parameter+53,r24 |
180 0172 8DE7 ldi r24,lo8(125) |
181 0174 8093 0000 sts EE_Parameter+56,r24 |
182 0178 8093 0000 sts EE_Parameter+57,r24 |
183 017c 8093 0000 sts EE_Parameter+58,r24 |
184 0180 3093 0000 sts EE_Parameter+49,r19 |
185 0184 9AE5 ldi r25,lo8(90) |
186 0186 9093 0000 sts EE_Parameter+50,r25 |
187 018a 1092 0000 sts EE_Parameter+51,__zero_reg__ |
188 018e 2093 0000 sts EE_Parameter+52,r18 |
189 0192 4093 0000 sts EE_Parameter+54,r20 |
190 0196 1092 0000 sts EE_Parameter+55,__zero_reg__ |
191 019a 8FE5 ldi r24,lo8(95) |
192 019c 8093 0000 sts EE_Parameter+74,r24 |
193 01a0 83EF ldi r24,lo8(-13) |
194 01a2 8093 0000 sts EE_Parameter+76,r24 |
195 01a6 8AEA ldi r24,lo8(-86) |
196 01a8 8093 0000 sts EE_Parameter+78,r24 |
197 01ac 8093 0000 sts EE_Parameter+79,r24 |
198 01b0 84E1 ldi r24,lo8(20) |
199 01b2 8093 0000 sts EE_Parameter+75,r24 |
200 01b6 8093 0000 sts EE_Parameter+77,r24 |
201 01ba 82E3 ldi r24,lo8(50) |
202 01bc 8093 0000 sts EE_Parameter+59,r24 |
203 01c0 9093 0000 sts EE_Parameter+60,r25 |
204 01c4 8093 0000 sts EE_Parameter+61,r24 |
205 01c8 1092 0000 sts EE_Parameter+100,__zero_reg__ |
206 01cc 8EEF ldi r24,lo8(-2) |
207 01ce 8093 0000 sts EE_Parameter+80,r24 |
208 01d2 24E6 ldi r18,lo8(100) |
209 01d4 2093 0000 sts EE_Parameter+81,r18 |
210 01d8 9093 0000 sts EE_Parameter+82,r25 |
211 01dc 9093 0000 sts EE_Parameter+83,r25 |
212 01e0 9093 0000 sts EE_Parameter+84,r25 |
213 01e4 8BE4 ldi r24,lo8(75) |
214 01e6 8093 0000 sts EE_Parameter+85,r24 |
215 01ea 8093 0000 sts EE_Parameter+86,r24 |
216 01ee 8093 0000 sts EE_Parameter+87,r24 |
217 01f2 1092 0000 sts EE_Parameter+88,__zero_reg__ |
218 01f6 86E0 ldi r24,lo8(6) |
219 01f8 8093 0000 sts EE_Parameter+89,r24 |
220 01fc 6093 0000 sts EE_Parameter+90,r22 |
221 0200 9093 0000 sts EE_Parameter+91,r25 |
222 0204 5093 0000 sts EE_Parameter+92,r21 |
223 0208 2093 0000 sts EE_Parameter+93,r18 |
224 020c 2093 0000 sts EE_Parameter+94,r18 |
225 0210 7093 0000 sts EE_Parameter+95,r23 |
226 0214 1092 0000 sts EE_Parameter+97,__zero_reg__ |
227 0218 1092 0000 sts EE_Parameter+98,__zero_reg__ |
228 021c 81E2 ldi r24,lo8(33) |
229 021e 8093 0000 sts EE_Parameter+36,r24 |
230 0222 8DE2 ldi r24,lo8(45) |
231 0224 8093 0000 sts EE_Parameter+37,r24 |
232 0228 9093 0000 sts EE_Parameter+38,r25 |
233 /* epilogue: frame size=0 */ |
234 022c 0895 ret |
235 /* epilogue end (size=1) */ |
236 /* function CommonDefaults size 205 (204) */ |
238 .data |
239 .LC0: |
240 0000 5370 6F72 .string "Sport" |
240 7400 |
241 0006 00 .string "" |
242 .text |
243 .global ParamSet_DefaultSet1 |
245 ParamSet_DefaultSet1: |
246 /* prologue: frame size=0 */ |
247 022e CF93 push r28 |
248 0230 DF93 push r29 |
249 /* prologue end (size=2) */ |
250 0232 0E94 0000 call CommonDefaults |
251 0236 8EE0 ldi r24,lo8(14) |
252 0238 8093 0000 sts EE_Parameter+23,r24 |
253 023c 20E1 ldi r18,lo8(16) |
254 023e 2093 0000 sts EE_Parameter+24,r18 |
255 0242 3CE0 ldi r19,lo8(12) |
256 0244 3093 0000 sts EE_Parameter+25,r19 |
257 0248 90E5 ldi r25,lo8(80) |
258 024a 9093 0000 sts EE_Parameter+30,r25 |
259 024e 86E9 ldi r24,lo8(-106) |
260 0250 8093 0000 sts EE_Parameter+31,r24 |
261 0254 9093 0000 sts EE_Parameter+33,r25 |
262 0258 8093 0000 sts EE_Parameter+34,r24 |
263 025c 86E0 ldi r24,lo8(6) |
264 025e 8093 0000 sts EE_Parameter+35,r24 |
265 0262 80E2 ldi r24,lo8(32) |
266 0264 8093 0000 sts EE_Parameter+40,r24 |
267 0268 8AE5 ldi r24,lo8(90) |
268 026a 8093 0000 sts EE_Parameter+62,r24 |
269 026e 9093 0000 sts EE_Parameter+63,r25 |
270 0272 81E0 ldi r24,lo8(1) |
271 0274 8093 0000 sts EE_Parameter+64,r24 |
272 0278 2093 0000 sts EE_Parameter+67,r18 |
273 027c 84E6 ldi r24,lo8(100) |
274 027e 8093 0000 sts EE_Parameter+69,r24 |
275 0282 A0E0 ldi r26,lo8(EE_Parameter+103) |
276 0284 B0E0 ldi r27,hi8(EE_Parameter+103) |
277 0286 E0E0 ldi r30,lo8(.LC0) |
278 0288 F0E0 ldi r31,hi8(.LC0) |
279 028a ED01 movw r28,r26 |
280 028c 0190 ld __tmp_reg__,Z+ |
281 028e 0992 st Y+,__tmp_reg__ |
282 0290 3A95 dec r19 |
283 0292 E1F7 brne .-8 |
284 0294 63E7 ldi r22,lo8(115) |
285 0296 70E0 ldi r23,hi8(115) |
286 0298 CD01 movw r24,r26 |
287 029a 8756 subi r24,lo8(-(-103)) |
288 029c 9040 sbci r25,hi8(-(-103)) |
289 029e 0E94 0000 call RAM_Checksum |
290 02a2 8093 0000 sts EE_Parameter+115,r24 |
291 /* epilogue: frame size=0 */ |
292 02a6 DF91 pop r29 |
293 02a8 CF91 pop r28 |
294 02aa 0895 ret |
295 /* epilogue end (size=3) */ |
296 /* function ParamSet_DefaultSet1 size 63 (58) */ |
298 .data |
299 .LC1: |
300 0007 4E6F 726D .string "Normal" |
300 616C 00 |
301 000e 00 .string "" |
302 .text |
303 .global ParamSet_DefaultSet2 |
305 ParamSet_DefaultSet2: |
306 /* prologue: frame size=0 */ |
307 02ac CF93 push r28 |
308 02ae DF93 push r29 |
309 /* prologue end (size=2) */ |
310 02b0 0E94 0000 call CommonDefaults |
311 02b4 8AE0 ldi r24,lo8(10) |
312 02b6 8093 0000 sts EE_Parameter+23,r24 |
313 02ba 80E1 ldi r24,lo8(16) |
314 02bc 8093 0000 sts EE_Parameter+24,r24 |
315 02c0 26E0 ldi r18,lo8(6) |
316 02c2 2093 0000 sts EE_Parameter+25,r18 |
317 02c6 9AE5 ldi r25,lo8(90) |
318 02c8 9093 0000 sts EE_Parameter+30,r25 |
319 02cc 88E7 ldi r24,lo8(120) |
320 02ce 8093 0000 sts EE_Parameter+31,r24 |
321 02d2 9093 0000 sts EE_Parameter+33,r25 |
322 02d6 8093 0000 sts EE_Parameter+34,r24 |
323 02da 2093 0000 sts EE_Parameter+35,r18 |
324 02de 20E2 ldi r18,lo8(32) |
325 02e0 2093 0000 sts EE_Parameter+40,r18 |
326 02e4 9093 0000 sts EE_Parameter+62,r25 |
327 02e8 80E5 ldi r24,lo8(80) |
328 02ea 8093 0000 sts EE_Parameter+63,r24 |
329 02ee 8CE3 ldi r24,lo8(60) |
330 02f0 8093 0000 sts EE_Parameter+64,r24 |
331 02f4 2093 0000 sts EE_Parameter+67,r18 |
332 02f8 8BE4 ldi r24,lo8(75) |
333 02fa 8093 0000 sts EE_Parameter+69,r24 |
334 02fe A0E0 ldi r26,lo8(EE_Parameter+103) |
335 0300 B0E0 ldi r27,hi8(EE_Parameter+103) |
336 0302 8CE0 ldi r24,lo8(12) |
337 0304 E0E0 ldi r30,lo8(.LC1) |
338 0306 F0E0 ldi r31,hi8(.LC1) |
339 0308 ED01 movw r28,r26 |
340 030a 0190 ld __tmp_reg__,Z+ |
341 030c 0992 st Y+,__tmp_reg__ |
342 030e 8A95 dec r24 |
343 0310 E1F7 brne .-8 |
344 0312 63E7 ldi r22,lo8(115) |
345 0314 70E0 ldi r23,hi8(115) |
346 0316 CD01 movw r24,r26 |
347 0318 8756 subi r24,lo8(-(-103)) |
348 031a 9040 sbci r25,hi8(-(-103)) |
349 031c 0E94 0000 call RAM_Checksum |
350 0320 8093 0000 sts EE_Parameter+115,r24 |
351 /* epilogue: frame size=0 */ |
352 0324 DF91 pop r29 |
353 0326 CF91 pop r28 |
354 0328 0895 ret |
355 /* epilogue end (size=3) */ |
356 /* function ParamSet_DefaultSet2 size 63 (58) */ |
358 .data |
359 .LC2: |
360 000f 4265 6769 .string "Beginner" |
360 6E6E 6572 |
360 00 |
361 0018 00 .string "" |
362 .text |
363 .global ParamSet_DefaultSet3 |
365 ParamSet_DefaultSet3: |
366 /* prologue: frame size=0 */ |
367 032a CF93 push r28 |
368 032c DF93 push r29 |
369 /* prologue end (size=2) */ |
370 032e 0E94 0000 call CommonDefaults |
371 0332 88E0 ldi r24,lo8(8) |
372 0334 8093 0000 sts EE_Parameter+23,r24 |
373 0338 30E1 ldi r19,lo8(16) |
374 033a 3093 0000 sts EE_Parameter+24,r19 |
375 033e 26E0 ldi r18,lo8(6) |
376 0340 2093 0000 sts EE_Parameter+25,r18 |
377 0344 94E6 ldi r25,lo8(100) |
378 0346 9093 0000 sts EE_Parameter+30,r25 |
379 034a 88E7 ldi r24,lo8(120) |
380 034c 8093 0000 sts EE_Parameter+31,r24 |
381 0350 9093 0000 sts EE_Parameter+33,r25 |
382 0354 8093 0000 sts EE_Parameter+34,r24 |
383 0358 2093 0000 sts EE_Parameter+35,r18 |
384 035c 3093 0000 sts EE_Parameter+40,r19 |
385 0360 8AE5 ldi r24,lo8(90) |
386 0362 8093 0000 sts EE_Parameter+62,r24 |
387 0366 80E5 ldi r24,lo8(80) |
388 0368 8093 0000 sts EE_Parameter+63,r24 |
389 036c 96E4 ldi r25,lo8(70) |
390 036e 9093 0000 sts EE_Parameter+64,r25 |
391 0372 80E2 ldi r24,lo8(32) |
392 0374 8093 0000 sts EE_Parameter+67,r24 |
393 0378 9093 0000 sts EE_Parameter+69,r25 |
394 037c A0E0 ldi r26,lo8(EE_Parameter+103) |
395 037e B0E0 ldi r27,hi8(EE_Parameter+103) |
396 0380 8CE0 ldi r24,lo8(12) |
397 0382 E0E0 ldi r30,lo8(.LC2) |
398 0384 F0E0 ldi r31,hi8(.LC2) |
399 0386 ED01 movw r28,r26 |
400 0388 0190 ld __tmp_reg__,Z+ |
401 038a 0992 st Y+,__tmp_reg__ |
402 038c 8A95 dec r24 |
403 038e E1F7 brne .-8 |
404 0390 63E7 ldi r22,lo8(115) |
405 0392 70E0 ldi r23,hi8(115) |
406 0394 CD01 movw r24,r26 |
407 0396 8756 subi r24,lo8(-(-103)) |
408 0398 9040 sbci r25,hi8(-(-103)) |
409 039a 0E94 0000 call RAM_Checksum |
410 039e 8093 0000 sts EE_Parameter+115,r24 |
411 /* epilogue: frame size=0 */ |
412 03a2 DF91 pop r29 |
413 03a4 CF91 pop r28 |
414 03a6 0895 ret |
415 /* epilogue end (size=3) */ |
416 /* function ParamSet_DefaultSet3 size 63 (58) */ |
418 .global GetParamByte |
420 GetParamByte: |
421 /* prologue: frame size=0 */ |
422 /* prologue end (size=0) */ |
423 03a8 DC01 movw r26,r24 |
424 /* #APP */ |
425 03aa 0E94 0000 call __eeprom_read_byte_1F2021 |
426 03ae 802D mov r24,__tmp_reg__ |
427 /* #NOAPP */ |
428 03b0 9927 clr r25 |
429 /* epilogue: frame size=0 */ |
430 03b2 0895 ret |
431 /* epilogue end (size=1) */ |
432 /* function GetParamByte size 7 (6) */ |
434 .global SetParamByte |
436 SetParamByte: |
437 /* prologue: frame size=0 */ |
438 /* prologue end (size=0) */ |
439 03b4 DC01 movw r26,r24 |
440 /* #APP */ |
441 03b6 062E mov __tmp_reg__,r22 |
442 03b8 0E94 0000 call __eeprom_write_byte_1F2021 |
443 /* #NOAPP */ |
444 /* epilogue: frame size=0 */ |
445 03bc 0895 ret |
446 /* epilogue end (size=1) */ |
447 /* function SetParamByte size 6 (5) */ |
449 .global GetParamWord |
451 GetParamWord: |
452 /* prologue: frame size=0 */ |
453 /* prologue end (size=0) */ |
454 03be DC01 movw r26,r24 |
455 /* #APP */ |
456 03c0 0E94 0000 call __eeprom_read_word_1F2021 |
457 |
458 /* #NOAPP */ |
459 03c4 CF01 movw r24,r30 |
460 /* epilogue: frame size=0 */ |
461 03c6 0895 ret |
462 /* epilogue end (size=1) */ |
463 /* function GetParamWord size 7 (6) */ |
465 .global SetParamWord |
467 SetParamWord: |
468 /* prologue: frame size=0 */ |
469 /* prologue end (size=0) */ |
470 03c8 DC01 movw r26,r24 |
471 /* #APP */ |
472 03ca 0B01 movw __tmp_reg__,r22 |
473 03cc 0E94 0000 call __eeprom_write_word_1F2021 |
474 |
475 /* #NOAPP */ |
476 /* epilogue: frame size=0 */ |
477 03d0 0895 ret |
478 /* epilogue end (size=1) */ |
479 /* function SetParamWord size 8 (7) */ |
481 .global ParamSet_ReadFromEEProm |
483 ParamSet_ReadFromEEProm: |
484 /* prologue: frame size=0 */ |
485 03d2 FF92 push r15 |
486 03d4 0F93 push r16 |
487 03d6 1F93 push r17 |
488 03d8 CF93 push r28 |
489 03da DF93 push r29 |
490 /* prologue end (size=5) */ |
491 03dc 982F mov r25,r24 |
492 03de 8150 subi r24,lo8(-(-1)) |
493 03e0 8530 cpi r24,lo8(5) |
494 03e2 08F0 brlo .L33 |
495 03e4 93E0 ldi r25,lo8(3) |
496 .L33: |
497 03e6 84E7 ldi r24,lo8(116) |
498 03e8 F82E mov r15,r24 |
499 03ea 9F9D mul r25,r15 |
500 03ec 8001 movw r16,r0 |
501 03ee 1124 clr r1 |
502 03f0 E801 movw r28,r16 |
503 03f2 6097 sbiw r28,16 |
504 03f4 63E7 ldi r22,lo8(115) |
505 03f6 70E0 ldi r23,hi8(115) |
506 03f8 CE01 movw r24,r28 |
507 03fa 0E94 0000 call EEProm_Checksum |
508 03fe 982F mov r25,r24 |
509 0400 D801 movw r26,r16 |
510 0402 AD59 subi r26,lo8(-(99)) |
511 0404 BF4F sbci r27,hi8(-(99)) |
512 /* #APP */ |
513 0406 0E94 0000 call __eeprom_read_byte_1F2021 |
514 040a 802D mov r24,__tmp_reg__ |
515 /* #NOAPP */ |
516 040c 8917 cp r24,r25 |
517 040e 31F4 brne .L45 |
518 0410 DE01 movw r26,r28 |
519 /* #APP */ |
520 0412 0E94 0000 call __eeprom_read_byte_1F2021 |
521 0416 802D mov r24,__tmp_reg__ |
522 /* #NOAPP */ |
523 0418 8535 cpi r24,lo8(85) |
524 041a 19F0 breq .L36 |
525 .L45: |
526 041c 80E0 ldi r24,lo8(0) |
527 041e 90E0 ldi r25,hi8(0) |
528 0420 0AC0 rjmp .L32 |
529 .L36: |
530 0422 E0E0 ldi r30,lo8(EE_Parameter) |
531 0424 F0E0 ldi r31,hi8(EE_Parameter) |
532 0426 DE01 movw r26,r28 |
533 /* #APP */ |
534 0428 1F2C mov __zero_reg__,r15 |
535 042a 0E94 0000 call __eeprom_read_block_1F2021 |
536 /* #NOAPP */ |
537 042e 0E94 0000 call LED_Init |
538 0432 81E0 ldi r24,lo8(1) |
539 0434 90E0 ldi r25,hi8(1) |
540 .L32: |
541 /* epilogue: frame size=0 */ |
542 0436 E5E0 ldi r30,5 |
543 0438 CDB7 in r28,__SP_L__ |
544 043a DEB7 in r29,__SP_H__ |
545 043c 0C94 0000 jmp __epilogue_restores__+26 |
546 /* epilogue end (size=5) */ |
547 /* function ParamSet_ReadFromEEProm size 58 (48) */ |
549 .global SetActiveParamSet |
551 SetActiveParamSet: |
552 /* prologue: frame size=0 */ |
553 /* prologue end (size=0) */ |
554 0440 8630 cpi r24,lo8(6) |
555 0442 10F0 brlo .L47 |
556 0444 85E0 ldi r24,lo8(5) |
557 0446 03C0 rjmp .L48 |
558 .L47: |
559 0448 8823 tst r24 |
560 044a 09F4 brne .L48 |
561 044c 81E0 ldi r24,lo8(1) |
562 .L48: |
563 044e A2E0 ldi r26,lo8(2) |
564 0450 B0E0 ldi r27,hi8(2) |
565 /* #APP */ |
566 0452 082E mov __tmp_reg__,r24 |
567 0454 0E94 0000 call __eeprom_write_byte_1F2021 |
568 /* #NOAPP */ |
569 /* epilogue: frame size=0 */ |
570 0458 0895 ret |
571 /* epilogue end (size=1) */ |
572 /* function SetActiveParamSet size 14 (13) */ |
574 .global ParamSet_WriteToEEProm |
576 ParamSet_WriteToEEProm: |
577 /* prologue: frame size=0 */ |
578 045a 1F93 push r17 |
579 045c CF93 push r28 |
580 045e DF93 push r29 |
581 /* prologue end (size=3) */ |
582 0460 182F mov r17,r24 |
583 0462 C0E0 ldi r28,lo8(EE_Parameter) |
584 0464 D0E0 ldi r29,hi8(EE_Parameter) |
585 0466 8091 0000 lds r24,EE_Parameter |
586 046a 8535 cpi r24,lo8(85) |
587 046c 91F5 brne .L51 |
588 046e 1630 cpi r17,lo8(6) |
589 0470 10F0 brlo .L52 |
590 0472 15E0 ldi r17,lo8(5) |
591 0474 02C0 rjmp .L53 |
592 .L52: |
593 0476 1123 tst r17 |
594 0478 61F1 breq .L51 |
595 .L53: |
596 047a 63E7 ldi r22,lo8(115) |
597 047c 70E0 ldi r23,hi8(115) |
598 047e 80E0 ldi r24,lo8(EE_Parameter) |
599 0480 90E0 ldi r25,hi8(EE_Parameter) |
600 0482 0E94 0000 call RAM_Checksum |
601 0486 8093 0000 sts EE_Parameter+115,r24 |
602 048a 84E7 ldi r24,lo8(116) |
603 048c 189F mul r17,r24 |
604 048e D001 movw r26,r0 |
605 0490 1124 clr r1 |
606 0492 5097 sbiw r26,16 |
607 0494 FE01 movw r30,r28 |
608 /* #APP */ |
609 0496 182E mov __zero_reg__,r24 |
610 0498 0E94 0000 call __eeprom_write_block_1F2021 |
611 /* #NOAPP */ |
612 049c E0E0 ldi r30,lo8(EE_Parameter+1) |
613 049e F0E0 ldi r31,hi8(EE_Parameter+1) |
614 04a0 A0E5 ldi r26,lo8(80) |
615 04a2 B0E0 ldi r27,hi8(80) |
616 04a4 2CE0 ldi r18,lo8(12) |
617 04a6 30E0 ldi r19,hi8(12) |
618 /* #APP */ |
619 04a8 122E mov __zero_reg__,r18 |
620 04aa 0E94 0000 call __eeprom_write_block_1F2021 |
621 /* #NOAPP */ |
622 04ae B901 movw r22,r18 |
623 04b0 80E0 ldi r24,lo8(EE_Parameter+1) |
624 04b2 90E0 ldi r25,hi8(EE_Parameter+1) |
625 04b4 0E94 0000 call RAM_Checksum |
626 04b8 ACE5 ldi r26,lo8(92) |
627 04ba B0E0 ldi r27,hi8(92) |
628 /* #APP */ |
629 04bc 082E mov __tmp_reg__,r24 |
630 04be 0E94 0000 call __eeprom_write_byte_1F2021 |
631 /* #NOAPP */ |
632 04c2 812F mov r24,r17 |
633 04c4 0E94 0000 call SetActiveParamSet |
634 04c8 0E94 0000 call LED_Init |
635 04cc 81E0 ldi r24,lo8(1) |
636 04ce 90E0 ldi r25,hi8(1) |
637 04d0 02C0 rjmp .L50 |
638 .L51: |
639 04d2 80E0 ldi r24,lo8(0) |
640 04d4 90E0 ldi r25,hi8(0) |
641 .L50: |
642 /* epilogue: frame size=0 */ |
643 04d6 DF91 pop r29 |
644 04d8 CF91 pop r28 |
645 04da 1F91 pop r17 |
646 04dc 0895 ret |
647 /* epilogue end (size=4) */ |
648 /* function ParamSet_WriteToEEProm size 69 (62) */ |
650 .global MixerTable_ReadFromEEProm |
652 MixerTable_ReadFromEEProm: |
653 /* prologue: frame size=0 */ |
654 /* prologue end (size=0) */ |
655 04de 6DE4 ldi r22,lo8(77) |
656 04e0 70E0 ldi r23,hi8(77) |
657 04e2 88EE ldi r24,lo8(1000) |
658 04e4 93E0 ldi r25,hi8(1000) |
659 04e6 0E94 0000 call EEProm_Checksum |
660 04ea A5E3 ldi r26,lo8(1077) |
661 04ec B4E0 ldi r27,hi8(1077) |
662 /* #APP */ |
663 04ee 0E94 0000 call __eeprom_read_byte_1F2021 |
664 04f2 902D mov r25,__tmp_reg__ |
665 /* #NOAPP */ |
666 04f4 9817 cp r25,r24 |
667 04f6 39F4 brne .L81 |
668 04f8 A8EE ldi r26,lo8(1000) |
669 04fa B3E0 ldi r27,hi8(1000) |
670 /* #APP */ |
671 04fc 0E94 0000 call __eeprom_read_byte_1F2021 |
672 0500 802D mov r24,__tmp_reg__ |
673 /* #NOAPP */ |
674 0502 8130 cpi r24,lo8(1) |
675 0504 19F0 breq .L72 |
676 .L81: |
677 0506 80E0 ldi r24,lo8(0) |
678 0508 90E0 ldi r25,hi8(0) |
679 050a 0895 ret |
680 .L72: |
681 050c E0E0 ldi r30,lo8(Mixer) |
682 050e F0E0 ldi r31,hi8(Mixer) |
683 0510 A8EE ldi r26,lo8(1000) |
684 0512 B3E0 ldi r27,hi8(1000) |
685 0514 8EE4 ldi r24,lo8(78) |
686 /* #APP */ |
687 0516 182E mov __zero_reg__,r24 |
688 0518 0E94 0000 call __eeprom_read_block_1F2021 |
689 /* #NOAPP */ |
690 051c 81E0 ldi r24,lo8(1) |
691 051e 90E0 ldi r25,hi8(1) |
692 0520 0895 ret |
693 /* epilogue: frame size=0 */ |
694 /* epilogue: noreturn */ |
695 /* epilogue end (size=0) */ |
696 /* function MixerTable_ReadFromEEProm size 37 (37) */ |
698 .global MixerTable_WriteToEEProm |
700 MixerTable_WriteToEEProm: |
701 /* prologue: frame size=0 */ |
702 0522 CF93 push r28 |
703 0524 DF93 push r29 |
704 /* prologue end (size=2) */ |
705 0526 C0E0 ldi r28,lo8(Mixer) |
706 0528 D0E0 ldi r29,hi8(Mixer) |
707 052a 8091 0000 lds r24,Mixer |
708 052e 8130 cpi r24,lo8(1) |
709 0530 89F4 brne .L83 |
710 0532 6DE4 ldi r22,lo8(77) |
711 0534 70E0 ldi r23,hi8(77) |
712 0536 CE01 movw r24,r28 |
713 0538 0E94 0000 call RAM_Checksum |
714 053c 8093 0000 sts Mixer+77,r24 |
715 0540 A8EE ldi r26,lo8(1000) |
716 0542 B3E0 ldi r27,hi8(1000) |
717 0544 8EE4 ldi r24,lo8(78) |
718 0546 FE01 movw r30,r28 |
719 /* #APP */ |
720 0548 182E mov __zero_reg__,r24 |
721 054a 0E94 0000 call __eeprom_write_block_1F2021 |
722 /* #NOAPP */ |
723 054e 81E0 ldi r24,lo8(1) |
724 0550 90E0 ldi r25,hi8(1) |
725 0552 02C0 rjmp .L82 |
726 .L83: |
727 0554 80E0 ldi r24,lo8(0) |
728 0556 90E0 ldi r25,hi8(0) |
729 .L82: |
730 /* epilogue: frame size=0 */ |
731 0558 DF91 pop r29 |
732 055a CF91 pop r28 |
733 055c 0895 ret |
734 /* epilogue end (size=3) */ |
735 /* function MixerTable_WriteToEEProm size 31 (26) */ |
737 .data |
738 .LC3: |
739 0019 5175 6164 .string "Quadro" |
739 726F 00 |
740 0020 00 .string "" |
741 .text |
742 .global MixerTable_Default |
744 MixerTable_Default: |
745 /* prologue: frame size=0 */ |
746 055e CF93 push r28 |
747 0560 DF93 push r29 |
748 /* prologue end (size=2) */ |
749 0562 81E0 ldi r24,lo8(1) |
750 0564 8093 0000 sts Mixer,r24 |
751 0568 E0E0 ldi r30,lo8(Mixer) |
752 056a F0E0 ldi r31,hi8(Mixer) |
753 056c 8FE0 ldi r24,lo8(15) |
754 .L96: |
755 056e 1586 std Z+13,__zero_reg__ |
756 0570 1686 std Z+14,__zero_reg__ |
757 0572 1786 std Z+15,__zero_reg__ |
758 0574 108A std Z+16,__zero_reg__ |
759 0576 8150 subi r24,lo8(-(-1)) |
760 0578 3496 adiw r30,4 |
761 057a 87FF sbrs r24,7 |
762 057c F8CF rjmp .L96 |
763 057e 80E4 ldi r24,lo8(64) |
764 0580 8093 0000 sts Mixer+13,r24 |
765 0584 8093 0000 sts Mixer+14,r24 |
766 0588 1092 0000 sts Mixer+15,__zero_reg__ |
767 058c 8093 0000 sts Mixer+16,r24 |
768 0590 8093 0000 sts Mixer+17,r24 |
769 0594 90EC ldi r25,lo8(-64) |
770 0596 9093 0000 sts Mixer+18,r25 |
771 059a 1092 0000 sts Mixer+19,__zero_reg__ |
772 059e 8093 0000 sts Mixer+20,r24 |
773 05a2 8093 0000 sts Mixer+21,r24 |
774 05a6 1092 0000 sts Mixer+22,__zero_reg__ |
775 05aa 9093 0000 sts Mixer+23,r25 |
776 05ae 9093 0000 sts Mixer+24,r25 |
777 05b2 8093 0000 sts Mixer+25,r24 |
778 05b6 1092 0000 sts Mixer+26,__zero_reg__ |
779 05ba 8093 0000 sts Mixer+27,r24 |
780 05be 9093 0000 sts Mixer+28,r25 |
781 05c2 A0E0 ldi r26,lo8(Mixer+1) |
782 05c4 B0E0 ldi r27,hi8(Mixer+1) |
783 05c6 87E0 ldi r24,lo8(7) |
784 05c8 E0E0 ldi r30,lo8(.LC3) |
785 05ca F0E0 ldi r31,hi8(.LC3) |
786 05cc ED01 movw r28,r26 |
787 05ce 0190 ld __tmp_reg__,Z+ |
788 05d0 0992 st Y+,__tmp_reg__ |
789 05d2 8A95 dec r24 |
790 05d4 E1F7 brne .-8 |
791 05d6 6DE4 ldi r22,lo8(77) |
792 05d8 70E0 ldi r23,hi8(77) |
793 05da CD01 movw r24,r26 |
794 05dc 0197 sbiw r24,1 |
795 05de 0E94 0000 call RAM_Checksum |
796 05e2 8093 0000 sts Mixer+77,r24 |
797 /* epilogue: frame size=0 */ |
798 05e6 DF91 pop r29 |
799 05e8 CF91 pop r28 |
800 05ea 0895 ret |
801 /* epilogue end (size=3) */ |
802 /* function MixerTable_Default size 71 (66) */ |
804 .global GetActiveParamSet |
806 GetActiveParamSet: |
807 /* prologue: frame size=0 */ |
808 /* prologue end (size=0) */ |
809 05ec A2E0 ldi r26,lo8(2) |
810 05ee B0E0 ldi r27,hi8(2) |
811 /* #APP */ |
812 05f0 0E94 0000 call __eeprom_read_byte_1F2021 |
813 05f4 802D mov r24,__tmp_reg__ |
814 /* #NOAPP */ |
815 05f6 8630 cpi r24,lo8(6) |
816 05f8 30F0 brlo .L101 |
817 05fa 83E0 ldi r24,lo8(3) |
818 05fc A2E0 ldi r26,lo8(2) |
819 05fe B0E0 ldi r27,hi8(2) |
820 /* #APP */ |
821 0600 082E mov __tmp_reg__,r24 |
822 0602 0E94 0000 call __eeprom_write_byte_1F2021 |
823 /* #NOAPP */ |
824 .L101: |
825 0606 9927 clr r25 |
826 /* epilogue: frame size=0 */ |
827 0608 0895 ret |
828 /* epilogue end (size=1) */ |
829 /* function GetActiveParamSet size 17 (16) */ |
831 .global SetDefaultParameter |
833 SetDefaultParameter: |
834 /* prologue: frame size=0 */ |
835 060a 1F93 push r17 |
836 060c CF93 push r28 |
837 /* prologue end (size=2) */ |
838 060e C82F mov r28,r24 |
839 0610 162F mov r17,r22 |
840 0612 8630 cpi r24,lo8(6) |
841 0614 10F0 brlo .L104 |
842 0616 C5E0 ldi r28,lo8(5) |
843 0618 03C0 rjmp .L105 |
844 .L104: |
845 061a 8823 tst r24 |
846 061c 09F4 brne .L105 |
847 061e C1E0 ldi r28,lo8(1) |
848 .L105: |
849 0620 8C2F mov r24,r28 |
850 0622 9927 clr r25 |
851 0624 8230 cpi r24,2 |
852 0626 9105 cpc r25,__zero_reg__ |
853 0628 41F0 breq .L109 |
854 062a 8330 cpi r24,3 |
855 062c 9105 cpc r25,__zero_reg__ |
856 062e 44F4 brge .L111 |
857 0630 0197 sbiw r24,1 |
858 0632 31F4 brne .L111 |
859 0634 0E94 0000 call ParamSet_DefaultSet1 |
860 0638 05C0 rjmp .L107 |
861 .L109: |
862 063a 0E94 0000 call ParamSet_DefaultSet2 |
863 063e 02C0 rjmp .L107 |
864 .L111: |
865 0640 0E94 0000 call ParamSet_DefaultSet3 |
866 .L107: |
867 0644 1123 tst r17 |
868 0646 B1F0 breq .L113 |
869 0648 6CE0 ldi r22,lo8(12) |
870 064a 70E0 ldi r23,hi8(12) |
871 064c 80E5 ldi r24,lo8(80) |
872 064e 90E0 ldi r25,hi8(80) |
873 0650 0E94 0000 call EEProm_Checksum |
874 0654 ACE5 ldi r26,lo8(92) |
875 0656 B0E0 ldi r27,hi8(92) |
876 /* #APP */ |
877 0658 0E94 0000 call __eeprom_read_byte_1F2021 |
878 065c 902D mov r25,__tmp_reg__ |
879 /* #NOAPP */ |
880 065e 9817 cp r25,r24 |
881 0660 49F4 brne .L113 |
882 0662 E0E0 ldi r30,lo8(EE_Parameter+1) |
883 0664 F0E0 ldi r31,hi8(EE_Parameter+1) |
884 0666 A0E5 ldi r26,lo8(80) |
885 0668 B0E0 ldi r27,hi8(80) |
886 066a 8CE0 ldi r24,lo8(12) |
887 /* #APP */ |
888 066c 182E mov __zero_reg__,r24 |
889 066e 0E94 0000 call __eeprom_read_block_1F2021 |
890 /* #NOAPP */ |
891 0672 02C0 rjmp .L124 |
892 .L113: |
893 0674 0E94 0000 call ParamSet_DefaultStickMapping |
894 .L124: |
895 0678 8C2F mov r24,r28 |
896 067a 0E94 0000 call ParamSet_WriteToEEProm |
897 /* epilogue: frame size=0 */ |
898 067e CF91 pop r28 |
899 0680 1F91 pop r17 |
900 0682 0895 ret |
901 /* epilogue end (size=3) */ |
902 /* function SetDefaultParameter size 64 (59) */ |
904 .section .progmem.data,"a",@progbits |
907 __c.0: |
908 0000 0A0D 4765 .string "\n\rGenerating default Parameter Set %d" |
908 6E65 7261 |
908 7469 6E67 |
908 2064 6566 |
908 6175 6C74 |
911 __c.1: |
912 0026 0A0D 5573 .string "\n\rUsing Parameter Set %d" |
912 696E 6720 |
912 5061 7261 |
912 6D65 7465 |
912 7220 5365 |
915 __c.2: |
916 003f 0A0D 4765 .string "\n\rGenerating default Mixer Table" |
916 6E65 7261 |
916 7469 6E67 |
916 2064 6566 |
916 6175 6C74 |
919 __c.3: |
920 0060 0A0D 4D69 .string "\n\rMixer-Config: '%s' (%u Motors)" |
920 7865 722D |
920 436F 6E66 |
920 6967 3A20 |
920 2725 7327 |
923 __c.4: |
924 0081 0A0D 3D3D .string "\n\r==============================" |
924 3D3D 3D3D |
924 3D3D 3D3D |
924 3D3D 3D3D |
924 3D3D 3D3D |
925 .text |
926 .global ParamSet_Init |
928 ParamSet_Init: |
929 /* prologue: frame size=0 */ |
930 0684 DF92 push r13 |
931 0686 EF92 push r14 |
932 0688 FF92 push r15 |
933 068a 0F93 push r16 |
934 068c 1F93 push r17 |
935 068e CF93 push r28 |
936 /* prologue end (size=6) */ |
937 0690 FF24 clr r15 |
938 0692 DF2C mov r13,r15 |
939 0694 EF2C mov r14,r15 |
940 0696 81E0 ldi r24,lo8(1) |
941 0698 90E0 ldi r25,hi8(1) |
942 069a 0E94 0000 call GetParamByte |
943 069e 8535 cpi r24,lo8(85) |
944 06a0 39F0 breq .L126 |
945 06a2 31E0 ldi r19,lo8(1) |
946 06a4 E32E mov r14,r19 |
947 06a6 65E5 ldi r22,lo8(85) |
948 06a8 81E0 ldi r24,lo8(1) |
949 06aa 90E0 ldi r25,hi8(1) |
950 06ac 0E94 0000 call SetParamByte |
951 .L126: |
952 06b0 6CE0 ldi r22,lo8(12) |
953 06b2 70E0 ldi r23,hi8(12) |
954 06b4 80E5 ldi r24,lo8(80) |
955 06b6 90E0 ldi r25,hi8(80) |
956 06b8 0E94 0000 call EEProm_Checksum |
957 06bc C82F mov r28,r24 |
958 06be ACE5 ldi r26,lo8(92) |
959 06c0 B0E0 ldi r27,hi8(92) |
960 /* #APP */ |
961 06c2 0E94 0000 call __eeprom_read_byte_1F2021 |
962 06c6 802D mov r24,__tmp_reg__ |
963 /* #NOAPP */ |
964 06c8 8C17 cp r24,r28 |
965 06ca 11F4 brne .L127 |
966 06cc 21E0 ldi r18,lo8(1) |
967 06ce D22E mov r13,r18 |
968 .L127: |
969 06d0 C1E0 ldi r28,lo8(1) |
970 06d2 01E0 ldi r16,lo8(1) |
971 06d4 10E0 ldi r17,hi8(1) |
972 .L149: |
973 06d6 EE20 tst r14 |
974 06d8 29F4 brne .L133 |
975 06da 8C2F mov r24,r28 |
976 06dc 0E94 0000 call ParamSet_ReadFromEEProm |
977 06e0 8823 tst r24 |
978 06e2 B1F5 brne .L131 |
979 .L133: |
980 06e4 91E0 ldi r25,lo8(1) |
981 06e6 F92E mov r15,r25 |
982 06e8 1F93 push r17 |
983 06ea 0F93 push r16 |
984 06ec 80E0 ldi r24,lo8(__c.0) |
985 06ee 90E0 ldi r25,hi8(__c.0) |
986 06f0 9F93 push r25 |
987 06f2 8F93 push r24 |
988 06f4 80E0 ldi r24,lo8(pm(uart_putchar)) |
989 06f6 90E0 ldi r25,hi8(pm(uart_putchar)) |
990 06f8 9F93 push r25 |
991 06fa 8F93 push r24 |
992 06fc E091 0000 lds r30,_printf_P |
993 0700 F091 0000 lds r31,(_printf_P)+1 |
994 0704 0995 icall |
995 0706 8DB7 in r24,__SP_L__ |
996 0708 9EB7 in r25,__SP_H__ |
997 070a 0696 adiw r24,6 |
998 070c 8DBF out __SP_L__,r24 |
999 070e 0230 cpi r16,2 |
1000 0710 1105 cpc r17,__zero_reg__ |
1001 0712 49F0 breq .L136 |
1002 0714 0330 cpi r16,3 |
1003 0716 1105 cpc r17,__zero_reg__ |
1004 0718 4CF4 brge .L138 |
1005 071a 0130 cpi r16,1 |
1006 071c 1105 cpc r17,__zero_reg__ |
1007 071e 31F4 brne .L138 |
1008 0720 0E94 0000 call ParamSet_DefaultSet1 |
1009 0724 05C0 rjmp .L134 |
1010 .L136: |
1011 0726 0E94 0000 call ParamSet_DefaultSet2 |
1012 072a 02C0 rjmp .L134 |
1013 .L138: |
1014 072c 0E94 0000 call ParamSet_DefaultSet3 |
1015 .L134: |
1016 0730 DD20 tst r13 |
1017 0732 49F0 breq .L140 |
1018 0734 E0E0 ldi r30,lo8(EE_Parameter+1) |
1019 0736 F0E0 ldi r31,hi8(EE_Parameter+1) |
1020 0738 A0E5 ldi r26,lo8(80) |
1021 073a B0E0 ldi r27,hi8(80) |
1022 073c 8CE0 ldi r24,lo8(12) |
1023 /* #APP */ |
1024 073e 182E mov __zero_reg__,r24 |
1025 0740 0E94 0000 call __eeprom_read_block_1F2021 |
1026 /* #NOAPP */ |
1027 0744 02C0 rjmp .L148 |
1028 .L140: |
1029 0746 0E94 0000 call ParamSet_DefaultStickMapping |
1030 .L148: |
1031 074a 8C2F mov r24,r28 |
1032 074c 0E94 0000 call ParamSet_WriteToEEProm |
1033 .L131: |
1034 0750 CF5F subi r28,lo8(-(1)) |
1035 0752 0F5F subi r16,lo8(-(1)) |
1036 0754 1F4F sbci r17,hi8(-(1)) |
1037 0756 C630 cpi r28,lo8(6) |
1038 0758 08F4 brsh .+2 |
1039 075a BDCF rjmp .L149 |
1040 075c FF20 tst r15 |
1041 075e 19F0 breq .L150 |
1042 0760 83E0 ldi r24,lo8(3) |
1043 0762 0E94 0000 call SetActiveParamSet |
1044 .L150: |
1045 0766 0E94 0000 call GetActiveParamSet |
1046 076a C82F mov r28,r24 |
1047 076c 0E94 0000 call ParamSet_ReadFromEEProm |
1048 0770 8C2F mov r24,r28 |
1049 0772 9927 clr r25 |
1050 0774 9F93 push r25 |
1051 0776 8F93 push r24 |
1052 0778 80E0 ldi r24,lo8(__c.1) |
1053 077a 90E0 ldi r25,hi8(__c.1) |
1054 077c 9F93 push r25 |
1055 077e 8F93 push r24 |
1056 0780 00E0 ldi r16,lo8(pm(uart_putchar)) |
1057 0782 10E0 ldi r17,hi8(pm(uart_putchar)) |
1058 0784 1F93 push r17 |
1059 0786 0F93 push r16 |
1060 0788 E091 0000 lds r30,_printf_P |
1061 078c F091 0000 lds r31,(_printf_P)+1 |
1062 0790 0995 icall |
1063 0792 8DB7 in r24,__SP_L__ |
1064 0794 9EB7 in r25,__SP_H__ |
1065 0796 0696 adiw r24,6 |
1066 0798 8DBF out __SP_L__,r24 |
1067 079a EE20 tst r14 |
1068 079c 21F4 brne .L152 |
1069 079e 0E94 0000 call MixerTable_ReadFromEEProm |
1070 07a2 8823 tst r24 |
1071 07a4 99F4 brne .L151 |
1072 .L152: |
1073 07a6 80E0 ldi r24,lo8(__c.2) |
1074 07a8 90E0 ldi r25,hi8(__c.2) |
1075 07aa 9F93 push r25 |
1076 07ac 8F93 push r24 |
1077 07ae 1F93 push r17 |
1078 07b0 0F93 push r16 |
1079 07b2 E091 0000 lds r30,_printf_P |
1080 07b6 F091 0000 lds r31,(_printf_P)+1 |
1081 07ba 0995 icall |
1082 07bc 0E94 0000 call MixerTable_Default |
1083 07c0 0E94 0000 call MixerTable_WriteToEEProm |
1084 07c4 0F90 pop __tmp_reg__ |
1085 07c6 0F90 pop __tmp_reg__ |
1086 07c8 0F90 pop __tmp_reg__ |
1087 07ca 0F90 pop __tmp_reg__ |
1088 .L151: |
1089 07cc 1092 0000 sts RequiredMotors,__zero_reg__ |
1090 07d0 90E0 ldi r25,lo8(0) |
1091 07d2 E0E0 ldi r30,lo8(Mixer+13) |
1092 07d4 F0E0 ldi r31,hi8(Mixer+13) |
1093 07d6 CFE0 ldi r28,lo8(15) |
1094 .L157: |
1095 07d8 8081 ld r24,Z |
1096 07da 3496 adiw r30,4 |
1097 07dc 1816 cp __zero_reg__,r24 |
1098 07de 0CF4 brge .L155 |
1099 07e0 9F5F subi r25,lo8(-(1)) |
1100 .L155: |
1101 07e2 C150 subi r28,lo8(-(-1)) |
1102 07e4 C7FF sbrs r28,7 |
1103 07e6 F8CF rjmp .L157 |
1104 07e8 9093 0000 sts RequiredMotors,r25 |
1105 07ec 892F mov r24,r25 |
1106 07ee 9927 clr r25 |
1107 07f0 9F93 push r25 |
1108 07f2 8F93 push r24 |
1109 07f4 80E0 ldi r24,lo8(Mixer+1) |
1110 07f6 90E0 ldi r25,hi8(Mixer+1) |
1111 07f8 9F93 push r25 |
1112 07fa 8F93 push r24 |
1113 07fc 80E0 ldi r24,lo8(__c.3) |
1114 07fe 90E0 ldi r25,hi8(__c.3) |
1115 0800 9F93 push r25 |
1116 0802 8F93 push r24 |
1117 0804 1F93 push r17 |
1118 0806 0F93 push r16 |
1119 0808 E091 0000 lds r30,_printf_P |
1120 080c F091 0000 lds r31,(_printf_P)+1 |
1121 0810 0995 icall |
1122 0812 8DB7 in r24,__SP_L__ |
1123 0814 9EB7 in r25,__SP_H__ |
1124 0816 0896 adiw r24,8 |
1125 0818 8DBF out __SP_L__,r24 |
1126 081a 80E0 ldi r24,lo8(__c.4) |
1127 081c 90E0 ldi r25,hi8(__c.4) |
1128 081e 9F93 push r25 |
1129 0820 8F93 push r24 |
1130 0822 1F93 push r17 |
1131 0824 0F93 push r16 |
1132 0826 E091 0000 lds r30,_printf_P |
1133 082a F091 0000 lds r31,(_printf_P)+1 |
1134 082e 0995 icall |
1135 0830 0F90 pop __tmp_reg__ |
1136 0832 0F90 pop __tmp_reg__ |
1137 0834 0F90 pop __tmp_reg__ |
1138 0836 0F90 pop __tmp_reg__ |
1139 /* epilogue: frame size=0 */ |
1140 0838 CF91 pop r28 |
1141 083a 1F91 pop r17 |
1142 083c 0F91 pop r16 |
1143 083e FF90 pop r15 |
1144 0840 EF90 pop r14 |
1145 0842 DF90 pop r13 |
1146 0844 0895 ret |
1147 /* epilogue end (size=7) */ |
1148 /* function ParamSet_Init size 227 (214) */ |
1150 .comm Mixer,78,1 |
1151 .comm RequiredMotors,1,1 |
1152 .comm EE_Parameter,116,1 |
1153 /* File "eeprom.c": code 1085 = 0x043d (1015), prologues 26, epilogues 44 */ |
DEFINED SYMBOLS |
*ABS*:00000000 eeprom.c |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:13 .text:00000000 RAM_Checksum |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:41 .text:00000022 EEProm_Checksum |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:73 .text:0000004a ParamSet_DefaultStickMapping |
*COM*:00000074 EE_Parameter |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:107 .text:00000094 CommonDefaults |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:245 .text:0000022e ParamSet_DefaultSet1 |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:305 .text:000002ac ParamSet_DefaultSet2 |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:365 .text:0000032a ParamSet_DefaultSet3 |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:420 .text:000003a8 GetParamByte |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:436 .text:000003b4 SetParamByte |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:451 .text:000003be GetParamWord |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:467 .text:000003c8 SetParamWord |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:483 .text:000003d2 ParamSet_ReadFromEEProm |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:551 .text:00000440 SetActiveParamSet |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:576 .text:0000045a ParamSet_WriteToEEProm |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:652 .text:000004de MixerTable_ReadFromEEProm |
*COM*:0000004e Mixer |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:700 .text:00000522 MixerTable_WriteToEEProm |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:744 .text:0000055e MixerTable_Default |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:806 .text:000005ec GetActiveParamSet |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:833 .text:0000060a SetDefaultParameter |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:907 .progmem.data:00000000 __c.0 |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:911 .progmem.data:00000026 __c.1 |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:915 .progmem.data:0000003f __c.2 |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:919 .progmem.data:00000060 __c.3 |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:923 .progmem.data:00000081 __c.4 |
C:\Users\Thomas\AppData\Local\Temp/ccSSbaaa.s:928 .text:00000684 ParamSet_Init |
*COM*:00000001 RequiredMotors |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
__eeprom_read_byte_1F2021 |
PlatinenVersion |
__eeprom_write_byte_1F2021 |
__eeprom_read_word_1F2021 |
__eeprom_write_word_1F2021 |
__eeprom_read_block_1F2021 |
LED_Init |
__epilogue_restores__ |
__eeprom_write_block_1F2021 |
uart_putchar |
_printf_P |
/branches/metro/v0.82a metro_Akku+/fc.c |
---|
0,0 → 1,1747 |
/*####################################################################################### |
Flight Control |
#######################################################################################*/ |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + Nur für den privaten Gebrauch / NON-COMMERCIAL USE ONLY |
// + www.MikroKopter.com |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Es gilt für das gesamte Projekt (Hardware, Software, Binärfiles, Sourcecode und Dokumentation), |
// + dass eine Nutzung (auch auszugsweise) nur für den privaten (nicht-kommerziellen) Gebrauch zulässig ist. |
// + Sollten direkte oder indirekte kommerzielle Absichten verfolgt werden, ist mit uns (info@mikrokopter.de) Kontakt |
// + bzgl. der Nutzungsbedingungen aufzunehmen. |
// + Eine kommerzielle Nutzung ist z.B.Verkauf von MikroKoptern, Bestückung und Verkauf von Platinen oder Bausätzen, |
// + Verkauf von Luftbildaufnahmen, usw. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Werden Teile des Quellcodes (mit oder ohne Modifikation) weiterverwendet oder veröffentlicht, |
// + unterliegen sie auch diesen Nutzungsbedingungen und diese Nutzungsbedingungen incl. Copyright müssen dann beiliegen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Sollte die Software (auch auszugesweise) oder sonstige Informationen des MikroKopter-Projekts |
// + auf anderen Webseiten oder sonstigen Medien veröffentlicht werden, muss unsere Webseite "http://www.mikrokopter.de" |
// + eindeutig als Ursprung verlinkt werden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Keine Gewähr auf Fehlerfreiheit, Vollständigkeit oder Funktion |
// + Benutzung auf eigene Gefahr |
// + Wir übernehmen keinerlei Haftung für direkte oder indirekte Personen- oder Sachschäden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Portierung oder Nutzung der Software (oder Teile davon) auf andere Systeme (ausser der Hardware von www.mikrokopter.de) ist nur |
// + mit unserer Zustimmung zulässig |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Funktion printf_P() unterliegt ihrer eigenen Lizenz und ist hiervon nicht betroffen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Redistributions of source code (with or without modifications) must retain the above copyright notice, |
// + this list of conditions and the following disclaimer. |
// + * Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived |
// + from this software without specific prior written permission. |
// + * The use of this project (hardware, software, binary files, sources and documentation) is only permittet |
// + for non-commercial use (directly or indirectly) |
// + Commercial use (for excample: selling of MikroKopters, selling of PCBs, assembly, ...) is only permitted |
// + with our written permission |
// + * If sources or documentations are redistributet on other webpages, out webpage (http://www.MikroKopter.de) must be |
// + clearly linked as origin |
// + * porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
// + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
// + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
// + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
// + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
// + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
// + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
// + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
// + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
// + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
// + POSSIBILITY OF SUCH DAMAGE. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include "main.h" |
#include "mymath.h" |
#include "isqrt.h" |
//MartinW; added vars |
unsigned char loop1, loop2, loop3; |
unsigned char settingdest = 5; |
int keynumber=-7; |
unsigned short CurrentOffset = 0;/// |
unsigned char pos1, pos2, pos3, pos4=0; |
unsigned char Motors0,Motors1,Motors2,Motors3,Motors4,Motors5,Motors6,Motors7; |
unsigned char Motors0max,Motors1max,Motors2max,Motors3max,Motors4max,Motors5max,Motors6max,Motors7max; |
unsigned short MotorsTmax; |
unsigned char updatemotors=5; |
//MartinW; added vars |
unsigned char h,m,s; |
unsigned int BaroExpandActive = 0; |
int MesswertNick,MesswertRoll,MesswertGier,MesswertGierBias, RohMesswertNick,RohMesswertRoll; |
int TrimNick, TrimRoll; |
int AdNeutralNick = 0,AdNeutralRoll = 0,AdNeutralGier = 0,StartNeutralRoll = 0,StartNeutralNick = 0; |
int Mittelwert_AccNick, Mittelwert_AccRoll; |
unsigned int NeutralAccX=0, NeutralAccY=0; |
int NaviAccNick, NaviAccRoll,NaviCntAcc = 0; |
int NeutralAccZ = 0; |
unsigned char ControlHeading = 0;// in 2° |
long IntegralNick = 0,IntegralNick2 = 0; |
long IntegralRoll = 0,IntegralRoll2 = 0; |
long IntegralAccNick = 0,IntegralAccRoll = 0,IntegralAccZ = 0; |
long Integral_Gier = 0; |
long Mess_IntegralNick = 0,Mess_IntegralNick2 = 0; |
long Mess_IntegralRoll = 0,Mess_IntegralRoll2 = 0; |
long Mess_Integral_Gier = 0,Mess_Integral_Gier2 = 0; |
long MittelIntegralNick,MittelIntegralRoll,MittelIntegralNick2,MittelIntegralRoll2; |
long SummeNick=0,SummeRoll=0; |
volatile long Mess_Integral_Hoch = 0; |
int KompassValue = 0; |
int KompassStartwert = 0; |
int KompassRichtung = 0; |
unsigned int KompassSignalSchlecht = 500; |
unsigned char MAX_GAS,MIN_GAS; |
unsigned char HoehenReglerAktiv = 0; |
unsigned char TrichterFlug = 0; |
long Umschlag180Nick = 250000L, Umschlag180Roll = 250000L; |
long ErsatzKompass; |
int ErsatzKompassInGrad; // Kompasswert in Grad |
int GierGyroFehler = 0; |
char GyroFaktor,GyroFaktorGier; |
char IntegralFaktor,IntegralFaktorGier; |
int DiffNick,DiffRoll; |
//int Poti1 = 0, Poti2 = 0, Poti3 = 0, Poti4 = 0, Poti5 = 0, Poti6 = 0, Poti7 = 0, Poti8 = 0; |
unsigned char Poti[9] = {0,0,0,0,0,0,0,0}; |
volatile unsigned char SenderOkay = 0; |
int StickNick = 0,StickRoll = 0,StickGier = 0,StickGas = 0; |
char MotorenEin = 0,StartTrigger = 0; |
long HoehenWert = 0; |
long SollHoehe = 0; |
int LageKorrekturRoll = 0,LageKorrekturNick = 0, HoverGas = 0; |
//float Ki = FAKTOR_I; |
int Ki = 10300 / 33; |
unsigned char Looping_Nick = 0,Looping_Roll = 0; |
unsigned char Looping_Links = 0, Looping_Rechts = 0, Looping_Unten = 0, Looping_Oben = 0; |
unsigned char Parameter_Luftdruck_D = 48; // Wert : 0-250 |
unsigned char Parameter_MaxHoehe = 251; // Wert : 0-250 |
unsigned char Parameter_Hoehe_P = 16; // Wert : 0-32 |
unsigned char Parameter_Hoehe_ACC_Wirkung = 58; // Wert : 0-250 |
unsigned char Parameter_KompassWirkung = 64; // Wert : 0-250 |
unsigned char Parameter_Hoehe_GPS_Z = 64; // Wert : 0-250 |
unsigned char Parameter_Gyro_D = 8; // Wert : 0-250 |
unsigned char Parameter_Gyro_P = 150; // Wert : 10-250 |
unsigned char Parameter_Gyro_I = 150; // Wert : 0-250 |
unsigned char Parameter_Gyro_Gier_P = 150; // Wert : 10-250 |
unsigned char Parameter_Gyro_Gier_I = 150; // Wert : 10-250 |
unsigned char Parameter_Gier_P = 2; // Wert : 1-20 |
unsigned char Parameter_I_Faktor = 10; // Wert : 1-20 |
unsigned char Parameter_UserParam1 = 0; |
unsigned char Parameter_UserParam2 = 0; |
unsigned char Parameter_UserParam3 = 0; |
unsigned char Parameter_UserParam4 = 0; |
unsigned char Parameter_UserParam5 = 0; |
unsigned char Parameter_UserParam6 = 0; |
unsigned char Parameter_UserParam7 = 0; |
unsigned char Parameter_UserParam8 = 0; |
unsigned char Parameter_ServoNickControl = 100; |
unsigned char Parameter_ServoRollControl = 100; |
unsigned char Parameter_LoopGasLimit = 70; |
unsigned char Parameter_AchsKopplung1 = 90; |
unsigned char Parameter_AchsKopplung2 = 65; |
unsigned char Parameter_CouplingYawCorrection = 64; |
//unsigned char Parameter_AchsGegenKopplung1 = 0; |
unsigned char Parameter_DynamicStability = 100; |
unsigned char Parameter_J16Bitmask; // for the J16 Output |
unsigned char Parameter_J16Timing; // for the J16 Output |
unsigned char Parameter_J17Bitmask; // for the J17 Output |
unsigned char Parameter_J17Timing; // for the J17 Output |
unsigned char Parameter_NaviGpsModeControl; // Parameters for the Naviboard |
unsigned char Parameter_NaviGpsGain; |
unsigned char Parameter_NaviGpsP; |
unsigned char Parameter_NaviGpsI; |
unsigned char Parameter_NaviGpsD; |
unsigned char Parameter_NaviGpsACC; |
unsigned char Parameter_NaviOperatingRadius; |
unsigned char Parameter_NaviWindCorrection; |
unsigned char Parameter_NaviSpeedCompensation; |
unsigned char Parameter_ExternalControl; |
unsigned char Parameter_Servo3,Parameter_Servo4,Parameter_Servo5; |
unsigned char CareFree = 0; |
const signed char sintab[31] = { 0, 2, 4, 6, 7, 8, 8, 8, 7, 6, 4, 2, 0, -2, -4, -6, -7, -8, -8, -8, -7, -6, -4, -2, 0, 2, 4, 6, 7, 8, 8}; |
signed int ExternStickNick = 0,ExternStickRoll = 0,ExternStickGier = 0, ExternHoehenValue = -20; |
int MaxStickNick = 0,MaxStickRoll = 0; |
unsigned int modell_fliegt = 0; |
volatile unsigned char FC_StatusFlags = 0; |
long GIER_GRAD_FAKTOR = 1291; |
signed int KopplungsteilNickRoll,KopplungsteilRollNick; |
signed int tmp_motorwert[MAX_MOTORS]; |
char VarioCharacter = ' '; |
#define LIMIT_MIN(value, min) {if(value <= min) value = min;} |
#define LIMIT_MAX(value, max) {if(value >= max) value = max;} |
#define LIMIT_MIN_MAX(value, min, max) {if(value <= min) value = min; else if(value >= max) value = max;} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Debugwerte zuordnen |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
void CopyDebugValues(void) |
{ |
DebugOut.Analog[0] = IntegralNick / (EE_Parameter.GyroAccFaktor * 4); |
DebugOut.Analog[1] = IntegralRoll / (EE_Parameter.GyroAccFaktor * 4); |
DebugOut.Analog[2] = Mittelwert_AccNick / 4; |
DebugOut.Analog[3] = Mittelwert_AccRoll / 4; |
DebugOut.Analog[4] = (signed int) AdNeutralGier - AdWertGier; |
DebugOut.Analog[5] = HoehenWert/5; |
DebugOut.Analog[6] = AdWertAccHoch;//(Mess_Integral_Hoch / 512);// Aktuell_az; |
DebugOut.Analog[8] = KompassValue; |
DebugOut.Analog[9] = UBat; |
DebugOut.Analog[10] = SenderOkay; |
DebugOut.Analog[11] = ErsatzKompass / GIER_GRAD_FAKTOR; |
DebugOut.Analog[12] = Motor[0].SetPoint; |
DebugOut.Analog[13] = Motor[1].SetPoint; |
DebugOut.Analog[14] = Motor[2].SetPoint; |
DebugOut.Analog[15] = Motor[3].SetPoint; |
DebugOut.Analog[20] = ServoNickValue; |
DebugOut.Analog[22] = Capacity.ActualCurrent; |
DebugOut.Analog[23] = Capacity.RemainCapacity; |
// DebugOut.Analog[22] = FromNaviCtrl_Value.GpsZ; |
// DebugOut.Analog[29] = FromNaviCtrl_Value.SerialDataOkay; |
DebugOut.Analog[29] = Capacity.MinOfMaxPWM; |
DebugOut.Analog[30] = GPS_Nick; |
DebugOut.Analog[31] = GPS_Roll; |
if(VersionInfo.HardwareError[0] || VersionInfo.HardwareError[1]) DebugOut.Status[1] |= 1; else DebugOut.Status[1] &= 0xfe; |
//if(Capacity.MinOfMaxPWM < 250/* && modell_fliegt > 500*/) { beeptime = 1000; DebugOut.Analog[25]++; } |
} |
void Piep(unsigned char Anzahl, unsigned int dauer) |
{ |
if(MotorenEin) return; //auf keinen Fall im Flug! |
while(Anzahl--) |
{ |
beeptime = dauer; |
while(beeptime); |
Delay_ms(dauer * 2); |
} |
} |
//############################################################################ |
// Messwerte beim Ermitteln der Nullage |
void CalibrierMittelwert(void) |
//############################################################################ |
{ |
unsigned char i; |
if(PlatinenVersion == 13) SucheGyroOffset(); |
// ADC auschalten, damit die Werte sich nicht während der Berechnung ändern |
ANALOG_OFF; |
MesswertNick = AdWertNick; |
MesswertRoll = AdWertRoll; |
MesswertGier = AdWertGier; |
Mittelwert_AccNick = ACC_AMPLIFY * AdWertAccNick; |
Mittelwert_AccRoll = ACC_AMPLIFY * AdWertAccRoll; |
// ADC einschalten |
ANALOG_ON; |
for(i=0;i<8;i++) |
{ |
int tmp; |
tmp = PPM_in[EE_Parameter.Kanalbelegung[K_POTI1 + i]] + 110; |
LIMIT_MIN_MAX(tmp, 0, 255); |
if(Poti[i] > tmp) Poti[i]--; else if(Poti[i] < tmp) Poti[i]++; |
} |
Umschlag180Nick = (long) EE_Parameter.WinkelUmschlagNick * 2500L; |
Umschlag180Roll = (long) EE_Parameter.WinkelUmschlagRoll * 2500L; |
} |
//############################################################################ |
// Nullwerte ermitteln |
void SetNeutral(unsigned char AccAdjustment) |
//############################################################################ |
{ |
unsigned char i; |
unsigned int gier_neutral=0, nick_neutral=0, roll_neutral=0; |
VersionInfo.HardwareError[0] = 0; |
HEF4017R_ON; |
NeutralAccX = 0; |
NeutralAccY = 0; |
NeutralAccZ = 0; |
AdNeutralNick = 0; |
AdNeutralRoll = 0; |
AdNeutralGier = 0; |
Parameter_AchsKopplung1 = 0; |
Parameter_AchsKopplung2 = 0; |
ExpandBaro = 0; |
CalibrierMittelwert(); |
Delay_ms_Mess(100); |
CalibrierMittelwert(); |
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)) // Höhenregelung aktiviert? |
{ |
if((MessLuftdruck > 950) || (MessLuftdruck < 750)) SucheLuftruckOffset(); |
} |
#define NEUTRAL_FILTER 32 |
for(i=0; i<NEUTRAL_FILTER; i++) |
{ |
Delay_ms_Mess(10); |
gier_neutral += AdWertGier; |
nick_neutral += AdWertNick; |
roll_neutral += AdWertRoll; |
} |
AdNeutralNick= (nick_neutral+NEUTRAL_FILTER/2) / (NEUTRAL_FILTER / 8); |
AdNeutralRoll= (roll_neutral+NEUTRAL_FILTER/2) / (NEUTRAL_FILTER / 8); |
AdNeutralGier= (gier_neutral+NEUTRAL_FILTER/2) / (NEUTRAL_FILTER); |
StartNeutralRoll = AdNeutralRoll; |
StartNeutralNick = AdNeutralNick; |
if(AccAdjustment) |
{ |
NeutralAccX = abs(Mittelwert_AccNick) / (2*ACC_AMPLIFY); |
NeutralAccY = abs(Mittelwert_AccRoll) / (2*ACC_AMPLIFY); |
NeutralAccZ = Aktuell_az; |
// Save ACC neutral settings to eeprom |
SetParamWord(PID_ACC_NICK, (uint16_t)NeutralAccX); |
SetParamWord(PID_ACC_ROLL, (uint16_t)NeutralAccY); |
SetParamWord(PID_ACC_TOP, (uint16_t)NeutralAccZ); |
} |
else |
{ |
// restore from eeprom |
NeutralAccX = (int16_t)GetParamWord(PID_ACC_NICK); |
NeutralAccY = (int16_t)GetParamWord(PID_ACC_ROLL); |
NeutralAccZ = (int16_t)GetParamWord(PID_ACC_TOP); |
// strange settings? |
if(((unsigned int) NeutralAccX > 2048) || ((unsigned int) NeutralAccY > 2048) || ((unsigned int) NeutralAccZ > 1024)) |
{ |
printf("\n\rACC not calibrated!\r\n"); |
NeutralAccX = abs(Mittelwert_AccNick) / (2*ACC_AMPLIFY); |
NeutralAccY = abs(Mittelwert_AccRoll) / (2*ACC_AMPLIFY); |
NeutralAccZ = Aktuell_az; |
} |
} |
MesswertNick = 0; |
MesswertRoll = 0; |
MesswertGier = 0; |
Delay_ms_Mess(100); |
Mittelwert_AccNick = ACC_AMPLIFY * AdWertAccNick; |
Mittelwert_AccRoll = ACC_AMPLIFY * AdWertAccRoll; |
IntegralNick = EE_Parameter.GyroAccFaktor * (long)Mittelwert_AccNick; |
IntegralRoll = EE_Parameter.GyroAccFaktor * (long)Mittelwert_AccRoll; |
Mess_IntegralNick2 = IntegralNick; |
Mess_IntegralRoll2 = IntegralRoll; |
Mess_Integral_Gier = 0; |
StartLuftdruck = Luftdruck; |
VarioMeter = 0; |
Mess_Integral_Hoch = 0; |
KompassStartwert = KompassValue; |
GPS_Neutral(); |
beeptime = 50; |
Umschlag180Nick = ((long) EE_Parameter.WinkelUmschlagNick * 2500L) + 15000L; |
Umschlag180Roll = ((long) EE_Parameter.WinkelUmschlagRoll * 2500L) + 15000L; |
ExternHoehenValue = 0; |
ErsatzKompass = KompassValue * GIER_GRAD_FAKTOR; |
GierGyroFehler = 0; |
SendVersionToNavi = 1; |
LED_Init(); |
FC_StatusFlags |= FC_STATUS_CALIBRATE; |
FromNaviCtrl_Value.Kalman_K = -1; |
FromNaviCtrl_Value.Kalman_MaxDrift = 0; |
FromNaviCtrl_Value.Kalman_MaxFusion = 32; |
for(i=0;i<8;i++) |
{ |
Poti[i] = PPM_in[EE_Parameter.Kanalbelegung[K_POTI1 + i]] + 110; |
} |
SenderOkay = 100; |
if(ServoActive) |
{ |
HEF4017R_ON; |
DDRD |=0x80; // enable J7 -> Servo signal |
} |
if((AdNeutralNick < 150 * 16) || (AdNeutralNick > 850 * 16)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_NICK; }; |
if((AdNeutralRoll < 150 * 16) || (AdNeutralRoll > 850 * 16)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_ROLL; }; |
if((AdNeutralGier < 150 * 2) || (AdNeutralGier > 850 * 2)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_YAW; }; |
if((NeutralAccX < 300) || (NeutralAccX > 750)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_NICK; }; |
if((NeutralAccY < 300) || (NeutralAccY > 750)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_ROLL; }; |
if((NeutralAccZ < 512) || (NeutralAccZ > 850)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_TOP; }; |
} |
//############################################################################ |
// Bearbeitet die Messwerte |
void Mittelwert(void) |
//############################################################################ |
{ |
static signed long tmpl,tmpl2,tmpl3,tmpl4; |
static signed int oldNick, oldRoll, d2Roll, d2Nick; |
signed long winkel_nick, winkel_roll; |
// unsigned char i; |
MesswertGier = (signed int) AdNeutralGier - AdWertGier; |
MesswertNick = (signed int) AdWertNickFilter / 8; |
MesswertRoll = (signed int) AdWertRollFilter / 8; |
RohMesswertNick = MesswertNick; |
RohMesswertRoll = MesswertRoll; |
// Beschleunigungssensor ++++++++++++++++++++++++++++++++++++++++++++++++ |
Mittelwert_AccNick = (Mittelwert_AccNick * 3 + ((ACC_AMPLIFY * AdWertAccNick))) / 4L; |
Mittelwert_AccRoll = (Mittelwert_AccRoll * 3 + ((ACC_AMPLIFY * AdWertAccRoll))) / 4L; |
IntegralAccNick += ACC_AMPLIFY * AdWertAccNick; |
IntegralAccRoll += ACC_AMPLIFY * AdWertAccRoll; |
NaviAccNick += AdWertAccNick; |
NaviAccRoll += AdWertAccRoll; |
NaviCntAcc++; |
IntegralAccZ += Aktuell_az - NeutralAccZ; |
//++++++++++++++++++++++++++++++++++++++++++++++++ |
// ADC einschalten |
ANALOG_ON; |
AdReady = 0; |
//++++++++++++++++++++++++++++++++++++++++++++++++ |
if(Mess_IntegralRoll > 93000L) winkel_roll = 93000L; |
else if(Mess_IntegralRoll <-93000L) winkel_roll = -93000L; |
else winkel_roll = Mess_IntegralRoll; |
if(Mess_IntegralNick > 93000L) winkel_nick = 93000L; |
else if(Mess_IntegralNick <-93000L) winkel_nick = -93000L; |
else winkel_nick = Mess_IntegralNick; |
// Gier ++++++++++++++++++++++++++++++++++++++++++++++++ |
Mess_Integral_Gier += MesswertGier; |
ErsatzKompass += MesswertGier; |
// Kopplungsanteil +++++++++++++++++++++++++++++++++++++ |
if(!Looping_Nick && !Looping_Roll && (EE_Parameter.GlobalConfig & CFG_ACHSENKOPPLUNG_AKTIV)) |
{ |
tmpl3 = (MesswertRoll * winkel_nick) / 2048L; |
tmpl3 *= Parameter_AchsKopplung2; //65 |
tmpl3 /= 4096L; |
tmpl4 = (MesswertNick * winkel_roll) / 2048L; |
tmpl4 *= Parameter_AchsKopplung2; //65 |
tmpl4 /= 4096L; |
KopplungsteilNickRoll = tmpl3; |
KopplungsteilRollNick = tmpl4; |
tmpl4 -= tmpl3; |
ErsatzKompass += tmpl4; |
if(!Parameter_CouplingYawCorrection) Mess_Integral_Gier -= tmpl4/2; // Gier nachhelfen |
tmpl = ((MesswertGier + tmpl4) * winkel_nick) / 2048L; |
tmpl *= Parameter_AchsKopplung1; // 90 |
tmpl /= 4096L; |
tmpl2 = ((MesswertGier + tmpl4) * winkel_roll) / 2048L; |
tmpl2 *= Parameter_AchsKopplung1; |
tmpl2 /= 4096L; |
if(abs(MesswertGier) > 64) if(labs(tmpl) > 128 || labs(tmpl2) > 128) TrichterFlug = 1; |
//MesswertGier += (Parameter_CouplingYawCorrection * tmpl4) / 256; |
} |
else tmpl = tmpl2 = KopplungsteilNickRoll = KopplungsteilRollNick = 0; |
TrimRoll = tmpl - tmpl2 / 100L; |
TrimNick = -tmpl2 + tmpl / 100L; |
// Kompasswert begrenzen ++++++++++++++++++++++++++++++++++++++++++++++++ |
if(ErsatzKompass >= (360L * GIER_GRAD_FAKTOR)) ErsatzKompass -= 360L * GIER_GRAD_FAKTOR; // 360° Umschlag |
if(ErsatzKompass < 0) ErsatzKompass += 360L * GIER_GRAD_FAKTOR; |
// Roll ++++++++++++++++++++++++++++++++++++++++++++++++ |
Mess_IntegralRoll2 += MesswertRoll + TrimRoll; |
Mess_IntegralRoll += MesswertRoll + TrimRoll - LageKorrekturRoll; |
if(Mess_IntegralRoll > Umschlag180Roll) |
{ |
Mess_IntegralRoll = -(Umschlag180Roll - 25000L); |
Mess_IntegralRoll2 = Mess_IntegralRoll; |
} |
if(Mess_IntegralRoll <-Umschlag180Roll) |
{ |
Mess_IntegralRoll = (Umschlag180Roll - 25000L); |
Mess_IntegralRoll2 = Mess_IntegralRoll; |
} |
// Nick ++++++++++++++++++++++++++++++++++++++++++++++++ |
Mess_IntegralNick2 += MesswertNick + TrimNick; |
Mess_IntegralNick += MesswertNick + TrimNick - LageKorrekturNick; |
if(Mess_IntegralNick > Umschlag180Nick) |
{ |
Mess_IntegralNick = -(Umschlag180Nick - 25000L); |
Mess_IntegralNick2 = Mess_IntegralNick; |
} |
if(Mess_IntegralNick <-Umschlag180Nick) |
{ |
Mess_IntegralNick = (Umschlag180Nick - 25000L); |
Mess_IntegralNick2 = Mess_IntegralNick; |
} |
Integral_Gier = Mess_Integral_Gier; |
IntegralNick = Mess_IntegralNick; |
IntegralRoll = Mess_IntegralRoll; |
IntegralNick2 = Mess_IntegralNick2; |
IntegralRoll2 = Mess_IntegralRoll2; |
#define D_LIMIT 128 |
MesswertNick = HiResNick / 8; |
MesswertRoll = HiResRoll / 8; |
if(AdWertNick < 15) MesswertNick = -1000; if(AdWertNick < 7) MesswertNick = -2000; |
if(PlatinenVersion == 10) { if(AdWertNick > 1010) MesswertNick = +1000; if(AdWertNick > 1017) MesswertNick = +2000; } |
else { if(AdWertNick > 2000) MesswertNick = +1000; if(AdWertNick > 2015) MesswertNick = +2000; } |
if(AdWertRoll < 15) MesswertRoll = -1000; if(AdWertRoll < 7) MesswertRoll = -2000; |
if(PlatinenVersion == 10) { if(AdWertRoll > 1010) MesswertRoll = +1000; if(AdWertRoll > 1017) MesswertRoll = +2000; } |
else { if(AdWertRoll > 2000) MesswertRoll = +1000; if(AdWertRoll > 2015) MesswertRoll = +2000; } |
if(Parameter_Gyro_D) |
{ |
d2Nick = HiResNick - oldNick; |
oldNick = (oldNick + HiResNick)/2; |
if(d2Nick > D_LIMIT) d2Nick = D_LIMIT; |
else if(d2Nick < -D_LIMIT) d2Nick = -D_LIMIT; |
d2Roll = HiResRoll - oldRoll; |
oldRoll = (oldRoll + HiResRoll)/2; |
if(d2Roll > D_LIMIT) d2Roll = D_LIMIT; |
else if(d2Roll < -D_LIMIT) d2Roll = -D_LIMIT; |
MesswertNick += (d2Nick * (signed int) Parameter_Gyro_D) / 16; |
MesswertRoll += (d2Roll * (signed int) Parameter_Gyro_D) / 16; |
HiResNick += (d2Nick * (signed int) Parameter_Gyro_D); |
HiResRoll += (d2Roll * (signed int) Parameter_Gyro_D); |
} |
if(RohMesswertRoll > 0) TrimRoll += ((long) abs(KopplungsteilNickRoll) * Parameter_CouplingYawCorrection) / 64L; |
else TrimRoll -= ((long) abs(KopplungsteilNickRoll) * Parameter_CouplingYawCorrection) / 64L; |
if(RohMesswertNick > 0) TrimNick += ((long) abs(KopplungsteilRollNick) * Parameter_CouplingYawCorrection) / 64L; |
else TrimNick -= ((long) abs(KopplungsteilRollNick) * Parameter_CouplingYawCorrection) / 64L; |
if(EE_Parameter.GlobalConfig & CFG_DREHRATEN_BEGRENZER && !Looping_Nick && !Looping_Roll) |
{ |
if(RohMesswertNick > 256) MesswertNick += 1 * (RohMesswertNick - 256); |
else if(RohMesswertNick < -256) MesswertNick += 1 * (RohMesswertNick + 256); |
if(RohMesswertRoll > 256) MesswertRoll += 1 * (RohMesswertRoll - 256); |
else if(RohMesswertRoll < -256) MesswertRoll += 1 * (RohMesswertRoll + 256); |
} |
} |
//############################################################################ |
// Senden der Motorwerte per I2C-Bus |
void SendMotorData(void) |
//############################################################################ |
{ |
unsigned char i; |
if(!MotorenEin) |
{ |
FC_StatusFlags &= ~(FC_STATUS_MOTOR_RUN | FC_STATUS_FLY); |
for(i=0;i<MAX_MOTORS;i++) |
{ |
if(!PC_MotortestActive) MotorTest[i] = 0; |
Motor[i].SetPoint = MotorTest[i]; |
Motor[i].SetPointLowerBits = 0; |
/* |
Motor[i].SetPoint = MotorTest[i] / 4; // testing the high resolution |
Motor[i].SetPointLowerBits = MotorTest[i] % 4; |
*/ |
} |
if(PC_MotortestActive) PC_MotortestActive--; |
} |
else FC_StatusFlags |= FC_STATUS_MOTOR_RUN; |
if(I2C_TransferActive) |
{ |
I2C_TransferActive = 0; // enable for the next time |
} |
else |
{ |
motor_write = 0; |
I2C_Start(TWI_STATE_MOTOR_TX); //Start I2C Interrupt Mode |
} |
} |
//############################################################################ |
// Trägt ggf. das Poti als Parameter ein |
void ParameterZuordnung(void) |
//############################################################################ |
{ |
unsigned char tmp,i; |
#define CHK_POTI(b,a) {if(a < 248) b = a; else b = Poti[255 - a];} |
#define CHK_POTI_MM(b,a,min,max) {CHK_POTI(b,a); LIMIT_MIN_MAX(b, min, max);} |
for(i=0;i<8;i++) |
{ |
int tmp2; |
tmp2 = PPM_in[EE_Parameter.Kanalbelegung[K_POTI1 + i]] + 110; |
if(tmp2 > 255) tmp2 = 255; else if(tmp2 < 0) tmp2 = 0; |
if(tmp2 != Poti[i]) |
{ |
Poti[i] += (tmp2 - Poti[i]) / 4; |
if(Poti[i] > tmp2) Poti[i]--; |
else Poti[i]++; |
} |
} |
CHK_POTI_MM(Parameter_Luftdruck_D,EE_Parameter.Luftdruck_D,0,100); |
CHK_POTI_MM(Parameter_Hoehe_P,EE_Parameter.Hoehe_P,0,100); |
CHK_POTI_MM(Parameter_Gyro_P,EE_Parameter.Gyro_P,10,255); |
CHK_POTI_MM(Parameter_J16Timing,EE_Parameter.J16Timing,1,255); |
CHK_POTI_MM(Parameter_J17Timing,EE_Parameter.J17Timing,1,255); |
CHK_POTI(Parameter_Servo3,EE_Parameter.Servo3); |
CHK_POTI(Parameter_Servo4,EE_Parameter.Servo4); |
CHK_POTI(Parameter_Servo5,EE_Parameter.Servo5); |
CHK_POTI(Parameter_MaxHoehe,EE_Parameter.MaxHoehe); |
CHK_POTI(Parameter_MaxHoehe,EE_Parameter.MaxHoehe); |
CHK_POTI(Parameter_Hoehe_ACC_Wirkung,EE_Parameter.Hoehe_ACC_Wirkung); |
CHK_POTI(Parameter_Hoehe_GPS_Z,EE_Parameter.Hoehe_GPS_Z); |
CHK_POTI(Parameter_KompassWirkung,EE_Parameter.KompassWirkung); |
CHK_POTI(Parameter_Gyro_I,EE_Parameter.Gyro_I); |
CHK_POTI(Parameter_Gyro_D,EE_Parameter.Gyro_D); |
CHK_POTI(Parameter_Gyro_Gier_P,EE_Parameter.Gyro_Gier_P); |
CHK_POTI(Parameter_Gyro_Gier_I,EE_Parameter.Gyro_Gier_I); |
CHK_POTI(Parameter_I_Faktor,EE_Parameter.I_Faktor); |
CHK_POTI(Parameter_UserParam1,EE_Parameter.UserParam1); |
CHK_POTI(Parameter_UserParam2,EE_Parameter.UserParam2); |
CHK_POTI(Parameter_UserParam3,EE_Parameter.UserParam3); |
CHK_POTI(Parameter_UserParam4,EE_Parameter.UserParam4); |
CHK_POTI(Parameter_UserParam5,EE_Parameter.UserParam5); |
CHK_POTI(Parameter_UserParam6,EE_Parameter.UserParam6); |
CHK_POTI(Parameter_UserParam7,EE_Parameter.UserParam7); |
CHK_POTI(Parameter_UserParam8,EE_Parameter.UserParam8); |
CHK_POTI(Parameter_ServoNickControl,EE_Parameter.ServoNickControl); |
CHK_POTI(Parameter_ServoRollControl,EE_Parameter.ServoRollControl); |
CHK_POTI(Parameter_LoopGasLimit,EE_Parameter.LoopGasLimit); |
CHK_POTI(Parameter_AchsKopplung1,EE_Parameter.AchsKopplung1); |
CHK_POTI(Parameter_AchsKopplung2,EE_Parameter.AchsKopplung2); |
CHK_POTI(Parameter_CouplingYawCorrection,EE_Parameter.CouplingYawCorrection); |
// CHK_POTI(Parameter_AchsGegenKopplung1,EE_Parameter.AchsGegenKopplung1,0,255); |
CHK_POTI(Parameter_DynamicStability,EE_Parameter.DynamicStability); |
CHK_POTI(Parameter_ExternalControl,EE_Parameter.ExternalControl); |
Ki = 10300 / (Parameter_I_Faktor + 1); |
MAX_GAS = EE_Parameter.Gas_Max; |
MIN_GAS = EE_Parameter.Gas_Min; |
tmp = EE_Parameter.OrientationModeControl; |
if(tmp > 50) |
{ |
#ifdef SWITCH_LEARNS_CAREFREE |
if(!CareFree) ControlHeading = (((int) EE_Parameter.OrientationAngle * 15 + KompassValue) % 360) / 2; |
#endif |
CareFree = 1; |
if(tmp >= 248 && Poti[255 - tmp] < 50) CareFree = 0; |
if(FromNaviCtrl.CompassValue < 0 && CareFree) VersionInfo.HardwareError[0] |= FC_ERROR0_CAREFREE; else VersionInfo.HardwareError[0] &= ~FC_ERROR0_CAREFREE; |
} |
else CareFree = 0; |
if(FromNaviCtrl.CompassValue < 0 && MotorenEin && CareFree && BeepMuster == 0xffff) // ungültiger Kompasswert |
{ |
beeptime = 15000; |
BeepMuster = 0xA400; |
CareFree = 0; |
} |
if(CareFree) {if(Parameter_AchsKopplung1 < 210) Parameter_AchsKopplung1 += 30;} |
} |
//############################################################################ |
// |
void MotorRegler(void) |
//############################################################################ |
{ |
int pd_ergebnis_nick,pd_ergebnis_roll,tmp_int, tmp_int2; |
int GierMischanteil,GasMischanteil; |
static long sollGier = 0,tmp_long,tmp_long2; |
static long IntegralFehlerNick = 0; |
static long IntegralFehlerRoll = 0; |
static unsigned int RcLostTimer; |
static unsigned char delay_neutral = 0; |
static unsigned char delay_einschalten = 0,delay_ausschalten = 0; |
static unsigned char calibration_done = 0; |
static char NeueKompassRichtungMerken = 0; |
static long ausgleichNick, ausgleichRoll; |
int IntegralNickMalFaktor,IntegralRollMalFaktor; |
unsigned char i; |
Mittelwert(); |
GRN_ON; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gaswert ermitteln |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
GasMischanteil = StickGas; |
if(GasMischanteil < MIN_GAS + 10) GasMischanteil = MIN_GAS + 10; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Empfang schlecht |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(SenderOkay < 100) |
{ |
if(RcLostTimer) RcLostTimer--; |
else |
{ |
MotorenEin = 0; |
FC_StatusFlags &= ~FC_STATUS_EMERGENCY_LANDING; |
} |
ROT_ON; |
if(modell_fliegt > 1000) // wahrscheinlich in der Luft --> langsam absenken |
{ |
GasMischanteil = EE_Parameter.NotGas; |
FC_StatusFlags |= FC_STATUS_EMERGENCY_LANDING; |
PPM_diff[EE_Parameter.Kanalbelegung[K_NICK]] = 0; |
PPM_diff[EE_Parameter.Kanalbelegung[K_ROLL]] = 0; |
PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] = 0; |
PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] = 0; |
PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] = 0; |
} |
else MotorenEin = 0; |
} |
else |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Emfang gut |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(SenderOkay > 140) |
{ |
FC_StatusFlags &= ~FC_STATUS_EMERGENCY_LANDING; |
RcLostTimer = EE_Parameter.NotGasZeit * 50; |
if(GasMischanteil > 40 && MotorenEin) |
{ |
if(modell_fliegt < 0xffff) modell_fliegt++; |
} |
if((modell_fliegt < 256)) |
{ |
SummeNick = 0; |
SummeRoll = 0; |
sollGier = 0; |
Mess_Integral_Gier = 0; |
if(modell_fliegt == 250) |
{ |
NeueKompassRichtungMerken = 1; |
} |
} else FC_StatusFlags |= FC_STATUS_FLY; |
if((PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] > 80) && MotorenEin == 0) |
{ |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// auf Nullwerte kalibrieren |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] > 75) // Neutralwerte |
{ |
if(++delay_neutral > 200) // nicht sofort |
{ |
GRN_OFF; |
MotorenEin = 0; |
delay_neutral = 0; |
modell_fliegt = 0; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > 70 || abs(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]) > 70) |
{ |
unsigned char setting=1; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] > 70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < 70) setting = 1; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] > 70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > 70) setting = 2; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] < 70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > 70) setting = 3; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] <-70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > 70) setting = 4; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] <-70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < 70) setting = 5; |
SetActiveParamSet(setting); // aktiven Datensatz merken |
} |
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]) < 30 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < -70) |
{ |
WinkelOut.CalcState = 1; |
beeptime = 1000; |
} |
else |
{ |
ParamSet_ReadFromEEProm(GetActiveParamSet()); |
LipoDetection(0); |
LIBFC_ReceiverInit(EE_Parameter.Receiver); |
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)) // Höhenregelung aktiviert? |
{ |
if((MessLuftdruck > 950) || (MessLuftdruck < 750)) SucheLuftruckOffset(); |
} |
ServoActive = 0; |
SetNeutral(0); |
calibration_done = 1; |
ServoActive = 1; |
DDRD |=0x80; // enable J7 -> Servo signal |
Piep(GetActiveParamSet(),120); |
} |
} |
} |
else |
if(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] < -75) // ACC Neutralwerte speichern |
{ |
if(++delay_neutral > 200) // nicht sofort |
{ |
GRN_OFF; |
MotorenEin = 0; |
delay_neutral = 0; |
modell_fliegt = 0; |
SetNeutral(1); |
calibration_done = 1; |
Piep(GetActiveParamSet(),120); |
} |
} |
else delay_neutral = 0; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gas ist unten |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] < 35-120) |
{ |
// Motoren Starten |
if(!MotorenEin) |
{ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] < -75) && (PPM_in[EE_Parameter.MotorSafetySwitch] < -75 || EE_Parameter.MotorSafetySwitch == 0)) |
{ |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Einschalten |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(++delay_einschalten > 200) |
{ |
delay_einschalten = 0; |
if(!VersionInfo.HardwareError[0] && calibration_done) |
{ |
modell_fliegt = 1; |
MotorenEin = 1; |
sollGier = 0; |
Mess_Integral_Gier = 0; |
Mess_Integral_Gier2 = 0; |
Mess_IntegralNick = EE_Parameter.GyroAccFaktor * (long)Mittelwert_AccNick; |
Mess_IntegralRoll = EE_Parameter.GyroAccFaktor * (long)Mittelwert_AccRoll; |
Mess_IntegralNick2 = IntegralNick; |
Mess_IntegralRoll2 = IntegralRoll; |
SummeNick = 0; |
SummeRoll = 0; |
FC_StatusFlags |= FC_STATUS_START; |
ControlHeading = (((int) EE_Parameter.OrientationAngle * 15 + KompassValue) % 360) / 2; |
} |
else |
{ |
beeptime = 1500; // indicate missing calibration |
} |
} |
} |
else delay_einschalten = 0; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Auschalten |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
else // only if motors are running |
{ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] > 75) && (PPM_in[EE_Parameter.MotorSafetySwitch] < -75 || EE_Parameter.MotorSafetySwitch == 0)) |
{ |
if(++delay_ausschalten > 200) // nicht sofort |
{ |
MotorenEin = 0; |
delay_ausschalten = 0; |
modell_fliegt = 0; |
} |
} |
else delay_ausschalten = 0; |
} |
} |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// neue Werte von der Funke |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(!NewPpmData-- || (FC_StatusFlags & FC_STATUS_EMERGENCY_LANDING)) |
{ |
static int stick_nick,stick_roll; |
ParameterZuordnung(); |
stick_nick = (stick_nick * 3 + PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] * EE_Parameter.Stick_P) / 4; |
stick_nick += PPM_diff[EE_Parameter.Kanalbelegung[K_NICK]] * EE_Parameter.Stick_D; |
stick_roll = (stick_roll * 3 + PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] * EE_Parameter.Stick_P) / 4; |
stick_roll += PPM_diff[EE_Parameter.Kanalbelegung[K_ROLL]] * EE_Parameter.Stick_D; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// CareFree und freie Wahl der vorderen Richtung |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(CareFree) |
{ |
signed int nick, roll; |
nick = stick_nick / 4; |
roll = stick_roll / 4; |
StickNick = ((FromNC_Rotate_C * nick) + (FromNC_Rotate_S * roll)) / (32 / 4); |
StickRoll = ((FromNC_Rotate_C * roll) - (FromNC_Rotate_S * nick)) / (32 / 4); |
} |
else |
{ |
FromNC_Rotate_C = sintab[EE_Parameter.OrientationAngle + 6]; |
FromNC_Rotate_S = sintab[EE_Parameter.OrientationAngle]; |
StickNick = ((FromNC_Rotate_C * stick_nick) + (FromNC_Rotate_S * stick_roll)) / 8; |
StickRoll = ((FromNC_Rotate_C * stick_roll) - (FromNC_Rotate_S * stick_nick)) / 8; |
} |
StickGier = -PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]; |
if(StickGier > 2) StickGier -= 2; else |
if(StickGier < -2) StickGier += 2; else StickGier = 0; |
StickNick -= (GPS_Nick + GPS_Nick2); |
StickRoll -= (GPS_Roll + GPS_Roll2); |
StickGas = PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] + 120; |
GyroFaktor = (Parameter_Gyro_P + 10.0); |
IntegralFaktor = Parameter_Gyro_I; |
GyroFaktorGier = (Parameter_Gyro_Gier_P + 10.0); |
IntegralFaktorGier = Parameter_Gyro_Gier_I; |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
//+ Analoge Steuerung per Seriell |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(ExternControl.Config & 0x01 && Parameter_ExternalControl > 128) |
{ |
StickNick += (int) ExternControl.Nick * (int) EE_Parameter.Stick_P; |
StickRoll += (int) ExternControl.Roll * (int) EE_Parameter.Stick_P; |
StickGier += ExternControl.Gier; |
ExternHoehenValue = (int) ExternControl.Hight * (int)EE_Parameter.Hoehe_Verstaerkung; |
if(ExternControl.Gas < StickGas) StickGas = ExternControl.Gas; |
} |
if(StickGas < 0) StickGas = 0; |
if(EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) IntegralFaktor = 0; |
if(abs(StickNick/STICK_GAIN) > MaxStickNick) |
{ |
MaxStickNick = abs(StickNick)/STICK_GAIN; |
if(MaxStickNick > 100) MaxStickNick = 100; |
} |
else MaxStickNick--; |
if(abs(StickRoll/STICK_GAIN) > MaxStickRoll) |
{ |
MaxStickRoll = abs(StickRoll)/STICK_GAIN; |
if(MaxStickRoll > 100) MaxStickRoll = 100; |
} |
else MaxStickRoll--; |
if(FC_StatusFlags & FC_STATUS_EMERGENCY_LANDING) {MaxStickNick = 0; MaxStickRoll = 0;} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Looping? |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] > EE_Parameter.LoopThreshold) && EE_Parameter.BitConfig & CFG_LOOP_LINKS) Looping_Links = 1; |
else |
{ |
{ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] < (EE_Parameter.LoopThreshold - EE_Parameter.LoopHysterese))) Looping_Links = 0; |
} |
} |
if((PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] < -EE_Parameter.LoopThreshold) && EE_Parameter.BitConfig & CFG_LOOP_RECHTS) Looping_Rechts = 1; |
else |
{ |
if(Looping_Rechts) // Hysterese |
{ |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] > -(EE_Parameter.LoopThreshold - EE_Parameter.LoopHysterese)) Looping_Rechts = 0; |
} |
} |
if((PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > EE_Parameter.LoopThreshold) && EE_Parameter.BitConfig & CFG_LOOP_OBEN) Looping_Oben = 1; |
else |
{ |
if(Looping_Oben) // Hysterese |
{ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < (EE_Parameter.LoopThreshold - EE_Parameter.LoopHysterese))) Looping_Oben = 0; |
} |
} |
if((PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < -EE_Parameter.LoopThreshold) && EE_Parameter.BitConfig & CFG_LOOP_UNTEN) Looping_Unten = 1; |
else |
{ |
if(Looping_Unten) // Hysterese |
{ |
if(PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > -(EE_Parameter.LoopThreshold - EE_Parameter.LoopHysterese)) Looping_Unten = 0; |
} |
} |
if(Looping_Links || Looping_Rechts) Looping_Roll = 1; else Looping_Roll = 0; |
if(Looping_Oben || Looping_Unten) { Looping_Nick = 1; Looping_Roll = 0; Looping_Links = 0; Looping_Rechts = 0;} else Looping_Nick = 0; |
} // Ende neue Funken-Werte |
if(Looping_Roll || Looping_Nick) |
{ |
if(GasMischanteil > EE_Parameter.LoopGasLimit) GasMischanteil = EE_Parameter.LoopGasLimit; |
TrichterFlug = 1; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Bei Empfangsausfall im Flug |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(FC_StatusFlags & FC_STATUS_EMERGENCY_LANDING) |
{ |
StickGier = 0; |
StickNick = 0; |
StickRoll = 0; |
GyroFaktor = 90; |
IntegralFaktor = 120; |
GyroFaktorGier = 90; |
IntegralFaktorGier = 120; |
Looping_Roll = 0; |
Looping_Nick = 0; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Integrale auf ACC-Signal abgleichen |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#define ABGLEICH_ANZAHL 256L |
MittelIntegralNick += IntegralNick; // Für die Mittelwertbildung aufsummieren |
MittelIntegralRoll += IntegralRoll; |
MittelIntegralNick2 += IntegralNick2; |
MittelIntegralRoll2 += IntegralRoll2; |
if(Looping_Nick || Looping_Roll) |
{ |
IntegralAccNick = 0; |
IntegralAccRoll = 0; |
MittelIntegralNick = 0; |
MittelIntegralRoll = 0; |
MittelIntegralNick2 = 0; |
MittelIntegralRoll2 = 0; |
Mess_IntegralNick2 = Mess_IntegralNick; |
Mess_IntegralRoll2 = Mess_IntegralRoll; |
ZaehlMessungen = 0; |
LageKorrekturNick = 0; |
LageKorrekturRoll = 0; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(!Looping_Nick && !Looping_Roll && (Aktuell_az > 512 || MotorenEin)) |
{ |
long tmp_long, tmp_long2; |
if(FromNaviCtrl_Value.Kalman_K != -1 /*&& !TrichterFlug*/) |
{ |
tmp_long = (long)(IntegralNick / EE_Parameter.GyroAccFaktor - (long)Mittelwert_AccNick); |
tmp_long2 = (long)(IntegralRoll / EE_Parameter.GyroAccFaktor - (long)Mittelwert_AccRoll); |
tmp_long = (tmp_long * FromNaviCtrl_Value.Kalman_K) / (32 * 16); |
tmp_long2 = (tmp_long2 * FromNaviCtrl_Value.Kalman_K) / (32 * 16); |
if((MaxStickNick > 64) || (MaxStickRoll > 64)) |
{ |
tmp_long /= 2; |
tmp_long2 /= 2; |
} |
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]) > 25) |
{ |
tmp_long /= 3; |
tmp_long2 /= 3; |
} |
if(tmp_long > (long) FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long = (long) FromNaviCtrl_Value.Kalman_MaxFusion; |
if(tmp_long < (long)-FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long = (long)-FromNaviCtrl_Value.Kalman_MaxFusion; |
if(tmp_long2 > (long) FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long2 = (long) FromNaviCtrl_Value.Kalman_MaxFusion; |
if(tmp_long2 < (long)-FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long2 = (long)-FromNaviCtrl_Value.Kalman_MaxFusion; |
} |
else |
{ |
tmp_long = (long)(IntegralNick / EE_Parameter.GyroAccFaktor - (long)Mittelwert_AccNick); |
tmp_long2 = (long)(IntegralRoll / EE_Parameter.GyroAccFaktor - (long)Mittelwert_AccRoll); |
tmp_long /= 16; |
tmp_long2 /= 16; |
if((MaxStickNick > 64) || (MaxStickRoll > 64)) |
{ |
tmp_long /= 3; |
tmp_long2 /= 3; |
} |
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]) > 25) |
{ |
tmp_long /= 3; |
tmp_long2 /= 3; |
} |
#define AUSGLEICH 32 |
if(tmp_long > AUSGLEICH) tmp_long = AUSGLEICH; |
if(tmp_long < -AUSGLEICH) tmp_long =-AUSGLEICH; |
if(tmp_long2 > AUSGLEICH) tmp_long2 = AUSGLEICH; |
if(tmp_long2 <-AUSGLEICH) tmp_long2 =-AUSGLEICH; |
} |
Mess_IntegralNick -= tmp_long; |
Mess_IntegralRoll -= tmp_long2; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(ZaehlMessungen >= ABGLEICH_ANZAHL) |
{ |
static int cnt = 0; |
static char last_n_p,last_n_n,last_r_p,last_r_n; |
static long MittelIntegralNick_Alt,MittelIntegralRoll_Alt; |
if(!Looping_Nick && !Looping_Roll && !TrichterFlug && EE_Parameter.Driftkomp) |
{ |
MittelIntegralNick /= ABGLEICH_ANZAHL; |
MittelIntegralRoll /= ABGLEICH_ANZAHL; |
IntegralAccNick = (EE_Parameter.GyroAccFaktor * IntegralAccNick) / ABGLEICH_ANZAHL; |
IntegralAccRoll = (EE_Parameter.GyroAccFaktor * IntegralAccRoll) / ABGLEICH_ANZAHL; |
IntegralAccZ = IntegralAccZ / ABGLEICH_ANZAHL; |
#define MAX_I 0 |
// Nick ++++++++++++++++++++++++++++++++++++++++++++++++ |
IntegralFehlerNick = (long)(MittelIntegralNick - (long)IntegralAccNick); |
ausgleichNick = IntegralFehlerNick / EE_Parameter.GyroAccAbgleich; |
// Roll ++++++++++++++++++++++++++++++++++++++++++++++++ |
IntegralFehlerRoll = (long)(MittelIntegralRoll - (long)IntegralAccRoll); |
ausgleichRoll = IntegralFehlerRoll / EE_Parameter.GyroAccAbgleich; |
LageKorrekturNick = ausgleichNick / ABGLEICH_ANZAHL; |
LageKorrekturRoll = ausgleichRoll / ABGLEICH_ANZAHL; |
if(((MaxStickNick > 64) || (MaxStickRoll > 64) || (abs(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]) > 25)) && (FromNaviCtrl_Value.Kalman_K == -1)) |
{ |
LageKorrekturNick /= 2; |
LageKorrekturRoll /= 2; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gyro-Drift ermitteln |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
MittelIntegralNick2 /= ABGLEICH_ANZAHL; |
MittelIntegralRoll2 /= ABGLEICH_ANZAHL; |
tmp_long = IntegralNick2 - IntegralNick; |
tmp_long2 = IntegralRoll2 - IntegralRoll; |
IntegralFehlerNick = tmp_long; |
IntegralFehlerRoll = tmp_long2; |
Mess_IntegralNick2 -= IntegralFehlerNick; |
Mess_IntegralRoll2 -= IntegralFehlerRoll; |
if(EE_Parameter.Driftkomp) |
{ |
if(GierGyroFehler > ABGLEICH_ANZAHL/2) { AdNeutralGier++; } |
if(GierGyroFehler <-ABGLEICH_ANZAHL/2) { AdNeutralGier--; } |
} |
GierGyroFehler = 0; |
#define FEHLER_LIMIT (ABGLEICH_ANZAHL / 2) |
#define FEHLER_LIMIT1 (ABGLEICH_ANZAHL * 2) //4 |
#define FEHLER_LIMIT2 (ABGLEICH_ANZAHL * 16) //16 |
#define BEWEGUNGS_LIMIT 20000 |
// Nick +++++++++++++++++++++++++++++++++++++++++++++++++ |
cnt = 1;// + labs(IntegralFehlerNick) / 4096; |
if(labs(IntegralFehlerNick) > FEHLER_LIMIT1) cnt = 4; |
if(labs(MittelIntegralNick_Alt - MittelIntegralNick) < BEWEGUNGS_LIMIT || (FromNaviCtrl_Value.Kalman_MaxDrift > 3*8)) |
{ |
if(IntegralFehlerNick > FEHLER_LIMIT2) |
{ |
if(last_n_p) |
{ |
cnt += labs(IntegralFehlerNick) / (FEHLER_LIMIT2 / 8); |
ausgleichNick = IntegralFehlerNick / 8; |
if(ausgleichNick > 5000) ausgleichNick = 5000; |
LageKorrekturNick += ausgleichNick / ABGLEICH_ANZAHL; |
} |
else last_n_p = 1; |
} else last_n_p = 0; |
if(IntegralFehlerNick < -FEHLER_LIMIT2) |
{ |
if(last_n_n) |
{ |
cnt += labs(IntegralFehlerNick) / (FEHLER_LIMIT2 / 8); |
ausgleichNick = IntegralFehlerNick / 8; |
if(ausgleichNick < -5000) ausgleichNick = -5000; |
LageKorrekturNick += ausgleichNick / ABGLEICH_ANZAHL; |
} |
else last_n_n = 1; |
} else last_n_n = 0; |
} |
else |
{ |
cnt = 0; |
KompassSignalSchlecht = 1000; |
} |
if(cnt > EE_Parameter.Driftkomp) cnt = EE_Parameter.Driftkomp; |
if(FromNaviCtrl_Value.Kalman_MaxDrift) if(cnt > FromNaviCtrl_Value.Kalman_MaxDrift) cnt = FromNaviCtrl_Value.Kalman_MaxDrift; |
if(IntegralFehlerNick > FEHLER_LIMIT) AdNeutralNick += cnt; |
if(IntegralFehlerNick < -FEHLER_LIMIT) AdNeutralNick -= cnt; |
// Roll +++++++++++++++++++++++++++++++++++++++++++++++++ |
cnt = 1;// + labs(IntegralFehlerRoll) / 4096; |
if(labs(IntegralFehlerRoll) > FEHLER_LIMIT1) cnt = 4; |
if(labs(MittelIntegralRoll_Alt - MittelIntegralRoll) < BEWEGUNGS_LIMIT || (FromNaviCtrl_Value.Kalman_MaxDrift > 3*8)) |
{ |
if(IntegralFehlerRoll > FEHLER_LIMIT2) |
{ |
if(last_r_p) |
{ |
cnt += labs(IntegralFehlerRoll) / (FEHLER_LIMIT2 / 8); |
ausgleichRoll = IntegralFehlerRoll / 8; |
if(ausgleichRoll > 5000) ausgleichRoll = 5000; |
LageKorrekturRoll += ausgleichRoll / ABGLEICH_ANZAHL; |
} |
else last_r_p = 1; |
} else last_r_p = 0; |
if(IntegralFehlerRoll < -FEHLER_LIMIT2) |
{ |
if(last_r_n) |
{ |
cnt += labs(IntegralFehlerRoll) / (FEHLER_LIMIT2 / 8); |
ausgleichRoll = IntegralFehlerRoll / 8; |
if(ausgleichRoll < -5000) ausgleichRoll = -5000; |
LageKorrekturRoll += ausgleichRoll / ABGLEICH_ANZAHL; |
} |
else last_r_n = 1; |
} else last_r_n = 0; |
} else |
{ |
cnt = 0; |
KompassSignalSchlecht = 1000; |
} |
if(cnt > EE_Parameter.Driftkomp) cnt = EE_Parameter.Driftkomp; |
if(FromNaviCtrl_Value.Kalman_MaxDrift) if(cnt > FromNaviCtrl_Value.Kalman_MaxDrift) cnt = FromNaviCtrl_Value.Kalman_MaxDrift; |
if(IntegralFehlerRoll > FEHLER_LIMIT) AdNeutralRoll += cnt; |
if(IntegralFehlerRoll < -FEHLER_LIMIT) AdNeutralRoll -= cnt; |
} |
else |
{ |
LageKorrekturRoll = 0; |
LageKorrekturNick = 0; |
TrichterFlug = 0; |
} |
if(!IntegralFaktor) { LageKorrekturRoll = 0; LageKorrekturNick = 0;} // z.B. bei HH |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
MittelIntegralNick_Alt = MittelIntegralNick; |
MittelIntegralRoll_Alt = MittelIntegralRoll; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
IntegralAccNick = 0; |
IntegralAccRoll = 0; |
IntegralAccZ = 0; |
MittelIntegralNick = 0; |
MittelIntegralRoll = 0; |
MittelIntegralNick2 = 0; |
MittelIntegralRoll2 = 0; |
ZaehlMessungen = 0; |
} // ZaehlMessungen >= ABGLEICH_ANZAHL |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gieren |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(abs(StickGier) > 15) // war 35 |
{ |
KompassSignalSchlecht = 1000; |
if(!(EE_Parameter.GlobalConfig & CFG_KOMPASS_FIX)) |
{ |
NeueKompassRichtungMerken = 1; |
}; |
} |
tmp_int = (long) EE_Parameter.Gier_P * ((long)StickGier * abs(StickGier)) / 512L; // expo y = ax + bx² |
tmp_int += (EE_Parameter.Gier_P * StickGier) / 4; |
sollGier = tmp_int; |
Mess_Integral_Gier -= tmp_int; |
if(Mess_Integral_Gier > 50000) Mess_Integral_Gier = 50000; // begrenzen |
if(Mess_Integral_Gier <-50000) Mess_Integral_Gier =-50000; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Kompass |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(KompassValue && (EE_Parameter.GlobalConfig & CFG_KOMPASS_AKTIV)) |
{ |
int w,v,r,fehler,korrektur; |
w = abs(IntegralNick /512); // mit zunehmender Neigung den Einfluss drosseln |
v = abs(IntegralRoll /512); |
if(v > w) w = v; // grösste Neigung ermitteln |
korrektur = w / 8 + 2; |
fehler = ((540 + KompassValue - (ErsatzKompass/GIER_GRAD_FAKTOR)) % 360) - 180; |
//fehler += MesswertGier / 12; |
if(!KompassSignalSchlecht && w < 25) |
{ |
GierGyroFehler += fehler; |
if(NeueKompassRichtungMerken) |
{ |
ErsatzKompass = KompassValue * GIER_GRAD_FAKTOR; |
KompassStartwert = (ErsatzKompass/GIER_GRAD_FAKTOR); |
NeueKompassRichtungMerken = 0; |
} |
} |
ErsatzKompass += (fehler * 16) / korrektur; |
w = (w * Parameter_KompassWirkung) / 32; // auf die Wirkung normieren |
w = Parameter_KompassWirkung - w; // Wirkung ggf drosseln |
if(w >= 0) |
{ |
if(!KompassSignalSchlecht) |
{ |
v = 64 + ((MaxStickNick + MaxStickRoll)) / 8; |
r = ((540 + (ErsatzKompass/GIER_GRAD_FAKTOR) - KompassStartwert) % 360) - 180; |
v = (r * w) / v; // nach Kompass ausrichten |
w = 3 * Parameter_KompassWirkung; |
if(v > w) v = w; // Begrenzen |
else |
if(v < -w) v = -w; |
Mess_Integral_Gier += v; |
} |
if(KompassSignalSchlecht) KompassSignalSchlecht--; |
} |
else KompassSignalSchlecht = 500; // so lange das Signal taub stellen --> ca. 1 sek |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Drehgeschwindigkeit und -winkel zu einem Istwert zusammenfassen |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(TrichterFlug) { SummeRoll = 0; SummeNick = 0;}; |
if(!Looping_Nick) IntegralNickMalFaktor = (IntegralNick * IntegralFaktor) / (44000 / STICK_GAIN); else IntegralNickMalFaktor = 0; |
if(!Looping_Roll) IntegralRollMalFaktor = (IntegralRoll * IntegralFaktor) / (44000 / STICK_GAIN); else IntegralRollMalFaktor = 0; |
#define TRIM_MAX 200 |
if(TrimNick > TRIM_MAX) TrimNick = TRIM_MAX; else if(TrimNick <-TRIM_MAX) TrimNick =-TRIM_MAX; |
if(TrimRoll > TRIM_MAX) TrimRoll = TRIM_MAX; else if(TrimRoll <-TRIM_MAX) TrimRoll =-TRIM_MAX; |
MesswertNick = IntegralNickMalFaktor + (long)((long)MesswertNick * GyroFaktor + (long)TrimNick * 128L) / (256L / STICK_GAIN); |
MesswertRoll = IntegralRollMalFaktor + (long)((long)MesswertRoll * GyroFaktor + (long)TrimRoll * 128L) / (256L / STICK_GAIN); |
MesswertGier = (long)(MesswertGier * 2 * (long)GyroFaktorGier) / (256L / STICK_GAIN) + (long)(Integral_Gier * IntegralFaktorGier) / (2 * (44000 / STICK_GAIN)); |
// Maximalwerte abfangen |
// #define MAX_SENSOR (4096*STICK_GAIN) |
#define MAX_SENSOR (4096) |
if(MesswertNick > MAX_SENSOR) MesswertNick = MAX_SENSOR; |
if(MesswertNick < -MAX_SENSOR) MesswertNick = -MAX_SENSOR; |
if(MesswertRoll > MAX_SENSOR) MesswertRoll = MAX_SENSOR; |
if(MesswertRoll < -MAX_SENSOR) MesswertRoll = -MAX_SENSOR; |
if(MesswertGier > MAX_SENSOR) MesswertGier = MAX_SENSOR; |
if(MesswertGier < -MAX_SENSOR) MesswertGier = -MAX_SENSOR; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Höhenregelung |
// Die Höhenregelung schwächt lediglich das Gas ab, erhöht es allerdings nicht |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(UBat > BattLowVoltageWarning) GasMischanteil = ((unsigned int)GasMischanteil * BattLowVoltageWarning) / UBat; // Gas auf das aktuelle Spannungvieveau beziehen |
GasMischanteil *= STICK_GAIN; |
// if height control is activated |
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG) && !(Looping_Roll || Looping_Nick)) // Höhenregelung |
{ |
#define HOVER_GAS_AVERAGE 16384L // 16384 * 2ms = 32s averaging |
#define HC_GAS_AVERAGE 4 // 4 * 2ms= 8ms averaging |
#if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)) |
#define OPA_OFFSET_STEP 15 |
#else |
#define OPA_OFFSET_STEP 10 |
#endif |
int HCGas, HeightDeviation = 0,GasReduction = 0; |
static int HeightTrimming = 0; // rate for change of height setpoint |
static int FilterHCGas = 0; |
static int StickGasHover = 120, HoverGasMin = 0, HoverGasMax = 1023; |
static unsigned long HoverGasFilter = 0; |
static unsigned char delay = 100, BaroAtUpperLimit = 0, BaroAtLowerLimit = 0; |
int CosAttitude; // for projection of hoover gas |
// get the current hooverpoint |
DebugOut.Analog[21] = HoverGas; |
// Expand the measurement |
// measurement of air pressure close to upper limit and no overflow in correction of the new OCR0A value occurs |
if(!BaroExpandActive) |
{ |
if(MessLuftdruck > 920) |
{ // increase offset |
if(OCR0A < (255 - OPA_OFFSET_STEP)) |
{ |
ExpandBaro -= 1; |
OCR0A = DruckOffsetSetting - OPA_OFFSET_STEP * ExpandBaro; // increase offset to shift ADC down |
beeptime = 300; |
BaroExpandActive = 350; |
} |
else |
{ |
BaroAtLowerLimit = 1; |
} |
} |
// measurement of air pressure close to lower limit and |
else |
if(MessLuftdruck < 100) |
{ // decrease offset |
if(OCR0A > OPA_OFFSET_STEP) |
{ |
ExpandBaro += 1; |
OCR0A = DruckOffsetSetting - OPA_OFFSET_STEP * ExpandBaro; // decrease offset to shift ADC up |
beeptime = 300; |
BaroExpandActive = 350; |
} |
else |
{ |
BaroAtUpperLimit = 1; |
} |
} |
else |
{ |
BaroAtUpperLimit = 0; |
BaroAtLowerLimit = 0; |
} |
} |
else // delay, because of expanding the Baro-Range |
{ |
// now clear the D-values |
SummenHoehe = HoehenWert * SM_FILTER; |
VarioMeter = 0; |
BaroExpandActive--; |
} |
// if height control is activated by an rc channel |
if(EE_Parameter.GlobalConfig & CFG_HOEHEN_SCHALTER) // Regler wird über Schalter gesteuert |
{ // check if parameter is less than activation threshold |
if(Parameter_MaxHoehe < 50) // for 3 or 2-state switch height control is disabled in lowest position |
{ //height control not active |
if(!delay--) |
{ |
HoehenReglerAktiv = 0; // disable height control |
SollHoehe = HoehenWert; // update SetPoint with current reading |
delay = 1; |
} |
} |
else |
{ //height control is activated |
HoehenReglerAktiv = 1; // enable height control |
delay = 200; |
} |
} |
else // no switchable height control |
{ |
SollHoehe = ((int16_t) ExternHoehenValue + (int16_t) Parameter_MaxHoehe) * (int)EE_Parameter.Hoehe_Verstaerkung; |
HoehenReglerAktiv = 1; |
} |
// calculate cos of nick and roll angle used for projection of the vertical hoover gas |
tmp_int = (int)(IntegralNick/GIER_GRAD_FAKTOR); // nick angle in deg |
tmp_int2 = (int)(IntegralRoll/GIER_GRAD_FAKTOR); // roll angle in deg |
CosAttitude = (int16_t)ihypot(tmp_int, tmp_int2); // phytagoras gives effective attitude angle in deg |
LIMIT_MAX(CosAttitude, 60); // limit effective attitude angle |
CosAttitude = c_cos_8192(CosAttitude); // cos of actual attitude |
VarioCharacter = ' '; |
if(HoehenReglerAktiv && !(FC_StatusFlags & FC_STATUS_EMERGENCY_LANDING)) |
{ |
#define HEIGHT_CONTROL_STICKTHRESHOLD 15 |
// Holger original version |
// start of height control algorithm |
// the height control is only an attenuation of the actual gas stick. |
// I.e. it will work only if the gas stick is higher than the hover gas |
// and the hover height will be allways larger than height setpoint. |
if((EE_Parameter.ExtraConfig & CFG2_HEIGHT_LIMIT) || !(EE_Parameter.GlobalConfig & CFG_HOEHEN_SCHALTER)) // Regler wird über Schalter gesteuert) |
{ // old version |
HCGas = GasMischanteil; // take current stick gas as neutral point for the height control |
HeightTrimming = 0; |
// set both flags to indicate no vario mode |
FC_StatusFlags |= (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN); |
} |
else |
{ |
// alternative height control |
// PD-Control with respect to hoover point |
// the thrust loss out of horizontal attitude is compensated |
// the setpoint will be fine adjusted with the gas stick position |
if(FC_StatusFlags & FC_STATUS_FLY) // trim setpoint only when flying |
{ // gas stick is above hoover point |
if(StickGas > (StickGasHover + HEIGHT_CONTROL_STICKTHRESHOLD) && !BaroAtUpperLimit) |
{ |
if(FC_StatusFlags & FC_STATUS_VARIO_TRIM_DOWN) |
{ |
FC_StatusFlags &= ~FC_STATUS_VARIO_TRIM_DOWN; |
SollHoehe = HoehenWert; // update setpoint to current heigth |
} |
FC_StatusFlags |= FC_STATUS_VARIO_TRIM_UP; |
HeightTrimming += abs(StickGas - (StickGasHover + HEIGHT_CONTROL_STICKTHRESHOLD)); |
VarioCharacter = '+'; |
} // gas stick is below hoover point |
else if(StickGas < (StickGasHover - HEIGHT_CONTROL_STICKTHRESHOLD) && !BaroAtLowerLimit ) |
{ |
if(FC_StatusFlags & FC_STATUS_VARIO_TRIM_UP) |
{ |
FC_StatusFlags &= ~FC_STATUS_VARIO_TRIM_UP; |
SollHoehe = HoehenWert; // update setpoint to current heigth |
} |
FC_StatusFlags |= FC_STATUS_VARIO_TRIM_DOWN; |
HeightTrimming -= abs(StickGas - (StickGasHover - HEIGHT_CONTROL_STICKTHRESHOLD)); |
VarioCharacter = '-'; |
} |
else // Gas Stick in Hover Range |
{ |
if(FC_StatusFlags & (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN)) |
{ |
FC_StatusFlags &= ~(FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN); |
HeightTrimming = 0; |
SollHoehe = HoehenWert; // update setpoint to current height |
if(EE_Parameter.ExtraConfig & CFG2_VARIO_BEEP) beeptime = 500; |
if(!StartTrigger && HoehenWert > 50) |
{ |
StartTrigger = 1; |
} |
} |
VarioCharacter = '='; |
} |
// Trim height set point |
if(abs(HeightTrimming) > 512) |
{ |
SollHoehe += (HeightTrimming * EE_Parameter.Hoehe_Verstaerkung)/(5 * 512 / 2); // move setpoint |
HeightTrimming = 0; |
LIMIT_MIN_MAX(SollHoehe, (HoehenWert-1024), (HoehenWert+1024)); // max. 10m Unterschied |
if(EE_Parameter.ExtraConfig & CFG2_VARIO_BEEP) beeptime = 100; |
//update hoover gas stick value when setpoint is shifted |
if(!EE_Parameter.Hoehe_StickNeutralPoint) |
{ |
StickGasHover = HoverGas/STICK_GAIN; //rescale back to stick value |
StickGasHover = (StickGasHover * UBat) / BattLowVoltageWarning; |
if(StickGasHover < 70) StickGasHover = 70; |
else if(StickGasHover > 150) StickGasHover = 150; |
} |
} |
if(BaroExpandActive) SollHoehe = HoehenWert; // update setpoint to current altitude if Expanding is active |
} //if FCFlags & MKFCFLAG_FLY |
else |
{ |
SollHoehe = HoehenWert - 400; |
if(EE_Parameter.Hoehe_StickNeutralPoint) StickGasHover = EE_Parameter.Hoehe_StickNeutralPoint; |
else StickGasHover = 120; |
HoverGas = GasMischanteil; |
} |
HCGas = HoverGas; // take hover gas (neutral point) |
} |
if(HoehenWert > SollHoehe || !(EE_Parameter.ExtraConfig & CFG2_HEIGHT_LIMIT)) |
{ |
// from this point the Heigth Control Algorithm is identical for both versions |
if(BaroExpandActive) // baro range expanding active |
{ |
HCGas = HoverGas; // hover while expanding baro adc range |
HeightDeviation = 0; |
} // EOF // baro range expanding active |
else // valid data from air pressure sensor |
{ |
// ------------------------- P-Part ---------------------------- |
tmp_long = (HoehenWert - SollHoehe); // positive when too high |
LIMIT_MIN_MAX(tmp_long, -32767L, 32767L); // avoid overflov when casting to int16_t |
HeightDeviation = (int)(tmp_long); // positive when too high |
tmp_long = (tmp_long * (long)Parameter_Hoehe_P) / 32L; // p-part |
LIMIT_MIN_MAX(tmp_long, -127 * STICK_GAIN, 256 * STICK_GAIN); // more than the full range makes no sense |
GasReduction = tmp_long; |
// ------------------------- D-Part 1: Vario Meter ---------------------------- |
tmp_int = VarioMeter / 8; |
LIMIT_MIN_MAX(tmp_int, -127, 128); |
tmp_int = (tmp_int * (long)Parameter_Luftdruck_D) / 4L; // scale to d-gain parameter |
LIMIT_MIN_MAX(tmp_int,-64 * STICK_GAIN, 64 * STICK_GAIN); |
if(FC_StatusFlags & (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN)) tmp_int /= 4; // reduce d-part while trimming setpoint |
else |
if(EE_Parameter.ExtraConfig & CFG2_HEIGHT_LIMIT) tmp_int /= 8; // reduce d-part in "Deckel" mode |
GasReduction += tmp_int; |
} // EOF no baro range expanding |
// ------------------------ D-Part 2: ACC-Z Integral ------------------------ |
if(Parameter_Hoehe_ACC_Wirkung) |
{ |
tmp_long = ((Mess_Integral_Hoch / 128L) * (int32_t) Parameter_Hoehe_ACC_Wirkung) / (128L / STICK_GAIN); |
LIMIT_MIN_MAX(tmp_long, -32 * STICK_GAIN, 64 * STICK_GAIN); |
GasReduction += tmp_long; |
} |
// ------------------------ D-Part 3: GpsZ ---------------------------------- |
tmp_int = (Parameter_Hoehe_GPS_Z * (int)FromNaviCtrl_Value.GpsZ)/128L; |
LIMIT_MIN_MAX(tmp_int, -32 * STICK_GAIN, 64 * STICK_GAIN); |
GasReduction += tmp_int; |
GasReduction = (long)((long)GasReduction * HoverGas) / 512; // scale to the gas value |
// ------------------------ ---------------------------------- |
HCGas -= GasReduction; |
// limit deviation from hoover point within the target region |
if(!HeightTrimming && HoverGas > 0) // height setpoint is not changed and hoover gas not zero |
{ |
unsigned int tmp; |
tmp = abs(HeightDeviation); |
if(tmp <= 60) |
{ |
LIMIT_MIN_MAX(HCGas, HoverGasMin, HoverGasMax); // limit gas around the hoover point |
} |
else |
{ |
tmp = (tmp - 60) / 32; |
if(tmp > 15) tmp = 15; |
if(HeightDeviation > 0) |
{ |
tmp = (HoverGasMin * (16 - tmp)) / 16; |
LIMIT_MIN_MAX(HCGas, tmp, HoverGasMax); // limit gas around the hoover point |
} |
else |
{ |
tmp = (HoverGasMax * (tmp + 16)) / 16; |
LIMIT_MIN_MAX(HCGas, HoverGasMin, tmp); // limit gas around the hoover point |
} |
} |
} |
// strech control output by inverse attitude projection 1/cos |
// + 1/cos(angle) ++++++++++++++++++++++++++ |
tmp_long2 = (int32_t)HCGas; |
tmp_long2 *= 8192L; |
tmp_long2 /= CosAttitude; |
HCGas = (int16_t)tmp_long2; |
// update height control gas averaging |
FilterHCGas = (FilterHCGas * (HC_GAS_AVERAGE - 1) + HCGas) / HC_GAS_AVERAGE; |
// limit height control gas pd-control output |
LIMIT_MIN_MAX(FilterHCGas, EE_Parameter.Hoehe_MinGas * STICK_GAIN, (MAX_GAS - 20) * STICK_GAIN); |
// set GasMischanteil to HeightControlGasFilter |
if(EE_Parameter.ExtraConfig & CFG2_HEIGHT_LIMIT) |
{ // old version |
LIMIT_MAX(FilterHCGas, GasMischanteil); // nicht mehr als Gas |
GasMischanteil = FilterHCGas; |
} |
else GasMischanteil = FilterHCGas + (GasMischanteil - HoverGas) / 4; // only in Vario-Mode |
} |
}// EOF height control active |
else // HC not active |
{ |
//update hoover gas stick value when HC is not active |
if(!EE_Parameter.Hoehe_StickNeutralPoint) |
{ |
StickGasHover = HoverGas/STICK_GAIN; // rescale back to stick value |
StickGasHover = (StickGasHover * UBat) / BattLowVoltageWarning; |
} |
else StickGasHover = EE_Parameter.Hoehe_StickNeutralPoint; |
LIMIT_MIN_MAX(StickGasHover, 70, 150); // reserve some range for trim up and down |
FilterHCGas = GasMischanteil; |
// set both flags to indicate no vario mode |
FC_StatusFlags |= (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN); |
} |
// Hover gas estimation by averaging gas control output on small z-velocities |
// this is done only if height contol option is selected in global config and aircraft is flying |
if((FC_StatusFlags & FC_STATUS_FLY))// && !(FC_SatusFlags & FC_STATUS_EMERGENCY_LANDING)) |
{ |
if(HoverGasFilter == 0 || StartTrigger == 1) HoverGasFilter = HOVER_GAS_AVERAGE * (unsigned long)(GasMischanteil); // init estimation |
if(StartTrigger == 1) StartTrigger = 2; |
tmp_long2 = (int32_t)GasMischanteil; // take current thrust |
tmp_long2 *= CosAttitude; // apply attitude projection |
tmp_long2 /= 8192; |
// average vertical projected thrust |
if(modell_fliegt < 4000) // the first 8 seconds |
{ // reduce the time constant of averaging by factor of 4 to get much faster a stable value |
HoverGasFilter -= HoverGasFilter/(HOVER_GAS_AVERAGE/16L); |
HoverGasFilter += 16L * tmp_long2; |
} |
if(modell_fliegt < 8000) // the first 16 seconds |
{ // reduce the time constant of averaging by factor of 2 to get much faster a stable value |
HoverGasFilter -= HoverGasFilter/(HOVER_GAS_AVERAGE/4L); |
HoverGasFilter += 4L * tmp_long2; |
} |
else //later |
if(abs(VarioMeter) < 100) // only on small vertical speed |
{ |
HoverGasFilter -= HoverGasFilter/HOVER_GAS_AVERAGE; |
HoverGasFilter += tmp_long2; |
} |
HoverGas = (int16_t)(HoverGasFilter/HOVER_GAS_AVERAGE); |
if(EE_Parameter.Hoehe_HoverBand) |
{ |
int16_t band; |
band = HoverGas / EE_Parameter.Hoehe_HoverBand; // the higher the parameter the smaller the range |
HoverGasMin = HoverGas - band; |
HoverGasMax = HoverGas + band; |
} |
else |
{ // no limit |
HoverGasMin = 0; |
HoverGasMax = 1023; |
} |
} |
else |
{ |
StartTrigger = 0; |
HoverGasFilter = 0; |
HoverGas = 0; |
} |
}// EOF ParamSet.GlobalConfig & CFG_HEIGHT_CONTROL |
else |
{ |
// set undefined state to indicate vario off |
FC_StatusFlags |= (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN); |
} // EOF no height control |
// limit gas to parameter setting |
LIMIT_MIN(GasMischanteil, (MIN_GAS + 10) * STICK_GAIN); |
if(GasMischanteil > (MAX_GAS - 20) * STICK_GAIN) GasMischanteil = (MAX_GAS - 20) * STICK_GAIN; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// all BL-Ctrl connected? |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(MissingMotor || Capacity.MinOfMaxPWM != 255) |
if(modell_fliegt > 1 && modell_fliegt < 50 && GasMischanteil > 0) |
{ |
modell_fliegt = 1; |
GasMischanteil = (MIN_GAS + 10) * STICK_GAIN; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Mischer und PI-Regler |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
DebugOut.Analog[7] = GasMischanteil; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gier-Anteil |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
GierMischanteil = MesswertGier - sollGier * STICK_GAIN; // Regler für Gier |
#define MIN_GIERGAS (40*STICK_GAIN) // unter diesem Gaswert trotzdem Gieren |
if(GasMischanteil > MIN_GIERGAS) |
{ |
if(GierMischanteil > (GasMischanteil / 2)) GierMischanteil = GasMischanteil / 2; |
if(GierMischanteil < -(GasMischanteil / 2)) GierMischanteil = -(GasMischanteil / 2); |
} |
else |
{ |
if(GierMischanteil > (MIN_GIERGAS / 2)) GierMischanteil = MIN_GIERGAS / 2; |
if(GierMischanteil < -(MIN_GIERGAS / 2)) GierMischanteil = -(MIN_GIERGAS / 2); |
} |
tmp_int = MAX_GAS*STICK_GAIN; |
if(GierMischanteil > ((tmp_int - GasMischanteil))) GierMischanteil = ((tmp_int - GasMischanteil)); |
if(GierMischanteil < -((tmp_int - GasMischanteil))) GierMischanteil = -((tmp_int - GasMischanteil)); |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Nick-Achse |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
DiffNick = MesswertNick - StickNick; // Differenz bestimmen |
if(IntegralFaktor) SummeNick += IntegralNickMalFaktor - StickNick; // I-Anteil bei Winkelregelung |
else SummeNick += DiffNick; // I-Anteil bei HH |
if(SummeNick > (STICK_GAIN * 16000L)) SummeNick = (STICK_GAIN * 16000L); |
if(SummeNick < -(16000L * STICK_GAIN)) SummeNick = -(16000L * STICK_GAIN); |
if(EE_Parameter.Gyro_Stability <= 8) pd_ergebnis_nick = (EE_Parameter.Gyro_Stability * DiffNick) / 8; // PI-Regler für Nick |
else pd_ergebnis_nick = ((EE_Parameter.Gyro_Stability / 2) * DiffNick) / 4; // Überlauf verhindern |
pd_ergebnis_nick += SummeNick / Ki; |
tmp_int = (long)((long)Parameter_DynamicStability * (long)(GasMischanteil + abs(GierMischanteil)/2)) / 64; |
if(pd_ergebnis_nick > tmp_int) pd_ergebnis_nick = tmp_int; |
if(pd_ergebnis_nick < -tmp_int) pd_ergebnis_nick = -tmp_int; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Roll-Achse |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
DiffRoll = MesswertRoll - StickRoll; // Differenz bestimmen |
if(IntegralFaktor) SummeRoll += IntegralRollMalFaktor - StickRoll;// I-Anteil bei Winkelregelung |
else SummeRoll += DiffRoll; // I-Anteil bei HH |
if(SummeRoll > (STICK_GAIN * 16000L)) SummeRoll = (STICK_GAIN * 16000L); |
if(SummeRoll < -(16000L * STICK_GAIN)) SummeRoll = -(16000L * STICK_GAIN); |
if(EE_Parameter.Gyro_Stability <= 8) pd_ergebnis_roll = (EE_Parameter.Gyro_Stability * DiffRoll) / 8; // PI-Regler für Roll |
else pd_ergebnis_roll = ((EE_Parameter.Gyro_Stability / 2) * DiffRoll) / 4; // Überlauf verhindern |
pd_ergebnis_roll += SummeRoll / Ki; |
tmp_int = (long)((long)Parameter_DynamicStability * (long)(GasMischanteil + abs(GierMischanteil)/2)) / 64; |
if(pd_ergebnis_roll > tmp_int) pd_ergebnis_roll = tmp_int; |
if(pd_ergebnis_roll < -tmp_int) pd_ergebnis_roll = -tmp_int; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Universal Mixer |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
for(i=0; i<MAX_MOTORS; i++) |
{ |
signed int tmp_int; |
if(Mixer.Motor[i][0] > 0) |
{ |
// Gas |
if(Mixer.Motor[i][0] == 64) tmp_int = GasMischanteil; else tmp_int = ((long)GasMischanteil * Mixer.Motor[i][0]) / 64L; |
// Nick |
if(Mixer.Motor[i][1] == 64) tmp_int += pd_ergebnis_nick; |
else if(Mixer.Motor[i][1] == -64) tmp_int -= pd_ergebnis_nick; |
else tmp_int += ((long)pd_ergebnis_nick * Mixer.Motor[i][1]) / 64L; |
// Roll |
if(Mixer.Motor[i][2] == 64) tmp_int += pd_ergebnis_roll; |
else if(Mixer.Motor[i][2] == -64) tmp_int -= pd_ergebnis_roll; |
else tmp_int += ((long)pd_ergebnis_roll * Mixer.Motor[i][2]) / 64L; |
// Gier |
if(Mixer.Motor[i][3] == 64) tmp_int += GierMischanteil; |
else if(Mixer.Motor[i][3] == -64) tmp_int -= GierMischanteil; |
else tmp_int += ((long)GierMischanteil * Mixer.Motor[i][3]) / 64L; |
if(tmp_int > tmp_motorwert[i]) tmp_int = (tmp_motorwert[i] + tmp_int) / 2; // MotorSmoothing |
else tmp_int = 2 * tmp_int - tmp_motorwert[i]; // MotorSmoothing |
LIMIT_MIN_MAX(tmp_int,(int) MIN_GAS * 4,(int) MAX_GAS * 4); |
Motor[i].SetPoint = tmp_int / 4; |
Motor[i].SetPointLowerBits = (tmp_int % 4)<<1; // (3 bits total) |
tmp_motorwert[i] = tmp_int; |
} |
else |
{ |
Motor[i].SetPoint = 0; |
Motor[i].SetPointLowerBits = 0; |
} |
} |
} |
/branches/metro/v0.82a metro_Akku+/fc.c.bak |
---|
0,0 → 1,1733 |
/*####################################################################################### |
Flight Control |
#######################################################################################*/ |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + Nur für den privaten Gebrauch / NON-COMMERCIAL USE ONLY |
// + www.MikroKopter.com |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Es gilt für das gesamte Projekt (Hardware, Software, Binärfiles, Sourcecode und Dokumentation), |
// + dass eine Nutzung (auch auszugsweise) nur für den privaten (nicht-kommerziellen) Gebrauch zulässig ist. |
// + Sollten direkte oder indirekte kommerzielle Absichten verfolgt werden, ist mit uns (info@mikrokopter.de) Kontakt |
// + bzgl. der Nutzungsbedingungen aufzunehmen. |
// + Eine kommerzielle Nutzung ist z.B.Verkauf von MikroKoptern, Bestückung und Verkauf von Platinen oder Bausätzen, |
// + Verkauf von Luftbildaufnahmen, usw. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Werden Teile des Quellcodes (mit oder ohne Modifikation) weiterverwendet oder veröffentlicht, |
// + unterliegen sie auch diesen Nutzungsbedingungen und diese Nutzungsbedingungen incl. Copyright müssen dann beiliegen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Sollte die Software (auch auszugesweise) oder sonstige Informationen des MikroKopter-Projekts |
// + auf anderen Webseiten oder sonstigen Medien veröffentlicht werden, muss unsere Webseite "http://www.mikrokopter.de" |
// + eindeutig als Ursprung verlinkt werden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Keine Gewähr auf Fehlerfreiheit, Vollständigkeit oder Funktion |
// + Benutzung auf eigene Gefahr |
// + Wir übernehmen keinerlei Haftung für direkte oder indirekte Personen- oder Sachschäden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Portierung oder Nutzung der Software (oder Teile davon) auf andere Systeme (ausser der Hardware von www.mikrokopter.de) ist nur |
// + mit unserer Zustimmung zulässig |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Funktion printf_P() unterliegt ihrer eigenen Lizenz und ist hiervon nicht betroffen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Redistributions of source code (with or without modifications) must retain the above copyright notice, |
// + this list of conditions and the following disclaimer. |
// + * Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived |
// + from this software without specific prior written permission. |
// + * The use of this project (hardware, software, binary files, sources and documentation) is only permittet |
// + for non-commercial use (directly or indirectly) |
// + Commercial use (for excample: selling of MikroKopters, selling of PCBs, assembly, ...) is only permitted |
// + with our written permission |
// + * If sources or documentations are redistributet on other webpages, out webpage (http://www.MikroKopter.de) must be |
// + clearly linked as origin |
// + * porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
// + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
// + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
// + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
// + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
// + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
// + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
// + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
// + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
// + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
// + POSSIBILITY OF SUCH DAMAGE. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include "main.h" |
#include "mymath.h" |
#include "isqrt.h" |
unsigned char h,m,s; |
unsigned int BaroExpandActive = 0; |
int MesswertNick,MesswertRoll,MesswertGier,MesswertGierBias, RohMesswertNick,RohMesswertRoll; |
int TrimNick, TrimRoll; |
int AdNeutralNick = 0,AdNeutralRoll = 0,AdNeutralGier = 0,StartNeutralRoll = 0,StartNeutralNick = 0; |
int Mittelwert_AccNick, Mittelwert_AccRoll; |
unsigned int NeutralAccX=0, NeutralAccY=0; |
int NaviAccNick, NaviAccRoll,NaviCntAcc = 0; |
int NeutralAccZ = 0; |
unsigned char ControlHeading = 0;// in 2° |
long IntegralNick = 0,IntegralNick2 = 0; |
long IntegralRoll = 0,IntegralRoll2 = 0; |
long IntegralAccNick = 0,IntegralAccRoll = 0,IntegralAccZ = 0; |
long Integral_Gier = 0; |
long Mess_IntegralNick = 0,Mess_IntegralNick2 = 0; |
long Mess_IntegralRoll = 0,Mess_IntegralRoll2 = 0; |
long Mess_Integral_Gier = 0,Mess_Integral_Gier2 = 0; |
long MittelIntegralNick,MittelIntegralRoll,MittelIntegralNick2,MittelIntegralRoll2; |
long SummeNick=0,SummeRoll=0; |
volatile long Mess_Integral_Hoch = 0; |
int KompassValue = 0; |
int KompassStartwert = 0; |
int KompassRichtung = 0; |
unsigned int KompassSignalSchlecht = 500; |
unsigned char MAX_GAS,MIN_GAS; |
unsigned char HoehenReglerAktiv = 0; |
unsigned char TrichterFlug = 0; |
long Umschlag180Nick = 250000L, Umschlag180Roll = 250000L; |
long ErsatzKompass; |
int ErsatzKompassInGrad; // Kompasswert in Grad |
int GierGyroFehler = 0; |
char GyroFaktor,GyroFaktorGier; |
char IntegralFaktor,IntegralFaktorGier; |
int DiffNick,DiffRoll; |
//int Poti1 = 0, Poti2 = 0, Poti3 = 0, Poti4 = 0, Poti5 = 0, Poti6 = 0, Poti7 = 0, Poti8 = 0; |
unsigned char Poti[9] = {0,0,0,0,0,0,0,0}; |
volatile unsigned char SenderOkay = 0; |
int StickNick = 0,StickRoll = 0,StickGier = 0,StickGas = 0; |
char MotorenEin = 0,StartTrigger = 0; |
long HoehenWert = 0; |
long SollHoehe = 0; |
int LageKorrekturRoll = 0,LageKorrekturNick = 0, HoverGas = 0; |
//float Ki = FAKTOR_I; |
int Ki = 10300 / 33; |
unsigned char Looping_Nick = 0,Looping_Roll = 0; |
unsigned char Looping_Links = 0, Looping_Rechts = 0, Looping_Unten = 0, Looping_Oben = 0; |
unsigned char Parameter_Luftdruck_D = 48; // Wert : 0-250 |
unsigned char Parameter_MaxHoehe = 251; // Wert : 0-250 |
unsigned char Parameter_Hoehe_P = 16; // Wert : 0-32 |
unsigned char Parameter_Hoehe_ACC_Wirkung = 58; // Wert : 0-250 |
unsigned char Parameter_KompassWirkung = 64; // Wert : 0-250 |
unsigned char Parameter_Hoehe_GPS_Z = 64; // Wert : 0-250 |
unsigned char Parameter_Gyro_D = 8; // Wert : 0-250 |
unsigned char Parameter_Gyro_P = 150; // Wert : 10-250 |
unsigned char Parameter_Gyro_I = 150; // Wert : 0-250 |
unsigned char Parameter_Gyro_Gier_P = 150; // Wert : 10-250 |
unsigned char Parameter_Gyro_Gier_I = 150; // Wert : 10-250 |
unsigned char Parameter_Gier_P = 2; // Wert : 1-20 |
unsigned char Parameter_I_Faktor = 10; // Wert : 1-20 |
unsigned char Parameter_UserParam1 = 0; |
unsigned char Parameter_UserParam2 = 0; |
unsigned char Parameter_UserParam3 = 0; |
unsigned char Parameter_UserParam4 = 0; |
unsigned char Parameter_UserParam5 = 0; |
unsigned char Parameter_UserParam6 = 0; |
unsigned char Parameter_UserParam7 = 0; |
unsigned char Parameter_UserParam8 = 0; |
unsigned char Parameter_ServoNickControl = 100; |
unsigned char Parameter_ServoRollControl = 100; |
unsigned char Parameter_LoopGasLimit = 70; |
unsigned char Parameter_AchsKopplung1 = 90; |
unsigned char Parameter_AchsKopplung2 = 65; |
unsigned char Parameter_CouplingYawCorrection = 64; |
//unsigned char Parameter_AchsGegenKopplung1 = 0; |
unsigned char Parameter_DynamicStability = 100; |
unsigned char Parameter_J16Bitmask; // for the J16 Output |
unsigned char Parameter_J16Timing; // for the J16 Output |
unsigned char Parameter_J17Bitmask; // for the J17 Output |
unsigned char Parameter_J17Timing; // for the J17 Output |
unsigned char Parameter_NaviGpsModeControl; // Parameters for the Naviboard |
unsigned char Parameter_NaviGpsGain; |
unsigned char Parameter_NaviGpsP; |
unsigned char Parameter_NaviGpsI; |
unsigned char Parameter_NaviGpsD; |
unsigned char Parameter_NaviGpsACC; |
unsigned char Parameter_NaviOperatingRadius; |
unsigned char Parameter_NaviWindCorrection; |
unsigned char Parameter_NaviSpeedCompensation; |
unsigned char Parameter_ExternalControl; |
unsigned char Parameter_Servo3,Parameter_Servo4,Parameter_Servo5; |
unsigned char CareFree = 0; |
const signed char sintab[31] = { 0, 2, 4, 6, 7, 8, 8, 8, 7, 6, 4, 2, 0, -2, -4, -6, -7, -8, -8, -8, -7, -6, -4, -2, 0, 2, 4, 6, 7, 8, 8}; |
signed int ExternStickNick = 0,ExternStickRoll = 0,ExternStickGier = 0, ExternHoehenValue = -20; |
int MaxStickNick = 0,MaxStickRoll = 0; |
unsigned int modell_fliegt = 0; |
volatile unsigned char FC_StatusFlags = 0; |
long GIER_GRAD_FAKTOR = 1291; |
signed int KopplungsteilNickRoll,KopplungsteilRollNick; |
signed int tmp_motorwert[MAX_MOTORS]; |
char VarioCharacter = ' '; |
#define LIMIT_MIN(value, min) {if(value <= min) value = min;} |
#define LIMIT_MAX(value, max) {if(value >= max) value = max;} |
#define LIMIT_MIN_MAX(value, min, max) {if(value <= min) value = min; else if(value >= max) value = max;} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Debugwerte zuordnen |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
void CopyDebugValues(void) |
{ |
DebugOut.Analog[0] = IntegralNick / (EE_Parameter.GyroAccFaktor * 4); |
DebugOut.Analog[1] = IntegralRoll / (EE_Parameter.GyroAccFaktor * 4); |
DebugOut.Analog[2] = Mittelwert_AccNick / 4; |
DebugOut.Analog[3] = Mittelwert_AccRoll / 4; |
DebugOut.Analog[4] = (signed int) AdNeutralGier - AdWertGier; |
DebugOut.Analog[5] = HoehenWert/5; |
DebugOut.Analog[6] = AdWertAccHoch;//(Mess_Integral_Hoch / 512);// Aktuell_az; |
DebugOut.Analog[8] = KompassValue; |
DebugOut.Analog[9] = UBat; |
DebugOut.Analog[10] = SenderOkay; |
DebugOut.Analog[11] = ErsatzKompass / GIER_GRAD_FAKTOR; |
DebugOut.Analog[12] = Motor[0].SetPoint; |
DebugOut.Analog[13] = Motor[1].SetPoint; |
DebugOut.Analog[14] = Motor[2].SetPoint; |
DebugOut.Analog[15] = Motor[3].SetPoint; |
DebugOut.Analog[20] = ServoNickValue; |
DebugOut.Analog[22] = Capacity.ActualCurrent; |
DebugOut.Analog[23] = Capacity.UsedCapacity; |
DebugOut.Analog[24] =Capacity.RemainCapacity; |
// DebugOut.Analog[22] = FromNaviCtrl_Value.GpsZ; |
// DebugOut.Analog[29] = FromNaviCtrl_Value.SerialDataOkay; |
DebugOut.Analog[29] = Capacity.MinOfMaxPWM; |
DebugOut.Analog[30] = GPS_Nick; |
DebugOut.Analog[31] = GPS_Roll; |
if(VersionInfo.HardwareError[0] || VersionInfo.HardwareError[1]) DebugOut.Status[1] |= 1; else DebugOut.Status[1] &= 0xfe; |
//if(Capacity.MinOfMaxPWM < 250/* && modell_fliegt > 500*/) { beeptime = 1000; DebugOut.Analog[25]++; } |
} |
void Piep(unsigned char Anzahl, unsigned int dauer) |
{ |
if(MotorenEin) return; //auf keinen Fall im Flug! |
while(Anzahl--) |
{ |
beeptime = dauer; |
while(beeptime); |
Delay_ms(dauer * 2); |
} |
} |
//############################################################################ |
// Messwerte beim Ermitteln der Nullage |
void CalibrierMittelwert(void) |
//############################################################################ |
{ |
unsigned char i; |
if(PlatinenVersion == 13) SucheGyroOffset(); |
// ADC auschalten, damit die Werte sich nicht während der Berechnung ändern |
ANALOG_OFF; |
MesswertNick = AdWertNick; |
MesswertRoll = AdWertRoll; |
MesswertGier = AdWertGier; |
Mittelwert_AccNick = ACC_AMPLIFY * AdWertAccNick; |
Mittelwert_AccRoll = ACC_AMPLIFY * AdWertAccRoll; |
// ADC einschalten |
ANALOG_ON; |
for(i=0;i<8;i++) |
{ |
int tmp; |
tmp = PPM_in[EE_Parameter.Kanalbelegung[K_POTI1 + i]] + 110; |
LIMIT_MIN_MAX(tmp, 0, 255); |
if(Poti[i] > tmp) Poti[i]--; else if(Poti[i] < tmp) Poti[i]++; |
} |
Umschlag180Nick = (long) EE_Parameter.WinkelUmschlagNick * 2500L; |
Umschlag180Roll = (long) EE_Parameter.WinkelUmschlagRoll * 2500L; |
} |
//############################################################################ |
// Nullwerte ermitteln |
void SetNeutral(unsigned char AccAdjustment) |
//############################################################################ |
{ |
unsigned char i; |
unsigned int gier_neutral=0, nick_neutral=0, roll_neutral=0; |
VersionInfo.HardwareError[0] = 0; |
HEF4017R_ON; |
NeutralAccX = 0; |
NeutralAccY = 0; |
NeutralAccZ = 0; |
AdNeutralNick = 0; |
AdNeutralRoll = 0; |
AdNeutralGier = 0; |
Parameter_AchsKopplung1 = 0; |
Parameter_AchsKopplung2 = 0; |
ExpandBaro = 0; |
CalibrierMittelwert(); |
Delay_ms_Mess(100); |
CalibrierMittelwert(); |
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)) // Höhenregelung aktiviert? |
{ |
if((MessLuftdruck > 950) || (MessLuftdruck < 750)) SucheLuftruckOffset(); |
} |
#define NEUTRAL_FILTER 32 |
for(i=0; i<NEUTRAL_FILTER; i++) |
{ |
Delay_ms_Mess(10); |
gier_neutral += AdWertGier; |
nick_neutral += AdWertNick; |
roll_neutral += AdWertRoll; |
} |
AdNeutralNick= (nick_neutral+NEUTRAL_FILTER/2) / (NEUTRAL_FILTER / 8); |
AdNeutralRoll= (roll_neutral+NEUTRAL_FILTER/2) / (NEUTRAL_FILTER / 8); |
AdNeutralGier= (gier_neutral+NEUTRAL_FILTER/2) / (NEUTRAL_FILTER); |
StartNeutralRoll = AdNeutralRoll; |
StartNeutralNick = AdNeutralNick; |
if(AccAdjustment) |
{ |
NeutralAccX = abs(Mittelwert_AccNick) / (2*ACC_AMPLIFY); |
NeutralAccY = abs(Mittelwert_AccRoll) / (2*ACC_AMPLIFY); |
NeutralAccZ = Aktuell_az; |
// Save ACC neutral settings to eeprom |
SetParamWord(PID_ACC_NICK, (uint16_t)NeutralAccX); |
SetParamWord(PID_ACC_ROLL, (uint16_t)NeutralAccY); |
SetParamWord(PID_ACC_TOP, (uint16_t)NeutralAccZ); |
} |
else |
{ |
// restore from eeprom |
NeutralAccX = (int16_t)GetParamWord(PID_ACC_NICK); |
NeutralAccY = (int16_t)GetParamWord(PID_ACC_ROLL); |
NeutralAccZ = (int16_t)GetParamWord(PID_ACC_TOP); |
// strange settings? |
if(((unsigned int) NeutralAccX > 2048) || ((unsigned int) NeutralAccY > 2048) || ((unsigned int) NeutralAccZ > 1024)) |
{ |
printf("\n\rACC not calibrated!\r\n"); |
NeutralAccX = abs(Mittelwert_AccNick) / (2*ACC_AMPLIFY); |
NeutralAccY = abs(Mittelwert_AccRoll) / (2*ACC_AMPLIFY); |
NeutralAccZ = Aktuell_az; |
} |
} |
MesswertNick = 0; |
MesswertRoll = 0; |
MesswertGier = 0; |
Delay_ms_Mess(100); |
Mittelwert_AccNick = ACC_AMPLIFY * AdWertAccNick; |
Mittelwert_AccRoll = ACC_AMPLIFY * AdWertAccRoll; |
IntegralNick = EE_Parameter.GyroAccFaktor * (long)Mittelwert_AccNick; |
IntegralRoll = EE_Parameter.GyroAccFaktor * (long)Mittelwert_AccRoll; |
Mess_IntegralNick2 = IntegralNick; |
Mess_IntegralRoll2 = IntegralRoll; |
Mess_Integral_Gier = 0; |
StartLuftdruck = Luftdruck; |
VarioMeter = 0; |
Mess_Integral_Hoch = 0; |
KompassStartwert = KompassValue; |
GPS_Neutral(); |
beeptime = 50; |
Umschlag180Nick = ((long) EE_Parameter.WinkelUmschlagNick * 2500L) + 15000L; |
Umschlag180Roll = ((long) EE_Parameter.WinkelUmschlagRoll * 2500L) + 15000L; |
ExternHoehenValue = 0; |
ErsatzKompass = KompassValue * GIER_GRAD_FAKTOR; |
GierGyroFehler = 0; |
SendVersionToNavi = 1; |
LED_Init(); |
FC_StatusFlags |= FC_STATUS_CALIBRATE; |
FromNaviCtrl_Value.Kalman_K = -1; |
FromNaviCtrl_Value.Kalman_MaxDrift = 0; |
FromNaviCtrl_Value.Kalman_MaxFusion = 32; |
for(i=0;i<8;i++) |
{ |
Poti[i] = PPM_in[EE_Parameter.Kanalbelegung[K_POTI1 + i]] + 110; |
} |
SenderOkay = 100; |
if(ServoActive) |
{ |
HEF4017R_ON; |
DDRD |=0x80; // enable J7 -> Servo signal |
} |
if((AdNeutralNick < 150 * 16) || (AdNeutralNick > 850 * 16)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_NICK; }; |
if((AdNeutralRoll < 150 * 16) || (AdNeutralRoll > 850 * 16)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_ROLL; }; |
if((AdNeutralGier < 150 * 2) || (AdNeutralGier > 850 * 2)) { VersionInfo.HardwareError[0] |= FC_ERROR0_GYRO_YAW; }; |
if((NeutralAccX < 300) || (NeutralAccX > 750)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_NICK; }; |
if((NeutralAccY < 300) || (NeutralAccY > 750)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_ROLL; }; |
if((NeutralAccZ < 512) || (NeutralAccZ > 850)) { VersionInfo.HardwareError[0] |= FC_ERROR0_ACC_TOP; }; |
} |
//############################################################################ |
// Bearbeitet die Messwerte |
void Mittelwert(void) |
//############################################################################ |
{ |
static signed long tmpl,tmpl2,tmpl3,tmpl4; |
static signed int oldNick, oldRoll, d2Roll, d2Nick; |
signed long winkel_nick, winkel_roll; |
// unsigned char i; |
MesswertGier = (signed int) AdNeutralGier - AdWertGier; |
MesswertNick = (signed int) AdWertNickFilter / 8; |
MesswertRoll = (signed int) AdWertRollFilter / 8; |
RohMesswertNick = MesswertNick; |
RohMesswertRoll = MesswertRoll; |
// Beschleunigungssensor ++++++++++++++++++++++++++++++++++++++++++++++++ |
Mittelwert_AccNick = (Mittelwert_AccNick * 3 + ((ACC_AMPLIFY * AdWertAccNick))) / 4L; |
Mittelwert_AccRoll = (Mittelwert_AccRoll * 3 + ((ACC_AMPLIFY * AdWertAccRoll))) / 4L; |
IntegralAccNick += ACC_AMPLIFY * AdWertAccNick; |
IntegralAccRoll += ACC_AMPLIFY * AdWertAccRoll; |
NaviAccNick += AdWertAccNick; |
NaviAccRoll += AdWertAccRoll; |
NaviCntAcc++; |
IntegralAccZ += Aktuell_az - NeutralAccZ; |
//++++++++++++++++++++++++++++++++++++++++++++++++ |
// ADC einschalten |
ANALOG_ON; |
AdReady = 0; |
//++++++++++++++++++++++++++++++++++++++++++++++++ |
if(Mess_IntegralRoll > 93000L) winkel_roll = 93000L; |
else if(Mess_IntegralRoll <-93000L) winkel_roll = -93000L; |
else winkel_roll = Mess_IntegralRoll; |
if(Mess_IntegralNick > 93000L) winkel_nick = 93000L; |
else if(Mess_IntegralNick <-93000L) winkel_nick = -93000L; |
else winkel_nick = Mess_IntegralNick; |
// Gier ++++++++++++++++++++++++++++++++++++++++++++++++ |
Mess_Integral_Gier += MesswertGier; |
ErsatzKompass += MesswertGier; |
// Kopplungsanteil +++++++++++++++++++++++++++++++++++++ |
if(!Looping_Nick && !Looping_Roll && (EE_Parameter.GlobalConfig & CFG_ACHSENKOPPLUNG_AKTIV)) |
{ |
tmpl3 = (MesswertRoll * winkel_nick) / 2048L; |
tmpl3 *= Parameter_AchsKopplung2; //65 |
tmpl3 /= 4096L; |
tmpl4 = (MesswertNick * winkel_roll) / 2048L; |
tmpl4 *= Parameter_AchsKopplung2; //65 |
tmpl4 /= 4096L; |
KopplungsteilNickRoll = tmpl3; |
KopplungsteilRollNick = tmpl4; |
tmpl4 -= tmpl3; |
ErsatzKompass += tmpl4; |
if(!Parameter_CouplingYawCorrection) Mess_Integral_Gier -= tmpl4/2; // Gier nachhelfen |
tmpl = ((MesswertGier + tmpl4) * winkel_nick) / 2048L; |
tmpl *= Parameter_AchsKopplung1; // 90 |
tmpl /= 4096L; |
tmpl2 = ((MesswertGier + tmpl4) * winkel_roll) / 2048L; |
tmpl2 *= Parameter_AchsKopplung1; |
tmpl2 /= 4096L; |
if(abs(MesswertGier) > 64) if(labs(tmpl) > 128 || labs(tmpl2) > 128) TrichterFlug = 1; |
//MesswertGier += (Parameter_CouplingYawCorrection * tmpl4) / 256; |
} |
else tmpl = tmpl2 = KopplungsteilNickRoll = KopplungsteilRollNick = 0; |
TrimRoll = tmpl - tmpl2 / 100L; |
TrimNick = -tmpl2 + tmpl / 100L; |
// Kompasswert begrenzen ++++++++++++++++++++++++++++++++++++++++++++++++ |
if(ErsatzKompass >= (360L * GIER_GRAD_FAKTOR)) ErsatzKompass -= 360L * GIER_GRAD_FAKTOR; // 360° Umschlag |
if(ErsatzKompass < 0) ErsatzKompass += 360L * GIER_GRAD_FAKTOR; |
// Roll ++++++++++++++++++++++++++++++++++++++++++++++++ |
Mess_IntegralRoll2 += MesswertRoll + TrimRoll; |
Mess_IntegralRoll += MesswertRoll + TrimRoll - LageKorrekturRoll; |
if(Mess_IntegralRoll > Umschlag180Roll) |
{ |
Mess_IntegralRoll = -(Umschlag180Roll - 25000L); |
Mess_IntegralRoll2 = Mess_IntegralRoll; |
} |
if(Mess_IntegralRoll <-Umschlag180Roll) |
{ |
Mess_IntegralRoll = (Umschlag180Roll - 25000L); |
Mess_IntegralRoll2 = Mess_IntegralRoll; |
} |
// Nick ++++++++++++++++++++++++++++++++++++++++++++++++ |
Mess_IntegralNick2 += MesswertNick + TrimNick; |
Mess_IntegralNick += MesswertNick + TrimNick - LageKorrekturNick; |
if(Mess_IntegralNick > Umschlag180Nick) |
{ |
Mess_IntegralNick = -(Umschlag180Nick - 25000L); |
Mess_IntegralNick2 = Mess_IntegralNick; |
} |
if(Mess_IntegralNick <-Umschlag180Nick) |
{ |
Mess_IntegralNick = (Umschlag180Nick - 25000L); |
Mess_IntegralNick2 = Mess_IntegralNick; |
} |
Integral_Gier = Mess_Integral_Gier; |
IntegralNick = Mess_IntegralNick; |
IntegralRoll = Mess_IntegralRoll; |
IntegralNick2 = Mess_IntegralNick2; |
IntegralRoll2 = Mess_IntegralRoll2; |
#define D_LIMIT 128 |
MesswertNick = HiResNick / 8; |
MesswertRoll = HiResRoll / 8; |
if(AdWertNick < 15) MesswertNick = -1000; if(AdWertNick < 7) MesswertNick = -2000; |
if(PlatinenVersion == 10) { if(AdWertNick > 1010) MesswertNick = +1000; if(AdWertNick > 1017) MesswertNick = +2000; } |
else { if(AdWertNick > 2000) MesswertNick = +1000; if(AdWertNick > 2015) MesswertNick = +2000; } |
if(AdWertRoll < 15) MesswertRoll = -1000; if(AdWertRoll < 7) MesswertRoll = -2000; |
if(PlatinenVersion == 10) { if(AdWertRoll > 1010) MesswertRoll = +1000; if(AdWertRoll > 1017) MesswertRoll = +2000; } |
else { if(AdWertRoll > 2000) MesswertRoll = +1000; if(AdWertRoll > 2015) MesswertRoll = +2000; } |
if(Parameter_Gyro_D) |
{ |
d2Nick = HiResNick - oldNick; |
oldNick = (oldNick + HiResNick)/2; |
if(d2Nick > D_LIMIT) d2Nick = D_LIMIT; |
else if(d2Nick < -D_LIMIT) d2Nick = -D_LIMIT; |
d2Roll = HiResRoll - oldRoll; |
oldRoll = (oldRoll + HiResRoll)/2; |
if(d2Roll > D_LIMIT) d2Roll = D_LIMIT; |
else if(d2Roll < -D_LIMIT) d2Roll = -D_LIMIT; |
MesswertNick += (d2Nick * (signed int) Parameter_Gyro_D) / 16; |
MesswertRoll += (d2Roll * (signed int) Parameter_Gyro_D) / 16; |
HiResNick += (d2Nick * (signed int) Parameter_Gyro_D); |
HiResRoll += (d2Roll * (signed int) Parameter_Gyro_D); |
} |
if(RohMesswertRoll > 0) TrimRoll += ((long) abs(KopplungsteilNickRoll) * Parameter_CouplingYawCorrection) / 64L; |
else TrimRoll -= ((long) abs(KopplungsteilNickRoll) * Parameter_CouplingYawCorrection) / 64L; |
if(RohMesswertNick > 0) TrimNick += ((long) abs(KopplungsteilRollNick) * Parameter_CouplingYawCorrection) / 64L; |
else TrimNick -= ((long) abs(KopplungsteilRollNick) * Parameter_CouplingYawCorrection) / 64L; |
if(EE_Parameter.GlobalConfig & CFG_DREHRATEN_BEGRENZER && !Looping_Nick && !Looping_Roll) |
{ |
if(RohMesswertNick > 256) MesswertNick += 1 * (RohMesswertNick - 256); |
else if(RohMesswertNick < -256) MesswertNick += 1 * (RohMesswertNick + 256); |
if(RohMesswertRoll > 256) MesswertRoll += 1 * (RohMesswertRoll - 256); |
else if(RohMesswertRoll < -256) MesswertRoll += 1 * (RohMesswertRoll + 256); |
} |
} |
//############################################################################ |
// Senden der Motorwerte per I2C-Bus |
void SendMotorData(void) |
//############################################################################ |
{ |
unsigned char i; |
if(!MotorenEin) |
{ |
FC_StatusFlags &= ~(FC_STATUS_MOTOR_RUN | FC_STATUS_FLY); |
for(i=0;i<MAX_MOTORS;i++) |
{ |
if(!PC_MotortestActive) MotorTest[i] = 0; |
Motor[i].SetPoint = MotorTest[i]; |
Motor[i].SetPointLowerBits = 0; |
/* |
Motor[i].SetPoint = MotorTest[i] / 4; // testing the high resolution |
Motor[i].SetPointLowerBits = MotorTest[i] % 4; |
*/ |
} |
if(PC_MotortestActive) PC_MotortestActive--; |
} |
else FC_StatusFlags |= FC_STATUS_MOTOR_RUN; |
if(I2C_TransferActive) |
{ |
I2C_TransferActive = 0; // enable for the next time |
} |
else |
{ |
motor_write = 0; |
I2C_Start(TWI_STATE_MOTOR_TX); //Start I2C Interrupt Mode |
} |
} |
//############################################################################ |
// Trägt ggf. das Poti als Parameter ein |
void ParameterZuordnung(void) |
//############################################################################ |
{ |
unsigned char tmp,i; |
#define CHK_POTI(b,a) {if(a < 248) b = a; else b = Poti[255 - a];} |
#define CHK_POTI_MM(b,a,min,max) {CHK_POTI(b,a); LIMIT_MIN_MAX(b, min, max);} |
for(i=0;i<8;i++) |
{ |
int tmp2; |
tmp2 = PPM_in[EE_Parameter.Kanalbelegung[K_POTI1 + i]] + 110; |
if(tmp2 > 255) tmp2 = 255; else if(tmp2 < 0) tmp2 = 0; |
if(tmp2 != Poti[i]) |
{ |
Poti[i] += (tmp2 - Poti[i]) / 4; |
if(Poti[i] > tmp2) Poti[i]--; |
else Poti[i]++; |
} |
} |
CHK_POTI_MM(Parameter_Luftdruck_D,EE_Parameter.Luftdruck_D,0,100); |
CHK_POTI_MM(Parameter_Hoehe_P,EE_Parameter.Hoehe_P,0,100); |
CHK_POTI_MM(Parameter_Gyro_P,EE_Parameter.Gyro_P,10,255); |
CHK_POTI_MM(Parameter_J16Timing,EE_Parameter.J16Timing,1,255); |
CHK_POTI_MM(Parameter_J17Timing,EE_Parameter.J17Timing,1,255); |
CHK_POTI(Parameter_Servo3,EE_Parameter.Servo3); |
CHK_POTI(Parameter_Servo4,EE_Parameter.Servo4); |
CHK_POTI(Parameter_Servo5,EE_Parameter.Servo5); |
CHK_POTI(Parameter_MaxHoehe,EE_Parameter.MaxHoehe); |
CHK_POTI(Parameter_MaxHoehe,EE_Parameter.MaxHoehe); |
CHK_POTI(Parameter_Hoehe_ACC_Wirkung,EE_Parameter.Hoehe_ACC_Wirkung); |
CHK_POTI(Parameter_Hoehe_GPS_Z,EE_Parameter.Hoehe_GPS_Z); |
CHK_POTI(Parameter_KompassWirkung,EE_Parameter.KompassWirkung); |
CHK_POTI(Parameter_Gyro_I,EE_Parameter.Gyro_I); |
CHK_POTI(Parameter_Gyro_D,EE_Parameter.Gyro_D); |
CHK_POTI(Parameter_Gyro_Gier_P,EE_Parameter.Gyro_Gier_P); |
CHK_POTI(Parameter_Gyro_Gier_I,EE_Parameter.Gyro_Gier_I); |
CHK_POTI(Parameter_I_Faktor,EE_Parameter.I_Faktor); |
CHK_POTI(Parameter_UserParam1,EE_Parameter.UserParam1); |
CHK_POTI(Parameter_UserParam2,EE_Parameter.UserParam2); |
CHK_POTI(Parameter_UserParam3,EE_Parameter.UserParam3); |
CHK_POTI(Parameter_UserParam4,EE_Parameter.UserParam4); |
CHK_POTI(Parameter_UserParam5,EE_Parameter.UserParam5); |
CHK_POTI(Parameter_UserParam6,EE_Parameter.UserParam6); |
CHK_POTI(Parameter_UserParam7,EE_Parameter.UserParam7); |
CHK_POTI(Parameter_UserParam8,EE_Parameter.UserParam8); |
CHK_POTI(Parameter_ServoNickControl,EE_Parameter.ServoNickControl); |
CHK_POTI(Parameter_ServoRollControl,EE_Parameter.ServoRollControl); |
CHK_POTI(Parameter_LoopGasLimit,EE_Parameter.LoopGasLimit); |
CHK_POTI(Parameter_AchsKopplung1,EE_Parameter.AchsKopplung1); |
CHK_POTI(Parameter_AchsKopplung2,EE_Parameter.AchsKopplung2); |
CHK_POTI(Parameter_CouplingYawCorrection,EE_Parameter.CouplingYawCorrection); |
// CHK_POTI(Parameter_AchsGegenKopplung1,EE_Parameter.AchsGegenKopplung1,0,255); |
CHK_POTI(Parameter_DynamicStability,EE_Parameter.DynamicStability); |
CHK_POTI(Parameter_ExternalControl,EE_Parameter.ExternalControl); |
Ki = 10300 / (Parameter_I_Faktor + 1); |
MAX_GAS = EE_Parameter.Gas_Max; |
MIN_GAS = EE_Parameter.Gas_Min; |
tmp = EE_Parameter.OrientationModeControl; |
if(tmp > 50) |
{ |
#ifdef SWITCH_LEARNS_CAREFREE |
if(!CareFree) ControlHeading = (((int) EE_Parameter.OrientationAngle * 15 + KompassValue) % 360) / 2; |
#endif |
CareFree = 1; |
if(tmp >= 248 && Poti[255 - tmp] < 50) CareFree = 0; |
if(FromNaviCtrl.CompassValue < 0 && CareFree) VersionInfo.HardwareError[0] |= FC_ERROR0_CAREFREE; else VersionInfo.HardwareError[0] &= ~FC_ERROR0_CAREFREE; |
} |
else CareFree = 0; |
if(FromNaviCtrl.CompassValue < 0 && MotorenEin && CareFree && BeepMuster == 0xffff) // ungültiger Kompasswert |
{ |
beeptime = 15000; |
BeepMuster = 0xA400; |
CareFree = 0; |
} |
if(CareFree) {if(Parameter_AchsKopplung1 < 210) Parameter_AchsKopplung1 += 30;} |
} |
//############################################################################ |
// |
void MotorRegler(void) |
//############################################################################ |
{ |
int pd_ergebnis_nick,pd_ergebnis_roll,tmp_int, tmp_int2; |
int GierMischanteil,GasMischanteil; |
static long sollGier = 0,tmp_long,tmp_long2; |
static long IntegralFehlerNick = 0; |
static long IntegralFehlerRoll = 0; |
static unsigned int RcLostTimer; |
static unsigned char delay_neutral = 0; |
static unsigned char delay_einschalten = 0,delay_ausschalten = 0; |
static unsigned char calibration_done = 0; |
static char NeueKompassRichtungMerken = 0; |
static long ausgleichNick, ausgleichRoll; |
int IntegralNickMalFaktor,IntegralRollMalFaktor; |
unsigned char i; |
Mittelwert(); |
GRN_ON; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gaswert ermitteln |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
GasMischanteil = StickGas; |
if(GasMischanteil < MIN_GAS + 10) GasMischanteil = MIN_GAS + 10; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Empfang schlecht |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(SenderOkay < 100) |
{ |
if(RcLostTimer) RcLostTimer--; |
else |
{ |
MotorenEin = 0; |
FC_StatusFlags &= ~FC_STATUS_EMERGENCY_LANDING; |
} |
ROT_ON; |
if(modell_fliegt > 1000) // wahrscheinlich in der Luft --> langsam absenken |
{ |
GasMischanteil = EE_Parameter.NotGas; |
FC_StatusFlags |= FC_STATUS_EMERGENCY_LANDING; |
PPM_diff[EE_Parameter.Kanalbelegung[K_NICK]] = 0; |
PPM_diff[EE_Parameter.Kanalbelegung[K_ROLL]] = 0; |
PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] = 0; |
PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] = 0; |
PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] = 0; |
} |
else MotorenEin = 0; |
} |
else |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Emfang gut |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(SenderOkay > 140) |
{ |
FC_StatusFlags &= ~FC_STATUS_EMERGENCY_LANDING; |
RcLostTimer = EE_Parameter.NotGasZeit * 50; |
if(GasMischanteil > 40 && MotorenEin) |
{ |
if(modell_fliegt < 0xffff) modell_fliegt++; |
} |
if((modell_fliegt < 256)) |
{ |
SummeNick = 0; |
SummeRoll = 0; |
sollGier = 0; |
Mess_Integral_Gier = 0; |
if(modell_fliegt == 250) |
{ |
NeueKompassRichtungMerken = 1; |
} |
} else FC_StatusFlags |= FC_STATUS_FLY; |
if((PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] > 80) && MotorenEin == 0) |
{ |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// auf Nullwerte kalibrieren |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] > 75) // Neutralwerte |
{ |
if(++delay_neutral > 200) // nicht sofort |
{ |
GRN_OFF; |
MotorenEin = 0; |
delay_neutral = 0; |
modell_fliegt = 0; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > 70 || abs(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]) > 70) |
{ |
unsigned char setting=1; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] > 70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < 70) setting = 1; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] > 70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > 70) setting = 2; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] < 70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > 70) setting = 3; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] <-70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > 70) setting = 4; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] <-70 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < 70) setting = 5; |
SetActiveParamSet(setting); // aktiven Datensatz merken |
} |
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]) < 30 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < -70) |
{ |
WinkelOut.CalcState = 1; |
beeptime = 1000; |
} |
else |
{ |
ParamSet_ReadFromEEProm(GetActiveParamSet()); |
LipoDetection(0); |
LIBFC_ReceiverInit(EE_Parameter.Receiver); |
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)) // Höhenregelung aktiviert? |
{ |
if((MessLuftdruck > 950) || (MessLuftdruck < 750)) SucheLuftruckOffset(); |
} |
ServoActive = 0; |
SetNeutral(0); |
calibration_done = 1; |
ServoActive = 1; |
DDRD |=0x80; // enable J7 -> Servo signal |
Piep(GetActiveParamSet(),120); |
} |
} |
} |
else |
if(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] < -75) // ACC Neutralwerte speichern |
{ |
if(++delay_neutral > 200) // nicht sofort |
{ |
GRN_OFF; |
MotorenEin = 0; |
delay_neutral = 0; |
modell_fliegt = 0; |
SetNeutral(1); |
calibration_done = 1; |
Piep(GetActiveParamSet(),120); |
} |
} |
else delay_neutral = 0; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gas ist unten |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] < 35-120) |
{ |
// Motoren Starten |
if(!MotorenEin) |
{ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] < -75) && (PPM_in[EE_Parameter.MotorSafetySwitch] < -75 || EE_Parameter.MotorSafetySwitch == 0)) |
{ |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Einschalten |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(++delay_einschalten > 200) |
{ |
delay_einschalten = 0; |
if(!VersionInfo.HardwareError[0] && calibration_done) |
{ |
modell_fliegt = 1; |
MotorenEin = 1; |
sollGier = 0; |
Mess_Integral_Gier = 0; |
Mess_Integral_Gier2 = 0; |
Mess_IntegralNick = EE_Parameter.GyroAccFaktor * (long)Mittelwert_AccNick; |
Mess_IntegralRoll = EE_Parameter.GyroAccFaktor * (long)Mittelwert_AccRoll; |
Mess_IntegralNick2 = IntegralNick; |
Mess_IntegralRoll2 = IntegralRoll; |
SummeNick = 0; |
SummeRoll = 0; |
FC_StatusFlags |= FC_STATUS_START; |
ControlHeading = (((int) EE_Parameter.OrientationAngle * 15 + KompassValue) % 360) / 2; |
} |
else |
{ |
beeptime = 1500; // indicate missing calibration |
} |
} |
} |
else delay_einschalten = 0; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Auschalten |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
else // only if motors are running |
{ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] > 75) && (PPM_in[EE_Parameter.MotorSafetySwitch] < -75 || EE_Parameter.MotorSafetySwitch == 0)) |
{ |
if(++delay_ausschalten > 200) // nicht sofort |
{ |
MotorenEin = 0; |
delay_ausschalten = 0; |
modell_fliegt = 0; |
} |
} |
else delay_ausschalten = 0; |
} |
} |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// neue Werte von der Funke |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(!NewPpmData-- || (FC_StatusFlags & FC_STATUS_EMERGENCY_LANDING)) |
{ |
static int stick_nick,stick_roll; |
ParameterZuordnung(); |
stick_nick = (stick_nick * 3 + PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] * EE_Parameter.Stick_P) / 4; |
stick_nick += PPM_diff[EE_Parameter.Kanalbelegung[K_NICK]] * EE_Parameter.Stick_D; |
stick_roll = (stick_roll * 3 + PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] * EE_Parameter.Stick_P) / 4; |
stick_roll += PPM_diff[EE_Parameter.Kanalbelegung[K_ROLL]] * EE_Parameter.Stick_D; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// CareFree und freie Wahl der vorderen Richtung |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(CareFree) |
{ |
signed int nick, roll; |
nick = stick_nick / 4; |
roll = stick_roll / 4; |
StickNick = ((FromNC_Rotate_C * nick) + (FromNC_Rotate_S * roll)) / (32 / 4); |
StickRoll = ((FromNC_Rotate_C * roll) - (FromNC_Rotate_S * nick)) / (32 / 4); |
} |
else |
{ |
FromNC_Rotate_C = sintab[EE_Parameter.OrientationAngle + 6]; |
FromNC_Rotate_S = sintab[EE_Parameter.OrientationAngle]; |
StickNick = ((FromNC_Rotate_C * stick_nick) + (FromNC_Rotate_S * stick_roll)) / 8; |
StickRoll = ((FromNC_Rotate_C * stick_roll) - (FromNC_Rotate_S * stick_nick)) / 8; |
} |
StickGier = -PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]; |
if(StickGier > 2) StickGier -= 2; else |
if(StickGier < -2) StickGier += 2; else StickGier = 0; |
StickNick -= (GPS_Nick + GPS_Nick2); |
StickRoll -= (GPS_Roll + GPS_Roll2); |
StickGas = PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] + 120; |
GyroFaktor = (Parameter_Gyro_P + 10.0); |
IntegralFaktor = Parameter_Gyro_I; |
GyroFaktorGier = (Parameter_Gyro_Gier_P + 10.0); |
IntegralFaktorGier = Parameter_Gyro_Gier_I; |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
//+ Analoge Steuerung per Seriell |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(ExternControl.Config & 0x01 && Parameter_ExternalControl > 128) |
{ |
StickNick += (int) ExternControl.Nick * (int) EE_Parameter.Stick_P; |
StickRoll += (int) ExternControl.Roll * (int) EE_Parameter.Stick_P; |
StickGier += ExternControl.Gier; |
ExternHoehenValue = (int) ExternControl.Hight * (int)EE_Parameter.Hoehe_Verstaerkung; |
if(ExternControl.Gas < StickGas) StickGas = ExternControl.Gas; |
} |
if(StickGas < 0) StickGas = 0; |
if(EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) IntegralFaktor = 0; |
if(abs(StickNick/STICK_GAIN) > MaxStickNick) |
{ |
MaxStickNick = abs(StickNick)/STICK_GAIN; |
if(MaxStickNick > 100) MaxStickNick = 100; |
} |
else MaxStickNick--; |
if(abs(StickRoll/STICK_GAIN) > MaxStickRoll) |
{ |
MaxStickRoll = abs(StickRoll)/STICK_GAIN; |
if(MaxStickRoll > 100) MaxStickRoll = 100; |
} |
else MaxStickRoll--; |
if(FC_StatusFlags & FC_STATUS_EMERGENCY_LANDING) {MaxStickNick = 0; MaxStickRoll = 0;} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Looping? |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] > EE_Parameter.LoopThreshold) && EE_Parameter.BitConfig & CFG_LOOP_LINKS) Looping_Links = 1; |
else |
{ |
{ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] < (EE_Parameter.LoopThreshold - EE_Parameter.LoopHysterese))) Looping_Links = 0; |
} |
} |
if((PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] < -EE_Parameter.LoopThreshold) && EE_Parameter.BitConfig & CFG_LOOP_RECHTS) Looping_Rechts = 1; |
else |
{ |
if(Looping_Rechts) // Hysterese |
{ |
if(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]] > -(EE_Parameter.LoopThreshold - EE_Parameter.LoopHysterese)) Looping_Rechts = 0; |
} |
} |
if((PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > EE_Parameter.LoopThreshold) && EE_Parameter.BitConfig & CFG_LOOP_OBEN) Looping_Oben = 1; |
else |
{ |
if(Looping_Oben) // Hysterese |
{ |
if((PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < (EE_Parameter.LoopThreshold - EE_Parameter.LoopHysterese))) Looping_Oben = 0; |
} |
} |
if((PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < -EE_Parameter.LoopThreshold) && EE_Parameter.BitConfig & CFG_LOOP_UNTEN) Looping_Unten = 1; |
else |
{ |
if(Looping_Unten) // Hysterese |
{ |
if(PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > -(EE_Parameter.LoopThreshold - EE_Parameter.LoopHysterese)) Looping_Unten = 0; |
} |
} |
if(Looping_Links || Looping_Rechts) Looping_Roll = 1; else Looping_Roll = 0; |
if(Looping_Oben || Looping_Unten) { Looping_Nick = 1; Looping_Roll = 0; Looping_Links = 0; Looping_Rechts = 0;} else Looping_Nick = 0; |
} // Ende neue Funken-Werte |
if(Looping_Roll || Looping_Nick) |
{ |
if(GasMischanteil > EE_Parameter.LoopGasLimit) GasMischanteil = EE_Parameter.LoopGasLimit; |
TrichterFlug = 1; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Bei Empfangsausfall im Flug |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(FC_StatusFlags & FC_STATUS_EMERGENCY_LANDING) |
{ |
StickGier = 0; |
StickNick = 0; |
StickRoll = 0; |
GyroFaktor = 90; |
IntegralFaktor = 120; |
GyroFaktorGier = 90; |
IntegralFaktorGier = 120; |
Looping_Roll = 0; |
Looping_Nick = 0; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Integrale auf ACC-Signal abgleichen |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#define ABGLEICH_ANZAHL 256L |
MittelIntegralNick += IntegralNick; // Für die Mittelwertbildung aufsummieren |
MittelIntegralRoll += IntegralRoll; |
MittelIntegralNick2 += IntegralNick2; |
MittelIntegralRoll2 += IntegralRoll2; |
if(Looping_Nick || Looping_Roll) |
{ |
IntegralAccNick = 0; |
IntegralAccRoll = 0; |
MittelIntegralNick = 0; |
MittelIntegralRoll = 0; |
MittelIntegralNick2 = 0; |
MittelIntegralRoll2 = 0; |
Mess_IntegralNick2 = Mess_IntegralNick; |
Mess_IntegralRoll2 = Mess_IntegralRoll; |
ZaehlMessungen = 0; |
LageKorrekturNick = 0; |
LageKorrekturRoll = 0; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(!Looping_Nick && !Looping_Roll && (Aktuell_az > 512 || MotorenEin)) |
{ |
long tmp_long, tmp_long2; |
if(FromNaviCtrl_Value.Kalman_K != -1 /*&& !TrichterFlug*/) |
{ |
tmp_long = (long)(IntegralNick / EE_Parameter.GyroAccFaktor - (long)Mittelwert_AccNick); |
tmp_long2 = (long)(IntegralRoll / EE_Parameter.GyroAccFaktor - (long)Mittelwert_AccRoll); |
tmp_long = (tmp_long * FromNaviCtrl_Value.Kalman_K) / (32 * 16); |
tmp_long2 = (tmp_long2 * FromNaviCtrl_Value.Kalman_K) / (32 * 16); |
if((MaxStickNick > 64) || (MaxStickRoll > 64)) |
{ |
tmp_long /= 2; |
tmp_long2 /= 2; |
} |
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]) > 25) |
{ |
tmp_long /= 3; |
tmp_long2 /= 3; |
} |
if(tmp_long > (long) FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long = (long) FromNaviCtrl_Value.Kalman_MaxFusion; |
if(tmp_long < (long)-FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long = (long)-FromNaviCtrl_Value.Kalman_MaxFusion; |
if(tmp_long2 > (long) FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long2 = (long) FromNaviCtrl_Value.Kalman_MaxFusion; |
if(tmp_long2 < (long)-FromNaviCtrl_Value.Kalman_MaxFusion) tmp_long2 = (long)-FromNaviCtrl_Value.Kalman_MaxFusion; |
} |
else |
{ |
tmp_long = (long)(IntegralNick / EE_Parameter.GyroAccFaktor - (long)Mittelwert_AccNick); |
tmp_long2 = (long)(IntegralRoll / EE_Parameter.GyroAccFaktor - (long)Mittelwert_AccRoll); |
tmp_long /= 16; |
tmp_long2 /= 16; |
if((MaxStickNick > 64) || (MaxStickRoll > 64)) |
{ |
tmp_long /= 3; |
tmp_long2 /= 3; |
} |
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]) > 25) |
{ |
tmp_long /= 3; |
tmp_long2 /= 3; |
} |
#define AUSGLEICH 32 |
if(tmp_long > AUSGLEICH) tmp_long = AUSGLEICH; |
if(tmp_long < -AUSGLEICH) tmp_long =-AUSGLEICH; |
if(tmp_long2 > AUSGLEICH) tmp_long2 = AUSGLEICH; |
if(tmp_long2 <-AUSGLEICH) tmp_long2 =-AUSGLEICH; |
} |
Mess_IntegralNick -= tmp_long; |
Mess_IntegralRoll -= tmp_long2; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(ZaehlMessungen >= ABGLEICH_ANZAHL) |
{ |
static int cnt = 0; |
static char last_n_p,last_n_n,last_r_p,last_r_n; |
static long MittelIntegralNick_Alt,MittelIntegralRoll_Alt; |
if(!Looping_Nick && !Looping_Roll && !TrichterFlug && EE_Parameter.Driftkomp) |
{ |
MittelIntegralNick /= ABGLEICH_ANZAHL; |
MittelIntegralRoll /= ABGLEICH_ANZAHL; |
IntegralAccNick = (EE_Parameter.GyroAccFaktor * IntegralAccNick) / ABGLEICH_ANZAHL; |
IntegralAccRoll = (EE_Parameter.GyroAccFaktor * IntegralAccRoll) / ABGLEICH_ANZAHL; |
IntegralAccZ = IntegralAccZ / ABGLEICH_ANZAHL; |
#define MAX_I 0 |
// Nick ++++++++++++++++++++++++++++++++++++++++++++++++ |
IntegralFehlerNick = (long)(MittelIntegralNick - (long)IntegralAccNick); |
ausgleichNick = IntegralFehlerNick / EE_Parameter.GyroAccAbgleich; |
// Roll ++++++++++++++++++++++++++++++++++++++++++++++++ |
IntegralFehlerRoll = (long)(MittelIntegralRoll - (long)IntegralAccRoll); |
ausgleichRoll = IntegralFehlerRoll / EE_Parameter.GyroAccAbgleich; |
LageKorrekturNick = ausgleichNick / ABGLEICH_ANZAHL; |
LageKorrekturRoll = ausgleichRoll / ABGLEICH_ANZAHL; |
if(((MaxStickNick > 64) || (MaxStickRoll > 64) || (abs(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]) > 25)) && (FromNaviCtrl_Value.Kalman_K == -1)) |
{ |
LageKorrekturNick /= 2; |
LageKorrekturRoll /= 2; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gyro-Drift ermitteln |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
MittelIntegralNick2 /= ABGLEICH_ANZAHL; |
MittelIntegralRoll2 /= ABGLEICH_ANZAHL; |
tmp_long = IntegralNick2 - IntegralNick; |
tmp_long2 = IntegralRoll2 - IntegralRoll; |
IntegralFehlerNick = tmp_long; |
IntegralFehlerRoll = tmp_long2; |
Mess_IntegralNick2 -= IntegralFehlerNick; |
Mess_IntegralRoll2 -= IntegralFehlerRoll; |
if(EE_Parameter.Driftkomp) |
{ |
if(GierGyroFehler > ABGLEICH_ANZAHL/2) { AdNeutralGier++; } |
if(GierGyroFehler <-ABGLEICH_ANZAHL/2) { AdNeutralGier--; } |
} |
GierGyroFehler = 0; |
#define FEHLER_LIMIT (ABGLEICH_ANZAHL / 2) |
#define FEHLER_LIMIT1 (ABGLEICH_ANZAHL * 2) //4 |
#define FEHLER_LIMIT2 (ABGLEICH_ANZAHL * 16) //16 |
#define BEWEGUNGS_LIMIT 20000 |
// Nick +++++++++++++++++++++++++++++++++++++++++++++++++ |
cnt = 1;// + labs(IntegralFehlerNick) / 4096; |
if(labs(IntegralFehlerNick) > FEHLER_LIMIT1) cnt = 4; |
if(labs(MittelIntegralNick_Alt - MittelIntegralNick) < BEWEGUNGS_LIMIT || (FromNaviCtrl_Value.Kalman_MaxDrift > 3*8)) |
{ |
if(IntegralFehlerNick > FEHLER_LIMIT2) |
{ |
if(last_n_p) |
{ |
cnt += labs(IntegralFehlerNick) / (FEHLER_LIMIT2 / 8); |
ausgleichNick = IntegralFehlerNick / 8; |
if(ausgleichNick > 5000) ausgleichNick = 5000; |
LageKorrekturNick += ausgleichNick / ABGLEICH_ANZAHL; |
} |
else last_n_p = 1; |
} else last_n_p = 0; |
if(IntegralFehlerNick < -FEHLER_LIMIT2) |
{ |
if(last_n_n) |
{ |
cnt += labs(IntegralFehlerNick) / (FEHLER_LIMIT2 / 8); |
ausgleichNick = IntegralFehlerNick / 8; |
if(ausgleichNick < -5000) ausgleichNick = -5000; |
LageKorrekturNick += ausgleichNick / ABGLEICH_ANZAHL; |
} |
else last_n_n = 1; |
} else last_n_n = 0; |
} |
else |
{ |
cnt = 0; |
KompassSignalSchlecht = 1000; |
} |
if(cnt > EE_Parameter.Driftkomp) cnt = EE_Parameter.Driftkomp; |
if(FromNaviCtrl_Value.Kalman_MaxDrift) if(cnt > FromNaviCtrl_Value.Kalman_MaxDrift) cnt = FromNaviCtrl_Value.Kalman_MaxDrift; |
if(IntegralFehlerNick > FEHLER_LIMIT) AdNeutralNick += cnt; |
if(IntegralFehlerNick < -FEHLER_LIMIT) AdNeutralNick -= cnt; |
// Roll +++++++++++++++++++++++++++++++++++++++++++++++++ |
cnt = 1;// + labs(IntegralFehlerRoll) / 4096; |
if(labs(IntegralFehlerRoll) > FEHLER_LIMIT1) cnt = 4; |
if(labs(MittelIntegralRoll_Alt - MittelIntegralRoll) < BEWEGUNGS_LIMIT || (FromNaviCtrl_Value.Kalman_MaxDrift > 3*8)) |
{ |
if(IntegralFehlerRoll > FEHLER_LIMIT2) |
{ |
if(last_r_p) |
{ |
cnt += labs(IntegralFehlerRoll) / (FEHLER_LIMIT2 / 8); |
ausgleichRoll = IntegralFehlerRoll / 8; |
if(ausgleichRoll > 5000) ausgleichRoll = 5000; |
LageKorrekturRoll += ausgleichRoll / ABGLEICH_ANZAHL; |
} |
else last_r_p = 1; |
} else last_r_p = 0; |
if(IntegralFehlerRoll < -FEHLER_LIMIT2) |
{ |
if(last_r_n) |
{ |
cnt += labs(IntegralFehlerRoll) / (FEHLER_LIMIT2 / 8); |
ausgleichRoll = IntegralFehlerRoll / 8; |
if(ausgleichRoll < -5000) ausgleichRoll = -5000; |
LageKorrekturRoll += ausgleichRoll / ABGLEICH_ANZAHL; |
} |
else last_r_n = 1; |
} else last_r_n = 0; |
} else |
{ |
cnt = 0; |
KompassSignalSchlecht = 1000; |
} |
if(cnt > EE_Parameter.Driftkomp) cnt = EE_Parameter.Driftkomp; |
if(FromNaviCtrl_Value.Kalman_MaxDrift) if(cnt > FromNaviCtrl_Value.Kalman_MaxDrift) cnt = FromNaviCtrl_Value.Kalman_MaxDrift; |
if(IntegralFehlerRoll > FEHLER_LIMIT) AdNeutralRoll += cnt; |
if(IntegralFehlerRoll < -FEHLER_LIMIT) AdNeutralRoll -= cnt; |
} |
else |
{ |
LageKorrekturRoll = 0; |
LageKorrekturNick = 0; |
TrichterFlug = 0; |
} |
if(!IntegralFaktor) { LageKorrekturRoll = 0; LageKorrekturNick = 0;} // z.B. bei HH |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
MittelIntegralNick_Alt = MittelIntegralNick; |
MittelIntegralRoll_Alt = MittelIntegralRoll; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++ |
IntegralAccNick = 0; |
IntegralAccRoll = 0; |
IntegralAccZ = 0; |
MittelIntegralNick = 0; |
MittelIntegralRoll = 0; |
MittelIntegralNick2 = 0; |
MittelIntegralRoll2 = 0; |
ZaehlMessungen = 0; |
} // ZaehlMessungen >= ABGLEICH_ANZAHL |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gieren |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(abs(StickGier) > 15) // war 35 |
{ |
KompassSignalSchlecht = 1000; |
if(!(EE_Parameter.GlobalConfig & CFG_KOMPASS_FIX)) |
{ |
NeueKompassRichtungMerken = 1; |
}; |
} |
tmp_int = (long) EE_Parameter.Gier_P * ((long)StickGier * abs(StickGier)) / 512L; // expo y = ax + bx² |
tmp_int += (EE_Parameter.Gier_P * StickGier) / 4; |
sollGier = tmp_int; |
Mess_Integral_Gier -= tmp_int; |
if(Mess_Integral_Gier > 50000) Mess_Integral_Gier = 50000; // begrenzen |
if(Mess_Integral_Gier <-50000) Mess_Integral_Gier =-50000; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Kompass |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(KompassValue && (EE_Parameter.GlobalConfig & CFG_KOMPASS_AKTIV)) |
{ |
int w,v,r,fehler,korrektur; |
w = abs(IntegralNick /512); // mit zunehmender Neigung den Einfluss drosseln |
v = abs(IntegralRoll /512); |
if(v > w) w = v; // grösste Neigung ermitteln |
korrektur = w / 8 + 2; |
fehler = ((540 + KompassValue - (ErsatzKompass/GIER_GRAD_FAKTOR)) % 360) - 180; |
//fehler += MesswertGier / 12; |
if(!KompassSignalSchlecht && w < 25) |
{ |
GierGyroFehler += fehler; |
if(NeueKompassRichtungMerken) |
{ |
ErsatzKompass = KompassValue * GIER_GRAD_FAKTOR; |
KompassStartwert = (ErsatzKompass/GIER_GRAD_FAKTOR); |
NeueKompassRichtungMerken = 0; |
} |
} |
ErsatzKompass += (fehler * 16) / korrektur; |
w = (w * Parameter_KompassWirkung) / 32; // auf die Wirkung normieren |
w = Parameter_KompassWirkung - w; // Wirkung ggf drosseln |
if(w >= 0) |
{ |
if(!KompassSignalSchlecht) |
{ |
v = 64 + ((MaxStickNick + MaxStickRoll)) / 8; |
r = ((540 + (ErsatzKompass/GIER_GRAD_FAKTOR) - KompassStartwert) % 360) - 180; |
v = (r * w) / v; // nach Kompass ausrichten |
w = 3 * Parameter_KompassWirkung; |
if(v > w) v = w; // Begrenzen |
else |
if(v < -w) v = -w; |
Mess_Integral_Gier += v; |
} |
if(KompassSignalSchlecht) KompassSignalSchlecht--; |
} |
else KompassSignalSchlecht = 500; // so lange das Signal taub stellen --> ca. 1 sek |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Drehgeschwindigkeit und -winkel zu einem Istwert zusammenfassen |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(TrichterFlug) { SummeRoll = 0; SummeNick = 0;}; |
if(!Looping_Nick) IntegralNickMalFaktor = (IntegralNick * IntegralFaktor) / (44000 / STICK_GAIN); else IntegralNickMalFaktor = 0; |
if(!Looping_Roll) IntegralRollMalFaktor = (IntegralRoll * IntegralFaktor) / (44000 / STICK_GAIN); else IntegralRollMalFaktor = 0; |
#define TRIM_MAX 200 |
if(TrimNick > TRIM_MAX) TrimNick = TRIM_MAX; else if(TrimNick <-TRIM_MAX) TrimNick =-TRIM_MAX; |
if(TrimRoll > TRIM_MAX) TrimRoll = TRIM_MAX; else if(TrimRoll <-TRIM_MAX) TrimRoll =-TRIM_MAX; |
MesswertNick = IntegralNickMalFaktor + (long)((long)MesswertNick * GyroFaktor + (long)TrimNick * 128L) / (256L / STICK_GAIN); |
MesswertRoll = IntegralRollMalFaktor + (long)((long)MesswertRoll * GyroFaktor + (long)TrimRoll * 128L) / (256L / STICK_GAIN); |
MesswertGier = (long)(MesswertGier * 2 * (long)GyroFaktorGier) / (256L / STICK_GAIN) + (long)(Integral_Gier * IntegralFaktorGier) / (2 * (44000 / STICK_GAIN)); |
// Maximalwerte abfangen |
// #define MAX_SENSOR (4096*STICK_GAIN) |
#define MAX_SENSOR (4096) |
if(MesswertNick > MAX_SENSOR) MesswertNick = MAX_SENSOR; |
if(MesswertNick < -MAX_SENSOR) MesswertNick = -MAX_SENSOR; |
if(MesswertRoll > MAX_SENSOR) MesswertRoll = MAX_SENSOR; |
if(MesswertRoll < -MAX_SENSOR) MesswertRoll = -MAX_SENSOR; |
if(MesswertGier > MAX_SENSOR) MesswertGier = MAX_SENSOR; |
if(MesswertGier < -MAX_SENSOR) MesswertGier = -MAX_SENSOR; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Höhenregelung |
// Die Höhenregelung schwächt lediglich das Gas ab, erhöht es allerdings nicht |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(UBat > BattLowVoltageWarning) GasMischanteil = ((unsigned int)GasMischanteil * BattLowVoltageWarning) / UBat; // Gas auf das aktuelle Spannungvieveau beziehen |
GasMischanteil *= STICK_GAIN; |
// if height control is activated |
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG) && !(Looping_Roll || Looping_Nick)) // Höhenregelung |
{ |
#define HOVER_GAS_AVERAGE 16384L // 16384 * 2ms = 32s averaging |
#define HC_GAS_AVERAGE 4 // 4 * 2ms= 8ms averaging |
#if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)) |
#define OPA_OFFSET_STEP 15 |
#else |
#define OPA_OFFSET_STEP 10 |
#endif |
int HCGas, HeightDeviation = 0,GasReduction = 0; |
static int HeightTrimming = 0; // rate for change of height setpoint |
static int FilterHCGas = 0; |
static int StickGasHover = 120, HoverGasMin = 0, HoverGasMax = 1023; |
static unsigned long HoverGasFilter = 0; |
static unsigned char delay = 100, BaroAtUpperLimit = 0, BaroAtLowerLimit = 0; |
int CosAttitude; // for projection of hoover gas |
// get the current hooverpoint |
DebugOut.Analog[21] = HoverGas; |
// Expand the measurement |
// measurement of air pressure close to upper limit and no overflow in correction of the new OCR0A value occurs |
if(!BaroExpandActive) |
{ |
if(MessLuftdruck > 920) |
{ // increase offset |
if(OCR0A < (255 - OPA_OFFSET_STEP)) |
{ |
ExpandBaro -= 1; |
OCR0A = DruckOffsetSetting - OPA_OFFSET_STEP * ExpandBaro; // increase offset to shift ADC down |
beeptime = 300; |
BaroExpandActive = 350; |
} |
else |
{ |
BaroAtLowerLimit = 1; |
} |
} |
// measurement of air pressure close to lower limit and |
else |
if(MessLuftdruck < 100) |
{ // decrease offset |
if(OCR0A > OPA_OFFSET_STEP) |
{ |
ExpandBaro += 1; |
OCR0A = DruckOffsetSetting - OPA_OFFSET_STEP * ExpandBaro; // decrease offset to shift ADC up |
beeptime = 300; |
BaroExpandActive = 350; |
} |
else |
{ |
BaroAtUpperLimit = 1; |
} |
} |
else |
{ |
BaroAtUpperLimit = 0; |
BaroAtLowerLimit = 0; |
} |
} |
else // delay, because of expanding the Baro-Range |
{ |
// now clear the D-values |
SummenHoehe = HoehenWert * SM_FILTER; |
VarioMeter = 0; |
BaroExpandActive--; |
} |
// if height control is activated by an rc channel |
if(EE_Parameter.GlobalConfig & CFG_HOEHEN_SCHALTER) // Regler wird über Schalter gesteuert |
{ // check if parameter is less than activation threshold |
if(Parameter_MaxHoehe < 50) // for 3 or 2-state switch height control is disabled in lowest position |
{ //height control not active |
if(!delay--) |
{ |
HoehenReglerAktiv = 0; // disable height control |
SollHoehe = HoehenWert; // update SetPoint with current reading |
delay = 1; |
} |
} |
else |
{ //height control is activated |
HoehenReglerAktiv = 1; // enable height control |
delay = 200; |
} |
} |
else // no switchable height control |
{ |
SollHoehe = ((int16_t) ExternHoehenValue + (int16_t) Parameter_MaxHoehe) * (int)EE_Parameter.Hoehe_Verstaerkung; |
HoehenReglerAktiv = 1; |
} |
// calculate cos of nick and roll angle used for projection of the vertical hoover gas |
tmp_int = (int)(IntegralNick/GIER_GRAD_FAKTOR); // nick angle in deg |
tmp_int2 = (int)(IntegralRoll/GIER_GRAD_FAKTOR); // roll angle in deg |
CosAttitude = (int16_t)ihypot(tmp_int, tmp_int2); // phytagoras gives effective attitude angle in deg |
LIMIT_MAX(CosAttitude, 60); // limit effective attitude angle |
CosAttitude = c_cos_8192(CosAttitude); // cos of actual attitude |
VarioCharacter = ' '; |
if(HoehenReglerAktiv && !(FC_StatusFlags & FC_STATUS_EMERGENCY_LANDING)) |
{ |
#define HEIGHT_CONTROL_STICKTHRESHOLD 15 |
// Holger original version |
// start of height control algorithm |
// the height control is only an attenuation of the actual gas stick. |
// I.e. it will work only if the gas stick is higher than the hover gas |
// and the hover height will be allways larger than height setpoint. |
if((EE_Parameter.ExtraConfig & CFG2_HEIGHT_LIMIT) || !(EE_Parameter.GlobalConfig & CFG_HOEHEN_SCHALTER)) // Regler wird über Schalter gesteuert) |
{ // old version |
HCGas = GasMischanteil; // take current stick gas as neutral point for the height control |
HeightTrimming = 0; |
// set both flags to indicate no vario mode |
FC_StatusFlags |= (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN); |
} |
else |
{ |
// alternative height control |
// PD-Control with respect to hoover point |
// the thrust loss out of horizontal attitude is compensated |
// the setpoint will be fine adjusted with the gas stick position |
if(FC_StatusFlags & FC_STATUS_FLY) // trim setpoint only when flying |
{ // gas stick is above hoover point |
if(StickGas > (StickGasHover + HEIGHT_CONTROL_STICKTHRESHOLD) && !BaroAtUpperLimit) |
{ |
if(FC_StatusFlags & FC_STATUS_VARIO_TRIM_DOWN) |
{ |
FC_StatusFlags &= ~FC_STATUS_VARIO_TRIM_DOWN; |
SollHoehe = HoehenWert; // update setpoint to current heigth |
} |
FC_StatusFlags |= FC_STATUS_VARIO_TRIM_UP; |
HeightTrimming += abs(StickGas - (StickGasHover + HEIGHT_CONTROL_STICKTHRESHOLD)); |
VarioCharacter = '+'; |
} // gas stick is below hoover point |
else if(StickGas < (StickGasHover - HEIGHT_CONTROL_STICKTHRESHOLD) && !BaroAtLowerLimit ) |
{ |
if(FC_StatusFlags & FC_STATUS_VARIO_TRIM_UP) |
{ |
FC_StatusFlags &= ~FC_STATUS_VARIO_TRIM_UP; |
SollHoehe = HoehenWert; // update setpoint to current heigth |
} |
FC_StatusFlags |= FC_STATUS_VARIO_TRIM_DOWN; |
HeightTrimming -= abs(StickGas - (StickGasHover - HEIGHT_CONTROL_STICKTHRESHOLD)); |
VarioCharacter = '-'; |
} |
else // Gas Stick in Hover Range |
{ |
if(FC_StatusFlags & (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN)) |
{ |
FC_StatusFlags &= ~(FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN); |
HeightTrimming = 0; |
SollHoehe = HoehenWert; // update setpoint to current height |
if(EE_Parameter.ExtraConfig & CFG2_VARIO_BEEP) beeptime = 500; |
if(!StartTrigger && HoehenWert > 50) |
{ |
StartTrigger = 1; |
} |
} |
VarioCharacter = '='; |
} |
// Trim height set point |
if(abs(HeightTrimming) > 512) |
{ |
SollHoehe += (HeightTrimming * EE_Parameter.Hoehe_Verstaerkung)/(5 * 512 / 2); // move setpoint |
HeightTrimming = 0; |
LIMIT_MIN_MAX(SollHoehe, (HoehenWert-1024), (HoehenWert+1024)); // max. 10m Unterschied |
if(EE_Parameter.ExtraConfig & CFG2_VARIO_BEEP) beeptime = 100; |
//update hoover gas stick value when setpoint is shifted |
if(!EE_Parameter.Hoehe_StickNeutralPoint) |
{ |
StickGasHover = HoverGas/STICK_GAIN; //rescale back to stick value |
StickGasHover = (StickGasHover * UBat) / BattLowVoltageWarning; |
if(StickGasHover < 70) StickGasHover = 70; |
else if(StickGasHover > 150) StickGasHover = 150; |
} |
} |
if(BaroExpandActive) SollHoehe = HoehenWert; // update setpoint to current altitude if Expanding is active |
} //if FCFlags & MKFCFLAG_FLY |
else |
{ |
SollHoehe = HoehenWert - 400; |
if(EE_Parameter.Hoehe_StickNeutralPoint) StickGasHover = EE_Parameter.Hoehe_StickNeutralPoint; |
else StickGasHover = 120; |
HoverGas = GasMischanteil; |
} |
HCGas = HoverGas; // take hover gas (neutral point) |
} |
if(HoehenWert > SollHoehe || !(EE_Parameter.ExtraConfig & CFG2_HEIGHT_LIMIT)) |
{ |
// from this point the Heigth Control Algorithm is identical for both versions |
if(BaroExpandActive) // baro range expanding active |
{ |
HCGas = HoverGas; // hover while expanding baro adc range |
HeightDeviation = 0; |
} // EOF // baro range expanding active |
else // valid data from air pressure sensor |
{ |
// ------------------------- P-Part ---------------------------- |
tmp_long = (HoehenWert - SollHoehe); // positive when too high |
LIMIT_MIN_MAX(tmp_long, -32767L, 32767L); // avoid overflov when casting to int16_t |
HeightDeviation = (int)(tmp_long); // positive when too high |
tmp_long = (tmp_long * (long)Parameter_Hoehe_P) / 32L; // p-part |
LIMIT_MIN_MAX(tmp_long, -127 * STICK_GAIN, 256 * STICK_GAIN); // more than the full range makes no sense |
GasReduction = tmp_long; |
// ------------------------- D-Part 1: Vario Meter ---------------------------- |
tmp_int = VarioMeter / 8; |
LIMIT_MIN_MAX(tmp_int, -127, 128); |
tmp_int = (tmp_int * (long)Parameter_Luftdruck_D) / 4L; // scale to d-gain parameter |
LIMIT_MIN_MAX(tmp_int,-64 * STICK_GAIN, 64 * STICK_GAIN); |
if(FC_StatusFlags & (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN)) tmp_int /= 4; // reduce d-part while trimming setpoint |
else |
if(EE_Parameter.ExtraConfig & CFG2_HEIGHT_LIMIT) tmp_int /= 8; // reduce d-part in "Deckel" mode |
GasReduction += tmp_int; |
} // EOF no baro range expanding |
// ------------------------ D-Part 2: ACC-Z Integral ------------------------ |
if(Parameter_Hoehe_ACC_Wirkung) |
{ |
tmp_long = ((Mess_Integral_Hoch / 128L) * (int32_t) Parameter_Hoehe_ACC_Wirkung) / (128L / STICK_GAIN); |
LIMIT_MIN_MAX(tmp_long, -32 * STICK_GAIN, 64 * STICK_GAIN); |
GasReduction += tmp_long; |
} |
// ------------------------ D-Part 3: GpsZ ---------------------------------- |
tmp_int = (Parameter_Hoehe_GPS_Z * (int)FromNaviCtrl_Value.GpsZ)/128L; |
LIMIT_MIN_MAX(tmp_int, -32 * STICK_GAIN, 64 * STICK_GAIN); |
GasReduction += tmp_int; |
GasReduction = (long)((long)GasReduction * HoverGas) / 512; // scale to the gas value |
// ------------------------ ---------------------------------- |
HCGas -= GasReduction; |
// limit deviation from hoover point within the target region |
if(!HeightTrimming && HoverGas > 0) // height setpoint is not changed and hoover gas not zero |
{ |
unsigned int tmp; |
tmp = abs(HeightDeviation); |
if(tmp <= 60) |
{ |
LIMIT_MIN_MAX(HCGas, HoverGasMin, HoverGasMax); // limit gas around the hoover point |
} |
else |
{ |
tmp = (tmp - 60) / 32; |
if(tmp > 15) tmp = 15; |
if(HeightDeviation > 0) |
{ |
tmp = (HoverGasMin * (16 - tmp)) / 16; |
LIMIT_MIN_MAX(HCGas, tmp, HoverGasMax); // limit gas around the hoover point |
} |
else |
{ |
tmp = (HoverGasMax * (tmp + 16)) / 16; |
LIMIT_MIN_MAX(HCGas, HoverGasMin, tmp); // limit gas around the hoover point |
} |
} |
} |
// strech control output by inverse attitude projection 1/cos |
// + 1/cos(angle) ++++++++++++++++++++++++++ |
tmp_long2 = (int32_t)HCGas; |
tmp_long2 *= 8192L; |
tmp_long2 /= CosAttitude; |
HCGas = (int16_t)tmp_long2; |
// update height control gas averaging |
FilterHCGas = (FilterHCGas * (HC_GAS_AVERAGE - 1) + HCGas) / HC_GAS_AVERAGE; |
// limit height control gas pd-control output |
LIMIT_MIN_MAX(FilterHCGas, EE_Parameter.Hoehe_MinGas * STICK_GAIN, (MAX_GAS - 20) * STICK_GAIN); |
// set GasMischanteil to HeightControlGasFilter |
if(EE_Parameter.ExtraConfig & CFG2_HEIGHT_LIMIT) |
{ // old version |
LIMIT_MAX(FilterHCGas, GasMischanteil); // nicht mehr als Gas |
GasMischanteil = FilterHCGas; |
} |
else GasMischanteil = FilterHCGas + (GasMischanteil - HoverGas) / 4; // only in Vario-Mode |
} |
}// EOF height control active |
else // HC not active |
{ |
//update hoover gas stick value when HC is not active |
if(!EE_Parameter.Hoehe_StickNeutralPoint) |
{ |
StickGasHover = HoverGas/STICK_GAIN; // rescale back to stick value |
StickGasHover = (StickGasHover * UBat) / BattLowVoltageWarning; |
} |
else StickGasHover = EE_Parameter.Hoehe_StickNeutralPoint; |
LIMIT_MIN_MAX(StickGasHover, 70, 150); // reserve some range for trim up and down |
FilterHCGas = GasMischanteil; |
// set both flags to indicate no vario mode |
FC_StatusFlags |= (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN); |
} |
// Hover gas estimation by averaging gas control output on small z-velocities |
// this is done only if height contol option is selected in global config and aircraft is flying |
if((FC_StatusFlags & FC_STATUS_FLY))// && !(FC_SatusFlags & FC_STATUS_EMERGENCY_LANDING)) |
{ |
if(HoverGasFilter == 0 || StartTrigger == 1) HoverGasFilter = HOVER_GAS_AVERAGE * (unsigned long)(GasMischanteil); // init estimation |
if(StartTrigger == 1) StartTrigger = 2; |
tmp_long2 = (int32_t)GasMischanteil; // take current thrust |
tmp_long2 *= CosAttitude; // apply attitude projection |
tmp_long2 /= 8192; |
// average vertical projected thrust |
if(modell_fliegt < 4000) // the first 8 seconds |
{ // reduce the time constant of averaging by factor of 4 to get much faster a stable value |
HoverGasFilter -= HoverGasFilter/(HOVER_GAS_AVERAGE/16L); |
HoverGasFilter += 16L * tmp_long2; |
} |
if(modell_fliegt < 8000) // the first 16 seconds |
{ // reduce the time constant of averaging by factor of 2 to get much faster a stable value |
HoverGasFilter -= HoverGasFilter/(HOVER_GAS_AVERAGE/4L); |
HoverGasFilter += 4L * tmp_long2; |
} |
else //later |
if(abs(VarioMeter) < 100) // only on small vertical speed |
{ |
HoverGasFilter -= HoverGasFilter/HOVER_GAS_AVERAGE; |
HoverGasFilter += tmp_long2; |
} |
HoverGas = (int16_t)(HoverGasFilter/HOVER_GAS_AVERAGE); |
if(EE_Parameter.Hoehe_HoverBand) |
{ |
int16_t band; |
band = HoverGas / EE_Parameter.Hoehe_HoverBand; // the higher the parameter the smaller the range |
HoverGasMin = HoverGas - band; |
HoverGasMax = HoverGas + band; |
} |
else |
{ // no limit |
HoverGasMin = 0; |
HoverGasMax = 1023; |
} |
} |
else |
{ |
StartTrigger = 0; |
HoverGasFilter = 0; |
HoverGas = 0; |
} |
}// EOF ParamSet.GlobalConfig & CFG_HEIGHT_CONTROL |
else |
{ |
// set undefined state to indicate vario off |
FC_StatusFlags |= (FC_STATUS_VARIO_TRIM_UP|FC_STATUS_VARIO_TRIM_DOWN); |
} // EOF no height control |
// limit gas to parameter setting |
LIMIT_MIN(GasMischanteil, (MIN_GAS + 10) * STICK_GAIN); |
if(GasMischanteil > (MAX_GAS - 20) * STICK_GAIN) GasMischanteil = (MAX_GAS - 20) * STICK_GAIN; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// all BL-Ctrl connected? |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(MissingMotor || Capacity.MinOfMaxPWM != 255) |
if(modell_fliegt > 1 && modell_fliegt < 50 && GasMischanteil > 0) |
{ |
modell_fliegt = 1; |
GasMischanteil = (MIN_GAS + 10) * STICK_GAIN; |
} |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Mischer und PI-Regler |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
DebugOut.Analog[7] = GasMischanteil; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Gier-Anteil |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
GierMischanteil = MesswertGier - sollGier * STICK_GAIN; // Regler für Gier |
#define MIN_GIERGAS (40*STICK_GAIN) // unter diesem Gaswert trotzdem Gieren |
if(GasMischanteil > MIN_GIERGAS) |
{ |
if(GierMischanteil > (GasMischanteil / 2)) GierMischanteil = GasMischanteil / 2; |
if(GierMischanteil < -(GasMischanteil / 2)) GierMischanteil = -(GasMischanteil / 2); |
} |
else |
{ |
if(GierMischanteil > (MIN_GIERGAS / 2)) GierMischanteil = MIN_GIERGAS / 2; |
if(GierMischanteil < -(MIN_GIERGAS / 2)) GierMischanteil = -(MIN_GIERGAS / 2); |
} |
tmp_int = MAX_GAS*STICK_GAIN; |
if(GierMischanteil > ((tmp_int - GasMischanteil))) GierMischanteil = ((tmp_int - GasMischanteil)); |
if(GierMischanteil < -((tmp_int - GasMischanteil))) GierMischanteil = -((tmp_int - GasMischanteil)); |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Nick-Achse |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
DiffNick = MesswertNick - StickNick; // Differenz bestimmen |
if(IntegralFaktor) SummeNick += IntegralNickMalFaktor - StickNick; // I-Anteil bei Winkelregelung |
else SummeNick += DiffNick; // I-Anteil bei HH |
if(SummeNick > (STICK_GAIN * 16000L)) SummeNick = (STICK_GAIN * 16000L); |
if(SummeNick < -(16000L * STICK_GAIN)) SummeNick = -(16000L * STICK_GAIN); |
if(EE_Parameter.Gyro_Stability <= 8) pd_ergebnis_nick = (EE_Parameter.Gyro_Stability * DiffNick) / 8; // PI-Regler für Nick |
else pd_ergebnis_nick = ((EE_Parameter.Gyro_Stability / 2) * DiffNick) / 4; // Überlauf verhindern |
pd_ergebnis_nick += SummeNick / Ki; |
tmp_int = (long)((long)Parameter_DynamicStability * (long)(GasMischanteil + abs(GierMischanteil)/2)) / 64; |
if(pd_ergebnis_nick > tmp_int) pd_ergebnis_nick = tmp_int; |
if(pd_ergebnis_nick < -tmp_int) pd_ergebnis_nick = -tmp_int; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Roll-Achse |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
DiffRoll = MesswertRoll - StickRoll; // Differenz bestimmen |
if(IntegralFaktor) SummeRoll += IntegralRollMalFaktor - StickRoll;// I-Anteil bei Winkelregelung |
else SummeRoll += DiffRoll; // I-Anteil bei HH |
if(SummeRoll > (STICK_GAIN * 16000L)) SummeRoll = (STICK_GAIN * 16000L); |
if(SummeRoll < -(16000L * STICK_GAIN)) SummeRoll = -(16000L * STICK_GAIN); |
if(EE_Parameter.Gyro_Stability <= 8) pd_ergebnis_roll = (EE_Parameter.Gyro_Stability * DiffRoll) / 8; // PI-Regler für Roll |
else pd_ergebnis_roll = ((EE_Parameter.Gyro_Stability / 2) * DiffRoll) / 4; // Überlauf verhindern |
pd_ergebnis_roll += SummeRoll / Ki; |
tmp_int = (long)((long)Parameter_DynamicStability * (long)(GasMischanteil + abs(GierMischanteil)/2)) / 64; |
if(pd_ergebnis_roll > tmp_int) pd_ergebnis_roll = tmp_int; |
if(pd_ergebnis_roll < -tmp_int) pd_ergebnis_roll = -tmp_int; |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Universal Mixer |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
for(i=0; i<MAX_MOTORS; i++) |
{ |
signed int tmp_int; |
if(Mixer.Motor[i][0] > 0) |
{ |
// Gas |
if(Mixer.Motor[i][0] == 64) tmp_int = GasMischanteil; else tmp_int = ((long)GasMischanteil * Mixer.Motor[i][0]) / 64L; |
// Nick |
if(Mixer.Motor[i][1] == 64) tmp_int += pd_ergebnis_nick; |
else if(Mixer.Motor[i][1] == -64) tmp_int -= pd_ergebnis_nick; |
else tmp_int += ((long)pd_ergebnis_nick * Mixer.Motor[i][1]) / 64L; |
// Roll |
if(Mixer.Motor[i][2] == 64) tmp_int += pd_ergebnis_roll; |
else if(Mixer.Motor[i][2] == -64) tmp_int -= pd_ergebnis_roll; |
else tmp_int += ((long)pd_ergebnis_roll * Mixer.Motor[i][2]) / 64L; |
// Gier |
if(Mixer.Motor[i][3] == 64) tmp_int += GierMischanteil; |
else if(Mixer.Motor[i][3] == -64) tmp_int -= GierMischanteil; |
else tmp_int += ((long)GierMischanteil * Mixer.Motor[i][3]) / 64L; |
if(tmp_int > tmp_motorwert[i]) tmp_int = (tmp_motorwert[i] + tmp_int) / 2; // MotorSmoothing |
else tmp_int = 2 * tmp_int - tmp_motorwert[i]; // MotorSmoothing |
LIMIT_MIN_MAX(tmp_int,(int) MIN_GAS * 4,(int) MAX_GAS * 4); |
Motor[i].SetPoint = tmp_int / 4; |
Motor[i].SetPointLowerBits = (tmp_int % 4)<<1; // (3 bits total) |
tmp_motorwert[i] = tmp_int; |
} |
else |
{ |
Motor[i].SetPoint = 0; |
Motor[i].SetPointLowerBits = 0; |
} |
} |
} |
/branches/metro/v0.82a metro_Akku+/fc.d |
---|
0,0 → 1,3 |
fc.o fc.d : fc.c main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h mymath.h isqrt.h |
/branches/metro/v0.82a metro_Akku+/fc.h |
---|
0,0 → 1,109 |
/*####################################################################################### |
Flight Control |
#######################################################################################*/ |
#ifndef _FC_H |
#define _FC_H |
//#define GIER_GRAD_FAKTOR 1291L // Abhängigkeit zwischen GyroIntegral und Winkel |
//#define GIER_GRAD_FAKTOR 1160L |
extern long GIER_GRAD_FAKTOR; // Abhängigkeit zwischen GyroIntegral und Winkel |
#define STICK_GAIN 4 |
#define ACC_AMPLIFY 6 |
// FC STATUS FLAGS |
#define FC_STATUS_MOTOR_RUN 0x01 |
#define FC_STATUS_FLY 0x02 |
#define FC_STATUS_CALIBRATE 0x04 |
#define FC_STATUS_START 0x08 |
#define FC_STATUS_EMERGENCY_LANDING 0x10 |
#define FC_STATUS_LOWBAT 0x20 |
#define FC_STATUS_VARIO_TRIM_UP 0x40 |
#define FC_STATUS_VARIO_TRIM_DOWN 0x80 |
extern volatile unsigned char FC_StatusFlags; |
#define Poti1 Poti[0] |
#define Poti2 Poti[1] |
#define Poti3 Poti[2] |
#define Poti4 Poti[3] |
#define Poti5 Poti[4] |
#define Poti6 Poti[5] |
#define Poti7 Poti[6] |
#define Poti8 Poti[7] |
extern unsigned char Sekunde,Minute; |
extern unsigned int BaroExpandActive; |
extern long IntegralNick,IntegralNick2; |
extern long IntegralRoll,IntegralRoll2; |
//extern int IntegralNick,IntegralNick2; |
//extern int IntegralRoll,IntegralRoll2; |
extern unsigned char Poti[9]; |
extern long Mess_IntegralNick,Mess_IntegralNick2; |
extern long Mess_IntegralRoll,Mess_IntegralRoll2; |
extern long IntegralAccNick,IntegralAccRoll; |
extern long SummeNick,SummeRoll; |
extern volatile long Mess_Integral_Hoch; |
extern long Integral_Gier,Mess_Integral_Gier,Mess_Integral_Gier2; |
extern int KompassValue; |
extern int KompassStartwert; |
extern int KompassRichtung; |
extern unsigned char ControlHeading; |
extern int TrimNick, TrimRoll; |
extern long ErsatzKompass; |
extern int ErsatzKompassInGrad; // Kompasswert in Grad |
extern long HoehenWert; |
extern long SollHoehe; |
extern unsigned char CareFree; |
extern int MesswertNick,MesswertRoll,MesswertGier; |
extern int AdNeutralNick,AdNeutralRoll,AdNeutralGier, Mittelwert_AccNick, Mittelwert_AccRoll; |
extern unsigned int NeutralAccX, NeutralAccY; |
extern unsigned char HoehenReglerAktiv; |
extern int NeutralAccZ; |
extern long Umschlag180Nick, Umschlag180Roll; |
extern signed int ExternStickNick,ExternStickRoll,ExternStickGier; |
extern unsigned char Parameter_UserParam1,Parameter_UserParam2,Parameter_UserParam3,Parameter_UserParam4,Parameter_UserParam5,Parameter_UserParam6,Parameter_UserParam7,Parameter_UserParam8; |
extern int NaviAccNick,NaviAccRoll,NaviCntAcc; |
extern unsigned int modell_fliegt; |
extern void MotorRegler(void); |
extern void SendMotorData(void); |
//void CalibrierMittelwert(void); |
//void Mittelwert(void); |
extern void SetNeutral(unsigned char AccAdjustment); |
extern void Piep(unsigned char Anzahl, unsigned int dauer); |
extern void CopyDebugValues(void); |
extern unsigned char h,m,s; |
extern volatile unsigned char Timeout ; |
extern unsigned char CosinusNickWinkel, CosinusRollWinkel; |
extern int DiffNick,DiffRoll; |
//extern int Poti1, Poti2, Poti3, Poti4; |
extern volatile unsigned char SenderOkay; |
extern int StickNick,StickRoll,StickGier; |
extern char MotorenEin; |
extern unsigned char Parameter_Servo3,Parameter_Servo4,Parameter_Servo5; |
extern char VarioCharacter; |
extern int HoverGas; |
extern unsigned char Parameter_Luftdruck_D; |
extern unsigned char Parameter_MaxHoehe; |
extern unsigned char Parameter_Hoehe_P; |
extern unsigned char Parameter_Hoehe_ACC_Wirkung; |
extern unsigned char Parameter_KompassWirkung; |
extern unsigned char Parameter_Gyro_P; |
extern unsigned char Parameter_Gyro_I; |
extern unsigned char Parameter_Gier_P; |
extern unsigned char Parameter_ServoNickControl; |
extern unsigned char Parameter_ServoRollControl; |
extern unsigned char Parameter_AchsKopplung1; |
extern unsigned char Parameter_AchsKopplung2; |
//extern unsigned char Parameter_AchsGegenKopplung1; |
extern unsigned char Parameter_J16Bitmask; // for the J16 Output |
extern unsigned char Parameter_J16Timing; // for the J16 Output |
extern unsigned char Parameter_J17Bitmask; // for the J17 Output |
extern unsigned char Parameter_J17Timing; // for the J17 Output |
extern signed char MixerTable[MAX_MOTORS][4]; |
extern const signed char sintab[31]; |
#endif //_FC_H |
/branches/metro/v0.82a metro_Akku+/fc.h.bak |
---|
0,0 → 1,109 |
/*####################################################################################### |
Flight Control |
#######################################################################################*/ |
#ifndef _FC_H |
#define _FC_H |
//#define GIER_GRAD_FAKTOR 1291L // Abhängigkeit zwischen GyroIntegral und Winkel |
//#define GIER_GRAD_FAKTOR 1160L |
extern long GIER_GRAD_FAKTOR; // Abhängigkeit zwischen GyroIntegral und Winkel |
#define STICK_GAIN 4 |
#define ACC_AMPLIFY 6 |
// FC STATUS FLAGS |
#define FC_STATUS_MOTOR_RUN 0x01 |
#define FC_STATUS_FLY 0x02 |
#define FC_STATUS_CALIBRATE 0x04 |
#define FC_STATUS_START 0x08 |
#define FC_STATUS_EMERGENCY_LANDING 0x10 |
#define FC_STATUS_LOWBAT 0x20 |
#define FC_STATUS_VARIO_TRIM_UP 0x40 |
#define FC_STATUS_VARIO_TRIM_DOWN 0x80 |
extern volatile unsigned char FC_StatusFlags; |
#define Poti1 Poti[0] |
#define Poti2 Poti[1] |
#define Poti3 Poti[2] |
#define Poti4 Poti[3] |
#define Poti5 Poti[4] |
#define Poti6 Poti[5] |
#define Poti7 Poti[6] |
#define Poti8 Poti[7] |
extern unsigned char Sekunde,Minute; |
extern unsigned int BaroExpandActive; |
extern long IntegralNick,IntegralNick2; |
extern long IntegralRoll,IntegralRoll2; |
//extern int IntegralNick,IntegralNick2; |
//extern int IntegralRoll,IntegralRoll2; |
extern unsigned char Poti[9]; |
extern long Mess_IntegralNick,Mess_IntegralNick2; |
extern long Mess_IntegralRoll,Mess_IntegralRoll2; |
extern long IntegralAccNick,IntegralAccRoll; |
extern long SummeNick,SummeRoll; |
extern volatile long Mess_Integral_Hoch; |
extern long Integral_Gier,Mess_Integral_Gier,Mess_Integral_Gier2; |
extern int KompassValue; |
extern int KompassStartwert; |
extern int KompassRichtung; |
extern unsigned char ControlHeading; |
extern int TrimNick, TrimRoll; |
extern long ErsatzKompass; |
extern int ErsatzKompassInGrad; // Kompasswert in Grad |
extern long HoehenWert; |
extern long SollHoehe; |
extern unsigned char CareFree; |
extern int MesswertNick,MesswertRoll,MesswertGier; |
extern int AdNeutralNick,AdNeutralRoll,AdNeutralGier, Mittelwert_AccNick, Mittelwert_AccRoll; |
extern unsigned int NeutralAccX, NeutralAccY; |
extern unsigned char HoehenReglerAktiv; |
extern int NeutralAccZ; |
extern long Umschlag180Nick, Umschlag180Roll; |
extern signed int ExternStickNick,ExternStickRoll,ExternStickGier; |
extern unsigned char Parameter_UserParam1,Parameter_UserParam2,Parameter_UserParam3,Parameter_UserParam4,Parameter_UserParam5,Parameter_UserParam6,Parameter_UserParam7,Parameter_UserParam8; |
extern int NaviAccNick,NaviAccRoll,NaviCntAcc; |
extern unsigned int modell_fliegt; |
extern void MotorRegler(void); |
extern void SendMotorData(void); |
//void CalibrierMittelwert(void); |
//void Mittelwert(void); |
extern void SetNeutral(unsigned char AccAdjustment); |
extern void Piep(unsigned char Anzahl, unsigned int dauer); |
extern void CopyDebugValues(void); |
extern unsigned char h,m,s; |
extern volatile unsigned char Timeout ; |
extern unsigned char CosinusNickWinkel, CosinusRollWinkel; |
extern int DiffNick,DiffRoll; |
//extern int Poti1, Poti2, Poti3, Poti4; |
extern volatile unsigned char SenderOkay; |
extern int StickNick,StickRoll,StickGier; |
extern char MotorenEin; |
extern unsigned char Parameter_Servo3,Parameter_Servo4,Parameter_Servo5; |
extern char VarioCharacter; |
extern int HoverGas; |
extern unsigned char Parameter_Luftdruck_D; |
extern unsigned char Parameter_MaxHoehe; |
extern unsigned char Parameter_Hoehe_P; |
extern unsigned char Parameter_Hoehe_ACC_Wirkung; |
extern unsigned char Parameter_KompassWirkung; |
extern unsigned char Parameter_Gyro_P; |
extern unsigned char Parameter_Gyro_I; |
extern unsigned char Parameter_Gier_P; |
extern unsigned char Parameter_ServoNickControl; |
extern unsigned char Parameter_ServoRollControl; |
extern unsigned char Parameter_AchsKopplung1; |
extern unsigned char Parameter_AchsKopplung2; |
//extern unsigned char Parameter_AchsGegenKopplung1; |
extern unsigned char Parameter_J16Bitmask; // for the J16 Output |
extern unsigned char Parameter_J16Timing; // for the J16 Output |
extern unsigned char Parameter_J17Bitmask; // for the J17 Output |
extern unsigned char Parameter_J17Timing; // for the J17 Output |
extern signed char MixerTable[MAX_MOTORS][4]; |
extern const signed char sintab[31]; |
#endif //_FC_H |
/branches/metro/v0.82a metro_Akku+/fc.lst |
---|
0,0 → 1,10398 |
1 .file "fc.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global VarioCharacter |
11 .data |
14 VarioCharacter: |
15 0000 20 .byte 32 |
16 .global GIER_GRAD_FAKTOR |
19 GIER_GRAD_FAKTOR: |
20 0001 0B05 0000 .long 1291 |
21 .global FC_StatusFlags |
22 .global FC_StatusFlags |
23 .section .bss |
26 FC_StatusFlags: |
27 0000 00 .skip 1,0 |
28 .global modell_fliegt |
29 .global modell_fliegt |
32 modell_fliegt: |
33 0001 0000 .skip 2,0 |
34 .global MaxStickRoll |
35 .global MaxStickRoll |
38 MaxStickRoll: |
39 0003 0000 .skip 2,0 |
40 .global MaxStickNick |
41 .global MaxStickNick |
44 MaxStickNick: |
45 0005 0000 .skip 2,0 |
46 .global ExternHoehenValue |
47 .data |
50 ExternHoehenValue: |
51 0005 ECFF .word -20 |
52 .global ExternStickGier |
53 .global ExternStickGier |
54 .section .bss |
57 ExternStickGier: |
58 0007 0000 .skip 2,0 |
59 .global ExternStickRoll |
60 .global ExternStickRoll |
63 ExternStickRoll: |
64 0009 0000 .skip 2,0 |
65 .global ExternStickNick |
66 .global ExternStickNick |
69 ExternStickNick: |
70 000b 0000 .skip 2,0 |
71 .global sintab |
72 .data |
75 sintab: |
76 0007 00 .byte 0 |
77 0008 02 .byte 2 |
78 0009 04 .byte 4 |
79 000a 06 .byte 6 |
80 000b 07 .byte 7 |
81 000c 08 .byte 8 |
82 000d 08 .byte 8 |
83 000e 08 .byte 8 |
84 000f 07 .byte 7 |
85 0010 06 .byte 6 |
86 0011 04 .byte 4 |
87 0012 02 .byte 2 |
88 0013 00 .byte 0 |
89 0014 FE .byte -2 |
90 0015 FC .byte -4 |
91 0016 FA .byte -6 |
92 0017 F9 .byte -7 |
93 0018 F8 .byte -8 |
94 0019 F8 .byte -8 |
95 001a F8 .byte -8 |
96 001b F9 .byte -7 |
97 001c FA .byte -6 |
98 001d FC .byte -4 |
99 001e FE .byte -2 |
100 001f 00 .byte 0 |
101 0020 02 .byte 2 |
102 0021 04 .byte 4 |
103 0022 06 .byte 6 |
104 0023 07 .byte 7 |
105 0024 08 .byte 8 |
106 0025 08 .byte 8 |
107 .global CareFree |
108 .global CareFree |
109 .section .bss |
112 CareFree: |
113 000d 00 .skip 1,0 |
114 .global Parameter_DynamicStability |
115 .data |
118 Parameter_DynamicStability: |
119 0026 64 .byte 100 |
120 .global Parameter_CouplingYawCorrection |
123 Parameter_CouplingYawCorrection: |
124 0027 40 .byte 64 |
125 .global Parameter_AchsKopplung2 |
128 Parameter_AchsKopplung2: |
129 0028 41 .byte 65 |
130 .global Parameter_AchsKopplung1 |
133 Parameter_AchsKopplung1: |
134 0029 5A .byte 90 |
135 .global Parameter_LoopGasLimit |
138 Parameter_LoopGasLimit: |
139 002a 46 .byte 70 |
140 .global Parameter_ServoRollControl |
143 Parameter_ServoRollControl: |
144 002b 64 .byte 100 |
145 .global Parameter_ServoNickControl |
148 Parameter_ServoNickControl: |
149 002c 64 .byte 100 |
150 .global Parameter_UserParam8 |
151 .global Parameter_UserParam8 |
152 .section .bss |
155 Parameter_UserParam8: |
156 000e 00 .skip 1,0 |
157 .global Parameter_UserParam7 |
158 .global Parameter_UserParam7 |
161 Parameter_UserParam7: |
162 000f 00 .skip 1,0 |
163 .global Parameter_UserParam6 |
164 .global Parameter_UserParam6 |
167 Parameter_UserParam6: |
168 0010 00 .skip 1,0 |
169 .global Parameter_UserParam5 |
170 .global Parameter_UserParam5 |
173 Parameter_UserParam5: |
174 0011 00 .skip 1,0 |
175 .global Parameter_UserParam4 |
176 .global Parameter_UserParam4 |
179 Parameter_UserParam4: |
180 0012 00 .skip 1,0 |
181 .global Parameter_UserParam3 |
182 .global Parameter_UserParam3 |
185 Parameter_UserParam3: |
186 0013 00 .skip 1,0 |
187 .global Parameter_UserParam2 |
188 .global Parameter_UserParam2 |
191 Parameter_UserParam2: |
192 0014 00 .skip 1,0 |
193 .global Parameter_UserParam1 |
194 .global Parameter_UserParam1 |
197 Parameter_UserParam1: |
198 0015 00 .skip 1,0 |
199 .global Parameter_I_Faktor |
200 .data |
203 Parameter_I_Faktor: |
204 002d 0A .byte 10 |
205 .global Parameter_Gier_P |
208 Parameter_Gier_P: |
209 002e 02 .byte 2 |
210 .global Parameter_Gyro_Gier_I |
213 Parameter_Gyro_Gier_I: |
214 002f 96 .byte -106 |
215 .global Parameter_Gyro_Gier_P |
218 Parameter_Gyro_Gier_P: |
219 0030 96 .byte -106 |
220 .global Parameter_Gyro_I |
223 Parameter_Gyro_I: |
224 0031 96 .byte -106 |
225 .global Parameter_Gyro_P |
228 Parameter_Gyro_P: |
229 0032 96 .byte -106 |
230 .global Parameter_Gyro_D |
233 Parameter_Gyro_D: |
234 0033 08 .byte 8 |
235 .global Parameter_Hoehe_GPS_Z |
238 Parameter_Hoehe_GPS_Z: |
239 0034 40 .byte 64 |
240 .global Parameter_KompassWirkung |
243 Parameter_KompassWirkung: |
244 0035 40 .byte 64 |
245 .global Parameter_Hoehe_ACC_Wirkung |
248 Parameter_Hoehe_ACC_Wirkung: |
249 0036 3A .byte 58 |
250 .global Parameter_Hoehe_P |
253 Parameter_Hoehe_P: |
254 0037 10 .byte 16 |
255 .global Parameter_MaxHoehe |
258 Parameter_MaxHoehe: |
259 0038 FB .byte -5 |
260 .global Parameter_Luftdruck_D |
263 Parameter_Luftdruck_D: |
264 0039 30 .byte 48 |
265 .global Looping_Oben |
266 .global Looping_Oben |
267 .section .bss |
270 Looping_Oben: |
271 0016 00 .skip 1,0 |
272 .global Looping_Unten |
273 .global Looping_Unten |
276 Looping_Unten: |
277 0017 00 .skip 1,0 |
278 .global Looping_Rechts |
279 .global Looping_Rechts |
282 Looping_Rechts: |
283 0018 00 .skip 1,0 |
284 .global Looping_Links |
285 .global Looping_Links |
288 Looping_Links: |
289 0019 00 .skip 1,0 |
290 .global Looping_Roll |
291 .global Looping_Roll |
294 Looping_Roll: |
295 001a 00 .skip 1,0 |
296 .global Looping_Nick |
297 .global Looping_Nick |
300 Looping_Nick: |
301 001b 00 .skip 1,0 |
302 .global Ki |
303 .data |
306 Ki: |
307 003a 3801 .word 312 |
308 .global HoverGas |
309 .global HoverGas |
310 .section .bss |
313 HoverGas: |
314 001c 0000 .skip 2,0 |
315 .global LageKorrekturNick |
316 .global LageKorrekturNick |
319 LageKorrekturNick: |
320 001e 0000 .skip 2,0 |
321 .global LageKorrekturRoll |
322 .global LageKorrekturRoll |
325 LageKorrekturRoll: |
326 0020 0000 .skip 2,0 |
327 .global SollHoehe |
328 .global SollHoehe |
331 SollHoehe: |
332 0022 0000 0000 .skip 4,0 |
333 .global HoehenWert |
334 .global HoehenWert |
337 HoehenWert: |
338 0026 0000 0000 .skip 4,0 |
339 .global StartTrigger |
340 .global StartTrigger |
343 StartTrigger: |
344 002a 00 .skip 1,0 |
345 .global MotorenEin |
346 .global MotorenEin |
349 MotorenEin: |
350 002b 00 .skip 1,0 |
351 .global StickGas |
352 .global StickGas |
355 StickGas: |
356 002c 0000 .skip 2,0 |
357 .global StickGier |
358 .global StickGier |
361 StickGier: |
362 002e 0000 .skip 2,0 |
363 .global StickRoll |
364 .global StickRoll |
367 StickRoll: |
368 0030 0000 .skip 2,0 |
369 .global StickNick |
370 .global StickNick |
373 StickNick: |
374 0032 0000 .skip 2,0 |
375 .global SenderOkay |
376 .global SenderOkay |
379 SenderOkay: |
380 0034 00 .skip 1,0 |
381 .global Poti |
382 .global Poti |
385 Poti: |
386 0035 0000 0000 .skip 9,0 |
386 0000 0000 |
386 00 |
387 .global GierGyroFehler |
388 .global GierGyroFehler |
391 GierGyroFehler: |
392 003e 0000 .skip 2,0 |
393 .global Umschlag180Roll |
394 .data |
397 Umschlag180Roll: |
398 003c 90D0 0300 .long 250000 |
399 .global Umschlag180Nick |
402 Umschlag180Nick: |
403 0040 90D0 0300 .long 250000 |
404 .global TrichterFlug |
405 .global TrichterFlug |
406 .section .bss |
409 TrichterFlug: |
410 0040 00 .skip 1,0 |
411 .global HoehenReglerAktiv |
412 .global HoehenReglerAktiv |
415 HoehenReglerAktiv: |
416 0041 00 .skip 1,0 |
417 .global KompassSignalSchlecht |
418 .data |
421 KompassSignalSchlecht: |
422 0044 F401 .word 500 |
423 .global KompassRichtung |
424 .global KompassRichtung |
425 .section .bss |
428 KompassRichtung: |
429 0042 0000 .skip 2,0 |
430 .global KompassStartwert |
431 .global KompassStartwert |
434 KompassStartwert: |
435 0044 0000 .skip 2,0 |
436 .global KompassValue |
437 .global KompassValue |
440 KompassValue: |
441 0046 0000 .skip 2,0 |
442 .global Mess_Integral_Hoch |
443 .global Mess_Integral_Hoch |
446 Mess_Integral_Hoch: |
447 0048 0000 0000 .skip 4,0 |
448 .global SummeRoll |
449 .global SummeRoll |
452 SummeRoll: |
453 004c 0000 0000 .skip 4,0 |
454 .global SummeNick |
455 .global SummeNick |
458 SummeNick: |
459 0050 0000 0000 .skip 4,0 |
460 .global Mess_Integral_Gier2 |
461 .global Mess_Integral_Gier2 |
464 Mess_Integral_Gier2: |
465 0054 0000 0000 .skip 4,0 |
466 .global Mess_Integral_Gier |
467 .global Mess_Integral_Gier |
470 Mess_Integral_Gier: |
471 0058 0000 0000 .skip 4,0 |
472 .global Mess_IntegralRoll2 |
473 .global Mess_IntegralRoll2 |
476 Mess_IntegralRoll2: |
477 005c 0000 0000 .skip 4,0 |
478 .global Mess_IntegralRoll |
479 .global Mess_IntegralRoll |
482 Mess_IntegralRoll: |
483 0060 0000 0000 .skip 4,0 |
484 .global Mess_IntegralNick2 |
485 .global Mess_IntegralNick2 |
488 Mess_IntegralNick2: |
489 0064 0000 0000 .skip 4,0 |
490 .global Mess_IntegralNick |
491 .global Mess_IntegralNick |
494 Mess_IntegralNick: |
495 0068 0000 0000 .skip 4,0 |
496 .global Integral_Gier |
497 .global Integral_Gier |
500 Integral_Gier: |
501 006c 0000 0000 .skip 4,0 |
502 .global IntegralAccZ |
503 .global IntegralAccZ |
506 IntegralAccZ: |
507 0070 0000 0000 .skip 4,0 |
508 .global IntegralAccRoll |
509 .global IntegralAccRoll |
512 IntegralAccRoll: |
513 0074 0000 0000 .skip 4,0 |
514 .global IntegralAccNick |
515 .global IntegralAccNick |
518 IntegralAccNick: |
519 0078 0000 0000 .skip 4,0 |
520 .global IntegralRoll2 |
521 .global IntegralRoll2 |
524 IntegralRoll2: |
525 007c 0000 0000 .skip 4,0 |
526 .global IntegralRoll |
527 .global IntegralRoll |
530 IntegralRoll: |
531 0080 0000 0000 .skip 4,0 |
532 .global IntegralNick2 |
533 .global IntegralNick2 |
536 IntegralNick2: |
537 0084 0000 0000 .skip 4,0 |
538 .global IntegralNick |
539 .global IntegralNick |
542 IntegralNick: |
543 0088 0000 0000 .skip 4,0 |
544 .global ControlHeading |
545 .global ControlHeading |
548 ControlHeading: |
549 008c 00 .skip 1,0 |
550 .global NeutralAccZ |
551 .global NeutralAccZ |
554 NeutralAccZ: |
555 008d 0000 .skip 2,0 |
556 .global NaviCntAcc |
557 .global NaviCntAcc |
560 NaviCntAcc: |
561 008f 0000 .skip 2,0 |
562 .global NeutralAccY |
563 .global NeutralAccY |
566 NeutralAccY: |
567 0091 0000 .skip 2,0 |
568 .global NeutralAccX |
569 .global NeutralAccX |
572 NeutralAccX: |
573 0093 0000 .skip 2,0 |
574 .global StartNeutralNick |
575 .global StartNeutralNick |
578 StartNeutralNick: |
579 0095 0000 .skip 2,0 |
580 .global StartNeutralRoll |
581 .global StartNeutralRoll |
584 StartNeutralRoll: |
585 0097 0000 .skip 2,0 |
586 .global AdNeutralGier |
587 .global AdNeutralGier |
590 AdNeutralGier: |
591 0099 0000 .skip 2,0 |
592 .global AdNeutralRoll |
593 .global AdNeutralRoll |
596 AdNeutralRoll: |
597 009b 0000 .skip 2,0 |
598 .global AdNeutralNick |
599 .global AdNeutralNick |
602 AdNeutralNick: |
603 009d 0000 .skip 2,0 |
604 .global BaroExpandActive |
605 .global BaroExpandActive |
608 BaroExpandActive: |
609 009f 0000 .skip 2,0 |
610 .global updatemotors |
611 .data |
614 updatemotors: |
615 0046 05 .byte 5 |
616 .global pos4 |
617 .global pos4 |
618 .section .bss |
621 pos4: |
622 00a1 00 .skip 1,0 |
623 .global CurrentOffset |
624 .global CurrentOffset |
627 CurrentOffset: |
628 00a2 0000 .skip 2,0 |
629 .global keynumber |
630 .data |
633 keynumber: |
634 0047 F9FF .word -7 |
635 .global settingdest |
638 settingdest: |
639 0049 05 .byte 5 |
640 .text |
641 .global CopyDebugValues |
643 CopyDebugValues: |
644 /* prologue: frame size=0 */ |
645 0000 EF92 push r14 |
646 0002 FF92 push r15 |
647 0004 0F93 push r16 |
648 0006 1F93 push r17 |
649 /* prologue end (size=4) */ |
650 0008 8091 0000 lds r24,EE_Parameter+28 |
651 000c 9927 clr r25 |
652 000e 880F lsl r24 |
653 0010 991F rol r25 |
654 0012 880F lsl r24 |
655 0014 991F rol r25 |
656 0016 7C01 movw r14,r24 |
657 0018 0027 clr r16 |
658 001a F7FC sbrc r15,7 |
659 001c 0095 com r16 |
660 001e 102F mov r17,r16 |
661 0020 8091 0000 lds r24,IntegralNick |
662 0024 9091 0000 lds r25,(IntegralNick)+1 |
663 0028 A091 0000 lds r26,(IntegralNick)+2 |
664 002c B091 0000 lds r27,(IntegralNick)+3 |
665 0030 BC01 movw r22,r24 |
666 0032 CD01 movw r24,r26 |
667 0034 A801 movw r20,r16 |
668 0036 9701 movw r18,r14 |
669 0038 0E94 0000 call __divmodsi4 |
670 003c 3093 0000 sts (DebugOut+2)+1,r19 |
671 0040 2093 0000 sts DebugOut+2,r18 |
672 0044 8091 0000 lds r24,IntegralRoll |
673 0048 9091 0000 lds r25,(IntegralRoll)+1 |
674 004c A091 0000 lds r26,(IntegralRoll)+2 |
675 0050 B091 0000 lds r27,(IntegralRoll)+3 |
676 0054 BC01 movw r22,r24 |
677 0056 CD01 movw r24,r26 |
678 0058 A801 movw r20,r16 |
679 005a 9701 movw r18,r14 |
680 005c 0E94 0000 call __divmodsi4 |
681 0060 3093 0000 sts (DebugOut+4)+1,r19 |
682 0064 2093 0000 sts DebugOut+4,r18 |
683 0068 8091 0000 lds r24,Mittelwert_AccNick |
684 006c 9091 0000 lds r25,(Mittelwert_AccNick)+1 |
685 0070 97FD sbrc r25,7 |
686 0072 0396 adiw r24,3 |
687 .L2: |
688 0074 9595 asr r25 |
689 0076 8795 ror r24 |
690 0078 9595 asr r25 |
691 007a 8795 ror r24 |
692 007c 9093 0000 sts (DebugOut+6)+1,r25 |
693 0080 8093 0000 sts DebugOut+6,r24 |
694 0084 8091 0000 lds r24,Mittelwert_AccRoll |
695 0088 9091 0000 lds r25,(Mittelwert_AccRoll)+1 |
696 008c 97FD sbrc r25,7 |
697 008e 0396 adiw r24,3 |
698 .L3: |
699 0090 9595 asr r25 |
700 0092 8795 ror r24 |
701 0094 9595 asr r25 |
702 0096 8795 ror r24 |
703 0098 9093 0000 sts (DebugOut+8)+1,r25 |
704 009c 8093 0000 sts DebugOut+8,r24 |
705 00a0 8091 0000 lds r24,AdNeutralGier |
706 00a4 9091 0000 lds r25,(AdNeutralGier)+1 |
707 00a8 2091 0000 lds r18,AdWertGier |
708 00ac 3091 0000 lds r19,(AdWertGier)+1 |
709 00b0 821B sub r24,r18 |
710 00b2 930B sbc r25,r19 |
711 00b4 9093 0000 sts (DebugOut+10)+1,r25 |
712 00b8 8093 0000 sts DebugOut+10,r24 |
713 00bc 8091 0000 lds r24,HoehenWert |
714 00c0 9091 0000 lds r25,(HoehenWert)+1 |
715 00c4 A091 0000 lds r26,(HoehenWert)+2 |
716 00c8 B091 0000 lds r27,(HoehenWert)+3 |
717 00cc BC01 movw r22,r24 |
718 00ce CD01 movw r24,r26 |
719 00d0 25E0 ldi r18,lo8(5) |
720 00d2 30E0 ldi r19,hi8(5) |
721 00d4 40E0 ldi r20,hlo8(5) |
722 00d6 50E0 ldi r21,hhi8(5) |
723 00d8 0E94 0000 call __divmodsi4 |
724 00dc 3093 0000 sts (DebugOut+12)+1,r19 |
725 00e0 2093 0000 sts DebugOut+12,r18 |
726 00e4 8091 0000 lds r24,AdWertAccHoch |
727 00e8 9091 0000 lds r25,(AdWertAccHoch)+1 |
728 00ec 9093 0000 sts (DebugOut+14)+1,r25 |
729 00f0 8093 0000 sts DebugOut+14,r24 |
730 00f4 8091 0000 lds r24,KompassValue |
731 00f8 9091 0000 lds r25,(KompassValue)+1 |
732 00fc 9093 0000 sts (DebugOut+18)+1,r25 |
733 0100 8093 0000 sts DebugOut+18,r24 |
734 0104 8091 0000 lds r24,UBat |
735 0108 9091 0000 lds r25,(UBat)+1 |
736 010c 9093 0000 sts (DebugOut+20)+1,r25 |
737 0110 8093 0000 sts DebugOut+20,r24 |
738 0114 8091 0000 lds r24,SenderOkay |
739 0118 9927 clr r25 |
740 011a 9093 0000 sts (DebugOut+22)+1,r25 |
741 011e 8093 0000 sts DebugOut+22,r24 |
742 0122 8091 0000 lds r24,ErsatzKompass |
743 0126 9091 0000 lds r25,(ErsatzKompass)+1 |
744 012a A091 0000 lds r26,(ErsatzKompass)+2 |
745 012e B091 0000 lds r27,(ErsatzKompass)+3 |
746 0132 2091 0000 lds r18,GIER_GRAD_FAKTOR |
747 0136 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1 |
748 013a 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2 |
749 013e 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3 |
750 0142 BC01 movw r22,r24 |
751 0144 CD01 movw r24,r26 |
752 0146 0E94 0000 call __divmodsi4 |
753 014a 3093 0000 sts (DebugOut+24)+1,r19 |
754 014e 2093 0000 sts DebugOut+24,r18 |
755 0152 8091 0000 lds r24,Motor+1 |
756 0156 9927 clr r25 |
757 0158 9093 0000 sts (DebugOut+26)+1,r25 |
758 015c 8093 0000 sts DebugOut+26,r24 |
759 0160 8091 0000 lds r24,Motor+9 |
760 0164 9927 clr r25 |
761 0166 9093 0000 sts (DebugOut+28)+1,r25 |
762 016a 8093 0000 sts DebugOut+28,r24 |
763 016e 8091 0000 lds r24,Motor+17 |
764 0172 9927 clr r25 |
765 0174 9093 0000 sts (DebugOut+30)+1,r25 |
766 0178 8093 0000 sts DebugOut+30,r24 |
767 017c 8091 0000 lds r24,Motor+25 |
768 0180 9927 clr r25 |
769 0182 9093 0000 sts (DebugOut+32)+1,r25 |
770 0186 8093 0000 sts DebugOut+32,r24 |
771 018a 8091 0000 lds r24,ServoNickValue |
772 018e 9091 0000 lds r25,(ServoNickValue)+1 |
773 0192 9093 0000 sts (DebugOut+42)+1,r25 |
774 0196 8093 0000 sts DebugOut+42,r24 |
775 019a 8091 0000 lds r24,Capacity |
776 019e 9091 0000 lds r25,(Capacity)+1 |
777 01a2 9093 0000 sts (DebugOut+46)+1,r25 |
778 01a6 8093 0000 sts DebugOut+46,r24 |
779 01aa 8091 0000 lds r24,Capacity+6 |
780 01ae 9091 0000 lds r25,(Capacity+6)+1 |
781 01b2 9093 0000 sts (DebugOut+48)+1,r25 |
782 01b6 8093 0000 sts DebugOut+48,r24 |
783 01ba 8091 0000 lds r24,Capacity+8 |
784 01be 9927 clr r25 |
785 01c0 9093 0000 sts (DebugOut+60)+1,r25 |
786 01c4 8093 0000 sts DebugOut+60,r24 |
787 01c8 8091 0000 lds r24,GPS_Nick |
788 01cc 9091 0000 lds r25,(GPS_Nick)+1 |
789 01d0 9093 0000 sts (DebugOut+62)+1,r25 |
790 01d4 8093 0000 sts DebugOut+62,r24 |
791 01d8 8091 0000 lds r24,GPS_Roll |
792 01dc 9091 0000 lds r25,(GPS_Roll)+1 |
793 01e0 9093 0000 sts (DebugOut+64)+1,r25 |
794 01e4 8093 0000 sts DebugOut+64,r24 |
795 01e8 8091 0000 lds r24,VersionInfo+5 |
796 01ec 8823 tst r24 |
797 01ee 21F4 brne .L5 |
798 01f0 8091 0000 lds r24,VersionInfo+6 |
799 01f4 8823 tst r24 |
800 01f6 21F0 breq .L4 |
801 .L5: |
802 01f8 8091 0000 lds r24,DebugOut+1 |
803 01fc 8160 ori r24,lo8(1) |
804 01fe 03C0 rjmp .L7 |
805 .L4: |
806 0200 8091 0000 lds r24,DebugOut+1 |
807 0204 8E7F andi r24,lo8(-2) |
808 .L7: |
809 0206 8093 0000 sts DebugOut+1,r24 |
810 /* epilogue: frame size=0 */ |
811 020a 1F91 pop r17 |
812 020c 0F91 pop r16 |
813 020e FF90 pop r15 |
814 0210 EF90 pop r14 |
815 0212 0895 ret |
816 /* epilogue end (size=5) */ |
817 /* function CopyDebugValues size 268 (259) */ |
819 .global Piep |
821 Piep: |
822 /* prologue: frame size=0 */ |
823 0214 1F93 push r17 |
824 0216 CF93 push r28 |
825 0218 DF93 push r29 |
826 /* prologue end (size=3) */ |
827 021a 182F mov r17,r24 |
828 021c EB01 movw r28,r22 |
829 021e 8091 0000 lds r24,MotorenEin |
830 0222 8823 tst r24 |
831 0224 A1F4 brne .L8 |
832 0226 1150 subi r17,lo8(-(-1)) |
833 0228 1F3F cpi r17,lo8(-1) |
834 022a 89F0 breq .L8 |
835 .L15: |
836 022c D093 0000 sts (beeptime)+1,r29 |
837 0230 C093 0000 sts beeptime,r28 |
838 .L12: |
839 0234 8091 0000 lds r24,beeptime |
840 0238 9091 0000 lds r25,(beeptime)+1 |
841 023c 892B or r24,r25 |
842 023e D1F7 brne .L12 |
843 0240 CE01 movw r24,r28 |
844 0242 8C0F add r24,r28 |
845 0244 9D1F adc r25,r29 |
846 0246 0E94 0000 call Delay_ms |
847 024a 1150 subi r17,1 |
848 024c 78F7 brcc .L15 |
849 .L8: |
850 /* epilogue: frame size=0 */ |
851 024e DF91 pop r29 |
852 0250 CF91 pop r28 |
853 0252 1F91 pop r17 |
854 0254 0895 ret |
855 /* epilogue end (size=4) */ |
856 /* function Piep size 34 (27) */ |
858 .global CalibrierMittelwert |
860 CalibrierMittelwert: |
861 /* prologue: frame size=0 */ |
862 0256 CF93 push r28 |
863 0258 DF93 push r29 |
864 /* prologue end (size=2) */ |
865 025a 8091 0000 lds r24,PlatinenVersion |
866 025e 8D30 cpi r24,lo8(13) |
867 0260 11F4 brne .L18 |
868 0262 0E94 0000 call SucheGyroOffset |
869 .L18: |
870 0266 1092 7A00 sts 122,__zero_reg__ |
871 026a 8091 0000 lds r24,AdWertNick |
872 026e 9091 0000 lds r25,(AdWertNick)+1 |
873 0272 9093 0000 sts (MesswertNick)+1,r25 |
874 0276 8093 0000 sts MesswertNick,r24 |
875 027a 8091 0000 lds r24,AdWertRoll |
876 027e 9091 0000 lds r25,(AdWertRoll)+1 |
877 0282 9093 0000 sts (MesswertRoll)+1,r25 |
878 0286 8093 0000 sts MesswertRoll,r24 |
879 028a 8091 0000 lds r24,AdWertGier |
880 028e 9091 0000 lds r25,(AdWertGier)+1 |
881 0292 9093 0000 sts (MesswertGier)+1,r25 |
882 0296 8093 0000 sts MesswertGier,r24 |
883 029a 2091 0000 lds r18,AdWertAccNick |
884 029e 3091 0000 lds r19,(AdWertAccNick)+1 |
885 02a2 C901 movw r24,r18 |
886 02a4 880F lsl r24 |
887 02a6 991F rol r25 |
888 02a8 880F lsl r24 |
889 02aa 991F rol r25 |
890 02ac 820F add r24,r18 |
891 02ae 931F adc r25,r19 |
892 02b0 820F add r24,r18 |
893 02b2 931F adc r25,r19 |
894 02b4 9093 0000 sts (Mittelwert_AccNick)+1,r25 |
895 02b8 8093 0000 sts Mittelwert_AccNick,r24 |
896 02bc 2091 0000 lds r18,AdWertAccRoll |
897 02c0 3091 0000 lds r19,(AdWertAccRoll)+1 |
898 02c4 C901 movw r24,r18 |
899 02c6 880F lsl r24 |
900 02c8 991F rol r25 |
901 02ca 880F lsl r24 |
902 02cc 991F rol r25 |
903 02ce 820F add r24,r18 |
904 02d0 931F adc r25,r19 |
905 02d2 820F add r24,r18 |
906 02d4 931F adc r25,r19 |
907 02d6 9093 0000 sts (Mittelwert_AccRoll)+1,r25 |
908 02da 8093 0000 sts Mittelwert_AccRoll,r24 |
909 02de 8FEC ldi r24,lo8(-49) |
910 02e0 8093 7A00 sts 122,r24 |
911 02e4 A0E0 ldi r26,lo8(Poti) |
912 02e6 B0E0 ldi r27,hi8(Poti) |
913 02e8 C0E0 ldi r28,lo8(EE_Parameter+5) |
914 02ea D0E0 ldi r29,hi8(EE_Parameter+5) |
915 02ec 97E0 ldi r25,lo8(7) |
916 .L28: |
917 02ee 8991 ld r24,Y+ |
918 02f0 E82F mov r30,r24 |
919 02f2 FF27 clr r31 |
920 02f4 EE0F add r30,r30 |
921 02f6 FF1F adc r31,r31 |
922 02f8 E050 subi r30,lo8(-(PPM_in)) |
923 02fa F040 sbci r31,hi8(-(PPM_in)) |
924 02fc 0190 ld __tmp_reg__,Z+ |
925 02fe F081 ld r31,Z |
926 0300 E02D mov r30,__tmp_reg__ |
927 0302 E259 subi r30,lo8(-(110)) |
928 0304 FF4F sbci r31,hi8(-(110)) |
929 0306 1E16 cp __zero_reg__,r30 |
930 0308 1F06 cpc __zero_reg__,r31 |
931 030a 1CF0 brlt .L22 |
932 030c E0E0 ldi r30,lo8(0) |
933 030e F0E0 ldi r31,hi8(0) |
934 0310 05C0 rjmp .L23 |
935 .L22: |
936 0312 EF3F cpi r30,255 |
937 0314 F105 cpc r31,__zero_reg__ |
938 0316 14F0 brlt .L23 |
939 0318 EFEF ldi r30,lo8(255) |
940 031a F0E0 ldi r31,hi8(255) |
941 .L23: |
942 031c 8C91 ld r24,X |
943 031e 282F mov r18,r24 |
944 0320 3327 clr r19 |
945 0322 E217 cp r30,r18 |
946 0324 F307 cpc r31,r19 |
947 0326 14F4 brge .L25 |
948 0328 8150 subi r24,lo8(-(-1)) |
949 032a 04C0 rjmp .L31 |
950 .L25: |
951 032c 2E17 cp r18,r30 |
952 032e 3F07 cpc r19,r31 |
953 0330 14F4 brge .L21 |
954 0332 8F5F subi r24,lo8(-(1)) |
955 .L31: |
956 0334 8C93 st X,r24 |
957 .L21: |
958 0336 9150 subi r25,lo8(-(-1)) |
959 0338 1196 adiw r26,1 |
960 033a 97FF sbrs r25,7 |
961 033c D8CF rjmp .L28 |
962 033e 8091 0000 lds r24,EE_Parameter+65 |
963 0342 9927 clr r25 |
964 0344 AA27 clr r26 |
965 0346 BB27 clr r27 |
966 0348 BC01 movw r22,r24 |
967 034a CD01 movw r24,r26 |
968 034c 24EC ldi r18,lo8(2500) |
969 034e 39E0 ldi r19,hi8(2500) |
970 0350 40E0 ldi r20,hlo8(2500) |
971 0352 50E0 ldi r21,hhi8(2500) |
972 0354 0E94 0000 call __mulsi3 |
973 0358 DC01 movw r26,r24 |
974 035a CB01 movw r24,r22 |
975 035c 8093 0000 sts Umschlag180Nick,r24 |
976 0360 9093 0000 sts (Umschlag180Nick)+1,r25 |
977 0364 A093 0000 sts (Umschlag180Nick)+2,r26 |
978 0368 B093 0000 sts (Umschlag180Nick)+3,r27 |
979 036c 8091 0000 lds r24,EE_Parameter+66 |
980 0370 9927 clr r25 |
981 0372 AA27 clr r26 |
982 0374 BB27 clr r27 |
983 0376 BC01 movw r22,r24 |
984 0378 CD01 movw r24,r26 |
985 037a 0E94 0000 call __mulsi3 |
986 037e DC01 movw r26,r24 |
987 0380 CB01 movw r24,r22 |
988 0382 8093 0000 sts Umschlag180Roll,r24 |
989 0386 9093 0000 sts (Umschlag180Roll)+1,r25 |
990 038a A093 0000 sts (Umschlag180Roll)+2,r26 |
991 038e B093 0000 sts (Umschlag180Roll)+3,r27 |
992 /* epilogue: frame size=0 */ |
993 0392 DF91 pop r29 |
994 0394 CF91 pop r28 |
995 0396 0895 ret |
996 /* epilogue end (size=3) */ |
997 /* function CalibrierMittelwert size 161 (156) */ |
999 .section .progmem.data,"a",@progbits |
1002 __c.39: |
1003 0000 0A0D 4143 .string "\n\rACC not calibrated!\r\n" |
1003 4320 6E6F |
1003 7420 6361 |
1003 6C69 6272 |
1003 6174 6564 |
1004 .text |
1005 .global SetNeutral |
1007 SetNeutral: |
1008 /* prologue: frame size=0 */ |
1009 0398 A0E0 ldi r26,lo8(0) |
1010 039a B0E0 ldi r27,hi8(0) |
1011 039c E0E0 ldi r30,pm_lo8(1f) |
1012 039e F0E0 ldi r31,pm_hi8(1f) |
1013 03a0 0C94 0000 jmp __prologue_saves__+12 |
1014 1: |
1015 /* prologue end (size=6) */ |
1016 03a4 882E mov r8,r24 |
1017 03a6 C0E0 ldi r28,lo8(0) |
1018 03a8 D0E0 ldi r29,hi8(0) |
1019 03aa 7E01 movw r14,r28 |
1020 03ac 6E01 movw r12,r28 |
1021 03ae 1092 0000 sts VersionInfo+5,__zero_reg__ |
1022 03b2 469A sbi 40-0x20,6 |
1023 03b4 D093 0000 sts (NeutralAccX)+1,r29 |
1024 03b8 C093 0000 sts NeutralAccX,r28 |
1025 03bc D093 0000 sts (NeutralAccY)+1,r29 |
1026 03c0 C093 0000 sts NeutralAccY,r28 |
1027 03c4 D093 0000 sts (NeutralAccZ)+1,r29 |
1028 03c8 C093 0000 sts NeutralAccZ,r28 |
1029 03cc D093 0000 sts (AdNeutralNick)+1,r29 |
1030 03d0 C093 0000 sts AdNeutralNick,r28 |
1031 03d4 D093 0000 sts (AdNeutralRoll)+1,r29 |
1032 03d8 C093 0000 sts AdNeutralRoll,r28 |
1033 03dc D093 0000 sts (AdNeutralGier)+1,r29 |
1034 03e0 C093 0000 sts AdNeutralGier,r28 |
1035 03e4 1092 0000 sts Parameter_AchsKopplung1,__zero_reg__ |
1036 03e8 1092 0000 sts Parameter_AchsKopplung2,__zero_reg__ |
1037 03ec 1092 0000 sts ExpandBaro,__zero_reg__ |
1038 03f0 0E94 0000 call CalibrierMittelwert |
1039 03f4 84E6 ldi r24,lo8(100) |
1040 03f6 90E0 ldi r25,hi8(100) |
1041 03f8 0E94 0000 call Delay_ms_Mess |
1042 03fc 0E94 0000 call CalibrierMittelwert |
1043 0400 8091 0000 lds r24,EE_Parameter+13 |
1044 0404 80FF sbrs r24,0 |
1045 0406 10C0 rjmp .L33 |
1046 0408 8091 0000 lds r24,MessLuftdruck |
1047 040c 9091 0000 lds r25,(MessLuftdruck)+1 |
1048 0410 875B subi r24,lo8(951) |
1049 0412 9340 sbci r25,hi8(951) |
1050 0414 38F4 brsh .L35 |
1051 0416 8091 0000 lds r24,MessLuftdruck |
1052 041a 9091 0000 lds r25,(MessLuftdruck)+1 |
1053 041e 8E5E subi r24,lo8(750) |
1054 0420 9240 sbci r25,hi8(750) |
1055 0422 10F4 brsh .L33 |
1056 .L35: |
1057 0424 0E94 0000 call SucheLuftruckOffset |
1058 .L33: |
1059 0428 0FE1 ldi r16,lo8(31) |
1060 .L39: |
1061 042a 8AE0 ldi r24,lo8(10) |
1062 042c 90E0 ldi r25,hi8(10) |
1063 042e 0E94 0000 call Delay_ms_Mess |
1064 0432 8091 0000 lds r24,AdWertGier |
1065 0436 9091 0000 lds r25,(AdWertGier)+1 |
1066 043a C80F add r28,r24 |
1067 043c D91F adc r29,r25 |
1068 043e 8091 0000 lds r24,AdWertNick |
1069 0442 9091 0000 lds r25,(AdWertNick)+1 |
1070 0446 E80E add r14,r24 |
1071 0448 F91E adc r15,r25 |
1072 044a 8091 0000 lds r24,AdWertRoll |
1073 044e 9091 0000 lds r25,(AdWertRoll)+1 |
1074 0452 C80E add r12,r24 |
1075 0454 D91E adc r13,r25 |
1076 0456 0150 subi r16,lo8(-(-1)) |
1077 0458 07FF sbrs r16,7 |
1078 045a E7CF rjmp .L39 |
1079 045c 9701 movw r18,r14 |
1080 045e 205F subi r18,lo8(-(16)) |
1081 0460 3F4F sbci r19,hi8(-(16)) |
1082 0462 3695 lsr r19 |
1083 0464 2795 ror r18 |
1084 0466 3695 lsr r19 |
1085 0468 2795 ror r18 |
1086 046a 3093 0000 sts (AdNeutralNick)+1,r19 |
1087 046e 2093 0000 sts AdNeutralNick,r18 |
1088 0472 C601 movw r24,r12 |
1089 0474 4096 adiw r24,16 |
1090 0476 9695 lsr r25 |
1091 0478 8795 ror r24 |
1092 047a 9695 lsr r25 |
1093 047c 8795 ror r24 |
1094 047e 9093 0000 sts (AdNeutralRoll)+1,r25 |
1095 0482 8093 0000 sts AdNeutralRoll,r24 |
1096 0486 6096 adiw r28,16 |
1097 0488 F5E0 ldi r31,5 |
1098 048a D695 1: lsr r29 |
1099 048c C795 ror r28 |
1100 048e FA95 dec r31 |
1101 0490 E1F7 brne 1b |
1102 0492 D093 0000 sts (AdNeutralGier)+1,r29 |
1103 0496 C093 0000 sts AdNeutralGier,r28 |
1104 049a 9093 0000 sts (StartNeutralRoll)+1,r25 |
1105 049e 8093 0000 sts StartNeutralRoll,r24 |
1106 04a2 3093 0000 sts (StartNeutralNick)+1,r19 |
1107 04a6 2093 0000 sts StartNeutralNick,r18 |
1108 04aa 8820 tst r8 |
1109 04ac 09F4 brne .+2 |
1110 04ae 41C0 rjmp .L40 |
1111 04b0 8091 0000 lds r24,Mittelwert_AccNick |
1112 04b4 9091 0000 lds r25,(Mittelwert_AccNick)+1 |
1113 04b8 97FF sbrs r25,7 |
1114 04ba 03C0 rjmp .L41 |
1115 04bc 9095 com r25 |
1116 04be 8195 neg r24 |
1117 04c0 9F4F sbci r25,lo8(-1) |
1118 .L41: |
1119 04c2 6CE0 ldi r22,lo8(12) |
1120 04c4 70E0 ldi r23,hi8(12) |
1121 04c6 0E94 0000 call __divmodhi4 |
1122 04ca 9B01 movw r18,r22 |
1123 04cc 7093 0000 sts (NeutralAccX)+1,r23 |
1124 04d0 6093 0000 sts NeutralAccX,r22 |
1125 04d4 8091 0000 lds r24,Mittelwert_AccRoll |
1126 04d8 9091 0000 lds r25,(Mittelwert_AccRoll)+1 |
1127 04dc 97FF sbrs r25,7 |
1128 04de 03C0 rjmp .L42 |
1129 04e0 9095 com r25 |
1130 04e2 8195 neg r24 |
1131 04e4 9F4F sbci r25,lo8(-1) |
1132 .L42: |
1133 04e6 6CE0 ldi r22,lo8(12) |
1134 04e8 70E0 ldi r23,hi8(12) |
1135 04ea 0E94 0000 call __divmodhi4 |
1136 04ee 7093 0000 sts (NeutralAccY)+1,r23 |
1137 04f2 6093 0000 sts NeutralAccY,r22 |
1138 04f6 8091 0000 lds r24,Aktuell_az |
1139 04fa 9091 0000 lds r25,(Aktuell_az)+1 |
1140 04fe 9093 0000 sts (NeutralAccZ)+1,r25 |
1141 0502 8093 0000 sts NeutralAccZ,r24 |
1142 0506 B901 movw r22,r18 |
1143 0508 84E0 ldi r24,lo8(4) |
1144 050a 90E0 ldi r25,hi8(4) |
1145 050c 0E94 0000 call SetParamWord |
1146 0510 6091 0000 lds r22,NeutralAccY |
1147 0514 7091 0000 lds r23,(NeutralAccY)+1 |
1148 0518 86E0 ldi r24,lo8(6) |
1149 051a 90E0 ldi r25,hi8(6) |
1150 051c 0E94 0000 call SetParamWord |
1151 0520 6091 0000 lds r22,NeutralAccZ |
1152 0524 7091 0000 lds r23,(NeutralAccZ)+1 |
1153 0528 88E0 ldi r24,lo8(8) |
1154 052a 90E0 ldi r25,hi8(8) |
1155 052c 0E94 0000 call SetParamWord |
1156 0530 65C0 rjmp .L43 |
1157 .L40: |
1158 0532 84E0 ldi r24,lo8(4) |
1159 0534 90E0 ldi r25,hi8(4) |
1160 0536 0E94 0000 call GetParamWord |
1161 053a 9093 0000 sts (NeutralAccX)+1,r25 |
1162 053e 8093 0000 sts NeutralAccX,r24 |
1163 0542 86E0 ldi r24,lo8(6) |
1164 0544 90E0 ldi r25,hi8(6) |
1165 0546 0E94 0000 call GetParamWord |
1166 054a 9093 0000 sts (NeutralAccY)+1,r25 |
1167 054e 8093 0000 sts NeutralAccY,r24 |
1168 0552 88E0 ldi r24,lo8(8) |
1169 0554 90E0 ldi r25,hi8(8) |
1170 0556 0E94 0000 call GetParamWord |
1171 055a 9C01 movw r18,r24 |
1172 055c 9093 0000 sts (NeutralAccZ)+1,r25 |
1173 0560 8093 0000 sts NeutralAccZ,r24 |
1174 0564 8091 0000 lds r24,NeutralAccX |
1175 0568 9091 0000 lds r25,(NeutralAccX)+1 |
1176 056c 8150 subi r24,lo8(2049) |
1177 056e 9840 sbci r25,hi8(2049) |
1178 0570 50F4 brsh .L45 |
1179 0572 8091 0000 lds r24,NeutralAccY |
1180 0576 9091 0000 lds r25,(NeutralAccY)+1 |
1181 057a 8150 subi r24,lo8(2049) |
1182 057c 9840 sbci r25,hi8(2049) |
1183 057e 18F4 brsh .L45 |
1184 0580 2150 subi r18,lo8(1025) |
1185 0582 3440 sbci r19,hi8(1025) |
1186 0584 D8F1 brlo .L43 |
1187 .L45: |
1188 0586 80E0 ldi r24,lo8(__c.39) |
1189 0588 90E0 ldi r25,hi8(__c.39) |
1190 058a 9F93 push r25 |
1191 058c 8F93 push r24 |
1192 058e 80E0 ldi r24,lo8(pm(uart_putchar)) |
1193 0590 90E0 ldi r25,hi8(pm(uart_putchar)) |
1194 0592 9F93 push r25 |
1195 0594 8F93 push r24 |
1196 0596 E091 0000 lds r30,_printf_P |
1197 059a F091 0000 lds r31,(_printf_P)+1 |
1198 059e 0995 icall |
1199 05a0 8091 0000 lds r24,Mittelwert_AccNick |
1200 05a4 9091 0000 lds r25,(Mittelwert_AccNick)+1 |
1201 05a8 97FF sbrs r25,7 |
1202 05aa 03C0 rjmp .L46 |
1203 05ac 9095 com r25 |
1204 05ae 8195 neg r24 |
1205 05b0 9F4F sbci r25,lo8(-1) |
1206 .L46: |
1207 05b2 6CE0 ldi r22,lo8(12) |
1208 05b4 70E0 ldi r23,hi8(12) |
1209 05b6 0E94 0000 call __divmodhi4 |
1210 05ba 7093 0000 sts (NeutralAccX)+1,r23 |
1211 05be 6093 0000 sts NeutralAccX,r22 |
1212 05c2 8091 0000 lds r24,Mittelwert_AccRoll |
1213 05c6 9091 0000 lds r25,(Mittelwert_AccRoll)+1 |
1214 05ca 97FF sbrs r25,7 |
1215 05cc 03C0 rjmp .L47 |
1216 05ce 9095 com r25 |
1217 05d0 8195 neg r24 |
1218 05d2 9F4F sbci r25,lo8(-1) |
1219 .L47: |
1220 05d4 6CE0 ldi r22,lo8(12) |
1221 05d6 70E0 ldi r23,hi8(12) |
1222 05d8 0E94 0000 call __divmodhi4 |
1223 05dc 7093 0000 sts (NeutralAccY)+1,r23 |
1224 05e0 6093 0000 sts NeutralAccY,r22 |
1225 05e4 8091 0000 lds r24,Aktuell_az |
1226 05e8 9091 0000 lds r25,(Aktuell_az)+1 |
1227 05ec 9093 0000 sts (NeutralAccZ)+1,r25 |
1228 05f0 8093 0000 sts NeutralAccZ,r24 |
1229 05f4 0F90 pop __tmp_reg__ |
1230 05f6 0F90 pop __tmp_reg__ |
1231 05f8 0F90 pop __tmp_reg__ |
1232 05fa 0F90 pop __tmp_reg__ |
1233 .L43: |
1234 05fc 1092 0000 sts (MesswertNick)+1,__zero_reg__ |
1235 0600 1092 0000 sts MesswertNick,__zero_reg__ |
1236 0604 1092 0000 sts (MesswertRoll)+1,__zero_reg__ |
1237 0608 1092 0000 sts MesswertRoll,__zero_reg__ |
1238 060c 1092 0000 sts (MesswertGier)+1,__zero_reg__ |
1239 0610 1092 0000 sts MesswertGier,__zero_reg__ |
1240 0614 84E6 ldi r24,lo8(100) |
1241 0616 90E0 ldi r25,hi8(100) |
1242 0618 0E94 0000 call Delay_ms_Mess |
1243 061c 8091 0000 lds r24,AdWertAccNick |
1244 0620 9091 0000 lds r25,(AdWertAccNick)+1 |
1245 0624 9C01 movw r18,r24 |
1246 0626 220F lsl r18 |
1247 0628 331F rol r19 |
1248 062a 220F lsl r18 |
1249 062c 331F rol r19 |
1250 062e 280F add r18,r24 |
1251 0630 391F adc r19,r25 |
1252 0632 280F add r18,r24 |
1253 0634 391F adc r19,r25 |
1254 0636 3093 0000 sts (Mittelwert_AccNick)+1,r19 |
1255 063a 2093 0000 sts Mittelwert_AccNick,r18 |
1256 063e 8091 0000 lds r24,AdWertAccRoll |
1257 0642 9091 0000 lds r25,(AdWertAccRoll)+1 |
1258 0646 8C01 movw r16,r24 |
1259 0648 000F lsl r16 |
1260 064a 111F rol r17 |
1261 064c 000F lsl r16 |
1262 064e 111F rol r17 |
1263 0650 080F add r16,r24 |
1264 0652 191F adc r17,r25 |
1265 0654 080F add r16,r24 |
1266 0656 191F adc r17,r25 |
1267 0658 1093 0000 sts (Mittelwert_AccRoll)+1,r17 |
1268 065c 0093 0000 sts Mittelwert_AccRoll,r16 |
1269 0660 8091 0000 lds r24,EE_Parameter+28 |
1270 0664 C82E mov r12,r24 |
1271 0666 DD24 clr r13 |
1272 0668 EE24 clr r14 |
1273 066a FF24 clr r15 |
1274 066c 4427 clr r20 |
1275 066e 37FD sbrc r19,7 |
1276 0670 4095 com r20 |
1277 0672 542F mov r21,r20 |
1278 0674 C701 movw r24,r14 |
1279 0676 B601 movw r22,r12 |
1280 0678 0E94 0000 call __mulsi3 |
1281 067c 4B01 movw r8,r22 |
1282 067e 5C01 movw r10,r24 |
1283 0680 6093 0000 sts IntegralNick,r22 |
1284 0684 7093 0000 sts (IntegralNick)+1,r23 |
1285 0688 8093 0000 sts (IntegralNick)+2,r24 |
1286 068c 9093 0000 sts (IntegralNick)+3,r25 |
1287 0690 9801 movw r18,r16 |
1288 0692 4427 clr r20 |
1289 0694 37FD sbrc r19,7 |
1290 0696 4095 com r20 |
1291 0698 542F mov r21,r20 |
1292 069a C701 movw r24,r14 |
1293 069c B601 movw r22,r12 |
1294 069e 0E94 0000 call __mulsi3 |
1295 06a2 DC01 movw r26,r24 |
1296 06a4 CB01 movw r24,r22 |
1297 06a6 8093 0000 sts IntegralRoll,r24 |
1298 06aa 9093 0000 sts (IntegralRoll)+1,r25 |
1299 06ae A093 0000 sts (IntegralRoll)+2,r26 |
1300 06b2 B093 0000 sts (IntegralRoll)+3,r27 |
1301 06b6 8092 0000 sts Mess_IntegralNick2,r8 |
1302 06ba 9092 0000 sts (Mess_IntegralNick2)+1,r9 |
1303 06be A092 0000 sts (Mess_IntegralNick2)+2,r10 |
1304 06c2 B092 0000 sts (Mess_IntegralNick2)+3,r11 |
1305 06c6 8093 0000 sts Mess_IntegralRoll2,r24 |
1306 06ca 9093 0000 sts (Mess_IntegralRoll2)+1,r25 |
1307 06ce A093 0000 sts (Mess_IntegralRoll2)+2,r26 |
1308 06d2 B093 0000 sts (Mess_IntegralRoll2)+3,r27 |
1309 06d6 1092 0000 sts Mess_Integral_Gier,__zero_reg__ |
1310 06da 1092 0000 sts (Mess_Integral_Gier)+1,__zero_reg__ |
1311 06de 1092 0000 sts (Mess_Integral_Gier)+2,__zero_reg__ |
1312 06e2 1092 0000 sts (Mess_Integral_Gier)+3,__zero_reg__ |
1313 06e6 8091 0000 lds r24,Luftdruck |
1314 06ea 9091 0000 lds r25,(Luftdruck)+1 |
1315 06ee A091 0000 lds r26,(Luftdruck)+2 |
1316 06f2 B091 0000 lds r27,(Luftdruck)+3 |
1317 06f6 9093 0000 sts (StartLuftdruck)+1,r25 |
1318 06fa 8093 0000 sts StartLuftdruck,r24 |
1319 06fe 1092 0000 sts (VarioMeter)+1,__zero_reg__ |
1320 0702 1092 0000 sts VarioMeter,__zero_reg__ |
1321 0706 1092 0000 sts Mess_Integral_Hoch,__zero_reg__ |
1322 070a 1092 0000 sts (Mess_Integral_Hoch)+1,__zero_reg__ |
1323 070e 1092 0000 sts (Mess_Integral_Hoch)+2,__zero_reg__ |
1324 0712 1092 0000 sts (Mess_Integral_Hoch)+3,__zero_reg__ |
1325 0716 8091 0000 lds r24,KompassValue |
1326 071a 9091 0000 lds r25,(KompassValue)+1 |
1327 071e 9093 0000 sts (KompassStartwert)+1,r25 |
1328 0722 8093 0000 sts KompassStartwert,r24 |
1329 0726 0E94 0000 call GPS_Neutral |
1330 072a 82E3 ldi r24,lo8(50) |
1331 072c 90E0 ldi r25,hi8(50) |
1332 072e 9093 0000 sts (beeptime)+1,r25 |
1333 0732 8093 0000 sts beeptime,r24 |
1334 0736 8091 0000 lds r24,EE_Parameter+65 |
1335 073a 9927 clr r25 |
1336 073c AA27 clr r26 |
1337 073e BB27 clr r27 |
1338 0740 BC01 movw r22,r24 |
1339 0742 CD01 movw r24,r26 |
1340 0744 24EC ldi r18,lo8(2500) |
1341 0746 39E0 ldi r19,hi8(2500) |
1342 0748 40E0 ldi r20,hlo8(2500) |
1343 074a 50E0 ldi r21,hhi8(2500) |
1344 074c 0E94 0000 call __mulsi3 |
1345 0750 DC01 movw r26,r24 |
1346 0752 CB01 movw r24,r22 |
1347 0754 8856 subi r24,lo8(-(15000)) |
1348 0756 954C sbci r25,hi8(-(15000)) |
1349 0758 AF4F sbci r26,hlo8(-(15000)) |
1350 075a BF4F sbci r27,hhi8(-(15000)) |
1351 075c 8093 0000 sts Umschlag180Nick,r24 |
1352 0760 9093 0000 sts (Umschlag180Nick)+1,r25 |
1353 0764 A093 0000 sts (Umschlag180Nick)+2,r26 |
1354 0768 B093 0000 sts (Umschlag180Nick)+3,r27 |
1355 076c 8091 0000 lds r24,EE_Parameter+66 |
1356 0770 9927 clr r25 |
1357 0772 AA27 clr r26 |
1358 0774 BB27 clr r27 |
1359 0776 BC01 movw r22,r24 |
1360 0778 CD01 movw r24,r26 |
1361 077a 0E94 0000 call __mulsi3 |
1362 077e DC01 movw r26,r24 |
1363 0780 CB01 movw r24,r22 |
1364 0782 8856 subi r24,lo8(-(15000)) |
1365 0784 954C sbci r25,hi8(-(15000)) |
1366 0786 AF4F sbci r26,hlo8(-(15000)) |
1367 0788 BF4F sbci r27,hhi8(-(15000)) |
1368 078a 8093 0000 sts Umschlag180Roll,r24 |
1369 078e 9093 0000 sts (Umschlag180Roll)+1,r25 |
1370 0792 A093 0000 sts (Umschlag180Roll)+2,r26 |
1371 0796 B093 0000 sts (Umschlag180Roll)+3,r27 |
1372 079a 1092 0000 sts (ExternHoehenValue)+1,__zero_reg__ |
1373 079e 1092 0000 sts ExternHoehenValue,__zero_reg__ |
1374 07a2 8091 0000 lds r24,KompassValue |
1375 07a6 9091 0000 lds r25,(KompassValue)+1 |
1376 07aa AA27 clr r26 |
1377 07ac 97FD sbrc r25,7 |
1378 07ae A095 com r26 |
1379 07b0 BA2F mov r27,r26 |
1380 07b2 2091 0000 lds r18,GIER_GRAD_FAKTOR |
1381 07b6 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1 |
1382 07ba 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2 |
1383 07be 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3 |
1384 07c2 BC01 movw r22,r24 |
1385 07c4 CD01 movw r24,r26 |
1386 07c6 0E94 0000 call __mulsi3 |
1387 07ca DC01 movw r26,r24 |
1388 07cc CB01 movw r24,r22 |
1389 07ce 8093 0000 sts ErsatzKompass,r24 |
1390 07d2 9093 0000 sts (ErsatzKompass)+1,r25 |
1391 07d6 A093 0000 sts (ErsatzKompass)+2,r26 |
1392 07da B093 0000 sts (ErsatzKompass)+3,r27 |
1393 07de 1092 0000 sts (GierGyroFehler)+1,__zero_reg__ |
1394 07e2 1092 0000 sts GierGyroFehler,__zero_reg__ |
1395 07e6 81E0 ldi r24,lo8(1) |
1396 07e8 8093 0000 sts SendVersionToNavi,r24 |
1397 07ec 0E94 0000 call LED_Init |
1398 07f0 8091 0000 lds r24,FC_StatusFlags |
1399 07f4 8460 ori r24,lo8(4) |
1400 07f6 8093 0000 sts FC_StatusFlags,r24 |
1401 07fa 8FEF ldi r24,lo8(-1) |
1402 07fc 8093 0000 sts FromNaviCtrl_Value,r24 |
1403 0800 1092 0000 sts FromNaviCtrl_Value+1,__zero_reg__ |
1404 0804 80E2 ldi r24,lo8(32) |
1405 0806 8093 0000 sts FromNaviCtrl_Value+2,r24 |
1406 080a C0E0 ldi r28,lo8(Poti) |
1407 080c D0E0 ldi r29,hi8(Poti) |
1408 080e A0E0 ldi r26,lo8(EE_Parameter+5) |
1409 0810 B0E0 ldi r27,hi8(EE_Parameter+5) |
1410 0812 07E0 ldi r16,lo8(7) |
1411 .L51: |
1412 0814 8D91 ld r24,X+ |
1413 0816 E82F mov r30,r24 |
1414 0818 FF27 clr r31 |
1415 081a EE0F add r30,r30 |
1416 081c FF1F adc r31,r31 |
1417 081e E050 subi r30,lo8(-(PPM_in)) |
1418 0820 F040 sbci r31,hi8(-(PPM_in)) |
1419 0822 8081 ld r24,Z |
1420 0824 9181 ldd r25,Z+1 |
1421 0826 8259 subi r24,lo8(-(110)) |
1422 0828 8993 st Y+,r24 |
1423 082a 0150 subi r16,lo8(-(-1)) |
1424 082c 07FF sbrs r16,7 |
1425 082e F2CF rjmp .L51 |
1426 0830 84E6 ldi r24,lo8(100) |
1427 0832 8093 0000 sts SenderOkay,r24 |
1428 0836 8091 0000 lds r24,ServoActive |
1429 083a 8823 tst r24 |
1430 083c 11F0 breq .L52 |
1431 083e 469A sbi 40-0x20,6 |
1432 0840 579A sbi 42-0x20,7 |
1433 .L52: |
1434 0842 8091 0000 lds r24,AdNeutralNick |
1435 0846 9091 0000 lds r25,(AdNeutralNick)+1 |
1436 084a 8056 subi r24,lo8(-(-2400)) |
1437 084c 9940 sbci r25,hi8(-(-2400)) |
1438 084e 815C subi r24,lo8(11201) |
1439 0850 9B42 sbci r25,hi8(11201) |
1440 0852 28F0 brlo .L53 |
1441 0854 8091 0000 lds r24,VersionInfo+5 |
1442 0858 8160 ori r24,lo8(1) |
1443 085a 8093 0000 sts VersionInfo+5,r24 |
1444 .L53: |
1445 085e 8091 0000 lds r24,AdNeutralRoll |
1446 0862 9091 0000 lds r25,(AdNeutralRoll)+1 |
1447 0866 8056 subi r24,lo8(-(-2400)) |
1448 0868 9940 sbci r25,hi8(-(-2400)) |
1449 086a 815C subi r24,lo8(11201) |
1450 086c 9B42 sbci r25,hi8(11201) |
1451 086e 28F0 brlo .L54 |
1452 0870 8091 0000 lds r24,VersionInfo+5 |
1453 0874 8260 ori r24,lo8(2) |
1454 0876 8093 0000 sts VersionInfo+5,r24 |
1455 .L54: |
1456 087a 8091 0000 lds r24,AdNeutralGier |
1457 087e 9091 0000 lds r25,(AdNeutralGier)+1 |
1458 0882 8C52 subi r24,lo8(-(-300)) |
1459 0884 9140 sbci r25,hi8(-(-300)) |
1460 0886 8957 subi r24,lo8(1401) |
1461 0888 9540 sbci r25,hi8(1401) |
1462 088a 28F0 brlo .L55 |
1463 088c 8091 0000 lds r24,VersionInfo+5 |
1464 0890 8460 ori r24,lo8(4) |
1465 0892 8093 0000 sts VersionInfo+5,r24 |
1466 .L55: |
1467 0896 8091 0000 lds r24,NeutralAccX |
1468 089a 9091 0000 lds r25,(NeutralAccX)+1 |
1469 089e 8C52 subi r24,lo8(-(-300)) |
1470 08a0 9140 sbci r25,hi8(-(-300)) |
1471 08a2 835C subi r24,lo8(451) |
1472 08a4 9140 sbci r25,hi8(451) |
1473 08a6 28F0 brlo .L56 |
1474 08a8 8091 0000 lds r24,VersionInfo+5 |
1475 08ac 8860 ori r24,lo8(8) |
1476 08ae 8093 0000 sts VersionInfo+5,r24 |
1477 .L56: |
1478 08b2 8091 0000 lds r24,NeutralAccY |
1479 08b6 9091 0000 lds r25,(NeutralAccY)+1 |
1480 08ba 8C52 subi r24,lo8(-(-300)) |
1481 08bc 9140 sbci r25,hi8(-(-300)) |
1482 08be 835C subi r24,lo8(451) |
1483 08c0 9140 sbci r25,hi8(451) |
1484 08c2 28F0 brlo .L57 |
1485 08c4 8091 0000 lds r24,VersionInfo+5 |
1486 08c8 8061 ori r24,lo8(16) |
1487 08ca 8093 0000 sts VersionInfo+5,r24 |
1488 .L57: |
1489 08ce 8091 0000 lds r24,NeutralAccZ |
1490 08d2 9091 0000 lds r25,(NeutralAccZ)+1 |
1491 08d6 8050 subi r24,lo8(-(-512)) |
1492 08d8 9240 sbci r25,hi8(-(-512)) |
1493 08da 8355 subi r24,lo8(339) |
1494 08dc 9140 sbci r25,hi8(339) |
1495 08de 28F0 brlo .L32 |
1496 08e0 8091 0000 lds r24,VersionInfo+5 |
1497 08e4 8062 ori r24,lo8(32) |
1498 08e6 8093 0000 sts VersionInfo+5,r24 |
1499 .L32: |
1500 /* epilogue: frame size=0 */ |
1501 08ea ECE0 ldi r30,12 |
1502 08ec CDB7 in r28,__SP_L__ |
1503 08ee DEB7 in r29,__SP_H__ |
1504 08f0 0C94 0000 jmp __epilogue_restores__+12 |
1505 /* epilogue end (size=5) */ |
1506 /* function SetNeutral size 697 (686) */ |
1508 .lcomm tmpl.31,4 |
1509 .lcomm tmpl2.32,4 |
1510 .lcomm tmpl3.33,4 |
1511 .lcomm tmpl4.34,4 |
1512 .lcomm oldNick.35,2 |
1513 .lcomm oldRoll.36,2 |
1514 .lcomm d2Roll.37,2 |
1515 .lcomm d2Nick.38,2 |
1516 .global Mittelwert |
1518 Mittelwert: |
1519 /* prologue: frame size=19 */ |
1520 08f4 A3E1 ldi r26,lo8(19) |
1521 08f6 B0E0 ldi r27,hi8(19) |
1522 08f8 E0E0 ldi r30,pm_lo8(1f) |
1523 08fa F0E0 ldi r31,pm_hi8(1f) |
1524 08fc 0C94 0000 jmp __prologue_saves__+0 |
1525 1: |
1526 /* prologue end (size=6) */ |
1527 0900 8091 0000 lds r24,AdNeutralGier |
1528 0904 9091 0000 lds r25,(AdNeutralGier)+1 |
1529 0908 2091 0000 lds r18,AdWertGier |
1530 090c 3091 0000 lds r19,(AdWertGier)+1 |
1531 0910 821B sub r24,r18 |
1532 0912 930B sbc r25,r19 |
1533 0914 9093 0000 sts (MesswertGier)+1,r25 |
1534 0918 8093 0000 sts MesswertGier,r24 |
1535 091c 8091 0000 lds r24,AdWertNickFilter |
1536 0920 9091 0000 lds r25,(AdWertNickFilter)+1 |
1537 0924 97FD sbrc r25,7 |
1538 0926 0796 adiw r24,7 |
1539 .L64: |
1540 0928 9C01 movw r18,r24 |
1541 092a 13E0 ldi r17,3 |
1542 092c 3595 1: asr r19 |
1543 092e 2795 ror r18 |
1544 0930 1A95 dec r17 |
1545 0932 E1F7 brne 1b |
1546 0934 3093 0000 sts (MesswertNick)+1,r19 |
1547 0938 2093 0000 sts MesswertNick,r18 |
1548 093c 8091 0000 lds r24,AdWertRollFilter |
1549 0940 9091 0000 lds r25,(AdWertRollFilter)+1 |
1550 0944 97FD sbrc r25,7 |
1551 0946 0796 adiw r24,7 |
1552 .L65: |
1553 0948 B3E0 ldi r27,3 |
1554 094a 9595 1: asr r25 |
1555 094c 8795 ror r24 |
1556 094e BA95 dec r27 |
1557 0950 E1F7 brne 1b |
1558 0952 9093 0000 sts (MesswertRoll)+1,r25 |
1559 0956 8093 0000 sts MesswertRoll,r24 |
1560 095a 3093 0000 sts (RohMesswertNick)+1,r19 |
1561 095e 2093 0000 sts RohMesswertNick,r18 |
1562 0962 9093 0000 sts (RohMesswertRoll)+1,r25 |
1563 0966 8093 0000 sts RohMesswertRoll,r24 |
1564 096a 8091 0000 lds r24,Mittelwert_AccNick |
1565 096e 9091 0000 lds r25,(Mittelwert_AccNick)+1 |
1566 0972 AC01 movw r20,r24 |
1567 0974 440F lsl r20 |
1568 0976 551F rol r21 |
1569 0978 480F add r20,r24 |
1570 097a 591F adc r21,r25 |
1571 097c 2091 0000 lds r18,AdWertAccNick |
1572 0980 3091 0000 lds r19,(AdWertAccNick)+1 |
1573 0984 C901 movw r24,r18 |
1574 0986 880F lsl r24 |
1575 0988 991F rol r25 |
1576 098a 880F lsl r24 |
1577 098c 991F rol r25 |
1578 098e 820F add r24,r18 |
1579 0990 931F adc r25,r19 |
1580 0992 820F add r24,r18 |
1581 0994 931F adc r25,r19 |
1582 0996 480F add r20,r24 |
1583 0998 591F adc r21,r25 |
1584 099a 57FF sbrs r21,7 |
1585 099c 02C0 rjmp .L66 |
1586 099e 4D5F subi r20,lo8(-(3)) |
1587 09a0 5F4F sbci r21,hi8(-(3)) |
1588 .L66: |
1589 09a2 5595 asr r21 |
1590 09a4 4795 ror r20 |
1591 09a6 5595 asr r21 |
1592 09a8 4795 ror r20 |
1593 09aa 5093 0000 sts (Mittelwert_AccNick)+1,r21 |
1594 09ae 4093 0000 sts Mittelwert_AccNick,r20 |
1595 09b2 8091 0000 lds r24,Mittelwert_AccRoll |
1596 09b6 9091 0000 lds r25,(Mittelwert_AccRoll)+1 |
1597 09ba AC01 movw r20,r24 |
1598 09bc 440F lsl r20 |
1599 09be 551F rol r21 |
1600 09c0 480F add r20,r24 |
1601 09c2 591F adc r21,r25 |
1602 09c4 2091 0000 lds r18,AdWertAccRoll |
1603 09c8 3091 0000 lds r19,(AdWertAccRoll)+1 |
1604 09cc C901 movw r24,r18 |
1605 09ce 880F lsl r24 |
1606 09d0 991F rol r25 |
1607 09d2 880F lsl r24 |
1608 09d4 991F rol r25 |
1609 09d6 820F add r24,r18 |
1610 09d8 931F adc r25,r19 |
1611 09da 820F add r24,r18 |
1612 09dc 931F adc r25,r19 |
1613 09de 480F add r20,r24 |
1614 09e0 591F adc r21,r25 |
1615 09e2 57FF sbrs r21,7 |
1616 09e4 02C0 rjmp .L67 |
1617 09e6 4D5F subi r20,lo8(-(3)) |
1618 09e8 5F4F sbci r21,hi8(-(3)) |
1619 .L67: |
1620 09ea 5595 asr r21 |
1621 09ec 4795 ror r20 |
1622 09ee 5595 asr r21 |
1623 09f0 4795 ror r20 |
1624 09f2 5093 0000 sts (Mittelwert_AccRoll)+1,r21 |
1625 09f6 4093 0000 sts Mittelwert_AccRoll,r20 |
1626 09fa 2091 0000 lds r18,AdWertAccNick |
1627 09fe 3091 0000 lds r19,(AdWertAccNick)+1 |
1628 0a02 C901 movw r24,r18 |
1629 0a04 880F lsl r24 |
1630 0a06 991F rol r25 |
1631 0a08 880F lsl r24 |
1632 0a0a 991F rol r25 |
1633 0a0c 820F add r24,r18 |
1634 0a0e 931F adc r25,r19 |
1635 0a10 820F add r24,r18 |
1636 0a12 931F adc r25,r19 |
1637 0a14 9C01 movw r18,r24 |
1638 0a16 4427 clr r20 |
1639 0a18 37FD sbrc r19,7 |
1640 0a1a 4095 com r20 |
1641 0a1c 542F mov r21,r20 |
1642 0a1e 8091 0000 lds r24,IntegralAccNick |
1643 0a22 9091 0000 lds r25,(IntegralAccNick)+1 |
1644 0a26 A091 0000 lds r26,(IntegralAccNick)+2 |
1645 0a2a B091 0000 lds r27,(IntegralAccNick)+3 |
1646 0a2e 820F add r24,r18 |
1647 0a30 931F adc r25,r19 |
1648 0a32 A41F adc r26,r20 |
1649 0a34 B51F adc r27,r21 |
1650 0a36 8093 0000 sts IntegralAccNick,r24 |
1651 0a3a 9093 0000 sts (IntegralAccNick)+1,r25 |
1652 0a3e A093 0000 sts (IntegralAccNick)+2,r26 |
1653 0a42 B093 0000 sts (IntegralAccNick)+3,r27 |
1654 0a46 2091 0000 lds r18,AdWertAccRoll |
1655 0a4a 3091 0000 lds r19,(AdWertAccRoll)+1 |
1656 0a4e C901 movw r24,r18 |
1657 0a50 880F lsl r24 |
1658 0a52 991F rol r25 |
1659 0a54 880F lsl r24 |
1660 0a56 991F rol r25 |
1661 0a58 820F add r24,r18 |
1662 0a5a 931F adc r25,r19 |
1663 0a5c 820F add r24,r18 |
1664 0a5e 931F adc r25,r19 |
1665 0a60 9C01 movw r18,r24 |
1666 0a62 4427 clr r20 |
1667 0a64 37FD sbrc r19,7 |
1668 0a66 4095 com r20 |
1669 0a68 542F mov r21,r20 |
1670 0a6a 8091 0000 lds r24,IntegralAccRoll |
1671 0a6e 9091 0000 lds r25,(IntegralAccRoll)+1 |
1672 0a72 A091 0000 lds r26,(IntegralAccRoll)+2 |
1673 0a76 B091 0000 lds r27,(IntegralAccRoll)+3 |
1674 0a7a 820F add r24,r18 |
1675 0a7c 931F adc r25,r19 |
1676 0a7e A41F adc r26,r20 |
1677 0a80 B51F adc r27,r21 |
1678 0a82 8093 0000 sts IntegralAccRoll,r24 |
1679 0a86 9093 0000 sts (IntegralAccRoll)+1,r25 |
1680 0a8a A093 0000 sts (IntegralAccRoll)+2,r26 |
1681 0a8e B093 0000 sts (IntegralAccRoll)+3,r27 |
1682 0a92 8091 0000 lds r24,NaviAccNick |
1683 0a96 9091 0000 lds r25,(NaviAccNick)+1 |
1684 0a9a 2091 0000 lds r18,AdWertAccNick |
1685 0a9e 3091 0000 lds r19,(AdWertAccNick)+1 |
1686 0aa2 820F add r24,r18 |
1687 0aa4 931F adc r25,r19 |
1688 0aa6 9093 0000 sts (NaviAccNick)+1,r25 |
1689 0aaa 8093 0000 sts NaviAccNick,r24 |
1690 0aae 8091 0000 lds r24,NaviAccRoll |
1691 0ab2 9091 0000 lds r25,(NaviAccRoll)+1 |
1692 0ab6 2091 0000 lds r18,AdWertAccRoll |
1693 0aba 3091 0000 lds r19,(AdWertAccRoll)+1 |
1694 0abe 820F add r24,r18 |
1695 0ac0 931F adc r25,r19 |
1696 0ac2 9093 0000 sts (NaviAccRoll)+1,r25 |
1697 0ac6 8093 0000 sts NaviAccRoll,r24 |
1698 0aca 8091 0000 lds r24,NaviCntAcc |
1699 0ace 9091 0000 lds r25,(NaviCntAcc)+1 |
1700 0ad2 0196 adiw r24,1 |
1701 0ad4 9093 0000 sts (NaviCntAcc)+1,r25 |
1702 0ad8 8093 0000 sts NaviCntAcc,r24 |
1703 0adc 8091 0000 lds r24,Aktuell_az |
1704 0ae0 9091 0000 lds r25,(Aktuell_az)+1 |
1705 0ae4 2091 0000 lds r18,NeutralAccZ |
1706 0ae8 3091 0000 lds r19,(NeutralAccZ)+1 |
1707 0aec 821B sub r24,r18 |
1708 0aee 930B sbc r25,r19 |
1709 0af0 9C01 movw r18,r24 |
1710 0af2 4427 clr r20 |
1711 0af4 37FD sbrc r19,7 |
1712 0af6 4095 com r20 |
1713 0af8 542F mov r21,r20 |
1714 0afa 8091 0000 lds r24,IntegralAccZ |
1715 0afe 9091 0000 lds r25,(IntegralAccZ)+1 |
1716 0b02 A091 0000 lds r26,(IntegralAccZ)+2 |
1717 0b06 B091 0000 lds r27,(IntegralAccZ)+3 |
1718 0b0a 820F add r24,r18 |
1719 0b0c 931F adc r25,r19 |
1720 0b0e A41F adc r26,r20 |
1721 0b10 B51F adc r27,r21 |
1722 0b12 8093 0000 sts IntegralAccZ,r24 |
1723 0b16 9093 0000 sts (IntegralAccZ)+1,r25 |
1724 0b1a A093 0000 sts (IntegralAccZ)+2,r26 |
1725 0b1e B093 0000 sts (IntegralAccZ)+3,r27 |
1726 0b22 8FEC ldi r24,lo8(-49) |
1727 0b24 8093 7A00 sts 122,r24 |
1728 0b28 1092 0000 sts AdReady,__zero_reg__ |
1729 0b2c 2091 0000 lds r18,Mess_IntegralRoll |
1730 0b30 3091 0000 lds r19,(Mess_IntegralRoll)+1 |
1731 0b34 4091 0000 lds r20,(Mess_IntegralRoll)+2 |
1732 0b38 5091 0000 lds r21,(Mess_IntegralRoll)+3 |
1733 0b3c 2987 std Y+9,r18 |
1734 0b3e 3A87 std Y+10,r19 |
1735 0b40 4B87 std Y+11,r20 |
1736 0b42 5C87 std Y+12,r21 |
1737 0b44 2954 subi r18,lo8(93001) |
1738 0b46 3B46 sbci r19,hi8(93001) |
1739 0b48 4140 sbci r20,hlo8(93001) |
1740 0b4a 5040 sbci r21,hhi8(93001) |
1741 0b4c 2CF0 brlt .L68 |
1742 0b4e 28E4 ldi r18,lo8(93000) |
1743 0b50 3BE6 ldi r19,hi8(93000) |
1744 0b52 41E0 ldi r20,hlo8(93000) |
1745 0b54 50E0 ldi r21,hhi8(93000) |
1746 0b56 0DC0 rjmp .L148 |
1747 .L68: |
1748 0b58 8985 ldd r24,Y+9 |
1749 0b5a 9A85 ldd r25,Y+10 |
1750 0b5c AB85 ldd r26,Y+11 |
1751 0b5e BC85 ldd r27,Y+12 |
1752 0b60 885B subi r24,lo8(-93000) |
1753 0b62 9449 sbci r25,hi8(-93000) |
1754 0b64 AE4F sbci r26,hlo8(-93000) |
1755 0b66 BF4F sbci r27,hhi8(-93000) |
1756 0b68 4CF4 brge .L70 |
1757 0b6a 28EB ldi r18,lo8(-93000) |
1758 0b6c 34E9 ldi r19,hi8(-93000) |
1759 0b6e 4EEF ldi r20,hlo8(-93000) |
1760 0b70 5FEF ldi r21,hhi8(-93000) |
1761 .L148: |
1762 0b72 2D83 std Y+5,r18 |
1763 0b74 3E83 std Y+6,r19 |
1764 0b76 4F83 std Y+7,r20 |
1765 0b78 5887 std Y+8,r21 |
1766 0b7a 08C0 rjmp .L69 |
1767 .L70: |
1768 0b7c 8985 ldd r24,Y+9 |
1769 0b7e 9A85 ldd r25,Y+10 |
1770 0b80 AB85 ldd r26,Y+11 |
1771 0b82 BC85 ldd r27,Y+12 |
1772 0b84 8D83 std Y+5,r24 |
1773 0b86 9E83 std Y+6,r25 |
1774 0b88 AF83 std Y+7,r26 |
1775 0b8a B887 std Y+8,r27 |
1776 .L69: |
1777 0b8c 2091 0000 lds r18,Mess_IntegralNick |
1778 0b90 3091 0000 lds r19,(Mess_IntegralNick)+1 |
1779 0b94 4091 0000 lds r20,(Mess_IntegralNick)+2 |
1780 0b98 5091 0000 lds r21,(Mess_IntegralNick)+3 |
1781 0b9c 2D87 std Y+13,r18 |
1782 0b9e 3E87 std Y+14,r19 |
1783 0ba0 4F87 std Y+15,r20 |
1784 0ba2 588B std Y+16,r21 |
1785 0ba4 2954 subi r18,lo8(93001) |
1786 0ba6 3B46 sbci r19,hi8(93001) |
1787 0ba8 4140 sbci r20,hlo8(93001) |
1788 0baa 5040 sbci r21,hhi8(93001) |
1789 0bac 2CF0 brlt .L72 |
1790 0bae 28E4 ldi r18,lo8(93000) |
1791 0bb0 3BE6 ldi r19,hi8(93000) |
1792 0bb2 41E0 ldi r20,hlo8(93000) |
1793 0bb4 50E0 ldi r21,hhi8(93000) |
1794 0bb6 0DC0 rjmp .L149 |
1795 .L72: |
1796 0bb8 8D85 ldd r24,Y+13 |
1797 0bba 9E85 ldd r25,Y+14 |
1798 0bbc AF85 ldd r26,Y+15 |
1799 0bbe B889 ldd r27,Y+16 |
1800 0bc0 885B subi r24,lo8(-93000) |
1801 0bc2 9449 sbci r25,hi8(-93000) |
1802 0bc4 AE4F sbci r26,hlo8(-93000) |
1803 0bc6 BF4F sbci r27,hhi8(-93000) |
1804 0bc8 4CF4 brge .L74 |
1805 0bca 28EB ldi r18,lo8(-93000) |
1806 0bcc 34E9 ldi r19,hi8(-93000) |
1807 0bce 4EEF ldi r20,hlo8(-93000) |
1808 0bd0 5FEF ldi r21,hhi8(-93000) |
1809 .L149: |
1810 0bd2 2983 std Y+1,r18 |
1811 0bd4 3A83 std Y+2,r19 |
1812 0bd6 4B83 std Y+3,r20 |
1813 0bd8 5C83 std Y+4,r21 |
1814 0bda 08C0 rjmp .L73 |
1815 .L74: |
1816 0bdc 8D85 ldd r24,Y+13 |
1817 0bde 9E85 ldd r25,Y+14 |
1818 0be0 AF85 ldd r26,Y+15 |
1819 0be2 B889 ldd r27,Y+16 |
1820 0be4 8983 std Y+1,r24 |
1821 0be6 9A83 std Y+2,r25 |
1822 0be8 AB83 std Y+3,r26 |
1823 0bea BC83 std Y+4,r27 |
1824 .L73: |
1825 0bec A091 0000 lds r26,MesswertGier |
1826 0bf0 B091 0000 lds r27,(MesswertGier)+1 |
1827 0bf4 BB8B std Y+19,r27 |
1828 0bf6 AA8B std Y+18,r26 |
1829 0bf8 FD01 movw r30,r26 |
1830 0bfa CF01 movw r24,r30 |
1831 0bfc AA27 clr r26 |
1832 0bfe 97FD sbrc r25,7 |
1833 0c00 A095 com r26 |
1834 0c02 BA2F mov r27,r26 |
1835 0c04 A090 0000 lds r10,Mess_Integral_Gier |
1836 0c08 B090 0000 lds r11,(Mess_Integral_Gier)+1 |
1837 0c0c C090 0000 lds r12,(Mess_Integral_Gier)+2 |
1838 0c10 D090 0000 lds r13,(Mess_Integral_Gier)+3 |
1839 0c14 A80E add r10,r24 |
1840 0c16 B91E adc r11,r25 |
1841 0c18 CA1E adc r12,r26 |
1842 0c1a DB1E adc r13,r27 |
1843 0c1c A092 0000 sts Mess_Integral_Gier,r10 |
1844 0c20 B092 0000 sts (Mess_Integral_Gier)+1,r11 |
1845 0c24 C092 0000 sts (Mess_Integral_Gier)+2,r12 |
1846 0c28 D092 0000 sts (Mess_Integral_Gier)+3,r13 |
1847 0c2c E090 0000 lds r14,ErsatzKompass |
1848 0c30 F090 0000 lds r15,(ErsatzKompass)+1 |
1849 0c34 0091 0000 lds r16,(ErsatzKompass)+2 |
1850 0c38 1091 0000 lds r17,(ErsatzKompass)+3 |
1851 0c3c E80E add r14,r24 |
1852 0c3e F91E adc r15,r25 |
1853 0c40 0A1F adc r16,r26 |
1854 0c42 1B1F adc r17,r27 |
1855 0c44 E092 0000 sts ErsatzKompass,r14 |
1856 0c48 F092 0000 sts (ErsatzKompass)+1,r15 |
1857 0c4c 0093 0000 sts (ErsatzKompass)+2,r16 |
1858 0c50 1093 0000 sts (ErsatzKompass)+3,r17 |
1859 0c54 F091 0000 lds r31,Looping_Nick |
1860 0c58 F98B std Y+17,r31 |
1861 0c5a FF23 tst r31 |
1862 0c5c 09F0 breq .+2 |
1863 0c5e 98C1 rjmp .L76 |
1864 0c60 8091 0000 lds r24,Looping_Roll |
1865 0c64 8823 tst r24 |
1866 0c66 09F0 breq .+2 |
1867 0c68 93C1 rjmp .L76 |
1868 0c6a 8091 0000 lds r24,EE_Parameter+13 |
1869 0c6e 86FF sbrs r24,6 |
1870 0c70 8FC1 rjmp .L76 |
1871 0c72 8091 0000 lds r24,MesswertRoll |
1872 0c76 9091 0000 lds r25,(MesswertRoll)+1 |
1873 0c7a AA27 clr r26 |
1874 0c7c 97FD sbrc r25,7 |
1875 0c7e A095 com r26 |
1876 0c80 BA2F mov r27,r26 |
1877 0c82 BC01 movw r22,r24 |
1878 0c84 CD01 movw r24,r26 |
1879 0c86 2981 ldd r18,Y+1 |
1880 0c88 3A81 ldd r19,Y+2 |
1881 0c8a 4B81 ldd r20,Y+3 |
1882 0c8c 5C81 ldd r21,Y+4 |
1883 0c8e 0E94 0000 call __mulsi3 |
1884 0c92 9B01 movw r18,r22 |
1885 0c94 AC01 movw r20,r24 |
1886 0c96 97FF sbrs r25,7 |
1887 0c98 04C0 rjmp .L77 |
1888 0c9a 2150 subi r18,lo8(-(2047)) |
1889 0c9c 384F sbci r19,hi8(-(2047)) |
1890 0c9e 4F4F sbci r20,hlo8(-(2047)) |
1891 0ca0 5F4F sbci r21,hhi8(-(2047)) |
1892 .L77: |
1893 0ca2 BBE0 ldi r27,11 |
1894 0ca4 5595 1: asr r21 |
1895 0ca6 4795 ror r20 |
1896 0ca8 3795 ror r19 |
1897 0caa 2795 ror r18 |
1898 0cac BA95 dec r27 |
1899 0cae D1F7 brne 1b |
1900 0cb0 8091 0000 lds r24,Parameter_AchsKopplung2 |
1901 0cb4 682E mov r6,r24 |
1902 0cb6 7724 clr r7 |
1903 0cb8 8824 clr r8 |
1904 0cba 9924 clr r9 |
1905 0cbc CA01 movw r24,r20 |
1906 0cbe B901 movw r22,r18 |
1907 0cc0 A401 movw r20,r8 |
1908 0cc2 9301 movw r18,r6 |
1909 0cc4 0E94 0000 call __mulsi3 |
1910 0cc8 DC01 movw r26,r24 |
1911 0cca CB01 movw r24,r22 |
1912 0ccc 8093 0000 sts tmpl3.33,r24 |
1913 0cd0 9093 0000 sts (tmpl3.33)+1,r25 |
1914 0cd4 A093 0000 sts (tmpl3.33)+2,r26 |
1915 0cd8 B093 0000 sts (tmpl3.33)+3,r27 |
1916 0cdc B7FF sbrs r27,7 |
1917 0cde 04C0 rjmp .L78 |
1918 0ce0 8150 subi r24,lo8(-(4095)) |
1919 0ce2 904F sbci r25,hi8(-(4095)) |
1920 0ce4 AF4F sbci r26,hlo8(-(4095)) |
1921 0ce6 BF4F sbci r27,hhi8(-(4095)) |
1922 .L78: |
1923 0ce8 1C01 movw r2,r24 |
1924 0cea 2D01 movw r4,r26 |
1925 0cec ACE0 ldi r26,12 |
1926 0cee 5594 1: asr r5 |
1927 0cf0 4794 ror r4 |
1928 0cf2 3794 ror r3 |
1929 0cf4 2794 ror r2 |
1930 0cf6 AA95 dec r26 |
1931 0cf8 D1F7 brne 1b |
1932 0cfa 2092 0000 sts tmpl3.33,r2 |
1933 0cfe 3092 0000 sts (tmpl3.33)+1,r3 |
1934 0d02 4092 0000 sts (tmpl3.33)+2,r4 |
1935 0d06 5092 0000 sts (tmpl3.33)+3,r5 |
1936 0d0a 8091 0000 lds r24,MesswertNick |
1937 0d0e 9091 0000 lds r25,(MesswertNick)+1 |
1938 0d12 AA27 clr r26 |
1939 0d14 97FD sbrc r25,7 |
1940 0d16 A095 com r26 |
1941 0d18 BA2F mov r27,r26 |
1942 0d1a BC01 movw r22,r24 |
1943 0d1c CD01 movw r24,r26 |
1944 0d1e 2D81 ldd r18,Y+5 |
1945 0d20 3E81 ldd r19,Y+6 |
1946 0d22 4F81 ldd r20,Y+7 |
1947 0d24 5885 ldd r21,Y+8 |
1948 0d26 0E94 0000 call __mulsi3 |
1949 0d2a 97FF sbrs r25,7 |
1950 0d2c 04C0 rjmp .L79 |
1951 0d2e 6150 subi r22,lo8(-(2047)) |
1952 0d30 784F sbci r23,hi8(-(2047)) |
1953 0d32 8F4F sbci r24,hlo8(-(2047)) |
1954 0d34 9F4F sbci r25,hhi8(-(2047)) |
1955 .L79: |
1956 0d36 FBE0 ldi r31,11 |
1957 0d38 9595 1: asr r25 |
1958 0d3a 8795 ror r24 |
1959 0d3c 7795 ror r23 |
1960 0d3e 6795 ror r22 |
1961 0d40 FA95 dec r31 |
1962 0d42 D1F7 brne 1b |
1963 0d44 A401 movw r20,r8 |
1964 0d46 9301 movw r18,r6 |
1965 0d48 0E94 0000 call __mulsi3 |
1966 0d4c DC01 movw r26,r24 |
1967 0d4e CB01 movw r24,r22 |
1968 0d50 8093 0000 sts tmpl4.34,r24 |
1969 0d54 9093 0000 sts (tmpl4.34)+1,r25 |
1970 0d58 A093 0000 sts (tmpl4.34)+2,r26 |
1971 0d5c B093 0000 sts (tmpl4.34)+3,r27 |
1972 0d60 B7FF sbrs r27,7 |
1973 0d62 04C0 rjmp .L80 |
1974 0d64 8150 subi r24,lo8(-(4095)) |
1975 0d66 904F sbci r25,hi8(-(4095)) |
1976 0d68 AF4F sbci r26,hlo8(-(4095)) |
1977 0d6a BF4F sbci r27,hhi8(-(4095)) |
1978 .L80: |
1979 0d6c 9C01 movw r18,r24 |
1980 0d6e AD01 movw r20,r26 |
1981 0d70 ECE0 ldi r30,12 |
1982 0d72 5595 1: asr r21 |
1983 0d74 4795 ror r20 |
1984 0d76 3795 ror r19 |
1985 0d78 2795 ror r18 |
1986 0d7a EA95 dec r30 |
1987 0d7c D1F7 brne 1b |
1988 0d7e 2093 0000 sts tmpl4.34,r18 |
1989 0d82 3093 0000 sts (tmpl4.34)+1,r19 |
1990 0d86 4093 0000 sts (tmpl4.34)+2,r20 |
1991 0d8a 5093 0000 sts (tmpl4.34)+3,r21 |
1992 0d8e 8091 0000 lds r24,tmpl3.33 |
1993 0d92 9091 0000 lds r25,(tmpl3.33)+1 |
1994 0d96 9093 0000 sts (KopplungsteilNickRoll)+1,r25 |
1995 0d9a 8093 0000 sts KopplungsteilNickRoll,r24 |
1996 0d9e 8091 0000 lds r24,tmpl4.34 |
1997 0da2 9091 0000 lds r25,(tmpl4.34)+1 |
1998 0da6 9093 0000 sts (KopplungsteilRollNick)+1,r25 |
1999 0daa 8093 0000 sts KopplungsteilRollNick,r24 |
2000 0dae 2219 sub r18,r2 |
2001 0db0 3309 sbc r19,r3 |
2002 0db2 4409 sbc r20,r4 |
2003 0db4 5509 sbc r21,r5 |
2004 0db6 2093 0000 sts tmpl4.34,r18 |
2005 0dba 3093 0000 sts (tmpl4.34)+1,r19 |
2006 0dbe 4093 0000 sts (tmpl4.34)+2,r20 |
2007 0dc2 5093 0000 sts (tmpl4.34)+3,r21 |
2008 0dc6 E20E add r14,r18 |
2009 0dc8 F31E adc r15,r19 |
2010 0dca 041F adc r16,r20 |
2011 0dcc 151F adc r17,r21 |
2012 0dce E092 0000 sts ErsatzKompass,r14 |
2013 0dd2 F092 0000 sts (ErsatzKompass)+1,r15 |
2014 0dd6 0093 0000 sts (ErsatzKompass)+2,r16 |
2015 0dda 1093 0000 sts (ErsatzKompass)+3,r17 |
2016 0dde 8091 0000 lds r24,Parameter_CouplingYawCorrection |
2017 0de2 8823 tst r24 |
2018 0de4 B1F4 brne .L81 |
2019 0de6 57FF sbrs r21,7 |
2020 0de8 04C0 rjmp .L82 |
2021 0dea 2F5F subi r18,lo8(-(1)) |
2022 0dec 3F4F sbci r19,hi8(-(1)) |
2023 0dee 4F4F sbci r20,hlo8(-(1)) |
2024 0df0 5F4F sbci r21,hhi8(-(1)) |
2025 .L82: |
2026 0df2 5595 asr r21 |
2027 0df4 4795 ror r20 |
2028 0df6 3795 ror r19 |
2029 0df8 2795 ror r18 |
2030 0dfa A21A sub r10,r18 |
2031 0dfc B30A sbc r11,r19 |
2032 0dfe C40A sbc r12,r20 |
2033 0e00 D50A sbc r13,r21 |
2034 0e02 A092 0000 sts Mess_Integral_Gier,r10 |
2035 0e06 B092 0000 sts (Mess_Integral_Gier)+1,r11 |
2036 0e0a C092 0000 sts (Mess_Integral_Gier)+2,r12 |
2037 0e0e D092 0000 sts (Mess_Integral_Gier)+3,r13 |
2038 .L81: |
2039 0e12 2A89 ldd r18,Y+18 |
2040 0e14 3B89 ldd r19,Y+19 |
2041 0e16 7901 movw r14,r18 |
2042 0e18 0027 clr r16 |
2043 0e1a F7FC sbrc r15,7 |
2044 0e1c 0095 com r16 |
2045 0e1e 102F mov r17,r16 |
2046 0e20 8091 0000 lds r24,tmpl4.34 |
2047 0e24 9091 0000 lds r25,(tmpl4.34)+1 |
2048 0e28 A091 0000 lds r26,(tmpl4.34)+2 |
2049 0e2c B091 0000 lds r27,(tmpl4.34)+3 |
2050 0e30 E80E add r14,r24 |
2051 0e32 F91E adc r15,r25 |
2052 0e34 0A1F adc r16,r26 |
2053 0e36 1B1F adc r17,r27 |
2054 0e38 C801 movw r24,r16 |
2055 0e3a B701 movw r22,r14 |
2056 0e3c 2981 ldd r18,Y+1 |
2057 0e3e 3A81 ldd r19,Y+2 |
2058 0e40 4B81 ldd r20,Y+3 |
2059 0e42 5C81 ldd r21,Y+4 |
2060 0e44 0E94 0000 call __mulsi3 |
2061 0e48 9B01 movw r18,r22 |
2062 0e4a AC01 movw r20,r24 |
2063 0e4c 97FF sbrs r25,7 |
2064 0e4e 04C0 rjmp .L83 |
2065 0e50 2150 subi r18,lo8(-(2047)) |
2066 0e52 384F sbci r19,hi8(-(2047)) |
2067 0e54 4F4F sbci r20,hlo8(-(2047)) |
2068 0e56 5F4F sbci r21,hhi8(-(2047)) |
2069 .L83: |
2070 0e58 6BE0 ldi r22,11 |
2071 0e5a 5595 1: asr r21 |
2072 0e5c 4795 ror r20 |
2073 0e5e 3795 ror r19 |
2074 0e60 2795 ror r18 |
2075 0e62 6A95 dec r22 |
2076 0e64 D1F7 brne 1b |
2077 0e66 8091 0000 lds r24,Parameter_AchsKopplung1 |
2078 0e6a A82E mov r10,r24 |
2079 0e6c BB24 clr r11 |
2080 0e6e CC24 clr r12 |
2081 0e70 DD24 clr r13 |
2082 0e72 CA01 movw r24,r20 |
2083 0e74 B901 movw r22,r18 |
2084 0e76 A601 movw r20,r12 |
2085 0e78 9501 movw r18,r10 |
2086 0e7a 0E94 0000 call __mulsi3 |
2087 0e7e DC01 movw r26,r24 |
2088 0e80 CB01 movw r24,r22 |
2089 0e82 8093 0000 sts tmpl.31,r24 |
2090 0e86 9093 0000 sts (tmpl.31)+1,r25 |
2091 0e8a A093 0000 sts (tmpl.31)+2,r26 |
2092 0e8e B093 0000 sts (tmpl.31)+3,r27 |
2093 0e92 B7FF sbrs r27,7 |
2094 0e94 04C0 rjmp .L84 |
2095 0e96 8150 subi r24,lo8(-(4095)) |
2096 0e98 904F sbci r25,hi8(-(4095)) |
2097 0e9a AF4F sbci r26,hlo8(-(4095)) |
2098 0e9c BF4F sbci r27,hhi8(-(4095)) |
2099 .L84: |
2100 0e9e 3C01 movw r6,r24 |
2101 0ea0 4D01 movw r8,r26 |
2102 0ea2 3CE0 ldi r19,12 |
2103 0ea4 9594 1: asr r9 |
2104 0ea6 8794 ror r8 |
2105 0ea8 7794 ror r7 |
2106 0eaa 6794 ror r6 |
2107 0eac 3A95 dec r19 |
2108 0eae D1F7 brne 1b |
2109 0eb0 6092 0000 sts tmpl.31,r6 |
2110 0eb4 7092 0000 sts (tmpl.31)+1,r7 |
2111 0eb8 8092 0000 sts (tmpl.31)+2,r8 |
2112 0ebc 9092 0000 sts (tmpl.31)+3,r9 |
2113 0ec0 C801 movw r24,r16 |
2114 0ec2 B701 movw r22,r14 |
2115 0ec4 2D81 ldd r18,Y+5 |
2116 0ec6 3E81 ldd r19,Y+6 |
2117 0ec8 4F81 ldd r20,Y+7 |
2118 0eca 5885 ldd r21,Y+8 |
2119 0ecc 0E94 0000 call __mulsi3 |
2120 0ed0 97FF sbrs r25,7 |
2121 0ed2 04C0 rjmp .L85 |
2122 0ed4 6150 subi r22,lo8(-(2047)) |
2123 0ed6 784F sbci r23,hi8(-(2047)) |
2124 0ed8 8F4F sbci r24,hlo8(-(2047)) |
2125 0eda 9F4F sbci r25,hhi8(-(2047)) |
2126 .L85: |
2127 0edc 2BE0 ldi r18,11 |
2128 0ede 9595 1: asr r25 |
2129 0ee0 8795 ror r24 |
2130 0ee2 7795 ror r23 |
2131 0ee4 6795 ror r22 |
2132 0ee6 2A95 dec r18 |
2133 0ee8 D1F7 brne 1b |
2134 0eea A601 movw r20,r12 |
2135 0eec 9501 movw r18,r10 |
2136 0eee 0E94 0000 call __mulsi3 |
2137 0ef2 DC01 movw r26,r24 |
2138 0ef4 CB01 movw r24,r22 |
2139 0ef6 8093 0000 sts tmpl2.32,r24 |
2140 0efa 9093 0000 sts (tmpl2.32)+1,r25 |
2141 0efe A093 0000 sts (tmpl2.32)+2,r26 |
2142 0f02 B093 0000 sts (tmpl2.32)+3,r27 |
2143 0f06 B7FF sbrs r27,7 |
2144 0f08 04C0 rjmp .L86 |
2145 0f0a 8150 subi r24,lo8(-(4095)) |
2146 0f0c 904F sbci r25,hi8(-(4095)) |
2147 0f0e AF4F sbci r26,hlo8(-(4095)) |
2148 0f10 BF4F sbci r27,hhi8(-(4095)) |
2149 .L86: |
2150 0f12 AC01 movw r20,r24 |
2151 0f14 BD01 movw r22,r26 |
2152 0f16 8CE0 ldi r24,12 |
2153 0f18 7595 1: asr r23 |
2154 0f1a 6795 ror r22 |
2155 0f1c 5795 ror r21 |
2156 0f1e 4795 ror r20 |
2157 0f20 8A95 dec r24 |
2158 0f22 D1F7 brne 1b |
2159 0f24 4093 0000 sts tmpl2.32,r20 |
2160 0f28 5093 0000 sts (tmpl2.32)+1,r21 |
2161 0f2c 6093 0000 sts (tmpl2.32)+2,r22 |
2162 0f30 7093 0000 sts (tmpl2.32)+3,r23 |
2163 0f34 2A89 ldd r18,Y+18 |
2164 0f36 3B89 ldd r19,Y+19 |
2165 0f38 37FF sbrs r19,7 |
2166 0f3a 03C0 rjmp .L88 |
2167 0f3c 3095 com r19 |
2168 0f3e 2195 neg r18 |
2169 0f40 3F4F sbci r19,lo8(-1) |
2170 .L88: |
2171 0f42 2134 cpi r18,65 |
2172 0f44 3105 cpc r19,__zero_reg__ |
2173 0f46 E4F1 brlt .L93 |
2174 0f48 D401 movw r26,r8 |
2175 0f4a C301 movw r24,r6 |
2176 0f4c 97FE sbrs r9,7 |
2177 0f4e 07C0 rjmp .L91 |
2178 0f50 B095 com r27 |
2179 0f52 A095 com r26 |
2180 0f54 9095 com r25 |
2181 0f56 8195 neg r24 |
2182 0f58 9F4F sbci r25,lo8(-1) |
2183 0f5a AF4F sbci r26,lo8(-1) |
2184 0f5c BF4F sbci r27,lo8(-1) |
2185 .L91: |
2186 0f5e 8138 cpi r24,lo8(129) |
2187 0f60 9105 cpc r25,__zero_reg__ |
2188 0f62 A105 cpc r26,__zero_reg__ |
2189 0f64 B105 cpc r27,__zero_reg__ |
2190 0f66 84F4 brge .L90 |
2191 0f68 DB01 movw r26,r22 |
2192 0f6a CA01 movw r24,r20 |
2193 0f6c 77FF sbrs r23,7 |
2194 0f6e 07C0 rjmp .L92 |
2195 0f70 B095 com r27 |
2196 0f72 A095 com r26 |
2197 0f74 9095 com r25 |
2198 0f76 8195 neg r24 |
2199 0f78 9F4F sbci r25,lo8(-1) |
2200 0f7a AF4F sbci r26,lo8(-1) |
2201 0f7c BF4F sbci r27,lo8(-1) |
2202 .L92: |
2203 0f7e 8138 cpi r24,lo8(129) |
2204 0f80 9105 cpc r25,__zero_reg__ |
2205 0f82 A105 cpc r26,__zero_reg__ |
2206 0f84 B105 cpc r27,__zero_reg__ |
2207 0f86 E4F0 brlt .L93 |
2208 .L90: |
2209 0f88 81E0 ldi r24,lo8(1) |
2210 0f8a 8093 0000 sts TrichterFlug,r24 |
2211 0f8e 18C0 rjmp .L93 |
2212 .L76: |
2213 0f90 1092 0000 sts (KopplungsteilRollNick)+1,__zero_reg__ |
2214 0f94 1092 0000 sts KopplungsteilRollNick,__zero_reg__ |
2215 0f98 1092 0000 sts (KopplungsteilNickRoll)+1,__zero_reg__ |
2216 0f9c 1092 0000 sts KopplungsteilNickRoll,__zero_reg__ |
2217 0fa0 1092 0000 sts tmpl2.32,__zero_reg__ |
2218 0fa4 1092 0000 sts (tmpl2.32)+1,__zero_reg__ |
2219 0fa8 1092 0000 sts (tmpl2.32)+2,__zero_reg__ |
2220 0fac 1092 0000 sts (tmpl2.32)+3,__zero_reg__ |
2221 0fb0 1092 0000 sts tmpl.31,__zero_reg__ |
2222 0fb4 1092 0000 sts (tmpl.31)+1,__zero_reg__ |
2223 0fb8 1092 0000 sts (tmpl.31)+2,__zero_reg__ |
2224 0fbc 1092 0000 sts (tmpl.31)+3,__zero_reg__ |
2225 .L93: |
2226 0fc0 8091 0000 lds r24,tmpl2.32 |
2227 0fc4 9091 0000 lds r25,(tmpl2.32)+1 |
2228 0fc8 A091 0000 lds r26,(tmpl2.32)+2 |
2229 0fcc B091 0000 lds r27,(tmpl2.32)+3 |
2230 0fd0 BC01 movw r22,r24 |
2231 0fd2 CD01 movw r24,r26 |
2232 0fd4 24E6 ldi r18,lo8(100) |
2233 0fd6 30E0 ldi r19,hi8(100) |
2234 0fd8 40E0 ldi r20,hlo8(100) |
2235 0fda 50E0 ldi r21,hhi8(100) |
2236 0fdc 0E94 0000 call __divmodsi4 |
2237 0fe0 E090 0000 lds r14,tmpl.31 |
2238 0fe4 F090 0000 lds r15,(tmpl.31)+1 |
2239 0fe8 E21A sub r14,r18 |
2240 0fea F30A sbc r15,r19 |
2241 0fec F092 0000 sts (TrimRoll)+1,r15 |
2242 0ff0 E092 0000 sts TrimRoll,r14 |
2243 0ff4 8091 0000 lds r24,tmpl.31 |
2244 0ff8 9091 0000 lds r25,(tmpl.31)+1 |
2245 0ffc A091 0000 lds r26,(tmpl.31)+2 |
2246 1000 B091 0000 lds r27,(tmpl.31)+3 |
2247 1004 BC01 movw r22,r24 |
2248 1006 CD01 movw r24,r26 |
2249 1008 24E6 ldi r18,lo8(100) |
2250 100a 30E0 ldi r19,hi8(100) |
2251 100c 40E0 ldi r20,hlo8(100) |
2252 100e 50E0 ldi r21,hhi8(100) |
2253 1010 0E94 0000 call __divmodsi4 |
2254 1014 DA01 movw r26,r20 |
2255 1016 C901 movw r24,r18 |
2256 1018 2091 0000 lds r18,tmpl2.32 |
2257 101c 3091 0000 lds r19,(tmpl2.32)+1 |
2258 1020 8C01 movw r16,r24 |
2259 1022 021B sub r16,r18 |
2260 1024 130B sbc r17,r19 |
2261 1026 1093 0000 sts (TrimNick)+1,r17 |
2262 102a 0093 0000 sts TrimNick,r16 |
2263 102e 8091 0000 lds r24,GIER_GRAD_FAKTOR |
2264 1032 9091 0000 lds r25,(GIER_GRAD_FAKTOR)+1 |
2265 1036 A091 0000 lds r26,(GIER_GRAD_FAKTOR)+2 |
2266 103a B091 0000 lds r27,(GIER_GRAD_FAKTOR)+3 |
2267 103e BC01 movw r22,r24 |
2268 1040 CD01 movw r24,r26 |
2269 1042 28E6 ldi r18,lo8(360) |
2270 1044 31E0 ldi r19,hi8(360) |
2271 1046 40E0 ldi r20,hlo8(360) |
2272 1048 50E0 ldi r21,hhi8(360) |
2273 104a 0E94 0000 call __mulsi3 |
2274 104e 2091 0000 lds r18,ErsatzKompass |
2275 1052 3091 0000 lds r19,(ErsatzKompass)+1 |
2276 1056 4091 0000 lds r20,(ErsatzKompass)+2 |
2277 105a 5091 0000 lds r21,(ErsatzKompass)+3 |
2278 105e 2617 cp r18,r22 |
2279 1060 3707 cpc r19,r23 |
2280 1062 4807 cpc r20,r24 |
2281 1064 5907 cpc r21,r25 |
2282 1066 64F0 brlt .L94 |
2283 1068 261B sub r18,r22 |
2284 106a 370B sbc r19,r23 |
2285 106c 480B sbc r20,r24 |
2286 106e 590B sbc r21,r25 |
2287 1070 2093 0000 sts ErsatzKompass,r18 |
2288 1074 3093 0000 sts (ErsatzKompass)+1,r19 |
2289 1078 4093 0000 sts (ErsatzKompass)+2,r20 |
2290 107c 5093 0000 sts (ErsatzKompass)+3,r21 |
2291 .L94: |
2292 1080 2091 0000 lds r18,ErsatzKompass |
2293 1084 3091 0000 lds r19,(ErsatzKompass)+1 |
2294 1088 4091 0000 lds r20,(ErsatzKompass)+2 |
2295 108c 5091 0000 lds r21,(ErsatzKompass)+3 |
2296 1090 57FF sbrs r21,7 |
2297 1092 0CC0 rjmp .L95 |
2298 1094 260F add r18,r22 |
2299 1096 371F adc r19,r23 |
2300 1098 481F adc r20,r24 |
2301 109a 591F adc r21,r25 |
2302 109c 2093 0000 sts ErsatzKompass,r18 |
2303 10a0 3093 0000 sts (ErsatzKompass)+1,r19 |
2304 10a4 4093 0000 sts (ErsatzKompass)+2,r20 |
2305 10a8 5093 0000 sts (ErsatzKompass)+3,r21 |
2306 .L95: |
2307 10ac 6091 0000 lds r22,MesswertRoll |
2308 10b0 7091 0000 lds r23,(MesswertRoll)+1 |
2309 10b4 6E0D add r22,r14 |
2310 10b6 7F1D adc r23,r15 |
2311 10b8 9B01 movw r18,r22 |
2312 10ba 4427 clr r20 |
2313 10bc 37FD sbrc r19,7 |
2314 10be 4095 com r20 |
2315 10c0 542F mov r21,r20 |
2316 10c2 8091 0000 lds r24,Mess_IntegralRoll2 |
2317 10c6 9091 0000 lds r25,(Mess_IntegralRoll2)+1 |
2318 10ca A091 0000 lds r26,(Mess_IntegralRoll2)+2 |
2319 10ce B091 0000 lds r27,(Mess_IntegralRoll2)+3 |
2320 10d2 820F add r24,r18 |
2321 10d4 931F adc r25,r19 |
2322 10d6 A41F adc r26,r20 |
2323 10d8 B51F adc r27,r21 |
2324 10da 8093 0000 sts Mess_IntegralRoll2,r24 |
2325 10de 9093 0000 sts (Mess_IntegralRoll2)+1,r25 |
2326 10e2 A093 0000 sts (Mess_IntegralRoll2)+2,r26 |
2327 10e6 B093 0000 sts (Mess_IntegralRoll2)+3,r27 |
2328 10ea 8091 0000 lds r24,LageKorrekturRoll |
2329 10ee 9091 0000 lds r25,(LageKorrekturRoll)+1 |
2330 10f2 681B sub r22,r24 |
2331 10f4 790B sbc r23,r25 |
2332 10f6 CB01 movw r24,r22 |
2333 10f8 AA27 clr r26 |
2334 10fa 97FD sbrc r25,7 |
2335 10fc A095 com r26 |
2336 10fe BA2F mov r27,r26 |
2337 1100 2985 ldd r18,Y+9 |
2338 1102 3A85 ldd r19,Y+10 |
2339 1104 4B85 ldd r20,Y+11 |
2340 1106 5C85 ldd r21,Y+12 |
2341 1108 820F add r24,r18 |
2342 110a 931F adc r25,r19 |
2343 110c A41F adc r26,r20 |
2344 110e B51F adc r27,r21 |
2345 1110 8093 0000 sts Mess_IntegralRoll,r24 |
2346 1114 9093 0000 sts (Mess_IntegralRoll)+1,r25 |
2347 1118 A093 0000 sts (Mess_IntegralRoll)+2,r26 |
2348 111c B093 0000 sts (Mess_IntegralRoll)+3,r27 |
2349 1120 C090 0000 lds r12,Umschlag180Roll |
2350 1124 D090 0000 lds r13,(Umschlag180Roll)+1 |
2351 1128 E090 0000 lds r14,(Umschlag180Roll)+2 |
2352 112c F090 0000 lds r15,(Umschlag180Roll)+3 |
2353 1130 C816 cp r12,r24 |
2354 1132 D906 cpc r13,r25 |
2355 1134 EA06 cpc r14,r26 |
2356 1136 FB06 cpc r15,r27 |
2357 1138 C4F4 brge .L96 |
2358 113a 88EA ldi r24,lo8(25000) |
2359 113c 91E6 ldi r25,hi8(25000) |
2360 113e A0E0 ldi r26,hlo8(25000) |
2361 1140 B0E0 ldi r27,hhi8(25000) |
2362 1142 8C19 sub r24,r12 |
2363 1144 9D09 sbc r25,r13 |
2364 1146 AE09 sbc r26,r14 |
2365 1148 BF09 sbc r27,r15 |
2366 114a 8093 0000 sts Mess_IntegralRoll,r24 |
2367 114e 9093 0000 sts (Mess_IntegralRoll)+1,r25 |
2368 1152 A093 0000 sts (Mess_IntegralRoll)+2,r26 |
2369 1156 B093 0000 sts (Mess_IntegralRoll)+3,r27 |
2370 115a 8093 0000 sts Mess_IntegralRoll2,r24 |
2371 115e 9093 0000 sts (Mess_IntegralRoll2)+1,r25 |
2372 1162 A093 0000 sts (Mess_IntegralRoll2)+2,r26 |
2373 1166 B093 0000 sts (Mess_IntegralRoll2)+3,r27 |
2374 .L96: |
2375 116a 2227 clr r18 |
2376 116c 3327 clr r19 |
2377 116e A901 movw r20,r18 |
2378 1170 2C19 sub r18,r12 |
2379 1172 3D09 sbc r19,r13 |
2380 1174 4E09 sbc r20,r14 |
2381 1176 5F09 sbc r21,r15 |
2382 1178 8091 0000 lds r24,Mess_IntegralRoll |
2383 117c 9091 0000 lds r25,(Mess_IntegralRoll)+1 |
2384 1180 A091 0000 lds r26,(Mess_IntegralRoll)+2 |
2385 1184 B091 0000 lds r27,(Mess_IntegralRoll)+3 |
2386 1188 8217 cp r24,r18 |
2387 118a 9307 cpc r25,r19 |
2388 118c A407 cpc r26,r20 |
2389 118e B507 cpc r27,r21 |
2390 1190 B4F4 brge .L97 |
2391 1192 D701 movw r26,r14 |
2392 1194 C601 movw r24,r12 |
2393 1196 885A subi r24,lo8(-(-25000)) |
2394 1198 9146 sbci r25,hi8(-(-25000)) |
2395 119a A040 sbci r26,hlo8(-(-25000)) |
2396 119c B040 sbci r27,hhi8(-(-25000)) |
2397 119e 8093 0000 sts Mess_IntegralRoll,r24 |
2398 11a2 9093 0000 sts (Mess_IntegralRoll)+1,r25 |
2399 11a6 A093 0000 sts (Mess_IntegralRoll)+2,r26 |
2400 11aa B093 0000 sts (Mess_IntegralRoll)+3,r27 |
2401 11ae 8093 0000 sts Mess_IntegralRoll2,r24 |
2402 11b2 9093 0000 sts (Mess_IntegralRoll2)+1,r25 |
2403 11b6 A093 0000 sts (Mess_IntegralRoll2)+2,r26 |
2404 11ba B093 0000 sts (Mess_IntegralRoll2)+3,r27 |
2405 .L97: |
2406 11be 6091 0000 lds r22,MesswertNick |
2407 11c2 7091 0000 lds r23,(MesswertNick)+1 |
2408 11c6 600F add r22,r16 |
2409 11c8 711F adc r23,r17 |
2410 11ca 9B01 movw r18,r22 |
2411 11cc 4427 clr r20 |
2412 11ce 37FD sbrc r19,7 |
2413 11d0 4095 com r20 |
2414 11d2 542F mov r21,r20 |
2415 11d4 8091 0000 lds r24,Mess_IntegralNick2 |
2416 11d8 9091 0000 lds r25,(Mess_IntegralNick2)+1 |
2417 11dc A091 0000 lds r26,(Mess_IntegralNick2)+2 |
2418 11e0 B091 0000 lds r27,(Mess_IntegralNick2)+3 |
2419 11e4 820F add r24,r18 |
2420 11e6 931F adc r25,r19 |
2421 11e8 A41F adc r26,r20 |
2422 11ea B51F adc r27,r21 |
2423 11ec 8093 0000 sts Mess_IntegralNick2,r24 |
2424 11f0 9093 0000 sts (Mess_IntegralNick2)+1,r25 |
2425 11f4 A093 0000 sts (Mess_IntegralNick2)+2,r26 |
2426 11f8 B093 0000 sts (Mess_IntegralNick2)+3,r27 |
2427 11fc 8091 0000 lds r24,LageKorrekturNick |
2428 1200 9091 0000 lds r25,(LageKorrekturNick)+1 |
2429 1204 681B sub r22,r24 |
2430 1206 790B sbc r23,r25 |
2431 1208 CB01 movw r24,r22 |
2432 120a AA27 clr r26 |
2433 120c 97FD sbrc r25,7 |
2434 120e A095 com r26 |
2435 1210 BA2F mov r27,r26 |
2436 1212 2D85 ldd r18,Y+13 |
2437 1214 3E85 ldd r19,Y+14 |
2438 1216 4F85 ldd r20,Y+15 |
2439 1218 5889 ldd r21,Y+16 |
2440 121a 820F add r24,r18 |
2441 121c 931F adc r25,r19 |
2442 121e A41F adc r26,r20 |
2443 1220 B51F adc r27,r21 |
2444 1222 8093 0000 sts Mess_IntegralNick,r24 |
2445 1226 9093 0000 sts (Mess_IntegralNick)+1,r25 |
2446 122a A093 0000 sts (Mess_IntegralNick)+2,r26 |
2447 122e B093 0000 sts (Mess_IntegralNick)+3,r27 |
2448 1232 E090 0000 lds r14,Umschlag180Nick |
2449 1236 F090 0000 lds r15,(Umschlag180Nick)+1 |
2450 123a 0091 0000 lds r16,(Umschlag180Nick)+2 |
2451 123e 1091 0000 lds r17,(Umschlag180Nick)+3 |
2452 1242 E816 cp r14,r24 |
2453 1244 F906 cpc r15,r25 |
2454 1246 0A07 cpc r16,r26 |
2455 1248 1B07 cpc r17,r27 |
2456 124a C4F4 brge .L98 |
2457 124c 88EA ldi r24,lo8(25000) |
2458 124e 91E6 ldi r25,hi8(25000) |
2459 1250 A0E0 ldi r26,hlo8(25000) |
2460 1252 B0E0 ldi r27,hhi8(25000) |
2461 1254 8E19 sub r24,r14 |
2462 1256 9F09 sbc r25,r15 |
2463 1258 A00B sbc r26,r16 |
2464 125a B10B sbc r27,r17 |
2465 125c 8093 0000 sts Mess_IntegralNick,r24 |
2466 1260 9093 0000 sts (Mess_IntegralNick)+1,r25 |
2467 1264 A093 0000 sts (Mess_IntegralNick)+2,r26 |
2468 1268 B093 0000 sts (Mess_IntegralNick)+3,r27 |
2469 126c 8093 0000 sts Mess_IntegralNick2,r24 |
2470 1270 9093 0000 sts (Mess_IntegralNick2)+1,r25 |
2471 1274 A093 0000 sts (Mess_IntegralNick2)+2,r26 |
2472 1278 B093 0000 sts (Mess_IntegralNick2)+3,r27 |
2473 .L98: |
2474 127c 2227 clr r18 |
2475 127e 3327 clr r19 |
2476 1280 A901 movw r20,r18 |
2477 1282 2E19 sub r18,r14 |
2478 1284 3F09 sbc r19,r15 |
2479 1286 400B sbc r20,r16 |
2480 1288 510B sbc r21,r17 |
2481 128a 8091 0000 lds r24,Mess_IntegralNick |
2482 128e 9091 0000 lds r25,(Mess_IntegralNick)+1 |
2483 1292 A091 0000 lds r26,(Mess_IntegralNick)+2 |
2484 1296 B091 0000 lds r27,(Mess_IntegralNick)+3 |
2485 129a 8217 cp r24,r18 |
2486 129c 9307 cpc r25,r19 |
2487 129e A407 cpc r26,r20 |
2488 12a0 B507 cpc r27,r21 |
2489 12a2 B4F4 brge .L99 |
2490 12a4 D801 movw r26,r16 |
2491 12a6 C701 movw r24,r14 |
2492 12a8 885A subi r24,lo8(-(-25000)) |
2493 12aa 9146 sbci r25,hi8(-(-25000)) |
2494 12ac A040 sbci r26,hlo8(-(-25000)) |
2495 12ae B040 sbci r27,hhi8(-(-25000)) |
2496 12b0 8093 0000 sts Mess_IntegralNick,r24 |
2497 12b4 9093 0000 sts (Mess_IntegralNick)+1,r25 |
2498 12b8 A093 0000 sts (Mess_IntegralNick)+2,r26 |
2499 12bc B093 0000 sts (Mess_IntegralNick)+3,r27 |
2500 12c0 8093 0000 sts Mess_IntegralNick2,r24 |
2501 12c4 9093 0000 sts (Mess_IntegralNick2)+1,r25 |
2502 12c8 A093 0000 sts (Mess_IntegralNick2)+2,r26 |
2503 12cc B093 0000 sts (Mess_IntegralNick2)+3,r27 |
2504 .L99: |
2505 12d0 8091 0000 lds r24,Mess_Integral_Gier |
2506 12d4 9091 0000 lds r25,(Mess_Integral_Gier)+1 |
2507 12d8 A091 0000 lds r26,(Mess_Integral_Gier)+2 |
2508 12dc B091 0000 lds r27,(Mess_Integral_Gier)+3 |
2509 12e0 8093 0000 sts Integral_Gier,r24 |
2510 12e4 9093 0000 sts (Integral_Gier)+1,r25 |
2511 12e8 A093 0000 sts (Integral_Gier)+2,r26 |
2512 12ec B093 0000 sts (Integral_Gier)+3,r27 |
2513 12f0 8091 0000 lds r24,Mess_IntegralNick |
2514 12f4 9091 0000 lds r25,(Mess_IntegralNick)+1 |
2515 12f8 A091 0000 lds r26,(Mess_IntegralNick)+2 |
2516 12fc B091 0000 lds r27,(Mess_IntegralNick)+3 |
2517 1300 8093 0000 sts IntegralNick,r24 |
2518 1304 9093 0000 sts (IntegralNick)+1,r25 |
2519 1308 A093 0000 sts (IntegralNick)+2,r26 |
2520 130c B093 0000 sts (IntegralNick)+3,r27 |
2521 1310 8091 0000 lds r24,Mess_IntegralRoll |
2522 1314 9091 0000 lds r25,(Mess_IntegralRoll)+1 |
2523 1318 A091 0000 lds r26,(Mess_IntegralRoll)+2 |
2524 131c B091 0000 lds r27,(Mess_IntegralRoll)+3 |
2525 1320 8093 0000 sts IntegralRoll,r24 |
2526 1324 9093 0000 sts (IntegralRoll)+1,r25 |
2527 1328 A093 0000 sts (IntegralRoll)+2,r26 |
2528 132c B093 0000 sts (IntegralRoll)+3,r27 |
2529 1330 8091 0000 lds r24,Mess_IntegralNick2 |
2530 1334 9091 0000 lds r25,(Mess_IntegralNick2)+1 |
2531 1338 A091 0000 lds r26,(Mess_IntegralNick2)+2 |
2532 133c B091 0000 lds r27,(Mess_IntegralNick2)+3 |
2533 1340 8093 0000 sts IntegralNick2,r24 |
2534 1344 9093 0000 sts (IntegralNick2)+1,r25 |
2535 1348 A093 0000 sts (IntegralNick2)+2,r26 |
2536 134c B093 0000 sts (IntegralNick2)+3,r27 |
2537 1350 8091 0000 lds r24,Mess_IntegralRoll2 |
2538 1354 9091 0000 lds r25,(Mess_IntegralRoll2)+1 |
2539 1358 A091 0000 lds r26,(Mess_IntegralRoll2)+2 |
2540 135c B091 0000 lds r27,(Mess_IntegralRoll2)+3 |
2541 1360 8093 0000 sts IntegralRoll2,r24 |
2542 1364 9093 0000 sts (IntegralRoll2)+1,r25 |
2543 1368 A093 0000 sts (IntegralRoll2)+2,r26 |
2544 136c B093 0000 sts (IntegralRoll2)+3,r27 |
2545 1370 8091 0000 lds r24,HiResNick |
2546 1374 9091 0000 lds r25,(HiResNick)+1 |
2547 1378 97FD sbrc r25,7 |
2548 137a 0796 adiw r24,7 |
2549 .L100: |
2550 137c 03E0 ldi r16,3 |
2551 137e 9595 1: asr r25 |
2552 1380 8795 ror r24 |
2553 1382 0A95 dec r16 |
2554 1384 E1F7 brne 1b |
2555 1386 9093 0000 sts (MesswertNick)+1,r25 |
2556 138a 8093 0000 sts MesswertNick,r24 |
2557 138e 8091 0000 lds r24,HiResRoll |
2558 1392 9091 0000 lds r25,(HiResRoll)+1 |
2559 1396 97FD sbrc r25,7 |
2560 1398 0796 adiw r24,7 |
2561 .L101: |
2562 139a 13E0 ldi r17,3 |
2563 139c 9595 1: asr r25 |
2564 139e 8795 ror r24 |
2565 13a0 1A95 dec r17 |
2566 13a2 E1F7 brne 1b |
2567 13a4 9093 0000 sts (MesswertRoll)+1,r25 |
2568 13a8 8093 0000 sts MesswertRoll,r24 |
2569 13ac 8091 0000 lds r24,AdWertNick |
2570 13b0 9091 0000 lds r25,(AdWertNick)+1 |
2571 13b4 0F97 sbiw r24,15 |
2572 13b6 34F4 brge .L102 |
2573 13b8 88E1 ldi r24,lo8(-1000) |
2574 13ba 9CEF ldi r25,hi8(-1000) |
2575 13bc 9093 0000 sts (MesswertNick)+1,r25 |
2576 13c0 8093 0000 sts MesswertNick,r24 |
2577 .L102: |
2578 13c4 8091 0000 lds r24,AdWertNick |
2579 13c8 9091 0000 lds r25,(AdWertNick)+1 |
2580 13cc 0797 sbiw r24,7 |
2581 13ce 34F4 brge .L103 |
2582 13d0 80E3 ldi r24,lo8(-2000) |
2583 13d2 98EF ldi r25,hi8(-2000) |
2584 13d4 9093 0000 sts (MesswertNick)+1,r25 |
2585 13d8 8093 0000 sts MesswertNick,r24 |
2586 .L103: |
2587 13dc 2091 0000 lds r18,PlatinenVersion |
2588 13e0 2A30 cpi r18,lo8(10) |
2589 13e2 A9F4 brne .L104 |
2590 13e4 8091 0000 lds r24,AdWertNick |
2591 13e8 9091 0000 lds r25,(AdWertNick)+1 |
2592 13ec 835F subi r24,lo8(1011) |
2593 13ee 9340 sbci r25,hi8(1011) |
2594 13f0 34F0 brlt .L105 |
2595 13f2 88EE ldi r24,lo8(1000) |
2596 13f4 93E0 ldi r25,hi8(1000) |
2597 13f6 9093 0000 sts (MesswertNick)+1,r25 |
2598 13fa 8093 0000 sts MesswertNick,r24 |
2599 .L105: |
2600 13fe 8091 0000 lds r24,AdWertNick |
2601 1402 9091 0000 lds r25,(AdWertNick)+1 |
2602 1406 8A5F subi r24,lo8(1018) |
2603 1408 9340 sbci r25,hi8(1018) |
2604 140a DCF0 brlt .L107 |
2605 140c 14C0 rjmp .L150 |
2606 .L104: |
2607 140e 8091 0000 lds r24,AdWertNick |
2608 1412 9091 0000 lds r25,(AdWertNick)+1 |
2609 1416 815D subi r24,lo8(2001) |
2610 1418 9740 sbci r25,hi8(2001) |
2611 141a 34F0 brlt .L108 |
2612 141c 88EE ldi r24,lo8(1000) |
2613 141e 93E0 ldi r25,hi8(1000) |
2614 1420 9093 0000 sts (MesswertNick)+1,r25 |
2615 1424 8093 0000 sts MesswertNick,r24 |
2616 .L108: |
2617 1428 8091 0000 lds r24,AdWertNick |
2618 142c 9091 0000 lds r25,(AdWertNick)+1 |
2619 1430 805E subi r24,lo8(2016) |
2620 1432 9740 sbci r25,hi8(2016) |
2621 1434 34F0 brlt .L107 |
2622 .L150: |
2623 1436 80ED ldi r24,lo8(2000) |
2624 1438 97E0 ldi r25,hi8(2000) |
2625 143a 9093 0000 sts (MesswertNick)+1,r25 |
2626 143e 8093 0000 sts MesswertNick,r24 |
2627 .L107: |
2628 1442 8091 0000 lds r24,AdWertRoll |
2629 1446 9091 0000 lds r25,(AdWertRoll)+1 |
2630 144a 0F97 sbiw r24,15 |
2631 144c 34F4 brge .L110 |
2632 144e 88E1 ldi r24,lo8(-1000) |
2633 1450 9CEF ldi r25,hi8(-1000) |
2634 1452 9093 0000 sts (MesswertRoll)+1,r25 |
2635 1456 8093 0000 sts MesswertRoll,r24 |
2636 .L110: |
2637 145a 8091 0000 lds r24,AdWertRoll |
2638 145e 9091 0000 lds r25,(AdWertRoll)+1 |
2639 1462 0797 sbiw r24,7 |
2640 1464 34F4 brge .L111 |
2641 1466 80E3 ldi r24,lo8(-2000) |
2642 1468 98EF ldi r25,hi8(-2000) |
2643 146a 9093 0000 sts (MesswertRoll)+1,r25 |
2644 146e 8093 0000 sts MesswertRoll,r24 |
2645 .L111: |
2646 1472 2A30 cpi r18,lo8(10) |
2647 1474 A9F4 brne .L112 |
2648 1476 8091 0000 lds r24,AdWertRoll |
2649 147a 9091 0000 lds r25,(AdWertRoll)+1 |
2650 147e 835F subi r24,lo8(1011) |
2651 1480 9340 sbci r25,hi8(1011) |
2652 1482 34F0 brlt .L113 |
2653 1484 88EE ldi r24,lo8(1000) |
2654 1486 93E0 ldi r25,hi8(1000) |
2655 1488 9093 0000 sts (MesswertRoll)+1,r25 |
2656 148c 8093 0000 sts MesswertRoll,r24 |
2657 .L113: |
2658 1490 8091 0000 lds r24,AdWertRoll |
2659 1494 9091 0000 lds r25,(AdWertRoll)+1 |
2660 1498 8A5F subi r24,lo8(1018) |
2661 149a 9340 sbci r25,hi8(1018) |
2662 149c DCF0 brlt .L115 |
2663 149e 14C0 rjmp .L151 |
2664 .L112: |
2665 14a0 8091 0000 lds r24,AdWertRoll |
2666 14a4 9091 0000 lds r25,(AdWertRoll)+1 |
2667 14a8 815D subi r24,lo8(2001) |
2668 14aa 9740 sbci r25,hi8(2001) |
2669 14ac 34F0 brlt .L116 |
2670 14ae 88EE ldi r24,lo8(1000) |
2671 14b0 93E0 ldi r25,hi8(1000) |
2672 14b2 9093 0000 sts (MesswertRoll)+1,r25 |
2673 14b6 8093 0000 sts MesswertRoll,r24 |
2674 .L116: |
2675 14ba 8091 0000 lds r24,AdWertRoll |
2676 14be 9091 0000 lds r25,(AdWertRoll)+1 |
2677 14c2 805E subi r24,lo8(2016) |
2678 14c4 9740 sbci r25,hi8(2016) |
2679 14c6 34F0 brlt .L115 |
2680 .L151: |
2681 14c8 80ED ldi r24,lo8(2000) |
2682 14ca 97E0 ldi r25,hi8(2000) |
2683 14cc 9093 0000 sts (MesswertRoll)+1,r25 |
2684 14d0 8093 0000 sts MesswertRoll,r24 |
2685 .L115: |
2686 14d4 6091 0000 lds r22,Parameter_Gyro_D |
2687 14d8 6623 tst r22 |
2688 14da 09F4 brne .+2 |
2689 14dc AFC0 rjmp .L118 |
2690 14de 4091 0000 lds r20,HiResNick |
2691 14e2 5091 0000 lds r21,(HiResNick)+1 |
2692 14e6 8091 0000 lds r24,oldNick.35 |
2693 14ea 9091 0000 lds r25,(oldNick.35)+1 |
2694 14ee 481B sub r20,r24 |
2695 14f0 590B sbc r21,r25 |
2696 14f2 5093 0000 sts (d2Nick.38)+1,r21 |
2697 14f6 4093 0000 sts d2Nick.38,r20 |
2698 14fa 2091 0000 lds r18,HiResNick |
2699 14fe 3091 0000 lds r19,(HiResNick)+1 |
2700 1502 280F add r18,r24 |
2701 1504 391F adc r19,r25 |
2702 1506 37FF sbrs r19,7 |
2703 1508 02C0 rjmp .L119 |
2704 150a 2F5F subi r18,lo8(-(1)) |
2705 150c 3F4F sbci r19,hi8(-(1)) |
2706 .L119: |
2707 150e 3595 asr r19 |
2708 1510 2795 ror r18 |
2709 1512 3093 0000 sts (oldNick.35)+1,r19 |
2710 1516 2093 0000 sts oldNick.35,r18 |
2711 151a 4138 cpi r20,129 |
2712 151c 5105 cpc r21,__zero_reg__ |
2713 151e 1CF0 brlt .L120 |
2714 1520 80E8 ldi r24,lo8(128) |
2715 1522 90E0 ldi r25,hi8(128) |
2716 1524 05C0 rjmp .L152 |
2717 .L120: |
2718 1526 4058 subi r20,lo8(-128) |
2719 1528 5F4F sbci r21,hi8(-128) |
2720 152a 34F4 brge .L121 |
2721 152c 80E8 ldi r24,lo8(-128) |
2722 152e 9FEF ldi r25,hi8(-128) |
2723 .L152: |
2724 1530 9093 0000 sts (d2Nick.38)+1,r25 |
2725 1534 8093 0000 sts d2Nick.38,r24 |
2726 .L121: |
2727 1538 4091 0000 lds r20,HiResRoll |
2728 153c 5091 0000 lds r21,(HiResRoll)+1 |
2729 1540 8091 0000 lds r24,oldRoll.36 |
2730 1544 9091 0000 lds r25,(oldRoll.36)+1 |
2731 1548 481B sub r20,r24 |
2732 154a 590B sbc r21,r25 |
2733 154c 5093 0000 sts (d2Roll.37)+1,r21 |
2734 1550 4093 0000 sts d2Roll.37,r20 |
2735 1554 2091 0000 lds r18,HiResRoll |
2736 1558 3091 0000 lds r19,(HiResRoll)+1 |
2737 155c 280F add r18,r24 |
2738 155e 391F adc r19,r25 |
2739 1560 37FF sbrs r19,7 |
2740 1562 02C0 rjmp .L123 |
2741 1564 2F5F subi r18,lo8(-(1)) |
2742 1566 3F4F sbci r19,hi8(-(1)) |
2743 .L123: |
2744 1568 3595 asr r19 |
2745 156a 2795 ror r18 |
2746 156c 3093 0000 sts (oldRoll.36)+1,r19 |
2747 1570 2093 0000 sts oldRoll.36,r18 |
2748 1574 4138 cpi r20,129 |
2749 1576 5105 cpc r21,__zero_reg__ |
2750 1578 1CF0 brlt .L124 |
2751 157a 80E8 ldi r24,lo8(128) |
2752 157c 90E0 ldi r25,hi8(128) |
2753 157e 05C0 rjmp .L153 |
2754 .L124: |
2755 1580 4058 subi r20,lo8(-128) |
2756 1582 5F4F sbci r21,hi8(-128) |
2757 1584 34F4 brge .L125 |
2758 1586 80E8 ldi r24,lo8(-128) |
2759 1588 9FEF ldi r25,hi8(-128) |
2760 .L153: |
2761 158a 9093 0000 sts (d2Roll.37)+1,r25 |
2762 158e 8093 0000 sts d2Roll.37,r24 |
2763 .L125: |
2764 1592 462F mov r20,r22 |
2765 1594 5527 clr r21 |
2766 1596 8091 0000 lds r24,d2Nick.38 |
2767 159a 9091 0000 lds r25,(d2Nick.38)+1 |
2768 159e 849F mul r24,r20 |
2769 15a0 B001 movw r22,r0 |
2770 15a2 859F mul r24,r21 |
2771 15a4 700D add r23,r0 |
2772 15a6 949F mul r25,r20 |
2773 15a8 700D add r23,r0 |
2774 15aa 1124 clr r1 |
2775 15ac 9B01 movw r18,r22 |
2776 15ae 77FF sbrs r23,7 |
2777 15b0 02C0 rjmp .L127 |
2778 15b2 215F subi r18,lo8(-(15)) |
2779 15b4 3F4F sbci r19,hi8(-(15)) |
2780 .L127: |
2781 15b6 F4E0 ldi r31,4 |
2782 15b8 3595 1: asr r19 |
2783 15ba 2795 ror r18 |
2784 15bc FA95 dec r31 |
2785 15be E1F7 brne 1b |
2786 15c0 8091 0000 lds r24,MesswertNick |
2787 15c4 9091 0000 lds r25,(MesswertNick)+1 |
2788 15c8 820F add r24,r18 |
2789 15ca 931F adc r25,r19 |
2790 15cc 9093 0000 sts (MesswertNick)+1,r25 |
2791 15d0 8093 0000 sts MesswertNick,r24 |
2792 15d4 8091 0000 lds r24,d2Roll.37 |
2793 15d8 9091 0000 lds r25,(d2Roll.37)+1 |
2794 15dc 849F mul r24,r20 |
2795 15de D001 movw r26,r0 |
2796 15e0 859F mul r24,r21 |
2797 15e2 B00D add r27,r0 |
2798 15e4 949F mul r25,r20 |
2799 15e6 B00D add r27,r0 |
2800 15e8 1124 clr r1 |
2801 15ea AD01 movw r20,r26 |
2802 15ec 9D01 movw r18,r26 |
2803 15ee B7FF sbrs r27,7 |
2804 15f0 02C0 rjmp .L128 |
2805 15f2 215F subi r18,lo8(-(15)) |
2806 15f4 3F4F sbci r19,hi8(-(15)) |
2807 .L128: |
2808 15f6 E4E0 ldi r30,4 |
2809 15f8 3595 1: asr r19 |
2810 15fa 2795 ror r18 |
2811 15fc EA95 dec r30 |
2812 15fe E1F7 brne 1b |
2813 1600 8091 0000 lds r24,MesswertRoll |
2814 1604 9091 0000 lds r25,(MesswertRoll)+1 |
2815 1608 820F add r24,r18 |
2816 160a 931F adc r25,r19 |
2817 160c 9093 0000 sts (MesswertRoll)+1,r25 |
2818 1610 8093 0000 sts MesswertRoll,r24 |
2819 1614 8091 0000 lds r24,HiResNick |
2820 1618 9091 0000 lds r25,(HiResNick)+1 |
2821 161c 860F add r24,r22 |
2822 161e 971F adc r25,r23 |
2823 1620 9093 0000 sts (HiResNick)+1,r25 |
2824 1624 8093 0000 sts HiResNick,r24 |
2825 1628 8091 0000 lds r24,HiResRoll |
2826 162c 9091 0000 lds r25,(HiResRoll)+1 |
2827 1630 840F add r24,r20 |
2828 1632 951F adc r25,r21 |
2829 1634 9093 0000 sts (HiResRoll)+1,r25 |
2830 1638 8093 0000 sts HiResRoll,r24 |
2831 .L118: |
2832 163c 0091 0000 lds r16,RohMesswertRoll |
2833 1640 1091 0000 lds r17,(RohMesswertRoll)+1 |
2834 1644 8091 0000 lds r24,KopplungsteilNickRoll |
2835 1648 9091 0000 lds r25,(KopplungsteilNickRoll)+1 |
2836 164c 1016 cp __zero_reg__,r16 |
2837 164e 1106 cpc __zero_reg__,r17 |
2838 1650 5CF5 brge .L129 |
2839 1652 9C01 movw r18,r24 |
2840 1654 97FF sbrs r25,7 |
2841 1656 04C0 rjmp .L130 |
2842 1658 2227 clr r18 |
2843 165a 3327 clr r19 |
2844 165c 281B sub r18,r24 |
2845 165e 390B sbc r19,r25 |
2846 .L130: |
2847 1660 C901 movw r24,r18 |
2848 1662 AA27 clr r26 |
2849 1664 97FD sbrc r25,7 |
2850 1666 A095 com r26 |
2851 1668 BA2F mov r27,r26 |
2852 166a 2091 0000 lds r18,Parameter_CouplingYawCorrection |
2853 166e 3327 clr r19 |
2854 1670 4427 clr r20 |
2855 1672 5527 clr r21 |
2856 1674 BC01 movw r22,r24 |
2857 1676 CD01 movw r24,r26 |
2858 1678 0E94 0000 call __mulsi3 |
2859 167c 9B01 movw r18,r22 |
2860 167e AC01 movw r20,r24 |
2861 1680 97FF sbrs r25,7 |
2862 1682 04C0 rjmp .L131 |
2863 1684 215C subi r18,lo8(-(63)) |
2864 1686 3F4F sbci r19,hi8(-(63)) |
2865 1688 4F4F sbci r20,hlo8(-(63)) |
2866 168a 5F4F sbci r21,hhi8(-(63)) |
2867 .L131: |
2868 168c 76E0 ldi r23,6 |
2869 168e 5595 1: asr r21 |
2870 1690 4795 ror r20 |
2871 1692 3795 ror r19 |
2872 1694 2795 ror r18 |
2873 1696 7A95 dec r23 |
2874 1698 D1F7 brne 1b |
2875 169a 8091 0000 lds r24,TrimRoll |
2876 169e 9091 0000 lds r25,(TrimRoll)+1 |
2877 16a2 820F add r24,r18 |
2878 16a4 931F adc r25,r19 |
2879 16a6 27C0 rjmp .L154 |
2880 .L129: |
2881 16a8 97FF sbrs r25,7 |
2882 16aa 03C0 rjmp .L133 |
2883 16ac 9095 com r25 |
2884 16ae 8195 neg r24 |
2885 16b0 9F4F sbci r25,lo8(-1) |
2886 .L133: |
2887 16b2 AA27 clr r26 |
2888 16b4 97FD sbrc r25,7 |
2889 16b6 A095 com r26 |
2890 16b8 BA2F mov r27,r26 |
2891 16ba 2091 0000 lds r18,Parameter_CouplingYawCorrection |
2892 16be 3327 clr r19 |
2893 16c0 4427 clr r20 |
2894 16c2 5527 clr r21 |
2895 16c4 BC01 movw r22,r24 |
2896 16c6 CD01 movw r24,r26 |
2897 16c8 0E94 0000 call __mulsi3 |
2898 16cc 9B01 movw r18,r22 |
2899 16ce AC01 movw r20,r24 |
2900 16d0 97FF sbrs r25,7 |
2901 16d2 04C0 rjmp .L134 |
2902 16d4 215C subi r18,lo8(-(63)) |
2903 16d6 3F4F sbci r19,hi8(-(63)) |
2904 16d8 4F4F sbci r20,hlo8(-(63)) |
2905 16da 5F4F sbci r21,hhi8(-(63)) |
2906 .L134: |
2907 16dc 66E0 ldi r22,6 |
2908 16de 5595 1: asr r21 |
2909 16e0 4795 ror r20 |
2910 16e2 3795 ror r19 |
2911 16e4 2795 ror r18 |
2912 16e6 6A95 dec r22 |
2913 16e8 D1F7 brne 1b |
2914 16ea 8091 0000 lds r24,TrimRoll |
2915 16ee 9091 0000 lds r25,(TrimRoll)+1 |
2916 16f2 821B sub r24,r18 |
2917 16f4 930B sbc r25,r19 |
2918 .L154: |
2919 16f6 9093 0000 sts (TrimRoll)+1,r25 |
2920 16fa 8093 0000 sts TrimRoll,r24 |
2921 16fe E090 0000 lds r14,RohMesswertNick |
2922 1702 F090 0000 lds r15,(RohMesswertNick)+1 |
2923 1706 8091 0000 lds r24,KopplungsteilRollNick |
2924 170a 9091 0000 lds r25,(KopplungsteilRollNick)+1 |
2925 170e 1E14 cp __zero_reg__,r14 |
2926 1710 1F04 cpc __zero_reg__,r15 |
2927 1712 5CF5 brge .L135 |
2928 1714 9C01 movw r18,r24 |
2929 1716 97FF sbrs r25,7 |
2930 1718 04C0 rjmp .L136 |
2931 171a 2227 clr r18 |
2932 171c 3327 clr r19 |
2933 171e 281B sub r18,r24 |
2934 1720 390B sbc r19,r25 |
2935 .L136: |
2936 1722 C901 movw r24,r18 |
2937 1724 AA27 clr r26 |
2938 1726 97FD sbrc r25,7 |
2939 1728 A095 com r26 |
2940 172a BA2F mov r27,r26 |
2941 172c 2091 0000 lds r18,Parameter_CouplingYawCorrection |
2942 1730 3327 clr r19 |
2943 1732 4427 clr r20 |
2944 1734 5527 clr r21 |
2945 1736 BC01 movw r22,r24 |
2946 1738 CD01 movw r24,r26 |
2947 173a 0E94 0000 call __mulsi3 |
2948 173e 9B01 movw r18,r22 |
2949 1740 AC01 movw r20,r24 |
2950 1742 97FF sbrs r25,7 |
2951 1744 04C0 rjmp .L137 |
2952 1746 215C subi r18,lo8(-(63)) |
2953 1748 3F4F sbci r19,hi8(-(63)) |
2954 174a 4F4F sbci r20,hlo8(-(63)) |
2955 174c 5F4F sbci r21,hhi8(-(63)) |
2956 .L137: |
2957 174e 96E0 ldi r25,6 |
2958 1750 5595 1: asr r21 |
2959 1752 4795 ror r20 |
2960 1754 3795 ror r19 |
2961 1756 2795 ror r18 |
2962 1758 9A95 dec r25 |
2963 175a D1F7 brne 1b |
2964 175c 8091 0000 lds r24,TrimNick |
2965 1760 9091 0000 lds r25,(TrimNick)+1 |
2966 1764 820F add r24,r18 |
2967 1766 931F adc r25,r19 |
2968 1768 27C0 rjmp .L155 |
2969 .L135: |
2970 176a 97FF sbrs r25,7 |
2971 176c 03C0 rjmp .L139 |
2972 176e 9095 com r25 |
2973 1770 8195 neg r24 |
2974 1772 9F4F sbci r25,lo8(-1) |
2975 .L139: |
2976 1774 AA27 clr r26 |
2977 1776 97FD sbrc r25,7 |
2978 1778 A095 com r26 |
2979 177a BA2F mov r27,r26 |
2980 177c 2091 0000 lds r18,Parameter_CouplingYawCorrection |
2981 1780 3327 clr r19 |
2982 1782 4427 clr r20 |
2983 1784 5527 clr r21 |
2984 1786 BC01 movw r22,r24 |
2985 1788 CD01 movw r24,r26 |
2986 178a 0E94 0000 call __mulsi3 |
2987 178e 9B01 movw r18,r22 |
2988 1790 AC01 movw r20,r24 |
2989 1792 97FF sbrs r25,7 |
2990 1794 04C0 rjmp .L140 |
2991 1796 215C subi r18,lo8(-(63)) |
2992 1798 3F4F sbci r19,hi8(-(63)) |
2993 179a 4F4F sbci r20,hlo8(-(63)) |
2994 179c 5F4F sbci r21,hhi8(-(63)) |
2995 .L140: |
2996 179e 86E0 ldi r24,6 |
2997 17a0 5595 1: asr r21 |
2998 17a2 4795 ror r20 |
2999 17a4 3795 ror r19 |
3000 17a6 2795 ror r18 |
3001 17a8 8A95 dec r24 |
3002 17aa D1F7 brne 1b |
3003 17ac 8091 0000 lds r24,TrimNick |
3004 17b0 9091 0000 lds r25,(TrimNick)+1 |
3005 17b4 821B sub r24,r18 |
3006 17b6 930B sbc r25,r19 |
3007 .L155: |
3008 17b8 9093 0000 sts (TrimNick)+1,r25 |
3009 17bc 8093 0000 sts TrimNick,r24 |
3010 17c0 8091 0000 lds r24,EE_Parameter+13 |
3011 17c4 87FF sbrs r24,7 |
3012 17c6 44C0 rjmp .L63 |
3013 17c8 B989 ldd r27,Y+17 |
3014 17ca BB23 tst r27 |
3015 17cc 09F0 breq .+2 |
3016 17ce 40C0 rjmp .L63 |
3017 17d0 8091 0000 lds r24,Looping_Roll |
3018 17d4 8823 tst r24 |
3019 17d6 E1F5 brne .L63 |
3020 17d8 E1E0 ldi r30,lo8(257) |
3021 17da EE16 cp r14,r30 |
3022 17dc E1E0 ldi r30,hi8(257) |
3023 17de FE06 cpc r15,r30 |
3024 17e0 4CF0 brlt .L142 |
3025 17e2 8091 0000 lds r24,MesswertNick |
3026 17e6 9091 0000 lds r25,(MesswertNick)+1 |
3027 17ea 8E0D add r24,r14 |
3028 17ec 9F1D adc r25,r15 |
3029 17ee 8050 subi r24,lo8(-(-256)) |
3030 17f0 9140 sbci r25,hi8(-(-256)) |
3031 17f2 0DC0 rjmp .L156 |
3032 .L142: |
3033 17f4 F0E0 ldi r31,lo8(-256) |
3034 17f6 EF16 cp r14,r31 |
3035 17f8 FFEF ldi r31,hi8(-256) |
3036 17fa FF06 cpc r15,r31 |
3037 17fc 64F4 brge .L143 |
3038 17fe 8091 0000 lds r24,MesswertNick |
3039 1802 9091 0000 lds r25,(MesswertNick)+1 |
3040 1806 8E0D add r24,r14 |
3041 1808 9F1D adc r25,r15 |
3042 180a 8050 subi r24,lo8(-(256)) |
3043 180c 9F4F sbci r25,hi8(-(256)) |
3044 .L156: |
3045 180e 9093 0000 sts (MesswertNick)+1,r25 |
3046 1812 8093 0000 sts MesswertNick,r24 |
3047 .L143: |
3048 1816 21E0 ldi r18,hi8(257) |
3049 1818 0130 cpi r16,lo8(257) |
3050 181a 1207 cpc r17,r18 |
3051 181c 4CF0 brlt .L145 |
3052 181e 8091 0000 lds r24,MesswertRoll |
3053 1822 9091 0000 lds r25,(MesswertRoll)+1 |
3054 1826 800F add r24,r16 |
3055 1828 911F adc r25,r17 |
3056 182a 8050 subi r24,lo8(-(-256)) |
3057 182c 9140 sbci r25,hi8(-(-256)) |
3058 182e 0CC0 rjmp .L157 |
3059 .L145: |
3060 1830 3FEF ldi r19,hi8(-256) |
3061 1832 0030 cpi r16,lo8(-256) |
3062 1834 1307 cpc r17,r19 |
3063 1836 64F4 brge .L63 |
3064 1838 8091 0000 lds r24,MesswertRoll |
3065 183c 9091 0000 lds r25,(MesswertRoll)+1 |
3066 1840 800F add r24,r16 |
3067 1842 911F adc r25,r17 |
3068 1844 8050 subi r24,lo8(-(256)) |
3069 1846 9F4F sbci r25,hi8(-(256)) |
3070 .L157: |
3071 1848 9093 0000 sts (MesswertRoll)+1,r25 |
3072 184c 8093 0000 sts MesswertRoll,r24 |
3073 .L63: |
3074 /* epilogue: frame size=19 */ |
3075 1850 E2E1 ldi r30,18 |
3076 1852 CD5E subi r28,-19 |
3077 1854 0C94 0000 jmp __epilogue_restores__+0 |
3078 /* epilogue end (size=4) */ |
3079 /* function Mittelwert size 2000 (1990) */ |
3081 .global SendMotorData |
3083 SendMotorData: |
3084 /* prologue: frame size=0 */ |
3085 /* prologue end (size=0) */ |
3086 1858 8091 0000 lds r24,MotorenEin |
3087 185c 8823 tst r24 |
3088 185e 01F5 brne .L159 |
3089 1860 8091 0000 lds r24,FC_StatusFlags |
3090 1864 8C7F andi r24,lo8(-4) |
3091 1866 8093 0000 sts FC_StatusFlags,r24 |
3092 186a A0E0 ldi r26,lo8(MotorTest) |
3093 186c B0E0 ldi r27,hi8(MotorTest) |
3094 186e E0E0 ldi r30,lo8(Motor) |
3095 1870 F0E0 ldi r31,hi8(Motor) |
3096 1872 9BE0 ldi r25,lo8(11) |
3097 .L164: |
3098 1874 8091 0000 lds r24,PC_MotortestActive |
3099 1878 8823 tst r24 |
3100 187a 09F4 brne .L163 |
3101 187c 8C93 st X,r24 |
3102 .L163: |
3103 187e 8D91 ld r24,X+ |
3104 1880 8183 std Z+1,r24 |
3105 1882 1282 std Z+2,__zero_reg__ |
3106 1884 9150 subi r25,lo8(-(-1)) |
3107 1886 3896 adiw r30,8 |
3108 1888 97FF sbrs r25,7 |
3109 188a F4CF rjmp .L164 |
3110 188c 8091 0000 lds r24,PC_MotortestActive |
3111 1890 8823 tst r24 |
3112 1892 59F0 breq .L166 |
3113 1894 8091 0000 lds r24,PC_MotortestActive |
3114 1898 8150 subi r24,lo8(-(-1)) |
3115 189a 8093 0000 sts PC_MotortestActive,r24 |
3116 189e 05C0 rjmp .L166 |
3117 .L159: |
3118 18a0 8091 0000 lds r24,FC_StatusFlags |
3119 18a4 8160 ori r24,lo8(1) |
3120 18a6 8093 0000 sts FC_StatusFlags,r24 |
3121 .L166: |
3122 18aa 8091 0000 lds r24,I2C_TransferActive |
3123 18ae 8823 tst r24 |
3124 18b0 19F0 breq .L167 |
3125 18b2 1092 0000 sts I2C_TransferActive,__zero_reg__ |
3126 18b6 0895 ret |
3127 .L167: |
3128 18b8 8093 0000 sts motor_write,r24 |
3129 18bc 8093 0000 sts twi_state,r24 |
3130 18c0 8091 0000 lds r24,BLFlags |
3131 18c4 8E7F andi r24,lo8(-2) |
3132 18c6 8093 0000 sts BLFlags,r24 |
3133 18ca 85EA ldi r24,lo8(-91) |
3134 18cc 8093 BC00 sts 188,r24 |
3135 18d0 0895 ret |
3136 /* epilogue: frame size=0 */ |
3137 /* epilogue: noreturn */ |
3138 /* epilogue end (size=0) */ |
3139 /* function SendMotorData size 61 (61) */ |
3141 .global ParameterZuordnung |
3143 ParameterZuordnung: |
3144 /* prologue: frame size=0 */ |
3145 18d2 CF93 push r28 |
3146 18d4 DF93 push r29 |
3147 /* prologue end (size=2) */ |
3148 18d6 A0E0 ldi r26,lo8(Poti) |
3149 18d8 B0E0 ldi r27,hi8(Poti) |
3150 18da C0E0 ldi r28,lo8(EE_Parameter+5) |
3151 18dc D0E0 ldi r29,hi8(EE_Parameter+5) |
3152 18de 57E0 ldi r21,lo8(7) |
3153 .L182: |
3154 18e0 8991 ld r24,Y+ |
3155 18e2 E82F mov r30,r24 |
3156 18e4 FF27 clr r31 |
3157 18e6 EE0F add r30,r30 |
3158 18e8 FF1F adc r31,r31 |
3159 18ea E050 subi r30,lo8(-(PPM_in)) |
3160 18ec F040 sbci r31,hi8(-(PPM_in)) |
3161 18ee 0190 ld __tmp_reg__,Z+ |
3162 18f0 F081 ld r31,Z |
3163 18f2 E02D mov r30,__tmp_reg__ |
3164 18f4 E259 subi r30,lo8(-(110)) |
3165 18f6 FF4F sbci r31,hi8(-(110)) |
3166 18f8 EF3F cpi r30,255 |
3167 18fa F105 cpc r31,__zero_reg__ |
3168 18fc 21F0 breq .L175 |
3169 18fe 1CF0 brlt .L175 |
3170 1900 EFEF ldi r30,lo8(255) |
3171 1902 F0E0 ldi r31,hi8(255) |
3172 1904 04C0 rjmp .L176 |
3173 .L175: |
3174 1906 F7FF sbrs r31,7 |
3175 1908 02C0 rjmp .L176 |
3176 190a E0E0 ldi r30,lo8(0) |
3177 190c F0E0 ldi r31,hi8(0) |
3178 .L176: |
3179 190e 4C91 ld r20,X |
3180 1910 242F mov r18,r20 |
3181 1912 3327 clr r19 |
3182 1914 E217 cp r30,r18 |
3183 1916 F307 cpc r31,r19 |
3184 1918 A9F0 breq .L174 |
3185 191a CF01 movw r24,r30 |
3186 191c 821B sub r24,r18 |
3187 191e 930B sbc r25,r19 |
3188 1920 97FD sbrc r25,7 |
3189 1922 0396 adiw r24,3 |
3190 .L179: |
3191 1924 9595 asr r25 |
3192 1926 8795 ror r24 |
3193 1928 9595 asr r25 |
3194 192a 8795 ror r24 |
3195 192c 242F mov r18,r20 |
3196 192e 280F add r18,r24 |
3197 1930 2C93 st X,r18 |
3198 1932 822F mov r24,r18 |
3199 1934 9927 clr r25 |
3200 1936 E817 cp r30,r24 |
3201 1938 F907 cpc r31,r25 |
3202 193a 14F4 brge .L180 |
3203 193c 2150 subi r18,lo8(-(-1)) |
3204 193e 01C0 rjmp .L276 |
3205 .L180: |
3206 1940 2F5F subi r18,lo8(-(1)) |
3207 .L276: |
3208 1942 2C93 st X,r18 |
3209 .L174: |
3210 1944 5150 subi r21,lo8(-(-1)) |
3211 1946 1196 adiw r26,1 |
3212 1948 57FF sbrs r21,7 |
3213 194a CACF rjmp .L182 |
3214 194c 8091 0000 lds r24,EE_Parameter+15 |
3215 1950 883F cpi r24,lo8(-8) |
3216 1952 38F0 brlo .L277 |
3217 1954 EFEF ldi r30,lo8(255) |
3218 1956 F0E0 ldi r31,hi8(255) |
3219 1958 E81B sub r30,r24 |
3220 195a F109 sbc r31,__zero_reg__ |
3221 195c E050 subi r30,lo8(-(Poti)) |
3222 195e F040 sbci r31,hi8(-(Poti)) |
3223 1960 8081 ld r24,Z |
3224 .L277: |
3225 1962 8093 0000 sts Parameter_Luftdruck_D,r24 |
3226 1966 8091 0000 lds r24,Parameter_Luftdruck_D |
3227 196a 8823 tst r24 |
3228 196c 29F0 breq .L186 |
3229 196e 8436 cpi r24,lo8(100) |
3230 1970 18F0 brlo .L186 |
3231 1972 84E6 ldi r24,lo8(100) |
3232 1974 8093 0000 sts Parameter_Luftdruck_D,r24 |
3233 .L186: |
3234 1978 8091 0000 lds r24,EE_Parameter+17 |
3235 197c 883F cpi r24,lo8(-8) |
3236 197e 38F0 brlo .L278 |
3237 1980 EFEF ldi r30,lo8(255) |
3238 1982 F0E0 ldi r31,hi8(255) |
3239 1984 E81B sub r30,r24 |
3240 1986 F109 sbc r31,__zero_reg__ |
3241 1988 E050 subi r30,lo8(-(Poti)) |
3242 198a F040 sbci r31,hi8(-(Poti)) |
3243 198c 8081 ld r24,Z |
3244 .L278: |
3245 198e 8093 0000 sts Parameter_Hoehe_P,r24 |
3246 1992 8091 0000 lds r24,Parameter_Hoehe_P |
3247 1996 8823 tst r24 |
3248 1998 29F0 breq .L191 |
3249 199a 8436 cpi r24,lo8(100) |
3250 199c 18F0 brlo .L191 |
3251 199e 84E6 ldi r24,lo8(100) |
3252 19a0 8093 0000 sts Parameter_Hoehe_P,r24 |
3253 .L191: |
3254 19a4 8091 0000 lds r24,EE_Parameter+30 |
3255 19a8 883F cpi r24,lo8(-8) |
3256 19aa 38F0 brlo .L279 |
3257 19ac EFEF ldi r30,lo8(255) |
3258 19ae F0E0 ldi r31,hi8(255) |
3259 19b0 E81B sub r30,r24 |
3260 19b2 F109 sbc r31,__zero_reg__ |
3261 19b4 E050 subi r30,lo8(-(Poti)) |
3262 19b6 F040 sbci r31,hi8(-(Poti)) |
3263 19b8 8081 ld r24,Z |
3264 .L279: |
3265 19ba 8093 0000 sts Parameter_Gyro_P,r24 |
3266 19be 8091 0000 lds r24,Parameter_Gyro_P |
3267 19c2 8B30 cpi r24,lo8(11) |
3268 19c4 10F4 brsh .L195 |
3269 19c6 8AE0 ldi r24,lo8(10) |
3270 19c8 02C0 rjmp .L280 |
3271 .L195: |
3272 19ca 8F3F cpi r24,lo8(-1) |
3273 19cc 11F4 brne .L196 |
3274 .L280: |
3275 19ce 8093 0000 sts Parameter_Gyro_P,r24 |
3276 .L196: |
3277 19d2 8091 0000 lds r24,EE_Parameter+75 |
3278 19d6 883F cpi r24,lo8(-8) |
3279 19d8 38F0 brlo .L281 |
3280 19da EFEF ldi r30,lo8(255) |
3281 19dc F0E0 ldi r31,hi8(255) |
3282 19de E81B sub r30,r24 |
3283 19e0 F109 sbc r31,__zero_reg__ |
3284 19e2 E050 subi r30,lo8(-(Poti)) |
3285 19e4 F040 sbci r31,hi8(-(Poti)) |
3286 19e6 8081 ld r24,Z |
3287 .L281: |
3288 19e8 8093 0000 sts Parameter_J16Timing,r24 |
3289 19ec 8091 0000 lds r24,Parameter_J16Timing |
3290 19f0 8230 cpi r24,lo8(2) |
3291 19f2 10F4 brsh .L200 |
3292 19f4 81E0 ldi r24,lo8(1) |
3293 19f6 02C0 rjmp .L282 |
3294 .L200: |
3295 19f8 8F3F cpi r24,lo8(-1) |
3296 19fa 11F4 brne .L201 |
3297 .L282: |
3298 19fc 8093 0000 sts Parameter_J16Timing,r24 |
3299 .L201: |
3300 1a00 8091 0000 lds r24,EE_Parameter+77 |
3301 1a04 883F cpi r24,lo8(-8) |
3302 1a06 38F0 brlo .L283 |
3303 1a08 EFEF ldi r30,lo8(255) |
3304 1a0a F0E0 ldi r31,hi8(255) |
3305 1a0c E81B sub r30,r24 |
3306 1a0e F109 sbc r31,__zero_reg__ |
3307 1a10 E050 subi r30,lo8(-(Poti)) |
3308 1a12 F040 sbci r31,hi8(-(Poti)) |
3309 1a14 8081 ld r24,Z |
3310 .L283: |
3311 1a16 8093 0000 sts Parameter_J17Timing,r24 |
3312 1a1a 8091 0000 lds r24,Parameter_J17Timing |
3313 1a1e 8230 cpi r24,lo8(2) |
3314 1a20 10F4 brsh .L205 |
3315 1a22 81E0 ldi r24,lo8(1) |
3316 1a24 02C0 rjmp .L284 |
3317 .L205: |
3318 1a26 8F3F cpi r24,lo8(-1) |
3319 1a28 11F4 brne .L206 |
3320 .L284: |
3321 1a2a 8093 0000 sts Parameter_J17Timing,r24 |
3322 .L206: |
3323 1a2e 8091 0000 lds r24,EE_Parameter+56 |
3324 1a32 883F cpi r24,lo8(-8) |
3325 1a34 38F0 brlo .L285 |
3326 1a36 EFEF ldi r30,lo8(255) |
3327 1a38 F0E0 ldi r31,hi8(255) |
3328 1a3a E81B sub r30,r24 |
3329 1a3c F109 sbc r31,__zero_reg__ |
3330 1a3e E050 subi r30,lo8(-(Poti)) |
3331 1a40 F040 sbci r31,hi8(-(Poti)) |
3332 1a42 8081 ld r24,Z |
3333 .L285: |
3334 1a44 8093 0000 sts Parameter_Servo3,r24 |
3335 1a48 8091 0000 lds r24,EE_Parameter+57 |
3336 1a4c 883F cpi r24,lo8(-8) |
3337 1a4e 38F0 brlo .L286 |
3338 1a50 EFEF ldi r30,lo8(255) |
3339 1a52 F0E0 ldi r31,hi8(255) |
3340 1a54 E81B sub r30,r24 |
3341 1a56 F109 sbc r31,__zero_reg__ |
3342 1a58 E050 subi r30,lo8(-(Poti)) |
3343 1a5a F040 sbci r31,hi8(-(Poti)) |
3344 1a5c 8081 ld r24,Z |
3345 .L286: |
3346 1a5e 8093 0000 sts Parameter_Servo4,r24 |
3347 1a62 8091 0000 lds r24,EE_Parameter+58 |
3348 1a66 883F cpi r24,lo8(-8) |
3349 1a68 38F0 brlo .L287 |
3350 1a6a EFEF ldi r30,lo8(255) |
3351 1a6c F0E0 ldi r31,hi8(255) |
3352 1a6e E81B sub r30,r24 |
3353 1a70 F109 sbc r31,__zero_reg__ |
3354 1a72 E050 subi r30,lo8(-(Poti)) |
3355 1a74 F040 sbci r31,hi8(-(Poti)) |
3356 1a76 8081 ld r24,Z |
3357 .L287: |
3358 1a78 8093 0000 sts Parameter_Servo5,r24 |
3359 1a7c 9091 0000 lds r25,EE_Parameter+16 |
3360 1a80 983F cpi r25,lo8(-8) |
3361 1a82 18F4 brsh .L214 |
3362 1a84 9093 0000 sts Parameter_MaxHoehe,r25 |
3363 1a88 09C0 rjmp .L215 |
3364 .L214: |
3365 1a8a EFEF ldi r30,lo8(255) |
3366 1a8c F0E0 ldi r31,hi8(255) |
3367 1a8e E91B sub r30,r25 |
3368 1a90 F109 sbc r31,__zero_reg__ |
3369 1a92 E050 subi r30,lo8(-(Poti)) |
3370 1a94 F040 sbci r31,hi8(-(Poti)) |
3371 1a96 8081 ld r24,Z |
3372 1a98 8093 0000 sts Parameter_MaxHoehe,r24 |
3373 .L215: |
3374 1a9c 983F cpi r25,lo8(-8) |
3375 1a9e 18F4 brsh .L216 |
3376 1aa0 9093 0000 sts Parameter_MaxHoehe,r25 |
3377 1aa4 09C0 rjmp .L217 |
3378 .L216: |
3379 1aa6 EFEF ldi r30,lo8(255) |
3380 1aa8 F0E0 ldi r31,hi8(255) |
3381 1aaa E91B sub r30,r25 |
3382 1aac F109 sbc r31,__zero_reg__ |
3383 1aae E050 subi r30,lo8(-(Poti)) |
3384 1ab0 F040 sbci r31,hi8(-(Poti)) |
3385 1ab2 8081 ld r24,Z |
3386 1ab4 8093 0000 sts Parameter_MaxHoehe,r24 |
3387 .L217: |
3388 1ab8 8091 0000 lds r24,EE_Parameter+19 |
3389 1abc 883F cpi r24,lo8(-8) |
3390 1abe 38F0 brlo .L288 |
3391 1ac0 EFEF ldi r30,lo8(255) |
3392 1ac2 F0E0 ldi r31,hi8(255) |
3393 1ac4 E81B sub r30,r24 |
3394 1ac6 F109 sbc r31,__zero_reg__ |
3395 1ac8 E050 subi r30,lo8(-(Poti)) |
3396 1aca F040 sbci r31,hi8(-(Poti)) |
3397 1acc 8081 ld r24,Z |
3398 .L288: |
3399 1ace 8093 0000 sts Parameter_Hoehe_ACC_Wirkung,r24 |
3400 1ad2 8091 0000 lds r24,EE_Parameter+21 |
3401 1ad6 883F cpi r24,lo8(-8) |
3402 1ad8 38F0 brlo .L289 |
3403 1ada EFEF ldi r30,lo8(255) |
3404 1adc F0E0 ldi r31,hi8(255) |
3405 1ade E81B sub r30,r24 |
3406 1ae0 F109 sbc r31,__zero_reg__ |
3407 1ae2 E050 subi r30,lo8(-(Poti)) |
3408 1ae4 F040 sbci r31,hi8(-(Poti)) |
3409 1ae6 8081 ld r24,Z |
3410 .L289: |
3411 1ae8 8093 0000 sts Parameter_Hoehe_GPS_Z,r24 |
3412 1aec 8091 0000 lds r24,EE_Parameter+29 |
3413 1af0 883F cpi r24,lo8(-8) |
3414 1af2 38F0 brlo .L290 |
3415 1af4 EFEF ldi r30,lo8(255) |
3416 1af6 F0E0 ldi r31,hi8(255) |
3417 1af8 E81B sub r30,r24 |
3418 1afa F109 sbc r31,__zero_reg__ |
3419 1afc E050 subi r30,lo8(-(Poti)) |
3420 1afe F040 sbci r31,hi8(-(Poti)) |
3421 1b00 8081 ld r24,Z |
3422 .L290: |
3423 1b02 8093 0000 sts Parameter_KompassWirkung,r24 |
3424 1b06 8091 0000 lds r24,EE_Parameter+31 |
3425 1b0a 883F cpi r24,lo8(-8) |
3426 1b0c 38F0 brlo .L291 |
3427 1b0e EFEF ldi r30,lo8(255) |
3428 1b10 F0E0 ldi r31,hi8(255) |
3429 1b12 E81B sub r30,r24 |
3430 1b14 F109 sbc r31,__zero_reg__ |
3431 1b16 E050 subi r30,lo8(-(Poti)) |
3432 1b18 F040 sbci r31,hi8(-(Poti)) |
3433 1b1a 8081 ld r24,Z |
3434 .L291: |
3435 1b1c 8093 0000 sts Parameter_Gyro_I,r24 |
3436 1b20 8091 0000 lds r24,EE_Parameter+32 |
3437 1b24 883F cpi r24,lo8(-8) |
3438 1b26 38F0 brlo .L292 |
3439 1b28 EFEF ldi r30,lo8(255) |
3440 1b2a F0E0 ldi r31,hi8(255) |
3441 1b2c E81B sub r30,r24 |
3442 1b2e F109 sbc r31,__zero_reg__ |
3443 1b30 E050 subi r30,lo8(-(Poti)) |
3444 1b32 F040 sbci r31,hi8(-(Poti)) |
3445 1b34 8081 ld r24,Z |
3446 .L292: |
3447 1b36 8093 0000 sts Parameter_Gyro_D,r24 |
3448 1b3a 8091 0000 lds r24,EE_Parameter+33 |
3449 1b3e 883F cpi r24,lo8(-8) |
3450 1b40 38F0 brlo .L293 |
3451 1b42 EFEF ldi r30,lo8(255) |
3452 1b44 F0E0 ldi r31,hi8(255) |
3453 1b46 E81B sub r30,r24 |
3454 1b48 F109 sbc r31,__zero_reg__ |
3455 1b4a E050 subi r30,lo8(-(Poti)) |
3456 1b4c F040 sbci r31,hi8(-(Poti)) |
3457 1b4e 8081 ld r24,Z |
3458 .L293: |
3459 1b50 8093 0000 sts Parameter_Gyro_Gier_P,r24 |
3460 1b54 8091 0000 lds r24,EE_Parameter+34 |
3461 1b58 883F cpi r24,lo8(-8) |
3462 1b5a 38F0 brlo .L294 |
3463 1b5c EFEF ldi r30,lo8(255) |
3464 1b5e F0E0 ldi r31,hi8(255) |
3465 1b60 E81B sub r30,r24 |
3466 1b62 F109 sbc r31,__zero_reg__ |
3467 1b64 E050 subi r30,lo8(-(Poti)) |
3468 1b66 F040 sbci r31,hi8(-(Poti)) |
3469 1b68 8081 ld r24,Z |
3470 .L294: |
3471 1b6a 8093 0000 sts Parameter_Gyro_Gier_I,r24 |
3472 1b6e 8091 0000 lds r24,EE_Parameter+40 |
3473 1b72 883F cpi r24,lo8(-8) |
3474 1b74 38F0 brlo .L295 |
3475 1b76 EFEF ldi r30,lo8(255) |
3476 1b78 F0E0 ldi r31,hi8(255) |
3477 1b7a E81B sub r30,r24 |
3478 1b7c F109 sbc r31,__zero_reg__ |
3479 1b7e E050 subi r30,lo8(-(Poti)) |
3480 1b80 F040 sbci r31,hi8(-(Poti)) |
3481 1b82 8081 ld r24,Z |
3482 .L295: |
3483 1b84 8093 0000 sts Parameter_I_Faktor,r24 |
3484 1b88 8091 0000 lds r24,EE_Parameter+41 |
3485 1b8c 883F cpi r24,lo8(-8) |
3486 1b8e 38F0 brlo .L296 |
3487 1b90 EFEF ldi r30,lo8(255) |
3488 1b92 F0E0 ldi r31,hi8(255) |
3489 1b94 E81B sub r30,r24 |
3490 1b96 F109 sbc r31,__zero_reg__ |
3491 1b98 E050 subi r30,lo8(-(Poti)) |
3492 1b9a F040 sbci r31,hi8(-(Poti)) |
3493 1b9c 8081 ld r24,Z |
3494 .L296: |
3495 1b9e 8093 0000 sts Parameter_UserParam1,r24 |
3496 1ba2 8091 0000 lds r24,EE_Parameter+42 |
3497 1ba6 883F cpi r24,lo8(-8) |
3498 1ba8 38F0 brlo .L297 |
3499 1baa EFEF ldi r30,lo8(255) |
3500 1bac F0E0 ldi r31,hi8(255) |
3501 1bae E81B sub r30,r24 |
3502 1bb0 F109 sbc r31,__zero_reg__ |
3503 1bb2 E050 subi r30,lo8(-(Poti)) |
3504 1bb4 F040 sbci r31,hi8(-(Poti)) |
3505 1bb6 8081 ld r24,Z |
3506 .L297: |
3507 1bb8 8093 0000 sts Parameter_UserParam2,r24 |
3508 1bbc 8091 0000 lds r24,EE_Parameter+43 |
3509 1bc0 883F cpi r24,lo8(-8) |
3510 1bc2 38F0 brlo .L298 |
3511 1bc4 EFEF ldi r30,lo8(255) |
3512 1bc6 F0E0 ldi r31,hi8(255) |
3513 1bc8 E81B sub r30,r24 |
3514 1bca F109 sbc r31,__zero_reg__ |
3515 1bcc E050 subi r30,lo8(-(Poti)) |
3516 1bce F040 sbci r31,hi8(-(Poti)) |
3517 1bd0 8081 ld r24,Z |
3518 .L298: |
3519 1bd2 8093 0000 sts Parameter_UserParam3,r24 |
3520 1bd6 8091 0000 lds r24,EE_Parameter+44 |
3521 1bda 883F cpi r24,lo8(-8) |
3522 1bdc 38F0 brlo .L299 |
3523 1bde EFEF ldi r30,lo8(255) |
3524 1be0 F0E0 ldi r31,hi8(255) |
3525 1be2 E81B sub r30,r24 |
3526 1be4 F109 sbc r31,__zero_reg__ |
3527 1be6 E050 subi r30,lo8(-(Poti)) |
3528 1be8 F040 sbci r31,hi8(-(Poti)) |
3529 1bea 8081 ld r24,Z |
3530 .L299: |
3531 1bec 8093 0000 sts Parameter_UserParam4,r24 |
3532 1bf0 8091 0000 lds r24,EE_Parameter+70 |
3533 1bf4 883F cpi r24,lo8(-8) |
3534 1bf6 38F0 brlo .L300 |
3535 1bf8 EFEF ldi r30,lo8(255) |
3536 1bfa F0E0 ldi r31,hi8(255) |
3537 1bfc E81B sub r30,r24 |
3538 1bfe F109 sbc r31,__zero_reg__ |
3539 1c00 E050 subi r30,lo8(-(Poti)) |
3540 1c02 F040 sbci r31,hi8(-(Poti)) |
3541 1c04 8081 ld r24,Z |
3542 .L300: |
3543 1c06 8093 0000 sts Parameter_UserParam5,r24 |
3544 1c0a 8091 0000 lds r24,EE_Parameter+71 |
3545 1c0e 883F cpi r24,lo8(-8) |
3546 1c10 38F0 brlo .L301 |
3547 1c12 EFEF ldi r30,lo8(255) |
3548 1c14 F0E0 ldi r31,hi8(255) |
3549 1c16 E81B sub r30,r24 |
3550 1c18 F109 sbc r31,__zero_reg__ |
3551 1c1a E050 subi r30,lo8(-(Poti)) |
3552 1c1c F040 sbci r31,hi8(-(Poti)) |
3553 1c1e 8081 ld r24,Z |
3554 .L301: |
3555 1c20 8093 0000 sts Parameter_UserParam6,r24 |
3556 1c24 8091 0000 lds r24,EE_Parameter+72 |
3557 1c28 883F cpi r24,lo8(-8) |
3558 1c2a 38F0 brlo .L302 |
3559 1c2c EFEF ldi r30,lo8(255) |
3560 1c2e F0E0 ldi r31,hi8(255) |
3561 1c30 E81B sub r30,r24 |
3562 1c32 F109 sbc r31,__zero_reg__ |
3563 1c34 E050 subi r30,lo8(-(Poti)) |
3564 1c36 F040 sbci r31,hi8(-(Poti)) |
3565 1c38 8081 ld r24,Z |
3566 .L302: |
3567 1c3a 8093 0000 sts Parameter_UserParam7,r24 |
3568 1c3e 8091 0000 lds r24,EE_Parameter+73 |
3569 1c42 883F cpi r24,lo8(-8) |
3570 1c44 38F0 brlo .L303 |
3571 1c46 EFEF ldi r30,lo8(255) |
3572 1c48 F0E0 ldi r31,hi8(255) |
3573 1c4a E81B sub r30,r24 |
3574 1c4c F109 sbc r31,__zero_reg__ |
3575 1c4e E050 subi r30,lo8(-(Poti)) |
3576 1c50 F040 sbci r31,hi8(-(Poti)) |
3577 1c52 8081 ld r24,Z |
3578 .L303: |
3579 1c54 8093 0000 sts Parameter_UserParam8,r24 |
3580 1c58 8091 0000 lds r24,EE_Parameter+45 |
3581 1c5c 883F cpi r24,lo8(-8) |
3582 1c5e 38F0 brlo .L304 |
3583 1c60 EFEF ldi r30,lo8(255) |
3584 1c62 F0E0 ldi r31,hi8(255) |
3585 1c64 E81B sub r30,r24 |
3586 1c66 F109 sbc r31,__zero_reg__ |
3587 1c68 E050 subi r30,lo8(-(Poti)) |
3588 1c6a F040 sbci r31,hi8(-(Poti)) |
3589 1c6c 8081 ld r24,Z |
3590 .L304: |
3591 1c6e 8093 0000 sts Parameter_ServoNickControl,r24 |
3592 1c72 8091 0000 lds r24,EE_Parameter+49 |
3593 1c76 883F cpi r24,lo8(-8) |
3594 1c78 38F0 brlo .L305 |
3595 1c7a EFEF ldi r30,lo8(255) |
3596 1c7c F0E0 ldi r31,hi8(255) |
3597 1c7e E81B sub r30,r24 |
3598 1c80 F109 sbc r31,__zero_reg__ |
3599 1c82 E050 subi r30,lo8(-(Poti)) |
3600 1c84 F040 sbci r31,hi8(-(Poti)) |
3601 1c86 8081 ld r24,Z |
3602 .L305: |
3603 1c88 8093 0000 sts Parameter_ServoRollControl,r24 |
3604 1c8c 8091 0000 lds r24,EE_Parameter+59 |
3605 1c90 883F cpi r24,lo8(-8) |
3606 1c92 38F0 brlo .L306 |
3607 1c94 EFEF ldi r30,lo8(255) |
3608 1c96 F0E0 ldi r31,hi8(255) |
3609 1c98 E81B sub r30,r24 |
3610 1c9a F109 sbc r31,__zero_reg__ |
3611 1c9c E050 subi r30,lo8(-(Poti)) |
3612 1c9e F040 sbci r31,hi8(-(Poti)) |
3613 1ca0 8081 ld r24,Z |
3614 .L306: |
3615 1ca2 8093 0000 sts Parameter_LoopGasLimit,r24 |
3616 1ca6 8091 0000 lds r24,EE_Parameter+62 |
3617 1caa 883F cpi r24,lo8(-8) |
3618 1cac 38F0 brlo .L307 |
3619 1cae EFEF ldi r30,lo8(255) |
3620 1cb0 F0E0 ldi r31,hi8(255) |
3621 1cb2 E81B sub r30,r24 |
3622 1cb4 F109 sbc r31,__zero_reg__ |
3623 1cb6 E050 subi r30,lo8(-(Poti)) |
3624 1cb8 F040 sbci r31,hi8(-(Poti)) |
3625 1cba 8081 ld r24,Z |
3626 .L307: |
3627 1cbc 8093 0000 sts Parameter_AchsKopplung1,r24 |
3628 1cc0 8091 0000 lds r24,EE_Parameter+63 |
3629 1cc4 883F cpi r24,lo8(-8) |
3630 1cc6 38F0 brlo .L308 |
3631 1cc8 EFEF ldi r30,lo8(255) |
3632 1cca F0E0 ldi r31,hi8(255) |
3633 1ccc E81B sub r30,r24 |
3634 1cce F109 sbc r31,__zero_reg__ |
3635 1cd0 E050 subi r30,lo8(-(Poti)) |
3636 1cd2 F040 sbci r31,hi8(-(Poti)) |
3637 1cd4 8081 ld r24,Z |
3638 .L308: |
3639 1cd6 8093 0000 sts Parameter_AchsKopplung2,r24 |
3640 1cda 8091 0000 lds r24,EE_Parameter+64 |
3641 1cde 883F cpi r24,lo8(-8) |
3642 1ce0 38F0 brlo .L309 |
3643 1ce2 EFEF ldi r30,lo8(255) |
3644 1ce4 F0E0 ldi r31,hi8(255) |
3645 1ce6 E81B sub r30,r24 |
3646 1ce8 F109 sbc r31,__zero_reg__ |
3647 1cea E050 subi r30,lo8(-(Poti)) |
3648 1cec F040 sbci r31,hi8(-(Poti)) |
3649 1cee 8081 ld r24,Z |
3650 .L309: |
3651 1cf0 8093 0000 sts Parameter_CouplingYawCorrection,r24 |
3652 1cf4 8091 0000 lds r24,EE_Parameter+69 |
3653 1cf8 883F cpi r24,lo8(-8) |
3654 1cfa 38F0 brlo .L310 |
3655 1cfc EFEF ldi r30,lo8(255) |
3656 1cfe F0E0 ldi r31,hi8(255) |
3657 1d00 E81B sub r30,r24 |
3658 1d02 F109 sbc r31,__zero_reg__ |
3659 1d04 E050 subi r30,lo8(-(Poti)) |
3660 1d06 F040 sbci r31,hi8(-(Poti)) |
3661 1d08 8081 ld r24,Z |
3662 .L310: |
3663 1d0a 8093 0000 sts Parameter_DynamicStability,r24 |
3664 1d0e 8091 0000 lds r24,EE_Parameter+96 |
3665 1d12 883F cpi r24,lo8(-8) |
3666 1d14 38F0 brlo .L311 |
3667 1d16 EFEF ldi r30,lo8(255) |
3668 1d18 F0E0 ldi r31,hi8(255) |
3669 1d1a E81B sub r30,r24 |
3670 1d1c F109 sbc r31,__zero_reg__ |
3671 1d1e E050 subi r30,lo8(-(Poti)) |
3672 1d20 F040 sbci r31,hi8(-(Poti)) |
3673 1d22 8081 ld r24,Z |
3674 .L311: |
3675 1d24 8093 0000 sts Parameter_ExternalControl,r24 |
3676 1d28 8091 0000 lds r24,Parameter_I_Faktor |
3677 1d2c 282F mov r18,r24 |
3678 1d2e 3327 clr r19 |
3679 1d30 2F5F subi r18,lo8(-(1)) |
3680 1d32 3F4F sbci r19,hi8(-(1)) |
3681 1d34 8CE3 ldi r24,lo8(10300) |
3682 1d36 98E2 ldi r25,hi8(10300) |
3683 1d38 B901 movw r22,r18 |
3684 1d3a 0E94 0000 call __divmodhi4 |
3685 1d3e 7093 0000 sts (Ki)+1,r23 |
3686 1d42 6093 0000 sts Ki,r22 |
3687 1d46 8091 0000 lds r24,EE_Parameter+27 |
3688 1d4a 8093 0000 sts MAX_GAS,r24 |
3689 1d4e 8091 0000 lds r24,EE_Parameter+26 |
3690 1d52 8093 0000 sts MIN_GAS,r24 |
3691 1d56 9091 0000 lds r25,EE_Parameter+98 |
3692 1d5a 9333 cpi r25,lo8(51) |
3693 1d5c 20F1 brlo .L266 |
3694 1d5e 81E0 ldi r24,lo8(1) |
3695 1d60 8093 0000 sts CareFree,r24 |
3696 1d64 983F cpi r25,lo8(-8) |
3697 1d66 58F0 brlo .L267 |
3698 1d68 EFEF ldi r30,lo8(255) |
3699 1d6a F0E0 ldi r31,hi8(255) |
3700 1d6c E91B sub r30,r25 |
3701 1d6e F109 sbc r31,__zero_reg__ |
3702 1d70 E050 subi r30,lo8(-(Poti)) |
3703 1d72 F040 sbci r31,hi8(-(Poti)) |
3704 1d74 8081 ld r24,Z |
3705 1d76 8233 cpi r24,lo8(50) |
3706 1d78 10F4 brsh .L267 |
3707 1d7a 1092 0000 sts CareFree,__zero_reg__ |
3708 .L267: |
3709 1d7e 8091 0000 lds r24,FromNaviCtrl+7 |
3710 1d82 9091 0000 lds r25,(FromNaviCtrl+7)+1 |
3711 1d86 97FF sbrs r25,7 |
3712 1d88 08C0 rjmp .L268 |
3713 1d8a 8091 0000 lds r24,CareFree |
3714 1d8e 8823 tst r24 |
3715 1d90 21F0 breq .L268 |
3716 1d92 8091 0000 lds r24,VersionInfo+5 |
3717 1d96 8068 ori r24,lo8(-128) |
3718 1d98 03C0 rjmp .L312 |
3719 .L268: |
3720 1d9a 8091 0000 lds r24,VersionInfo+5 |
3721 1d9e 8F77 andi r24,lo8(127) |
3722 .L312: |
3723 1da0 8093 0000 sts VersionInfo+5,r24 |
3724 1da4 02C0 rjmp .L270 |
3725 .L266: |
3726 1da6 1092 0000 sts CareFree,__zero_reg__ |
3727 .L270: |
3728 1daa 8091 0000 lds r24,FromNaviCtrl+7 |
3729 1dae 9091 0000 lds r25,(FromNaviCtrl+7)+1 |
3730 1db2 97FF sbrs r25,7 |
3731 1db4 1DC0 rjmp .L271 |
3732 1db6 8091 0000 lds r24,MotorenEin |
3733 1dba 8823 tst r24 |
3734 1dbc C9F0 breq .L271 |
3735 1dbe 8091 0000 lds r24,CareFree |
3736 1dc2 8823 tst r24 |
3737 1dc4 A9F0 breq .L271 |
3738 1dc6 8091 0000 lds r24,BeepMuster |
3739 1dca 9091 0000 lds r25,(BeepMuster)+1 |
3740 1dce 8F5F subi r24,lo8(-1) |
3741 1dd0 9F4F sbci r25,hi8(-1) |
3742 1dd2 71F4 brne .L271 |
3743 1dd4 88E9 ldi r24,lo8(15000) |
3744 1dd6 9AE3 ldi r25,hi8(15000) |
3745 1dd8 9093 0000 sts (beeptime)+1,r25 |
3746 1ddc 8093 0000 sts beeptime,r24 |
3747 1de0 80E0 ldi r24,lo8(-23552) |
3748 1de2 94EA ldi r25,hi8(-23552) |
3749 1de4 9093 0000 sts (BeepMuster)+1,r25 |
3750 1de8 8093 0000 sts BeepMuster,r24 |
3751 1dec 1092 0000 sts CareFree,__zero_reg__ |
3752 .L271: |
3753 1df0 8091 0000 lds r24,CareFree |
3754 1df4 8823 tst r24 |
3755 1df6 39F0 breq .L171 |
3756 1df8 8091 0000 lds r24,Parameter_AchsKopplung1 |
3757 1dfc 823D cpi r24,lo8(-46) |
3758 1dfe 18F4 brsh .L171 |
3759 1e00 825E subi r24,lo8(-(30)) |
3760 1e02 8093 0000 sts Parameter_AchsKopplung1,r24 |
3761 .L171: |
3762 /* epilogue: frame size=0 */ |
3763 1e06 DF91 pop r29 |
3764 1e08 CF91 pop r28 |
3765 1e0a 0895 ret |
3766 /* epilogue end (size=3) */ |
3767 /* function ParameterZuordnung size 671 (666) */ |
3769 .lcomm sollGier.0,4 |
3770 .lcomm tmp_long.1,4 |
3771 .lcomm tmp_long2.2,4 |
3772 .lcomm IntegralFehlerNick.3,4 |
3773 .lcomm IntegralFehlerRoll.4,4 |
3774 .lcomm RcLostTimer.5,2 |
3775 .lcomm delay_neutral.6,1 |
3776 .lcomm delay_einschalten.7,1 |
3777 .lcomm delay_ausschalten.8,1 |
3778 .lcomm calibration_done.9,1 |
3779 .lcomm NeueKompassRichtungMerken.10,1 |
3780 .lcomm ausgleichNick.11,4 |
3781 .lcomm ausgleichRoll.12,4 |
3782 .lcomm stick_nick.13,2 |
3783 .lcomm stick_roll.14,2 |
3784 .lcomm cnt.15,2 |
3785 .lcomm last_n_p.16,1 |
3786 .lcomm last_n_n.17,1 |
3787 .lcomm last_r_p.18,1 |
3788 .lcomm last_r_n.19,1 |
3789 .lcomm MittelIntegralNick_Alt.20,4 |
3790 .lcomm MittelIntegralRoll_Alt.21,4 |
3791 .lcomm HeightTrimming.22,2 |
3792 .lcomm FilterHCGas.23,2 |
3793 .data |
3796 StickGasHover.24: |
3797 004a 7800 .word 120 |
3798 .lcomm HoverGasMin.25,2 |
3801 HoverGasMax.26: |
3802 004c FF03 .word 1023 |
3803 .lcomm HoverGasFilter.27,4 |
3806 delay.28: |
3807 004e 64 .byte 100 |
3808 .lcomm BaroAtUpperLimit.29,1 |
3809 .lcomm BaroAtLowerLimit.30,1 |
3810 .text |
3811 .global MotorRegler |
3813 MotorRegler: |
3814 /* prologue: frame size=24 */ |
3815 1e0c A8E1 ldi r26,lo8(24) |
3816 1e0e B0E0 ldi r27,hi8(24) |
3817 1e10 E0E0 ldi r30,pm_lo8(1f) |
3818 1e12 F0E0 ldi r31,pm_hi8(1f) |
3819 1e14 0C94 0000 jmp __prologue_saves__+0 |
3820 1: |
3821 /* prologue end (size=6) */ |
3822 1e18 0E94 0000 call Mittelwert |
3823 1e1c 3091 0000 lds r19,PlatinenVersion |
3824 1e20 3C30 cpi r19,lo8(12) |
3825 1e22 10F4 brsh .L314 |
3826 1e24 299A sbi 37-0x20,1 |
3827 1e26 01C0 rjmp .L315 |
3828 .L314: |
3829 1e28 2998 cbi 37-0x20,1 |
3830 .L315: |
3831 1e2a E090 0000 lds r14,StickGas |
3832 1e2e F090 0000 lds r15,(StickGas)+1 |
3833 1e32 FA82 std Y+2,r15 |
3834 1e34 E982 std Y+1,r14 |
3835 1e36 8091 0000 lds r24,MIN_GAS |
3836 1e3a 9927 clr r25 |
3837 1e3c 0A96 adiw r24,10 |
3838 1e3e E816 cp r14,r24 |
3839 1e40 F906 cpc r15,r25 |
3840 1e42 14F4 brge .L316 |
3841 1e44 9A83 std Y+2,r25 |
3842 1e46 8983 std Y+1,r24 |
3843 .L316: |
3844 1e48 8091 0000 lds r24,SenderOkay |
3845 1e4c 8436 cpi r24,lo8(100) |
3846 1e4e 08F0 brlo .+2 |
3847 1e50 5CC0 rjmp .L317 |
3848 1e52 8091 0000 lds r24,RcLostTimer.5 |
3849 1e56 9091 0000 lds r25,(RcLostTimer.5)+1 |
3850 1e5a 0097 sbiw r24,0 |
3851 1e5c 31F0 breq .L318 |
3852 1e5e 0197 sbiw r24,1 |
3853 1e60 9093 0000 sts (RcLostTimer.5)+1,r25 |
3854 1e64 8093 0000 sts RcLostTimer.5,r24 |
3855 1e68 07C0 rjmp .L319 |
3856 .L318: |
3857 1e6a 1092 0000 sts MotorenEin,__zero_reg__ |
3858 1e6e 8091 0000 lds r24,FC_StatusFlags |
3859 1e72 8F7E andi r24,lo8(-17) |
3860 1e74 8093 0000 sts FC_StatusFlags,r24 |
3861 .L319: |
3862 1e78 3A30 cpi r19,lo8(10) |
3863 1e7a 11F0 breq .L321 |
3864 1e7c 3431 cpi r19,lo8(20) |
3865 1e7e 10F0 brlo .L320 |
3866 .L321: |
3867 1e80 289A sbi 37-0x20,0 |
3868 1e82 01C0 rjmp .L322 |
3869 .L320: |
3870 1e84 2898 cbi 37-0x20,0 |
3871 .L322: |
3872 1e86 8091 0000 lds r24,modell_fliegt |
3873 1e8a 9091 0000 lds r25,(modell_fliegt)+1 |
3874 1e8e 895E subi r24,lo8(1001) |
3875 1e90 9340 sbci r25,hi8(1001) |
3876 1e92 C0F1 brlo .L323 |
3877 1e94 8091 0000 lds r24,EE_Parameter+37 |
3878 1e98 282F mov r18,r24 |
3879 1e9a 3327 clr r19 |
3880 1e9c 3A83 std Y+2,r19 |
3881 1e9e 2983 std Y+1,r18 |
3882 1ea0 8091 0000 lds r24,FC_StatusFlags |
3883 1ea4 8061 ori r24,lo8(16) |
3884 1ea6 8093 0000 sts FC_StatusFlags,r24 |
3885 1eaa 8091 0000 lds r24,EE_Parameter+1 |
3886 1eae A82F mov r26,r24 |
3887 1eb0 BB27 clr r27 |
3888 1eb2 AA0F add r26,r26 |
3889 1eb4 BB1F adc r27,r27 |
3890 1eb6 FD01 movw r30,r26 |
3891 1eb8 E050 subi r30,lo8(-(PPM_diff)) |
3892 1eba F040 sbci r31,hi8(-(PPM_diff)) |
3893 1ebc 1182 std Z+1,__zero_reg__ |
3894 1ebe 1082 st Z,__zero_reg__ |
3895 1ec0 8091 0000 lds r24,EE_Parameter+2 |
3896 1ec4 282F mov r18,r24 |
3897 1ec6 3327 clr r19 |
3898 1ec8 220F add r18,r18 |
3899 1eca 331F adc r19,r19 |
3900 1ecc C901 movw r24,r18 |
3901 1ece 8050 subi r24,lo8(-(PPM_diff)) |
3902 1ed0 9040 sbci r25,hi8(-(PPM_diff)) |
3903 1ed2 FC01 movw r30,r24 |
3904 1ed4 1182 std Z+1,__zero_reg__ |
3905 1ed6 1082 st Z,__zero_reg__ |
3906 1ed8 A050 subi r26,lo8(-(PPM_in)) |
3907 1eda B040 sbci r27,hi8(-(PPM_in)) |
3908 1edc 1196 adiw r26,1 |
3909 1ede 1C92 st X,__zero_reg__ |
3910 1ee0 1E92 st -X,__zero_reg__ |
3911 1ee2 2050 subi r18,lo8(-(PPM_in)) |
3912 1ee4 3040 sbci r19,hi8(-(PPM_in)) |
3913 1ee6 D901 movw r26,r18 |
3914 1ee8 1196 adiw r26,1 |
3915 1eea 1C92 st X,__zero_reg__ |
3916 1eec 1E92 st -X,__zero_reg__ |
3917 1eee 8091 0000 lds r24,EE_Parameter+4 |
3918 1ef2 E82F mov r30,r24 |
3919 1ef4 FF27 clr r31 |
3920 1ef6 EE0F add r30,r30 |
3921 1ef8 FF1F adc r31,r31 |
3922 1efa E050 subi r30,lo8(-(PPM_in)) |
3923 1efc F040 sbci r31,hi8(-(PPM_in)) |
3924 1efe 1182 std Z+1,__zero_reg__ |
3925 1f00 1082 st Z,__zero_reg__ |
3926 1f02 C9C2 rjmp .L325 |
3927 .L323: |
3928 1f04 1092 0000 sts MotorenEin,__zero_reg__ |
3929 1f08 C6C2 rjmp .L325 |
3930 .L317: |
3931 1f0a 8091 0000 lds r24,SenderOkay |
3932 1f0e 8D38 cpi r24,lo8(-115) |
3933 1f10 08F4 brsh .+2 |
3934 1f12 C1C2 rjmp .L325 |
3935 1f14 8091 0000 lds r24,FC_StatusFlags |
3936 1f18 8F7E andi r24,lo8(-17) |
3937 1f1a 8093 0000 sts FC_StatusFlags,r24 |
3938 1f1e 9091 0000 lds r25,EE_Parameter+38 |
3939 1f22 82E3 ldi r24,lo8(50) |
3940 1f24 989F mul r25,r24 |
3941 1f26 C001 movw r24,r0 |
3942 1f28 1124 clr r1 |
3943 1f2a 9093 0000 sts (RcLostTimer.5)+1,r25 |
3944 1f2e 8093 0000 sts RcLostTimer.5,r24 |
3945 1f32 E981 ldd r30,Y+1 |
3946 1f34 FA81 ldd r31,Y+2 |
3947 1f36 B997 sbiw r30,41 |
3948 1f38 8CF0 brlt .L327 |
3949 1f3a 8091 0000 lds r24,MotorenEin |
3950 1f3e 8823 tst r24 |
3951 1f40 69F0 breq .L327 |
3952 1f42 8091 0000 lds r24,modell_fliegt |
3953 1f46 9091 0000 lds r25,(modell_fliegt)+1 |
3954 1f4a FFEF ldi r31,hi8(-1) |
3955 1f4c 8F3F cpi r24,lo8(-1) |
3956 1f4e 9F07 cpc r25,r31 |
3957 1f50 29F0 breq .L327 |
3958 1f52 0196 adiw r24,1 |
3959 1f54 9093 0000 sts (modell_fliegt)+1,r25 |
3960 1f58 8093 0000 sts modell_fliegt,r24 |
3961 .L327: |
3962 1f5c 8091 0000 lds r24,modell_fliegt |
3963 1f60 9091 0000 lds r25,(modell_fliegt)+1 |
3964 1f64 8F3F cpi r24,255 |
3965 1f66 9105 cpc r25,__zero_reg__ |
3966 1f68 09F0 breq .+2 |
3967 1f6a 38F5 brsh .L329 |
3968 1f6c 1092 0000 sts SummeNick,__zero_reg__ |
3969 1f70 1092 0000 sts (SummeNick)+1,__zero_reg__ |
3970 1f74 1092 0000 sts (SummeNick)+2,__zero_reg__ |
3971 1f78 1092 0000 sts (SummeNick)+3,__zero_reg__ |
3972 1f7c 1092 0000 sts SummeRoll,__zero_reg__ |
3973 1f80 1092 0000 sts (SummeRoll)+1,__zero_reg__ |
3974 1f84 1092 0000 sts (SummeRoll)+2,__zero_reg__ |
3975 1f88 1092 0000 sts (SummeRoll)+3,__zero_reg__ |
3976 1f8c 1092 0000 sts sollGier.0,__zero_reg__ |
3977 1f90 1092 0000 sts (sollGier.0)+1,__zero_reg__ |
3978 1f94 1092 0000 sts (sollGier.0)+2,__zero_reg__ |
3979 1f98 1092 0000 sts (sollGier.0)+3,__zero_reg__ |
3980 1f9c 1092 0000 sts Mess_Integral_Gier,__zero_reg__ |
3981 1fa0 1092 0000 sts (Mess_Integral_Gier)+1,__zero_reg__ |
3982 1fa4 1092 0000 sts (Mess_Integral_Gier)+2,__zero_reg__ |
3983 1fa8 1092 0000 sts (Mess_Integral_Gier)+3,__zero_reg__ |
3984 1fac 8A3F cpi r24,250 |
3985 1fae 9105 cpc r25,__zero_reg__ |
3986 1fb0 49F4 brne .L331 |
3987 1fb2 81E0 ldi r24,lo8(1) |
3988 1fb4 8093 0000 sts NeueKompassRichtungMerken.10,r24 |
3989 1fb8 05C0 rjmp .L331 |
3990 .L329: |
3991 1fba 8091 0000 lds r24,FC_StatusFlags |
3992 1fbe 8260 ori r24,lo8(2) |
3993 1fc0 8093 0000 sts FC_StatusFlags,r24 |
3994 .L331: |
3995 1fc4 8091 0000 lds r24,EE_Parameter+3 |
3996 1fc8 E82F mov r30,r24 |
3997 1fca FF27 clr r31 |
3998 1fcc EE0F add r30,r30 |
3999 1fce FF1F adc r31,r31 |
4000 1fd0 E050 subi r30,lo8(-(PPM_in)) |
4001 1fd2 F040 sbci r31,hi8(-(PPM_in)) |
4002 1fd4 8081 ld r24,Z |
4003 1fd6 9181 ldd r25,Z+1 |
4004 1fd8 8135 cpi r24,81 |
4005 1fda 9105 cpc r25,__zero_reg__ |
4006 1fdc 0CF4 brge .+2 |
4007 1fde 41C1 rjmp .L332 |
4008 1fe0 2091 0000 lds r18,MotorenEin |
4009 1fe4 2223 tst r18 |
4010 1fe6 09F0 breq .+2 |
4011 1fe8 3CC1 rjmp .L332 |
4012 1fea 8091 0000 lds r24,EE_Parameter+4 |
4013 1fee E82F mov r30,r24 |
4014 1ff0 FF27 clr r31 |
4015 1ff2 EE0F add r30,r30 |
4016 1ff4 FF1F adc r31,r31 |
4017 1ff6 E050 subi r30,lo8(-(PPM_in)) |
4018 1ff8 F040 sbci r31,hi8(-(PPM_in)) |
4019 1ffa 8081 ld r24,Z |
4020 1ffc 9181 ldd r25,Z+1 |
4021 1ffe 8C34 cpi r24,76 |
4022 2000 9105 cpc r25,__zero_reg__ |
4023 2002 0CF4 brge .+2 |
4024 2004 06C1 rjmp .L333 |
4025 2006 8091 0000 lds r24,delay_neutral.6 |
4026 200a 8F5F subi r24,lo8(-(1)) |
4027 200c 8093 0000 sts delay_neutral.6,r24 |
4028 2010 893C cpi r24,lo8(-55) |
4029 2012 08F4 brsh .+2 |
4030 2014 26C1 rjmp .L332 |
4031 2016 3C30 cpi r19,lo8(12) |
4032 2018 10F4 brsh .L335 |
4033 201a 2998 cbi 37-0x20,1 |
4034 201c 01C0 rjmp .L336 |
4035 .L335: |
4036 201e 299A sbi 37-0x20,1 |
4037 .L336: |
4038 2020 1092 0000 sts MotorenEin,__zero_reg__ |
4039 2024 1092 0000 sts delay_neutral.6,__zero_reg__ |
4040 2028 1092 0000 sts (modell_fliegt)+1,__zero_reg__ |
4041 202c 1092 0000 sts modell_fliegt,__zero_reg__ |
4042 2030 3091 0000 lds r19,EE_Parameter+1 |
4043 2034 E32F mov r30,r19 |
4044 2036 FF27 clr r31 |
4045 2038 EE0F add r30,r30 |
4046 203a FF1F adc r31,r31 |
4047 203c E050 subi r30,lo8(-(PPM_in)) |
4048 203e F040 sbci r31,hi8(-(PPM_in)) |
4049 2040 8081 ld r24,Z |
4050 2042 9181 ldd r25,Z+1 |
4051 2044 8734 cpi r24,71 |
4052 2046 9105 cpc r25,__zero_reg__ |
4053 2048 B4F4 brge .L338 |
4054 204a 8091 0000 lds r24,EE_Parameter+2 |
4055 204e E82F mov r30,r24 |
4056 2050 FF27 clr r31 |
4057 2052 EE0F add r30,r30 |
4058 2054 FF1F adc r31,r31 |
4059 2056 E050 subi r30,lo8(-(PPM_in)) |
4060 2058 F040 sbci r31,hi8(-(PPM_in)) |
4061 205a 8081 ld r24,Z |
4062 205c 9181 ldd r25,Z+1 |
4063 205e 0190 ld __tmp_reg__,Z+ |
4064 2060 F081 ld r31,Z |
4065 2062 E02D mov r30,__tmp_reg__ |
4066 2064 F7FF sbrs r31,7 |
4067 2066 03C0 rjmp .L339 |
4068 2068 F095 com r31 |
4069 206a E195 neg r30 |
4070 206c FF4F sbci r31,lo8(-1) |
4071 .L339: |
4072 206e E734 cpi r30,71 |
4073 2070 F105 cpc r31,__zero_reg__ |
4074 2072 0CF4 brge .+2 |
4075 2074 78C0 rjmp .L337 |
4076 .L338: |
4077 2076 41E0 ldi r20,lo8(1) |
4078 2078 2091 0000 lds r18,EE_Parameter+2 |
4079 207c A22F mov r26,r18 |
4080 207e BB27 clr r27 |
4081 2080 AA0F add r26,r26 |
4082 2082 BB1F adc r27,r27 |
4083 2084 A050 subi r26,lo8(-(PPM_in)) |
4084 2086 B040 sbci r27,hi8(-(PPM_in)) |
4085 2088 8D91 ld r24,X+ |
4086 208a 9C91 ld r25,X |
4087 208c 1197 sbiw r26,1 |
4088 208e 8734 cpi r24,71 |
4089 2090 9105 cpc r25,__zero_reg__ |
4090 2092 44F0 brlt .L340 |
4091 2094 E32F mov r30,r19 |
4092 2096 FF27 clr r31 |
4093 2098 EE0F add r30,r30 |
4094 209a FF1F adc r31,r31 |
4095 209c E050 subi r30,lo8(-(PPM_in)) |
4096 209e F040 sbci r31,hi8(-(PPM_in)) |
4097 20a0 8081 ld r24,Z |
4098 20a2 9181 ldd r25,Z+1 |
4099 .L340: |
4100 20a4 8D91 ld r24,X+ |
4101 20a6 9C91 ld r25,X |
4102 20a8 8734 cpi r24,71 |
4103 20aa 9105 cpc r25,__zero_reg__ |
4104 20ac 74F0 brlt .L341 |
4105 20ae 8091 0000 lds r24,EE_Parameter+1 |
4106 20b2 E82F mov r30,r24 |
4107 20b4 FF27 clr r31 |
4108 20b6 EE0F add r30,r30 |
4109 20b8 FF1F adc r31,r31 |
4110 20ba E050 subi r30,lo8(-(PPM_in)) |
4111 20bc F040 sbci r31,hi8(-(PPM_in)) |
4112 20be 8081 ld r24,Z |
4113 20c0 9181 ldd r25,Z+1 |
4114 20c2 8734 cpi r24,71 |
4115 20c4 9105 cpc r25,__zero_reg__ |
4116 20c6 0CF0 brlt .L341 |
4117 20c8 42E0 ldi r20,lo8(2) |
4118 .L341: |
4119 20ca E22F mov r30,r18 |
4120 20cc FF27 clr r31 |
4121 20ce EE0F add r30,r30 |
4122 20d0 FF1F adc r31,r31 |
4123 20d2 E050 subi r30,lo8(-(PPM_in)) |
4124 20d4 F040 sbci r31,hi8(-(PPM_in)) |
4125 20d6 8081 ld r24,Z |
4126 20d8 9181 ldd r25,Z+1 |
4127 20da 8634 cpi r24,70 |
4128 20dc 9105 cpc r25,__zero_reg__ |
4129 20de 74F4 brge .L342 |
4130 20e0 8091 0000 lds r24,EE_Parameter+1 |
4131 20e4 E82F mov r30,r24 |
4132 20e6 FF27 clr r31 |
4133 20e8 EE0F add r30,r30 |
4134 20ea FF1F adc r31,r31 |
4135 20ec E050 subi r30,lo8(-(PPM_in)) |
4136 20ee F040 sbci r31,hi8(-(PPM_in)) |
4137 20f0 8081 ld r24,Z |
4138 20f2 9181 ldd r25,Z+1 |
4139 20f4 8734 cpi r24,71 |
4140 20f6 9105 cpc r25,__zero_reg__ |
4141 20f8 0CF0 brlt .L342 |
4142 20fa 43E0 ldi r20,lo8(3) |
4143 .L342: |
4144 20fc E22F mov r30,r18 |
4145 20fe FF27 clr r31 |
4146 2100 EE0F add r30,r30 |
4147 2102 FF1F adc r31,r31 |
4148 2104 E050 subi r30,lo8(-(PPM_in)) |
4149 2106 F040 sbci r31,hi8(-(PPM_in)) |
4150 2108 8081 ld r24,Z |
4151 210a 9181 ldd r25,Z+1 |
4152 210c 8A5B subi r24,lo8(-70) |
4153 210e 9F4F sbci r25,hi8(-70) |
4154 2110 74F4 brge .L343 |
4155 2112 8091 0000 lds r24,EE_Parameter+1 |
4156 2116 E82F mov r30,r24 |
4157 2118 FF27 clr r31 |
4158 211a EE0F add r30,r30 |
4159 211c FF1F adc r31,r31 |
4160 211e E050 subi r30,lo8(-(PPM_in)) |
4161 2120 F040 sbci r31,hi8(-(PPM_in)) |
4162 2122 8081 ld r24,Z |
4163 2124 9181 ldd r25,Z+1 |
4164 2126 8734 cpi r24,71 |
4165 2128 9105 cpc r25,__zero_reg__ |
4166 212a 0CF0 brlt .L343 |
4167 212c 44E0 ldi r20,lo8(4) |
4168 .L343: |
4169 212e E22F mov r30,r18 |
4170 2130 FF27 clr r31 |
4171 2132 EE0F add r30,r30 |
4172 2134 FF1F adc r31,r31 |
4173 2136 E050 subi r30,lo8(-(PPM_in)) |
4174 2138 F040 sbci r31,hi8(-(PPM_in)) |
4175 213a 8081 ld r24,Z |
4176 213c 9181 ldd r25,Z+1 |
4177 213e 8A5B subi r24,lo8(-70) |
4178 2140 9F4F sbci r25,hi8(-70) |
4179 2142 74F4 brge .L344 |
4180 2144 8091 0000 lds r24,EE_Parameter+1 |
4181 2148 E82F mov r30,r24 |
4182 214a FF27 clr r31 |
4183 214c EE0F add r30,r30 |
4184 214e FF1F adc r31,r31 |
4185 2150 E050 subi r30,lo8(-(PPM_in)) |
4186 2152 F040 sbci r31,hi8(-(PPM_in)) |
4187 2154 8081 ld r24,Z |
4188 2156 9181 ldd r25,Z+1 |
4189 2158 8634 cpi r24,70 |
4190 215a 9105 cpc r25,__zero_reg__ |
4191 215c 0CF4 brge .L344 |
4192 215e 45E0 ldi r20,lo8(5) |
4193 .L344: |
4194 2160 842F mov r24,r20 |
4195 2162 0E94 0000 call SetActiveParamSet |
4196 .L337: |
4197 2166 8091 0000 lds r24,EE_Parameter+2 |
4198 216a E82F mov r30,r24 |
4199 216c FF27 clr r31 |
4200 216e EE0F add r30,r30 |
4201 2170 FF1F adc r31,r31 |
4202 2172 E050 subi r30,lo8(-(PPM_in)) |
4203 2174 F040 sbci r31,hi8(-(PPM_in)) |
4204 2176 8081 ld r24,Z |
4205 2178 9181 ldd r25,Z+1 |
4206 217a 0190 ld __tmp_reg__,Z+ |
4207 217c F081 ld r31,Z |
4208 217e E02D mov r30,__tmp_reg__ |
4209 2180 F7FF sbrs r31,7 |
4210 2182 03C0 rjmp .L346 |
4211 2184 F095 com r31 |
4212 2186 E195 neg r30 |
4213 2188 FF4F sbci r31,lo8(-1) |
4214 .L346: |
4215 218a 7E97 sbiw r30,30 |
4216 218c BCF4 brge .L345 |
4217 218e 8091 0000 lds r24,EE_Parameter+1 |
4218 2192 E82F mov r30,r24 |
4219 2194 FF27 clr r31 |
4220 2196 EE0F add r30,r30 |
4221 2198 FF1F adc r31,r31 |
4222 219a E050 subi r30,lo8(-(PPM_in)) |
4223 219c F040 sbci r31,hi8(-(PPM_in)) |
4224 219e 8081 ld r24,Z |
4225 21a0 9181 ldd r25,Z+1 |
4226 21a2 8A5B subi r24,lo8(-70) |
4227 21a4 9F4F sbci r25,hi8(-70) |
4228 21a6 54F4 brge .L345 |
4229 21a8 81E0 ldi r24,lo8(1) |
4230 21aa 8093 0000 sts WinkelOut+6,r24 |
4231 21ae 88EE ldi r24,lo8(1000) |
4232 21b0 93E0 ldi r25,hi8(1000) |
4233 21b2 9093 0000 sts (beeptime)+1,r25 |
4234 21b6 8093 0000 sts beeptime,r24 |
4235 21ba 53C0 rjmp .L332 |
4236 .L345: |
4237 21bc 0E94 0000 call GetActiveParamSet |
4238 21c0 0E94 0000 call ParamSet_ReadFromEEProm |
4239 21c4 80E0 ldi r24,lo8(0) |
4240 21c6 0E94 0000 call LipoDetection |
4241 21ca 8091 0000 lds r24,EE_Parameter+39 |
4242 21ce 0E94 0000 call LIBFC_ReceiverInit |
4243 21d2 8091 0000 lds r24,EE_Parameter+13 |
4244 21d6 80FF sbrs r24,0 |
4245 21d8 10C0 rjmp .L348 |
4246 21da 8091 0000 lds r24,MessLuftdruck |
4247 21de 9091 0000 lds r25,(MessLuftdruck)+1 |
4248 21e2 875B subi r24,lo8(951) |
4249 21e4 9340 sbci r25,hi8(951) |
4250 21e6 38F4 brsh .L350 |
4251 21e8 8091 0000 lds r24,MessLuftdruck |
4252 21ec 9091 0000 lds r25,(MessLuftdruck)+1 |
4253 21f0 8E5E subi r24,lo8(750) |
4254 21f2 9240 sbci r25,hi8(750) |
4255 21f4 10F4 brsh .L348 |
4256 .L350: |
4257 21f6 0E94 0000 call SucheLuftruckOffset |
4258 .L348: |
4259 21fa 1092 0000 sts ServoActive,__zero_reg__ |
4260 21fe 80E0 ldi r24,lo8(0) |
4261 2200 0E94 0000 call SetNeutral |
4262 2204 81E0 ldi r24,lo8(1) |
4263 2206 8093 0000 sts calibration_done.9,r24 |
4264 220a 8093 0000 sts ServoActive,r24 |
4265 220e 579A sbi 42-0x20,7 |
4266 2210 1FC0 rjmp .L790 |
4267 .L333: |
4268 2212 8081 ld r24,Z |
4269 2214 9181 ldd r25,Z+1 |
4270 2216 855B subi r24,lo8(-75) |
4271 2218 9F4F sbci r25,hi8(-75) |
4272 221a 0CF5 brge .L352 |
4273 221c 8091 0000 lds r24,delay_neutral.6 |
4274 2220 8F5F subi r24,lo8(-(1)) |
4275 2222 8093 0000 sts delay_neutral.6,r24 |
4276 2226 893C cpi r24,lo8(-55) |
4277 2228 E0F0 brlo .L332 |
4278 222a 3C30 cpi r19,lo8(12) |
4279 222c 10F4 brsh .L354 |
4280 222e 2998 cbi 37-0x20,1 |
4281 2230 01C0 rjmp .L355 |
4282 .L354: |
4283 2232 299A sbi 37-0x20,1 |
4284 .L355: |
4285 2234 1092 0000 sts MotorenEin,__zero_reg__ |
4286 2238 1092 0000 sts delay_neutral.6,__zero_reg__ |
4287 223c 1092 0000 sts (modell_fliegt)+1,__zero_reg__ |
4288 2240 1092 0000 sts modell_fliegt,__zero_reg__ |
4289 2244 81E0 ldi r24,lo8(1) |
4290 2246 0E94 0000 call SetNeutral |
4291 224a 81E0 ldi r24,lo8(1) |
4292 224c 8093 0000 sts calibration_done.9,r24 |
4293 .L790: |
4294 2250 0E94 0000 call GetActiveParamSet |
4295 2254 68E7 ldi r22,lo8(120) |
4296 2256 70E0 ldi r23,hi8(120) |
4297 2258 0E94 0000 call Piep |
4298 225c 02C0 rjmp .L332 |
4299 .L352: |
4300 225e 2093 0000 sts delay_neutral.6,r18 |
4301 .L332: |
4302 2262 8091 0000 lds r24,EE_Parameter+3 |
4303 2266 E82F mov r30,r24 |
4304 2268 FF27 clr r31 |
4305 226a EE0F add r30,r30 |
4306 226c FF1F adc r31,r31 |
4307 226e E050 subi r30,lo8(-(PPM_in)) |
4308 2270 F040 sbci r31,hi8(-(PPM_in)) |
4309 2272 8081 ld r24,Z |
4310 2274 9181 ldd r25,Z+1 |
4311 2276 8B5A subi r24,lo8(-85) |
4312 2278 9F4F sbci r25,hi8(-85) |
4313 227a 0CF0 brlt .+2 |
4314 227c 0CC1 rjmp .L325 |
4315 227e 3091 0000 lds r19,MotorenEin |
4316 2282 E091 0000 lds r30,EE_Parameter+4 |
4317 2286 3323 tst r19 |
4318 2288 09F0 breq .+2 |
4319 228a DAC0 rjmp .L358 |
4320 228c FF27 clr r31 |
4321 228e EE0F add r30,r30 |
4322 2290 FF1F adc r31,r31 |
4323 2292 E050 subi r30,lo8(-(PPM_in)) |
4324 2294 F040 sbci r31,hi8(-(PPM_in)) |
4325 2296 8081 ld r24,Z |
4326 2298 9181 ldd r25,Z+1 |
4327 229a 855B subi r24,lo8(-75) |
4328 229c 9F4F sbci r25,hi8(-75) |
4329 229e 0CF0 brlt .+2 |
4330 22a0 CCC0 rjmp .L359 |
4331 22a2 2091 0000 lds r18,EE_Parameter+99 |
4332 22a6 E22F mov r30,r18 |
4333 22a8 FF27 clr r31 |
4334 22aa EE0F add r30,r30 |
4335 22ac FF1F adc r31,r31 |
4336 22ae E050 subi r30,lo8(-(PPM_in)) |
4337 22b0 F040 sbci r31,hi8(-(PPM_in)) |
4338 22b2 8081 ld r24,Z |
4339 22b4 9181 ldd r25,Z+1 |
4340 22b6 855B subi r24,lo8(-75) |
4341 22b8 9F4F sbci r25,hi8(-75) |
4342 22ba 1CF0 brlt .L360 |
4343 22bc 2223 tst r18 |
4344 22be 09F0 breq .+2 |
4345 22c0 BCC0 rjmp .L359 |
4346 .L360: |
4347 22c2 8091 0000 lds r24,delay_einschalten.7 |
4348 22c6 8F5F subi r24,lo8(-(1)) |
4349 22c8 8093 0000 sts delay_einschalten.7,r24 |
4350 22cc 893C cpi r24,lo8(-55) |
4351 22ce 08F4 brsh .+2 |
4352 22d0 E2C0 rjmp .L325 |
4353 22d2 3093 0000 sts delay_einschalten.7,r19 |
4354 22d6 8091 0000 lds r24,VersionInfo+5 |
4355 22da 8823 tst r24 |
4356 22dc 09F0 breq .+2 |
4357 22de A6C0 rjmp .L362 |
4358 22e0 8091 0000 lds r24,calibration_done.9 |
4359 22e4 8823 tst r24 |
4360 22e6 09F4 brne .+2 |
4361 22e8 A1C0 rjmp .L362 |
4362 22ea 81E0 ldi r24,lo8(1) |
4363 22ec 90E0 ldi r25,hi8(1) |
4364 22ee 9093 0000 sts (modell_fliegt)+1,r25 |
4365 22f2 8093 0000 sts modell_fliegt,r24 |
4366 22f6 81E0 ldi r24,lo8(1) |
4367 22f8 8093 0000 sts MotorenEin,r24 |
4368 22fc 1092 0000 sts sollGier.0,__zero_reg__ |
4369 2300 1092 0000 sts (sollGier.0)+1,__zero_reg__ |
4370 2304 1092 0000 sts (sollGier.0)+2,__zero_reg__ |
4371 2308 1092 0000 sts (sollGier.0)+3,__zero_reg__ |
4372 230c 1092 0000 sts Mess_Integral_Gier,__zero_reg__ |
4373 2310 1092 0000 sts (Mess_Integral_Gier)+1,__zero_reg__ |
4374 2314 1092 0000 sts (Mess_Integral_Gier)+2,__zero_reg__ |
4375 2318 1092 0000 sts (Mess_Integral_Gier)+3,__zero_reg__ |
4376 231c 1092 0000 sts Mess_Integral_Gier2,__zero_reg__ |
4377 2320 1092 0000 sts (Mess_Integral_Gier2)+1,__zero_reg__ |
4378 2324 1092 0000 sts (Mess_Integral_Gier2)+2,__zero_reg__ |
4379 2328 1092 0000 sts (Mess_Integral_Gier2)+3,__zero_reg__ |
4380 232c 8091 0000 lds r24,EE_Parameter+28 |
4381 2330 E82E mov r14,r24 |
4382 2332 FF24 clr r15 |
4383 2334 0027 clr r16 |
4384 2336 1127 clr r17 |
4385 2338 8091 0000 lds r24,Mittelwert_AccNick |
4386 233c 9091 0000 lds r25,(Mittelwert_AccNick)+1 |
4387 2340 9C01 movw r18,r24 |
4388 2342 4427 clr r20 |
4389 2344 37FD sbrc r19,7 |
4390 2346 4095 com r20 |
4391 2348 542F mov r21,r20 |
4392 234a C801 movw r24,r16 |
4393 234c B701 movw r22,r14 |
4394 234e 0E94 0000 call __mulsi3 |
4395 2352 DC01 movw r26,r24 |
4396 2354 CB01 movw r24,r22 |
4397 2356 8093 0000 sts Mess_IntegralNick,r24 |
4398 235a 9093 0000 sts (Mess_IntegralNick)+1,r25 |
4399 235e A093 0000 sts (Mess_IntegralNick)+2,r26 |
4400 2362 B093 0000 sts (Mess_IntegralNick)+3,r27 |
4401 2366 8091 0000 lds r24,Mittelwert_AccRoll |
4402 236a 9091 0000 lds r25,(Mittelwert_AccRoll)+1 |
4403 236e 9C01 movw r18,r24 |
4404 2370 4427 clr r20 |
4405 2372 37FD sbrc r19,7 |
4406 2374 4095 com r20 |
4407 2376 542F mov r21,r20 |
4408 2378 C801 movw r24,r16 |
4409 237a B701 movw r22,r14 |
4410 237c 0E94 0000 call __mulsi3 |
4411 2380 DC01 movw r26,r24 |
4412 2382 CB01 movw r24,r22 |
4413 2384 8093 0000 sts Mess_IntegralRoll,r24 |
4414 2388 9093 0000 sts (Mess_IntegralRoll)+1,r25 |
4415 238c A093 0000 sts (Mess_IntegralRoll)+2,r26 |
4416 2390 B093 0000 sts (Mess_IntegralRoll)+3,r27 |
4417 2394 8091 0000 lds r24,IntegralNick |
4418 2398 9091 0000 lds r25,(IntegralNick)+1 |
4419 239c A091 0000 lds r26,(IntegralNick)+2 |
4420 23a0 B091 0000 lds r27,(IntegralNick)+3 |
4421 23a4 8093 0000 sts Mess_IntegralNick2,r24 |
4422 23a8 9093 0000 sts (Mess_IntegralNick2)+1,r25 |
4423 23ac A093 0000 sts (Mess_IntegralNick2)+2,r26 |
4424 23b0 B093 0000 sts (Mess_IntegralNick2)+3,r27 |
4425 23b4 8091 0000 lds r24,IntegralRoll |
4426 23b8 9091 0000 lds r25,(IntegralRoll)+1 |
4427 23bc A091 0000 lds r26,(IntegralRoll)+2 |
4428 23c0 B091 0000 lds r27,(IntegralRoll)+3 |
4429 23c4 8093 0000 sts Mess_IntegralRoll2,r24 |
4430 23c8 9093 0000 sts (Mess_IntegralRoll2)+1,r25 |
4431 23cc A093 0000 sts (Mess_IntegralRoll2)+2,r26 |
4432 23d0 B093 0000 sts (Mess_IntegralRoll2)+3,r27 |
4433 23d4 1092 0000 sts SummeNick,__zero_reg__ |
4434 23d8 1092 0000 sts (SummeNick)+1,__zero_reg__ |
4435 23dc 1092 0000 sts (SummeNick)+2,__zero_reg__ |
4436 23e0 1092 0000 sts (SummeNick)+3,__zero_reg__ |
4437 23e4 1092 0000 sts SummeRoll,__zero_reg__ |
4438 23e8 1092 0000 sts (SummeRoll)+1,__zero_reg__ |
4439 23ec 1092 0000 sts (SummeRoll)+2,__zero_reg__ |
4440 23f0 1092 0000 sts (SummeRoll)+3,__zero_reg__ |
4441 23f4 8091 0000 lds r24,FC_StatusFlags |
4442 23f8 8860 ori r24,lo8(8) |
4443 23fa 8093 0000 sts FC_StatusFlags,r24 |
4444 23fe 9091 0000 lds r25,EE_Parameter+97 |
4445 2402 8FE0 ldi r24,lo8(15) |
4446 2404 989F mul r25,r24 |
4447 2406 9001 movw r18,r0 |
4448 2408 1124 clr r1 |
4449 240a 8091 0000 lds r24,KompassValue |
4450 240e 9091 0000 lds r25,(KompassValue)+1 |
4451 2412 820F add r24,r18 |
4452 2414 931F adc r25,r19 |
4453 2416 68E6 ldi r22,lo8(360) |
4454 2418 71E0 ldi r23,hi8(360) |
4455 241a 0E94 0000 call __divmodhi4 |
4456 241e 97FD sbrc r25,7 |
4457 2420 0196 adiw r24,1 |
4458 .L363: |
4459 2422 9595 asr r25 |
4460 2424 8795 ror r24 |
4461 2426 8093 0000 sts ControlHeading,r24 |
4462 242a 35C0 rjmp .L325 |
4463 .L362: |
4464 242c 8CED ldi r24,lo8(1500) |
4465 242e 95E0 ldi r25,hi8(1500) |
4466 2430 9093 0000 sts (beeptime)+1,r25 |
4467 2434 8093 0000 sts beeptime,r24 |
4468 2438 2EC0 rjmp .L325 |
4469 .L359: |
4470 243a 1092 0000 sts delay_einschalten.7,__zero_reg__ |
4471 243e 2BC0 rjmp .L325 |
4472 .L358: |
4473 2440 FF27 clr r31 |
4474 2442 EE0F add r30,r30 |
4475 2444 FF1F adc r31,r31 |
4476 2446 E050 subi r30,lo8(-(PPM_in)) |
4477 2448 F040 sbci r31,hi8(-(PPM_in)) |
4478 244a 8081 ld r24,Z |
4479 244c 9181 ldd r25,Z+1 |
4480 244e 8C34 cpi r24,76 |
4481 2450 9105 cpc r25,__zero_reg__ |
4482 2452 FCF0 brlt .L367 |
4483 2454 2091 0000 lds r18,EE_Parameter+99 |
4484 2458 E22F mov r30,r18 |
4485 245a FF27 clr r31 |
4486 245c EE0F add r30,r30 |
4487 245e FF1F adc r31,r31 |
4488 2460 E050 subi r30,lo8(-(PPM_in)) |
4489 2462 F040 sbci r31,hi8(-(PPM_in)) |
4490 2464 8081 ld r24,Z |
4491 2466 9181 ldd r25,Z+1 |
4492 2468 855B subi r24,lo8(-75) |
4493 246a 9F4F sbci r25,hi8(-75) |
4494 246c 14F0 brlt .L368 |
4495 246e 2223 tst r18 |
4496 2470 81F4 brne .L367 |
4497 .L368: |
4498 2472 8091 0000 lds r24,delay_ausschalten.8 |
4499 2476 8F5F subi r24,lo8(-(1)) |
4500 2478 8093 0000 sts delay_ausschalten.8,r24 |
4501 247c 893C cpi r24,lo8(-55) |
4502 247e 58F0 brlo .L325 |
4503 2480 1092 0000 sts MotorenEin,__zero_reg__ |
4504 2484 1092 0000 sts delay_ausschalten.8,__zero_reg__ |
4505 2488 1092 0000 sts (modell_fliegt)+1,__zero_reg__ |
4506 248c 1092 0000 sts modell_fliegt,__zero_reg__ |
4507 2490 02C0 rjmp .L325 |
4508 .L367: |
4509 2492 1092 0000 sts delay_ausschalten.8,__zero_reg__ |
4510 .L325: |
4511 2496 8091 0000 lds r24,NewPpmData |
4512 249a 8150 subi r24,lo8(-(-1)) |
4513 249c 8093 0000 sts NewPpmData,r24 |
4514 24a0 8091 0000 lds r24,NewPpmData |
4515 24a4 8F3F cpi r24,lo8(-1) |
4516 24a6 21F0 breq .L372 |
4517 24a8 8091 0000 lds r24,FC_StatusFlags |
4518 24ac 84FF sbrs r24,4 |
4519 24ae 72C3 rjmp .L371 |
4520 .L372: |
4521 24b0 0E94 0000 call ParameterZuordnung |
4522 24b4 8091 0000 lds r24,stick_nick.13 |
4523 24b8 9091 0000 lds r25,(stick_nick.13)+1 |
4524 24bc 9C01 movw r18,r24 |
4525 24be 220F lsl r18 |
4526 24c0 331F rol r19 |
4527 24c2 280F add r18,r24 |
4528 24c4 391F adc r19,r25 |
4529 24c6 C090 0000 lds r12,EE_Parameter+1 |
4530 24ca AC2D mov r26,r12 |
4531 24cc BB27 clr r27 |
4532 24ce AA0F add r26,r26 |
4533 24d0 BB1F adc r27,r27 |
4534 24d2 FD01 movw r30,r26 |
4535 24d4 E050 subi r30,lo8(-(PPM_in)) |
4536 24d6 F040 sbci r31,hi8(-(PPM_in)) |
4537 24d8 B090 0000 lds r11,EE_Parameter+23 |
4538 24dc 4B2D mov r20,r11 |
4539 24de 5527 clr r21 |
4540 24e0 8081 ld r24,Z |
4541 24e2 9181 ldd r25,Z+1 |
4542 24e4 849F mul r24,r20 |
4543 24e6 F001 movw r30,r0 |
4544 24e8 859F mul r24,r21 |
4545 24ea F00D add r31,r0 |
4546 24ec 949F mul r25,r20 |
4547 24ee F00D add r31,r0 |
4548 24f0 1124 clr r1 |
4549 24f2 2E0F add r18,r30 |
4550 24f4 3F1F adc r19,r31 |
4551 24f6 37FF sbrs r19,7 |
4552 24f8 02C0 rjmp .L373 |
4553 24fa 2D5F subi r18,lo8(-(3)) |
4554 24fc 3F4F sbci r19,hi8(-(3)) |
4555 .L373: |
4556 24fe B901 movw r22,r18 |
4557 2500 7595 asr r23 |
4558 2502 6795 ror r22 |
4559 2504 7595 asr r23 |
4560 2506 6795 ror r22 |
4561 2508 A050 subi r26,lo8(-(PPM_diff)) |
4562 250a B040 sbci r27,hi8(-(PPM_diff)) |
4563 250c 8091 0000 lds r24,EE_Parameter+24 |
4564 2510 082F mov r16,r24 |
4565 2512 1127 clr r17 |
4566 2514 8D91 ld r24,X+ |
4567 2516 9C91 ld r25,X |
4568 2518 809F mul r24,r16 |
4569 251a 7001 movw r14,r0 |
4570 251c 819F mul r24,r17 |
4571 251e F00C add r15,r0 |
4572 2520 909F mul r25,r16 |
4573 2522 F00C add r15,r0 |
4574 2524 1124 clr r1 |
4575 2526 6E0D add r22,r14 |
4576 2528 7F1D adc r23,r15 |
4577 252a 7093 0000 sts (stick_nick.13)+1,r23 |
4578 252e 6093 0000 sts stick_nick.13,r22 |
4579 2532 8091 0000 lds r24,stick_roll.14 |
4580 2536 9091 0000 lds r25,(stick_roll.14)+1 |
4581 253a 9C01 movw r18,r24 |
4582 253c 220F lsl r18 |
4583 253e 331F rol r19 |
4584 2540 280F add r18,r24 |
4585 2542 391F adc r19,r25 |
4586 2544 D090 0000 lds r13,EE_Parameter+2 |
4587 2548 AD2D mov r26,r13 |
4588 254a BB27 clr r27 |
4589 254c AA0F add r26,r26 |
4590 254e BB1F adc r27,r27 |
4591 2550 FD01 movw r30,r26 |
4592 2552 E050 subi r30,lo8(-(PPM_in)) |
4593 2554 F040 sbci r31,hi8(-(PPM_in)) |
4594 2556 8081 ld r24,Z |
4595 2558 9181 ldd r25,Z+1 |
4596 255a 849F mul r24,r20 |
4597 255c F001 movw r30,r0 |
4598 255e 859F mul r24,r21 |
4599 2560 F00D add r31,r0 |
4600 2562 949F mul r25,r20 |
4601 2564 F00D add r31,r0 |
4602 2566 1124 clr r1 |
4603 2568 2E0F add r18,r30 |
4604 256a 3F1F adc r19,r31 |
4605 256c 37FF sbrs r19,7 |
4606 256e 02C0 rjmp .L374 |
4607 2570 2D5F subi r18,lo8(-(3)) |
4608 2572 3F4F sbci r19,hi8(-(3)) |
4609 .L374: |
4610 2574 A901 movw r20,r18 |
4611 2576 5595 asr r21 |
4612 2578 4795 ror r20 |
4613 257a 5595 asr r21 |
4614 257c 4795 ror r20 |
4615 257e A050 subi r26,lo8(-(PPM_diff)) |
4616 2580 B040 sbci r27,hi8(-(PPM_diff)) |
4617 2582 8D91 ld r24,X+ |
4618 2584 9C91 ld r25,X |
4619 2586 809F mul r24,r16 |
4620 2588 7001 movw r14,r0 |
4621 258a 819F mul r24,r17 |
4622 258c F00C add r15,r0 |
4623 258e 909F mul r25,r16 |
4624 2590 F00C add r15,r0 |
4625 2592 1124 clr r1 |
4626 2594 4E0D add r20,r14 |
4627 2596 5F1D adc r21,r15 |
4628 2598 5093 0000 sts (stick_roll.14)+1,r21 |
4629 259c 4093 0000 sts stick_roll.14,r20 |
4630 25a0 8091 0000 lds r24,CareFree |
4631 25a4 8823 tst r24 |
4632 25a6 09F4 brne .+2 |
4633 25a8 48C0 rjmp .L375 |
4634 25aa CB01 movw r24,r22 |
4635 25ac 77FD sbrc r23,7 |
4636 25ae 0396 adiw r24,3 |
4637 .L376: |
4638 25b0 DC01 movw r26,r24 |
4639 25b2 B595 asr r27 |
4640 25b4 A795 ror r26 |
4641 25b6 B595 asr r27 |
4642 25b8 A795 ror r26 |
4643 25ba CA01 movw r24,r20 |
4644 25bc 57FD sbrc r21,7 |
4645 25be 0396 adiw r24,3 |
4646 .L377: |
4647 25c0 FC01 movw r30,r24 |
4648 25c2 F595 asr r31 |
4649 25c4 E795 ror r30 |
4650 25c6 F595 asr r31 |
4651 25c8 E795 ror r30 |
4652 25ca 8091 0000 lds r24,FromNC_Rotate_C |
4653 25ce 682F mov r22,r24 |
4654 25d0 7727 clr r23 |
4655 25d2 67FD sbrc r22,7 |
4656 25d4 7095 com r23 |
4657 25d6 6A9F mul r22,r26 |
4658 25d8 9001 movw r18,r0 |
4659 25da 6B9F mul r22,r27 |
4660 25dc 300D add r19,r0 |
4661 25de 7A9F mul r23,r26 |
4662 25e0 300D add r19,r0 |
4663 25e2 1124 clr r1 |
4664 25e4 8091 0000 lds r24,FromNC_Rotate_S |
4665 25e8 482F mov r20,r24 |
4666 25ea 5527 clr r21 |
4667 25ec 47FD sbrc r20,7 |
4668 25ee 5095 com r21 |
4669 25f0 4E9F mul r20,r30 |
4670 25f2 C001 movw r24,r0 |
4671 25f4 4F9F mul r20,r31 |
4672 25f6 900D add r25,r0 |
4673 25f8 5E9F mul r21,r30 |
4674 25fa 900D add r25,r0 |
4675 25fc 1124 clr r1 |
4676 25fe 280F add r18,r24 |
4677 2600 391F adc r19,r25 |
4678 2602 37FF sbrs r19,7 |
4679 2604 02C0 rjmp .L378 |
4680 2606 295F subi r18,lo8(-(7)) |
4681 2608 3F4F sbci r19,hi8(-(7)) |
4682 .L378: |
4683 260a 03E0 ldi r16,3 |
4684 260c 3595 1: asr r19 |
4685 260e 2795 ror r18 |
4686 2610 0A95 dec r16 |
4687 2612 E1F7 brne 1b |
4688 2614 3093 0000 sts (StickNick)+1,r19 |
4689 2618 2093 0000 sts StickNick,r18 |
4690 261c 6E9F mul r22,r30 |
4691 261e 9001 movw r18,r0 |
4692 2620 6F9F mul r22,r31 |
4693 2622 300D add r19,r0 |
4694 2624 7E9F mul r23,r30 |
4695 2626 300D add r19,r0 |
4696 2628 1124 clr r1 |
4697 262a 4A9F mul r20,r26 |
4698 262c C001 movw r24,r0 |
4699 262e 4B9F mul r20,r27 |
4700 2630 900D add r25,r0 |
4701 2632 5A9F mul r21,r26 |
4702 2634 900D add r25,r0 |
4703 2636 1124 clr r1 |
4704 2638 3FC0 rjmp .L816 |
4705 .L375: |
4706 263a 8091 0000 lds r24,EE_Parameter+97 |
4707 263e E82F mov r30,r24 |
4708 2640 FF27 clr r31 |
4709 2642 E050 subi r30,lo8(-(sintab)) |
4710 2644 F040 sbci r31,hi8(-(sintab)) |
4711 2646 8681 ldd r24,Z+6 |
4712 2648 8093 0000 sts FromNC_Rotate_C,r24 |
4713 264c 9081 ld r25,Z |
4714 264e 9093 0000 sts FromNC_Rotate_S,r25 |
4715 2652 A82F mov r26,r24 |
4716 2654 BB27 clr r27 |
4717 2656 A7FD sbrc r26,7 |
4718 2658 B095 com r27 |
4719 265a A69F mul r26,r22 |
4720 265c 9001 movw r18,r0 |
4721 265e A79F mul r26,r23 |
4722 2660 300D add r19,r0 |
4723 2662 B69F mul r27,r22 |
4724 2664 300D add r19,r0 |
4725 2666 1124 clr r1 |
4726 2668 E92F mov r30,r25 |
4727 266a FF27 clr r31 |
4728 266c E7FD sbrc r30,7 |
4729 266e F095 com r31 |
4730 2670 E49F mul r30,r20 |
4731 2672 C001 movw r24,r0 |
4732 2674 E59F mul r30,r21 |
4733 2676 900D add r25,r0 |
4734 2678 F49F mul r31,r20 |
4735 267a 900D add r25,r0 |
4736 267c 1124 clr r1 |
4737 267e 280F add r18,r24 |
4738 2680 391F adc r19,r25 |
4739 2682 37FF sbrs r19,7 |
4740 2684 02C0 rjmp .L381 |
4741 2686 295F subi r18,lo8(-(7)) |
4742 2688 3F4F sbci r19,hi8(-(7)) |
4743 .L381: |
4744 268a 13E0 ldi r17,3 |
4745 268c 3595 1: asr r19 |
4746 268e 2795 ror r18 |
4747 2690 1A95 dec r17 |
4748 2692 E1F7 brne 1b |
4749 2694 3093 0000 sts (StickNick)+1,r19 |
4750 2698 2093 0000 sts StickNick,r18 |
4751 269c A49F mul r26,r20 |
4752 269e 9001 movw r18,r0 |
4753 26a0 A59F mul r26,r21 |
4754 26a2 300D add r19,r0 |
4755 26a4 B49F mul r27,r20 |
4756 26a6 300D add r19,r0 |
4757 26a8 1124 clr r1 |
4758 26aa E69F mul r30,r22 |
4759 26ac C001 movw r24,r0 |
4760 26ae E79F mul r30,r23 |
4761 26b0 900D add r25,r0 |
4762 26b2 F69F mul r31,r22 |
4763 26b4 900D add r25,r0 |
4764 26b6 1124 clr r1 |
4765 .L816: |
4766 26b8 281B sub r18,r24 |
4767 26ba 390B sbc r19,r25 |
4768 26bc 37FF sbrs r19,7 |
4769 26be 02C0 rjmp .L382 |
4770 26c0 295F subi r18,lo8(-(7)) |
4771 26c2 3F4F sbci r19,hi8(-(7)) |
4772 .L382: |
4773 26c4 F3E0 ldi r31,3 |
4774 26c6 3595 1: asr r19 |
4775 26c8 2795 ror r18 |
4776 26ca FA95 dec r31 |
4777 26cc E1F7 brne 1b |
4778 26ce 3093 0000 sts (StickRoll)+1,r19 |
4779 26d2 2093 0000 sts StickRoll,r18 |
4780 26d6 8091 0000 lds r24,EE_Parameter+4 |
4781 26da E82F mov r30,r24 |
4782 26dc FF27 clr r31 |
4783 26de EE0F add r30,r30 |
4784 26e0 FF1F adc r31,r31 |
4785 26e2 E050 subi r30,lo8(-(PPM_in)) |
4786 26e4 F040 sbci r31,hi8(-(PPM_in)) |
4787 26e6 8081 ld r24,Z |
4788 26e8 9181 ldd r25,Z+1 |
4789 26ea 9095 com r25 |
4790 26ec 8195 neg r24 |
4791 26ee 9F4F sbci r25,lo8(-1) |
4792 26f0 9093 0000 sts (StickGier)+1,r25 |
4793 26f4 8093 0000 sts StickGier,r24 |
4794 26f8 8330 cpi r24,3 |
4795 26fa 9105 cpc r25,__zero_reg__ |
4796 26fc 14F0 brlt .L383 |
4797 26fe 0297 sbiw r24,2 |
4798 2700 05C0 rjmp .L791 |
4799 .L383: |
4800 2702 0FEF ldi r16,hi8(-2) |
4801 2704 8E3F cpi r24,lo8(-2) |
4802 2706 9007 cpc r25,r16 |
4803 2708 34F4 brge .L385 |
4804 270a 0296 adiw r24,2 |
4805 .L791: |
4806 270c 9093 0000 sts (StickGier)+1,r25 |
4807 2710 8093 0000 sts StickGier,r24 |
4808 2714 04C0 rjmp .L384 |
4809 .L385: |
4810 2716 1092 0000 sts (StickGier)+1,__zero_reg__ |
4811 271a 1092 0000 sts StickGier,__zero_reg__ |
4812 .L384: |
4813 271e 8091 0000 lds r24,GPS_Nick |
4814 2722 9091 0000 lds r25,(GPS_Nick)+1 |
4815 2726 2091 0000 lds r18,GPS_Nick2 |
4816 272a 3091 0000 lds r19,(GPS_Nick2)+1 |
4817 272e 820F add r24,r18 |
4818 2730 931F adc r25,r19 |
4819 2732 0091 0000 lds r16,StickNick |
4820 2736 1091 0000 lds r17,(StickNick)+1 |
4821 273a 081B sub r16,r24 |
4822 273c 190B sbc r17,r25 |
4823 273e 1093 0000 sts (StickNick)+1,r17 |
4824 2742 0093 0000 sts StickNick,r16 |
4825 2746 8091 0000 lds r24,GPS_Roll |
4826 274a 9091 0000 lds r25,(GPS_Roll)+1 |
4827 274e 2091 0000 lds r18,GPS_Roll2 |
4828 2752 3091 0000 lds r19,(GPS_Roll2)+1 |
4829 2756 820F add r24,r18 |
4830 2758 931F adc r25,r19 |
4831 275a 8090 0000 lds r8,StickRoll |
4832 275e 9090 0000 lds r9,(StickRoll)+1 |
4833 2762 881A sub r8,r24 |
4834 2764 990A sbc r9,r25 |
4835 2766 9092 0000 sts (StickRoll)+1,r9 |
4836 276a 8092 0000 sts StickRoll,r8 |
4837 276e 8091 0000 lds r24,EE_Parameter+3 |
4838 2772 E82F mov r30,r24 |
4839 2774 FF27 clr r31 |
4840 2776 EE0F add r30,r30 |
4841 2778 FF1F adc r31,r31 |
4842 277a E050 subi r30,lo8(-(PPM_in)) |
4843 277c F040 sbci r31,hi8(-(PPM_in)) |
4844 277e E080 ld r14,Z |
4845 2780 F180 ldd r15,Z+1 |
4846 2782 28E7 ldi r18,lo8(120) |
4847 2784 30E0 ldi r19,hi8(120) |
4848 2786 E20E add r14,r18 |
4849 2788 F31E adc r15,r19 |
4850 278a F092 0000 sts (StickGas)+1,r15 |
4851 278e E092 0000 sts StickGas,r14 |
4852 2792 8091 0000 lds r24,Parameter_Gyro_P |
4853 2796 9927 clr r25 |
4854 2798 AA27 clr r26 |
4855 279a 97FD sbrc r25,7 |
4856 279c A095 com r26 |
4857 279e BA2F mov r27,r26 |
4858 27a0 BC01 movw r22,r24 |
4859 27a2 CD01 movw r24,r26 |
4860 27a4 0E94 0000 call __floatsisf |
4861 27a8 DC01 movw r26,r24 |
4862 27aa CB01 movw r24,r22 |
4863 27ac 20E0 ldi r18,lo8(0x41200000) |
4864 27ae 30E0 ldi r19,hi8(0x41200000) |
4865 27b0 40E2 ldi r20,hlo8(0x41200000) |
4866 27b2 51E4 ldi r21,hhi8(0x41200000) |
4867 27b4 BC01 movw r22,r24 |
4868 27b6 CD01 movw r24,r26 |
4869 27b8 0E94 0000 call __addsf3 |
4870 27bc DC01 movw r26,r24 |
4871 27be CB01 movw r24,r22 |
4872 27c0 BC01 movw r22,r24 |
4873 27c2 CD01 movw r24,r26 |
4874 27c4 0E94 0000 call __fixunssfsi |
4875 27c8 DC01 movw r26,r24 |
4876 27ca CB01 movw r24,r22 |
4877 27cc 8093 0000 sts GyroFaktor,r24 |
4878 27d0 8091 0000 lds r24,Parameter_Gyro_I |
4879 27d4 8093 0000 sts IntegralFaktor,r24 |
4880 27d8 8091 0000 lds r24,Parameter_Gyro_Gier_P |
4881 27dc 9927 clr r25 |
4882 27de AA27 clr r26 |
4883 27e0 97FD sbrc r25,7 |
4884 27e2 A095 com r26 |
4885 27e4 BA2F mov r27,r26 |
4886 27e6 BC01 movw r22,r24 |
4887 27e8 CD01 movw r24,r26 |
4888 27ea 0E94 0000 call __floatsisf |
4889 27ee DC01 movw r26,r24 |
4890 27f0 CB01 movw r24,r22 |
4891 27f2 20E0 ldi r18,lo8(0x41200000) |
4892 27f4 30E0 ldi r19,hi8(0x41200000) |
4893 27f6 40E2 ldi r20,hlo8(0x41200000) |
4894 27f8 51E4 ldi r21,hhi8(0x41200000) |
4895 27fa BC01 movw r22,r24 |
4896 27fc CD01 movw r24,r26 |
4897 27fe 0E94 0000 call __addsf3 |
4898 2802 DC01 movw r26,r24 |
4899 2804 CB01 movw r24,r22 |
4900 2806 BC01 movw r22,r24 |
4901 2808 CD01 movw r24,r26 |
4902 280a 0E94 0000 call __fixunssfsi |
4903 280e DC01 movw r26,r24 |
4904 2810 CB01 movw r24,r22 |
4905 2812 8093 0000 sts GyroFaktorGier,r24 |
4906 2816 8091 0000 lds r24,Parameter_Gyro_Gier_I |
4907 281a 8093 0000 sts IntegralFaktorGier,r24 |
4908 281e 8091 0000 lds r24,ExternControl+10 |
4909 2822 80FF sbrs r24,0 |
4910 2824 59C0 rjmp .L387 |
4911 2826 8091 0000 lds r24,Parameter_ExternalControl |
4912 282a 8138 cpi r24,lo8(-127) |
4913 282c 08F4 brsh .+2 |
4914 282e 54C0 rjmp .L387 |
4915 2830 8091 0000 lds r24,ExternControl+3 |
4916 2834 9927 clr r25 |
4917 2836 87FD sbrc r24,7 |
4918 2838 9095 com r25 |
4919 283a 2B2D mov r18,r11 |
4920 283c 3327 clr r19 |
4921 283e 829F mul r24,r18 |
4922 2840 A001 movw r20,r0 |
4923 2842 839F mul r24,r19 |
4924 2844 500D add r21,r0 |
4925 2846 929F mul r25,r18 |
4926 2848 500D add r21,r0 |
4927 284a 1124 clr r1 |
4928 284c 040F add r16,r20 |
4929 284e 151F adc r17,r21 |
4930 2850 1093 0000 sts (StickNick)+1,r17 |
4931 2854 0093 0000 sts StickNick,r16 |
4932 2858 8091 0000 lds r24,ExternControl+4 |
4933 285c 9927 clr r25 |
4934 285e 87FD sbrc r24,7 |
4935 2860 9095 com r25 |
4936 2862 829F mul r24,r18 |
4937 2864 B001 movw r22,r0 |
4938 2866 839F mul r24,r19 |
4939 2868 700D add r23,r0 |
4940 286a 929F mul r25,r18 |
4941 286c 700D add r23,r0 |
4942 286e 1124 clr r1 |
4943 2870 860E add r8,r22 |
4944 2872 971E adc r9,r23 |
4945 2874 9092 0000 sts (StickRoll)+1,r9 |
4946 2878 8092 0000 sts StickRoll,r8 |
4947 287c 8091 0000 lds r24,ExternControl+5 |
4948 2880 282F mov r18,r24 |
4949 2882 3327 clr r19 |
4950 2884 27FD sbrc r18,7 |
4951 2886 3095 com r19 |
4952 2888 8091 0000 lds r24,StickGier |
4953 288c 9091 0000 lds r25,(StickGier)+1 |
4954 2890 820F add r24,r18 |
4955 2892 931F adc r25,r19 |
4956 2894 9093 0000 sts (StickGier)+1,r25 |
4957 2898 8093 0000 sts StickGier,r24 |
4958 289c 8091 0000 lds r24,ExternControl+7 |
4959 28a0 282F mov r18,r24 |
4960 28a2 3327 clr r19 |
4961 28a4 27FD sbrc r18,7 |
4962 28a6 3095 com r19 |
4963 28a8 8091 0000 lds r24,EE_Parameter+18 |
4964 28ac 9927 clr r25 |
4965 28ae 289F mul r18,r24 |
4966 28b0 D001 movw r26,r0 |
4967 28b2 299F mul r18,r25 |
4968 28b4 B00D add r27,r0 |
4969 28b6 389F mul r19,r24 |
4970 28b8 B00D add r27,r0 |
4971 28ba 1124 clr r1 |
4972 28bc B093 0000 sts (ExternHoehenValue)+1,r27 |
4973 28c0 A093 0000 sts ExternHoehenValue,r26 |
4974 28c4 8091 0000 lds r24,ExternControl+6 |
4975 28c8 9927 clr r25 |
4976 28ca 8E15 cp r24,r14 |
4977 28cc 9F05 cpc r25,r15 |
4978 28ce 24F4 brge .L387 |
4979 28d0 9093 0000 sts (StickGas)+1,r25 |
4980 28d4 8093 0000 sts StickGas,r24 |
4981 .L387: |
4982 28d8 8091 0000 lds r24,StickGas |
4983 28dc 9091 0000 lds r25,(StickGas)+1 |
4984 28e0 97FF sbrs r25,7 |
4985 28e2 04C0 rjmp .L389 |
4986 28e4 1092 0000 sts (StickGas)+1,__zero_reg__ |
4987 28e8 1092 0000 sts StickGas,__zero_reg__ |
4988 .L389: |
4989 28ec 8091 0000 lds r24,EE_Parameter+13 |
4990 28f0 82FF sbrs r24,2 |
4991 28f2 02C0 rjmp .L390 |
4992 28f4 1092 0000 sts IntegralFaktor,__zero_reg__ |
4993 .L390: |
4994 28f8 4091 0000 lds r20,StickNick |
4995 28fc 5091 0000 lds r21,(StickNick)+1 |
4996 2900 CA01 movw r24,r20 |
4997 2902 57FD sbrc r21,7 |
4998 2904 0396 adiw r24,3 |
4999 .L392: |
5000 2906 9C01 movw r18,r24 |
5001 2908 3595 asr r19 |
5002 290a 2795 ror r18 |
5003 290c 3595 asr r19 |
5004 290e 2795 ror r18 |
5005 2910 37FF sbrs r19,7 |
5006 2912 03C0 rjmp .L393 |
5007 2914 3095 com r19 |
5008 2916 2195 neg r18 |
5009 2918 3F4F sbci r19,lo8(-1) |
5010 .L393: |
5011 291a 8091 0000 lds r24,MaxStickNick |
5012 291e 9091 0000 lds r25,(MaxStickNick)+1 |
5013 2922 8217 cp r24,r18 |
5014 2924 9307 cpc r25,r19 |
5015 2926 B4F4 brge .L391 |
5016 2928 CA01 movw r24,r20 |
5017 292a 57FF sbrs r21,7 |
5018 292c 03C0 rjmp .L394 |
5019 292e 9095 com r25 |
5020 2930 8195 neg r24 |
5021 2932 9F4F sbci r25,lo8(-1) |
5022 .L394: |
5023 2934 97FD sbrc r25,7 |
5024 2936 0396 adiw r24,3 |
5025 .L395: |
5026 2938 9595 asr r25 |
5027 293a 8795 ror r24 |
5028 293c 9595 asr r25 |
5029 293e 8795 ror r24 |
5030 2940 9093 0000 sts (MaxStickNick)+1,r25 |
5031 2944 8093 0000 sts MaxStickNick,r24 |
5032 2948 8536 cpi r24,101 |
5033 294a 9105 cpc r25,__zero_reg__ |
5034 294c 44F0 brlt .L397 |
5035 294e 84E6 ldi r24,lo8(100) |
5036 2950 90E0 ldi r25,hi8(100) |
5037 2952 01C0 rjmp .L792 |
5038 .L391: |
5039 2954 0197 sbiw r24,1 |
5040 .L792: |
5041 2956 9093 0000 sts (MaxStickNick)+1,r25 |
5042 295a 8093 0000 sts MaxStickNick,r24 |
5043 .L397: |
5044 295e 4091 0000 lds r20,StickRoll |
5045 2962 5091 0000 lds r21,(StickRoll)+1 |
5046 2966 CA01 movw r24,r20 |
5047 2968 57FD sbrc r21,7 |
5048 296a 0396 adiw r24,3 |
5049 .L399: |
5050 296c 9C01 movw r18,r24 |
5051 296e 3595 asr r19 |
5052 2970 2795 ror r18 |
5053 2972 3595 asr r19 |
5054 2974 2795 ror r18 |
5055 2976 37FF sbrs r19,7 |
5056 2978 03C0 rjmp .L400 |
5057 297a 3095 com r19 |
5058 297c 2195 neg r18 |
5059 297e 3F4F sbci r19,lo8(-1) |
5060 .L400: |
5061 2980 8091 0000 lds r24,MaxStickRoll |
5062 2984 9091 0000 lds r25,(MaxStickRoll)+1 |
5063 2988 8217 cp r24,r18 |
5064 298a 9307 cpc r25,r19 |
5065 298c B4F4 brge .L398 |
5066 298e CA01 movw r24,r20 |
5067 2990 57FF sbrs r21,7 |
5068 2992 03C0 rjmp .L401 |
5069 2994 9095 com r25 |
5070 2996 8195 neg r24 |
5071 2998 9F4F sbci r25,lo8(-1) |
5072 .L401: |
5073 299a 97FD sbrc r25,7 |
5074 299c 0396 adiw r24,3 |
5075 .L402: |
5076 299e 9595 asr r25 |
5077 29a0 8795 ror r24 |
5078 29a2 9595 asr r25 |
5079 29a4 8795 ror r24 |
5080 29a6 9093 0000 sts (MaxStickRoll)+1,r25 |
5081 29aa 8093 0000 sts MaxStickRoll,r24 |
5082 29ae 8536 cpi r24,101 |
5083 29b0 9105 cpc r25,__zero_reg__ |
5084 29b2 44F0 brlt .L404 |
5085 29b4 84E6 ldi r24,lo8(100) |
5086 29b6 90E0 ldi r25,hi8(100) |
5087 29b8 01C0 rjmp .L793 |
5088 .L398: |
5089 29ba 0197 sbiw r24,1 |
5090 .L793: |
5091 29bc 9093 0000 sts (MaxStickRoll)+1,r25 |
5092 29c0 8093 0000 sts MaxStickRoll,r24 |
5093 .L404: |
5094 29c4 8091 0000 lds r24,FC_StatusFlags |
5095 29c8 84FF sbrs r24,4 |
5096 29ca 08C0 rjmp .L405 |
5097 29cc 1092 0000 sts (MaxStickNick)+1,__zero_reg__ |
5098 29d0 1092 0000 sts MaxStickNick,__zero_reg__ |
5099 29d4 1092 0000 sts (MaxStickRoll)+1,__zero_reg__ |
5100 29d8 1092 0000 sts MaxStickRoll,__zero_reg__ |
5101 .L405: |
5102 29dc ED2D mov r30,r13 |
5103 29de FF27 clr r31 |
5104 29e0 EE0F add r30,r30 |
5105 29e2 FF1F adc r31,r31 |
5106 29e4 E050 subi r30,lo8(-(PPM_in)) |
5107 29e6 F040 sbci r31,hi8(-(PPM_in)) |
5108 29e8 4091 0000 lds r20,EE_Parameter+60 |
5109 29ec 242F mov r18,r20 |
5110 29ee 3327 clr r19 |
5111 29f0 8081 ld r24,Z |
5112 29f2 9181 ldd r25,Z+1 |
5113 29f4 2817 cp r18,r24 |
5114 29f6 3907 cpc r19,r25 |
5115 29f8 44F4 brge .L406 |
5116 29fa 8091 0000 lds r24,EE_Parameter+100 |
5117 29fe 82FF sbrs r24,2 |
5118 2a00 04C0 rjmp .L406 |
5119 2a02 81E0 ldi r24,lo8(1) |
5120 2a04 8093 0000 sts Looping_Links,r24 |
5121 2a08 13C0 rjmp .L407 |
5122 .L406: |
5123 2a0a ED2D mov r30,r13 |
5124 2a0c FF27 clr r31 |
5125 2a0e EE0F add r30,r30 |
5126 2a10 FF1F adc r31,r31 |
5127 2a12 E050 subi r30,lo8(-(PPM_in)) |
5128 2a14 F040 sbci r31,hi8(-(PPM_in)) |
5129 2a16 842F mov r24,r20 |
5130 2a18 9927 clr r25 |
5131 2a1a 2091 0000 lds r18,EE_Parameter+61 |
5132 2a1e 821B sub r24,r18 |
5133 2a20 9109 sbc r25,__zero_reg__ |
5134 2a22 2081 ld r18,Z |
5135 2a24 3181 ldd r19,Z+1 |
5136 2a26 2817 cp r18,r24 |
5137 2a28 3907 cpc r19,r25 |
5138 2a2a 14F4 brge .L407 |
5139 2a2c 1092 0000 sts Looping_Links,__zero_reg__ |
5140 .L407: |
5141 2a30 4091 0000 lds r20,EE_Parameter+2 |
5142 2a34 E42F mov r30,r20 |
5143 2a36 FF27 clr r31 |
5144 2a38 EE0F add r30,r30 |
5145 2a3a FF1F adc r31,r31 |
5146 2a3c E050 subi r30,lo8(-(PPM_in)) |
5147 2a3e F040 sbci r31,hi8(-(PPM_in)) |
5148 2a40 5091 0000 lds r21,EE_Parameter+60 |
5149 2a44 852F mov r24,r21 |
5150 2a46 9927 clr r25 |
5151 2a48 2227 clr r18 |
5152 2a4a 3327 clr r19 |
5153 2a4c 281B sub r18,r24 |
5154 2a4e 390B sbc r19,r25 |
5155 2a50 8081 ld r24,Z |
5156 2a52 9181 ldd r25,Z+1 |
5157 2a54 8217 cp r24,r18 |
5158 2a56 9307 cpc r25,r19 |
5159 2a58 44F4 brge .L409 |
5160 2a5a 8091 0000 lds r24,EE_Parameter+100 |
5161 2a5e 83FF sbrs r24,3 |
5162 2a60 04C0 rjmp .L409 |
5163 2a62 81E0 ldi r24,lo8(1) |
5164 2a64 8093 0000 sts Looping_Rechts,r24 |
5165 2a68 16C0 rjmp .L410 |
5166 .L409: |
5167 2a6a 8091 0000 lds r24,Looping_Rechts |
5168 2a6e 8823 tst r24 |
5169 2a70 91F0 breq .L410 |
5170 2a72 E42F mov r30,r20 |
5171 2a74 FF27 clr r31 |
5172 2a76 EE0F add r30,r30 |
5173 2a78 FF1F adc r31,r31 |
5174 2a7a E050 subi r30,lo8(-(PPM_in)) |
5175 2a7c F040 sbci r31,hi8(-(PPM_in)) |
5176 2a7e 8091 0000 lds r24,EE_Parameter+61 |
5177 2a82 9927 clr r25 |
5178 2a84 851B sub r24,r21 |
5179 2a86 9109 sbc r25,__zero_reg__ |
5180 2a88 2081 ld r18,Z |
5181 2a8a 3181 ldd r19,Z+1 |
5182 2a8c 8217 cp r24,r18 |
5183 2a8e 9307 cpc r25,r19 |
5184 2a90 14F4 brge .L410 |
5185 2a92 1092 0000 sts Looping_Rechts,__zero_reg__ |
5186 .L410: |
5187 2a96 EC2D mov r30,r12 |
5188 2a98 FF27 clr r31 |
5189 2a9a EE0F add r30,r30 |
5190 2a9c FF1F adc r31,r31 |
5191 2a9e E050 subi r30,lo8(-(PPM_in)) |
5192 2aa0 F040 sbci r31,hi8(-(PPM_in)) |
5193 2aa2 4091 0000 lds r20,EE_Parameter+60 |
5194 2aa6 242F mov r18,r20 |
5195 2aa8 3327 clr r19 |
5196 2aaa 8081 ld r24,Z |
5197 2aac 9181 ldd r25,Z+1 |
5198 2aae 2817 cp r18,r24 |
5199 2ab0 3907 cpc r19,r25 |
5200 2ab2 44F4 brge .L413 |
5201 2ab4 8091 0000 lds r24,EE_Parameter+100 |
5202 2ab8 80FF sbrs r24,0 |
5203 2aba 04C0 rjmp .L413 |
5204 2abc 81E0 ldi r24,lo8(1) |
5205 2abe 8093 0000 sts Looping_Oben,r24 |
5206 2ac2 17C0 rjmp .L414 |
5207 .L413: |
5208 2ac4 8091 0000 lds r24,Looping_Oben |
5209 2ac8 8823 tst r24 |
5210 2aca 99F0 breq .L414 |
5211 2acc EC2D mov r30,r12 |
5212 2ace FF27 clr r31 |
5213 2ad0 EE0F add r30,r30 |
5214 2ad2 FF1F adc r31,r31 |
5215 2ad4 E050 subi r30,lo8(-(PPM_in)) |
5216 2ad6 F040 sbci r31,hi8(-(PPM_in)) |
5217 2ad8 842F mov r24,r20 |
5218 2ada 9927 clr r25 |
5219 2adc 2091 0000 lds r18,EE_Parameter+61 |
5220 2ae0 821B sub r24,r18 |
5221 2ae2 9109 sbc r25,__zero_reg__ |
5222 2ae4 2081 ld r18,Z |
5223 2ae6 3181 ldd r19,Z+1 |
5224 2ae8 2817 cp r18,r24 |
5225 2aea 3907 cpc r19,r25 |
5226 2aec 14F4 brge .L414 |
5227 2aee 1092 0000 sts Looping_Oben,__zero_reg__ |
5228 .L414: |
5229 2af2 4091 0000 lds r20,EE_Parameter+1 |
5230 2af6 E42F mov r30,r20 |
5231 2af8 FF27 clr r31 |
5232 2afa EE0F add r30,r30 |
5233 2afc FF1F adc r31,r31 |
5234 2afe E050 subi r30,lo8(-(PPM_in)) |
5235 2b00 F040 sbci r31,hi8(-(PPM_in)) |
5236 2b02 5091 0000 lds r21,EE_Parameter+60 |
5237 2b06 852F mov r24,r21 |
5238 2b08 9927 clr r25 |
5239 2b0a 2227 clr r18 |
5240 2b0c 3327 clr r19 |
5241 2b0e 281B sub r18,r24 |
5242 2b10 390B sbc r19,r25 |
5243 2b12 8081 ld r24,Z |
5244 2b14 9181 ldd r25,Z+1 |
5245 2b16 8217 cp r24,r18 |
5246 2b18 9307 cpc r25,r19 |
5247 2b1a 44F4 brge .L417 |
5248 2b1c 8091 0000 lds r24,EE_Parameter+100 |
5249 2b20 81FF sbrs r24,1 |
5250 2b22 04C0 rjmp .L417 |
5251 2b24 81E0 ldi r24,lo8(1) |
5252 2b26 8093 0000 sts Looping_Unten,r24 |
5253 2b2a 16C0 rjmp .L418 |
5254 .L417: |
5255 2b2c 8091 0000 lds r24,Looping_Unten |
5256 2b30 8823 tst r24 |
5257 2b32 91F0 breq .L418 |
5258 2b34 E42F mov r30,r20 |
5259 2b36 FF27 clr r31 |
5260 2b38 EE0F add r30,r30 |
5261 2b3a FF1F adc r31,r31 |
5262 2b3c E050 subi r30,lo8(-(PPM_in)) |
5263 2b3e F040 sbci r31,hi8(-(PPM_in)) |
5264 2b40 8091 0000 lds r24,EE_Parameter+61 |
5265 2b44 9927 clr r25 |
5266 2b46 851B sub r24,r21 |
5267 2b48 9109 sbc r25,__zero_reg__ |
5268 2b4a 2081 ld r18,Z |
5269 2b4c 3181 ldd r19,Z+1 |
5270 2b4e 8217 cp r24,r18 |
5271 2b50 9307 cpc r25,r19 |
5272 2b52 14F4 brge .L418 |
5273 2b54 1092 0000 sts Looping_Unten,__zero_reg__ |
5274 .L418: |
5275 2b58 8091 0000 lds r24,Looping_Links |
5276 2b5c 8823 tst r24 |
5277 2b5e 19F4 brne .L422 |
5278 2b60 8091 0000 lds r24,Looping_Rechts |
5279 2b64 8111 cpse r24,__zero_reg__ |
5280 .L422: |
5281 2b66 81E0 ldi r24,lo8(1) |
5282 .L421: |
5283 2b68 8093 0000 sts Looping_Roll,r24 |
5284 2b6c 8091 0000 lds r24,Looping_Oben |
5285 2b70 8823 tst r24 |
5286 2b72 21F4 brne .L425 |
5287 2b74 8091 0000 lds r24,Looping_Unten |
5288 2b78 8823 tst r24 |
5289 2b7a 51F0 breq .L424 |
5290 .L425: |
5291 2b7c 81E0 ldi r24,lo8(1) |
5292 2b7e 8093 0000 sts Looping_Nick,r24 |
5293 2b82 1092 0000 sts Looping_Roll,__zero_reg__ |
5294 2b86 1092 0000 sts Looping_Links,__zero_reg__ |
5295 2b8a 1092 0000 sts Looping_Rechts,__zero_reg__ |
5296 2b8e 02C0 rjmp .L371 |
5297 .L424: |
5298 2b90 8093 0000 sts Looping_Nick,r24 |
5299 .L371: |
5300 2b94 8091 0000 lds r24,Looping_Roll |
5301 2b98 8823 tst r24 |
5302 2b9a 21F4 brne .L428 |
5303 2b9c 8091 0000 lds r24,Looping_Nick |
5304 2ba0 8823 tst r24 |
5305 2ba2 69F0 breq .L427 |
5306 .L428: |
5307 2ba4 8091 0000 lds r24,EE_Parameter+59 |
5308 2ba8 9927 clr r25 |
5309 2baa E981 ldd r30,Y+1 |
5310 2bac FA81 ldd r31,Y+2 |
5311 2bae 8E17 cp r24,r30 |
5312 2bb0 9F07 cpc r25,r31 |
5313 2bb2 14F4 brge .L429 |
5314 2bb4 9A83 std Y+2,r25 |
5315 2bb6 8983 std Y+1,r24 |
5316 .L429: |
5317 2bb8 81E0 ldi r24,lo8(1) |
5318 2bba 8093 0000 sts TrichterFlug,r24 |
5319 .L427: |
5320 2bbe 8091 0000 lds r24,FC_StatusFlags |
5321 2bc2 84FF sbrs r24,4 |
5322 2bc4 1AC0 rjmp .L430 |
5323 2bc6 1092 0000 sts (StickGier)+1,__zero_reg__ |
5324 2bca 1092 0000 sts StickGier,__zero_reg__ |
5325 2bce 1092 0000 sts (StickNick)+1,__zero_reg__ |
5326 2bd2 1092 0000 sts StickNick,__zero_reg__ |
5327 2bd6 1092 0000 sts (StickRoll)+1,__zero_reg__ |
5328 2bda 1092 0000 sts StickRoll,__zero_reg__ |
5329 2bde 9AE5 ldi r25,lo8(90) |
5330 2be0 9093 0000 sts GyroFaktor,r25 |
5331 2be4 88E7 ldi r24,lo8(120) |
5332 2be6 8093 0000 sts IntegralFaktor,r24 |
5333 2bea 9093 0000 sts GyroFaktorGier,r25 |
5334 2bee 8093 0000 sts IntegralFaktorGier,r24 |
5335 2bf2 1092 0000 sts Looping_Roll,__zero_reg__ |
5336 2bf6 1092 0000 sts Looping_Nick,__zero_reg__ |
5337 .L430: |
5338 2bfa 8091 0000 lds r24,MittelIntegralNick |
5339 2bfe 9091 0000 lds r25,(MittelIntegralNick)+1 |
5340 2c02 A091 0000 lds r26,(MittelIntegralNick)+2 |
5341 2c06 B091 0000 lds r27,(MittelIntegralNick)+3 |
5342 2c0a 2091 0000 lds r18,IntegralNick |
5343 2c0e 3091 0000 lds r19,(IntegralNick)+1 |
5344 2c12 4091 0000 lds r20,(IntegralNick)+2 |
5345 2c16 5091 0000 lds r21,(IntegralNick)+3 |
5346 2c1a 820F add r24,r18 |
5347 2c1c 931F adc r25,r19 |
5348 2c1e A41F adc r26,r20 |
5349 2c20 B51F adc r27,r21 |
5350 2c22 8093 0000 sts MittelIntegralNick,r24 |
5351 2c26 9093 0000 sts (MittelIntegralNick)+1,r25 |
5352 2c2a A093 0000 sts (MittelIntegralNick)+2,r26 |
5353 2c2e B093 0000 sts (MittelIntegralNick)+3,r27 |
5354 2c32 8091 0000 lds r24,MittelIntegralRoll |
5355 2c36 9091 0000 lds r25,(MittelIntegralRoll)+1 |
5356 2c3a A091 0000 lds r26,(MittelIntegralRoll)+2 |
5357 2c3e B091 0000 lds r27,(MittelIntegralRoll)+3 |
5358 2c42 2090 0000 lds r2,IntegralRoll |
5359 2c46 3090 0000 lds r3,(IntegralRoll)+1 |
5360 2c4a 4090 0000 lds r4,(IntegralRoll)+2 |
5361 2c4e 5090 0000 lds r5,(IntegralRoll)+3 |
5362 2c52 820D add r24,r2 |
5363 2c54 931D adc r25,r3 |
5364 2c56 A41D adc r26,r4 |
5365 2c58 B51D adc r27,r5 |
5366 2c5a 8093 0000 sts MittelIntegralRoll,r24 |
5367 2c5e 9093 0000 sts (MittelIntegralRoll)+1,r25 |
5368 2c62 A093 0000 sts (MittelIntegralRoll)+2,r26 |
5369 2c66 B093 0000 sts (MittelIntegralRoll)+3,r27 |
5370 2c6a 8091 0000 lds r24,MittelIntegralNick2 |
5371 2c6e 9091 0000 lds r25,(MittelIntegralNick2)+1 |
5372 2c72 A091 0000 lds r26,(MittelIntegralNick2)+2 |
5373 2c76 B091 0000 lds r27,(MittelIntegralNick2)+3 |
5374 2c7a E090 0000 lds r14,IntegralNick2 |
5375 2c7e F090 0000 lds r15,(IntegralNick2)+1 |
5376 2c82 0091 0000 lds r16,(IntegralNick2)+2 |
5377 2c86 1091 0000 lds r17,(IntegralNick2)+3 |
5378 2c8a EB82 std Y+3,r14 |
5379 2c8c FC82 std Y+4,r15 |
5380 2c8e 0D83 std Y+5,r16 |
5381 2c90 1E83 std Y+6,r17 |
5382 2c92 8E0D add r24,r14 |
5383 2c94 9F1D adc r25,r15 |
5384 2c96 A01F adc r26,r16 |
5385 2c98 B11F adc r27,r17 |
5386 2c9a 8093 0000 sts MittelIntegralNick2,r24 |
5387 2c9e 9093 0000 sts (MittelIntegralNick2)+1,r25 |
5388 2ca2 A093 0000 sts (MittelIntegralNick2)+2,r26 |
5389 2ca6 B093 0000 sts (MittelIntegralNick2)+3,r27 |
5390 2caa 8091 0000 lds r24,MittelIntegralRoll2 |
5391 2cae 9091 0000 lds r25,(MittelIntegralRoll2)+1 |
5392 2cb2 A091 0000 lds r26,(MittelIntegralRoll2)+2 |
5393 2cb6 B091 0000 lds r27,(MittelIntegralRoll2)+3 |
5394 2cba E090 0000 lds r14,IntegralRoll2 |
5395 2cbe F090 0000 lds r15,(IntegralRoll2)+1 |
5396 2cc2 0091 0000 lds r16,(IntegralRoll2)+2 |
5397 2cc6 1091 0000 lds r17,(IntegralRoll2)+3 |
5398 2cca EF82 std Y+7,r14 |
5399 2ccc F886 std Y+8,r15 |
5400 2cce 0987 std Y+9,r16 |
5401 2cd0 1A87 std Y+10,r17 |
5402 2cd2 8E0D add r24,r14 |
5403 2cd4 9F1D adc r25,r15 |
5404 2cd6 A01F adc r26,r16 |
5405 2cd8 B11F adc r27,r17 |
5406 2cda 8093 0000 sts MittelIntegralRoll2,r24 |
5407 2cde 9093 0000 sts (MittelIntegralRoll2)+1,r25 |
5408 2ce2 A093 0000 sts (MittelIntegralRoll2)+2,r26 |
5409 2ce6 B093 0000 sts (MittelIntegralRoll2)+3,r27 |
5410 2cea F090 0000 lds r15,Looping_Nick |
5411 2cee FB86 std Y+11,r15 |
5412 2cf0 FF20 tst r15 |
5413 2cf2 29F4 brne .L432 |
5414 2cf4 8091 0000 lds r24,Looping_Roll |
5415 2cf8 8823 tst r24 |
5416 2cfa 09F4 brne .+2 |
5417 2cfc 60C0 rjmp .L788 |
5418 .L432: |
5419 2cfe 1092 0000 sts IntegralAccNick,__zero_reg__ |
5420 2d02 1092 0000 sts (IntegralAccNick)+1,__zero_reg__ |
5421 2d06 1092 0000 sts (IntegralAccNick)+2,__zero_reg__ |
5422 2d0a 1092 0000 sts (IntegralAccNick)+3,__zero_reg__ |
5423 2d0e 1092 0000 sts IntegralAccRoll,__zero_reg__ |
5424 2d12 1092 0000 sts (IntegralAccRoll)+1,__zero_reg__ |
5425 2d16 1092 0000 sts (IntegralAccRoll)+2,__zero_reg__ |
5426 2d1a 1092 0000 sts (IntegralAccRoll)+3,__zero_reg__ |
5427 2d1e 1092 0000 sts MittelIntegralNick,__zero_reg__ |
5428 2d22 1092 0000 sts (MittelIntegralNick)+1,__zero_reg__ |
5429 2d26 1092 0000 sts (MittelIntegralNick)+2,__zero_reg__ |
5430 2d2a 1092 0000 sts (MittelIntegralNick)+3,__zero_reg__ |
5431 2d2e 1092 0000 sts MittelIntegralRoll,__zero_reg__ |
5432 2d32 1092 0000 sts (MittelIntegralRoll)+1,__zero_reg__ |
5433 2d36 1092 0000 sts (MittelIntegralRoll)+2,__zero_reg__ |
5434 2d3a 1092 0000 sts (MittelIntegralRoll)+3,__zero_reg__ |
5435 2d3e 1092 0000 sts MittelIntegralNick2,__zero_reg__ |
5436 2d42 1092 0000 sts (MittelIntegralNick2)+1,__zero_reg__ |
5437 2d46 1092 0000 sts (MittelIntegralNick2)+2,__zero_reg__ |
5438 2d4a 1092 0000 sts (MittelIntegralNick2)+3,__zero_reg__ |
5439 2d4e 1092 0000 sts MittelIntegralRoll2,__zero_reg__ |
5440 2d52 1092 0000 sts (MittelIntegralRoll2)+1,__zero_reg__ |
5441 2d56 1092 0000 sts (MittelIntegralRoll2)+2,__zero_reg__ |
5442 2d5a 1092 0000 sts (MittelIntegralRoll2)+3,__zero_reg__ |
5443 2d5e 8091 0000 lds r24,Mess_IntegralNick |
5444 2d62 9091 0000 lds r25,(Mess_IntegralNick)+1 |
5445 2d66 A091 0000 lds r26,(Mess_IntegralNick)+2 |
5446 2d6a B091 0000 lds r27,(Mess_IntegralNick)+3 |
5447 2d6e 8093 0000 sts Mess_IntegralNick2,r24 |
5448 2d72 9093 0000 sts (Mess_IntegralNick2)+1,r25 |
5449 2d76 A093 0000 sts (Mess_IntegralNick2)+2,r26 |
5450 2d7a B093 0000 sts (Mess_IntegralNick2)+3,r27 |
5451 2d7e 8091 0000 lds r24,Mess_IntegralRoll |
5452 2d82 9091 0000 lds r25,(Mess_IntegralRoll)+1 |
5453 2d86 A091 0000 lds r26,(Mess_IntegralRoll)+2 |
5454 2d8a B091 0000 lds r27,(Mess_IntegralRoll)+3 |
5455 2d8e 8093 0000 sts Mess_IntegralRoll2,r24 |
5456 2d92 9093 0000 sts (Mess_IntegralRoll2)+1,r25 |
5457 2d96 A093 0000 sts (Mess_IntegralRoll2)+2,r26 |
5458 2d9a B093 0000 sts (Mess_IntegralRoll2)+3,r27 |
5459 2d9e 1092 0000 sts (ZaehlMessungen)+1,__zero_reg__ |
5460 2da2 1092 0000 sts ZaehlMessungen,__zero_reg__ |
5461 2da6 1092 0000 sts (LageKorrekturNick)+1,__zero_reg__ |
5462 2daa 1092 0000 sts LageKorrekturNick,__zero_reg__ |
5463 2dae 1092 0000 sts (LageKorrekturRoll)+1,__zero_reg__ |
5464 2db2 1092 0000 sts LageKorrekturRoll,__zero_reg__ |
5465 2db6 0B85 ldd r16,Y+11 |
5466 2db8 0023 tst r16 |
5467 2dba 09F0 breq .+2 |
5468 2dbc F2C1 rjmp .L433 |
5469 .L788: |
5470 2dbe 8091 0000 lds r24,Looping_Roll |
5471 2dc2 8823 tst r24 |
5472 2dc4 09F0 breq .+2 |
5473 2dc6 EDC1 rjmp .L433 |
5474 2dc8 8091 0000 lds r24,Aktuell_az |
5475 2dcc 9091 0000 lds r25,(Aktuell_az)+1 |
5476 2dd0 8150 subi r24,lo8(513) |
5477 2dd2 9240 sbci r25,hi8(513) |
5478 2dd4 2CF4 brge .L434 |
5479 2dd6 8091 0000 lds r24,MotorenEin |
5480 2dda 8823 tst r24 |
5481 2ddc 09F4 brne .+2 |
5482 2dde E1C1 rjmp .L433 |
5483 .L434: |
5484 2de0 9090 0000 lds r9,FromNaviCtrl_Value |
5485 2de4 A090 0000 lds r10,EE_Parameter+28 |
5486 2de8 6091 0000 lds r22,Mittelwert_AccNick |
5487 2dec 7091 0000 lds r23,(Mittelwert_AccNick)+1 |
5488 2df0 788F std Y+24,r23 |
5489 2df2 6F8B std Y+23,r22 |
5490 2df4 8091 0000 lds r24,Mittelwert_AccRoll |
5491 2df8 9091 0000 lds r25,(Mittelwert_AccRoll)+1 |
5492 2dfc 9A8B std Y+18,r25 |
5493 2dfe 898B std Y+17,r24 |
5494 2e00 9FEF ldi r25,lo8(-1) |
5495 2e02 9916 cp r9,r25 |
5496 2e04 09F4 brne .+2 |
5497 2e06 D9C0 rjmp .L435 |
5498 2e08 BB24 clr r11 |
5499 2e0a CC24 clr r12 |
5500 2e0c DD24 clr r13 |
5501 2e0e CA01 movw r24,r20 |
5502 2e10 B901 movw r22,r18 |
5503 2e12 A601 movw r20,r12 |
5504 2e14 9501 movw r18,r10 |
5505 2e16 0E94 0000 call __divmodsi4 |
5506 2e1a 7901 movw r14,r18 |
5507 2e1c 8A01 movw r16,r20 |
5508 2e1e EF89 ldd r30,Y+23 |
5509 2e20 F88D ldd r31,Y+24 |
5510 2e22 CF01 movw r24,r30 |
5511 2e24 AA27 clr r26 |
5512 2e26 97FD sbrc r25,7 |
5513 2e28 A095 com r26 |
5514 2e2a BA2F mov r27,r26 |
5515 2e2c E81A sub r14,r24 |
5516 2e2e F90A sbc r15,r25 |
5517 2e30 0A0B sbc r16,r26 |
5518 2e32 1B0B sbc r17,r27 |
5519 2e34 C201 movw r24,r4 |
5520 2e36 B101 movw r22,r2 |
5521 2e38 A601 movw r20,r12 |
5522 2e3a 9501 movw r18,r10 |
5523 2e3c 0E94 0000 call __divmodsi4 |
5524 2e40 5901 movw r10,r18 |
5525 2e42 6A01 movw r12,r20 |
5526 2e44 2989 ldd r18,Y+17 |
5527 2e46 3A89 ldd r19,Y+18 |
5528 2e48 C901 movw r24,r18 |
5529 2e4a AA27 clr r26 |
5530 2e4c 97FD sbrc r25,7 |
5531 2e4e A095 com r26 |
5532 2e50 BA2F mov r27,r26 |
5533 2e52 A81A sub r10,r24 |
5534 2e54 B90A sbc r11,r25 |
5535 2e56 CA0A sbc r12,r26 |
5536 2e58 DB0A sbc r13,r27 |
5537 2e5a 292C mov r2,r9 |
5538 2e5c 3324 clr r3 |
5539 2e5e 27FC sbrc r2,7 |
5540 2e60 3094 com r3 |
5541 2e62 432C mov r4,r3 |
5542 2e64 532C mov r5,r3 |
5543 2e66 C801 movw r24,r16 |
5544 2e68 B701 movw r22,r14 |
5545 2e6a A201 movw r20,r4 |
5546 2e6c 9101 movw r18,r2 |
5547 2e6e 0E94 0000 call __mulsi3 |
5548 2e72 97FF sbrs r25,7 |
5549 2e74 04C0 rjmp .L436 |
5550 2e76 6150 subi r22,lo8(-(511)) |
5551 2e78 7E4F sbci r23,hi8(-(511)) |
5552 2e7a 8F4F sbci r24,hlo8(-(511)) |
5553 2e7c 9F4F sbci r25,hhi8(-(511)) |
5554 .L436: |
5555 2e7e 3B01 movw r6,r22 |
5556 2e80 4C01 movw r8,r24 |
5557 2e82 09E0 ldi r16,9 |
5558 2e84 9594 1: asr r9 |
5559 2e86 8794 ror r8 |
5560 2e88 7794 ror r7 |
5561 2e8a 6794 ror r6 |
5562 2e8c 0A95 dec r16 |
5563 2e8e D1F7 brne 1b |
5564 2e90 C601 movw r24,r12 |
5565 2e92 B501 movw r22,r10 |
5566 2e94 A201 movw r20,r4 |
5567 2e96 9101 movw r18,r2 |
5568 2e98 0E94 0000 call __mulsi3 |
5569 2e9c 97FF sbrs r25,7 |
5570 2e9e 04C0 rjmp .L437 |
5571 2ea0 6150 subi r22,lo8(-(511)) |
5572 2ea2 7E4F sbci r23,hi8(-(511)) |
5573 2ea4 8F4F sbci r24,hlo8(-(511)) |
5574 2ea6 9F4F sbci r25,hhi8(-(511)) |
5575 .L437: |
5576 2ea8 5B01 movw r10,r22 |
5577 2eaa 6C01 movw r12,r24 |
5578 2eac 19E0 ldi r17,9 |
5579 2eae D594 1: asr r13 |
5580 2eb0 C794 ror r12 |
5581 2eb2 B794 ror r11 |
5582 2eb4 A794 ror r10 |
5583 2eb6 1A95 dec r17 |
5584 2eb8 D1F7 brne 1b |
5585 2eba 8091 0000 lds r24,MaxStickNick |
5586 2ebe 9091 0000 lds r25,(MaxStickNick)+1 |
5587 2ec2 8134 cpi r24,65 |
5588 2ec4 9105 cpc r25,__zero_reg__ |
5589 2ec6 3CF4 brge .L439 |
5590 2ec8 8091 0000 lds r24,MaxStickRoll |
5591 2ecc 9091 0000 lds r25,(MaxStickRoll)+1 |
5592 2ed0 8134 cpi r24,65 |
5593 2ed2 9105 cpc r25,__zero_reg__ |
5594 2ed4 D4F0 brlt .L438 |
5595 .L439: |
5596 2ed6 D401 movw r26,r8 |
5597 2ed8 C301 movw r24,r6 |
5598 2eda 97FE sbrs r9,7 |
5599 2edc 03C0 rjmp .L440 |
5600 2ede 0196 adiw r24,1 |
5601 2ee0 A11D adc r26,__zero_reg__ |
5602 2ee2 B11D adc r27,__zero_reg__ |
5603 .L440: |
5604 2ee4 3C01 movw r6,r24 |
5605 2ee6 4D01 movw r8,r26 |
5606 2ee8 9594 asr r9 |
5607 2eea 8794 ror r8 |
5608 2eec 7794 ror r7 |
5609 2eee 6794 ror r6 |
5610 2ef0 D601 movw r26,r12 |
5611 2ef2 C501 movw r24,r10 |
5612 2ef4 D7FE sbrs r13,7 |
5613 2ef6 03C0 rjmp .L441 |
5614 2ef8 0196 adiw r24,1 |
5615 2efa A11D adc r26,__zero_reg__ |
5616 2efc B11D adc r27,__zero_reg__ |
5617 .L441: |
5618 2efe 5C01 movw r10,r24 |
5619 2f00 6D01 movw r12,r26 |
5620 2f02 D594 asr r13 |
5621 2f04 C794 ror r12 |
5622 2f06 B794 ror r11 |
5623 2f08 A794 ror r10 |
5624 .L438: |
5625 2f0a 8091 0000 lds r24,EE_Parameter+4 |
5626 2f0e E82F mov r30,r24 |
5627 2f10 FF27 clr r31 |
5628 2f12 EE0F add r30,r30 |
5629 2f14 FF1F adc r31,r31 |
5630 2f16 E050 subi r30,lo8(-(PPM_in)) |
5631 2f18 F040 sbci r31,hi8(-(PPM_in)) |
5632 2f1a 8081 ld r24,Z |
5633 2f1c 9181 ldd r25,Z+1 |
5634 2f1e 0190 ld __tmp_reg__,Z+ |
5635 2f20 F081 ld r31,Z |
5636 2f22 E02D mov r30,__tmp_reg__ |
5637 2f24 F7FF sbrs r31,7 |
5638 2f26 03C0 rjmp .L443 |
5639 2f28 F095 com r31 |
5640 2f2a E195 neg r30 |
5641 2f2c FF4F sbci r31,lo8(-1) |
5642 .L443: |
5643 2f2e 7A97 sbiw r30,26 |
5644 2f30 A4F0 brlt .L442 |
5645 2f32 C401 movw r24,r8 |
5646 2f34 B301 movw r22,r6 |
5647 2f36 23E0 ldi r18,lo8(3) |
5648 2f38 30E0 ldi r19,hi8(3) |
5649 2f3a 40E0 ldi r20,hlo8(3) |
5650 2f3c 50E0 ldi r21,hhi8(3) |
5651 2f3e 0E94 0000 call __divmodsi4 |
5652 2f42 3901 movw r6,r18 |
5653 2f44 4A01 movw r8,r20 |
5654 2f46 C601 movw r24,r12 |
5655 2f48 B501 movw r22,r10 |
5656 2f4a 23E0 ldi r18,lo8(3) |
5657 2f4c 30E0 ldi r19,hi8(3) |
5658 2f4e 40E0 ldi r20,hlo8(3) |
5659 2f50 50E0 ldi r21,hhi8(3) |
5660 2f52 0E94 0000 call __divmodsi4 |
5661 2f56 5901 movw r10,r18 |
5662 2f58 6A01 movw r12,r20 |
5663 .L442: |
5664 2f5a 8091 0000 lds r24,FromNaviCtrl_Value+2 |
5665 2f5e 282F mov r18,r24 |
5666 2f60 3327 clr r19 |
5667 2f62 27FD sbrc r18,7 |
5668 2f64 3095 com r19 |
5669 2f66 432F mov r20,r19 |
5670 2f68 532F mov r21,r19 |
5671 2f6a 2615 cp r18,r6 |
5672 2f6c 3705 cpc r19,r7 |
5673 2f6e 4805 cpc r20,r8 |
5674 2f70 5905 cpc r21,r9 |
5675 2f72 14F4 brge .L444 |
5676 2f74 3901 movw r6,r18 |
5677 2f76 4A01 movw r8,r20 |
5678 .L444: |
5679 2f78 9927 clr r25 |
5680 2f7a 87FD sbrc r24,7 |
5681 2f7c 9095 com r25 |
5682 2f7e 9095 com r25 |
5683 2f80 8195 neg r24 |
5684 2f82 9F4F sbci r25,lo8(-1) |
5685 2f84 AA27 clr r26 |
5686 2f86 97FD sbrc r25,7 |
5687 2f88 A095 com r26 |
5688 2f8a BA2F mov r27,r26 |
5689 2f8c 6816 cp r6,r24 |
5690 2f8e 7906 cpc r7,r25 |
5691 2f90 8A06 cpc r8,r26 |
5692 2f92 9B06 cpc r9,r27 |
5693 2f94 14F4 brge .L445 |
5694 2f96 3C01 movw r6,r24 |
5695 2f98 4D01 movw r8,r26 |
5696 .L445: |
5697 2f9a 2A15 cp r18,r10 |
5698 2f9c 3B05 cpc r19,r11 |
5699 2f9e 4C05 cpc r20,r12 |
5700 2fa0 5D05 cpc r21,r13 |
5701 2fa2 14F4 brge .L446 |
5702 2fa4 5901 movw r10,r18 |
5703 2fa6 6A01 movw r12,r20 |
5704 .L446: |
5705 2fa8 A816 cp r10,r24 |
5706 2faa B906 cpc r11,r25 |
5707 2fac CA06 cpc r12,r26 |
5708 2fae DB06 cpc r13,r27 |
5709 2fb0 0CF0 brlt .+2 |
5710 2fb2 CFC0 rjmp .L448 |
5711 2fb4 5C01 movw r10,r24 |
5712 2fb6 6D01 movw r12,r26 |
5713 2fb8 CCC0 rjmp .L448 |
5714 .L435: |
5715 2fba EA2C mov r14,r10 |
5716 2fbc FF24 clr r15 |
5717 2fbe 0027 clr r16 |
5718 2fc0 1127 clr r17 |
5719 2fc2 CA01 movw r24,r20 |
5720 2fc4 B901 movw r22,r18 |
5721 2fc6 A801 movw r20,r16 |
5722 2fc8 9701 movw r18,r14 |
5723 2fca 0E94 0000 call __divmodsi4 |
5724 2fce 3901 movw r6,r18 |
5725 2fd0 4A01 movw r8,r20 |
5726 2fd2 4F89 ldd r20,Y+23 |
5727 2fd4 588D ldd r21,Y+24 |
5728 2fd6 CA01 movw r24,r20 |
5729 2fd8 AA27 clr r26 |
5730 2fda 97FD sbrc r25,7 |
5731 2fdc A095 com r26 |
5732 2fde BA2F mov r27,r26 |
5733 2fe0 681A sub r6,r24 |
5734 2fe2 790A sbc r7,r25 |
5735 2fe4 8A0A sbc r8,r26 |
5736 2fe6 9B0A sbc r9,r27 |
5737 2fe8 C201 movw r24,r4 |
5738 2fea B101 movw r22,r2 |
5739 2fec A801 movw r20,r16 |
5740 2fee 9701 movw r18,r14 |
5741 2ff0 0E94 0000 call __divmodsi4 |
5742 2ff4 5901 movw r10,r18 |
5743 2ff6 6A01 movw r12,r20 |
5744 2ff8 6989 ldd r22,Y+17 |
5745 2ffa 7A89 ldd r23,Y+18 |
5746 2ffc CB01 movw r24,r22 |
5747 2ffe AA27 clr r26 |
5748 3000 97FD sbrc r25,7 |
5749 3002 A095 com r26 |
5750 3004 BA2F mov r27,r26 |
5751 3006 A81A sub r10,r24 |
5752 3008 B90A sbc r11,r25 |
5753 300a CA0A sbc r12,r26 |
5754 300c DB0A sbc r13,r27 |
5755 300e D401 movw r26,r8 |
5756 3010 C301 movw r24,r6 |
5757 3012 97FE sbrs r9,7 |
5758 3014 03C0 rjmp .L449 |
5759 3016 0F96 adiw r24,15 |
5760 3018 A11D adc r26,__zero_reg__ |
5761 301a B11D adc r27,__zero_reg__ |
5762 .L449: |
5763 301c 3C01 movw r6,r24 |
5764 301e 4D01 movw r8,r26 |
5765 3020 F4E0 ldi r31,4 |
5766 3022 9594 1: asr r9 |
5767 3024 8794 ror r8 |
5768 3026 7794 ror r7 |
5769 3028 6794 ror r6 |
5770 302a FA95 dec r31 |
5771 302c D1F7 brne 1b |
5772 302e D601 movw r26,r12 |
5773 3030 C501 movw r24,r10 |
5774 3032 D7FE sbrs r13,7 |
5775 3034 03C0 rjmp .L450 |
5776 3036 0F96 adiw r24,15 |
5777 3038 A11D adc r26,__zero_reg__ |
5778 303a B11D adc r27,__zero_reg__ |
5779 .L450: |
5780 303c 5C01 movw r10,r24 |
5781 303e 6D01 movw r12,r26 |
5782 3040 E4E0 ldi r30,4 |
5783 3042 D594 1: asr r13 |
5784 3044 C794 ror r12 |
5785 3046 B794 ror r11 |
5786 3048 A794 ror r10 |
5787 304a EA95 dec r30 |
5788 304c D1F7 brne 1b |
5789 304e 8091 0000 lds r24,MaxStickNick |
5790 3052 9091 0000 lds r25,(MaxStickNick)+1 |
5791 3056 8134 cpi r24,65 |
5792 3058 9105 cpc r25,__zero_reg__ |
5793 305a 3CF4 brge .L452 |
5794 305c 8091 0000 lds r24,MaxStickRoll |
5795 3060 9091 0000 lds r25,(MaxStickRoll)+1 |
5796 3064 8134 cpi r24,65 |
5797 3066 9105 cpc r25,__zero_reg__ |
5798 3068 A4F0 brlt .L451 |
5799 .L452: |
5800 306a C401 movw r24,r8 |
5801 306c B301 movw r22,r6 |
5802 306e 23E0 ldi r18,lo8(3) |
5803 3070 30E0 ldi r19,hi8(3) |
5804 3072 40E0 ldi r20,hlo8(3) |
5805 3074 50E0 ldi r21,hhi8(3) |
5806 3076 0E94 0000 call __divmodsi4 |
5807 307a 3901 movw r6,r18 |
5808 307c 4A01 movw r8,r20 |
5809 307e C601 movw r24,r12 |
5810 3080 B501 movw r22,r10 |
5811 3082 23E0 ldi r18,lo8(3) |
5812 3084 30E0 ldi r19,hi8(3) |
5813 3086 40E0 ldi r20,hlo8(3) |
5814 3088 50E0 ldi r21,hhi8(3) |
5815 308a 0E94 0000 call __divmodsi4 |
5816 308e 5901 movw r10,r18 |
5817 3090 6A01 movw r12,r20 |
5818 .L451: |
5819 3092 8091 0000 lds r24,EE_Parameter+4 |
5820 3096 E82F mov r30,r24 |
5821 3098 FF27 clr r31 |
5822 309a EE0F add r30,r30 |
5823 309c FF1F adc r31,r31 |
5824 309e E050 subi r30,lo8(-(PPM_in)) |
5825 30a0 F040 sbci r31,hi8(-(PPM_in)) |
5826 30a2 8081 ld r24,Z |
5827 30a4 9181 ldd r25,Z+1 |
5828 30a6 0190 ld __tmp_reg__,Z+ |
5829 30a8 F081 ld r31,Z |
5830 30aa E02D mov r30,__tmp_reg__ |
5831 30ac F7FF sbrs r31,7 |
5832 30ae 03C0 rjmp .L454 |
5833 30b0 F095 com r31 |
5834 30b2 E195 neg r30 |
5835 30b4 FF4F sbci r31,lo8(-1) |
5836 .L454: |
5837 30b6 7A97 sbiw r30,26 |
5838 30b8 A4F0 brlt .L453 |
5839 30ba C401 movw r24,r8 |
5840 30bc B301 movw r22,r6 |
5841 30be 23E0 ldi r18,lo8(3) |
5842 30c0 30E0 ldi r19,hi8(3) |
5843 30c2 40E0 ldi r20,hlo8(3) |
5844 30c4 50E0 ldi r21,hhi8(3) |
5845 30c6 0E94 0000 call __divmodsi4 |
5846 30ca 3901 movw r6,r18 |
5847 30cc 4A01 movw r8,r20 |
5848 30ce C601 movw r24,r12 |
5849 30d0 B501 movw r22,r10 |
5850 30d2 23E0 ldi r18,lo8(3) |
5851 30d4 30E0 ldi r19,hi8(3) |
5852 30d6 40E0 ldi r20,hlo8(3) |
5853 30d8 50E0 ldi r21,hhi8(3) |
5854 30da 0E94 0000 call __divmodsi4 |
5855 30de 5901 movw r10,r18 |
5856 30e0 6A01 movw r12,r20 |
5857 .L453: |
5858 30e2 71E2 ldi r23,lo8(33) |
5859 30e4 6716 cp r6,r23 |
5860 30e6 7104 cpc r7,__zero_reg__ |
5861 30e8 8104 cpc r8,__zero_reg__ |
5862 30ea 9104 cpc r9,__zero_reg__ |
5863 30ec 2CF0 brlt .L455 |
5864 30ee 70E2 ldi r23,lo8(32) |
5865 30f0 672E mov r6,r23 |
5866 30f2 712C mov r7,__zero_reg__ |
5867 30f4 812C mov r8,__zero_reg__ |
5868 30f6 912C mov r9,__zero_reg__ |
5869 .L455: |
5870 30f8 80EE ldi r24,lo8(-32) |
5871 30fa 6816 cp r6,r24 |
5872 30fc 8FEF ldi r24,hi8(-32) |
5873 30fe 7806 cpc r7,r24 |
5874 3100 8FEF ldi r24,hlo8(-32) |
5875 3102 8806 cpc r8,r24 |
5876 3104 8FEF ldi r24,hhi8(-32) |
5877 3106 9806 cpc r9,r24 |
5878 3108 44F4 brge .L456 |
5879 310a 60EE ldi r22,lo8(-32) |
5880 310c 662E mov r6,r22 |
5881 310e 6FEF ldi r22,hi8(-32) |
5882 3110 762E mov r7,r22 |
5883 3112 6FEF ldi r22,hlo8(-32) |
5884 3114 862E mov r8,r22 |
5885 3116 6FEF ldi r22,hhi8(-32) |
5886 3118 962E mov r9,r22 |
5887 .L456: |
5888 311a 91E2 ldi r25,lo8(33) |
5889 311c A916 cp r10,r25 |
5890 311e B104 cpc r11,__zero_reg__ |
5891 3120 C104 cpc r12,__zero_reg__ |
5892 3122 D104 cpc r13,__zero_reg__ |
5893 3124 2CF0 brlt .L457 |
5894 3126 50E2 ldi r21,lo8(32) |
5895 3128 A52E mov r10,r21 |
5896 312a B12C mov r11,__zero_reg__ |
5897 312c C12C mov r12,__zero_reg__ |
5898 312e D12C mov r13,__zero_reg__ |
5899 .L457: |
5900 3130 A0EE ldi r26,lo8(-32) |
5901 3132 AA16 cp r10,r26 |
5902 3134 AFEF ldi r26,hi8(-32) |
5903 3136 BA06 cpc r11,r26 |
5904 3138 AFEF ldi r26,hlo8(-32) |
5905 313a CA06 cpc r12,r26 |
5906 313c AFEF ldi r26,hhi8(-32) |
5907 313e DA06 cpc r13,r26 |
5908 3140 44F4 brge .L448 |
5909 3142 40EE ldi r20,lo8(-32) |
5910 3144 A42E mov r10,r20 |
5911 3146 4FEF ldi r20,hi8(-32) |
5912 3148 B42E mov r11,r20 |
5913 314a 4FEF ldi r20,hlo8(-32) |
5914 314c C42E mov r12,r20 |
5915 314e 4FEF ldi r20,hhi8(-32) |
5916 3150 D42E mov r13,r20 |
5917 .L448: |
5918 3152 8091 0000 lds r24,Mess_IntegralNick |
5919 3156 9091 0000 lds r25,(Mess_IntegralNick)+1 |
5920 315a A091 0000 lds r26,(Mess_IntegralNick)+2 |
5921 315e B091 0000 lds r27,(Mess_IntegralNick)+3 |
5922 3162 8619 sub r24,r6 |
5923 3164 9709 sbc r25,r7 |
5924 3166 A809 sbc r26,r8 |
5925 3168 B909 sbc r27,r9 |
5926 316a 8093 0000 sts Mess_IntegralNick,r24 |
5927 316e 9093 0000 sts (Mess_IntegralNick)+1,r25 |
5928 3172 A093 0000 sts (Mess_IntegralNick)+2,r26 |
5929 3176 B093 0000 sts (Mess_IntegralNick)+3,r27 |
5930 317a 8091 0000 lds r24,Mess_IntegralRoll |
5931 317e 9091 0000 lds r25,(Mess_IntegralRoll)+1 |
5932 3182 A091 0000 lds r26,(Mess_IntegralRoll)+2 |
5933 3186 B091 0000 lds r27,(Mess_IntegralRoll)+3 |
5934 318a 8A19 sub r24,r10 |
5935 318c 9B09 sbc r25,r11 |
5936 318e AC09 sbc r26,r12 |
5937 3190 BD09 sbc r27,r13 |
5938 3192 8093 0000 sts Mess_IntegralRoll,r24 |
5939 3196 9093 0000 sts (Mess_IntegralRoll)+1,r25 |
5940 319a A093 0000 sts (Mess_IntegralRoll)+2,r26 |
5941 319e B093 0000 sts (Mess_IntegralRoll)+3,r27 |
5942 .L433: |
5943 31a2 8091 0000 lds r24,ZaehlMessungen |
5944 31a6 9091 0000 lds r25,(ZaehlMessungen)+1 |
5945 31aa 8F3F cpi r24,255 |
5946 31ac 9105 cpc r25,__zero_reg__ |
5947 31ae 09F0 breq .+2 |
5948 31b0 08F4 brsh .+2 |
5949 31b2 C4C5 rjmp .L459 |
5950 31b4 BB85 ldd r27,Y+11 |
5951 31b6 BB23 tst r27 |
5952 31b8 09F0 breq .+2 |
5953 31ba 4EC5 rjmp .L460 |
5954 31bc 8091 0000 lds r24,Looping_Roll |
5955 31c0 8823 tst r24 |
5956 31c2 09F0 breq .+2 |
5957 31c4 49C5 rjmp .L460 |
5958 31c6 8091 0000 lds r24,TrichterFlug |
5959 31ca 8823 tst r24 |
5960 31cc 09F0 breq .+2 |
5961 31ce 44C5 rjmp .L460 |
5962 31d0 E091 0000 lds r30,EE_Parameter+68 |
5963 31d4 EC87 std Y+12,r30 |
5964 31d6 EE23 tst r30 |
5965 31d8 09F4 brne .+2 |
5966 31da 3EC5 rjmp .L460 |
5967 31dc 8091 0000 lds r24,MittelIntegralNick |
5968 31e0 9091 0000 lds r25,(MittelIntegralNick)+1 |
5969 31e4 A091 0000 lds r26,(MittelIntegralNick)+2 |
5970 31e8 B091 0000 lds r27,(MittelIntegralNick)+3 |
5971 31ec B7FF sbrs r27,7 |
5972 31ee 04C0 rjmp .L461 |
5973 31f0 8150 subi r24,lo8(-(255)) |
5974 31f2 9F4F sbci r25,hi8(-(255)) |
5975 31f4 AF4F sbci r26,hlo8(-(255)) |
5976 31f6 BF4F sbci r27,hhi8(-(255)) |
5977 .L461: |
5978 31f8 E92E mov r14,r25 |
5979 31fa FA2E mov r15,r26 |
5980 31fc 0B2F mov r16,r27 |
5981 31fe 1127 clr r17 |
5982 3200 07FD sbrc r16,7 |
5983 3202 1A95 dec r17 |
5984 3204 E092 0000 sts MittelIntegralNick,r14 |
5985 3208 F092 0000 sts (MittelIntegralNick)+1,r15 |
5986 320c 0093 0000 sts (MittelIntegralNick)+2,r16 |
5987 3210 1093 0000 sts (MittelIntegralNick)+3,r17 |
5988 3214 8091 0000 lds r24,MittelIntegralRoll |
5989 3218 9091 0000 lds r25,(MittelIntegralRoll)+1 |
5990 321c A091 0000 lds r26,(MittelIntegralRoll)+2 |
5991 3220 B091 0000 lds r27,(MittelIntegralRoll)+3 |
5992 3224 B7FF sbrs r27,7 |
5993 3226 04C0 rjmp .L462 |
5994 3228 8150 subi r24,lo8(-(255)) |
5995 322a 9F4F sbci r25,hi8(-(255)) |
5996 322c AF4F sbci r26,hlo8(-(255)) |
5997 322e BF4F sbci r27,hhi8(-(255)) |
5998 .L462: |
5999 3230 892F mov r24,r25 |
6000 3232 9A2F mov r25,r26 |
6001 3234 AB2F mov r26,r27 |
6002 3236 BB27 clr r27 |
6003 3238 A7FD sbrc r26,7 |
6004 323a BA95 dec r27 |
6005 323c 8D87 std Y+13,r24 |
6006 323e 9E87 std Y+14,r25 |
6007 3240 AF87 std Y+15,r26 |
6008 3242 B88B std Y+16,r27 |
6009 3244 8093 0000 sts MittelIntegralRoll,r24 |
6010 3248 9093 0000 sts (MittelIntegralRoll)+1,r25 |
6011 324c A093 0000 sts (MittelIntegralRoll)+2,r26 |
6012 3250 B093 0000 sts (MittelIntegralRoll)+3,r27 |
6013 3254 8091 0000 lds r24,EE_Parameter+28 |
6014 3258 A82E mov r10,r24 |
6015 325a BB24 clr r11 |
6016 325c CC24 clr r12 |
6017 325e DD24 clr r13 |
6018 3260 2091 0000 lds r18,IntegralAccNick |
6019 3264 3091 0000 lds r19,(IntegralAccNick)+1 |
6020 3268 4091 0000 lds r20,(IntegralAccNick)+2 |
6021 326c 5091 0000 lds r21,(IntegralAccNick)+3 |
6022 3270 C601 movw r24,r12 |
6023 3272 B501 movw r22,r10 |
6024 3274 0E94 0000 call __mulsi3 |
6025 3278 97FF sbrs r25,7 |
6026 327a 04C0 rjmp .L463 |
6027 327c 6150 subi r22,lo8(-(255)) |
6028 327e 7F4F sbci r23,hi8(-(255)) |
6029 3280 8F4F sbci r24,hlo8(-(255)) |
6030 3282 9F4F sbci r25,hhi8(-(255)) |
6031 .L463: |
6032 3284 672E mov r6,r23 |
6033 3286 782E mov r7,r24 |
6034 3288 892E mov r8,r25 |
6035 328a 9924 clr r9 |
6036 328c 87FC sbrc r8,7 |
6037 328e 9A94 dec r9 |
6038 3290 6092 0000 sts IntegralAccNick,r6 |
6039 3294 7092 0000 sts (IntegralAccNick)+1,r7 |
6040 3298 8092 0000 sts (IntegralAccNick)+2,r8 |
6041 329c 9092 0000 sts (IntegralAccNick)+3,r9 |
6042 32a0 2091 0000 lds r18,IntegralAccRoll |
6043 32a4 3091 0000 lds r19,(IntegralAccRoll)+1 |
6044 32a8 4091 0000 lds r20,(IntegralAccRoll)+2 |
6045 32ac 5091 0000 lds r21,(IntegralAccRoll)+3 |
6046 32b0 C601 movw r24,r12 |
6047 32b2 B501 movw r22,r10 |
6048 32b4 0E94 0000 call __mulsi3 |
6049 32b8 97FF sbrs r25,7 |
6050 32ba 04C0 rjmp .L464 |
6051 32bc 6150 subi r22,lo8(-(255)) |
6052 32be 7F4F sbci r23,hi8(-(255)) |
6053 32c0 8F4F sbci r24,hlo8(-(255)) |
6054 32c2 9F4F sbci r25,hhi8(-(255)) |
6055 .L464: |
6056 32c4 272E mov r2,r23 |
6057 32c6 382E mov r3,r24 |
6058 32c8 492E mov r4,r25 |
6059 32ca 5524 clr r5 |
6060 32cc 47FC sbrc r4,7 |
6061 32ce 5A94 dec r5 |
6062 32d0 2092 0000 sts IntegralAccRoll,r2 |
6063 32d4 3092 0000 sts (IntegralAccRoll)+1,r3 |
6064 32d8 4092 0000 sts (IntegralAccRoll)+2,r4 |
6065 32dc 5092 0000 sts (IntegralAccRoll)+3,r5 |
6066 32e0 8091 0000 lds r24,IntegralAccZ |
6067 32e4 9091 0000 lds r25,(IntegralAccZ)+1 |
6068 32e8 A091 0000 lds r26,(IntegralAccZ)+2 |
6069 32ec B091 0000 lds r27,(IntegralAccZ)+3 |
6070 32f0 B7FF sbrs r27,7 |
6071 32f2 04C0 rjmp .L465 |
6072 32f4 8150 subi r24,lo8(-(255)) |
6073 32f6 9F4F sbci r25,hi8(-(255)) |
6074 32f8 AF4F sbci r26,hlo8(-(255)) |
6075 32fa BF4F sbci r27,hhi8(-(255)) |
6076 .L465: |
6077 32fc 892F mov r24,r25 |
6078 32fe 9A2F mov r25,r26 |
6079 3300 AB2F mov r26,r27 |
6080 3302 BB27 clr r27 |
6081 3304 A7FD sbrc r26,7 |
6082 3306 BA95 dec r27 |
6083 3308 8093 0000 sts IntegralAccZ,r24 |
6084 330c 9093 0000 sts (IntegralAccZ)+1,r25 |
6085 3310 A093 0000 sts (IntegralAccZ)+2,r26 |
6086 3314 B093 0000 sts (IntegralAccZ)+3,r27 |
6087 3318 D801 movw r26,r16 |
6088 331a C701 movw r24,r14 |
6089 331c 8619 sub r24,r6 |
6090 331e 9709 sbc r25,r7 |
6091 3320 A809 sbc r26,r8 |
6092 3322 B909 sbc r27,r9 |
6093 3324 8093 0000 sts IntegralFehlerNick.3,r24 |
6094 3328 9093 0000 sts (IntegralFehlerNick.3)+1,r25 |
6095 332c A093 0000 sts (IntegralFehlerNick.3)+2,r26 |
6096 3330 B093 0000 sts (IntegralFehlerNick.3)+3,r27 |
6097 3334 2091 0000 lds r18,EE_Parameter+67 |
6098 3338 E22E mov r14,r18 |
6099 333a FF24 clr r15 |
6100 333c 0027 clr r16 |
6101 333e 1127 clr r17 |
6102 3340 BC01 movw r22,r24 |
6103 3342 CD01 movw r24,r26 |
6104 3344 A801 movw r20,r16 |
6105 3346 9701 movw r18,r14 |
6106 3348 0E94 0000 call __divmodsi4 |
6107 334c 5901 movw r10,r18 |
6108 334e 6A01 movw r12,r20 |
6109 3350 2093 0000 sts ausgleichNick.11,r18 |
6110 3354 3093 0000 sts (ausgleichNick.11)+1,r19 |
6111 3358 4093 0000 sts (ausgleichNick.11)+2,r20 |
6112 335c 5093 0000 sts (ausgleichNick.11)+3,r21 |
6113 3360 8D85 ldd r24,Y+13 |
6114 3362 9E85 ldd r25,Y+14 |
6115 3364 AF85 ldd r26,Y+15 |
6116 3366 B889 ldd r27,Y+16 |
6117 3368 8219 sub r24,r2 |
6118 336a 9309 sbc r25,r3 |
6119 336c A409 sbc r26,r4 |
6120 336e B509 sbc r27,r5 |
6121 3370 8093 0000 sts IntegralFehlerRoll.4,r24 |
6122 3374 9093 0000 sts (IntegralFehlerRoll.4)+1,r25 |
6123 3378 A093 0000 sts (IntegralFehlerRoll.4)+2,r26 |
6124 337c B093 0000 sts (IntegralFehlerRoll.4)+3,r27 |
6125 3380 BC01 movw r22,r24 |
6126 3382 CD01 movw r24,r26 |
6127 3384 A801 movw r20,r16 |
6128 3386 9701 movw r18,r14 |
6129 3388 0E94 0000 call __divmodsi4 |
6130 338c 2093 0000 sts ausgleichRoll.12,r18 |
6131 3390 3093 0000 sts (ausgleichRoll.12)+1,r19 |
6132 3394 4093 0000 sts (ausgleichRoll.12)+2,r20 |
6133 3398 5093 0000 sts (ausgleichRoll.12)+3,r21 |
6134 339c D601 movw r26,r12 |
6135 339e C501 movw r24,r10 |
6136 33a0 D7FE sbrs r13,7 |
6137 33a2 04C0 rjmp .L466 |
6138 33a4 8150 subi r24,lo8(-(255)) |
6139 33a6 9F4F sbci r25,hi8(-(255)) |
6140 33a8 AF4F sbci r26,hlo8(-(255)) |
6141 33aa BF4F sbci r27,hhi8(-(255)) |
6142 .L466: |
6143 33ac 892F mov r24,r25 |
6144 33ae 9A2F mov r25,r26 |
6145 33b0 AB2F mov r26,r27 |
6146 33b2 BB27 clr r27 |
6147 33b4 A7FD sbrc r26,7 |
6148 33b6 BA95 dec r27 |
6149 33b8 9093 0000 sts (LageKorrekturNick)+1,r25 |
6150 33bc 8093 0000 sts LageKorrekturNick,r24 |
6151 33c0 57FF sbrs r21,7 |
6152 33c2 04C0 rjmp .L467 |
6153 33c4 2150 subi r18,lo8(-(255)) |
6154 33c6 3F4F sbci r19,hi8(-(255)) |
6155 33c8 4F4F sbci r20,hlo8(-(255)) |
6156 33ca 5F4F sbci r21,hhi8(-(255)) |
6157 .L467: |
6158 33cc BB27 clr r27 |
6159 33ce 57FD sbrc r21,7 |
6160 33d0 BA95 dec r27 |
6161 33d2 A52F mov r26,r21 |
6162 33d4 942F mov r25,r20 |
6163 33d6 832F mov r24,r19 |
6164 33d8 9093 0000 sts (LageKorrekturRoll)+1,r25 |
6165 33dc 8093 0000 sts LageKorrekturRoll,r24 |
6166 33e0 8091 0000 lds r24,MaxStickNick |
6167 33e4 9091 0000 lds r25,(MaxStickNick)+1 |
6168 33e8 8134 cpi r24,65 |
6169 33ea 9105 cpc r25,__zero_reg__ |
6170 33ec DCF4 brge .L469 |
6171 33ee 8091 0000 lds r24,MaxStickRoll |
6172 33f2 9091 0000 lds r25,(MaxStickRoll)+1 |
6173 33f6 8134 cpi r24,65 |
6174 33f8 9105 cpc r25,__zero_reg__ |
6175 33fa A4F4 brge .L469 |
6176 33fc 8091 0000 lds r24,EE_Parameter+4 |
6177 3400 E82F mov r30,r24 |
6178 3402 FF27 clr r31 |
6179 3404 EE0F add r30,r30 |
6180 3406 FF1F adc r31,r31 |
6181 3408 E050 subi r30,lo8(-(PPM_in)) |
6182 340a F040 sbci r31,hi8(-(PPM_in)) |
6183 340c 8081 ld r24,Z |
6184 340e 9181 ldd r25,Z+1 |
6185 3410 0190 ld __tmp_reg__,Z+ |
6186 3412 F081 ld r31,Z |
6187 3414 E02D mov r30,__tmp_reg__ |
6188 3416 F7FF sbrs r31,7 |
6189 3418 03C0 rjmp .L470 |
6190 341a F095 com r31 |
6191 341c E195 neg r30 |
6192 341e FF4F sbci r31,lo8(-1) |
6193 .L470: |
6194 3420 7A97 sbiw r30,26 |
6195 3422 E4F0 brlt .L468 |
6196 .L469: |
6197 3424 8091 0000 lds r24,FromNaviCtrl_Value |
6198 3428 8F3F cpi r24,lo8(-1) |
6199 342a C1F4 brne .L468 |
6200 342c 8091 0000 lds r24,LageKorrekturNick |
6201 3430 9091 0000 lds r25,(LageKorrekturNick)+1 |
6202 3434 97FD sbrc r25,7 |
6203 3436 0196 adiw r24,1 |
6204 .L471: |
6205 3438 9595 asr r25 |
6206 343a 8795 ror r24 |
6207 343c 9093 0000 sts (LageKorrekturNick)+1,r25 |
6208 3440 8093 0000 sts LageKorrekturNick,r24 |
6209 3444 8091 0000 lds r24,LageKorrekturRoll |
6210 3448 9091 0000 lds r25,(LageKorrekturRoll)+1 |
6211 344c 97FD sbrc r25,7 |
6212 344e 0196 adiw r24,1 |
6213 .L472: |
6214 3450 9595 asr r25 |
6215 3452 8795 ror r24 |
6216 3454 9093 0000 sts (LageKorrekturRoll)+1,r25 |
6217 3458 8093 0000 sts LageKorrekturRoll,r24 |
6218 .L468: |
6219 345c 8091 0000 lds r24,MittelIntegralNick2 |
6220 3460 9091 0000 lds r25,(MittelIntegralNick2)+1 |
6221 3464 A091 0000 lds r26,(MittelIntegralNick2)+2 |
6222 3468 B091 0000 lds r27,(MittelIntegralNick2)+3 |
6223 346c B7FF sbrs r27,7 |
6224 346e 04C0 rjmp .L473 |
6225 3470 8150 subi r24,lo8(-(255)) |
6226 3472 9F4F sbci r25,hi8(-(255)) |
6227 3474 AF4F sbci r26,hlo8(-(255)) |
6228 3476 BF4F sbci r27,hhi8(-(255)) |
6229 .L473: |
6230 3478 892F mov r24,r25 |
6231 347a 9A2F mov r25,r26 |
6232 347c AB2F mov r26,r27 |
6233 347e BB27 clr r27 |
6234 3480 A7FD sbrc r26,7 |
6235 3482 BA95 dec r27 |
6236 3484 8093 0000 sts MittelIntegralNick2,r24 |
6237 3488 9093 0000 sts (MittelIntegralNick2)+1,r25 |
6238 348c A093 0000 sts (MittelIntegralNick2)+2,r26 |
6239 3490 B093 0000 sts (MittelIntegralNick2)+3,r27 |
6240 3494 8091 0000 lds r24,MittelIntegralRoll2 |
6241 3498 9091 0000 lds r25,(MittelIntegralRoll2)+1 |
6242 349c A091 0000 lds r26,(MittelIntegralRoll2)+2 |
6243 34a0 B091 0000 lds r27,(MittelIntegralRoll2)+3 |
6244 34a4 B7FF sbrs r27,7 |
6245 34a6 04C0 rjmp .L474 |
6246 34a8 8150 subi r24,lo8(-(255)) |
6247 34aa 9F4F sbci r25,hi8(-(255)) |
6248 34ac AF4F sbci r26,hlo8(-(255)) |
6249 34ae BF4F sbci r27,hhi8(-(255)) |
6250 .L474: |
6251 34b0 892F mov r24,r25 |
6252 34b2 9A2F mov r25,r26 |
6253 34b4 AB2F mov r26,r27 |
6254 34b6 BB27 clr r27 |
6255 34b8 A7FD sbrc r26,7 |
6256 34ba BA95 dec r27 |
6257 34bc 8093 0000 sts MittelIntegralRoll2,r24 |
6258 34c0 9093 0000 sts (MittelIntegralRoll2)+1,r25 |
6259 34c4 A093 0000 sts (MittelIntegralRoll2)+2,r26 |
6260 34c8 B093 0000 sts (MittelIntegralRoll2)+3,r27 |
6261 34cc 8091 0000 lds r24,IntegralNick |
6262 34d0 9091 0000 lds r25,(IntegralNick)+1 |
6263 34d4 A091 0000 lds r26,(IntegralNick)+2 |
6264 34d8 B091 0000 lds r27,(IntegralNick)+3 |
6265 34dc 2B81 ldd r18,Y+3 |
6266 34de 3C81 ldd r19,Y+4 |
6267 34e0 4D81 ldd r20,Y+5 |
6268 34e2 5E81 ldd r21,Y+6 |
6269 34e4 281B sub r18,r24 |
6270 34e6 390B sbc r19,r25 |
6271 34e8 4A0B sbc r20,r26 |
6272 34ea 5B0B sbc r21,r27 |
6273 34ec 2093 0000 sts tmp_long.1,r18 |
6274 34f0 3093 0000 sts (tmp_long.1)+1,r19 |
6275 34f4 4093 0000 sts (tmp_long.1)+2,r20 |
6276 34f8 5093 0000 sts (tmp_long.1)+3,r21 |
6277 34fc 8091 0000 lds r24,IntegralRoll |
6278 3500 9091 0000 lds r25,(IntegralRoll)+1 |
6279 3504 A091 0000 lds r26,(IntegralRoll)+2 |
6280 3508 B091 0000 lds r27,(IntegralRoll)+3 |
6281 350c EF80 ldd r14,Y+7 |
6282 350e F884 ldd r15,Y+8 |
6283 3510 0985 ldd r16,Y+9 |
6284 3512 1A85 ldd r17,Y+10 |
6285 3514 E81A sub r14,r24 |
6286 3516 F90A sbc r15,r25 |
6287 3518 0A0B sbc r16,r26 |
6288 351a 1B0B sbc r17,r27 |
6289 351c E092 0000 sts tmp_long2.2,r14 |
6290 3520 F092 0000 sts (tmp_long2.2)+1,r15 |
6291 3524 0093 0000 sts (tmp_long2.2)+2,r16 |
6292 3528 1093 0000 sts (tmp_long2.2)+3,r17 |
6293 352c 2093 0000 sts IntegralFehlerNick.3,r18 |
6294 3530 3093 0000 sts (IntegralFehlerNick.3)+1,r19 |
6295 3534 4093 0000 sts (IntegralFehlerNick.3)+2,r20 |
6296 3538 5093 0000 sts (IntegralFehlerNick.3)+3,r21 |
6297 353c E092 0000 sts IntegralFehlerRoll.4,r14 |
6298 3540 F092 0000 sts (IntegralFehlerRoll.4)+1,r15 |
6299 3544 0093 0000 sts (IntegralFehlerRoll.4)+2,r16 |
6300 3548 1093 0000 sts (IntegralFehlerRoll.4)+3,r17 |
6301 354c 8091 0000 lds r24,Mess_IntegralNick2 |
6302 3550 9091 0000 lds r25,(Mess_IntegralNick2)+1 |
6303 3554 A091 0000 lds r26,(Mess_IntegralNick2)+2 |
6304 3558 B091 0000 lds r27,(Mess_IntegralNick2)+3 |
6305 355c 821B sub r24,r18 |
6306 355e 930B sbc r25,r19 |
6307 3560 A40B sbc r26,r20 |
6308 3562 B50B sbc r27,r21 |
6309 3564 8093 0000 sts Mess_IntegralNick2,r24 |
6310 3568 9093 0000 sts (Mess_IntegralNick2)+1,r25 |
6311 356c A093 0000 sts (Mess_IntegralNick2)+2,r26 |
6312 3570 B093 0000 sts (Mess_IntegralNick2)+3,r27 |
6313 3574 8091 0000 lds r24,Mess_IntegralRoll2 |
6314 3578 9091 0000 lds r25,(Mess_IntegralRoll2)+1 |
6315 357c A091 0000 lds r26,(Mess_IntegralRoll2)+2 |
6316 3580 B091 0000 lds r27,(Mess_IntegralRoll2)+3 |
6317 3584 8E19 sub r24,r14 |
6318 3586 9F09 sbc r25,r15 |
6319 3588 A00B sbc r26,r16 |
6320 358a B10B sbc r27,r17 |
6321 358c 8093 0000 sts Mess_IntegralRoll2,r24 |
6322 3590 9093 0000 sts (Mess_IntegralRoll2)+1,r25 |
6323 3594 A093 0000 sts (Mess_IntegralRoll2)+2,r26 |
6324 3598 B093 0000 sts (Mess_IntegralRoll2)+3,r27 |
6325 359c FC85 ldd r31,Y+12 |
6326 359e FF23 tst r31 |
6327 35a0 E1F0 breq .L475 |
6328 35a2 2091 0000 lds r18,GierGyroFehler |
6329 35a6 3091 0000 lds r19,(GierGyroFehler)+1 |
6330 35aa 2138 cpi r18,129 |
6331 35ac 3105 cpc r19,__zero_reg__ |
6332 35ae 4CF0 brlt .L476 |
6333 35b0 8091 0000 lds r24,AdNeutralGier |
6334 35b4 9091 0000 lds r25,(AdNeutralGier)+1 |
6335 35b8 0196 adiw r24,1 |
6336 35ba 9093 0000 sts (AdNeutralGier)+1,r25 |
6337 35be 8093 0000 sts AdNeutralGier,r24 |
6338 .L476: |
6339 35c2 2058 subi r18,lo8(-128) |
6340 35c4 3F4F sbci r19,hi8(-128) |
6341 35c6 4CF4 brge .L475 |
6342 35c8 8091 0000 lds r24,AdNeutralGier |
6343 35cc 9091 0000 lds r25,(AdNeutralGier)+1 |
6344 35d0 0197 sbiw r24,1 |
6345 35d2 9093 0000 sts (AdNeutralGier)+1,r25 |
6346 35d6 8093 0000 sts AdNeutralGier,r24 |
6347 .L475: |
6348 35da 1092 0000 sts (GierGyroFehler)+1,__zero_reg__ |
6349 35de 1092 0000 sts GierGyroFehler,__zero_reg__ |
6350 35e2 81E0 ldi r24,lo8(1) |
6351 35e4 90E0 ldi r25,hi8(1) |
6352 35e6 9093 0000 sts (cnt.15)+1,r25 |
6353 35ea 8093 0000 sts cnt.15,r24 |
6354 35ee E090 0000 lds r14,IntegralFehlerNick.3 |
6355 35f2 F090 0000 lds r15,(IntegralFehlerNick.3)+1 |
6356 35f6 0091 0000 lds r16,(IntegralFehlerNick.3)+2 |
6357 35fa 1091 0000 lds r17,(IntegralFehlerNick.3)+3 |
6358 35fe D801 movw r26,r16 |
6359 3600 C701 movw r24,r14 |
6360 3602 17FF sbrs r17,7 |
6361 3604 07C0 rjmp .L479 |
6362 3606 8827 clr r24 |
6363 3608 9927 clr r25 |
6364 360a DC01 movw r26,r24 |
6365 360c 8E19 sub r24,r14 |
6366 360e 9F09 sbc r25,r15 |
6367 3610 A00B sbc r26,r16 |
6368 3612 B10B sbc r27,r17 |
6369 .L479: |
6370 3614 8150 subi r24,lo8(513) |
6371 3616 9240 sbci r25,hi8(513) |
6372 3618 A040 sbci r26,hlo8(513) |
6373 361a B040 sbci r27,hhi8(513) |
6374 361c 34F0 brlt .L478 |
6375 361e 84E0 ldi r24,lo8(4) |
6376 3620 90E0 ldi r25,hi8(4) |
6377 3622 9093 0000 sts (cnt.15)+1,r25 |
6378 3626 8093 0000 sts cnt.15,r24 |
6379 .L478: |
6380 362a 8091 0000 lds r24,MittelIntegralNick_Alt.20 |
6381 362e 9091 0000 lds r25,(MittelIntegralNick_Alt.20)+1 |
6382 3632 A091 0000 lds r26,(MittelIntegralNick_Alt.20)+2 |
6383 3636 B091 0000 lds r27,(MittelIntegralNick_Alt.20)+3 |
6384 363a 2091 0000 lds r18,MittelIntegralNick |
6385 363e 3091 0000 lds r19,(MittelIntegralNick)+1 |
6386 3642 4091 0000 lds r20,(MittelIntegralNick)+2 |
6387 3646 5091 0000 lds r21,(MittelIntegralNick)+3 |
6388 364a 821B sub r24,r18 |
6389 364c 930B sbc r25,r19 |
6390 364e A40B sbc r26,r20 |
6391 3650 B50B sbc r27,r21 |
6392 3652 815E subi r24,lo8(-(19999)) |
6393 3654 914B sbci r25,hi8(-(19999)) |
6394 3656 AF4F sbci r26,hlo8(-(19999)) |
6395 3658 BF4F sbci r27,hhi8(-(19999)) |
6396 365a 8F53 subi r24,lo8(39999) |
6397 365c 9C49 sbci r25,hi8(39999) |
6398 365e A040 sbci r26,hlo8(39999) |
6399 3660 B040 sbci r27,hhi8(39999) |
6400 3662 28F0 brlo .L481 |
6401 3664 8091 0000 lds r24,FromNaviCtrl_Value+1 |
6402 3668 8931 cpi r24,lo8(25) |
6403 366a 0CF4 brge .+2 |
6404 366c FFC0 rjmp .L480 |
6405 .L481: |
6406 366e 41E0 ldi r20,lo8(4097) |
6407 3670 E416 cp r14,r20 |
6408 3672 40E1 ldi r20,hi8(4097) |
6409 3674 F406 cpc r15,r20 |
6410 3676 40E0 ldi r20,hlo8(4097) |
6411 3678 0407 cpc r16,r20 |
6412 367a 40E0 ldi r20,hhi8(4097) |
6413 367c 1407 cpc r17,r20 |
6414 367e 0CF4 brge .+2 |
6415 3680 73C0 rjmp .L482 |
6416 3682 8091 0000 lds r24,last_n_p.16 |
6417 3686 8823 tst r24 |
6418 3688 09F4 brne .+2 |
6419 368a 6AC0 rjmp .L483 |
6420 368c D801 movw r26,r16 |
6421 368e C701 movw r24,r14 |
6422 3690 17FF sbrs r17,7 |
6423 3692 07C0 rjmp .L484 |
6424 3694 8827 clr r24 |
6425 3696 9927 clr r25 |
6426 3698 DC01 movw r26,r24 |
6427 369a 8E19 sub r24,r14 |
6428 369c 9F09 sbc r25,r15 |
6429 369e A00B sbc r26,r16 |
6430 36a0 B10B sbc r27,r17 |
6431 .L484: |
6432 36a2 9C01 movw r18,r24 |
6433 36a4 AD01 movw r20,r26 |
6434 36a6 B7FF sbrs r27,7 |
6435 36a8 04C0 rjmp .L485 |
6436 36aa 2150 subi r18,lo8(-(511)) |
6437 36ac 3E4F sbci r19,hi8(-(511)) |
6438 36ae 4F4F sbci r20,hlo8(-(511)) |
6439 36b0 5F4F sbci r21,hhi8(-(511)) |
6440 .L485: |
6441 36b2 F9E0 ldi r31,9 |
6442 36b4 5595 1: asr r21 |
6443 36b6 4795 ror r20 |
6444 36b8 3795 ror r19 |
6445 36ba 2795 ror r18 |
6446 36bc FA95 dec r31 |
6447 36be D1F7 brne 1b |
6448 36c0 8091 0000 lds r24,cnt.15 |
6449 36c4 9091 0000 lds r25,(cnt.15)+1 |
6450 36c8 820F add r24,r18 |
6451 36ca 931F adc r25,r19 |
6452 36cc 9093 0000 sts (cnt.15)+1,r25 |
6453 36d0 8093 0000 sts cnt.15,r24 |
6454 36d4 D801 movw r26,r16 |
6455 36d6 C701 movw r24,r14 |
6456 36d8 17FF sbrs r17,7 |
6457 36da 03C0 rjmp .L486 |
6458 36dc 0796 adiw r24,7 |
6459 36de A11D adc r26,__zero_reg__ |
6460 36e0 B11D adc r27,__zero_reg__ |
6461 .L486: |
6462 36e2 E3E0 ldi r30,3 |
6463 36e4 B595 1: asr r27 |
6464 36e6 A795 ror r26 |
6465 36e8 9795 ror r25 |
6466 36ea 8795 ror r24 |
6467 36ec EA95 dec r30 |
6468 36ee D1F7 brne 1b |
6469 36f0 8093 0000 sts ausgleichNick.11,r24 |
6470 36f4 9093 0000 sts (ausgleichNick.11)+1,r25 |
6471 36f8 A093 0000 sts (ausgleichNick.11)+2,r26 |
6472 36fc B093 0000 sts (ausgleichNick.11)+3,r27 |
6473 3700 8958 subi r24,lo8(5001) |
6474 3702 9341 sbci r25,hi8(5001) |
6475 3704 A040 sbci r26,hlo8(5001) |
6476 3706 B040 sbci r27,hhi8(5001) |
6477 3708 64F0 brlt .L487 |
6478 370a 88E8 ldi r24,lo8(5000) |
6479 370c 93E1 ldi r25,hi8(5000) |
6480 370e A0E0 ldi r26,hlo8(5000) |
6481 3710 B0E0 ldi r27,hhi8(5000) |
6482 3712 8093 0000 sts ausgleichNick.11,r24 |
6483 3716 9093 0000 sts (ausgleichNick.11)+1,r25 |
6484 371a A093 0000 sts (ausgleichNick.11)+2,r26 |
6485 371e B093 0000 sts (ausgleichNick.11)+3,r27 |
6486 .L487: |
6487 3722 2091 0000 lds r18,ausgleichNick.11 |
6488 3726 3091 0000 lds r19,(ausgleichNick.11)+1 |
6489 372a 4091 0000 lds r20,(ausgleichNick.11)+2 |
6490 372e 5091 0000 lds r21,(ausgleichNick.11)+3 |
6491 3732 57FF sbrs r21,7 |
6492 3734 04C0 rjmp .L488 |
6493 3736 2150 subi r18,lo8(-(255)) |
6494 3738 3F4F sbci r19,hi8(-(255)) |
6495 373a 4F4F sbci r20,hlo8(-(255)) |
6496 373c 5F4F sbci r21,hhi8(-(255)) |
6497 .L488: |
6498 373e 232F mov r18,r19 |
6499 3740 342F mov r19,r20 |
6500 3742 452F mov r20,r21 |
6501 3744 5527 clr r21 |
6502 3746 47FD sbrc r20,7 |
6503 3748 5A95 dec r21 |
6504 374a 8091 0000 lds r24,LageKorrekturNick |
6505 374e 9091 0000 lds r25,(LageKorrekturNick)+1 |
6506 3752 820F add r24,r18 |
6507 3754 931F adc r25,r19 |
6508 3756 9093 0000 sts (LageKorrekturNick)+1,r25 |
6509 375a 8093 0000 sts LageKorrekturNick,r24 |
6510 375e 06C0 rjmp .L490 |
6511 .L483: |
6512 3760 81E0 ldi r24,lo8(1) |
6513 3762 8093 0000 sts last_n_p.16,r24 |
6514 3766 02C0 rjmp .L490 |
6515 .L482: |
6516 3768 1092 0000 sts last_n_p.16,__zero_reg__ |
6517 .L490: |
6518 376c 60E0 ldi r22,lo8(-4096) |
6519 376e E616 cp r14,r22 |
6520 3770 60EF ldi r22,hi8(-4096) |
6521 3772 F606 cpc r15,r22 |
6522 3774 6FEF ldi r22,hlo8(-4096) |
6523 3776 0607 cpc r16,r22 |
6524 3778 6FEF ldi r22,hhi8(-4096) |
6525 377a 1607 cpc r17,r22 |
6526 377c 0CF0 brlt .+2 |
6527 377e 73C0 rjmp .L491 |
6528 3780 8091 0000 lds r24,last_n_n.17 |
6529 3784 8823 tst r24 |
6530 3786 09F4 brne .+2 |
6531 3788 6AC0 rjmp .L492 |
6532 378a D801 movw r26,r16 |
6533 378c C701 movw r24,r14 |
6534 378e 17FF sbrs r17,7 |
6535 3790 07C0 rjmp .L493 |
6536 3792 8827 clr r24 |
6537 3794 9927 clr r25 |
6538 3796 DC01 movw r26,r24 |
6539 3798 8E19 sub r24,r14 |
6540 379a 9F09 sbc r25,r15 |
6541 379c A00B sbc r26,r16 |
6542 379e B10B sbc r27,r17 |
6543 .L493: |
6544 37a0 9C01 movw r18,r24 |
6545 37a2 AD01 movw r20,r26 |
6546 37a4 B7FF sbrs r27,7 |
6547 37a6 04C0 rjmp .L494 |
6548 37a8 2150 subi r18,lo8(-(511)) |
6549 37aa 3E4F sbci r19,hi8(-(511)) |
6550 37ac 4F4F sbci r20,hlo8(-(511)) |
6551 37ae 5F4F sbci r21,hhi8(-(511)) |
6552 .L494: |
6553 37b0 69E0 ldi r22,9 |
6554 37b2 5595 1: asr r21 |
6555 37b4 4795 ror r20 |
6556 37b6 3795 ror r19 |
6557 37b8 2795 ror r18 |
6558 37ba 6A95 dec r22 |
6559 37bc D1F7 brne 1b |
6560 37be 8091 0000 lds r24,cnt.15 |
6561 37c2 9091 0000 lds r25,(cnt.15)+1 |
6562 37c6 820F add r24,r18 |
6563 37c8 931F adc r25,r19 |
6564 37ca 9093 0000 sts (cnt.15)+1,r25 |
6565 37ce 8093 0000 sts cnt.15,r24 |
6566 37d2 D801 movw r26,r16 |
6567 37d4 C701 movw r24,r14 |
6568 37d6 17FF sbrs r17,7 |
6569 37d8 03C0 rjmp .L495 |
6570 37da 0796 adiw r24,7 |
6571 37dc A11D adc r26,__zero_reg__ |
6572 37de B11D adc r27,__zero_reg__ |
6573 .L495: |
6574 37e0 23E0 ldi r18,3 |
6575 37e2 B595 1: asr r27 |
6576 37e4 A795 ror r26 |
6577 37e6 9795 ror r25 |
6578 37e8 8795 ror r24 |
6579 37ea 2A95 dec r18 |
6580 37ec D1F7 brne 1b |
6581 37ee 8093 0000 sts ausgleichNick.11,r24 |
6582 37f2 9093 0000 sts (ausgleichNick.11)+1,r25 |
6583 37f6 A093 0000 sts (ausgleichNick.11)+2,r26 |
6584 37fa B093 0000 sts (ausgleichNick.11)+3,r27 |
6585 37fe 8857 subi r24,lo8(-5000) |
6586 3800 9C4E sbci r25,hi8(-5000) |
6587 3802 AF4F sbci r26,hlo8(-5000) |
6588 3804 BF4F sbci r27,hhi8(-5000) |
6589 3806 64F4 brge .L496 |
6590 3808 88E7 ldi r24,lo8(-5000) |
6591 380a 9CEE ldi r25,hi8(-5000) |
6592 380c AFEF ldi r26,hlo8(-5000) |
6593 380e BFEF ldi r27,hhi8(-5000) |
6594 3810 8093 0000 sts ausgleichNick.11,r24 |
6595 3814 9093 0000 sts (ausgleichNick.11)+1,r25 |
6596 3818 A093 0000 sts (ausgleichNick.11)+2,r26 |
6597 381c B093 0000 sts (ausgleichNick.11)+3,r27 |
6598 .L496: |
6599 3820 2091 0000 lds r18,ausgleichNick.11 |
6600 3824 3091 0000 lds r19,(ausgleichNick.11)+1 |
6601 3828 4091 0000 lds r20,(ausgleichNick.11)+2 |
6602 382c 5091 0000 lds r21,(ausgleichNick.11)+3 |
6603 3830 57FF sbrs r21,7 |
6604 3832 04C0 rjmp .L497 |
6605 3834 2150 subi r18,lo8(-(255)) |
6606 3836 3F4F sbci r19,hi8(-(255)) |
6607 3838 4F4F sbci r20,hlo8(-(255)) |
6608 383a 5F4F sbci r21,hhi8(-(255)) |
6609 .L497: |
6610 383c 232F mov r18,r19 |
6611 383e 342F mov r19,r20 |
6612 3840 452F mov r20,r21 |
6613 3842 5527 clr r21 |
6614 3844 47FD sbrc r20,7 |
6615 3846 5A95 dec r21 |
6616 3848 8091 0000 lds r24,LageKorrekturNick |
6617 384c 9091 0000 lds r25,(LageKorrekturNick)+1 |
6618 3850 820F add r24,r18 |
6619 3852 931F adc r25,r19 |
6620 3854 9093 0000 sts (LageKorrekturNick)+1,r25 |
6621 3858 8093 0000 sts LageKorrekturNick,r24 |
6622 385c 11C0 rjmp .L500 |
6623 .L492: |
6624 385e 81E0 ldi r24,lo8(1) |
6625 3860 8093 0000 sts last_n_n.17,r24 |
6626 3864 0DC0 rjmp .L500 |
6627 .L491: |
6628 3866 1092 0000 sts last_n_n.17,__zero_reg__ |
6629 386a 0AC0 rjmp .L500 |
6630 .L480: |
6631 386c 1092 0000 sts (cnt.15)+1,__zero_reg__ |
6632 3870 1092 0000 sts cnt.15,__zero_reg__ |
6633 3874 88EE ldi r24,lo8(1000) |
6634 3876 93E0 ldi r25,hi8(1000) |
6635 3878 9093 0000 sts (KompassSignalSchlecht)+1,r25 |
6636 387c 8093 0000 sts KompassSignalSchlecht,r24 |
6637 .L500: |
6638 3880 8C85 ldd r24,Y+12 |
6639 3882 282F mov r18,r24 |
6640 3884 3327 clr r19 |
6641 3886 8091 0000 lds r24,cnt.15 |
6642 388a 9091 0000 lds r25,(cnt.15)+1 |
6643 388e 2817 cp r18,r24 |
6644 3890 3907 cpc r19,r25 |
6645 3892 24F4 brge .L501 |
6646 3894 3093 0000 sts (cnt.15)+1,r19 |
6647 3898 2093 0000 sts cnt.15,r18 |
6648 .L501: |
6649 389c 1091 0000 lds r17,FromNaviCtrl_Value+1 |
6650 38a0 1123 tst r17 |
6651 38a2 79F0 breq .L502 |
6652 38a4 212F mov r18,r17 |
6653 38a6 3327 clr r19 |
6654 38a8 27FD sbrc r18,7 |
6655 38aa 3095 com r19 |
6656 38ac 8091 0000 lds r24,cnt.15 |
6657 38b0 9091 0000 lds r25,(cnt.15)+1 |
6658 38b4 2817 cp r18,r24 |
6659 38b6 3907 cpc r19,r25 |
6660 38b8 24F4 brge .L502 |
6661 38ba 3093 0000 sts (cnt.15)+1,r19 |
6662 38be 2093 0000 sts cnt.15,r18 |
6663 .L502: |
6664 38c2 4091 0000 lds r20,IntegralFehlerNick.3 |
6665 38c6 5091 0000 lds r21,(IntegralFehlerNick.3)+1 |
6666 38ca 6091 0000 lds r22,(IntegralFehlerNick.3)+2 |
6667 38ce 7091 0000 lds r23,(IntegralFehlerNick.3)+3 |
6668 38d2 4138 cpi r20,lo8(129) |
6669 38d4 5105 cpc r21,__zero_reg__ |
6670 38d6 6105 cpc r22,__zero_reg__ |
6671 38d8 7105 cpc r23,__zero_reg__ |
6672 38da 74F0 brlt .L504 |
6673 38dc 8091 0000 lds r24,AdNeutralNick |
6674 38e0 9091 0000 lds r25,(AdNeutralNick)+1 |
6675 38e4 2091 0000 lds r18,cnt.15 |
6676 38e8 3091 0000 lds r19,(cnt.15)+1 |
6677 38ec 820F add r24,r18 |
6678 38ee 931F adc r25,r19 |
6679 38f0 9093 0000 sts (AdNeutralNick)+1,r25 |
6680 38f4 8093 0000 sts AdNeutralNick,r24 |
6681 .L504: |
6682 38f8 4058 subi r20,lo8(-128) |
6683 38fa 5F4F sbci r21,hi8(-128) |
6684 38fc 6F4F sbci r22,hlo8(-128) |
6685 38fe 7F4F sbci r23,hhi8(-128) |
6686 3900 74F4 brge .L505 |
6687 3902 8091 0000 lds r24,AdNeutralNick |
6688 3906 9091 0000 lds r25,(AdNeutralNick)+1 |
6689 390a 2091 0000 lds r18,cnt.15 |
6690 390e 3091 0000 lds r19,(cnt.15)+1 |
6691 3912 821B sub r24,r18 |
6692 3914 930B sbc r25,r19 |
6693 3916 9093 0000 sts (AdNeutralNick)+1,r25 |
6694 391a 8093 0000 sts AdNeutralNick,r24 |
6695 .L505: |
6696 391e 81E0 ldi r24,lo8(1) |
6697 3920 90E0 ldi r25,hi8(1) |
6698 3922 9093 0000 sts (cnt.15)+1,r25 |
6699 3926 8093 0000 sts cnt.15,r24 |
6700 392a C090 0000 lds r12,IntegralFehlerRoll.4 |
6701 392e D090 0000 lds r13,(IntegralFehlerRoll.4)+1 |
6702 3932 E090 0000 lds r14,(IntegralFehlerRoll.4)+2 |
6703 3936 F090 0000 lds r15,(IntegralFehlerRoll.4)+3 |
6704 393a D701 movw r26,r14 |
6705 393c C601 movw r24,r12 |
6706 393e F7FE sbrs r15,7 |
6707 3940 07C0 rjmp .L507 |
6708 3942 8827 clr r24 |
6709 3944 9927 clr r25 |
6710 3946 DC01 movw r26,r24 |
6711 3948 8C19 sub r24,r12 |
6712 394a 9D09 sbc r25,r13 |
6713 394c AE09 sbc r26,r14 |
6714 394e BF09 sbc r27,r15 |
6715 .L507: |
6716 3950 8150 subi r24,lo8(513) |
6717 3952 9240 sbci r25,hi8(513) |
6718 3954 A040 sbci r26,hlo8(513) |
6719 3956 B040 sbci r27,hhi8(513) |
6720 3958 34F0 brlt .L506 |
6721 395a 84E0 ldi r24,lo8(4) |
6722 395c 90E0 ldi r25,hi8(4) |
6723 395e 9093 0000 sts (cnt.15)+1,r25 |
6724 3962 8093 0000 sts cnt.15,r24 |
6725 .L506: |
6726 3966 8091 0000 lds r24,MittelIntegralRoll_Alt.21 |
6727 396a 9091 0000 lds r25,(MittelIntegralRoll_Alt.21)+1 |
6728 396e A091 0000 lds r26,(MittelIntegralRoll_Alt.21)+2 |
6729 3972 B091 0000 lds r27,(MittelIntegralRoll_Alt.21)+3 |
6730 3976 2091 0000 lds r18,MittelIntegralRoll |
6731 397a 3091 0000 lds r19,(MittelIntegralRoll)+1 |
6732 397e 4091 0000 lds r20,(MittelIntegralRoll)+2 |
6733 3982 5091 0000 lds r21,(MittelIntegralRoll)+3 |
6734 3986 821B sub r24,r18 |
6735 3988 930B sbc r25,r19 |
6736 398a A40B sbc r26,r20 |
6737 398c B50B sbc r27,r21 |
6738 398e 815E subi r24,lo8(-(19999)) |
6739 3990 914B sbci r25,hi8(-(19999)) |
6740 3992 AF4F sbci r26,hlo8(-(19999)) |
6741 3994 BF4F sbci r27,hhi8(-(19999)) |
6742 3996 8F53 subi r24,lo8(39999) |
6743 3998 9C49 sbci r25,hi8(39999) |
6744 399a A040 sbci r26,hlo8(39999) |
6745 399c B040 sbci r27,hhi8(39999) |
6746 399e 18F0 brlo .L509 |
6747 39a0 1931 cpi r17,lo8(25) |
6748 39a2 0CF4 brge .+2 |
6749 39a4 FFC0 rjmp .L508 |
6750 .L509: |
6751 39a6 01E0 ldi r16,lo8(4097) |
6752 39a8 C016 cp r12,r16 |
6753 39aa 00E1 ldi r16,hi8(4097) |
6754 39ac D006 cpc r13,r16 |
6755 39ae 00E0 ldi r16,hlo8(4097) |
6756 39b0 E006 cpc r14,r16 |
6757 39b2 00E0 ldi r16,hhi8(4097) |
6758 39b4 F006 cpc r15,r16 |
6759 39b6 0CF4 brge .+2 |
6760 39b8 73C0 rjmp .L510 |
6761 39ba 8091 0000 lds r24,last_r_p.18 |
6762 39be 8823 tst r24 |
6763 39c0 09F4 brne .+2 |
6764 39c2 6AC0 rjmp .L511 |
6765 39c4 D701 movw r26,r14 |
6766 39c6 C601 movw r24,r12 |
6767 39c8 F7FE sbrs r15,7 |
6768 39ca 07C0 rjmp .L512 |
6769 39cc 8827 clr r24 |
6770 39ce 9927 clr r25 |
6771 39d0 DC01 movw r26,r24 |
6772 39d2 8C19 sub r24,r12 |
6773 39d4 9D09 sbc r25,r13 |
6774 39d6 AE09 sbc r26,r14 |
6775 39d8 BF09 sbc r27,r15 |
6776 .L512: |
6777 39da 9C01 movw r18,r24 |
6778 39dc AD01 movw r20,r26 |
6779 39de B7FF sbrs r27,7 |
6780 39e0 04C0 rjmp .L513 |
6781 39e2 2150 subi r18,lo8(-(511)) |
6782 39e4 3E4F sbci r19,hi8(-(511)) |
6783 39e6 4F4F sbci r20,hlo8(-(511)) |
6784 39e8 5F4F sbci r21,hhi8(-(511)) |
6785 .L513: |
6786 39ea 09E0 ldi r16,9 |
6787 39ec 5595 1: asr r21 |
6788 39ee 4795 ror r20 |
6789 39f0 3795 ror r19 |
6790 39f2 2795 ror r18 |
6791 39f4 0A95 dec r16 |
6792 39f6 D1F7 brne 1b |
6793 39f8 8091 0000 lds r24,cnt.15 |
6794 39fc 9091 0000 lds r25,(cnt.15)+1 |
6795 3a00 820F add r24,r18 |
6796 3a02 931F adc r25,r19 |
6797 3a04 9093 0000 sts (cnt.15)+1,r25 |
6798 3a08 8093 0000 sts cnt.15,r24 |
6799 3a0c D701 movw r26,r14 |
6800 3a0e C601 movw r24,r12 |
6801 3a10 F7FE sbrs r15,7 |
6802 3a12 03C0 rjmp .L514 |
6803 3a14 0796 adiw r24,7 |
6804 3a16 A11D adc r26,__zero_reg__ |
6805 3a18 B11D adc r27,__zero_reg__ |
6806 .L514: |
6807 3a1a 13E0 ldi r17,3 |
6808 3a1c B595 1: asr r27 |
6809 3a1e A795 ror r26 |
6810 3a20 9795 ror r25 |
6811 3a22 8795 ror r24 |
6812 3a24 1A95 dec r17 |
6813 3a26 D1F7 brne 1b |
6814 3a28 8093 0000 sts ausgleichRoll.12,r24 |
6815 3a2c 9093 0000 sts (ausgleichRoll.12)+1,r25 |
6816 3a30 A093 0000 sts (ausgleichRoll.12)+2,r26 |
6817 3a34 B093 0000 sts (ausgleichRoll.12)+3,r27 |
6818 3a38 8958 subi r24,lo8(5001) |
6819 3a3a 9341 sbci r25,hi8(5001) |
6820 3a3c A040 sbci r26,hlo8(5001) |
6821 3a3e B040 sbci r27,hhi8(5001) |
6822 3a40 64F0 brlt .L515 |
6823 3a42 88E8 ldi r24,lo8(5000) |
6824 3a44 93E1 ldi r25,hi8(5000) |
6825 3a46 A0E0 ldi r26,hlo8(5000) |
6826 3a48 B0E0 ldi r27,hhi8(5000) |
6827 3a4a 8093 0000 sts ausgleichRoll.12,r24 |
6828 3a4e 9093 0000 sts (ausgleichRoll.12)+1,r25 |
6829 3a52 A093 0000 sts (ausgleichRoll.12)+2,r26 |
6830 3a56 B093 0000 sts (ausgleichRoll.12)+3,r27 |
6831 .L515: |
6832 3a5a 2091 0000 lds r18,ausgleichRoll.12 |
6833 3a5e 3091 0000 lds r19,(ausgleichRoll.12)+1 |
6834 3a62 4091 0000 lds r20,(ausgleichRoll.12)+2 |
6835 3a66 5091 0000 lds r21,(ausgleichRoll.12)+3 |
6836 3a6a 57FF sbrs r21,7 |
6837 3a6c 04C0 rjmp .L516 |
6838 3a6e 2150 subi r18,lo8(-(255)) |
6839 3a70 3F4F sbci r19,hi8(-(255)) |
6840 3a72 4F4F sbci r20,hlo8(-(255)) |
6841 3a74 5F4F sbci r21,hhi8(-(255)) |
6842 .L516: |
6843 3a76 232F mov r18,r19 |
6844 3a78 342F mov r19,r20 |
6845 3a7a 452F mov r20,r21 |
6846 3a7c 5527 clr r21 |
6847 3a7e 47FD sbrc r20,7 |
6848 3a80 5A95 dec r21 |
6849 3a82 8091 0000 lds r24,LageKorrekturRoll |
6850 3a86 9091 0000 lds r25,(LageKorrekturRoll)+1 |
6851 3a8a 820F add r24,r18 |
6852 3a8c 931F adc r25,r19 |
6853 3a8e 9093 0000 sts (LageKorrekturRoll)+1,r25 |
6854 3a92 8093 0000 sts LageKorrekturRoll,r24 |
6855 3a96 06C0 rjmp .L518 |
6856 .L511: |
6857 3a98 81E0 ldi r24,lo8(1) |
6858 3a9a 8093 0000 sts last_r_p.18,r24 |
6859 3a9e 02C0 rjmp .L518 |
6860 .L510: |
6861 3aa0 1092 0000 sts last_r_p.18,__zero_reg__ |
6862 .L518: |
6863 3aa4 20E0 ldi r18,lo8(-4096) |
6864 3aa6 C216 cp r12,r18 |
6865 3aa8 20EF ldi r18,hi8(-4096) |
6866 3aaa D206 cpc r13,r18 |
6867 3aac 2FEF ldi r18,hlo8(-4096) |
6868 3aae E206 cpc r14,r18 |
6869 3ab0 2FEF ldi r18,hhi8(-4096) |
6870 3ab2 F206 cpc r15,r18 |
6871 3ab4 0CF0 brlt .+2 |
6872 3ab6 73C0 rjmp .L519 |
6873 3ab8 8091 0000 lds r24,last_r_n.19 |
6874 3abc 8823 tst r24 |
6875 3abe 09F4 brne .+2 |
6876 3ac0 6AC0 rjmp .L520 |
6877 3ac2 D701 movw r26,r14 |
6878 3ac4 C601 movw r24,r12 |
6879 3ac6 F7FE sbrs r15,7 |
6880 3ac8 07C0 rjmp .L521 |
6881 3aca 8827 clr r24 |
6882 3acc 9927 clr r25 |
6883 3ace DC01 movw r26,r24 |
6884 3ad0 8C19 sub r24,r12 |
6885 3ad2 9D09 sbc r25,r13 |
6886 3ad4 AE09 sbc r26,r14 |
6887 3ad6 BF09 sbc r27,r15 |
6888 .L521: |
6889 3ad8 9C01 movw r18,r24 |
6890 3ada AD01 movw r20,r26 |
6891 3adc B7FF sbrs r27,7 |
6892 3ade 04C0 rjmp .L522 |
6893 3ae0 2150 subi r18,lo8(-(511)) |
6894 3ae2 3E4F sbci r19,hi8(-(511)) |
6895 3ae4 4F4F sbci r20,hlo8(-(511)) |
6896 3ae6 5F4F sbci r21,hhi8(-(511)) |
6897 .L522: |
6898 3ae8 E9E0 ldi r30,9 |
6899 3aea 5595 1: asr r21 |
6900 3aec 4795 ror r20 |
6901 3aee 3795 ror r19 |
6902 3af0 2795 ror r18 |
6903 3af2 EA95 dec r30 |
6904 3af4 D1F7 brne 1b |
6905 3af6 8091 0000 lds r24,cnt.15 |
6906 3afa 9091 0000 lds r25,(cnt.15)+1 |
6907 3afe 820F add r24,r18 |
6908 3b00 931F adc r25,r19 |
6909 3b02 9093 0000 sts (cnt.15)+1,r25 |
6910 3b06 8093 0000 sts cnt.15,r24 |
6911 3b0a D701 movw r26,r14 |
6912 3b0c C601 movw r24,r12 |
6913 3b0e F7FE sbrs r15,7 |
6914 3b10 03C0 rjmp .L523 |
6915 3b12 0796 adiw r24,7 |
6916 3b14 A11D adc r26,__zero_reg__ |
6917 3b16 B11D adc r27,__zero_reg__ |
6918 .L523: |
6919 3b18 73E0 ldi r23,3 |
6920 3b1a B595 1: asr r27 |
6921 3b1c A795 ror r26 |
6922 3b1e 9795 ror r25 |
6923 3b20 8795 ror r24 |
6924 3b22 7A95 dec r23 |
6925 3b24 D1F7 brne 1b |
6926 3b26 8093 0000 sts ausgleichRoll.12,r24 |
6927 3b2a 9093 0000 sts (ausgleichRoll.12)+1,r25 |
6928 3b2e A093 0000 sts (ausgleichRoll.12)+2,r26 |
6929 3b32 B093 0000 sts (ausgleichRoll.12)+3,r27 |
6930 3b36 8857 subi r24,lo8(-5000) |
6931 3b38 9C4E sbci r25,hi8(-5000) |
6932 3b3a AF4F sbci r26,hlo8(-5000) |
6933 3b3c BF4F sbci r27,hhi8(-5000) |
6934 3b3e 64F4 brge .L524 |
6935 3b40 88E7 ldi r24,lo8(-5000) |
6936 3b42 9CEE ldi r25,hi8(-5000) |
6937 3b44 AFEF ldi r26,hlo8(-5000) |
6938 3b46 BFEF ldi r27,hhi8(-5000) |
6939 3b48 8093 0000 sts ausgleichRoll.12,r24 |
6940 3b4c 9093 0000 sts (ausgleichRoll.12)+1,r25 |
6941 3b50 A093 0000 sts (ausgleichRoll.12)+2,r26 |
6942 3b54 B093 0000 sts (ausgleichRoll.12)+3,r27 |
6943 .L524: |
6944 3b58 2091 0000 lds r18,ausgleichRoll.12 |
6945 3b5c 3091 0000 lds r19,(ausgleichRoll.12)+1 |
6946 3b60 4091 0000 lds r20,(ausgleichRoll.12)+2 |
6947 3b64 5091 0000 lds r21,(ausgleichRoll.12)+3 |
6948 3b68 57FF sbrs r21,7 |
6949 3b6a 04C0 rjmp .L525 |
6950 3b6c 2150 subi r18,lo8(-(255)) |
6951 3b6e 3F4F sbci r19,hi8(-(255)) |
6952 3b70 4F4F sbci r20,hlo8(-(255)) |
6953 3b72 5F4F sbci r21,hhi8(-(255)) |
6954 .L525: |
6955 3b74 232F mov r18,r19 |
6956 3b76 342F mov r19,r20 |
6957 3b78 452F mov r20,r21 |
6958 3b7a 5527 clr r21 |
6959 3b7c 47FD sbrc r20,7 |
6960 3b7e 5A95 dec r21 |
6961 3b80 8091 0000 lds r24,LageKorrekturRoll |
6962 3b84 9091 0000 lds r25,(LageKorrekturRoll)+1 |
6963 3b88 820F add r24,r18 |
6964 3b8a 931F adc r25,r19 |
6965 3b8c 9093 0000 sts (LageKorrekturRoll)+1,r25 |
6966 3b90 8093 0000 sts LageKorrekturRoll,r24 |
6967 3b94 11C0 rjmp .L528 |
6968 .L520: |
6969 3b96 81E0 ldi r24,lo8(1) |
6970 3b98 8093 0000 sts last_r_n.19,r24 |
6971 3b9c 0DC0 rjmp .L528 |
6972 .L519: |
6973 3b9e 1092 0000 sts last_r_n.19,__zero_reg__ |
6974 3ba2 0AC0 rjmp .L528 |
6975 .L508: |
6976 3ba4 1092 0000 sts (cnt.15)+1,__zero_reg__ |
6977 3ba8 1092 0000 sts cnt.15,__zero_reg__ |
6978 3bac 88EE ldi r24,lo8(1000) |
6979 3bae 93E0 ldi r25,hi8(1000) |
6980 3bb0 9093 0000 sts (KompassSignalSchlecht)+1,r25 |
6981 3bb4 8093 0000 sts KompassSignalSchlecht,r24 |
6982 .L528: |
6983 3bb8 4C85 ldd r20,Y+12 |
6984 3bba 242F mov r18,r20 |
6985 3bbc 3327 clr r19 |
6986 3bbe 8091 0000 lds r24,cnt.15 |
6987 3bc2 9091 0000 lds r25,(cnt.15)+1 |
6988 3bc6 2817 cp r18,r24 |
6989 3bc8 3907 cpc r19,r25 |
6990 3bca 24F4 brge .L529 |
6991 3bcc 3093 0000 sts (cnt.15)+1,r19 |
6992 3bd0 2093 0000 sts cnt.15,r18 |
6993 .L529: |
6994 3bd4 8091 0000 lds r24,FromNaviCtrl_Value+1 |
6995 3bd8 8823 tst r24 |
6996 3bda 79F0 breq .L530 |
6997 3bdc 282F mov r18,r24 |
6998 3bde 3327 clr r19 |
6999 3be0 27FD sbrc r18,7 |
7000 3be2 3095 com r19 |
7001 3be4 8091 0000 lds r24,cnt.15 |
7002 3be8 9091 0000 lds r25,(cnt.15)+1 |
7003 3bec 2817 cp r18,r24 |
7004 3bee 3907 cpc r19,r25 |
7005 3bf0 24F4 brge .L530 |
7006 3bf2 3093 0000 sts (cnt.15)+1,r19 |
7007 3bf6 2093 0000 sts cnt.15,r18 |
7008 .L530: |
7009 3bfa 4091 0000 lds r20,IntegralFehlerRoll.4 |
7010 3bfe 5091 0000 lds r21,(IntegralFehlerRoll.4)+1 |
7011 3c02 6091 0000 lds r22,(IntegralFehlerRoll.4)+2 |
7012 3c06 7091 0000 lds r23,(IntegralFehlerRoll.4)+3 |
7013 3c0a 4138 cpi r20,lo8(129) |
7014 3c0c 5105 cpc r21,__zero_reg__ |
7015 3c0e 6105 cpc r22,__zero_reg__ |
7016 3c10 7105 cpc r23,__zero_reg__ |
7017 3c12 74F0 brlt .L532 |
7018 3c14 8091 0000 lds r24,AdNeutralRoll |
7019 3c18 9091 0000 lds r25,(AdNeutralRoll)+1 |
7020 3c1c 2091 0000 lds r18,cnt.15 |
7021 3c20 3091 0000 lds r19,(cnt.15)+1 |
7022 3c24 820F add r24,r18 |
7023 3c26 931F adc r25,r19 |
7024 3c28 9093 0000 sts (AdNeutralRoll)+1,r25 |
7025 3c2c 8093 0000 sts AdNeutralRoll,r24 |
7026 .L532: |
7027 3c30 4058 subi r20,lo8(-128) |
7028 3c32 5F4F sbci r21,hi8(-128) |
7029 3c34 6F4F sbci r22,hlo8(-128) |
7030 3c36 7F4F sbci r23,hhi8(-128) |
7031 3c38 CCF4 brge .L534 |
7032 3c3a 8091 0000 lds r24,AdNeutralRoll |
7033 3c3e 9091 0000 lds r25,(AdNeutralRoll)+1 |
7034 3c42 2091 0000 lds r18,cnt.15 |
7035 3c46 3091 0000 lds r19,(cnt.15)+1 |
7036 3c4a 821B sub r24,r18 |
7037 3c4c 930B sbc r25,r19 |
7038 3c4e 9093 0000 sts (AdNeutralRoll)+1,r25 |
7039 3c52 8093 0000 sts AdNeutralRoll,r24 |
7040 3c56 0AC0 rjmp .L534 |
7041 .L460: |
7042 3c58 1092 0000 sts (LageKorrekturRoll)+1,__zero_reg__ |
7043 3c5c 1092 0000 sts LageKorrekturRoll,__zero_reg__ |
7044 3c60 1092 0000 sts (LageKorrekturNick)+1,__zero_reg__ |
7045 3c64 1092 0000 sts LageKorrekturNick,__zero_reg__ |
7046 3c68 1092 0000 sts TrichterFlug,__zero_reg__ |
7047 .L534: |
7048 3c6c 8091 0000 lds r24,IntegralFaktor |
7049 3c70 8823 tst r24 |
7050 3c72 41F4 brne .L535 |
7051 3c74 1092 0000 sts (LageKorrekturRoll)+1,__zero_reg__ |
7052 3c78 1092 0000 sts LageKorrekturRoll,__zero_reg__ |
7053 3c7c 1092 0000 sts (LageKorrekturNick)+1,__zero_reg__ |
7054 3c80 1092 0000 sts LageKorrekturNick,__zero_reg__ |
7055 .L535: |
7056 3c84 8091 0000 lds r24,MittelIntegralNick |
7057 3c88 9091 0000 lds r25,(MittelIntegralNick)+1 |
7058 3c8c A091 0000 lds r26,(MittelIntegralNick)+2 |
7059 3c90 B091 0000 lds r27,(MittelIntegralNick)+3 |
7060 3c94 8093 0000 sts MittelIntegralNick_Alt.20,r24 |
7061 3c98 9093 0000 sts (MittelIntegralNick_Alt.20)+1,r25 |
7062 3c9c A093 0000 sts (MittelIntegralNick_Alt.20)+2,r26 |
7063 3ca0 B093 0000 sts (MittelIntegralNick_Alt.20)+3,r27 |
7064 3ca4 8091 0000 lds r24,MittelIntegralRoll |
7065 3ca8 9091 0000 lds r25,(MittelIntegralRoll)+1 |
7066 3cac A091 0000 lds r26,(MittelIntegralRoll)+2 |
7067 3cb0 B091 0000 lds r27,(MittelIntegralRoll)+3 |
7068 3cb4 8093 0000 sts MittelIntegralRoll_Alt.21,r24 |
7069 3cb8 9093 0000 sts (MittelIntegralRoll_Alt.21)+1,r25 |
7070 3cbc A093 0000 sts (MittelIntegralRoll_Alt.21)+2,r26 |
7071 3cc0 B093 0000 sts (MittelIntegralRoll_Alt.21)+3,r27 |
7072 3cc4 1092 0000 sts IntegralAccNick,__zero_reg__ |
7073 3cc8 1092 0000 sts (IntegralAccNick)+1,__zero_reg__ |
7074 3ccc 1092 0000 sts (IntegralAccNick)+2,__zero_reg__ |
7075 3cd0 1092 0000 sts (IntegralAccNick)+3,__zero_reg__ |
7076 3cd4 1092 0000 sts IntegralAccRoll,__zero_reg__ |
7077 3cd8 1092 0000 sts (IntegralAccRoll)+1,__zero_reg__ |
7078 3cdc 1092 0000 sts (IntegralAccRoll)+2,__zero_reg__ |
7079 3ce0 1092 0000 sts (IntegralAccRoll)+3,__zero_reg__ |
7080 3ce4 1092 0000 sts IntegralAccZ,__zero_reg__ |
7081 3ce8 1092 0000 sts (IntegralAccZ)+1,__zero_reg__ |
7082 3cec 1092 0000 sts (IntegralAccZ)+2,__zero_reg__ |
7083 3cf0 1092 0000 sts (IntegralAccZ)+3,__zero_reg__ |
7084 3cf4 1092 0000 sts MittelIntegralNick,__zero_reg__ |
7085 3cf8 1092 0000 sts (MittelIntegralNick)+1,__zero_reg__ |
7086 3cfc 1092 0000 sts (MittelIntegralNick)+2,__zero_reg__ |
7087 3d00 1092 0000 sts (MittelIntegralNick)+3,__zero_reg__ |
7088 3d04 1092 0000 sts MittelIntegralRoll,__zero_reg__ |
7089 3d08 1092 0000 sts (MittelIntegralRoll)+1,__zero_reg__ |
7090 3d0c 1092 0000 sts (MittelIntegralRoll)+2,__zero_reg__ |
7091 3d10 1092 0000 sts (MittelIntegralRoll)+3,__zero_reg__ |
7092 3d14 1092 0000 sts MittelIntegralNick2,__zero_reg__ |
7093 3d18 1092 0000 sts (MittelIntegralNick2)+1,__zero_reg__ |
7094 3d1c 1092 0000 sts (MittelIntegralNick2)+2,__zero_reg__ |
7095 3d20 1092 0000 sts (MittelIntegralNick2)+3,__zero_reg__ |
7096 3d24 1092 0000 sts MittelIntegralRoll2,__zero_reg__ |
7097 3d28 1092 0000 sts (MittelIntegralRoll2)+1,__zero_reg__ |
7098 3d2c 1092 0000 sts (MittelIntegralRoll2)+2,__zero_reg__ |
7099 3d30 1092 0000 sts (MittelIntegralRoll2)+3,__zero_reg__ |
7100 3d34 1092 0000 sts (ZaehlMessungen)+1,__zero_reg__ |
7101 3d38 1092 0000 sts ZaehlMessungen,__zero_reg__ |
7102 .L459: |
7103 3d3c E090 0000 lds r14,StickGier |
7104 3d40 F090 0000 lds r15,(StickGier)+1 |
7105 3d44 C701 movw r24,r14 |
7106 3d46 F7FE sbrs r15,7 |
7107 3d48 04C0 rjmp .L537 |
7108 3d4a 8827 clr r24 |
7109 3d4c 9927 clr r25 |
7110 3d4e 8E19 sub r24,r14 |
7111 3d50 9F09 sbc r25,r15 |
7112 .L537: |
7113 3d52 4097 sbiw r24,16 |
7114 3d54 6CF0 brlt .L536 |
7115 3d56 88EE ldi r24,lo8(1000) |
7116 3d58 93E0 ldi r25,hi8(1000) |
7117 3d5a 9093 0000 sts (KompassSignalSchlecht)+1,r25 |
7118 3d5e 8093 0000 sts KompassSignalSchlecht,r24 |
7119 3d62 8091 0000 lds r24,EE_Parameter+13 |
7120 3d66 84FD sbrc r24,4 |
7121 3d68 03C0 rjmp .L536 |
7122 3d6a 81E0 ldi r24,lo8(1) |
7123 3d6c 8093 0000 sts NeueKompassRichtungMerken.10,r24 |
7124 .L536: |
7125 3d70 1091 0000 lds r17,EE_Parameter+25 |
7126 3d74 A12E mov r10,r17 |
7127 3d76 BB24 clr r11 |
7128 3d78 CC24 clr r12 |
7129 3d7a DD24 clr r13 |
7130 3d7c B701 movw r22,r14 |
7131 3d7e 8827 clr r24 |
7132 3d80 77FD sbrc r23,7 |
7133 3d82 8095 com r24 |
7134 3d84 982F mov r25,r24 |
7135 3d86 9701 movw r18,r14 |
7136 3d88 F7FE sbrs r15,7 |
7137 3d8a 04C0 rjmp .L539 |
7138 3d8c 2227 clr r18 |
7139 3d8e 3327 clr r19 |
7140 3d90 2E19 sub r18,r14 |
7141 3d92 3F09 sbc r19,r15 |
7142 .L539: |
7143 3d94 4427 clr r20 |
7144 3d96 37FD sbrc r19,7 |
7145 3d98 4095 com r20 |
7146 3d9a 542F mov r21,r20 |
7147 3d9c 0E94 0000 call __mulsi3 |
7148 3da0 9B01 movw r18,r22 |
7149 3da2 AC01 movw r20,r24 |
7150 3da4 C601 movw r24,r12 |
7151 3da6 B501 movw r22,r10 |
7152 3da8 0E94 0000 call __mulsi3 |
7153 3dac 97FF sbrs r25,7 |
7154 3dae 04C0 rjmp .L540 |
7155 3db0 6150 subi r22,lo8(-(511)) |
7156 3db2 7E4F sbci r23,hi8(-(511)) |
7157 3db4 8F4F sbci r24,hlo8(-(511)) |
7158 3db6 9F4F sbci r25,hhi8(-(511)) |
7159 .L540: |
7160 3db8 59E0 ldi r21,9 |
7161 3dba 9595 1: asr r25 |
7162 3dbc 8795 ror r24 |
7163 3dbe 7795 ror r23 |
7164 3dc0 6795 ror r22 |
7165 3dc2 5A95 dec r21 |
7166 3dc4 D1F7 brne 1b |
7167 3dc6 9B01 movw r18,r22 |
7168 3dc8 812F mov r24,r17 |
7169 3dca 9927 clr r25 |
7170 3dcc 8E9D mul r24,r14 |
7171 3dce D001 movw r26,r0 |
7172 3dd0 8F9D mul r24,r15 |
7173 3dd2 B00D add r27,r0 |
7174 3dd4 9E9D mul r25,r14 |
7175 3dd6 B00D add r27,r0 |
7176 3dd8 1124 clr r1 |
7177 3dda CD01 movw r24,r26 |
7178 3ddc B7FD sbrc r27,7 |
7179 3dde 0396 adiw r24,3 |
7180 .L541: |
7181 3de0 9595 asr r25 |
7182 3de2 8795 ror r24 |
7183 3de4 9595 asr r25 |
7184 3de6 8795 ror r24 |
7185 3de8 280F add r18,r24 |
7186 3dea 391F adc r19,r25 |
7187 3dec 4427 clr r20 |
7188 3dee 37FD sbrc r19,7 |
7189 3df0 4095 com r20 |
7190 3df2 542F mov r21,r20 |
7191 3df4 2093 0000 sts sollGier.0,r18 |
7192 3df8 3093 0000 sts (sollGier.0)+1,r19 |
7193 3dfc 4093 0000 sts (sollGier.0)+2,r20 |
7194 3e00 5093 0000 sts (sollGier.0)+3,r21 |
7195 3e04 8091 0000 lds r24,Mess_Integral_Gier |
7196 3e08 9091 0000 lds r25,(Mess_Integral_Gier)+1 |
7197 3e0c A091 0000 lds r26,(Mess_Integral_Gier)+2 |
7198 3e10 B091 0000 lds r27,(Mess_Integral_Gier)+3 |
7199 3e14 821B sub r24,r18 |
7200 3e16 930B sbc r25,r19 |
7201 3e18 A40B sbc r26,r20 |
7202 3e1a B50B sbc r27,r21 |
7203 3e1c 8093 0000 sts Mess_Integral_Gier,r24 |
7204 3e20 9093 0000 sts (Mess_Integral_Gier)+1,r25 |
7205 3e24 A093 0000 sts (Mess_Integral_Gier)+2,r26 |
7206 3e28 B093 0000 sts (Mess_Integral_Gier)+3,r27 |
7207 3e2c 8155 subi r24,lo8(50001) |
7208 3e2e 934C sbci r25,hi8(50001) |
7209 3e30 A040 sbci r26,hlo8(50001) |
7210 3e32 B040 sbci r27,hhi8(50001) |
7211 3e34 64F0 brlt .L542 |
7212 3e36 80E5 ldi r24,lo8(50000) |
7213 3e38 93EC ldi r25,hi8(50000) |
7214 3e3a A0E0 ldi r26,hlo8(50000) |
7215 3e3c B0E0 ldi r27,hhi8(50000) |
7216 3e3e 8093 0000 sts Mess_Integral_Gier,r24 |
7217 3e42 9093 0000 sts (Mess_Integral_Gier)+1,r25 |
7218 3e46 A093 0000 sts (Mess_Integral_Gier)+2,r26 |
7219 3e4a B093 0000 sts (Mess_Integral_Gier)+3,r27 |
7220 .L542: |
7221 3e4e 8091 0000 lds r24,Mess_Integral_Gier |
7222 3e52 9091 0000 lds r25,(Mess_Integral_Gier)+1 |
7223 3e56 A091 0000 lds r26,(Mess_Integral_Gier)+2 |
7224 3e5a B091 0000 lds r27,(Mess_Integral_Gier)+3 |
7225 3e5e 805B subi r24,lo8(-50000) |
7226 3e60 9C43 sbci r25,hi8(-50000) |
7227 3e62 AF4F sbci r26,hlo8(-50000) |
7228 3e64 BF4F sbci r27,hhi8(-50000) |
7229 3e66 64F4 brge .L543 |
7230 3e68 80EB ldi r24,lo8(-50000) |
7231 3e6a 9CE3 ldi r25,hi8(-50000) |
7232 3e6c AFEF ldi r26,hlo8(-50000) |
7233 3e6e BFEF ldi r27,hhi8(-50000) |
7234 3e70 8093 0000 sts Mess_Integral_Gier,r24 |
7235 3e74 9093 0000 sts (Mess_Integral_Gier)+1,r25 |
7236 3e78 A093 0000 sts (Mess_Integral_Gier)+2,r26 |
7237 3e7c B093 0000 sts (Mess_Integral_Gier)+3,r27 |
7238 .L543: |
7239 3e80 4090 0000 lds r4,KompassValue |
7240 3e84 5090 0000 lds r5,(KompassValue)+1 |
7241 3e88 4114 cp r4,__zero_reg__ |
7242 3e8a 5104 cpc r5,__zero_reg__ |
7243 3e8c 09F4 brne .+2 |
7244 3e8e 78C1 rjmp .L544 |
7245 3e90 8091 0000 lds r24,EE_Parameter+13 |
7246 3e94 83FF sbrs r24,3 |
7247 3e96 74C1 rjmp .L544 |
7248 3e98 8091 0000 lds r24,IntegralNick |
7249 3e9c 9091 0000 lds r25,(IntegralNick)+1 |
7250 3ea0 A091 0000 lds r26,(IntegralNick)+2 |
7251 3ea4 B091 0000 lds r27,(IntegralNick)+3 |
7252 3ea8 B7FF sbrs r27,7 |
7253 3eaa 04C0 rjmp .L545 |
7254 3eac 8150 subi r24,lo8(-(511)) |
7255 3eae 9E4F sbci r25,hi8(-(511)) |
7256 3eb0 AF4F sbci r26,hlo8(-(511)) |
7257 3eb2 BF4F sbci r27,hhi8(-(511)) |
7258 .L545: |
7259 3eb4 39E0 ldi r19,9 |
7260 3eb6 B595 1: asr r27 |
7261 3eb8 A795 ror r26 |
7262 3eba 9795 ror r25 |
7263 3ebc 8795 ror r24 |
7264 3ebe 3A95 dec r19 |
7265 3ec0 D1F7 brne 1b |
7266 3ec2 6C01 movw r12,r24 |
7267 3ec4 97FF sbrs r25,7 |
7268 3ec6 04C0 rjmp .L546 |
7269 3ec8 D094 com r13 |
7270 3eca C194 neg r12 |
7271 3ecc D108 sbc r13,__zero_reg__ |
7272 3ece D394 inc r13 |
7273 .L546: |
7274 3ed0 8091 0000 lds r24,IntegralRoll |
7275 3ed4 9091 0000 lds r25,(IntegralRoll)+1 |
7276 3ed8 A091 0000 lds r26,(IntegralRoll)+2 |
7277 3edc B091 0000 lds r27,(IntegralRoll)+3 |
7278 3ee0 B7FF sbrs r27,7 |
7279 3ee2 04C0 rjmp .L547 |
7280 3ee4 8150 subi r24,lo8(-(511)) |
7281 3ee6 9E4F sbci r25,hi8(-(511)) |
7282 3ee8 AF4F sbci r26,hlo8(-(511)) |
7283 3eea BF4F sbci r27,hhi8(-(511)) |
7284 .L547: |
7285 3eec 29E0 ldi r18,9 |
7286 3eee B595 1: asr r27 |
7287 3ef0 A795 ror r26 |
7288 3ef2 9795 ror r25 |
7289 3ef4 8795 ror r24 |
7290 3ef6 2A95 dec r18 |
7291 3ef8 D1F7 brne 1b |
7292 3efa BC01 movw r22,r24 |
7293 3efc 97FF sbrs r25,7 |
7294 3efe 03C0 rjmp .L548 |
7295 3f00 7095 com r23 |
7296 3f02 6195 neg r22 |
7297 3f04 7F4F sbci r23,lo8(-1) |
7298 .L548: |
7299 3f06 C616 cp r12,r22 |
7300 3f08 D706 cpc r13,r23 |
7301 3f0a 0CF4 brge .L549 |
7302 3f0c 6B01 movw r12,r22 |
7303 .L549: |
7304 3f0e B601 movw r22,r12 |
7305 3f10 D7FE sbrs r13,7 |
7306 3f12 02C0 rjmp .L550 |
7307 3f14 695F subi r22,lo8(-(7)) |
7308 3f16 7F4F sbci r23,hi8(-(7)) |
7309 .L550: |
7310 3f18 3B01 movw r6,r22 |
7311 3f1a 83E0 ldi r24,3 |
7312 3f1c 7594 1: asr r7 |
7313 3f1e 6794 ror r6 |
7314 3f20 8A95 dec r24 |
7315 3f22 E1F7 brne 1b |
7316 3f24 02E0 ldi r16,lo8(2) |
7317 3f26 E02E mov r14,r16 |
7318 3f28 F12C mov r15,__zero_reg__ |
7319 3f2a 6E0C add r6,r14 |
7320 3f2c 7F1C adc r7,r15 |
7321 3f2e 0CE1 ldi r16,lo8(540) |
7322 3f30 12E0 ldi r17,hi8(540) |
7323 3f32 400E add r4,r16 |
7324 3f34 511E adc r5,r17 |
7325 3f36 7201 movw r14,r4 |
7326 3f38 0027 clr r16 |
7327 3f3a F7FC sbrc r15,7 |
7328 3f3c 0095 com r16 |
7329 3f3e 102F mov r17,r16 |
7330 3f40 24EE ldi r18,lo8(-540) |
7331 3f42 3DEF ldi r19,hi8(-540) |
7332 3f44 420E add r4,r18 |
7333 3f46 531E adc r5,r19 |
7334 3f48 8091 0000 lds r24,ErsatzKompass |
7335 3f4c 9091 0000 lds r25,(ErsatzKompass)+1 |
7336 3f50 A091 0000 lds r26,(ErsatzKompass)+2 |
7337 3f54 B091 0000 lds r27,(ErsatzKompass)+3 |
7338 3f58 8090 0000 lds r8,GIER_GRAD_FAKTOR |
7339 3f5c 9090 0000 lds r9,(GIER_GRAD_FAKTOR)+1 |
7340 3f60 A090 0000 lds r10,(GIER_GRAD_FAKTOR)+2 |
7341 3f64 B090 0000 lds r11,(GIER_GRAD_FAKTOR)+3 |
7342 3f68 BC01 movw r22,r24 |
7343 3f6a CD01 movw r24,r26 |
7344 3f6c A501 movw r20,r10 |
7345 3f6e 9401 movw r18,r8 |
7346 3f70 0E94 0000 call __divmodsi4 |
7347 3f74 E21A sub r14,r18 |
7348 3f76 F30A sbc r15,r19 |
7349 3f78 040B sbc r16,r20 |
7350 3f7a 150B sbc r17,r21 |
7351 3f7c C801 movw r24,r16 |
7352 3f7e B701 movw r22,r14 |
7353 3f80 28E6 ldi r18,lo8(360) |
7354 3f82 31E0 ldi r19,hi8(360) |
7355 3f84 40E0 ldi r20,hlo8(360) |
7356 3f86 50E0 ldi r21,hhi8(360) |
7357 3f88 0E94 0000 call __divmodsi4 |
7358 3f8c DC01 movw r26,r24 |
7359 3f8e CB01 movw r24,r22 |
7360 3f90 1CE4 ldi r17,lo8(-180) |
7361 3f92 E12E mov r14,r17 |
7362 3f94 1FEF ldi r17,hi8(-180) |
7363 3f96 F12E mov r15,r17 |
7364 3f98 E80E add r14,r24 |
7365 3f9a F91E adc r15,r25 |
7366 3f9c 0091 0000 lds r16,KompassSignalSchlecht |
7367 3fa0 1091 0000 lds r17,(KompassSignalSchlecht)+1 |
7368 3fa4 0115 cp r16,__zero_reg__ |
7369 3fa6 1105 cpc r17,__zero_reg__ |
7370 3fa8 89F5 brne .L551 |
7371 3faa 39E1 ldi r19,lo8(25) |
7372 3fac C316 cp r12,r19 |
7373 3fae D104 cpc r13,__zero_reg__ |
7374 3fb0 6CF5 brge .L551 |
7375 3fb2 8091 0000 lds r24,GierGyroFehler |
7376 3fb6 9091 0000 lds r25,(GierGyroFehler)+1 |
7377 3fba 8E0D add r24,r14 |
7378 3fbc 9F1D adc r25,r15 |
7379 3fbe 9093 0000 sts (GierGyroFehler)+1,r25 |
7380 3fc2 8093 0000 sts GierGyroFehler,r24 |
7381 3fc6 8091 0000 lds r24,NeueKompassRichtungMerken.10 |
7382 3fca 8823 tst r24 |
7383 3fcc F9F0 breq .L551 |
7384 3fce C201 movw r24,r4 |
7385 3fd0 AA27 clr r26 |
7386 3fd2 97FD sbrc r25,7 |
7387 3fd4 A095 com r26 |
7388 3fd6 BA2F mov r27,r26 |
7389 3fd8 BC01 movw r22,r24 |
7390 3fda CD01 movw r24,r26 |
7391 3fdc A501 movw r20,r10 |
7392 3fde 9401 movw r18,r8 |
7393 3fe0 0E94 0000 call __mulsi3 |
7394 3fe4 DC01 movw r26,r24 |
7395 3fe6 CB01 movw r24,r22 |
7396 3fe8 8093 0000 sts ErsatzKompass,r24 |
7397 3fec 9093 0000 sts (ErsatzKompass)+1,r25 |
7398 3ff0 A093 0000 sts (ErsatzKompass)+2,r26 |
7399 3ff4 B093 0000 sts (ErsatzKompass)+3,r27 |
7400 3ff8 BC01 movw r22,r24 |
7401 3ffa CD01 movw r24,r26 |
7402 3ffc 0E94 0000 call __divmodsi4 |
7403 4000 3093 0000 sts (KompassStartwert)+1,r19 |
7404 4004 2093 0000 sts KompassStartwert,r18 |
7405 4008 1092 0000 sts NeueKompassRichtungMerken.10,__zero_reg__ |
7406 .L551: |
7407 400c C701 movw r24,r14 |
7408 400e B4E0 ldi r27,4 |
7409 4010 880F 1: lsl r24 |
7410 4012 991F rol r25 |
7411 4014 BA95 dec r27 |
7412 4016 E1F7 brne 1b |
7413 4018 B301 movw r22,r6 |
7414 401a 0E94 0000 call __divmodhi4 |
7415 401e CB01 movw r24,r22 |
7416 4020 AA27 clr r26 |
7417 4022 97FD sbrc r25,7 |
7418 4024 A095 com r26 |
7419 4026 BA2F mov r27,r26 |
7420 4028 2091 0000 lds r18,ErsatzKompass |
7421 402c 3091 0000 lds r19,(ErsatzKompass)+1 |
7422 4030 4091 0000 lds r20,(ErsatzKompass)+2 |
7423 4034 5091 0000 lds r21,(ErsatzKompass)+3 |
7424 4038 280F add r18,r24 |
7425 403a 391F adc r19,r25 |
7426 403c 4A1F adc r20,r26 |
7427 403e 5B1F adc r21,r27 |
7428 4040 2093 0000 sts ErsatzKompass,r18 |
7429 4044 3093 0000 sts (ErsatzKompass)+1,r19 |
7430 4048 4093 0000 sts (ErsatzKompass)+2,r20 |
7431 404c 5093 0000 sts (ErsatzKompass)+3,r21 |
7432 4050 F090 0000 lds r15,Parameter_KompassWirkung |
7433 4054 6F2D mov r22,r15 |
7434 4056 7727 clr r23 |
7435 4058 C69E mul r12,r22 |
7436 405a C001 movw r24,r0 |
7437 405c C79E mul r12,r23 |
7438 405e 900D add r25,r0 |
7439 4060 D69E mul r13,r22 |
7440 4062 900D add r25,r0 |
7441 4064 1124 clr r1 |
7442 4066 97FD sbrc r25,7 |
7443 4068 4F96 adiw r24,31 |
7444 .L553: |
7445 406a 6C01 movw r12,r24 |
7446 406c A5E0 ldi r26,5 |
7447 406e D594 1: asr r13 |
7448 4070 C794 ror r12 |
7449 4072 AA95 dec r26 |
7450 4074 E1F7 brne 1b |
7451 4076 6C19 sub r22,r12 |
7452 4078 7D09 sbc r23,r13 |
7453 407a 6B01 movw r12,r22 |
7454 407c 77FD sbrc r23,7 |
7455 407e 7AC0 rjmp .L554 |
7456 4080 0115 cp r16,__zero_reg__ |
7457 4082 1105 cpc r17,__zero_reg__ |
7458 4084 09F0 breq .+2 |
7459 4086 6FC0 rjmp .L789 |
7460 4088 0091 0000 lds r16,MaxStickNick |
7461 408c 1091 0000 lds r17,(MaxStickNick)+1 |
7462 4090 8091 0000 lds r24,MaxStickRoll |
7463 4094 9091 0000 lds r25,(MaxStickRoll)+1 |
7464 4098 080F add r16,r24 |
7465 409a 191F adc r17,r25 |
7466 409c 17FF sbrs r17,7 |
7467 409e 02C0 rjmp .L556 |
7468 40a0 095F subi r16,lo8(-(7)) |
7469 40a2 1F4F sbci r17,hi8(-(7)) |
7470 .L556: |
7471 40a4 F3E0 ldi r31,3 |
7472 40a6 1595 1: asr r17 |
7473 40a8 0795 ror r16 |
7474 40aa FA95 dec r31 |
7475 40ac E1F7 brne 1b |
7476 40ae 005C subi r16,lo8(-(64)) |
7477 40b0 1F4F sbci r17,hi8(-(64)) |
7478 40b2 CA01 movw r24,r20 |
7479 40b4 B901 movw r22,r18 |
7480 40b6 A501 movw r20,r10 |
7481 40b8 9401 movw r18,r8 |
7482 40ba 0E94 0000 call __divmodsi4 |
7483 40be DA01 movw r26,r20 |
7484 40c0 C901 movw r24,r18 |
7485 40c2 2091 0000 lds r18,KompassStartwert |
7486 40c6 3091 0000 lds r19,(KompassStartwert)+1 |
7487 40ca 4427 clr r20 |
7488 40cc 37FD sbrc r19,7 |
7489 40ce 4095 com r20 |
7490 40d0 542F mov r21,r20 |
7491 40d2 821B sub r24,r18 |
7492 40d4 930B sbc r25,r19 |
7493 40d6 A40B sbc r26,r20 |
7494 40d8 B50B sbc r27,r21 |
7495 40da 845E subi r24,lo8(-(540)) |
7496 40dc 9D4F sbci r25,hi8(-(540)) |
7497 40de AF4F sbci r26,hlo8(-(540)) |
7498 40e0 BF4F sbci r27,hhi8(-(540)) |
7499 40e2 BC01 movw r22,r24 |
7500 40e4 CD01 movw r24,r26 |
7501 40e6 28E6 ldi r18,lo8(360) |
7502 40e8 31E0 ldi r19,hi8(360) |
7503 40ea 40E0 ldi r20,hlo8(360) |
7504 40ec 50E0 ldi r21,hhi8(360) |
7505 40ee 0E94 0000 call __divmodsi4 |
7506 40f2 DC01 movw r26,r24 |
7507 40f4 CB01 movw r24,r22 |
7508 40f6 845B subi r24,lo8(-(-180)) |
7509 40f8 9040 sbci r25,hi8(-(-180)) |
7510 40fa 8C9D mul r24,r12 |
7511 40fc A001 movw r20,r0 |
7512 40fe 8D9D mul r24,r13 |
7513 4100 500D add r21,r0 |
7514 4102 9C9D mul r25,r12 |
7515 4104 500D add r21,r0 |
7516 4106 1124 clr r1 |
7517 4108 CA01 movw r24,r20 |
7518 410a B801 movw r22,r16 |
7519 410c 0E94 0000 call __divmodhi4 |
7520 4110 83E0 ldi r24,lo8(3) |
7521 4112 F89E mul r15,r24 |
7522 4114 6001 movw r12,r0 |
7523 4116 1124 clr r1 |
7524 4118 C616 cp r12,r22 |
7525 411a D706 cpc r13,r23 |
7526 411c 14F4 brge .L557 |
7527 411e B601 movw r22,r12 |
7528 4120 08C0 rjmp .L558 |
7529 .L557: |
7530 4122 8827 clr r24 |
7531 4124 9927 clr r25 |
7532 4126 8C19 sub r24,r12 |
7533 4128 9D09 sbc r25,r13 |
7534 412a 6817 cp r22,r24 |
7535 412c 7907 cpc r23,r25 |
7536 412e 0CF4 brge .L558 |
7537 4130 BC01 movw r22,r24 |
7538 .L558: |
7539 4132 9B01 movw r18,r22 |
7540 4134 4427 clr r20 |
7541 4136 37FD sbrc r19,7 |
7542 4138 4095 com r20 |
7543 413a 542F mov r21,r20 |
7544 413c 8091 0000 lds r24,Mess_Integral_Gier |
7545 4140 9091 0000 lds r25,(Mess_Integral_Gier)+1 |
7546 4144 A091 0000 lds r26,(Mess_Integral_Gier)+2 |
7547 4148 B091 0000 lds r27,(Mess_Integral_Gier)+3 |
7548 414c 820F add r24,r18 |
7549 414e 931F adc r25,r19 |
7550 4150 A41F adc r26,r20 |
7551 4152 B51F adc r27,r21 |
7552 4154 8093 0000 sts Mess_Integral_Gier,r24 |
7553 4158 9093 0000 sts (Mess_Integral_Gier)+1,r25 |
7554 415c A093 0000 sts (Mess_Integral_Gier)+2,r26 |
7555 4160 B093 0000 sts (Mess_Integral_Gier)+3,r27 |
7556 4164 0DC0 rjmp .L544 |
7557 .L789: |
7558 4166 0150 subi r16,lo8(-(-1)) |
7559 4168 1040 sbci r17,hi8(-(-1)) |
7560 416a 1093 0000 sts (KompassSignalSchlecht)+1,r17 |
7561 416e 0093 0000 sts KompassSignalSchlecht,r16 |
7562 4172 06C0 rjmp .L544 |
7563 .L554: |
7564 4174 84EF ldi r24,lo8(500) |
7565 4176 91E0 ldi r25,hi8(500) |
7566 4178 9093 0000 sts (KompassSignalSchlecht)+1,r25 |
7567 417c 8093 0000 sts KompassSignalSchlecht,r24 |
7568 .L544: |
7569 4180 8091 0000 lds r24,TrichterFlug |
7570 4184 8823 tst r24 |
7571 4186 81F0 breq .L562 |
7572 4188 1092 0000 sts SummeRoll,__zero_reg__ |
7573 418c 1092 0000 sts (SummeRoll)+1,__zero_reg__ |
7574 4190 1092 0000 sts (SummeRoll)+2,__zero_reg__ |
7575 4194 1092 0000 sts (SummeRoll)+3,__zero_reg__ |
7576 4198 1092 0000 sts SummeNick,__zero_reg__ |
7577 419c 1092 0000 sts (SummeNick)+1,__zero_reg__ |
7578 41a0 1092 0000 sts (SummeNick)+2,__zero_reg__ |
7579 41a4 1092 0000 sts (SummeNick)+3,__zero_reg__ |
7580 .L562: |
7581 41a8 F090 0000 lds r15,Looping_Nick |
7582 41ac FF20 tst r15 |
7583 41ae F1F4 brne .L563 |
7584 41b0 8091 0000 lds r24,IntegralFaktor |
7585 41b4 282F mov r18,r24 |
7586 41b6 3327 clr r19 |
7587 41b8 4427 clr r20 |
7588 41ba 5527 clr r21 |
7589 41bc 8091 0000 lds r24,IntegralNick |
7590 41c0 9091 0000 lds r25,(IntegralNick)+1 |
7591 41c4 A091 0000 lds r26,(IntegralNick)+2 |
7592 41c8 B091 0000 lds r27,(IntegralNick)+3 |
7593 41cc BC01 movw r22,r24 |
7594 41ce CD01 movw r24,r26 |
7595 41d0 0E94 0000 call __mulsi3 |
7596 41d4 DC01 movw r26,r24 |
7597 41d6 CB01 movw r24,r22 |
7598 41d8 BC01 movw r22,r24 |
7599 41da CD01 movw r24,r26 |
7600 41dc 28EF ldi r18,lo8(11000) |
7601 41de 3AE2 ldi r19,hi8(11000) |
7602 41e0 40E0 ldi r20,hlo8(11000) |
7603 41e2 50E0 ldi r21,hhi8(11000) |
7604 41e4 0E94 0000 call __divmodsi4 |
7605 41e8 3901 movw r6,r18 |
7606 41ea 02C0 rjmp .L564 |
7607 .L563: |
7608 41ec 6624 clr r6 |
7609 41ee 7724 clr r7 |
7610 .L564: |
7611 41f0 E090 0000 lds r14,Looping_Roll |
7612 41f4 EE20 tst r14 |
7613 41f6 F1F4 brne .L565 |
7614 41f8 8091 0000 lds r24,IntegralFaktor |
7615 41fc 282F mov r18,r24 |
7616 41fe 3327 clr r19 |
7617 4200 4427 clr r20 |
7618 4202 5527 clr r21 |
7619 4204 8091 0000 lds r24,IntegralRoll |
7620 4208 9091 0000 lds r25,(IntegralRoll)+1 |
7621 420c A091 0000 lds r26,(IntegralRoll)+2 |
7622 4210 B091 0000 lds r27,(IntegralRoll)+3 |
7623 4214 BC01 movw r22,r24 |
7624 4216 CD01 movw r24,r26 |
7625 4218 0E94 0000 call __mulsi3 |
7626 421c DC01 movw r26,r24 |
7627 421e CB01 movw r24,r22 |
7628 4220 BC01 movw r22,r24 |
7629 4222 CD01 movw r24,r26 |
7630 4224 28EF ldi r18,lo8(11000) |
7631 4226 3AE2 ldi r19,hi8(11000) |
7632 4228 40E0 ldi r20,hlo8(11000) |
7633 422a 50E0 ldi r21,hhi8(11000) |
7634 422c 0E94 0000 call __divmodsi4 |
7635 4230 2901 movw r4,r18 |
7636 4232 02C0 rjmp .L566 |
7637 .L565: |
7638 4234 4424 clr r4 |
7639 4236 5524 clr r5 |
7640 .L566: |
7641 4238 8091 0000 lds r24,TrimNick |
7642 423c 9091 0000 lds r25,(TrimNick)+1 |
7643 4240 893C cpi r24,201 |
7644 4242 9105 cpc r25,__zero_reg__ |
7645 4244 1CF0 brlt .L567 |
7646 4246 88EC ldi r24,lo8(200) |
7647 4248 90E0 ldi r25,hi8(200) |
7648 424a 05C0 rjmp .L794 |
7649 .L567: |
7650 424c 8853 subi r24,lo8(-200) |
7651 424e 9F4F sbci r25,hi8(-200) |
7652 4250 34F4 brge .L568 |
7653 4252 88E3 ldi r24,lo8(-200) |
7654 4254 9FEF ldi r25,hi8(-200) |
7655 .L794: |
7656 4256 9093 0000 sts (TrimNick)+1,r25 |
7657 425a 8093 0000 sts TrimNick,r24 |
7658 .L568: |
7659 425e 8091 0000 lds r24,TrimRoll |
7660 4262 9091 0000 lds r25,(TrimRoll)+1 |
7661 4266 893C cpi r24,201 |
7662 4268 9105 cpc r25,__zero_reg__ |
7663 426a 1CF0 brlt .L570 |
7664 426c 88EC ldi r24,lo8(200) |
7665 426e 90E0 ldi r25,hi8(200) |
7666 4270 05C0 rjmp .L795 |
7667 .L570: |
7668 4272 8853 subi r24,lo8(-200) |
7669 4274 9F4F sbci r25,hi8(-200) |
7670 4276 34F4 brge .L571 |
7671 4278 88E3 ldi r24,lo8(-200) |
7672 427a 9FEF ldi r25,hi8(-200) |
7673 .L795: |
7674 427c 9093 0000 sts (TrimRoll)+1,r25 |
7675 4280 8093 0000 sts TrimRoll,r24 |
7676 .L571: |
7677 4284 8091 0000 lds r24,MesswertNick |
7678 4288 9091 0000 lds r25,(MesswertNick)+1 |
7679 428c AA27 clr r26 |
7680 428e 97FD sbrc r25,7 |
7681 4290 A095 com r26 |
7682 4292 BA2F mov r27,r26 |
7683 4294 2091 0000 lds r18,GyroFaktor |
7684 4298 A22E mov r10,r18 |
7685 429a BB24 clr r11 |
7686 429c CC24 clr r12 |
7687 429e DD24 clr r13 |
7688 42a0 BC01 movw r22,r24 |
7689 42a2 CD01 movw r24,r26 |
7690 42a4 A601 movw r20,r12 |
7691 42a6 9501 movw r18,r10 |
7692 42a8 0E94 0000 call __mulsi3 |
7693 42ac 9B01 movw r18,r22 |
7694 42ae AC01 movw r20,r24 |
7695 42b0 8091 0000 lds r24,TrimNick |
7696 42b4 9091 0000 lds r25,(TrimNick)+1 |
7697 42b8 AA27 clr r26 |
7698 42ba 97FD sbrc r25,7 |
7699 42bc A095 com r26 |
7700 42be BA2F mov r27,r26 |
7701 42c0 E7E0 ldi r30,7 |
7702 42c2 880F 1: lsl r24 |
7703 42c4 991F rol r25 |
7704 42c6 AA1F rol r26 |
7705 42c8 BB1F rol r27 |
7706 42ca EA95 dec r30 |
7707 42cc D1F7 brne 1b |
7708 42ce 280F add r18,r24 |
7709 42d0 391F adc r19,r25 |
7710 42d2 4A1F adc r20,r26 |
7711 42d4 5B1F adc r21,r27 |
7712 42d6 57FF sbrs r21,7 |
7713 42d8 04C0 rjmp .L573 |
7714 42da 215C subi r18,lo8(-(63)) |
7715 42dc 3F4F sbci r19,hi8(-(63)) |
7716 42de 4F4F sbci r20,hlo8(-(63)) |
7717 42e0 5F4F sbci r21,hhi8(-(63)) |
7718 .L573: |
7719 42e2 76E0 ldi r23,6 |
7720 42e4 5595 1: asr r21 |
7721 42e6 4795 ror r20 |
7722 42e8 3795 ror r19 |
7723 42ea 2795 ror r18 |
7724 42ec 7A95 dec r23 |
7725 42ee D1F7 brne 1b |
7726 42f0 8301 movw r16,r6 |
7727 42f2 020F add r16,r18 |
7728 42f4 131F adc r17,r19 |
7729 42f6 1093 0000 sts (MesswertNick)+1,r17 |
7730 42fa 0093 0000 sts MesswertNick,r16 |
7731 42fe 8091 0000 lds r24,MesswertRoll |
7732 4302 9091 0000 lds r25,(MesswertRoll)+1 |
7733 4306 AA27 clr r26 |
7734 4308 97FD sbrc r25,7 |
7735 430a A095 com r26 |
7736 430c BA2F mov r27,r26 |
7737 430e BC01 movw r22,r24 |
7738 4310 CD01 movw r24,r26 |
7739 4312 A601 movw r20,r12 |
7740 4314 9501 movw r18,r10 |
7741 4316 0E94 0000 call __mulsi3 |
7742 431a 9B01 movw r18,r22 |
7743 431c AC01 movw r20,r24 |
7744 431e 8091 0000 lds r24,TrimRoll |
7745 4322 9091 0000 lds r25,(TrimRoll)+1 |
7746 4326 AA27 clr r26 |
7747 4328 97FD sbrc r25,7 |
7748 432a A095 com r26 |
7749 432c BA2F mov r27,r26 |
7750 432e 67E0 ldi r22,7 |
7751 4330 880F 1: lsl r24 |
7752 4332 991F rol r25 |
7753 4334 AA1F rol r26 |
7754 4336 BB1F rol r27 |
7755 4338 6A95 dec r22 |
7756 433a D1F7 brne 1b |
7757 433c 280F add r18,r24 |
7758 433e 391F adc r19,r25 |
7759 4340 4A1F adc r20,r26 |
7760 4342 5B1F adc r21,r27 |
7761 4344 57FF sbrs r21,7 |
7762 4346 04C0 rjmp .L574 |
7763 4348 215C subi r18,lo8(-(63)) |
7764 434a 3F4F sbci r19,hi8(-(63)) |
7765 434c 4F4F sbci r20,hlo8(-(63)) |
7766 434e 5F4F sbci r21,hhi8(-(63)) |
7767 .L574: |
7768 4350 96E0 ldi r25,6 |
7769 4352 5595 1: asr r21 |
7770 4354 4795 ror r20 |
7771 4356 3795 ror r19 |
7772 4358 2795 ror r18 |
7773 435a 9A95 dec r25 |
7774 435c D1F7 brne 1b |
7775 435e 4201 movw r8,r4 |
7776 4360 820E add r8,r18 |
7777 4362 931E adc r9,r19 |
7778 4364 9092 0000 sts (MesswertRoll)+1,r9 |
7779 4368 8092 0000 sts MesswertRoll,r8 |
7780 436c 8091 0000 lds r24,MesswertGier |
7781 4370 9091 0000 lds r25,(MesswertGier)+1 |
7782 4374 880F add r24,r24 |
7783 4376 991F adc r25,r25 |
7784 4378 AA27 clr r26 |
7785 437a 97FD sbrc r25,7 |
7786 437c A095 com r26 |
7787 437e BA2F mov r27,r26 |
7788 4380 2091 0000 lds r18,GyroFaktorGier |
7789 4384 3327 clr r19 |
7790 4386 4427 clr r20 |
7791 4388 5527 clr r21 |
7792 438a BC01 movw r22,r24 |
7793 438c CD01 movw r24,r26 |
7794 438e 0E94 0000 call __mulsi3 |
7795 4392 5B01 movw r10,r22 |
7796 4394 6C01 movw r12,r24 |
7797 4396 97FF sbrs r25,7 |
7798 4398 08C0 rjmp .L575 |
7799 439a 8FE3 ldi r24,lo8(63) |
7800 439c 90E0 ldi r25,hi8(63) |
7801 439e A0E0 ldi r26,hlo8(63) |
7802 43a0 B0E0 ldi r27,hhi8(63) |
7803 43a2 A80E add r10,r24 |
7804 43a4 B91E adc r11,r25 |
7805 43a6 CA1E adc r12,r26 |
7806 43a8 DB1E adc r13,r27 |
7807 .L575: |
7808 43aa 86E0 ldi r24,6 |
7809 43ac D594 1: asr r13 |
7810 43ae C794 ror r12 |
7811 43b0 B794 ror r11 |
7812 43b2 A794 ror r10 |
7813 43b4 8A95 dec r24 |
7814 43b6 D1F7 brne 1b |
7815 43b8 8091 0000 lds r24,IntegralFaktorGier |
7816 43bc 282F mov r18,r24 |
7817 43be 3327 clr r19 |
7818 43c0 4427 clr r20 |
7819 43c2 5527 clr r21 |
7820 43c4 8091 0000 lds r24,Integral_Gier |
7821 43c8 9091 0000 lds r25,(Integral_Gier)+1 |
7822 43cc A091 0000 lds r26,(Integral_Gier)+2 |
7823 43d0 B091 0000 lds r27,(Integral_Gier)+3 |
7824 43d4 BC01 movw r22,r24 |
7825 43d6 CD01 movw r24,r26 |
7826 43d8 0E94 0000 call __mulsi3 |
7827 43dc DC01 movw r26,r24 |
7828 43de CB01 movw r24,r22 |
7829 43e0 BC01 movw r22,r24 |
7830 43e2 CD01 movw r24,r26 |
7831 43e4 20EF ldi r18,lo8(22000) |
7832 43e6 35E5 ldi r19,hi8(22000) |
7833 43e8 40E0 ldi r20,hlo8(22000) |
7834 43ea 50E0 ldi r21,hhi8(22000) |
7835 43ec 0E94 0000 call __divmodsi4 |
7836 43f0 B501 movw r22,r10 |
7837 43f2 620F add r22,r18 |
7838 43f4 731F adc r23,r19 |
7839 43f6 7093 0000 sts (MesswertGier)+1,r23 |
7840 43fa 6093 0000 sts MesswertGier,r22 |
7841 43fe 0150 subi r16,lo8(4097) |
7842 4400 1041 sbci r17,hi8(4097) |
7843 4402 34F0 brlt .L576 |
7844 4404 80E0 ldi r24,lo8(4096) |
7845 4406 90E1 ldi r25,hi8(4096) |
7846 4408 9093 0000 sts (MesswertNick)+1,r25 |
7847 440c 8093 0000 sts MesswertNick,r24 |
7848 .L576: |
7849 4410 8091 0000 lds r24,MesswertNick |
7850 4414 9091 0000 lds r25,(MesswertNick)+1 |
7851 4418 8050 subi r24,lo8(-4096) |
7852 441a 904F sbci r25,hi8(-4096) |
7853 441c 34F4 brge .L577 |
7854 441e 80E0 ldi r24,lo8(-4096) |
7855 4420 90EF ldi r25,hi8(-4096) |
7856 4422 9093 0000 sts (MesswertNick)+1,r25 |
7857 4426 8093 0000 sts MesswertNick,r24 |
7858 .L577: |
7859 442a B1E0 ldi r27,lo8(4097) |
7860 442c 8B16 cp r8,r27 |
7861 442e B0E1 ldi r27,hi8(4097) |
7862 4430 9B06 cpc r9,r27 |
7863 4432 34F0 brlt .L578 |
7864 4434 80E0 ldi r24,lo8(4096) |
7865 4436 90E1 ldi r25,hi8(4096) |
7866 4438 9093 0000 sts (MesswertRoll)+1,r25 |
7867 443c 8093 0000 sts MesswertRoll,r24 |
7868 .L578: |
7869 4440 8091 0000 lds r24,MesswertRoll |
7870 4444 9091 0000 lds r25,(MesswertRoll)+1 |
7871 4448 8050 subi r24,lo8(-4096) |
7872 444a 904F sbci r25,hi8(-4096) |
7873 444c 34F4 brge .L579 |
7874 444e 80E0 ldi r24,lo8(-4096) |
7875 4450 90EF ldi r25,hi8(-4096) |
7876 4452 9093 0000 sts (MesswertRoll)+1,r25 |
7877 4456 8093 0000 sts MesswertRoll,r24 |
7878 .L579: |
7879 445a 6150 subi r22,lo8(4097) |
7880 445c 7041 sbci r23,hi8(4097) |
7881 445e 34F0 brlt .L580 |
7882 4460 80E0 ldi r24,lo8(4096) |
7883 4462 90E1 ldi r25,hi8(4096) |
7884 4464 9093 0000 sts (MesswertGier)+1,r25 |
7885 4468 8093 0000 sts MesswertGier,r24 |
7886 .L580: |
7887 446c 8091 0000 lds r24,MesswertGier |
7888 4470 9091 0000 lds r25,(MesswertGier)+1 |
7889 4474 8050 subi r24,lo8(-4096) |
7890 4476 904F sbci r25,hi8(-4096) |
7891 4478 34F4 brge .L581 |
7892 447a 80E0 ldi r24,lo8(-4096) |
7893 447c 90EF ldi r25,hi8(-4096) |
7894 447e 9093 0000 sts (MesswertGier)+1,r25 |
7895 4482 8093 0000 sts MesswertGier,r24 |
7896 .L581: |
7897 4486 8091 0000 lds r24,BattLowVoltageWarning |
7898 448a 482F mov r20,r24 |
7899 448c 5527 clr r21 |
7900 448e 8091 0000 lds r24,UBat |
7901 4492 9091 0000 lds r25,(UBat)+1 |
7902 4496 4817 cp r20,r24 |
7903 4498 5907 cpc r21,r25 |
7904 449a 94F4 brge .L582 |
7905 449c 2091 0000 lds r18,UBat |
7906 44a0 3091 0000 lds r19,(UBat)+1 |
7907 44a4 6981 ldd r22,Y+1 |
7908 44a6 7A81 ldd r23,Y+2 |
7909 44a8 649F mul r22,r20 |
7910 44aa C001 movw r24,r0 |
7911 44ac 659F mul r22,r21 |
7912 44ae 900D add r25,r0 |
7913 44b0 749F mul r23,r20 |
7914 44b2 900D add r25,r0 |
7915 44b4 1124 clr r1 |
7916 44b6 B901 movw r22,r18 |
7917 44b8 0E94 0000 call __udivmodhi4 |
7918 44bc 7A83 std Y+2,r23 |
7919 44be 6983 std Y+1,r22 |
7920 .L582: |
7921 44c0 8981 ldd r24,Y+1 |
7922 44c2 9A81 ldd r25,Y+2 |
7923 44c4 880F lsl r24 |
7924 44c6 991F rol r25 |
7925 44c8 880F lsl r24 |
7926 44ca 991F rol r25 |
7927 44cc 9A83 std Y+2,r25 |
7928 44ce 8983 std Y+1,r24 |
7929 44d0 4091 0000 lds r20,EE_Parameter+13 |
7930 44d4 40FF sbrs r20,0 |
7931 44d6 BDC6 rjmp .L583 |
7932 44d8 EE20 tst r14 |
7933 44da 09F0 breq .+2 |
7934 44dc BAC6 rjmp .L583 |
7935 44de FF20 tst r15 |
7936 44e0 09F0 breq .+2 |
7937 44e2 B7C6 rjmp .L583 |
7938 44e4 AA24 clr r10 |
7939 44e6 BB24 clr r11 |
7940 44e8 4501 movw r8,r10 |
7941 44ea 8091 0000 lds r24,HoverGas |
7942 44ee 9091 0000 lds r25,(HoverGas)+1 |
7943 44f2 9093 0000 sts (DebugOut+44)+1,r25 |
7944 44f6 8093 0000 sts DebugOut+44,r24 |
7945 44fa 2091 0000 lds r18,BaroExpandActive |
7946 44fe 3091 0000 lds r19,(BaroExpandActive)+1 |
7947 4502 2115 cp r18,__zero_reg__ |
7948 4504 3105 cpc r19,__zero_reg__ |
7949 4506 09F0 breq .+2 |
7950 4508 3FC0 rjmp .L584 |
7951 450a 8091 0000 lds r24,MessLuftdruck |
7952 450e 9091 0000 lds r25,(MessLuftdruck)+1 |
7953 4512 8959 subi r24,lo8(921) |
7954 4514 9340 sbci r25,hi8(921) |
7955 4516 58F0 brlo .L585 |
7956 4518 87B5 in r24,71-0x20 |
7957 451a 853F cpi r24,lo8(-11) |
7958 451c 20F4 brsh .L586 |
7959 451e 8091 0000 lds r24,ExpandBaro |
7960 4522 8150 subi r24,lo8(-(-1)) |
7961 4524 11C0 rjmp .L796 |
7962 .L586: |
7963 4526 81E0 ldi r24,lo8(1) |
7964 4528 8093 0000 sts BaroAtLowerLimit.30,r24 |
7965 452c 4EC0 rjmp .L593 |
7966 .L585: |
7967 452e 8091 0000 lds r24,MessLuftdruck |
7968 4532 9091 0000 lds r25,(MessLuftdruck)+1 |
7969 4536 8436 cpi r24,100 |
7970 4538 9105 cpc r25,__zero_reg__ |
7971 453a 08F5 brsh .L589 |
7972 453c 87B5 in r24,71-0x20 |
7973 453e 8B30 cpi r24,lo8(11) |
7974 4540 D0F0 brlo .L590 |
7975 4542 8091 0000 lds r24,ExpandBaro |
7976 4546 8F5F subi r24,lo8(-(1)) |
7977 .L796: |
7978 4548 8093 0000 sts ExpandBaro,r24 |
7979 454c 9AE0 ldi r25,lo8(10) |
7980 454e 8902 muls r24,r25 |
7981 4550 9001 movw r18,r0 |
7982 4552 1124 clr r1 |
7983 4554 8091 0000 lds r24,DruckOffsetSetting |
7984 4558 821B sub r24,r18 |
7985 455a 87BD out 71-0x20,r24 |
7986 455c 8CE2 ldi r24,lo8(300) |
7987 455e 91E0 ldi r25,hi8(300) |
7988 4560 9093 0000 sts (beeptime)+1,r25 |
7989 4564 8093 0000 sts beeptime,r24 |
7990 4568 8EE5 ldi r24,lo8(350) |
7991 456a 91E0 ldi r25,hi8(350) |
7992 456c 9093 0000 sts (BaroExpandActive)+1,r25 |
7993 4570 8093 0000 sts BaroExpandActive,r24 |
7994 4574 2AC0 rjmp .L593 |
7995 .L590: |
7996 4576 81E0 ldi r24,lo8(1) |
7997 4578 8093 0000 sts BaroAtUpperLimit.29,r24 |
7998 457c 26C0 rjmp .L593 |
7999 .L589: |
8000 457e F092 0000 sts BaroAtUpperLimit.29,r15 |
8001 4582 F092 0000 sts BaroAtLowerLimit.30,r15 |
8002 4586 21C0 rjmp .L593 |
8003 .L584: |
8004 4588 8091 0000 lds r24,HoehenWert |
8005 458c 9091 0000 lds r25,(HoehenWert)+1 |
8006 4590 A091 0000 lds r26,(HoehenWert)+2 |
8007 4594 B091 0000 lds r27,(HoehenWert)+3 |
8008 4598 14E0 ldi r17,4 |
8009 459a 880F 1: lsl r24 |
8010 459c 991F rol r25 |
8011 459e AA1F rol r26 |
8012 45a0 BB1F rol r27 |
8013 45a2 1A95 dec r17 |
8014 45a4 D1F7 brne 1b |
8015 45a6 8093 0000 sts SummenHoehe,r24 |
8016 45aa 9093 0000 sts (SummenHoehe)+1,r25 |
8017 45ae A093 0000 sts (SummenHoehe)+2,r26 |
8018 45b2 B093 0000 sts (SummenHoehe)+3,r27 |
8019 45b6 B092 0000 sts (VarioMeter)+1,r11 |
8020 45ba A092 0000 sts VarioMeter,r10 |
8021 45be 2150 subi r18,lo8(-(-1)) |
8022 45c0 3040 sbci r19,hi8(-(-1)) |
8023 45c2 3093 0000 sts (BaroExpandActive)+1,r19 |
8024 45c6 2093 0000 sts BaroExpandActive,r18 |
8025 .L593: |
8026 45ca 2091 0000 lds r18,Parameter_MaxHoehe |
8027 45ce 41FF sbrs r20,1 |
8028 45d0 24C0 rjmp .L594 |
8029 45d2 2233 cpi r18,lo8(50) |
8030 45d4 D8F4 brsh .L595 |
8031 45d6 8091 0000 lds r24,delay.28 |
8032 45da 8150 subi r24,lo8(-(-1)) |
8033 45dc 8093 0000 sts delay.28,r24 |
8034 45e0 8F3F cpi r24,lo8(-1) |
8035 45e2 D9F5 brne .L598 |
8036 45e4 1092 0000 sts HoehenReglerAktiv,__zero_reg__ |
8037 45e8 8091 0000 lds r24,HoehenWert |
8038 45ec 9091 0000 lds r25,(HoehenWert)+1 |
8039 45f0 A091 0000 lds r26,(HoehenWert)+2 |
8040 45f4 B091 0000 lds r27,(HoehenWert)+3 |
8041 45f8 8093 0000 sts SollHoehe,r24 |
8042 45fc 9093 0000 sts (SollHoehe)+1,r25 |
8043 4600 A093 0000 sts (SollHoehe)+2,r26 |
8044 4604 B093 0000 sts (SollHoehe)+3,r27 |
8045 4608 81E0 ldi r24,lo8(1) |
8046 460a 04C0 rjmp .L797 |
8047 .L595: |
8048 460c 81E0 ldi r24,lo8(1) |
8049 460e 8093 0000 sts HoehenReglerAktiv,r24 |
8050 4612 88EC ldi r24,lo8(-56) |
8051 .L797: |
8052 4614 8093 0000 sts delay.28,r24 |
8053 4618 20C0 rjmp .L598 |
8054 .L594: |
8055 461a 8091 0000 lds r24,ExternHoehenValue |
8056 461e 9091 0000 lds r25,(ExternHoehenValue)+1 |
8057 4622 820F add r24,r18 |
8058 4624 911D adc r25,__zero_reg__ |
8059 4626 2091 0000 lds r18,EE_Parameter+18 |
8060 462a 3327 clr r19 |
8061 462c 829F mul r24,r18 |
8062 462e F001 movw r30,r0 |
8063 4630 839F mul r24,r19 |
8064 4632 F00D add r31,r0 |
8065 4634 929F mul r25,r18 |
8066 4636 F00D add r31,r0 |
8067 4638 1124 clr r1 |
8068 463a CF01 movw r24,r30 |
8069 463c AA27 clr r26 |
8070 463e 97FD sbrc r25,7 |
8071 4640 A095 com r26 |
8072 4642 BA2F mov r27,r26 |
8073 4644 8093 0000 sts SollHoehe,r24 |
8074 4648 9093 0000 sts (SollHoehe)+1,r25 |
8075 464c A093 0000 sts (SollHoehe)+2,r26 |
8076 4650 B093 0000 sts (SollHoehe)+3,r27 |
8077 4654 81E0 ldi r24,lo8(1) |
8078 4656 8093 0000 sts HoehenReglerAktiv,r24 |
8079 .L598: |
8080 465a 8091 0000 lds r24,IntegralNick |
8081 465e 9091 0000 lds r25,(IntegralNick)+1 |
8082 4662 A091 0000 lds r26,(IntegralNick)+2 |
8083 4666 B091 0000 lds r27,(IntegralNick)+3 |
8084 466a E090 0000 lds r14,GIER_GRAD_FAKTOR |
8085 466e F090 0000 lds r15,(GIER_GRAD_FAKTOR)+1 |
8086 4672 0091 0000 lds r16,(GIER_GRAD_FAKTOR)+2 |
8087 4676 1091 0000 lds r17,(GIER_GRAD_FAKTOR)+3 |
8088 467a BC01 movw r22,r24 |
8089 467c CD01 movw r24,r26 |
8090 467e A801 movw r20,r16 |
8091 4680 9701 movw r18,r14 |
8092 4682 0E94 0000 call __divmodsi4 |
8093 4686 5901 movw r10,r18 |
8094 4688 6A01 movw r12,r20 |
8095 468a 8091 0000 lds r24,IntegralRoll |
8096 468e 9091 0000 lds r25,(IntegralRoll)+1 |
8097 4692 A091 0000 lds r26,(IntegralRoll)+2 |
8098 4696 B091 0000 lds r27,(IntegralRoll)+3 |
8099 469a BC01 movw r22,r24 |
8100 469c CD01 movw r24,r26 |
8101 469e A801 movw r20,r16 |
8102 46a0 9701 movw r18,r14 |
8103 46a2 0E94 0000 call __divmodsi4 |
8104 46a6 B901 movw r22,r18 |
8105 46a8 C501 movw r24,r10 |
8106 46aa 0E94 0000 call ihypot |
8107 46ae 8C01 movw r16,r24 |
8108 46b0 CC97 sbiw r24,60 |
8109 46b2 14F0 brlt .L599 |
8110 46b4 0CE3 ldi r16,lo8(60) |
8111 46b6 10E0 ldi r17,hi8(60) |
8112 .L599: |
8113 46b8 C801 movw r24,r16 |
8114 46ba 0E94 0000 call c_cos_8192 |
8115 46be 8C01 movw r16,r24 |
8116 46c0 80E2 ldi r24,lo8(32) |
8117 46c2 8093 0000 sts VarioCharacter,r24 |
8118 46c6 8091 0000 lds r24,HoehenReglerAktiv |
8119 46ca 8823 tst r24 |
8120 46cc 09F4 brne .+2 |
8121 46ce 47C4 rjmp .L600 |
8122 46d0 8091 0000 lds r24,FC_StatusFlags |
8123 46d4 9927 clr r25 |
8124 46d6 9C01 movw r18,r24 |
8125 46d8 2071 andi r18,lo8(16) |
8126 46da 3070 andi r19,hi8(16) |
8127 46dc 84FD sbrc r24,4 |
8128 46de 3FC4 rjmp .L600 |
8129 46e0 6091 0000 lds r22,EE_Parameter+102 |
8130 46e4 60FD sbrc r22,0 |
8131 46e6 04C0 rjmp .L602 |
8132 46e8 8091 0000 lds r24,EE_Parameter+13 |
8133 46ec 81FD sbrc r24,1 |
8134 46ee 0CC0 rjmp .L601 |
8135 .L602: |
8136 46f0 C980 ldd r12,Y+1 |
8137 46f2 DA80 ldd r13,Y+2 |
8138 46f4 3093 0000 sts (HeightTrimming.22)+1,r19 |
8139 46f8 2093 0000 sts HeightTrimming.22,r18 |
8140 46fc 8091 0000 lds r24,FC_StatusFlags |
8141 4700 806C ori r24,lo8(-64) |
8142 4702 8093 0000 sts FC_StatusFlags,r24 |
8143 4706 99C1 rjmp .L603 |
8144 .L601: |
8145 4708 8091 0000 lds r24,FC_StatusFlags |
8146 470c 81FF sbrs r24,1 |
8147 470e 6BC1 rjmp .L604 |
8148 4710 4091 0000 lds r20,StickGasHover.24 |
8149 4714 5091 0000 lds r21,(StickGasHover.24)+1 |
8150 4718 CA01 movw r24,r20 |
8151 471a 0F96 adiw r24,15 |
8152 471c 2091 0000 lds r18,StickGas |
8153 4720 3091 0000 lds r19,(StickGas)+1 |
8154 4724 8217 cp r24,r18 |
8155 4726 9307 cpc r25,r19 |
8156 4728 BCF5 brge .L605 |
8157 472a 8091 0000 lds r24,BaroAtUpperLimit.29 |
8158 472e 8823 tst r24 |
8159 4730 99F5 brne .L605 |
8160 4732 8091 0000 lds r24,FC_StatusFlags |
8161 4736 87FF sbrs r24,7 |
8162 4738 15C0 rjmp .L606 |
8163 473a 8091 0000 lds r24,FC_StatusFlags |
8164 473e 8F77 andi r24,lo8(127) |
8165 4740 8093 0000 sts FC_StatusFlags,r24 |
8166 4744 8091 0000 lds r24,HoehenWert |
8167 4748 9091 0000 lds r25,(HoehenWert)+1 |
8168 474c A091 0000 lds r26,(HoehenWert)+2 |
8169 4750 B091 0000 lds r27,(HoehenWert)+3 |
8170 4754 8093 0000 sts SollHoehe,r24 |
8171 4758 9093 0000 sts (SollHoehe)+1,r25 |
8172 475c A093 0000 sts (SollHoehe)+2,r26 |
8173 4760 B093 0000 sts (SollHoehe)+3,r27 |
8174 .L606: |
8175 4764 8091 0000 lds r24,FC_StatusFlags |
8176 4768 8064 ori r24,lo8(64) |
8177 476a 8093 0000 sts FC_StatusFlags,r24 |
8178 476e 241B sub r18,r20 |
8179 4770 350B sbc r19,r21 |
8180 4772 2F50 subi r18,lo8(-(-15)) |
8181 4774 3040 sbci r19,hi8(-(-15)) |
8182 4776 37FF sbrs r19,7 |
8183 4778 03C0 rjmp .L607 |
8184 477a 3095 com r19 |
8185 477c 2195 neg r18 |
8186 477e 3F4F sbci r19,lo8(-1) |
8187 .L607: |
8188 4780 8091 0000 lds r24,HeightTrimming.22 |
8189 4784 9091 0000 lds r25,(HeightTrimming.22)+1 |
8190 4788 820F add r24,r18 |
8191 478a 931F adc r25,r19 |
8192 478c 9093 0000 sts (HeightTrimming.22)+1,r25 |
8193 4790 8093 0000 sts HeightTrimming.22,r24 |
8194 4794 8BE2 ldi r24,lo8(43) |
8195 4796 6EC0 rjmp .L798 |
8196 .L605: |
8197 4798 CA01 movw r24,r20 |
8198 479a 0F97 sbiw r24,15 |
8199 479c 2817 cp r18,r24 |
8200 479e 3907 cpc r19,r25 |
8201 47a0 BCF5 brge .L609 |
8202 47a2 8091 0000 lds r24,BaroAtLowerLimit.30 |
8203 47a6 8823 tst r24 |
8204 47a8 99F5 brne .L609 |
8205 47aa 8091 0000 lds r24,FC_StatusFlags |
8206 47ae 86FF sbrs r24,6 |
8207 47b0 15C0 rjmp .L610 |
8208 47b2 8091 0000 lds r24,FC_StatusFlags |
8209 47b6 8F7B andi r24,lo8(-65) |
8210 47b8 8093 0000 sts FC_StatusFlags,r24 |
8211 47bc 8091 0000 lds r24,HoehenWert |
8212 47c0 9091 0000 lds r25,(HoehenWert)+1 |
8213 47c4 A091 0000 lds r26,(HoehenWert)+2 |
8214 47c8 B091 0000 lds r27,(HoehenWert)+3 |
8215 47cc 8093 0000 sts SollHoehe,r24 |
8216 47d0 9093 0000 sts (SollHoehe)+1,r25 |
8217 47d4 A093 0000 sts (SollHoehe)+2,r26 |
8218 47d8 B093 0000 sts (SollHoehe)+3,r27 |
8219 .L610: |
8220 47dc 8091 0000 lds r24,FC_StatusFlags |
8221 47e0 8068 ori r24,lo8(-128) |
8222 47e2 8093 0000 sts FC_StatusFlags,r24 |
8223 47e6 241B sub r18,r20 |
8224 47e8 350B sbc r19,r21 |
8225 47ea 215F subi r18,lo8(-(15)) |
8226 47ec 3F4F sbci r19,hi8(-(15)) |
8227 47ee 37FF sbrs r19,7 |
8228 47f0 03C0 rjmp .L611 |
8229 47f2 3095 com r19 |
8230 47f4 2195 neg r18 |
8231 47f6 3F4F sbci r19,lo8(-1) |
8232 .L611: |
8233 47f8 8091 0000 lds r24,HeightTrimming.22 |
8234 47fc 9091 0000 lds r25,(HeightTrimming.22)+1 |
8235 4800 821B sub r24,r18 |
8236 4802 930B sbc r25,r19 |
8237 4804 9093 0000 sts (HeightTrimming.22)+1,r25 |
8238 4808 8093 0000 sts HeightTrimming.22,r24 |
8239 480c 8DE2 ldi r24,lo8(45) |
8240 480e 32C0 rjmp .L798 |
8241 .L609: |
8242 4810 8091 0000 lds r24,FC_StatusFlags |
8243 4814 807C andi r24,lo8(-64) |
8244 4816 69F1 breq .L613 |
8245 4818 8091 0000 lds r24,FC_StatusFlags |
8246 481c 8F73 andi r24,lo8(63) |
8247 481e 8093 0000 sts FC_StatusFlags,r24 |
8248 4822 1092 0000 sts (HeightTrimming.22)+1,__zero_reg__ |
8249 4826 1092 0000 sts HeightTrimming.22,__zero_reg__ |
8250 482a 2091 0000 lds r18,HoehenWert |
8251 482e 3091 0000 lds r19,(HoehenWert)+1 |
8252 4832 4091 0000 lds r20,(HoehenWert)+2 |
8253 4836 5091 0000 lds r21,(HoehenWert)+3 |
8254 483a 2093 0000 sts SollHoehe,r18 |
8255 483e 3093 0000 sts (SollHoehe)+1,r19 |
8256 4842 4093 0000 sts (SollHoehe)+2,r20 |
8257 4846 5093 0000 sts (SollHoehe)+3,r21 |
8258 484a 61FF sbrs r22,1 |
8259 484c 06C0 rjmp .L614 |
8260 484e 84EF ldi r24,lo8(500) |
8261 4850 91E0 ldi r25,hi8(500) |
8262 4852 9093 0000 sts (beeptime)+1,r25 |
8263 4856 8093 0000 sts beeptime,r24 |
8264 .L614: |
8265 485a 8091 0000 lds r24,StartTrigger |
8266 485e 8823 tst r24 |
8267 4860 41F4 brne .L613 |
8268 4862 2333 cpi r18,lo8(51) |
8269 4864 3105 cpc r19,__zero_reg__ |
8270 4866 4105 cpc r20,__zero_reg__ |
8271 4868 5105 cpc r21,__zero_reg__ |
8272 486a 1CF0 brlt .L613 |
8273 486c 81E0 ldi r24,lo8(1) |
8274 486e 8093 0000 sts StartTrigger,r24 |
8275 .L613: |
8276 4872 8DE3 ldi r24,lo8(61) |
8277 .L798: |
8278 4874 8093 0000 sts VarioCharacter,r24 |
8279 4878 2091 0000 lds r18,HeightTrimming.22 |
8280 487c 3091 0000 lds r19,(HeightTrimming.22)+1 |
8281 4880 C901 movw r24,r18 |
8282 4882 37FF sbrs r19,7 |
8283 4884 04C0 rjmp .L617 |
8284 4886 8827 clr r24 |
8285 4888 9927 clr r25 |
8286 488a 821B sub r24,r18 |
8287 488c 930B sbc r25,r19 |
8288 .L617: |
8289 488e 8150 subi r24,lo8(513) |
8290 4890 9240 sbci r25,hi8(513) |
8291 4892 0CF4 brge .+2 |
8292 4894 91C0 rjmp .L616 |
8293 4896 8091 0000 lds r24,EE_Parameter+18 |
8294 489a 9927 clr r25 |
8295 489c 289F mul r18,r24 |
8296 489e 7001 movw r14,r0 |
8297 48a0 299F mul r18,r25 |
8298 48a2 F00C add r15,r0 |
8299 48a4 389F mul r19,r24 |
8300 48a6 F00C add r15,r0 |
8301 48a8 1124 clr r1 |
8302 48aa C701 movw r24,r14 |
8303 48ac 60E0 ldi r22,lo8(1280) |
8304 48ae 75E0 ldi r23,hi8(1280) |
8305 48b0 0E94 0000 call __divmodhi4 |
8306 48b4 CB01 movw r24,r22 |
8307 48b6 AA27 clr r26 |
8308 48b8 97FD sbrc r25,7 |
8309 48ba A095 com r26 |
8310 48bc BA2F mov r27,r26 |
8311 48be 2091 0000 lds r18,SollHoehe |
8312 48c2 3091 0000 lds r19,(SollHoehe)+1 |
8313 48c6 4091 0000 lds r20,(SollHoehe)+2 |
8314 48ca 5091 0000 lds r21,(SollHoehe)+3 |
8315 48ce 280F add r18,r24 |
8316 48d0 391F adc r19,r25 |
8317 48d2 4A1F adc r20,r26 |
8318 48d4 5B1F adc r21,r27 |
8319 48d6 2093 0000 sts SollHoehe,r18 |
8320 48da 3093 0000 sts (SollHoehe)+1,r19 |
8321 48de 4093 0000 sts (SollHoehe)+2,r20 |
8322 48e2 5093 0000 sts (SollHoehe)+3,r21 |
8323 48e6 1092 0000 sts (HeightTrimming.22)+1,__zero_reg__ |
8324 48ea 1092 0000 sts HeightTrimming.22,__zero_reg__ |
8325 48ee C090 0000 lds r12,HoehenWert |
8326 48f2 D090 0000 lds r13,(HoehenWert)+1 |
8327 48f6 E090 0000 lds r14,(HoehenWert)+2 |
8328 48fa F090 0000 lds r15,(HoehenWert)+3 |
8329 48fe D701 movw r26,r14 |
8330 4900 C601 movw r24,r12 |
8331 4902 8050 subi r24,lo8(-(-1024)) |
8332 4904 9440 sbci r25,hi8(-(-1024)) |
8333 4906 A040 sbci r26,hlo8(-(-1024)) |
8334 4908 B040 sbci r27,hhi8(-(-1024)) |
8335 490a 8217 cp r24,r18 |
8336 490c 9307 cpc r25,r19 |
8337 490e A407 cpc r26,r20 |
8338 4910 B507 cpc r27,r21 |
8339 4912 5CF4 brge .L799 |
8340 4914 D701 movw r26,r14 |
8341 4916 C601 movw r24,r12 |
8342 4918 8050 subi r24,lo8(-(1024)) |
8343 491a 9C4F sbci r25,hi8(-(1024)) |
8344 491c AF4F sbci r26,hlo8(-(1024)) |
8345 491e BF4F sbci r27,hhi8(-(1024)) |
8346 4920 2817 cp r18,r24 |
8347 4922 3907 cpc r19,r25 |
8348 4924 4A07 cpc r20,r26 |
8349 4926 5B07 cpc r21,r27 |
8350 4928 44F0 brlt .L619 |
8351 .L799: |
8352 492a 8093 0000 sts SollHoehe,r24 |
8353 492e 9093 0000 sts (SollHoehe)+1,r25 |
8354 4932 A093 0000 sts (SollHoehe)+2,r26 |
8355 4936 B093 0000 sts (SollHoehe)+3,r27 |
8356 .L619: |
8357 493a 8091 0000 lds r24,EE_Parameter+102 |
8358 493e 81FF sbrs r24,1 |
8359 4940 06C0 rjmp .L621 |
8360 4942 84E6 ldi r24,lo8(100) |
8361 4944 90E0 ldi r25,hi8(100) |
8362 4946 9093 0000 sts (beeptime)+1,r25 |
8363 494a 8093 0000 sts beeptime,r24 |
8364 .L621: |
8365 494e 8091 0000 lds r24,EE_Parameter+22 |
8366 4952 8823 tst r24 |
8367 4954 89F5 brne .L616 |
8368 4956 4091 0000 lds r20,HoverGas |
8369 495a 5091 0000 lds r21,(HoverGas)+1 |
8370 495e 57FF sbrs r21,7 |
8371 4960 02C0 rjmp .L623 |
8372 4962 4D5F subi r20,lo8(-(3)) |
8373 4964 5F4F sbci r21,hi8(-(3)) |
8374 .L623: |
8375 4966 5595 asr r21 |
8376 4968 4795 ror r20 |
8377 496a 5595 asr r21 |
8378 496c 4795 ror r20 |
8379 496e 8091 0000 lds r24,UBat |
8380 4972 9091 0000 lds r25,(UBat)+1 |
8381 4976 2091 0000 lds r18,BattLowVoltageWarning |
8382 497a 3327 clr r19 |
8383 497c 489F mul r20,r24 |
8384 497e B001 movw r22,r0 |
8385 4980 499F mul r20,r25 |
8386 4982 700D add r23,r0 |
8387 4984 589F mul r21,r24 |
8388 4986 700D add r23,r0 |
8389 4988 1124 clr r1 |
8390 498a CB01 movw r24,r22 |
8391 498c B901 movw r22,r18 |
8392 498e 0E94 0000 call __divmodhi4 |
8393 4992 7093 0000 sts (StickGasHover.24)+1,r23 |
8394 4996 6093 0000 sts StickGasHover.24,r22 |
8395 499a 6634 cpi r22,70 |
8396 499c 7105 cpc r23,__zero_reg__ |
8397 499e 1CF4 brge .L624 |
8398 49a0 86E4 ldi r24,lo8(70) |
8399 49a2 90E0 ldi r25,hi8(70) |
8400 49a4 05C0 rjmp .L800 |
8401 .L624: |
8402 49a6 6739 cpi r22,151 |
8403 49a8 7105 cpc r23,__zero_reg__ |
8404 49aa 34F0 brlt .L616 |
8405 49ac 86E9 ldi r24,lo8(150) |
8406 49ae 90E0 ldi r25,hi8(150) |
8407 .L800: |
8408 49b0 9093 0000 sts (StickGasHover.24)+1,r25 |
8409 49b4 8093 0000 sts StickGasHover.24,r24 |
8410 .L616: |
8411 49b8 8091 0000 lds r24,BaroExpandActive |
8412 49bc 9091 0000 lds r25,(BaroExpandActive)+1 |
8413 49c0 892B or r24,r25 |
8414 49c2 B9F1 breq .L628 |
8415 49c4 8091 0000 lds r24,HoehenWert |
8416 49c8 9091 0000 lds r25,(HoehenWert)+1 |
8417 49cc A091 0000 lds r26,(HoehenWert)+2 |
8418 49d0 B091 0000 lds r27,(HoehenWert)+3 |
8419 49d4 8093 0000 sts SollHoehe,r24 |
8420 49d8 9093 0000 sts (SollHoehe)+1,r25 |
8421 49dc A093 0000 sts (SollHoehe)+2,r26 |
8422 49e0 B093 0000 sts (SollHoehe)+3,r27 |
8423 49e4 26C0 rjmp .L628 |
8424 .L604: |
8425 49e6 8091 0000 lds r24,HoehenWert |
8426 49ea 9091 0000 lds r25,(HoehenWert)+1 |
8427 49ee A091 0000 lds r26,(HoehenWert)+2 |
8428 49f2 B091 0000 lds r27,(HoehenWert)+3 |
8429 49f6 8059 subi r24,lo8(-(-400)) |
8430 49f8 9140 sbci r25,hi8(-(-400)) |
8431 49fa A040 sbci r26,hlo8(-(-400)) |
8432 49fc B040 sbci r27,hhi8(-(-400)) |
8433 49fe 8093 0000 sts SollHoehe,r24 |
8434 4a02 9093 0000 sts (SollHoehe)+1,r25 |
8435 4a06 A093 0000 sts (SollHoehe)+2,r26 |
8436 4a0a B093 0000 sts (SollHoehe)+3,r27 |
8437 4a0e 8091 0000 lds r24,EE_Parameter+22 |
8438 4a12 8823 tst r24 |
8439 4a14 11F0 breq .L629 |
8440 4a16 9927 clr r25 |
8441 4a18 02C0 rjmp .L801 |
8442 .L629: |
8443 4a1a 88E7 ldi r24,lo8(120) |
8444 4a1c 90E0 ldi r25,hi8(120) |
8445 .L801: |
8446 4a1e 9093 0000 sts (StickGasHover.24)+1,r25 |
8447 4a22 8093 0000 sts StickGasHover.24,r24 |
8448 4a26 8981 ldd r24,Y+1 |
8449 4a28 9A81 ldd r25,Y+2 |
8450 4a2a 9093 0000 sts (HoverGas)+1,r25 |
8451 4a2e 8093 0000 sts HoverGas,r24 |
8452 .L628: |
8453 4a32 C090 0000 lds r12,HoverGas |
8454 4a36 D090 0000 lds r13,(HoverGas)+1 |
8455 .L603: |
8456 4a3a 2091 0000 lds r18,HoehenWert |
8457 4a3e 3091 0000 lds r19,(HoehenWert)+1 |
8458 4a42 4091 0000 lds r20,(HoehenWert)+2 |
8459 4a46 5091 0000 lds r21,(HoehenWert)+3 |
8460 4a4a 2B8B std Y+19,r18 |
8461 4a4c 3C8B std Y+20,r19 |
8462 4a4e 4D8B std Y+21,r20 |
8463 4a50 5E8B std Y+22,r21 |
8464 4a52 2091 0000 lds r18,SollHoehe |
8465 4a56 3091 0000 lds r19,(SollHoehe)+1 |
8466 4a5a 4091 0000 lds r20,(SollHoehe)+2 |
8467 4a5e 5091 0000 lds r21,(SollHoehe)+3 |
8468 4a62 6B89 ldd r22,Y+19 |
8469 4a64 7C89 ldd r23,Y+20 |
8470 4a66 8D89 ldd r24,Y+21 |
8471 4a68 9E89 ldd r25,Y+22 |
8472 4a6a 2617 cp r18,r22 |
8473 4a6c 3707 cpc r19,r23 |
8474 4a6e 4807 cpc r20,r24 |
8475 4a70 5907 cpc r21,r25 |
8476 4a72 24F0 brlt .L632 |
8477 4a74 8091 0000 lds r24,EE_Parameter+102 |
8478 4a78 80FD sbrc r24,0 |
8479 4a7a B8C2 rjmp .L690 |
8480 .L632: |
8481 4a7c 8091 0000 lds r24,BaroExpandActive |
8482 4a80 9091 0000 lds r25,(BaroExpandActive)+1 |
8483 4a84 892B or r24,r25 |
8484 4a86 39F0 breq .L633 |
8485 4a88 C090 0000 lds r12,HoverGas |
8486 4a8c D090 0000 lds r13,(HoverGas)+1 |
8487 4a90 AA24 clr r10 |
8488 4a92 BB24 clr r11 |
8489 4a94 D9C0 rjmp .L634 |
8490 .L633: |
8491 4a96 8B89 ldd r24,Y+19 |
8492 4a98 9C89 ldd r25,Y+20 |
8493 4a9a AD89 ldd r26,Y+21 |
8494 4a9c BE89 ldd r27,Y+22 |
8495 4a9e 821B sub r24,r18 |
8496 4aa0 930B sbc r25,r19 |
8497 4aa2 A40B sbc r26,r20 |
8498 4aa4 B50B sbc r27,r21 |
8499 4aa6 8093 0000 sts tmp_long.1,r24 |
8500 4aaa 9093 0000 sts (tmp_long.1)+1,r25 |
8501 4aae A093 0000 sts (tmp_long.1)+2,r26 |
8502 4ab2 B093 0000 sts (tmp_long.1)+3,r27 |
8503 4ab6 8230 cpi r24,lo8(-32766) |
8504 4ab8 70E8 ldi r23,hi8(-32766) |
8505 4aba 9707 cpc r25,r23 |
8506 4abc 7FEF ldi r23,hlo8(-32766) |
8507 4abe A707 cpc r26,r23 |
8508 4ac0 7FEF ldi r23,hhi8(-32766) |
8509 4ac2 B707 cpc r27,r23 |
8510 4ac4 2CF4 brge .L635 |
8511 4ac6 81E0 ldi r24,lo8(-32767) |
8512 4ac8 90E8 ldi r25,hi8(-32767) |
8513 4aca AFEF ldi r26,hlo8(-32767) |
8514 4acc BFEF ldi r27,hhi8(-32767) |
8515 4ace 09C0 rjmp .L802 |
8516 .L635: |
8517 4ad0 8F5F subi r24,lo8(32767) |
8518 4ad2 9F47 sbci r25,hi8(32767) |
8519 4ad4 A040 sbci r26,hlo8(32767) |
8520 4ad6 B040 sbci r27,hhi8(32767) |
8521 4ad8 64F0 brlt .L636 |
8522 4ada 8FEF ldi r24,lo8(32767) |
8523 4adc 9FE7 ldi r25,hi8(32767) |
8524 4ade A0E0 ldi r26,hlo8(32767) |
8525 4ae0 B0E0 ldi r27,hhi8(32767) |
8526 .L802: |
8527 4ae2 8093 0000 sts tmp_long.1,r24 |
8528 4ae6 9093 0000 sts (tmp_long.1)+1,r25 |
8529 4aea A093 0000 sts (tmp_long.1)+2,r26 |
8530 4aee B093 0000 sts (tmp_long.1)+3,r27 |
8531 .L636: |
8532 4af2 A090 0000 lds r10,tmp_long.1 |
8533 4af6 B090 0000 lds r11,(tmp_long.1)+1 |
8534 4afa 8091 0000 lds r24,Parameter_Hoehe_P |
8535 4afe 282F mov r18,r24 |
8536 4b00 3327 clr r19 |
8537 4b02 4427 clr r20 |
8538 4b04 5527 clr r21 |
8539 4b06 8091 0000 lds r24,tmp_long.1 |
8540 4b0a 9091 0000 lds r25,(tmp_long.1)+1 |
8541 4b0e A091 0000 lds r26,(tmp_long.1)+2 |
8542 4b12 B091 0000 lds r27,(tmp_long.1)+3 |
8543 4b16 BC01 movw r22,r24 |
8544 4b18 CD01 movw r24,r26 |
8545 4b1a 0E94 0000 call __mulsi3 |
8546 4b1e 97FF sbrs r25,7 |
8547 4b20 04C0 rjmp .L638 |
8548 4b22 615E subi r22,lo8(-(31)) |
8549 4b24 7F4F sbci r23,hi8(-(31)) |
8550 4b26 8F4F sbci r24,hlo8(-(31)) |
8551 4b28 9F4F sbci r25,hhi8(-(31)) |
8552 .L638: |
8553 4b2a A5E0 ldi r26,5 |
8554 4b2c 9595 1: asr r25 |
8555 4b2e 8795 ror r24 |
8556 4b30 7795 ror r23 |
8557 4b32 6795 ror r22 |
8558 4b34 AA95 dec r26 |
8559 4b36 D1F7 brne 1b |
8560 4b38 6093 0000 sts tmp_long.1,r22 |
8561 4b3c 7093 0000 sts (tmp_long.1)+1,r23 |
8562 4b40 8093 0000 sts (tmp_long.1)+2,r24 |
8563 4b44 9093 0000 sts (tmp_long.1)+3,r25 |
8564 4b48 6530 cpi r22,lo8(-507) |
8565 4b4a FEEF ldi r31,hi8(-507) |
8566 4b4c 7F07 cpc r23,r31 |
8567 4b4e FFEF ldi r31,hlo8(-507) |
8568 4b50 8F07 cpc r24,r31 |
8569 4b52 FFEF ldi r31,hhi8(-507) |
8570 4b54 9F07 cpc r25,r31 |
8571 4b56 2CF4 brge .L639 |
8572 4b58 84E0 ldi r24,lo8(-508) |
8573 4b5a 9EEF ldi r25,hi8(-508) |
8574 4b5c AFEF ldi r26,hlo8(-508) |
8575 4b5e BFEF ldi r27,hhi8(-508) |
8576 4b60 09C0 rjmp .L803 |
8577 .L639: |
8578 4b62 6050 subi r22,lo8(1024) |
8579 4b64 7440 sbci r23,hi8(1024) |
8580 4b66 8040 sbci r24,hlo8(1024) |
8581 4b68 9040 sbci r25,hhi8(1024) |
8582 4b6a 64F0 brlt .L640 |
8583 4b6c 80E0 ldi r24,lo8(1024) |
8584 4b6e 94E0 ldi r25,hi8(1024) |
8585 4b70 A0E0 ldi r26,hlo8(1024) |
8586 4b72 B0E0 ldi r27,hhi8(1024) |
8587 .L803: |
8588 4b74 8093 0000 sts tmp_long.1,r24 |
8589 4b78 9093 0000 sts (tmp_long.1)+1,r25 |
8590 4b7c A093 0000 sts (tmp_long.1)+2,r26 |
8591 4b80 B093 0000 sts (tmp_long.1)+3,r27 |
8592 .L640: |
8593 4b84 8090 0000 lds r8,tmp_long.1 |
8594 4b88 9090 0000 lds r9,(tmp_long.1)+1 |
8595 4b8c 2091 0000 lds r18,VarioMeter |
8596 4b90 3091 0000 lds r19,(VarioMeter)+1 |
8597 4b94 37FF sbrs r19,7 |
8598 4b96 02C0 rjmp .L642 |
8599 4b98 295F subi r18,lo8(-(7)) |
8600 4b9a 3F4F sbci r19,hi8(-(7)) |
8601 .L642: |
8602 4b9c F3E0 ldi r31,3 |
8603 4b9e 3595 1: asr r19 |
8604 4ba0 2795 ror r18 |
8605 4ba2 FA95 dec r31 |
8606 4ba4 E1F7 brne 1b |
8607 4ba6 4FEF ldi r20,hi8(-126) |
8608 4ba8 2238 cpi r18,lo8(-126) |
8609 4baa 3407 cpc r19,r20 |
8610 4bac 1CF4 brge .L643 |
8611 4bae 21E8 ldi r18,lo8(-127) |
8612 4bb0 3FEF ldi r19,hi8(-127) |
8613 4bb2 05C0 rjmp .L644 |
8614 .L643: |
8615 4bb4 2038 cpi r18,128 |
8616 4bb6 3105 cpc r19,__zero_reg__ |
8617 4bb8 14F0 brlt .L644 |
8618 4bba 20E8 ldi r18,lo8(128) |
8619 4bbc 30E0 ldi r19,hi8(128) |
8620 .L644: |
8621 4bbe C901 movw r24,r18 |
8622 4bc0 AA27 clr r26 |
8623 4bc2 97FD sbrc r25,7 |
8624 4bc4 A095 com r26 |
8625 4bc6 BA2F mov r27,r26 |
8626 4bc8 2091 0000 lds r18,Parameter_Luftdruck_D |
8627 4bcc 3327 clr r19 |
8628 4bce 4427 clr r20 |
8629 4bd0 5527 clr r21 |
8630 4bd2 BC01 movw r22,r24 |
8631 4bd4 CD01 movw r24,r26 |
8632 4bd6 0E94 0000 call __mulsi3 |
8633 4bda 97FF sbrs r25,7 |
8634 4bdc 04C0 rjmp .L646 |
8635 4bde 6D5F subi r22,lo8(-(3)) |
8636 4be0 7F4F sbci r23,hi8(-(3)) |
8637 4be2 8F4F sbci r24,hlo8(-(3)) |
8638 4be4 9F4F sbci r25,hhi8(-(3)) |
8639 .L646: |
8640 4be6 E2E0 ldi r30,2 |
8641 4be8 9595 1: asr r25 |
8642 4bea 8795 ror r24 |
8643 4bec 7795 ror r23 |
8644 4bee 6795 ror r22 |
8645 4bf0 EA95 dec r30 |
8646 4bf2 D1F7 brne 1b |
8647 4bf4 9B01 movw r18,r22 |
8648 4bf6 5FEF ldi r21,hi8(-255) |
8649 4bf8 6130 cpi r22,lo8(-255) |
8650 4bfa 7507 cpc r23,r21 |
8651 4bfc 1CF4 brge .L647 |
8652 4bfe 20E0 ldi r18,lo8(-256) |
8653 4c00 3FEF ldi r19,hi8(-256) |
8654 4c02 06C0 rjmp .L648 |
8655 .L647: |
8656 4c04 6F3F cpi r22,255 |
8657 4c06 7105 cpc r23,__zero_reg__ |
8658 4c08 19F0 breq .L648 |
8659 4c0a 14F0 brlt .L648 |
8660 4c0c 20E0 ldi r18,lo8(256) |
8661 4c0e 31E0 ldi r19,hi8(256) |
8662 .L648: |
8663 4c10 8091 0000 lds r24,FC_StatusFlags |
8664 4c14 807C andi r24,lo8(-64) |
8665 4c16 49F0 breq .L650 |
8666 4c18 C901 movw r24,r18 |
8667 4c1a 37FD sbrc r19,7 |
8668 4c1c 0396 adiw r24,3 |
8669 .L651: |
8670 4c1e 9C01 movw r18,r24 |
8671 4c20 3595 asr r19 |
8672 4c22 2795 ror r18 |
8673 4c24 3595 asr r19 |
8674 4c26 2795 ror r18 |
8675 4c28 0DC0 rjmp .L652 |
8676 .L650: |
8677 4c2a 8091 0000 lds r24,EE_Parameter+102 |
8678 4c2e 80FF sbrs r24,0 |
8679 4c30 09C0 rjmp .L652 |
8680 4c32 C901 movw r24,r18 |
8681 4c34 37FD sbrc r19,7 |
8682 4c36 0796 adiw r24,7 |
8683 .L654: |
8684 4c38 9C01 movw r18,r24 |
8685 4c3a 43E0 ldi r20,3 |
8686 4c3c 3595 1: asr r19 |
8687 4c3e 2795 ror r18 |
8688 4c40 4A95 dec r20 |
8689 4c42 E1F7 brne 1b |
8690 .L652: |
8691 4c44 820E add r8,r18 |
8692 4c46 931E adc r9,r19 |
8693 .L634: |
8694 4c48 2091 0000 lds r18,Parameter_Hoehe_ACC_Wirkung |
8695 4c4c 2223 tst r18 |
8696 4c4e 09F4 brne .+2 |
8697 4c50 54C0 rjmp .L655 |
8698 4c52 6091 0000 lds r22,Mess_Integral_Hoch |
8699 4c56 7091 0000 lds r23,(Mess_Integral_Hoch)+1 |
8700 4c5a 8091 0000 lds r24,(Mess_Integral_Hoch)+2 |
8701 4c5e 9091 0000 lds r25,(Mess_Integral_Hoch)+3 |
8702 4c62 97FF sbrs r25,7 |
8703 4c64 04C0 rjmp .L656 |
8704 4c66 6158 subi r22,lo8(-(127)) |
8705 4c68 7F4F sbci r23,hi8(-(127)) |
8706 4c6a 8F4F sbci r24,hlo8(-(127)) |
8707 4c6c 9F4F sbci r25,hhi8(-(127)) |
8708 .L656: |
8709 4c6e 37E0 ldi r19,7 |
8710 4c70 9595 1: asr r25 |
8711 4c72 8795 ror r24 |
8712 4c74 7795 ror r23 |
8713 4c76 6795 ror r22 |
8714 4c78 3A95 dec r19 |
8715 4c7a D1F7 brne 1b |
8716 4c7c 3327 clr r19 |
8717 4c7e 4427 clr r20 |
8718 4c80 5527 clr r21 |
8719 4c82 0E94 0000 call __mulsi3 |
8720 4c86 97FF sbrs r25,7 |
8721 4c88 04C0 rjmp .L657 |
8722 4c8a 615E subi r22,lo8(-(31)) |
8723 4c8c 7F4F sbci r23,hi8(-(31)) |
8724 4c8e 8F4F sbci r24,hlo8(-(31)) |
8725 4c90 9F4F sbci r25,hhi8(-(31)) |
8726 .L657: |
8727 4c92 B5E0 ldi r27,5 |
8728 4c94 9595 1: asr r25 |
8729 4c96 8795 ror r24 |
8730 4c98 7795 ror r23 |
8731 4c9a 6795 ror r22 |
8732 4c9c BA95 dec r27 |
8733 4c9e D1F7 brne 1b |
8734 4ca0 6093 0000 sts tmp_long.1,r22 |
8735 4ca4 7093 0000 sts (tmp_long.1)+1,r23 |
8736 4ca8 8093 0000 sts (tmp_long.1)+2,r24 |
8737 4cac 9093 0000 sts (tmp_long.1)+3,r25 |
8738 4cb0 6138 cpi r22,lo8(-127) |
8739 4cb2 AFEF ldi r26,hi8(-127) |
8740 4cb4 7A07 cpc r23,r26 |
8741 4cb6 AFEF ldi r26,hlo8(-127) |
8742 4cb8 8A07 cpc r24,r26 |
8743 4cba AFEF ldi r26,hhi8(-127) |
8744 4cbc 9A07 cpc r25,r26 |
8745 4cbe 2CF4 brge .L658 |
8746 4cc0 80E8 ldi r24,lo8(-128) |
8747 4cc2 9FEF ldi r25,hi8(-128) |
8748 4cc4 AFEF ldi r26,hlo8(-128) |
8749 4cc6 BFEF ldi r27,hhi8(-128) |
8750 4cc8 0AC0 rjmp .L804 |
8751 .L658: |
8752 4cca 6F3F cpi r22,lo8(255) |
8753 4ccc 7105 cpc r23,__zero_reg__ |
8754 4cce 8105 cpc r24,__zero_reg__ |
8755 4cd0 9105 cpc r25,__zero_reg__ |
8756 4cd2 69F0 breq .L659 |
8757 4cd4 64F0 brlt .L659 |
8758 4cd6 80E0 ldi r24,lo8(256) |
8759 4cd8 91E0 ldi r25,hi8(256) |
8760 4cda A0E0 ldi r26,hlo8(256) |
8761 4cdc B0E0 ldi r27,hhi8(256) |
8762 .L804: |
8763 4cde 8093 0000 sts tmp_long.1,r24 |
8764 4ce2 9093 0000 sts (tmp_long.1)+1,r25 |
8765 4ce6 A093 0000 sts (tmp_long.1)+2,r26 |
8766 4cea B093 0000 sts (tmp_long.1)+3,r27 |
8767 .L659: |
8768 4cee 8091 0000 lds r24,tmp_long.1 |
8769 4cf2 9091 0000 lds r25,(tmp_long.1)+1 |
8770 4cf6 880E add r8,r24 |
8771 4cf8 991E adc r9,r25 |
8772 .L655: |
8773 4cfa 8091 0000 lds r24,Parameter_Hoehe_GPS_Z |
8774 4cfe 282F mov r18,r24 |
8775 4d00 3327 clr r19 |
8776 4d02 8091 0000 lds r24,FromNaviCtrl_Value+4 |
8777 4d06 9927 clr r25 |
8778 4d08 87FD sbrc r24,7 |
8779 4d0a 9095 com r25 |
8780 4d0c 289F mul r18,r24 |
8781 4d0e F001 movw r30,r0 |
8782 4d10 299F mul r18,r25 |
8783 4d12 F00D add r31,r0 |
8784 4d14 389F mul r19,r24 |
8785 4d16 F00D add r31,r0 |
8786 4d18 1124 clr r1 |
8787 4d1a 9F01 movw r18,r30 |
8788 4d1c F7FF sbrs r31,7 |
8789 4d1e 02C0 rjmp .L661 |
8790 4d20 2158 subi r18,lo8(-(127)) |
8791 4d22 3F4F sbci r19,hi8(-(127)) |
8792 .L661: |
8793 4d24 220F lsl r18 |
8794 4d26 232F mov r18,r19 |
8795 4d28 221F rol r18 |
8796 4d2a 330B sbc r19,r19 |
8797 4d2c FFEF ldi r31,hi8(-127) |
8798 4d2e 2138 cpi r18,lo8(-127) |
8799 4d30 3F07 cpc r19,r31 |
8800 4d32 1CF4 brge .L662 |
8801 4d34 20E8 ldi r18,lo8(-128) |
8802 4d36 3FEF ldi r19,hi8(-128) |
8803 4d38 06C0 rjmp .L663 |
8804 .L662: |
8805 4d3a 2F3F cpi r18,255 |
8806 4d3c 3105 cpc r19,__zero_reg__ |
8807 4d3e 19F0 breq .L663 |
8808 4d40 14F0 brlt .L663 |
8809 4d42 20E0 ldi r18,lo8(256) |
8810 4d44 31E0 ldi r19,hi8(256) |
8811 .L663: |
8812 4d46 820E add r8,r18 |
8813 4d48 931E adc r9,r19 |
8814 4d4a C401 movw r24,r8 |
8815 4d4c AA27 clr r26 |
8816 4d4e 97FD sbrc r25,7 |
8817 4d50 A095 com r26 |
8818 4d52 BA2F mov r27,r26 |
8819 4d54 E090 0000 lds r14,HoverGas |
8820 4d58 F090 0000 lds r15,(HoverGas)+1 |
8821 4d5c 9701 movw r18,r14 |
8822 4d5e 4427 clr r20 |
8823 4d60 37FD sbrc r19,7 |
8824 4d62 4095 com r20 |
8825 4d64 542F mov r21,r20 |
8826 4d66 BC01 movw r22,r24 |
8827 4d68 CD01 movw r24,r26 |
8828 4d6a 0E94 0000 call __mulsi3 |
8829 4d6e 97FF sbrs r25,7 |
8830 4d70 04C0 rjmp .L665 |
8831 4d72 6150 subi r22,lo8(-(511)) |
8832 4d74 7E4F sbci r23,hi8(-(511)) |
8833 4d76 8F4F sbci r24,hlo8(-(511)) |
8834 4d78 9F4F sbci r25,hhi8(-(511)) |
8835 .L665: |
8836 4d7a F9E0 ldi r31,9 |
8837 4d7c 9595 1: asr r25 |
8838 4d7e 8795 ror r24 |
8839 4d80 7795 ror r23 |
8840 4d82 6795 ror r22 |
8841 4d84 FA95 dec r31 |
8842 4d86 D1F7 brne 1b |
8843 4d88 C61A sub r12,r22 |
8844 4d8a D70A sbc r13,r23 |
8845 4d8c 8091 0000 lds r24,HeightTrimming.22 |
8846 4d90 9091 0000 lds r25,(HeightTrimming.22)+1 |
8847 4d94 892B or r24,r25 |
8848 4d96 09F0 breq .+2 |
8849 4d98 60C0 rjmp .L666 |
8850 4d9a 1E14 cp __zero_reg__,r14 |
8851 4d9c 1F04 cpc __zero_reg__,r15 |
8852 4d9e 0CF0 brlt .+2 |
8853 4da0 5CC0 rjmp .L666 |
8854 4da2 9501 movw r18,r10 |
8855 4da4 B7FE sbrs r11,7 |
8856 4da6 03C0 rjmp .L667 |
8857 4da8 3095 com r19 |
8858 4daa 2195 neg r18 |
8859 4dac 3F4F sbci r19,lo8(-1) |
8860 .L667: |
8861 4dae 2D33 cpi r18,61 |
8862 4db0 3105 cpc r19,__zero_reg__ |
8863 4db2 40F4 brsh .L668 |
8864 4db4 8091 0000 lds r24,HoverGasMin.25 |
8865 4db8 9091 0000 lds r25,(HoverGasMin.25)+1 |
8866 4dbc 8C15 cp r24,r12 |
8867 4dbe 9D05 cpc r25,r13 |
8868 4dc0 74F5 brge .L806 |
8869 4dc2 26C0 rjmp .L815 |
8870 .L668: |
8871 4dc4 2C53 subi r18,lo8(-(-60)) |
8872 4dc6 3040 sbci r19,hi8(-(-60)) |
8873 4dc8 E5E0 ldi r30,5 |
8874 4dca 3695 1: lsr r19 |
8875 4dcc 2795 ror r18 |
8876 4dce EA95 dec r30 |
8877 4dd0 E1F7 brne 1b |
8878 4dd2 2031 cpi r18,16 |
8879 4dd4 3105 cpc r19,__zero_reg__ |
8880 4dd6 10F0 brlo .L673 |
8881 4dd8 2FE0 ldi r18,lo8(15) |
8882 4dda 30E0 ldi r19,hi8(15) |
8883 .L673: |
8884 4ddc 4091 0000 lds r20,HoverGasMin.25 |
8885 4de0 5091 0000 lds r21,(HoverGasMin.25)+1 |
8886 4de4 1A14 cp __zero_reg__,r10 |
8887 4de6 1B04 cpc __zero_reg__,r11 |
8888 4de8 E4F4 brge .L674 |
8889 4dea 80E1 ldi r24,lo8(16) |
8890 4dec 90E0 ldi r25,hi8(16) |
8891 4dee 821B sub r24,r18 |
8892 4df0 930B sbc r25,r19 |
8893 4df2 489F mul r20,r24 |
8894 4df4 9001 movw r18,r0 |
8895 4df6 499F mul r20,r25 |
8896 4df8 300D add r19,r0 |
8897 4dfa 589F mul r21,r24 |
8898 4dfc 300D add r19,r0 |
8899 4dfe 1124 clr r1 |
8900 4e00 74E0 ldi r23,4 |
8901 4e02 3695 1: lsr r19 |
8902 4e04 2795 ror r18 |
8903 4e06 7A95 dec r23 |
8904 4e08 E1F7 brne 1b |
8905 4e0a 2C15 cp r18,r12 |
8906 4e0c 3D05 cpc r19,r13 |
8907 4e0e 20F5 brsh .L805 |
8908 .L815: |
8909 4e10 8091 0000 lds r24,HoverGasMax.26 |
8910 4e14 9091 0000 lds r25,(HoverGasMax.26)+1 |
8911 4e18 C816 cp r12,r24 |
8912 4e1a D906 cpc r13,r25 |
8913 4e1c F4F0 brlt .L666 |
8914 .L806: |
8915 4e1e 6C01 movw r12,r24 |
8916 4e20 1CC0 rjmp .L666 |
8917 .L674: |
8918 4e22 205F subi r18,lo8(-(16)) |
8919 4e24 3F4F sbci r19,hi8(-(16)) |
8920 4e26 8091 0000 lds r24,HoverGasMax.26 |
8921 4e2a 9091 0000 lds r25,(HoverGasMax.26)+1 |
8922 4e2e 829F mul r24,r18 |
8923 4e30 B001 movw r22,r0 |
8924 4e32 839F mul r24,r19 |
8925 4e34 700D add r23,r0 |
8926 4e36 929F mul r25,r18 |
8927 4e38 700D add r23,r0 |
8928 4e3a 1124 clr r1 |
8929 4e3c 9B01 movw r18,r22 |
8930 4e3e 64E0 ldi r22,4 |
8931 4e40 3695 1: lsr r19 |
8932 4e42 2795 ror r18 |
8933 4e44 6A95 dec r22 |
8934 4e46 E1F7 brne 1b |
8935 4e48 4C15 cp r20,r12 |
8936 4e4a 5D05 cpc r21,r13 |
8937 4e4c 14F0 brlt .L679 |
8938 4e4e 6A01 movw r12,r20 |
8939 4e50 04C0 rjmp .L666 |
8940 .L679: |
8941 4e52 C216 cp r12,r18 |
8942 4e54 D306 cpc r13,r19 |
8943 4e56 08F0 brlo .L666 |
8944 .L805: |
8945 4e58 6901 movw r12,r18 |
8946 .L666: |
8947 4e5a C601 movw r24,r12 |
8948 4e5c AA27 clr r26 |
8949 4e5e 97FD sbrc r25,7 |
8950 4e60 A095 com r26 |
8951 4e62 BA2F mov r27,r26 |
8952 4e64 2DE0 ldi r18,13 |
8953 4e66 880F 1: lsl r24 |
8954 4e68 991F rol r25 |
8955 4e6a AA1F rol r26 |
8956 4e6c BB1F rol r27 |
8957 4e6e 2A95 dec r18 |
8958 4e70 D1F7 brne 1b |
8959 4e72 9801 movw r18,r16 |
8960 4e74 4427 clr r20 |
8961 4e76 37FD sbrc r19,7 |
8962 4e78 4095 com r20 |
8963 4e7a 542F mov r21,r20 |
8964 4e7c BC01 movw r22,r24 |
8965 4e7e CD01 movw r24,r26 |
8966 4e80 0E94 0000 call __divmodsi4 |
8967 4e84 2093 0000 sts tmp_long2.2,r18 |
8968 4e88 3093 0000 sts (tmp_long2.2)+1,r19 |
8969 4e8c 4093 0000 sts (tmp_long2.2)+2,r20 |
8970 4e90 5093 0000 sts (tmp_long2.2)+3,r21 |
8971 4e94 C090 0000 lds r12,tmp_long2.2 |
8972 4e98 D090 0000 lds r13,(tmp_long2.2)+1 |
8973 4e9c 8091 0000 lds r24,FilterHCGas.23 |
8974 4ea0 9091 0000 lds r25,(FilterHCGas.23)+1 |
8975 4ea4 9C01 movw r18,r24 |
8976 4ea6 220F lsl r18 |
8977 4ea8 331F rol r19 |
8978 4eaa 280F add r18,r24 |
8979 4eac 391F adc r19,r25 |
8980 4eae 2C0D add r18,r12 |
8981 4eb0 3D1D adc r19,r13 |
8982 4eb2 37FF sbrs r19,7 |
8983 4eb4 02C0 rjmp .L682 |
8984 4eb6 2D5F subi r18,lo8(-(3)) |
8985 4eb8 3F4F sbci r19,hi8(-(3)) |
8986 .L682: |
8987 4eba A901 movw r20,r18 |
8988 4ebc 5595 asr r21 |
8989 4ebe 4795 ror r20 |
8990 4ec0 5595 asr r21 |
8991 4ec2 4795 ror r20 |
8992 4ec4 5093 0000 sts (FilterHCGas.23)+1,r21 |
8993 4ec8 4093 0000 sts FilterHCGas.23,r20 |
8994 4ecc 8091 0000 lds r24,EE_Parameter+14 |
8995 4ed0 282F mov r18,r24 |
8996 4ed2 3327 clr r19 |
8997 4ed4 220F lsl r18 |
8998 4ed6 331F rol r19 |
8999 4ed8 220F lsl r18 |
9000 4eda 331F rol r19 |
9001 4edc 2417 cp r18,r20 |
9002 4ede 3507 cpc r19,r21 |
9003 4ee0 6CF4 brge .L807 |
9004 4ee2 8091 0000 lds r24,MAX_GAS |
9005 4ee6 282F mov r18,r24 |
9006 4ee8 3327 clr r19 |
9007 4eea 220F lsl r18 |
9008 4eec 331F rol r19 |
9009 4eee 220F lsl r18 |
9010 4ef0 331F rol r19 |
9011 4ef2 2055 subi r18,lo8(-(-80)) |
9012 4ef4 3040 sbci r19,hi8(-(-80)) |
9013 4ef6 4217 cp r20,r18 |
9014 4ef8 5307 cpc r21,r19 |
9015 4efa 24F0 brlt .L684 |
9016 .L807: |
9017 4efc 3093 0000 sts (FilterHCGas.23)+1,r19 |
9018 4f00 2093 0000 sts FilterHCGas.23,r18 |
9019 .L684: |
9020 4f04 8091 0000 lds r24,EE_Parameter+102 |
9021 4f08 80FF sbrs r24,0 |
9022 4f0a 14C0 rjmp .L686 |
9023 4f0c 8091 0000 lds r24,FilterHCGas.23 |
9024 4f10 9091 0000 lds r25,(FilterHCGas.23)+1 |
9025 4f14 A981 ldd r26,Y+1 |
9026 4f16 BA81 ldd r27,Y+2 |
9027 4f18 8A17 cp r24,r26 |
9028 4f1a 9B07 cpc r25,r27 |
9029 4f1c 24F0 brlt .L687 |
9030 4f1e B093 0000 sts (FilterHCGas.23)+1,r27 |
9031 4f22 A093 0000 sts FilterHCGas.23,r26 |
9032 .L687: |
9033 4f26 E091 0000 lds r30,FilterHCGas.23 |
9034 4f2a F091 0000 lds r31,(FilterHCGas.23)+1 |
9035 4f2e FA83 std Y+2,r31 |
9036 4f30 E983 std Y+1,r30 |
9037 4f32 5CC0 rjmp .L690 |
9038 .L686: |
9039 4f34 2981 ldd r18,Y+1 |
9040 4f36 3A81 ldd r19,Y+2 |
9041 4f38 2E19 sub r18,r14 |
9042 4f3a 3F09 sbc r19,r15 |
9043 4f3c 37FF sbrs r19,7 |
9044 4f3e 02C0 rjmp .L689 |
9045 4f40 2D5F subi r18,lo8(-(3)) |
9046 4f42 3F4F sbci r19,hi8(-(3)) |
9047 .L689: |
9048 4f44 3595 asr r19 |
9049 4f46 2795 ror r18 |
9050 4f48 3595 asr r19 |
9051 4f4a 2795 ror r18 |
9052 4f4c E090 0000 lds r14,FilterHCGas.23 |
9053 4f50 F090 0000 lds r15,(FilterHCGas.23)+1 |
9054 4f54 E20E add r14,r18 |
9055 4f56 F31E adc r15,r19 |
9056 4f58 FA82 std Y+2,r15 |
9057 4f5a E982 std Y+1,r14 |
9058 4f5c 47C0 rjmp .L690 |
9059 .L600: |
9060 4f5e 8091 0000 lds r24,EE_Parameter+22 |
9061 4f62 8823 tst r24 |
9062 4f64 01F5 brne .L691 |
9063 4f66 6091 0000 lds r22,HoverGas |
9064 4f6a 7091 0000 lds r23,(HoverGas)+1 |
9065 4f6e 77FF sbrs r23,7 |
9066 4f70 02C0 rjmp .L692 |
9067 4f72 6D5F subi r22,lo8(-(3)) |
9068 4f74 7F4F sbci r23,hi8(-(3)) |
9069 .L692: |
9070 4f76 7595 asr r23 |
9071 4f78 6795 ror r22 |
9072 4f7a 7595 asr r23 |
9073 4f7c 6795 ror r22 |
9074 4f7e 4091 0000 lds r20,UBat |
9075 4f82 5091 0000 lds r21,(UBat)+1 |
9076 4f86 8091 0000 lds r24,BattLowVoltageWarning |
9077 4f8a 282F mov r18,r24 |
9078 4f8c 3327 clr r19 |
9079 4f8e 649F mul r22,r20 |
9080 4f90 C001 movw r24,r0 |
9081 4f92 659F mul r22,r21 |
9082 4f94 900D add r25,r0 |
9083 4f96 749F mul r23,r20 |
9084 4f98 900D add r25,r0 |
9085 4f9a 1124 clr r1 |
9086 4f9c B901 movw r22,r18 |
9087 4f9e 0E94 0000 call __divmodhi4 |
9088 4fa2 CB01 movw r24,r22 |
9089 4fa4 01C0 rjmp .L808 |
9090 .L691: |
9091 4fa6 9927 clr r25 |
9092 .L808: |
9093 4fa8 9093 0000 sts (StickGasHover.24)+1,r25 |
9094 4fac 8093 0000 sts StickGasHover.24,r24 |
9095 4fb0 8091 0000 lds r24,StickGasHover.24 |
9096 4fb4 9091 0000 lds r25,(StickGasHover.24)+1 |
9097 4fb8 8734 cpi r24,71 |
9098 4fba 9105 cpc r25,__zero_reg__ |
9099 4fbc 1CF4 brge .L694 |
9100 4fbe 86E4 ldi r24,lo8(70) |
9101 4fc0 90E0 ldi r25,hi8(70) |
9102 4fc2 05C0 rjmp .L809 |
9103 .L694: |
9104 4fc4 8639 cpi r24,150 |
9105 4fc6 9105 cpc r25,__zero_reg__ |
9106 4fc8 34F0 brlt .L695 |
9107 4fca 86E9 ldi r24,lo8(150) |
9108 4fcc 90E0 ldi r25,hi8(150) |
9109 .L809: |
9110 4fce 9093 0000 sts (StickGasHover.24)+1,r25 |
9111 4fd2 8093 0000 sts StickGasHover.24,r24 |
9112 .L695: |
9113 4fd6 2981 ldd r18,Y+1 |
9114 4fd8 3A81 ldd r19,Y+2 |
9115 4fda 3093 0000 sts (FilterHCGas.23)+1,r19 |
9116 4fde 2093 0000 sts FilterHCGas.23,r18 |
9117 4fe2 8091 0000 lds r24,FC_StatusFlags |
9118 4fe6 806C ori r24,lo8(-64) |
9119 4fe8 8093 0000 sts FC_StatusFlags,r24 |
9120 .L690: |
9121 4fec 8091 0000 lds r24,FC_StatusFlags |
9122 4ff0 9927 clr r25 |
9123 4ff2 9C01 movw r18,r24 |
9124 4ff4 2270 andi r18,lo8(2) |
9125 4ff6 3070 andi r19,hi8(2) |
9126 4ff8 81FF sbrs r24,1 |
9127 4ffa 1CC1 rjmp .L697 |
9128 4ffc 8091 0000 lds r24,HoverGasFilter.27 |
9129 5000 9091 0000 lds r25,(HoverGasFilter.27)+1 |
9130 5004 A091 0000 lds r26,(HoverGasFilter.27)+2 |
9131 5008 B091 0000 lds r27,(HoverGasFilter.27)+3 |
9132 500c 0097 sbiw r24,0 |
9133 500e A105 cpc r26,__zero_reg__ |
9134 5010 B105 cpc r27,__zero_reg__ |
9135 5012 21F0 breq .L699 |
9136 5014 8091 0000 lds r24,StartTrigger |
9137 5018 8130 cpi r24,lo8(1) |
9138 501a B1F4 brne .L698 |
9139 .L699: |
9140 501c 4981 ldd r20,Y+1 |
9141 501e 5A81 ldd r21,Y+2 |
9142 5020 CA01 movw r24,r20 |
9143 5022 AA27 clr r26 |
9144 5024 97FD sbrc r25,7 |
9145 5026 A095 com r26 |
9146 5028 BA2F mov r27,r26 |
9147 502a 2EE0 ldi r18,14 |
9148 502c 880F 1: lsl r24 |
9149 502e 991F rol r25 |
9150 5030 AA1F rol r26 |
9151 5032 BB1F rol r27 |
9152 5034 2A95 dec r18 |
9153 5036 D1F7 brne 1b |
9154 5038 8093 0000 sts HoverGasFilter.27,r24 |
9155 503c 9093 0000 sts (HoverGasFilter.27)+1,r25 |
9156 5040 A093 0000 sts (HoverGasFilter.27)+2,r26 |
9157 5044 B093 0000 sts (HoverGasFilter.27)+3,r27 |
9158 .L698: |
9159 5048 8091 0000 lds r24,StartTrigger |
9160 504c 8130 cpi r24,lo8(1) |
9161 504e 19F4 brne .L700 |
9162 5050 82E0 ldi r24,lo8(2) |
9163 5052 8093 0000 sts StartTrigger,r24 |
9164 .L700: |
9165 5056 6981 ldd r22,Y+1 |
9166 5058 7A81 ldd r23,Y+2 |
9167 505a CB01 movw r24,r22 |
9168 505c AA27 clr r26 |
9169 505e 97FD sbrc r25,7 |
9170 5060 A095 com r26 |
9171 5062 BA2F mov r27,r26 |
9172 5064 9801 movw r18,r16 |
9173 5066 4427 clr r20 |
9174 5068 37FD sbrc r19,7 |
9175 506a 4095 com r20 |
9176 506c 542F mov r21,r20 |
9177 506e BC01 movw r22,r24 |
9178 5070 CD01 movw r24,r26 |
9179 5072 0E94 0000 call __mulsi3 |
9180 5076 DC01 movw r26,r24 |
9181 5078 CB01 movw r24,r22 |
9182 507a 8093 0000 sts tmp_long2.2,r24 |
9183 507e 9093 0000 sts (tmp_long2.2)+1,r25 |
9184 5082 A093 0000 sts (tmp_long2.2)+2,r26 |
9185 5086 B093 0000 sts (tmp_long2.2)+3,r27 |
9186 508a B7FF sbrs r27,7 |
9187 508c 04C0 rjmp .L701 |
9188 508e 8150 subi r24,lo8(-(8191)) |
9189 5090 904E sbci r25,hi8(-(8191)) |
9190 5092 AF4F sbci r26,hlo8(-(8191)) |
9191 5094 BF4F sbci r27,hhi8(-(8191)) |
9192 .L701: |
9193 5096 7C01 movw r14,r24 |
9194 5098 8D01 movw r16,r26 |
9195 509a FDE0 ldi r31,13 |
9196 509c 1595 1: asr r17 |
9197 509e 0795 ror r16 |
9198 50a0 F794 ror r15 |
9199 50a2 E794 ror r14 |
9200 50a4 FA95 dec r31 |
9201 50a6 D1F7 brne 1b |
9202 50a8 E092 0000 sts tmp_long2.2,r14 |
9203 50ac F092 0000 sts (tmp_long2.2)+1,r15 |
9204 50b0 0093 0000 sts (tmp_long2.2)+2,r16 |
9205 50b4 1093 0000 sts (tmp_long2.2)+3,r17 |
9206 50b8 6091 0000 lds r22,modell_fliegt |
9207 50bc 7091 0000 lds r23,(modell_fliegt)+1 |
9208 50c0 8FE0 ldi r24,hi8(4000) |
9209 50c2 603A cpi r22,lo8(4000) |
9210 50c4 7807 cpc r23,r24 |
9211 50c6 50F5 brsh .L702 |
9212 50c8 8091 0000 lds r24,HoverGasFilter.27 |
9213 50cc 9091 0000 lds r25,(HoverGasFilter.27)+1 |
9214 50d0 A091 0000 lds r26,(HoverGasFilter.27)+2 |
9215 50d4 B091 0000 lds r27,(HoverGasFilter.27)+3 |
9216 50d8 9C01 movw r18,r24 |
9217 50da AD01 movw r20,r26 |
9218 50dc EAE0 ldi r30,10 |
9219 50de 5695 1: lsr r21 |
9220 50e0 4795 ror r20 |
9221 50e2 3795 ror r19 |
9222 50e4 2795 ror r18 |
9223 50e6 EA95 dec r30 |
9224 50e8 D1F7 brne 1b |
9225 50ea 821B sub r24,r18 |
9226 50ec 930B sbc r25,r19 |
9227 50ee A40B sbc r26,r20 |
9228 50f0 B50B sbc r27,r21 |
9229 50f2 A801 movw r20,r16 |
9230 50f4 9701 movw r18,r14 |
9231 50f6 F4E0 ldi r31,4 |
9232 50f8 220F 1: lsl r18 |
9233 50fa 331F rol r19 |
9234 50fc 441F rol r20 |
9235 50fe 551F rol r21 |
9236 5100 FA95 dec r31 |
9237 5102 D1F7 brne 1b |
9238 5104 820F add r24,r18 |
9239 5106 931F adc r25,r19 |
9240 5108 A41F adc r26,r20 |
9241 510a B51F adc r27,r21 |
9242 510c 8093 0000 sts HoverGasFilter.27,r24 |
9243 5110 9093 0000 sts (HoverGasFilter.27)+1,r25 |
9244 5114 A093 0000 sts (HoverGasFilter.27)+2,r26 |
9245 5118 B093 0000 sts (HoverGasFilter.27)+3,r27 |
9246 .L702: |
9247 511c 6054 subi r22,lo8(8000) |
9248 511e 7F41 sbci r23,hi8(8000) |
9249 5120 18F5 brsh .L703 |
9250 5122 8091 0000 lds r24,HoverGasFilter.27 |
9251 5126 9091 0000 lds r25,(HoverGasFilter.27)+1 |
9252 512a A091 0000 lds r26,(HoverGasFilter.27)+2 |
9253 512e B091 0000 lds r27,(HoverGasFilter.27)+3 |
9254 5132 9C01 movw r18,r24 |
9255 5134 AD01 movw r20,r26 |
9256 5136 ECE0 ldi r30,12 |
9257 5138 5695 1: lsr r21 |
9258 513a 4795 ror r20 |
9259 513c 3795 ror r19 |
9260 513e 2795 ror r18 |
9261 5140 EA95 dec r30 |
9262 5142 D1F7 brne 1b |
9263 5144 821B sub r24,r18 |
9264 5146 930B sbc r25,r19 |
9265 5148 A40B sbc r26,r20 |
9266 514a B50B sbc r27,r21 |
9267 514c A801 movw r20,r16 |
9268 514e 9701 movw r18,r14 |
9269 5150 72E0 ldi r23,2 |
9270 5152 220F 1: lsl r18 |
9271 5154 331F rol r19 |
9272 5156 441F rol r20 |
9273 5158 551F rol r21 |
9274 515a 7A95 dec r23 |
9275 515c D1F7 brne 1b |
9276 515e 820F add r24,r18 |
9277 5160 931F adc r25,r19 |
9278 5162 A41F adc r26,r20 |
9279 5164 B51F adc r27,r21 |
9280 5166 29C0 rjmp .L810 |
9281 .L703: |
9282 5168 8091 0000 lds r24,VarioMeter |
9283 516c 9091 0000 lds r25,(VarioMeter)+1 |
9284 5170 8091 0000 lds r24,VarioMeter |
9285 5174 9091 0000 lds r25,(VarioMeter)+1 |
9286 5178 97FF sbrs r25,7 |
9287 517a 03C0 rjmp .L706 |
9288 517c 9095 com r25 |
9289 517e 8195 neg r24 |
9290 5180 9F4F sbci r25,lo8(-1) |
9291 .L706: |
9292 5182 8436 cpi r24,100 |
9293 5184 9105 cpc r25,__zero_reg__ |
9294 5186 0CF5 brge .L704 |
9295 5188 8091 0000 lds r24,HoverGasFilter.27 |
9296 518c 9091 0000 lds r25,(HoverGasFilter.27)+1 |
9297 5190 A091 0000 lds r26,(HoverGasFilter.27)+2 |
9298 5194 B091 0000 lds r27,(HoverGasFilter.27)+3 |
9299 5198 9C01 movw r18,r24 |
9300 519a AD01 movw r20,r26 |
9301 519c 6EE0 ldi r22,14 |
9302 519e 5695 1: lsr r21 |
9303 51a0 4795 ror r20 |
9304 51a2 3795 ror r19 |
9305 51a4 2795 ror r18 |
9306 51a6 6A95 dec r22 |
9307 51a8 D1F7 brne 1b |
9308 51aa 821B sub r24,r18 |
9309 51ac 930B sbc r25,r19 |
9310 51ae A40B sbc r26,r20 |
9311 51b0 B50B sbc r27,r21 |
9312 51b2 8E0D add r24,r14 |
9313 51b4 9F1D adc r25,r15 |
9314 51b6 A01F adc r26,r16 |
9315 51b8 B11F adc r27,r17 |
9316 .L810: |
9317 51ba 8093 0000 sts HoverGasFilter.27,r24 |
9318 51be 9093 0000 sts (HoverGasFilter.27)+1,r25 |
9319 51c2 A093 0000 sts (HoverGasFilter.27)+2,r26 |
9320 51c6 B093 0000 sts (HoverGasFilter.27)+3,r27 |
9321 .L704: |
9322 51ca 8091 0000 lds r24,HoverGasFilter.27 |
9323 51ce 9091 0000 lds r25,(HoverGasFilter.27)+1 |
9324 51d2 A091 0000 lds r26,(HoverGasFilter.27)+2 |
9325 51d6 B091 0000 lds r27,(HoverGasFilter.27)+3 |
9326 51da 1EE0 ldi r17,14 |
9327 51dc B695 1: lsr r27 |
9328 51de A795 ror r26 |
9329 51e0 9795 ror r25 |
9330 51e2 8795 ror r24 |
9331 51e4 1A95 dec r17 |
9332 51e6 D1F7 brne 1b |
9333 51e8 9093 0000 sts (HoverGas)+1,r25 |
9334 51ec 8093 0000 sts HoverGas,r24 |
9335 51f0 4091 0000 lds r20,EE_Parameter+20 |
9336 51f4 4423 tst r20 |
9337 51f6 99F0 breq .L707 |
9338 51f8 5527 clr r21 |
9339 51fa 9C01 movw r18,r24 |
9340 51fc BA01 movw r22,r20 |
9341 51fe 0E94 0000 call __divmodhi4 |
9342 5202 C901 movw r24,r18 |
9343 5204 861B sub r24,r22 |
9344 5206 970B sbc r25,r23 |
9345 5208 9093 0000 sts (HoverGasMin.25)+1,r25 |
9346 520c 8093 0000 sts HoverGasMin.25,r24 |
9347 5210 260F add r18,r22 |
9348 5212 371F adc r19,r23 |
9349 5214 3093 0000 sts (HoverGasMax.26)+1,r19 |
9350 5218 2093 0000 sts HoverGasMax.26,r18 |
9351 521c 1FC0 rjmp .L710 |
9352 .L707: |
9353 521e 1092 0000 sts (HoverGasMin.25)+1,__zero_reg__ |
9354 5222 1092 0000 sts HoverGasMin.25,__zero_reg__ |
9355 5226 8FEF ldi r24,lo8(1023) |
9356 5228 93E0 ldi r25,hi8(1023) |
9357 522a 9093 0000 sts (HoverGasMax.26)+1,r25 |
9358 522e 8093 0000 sts HoverGasMax.26,r24 |
9359 5232 14C0 rjmp .L710 |
9360 .L697: |
9361 5234 1092 0000 sts StartTrigger,__zero_reg__ |
9362 5238 1092 0000 sts HoverGasFilter.27,__zero_reg__ |
9363 523c 1092 0000 sts (HoverGasFilter.27)+1,__zero_reg__ |
9364 5240 1092 0000 sts (HoverGasFilter.27)+2,__zero_reg__ |
9365 5244 1092 0000 sts (HoverGasFilter.27)+3,__zero_reg__ |
9366 5248 3093 0000 sts (HoverGas)+1,r19 |
9367 524c 2093 0000 sts HoverGas,r18 |
9368 5250 05C0 rjmp .L710 |
9369 .L583: |
9370 5252 8091 0000 lds r24,FC_StatusFlags |
9371 5256 806C ori r24,lo8(-64) |
9372 5258 8093 0000 sts FC_StatusFlags,r24 |
9373 .L710: |
9374 525c 2090 0000 lds r2,MIN_GAS |
9375 5260 222D mov r18,r2 |
9376 5262 3327 clr r19 |
9377 5264 220F lsl r18 |
9378 5266 331F rol r19 |
9379 5268 220F lsl r18 |
9380 526a 331F rol r19 |
9381 526c 285D subi r18,lo8(-(40)) |
9382 526e 3F4F sbci r19,hi8(-(40)) |
9383 5270 A981 ldd r26,Y+1 |
9384 5272 BA81 ldd r27,Y+2 |
9385 5274 2A17 cp r18,r26 |
9386 5276 3B07 cpc r19,r27 |
9387 5278 14F0 brlt .L711 |
9388 527a 3A83 std Y+2,r19 |
9389 527c 2983 std Y+1,r18 |
9390 .L711: |
9391 527e 3090 0000 lds r3,MAX_GAS |
9392 5282 832D mov r24,r3 |
9393 5284 9927 clr r25 |
9394 5286 880F lsl r24 |
9395 5288 991F rol r25 |
9396 528a 880F lsl r24 |
9397 528c 991F rol r25 |
9398 528e 8055 subi r24,lo8(-(-80)) |
9399 5290 9040 sbci r25,hi8(-(-80)) |
9400 5292 E981 ldd r30,Y+1 |
9401 5294 FA81 ldd r31,Y+2 |
9402 5296 8E17 cp r24,r30 |
9403 5298 9F07 cpc r25,r31 |
9404 529a 14F4 brge .L712 |
9405 529c 9A83 std Y+2,r25 |
9406 529e 8983 std Y+1,r24 |
9407 .L712: |
9408 52a0 8091 0000 lds r24,MissingMotor |
9409 52a4 8823 tst r24 |
9410 52a6 21F4 brne .L714 |
9411 52a8 8091 0000 lds r24,Capacity+8 |
9412 52ac 8F3F cpi r24,lo8(-1) |
9413 52ae A1F0 breq .L713 |
9414 .L714: |
9415 52b0 8091 0000 lds r24,modell_fliegt |
9416 52b4 9091 0000 lds r25,(modell_fliegt)+1 |
9417 52b8 0297 sbiw r24,2 |
9418 52ba C097 sbiw r24,48 |
9419 52bc 68F4 brsh .L713 |
9420 52be E980 ldd r14,Y+1 |
9421 52c0 FA80 ldd r15,Y+2 |
9422 52c2 1E14 cp __zero_reg__,r14 |
9423 52c4 1F04 cpc __zero_reg__,r15 |
9424 52c6 44F4 brge .L713 |
9425 52c8 81E0 ldi r24,lo8(1) |
9426 52ca 90E0 ldi r25,hi8(1) |
9427 52cc 9093 0000 sts (modell_fliegt)+1,r25 |
9428 52d0 8093 0000 sts modell_fliegt,r24 |
9429 52d4 3A83 std Y+2,r19 |
9430 52d6 2983 std Y+1,r18 |
9431 .L713: |
9432 52d8 0981 ldd r16,Y+1 |
9433 52da 1A81 ldd r17,Y+2 |
9434 52dc 1093 0000 sts (DebugOut+16)+1,r17 |
9435 52e0 0093 0000 sts DebugOut+16,r16 |
9436 52e4 8091 0000 lds r24,sollGier.0 |
9437 52e8 9091 0000 lds r25,(sollGier.0)+1 |
9438 52ec A091 0000 lds r26,(sollGier.0)+2 |
9439 52f0 B091 0000 lds r27,(sollGier.0)+3 |
9440 52f4 F2E0 ldi r31,2 |
9441 52f6 880F 1: lsl r24 |
9442 52f8 991F rol r25 |
9443 52fa AA1F rol r26 |
9444 52fc BB1F rol r27 |
9445 52fe FA95 dec r31 |
9446 5300 D1F7 brne 1b |
9447 5302 0091 0000 lds r16,MesswertGier |
9448 5306 1091 0000 lds r17,(MesswertGier)+1 |
9449 530a 081B sub r16,r24 |
9450 530c 190B sbc r17,r25 |
9451 530e 2981 ldd r18,Y+1 |
9452 5310 3A81 ldd r19,Y+2 |
9453 5312 213A cpi r18,161 |
9454 5314 3105 cpc r19,__zero_reg__ |
9455 5316 8CF0 brlt .L716 |
9456 5318 C901 movw r24,r18 |
9457 531a 37FD sbrc r19,7 |
9458 531c 0196 adiw r24,1 |
9459 .L718: |
9460 531e 9595 asr r25 |
9461 5320 8795 ror r24 |
9462 5322 8017 cp r24,r16 |
9463 5324 9107 cpc r25,r17 |
9464 5326 0CF4 brge .L717 |
9465 5328 8C01 movw r16,r24 |
9466 .L717: |
9467 532a 9095 com r25 |
9468 532c 8195 neg r24 |
9469 532e 9F4F sbci r25,lo8(-1) |
9470 5330 0817 cp r16,r24 |
9471 5332 1907 cpc r17,r25 |
9472 5334 6CF4 brge .L723 |
9473 5336 8C01 movw r16,r24 |
9474 5338 0BC0 rjmp .L723 |
9475 .L716: |
9476 533a 0135 cpi r16,81 |
9477 533c 1105 cpc r17,__zero_reg__ |
9478 533e 14F0 brlt .L724 |
9479 5340 00E5 ldi r16,lo8(80) |
9480 5342 10E0 ldi r17,hi8(80) |
9481 .L724: |
9482 5344 3FEF ldi r19,hi8(-80) |
9483 5346 003B cpi r16,lo8(-80) |
9484 5348 1307 cpc r17,r19 |
9485 534a 14F4 brge .L723 |
9486 534c 00EB ldi r16,lo8(-80) |
9487 534e 1FEF ldi r17,hi8(-80) |
9488 .L723: |
9489 5350 232D mov r18,r3 |
9490 5352 3327 clr r19 |
9491 5354 220F lsl r18 |
9492 5356 331F rol r19 |
9493 5358 220F lsl r18 |
9494 535a 331F rol r19 |
9495 535c C901 movw r24,r18 |
9496 535e 4981 ldd r20,Y+1 |
9497 5360 5A81 ldd r21,Y+2 |
9498 5362 841B sub r24,r20 |
9499 5364 950B sbc r25,r21 |
9500 5366 8017 cp r24,r16 |
9501 5368 9107 cpc r25,r17 |
9502 536a 0CF4 brge .L726 |
9503 536c 8C01 movw r16,r24 |
9504 .L726: |
9505 536e 6981 ldd r22,Y+1 |
9506 5370 7A81 ldd r23,Y+2 |
9507 5372 621B sub r22,r18 |
9508 5374 730B sbc r23,r19 |
9509 5376 0617 cp r16,r22 |
9510 5378 1707 cpc r17,r23 |
9511 537a 0CF4 brge .L727 |
9512 537c 8B01 movw r16,r22 |
9513 .L727: |
9514 537e 8091 0000 lds r24,MesswertNick |
9515 5382 9091 0000 lds r25,(MesswertNick)+1 |
9516 5386 6091 0000 lds r22,StickNick |
9517 538a 7091 0000 lds r23,(StickNick)+1 |
9518 538e 861B sub r24,r22 |
9519 5390 970B sbc r25,r23 |
9520 5392 9093 0000 sts (DiffNick)+1,r25 |
9521 5396 8093 0000 sts DiffNick,r24 |
9522 539a D090 0000 lds r13,IntegralFaktor |
9523 539e 2091 0000 lds r18,SummeNick |
9524 53a2 3091 0000 lds r19,(SummeNick)+1 |
9525 53a6 4091 0000 lds r20,(SummeNick)+2 |
9526 53aa 5091 0000 lds r21,(SummeNick)+3 |
9527 53ae DD20 tst r13 |
9528 53b0 41F0 breq .L728 |
9529 53b2 661A sub r6,r22 |
9530 53b4 770A sbc r7,r23 |
9531 53b6 C301 movw r24,r6 |
9532 53b8 AA27 clr r26 |
9533 53ba 97FD sbrc r25,7 |
9534 53bc A095 com r26 |
9535 53be BA2F mov r27,r26 |
9536 53c0 04C0 rjmp .L811 |
9537 .L728: |
9538 53c2 AA27 clr r26 |
9539 53c4 97FD sbrc r25,7 |
9540 53c6 A095 com r26 |
9541 53c8 BA2F mov r27,r26 |
9542 .L811: |
9543 53ca 280F add r18,r24 |
9544 53cc 391F adc r19,r25 |
9545 53ce 4A1F adc r20,r26 |
9546 53d0 5B1F adc r21,r27 |
9547 53d2 2093 0000 sts SummeNick,r18 |
9548 53d6 3093 0000 sts (SummeNick)+1,r19 |
9549 53da 4093 0000 sts (SummeNick)+2,r20 |
9550 53de 5093 0000 sts (SummeNick)+3,r21 |
9551 53e2 8091 0000 lds r24,SummeNick |
9552 53e6 9091 0000 lds r25,(SummeNick)+1 |
9553 53ea A091 0000 lds r26,(SummeNick)+2 |
9554 53ee B091 0000 lds r27,(SummeNick)+3 |
9555 53f2 8150 subi r24,lo8(64001) |
9556 53f4 9A4F sbci r25,hi8(64001) |
9557 53f6 A040 sbci r26,hlo8(64001) |
9558 53f8 B040 sbci r27,hhi8(64001) |
9559 53fa 64F0 brlt .L730 |
9560 53fc 80E0 ldi r24,lo8(64000) |
9561 53fe 9AEF ldi r25,hi8(64000) |
9562 5400 A0E0 ldi r26,hlo8(64000) |
9563 5402 B0E0 ldi r27,hhi8(64000) |
9564 5404 8093 0000 sts SummeNick,r24 |
9565 5408 9093 0000 sts (SummeNick)+1,r25 |
9566 540c A093 0000 sts (SummeNick)+2,r26 |
9567 5410 B093 0000 sts (SummeNick)+3,r27 |
9568 .L730: |
9569 5414 8091 0000 lds r24,SummeNick |
9570 5418 9091 0000 lds r25,(SummeNick)+1 |
9571 541c A091 0000 lds r26,(SummeNick)+2 |
9572 5420 B091 0000 lds r27,(SummeNick)+3 |
9573 5424 8050 subi r24,lo8(-64000) |
9574 5426 9640 sbci r25,hi8(-64000) |
9575 5428 AF4F sbci r26,hlo8(-64000) |
9576 542a BF4F sbci r27,hhi8(-64000) |
9577 542c 64F4 brge .L731 |
9578 542e 80E0 ldi r24,lo8(-64000) |
9579 5430 96E0 ldi r25,hi8(-64000) |
9580 5432 AFEF ldi r26,hlo8(-64000) |
9581 5434 BFEF ldi r27,hhi8(-64000) |
9582 5436 8093 0000 sts SummeNick,r24 |
9583 543a 9093 0000 sts (SummeNick)+1,r25 |
9584 543e A093 0000 sts (SummeNick)+2,r26 |
9585 5442 B093 0000 sts (SummeNick)+3,r27 |
9586 .L731: |
9587 5446 C090 0000 lds r12,EE_Parameter+35 |
9588 544a 2091 0000 lds r18,DiffNick |
9589 544e 3091 0000 lds r19,(DiffNick)+1 |
9590 5452 F8E0 ldi r31,lo8(8) |
9591 5454 FC15 cp r31,r12 |
9592 5456 98F0 brlo .L732 |
9593 5458 8C2D mov r24,r12 |
9594 545a 9927 clr r25 |
9595 545c 829F mul r24,r18 |
9596 545e 7001 movw r14,r0 |
9597 5460 839F mul r24,r19 |
9598 5462 F00C add r15,r0 |
9599 5464 929F mul r25,r18 |
9600 5466 F00C add r15,r0 |
9601 5468 1124 clr r1 |
9602 546a C701 movw r24,r14 |
9603 546c F7FC sbrc r15,7 |
9604 546e 0796 adiw r24,7 |
9605 .L733: |
9606 5470 7C01 movw r14,r24 |
9607 5472 63E0 ldi r22,3 |
9608 5474 F594 1: asr r15 |
9609 5476 E794 ror r14 |
9610 5478 6A95 dec r22 |
9611 547a E1F7 brne 1b |
9612 547c 12C0 rjmp .L734 |
9613 .L732: |
9614 547e 8C2D mov r24,r12 |
9615 5480 8695 lsr r24 |
9616 5482 9927 clr r25 |
9617 5484 829F mul r24,r18 |
9618 5486 A001 movw r20,r0 |
9619 5488 839F mul r24,r19 |
9620 548a 500D add r21,r0 |
9621 548c 929F mul r25,r18 |
9622 548e 500D add r21,r0 |
9623 5490 1124 clr r1 |
9624 5492 CA01 movw r24,r20 |
9625 5494 57FD sbrc r21,7 |
9626 5496 0396 adiw r24,3 |
9627 .L735: |
9628 5498 7C01 movw r14,r24 |
9629 549a F594 asr r15 |
9630 549c E794 ror r14 |
9631 549e F594 asr r15 |
9632 54a0 E794 ror r14 |
9633 .L734: |
9634 54a2 A090 0000 lds r10,Ki |
9635 54a6 B090 0000 lds r11,(Ki)+1 |
9636 54aa 9501 movw r18,r10 |
9637 54ac 4427 clr r20 |
9638 54ae 37FD sbrc r19,7 |
9639 54b0 4095 com r20 |
9640 54b2 542F mov r21,r20 |
9641 54b4 8091 0000 lds r24,SummeNick |
9642 54b8 9091 0000 lds r25,(SummeNick)+1 |
9643 54bc A091 0000 lds r26,(SummeNick)+2 |
9644 54c0 B091 0000 lds r27,(SummeNick)+3 |
9645 54c4 BC01 movw r22,r24 |
9646 54c6 CD01 movw r24,r26 |
9647 54c8 0E94 0000 call __divmodsi4 |
9648 54cc E20E add r14,r18 |
9649 54ce F31E adc r15,r19 |
9650 54d0 9090 0000 lds r9,Parameter_DynamicStability |
9651 54d4 692D mov r22,r9 |
9652 54d6 7727 clr r23 |
9653 54d8 8827 clr r24 |
9654 54da 9927 clr r25 |
9655 54dc 9801 movw r18,r16 |
9656 54de 17FF sbrs r17,7 |
9657 54e0 04C0 rjmp .L736 |
9658 54e2 2227 clr r18 |
9659 54e4 3327 clr r19 |
9660 54e6 201B sub r18,r16 |
9661 54e8 310B sbc r19,r17 |
9662 .L736: |
9663 54ea 37FF sbrs r19,7 |
9664 54ec 02C0 rjmp .L737 |
9665 54ee 2F5F subi r18,lo8(-(1)) |
9666 54f0 3F4F sbci r19,hi8(-(1)) |
9667 .L737: |
9668 54f2 3595 asr r19 |
9669 54f4 2795 ror r18 |
9670 54f6 A981 ldd r26,Y+1 |
9671 54f8 BA81 ldd r27,Y+2 |
9672 54fa 2A0F add r18,r26 |
9673 54fc 3B1F adc r19,r27 |
9674 54fe 4427 clr r20 |
9675 5500 37FD sbrc r19,7 |
9676 5502 4095 com r20 |
9677 5504 542F mov r21,r20 |
9678 5506 0E94 0000 call __mulsi3 |
9679 550a 97FF sbrs r25,7 |
9680 550c 04C0 rjmp .L738 |
9681 550e 615C subi r22,lo8(-(63)) |
9682 5510 7F4F sbci r23,hi8(-(63)) |
9683 5512 8F4F sbci r24,hlo8(-(63)) |
9684 5514 9F4F sbci r25,hhi8(-(63)) |
9685 .L738: |
9686 5516 26E0 ldi r18,6 |
9687 5518 9595 1: asr r25 |
9688 551a 8795 ror r24 |
9689 551c 7795 ror r23 |
9690 551e 6795 ror r22 |
9691 5520 2A95 dec r18 |
9692 5522 D1F7 brne 1b |
9693 5524 9B01 movw r18,r22 |
9694 5526 6E15 cp r22,r14 |
9695 5528 7F05 cpc r23,r15 |
9696 552a 0CF4 brge .L739 |
9697 552c 7B01 movw r14,r22 |
9698 .L739: |
9699 552e 3095 com r19 |
9700 5530 2195 neg r18 |
9701 5532 3F4F sbci r19,lo8(-1) |
9702 5534 E216 cp r14,r18 |
9703 5536 F306 cpc r15,r19 |
9704 5538 0CF4 brge .L740 |
9705 553a 7901 movw r14,r18 |
9706 .L740: |
9707 553c 8091 0000 lds r24,MesswertRoll |
9708 5540 9091 0000 lds r25,(MesswertRoll)+1 |
9709 5544 6091 0000 lds r22,StickRoll |
9710 5548 7091 0000 lds r23,(StickRoll)+1 |
9711 554c 861B sub r24,r22 |
9712 554e 970B sbc r25,r23 |
9713 5550 9093 0000 sts (DiffRoll)+1,r25 |
9714 5554 8093 0000 sts DiffRoll,r24 |
9715 5558 2091 0000 lds r18,SummeRoll |
9716 555c 3091 0000 lds r19,(SummeRoll)+1 |
9717 5560 4091 0000 lds r20,(SummeRoll)+2 |
9718 5564 5091 0000 lds r21,(SummeRoll)+3 |
9719 5568 DD20 tst r13 |
9720 556a 41F0 breq .L741 |
9721 556c 461A sub r4,r22 |
9722 556e 570A sbc r5,r23 |
9723 5570 C201 movw r24,r4 |
9724 5572 AA27 clr r26 |
9725 5574 97FD sbrc r25,7 |
9726 5576 A095 com r26 |
9727 5578 BA2F mov r27,r26 |
9728 557a 04C0 rjmp .L812 |
9729 .L741: |
9730 557c AA27 clr r26 |
9731 557e 97FD sbrc r25,7 |
9732 5580 A095 com r26 |
9733 5582 BA2F mov r27,r26 |
9734 .L812: |
9735 5584 280F add r18,r24 |
9736 5586 391F adc r19,r25 |
9737 5588 4A1F adc r20,r26 |
9738 558a 5B1F adc r21,r27 |
9739 558c 2093 0000 sts SummeRoll,r18 |
9740 5590 3093 0000 sts (SummeRoll)+1,r19 |
9741 5594 4093 0000 sts (SummeRoll)+2,r20 |
9742 5598 5093 0000 sts (SummeRoll)+3,r21 |
9743 559c 8091 0000 lds r24,SummeRoll |
9744 55a0 9091 0000 lds r25,(SummeRoll)+1 |
9745 55a4 A091 0000 lds r26,(SummeRoll)+2 |
9746 55a8 B091 0000 lds r27,(SummeRoll)+3 |
9747 55ac 8150 subi r24,lo8(64001) |
9748 55ae 9A4F sbci r25,hi8(64001) |
9749 55b0 A040 sbci r26,hlo8(64001) |
9750 55b2 B040 sbci r27,hhi8(64001) |
9751 55b4 64F0 brlt .L743 |
9752 55b6 80E0 ldi r24,lo8(64000) |
9753 55b8 9AEF ldi r25,hi8(64000) |
9754 55ba A0E0 ldi r26,hlo8(64000) |
9755 55bc B0E0 ldi r27,hhi8(64000) |
9756 55be 8093 0000 sts SummeRoll,r24 |
9757 55c2 9093 0000 sts (SummeRoll)+1,r25 |
9758 55c6 A093 0000 sts (SummeRoll)+2,r26 |
9759 55ca B093 0000 sts (SummeRoll)+3,r27 |
9760 .L743: |
9761 55ce 8091 0000 lds r24,SummeRoll |
9762 55d2 9091 0000 lds r25,(SummeRoll)+1 |
9763 55d6 A091 0000 lds r26,(SummeRoll)+2 |
9764 55da B091 0000 lds r27,(SummeRoll)+3 |
9765 55de 8050 subi r24,lo8(-64000) |
9766 55e0 9640 sbci r25,hi8(-64000) |
9767 55e2 AF4F sbci r26,hlo8(-64000) |
9768 55e4 BF4F sbci r27,hhi8(-64000) |
9769 55e6 64F4 brge .L744 |
9770 55e8 80E0 ldi r24,lo8(-64000) |
9771 55ea 96E0 ldi r25,hi8(-64000) |
9772 55ec AFEF ldi r26,hlo8(-64000) |
9773 55ee BFEF ldi r27,hhi8(-64000) |
9774 55f0 8093 0000 sts SummeRoll,r24 |
9775 55f4 9093 0000 sts (SummeRoll)+1,r25 |
9776 55f8 A093 0000 sts (SummeRoll)+2,r26 |
9777 55fc B093 0000 sts (SummeRoll)+3,r27 |
9778 .L744: |
9779 5600 2091 0000 lds r18,DiffRoll |
9780 5604 3091 0000 lds r19,(DiffRoll)+1 |
9781 5608 48E0 ldi r20,lo8(8) |
9782 560a 4C15 cp r20,r12 |
9783 560c 98F0 brlo .L745 |
9784 560e 8C2D mov r24,r12 |
9785 5610 9927 clr r25 |
9786 5612 829F mul r24,r18 |
9787 5614 B001 movw r22,r0 |
9788 5616 839F mul r24,r19 |
9789 5618 700D add r23,r0 |
9790 561a 929F mul r25,r18 |
9791 561c 700D add r23,r0 |
9792 561e 1124 clr r1 |
9793 5620 CB01 movw r24,r22 |
9794 5622 77FD sbrc r23,7 |
9795 5624 0796 adiw r24,7 |
9796 .L746: |
9797 5626 6C01 movw r12,r24 |
9798 5628 B3E0 ldi r27,3 |
9799 562a D594 1: asr r13 |
9800 562c C794 ror r12 |
9801 562e BA95 dec r27 |
9802 5630 E1F7 brne 1b |
9803 5632 12C0 rjmp .L747 |
9804 .L745: |
9805 5634 C694 lsr r12 |
9806 5636 8C2D mov r24,r12 |
9807 5638 9927 clr r25 |
9808 563a 829F mul r24,r18 |
9809 563c D001 movw r26,r0 |
9810 563e 839F mul r24,r19 |
9811 5640 B00D add r27,r0 |
9812 5642 929F mul r25,r18 |
9813 5644 B00D add r27,r0 |
9814 5646 1124 clr r1 |
9815 5648 CD01 movw r24,r26 |
9816 564a B7FD sbrc r27,7 |
9817 564c 0396 adiw r24,3 |
9818 .L748: |
9819 564e 6C01 movw r12,r24 |
9820 5650 D594 asr r13 |
9821 5652 C794 ror r12 |
9822 5654 D594 asr r13 |
9823 5656 C794 ror r12 |
9824 .L747: |
9825 5658 9501 movw r18,r10 |
9826 565a 4427 clr r20 |
9827 565c 37FD sbrc r19,7 |
9828 565e 4095 com r20 |
9829 5660 542F mov r21,r20 |
9830 5662 8091 0000 lds r24,SummeRoll |
9831 5666 9091 0000 lds r25,(SummeRoll)+1 |
9832 566a A091 0000 lds r26,(SummeRoll)+2 |
9833 566e B091 0000 lds r27,(SummeRoll)+3 |
9834 5672 BC01 movw r22,r24 |
9835 5674 CD01 movw r24,r26 |
9836 5676 0E94 0000 call __divmodsi4 |
9837 567a C20E add r12,r18 |
9838 567c D31E adc r13,r19 |
9839 567e 692D mov r22,r9 |
9840 5680 7727 clr r23 |
9841 5682 8827 clr r24 |
9842 5684 9927 clr r25 |
9843 5686 9801 movw r18,r16 |
9844 5688 17FF sbrs r17,7 |
9845 568a 04C0 rjmp .L749 |
9846 568c 2227 clr r18 |
9847 568e 3327 clr r19 |
9848 5690 201B sub r18,r16 |
9849 5692 310B sbc r19,r17 |
9850 .L749: |
9851 5694 37FF sbrs r19,7 |
9852 5696 02C0 rjmp .L750 |
9853 5698 2F5F subi r18,lo8(-(1)) |
9854 569a 3F4F sbci r19,hi8(-(1)) |
9855 .L750: |
9856 569c 3595 asr r19 |
9857 569e 2795 ror r18 |
9858 56a0 E981 ldd r30,Y+1 |
9859 56a2 FA81 ldd r31,Y+2 |
9860 56a4 2E0F add r18,r30 |
9861 56a6 3F1F adc r19,r31 |
9862 56a8 4427 clr r20 |
9863 56aa 37FD sbrc r19,7 |
9864 56ac 4095 com r20 |
9865 56ae 542F mov r21,r20 |
9866 56b0 0E94 0000 call __mulsi3 |
9867 56b4 97FF sbrs r25,7 |
9868 56b6 04C0 rjmp .L751 |
9869 56b8 615C subi r22,lo8(-(63)) |
9870 56ba 7F4F sbci r23,hi8(-(63)) |
9871 56bc 8F4F sbci r24,hlo8(-(63)) |
9872 56be 9F4F sbci r25,hhi8(-(63)) |
9873 .L751: |
9874 56c0 E6E0 ldi r30,6 |
9875 56c2 9595 1: asr r25 |
9876 56c4 8795 ror r24 |
9877 56c6 7795 ror r23 |
9878 56c8 6795 ror r22 |
9879 56ca EA95 dec r30 |
9880 56cc D1F7 brne 1b |
9881 56ce 9B01 movw r18,r22 |
9882 56d0 6C15 cp r22,r12 |
9883 56d2 7D05 cpc r23,r13 |
9884 56d4 0CF4 brge .L752 |
9885 56d6 6B01 movw r12,r22 |
9886 .L752: |
9887 56d8 3095 com r19 |
9888 56da 2195 neg r18 |
9889 56dc 3F4F sbci r19,lo8(-1) |
9890 56de C216 cp r12,r18 |
9891 56e0 D306 cpc r13,r19 |
9892 56e2 0CF4 brge .L753 |
9893 56e4 6901 movw r12,r18 |
9894 .L753: |
9895 56e6 60E0 ldi r22,lo8(Motor) |
9896 56e8 862E mov r8,r22 |
9897 56ea 60E0 ldi r22,hi8(Motor) |
9898 56ec 962E mov r9,r22 |
9899 56ee 50E0 ldi r21,lo8(Mixer+13) |
9900 56f0 A52E mov r10,r21 |
9901 56f2 50E0 ldi r21,hi8(Mixer+13) |
9902 56f4 B52E mov r11,r21 |
9903 56f6 4BE0 ldi r20,lo8(11) |
9904 56f8 542E mov r5,r20 |
9905 56fa 30E0 ldi r19,lo8(tmp_motorwert) |
9906 56fc 632E mov r6,r19 |
9907 56fe 30E0 ldi r19,hi8(tmp_motorwert) |
9908 5700 732E mov r7,r19 |
9909 .L785: |
9910 5702 D501 movw r26,r10 |
9911 5704 2C91 ld r18,X |
9912 5706 1216 cp __zero_reg__,r18 |
9913 5708 0CF0 brlt .+2 |
9914 570a 14C1 rjmp .L757 |
9915 570c 2034 cpi r18,lo8(64) |
9916 570e 29F4 brne .L758 |
9917 5710 E981 ldd r30,Y+1 |
9918 5712 FA81 ldd r31,Y+2 |
9919 5714 F88F std Y+24,r31 |
9920 5716 EF8B std Y+23,r30 |
9921 5718 1FC0 rjmp .L759 |
9922 .L758: |
9923 571a 4981 ldd r20,Y+1 |
9924 571c 5A81 ldd r21,Y+2 |
9925 571e CA01 movw r24,r20 |
9926 5720 AA27 clr r26 |
9927 5722 97FD sbrc r25,7 |
9928 5724 A095 com r26 |
9929 5726 BA2F mov r27,r26 |
9930 5728 3327 clr r19 |
9931 572a 27FD sbrc r18,7 |
9932 572c 3095 com r19 |
9933 572e 432F mov r20,r19 |
9934 5730 532F mov r21,r19 |
9935 5732 BC01 movw r22,r24 |
9936 5734 CD01 movw r24,r26 |
9937 5736 0E94 0000 call __mulsi3 |
9938 573a 97FF sbrs r25,7 |
9939 573c 04C0 rjmp .L760 |
9940 573e 615C subi r22,lo8(-(63)) |
9941 5740 7F4F sbci r23,hi8(-(63)) |
9942 5742 8F4F sbci r24,hlo8(-(63)) |
9943 5744 9F4F sbci r25,hhi8(-(63)) |
9944 .L760: |
9945 5746 26E0 ldi r18,6 |
9946 5748 9595 1: asr r25 |
9947 574a 8795 ror r24 |
9948 574c 7795 ror r23 |
9949 574e 6795 ror r22 |
9950 5750 2A95 dec r18 |
9951 5752 D1F7 brne 1b |
9952 5754 788F std Y+24,r23 |
9953 5756 6F8B std Y+23,r22 |
9954 .L759: |
9955 5758 F501 movw r30,r10 |
9956 575a 2181 ldd r18,Z+1 |
9957 575c 2034 cpi r18,lo8(64) |
9958 575e 39F4 brne .L761 |
9959 5760 2F89 ldd r18,Y+23 |
9960 5762 388D ldd r19,Y+24 |
9961 5764 2E0D add r18,r14 |
9962 5766 3F1D adc r19,r15 |
9963 5768 388F std Y+24,r19 |
9964 576a 2F8B std Y+23,r18 |
9965 576c 2AC0 rjmp .L762 |
9966 .L761: |
9967 576e 203C cpi r18,lo8(-64) |
9968 5770 39F4 brne .L763 |
9969 5772 4F89 ldd r20,Y+23 |
9970 5774 588D ldd r21,Y+24 |
9971 5776 4E19 sub r20,r14 |
9972 5778 5F09 sbc r21,r15 |
9973 577a 588F std Y+24,r21 |
9974 577c 4F8B std Y+23,r20 |
9975 577e 21C0 rjmp .L762 |
9976 .L763: |
9977 5780 C701 movw r24,r14 |
9978 5782 AA27 clr r26 |
9979 5784 97FD sbrc r25,7 |
9980 5786 A095 com r26 |
9981 5788 BA2F mov r27,r26 |
9982 578a 3327 clr r19 |
9983 578c 27FD sbrc r18,7 |
9984 578e 3095 com r19 |
9985 5790 432F mov r20,r19 |
9986 5792 532F mov r21,r19 |
9987 5794 BC01 movw r22,r24 |
9988 5796 CD01 movw r24,r26 |
9989 5798 0E94 0000 call __mulsi3 |
9990 579c 97FF sbrs r25,7 |
9991 579e 04C0 rjmp .L765 |
9992 57a0 615C subi r22,lo8(-(63)) |
9993 57a2 7F4F sbci r23,hi8(-(63)) |
9994 57a4 8F4F sbci r24,hlo8(-(63)) |
9995 57a6 9F4F sbci r25,hhi8(-(63)) |
9996 .L765: |
9997 57a8 B6E0 ldi r27,6 |
9998 57aa 9595 1: asr r25 |
9999 57ac 8795 ror r24 |
10000 57ae 7795 ror r23 |
10001 57b0 6795 ror r22 |
10002 57b2 BA95 dec r27 |
10003 57b4 D1F7 brne 1b |
10004 57b6 AF89 ldd r26,Y+23 |
10005 57b8 B88D ldd r27,Y+24 |
10006 57ba A60F add r26,r22 |
10007 57bc B71F adc r27,r23 |
10008 57be B88F std Y+24,r27 |
10009 57c0 AF8B std Y+23,r26 |
10010 .L762: |
10011 57c2 F501 movw r30,r10 |
10012 57c4 2281 ldd r18,Z+2 |
10013 57c6 2034 cpi r18,lo8(64) |
10014 57c8 39F4 brne .L766 |
10015 57ca 2F89 ldd r18,Y+23 |
10016 57cc 388D ldd r19,Y+24 |
10017 57ce 2C0D add r18,r12 |
10018 57d0 3D1D adc r19,r13 |
10019 57d2 388F std Y+24,r19 |
10020 57d4 2F8B std Y+23,r18 |
10021 57d6 2AC0 rjmp .L767 |
10022 .L766: |
10023 57d8 203C cpi r18,lo8(-64) |
10024 57da 39F4 brne .L768 |
10025 57dc 4F89 ldd r20,Y+23 |
10026 57de 588D ldd r21,Y+24 |
10027 57e0 4C19 sub r20,r12 |
10028 57e2 5D09 sbc r21,r13 |
10029 57e4 588F std Y+24,r21 |
10030 57e6 4F8B std Y+23,r20 |
10031 57e8 21C0 rjmp .L767 |
10032 .L768: |
10033 57ea C601 movw r24,r12 |
10034 57ec AA27 clr r26 |
10035 57ee 97FD sbrc r25,7 |
10036 57f0 A095 com r26 |
10037 57f2 BA2F mov r27,r26 |
10038 57f4 3327 clr r19 |
10039 57f6 27FD sbrc r18,7 |
10040 57f8 3095 com r19 |
10041 57fa 432F mov r20,r19 |
10042 57fc 532F mov r21,r19 |
10043 57fe BC01 movw r22,r24 |
10044 5800 CD01 movw r24,r26 |
10045 5802 0E94 0000 call __mulsi3 |
10046 5806 97FF sbrs r25,7 |
10047 5808 04C0 rjmp .L770 |
10048 580a 615C subi r22,lo8(-(63)) |
10049 580c 7F4F sbci r23,hi8(-(63)) |
10050 580e 8F4F sbci r24,hlo8(-(63)) |
10051 5810 9F4F sbci r25,hhi8(-(63)) |
10052 .L770: |
10053 5812 A6E0 ldi r26,6 |
10054 5814 9595 1: asr r25 |
10055 5816 8795 ror r24 |
10056 5818 7795 ror r23 |
10057 581a 6795 ror r22 |
10058 581c AA95 dec r26 |
10059 581e D1F7 brne 1b |
10060 5820 AF89 ldd r26,Y+23 |
10061 5822 B88D ldd r27,Y+24 |
10062 5824 A60F add r26,r22 |
10063 5826 B71F adc r27,r23 |
10064 5828 B88F std Y+24,r27 |
10065 582a AF8B std Y+23,r26 |
10066 .L767: |
10067 582c F501 movw r30,r10 |
10068 582e 2381 ldd r18,Z+3 |
10069 5830 2034 cpi r18,lo8(64) |
10070 5832 39F4 brne .L771 |
10071 5834 2F89 ldd r18,Y+23 |
10072 5836 388D ldd r19,Y+24 |
10073 5838 200F add r18,r16 |
10074 583a 311F adc r19,r17 |
10075 583c 388F std Y+24,r19 |
10076 583e 2F8B std Y+23,r18 |
10077 5840 2AC0 rjmp .L772 |
10078 .L771: |
10079 5842 203C cpi r18,lo8(-64) |
10080 5844 39F4 brne .L773 |
10081 5846 4F89 ldd r20,Y+23 |
10082 5848 588D ldd r21,Y+24 |
10083 584a 401B sub r20,r16 |
10084 584c 510B sbc r21,r17 |
10085 584e 588F std Y+24,r21 |
10086 5850 4F8B std Y+23,r20 |
10087 5852 21C0 rjmp .L772 |
10088 .L773: |
10089 5854 C801 movw r24,r16 |
10090 5856 AA27 clr r26 |
10091 5858 97FD sbrc r25,7 |
10092 585a A095 com r26 |
10093 585c BA2F mov r27,r26 |
10094 585e 3327 clr r19 |
10095 5860 27FD sbrc r18,7 |
10096 5862 3095 com r19 |
10097 5864 432F mov r20,r19 |
10098 5866 532F mov r21,r19 |
10099 5868 BC01 movw r22,r24 |
10100 586a CD01 movw r24,r26 |
10101 586c 0E94 0000 call __mulsi3 |
10102 5870 97FF sbrs r25,7 |
10103 5872 04C0 rjmp .L775 |
10104 5874 615C subi r22,lo8(-(63)) |
10105 5876 7F4F sbci r23,hi8(-(63)) |
10106 5878 8F4F sbci r24,hlo8(-(63)) |
10107 587a 9F4F sbci r25,hhi8(-(63)) |
10108 .L775: |
10109 587c F6E0 ldi r31,6 |
10110 587e 9595 1: asr r25 |
10111 5880 8795 ror r24 |
10112 5882 7795 ror r23 |
10113 5884 6795 ror r22 |
10114 5886 FA95 dec r31 |
10115 5888 D1F7 brne 1b |
10116 588a AF89 ldd r26,Y+23 |
10117 588c B88D ldd r27,Y+24 |
10118 588e A60F add r26,r22 |
10119 5890 B71F adc r27,r23 |
10120 5892 B88F std Y+24,r27 |
10121 5894 AF8B std Y+23,r26 |
10122 .L772: |
10123 5896 F301 movw r30,r6 |
10124 5898 8081 ld r24,Z |
10125 589a 9181 ldd r25,Z+1 |
10126 589c 2F89 ldd r18,Y+23 |
10127 589e 388D ldd r19,Y+24 |
10128 58a0 8217 cp r24,r18 |
10129 58a2 9307 cpc r25,r19 |
10130 58a4 64F4 brge .L776 |
10131 58a6 B901 movw r22,r18 |
10132 58a8 680F add r22,r24 |
10133 58aa 791F adc r23,r25 |
10134 58ac 77FF sbrs r23,7 |
10135 58ae 02C0 rjmp .L777 |
10136 58b0 6F5F subi r22,lo8(-(1)) |
10137 58b2 7F4F sbci r23,hi8(-(1)) |
10138 .L777: |
10139 58b4 7595 asr r23 |
10140 58b6 6795 ror r22 |
10141 58b8 788F std Y+24,r23 |
10142 58ba 6F8B std Y+23,r22 |
10143 58bc 08C0 rjmp .L778 |
10144 .L776: |
10145 58be 4F89 ldd r20,Y+23 |
10146 58c0 588D ldd r21,Y+24 |
10147 58c2 440F add r20,r20 |
10148 58c4 551F adc r21,r21 |
10149 58c6 481B sub r20,r24 |
10150 58c8 590B sbc r21,r25 |
10151 58ca 588F std Y+24,r21 |
10152 58cc 4F8B std Y+23,r20 |
10153 .L778: |
10154 58ce 822D mov r24,r2 |
10155 58d0 9927 clr r25 |
10156 58d2 880F lsl r24 |
10157 58d4 991F rol r25 |
10158 58d6 880F lsl r24 |
10159 58d8 991F rol r25 |
10160 58da 6F89 ldd r22,Y+23 |
10161 58dc 788D ldd r23,Y+24 |
10162 58de 8617 cp r24,r22 |
10163 58e0 9707 cpc r25,r23 |
10164 58e2 5CF4 brge .L813 |
10165 58e4 832D mov r24,r3 |
10166 58e6 9927 clr r25 |
10167 58e8 880F lsl r24 |
10168 58ea 991F rol r25 |
10169 58ec 880F lsl r24 |
10170 58ee 991F rol r25 |
10171 58f0 AF89 ldd r26,Y+23 |
10172 58f2 B88D ldd r27,Y+24 |
10173 58f4 A817 cp r26,r24 |
10174 58f6 B907 cpc r27,r25 |
10175 58f8 14F0 brlt .L780 |
10176 .L813: |
10177 58fa 988F std Y+24,r25 |
10178 58fc 8F8B std Y+23,r24 |
10179 .L780: |
10180 58fe 8F89 ldd r24,Y+23 |
10181 5900 988D ldd r25,Y+24 |
10182 5902 97FD sbrc r25,7 |
10183 5904 0396 adiw r24,3 |
10184 .L782: |
10185 5906 9595 asr r25 |
10186 5908 8795 ror r24 |
10187 590a 9595 asr r25 |
10188 590c 8795 ror r24 |
10189 590e F401 movw r30,r8 |
10190 5910 8183 std Z+1,r24 |
10191 5912 880F lsl r24 |
10192 5914 991F rol r25 |
10193 5916 880F lsl r24 |
10194 5918 991F rol r25 |
10195 591a 2F89 ldd r18,Y+23 |
10196 591c 388D ldd r19,Y+24 |
10197 591e 281B sub r18,r24 |
10198 5920 390B sbc r19,r25 |
10199 5922 C901 movw r24,r18 |
10200 5924 880F lsl r24 |
10201 5926 8283 std Z+2,r24 |
10202 5928 EF89 ldd r30,Y+23 |
10203 592a F88D ldd r31,Y+24 |
10204 592c D301 movw r26,r6 |
10205 592e ED93 st X+,r30 |
10206 5930 FC93 st X,r31 |
10207 5932 03C0 rjmp .L756 |
10208 .L757: |
10209 5934 F401 movw r30,r8 |
10210 5936 1182 std Z+1,__zero_reg__ |
10211 5938 1282 std Z+2,__zero_reg__ |
10212 .L756: |
10213 593a 5A94 dec r5 |
10214 593c 22E0 ldi r18,lo8(2) |
10215 593e 30E0 ldi r19,hi8(2) |
10216 5940 620E add r6,r18 |
10217 5942 731E adc r7,r19 |
10218 5944 44E0 ldi r20,lo8(4) |
10219 5946 50E0 ldi r21,hi8(4) |
10220 5948 A40E add r10,r20 |
10221 594a B51E adc r11,r21 |
10222 594c 68E0 ldi r22,lo8(8) |
10223 594e 70E0 ldi r23,hi8(8) |
10224 5950 860E add r8,r22 |
10225 5952 971E adc r9,r23 |
10226 5954 57FE sbrs r5,7 |
10227 5956 D5CE rjmp .L785 |
10228 /* epilogue: frame size=24 */ |
10229 5958 E2E1 ldi r30,18 |
10230 595a C85E subi r28,-24 |
10231 595c 0C94 0000 jmp __epilogue_restores__+0 |
10232 /* epilogue end (size=4) */ |
10233 /* function MotorRegler size 7701 (7691) */ |
10235 .comm TrimNick,2,1 |
10236 .comm TrimRoll,2,1 |
10237 .comm ErsatzKompass,4,1 |
10238 .comm ErsatzKompassInGrad,2,1 |
10239 .comm MesswertNick,2,1 |
10240 .comm MesswertRoll,2,1 |
10241 .comm MesswertGier,2,1 |
10242 .comm Mittelwert_AccNick,2,1 |
10243 .comm Mittelwert_AccRoll,2,1 |
10244 .comm NaviAccNick,2,1 |
10245 .comm NaviAccRoll,2,1 |
10246 .comm h,1,1 |
10247 .comm m,1,1 |
10248 .comm s,1,1 |
10249 .comm DiffNick,2,1 |
10250 .comm DiffRoll,2,1 |
10251 .comm Parameter_Servo3,1,1 |
10252 .comm Parameter_Servo4,1,1 |
10253 .comm Parameter_Servo5,1,1 |
10254 .comm Parameter_J16Bitmask,1,1 |
10255 .comm Parameter_J16Timing,1,1 |
10256 .comm Parameter_J17Bitmask,1,1 |
10257 .comm Parameter_J17Timing,1,1 |
10258 .comm loop1,1,1 |
10259 .comm loop2,1,1 |
10260 .comm loop3,1,1 |
10261 .comm pos1,1,1 |
10262 .comm pos2,1,1 |
10263 .comm pos3,1,1 |
10264 .comm Motors0,1,1 |
10265 .comm Motors1,1,1 |
10266 .comm Motors2,1,1 |
10267 .comm Motors3,1,1 |
10268 .comm Motors4,1,1 |
10269 .comm Motors5,1,1 |
10270 .comm Motors6,1,1 |
10271 .comm Motors7,1,1 |
10272 .comm Motors0max,1,1 |
10273 .comm Motors1max,1,1 |
10274 .comm Motors2max,1,1 |
10275 .comm Motors3max,1,1 |
10276 .comm Motors4max,1,1 |
10277 .comm Motors5max,1,1 |
10278 .comm Motors6max,1,1 |
10279 .comm Motors7max,1,1 |
10280 .comm MotorsTmax,2,1 |
10281 .comm MesswertGierBias,2,1 |
10282 .comm RohMesswertNick,2,1 |
10283 .comm RohMesswertRoll,2,1 |
10284 .comm MittelIntegralNick,4,1 |
10285 .comm MittelIntegralRoll,4,1 |
10286 .comm MittelIntegralNick2,4,1 |
10287 .comm MittelIntegralRoll2,4,1 |
10288 .comm MAX_GAS,1,1 |
10289 .comm MIN_GAS,1,1 |
10290 .comm GyroFaktor,1,1 |
10291 .comm GyroFaktorGier,1,1 |
10292 .comm IntegralFaktor,1,1 |
10293 .comm IntegralFaktorGier,1,1 |
10294 .comm Parameter_NaviGpsModeControl,1,1 |
10295 .comm Parameter_NaviGpsGain,1,1 |
10296 .comm Parameter_NaviGpsP,1,1 |
10297 .comm Parameter_NaviGpsI,1,1 |
10298 .comm Parameter_NaviGpsD,1,1 |
10299 .comm Parameter_NaviGpsACC,1,1 |
10300 .comm Parameter_NaviOperatingRadius,1,1 |
10301 .comm Parameter_NaviWindCorrection,1,1 |
10302 .comm Parameter_NaviSpeedCompensation,1,1 |
10303 .comm Parameter_ExternalControl,1,1 |
10304 .comm KopplungsteilNickRoll,2,1 |
10305 .comm KopplungsteilRollNick,2,1 |
10306 .comm tmp_motorwert,24,1 |
10307 /* File "fc.c": code 11593 = 0x2d49 (11536), prologues 29, epilogues 28 */ |
DEFINED SYMBOLS |
*ABS*:00000000 fc.c |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:14 .data:00000000 VarioCharacter |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:19 .data:00000001 GIER_GRAD_FAKTOR |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:26 .bss:00000000 FC_StatusFlags |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:32 .bss:00000001 modell_fliegt |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:38 .bss:00000003 MaxStickRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:44 .bss:00000005 MaxStickNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:50 .data:00000005 ExternHoehenValue |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:57 .bss:00000007 ExternStickGier |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:63 .bss:00000009 ExternStickRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:69 .bss:0000000b ExternStickNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:75 .data:00000007 sintab |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:112 .bss:0000000d CareFree |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:118 .data:00000026 Parameter_DynamicStability |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:123 .data:00000027 Parameter_CouplingYawCorrection |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:128 .data:00000028 Parameter_AchsKopplung2 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:133 .data:00000029 Parameter_AchsKopplung1 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:138 .data:0000002a Parameter_LoopGasLimit |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:143 .data:0000002b Parameter_ServoRollControl |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:148 .data:0000002c Parameter_ServoNickControl |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:155 .bss:0000000e Parameter_UserParam8 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:161 .bss:0000000f Parameter_UserParam7 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:167 .bss:00000010 Parameter_UserParam6 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:173 .bss:00000011 Parameter_UserParam5 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:179 .bss:00000012 Parameter_UserParam4 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:185 .bss:00000013 Parameter_UserParam3 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:191 .bss:00000014 Parameter_UserParam2 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:197 .bss:00000015 Parameter_UserParam1 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:203 .data:0000002d Parameter_I_Faktor |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:208 .data:0000002e Parameter_Gier_P |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:213 .data:0000002f Parameter_Gyro_Gier_I |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:218 .data:00000030 Parameter_Gyro_Gier_P |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:223 .data:00000031 Parameter_Gyro_I |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:228 .data:00000032 Parameter_Gyro_P |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:233 .data:00000033 Parameter_Gyro_D |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:238 .data:00000034 Parameter_Hoehe_GPS_Z |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:243 .data:00000035 Parameter_KompassWirkung |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:248 .data:00000036 Parameter_Hoehe_ACC_Wirkung |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:253 .data:00000037 Parameter_Hoehe_P |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:258 .data:00000038 Parameter_MaxHoehe |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:263 .data:00000039 Parameter_Luftdruck_D |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:270 .bss:00000016 Looping_Oben |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:276 .bss:00000017 Looping_Unten |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:282 .bss:00000018 Looping_Rechts |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:288 .bss:00000019 Looping_Links |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:294 .bss:0000001a Looping_Roll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:300 .bss:0000001b Looping_Nick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:306 .data:0000003a Ki |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:313 .bss:0000001c HoverGas |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:319 .bss:0000001e LageKorrekturNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:325 .bss:00000020 LageKorrekturRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:331 .bss:00000022 SollHoehe |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:337 .bss:00000026 HoehenWert |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:343 .bss:0000002a StartTrigger |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:349 .bss:0000002b MotorenEin |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:355 .bss:0000002c StickGas |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:361 .bss:0000002e StickGier |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:367 .bss:00000030 StickRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:373 .bss:00000032 StickNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:379 .bss:00000034 SenderOkay |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:385 .bss:00000035 Poti |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:391 .bss:0000003e GierGyroFehler |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:397 .data:0000003c Umschlag180Roll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:402 .data:00000040 Umschlag180Nick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:409 .bss:00000040 TrichterFlug |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:415 .bss:00000041 HoehenReglerAktiv |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:421 .data:00000044 KompassSignalSchlecht |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:428 .bss:00000042 KompassRichtung |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:434 .bss:00000044 KompassStartwert |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:440 .bss:00000046 KompassValue |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:446 .bss:00000048 Mess_Integral_Hoch |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:452 .bss:0000004c SummeRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:458 .bss:00000050 SummeNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:464 .bss:00000054 Mess_Integral_Gier2 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:470 .bss:00000058 Mess_Integral_Gier |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:476 .bss:0000005c Mess_IntegralRoll2 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:482 .bss:00000060 Mess_IntegralRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:488 .bss:00000064 Mess_IntegralNick2 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:494 .bss:00000068 Mess_IntegralNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:500 .bss:0000006c Integral_Gier |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:506 .bss:00000070 IntegralAccZ |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:512 .bss:00000074 IntegralAccRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:518 .bss:00000078 IntegralAccNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:524 .bss:0000007c IntegralRoll2 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:530 .bss:00000080 IntegralRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:536 .bss:00000084 IntegralNick2 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:542 .bss:00000088 IntegralNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:548 .bss:0000008c ControlHeading |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:554 .bss:0000008d NeutralAccZ |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:560 .bss:0000008f NaviCntAcc |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:566 .bss:00000091 NeutralAccY |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:572 .bss:00000093 NeutralAccX |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:578 .bss:00000095 StartNeutralNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:584 .bss:00000097 StartNeutralRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:590 .bss:00000099 AdNeutralGier |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:596 .bss:0000009b AdNeutralRoll |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:602 .bss:0000009d AdNeutralNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:608 .bss:0000009f BaroExpandActive |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:614 .data:00000046 updatemotors |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:621 .bss:000000a1 pos4 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:627 .bss:000000a2 CurrentOffset |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:633 .data:00000047 keynumber |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:638 .data:00000049 settingdest |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:643 .text:00000000 CopyDebugValues |
*COM*:00000002 Mittelwert_AccNick |
*COM*:00000002 Mittelwert_AccRoll |
*COM*:00000004 ErsatzKompass |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:821 .text:00000214 Piep |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:860 .text:00000256 CalibrierMittelwert |
*COM*:00000002 MesswertNick |
*COM*:00000002 MesswertRoll |
*COM*:00000002 MesswertGier |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1002 .progmem.data:00000000 __c.39 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1007 .text:00000398 SetNeutral |
.bss:000000a4 tmpl.31 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1508 .bss:000000a8 tmpl2.32 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1509 .bss:000000ac tmpl3.33 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1510 .bss:000000b0 tmpl4.34 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1511 .bss:000000b4 oldNick.35 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1512 .bss:000000b6 oldRoll.36 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1513 .bss:000000b8 d2Roll.37 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1514 .bss:000000ba d2Nick.38 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1518 .text:000008f4 Mittelwert |
*COM*:00000002 RohMesswertNick |
*COM*:00000002 RohMesswertRoll |
*COM*:00000002 NaviAccNick |
*COM*:00000002 NaviAccRoll |
*COM*:00000002 KopplungsteilNickRoll |
*COM*:00000002 KopplungsteilRollNick |
*COM*:00000002 TrimRoll |
*COM*:00000002 TrimNick |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3083 .text:00001858 SendMotorData |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3143 .text:000018d2 ParameterZuordnung |
*COM*:00000001 Parameter_J16Timing |
*COM*:00000001 Parameter_J17Timing |
*COM*:00000001 Parameter_Servo3 |
*COM*:00000001 Parameter_Servo4 |
*COM*:00000001 Parameter_Servo5 |
*COM*:00000001 Parameter_ExternalControl |
*COM*:00000001 MAX_GAS |
*COM*:00000001 MIN_GAS |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:1515 .bss:000000bc sollGier.0 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3769 .bss:000000c0 tmp_long.1 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3770 .bss:000000c4 tmp_long2.2 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3771 .bss:000000c8 IntegralFehlerNick.3 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3772 .bss:000000cc IntegralFehlerRoll.4 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3773 .bss:000000d0 RcLostTimer.5 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3774 .bss:000000d2 delay_neutral.6 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3775 .bss:000000d3 delay_einschalten.7 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3776 .bss:000000d4 delay_ausschalten.8 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3777 .bss:000000d5 calibration_done.9 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3778 .bss:000000d6 NeueKompassRichtungMerken.10 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3779 .bss:000000d7 ausgleichNick.11 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3780 .bss:000000db ausgleichRoll.12 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3781 .bss:000000df stick_nick.13 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3782 .bss:000000e1 stick_roll.14 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3783 .bss:000000e3 cnt.15 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3784 .bss:000000e5 last_n_p.16 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3785 .bss:000000e6 last_n_n.17 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3786 .bss:000000e7 last_r_p.18 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3787 .bss:000000e8 last_r_n.19 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3788 .bss:000000e9 MittelIntegralNick_Alt.20 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3789 .bss:000000ed MittelIntegralRoll_Alt.21 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3790 .bss:000000f1 HeightTrimming.22 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3791 .bss:000000f3 FilterHCGas.23 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3796 .data:0000004a StickGasHover.24 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3792 .bss:000000f5 HoverGasMin.25 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3801 .data:0000004c HoverGasMax.26 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3798 .bss:000000f7 HoverGasFilter.27 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3806 .data:0000004e delay.28 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3803 .bss:000000fb BaroAtUpperLimit.29 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3808 .bss:000000fc BaroAtLowerLimit.30 |
C:\Users\Thomas\AppData\Local\Temp/ccWWbaaa.s:3813 .text:00001e0c MotorRegler |
*COM*:00000001 GyroFaktor |
*COM*:00000001 IntegralFaktor |
*COM*:00000001 GyroFaktorGier |
*COM*:00000001 IntegralFaktorGier |
*COM*:00000004 MittelIntegralNick |
*COM*:00000004 MittelIntegralRoll |
*COM*:00000004 MittelIntegralNick2 |
*COM*:00000004 MittelIntegralRoll2 |
*COM*:00000002 DiffNick |
*COM*:00000002 DiffRoll |
*COM*:00000018 tmp_motorwert |
*COM*:00000002 ErsatzKompassInGrad |
*COM*:00000001 h |
*COM*:00000001 m |
*COM*:00000001 s |
*COM*:00000001 Parameter_J16Bitmask |
*COM*:00000001 Parameter_J17Bitmask |
*COM*:00000001 loop1 |
*COM*:00000001 loop2 |
*COM*:00000001 loop3 |
*COM*:00000001 pos1 |
*COM*:00000001 pos2 |
*COM*:00000001 pos3 |
*COM*:00000001 Motors0 |
*COM*:00000001 Motors1 |
*COM*:00000001 Motors2 |
*COM*:00000001 Motors3 |
*COM*:00000001 Motors4 |
*COM*:00000001 Motors5 |
*COM*:00000001 Motors6 |
*COM*:00000001 Motors7 |
*COM*:00000001 Motors0max |
*COM*:00000001 Motors1max |
*COM*:00000001 Motors2max |
*COM*:00000001 Motors3max |
*COM*:00000001 Motors4max |
*COM*:00000001 Motors5max |
*COM*:00000001 Motors6max |
*COM*:00000001 Motors7max |
*COM*:00000002 MotorsTmax |
*COM*:00000002 MesswertGierBias |
*COM*:00000001 Parameter_NaviGpsModeControl |
*COM*:00000001 Parameter_NaviGpsGain |
*COM*:00000001 Parameter_NaviGpsP |
*COM*:00000001 Parameter_NaviGpsI |
*COM*:00000001 Parameter_NaviGpsD |
*COM*:00000001 Parameter_NaviGpsACC |
*COM*:00000001 Parameter_NaviOperatingRadius |
*COM*:00000001 Parameter_NaviWindCorrection |
*COM*:00000001 Parameter_NaviSpeedCompensation |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
EE_Parameter |
__divmodsi4 |
DebugOut |
AdWertGier |
AdWertAccHoch |
UBat |
Motor |
ServoNickValue |
Capacity |
GPS_Nick |
GPS_Roll |
VersionInfo |
beeptime |
Delay_ms |
PlatinenVersion |
SucheGyroOffset |
AdWertNick |
AdWertRoll |
AdWertAccNick |
AdWertAccRoll |
PPM_in |
__mulsi3 |
__prologue_saves__ |
ExpandBaro |
Delay_ms_Mess |
MessLuftdruck |
SucheLuftruckOffset |
__divmodhi4 |
Aktuell_az |
SetParamWord |
GetParamWord |
uart_putchar |
_printf_P |
Luftdruck |
StartLuftdruck |
VarioMeter |
GPS_Neutral |
SendVersionToNavi |
LED_Init |
FromNaviCtrl_Value |
ServoActive |
__epilogue_restores__ |
AdWertNickFilter |
AdWertRollFilter |
AdReady |
HiResNick |
HiResRoll |
MotorTest |
PC_MotortestActive |
I2C_TransferActive |
motor_write |
twi_state |
BLFlags |
FromNaviCtrl |
BeepMuster |
PPM_diff |
SetActiveParamSet |
WinkelOut |
GetActiveParamSet |
ParamSet_ReadFromEEProm |
LipoDetection |
LIBFC_ReceiverInit |
NewPpmData |
FromNC_Rotate_C |
FromNC_Rotate_S |
GPS_Nick2 |
GPS_Roll2 |
__floatsisf |
__addsf3 |
__fixunssfsi |
ExternControl |
ZaehlMessungen |
BattLowVoltageWarning |
__udivmodhi4 |
DruckOffsetSetting |
SummenHoehe |
ihypot |
c_cos_8192 |
MissingMotor |
Mixer |
/branches/metro/v0.82a metro_Akku+/flight.pnproj |
---|
0,0 → 1,0 |
<Project name="Flight-Ctrl"><File path="analog.c"></File><File path="analog.h"></File><File path="capacity.c"></File><File path="capacity.h"></File><File path="debug.c"></File><File path="debug.h"></File><File path="eeprom.c"></File><File path="eeprom.h"></File><File path="fc.c"></File><File path="fc.h"></File><File path="GPS.c"></File><File path="gps.h"></File><File path="isqrt.h"></File><File path="isqrt.S"></File><File path="jetimenu.c"></File><File path="jetimenu.h"></File><File path="led.c"></File><File path="led.h"></File><File path="libfc.h"></File><File path="main.c"></File><File path="main.h"></File><File path="makefile"></File><File path="menu.c"></File><File path="menu.h"></File><File path="mymath.c"></File><File path="mymath.h"></File><File path="old_macros.h"></File><File path="printf_P.h"></File><File path="rc.c"></File><File path="rc.h"></File><File path="Settings.h"></File><File path="Spektrum.c"></File><File path="Spektrum.h"></File><File path="spi.c"></File><File path="spi.h"></File><File path="timer0.c"></File><File path="timer0.h"></File><File path="twimaster.c"></File><File path="twimaster.h"></File><File path="uart.c"></File><File path="uart.h"></File></Project> |
/branches/metro/v0.82a metro_Akku+/flight.pnps |
---|
0,0 → 1,0 |
<pd><ViewState><e p="Flight-Ctrl" x="true"></e></ViewState></pd> |
/branches/metro/v0.82a metro_Akku+/gps.h |
---|
0,0 → 1,7 |
extern signed int GPS_Nick; |
extern signed int GPS_Roll; |
extern signed int GPS_Nick2; |
extern signed int GPS_Roll2; |
void GPS_Neutral(void); |
void GPS_BerechneZielrichtung(void); |
/branches/metro/v0.82a metro_Akku+/isqrt.S |
---|
0,0 → 1,203 |
;-----------------------------------------------------------------------------; |
; Fast integer squareroot routines for avr-gcc project (C)ChaN, 2008 |
; http://elm-chan.org/docs/avrlib/sqrt32.S |
;-----------------------------------------------------------------------------; |
; uint16_t isqrt32 (uint32_t n); |
; uint8_t isqrt16 (uint16_t n); |
; uint16_t ihypot (int16_t x, int16_t y); |
;-----------------------------------------------------------------------------: |
; 32bit integer squareroot |
;-----------------------------------------------------------------------------; |
; uint16_t isqrt32 ( |
; uint32_t n |
; ); |
; |
; Return Value: |
; Squareroot of n. |
; |
; Size = 53 words |
; Clock = 532..548 cycles |
; Stack = 0 byte |
.global isqrt32 |
.func isqrt32 |
isqrt32: |
clr r0 |
clr r18 |
clr r19 |
clr r20 |
ldi r21, 1 |
clr r27 |
clr r30 |
clr r31 |
ldi r26, 16 |
1: lsl r22 |
rol r23 |
rol r24 |
rol r25 |
rol r0 |
rol r18 |
rol r19 |
rol r20 |
lsl r22 |
rol r23 |
rol r24 |
rol r25 |
rol r0 |
rol r18 |
rol r19 |
rol r20 |
brpl 2f |
add r0, r21 |
adc r18, r27 |
adc r19, r30 |
adc r20, r31 |
rjmp 3f |
2: sub r0, r21 |
sbc r18, r27 |
sbc r19, r30 |
sbc r20, r31 |
3: lsl r21 |
rol r27 |
rol r30 |
andi r21, 0b11111000 |
ori r21, 0b00000101 |
sbrc r20, 7 |
subi r21, 2 |
dec r26 |
brne 1b |
lsr r30 |
ror r27 |
ror r21 |
lsr r30 |
ror r27 |
ror r21 |
mov r24, r21 |
mov r25, r27 |
ret |
.endfunc |
;-----------------------------------------------------------------------------: |
; 16bit integer squareroot |
;-----------------------------------------------------------------------------; |
; uint8_t isqrt16 ( |
; uint16_t n |
; ); |
; |
; Return Value: |
; Squareroot of n. |
; |
; Size = 33 words |
; Clock = 181..189 cycles |
; Stack = 0 byte |
.global isqrt16 |
.func isqrt16 |
isqrt16: |
clr r18 |
clr r19 |
ldi r20, 1 |
clr r21 |
ldi r22, 8 |
1: lsl r24 |
rol r25 |
rol r18 |
rol r19 |
lsl r24 |
rol r25 |
rol r18 |
rol r19 |
brpl 2f |
add r18, r20 |
adc r19, r21 |
rjmp 3f |
2: sub r18, r20 |
sbc r19, r21 |
3: lsl r20 |
rol r21 |
andi r20, 0b11111000 |
ori r20, 0b00000101 |
sbrc r19, 7 |
subi r20, 2 |
dec r22 |
brne 1b |
lsr r21 |
ror r20 |
lsr r21 |
ror r20 |
mov r24, r20 |
ret |
.endfunc |
;-----------------------------------------------------------------------------: |
; 16bit integer hypot (megaAVR is required) |
;-----------------------------------------------------------------------------; |
; uint16_t ihypot ( |
; int16_t x, |
; int16_t y |
; ); |
; |
; Return Value: |
; Squareroot of (x*x + y*y) |
; |
; Size = 42 words |
; Clock = 581..597 cycles |
; Stack = 0 byte |
.global ihypot |
.func ihypot |
ihypot: |
clr r26 |
sbrs r25, 7 |
rjmp 1f |
com r24 |
com r25 |
adc r24, r26 |
adc r25, r26 |
1: sbrs r23, 7 |
rjmp 2f |
com r22 |
com r23 |
adc r22, r26 |
adc r23, r26 |
2: mul r22, r22 |
movw r18, r0 |
mul r23, r23 |
movw r20, r0 |
mul r22, r23 |
add r19, r0 |
adc r20, r1 |
adc r21, r26 |
add r19, r0 |
adc r20, r1 |
adc r21, r26 |
mul r24, r24 |
movw r30, r0 |
mul r25, r25 |
add r18, r30 |
adc r19, r31 |
adc r20, r0 |
adc r21, r1 |
mul r24, r25 |
add r19, r0 |
adc r20, r1 |
adc r21, r26 |
add r19, r0 |
adc r20, r1 |
adc r21, r26 |
movw r24, r20 |
movw r22, r18 |
clr r1 |
rjmp isqrt32 |
.endfunc |
/branches/metro/v0.82a metro_Akku+/isqrt.h |
---|
0,0 → 1,11 |
#ifndef _ISQRT_H |
#define _ISQRT_H |
#include <inttypes.h> |
// coded in assembler file |
extern uint16_t isqrt32(uint32_t n); |
extern uint8_t isqrt16(uint16_t n); |
extern uint16_t ihypot(int16_t x, int16_t y); |
#endif // _ISQRT_H |
/branches/metro/v0.82a metro_Akku+/isqrt.lst |
---|
0,0 → 1,211 |
1 # 1 "isqrt.S" |
2 # 1 "<built-in>" |
1 ;-----------------------------------------------------------------------------; |
0 |
0 |
2 ;-----------------------------------------------------------------------------; |
3 ; Fast integer squareroot routines for avr-gcc project (C)ChaN, 2008 |
4 ; http://elm-chan.org/docs/avrlib/sqrt32.S |
5 ;-----------------------------------------------------------------------------; |
6 ; uint16_t isqrt32 (uint32_t n); |
7 ; uint8_t isqrt16 (uint16_t n); |
8 ; uint16_t ihypot (int16_t x, int16_t y); |
9 |
10 ;-----------------------------------------------------------------------------: |
11 ; 32bit integer squareroot |
12 ;-----------------------------------------------------------------------------; |
13 ; uint16_t isqrt32 ( |
14 ; uint32_t n |
15 ; ); |
16 ; |
17 ; Return Value: |
18 ; Squareroot of n. |
19 ; |
20 ; Size = 53 words |
21 ; Clock = 532..548 cycles |
22 ; Stack = 0 byte |
23 |
24 .global isqrt32 |
25 .func isqrt32 |
26 |
27:isqrt.S **** isqrt32: |
28:isqrt.S **** clr r0 |
29:isqrt.S **** clr r18 |
30:isqrt.S **** clr r19 |
31:isqrt.S **** clr r20 |
32:isqrt.S **** ldi r21, 1 |
33:isqrt.S **** clr r27 |
34:isqrt.S **** clr r30 |
35:isqrt.S **** clr r31 |
36:isqrt.S **** ldi r26, 16 |
37:isqrt.S **** 1: lsl r22 |
38:isqrt.S **** rol r23 |
39:isqrt.S **** rol r24 |
40:isqrt.S **** rol r25 |
41:isqrt.S **** rol r0 |
42:isqrt.S **** rol r18 |
43:isqrt.S **** rol r19 |
44:isqrt.S **** rol r20 |
45:isqrt.S **** lsl r22 |
46:isqrt.S **** rol r23 |
47:isqrt.S **** rol r24 |
48:isqrt.S **** rol r25 |
49:isqrt.S **** rol r0 |
50:isqrt.S **** rol r18 |
51:isqrt.S **** rol r19 |
52:isqrt.S **** rol r20 |
53:isqrt.S **** brpl 2f |
54:isqrt.S **** add r0, r21 |
55:isqrt.S **** adc r18, r27 |
56:isqrt.S **** adc r19, r30 |
57:isqrt.S **** adc r20, r31 |
58:isqrt.S **** rjmp 3f |
59:isqrt.S **** 2: sub r0, r21 |
60:isqrt.S **** sbc r18, r27 |
61:isqrt.S **** sbc r19, r30 |
62:isqrt.S **** sbc r20, r31 |
63:isqrt.S **** 3: lsl r21 |
64:isqrt.S **** rol r27 |
65:isqrt.S **** rol r30 |
66:isqrt.S **** andi r21, 0b11111000 |
67:isqrt.S **** ori r21, 0b00000101 |
68:isqrt.S **** sbrc r20, 7 |
69:isqrt.S **** subi r21, 2 |
70:isqrt.S **** dec r26 |
71:isqrt.S **** brne 1b |
72:isqrt.S **** lsr r30 |
73:isqrt.S **** ror r27 |
74:isqrt.S **** ror r21 |
75:isqrt.S **** lsr r30 |
76:isqrt.S **** ror r27 |
77:isqrt.S **** ror r21 |
78:isqrt.S **** mov r24, r21 |
79:isqrt.S **** mov r25, r27 |
80 ret |
81 .endfunc |
82 |
83 |
84 |
85 ;-----------------------------------------------------------------------------: |
86 ; 16bit integer squareroot |
87 ;-----------------------------------------------------------------------------; |
88 ; uint8_t isqrt16 ( |
89 ; uint16_t n |
90 ; ); |
91 ; |
92 ; Return Value: |
93 ; Squareroot of n. |
94 ; |
95 ; Size = 33 words |
96 ; Clock = 181..189 cycles |
97 ; Stack = 0 byte |
98 |
99 .global isqrt16 |
100 .func isqrt16 |
101 |
102:isqrt.S **** isqrt16: |
103:isqrt.S **** clr r18 |
104:isqrt.S **** clr r19 |
105:isqrt.S **** ldi r20, 1 |
106:isqrt.S **** clr r21 |
107:isqrt.S **** ldi r22, 8 |
108:isqrt.S **** 1: lsl r24 |
109:isqrt.S **** rol r25 |
110:isqrt.S **** rol r18 |
111:isqrt.S **** rol r19 |
112:isqrt.S **** lsl r24 |
113:isqrt.S **** rol r25 |
114:isqrt.S **** rol r18 |
115:isqrt.S **** rol r19 |
116:isqrt.S **** brpl 2f |
117:isqrt.S **** add r18, r20 |
118:isqrt.S **** adc r19, r21 |
119:isqrt.S **** rjmp 3f |
120:isqrt.S **** 2: sub r18, r20 |
121:isqrt.S **** sbc r19, r21 |
122:isqrt.S **** 3: lsl r20 |
123:isqrt.S **** rol r21 |
124:isqrt.S **** andi r20, 0b11111000 |
125:isqrt.S **** ori r20, 0b00000101 |
126:isqrt.S **** sbrc r19, 7 |
127:isqrt.S **** subi r20, 2 |
128:isqrt.S **** dec r22 |
129:isqrt.S **** brne 1b |
130:isqrt.S **** lsr r21 |
131:isqrt.S **** ror r20 |
132:isqrt.S **** lsr r21 |
133:isqrt.S **** ror r20 |
134:isqrt.S **** mov r24, r20 |
135 ret |
136 .endfunc |
137 |
138 |
139 |
140 ;-----------------------------------------------------------------------------: |
141 ; 16bit integer hypot (megaAVR is required) |
142 ;-----------------------------------------------------------------------------; |
143 ; uint16_t ihypot ( |
144 ; int16_t x, |
145 ; int16_t y |
146 ; ); |
147 ; |
148 ; Return Value: |
149 ; Squareroot of (x*x + y*y) |
150 ; |
151 ; Size = 42 words |
152 ; Clock = 581..597 cycles |
153 ; Stack = 0 byte |
154 |
155 .global ihypot |
156 .func ihypot |
157 |
158:isqrt.S **** ihypot: |
159:isqrt.S **** clr r26 |
160:isqrt.S **** sbrs r25, 7 |
161:isqrt.S **** rjmp 1f |
162:isqrt.S **** com r24 |
163:isqrt.S **** com r25 |
164:isqrt.S **** adc r24, r26 |
165:isqrt.S **** adc r25, r26 |
166:isqrt.S **** 1: sbrs r23, 7 |
167:isqrt.S **** rjmp 2f |
168:isqrt.S **** com r22 |
169:isqrt.S **** com r23 |
170:isqrt.S **** adc r22, r26 |
171:isqrt.S **** adc r23, r26 |
172:isqrt.S **** 2: mul r22, r22 |
173:isqrt.S **** movw r18, r0 |
174:isqrt.S **** mul r23, r23 |
175:isqrt.S **** movw r20, r0 |
176:isqrt.S **** mul r22, r23 |
177:isqrt.S **** add r19, r0 |
178:isqrt.S **** adc r20, r1 |
179:isqrt.S **** adc r21, r26 |
180:isqrt.S **** add r19, r0 |
181:isqrt.S **** adc r20, r1 |
182:isqrt.S **** adc r21, r26 |
183:isqrt.S **** mul r24, r24 |
184:isqrt.S **** movw r30, r0 |
185:isqrt.S **** mul r25, r25 |
186:isqrt.S **** add r18, r30 |
187:isqrt.S **** adc r19, r31 |
188:isqrt.S **** adc r20, r0 |
189:isqrt.S **** adc r21, r1 |
190:isqrt.S **** mul r24, r25 |
191:isqrt.S **** add r19, r0 |
192:isqrt.S **** adc r20, r1 |
193:isqrt.S **** adc r21, r26 |
194:isqrt.S **** add r19, r0 |
195:isqrt.S **** adc r20, r1 |
196:isqrt.S **** adc r21, r26 |
197:isqrt.S **** movw r24, r20 |
198:isqrt.S **** movw r22, r18 |
199:isqrt.S **** clr r1 |
200 rjmp isqrt32 |
DEFINED SYMBOLS |
*ABS*:00000000 isqrt.S |
isqrt.S:26 .text:00000000 isqrt32 |
isqrt.S:101 .text:0000006a isqrt16 |
isqrt.S:157 .text:000000ac ihypot |
NO UNDEFINED SYMBOLS |
/branches/metro/v0.82a metro_Akku+/jetimenu.c |
---|
0,0 → 1,162 |
#include "jetimenu.h" |
#include "libfc.h" |
#include "printf_P.h" |
#include "main.h" |
#include "spi.h" |
#include "capacity.h" |
#define JETIBOX_KEY_RIGHT 0x1F |
#define JETIBOX_KEY_UP 0x2F |
#define JETIBOX_KEY_DOWN 0x4F |
#define JETIBOX_KEY_LEFT 0x8F |
#define JETIBOX_KEY_NONE 0x0F |
#define JETIBOX_KEY_UNDEF 0x00 |
#define JetiBox_printfxy(x,y,format, args...) { LIBFC_JetiBox_SetPos(y * 16 + x); _printf_P(&LIBFC_JetiBox_Putchar, PSTR(format) , ## args);} |
#define JetiBox_printf(format, args...) { _printf_P(&LIBFC_JetiBox_Putchar, PSTR(format) , ## args);} |
// ----------------------------------------------------------- |
// the menu functions |
// ----------------------------------------------------------- |
void Menu_Status(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(0,0,"%2i.%1iV",UBat/10, UBat%10); |
if(NaviDataOkay) |
{ |
// JetiBox_printfxy(6,0,"%03dm %03d%c", GPSInfo.HomeDistance/10,GPSInfo.HomeBearing, 0xDF); |
JetiBox_printfxy(6,0,"%3d%c %03dm",(int)(ErsatzKompass / GIER_GRAD_FAKTOR), 0xDF, GPSInfo.HomeDistance/10); |
} |
else |
{ |
JetiBox_printfxy(6,0,"Status"); |
} |
if(NC_ErrorCode) JetiBox_printfxy(6,0,"ERROR: %2d",NC_ErrorCode); |
JetiBox_printfxy(0,1,"%4i %2i:%02i",Capacity.RemainCapacity,FlugSekunden/60,FlugSekunden%60); |
if(EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG) |
{ |
JetiBox_printfxy(10,1,"%4im%c", (int16_t)(HoehenWert/100),VarioCharacter); |
} |
} |
void Menu_Temperature(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(0,0,"%3i %3i %3i %3i", Motor[0].Temperature, Motor[1].Temperature, Motor[2].Temperature, Motor[3].Temperature); |
JetiBox_printfxy(0,1,"%3i %3i %3i %3i", Motor[4].Temperature, Motor[5].Temperature, Motor[6].Temperature, Motor[7].Temperature); |
if(RequiredMotors <= 4) |
{ |
JetiBox_printfxy(0,1,"Temperatures "); |
} |
else |
if(RequiredMotors <= 6) |
{ |
JetiBox_printfxy(8,1,"\%cC ",0xdf); |
} |
} |
void Menu_Battery(uint8_t key) |
{ //0123456789ABCDEF |
JetiBox_printfxy(0,0,"%2i.%1iV %3i.%1iA", UBat/10, UBat%10, Capacity.ActualCurrent/10, Capacity.ActualCurrent%10); |
JetiBox_printfxy(0,1,"%4iW %6imAh",Capacity.ActualPower, Capacity.RemainCapacity); |
} |
void Menu_PosInfo(uint8_t key) |
{ |
if(NaviDataOkay) |
{ |
JetiBox_printfxy(0,0,"%2um/s Sat:%d ",GPSInfo.Speed,GPSInfo.NumOfSats); |
switch (GPSInfo.SatFix) |
{ |
case SATFIX_3D: |
JetiBox_printfxy(12,0," 3D"); |
break; |
case SATFIX_2D: |
case SATFIX_NONE: |
default: |
JetiBox_printfxy(12,0,"NoFx"); |
break; |
} |
if(GPSInfo.Flags & FLAG_DIFFSOLN) |
{ |
JetiBox_printfxy(12,0,"DGPS"); |
} |
JetiBox_printfxy(0,1,"Home:%3dm %3d%c", GPSInfo.HomeDistance/10, GPSInfo.HomeBearing, 0xDF); |
} |
else |
{ //0123456789ABCDEF |
JetiBox_printfxy(2,0,"No NaviCtrl!"); |
} |
} |
// ----------------------------------------------------------- |
// the menu topology |
// ----------------------------------------------------------- |
typedef void (*pFctMenu) (uint8_t); // the menu item handler function pointer |
typedef struct{ |
int8_t left; |
int8_t right; |
int8_t up; |
int8_t down; |
pFctMenu pHandler; |
} MENU_ENTRY; |
// the menu navigation structure |
/* | |
3 - 0 - 1 - 2 - 3 - 0 |
*/ |
const MENU_ENTRY JetiBox_Menu[] PROGMEM= |
{ // l r u d pHandler |
{3, 1, 0, 0, &Menu_Status }, // 0 |
{0, 2, 1, 1, &Menu_Temperature }, // 1 |
{1, 3, 2, 2, &Menu_Battery }, // 2 |
{2, 0, 3, 3, &Menu_PosInfo }, // 3 |
}; |
// ----------------------------------------------------------- |
// Update display buffer |
// ----------------------------------------------------------- |
unsigned char JetiBox_Update(unsigned char key) |
{ |
static uint8_t item = 0, last_item = 0; // the menu item |
// navigate within the menu by key action |
last_item = item; |
switch(key) |
{ |
case JETIBOX_KEY_LEFT: |
if (item == 0) return (1); // switch back to jeti expander menu |
else item = pgm_read_byte(&JetiBox_Menu[item].left); //trigger to left menu item |
break; |
case JETIBOX_KEY_RIGHT: |
item = pgm_read_byte(&JetiBox_Menu[item].right); //trigger to right menu item |
break; |
case JETIBOX_KEY_UP: |
item = pgm_read_byte(&JetiBox_Menu[item].up); //trigger to up menu item |
break; |
case JETIBOX_KEY_DOWN: |
item = pgm_read_byte(&JetiBox_Menu[item].down); //trigger to down menu item |
break; |
default: |
break; |
} |
// if the menu item has been changed, do not pass the key to the item handler |
// to avoid jumping over to items |
if(item != last_item) key = JETIBOX_KEY_UNDEF; |
LIBFC_JetiBox_Clear(); |
//execute menu item handler |
((pFctMenu)(pgm_read_word(&(JetiBox_Menu[item].pHandler))))(key); |
return (0); |
} |
/branches/metro/v0.82a metro_Akku+/jetimenu.d |
---|
0,0 → 1,3 |
jetimenu.o jetimenu.d : jetimenu.c jetimenu.h libfc.h printf_P.h main.h old_macros.h \ |
timer0.h uart.h analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h \ |
spektrum.h capacity.h eeprom.h debug.h |
/branches/metro/v0.82a metro_Akku+/jetimenu.h |
---|
0,0 → 1,6 |
#ifndef _JETIMENU_H |
#define _JETIMENU_H |
extern unsigned char JetiBox_Update(unsigned char key); |
#endif //_JETIMENU_H |
/branches/metro/v0.82a metro_Akku+/jetimenu.lst |
---|
0,0 → 1,839 |
1 .file "jetimenu.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global JetiBox_Menu |
11 .section .progmem.data,"a",@progbits |
14 JetiBox_Menu: |
15 0000 03 .byte 3 |
16 0001 01 .byte 1 |
17 0002 00 .byte 0 |
18 0003 00 .byte 0 |
19 0004 0000 .word pm(Menu_Status) |
20 0006 00 .byte 0 |
21 0007 02 .byte 2 |
22 0008 01 .byte 1 |
23 0009 01 .byte 1 |
24 000a 0000 .word pm(Menu_Temperature) |
25 000c 01 .byte 1 |
26 000d 03 .byte 3 |
27 000e 02 .byte 2 |
28 000f 02 .byte 2 |
29 0010 0000 .word pm(Menu_Battery) |
30 0012 02 .byte 2 |
31 0013 00 .byte 0 |
32 0014 03 .byte 3 |
33 0015 03 .byte 3 |
34 0016 0000 .word pm(Menu_PosInfo) |
37 __c.14: |
38 0018 2532 692E .string "%2i.%1iV" |
38 2531 6956 |
38 00 |
41 __c.15: |
42 0021 2533 6425 .string "%3d%c %03dm" |
42 6320 2530 |
42 3364 6D00 |
45 __c.16: |
46 002d 5374 6174 .string "Status" |
46 7573 00 |
49 __c.17: |
50 0034 4552 524F .string "ERROR: %2d" |
50 523A 2025 |
50 3264 00 |
53 __c.18: |
54 003f 2534 6920 .string "%4i %2i:%02i" |
54 2532 693A |
54 2530 3269 |
54 00 |
57 __c.19: |
58 004c 2534 696D .string "%4im%c" |
58 2563 00 |
59 .text |
60 .global Menu_Status |
62 Menu_Status: |
63 /* prologue: frame size=0 */ |
64 0000 CF93 push r28 |
65 0002 DF93 push r29 |
66 /* prologue end (size=2) */ |
67 0004 80E0 ldi r24,lo8(0) |
68 0006 0E94 0000 call LIBFC_JetiBox_SetPos |
69 000a 8091 0000 lds r24,UBat |
70 000e 9091 0000 lds r25,(UBat)+1 |
71 0012 6AE0 ldi r22,lo8(10) |
72 0014 70E0 ldi r23,hi8(10) |
73 0016 0E94 0000 call __divmodhi4 |
74 001a 9F93 push r25 |
75 001c 8F93 push r24 |
76 001e 8091 0000 lds r24,UBat |
77 0022 9091 0000 lds r25,(UBat)+1 |
78 0026 6AE0 ldi r22,lo8(10) |
79 0028 70E0 ldi r23,hi8(10) |
80 002a 0E94 0000 call __divmodhi4 |
81 002e 7F93 push r23 |
82 0030 6F93 push r22 |
83 0032 80E0 ldi r24,lo8(__c.14) |
84 0034 90E0 ldi r25,hi8(__c.14) |
85 0036 9F93 push r25 |
86 0038 8F93 push r24 |
87 003a C0E0 ldi r28,lo8(pm(LIBFC_JetiBox_Putchar)) |
88 003c D0E0 ldi r29,hi8(pm(LIBFC_JetiBox_Putchar)) |
89 003e DF93 push r29 |
90 0040 CF93 push r28 |
91 0042 E091 0000 lds r30,_printf_P |
92 0046 F091 0000 lds r31,(_printf_P)+1 |
93 004a 0995 icall |
94 004c 2DB7 in r18,__SP_L__ |
95 004e 3EB7 in r19,__SP_H__ |
96 0050 285F subi r18,lo8(-(8)) |
97 0052 3F4F sbci r19,hi8(-(8)) |
98 0054 2DBF out __SP_L__,r18 |
99 0056 8091 0000 lds r24,NaviDataOkay |
100 005a 8823 tst r24 |
101 005c B9F1 breq .L2 |
102 005e 86E0 ldi r24,lo8(6) |
103 0060 0E94 0000 call LIBFC_JetiBox_SetPos |
104 0064 8091 0000 lds r24,GPSInfo+4 |
105 0068 9091 0000 lds r25,(GPSInfo+4)+1 |
106 006c 6AE0 ldi r22,lo8(10) |
107 006e 70E0 ldi r23,hi8(10) |
108 0070 0E94 0000 call __udivmodhi4 |
109 0074 7F93 push r23 |
110 0076 6F93 push r22 |
111 0078 8FED ldi r24,lo8(223) |
112 007a 90E0 ldi r25,hi8(223) |
113 007c 9F93 push r25 |
114 007e 8F93 push r24 |
115 0080 8091 0000 lds r24,ErsatzKompass |
116 0084 9091 0000 lds r25,(ErsatzKompass)+1 |
117 0088 A091 0000 lds r26,(ErsatzKompass)+2 |
118 008c B091 0000 lds r27,(ErsatzKompass)+3 |
119 0090 2091 0000 lds r18,GIER_GRAD_FAKTOR |
120 0094 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1 |
121 0098 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2 |
122 009c 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3 |
123 00a0 BC01 movw r22,r24 |
124 00a2 CD01 movw r24,r26 |
125 00a4 0E94 0000 call __divmodsi4 |
126 00a8 3F93 push r19 |
127 00aa 2F93 push r18 |
128 00ac 80E0 ldi r24,lo8(__c.15) |
129 00ae 90E0 ldi r25,hi8(__c.15) |
130 00b0 9F93 push r25 |
131 00b2 8F93 push r24 |
132 00b4 DF93 push r29 |
133 00b6 CF93 push r28 |
134 00b8 E091 0000 lds r30,_printf_P |
135 00bc F091 0000 lds r31,(_printf_P)+1 |
136 00c0 0995 icall |
137 00c2 8DB7 in r24,__SP_L__ |
138 00c4 9EB7 in r25,__SP_H__ |
139 00c6 0A96 adiw r24,10 |
140 00c8 8DBF out __SP_L__,r24 |
141 00ca 12C0 rjmp .L3 |
142 .L2: |
143 00cc 86E0 ldi r24,lo8(6) |
144 00ce 0E94 0000 call LIBFC_JetiBox_SetPos |
145 00d2 80E0 ldi r24,lo8(__c.16) |
146 00d4 90E0 ldi r25,hi8(__c.16) |
147 00d6 9F93 push r25 |
148 00d8 8F93 push r24 |
149 00da DF93 push r29 |
150 00dc CF93 push r28 |
151 00de E091 0000 lds r30,_printf_P |
152 00e2 F091 0000 lds r31,(_printf_P)+1 |
153 00e6 0995 icall |
154 00e8 0F90 pop __tmp_reg__ |
155 00ea 0F90 pop __tmp_reg__ |
156 00ec 0F90 pop __tmp_reg__ |
157 00ee 0F90 pop __tmp_reg__ |
158 .L3: |
159 00f0 8091 0000 lds r24,NC_ErrorCode |
160 00f4 8823 tst r24 |
161 00f6 C1F0 breq .L4 |
162 00f8 86E0 ldi r24,lo8(6) |
163 00fa 0E94 0000 call LIBFC_JetiBox_SetPos |
164 00fe 8091 0000 lds r24,NC_ErrorCode |
165 0102 9927 clr r25 |
166 0104 9F93 push r25 |
167 0106 8F93 push r24 |
168 0108 80E0 ldi r24,lo8(__c.17) |
169 010a 90E0 ldi r25,hi8(__c.17) |
170 010c 9F93 push r25 |
171 010e 8F93 push r24 |
172 0110 DF93 push r29 |
173 0112 CF93 push r28 |
174 0114 E091 0000 lds r30,_printf_P |
175 0118 F091 0000 lds r31,(_printf_P)+1 |
176 011c 0995 icall |
177 011e 2DB7 in r18,__SP_L__ |
178 0120 3EB7 in r19,__SP_H__ |
179 0122 2A5F subi r18,lo8(-(6)) |
180 0124 3F4F sbci r19,hi8(-(6)) |
181 0126 2DBF out __SP_L__,r18 |
182 .L4: |
183 0128 80E1 ldi r24,lo8(16) |
184 012a 0E94 0000 call LIBFC_JetiBox_SetPos |
185 012e 8091 0000 lds r24,FlugSekunden |
186 0132 9091 0000 lds r25,(FlugSekunden)+1 |
187 0136 6CE3 ldi r22,lo8(60) |
188 0138 70E0 ldi r23,hi8(60) |
189 013a 0E94 0000 call __udivmodhi4 |
190 013e 9F93 push r25 |
191 0140 8F93 push r24 |
192 0142 8091 0000 lds r24,FlugSekunden |
193 0146 9091 0000 lds r25,(FlugSekunden)+1 |
194 014a 6CE3 ldi r22,lo8(60) |
195 014c 70E0 ldi r23,hi8(60) |
196 014e 0E94 0000 call __udivmodhi4 |
197 0152 7F93 push r23 |
198 0154 6F93 push r22 |
199 0156 8091 0000 lds r24,Capacity+6 |
200 015a 9091 0000 lds r25,(Capacity+6)+1 |
201 015e 9F93 push r25 |
202 0160 8F93 push r24 |
203 0162 80E0 ldi r24,lo8(__c.18) |
204 0164 90E0 ldi r25,hi8(__c.18) |
205 0166 9F93 push r25 |
206 0168 8F93 push r24 |
207 016a C0E0 ldi r28,lo8(pm(LIBFC_JetiBox_Putchar)) |
208 016c D0E0 ldi r29,hi8(pm(LIBFC_JetiBox_Putchar)) |
209 016e DF93 push r29 |
210 0170 CF93 push r28 |
211 0172 E091 0000 lds r30,_printf_P |
212 0176 F091 0000 lds r31,(_printf_P)+1 |
213 017a 0995 icall |
214 017c 8091 0000 lds r24,EE_Parameter+13 |
215 0180 2DB7 in r18,__SP_L__ |
216 0182 3EB7 in r19,__SP_H__ |
217 0184 265F subi r18,lo8(-(10)) |
218 0186 3F4F sbci r19,hi8(-(10)) |
219 0188 2DBF out __SP_L__,r18 |
220 018a 80FF sbrs r24,0 |
221 018c 29C0 rjmp .L1 |
222 018e 8AE1 ldi r24,lo8(26) |
223 0190 0E94 0000 call LIBFC_JetiBox_SetPos |
224 0194 8091 0000 lds r24,VarioCharacter |
225 0198 9927 clr r25 |
226 019a 9F93 push r25 |
227 019c 8F93 push r24 |
228 019e 8091 0000 lds r24,HoehenWert |
229 01a2 9091 0000 lds r25,(HoehenWert)+1 |
230 01a6 A091 0000 lds r26,(HoehenWert)+2 |
231 01aa B091 0000 lds r27,(HoehenWert)+3 |
232 01ae BC01 movw r22,r24 |
233 01b0 CD01 movw r24,r26 |
234 01b2 24E6 ldi r18,lo8(100) |
235 01b4 30E0 ldi r19,hi8(100) |
236 01b6 40E0 ldi r20,hlo8(100) |
237 01b8 50E0 ldi r21,hhi8(100) |
238 01ba 0E94 0000 call __divmodsi4 |
239 01be 3F93 push r19 |
240 01c0 2F93 push r18 |
241 01c2 80E0 ldi r24,lo8(__c.19) |
242 01c4 90E0 ldi r25,hi8(__c.19) |
243 01c6 9F93 push r25 |
244 01c8 8F93 push r24 |
245 01ca DF93 push r29 |
246 01cc CF93 push r28 |
247 01ce E091 0000 lds r30,_printf_P |
248 01d2 F091 0000 lds r31,(_printf_P)+1 |
249 01d6 0995 icall |
250 01d8 8DB7 in r24,__SP_L__ |
251 01da 9EB7 in r25,__SP_H__ |
252 01dc 0896 adiw r24,8 |
253 01de 8DBF out __SP_L__,r24 |
254 .L1: |
255 /* epilogue: frame size=0 */ |
256 01e0 DF91 pop r29 |
257 01e2 CF91 pop r28 |
258 01e4 0895 ret |
259 /* epilogue end (size=3) */ |
260 /* function Menu_Status size 243 (238) */ |
262 .section .progmem.data |
265 __c.10: |
266 0053 2533 6920 .string "%3i %3i %3i %3i" |
266 2533 6920 |
266 2533 6920 |
266 2533 6900 |
269 __c.11: |
270 0063 2533 6920 .string "%3i %3i %3i %3i" |
270 2533 6920 |
270 2533 6920 |
270 2533 6900 |
273 __c.12: |
274 0073 5465 6D70 .string "Temperatures " |
274 6572 6174 |
274 7572 6573 |
274 2020 2020 |
274 00 |
277 __c.13: |
278 0084 2563 4320 .string "%cC " |
278 2020 2020 |
278 00 |
279 .text |
280 .global Menu_Temperature |
282 Menu_Temperature: |
283 /* prologue: frame size=0 */ |
284 01e6 CF93 push r28 |
285 01e8 DF93 push r29 |
286 /* prologue end (size=2) */ |
287 01ea 80E0 ldi r24,lo8(0) |
288 01ec 0E94 0000 call LIBFC_JetiBox_SetPos |
289 01f0 8091 0000 lds r24,Motor+31 |
290 01f4 9927 clr r25 |
291 01f6 87FD sbrc r24,7 |
292 01f8 9095 com r25 |
293 01fa 9F93 push r25 |
294 01fc 8F93 push r24 |
295 01fe 8091 0000 lds r24,Motor+23 |
296 0202 9927 clr r25 |
297 0204 87FD sbrc r24,7 |
298 0206 9095 com r25 |
299 0208 9F93 push r25 |
300 020a 8F93 push r24 |
301 020c 8091 0000 lds r24,Motor+15 |
302 0210 9927 clr r25 |
303 0212 87FD sbrc r24,7 |
304 0214 9095 com r25 |
305 0216 9F93 push r25 |
306 0218 8F93 push r24 |
307 021a 8091 0000 lds r24,Motor+7 |
308 021e 9927 clr r25 |
309 0220 87FD sbrc r24,7 |
310 0222 9095 com r25 |
311 0224 9F93 push r25 |
312 0226 8F93 push r24 |
313 0228 80E0 ldi r24,lo8(__c.10) |
314 022a 90E0 ldi r25,hi8(__c.10) |
315 022c 9F93 push r25 |
316 022e 8F93 push r24 |
317 0230 C0E0 ldi r28,lo8(pm(LIBFC_JetiBox_Putchar)) |
318 0232 D0E0 ldi r29,hi8(pm(LIBFC_JetiBox_Putchar)) |
319 0234 DF93 push r29 |
320 0236 CF93 push r28 |
321 0238 E091 0000 lds r30,_printf_P |
322 023c F091 0000 lds r31,(_printf_P)+1 |
323 0240 0995 icall |
324 0242 80E1 ldi r24,lo8(16) |
325 0244 0E94 0000 call LIBFC_JetiBox_SetPos |
326 0248 2DB7 in r18,__SP_L__ |
327 024a 3EB7 in r19,__SP_H__ |
328 024c 245F subi r18,lo8(-(12)) |
329 024e 3F4F sbci r19,hi8(-(12)) |
330 0250 2DBF out __SP_L__,r18 |
331 0252 8091 0000 lds r24,Motor+63 |
332 0256 9927 clr r25 |
333 0258 87FD sbrc r24,7 |
334 025a 9095 com r25 |
335 025c 9F93 push r25 |
336 025e 8F93 push r24 |
337 0260 8091 0000 lds r24,Motor+55 |
338 0264 9927 clr r25 |
339 0266 87FD sbrc r24,7 |
340 0268 9095 com r25 |
341 026a 9F93 push r25 |
342 026c 8F93 push r24 |
343 026e 8091 0000 lds r24,Motor+47 |
344 0272 9927 clr r25 |
345 0274 87FD sbrc r24,7 |
346 0276 9095 com r25 |
347 0278 9F93 push r25 |
348 027a 8F93 push r24 |
349 027c 8091 0000 lds r24,Motor+39 |
350 0280 9927 clr r25 |
351 0282 87FD sbrc r24,7 |
352 0284 9095 com r25 |
353 0286 9F93 push r25 |
354 0288 8F93 push r24 |
355 028a 80E0 ldi r24,lo8(__c.11) |
356 028c 90E0 ldi r25,hi8(__c.11) |
357 028e 9F93 push r25 |
358 0290 8F93 push r24 |
359 0292 DF93 push r29 |
360 0294 CF93 push r28 |
361 0296 E091 0000 lds r30,_printf_P |
362 029a F091 0000 lds r31,(_printf_P)+1 |
363 029e 0995 icall |
364 02a0 8091 0000 lds r24,RequiredMotors |
365 02a4 2DB7 in r18,__SP_L__ |
366 02a6 3EB7 in r19,__SP_H__ |
367 02a8 245F subi r18,lo8(-(12)) |
368 02aa 3F4F sbci r19,hi8(-(12)) |
369 02ac 2DBF out __SP_L__,r18 |
370 02ae 8530 cpi r24,lo8(5) |
371 02b0 98F4 brsh .L7 |
372 02b2 80E1 ldi r24,lo8(16) |
373 02b4 0E94 0000 call LIBFC_JetiBox_SetPos |
374 02b8 80E0 ldi r24,lo8(__c.12) |
375 02ba 90E0 ldi r25,hi8(__c.12) |
376 02bc 9F93 push r25 |
377 02be 8F93 push r24 |
378 02c0 DF93 push r29 |
379 02c2 CF93 push r28 |
380 02c4 E091 0000 lds r30,_printf_P |
381 02c8 F091 0000 lds r31,(_printf_P)+1 |
382 02cc 0995 icall |
383 02ce 0F90 pop __tmp_reg__ |
384 02d0 0F90 pop __tmp_reg__ |
385 02d2 0F90 pop __tmp_reg__ |
386 02d4 0F90 pop __tmp_reg__ |
387 02d6 18C0 rjmp .L6 |
388 .L7: |
389 02d8 8730 cpi r24,lo8(7) |
390 02da B0F4 brsh .L6 |
391 02dc 88E1 ldi r24,lo8(24) |
392 02de 0E94 0000 call LIBFC_JetiBox_SetPos |
393 02e2 8FED ldi r24,lo8(223) |
394 02e4 90E0 ldi r25,hi8(223) |
395 02e6 9F93 push r25 |
396 02e8 8F93 push r24 |
397 02ea 80E0 ldi r24,lo8(__c.13) |
398 02ec 90E0 ldi r25,hi8(__c.13) |
399 02ee 9F93 push r25 |
400 02f0 8F93 push r24 |
401 02f2 DF93 push r29 |
402 02f4 CF93 push r28 |
403 02f6 E091 0000 lds r30,_printf_P |
404 02fa F091 0000 lds r31,(_printf_P)+1 |
405 02fe 0995 icall |
406 0300 8DB7 in r24,__SP_L__ |
407 0302 9EB7 in r25,__SP_H__ |
408 0304 0696 adiw r24,6 |
409 0306 8DBF out __SP_L__,r24 |
410 .L6: |
411 /* epilogue: frame size=0 */ |
412 0308 DF91 pop r29 |
413 030a CF91 pop r28 |
414 030c 0895 ret |
415 /* epilogue end (size=3) */ |
416 /* function Menu_Temperature size 148 (143) */ |
418 .section .progmem.data |
421 __c.8: |
422 008d 2532 692E .string "%2i.%1iV %3i.%1iA" |
422 2531 6956 |
422 2020 2533 |
422 692E 2531 |
422 6941 00 |
425 __c.9: |
426 00a0 2534 6957 .string "%4iW %6imAh" |
426 2025 3669 |
426 6D41 6800 |
427 .text |
428 .global Menu_Battery |
430 Menu_Battery: |
431 /* prologue: frame size=0 */ |
432 030e 0F93 push r16 |
433 0310 1F93 push r17 |
434 /* prologue end (size=2) */ |
435 0312 80E0 ldi r24,lo8(0) |
436 0314 0E94 0000 call LIBFC_JetiBox_SetPos |
437 0318 2AE0 ldi r18,lo8(10) |
438 031a 30E0 ldi r19,hi8(10) |
439 031c 8091 0000 lds r24,Capacity |
440 0320 9091 0000 lds r25,(Capacity)+1 |
441 0324 B901 movw r22,r18 |
442 0326 0E94 0000 call __udivmodhi4 |
443 032a 9F93 push r25 |
444 032c 8F93 push r24 |
445 032e 8091 0000 lds r24,Capacity |
446 0332 9091 0000 lds r25,(Capacity)+1 |
447 0336 B901 movw r22,r18 |
448 0338 0E94 0000 call __udivmodhi4 |
449 033c 7F93 push r23 |
450 033e 6F93 push r22 |
451 0340 8091 0000 lds r24,UBat |
452 0344 9091 0000 lds r25,(UBat)+1 |
453 0348 B901 movw r22,r18 |
454 034a 0E94 0000 call __divmodhi4 |
455 034e 9F93 push r25 |
456 0350 8F93 push r24 |
457 0352 8091 0000 lds r24,UBat |
458 0356 9091 0000 lds r25,(UBat)+1 |
459 035a B901 movw r22,r18 |
460 035c 0E94 0000 call __divmodhi4 |
461 0360 7F93 push r23 |
462 0362 6F93 push r22 |
463 0364 80E0 ldi r24,lo8(__c.8) |
464 0366 90E0 ldi r25,hi8(__c.8) |
465 0368 9F93 push r25 |
466 036a 8F93 push r24 |
467 036c 00E0 ldi r16,lo8(pm(LIBFC_JetiBox_Putchar)) |
468 036e 10E0 ldi r17,hi8(pm(LIBFC_JetiBox_Putchar)) |
469 0370 1F93 push r17 |
470 0372 0F93 push r16 |
471 0374 E091 0000 lds r30,_printf_P |
472 0378 F091 0000 lds r31,(_printf_P)+1 |
473 037c 0995 icall |
474 037e 80E1 ldi r24,lo8(16) |
475 0380 0E94 0000 call LIBFC_JetiBox_SetPos |
476 0384 8DB7 in r24,__SP_L__ |
477 0386 9EB7 in r25,__SP_H__ |
478 0388 0C96 adiw r24,12 |
479 038a 8DBF out __SP_L__,r24 |
480 038c 8091 0000 lds r24,Capacity+6 |
481 0390 9091 0000 lds r25,(Capacity+6)+1 |
482 0394 9F93 push r25 |
483 0396 8F93 push r24 |
484 0398 8091 0000 lds r24,Capacity+2 |
485 039c 9091 0000 lds r25,(Capacity+2)+1 |
486 03a0 9F93 push r25 |
487 03a2 8F93 push r24 |
488 03a4 80E0 ldi r24,lo8(__c.9) |
489 03a6 90E0 ldi r25,hi8(__c.9) |
490 03a8 9F93 push r25 |
491 03aa 8F93 push r24 |
492 03ac 1F93 push r17 |
493 03ae 0F93 push r16 |
494 03b0 E091 0000 lds r30,_printf_P |
495 03b4 F091 0000 lds r31,(_printf_P)+1 |
496 03b8 0995 icall |
497 03ba 8DB7 in r24,__SP_L__ |
498 03bc 9EB7 in r25,__SP_H__ |
499 03be 0896 adiw r24,8 |
500 03c0 8DBF out __SP_L__,r24 |
501 /* epilogue: frame size=0 */ |
502 03c2 1F91 pop r17 |
503 03c4 0F91 pop r16 |
504 03c6 0895 ret |
505 /* epilogue end (size=3) */ |
506 /* function Menu_Battery size 93 (88) */ |
508 .section .progmem.data |
511 __c.2: |
512 00ac 2532 756D .string "%2um/s Sat:%d " |
512 2F73 2053 |
512 6174 3A25 |
512 6420 00 |
515 __c.3: |
516 00bb 2020 3344 .string " 3D" |
516 00 |
519 __c.4: |
520 00c0 4E6F 4678 .string "NoFx" |
520 00 |
523 __c.5: |
524 00c5 4447 5053 .string "DGPS" |
524 00 |
527 __c.6: |
528 00ca 486F 6D65 .string "Home:%3dm %3d%c" |
528 3A25 3364 |
528 6D20 2533 |
528 6425 6300 |
531 __c.7: |
532 00da 4E6F 204E .string "No NaviCtrl!" |
532 6176 6943 |
532 7472 6C21 |
532 00 |
533 .text |
534 .global Menu_PosInfo |
536 Menu_PosInfo: |
537 /* prologue: frame size=0 */ |
538 03c8 0F93 push r16 |
539 03ca 1F93 push r17 |
540 03cc CF93 push r28 |
541 03ce DF93 push r29 |
542 /* prologue end (size=4) */ |
543 03d0 8091 0000 lds r24,NaviDataOkay |
544 03d4 C0E0 ldi r28,lo8(pm(LIBFC_JetiBox_Putchar)) |
545 03d6 D0E0 ldi r29,hi8(pm(LIBFC_JetiBox_Putchar)) |
546 03d8 8823 tst r24 |
547 03da 09F4 brne .+2 |
548 03dc 78C0 rjmp .L12 |
549 03de 80E0 ldi r24,lo8(0) |
550 03e0 0E94 0000 call LIBFC_JetiBox_SetPos |
551 03e4 8091 0000 lds r24,GPSInfo+1 |
552 03e8 9927 clr r25 |
553 03ea 9F93 push r25 |
554 03ec 8F93 push r24 |
555 03ee 8091 0000 lds r24,GPSInfo+3 |
556 03f2 9927 clr r25 |
557 03f4 9F93 push r25 |
558 03f6 8F93 push r24 |
559 03f8 80E0 ldi r24,lo8(__c.2) |
560 03fa 90E0 ldi r25,hi8(__c.2) |
561 03fc 9F93 push r25 |
562 03fe 8F93 push r24 |
563 0400 8E01 movw r16,r28 |
564 0402 DF93 push r29 |
565 0404 CF93 push r28 |
566 0406 E091 0000 lds r30,_printf_P |
567 040a F091 0000 lds r31,(_printf_P)+1 |
568 040e 0995 icall |
569 0410 8DB7 in r24,__SP_L__ |
570 0412 9EB7 in r25,__SP_H__ |
571 0414 0896 adiw r24,8 |
572 0416 8DBF out __SP_L__,r24 |
573 0418 8091 0000 lds r24,GPSInfo+2 |
574 041c 8330 cpi r24,lo8(3) |
575 041e 31F4 brne .L17 |
576 0420 8CE0 ldi r24,lo8(12) |
577 0422 0E94 0000 call LIBFC_JetiBox_SetPos |
578 0426 80E0 ldi r24,lo8(__c.3) |
579 0428 90E0 ldi r25,hi8(__c.3) |
580 042a 05C0 rjmp .L20 |
581 .L17: |
582 042c 8CE0 ldi r24,lo8(12) |
583 042e 0E94 0000 call LIBFC_JetiBox_SetPos |
584 0432 80E0 ldi r24,lo8(__c.4) |
585 0434 90E0 ldi r25,hi8(__c.4) |
586 .L20: |
587 0436 9F93 push r25 |
588 0438 8F93 push r24 |
589 043a DF93 push r29 |
590 043c CF93 push r28 |
591 043e E091 0000 lds r30,_printf_P |
592 0442 F091 0000 lds r31,(_printf_P)+1 |
593 0446 0995 icall |
594 0448 0F90 pop __tmp_reg__ |
595 044a 0F90 pop __tmp_reg__ |
596 044c 0F90 pop __tmp_reg__ |
597 044e 0F90 pop __tmp_reg__ |
598 0450 8091 0000 lds r24,GPSInfo |
599 0454 81FF sbrs r24,1 |
600 0456 12C0 rjmp .L18 |
601 0458 8CE0 ldi r24,lo8(12) |
602 045a 0E94 0000 call LIBFC_JetiBox_SetPos |
603 045e 80E0 ldi r24,lo8(__c.5) |
604 0460 90E0 ldi r25,hi8(__c.5) |
605 0462 9F93 push r25 |
606 0464 8F93 push r24 |
607 0466 1F93 push r17 |
608 0468 0F93 push r16 |
609 046a E091 0000 lds r30,_printf_P |
610 046e F091 0000 lds r31,(_printf_P)+1 |
611 0472 0995 icall |
612 0474 0F90 pop __tmp_reg__ |
613 0476 0F90 pop __tmp_reg__ |
614 0478 0F90 pop __tmp_reg__ |
615 047a 0F90 pop __tmp_reg__ |
616 .L18: |
617 047c 80E1 ldi r24,lo8(16) |
618 047e 0E94 0000 call LIBFC_JetiBox_SetPos |
619 0482 8FED ldi r24,lo8(223) |
620 0484 90E0 ldi r25,hi8(223) |
621 0486 9F93 push r25 |
622 0488 8F93 push r24 |
623 048a 8091 0000 lds r24,GPSInfo+6 |
624 048e 9091 0000 lds r25,(GPSInfo+6)+1 |
625 0492 9F93 push r25 |
626 0494 8F93 push r24 |
627 0496 8091 0000 lds r24,GPSInfo+4 |
628 049a 9091 0000 lds r25,(GPSInfo+4)+1 |
629 049e 6AE0 ldi r22,lo8(10) |
630 04a0 70E0 ldi r23,hi8(10) |
631 04a2 0E94 0000 call __udivmodhi4 |
632 04a6 7F93 push r23 |
633 04a8 6F93 push r22 |
634 04aa 80E0 ldi r24,lo8(__c.6) |
635 04ac 90E0 ldi r25,hi8(__c.6) |
636 04ae 9F93 push r25 |
637 04b0 8F93 push r24 |
638 04b2 80E0 ldi r24,lo8(pm(LIBFC_JetiBox_Putchar)) |
639 04b4 90E0 ldi r25,hi8(pm(LIBFC_JetiBox_Putchar)) |
640 04b6 9F93 push r25 |
641 04b8 8F93 push r24 |
642 04ba E091 0000 lds r30,_printf_P |
643 04be F091 0000 lds r31,(_printf_P)+1 |
644 04c2 0995 icall |
645 04c4 8DB7 in r24,__SP_L__ |
646 04c6 9EB7 in r25,__SP_H__ |
647 04c8 0A96 adiw r24,10 |
648 04ca 8DBF out __SP_L__,r24 |
649 04cc 12C0 rjmp .L11 |
650 .L12: |
651 04ce 82E0 ldi r24,lo8(2) |
652 04d0 0E94 0000 call LIBFC_JetiBox_SetPos |
653 04d4 80E0 ldi r24,lo8(__c.7) |
654 04d6 90E0 ldi r25,hi8(__c.7) |
655 04d8 9F93 push r25 |
656 04da 8F93 push r24 |
657 04dc DF93 push r29 |
658 04de CF93 push r28 |
659 04e0 E091 0000 lds r30,_printf_P |
660 04e4 F091 0000 lds r31,(_printf_P)+1 |
661 04e8 0995 icall |
662 04ea 0F90 pop __tmp_reg__ |
663 04ec 0F90 pop __tmp_reg__ |
664 04ee 0F90 pop __tmp_reg__ |
665 04f0 0F90 pop __tmp_reg__ |
666 .L11: |
667 /* epilogue: frame size=0 */ |
668 04f2 DF91 pop r29 |
669 04f4 CF91 pop r28 |
670 04f6 1F91 pop r17 |
671 04f8 0F91 pop r16 |
672 04fa 0895 ret |
673 /* epilogue end (size=5) */ |
674 /* function Menu_PosInfo size 154 (145) */ |
676 .lcomm item.0,1 |
677 .lcomm last_item.1,1 |
678 .global JetiBox_Update |
680 JetiBox_Update: |
681 /* prologue: frame size=0 */ |
682 04fc CF93 push r28 |
683 /* prologue end (size=1) */ |
684 04fe C82F mov r28,r24 |
685 0500 2091 0000 lds r18,item.0 |
686 0504 2093 0000 sts last_item.1,r18 |
687 0508 9927 clr r25 |
688 050a 8F32 cpi r24,47 |
689 050c 9105 cpc r25,__zero_reg__ |
690 050e 09F1 breq .L27 |
691 0510 8033 cpi r24,48 |
692 0512 9105 cpc r25,__zero_reg__ |
693 0514 1CF4 brge .L30 |
694 0516 4F97 sbiw r24,31 |
695 0518 A1F0 breq .L26 |
696 051a 2CC0 rjmp .L22 |
697 .L30: |
698 051c 8F34 cpi r24,79 |
699 051e 9105 cpc r25,__zero_reg__ |
700 0520 01F1 breq .L28 |
701 0522 8F38 cpi r24,143 |
702 0524 9105 cpc r25,__zero_reg__ |
703 0526 31F5 brne .L22 |
704 0528 2223 tst r18 |
705 052a 19F4 brne .L24 |
706 052c 81E0 ldi r24,lo8(1) |
707 052e 90E0 ldi r25,hi8(1) |
708 0530 38C0 rjmp .L21 |
709 .L24: |
710 0532 86E0 ldi r24,lo8(6) |
711 0534 289F mul r18,r24 |
712 0536 F001 movw r30,r0 |
713 0538 1124 clr r1 |
714 053a E050 subi r30,lo8(-(JetiBox_Menu)) |
715 053c F040 sbci r31,hi8(-(JetiBox_Menu)) |
716 /* #APP */ |
717 053e 8491 lpm r24, Z |
718 |
719 /* #NOAPP */ |
720 0540 17C0 rjmp .L32 |
721 .L26: |
722 0542 86E0 ldi r24,lo8(6) |
723 0544 289F mul r18,r24 |
724 0546 F001 movw r30,r0 |
725 0548 1124 clr r1 |
726 054a E050 subi r30,lo8(-(JetiBox_Menu+1)) |
727 054c F040 sbci r31,hi8(-(JetiBox_Menu+1)) |
728 /* #APP */ |
729 054e 8491 lpm r24, Z |
730 |
731 /* #NOAPP */ |
732 0550 0FC0 rjmp .L32 |
733 .L27: |
734 0552 86E0 ldi r24,lo8(6) |
735 0554 289F mul r18,r24 |
736 0556 F001 movw r30,r0 |
737 0558 1124 clr r1 |
738 055a E050 subi r30,lo8(-(JetiBox_Menu+2)) |
739 055c F040 sbci r31,hi8(-(JetiBox_Menu+2)) |
740 /* #APP */ |
741 055e 8491 lpm r24, Z |
742 |
743 /* #NOAPP */ |
744 0560 07C0 rjmp .L32 |
745 .L28: |
746 0562 86E0 ldi r24,lo8(6) |
747 0564 289F mul r18,r24 |
748 0566 F001 movw r30,r0 |
749 0568 1124 clr r1 |
750 056a E050 subi r30,lo8(-(JetiBox_Menu+3)) |
751 056c F040 sbci r31,hi8(-(JetiBox_Menu+3)) |
752 /* #APP */ |
753 056e 8491 lpm r24, Z |
754 |
755 /* #NOAPP */ |
756 .L32: |
757 0570 8093 0000 sts item.0,r24 |
758 .L22: |
759 0574 9091 0000 lds r25,item.0 |
760 0578 8091 0000 lds r24,last_item.1 |
761 057c 9813 cpse r25,r24 |
762 057e C0E0 ldi r28,lo8(0) |
763 .L31: |
764 0580 0E94 0000 call LIBFC_JetiBox_Clear |
765 0584 9091 0000 lds r25,item.0 |
766 0588 86E0 ldi r24,lo8(6) |
767 058a 989F mul r25,r24 |
768 058c F001 movw r30,r0 |
769 058e 1124 clr r1 |
770 0590 E050 subi r30,lo8(-(JetiBox_Menu+4)) |
771 0592 F040 sbci r31,hi8(-(JetiBox_Menu+4)) |
772 /* #APP */ |
773 0594 2591 lpm r18, Z+ |
774 0596 3491 lpm r19, Z |
775 |
776 /* #NOAPP */ |
777 0598 8C2F mov r24,r28 |
778 059a F901 movw r30,r18 |
779 059c 0995 icall |
780 059e 80E0 ldi r24,lo8(0) |
781 05a0 90E0 ldi r25,hi8(0) |
782 .L21: |
783 /* epilogue: frame size=0 */ |
784 05a2 CF91 pop r28 |
785 05a4 0895 ret |
786 /* epilogue end (size=2) */ |
787 /* function JetiBox_Update size 103 (100) */ |
789 /* File "jetimenu.c": code 741 = 0x02e5 ( 714), prologues 11, epilogues 16 */ |
DEFINED SYMBOLS |
*ABS*:00000000 jetimenu.c |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:14 .progmem.data:00000000 JetiBox_Menu |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:62 .text:00000000 Menu_Status |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:282 .text:000001e6 Menu_Temperature |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:430 .text:0000030e Menu_Battery |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:536 .text:000003c8 Menu_PosInfo |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:37 .progmem.data:00000018 __c.14 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:41 .progmem.data:00000021 __c.15 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:45 .progmem.data:0000002d __c.16 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:49 .progmem.data:00000034 __c.17 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:53 .progmem.data:0000003f __c.18 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:57 .progmem.data:0000004c __c.19 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:265 .progmem.data:00000053 __c.10 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:269 .progmem.data:00000063 __c.11 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:273 .progmem.data:00000073 __c.12 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:277 .progmem.data:00000084 __c.13 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:421 .progmem.data:0000008d __c.8 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:425 .progmem.data:000000a0 __c.9 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:511 .progmem.data:000000ac __c.2 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:515 .progmem.data:000000bb __c.3 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:519 .progmem.data:000000c0 __c.4 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:523 .progmem.data:000000c5 __c.5 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:527 .progmem.data:000000ca __c.6 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:531 .progmem.data:000000da __c.7 |
.bss:00000000 item.0 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:676 .bss:00000001 last_item.1 |
C:\Users\Thomas\AppData\Local\Temp/ccENbaaa.s:680 .text:000004fc JetiBox_Update |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
LIBFC_JetiBox_SetPos |
UBat |
__divmodhi4 |
LIBFC_JetiBox_Putchar |
_printf_P |
NaviDataOkay |
GPSInfo |
__udivmodhi4 |
ErsatzKompass |
GIER_GRAD_FAKTOR |
__divmodsi4 |
NC_ErrorCode |
FlugSekunden |
Capacity |
EE_Parameter |
VarioCharacter |
HoehenWert |
Motor |
RequiredMotors |
LIBFC_JetiBox_Clear |
/branches/metro/v0.82a metro_Akku+/led.c |
---|
0,0 → 1,98 |
#include <inttypes.h> |
#include "main.h" |
uint16_t LED1_Timing = 0; |
uint16_t LED2_Timing = 0; |
unsigned char J16Blinkcount = 0, J16Mask = 1; |
unsigned char J17Blinkcount = 0, J17Mask = 1; |
// initializes the LED control outputs J16, J17 |
void LED_Init(void) |
{ |
// set PC2 & PC3 as output (control of J16 & J17) |
DDRC |= (1<<DDC2)|(1<<DDC3); |
J16_OFF; |
J17_OFF; |
J16Blinkcount = 0; J16Mask = 128; |
J17Blinkcount = 0; J17Mask = 128; |
} |
// called in UpdateMotors() every 2ms |
void LED_Update(void) |
{ |
static char delay = 0; |
static unsigned char J16Bitmask = 0; |
static unsigned char J17Bitmask = 0; |
static unsigned char J16Warn = 0, J17Warn = 0; |
if(!delay--) // 10ms Intervall |
{ |
delay = 4; |
if(FC_StatusFlags & (FC_STATUS_LOWBAT | FC_STATUS_EMERGENCY_LANDING) || (VersionInfo.HardwareError[1] & FC_ERROR1_I2C)) |
{ |
if(EE_Parameter.WARN_J16_Bitmask) |
{ |
if(!J16Warn) J16Blinkcount = 4; |
J16Warn = 1; |
} |
if(EE_Parameter.WARN_J17_Bitmask) |
{ |
if(!J17Warn) J17Blinkcount = 4; |
J17Warn = 1; |
} |
} |
else |
{ |
J16Warn = 0; |
J17Warn = 0; |
J16Bitmask = EE_Parameter.J16Bitmask; |
J17Bitmask = EE_Parameter.J17Bitmask; |
} |
if(!J16Warn) |
{ |
if((EE_Parameter.BitConfig & CFG_MOTOR_BLINK) && !MotorenEin) {if(EE_Parameter.BitConfig & CFG_MOTOR_OFF_LED1) J16_ON; else J16_OFF;} |
else |
if((EE_Parameter.J16Timing > 247) && (Parameter_J16Timing > 220)) {if(J16Bitmask & 128) J16_ON; else J16_OFF;} |
else |
if((EE_Parameter.J16Timing > 247) && (Parameter_J16Timing < 10)) {if(J16Bitmask & 128) J16_OFF; else J16_ON;} |
else |
if(!J16Blinkcount--) |
{ |
J16Blinkcount = Parameter_J16Timing-1; |
if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2; |
if(J16Mask & J16Bitmask) J16_ON; else J16_OFF; |
} |
} |
else |
if(!J16Blinkcount--) |
{ |
J16Blinkcount = 10-1; |
if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2; |
if(J16Mask & EE_Parameter.WARN_J16_Bitmask) J16_ON; else J16_OFF; |
} |
if(!J17Warn) |
{ |
if((EE_Parameter.BitConfig & CFG_MOTOR_BLINK) && !MotorenEin) {if(EE_Parameter.BitConfig & CFG_MOTOR_OFF_LED2) J17_ON; else J17_OFF;} |
else |
if((EE_Parameter.J17Timing > 247) && (Parameter_J17Timing > 220)) {if(J17Bitmask & 128) J17_ON; else J17_OFF;} |
else |
if((EE_Parameter.J17Timing > 247) && (Parameter_J17Timing < 10)) {if(J17Bitmask & 128) J17_OFF; else J17_ON;} |
else |
if(!J17Blinkcount--) |
{ |
J17Blinkcount = Parameter_J17Timing-1; |
if(J17Mask == 1) J17Mask = 128; else J17Mask /= 2; |
if(J17Mask & J17Bitmask) J17_ON; else J17_OFF; |
} |
} |
else |
if(!J17Blinkcount--) |
{ |
J17Blinkcount = 10-1; |
if(J17Mask == 1) J17Mask = 128; else J17Mask /= 2; |
if(J17Mask & EE_Parameter.WARN_J17_Bitmask) J17_ON; else J17_OFF; |
} |
} |
} |
/branches/metro/v0.82a metro_Akku+/led.d |
---|
0,0 → 1,3 |
led.o led.d : led.c main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/led.h |
---|
0,0 → 1,11 |
#include <avr/io.h> |
#define J16_ON PORTC |= (1<<PORTC2) |
#define J16_OFF PORTC &= ~(1<<PORTC2) |
#define J16_TOGGLE PORTC ^= (1<<PORTC2) |
#define J17_ON PORTC |= (1<<PORTC3) |
#define J17_OFF PORTC &= ~(1<<PORTC3) |
#define J17_TOGGLE PORTC ^= (1<<PORTC3) |
extern void LED_Init(void); |
extern void LED_Update(void); |
/branches/metro/v0.82a metro_Akku+/led.lst |
---|
0,0 → 1,323 |
1 .file "led.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global J17Mask |
11 .data |
14 J17Mask: |
15 0000 01 .byte 1 |
16 .global J17Blinkcount |
17 .global J17Blinkcount |
18 .section .bss |
21 J17Blinkcount: |
22 0000 00 .skip 1,0 |
23 .global J16Mask |
24 .data |
27 J16Mask: |
28 0001 01 .byte 1 |
29 .global J16Blinkcount |
30 .global J16Blinkcount |
31 .section .bss |
34 J16Blinkcount: |
35 0001 00 .skip 1,0 |
36 .global LED2_Timing |
37 .global LED2_Timing |
40 LED2_Timing: |
41 0002 0000 .skip 2,0 |
42 .global LED1_Timing |
43 .global LED1_Timing |
46 LED1_Timing: |
47 0004 0000 .skip 2,0 |
48 .text |
49 .global LED_Init |
51 LED_Init: |
52 /* prologue: frame size=0 */ |
53 /* prologue end (size=0) */ |
54 0000 87B1 in r24,39-0x20 |
55 0002 8C60 ori r24,lo8(12) |
56 0004 87B9 out 39-0x20,r24 |
57 0006 4298 cbi 40-0x20,2 |
58 0008 4398 cbi 40-0x20,3 |
59 000a 1092 0000 sts J16Blinkcount,__zero_reg__ |
60 000e 80E8 ldi r24,lo8(-128) |
61 0010 8093 0000 sts J16Mask,r24 |
62 0014 1092 0000 sts J17Blinkcount,__zero_reg__ |
63 0018 8093 0000 sts J17Mask,r24 |
64 /* epilogue: frame size=0 */ |
65 001c 0895 ret |
66 /* epilogue end (size=1) */ |
67 /* function LED_Init size 15 (14) */ |
69 .lcomm delay.0,1 |
70 .lcomm J16Bitmask.1,1 |
71 .lcomm J17Bitmask.2,1 |
72 .lcomm J16Warn.3,1 |
73 .lcomm J17Warn.4,1 |
74 .global LED_Update |
76 LED_Update: |
77 /* prologue: frame size=0 */ |
78 /* prologue end (size=0) */ |
79 001e 8091 0000 lds r24,delay.0 |
80 0022 8150 subi r24,lo8(-(-1)) |
81 0024 8093 0000 sts delay.0,r24 |
82 0028 8F3F cpi r24,lo8(-1) |
83 002a 09F0 breq .+2 |
84 002c FBC0 rjmp .L2 |
85 002e 24E0 ldi r18,lo8(4) |
86 0030 2093 0000 sts delay.0,r18 |
87 0034 8091 0000 lds r24,FC_StatusFlags |
88 0038 9927 clr r25 |
89 003a 8073 andi r24,lo8(48) |
90 003c 9070 andi r25,hi8(48) |
91 003e 892B or r24,r25 |
92 0040 21F4 brne .L5 |
93 0042 8091 0000 lds r24,VersionInfo+6 |
94 0046 80FF sbrs r24,0 |
95 0048 1CC0 rjmp .L4 |
96 .L5: |
97 004a 8091 0000 lds r24,EE_Parameter+78 |
98 004e 8823 tst r24 |
99 0050 49F0 breq .L6 |
100 0052 8091 0000 lds r24,J16Warn.3 |
101 0056 8823 tst r24 |
102 0058 11F4 brne .L7 |
103 005a 2093 0000 sts J16Blinkcount,r18 |
104 .L7: |
105 005e 81E0 ldi r24,lo8(1) |
106 0060 8093 0000 sts J16Warn.3,r24 |
107 .L6: |
108 0064 8091 0000 lds r24,EE_Parameter+79 |
109 0068 8823 tst r24 |
110 006a B9F0 breq .L10 |
111 006c 8091 0000 lds r24,J17Warn.4 |
112 0070 8823 tst r24 |
113 0072 19F4 brne .L9 |
114 0074 84E0 ldi r24,lo8(4) |
115 0076 8093 0000 sts J17Blinkcount,r24 |
116 .L9: |
117 007a 81E0 ldi r24,lo8(1) |
118 007c 8093 0000 sts J17Warn.4,r24 |
119 0080 0CC0 rjmp .L10 |
120 .L4: |
121 0082 1092 0000 sts J16Warn.3,__zero_reg__ |
122 0086 1092 0000 sts J17Warn.4,__zero_reg__ |
123 008a 8091 0000 lds r24,EE_Parameter+74 |
124 008e 8093 0000 sts J16Bitmask.1,r24 |
125 0092 8091 0000 lds r24,EE_Parameter+76 |
126 0096 8093 0000 sts J17Bitmask.2,r24 |
127 .L10: |
128 009a 8091 0000 lds r24,J16Warn.3 |
129 009e 8823 tst r24 |
130 00a0 09F0 breq .+2 |
131 00a2 40C0 rjmp .L11 |
132 00a4 8091 0000 lds r24,EE_Parameter+100 |
133 00a8 282F mov r18,r24 |
134 00aa 3327 clr r19 |
135 00ac 24FF sbrs r18,4 |
136 00ae 07C0 rjmp .L12 |
137 00b0 8091 0000 lds r24,MotorenEin |
138 00b4 8823 tst r24 |
139 00b6 19F4 brne .L12 |
140 00b8 25FD sbrc r18,5 |
141 00ba 4DC0 rjmp .L61 |
142 00bc 4EC0 rjmp .L33 |
143 .L12: |
144 00be 9091 0000 lds r25,EE_Parameter+75 |
145 00c2 983F cpi r25,lo8(-8) |
146 00c4 50F0 brlo .L16 |
147 00c6 8091 0000 lds r24,Parameter_J16Timing |
148 00ca 8D3D cpi r24,lo8(-35) |
149 00cc 30F0 brlo .L16 |
150 00ce 8091 0000 lds r24,J16Bitmask.1 |
151 00d2 8823 tst r24 |
152 00d4 0CF4 brge .+2 |
153 00d6 3FC0 rjmp .L61 |
154 00d8 40C0 rjmp .L33 |
155 .L16: |
156 00da 983F cpi r25,lo8(-8) |
157 00dc 48F0 brlo .L20 |
158 00de 8091 0000 lds r24,Parameter_J16Timing |
159 00e2 8A30 cpi r24,lo8(10) |
160 00e4 28F4 brsh .L20 |
161 00e6 8091 0000 lds r24,J16Bitmask.1 |
162 00ea 8823 tst r24 |
163 00ec B4F1 brlt .L33 |
164 00ee 33C0 rjmp .L61 |
165 .L20: |
166 00f0 8091 0000 lds r24,J16Blinkcount |
167 00f4 8150 subi r24,lo8(-(-1)) |
168 00f6 8093 0000 sts J16Blinkcount,r24 |
169 00fa 8F3F cpi r24,lo8(-1) |
170 00fc 79F5 brne .L29 |
171 00fe 8091 0000 lds r24,Parameter_J16Timing |
172 0102 8150 subi r24,lo8(-(-1)) |
173 0104 8093 0000 sts J16Blinkcount,r24 |
174 0108 8091 0000 lds r24,J16Mask |
175 010c 8130 cpi r24,lo8(1) |
176 010e 11F4 brne .L25 |
177 0110 80E8 ldi r24,lo8(-128) |
178 0112 01C0 rjmp .L59 |
179 .L25: |
180 0114 8695 lsr r24 |
181 .L59: |
182 0116 8093 0000 sts J16Mask,r24 |
183 011a 8091 0000 lds r24,J16Mask |
184 011e 9091 0000 lds r25,J16Bitmask.1 |
185 0122 17C0 rjmp .L68 |
186 .L11: |
187 0124 8091 0000 lds r24,J16Blinkcount |
188 0128 8150 subi r24,lo8(-(-1)) |
189 012a 8093 0000 sts J16Blinkcount,r24 |
190 012e 8F3F cpi r24,lo8(-1) |
191 0130 A9F4 brne .L29 |
192 0132 89E0 ldi r24,lo8(9) |
193 0134 8093 0000 sts J16Blinkcount,r24 |
194 0138 8091 0000 lds r24,J16Mask |
195 013c 8130 cpi r24,lo8(1) |
196 013e 11F4 brne .L31 |
197 0140 80E8 ldi r24,lo8(-128) |
198 0142 01C0 rjmp .L60 |
199 .L31: |
200 0144 8695 lsr r24 |
201 .L60: |
202 0146 8093 0000 sts J16Mask,r24 |
203 014a 8091 0000 lds r24,J16Mask |
204 014e 9091 0000 lds r25,EE_Parameter+78 |
205 .L68: |
206 0152 8923 and r24,r25 |
207 0154 11F0 breq .L33 |
208 .L61: |
209 0156 429A sbi 40-0x20,2 |
210 0158 01C0 rjmp .L29 |
211 .L33: |
212 015a 4298 cbi 40-0x20,2 |
213 .L29: |
214 015c 8091 0000 lds r24,J17Warn.4 |
215 0160 8823 tst r24 |
216 0162 09F0 breq .+2 |
217 0164 43C0 rjmp .L35 |
218 0166 8091 0000 lds r24,EE_Parameter+100 |
219 016a 282F mov r18,r24 |
220 016c 3327 clr r19 |
221 016e 24FF sbrs r18,4 |
222 0170 07C0 rjmp .L36 |
223 0172 8091 0000 lds r24,MotorenEin |
224 0176 8823 tst r24 |
225 0178 19F4 brne .L36 |
226 017a 26FD sbrc r18,6 |
227 017c 50C0 rjmp .L67 |
228 017e 34C0 rjmp .L51 |
229 .L36: |
230 0180 9091 0000 lds r25,EE_Parameter+77 |
231 0184 983F cpi r25,lo8(-8) |
232 0186 50F0 brlo .L40 |
233 0188 8091 0000 lds r24,Parameter_J17Timing |
234 018c 8D3D cpi r24,lo8(-35) |
235 018e 30F0 brlo .L40 |
236 0190 8091 0000 lds r24,J17Bitmask.2 |
237 0194 8823 tst r24 |
238 0196 0CF4 brge .+2 |
239 0198 42C0 rjmp .L67 |
240 019a 26C0 rjmp .L51 |
241 .L40: |
242 019c 983F cpi r25,lo8(-8) |
243 019e 48F0 brlo .L44 |
244 01a0 8091 0000 lds r24,Parameter_J17Timing |
245 01a4 8A30 cpi r24,lo8(10) |
246 01a6 28F4 brsh .L44 |
247 01a8 8091 0000 lds r24,J17Bitmask.2 |
248 01ac 8823 tst r24 |
249 01ae E4F0 brlt .L51 |
250 01b0 36C0 rjmp .L67 |
251 .L44: |
252 01b2 8091 0000 lds r24,J17Blinkcount |
253 01b6 8150 subi r24,lo8(-(-1)) |
254 01b8 8093 0000 sts J17Blinkcount,r24 |
255 01bc 8F3F cpi r24,lo8(-1) |
256 01be 91F5 brne .L2 |
257 01c0 8091 0000 lds r24,Parameter_J17Timing |
258 01c4 8150 subi r24,lo8(-(-1)) |
259 01c6 8093 0000 sts J17Blinkcount,r24 |
260 01ca 8091 0000 lds r24,J17Mask |
261 01ce 8130 cpi r24,lo8(1) |
262 01d0 11F4 brne .L49 |
263 01d2 80E8 ldi r24,lo8(-128) |
264 01d4 01C0 rjmp .L62 |
265 .L49: |
266 01d6 8695 lsr r24 |
267 .L62: |
268 01d8 8093 0000 sts J17Mask,r24 |
269 01dc 8091 0000 lds r24,J17Mask |
270 01e0 9091 0000 lds r25,J17Bitmask.2 |
271 01e4 8923 and r24,r25 |
272 01e6 D9F4 brne .L67 |
273 .L51: |
274 01e8 4398 cbi 40-0x20,3 |
275 01ea 0895 ret |
276 .L35: |
277 01ec 8091 0000 lds r24,J17Blinkcount |
278 01f0 8150 subi r24,lo8(-(-1)) |
279 01f2 8093 0000 sts J17Blinkcount,r24 |
280 01f6 8F3F cpi r24,lo8(-1) |
281 01f8 A9F4 brne .L2 |
282 01fa 89E0 ldi r24,lo8(9) |
283 01fc 8093 0000 sts J17Blinkcount,r24 |
284 0200 8091 0000 lds r24,J17Mask |
285 0204 8130 cpi r24,lo8(1) |
286 0206 11F4 brne .L55 |
287 0208 80E8 ldi r24,lo8(-128) |
288 020a 01C0 rjmp .L63 |
289 .L55: |
290 020c 8695 lsr r24 |
291 .L63: |
292 020e 8093 0000 sts J17Mask,r24 |
293 0212 8091 0000 lds r24,J17Mask |
294 0216 9091 0000 lds r25,EE_Parameter+79 |
295 021a 8923 and r24,r25 |
296 021c 11F0 breq .L57 |
297 .L67: |
298 021e 439A sbi 40-0x20,3 |
299 0220 0895 ret |
300 .L57: |
301 0222 4398 cbi 40-0x20,3 |
302 .L2: |
303 0224 0895 ret |
304 /* epilogue: frame size=0 */ |
305 /* epilogue: noreturn */ |
306 /* epilogue end (size=0) */ |
307 /* function LED_Update size 267 (267) */ |
309 /* File "led.c": code 282 = 0x011a ( 281), prologues 0, epilogues 1 */ |
DEFINED SYMBOLS |
*ABS*:00000000 led.c |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:14 .data:00000000 J17Mask |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:21 .bss:00000000 J17Blinkcount |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:27 .data:00000001 J16Mask |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:34 .bss:00000001 J16Blinkcount |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:40 .bss:00000002 LED2_Timing |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:46 .bss:00000004 LED1_Timing |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:51 .text:00000000 LED_Init |
.bss:00000006 delay.0 |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:69 .bss:00000007 J16Bitmask.1 |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:70 .bss:00000008 J17Bitmask.2 |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:71 .bss:00000009 J16Warn.3 |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:72 .bss:0000000a J17Warn.4 |
C:\Users\Thomas\AppData\Local\Temp/ccCQbaaa.s:76 .text:0000001e LED_Update |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
FC_StatusFlags |
VersionInfo |
EE_Parameter |
MotorenEin |
Parameter_J16Timing |
Parameter_J17Timing |
/branches/metro/v0.82a metro_Akku+/libfc.h |
---|
0,0 → 1,20 |
#ifndef _LIBFC_H |
#define _LIBFC_H |
#define CPU_UNKNOWN 0 |
#define CPU_ATMEGA644 1 |
#define CPU_ATMEGA644P 2 |
#define CPU_ATMEGA1284 3 |
#define CPU_ATMEGA1284P 4 |
extern void LIBFC_Init(void); |
extern void LIBFC_Polling(void); |
extern void LIBFC_ReceiverInit(unsigned char rtype); |
extern void LIBFC_JetiBox_Putchar(char c); |
extern void LIBFC_JetiBox_SetPos(unsigned char index); |
extern void LIBFC_JetiBox_Clear(void); |
extern unsigned char LIBFC_GetCPUType(void); |
#endif //_LIBFC_H |
/branches/metro/v0.82a metro_Akku+/main.c |
---|
0,0 → 1,403 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + Nur für den privaten Gebrauch / NON-COMMERCIAL USE ONLY |
// + www.MikroKopter.com |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Es gilt für das gesamte Projekt (Hardware, Software, Binärfiles, Sourcecode und Dokumentation), |
// + dass eine Nutzung (auch auszugsweise) nur für den privaten und nicht-kommerziellen Gebrauch zulässig ist. |
// + Sollten direkte oder indirekte kommerzielle Absichten verfolgt werden, ist mit uns (info@mikrokopter.de) Kontakt |
// + bzgl. der Nutzungsbedingungen aufzunehmen. |
// + Eine kommerzielle Nutzung ist z.B.Verkauf von MikroKoptern, Bestückung und Verkauf von Platinen oder Bausätzen, |
// + Verkauf von Luftbildaufnahmen, usw. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Werden Teile des Quellcodes (mit oder ohne Modifikation) weiterverwendet oder veröffentlicht, |
// + unterliegen sie auch diesen Nutzungsbedingungen und diese Nutzungsbedingungen incl. Copyright müssen dann beiliegen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Sollte die Software (auch auszugesweise) oder sonstige Informationen des MikroKopter-Projekts |
// + auf anderen Webseiten oder Medien veröffentlicht werden, muss unsere Webseite "http://www.mikrokopter.de" |
// + eindeutig als Ursprung verlinkt und genannt werden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Keine Gewähr auf Fehlerfreiheit, Vollständigkeit oder Funktion |
// + Benutzung auf eigene Gefahr |
// + Wir übernehmen keinerlei Haftung für direkte oder indirekte Personen- oder Sachschäden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Portierung oder Nutzung der Software (oder Teile davon) auf andere Systeme (ausser der Hardware von www.mikrokopter.de) ist nur |
// + mit unserer Zustimmung zulässig |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Funktion printf_P() unterliegt ihrer eigenen Lizenz und ist hiervon nicht betroffen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Redistributions of source code (with or without modifications) must retain the above copyright notice, |
// + this list of conditions and the following disclaimer. |
// + * Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived |
// + from this software without specific prior written permission. |
// + * The use of this project (hardware, software, binary files, sources and documentation) is only permittet |
// + for non-commercial use (directly or indirectly) |
// + Commercial use (for excample: selling of MikroKopters, selling of PCBs, assembly, ...) is only permitted |
// + with our written permission |
// + * If sources or documentations are redistributet on other webpages, out webpage (http://www.MikroKopter.de) must be |
// + clearly linked as origin |
// + * porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
// + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
// + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
// + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
// + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
// + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
// + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
// + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
// + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
// + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
// + POSSIBILITY OF SUCH DAMAGE. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include "main.h" |
//MartinW MaxSize is 63488 bytes |
unsigned char PlatinenVersion = 10; |
unsigned char SendVersionToNavi = 1; |
unsigned char BattLowVoltageWarning = 94; |
unsigned int FlugMinuten = 0,FlugMinutenGesamt = 0; |
unsigned int FlugSekunden = 0; |
pVoidFnct_pVoidFnctChar_const_fmt _printf_P; |
unsigned char FoundMotors = 0; |
void CalMk3Mag(void) |
{ |
static unsigned char stick = 1; |
if(PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] > -20) stick = 0; |
if((PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < -70) && !stick) |
{ |
stick = 1; |
WinkelOut.CalcState++; |
if(WinkelOut.CalcState > 4) |
{ |
// WinkelOut.CalcState = 0; // in Uart.c |
beeptime = 1000; |
} |
else Piep(WinkelOut.CalcState,150); |
} |
DebugOut.Analog[19] = WinkelOut.CalcState; |
} |
void LipoDetection(unsigned char print) |
{ |
#define MAX_CELL_VOLTAGE 43 // max cell volatage for LiPO |
unsigned int timer, cells; |
if(print) printf("\n\rBatt:"); |
if(EE_Parameter.UnterspannungsWarnung < 50) // automatische Zellenerkennung |
{ |
timer = SetDelay(500); |
if(print) while (!CheckDelay(timer)); |
// up to 6s LiPo, less than 2s is technical impossible |
for(cells = 2; cells < 7; cells++) |
{ |
if(UBat < cells * MAX_CELL_VOLTAGE) break; |
} |
BattLowVoltageWarning = cells * EE_Parameter.UnterspannungsWarnung; |
if(print) |
{ |
Piep(cells, 200); |
printf(" %d Cells ", cells); |
} |
} |
else BattLowVoltageWarning = EE_Parameter.UnterspannungsWarnung; |
if(print) printf(" Low warning level: %d.%d",BattLowVoltageWarning/10,BattLowVoltageWarning%10); |
} |
//############################################################################ |
//Hauptprogramm |
int main (void) |
//############################################################################ |
{ |
unsigned int timer,i,timer2 = 0, timerPolling; |
DDRB = 0x00; |
PORTB = 0x00; |
for(timer = 0; timer < 1000; timer++); // verzögern |
#if (defined(__AVR_ATmega1284__) || defined(__AVR_ATmega1284P__)) |
PlatinenVersion = 21; |
#else |
if(PINB & 0x01) |
{ |
if(PINB & 0x02) PlatinenVersion = 13; |
else PlatinenVersion = 11; |
} |
else |
{ |
if(PINB & 0x02) PlatinenVersion = 20; |
else PlatinenVersion = 10; |
} |
#endif |
DDRC = 0x81; // SCL |
DDRC |=0x40; // HEF4017 Reset |
PORTC = 0xff; // Pullup SDA |
DDRB = 0x1B; // LEDs und Druckoffset |
PORTB = 0x01; // LED_Rot |
DDRD = 0x3E; // Speaker & TXD & J3 J4 J5 |
PORTD = 0x47; // LED |
HEF4017R_ON; |
MCUSR &=~(1<<WDRF); |
WDTCSR |= (1<<WDCE)|(1<<WDE); |
WDTCSR = 0; |
beeptime = 2500; |
StickGier = 0; PPM_in[K_GAS] = 0; StickRoll = 0; StickNick = 0; |
if(PlatinenVersion >= 20) GIER_GRAD_FAKTOR = 1220; else GIER_GRAD_FAKTOR = 1291; // unterschiedlich für ME und ENC |
ROT_OFF; |
Timer_Init(); |
TIMER2_Init(); |
UART_Init(); |
rc_sum_init(); |
ADC_Init(); |
I2C_Init(1); |
SPI_MasterInit(); |
LIBFC_Init(); |
GRN_ON; |
sei(); |
ParamSet_Init(); |
Capacity_Init(); //Moved by metro |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Check connected BL-Ctrls |
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// Check connected BL-Ctrls |
BLFlags |= BLFLAG_READ_VERSION; |
motor_read = 0; // read the first I2C-Data |
SendMotorData(); |
timer = SetDelay(500); |
while(!(BLFlags & BLFLAG_TX_COMPLETE) && !CheckDelay(timer)); //wait for complete transfer |
printf("\n\rFound BL-Ctrl: "); |
timer = SetDelay(4000); |
for(i=0; i < MAX_MOTORS; i++) |
{ |
SendMotorData(); |
while(!(BLFlags & BLFLAG_TX_COMPLETE) && !CheckDelay(timer)); //wait for complete transfer |
if(Mixer.Motor[i][0] > 0) // wait max 4 sec for the BL-Ctrls to wake up |
{ |
while(!CheckDelay(timer) && !(Motor[i].State & MOTOR_STATE_PRESENT_MASK) ) |
{ |
SendMotorData(); |
while(!(BLFlags & BLFLAG_TX_COMPLETE) && !CheckDelay(timer)); //wait for complete transfer |
} |
} |
if(Motor[i].State & MOTOR_STATE_PRESENT_MASK) |
{ |
printf("%d",i+1); |
FoundMotors++; |
// if(Motor[i].Version & MOTOR_STATE_NEW_PROTOCOL_MASK) printf("(new) "); |
} |
} |
for(i=0; i < MAX_MOTORS; i++) |
{ |
if(!(Motor[i].State & MOTOR_STATE_PRESENT_MASK) && Mixer.Motor[i][0] > 0) |
{ |
printf("\n\r\n\r!! MISSING BL-CTRL: %d !!",i+1); |
ServoActive = 2; // just in case the FC would be used as camera-stabilizer |
} |
Motor[i].State &= ~MOTOR_STATE_ERROR_MASK; // clear error counter |
} |
printf("\n\r==================================="); |
if(RequiredMotors < FoundMotors) VersionInfo.HardwareError[1] |= FC_ERROR1_MIXER; |
//if(EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG) |
{ |
printf("\n\rCalibrating pressure sensor.."); |
timer = SetDelay(1000); |
SucheLuftruckOffset(); |
while (!CheckDelay(timer)); |
printf("OK\n\r"); |
} |
SetNeutral(0); |
ROT_OFF; |
beeptime = 2000; |
ExternControl.Digital[0] = 0x55; |
FlugMinuten = (unsigned int)GetParamByte(PID_FLIGHT_MINUTES) * 256 + (unsigned int)GetParamByte(PID_FLIGHT_MINUTES + 1); |
FlugMinutenGesamt = (unsigned int)GetParamByte(PID_FLIGHT_MINUTES_TOTAL) * 256 + (unsigned int)GetParamByte(PID_FLIGHT_MINUTES_TOTAL + 1); |
if((FlugMinutenGesamt == 0xFFFF) || (FlugMinuten == 0xFFFF)) |
{ |
FlugMinuten = 0; |
FlugMinutenGesamt = 0; |
} |
printf("\n\rFlight-time %u min Total:%u min", FlugMinuten, FlugMinutenGesamt); |
printf("\n\rControl: "); |
if (EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) printf("HeadingHold"); |
else printf("Normal (ACC-Mode)"); |
LcdClear(); |
I2CTimeout = 5000; |
WinkelOut.Orientation = 1; |
LipoDetection(1); |
LIBFC_ReceiverInit(EE_Parameter.Receiver); |
printf("\n\r===================================\n\r"); |
//SpektrumBinding(); |
timer = SetDelay(2000); |
timerPolling = SetDelay(250); |
Debug(ANSI_CLEAR "FC-Start!\n\rFlugzeit: %d min", FlugMinutenGesamt); // Note: this won't waste flash memory, if #DEBUG is not active |
DebugOut.Status[0] = 0x01 | 0x02; |
while (1) |
{ |
if (JetiUpdateModeActive) while (1); |
if(CheckDelay(timerPolling)) |
{ |
timerPolling = SetDelay(100); |
LIBFC_Polling(); |
} |
if(UpdateMotor && AdReady) // ReglerIntervall |
{ |
UpdateMotor=0; |
if(WinkelOut.CalcState) CalMk3Mag(); |
else MotorRegler(); |
SendMotorData(); |
ROT_OFF; |
if(SenderOkay) { SenderOkay--; VersionInfo.HardwareError[1] &= ~FC_ERROR1_PPM; } |
else |
{ |
TIMSK1 |= _BV(ICIE1); // enable PPM-Input |
PPM_in[0] = 0; // set RSSI to zero on data timeout |
VersionInfo.HardwareError[1] |= FC_ERROR1_PPM; |
} |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
//if(HoehenReglerAktiv && NaviDataOkay && SenderOkay < 160 && SenderOkay > 10 && FromNaviCtrl_Value.SerialDataOkay > 220) SenderOkay = 160; |
//if(HoehenReglerAktiv && NaviDataOkay && SenderOkay < 101 && SenderOkay > 10 && FromNaviCtrl_Value.SerialDataOkay > 1) SenderOkay = 101; |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
if(!--I2CTimeout || MissingMotor) |
{ |
if(!I2CTimeout) |
{ |
I2C_Reset(); |
I2CTimeout = 5; |
DebugOut.Analog[28]++; // I2C-Error |
VersionInfo.HardwareError[1] |= FC_ERROR1_I2C; |
DebugOut.Status[1] |= 0x02; // BL-Error-Status |
} |
if((BeepMuster == 0xffff) && MotorenEin) |
{ |
beeptime = 10000; |
BeepMuster = 0x0080; |
} |
} |
else |
{ |
ROT_OFF; |
if(!beeptime) |
{ |
VersionInfo.HardwareError[1] &= ~FC_ERROR1_I2C; |
} |
} |
if(!UpdateMotor) |
{ |
if(CalculateServoSignals) CalculateServo(); |
DatenUebertragung(); |
BearbeiteRxDaten(); |
if(CheckDelay(timer)) |
{ |
static unsigned char second; |
timer += 20; // 20 ms interval |
if(MissingMotor) |
{ |
VersionInfo.HardwareError[1] |= FC_ERROR1_BL_MISSING; |
DebugOut.Status[1] |= 0x02; // BL-Error-Status |
} |
else |
{ |
VersionInfo.HardwareError[1] &= ~FC_ERROR1_BL_MISSING; |
if(I2CTimeout > 6) DebugOut.Status[1] &= ~0x02; // BL-Error-Status |
} |
if(I2CTimeout > 6) VersionInfo.HardwareError[1] &= ~FC_ERROR1_I2C; |
if(PcZugriff) PcZugriff--; |
else |
{ |
ExternControl.Config = 0; |
ExternStickNick = 0; |
ExternStickRoll = 0; |
ExternStickGier = 0; |
if(BeepMuster == 0xffff && SenderOkay == 0) |
{ |
beeptime = 15000; |
BeepMuster = 0x0c00; |
} |
} |
if(NaviDataOkay > 200) |
{ |
NaviDataOkay--; |
VersionInfo.HardwareError[1] &= ~FC_ERROR1_SPI_RX; |
} |
else |
{ |
if(NC_Version.Compatible) |
{ |
VersionInfo.HardwareError[1] |= FC_ERROR1_SPI_RX; |
if(BeepMuster == 0xffff && MotorenEin) |
{ |
beeptime = 15000; |
BeepMuster = 0xA800; |
} |
} |
GPS_Nick = 0; |
GPS_Roll = 0; |
//if(!beeptime) |
FromNaviCtrl.CompassValue = -1; |
NaviDataOkay = 0; |
} |
if((UBat < BattLowVoltageWarning)||((Capacity.RemainCapacity<=0)&&(EE_Parameter.UserParam1!=0))) //Modified by metro |
{ |
FC_StatusFlags |= FC_STATUS_LOWBAT; |
if(BeepMuster == 0xffff) |
{ |
beeptime = 6000; |
BeepMuster = 0x0300; |
} |
} |
else if(!beeptime) FC_StatusFlags &= ~FC_STATUS_LOWBAT; |
SPI_StartTransmitPacket(); |
SendSPI = 4; |
if(!MotorenEin) timer2 = 1450; // 0,5 Minuten aufrunden |
else |
if(++second == 49) |
{ |
second = 0; |
FlugSekunden++; |
} |
if(++timer2 == 2930) // eine Minute |
{ |
timer2 = 0; |
FlugMinuten++; |
FlugMinutenGesamt++; |
SetParamByte(PID_FLIGHT_MINUTES,FlugMinuten / 256); |
SetParamByte(PID_FLIGHT_MINUTES+1,FlugMinuten % 256); |
SetParamByte(PID_FLIGHT_MINUTES_TOTAL,FlugMinutenGesamt / 256); |
SetParamByte(PID_FLIGHT_MINUTES_TOTAL+1,FlugMinutenGesamt % 256); |
timer = SetDelay(20); // falls "timer += 20;" mal nicht geht |
} |
} |
LED_Update(); |
Capacity_Update(); |
} |
} |
if(!SendSPI) { SPI_TransmitByte(); } |
} |
return (1); |
} |
/branches/metro/v0.82a metro_Akku+/main.d |
---|
0,0 → 1,3 |
main.o main.d : main.c main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/main.h |
---|
0,0 → 1,75 |
#ifndef _MAIN_H |
#define _MAIN_H |
//#define DEBUG // use to activate debug output to MK-Tool: use Debug(text); |
//#define ACT_S3D_SUMMENSIGNAL |
//#define SWITCH_LEARNS_CAREFREE |
//#define RECEIVER_SPEKTRUM_EXP |
// neue Hardware |
#define ROT_OFF {if((PlatinenVersion == 10)||(PlatinenVersion >= 20)) PORTB &=~0x01; else PORTB |= 0x01;} |
#define ROT_ON {if((PlatinenVersion == 10)||(PlatinenVersion >= 20)) PORTB |= 0x01; else PORTB &=~0x01;} |
#define ROT_FLASH PORTB ^= 0x01 |
#define GRN_OFF {if((PlatinenVersion < 12)) PORTB &=~0x02; else PORTB |= 0x02;} |
#define GRN_ON {if((PlatinenVersion < 12)) PORTB |= 0x02; else PORTB &=~0x02;} |
#define GRN_FLASH PORTB ^= 0x02 |
#define SYSCLK F_CPU |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#define J3High PORTD |= 0x20 |
#define J3Low PORTD &= ~0x20 |
#define J4High PORTD |= 0x10 |
#define J4Low PORTD &= ~0x10 |
#define J5High PORTD |= 0x08 |
#define J5Low PORTD &= ~0x08 |
extern volatile unsigned char SenderOkay; |
extern unsigned char BattLowVoltageWarning; |
extern unsigned char CosinusNickWinkel, CosinusRollWinkel; |
extern unsigned char PlatinenVersion; |
extern unsigned char SendVersionToNavi; |
extern unsigned char FoundMotors; |
void LipoDetection(unsigned char print); |
extern unsigned int FlugMinuten,FlugMinutenGesamt,FlugSekunden; |
#include <stdlib.h> |
#include <string.h> |
#include <avr/io.h> |
#include <avr/pgmspace.h> |
#include <avr/interrupt.h> |
#include <avr/eeprom.h> |
#include <avr/boot.h> |
#include <avr/wdt.h> |
#include "old_macros.h" |
#include "printf_P.h" |
#include "timer0.h" |
#include "uart.h" |
#include "analog.h" |
#include "twimaster.h" |
#include "menu.h" |
#include "rc.h" |
#include "fc.h" |
#include "gps.h" |
#include "spi.h" |
#include "led.h" |
#include "spektrum.h" |
#include "capacity.h" |
#include "eeprom.h" |
#include "libfc.h" |
#include "debug.h" |
#endif //_MAIN_H |
/branches/metro/v0.82a metro_Akku+/main.lst |
---|
0,0 → 1,1306 |
1 .file "main.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global FoundMotors |
11 .global FoundMotors |
12 .section .bss |
15 FoundMotors: |
16 0000 00 .skip 1,0 |
17 .global FlugSekunden |
18 .global FlugSekunden |
21 FlugSekunden: |
22 0001 0000 .skip 2,0 |
23 .global FlugMinutenGesamt |
24 .global FlugMinutenGesamt |
27 FlugMinutenGesamt: |
28 0003 0000 .skip 2,0 |
29 .global FlugMinuten |
30 .global FlugMinuten |
33 FlugMinuten: |
34 0005 0000 .skip 2,0 |
35 .global BattLowVoltageWarning |
36 .data |
39 BattLowVoltageWarning: |
40 0000 5E .byte 94 |
41 .global SendVersionToNavi |
44 SendVersionToNavi: |
45 0001 01 .byte 1 |
46 .global PlatinenVersion |
49 PlatinenVersion: |
50 0002 0A .byte 10 |
53 stick.15: |
54 0003 01 .byte 1 |
55 .text |
56 .global CalMk3Mag |
58 CalMk3Mag: |
59 /* prologue: frame size=0 */ |
60 /* prologue end (size=0) */ |
61 0000 8091 0000 lds r24,EE_Parameter+1 |
62 0004 E82F mov r30,r24 |
63 0006 FF27 clr r31 |
64 0008 EE0F add r30,r30 |
65 000a FF1F adc r31,r31 |
66 000c E050 subi r30,lo8(-(PPM_in)) |
67 000e F040 sbci r31,hi8(-(PPM_in)) |
68 0010 8081 ld r24,Z |
69 0012 9181 ldd r25,Z+1 |
70 0014 8D5E subi r24,lo8(-19) |
71 0016 9F4F sbci r25,hi8(-19) |
72 0018 14F0 brlt .L2 |
73 001a 1092 0000 sts stick.15,__zero_reg__ |
74 .L2: |
75 001e 8081 ld r24,Z |
76 0020 9181 ldd r25,Z+1 |
77 0022 8A5B subi r24,lo8(-70) |
78 0024 9F4F sbci r25,hi8(-70) |
79 0026 CCF4 brge .L3 |
80 0028 8091 0000 lds r24,stick.15 |
81 002c 8823 tst r24 |
82 002e A9F4 brne .L3 |
83 0030 81E0 ldi r24,lo8(1) |
84 0032 8093 0000 sts stick.15,r24 |
85 0036 8091 0000 lds r24,WinkelOut+6 |
86 003a 8F5F subi r24,lo8(-(1)) |
87 003c 8093 0000 sts WinkelOut+6,r24 |
88 0040 8530 cpi r24,lo8(5) |
89 0042 38F0 brlo .L4 |
90 0044 88EE ldi r24,lo8(1000) |
91 0046 93E0 ldi r25,hi8(1000) |
92 0048 9093 0000 sts (beeptime)+1,r25 |
93 004c 8093 0000 sts beeptime,r24 |
94 0050 04C0 rjmp .L3 |
95 .L4: |
96 0052 66E9 ldi r22,lo8(150) |
97 0054 70E0 ldi r23,hi8(150) |
98 0056 0E94 0000 call Piep |
99 .L3: |
100 005a 8091 0000 lds r24,WinkelOut+6 |
101 005e 9927 clr r25 |
102 0060 9093 0000 sts (DebugOut+40)+1,r25 |
103 0064 8093 0000 sts DebugOut+40,r24 |
104 /* epilogue: frame size=0 */ |
105 0068 0895 ret |
106 /* epilogue end (size=1) */ |
107 /* function CalMk3Mag size 55 (54) */ |
109 .section .progmem.data,"a",@progbits |
112 __c.12: |
113 0000 0A0D 4261 .string "\n\rBatt:" |
113 7474 3A00 |
116 __c.13: |
117 0008 2025 6420 .string " %d Cells " |
117 4365 6C6C |
117 7320 00 |
120 __c.14: |
121 0013 204C 6F77 .string " Low warning level: %d.%d" |
121 2077 6172 |
121 6E69 6E67 |
121 206C 6576 |
121 656C 3A20 |
122 .text |
123 .global LipoDetection |
125 LipoDetection: |
126 /* prologue: frame size=0 */ |
127 006a 1F93 push r17 |
128 006c CF93 push r28 |
129 006e DF93 push r29 |
130 /* prologue end (size=3) */ |
131 0070 182F mov r17,r24 |
132 0072 8823 tst r24 |
133 0074 89F0 breq .L7 |
134 0076 80E0 ldi r24,lo8(__c.12) |
135 0078 90E0 ldi r25,hi8(__c.12) |
136 007a 9F93 push r25 |
137 007c 8F93 push r24 |
138 007e 80E0 ldi r24,lo8(pm(uart_putchar)) |
139 0080 90E0 ldi r25,hi8(pm(uart_putchar)) |
140 0082 9F93 push r25 |
141 0084 8F93 push r24 |
142 0086 E091 0000 lds r30,_printf_P |
143 008a F091 0000 lds r31,(_printf_P)+1 |
144 008e 0995 icall |
145 0090 0F90 pop __tmp_reg__ |
146 0092 0F90 pop __tmp_reg__ |
147 0094 0F90 pop __tmp_reg__ |
148 0096 0F90 pop __tmp_reg__ |
149 .L7: |
150 0098 8091 0000 lds r24,EE_Parameter+36 |
151 009c 8233 cpi r24,lo8(50) |
152 009e 08F0 brlo .+2 |
153 00a0 44C0 rjmp .L8 |
154 00a2 84EF ldi r24,lo8(500) |
155 00a4 91E0 ldi r25,hi8(500) |
156 00a6 0E94 0000 call SetDelay |
157 00aa EC01 movw r28,r24 |
158 00ac 1123 tst r17 |
159 00ae 29F0 breq .L9 |
160 .L10: |
161 00b0 CE01 movw r24,r28 |
162 00b2 0E94 0000 call CheckDelay |
163 00b6 8823 tst r24 |
164 00b8 D9F3 breq .L10 |
165 .L9: |
166 00ba C2E0 ldi r28,lo8(2) |
167 00bc D0E0 ldi r29,hi8(2) |
168 00be 26E5 ldi r18,lo8(86) |
169 00c0 30E0 ldi r19,hi8(86) |
170 .L17: |
171 00c2 8091 0000 lds r24,UBat |
172 00c6 9091 0000 lds r25,(UBat)+1 |
173 00ca 8217 cp r24,r18 |
174 00cc 9307 cpc r25,r19 |
175 00ce 30F0 brlo .L14 |
176 00d0 2196 adiw r28,1 |
177 00d2 255D subi r18,lo8(-(43)) |
178 00d4 3F4F sbci r19,hi8(-(43)) |
179 00d6 C730 cpi r28,7 |
180 00d8 D105 cpc r29,__zero_reg__ |
181 00da 98F3 brlo .L17 |
182 .L14: |
183 00dc 8091 0000 lds r24,EE_Parameter+36 |
184 00e0 9927 clr r25 |
185 00e2 C89F mul r28,r24 |
186 00e4 9001 movw r18,r0 |
187 00e6 C99F mul r28,r25 |
188 00e8 300D add r19,r0 |
189 00ea D89F mul r29,r24 |
190 00ec 300D add r19,r0 |
191 00ee 1124 clr r1 |
192 00f0 2093 0000 sts BattLowVoltageWarning,r18 |
193 00f4 1123 tst r17 |
194 00f6 D9F0 breq .L19 |
195 00f8 68EC ldi r22,lo8(200) |
196 00fa 70E0 ldi r23,hi8(200) |
197 00fc 8C2F mov r24,r28 |
198 00fe 0E94 0000 call Piep |
199 0102 DF93 push r29 |
200 0104 CF93 push r28 |
201 0106 80E0 ldi r24,lo8(__c.13) |
202 0108 90E0 ldi r25,hi8(__c.13) |
203 010a 9F93 push r25 |
204 010c 8F93 push r24 |
205 010e 80E0 ldi r24,lo8(pm(uart_putchar)) |
206 0110 90E0 ldi r25,hi8(pm(uart_putchar)) |
207 0112 9F93 push r25 |
208 0114 8F93 push r24 |
209 0116 E091 0000 lds r30,_printf_P |
210 011a F091 0000 lds r31,(_printf_P)+1 |
211 011e 0995 icall |
212 0120 8DB7 in r24,__SP_L__ |
213 0122 9EB7 in r25,__SP_H__ |
214 0124 0696 adiw r24,6 |
215 0126 8DBF out __SP_L__,r24 |
216 0128 02C0 rjmp .L19 |
217 .L8: |
218 012a 8093 0000 sts BattLowVoltageWarning,r24 |
219 .L19: |
220 012e 1123 tst r17 |
221 0130 11F1 breq .L6 |
222 0132 8091 0000 lds r24,BattLowVoltageWarning |
223 0136 6AE0 ldi r22,lo8(10) |
224 0138 0E94 0000 call __udivmodqi4 |
225 013c 892F mov r24,r25 |
226 013e 9927 clr r25 |
227 0140 9F93 push r25 |
228 0142 8F93 push r24 |
229 0144 8091 0000 lds r24,BattLowVoltageWarning |
230 0148 0E94 0000 call __udivmodqi4 |
231 014c 9927 clr r25 |
232 014e 9F93 push r25 |
233 0150 8F93 push r24 |
234 0152 80E0 ldi r24,lo8(__c.14) |
235 0154 90E0 ldi r25,hi8(__c.14) |
236 0156 9F93 push r25 |
237 0158 8F93 push r24 |
238 015a 80E0 ldi r24,lo8(pm(uart_putchar)) |
239 015c 90E0 ldi r25,hi8(pm(uart_putchar)) |
240 015e 9F93 push r25 |
241 0160 8F93 push r24 |
242 0162 E091 0000 lds r30,_printf_P |
243 0166 F091 0000 lds r31,(_printf_P)+1 |
244 016a 0995 icall |
245 016c 2DB7 in r18,__SP_L__ |
246 016e 3EB7 in r19,__SP_H__ |
247 0170 285F subi r18,lo8(-(8)) |
248 0172 3F4F sbci r19,hi8(-(8)) |
249 0174 2DBF out __SP_L__,r18 |
250 .L6: |
251 /* epilogue: frame size=0 */ |
252 0176 DF91 pop r29 |
253 0178 CF91 pop r28 |
254 017a 1F91 pop r17 |
255 017c 0895 ret |
256 /* epilogue end (size=4) */ |
257 /* function LipoDetection size 138 (131) */ |
259 .section .progmem.data |
262 __c.0: |
263 002d 0A0D 466F .string "\n\rFound BL-Ctrl: " |
263 756E 6420 |
263 424C 2D43 |
263 7472 6C3A |
263 2000 |
266 __c.1: |
267 003f 2564 00 .string "%d" |
270 __c.2: |
271 0042 0A0D 0A0D .string "\n\r\n\r!! MISSING BL-CTRL: %d !!" |
271 2121 204D |
271 4953 5349 |
271 4E47 2042 |
271 4C2D 4354 |
274 __c.3: |
275 0060 0A0D 3D3D .string "\n\r===================================" |
275 3D3D 3D3D |
275 3D3D 3D3D |
275 3D3D 3D3D |
275 3D3D 3D3D |
278 __c.4: |
279 0086 0A0D 4361 .string "\n\rCalibrating pressure sensor.." |
279 6C69 6272 |
279 6174 696E |
279 6720 7072 |
279 6573 7375 |
282 __c.5: |
283 00a6 4F4B 0A0D .string "OK\n\r" |
283 00 |
286 __c.6: |
287 00ab 0A0D 466C .string "\n\rFlight-time %u min Total:%u min" |
287 6967 6874 |
287 2D74 696D |
287 6520 2575 |
287 206D 696E |
290 __c.7: |
291 00ce 0A0D 436F .string "\n\rControl: " |
291 6E74 726F |
291 6C3A 2000 |
294 __c.8: |
295 00da 4865 6164 .string "HeadingHold" |
295 696E 6748 |
295 6F6C 6400 |
298 __c.9: |
299 00e6 4E6F 726D .string "Normal (ACC-Mode)" |
299 616C 2028 |
299 4143 432D |
299 4D6F 6465 |
299 2900 |
302 __c.10: |
303 00f8 0A0D 3D3D .string "\n\r===================================\n\r" |
303 3D3D 3D3D |
303 3D3D 3D3D |
303 3D3D 3D3D |
303 3D3D 3D3D |
304 .lcomm second.11,1 |
305 .text |
306 .global main |
308 main: |
309 /* prologue: frame size=0 */ |
310 017e C0E0 ldi r28,lo8(__stack - 0) |
311 0180 D0E0 ldi r29,hi8(__stack - 0) |
312 0182 DEBF out __SP_H__,r29 |
313 0184 CDBF out __SP_L__,r28 |
314 /* prologue end (size=4) */ |
315 0186 8824 clr r8 |
316 0188 9924 clr r9 |
317 018a 14B8 out 36-0x20,__zero_reg__ |
318 018c 15B8 out 37-0x20,__zero_reg__ |
319 018e 07EE ldi r16,lo8(999) |
320 0190 13E0 ldi r17,hi8(999) |
321 .L26: |
322 0192 0253 subi r16,lo8(-(-50)) |
323 0194 1040 sbci r17,hi8(-(-50)) |
324 0196 17FF sbrs r17,7 |
325 0198 FCCF rjmp .L26 |
326 019a 189B sbis 35-0x20,0 |
327 019c 06C0 rjmp .L27 |
328 019e 199B sbis 35-0x20,1 |
329 01a0 02C0 rjmp .L28 |
330 01a2 8DE0 ldi r24,lo8(13) |
331 01a4 07C0 rjmp .L233 |
332 .L28: |
333 01a6 8BE0 ldi r24,lo8(11) |
334 01a8 05C0 rjmp .L233 |
335 .L27: |
336 01aa 199B sbis 35-0x20,1 |
337 01ac 02C0 rjmp .L31 |
338 01ae 84E1 ldi r24,lo8(20) |
339 01b0 01C0 rjmp .L233 |
340 .L31: |
341 01b2 8AE0 ldi r24,lo8(10) |
342 .L233: |
343 01b4 8093 0000 sts PlatinenVersion,r24 |
344 01b8 81E8 ldi r24,lo8(-127) |
345 01ba 87B9 out 39-0x20,r24 |
346 01bc 3E9A sbi 39-0x20,6 |
347 01be 8FEF ldi r24,lo8(-1) |
348 01c0 88B9 out 40-0x20,r24 |
349 01c2 8BE1 ldi r24,lo8(27) |
350 01c4 84B9 out 36-0x20,r24 |
351 01c6 81E0 ldi r24,lo8(1) |
352 01c8 85B9 out 37-0x20,r24 |
353 01ca 8EE3 ldi r24,lo8(62) |
354 01cc 8AB9 out 42-0x20,r24 |
355 01ce 87E4 ldi r24,lo8(71) |
356 01d0 8BB9 out 43-0x20,r24 |
357 01d2 469A sbi 40-0x20,6 |
358 01d4 84B7 in r24,84-0x20 |
359 01d6 877F andi r24,lo8(-9) |
360 01d8 84BF out 84-0x20,r24 |
361 01da 8091 6000 lds r24,96 |
362 01de 8861 ori r24,lo8(24) |
363 01e0 8093 6000 sts 96,r24 |
364 01e4 1092 6000 sts 96,__zero_reg__ |
365 01e8 84EC ldi r24,lo8(2500) |
366 01ea 99E0 ldi r25,hi8(2500) |
367 01ec 9093 0000 sts (beeptime)+1,r25 |
368 01f0 8093 0000 sts beeptime,r24 |
369 01f4 1092 0000 sts (StickGier)+1,__zero_reg__ |
370 01f8 1092 0000 sts StickGier,__zero_reg__ |
371 01fc 1092 0000 sts (PPM_in+4)+1,__zero_reg__ |
372 0200 1092 0000 sts PPM_in+4,__zero_reg__ |
373 0204 1092 0000 sts (StickRoll)+1,__zero_reg__ |
374 0208 1092 0000 sts StickRoll,__zero_reg__ |
375 020c 1092 0000 sts (StickNick)+1,__zero_reg__ |
376 0210 1092 0000 sts StickNick,__zero_reg__ |
377 0214 2091 0000 lds r18,PlatinenVersion |
378 0218 2431 cpi r18,lo8(20) |
379 021a 28F0 brlo .L33 |
380 021c 84EC ldi r24,lo8(1220) |
381 021e 94E0 ldi r25,hi8(1220) |
382 0220 A0E0 ldi r26,hlo8(1220) |
383 0222 B0E0 ldi r27,hhi8(1220) |
384 0224 04C0 rjmp .L234 |
385 .L33: |
386 0226 8BE0 ldi r24,lo8(1291) |
387 0228 95E0 ldi r25,hi8(1291) |
388 022a A0E0 ldi r26,hlo8(1291) |
389 022c B0E0 ldi r27,hhi8(1291) |
390 .L234: |
391 022e 8093 0000 sts GIER_GRAD_FAKTOR,r24 |
392 0232 9093 0000 sts (GIER_GRAD_FAKTOR)+1,r25 |
393 0236 A093 0000 sts (GIER_GRAD_FAKTOR)+2,r26 |
394 023a B093 0000 sts (GIER_GRAD_FAKTOR)+3,r27 |
395 023e 2A30 cpi r18,lo8(10) |
396 0240 11F0 breq .L36 |
397 0242 2431 cpi r18,lo8(20) |
398 0244 10F0 brlo .L35 |
399 .L36: |
400 0246 2898 cbi 37-0x20,0 |
401 0248 01C0 rjmp .L37 |
402 .L35: |
403 024a 289A sbi 37-0x20,0 |
404 .L37: |
405 024c 0E94 0000 call Timer_Init |
406 0250 0E94 0000 call TIMER2_Init |
407 0254 0E94 0000 call UART_Init |
408 0258 0E94 0000 call rc_sum_init |
409 025c 0E94 0000 call ADC_Init |
410 0260 81E0 ldi r24,lo8(1) |
411 0262 0E94 0000 call I2C_Init |
412 0266 0E94 0000 call SPI_MasterInit |
413 026a 0E94 0000 call LIBFC_Init |
414 026e 8091 0000 lds r24,PlatinenVersion |
415 0272 8C30 cpi r24,lo8(12) |
416 0274 10F4 brsh .L38 |
417 0276 299A sbi 37-0x20,1 |
418 0278 01C0 rjmp .L39 |
419 .L38: |
420 027a 2998 cbi 37-0x20,1 |
421 .L39: |
422 /* #APP */ |
423 027c 7894 sei |
424 /* #NOAPP */ |
425 027e 0E94 0000 call ParamSet_Init |
426 0282 0E94 0000 call Capacity_Init |
427 0286 8091 0000 lds r24,BLFlags |
428 028a 8260 ori r24,lo8(2) |
429 028c 8093 0000 sts BLFlags,r24 |
430 0290 1092 0000 sts motor_read,__zero_reg__ |
431 0294 0E94 0000 call SendMotorData |
432 0298 84EF ldi r24,lo8(500) |
433 029a 91E0 ldi r25,hi8(500) |
434 029c 0E94 0000 call SetDelay |
435 02a0 8C01 movw r16,r24 |
436 .L40: |
437 02a2 8091 0000 lds r24,BLFlags |
438 02a6 80FD sbrc r24,0 |
439 02a8 05C0 rjmp .L41 |
440 02aa C801 movw r24,r16 |
441 02ac 0E94 0000 call CheckDelay |
442 02b0 8823 tst r24 |
443 02b2 B9F3 breq .L40 |
444 .L41: |
445 02b4 80E0 ldi r24,lo8(__c.0) |
446 02b6 90E0 ldi r25,hi8(__c.0) |
447 02b8 9F93 push r25 |
448 02ba 8F93 push r24 |
449 02bc B0E0 ldi r27,lo8(pm(uart_putchar)) |
450 02be AB2E mov r10,r27 |
451 02c0 B0E0 ldi r27,hi8(pm(uart_putchar)) |
452 02c2 BB2E mov r11,r27 |
453 02c4 BF92 push r11 |
454 02c6 AF92 push r10 |
455 02c8 E091 0000 lds r30,_printf_P |
456 02cc F091 0000 lds r31,(_printf_P)+1 |
457 02d0 0995 icall |
458 02d2 80EA ldi r24,lo8(4000) |
459 02d4 9FE0 ldi r25,hi8(4000) |
460 02d6 0E94 0000 call SetDelay |
461 02da 8C01 movw r16,r24 |
462 02dc C0E0 ldi r28,lo8(0) |
463 02de D0E0 ldi r29,hi8(0) |
464 02e0 0F90 pop __tmp_reg__ |
465 02e2 0F90 pop __tmp_reg__ |
466 02e4 0F90 pop __tmp_reg__ |
467 02e6 0F90 pop __tmp_reg__ |
468 02e8 A0E0 ldi r26,lo8(Motor+3) |
469 02ea EA2E mov r14,r26 |
470 02ec A0E0 ldi r26,hi8(Motor+3) |
471 02ee FA2E mov r15,r26 |
472 02f0 F0E0 ldi r31,lo8(Mixer+13) |
473 02f2 CF2E mov r12,r31 |
474 02f4 F0E0 ldi r31,hi8(Mixer+13) |
475 02f6 DF2E mov r13,r31 |
476 .L57: |
477 02f8 0E94 0000 call SendMotorData |
478 .L46: |
479 02fc 8091 0000 lds r24,BLFlags |
480 0300 80FD sbrc r24,0 |
481 0302 05C0 rjmp .L47 |
482 0304 C801 movw r24,r16 |
483 0306 0E94 0000 call CheckDelay |
484 030a 8823 tst r24 |
485 030c B9F3 breq .L46 |
486 .L47: |
487 030e F601 movw r30,r12 |
488 0310 8081 ld r24,Z |
489 0312 1816 cp __zero_reg__,r24 |
490 0314 ACF4 brge .L49 |
491 0316 0BC0 rjmp .L238 |
492 .L55: |
493 0318 0E94 0000 call SendMotorData |
494 .L52: |
495 031c 8091 0000 lds r24,BLFlags |
496 0320 80FD sbrc r24,0 |
497 0322 05C0 rjmp .L238 |
498 0324 C801 movw r24,r16 |
499 0326 0E94 0000 call CheckDelay |
500 032a 8823 tst r24 |
501 032c B9F3 breq .L52 |
502 .L238: |
503 032e C801 movw r24,r16 |
504 0330 0E94 0000 call CheckDelay |
505 0334 8823 tst r24 |
506 0336 21F4 brne .L49 |
507 0338 F701 movw r30,r14 |
508 033a 8081 ld r24,Z |
509 033c 8823 tst r24 |
510 033e 64F7 brge .L55 |
511 .L49: |
512 0340 F701 movw r30,r14 |
513 0342 8081 ld r24,Z |
514 0344 87FF sbrs r24,7 |
515 0346 18C0 rjmp .L45 |
516 0348 2196 adiw r28,1 |
517 034a DF93 push r29 |
518 034c CF93 push r28 |
519 034e 2197 sbiw r28,1 |
520 0350 80E0 ldi r24,lo8(__c.1) |
521 0352 90E0 ldi r25,hi8(__c.1) |
522 0354 9F93 push r25 |
523 0356 8F93 push r24 |
524 0358 BF92 push r11 |
525 035a AF92 push r10 |
526 035c E091 0000 lds r30,_printf_P |
527 0360 F091 0000 lds r31,(_printf_P)+1 |
528 0364 0995 icall |
529 0366 8091 0000 lds r24,FoundMotors |
530 036a 8F5F subi r24,lo8(-(1)) |
531 036c 8093 0000 sts FoundMotors,r24 |
532 0370 8DB7 in r24,__SP_L__ |
533 0372 9EB7 in r25,__SP_H__ |
534 0374 0696 adiw r24,6 |
535 0376 8DBF out __SP_L__,r24 |
536 .L45: |
537 0378 2196 adiw r28,1 |
538 037a E4E0 ldi r30,lo8(4) |
539 037c F0E0 ldi r31,hi8(4) |
540 037e CE0E add r12,r30 |
541 0380 DF1E adc r13,r31 |
542 0382 88E0 ldi r24,lo8(8) |
543 0384 90E0 ldi r25,hi8(8) |
544 0386 E80E add r14,r24 |
545 0388 F91E adc r15,r25 |
546 038a CC30 cpi r28,12 |
547 038c D105 cpc r29,__zero_reg__ |
548 038e 08F4 brsh .+2 |
549 0390 B3CF rjmp .L57 |
550 0392 C0E0 ldi r28,lo8(0) |
551 0394 D0E0 ldi r29,hi8(0) |
552 0396 00E0 ldi r16,lo8(Motor) |
553 0398 10E0 ldi r17,hi8(Motor) |
554 039a E0E0 ldi r30,lo8(Mixer+13) |
555 039c EE2E mov r14,r30 |
556 039e E0E0 ldi r30,hi8(Mixer+13) |
557 03a0 FE2E mov r15,r30 |
558 .L62: |
559 03a2 F801 movw r30,r16 |
560 03a4 8381 ldd r24,Z+3 |
561 03a6 87FD sbrc r24,7 |
562 03a8 1CC0 rjmp .L61 |
563 03aa F701 movw r30,r14 |
564 03ac 8081 ld r24,Z |
565 03ae 1816 cp __zero_reg__,r24 |
566 03b0 C4F4 brge .L61 |
567 03b2 2196 adiw r28,1 |
568 03b4 DF93 push r29 |
569 03b6 CF93 push r28 |
570 03b8 2197 sbiw r28,1 |
571 03ba 80E0 ldi r24,lo8(__c.2) |
572 03bc 90E0 ldi r25,hi8(__c.2) |
573 03be 9F93 push r25 |
574 03c0 8F93 push r24 |
575 03c2 80E0 ldi r24,lo8(pm(uart_putchar)) |
576 03c4 90E0 ldi r25,hi8(pm(uart_putchar)) |
577 03c6 9F93 push r25 |
578 03c8 8F93 push r24 |
579 03ca E091 0000 lds r30,_printf_P |
580 03ce F091 0000 lds r31,(_printf_P)+1 |
581 03d2 0995 icall |
582 03d4 82E0 ldi r24,lo8(2) |
583 03d6 8093 0000 sts ServoActive,r24 |
584 03da 8DB7 in r24,__SP_L__ |
585 03dc 9EB7 in r25,__SP_H__ |
586 03de 0696 adiw r24,6 |
587 03e0 8DBF out __SP_L__,r24 |
588 .L61: |
589 03e2 F801 movw r30,r16 |
590 03e4 8381 ldd r24,Z+3 |
591 03e6 8078 andi r24,lo8(-128) |
592 03e8 8383 std Z+3,r24 |
593 03ea 2196 adiw r28,1 |
594 03ec 84E0 ldi r24,lo8(4) |
595 03ee 90E0 ldi r25,hi8(4) |
596 03f0 E80E add r14,r24 |
597 03f2 F91E adc r15,r25 |
598 03f4 085F subi r16,lo8(-(8)) |
599 03f6 1F4F sbci r17,hi8(-(8)) |
600 03f8 CC30 cpi r28,12 |
601 03fa D105 cpc r29,__zero_reg__ |
602 03fc 90F2 brlo .L62 |
603 03fe 80E0 ldi r24,lo8(__c.3) |
604 0400 90E0 ldi r25,hi8(__c.3) |
605 0402 9F93 push r25 |
606 0404 8F93 push r24 |
607 0406 C0E0 ldi r28,lo8(pm(uart_putchar)) |
608 0408 D0E0 ldi r29,hi8(pm(uart_putchar)) |
609 040a DF93 push r29 |
610 040c CF93 push r28 |
611 040e E091 0000 lds r30,_printf_P |
612 0412 F091 0000 lds r31,(_printf_P)+1 |
613 0416 0995 icall |
614 0418 9091 0000 lds r25,RequiredMotors |
615 041c 8091 0000 lds r24,FoundMotors |
616 0420 0F90 pop __tmp_reg__ |
617 0422 0F90 pop __tmp_reg__ |
618 0424 0F90 pop __tmp_reg__ |
619 0426 0F90 pop __tmp_reg__ |
620 0428 9817 cp r25,r24 |
621 042a 28F4 brsh .L63 |
622 042c 8091 0000 lds r24,VersionInfo+6 |
623 0430 8061 ori r24,lo8(16) |
624 0432 8093 0000 sts VersionInfo+6,r24 |
625 .L63: |
626 0436 80E0 ldi r24,lo8(__c.4) |
627 0438 90E0 ldi r25,hi8(__c.4) |
628 043a 9F93 push r25 |
629 043c 8F93 push r24 |
630 043e DF93 push r29 |
631 0440 CF93 push r28 |
632 0442 E091 0000 lds r30,_printf_P |
633 0446 F091 0000 lds r31,(_printf_P)+1 |
634 044a 0995 icall |
635 044c 88EE ldi r24,lo8(1000) |
636 044e 93E0 ldi r25,hi8(1000) |
637 0450 0E94 0000 call SetDelay |
638 0454 8C01 movw r16,r24 |
639 0456 0E94 0000 call SucheLuftruckOffset |
640 045a 0F90 pop __tmp_reg__ |
641 045c 0F90 pop __tmp_reg__ |
642 045e 0F90 pop __tmp_reg__ |
643 0460 0F90 pop __tmp_reg__ |
644 .L64: |
645 0462 C801 movw r24,r16 |
646 0464 0E94 0000 call CheckDelay |
647 0468 8823 tst r24 |
648 046a D9F3 breq .L64 |
649 046c 80E0 ldi r24,lo8(__c.5) |
650 046e 90E0 ldi r25,hi8(__c.5) |
651 0470 9F93 push r25 |
652 0472 8F93 push r24 |
653 0474 DF93 push r29 |
654 0476 CF93 push r28 |
655 0478 E091 0000 lds r30,_printf_P |
656 047c F091 0000 lds r31,(_printf_P)+1 |
657 0480 0995 icall |
658 0482 80E0 ldi r24,lo8(0) |
659 0484 0E94 0000 call SetNeutral |
660 0488 8091 0000 lds r24,PlatinenVersion |
661 048c 0F90 pop __tmp_reg__ |
662 048e 0F90 pop __tmp_reg__ |
663 0490 0F90 pop __tmp_reg__ |
664 0492 0F90 pop __tmp_reg__ |
665 0494 8A30 cpi r24,lo8(10) |
666 0496 11F0 breq .L68 |
667 0498 8431 cpi r24,lo8(20) |
668 049a 10F0 brlo .L67 |
669 .L68: |
670 049c 2898 cbi 37-0x20,0 |
671 049e 01C0 rjmp .L69 |
672 .L67: |
673 04a0 289A sbi 37-0x20,0 |
674 .L69: |
675 04a2 80ED ldi r24,lo8(2000) |
676 04a4 97E0 ldi r25,hi8(2000) |
677 04a6 9093 0000 sts (beeptime)+1,r25 |
678 04aa 8093 0000 sts beeptime,r24 |
679 04ae 85E5 ldi r24,lo8(85) |
680 04b0 8093 0000 sts ExternControl,r24 |
681 04b4 8EE0 ldi r24,lo8(14) |
682 04b6 90E0 ldi r25,hi8(14) |
683 04b8 0E94 0000 call GetParamByte |
684 04bc 9927 clr r25 |
685 04be 182F mov r17,r24 |
686 04c0 0027 clr r16 |
687 04c2 8FE0 ldi r24,lo8(15) |
688 04c4 90E0 ldi r25,hi8(15) |
689 04c6 0E94 0000 call GetParamByte |
690 04ca 080F add r16,r24 |
691 04cc 111D adc r17,__zero_reg__ |
692 04ce 1093 0000 sts (FlugMinuten)+1,r17 |
693 04d2 0093 0000 sts FlugMinuten,r16 |
694 04d6 8AE0 ldi r24,lo8(10) |
695 04d8 90E0 ldi r25,hi8(10) |
696 04da 0E94 0000 call GetParamByte |
697 04de 9927 clr r25 |
698 04e0 182F mov r17,r24 |
699 04e2 0027 clr r16 |
700 04e4 8BE0 ldi r24,lo8(11) |
701 04e6 90E0 ldi r25,hi8(11) |
702 04e8 0E94 0000 call GetParamByte |
703 04ec 080F add r16,r24 |
704 04ee 111D adc r17,__zero_reg__ |
705 04f0 1093 0000 sts (FlugMinutenGesamt)+1,r17 |
706 04f4 0093 0000 sts FlugMinutenGesamt,r16 |
707 04f8 0F5F subi r16,lo8(-1) |
708 04fa 1F4F sbci r17,hi8(-1) |
709 04fc 39F0 breq .L71 |
710 04fe 8091 0000 lds r24,FlugMinuten |
711 0502 9091 0000 lds r25,(FlugMinuten)+1 |
712 0506 8F5F subi r24,lo8(-1) |
713 0508 9F4F sbci r25,hi8(-1) |
714 050a 41F4 brne .L70 |
715 .L71: |
716 050c 1092 0000 sts (FlugMinuten)+1,__zero_reg__ |
717 0510 1092 0000 sts FlugMinuten,__zero_reg__ |
718 0514 1092 0000 sts (FlugMinutenGesamt)+1,__zero_reg__ |
719 0518 1092 0000 sts FlugMinutenGesamt,__zero_reg__ |
720 .L70: |
721 051c 8091 0000 lds r24,FlugMinutenGesamt |
722 0520 9091 0000 lds r25,(FlugMinutenGesamt)+1 |
723 0524 9F93 push r25 |
724 0526 8F93 push r24 |
725 0528 8091 0000 lds r24,FlugMinuten |
726 052c 9091 0000 lds r25,(FlugMinuten)+1 |
727 0530 9F93 push r25 |
728 0532 8F93 push r24 |
729 0534 80E0 ldi r24,lo8(__c.6) |
730 0536 90E0 ldi r25,hi8(__c.6) |
731 0538 9F93 push r25 |
732 053a 8F93 push r24 |
733 053c DF93 push r29 |
734 053e CF93 push r28 |
735 0540 E091 0000 lds r30,_printf_P |
736 0544 F091 0000 lds r31,(_printf_P)+1 |
737 0548 0995 icall |
738 054a 8DB7 in r24,__SP_L__ |
739 054c 9EB7 in r25,__SP_H__ |
740 054e 0896 adiw r24,8 |
741 0550 8DBF out __SP_L__,r24 |
742 0552 80E0 ldi r24,lo8(__c.7) |
743 0554 90E0 ldi r25,hi8(__c.7) |
744 0556 9F93 push r25 |
745 0558 8F93 push r24 |
746 055a DF93 push r29 |
747 055c CF93 push r28 |
748 055e E091 0000 lds r30,_printf_P |
749 0562 F091 0000 lds r31,(_printf_P)+1 |
750 0566 0995 icall |
751 0568 8091 0000 lds r24,EE_Parameter+13 |
752 056c 0F90 pop __tmp_reg__ |
753 056e 0F90 pop __tmp_reg__ |
754 0570 0F90 pop __tmp_reg__ |
755 0572 0F90 pop __tmp_reg__ |
756 0574 E091 0000 lds r30,_printf_P |
757 0578 F091 0000 lds r31,(_printf_P)+1 |
758 057c 82FF sbrs r24,2 |
759 057e 07C0 rjmp .L72 |
760 0580 80E0 ldi r24,lo8(__c.8) |
761 0582 90E0 ldi r25,hi8(__c.8) |
762 0584 9F93 push r25 |
763 0586 8F93 push r24 |
764 0588 DF93 push r29 |
765 058a CF93 push r28 |
766 058c 08C0 rjmp .L235 |
767 .L72: |
768 058e 80E0 ldi r24,lo8(__c.9) |
769 0590 90E0 ldi r25,hi8(__c.9) |
770 0592 9F93 push r25 |
771 0594 8F93 push r24 |
772 0596 80E0 ldi r24,lo8(pm(uart_putchar)) |
773 0598 90E0 ldi r25,hi8(pm(uart_putchar)) |
774 059a 9F93 push r25 |
775 059c 8F93 push r24 |
776 .L235: |
777 059e 0995 icall |
778 05a0 0F90 pop __tmp_reg__ |
779 05a2 0F90 pop __tmp_reg__ |
780 05a4 0F90 pop __tmp_reg__ |
781 05a6 0F90 pop __tmp_reg__ |
782 05a8 0E94 0000 call LcdClear |
783 05ac 88E8 ldi r24,lo8(5000) |
784 05ae 93E1 ldi r25,hi8(5000) |
785 05b0 9093 0000 sts (I2CTimeout)+1,r25 |
786 05b4 8093 0000 sts I2CTimeout,r24 |
787 05b8 81E0 ldi r24,lo8(1) |
788 05ba 8093 0000 sts WinkelOut+7,r24 |
789 05be 0E94 0000 call LipoDetection |
790 05c2 8091 0000 lds r24,EE_Parameter+39 |
791 05c6 0E94 0000 call LIBFC_ReceiverInit |
792 05ca 80E0 ldi r24,lo8(__c.10) |
793 05cc 90E0 ldi r25,hi8(__c.10) |
794 05ce 9F93 push r25 |
795 05d0 8F93 push r24 |
796 05d2 DF93 push r29 |
797 05d4 CF93 push r28 |
798 05d6 E091 0000 lds r30,_printf_P |
799 05da F091 0000 lds r31,(_printf_P)+1 |
800 05de 0995 icall |
801 05e0 80ED ldi r24,lo8(2000) |
802 05e2 97E0 ldi r25,hi8(2000) |
803 05e4 0E94 0000 call SetDelay |
804 05e8 8C01 movw r16,r24 |
805 05ea 8AEF ldi r24,lo8(250) |
806 05ec 90E0 ldi r25,hi8(250) |
807 05ee 0E94 0000 call SetDelay |
808 05f2 EC01 movw r28,r24 |
809 05f4 83E0 ldi r24,lo8(3) |
810 05f6 8093 0000 sts DebugOut,r24 |
811 05fa 0F90 pop __tmp_reg__ |
812 05fc 0F90 pop __tmp_reg__ |
813 05fe 0F90 pop __tmp_reg__ |
814 0600 0F90 pop __tmp_reg__ |
815 .L239: |
816 0602 8091 0000 lds r24,JetiUpdateModeActive |
817 0606 8111 cpse r24,__zero_reg__ |
818 .L77: |
819 0608 FFCF rjmp .L77 |
820 .L76: |
821 060a CE01 movw r24,r28 |
822 060c 0E94 0000 call CheckDelay |
823 0610 8823 tst r24 |
824 0612 39F0 breq .L79 |
825 0614 84E6 ldi r24,lo8(100) |
826 0616 90E0 ldi r25,hi8(100) |
827 0618 0E94 0000 call SetDelay |
828 061c EC01 movw r28,r24 |
829 061e 0E94 0000 call LIBFC_Polling |
830 .L79: |
831 0622 8091 0000 lds r24,UpdateMotor |
832 0626 8823 tst r24 |
833 0628 09F4 brne .+2 |
834 062a E0C1 rjmp .L80 |
835 062c 8091 0000 lds r24,AdReady |
836 0630 8823 tst r24 |
837 0632 09F4 brne .+2 |
838 0634 DBC1 rjmp .L80 |
839 0636 1092 0000 sts UpdateMotor,__zero_reg__ |
840 063a 8091 0000 lds r24,WinkelOut+6 |
841 063e 8823 tst r24 |
842 0640 19F0 breq .L81 |
843 0642 0E94 0000 call CalMk3Mag |
844 0646 02C0 rjmp .L82 |
845 .L81: |
846 0648 0E94 0000 call MotorRegler |
847 .L82: |
848 064c 0E94 0000 call SendMotorData |
849 0650 2091 0000 lds r18,PlatinenVersion |
850 0654 2A30 cpi r18,lo8(10) |
851 0656 11F0 breq .L84 |
852 0658 2431 cpi r18,lo8(20) |
853 065a 10F0 brlo .L83 |
854 .L84: |
855 065c 2898 cbi 37-0x20,0 |
856 065e 01C0 rjmp .L85 |
857 .L83: |
858 0660 289A sbi 37-0x20,0 |
859 .L85: |
860 0662 8091 0000 lds r24,SenderOkay |
861 0666 9091 0000 lds r25,VersionInfo+6 |
862 066a 8823 tst r24 |
863 066c 39F0 breq .L86 |
864 066e 8091 0000 lds r24,SenderOkay |
865 0672 8150 subi r24,lo8(-(-1)) |
866 0674 8093 0000 sts SenderOkay,r24 |
867 0678 977F andi r25,lo8(-9) |
868 067a 0AC0 rjmp .L236 |
869 .L86: |
870 067c 8091 6F00 lds r24,111 |
871 0680 8062 ori r24,lo8(32) |
872 0682 8093 6F00 sts 111,r24 |
873 0686 1092 0000 sts (PPM_in)+1,__zero_reg__ |
874 068a 1092 0000 sts PPM_in,__zero_reg__ |
875 068e 9860 ori r25,lo8(8) |
876 .L236: |
877 0690 9093 0000 sts VersionInfo+6,r25 |
878 0694 8091 0000 lds r24,I2CTimeout |
879 0698 9091 0000 lds r25,(I2CTimeout)+1 |
880 069c 0197 sbiw r24,1 |
881 069e 9093 0000 sts (I2CTimeout)+1,r25 |
882 06a2 8093 0000 sts I2CTimeout,r24 |
883 06a6 8091 0000 lds r24,I2CTimeout |
884 06aa 9091 0000 lds r25,(I2CTimeout)+1 |
885 06ae 892B or r24,r25 |
886 06b0 21F0 breq .L89 |
887 06b2 8091 0000 lds r24,MissingMotor |
888 06b6 8823 tst r24 |
889 06b8 C9F1 breq .L88 |
890 .L89: |
891 06ba 8091 0000 lds r24,I2CTimeout |
892 06be 9091 0000 lds r25,(I2CTimeout)+1 |
893 06c2 892B or r24,r25 |
894 06c4 D9F4 brne .L90 |
895 06c6 0E94 0000 call I2C_Reset |
896 06ca 85E0 ldi r24,lo8(5) |
897 06cc 90E0 ldi r25,hi8(5) |
898 06ce 9093 0000 sts (I2CTimeout)+1,r25 |
899 06d2 8093 0000 sts I2CTimeout,r24 |
900 06d6 8091 0000 lds r24,DebugOut+58 |
901 06da 9091 0000 lds r25,(DebugOut+58)+1 |
902 06de 0196 adiw r24,1 |
903 06e0 9093 0000 sts (DebugOut+58)+1,r25 |
904 06e4 8093 0000 sts DebugOut+58,r24 |
905 06e8 8091 0000 lds r24,VersionInfo+6 |
906 06ec 8160 ori r24,lo8(1) |
907 06ee 8093 0000 sts VersionInfo+6,r24 |
908 06f2 8091 0000 lds r24,DebugOut+1 |
909 06f6 8260 ori r24,lo8(2) |
910 06f8 8093 0000 sts DebugOut+1,r24 |
911 .L90: |
912 06fc 8091 0000 lds r24,BeepMuster |
913 0700 9091 0000 lds r25,(BeepMuster)+1 |
914 0704 8F5F subi r24,lo8(-1) |
915 0706 9F4F sbci r25,hi8(-1) |
916 0708 19F5 brne .L92 |
917 070a 8091 0000 lds r24,MotorenEin |
918 070e 8823 tst r24 |
919 0710 F9F0 breq .L92 |
920 0712 80E1 ldi r24,lo8(10000) |
921 0714 97E2 ldi r25,hi8(10000) |
922 0716 9093 0000 sts (beeptime)+1,r25 |
923 071a 8093 0000 sts beeptime,r24 |
924 071e 80E8 ldi r24,lo8(128) |
925 0720 90E0 ldi r25,hi8(128) |
926 0722 9093 0000 sts (BeepMuster)+1,r25 |
927 0726 8093 0000 sts BeepMuster,r24 |
928 072a 12C0 rjmp .L92 |
929 .L88: |
930 072c 2A30 cpi r18,lo8(10) |
931 072e 11F0 breq .L94 |
932 0730 2431 cpi r18,lo8(20) |
933 0732 10F0 brlo .L93 |
934 .L94: |
935 0734 2898 cbi 37-0x20,0 |
936 0736 01C0 rjmp .L95 |
937 .L93: |
938 0738 289A sbi 37-0x20,0 |
939 .L95: |
940 073a 8091 0000 lds r24,beeptime |
941 073e 9091 0000 lds r25,(beeptime)+1 |
942 0742 892B or r24,r25 |
943 0744 29F4 brne .L92 |
944 0746 8091 0000 lds r24,VersionInfo+6 |
945 074a 8E7F andi r24,lo8(-2) |
946 074c 8093 0000 sts VersionInfo+6,r24 |
947 .L92: |
948 0750 8091 0000 lds r24,UpdateMotor |
949 0754 8823 tst r24 |
950 0756 09F0 breq .+2 |
951 0758 49C1 rjmp .L80 |
952 075a 8091 0000 lds r24,CalculateServoSignals |
953 075e 8823 tst r24 |
954 0760 11F0 breq .L98 |
955 0762 0E94 0000 call CalculateServo |
956 .L98: |
957 0766 0E94 0000 call DatenUebertragung |
958 076a 0E94 0000 call BearbeiteRxDaten |
959 076e C801 movw r24,r16 |
960 0770 0E94 0000 call CheckDelay |
961 0774 8823 tst r24 |
962 0776 09F4 brne .+2 |
963 0778 35C1 rjmp .L99 |
964 077a 0C5E subi r16,lo8(-(20)) |
965 077c 1F4F sbci r17,hi8(-(20)) |
966 077e 8091 0000 lds r24,MissingMotor |
967 0782 9091 0000 lds r25,VersionInfo+6 |
968 0786 8823 tst r24 |
969 0788 39F0 breq .L100 |
970 078a 9260 ori r25,lo8(2) |
971 078c 9093 0000 sts VersionInfo+6,r25 |
972 0790 8091 0000 lds r24,DebugOut+1 |
973 0794 8260 ori r24,lo8(2) |
974 0796 0CC0 rjmp .L237 |
975 .L100: |
976 0798 9D7F andi r25,lo8(-3) |
977 079a 9093 0000 sts VersionInfo+6,r25 |
978 079e 8091 0000 lds r24,I2CTimeout |
979 07a2 9091 0000 lds r25,(I2CTimeout)+1 |
980 07a6 0797 sbiw r24,7 |
981 07a8 28F0 brlo .L101 |
982 07aa 8091 0000 lds r24,DebugOut+1 |
983 07ae 8D7F andi r24,lo8(-3) |
984 .L237: |
985 07b0 8093 0000 sts DebugOut+1,r24 |
986 .L101: |
987 07b4 8091 0000 lds r24,I2CTimeout |
988 07b8 9091 0000 lds r25,(I2CTimeout)+1 |
989 07bc 0797 sbiw r24,7 |
990 07be 28F0 brlo .L103 |
991 07c0 8091 0000 lds r24,VersionInfo+6 |
992 07c4 8E7F andi r24,lo8(-2) |
993 07c6 8093 0000 sts VersionInfo+6,r24 |
994 .L103: |
995 07ca 8091 0000 lds r24,PcZugriff |
996 07ce 8823 tst r24 |
997 07d0 21F0 breq .L104 |
998 07d2 8150 subi r24,lo8(-(-1)) |
999 07d4 8093 0000 sts PcZugriff,r24 |
1000 07d8 25C0 rjmp .L105 |
1001 .L104: |
1002 07da 8093 0000 sts ExternControl+10,r24 |
1003 07de 1092 0000 sts (ExternStickNick)+1,__zero_reg__ |
1004 07e2 1092 0000 sts ExternStickNick,__zero_reg__ |
1005 07e6 1092 0000 sts (ExternStickRoll)+1,__zero_reg__ |
1006 07ea 1092 0000 sts ExternStickRoll,__zero_reg__ |
1007 07ee 1092 0000 sts (ExternStickGier)+1,__zero_reg__ |
1008 07f2 1092 0000 sts ExternStickGier,__zero_reg__ |
1009 07f6 8091 0000 lds r24,BeepMuster |
1010 07fa 9091 0000 lds r25,(BeepMuster)+1 |
1011 07fe 8F5F subi r24,lo8(-1) |
1012 0800 9F4F sbci r25,hi8(-1) |
1013 0802 81F4 brne .L105 |
1014 0804 8091 0000 lds r24,SenderOkay |
1015 0808 8823 tst r24 |
1016 080a 61F4 brne .L105 |
1017 080c 88E9 ldi r24,lo8(15000) |
1018 080e 9AE3 ldi r25,hi8(15000) |
1019 0810 9093 0000 sts (beeptime)+1,r25 |
1020 0814 8093 0000 sts beeptime,r24 |
1021 0818 80E0 ldi r24,lo8(3072) |
1022 081a 9CE0 ldi r25,hi8(3072) |
1023 081c 9093 0000 sts (BeepMuster)+1,r25 |
1024 0820 8093 0000 sts BeepMuster,r24 |
1025 .L105: |
1026 0824 8091 0000 lds r24,NaviDataOkay |
1027 0828 893C cpi r24,lo8(-55) |
1028 082a 48F0 brlo .L107 |
1029 082c 8150 subi r24,lo8(-(-1)) |
1030 082e 8093 0000 sts NaviDataOkay,r24 |
1031 0832 8091 0000 lds r24,VersionInfo+6 |
1032 0836 8B7F andi r24,lo8(-5) |
1033 0838 8093 0000 sts VersionInfo+6,r24 |
1034 083c 30C0 rjmp .L108 |
1035 .L107: |
1036 083e 8091 0000 lds r24,NC_Version+3 |
1037 0842 8823 tst r24 |
1038 0844 E1F0 breq .L109 |
1039 0846 8091 0000 lds r24,VersionInfo+6 |
1040 084a 8460 ori r24,lo8(4) |
1041 084c 8093 0000 sts VersionInfo+6,r24 |
1042 0850 8091 0000 lds r24,BeepMuster |
1043 0854 9091 0000 lds r25,(BeepMuster)+1 |
1044 0858 8F5F subi r24,lo8(-1) |
1045 085a 9F4F sbci r25,hi8(-1) |
1046 085c 81F4 brne .L109 |
1047 085e 8091 0000 lds r24,MotorenEin |
1048 0862 8823 tst r24 |
1049 0864 61F0 breq .L109 |
1050 0866 88E9 ldi r24,lo8(15000) |
1051 0868 9AE3 ldi r25,hi8(15000) |
1052 086a 9093 0000 sts (beeptime)+1,r25 |
1053 086e 8093 0000 sts beeptime,r24 |
1054 0872 80E0 ldi r24,lo8(-22528) |
1055 0874 98EA ldi r25,hi8(-22528) |
1056 0876 9093 0000 sts (BeepMuster)+1,r25 |
1057 087a 8093 0000 sts BeepMuster,r24 |
1058 .L109: |
1059 087e 1092 0000 sts (GPS_Nick)+1,__zero_reg__ |
1060 0882 1092 0000 sts GPS_Nick,__zero_reg__ |
1061 0886 1092 0000 sts (GPS_Roll)+1,__zero_reg__ |
1062 088a 1092 0000 sts GPS_Roll,__zero_reg__ |
1063 088e 8FEF ldi r24,lo8(-1) |
1064 0890 9FEF ldi r25,hi8(-1) |
1065 0892 9093 0000 sts (FromNaviCtrl+7)+1,r25 |
1066 0896 8093 0000 sts FromNaviCtrl+7,r24 |
1067 089a 1092 0000 sts NaviDataOkay,__zero_reg__ |
1068 .L108: |
1069 089e 8091 0000 lds r24,BattLowVoltageWarning |
1070 08a2 282F mov r18,r24 |
1071 08a4 3327 clr r19 |
1072 08a6 8091 0000 lds r24,UBat |
1073 08aa 9091 0000 lds r25,(UBat)+1 |
1074 08ae 8217 cp r24,r18 |
1075 08b0 9307 cpc r25,r19 |
1076 08b2 5CF0 brlt .L112 |
1077 08b4 8091 0000 lds r24,Capacity+6 |
1078 08b8 9091 0000 lds r25,(Capacity+6)+1 |
1079 08bc 1816 cp __zero_reg__,r24 |
1080 08be 1906 cpc __zero_reg__,r25 |
1081 08c0 ECF0 brlt .L111 |
1082 08c2 8091 0000 lds r24,EE_Parameter+41 |
1083 08c6 8823 tst r24 |
1084 08c8 C9F0 breq .L111 |
1085 .L112: |
1086 08ca 8091 0000 lds r24,FC_StatusFlags |
1087 08ce 8062 ori r24,lo8(32) |
1088 08d0 8093 0000 sts FC_StatusFlags,r24 |
1089 08d4 8091 0000 lds r24,BeepMuster |
1090 08d8 9091 0000 lds r25,(BeepMuster)+1 |
1091 08dc 8F5F subi r24,lo8(-1) |
1092 08de 9F4F sbci r25,hi8(-1) |
1093 08e0 C1F4 brne .L114 |
1094 08e2 80E7 ldi r24,lo8(6000) |
1095 08e4 97E1 ldi r25,hi8(6000) |
1096 08e6 9093 0000 sts (beeptime)+1,r25 |
1097 08ea 8093 0000 sts beeptime,r24 |
1098 08ee 80E0 ldi r24,lo8(768) |
1099 08f0 93E0 ldi r25,hi8(768) |
1100 08f2 9093 0000 sts (BeepMuster)+1,r25 |
1101 08f6 8093 0000 sts BeepMuster,r24 |
1102 08fa 0BC0 rjmp .L114 |
1103 .L111: |
1104 08fc 8091 0000 lds r24,beeptime |
1105 0900 9091 0000 lds r25,(beeptime)+1 |
1106 0904 892B or r24,r25 |
1107 0906 29F4 brne .L114 |
1108 0908 8091 0000 lds r24,FC_StatusFlags |
1109 090c 8F7D andi r24,lo8(-33) |
1110 090e 8093 0000 sts FC_StatusFlags,r24 |
1111 .L114: |
1112 0912 0E94 0000 call SPI_StartTransmitPacket |
1113 0916 84E0 ldi r24,lo8(4) |
1114 0918 8093 0000 sts SendSPI,r24 |
1115 091c 8091 0000 lds r24,MotorenEin |
1116 0920 8823 tst r24 |
1117 0922 29F4 brne .L116 |
1118 0924 5AEA ldi r21,lo8(1450) |
1119 0926 852E mov r8,r21 |
1120 0928 55E0 ldi r21,hi8(1450) |
1121 092a 952E mov r9,r21 |
1122 092c 12C0 rjmp .L117 |
1123 .L116: |
1124 092e 8091 0000 lds r24,second.11 |
1125 0932 8F5F subi r24,lo8(-(1)) |
1126 0934 8093 0000 sts second.11,r24 |
1127 0938 8133 cpi r24,lo8(49) |
1128 093a 59F4 brne .L117 |
1129 093c 1092 0000 sts second.11,__zero_reg__ |
1130 0940 8091 0000 lds r24,FlugSekunden |
1131 0944 9091 0000 lds r25,(FlugSekunden)+1 |
1132 0948 0196 adiw r24,1 |
1133 094a 9093 0000 sts (FlugSekunden)+1,r25 |
1134 094e 8093 0000 sts FlugSekunden,r24 |
1135 .L117: |
1136 0952 0894 sec |
1137 0954 811C adc r8,__zero_reg__ |
1138 0956 911C adc r9,__zero_reg__ |
1139 0958 F2E7 ldi r31,lo8(2930) |
1140 095a 8F16 cp r8,r31 |
1141 095c FBE0 ldi r31,hi8(2930) |
1142 095e 9F06 cpc r9,r31 |
1143 0960 09F0 breq .+2 |
1144 0962 40C0 rjmp .L99 |
1145 0964 8824 clr r8 |
1146 0966 9924 clr r9 |
1147 0968 2091 0000 lds r18,FlugMinuten |
1148 096c 3091 0000 lds r19,(FlugMinuten)+1 |
1149 0970 2F5F subi r18,lo8(-(1)) |
1150 0972 3F4F sbci r19,hi8(-(1)) |
1151 0974 3093 0000 sts (FlugMinuten)+1,r19 |
1152 0978 2093 0000 sts FlugMinuten,r18 |
1153 097c 8091 0000 lds r24,FlugMinutenGesamt |
1154 0980 9091 0000 lds r25,(FlugMinutenGesamt)+1 |
1155 0984 0196 adiw r24,1 |
1156 0986 9093 0000 sts (FlugMinutenGesamt)+1,r25 |
1157 098a 8093 0000 sts FlugMinutenGesamt,r24 |
1158 098e 832F mov r24,r19 |
1159 0990 9927 clr r25 |
1160 0992 682F mov r22,r24 |
1161 0994 8EE0 ldi r24,lo8(14) |
1162 0996 90E0 ldi r25,hi8(14) |
1163 0998 0E94 0000 call SetParamByte |
1164 099c 8091 0000 lds r24,FlugMinuten |
1165 09a0 9091 0000 lds r25,(FlugMinuten)+1 |
1166 09a4 9070 andi r25,hi8(255) |
1167 09a6 682F mov r22,r24 |
1168 09a8 8FE0 ldi r24,lo8(15) |
1169 09aa 90E0 ldi r25,hi8(15) |
1170 09ac 0E94 0000 call SetParamByte |
1171 09b0 8091 0000 lds r24,FlugMinutenGesamt |
1172 09b4 9091 0000 lds r25,(FlugMinutenGesamt)+1 |
1173 09b8 892F mov r24,r25 |
1174 09ba 9927 clr r25 |
1175 09bc 682F mov r22,r24 |
1176 09be 8AE0 ldi r24,lo8(10) |
1177 09c0 90E0 ldi r25,hi8(10) |
1178 09c2 0E94 0000 call SetParamByte |
1179 09c6 8091 0000 lds r24,FlugMinutenGesamt |
1180 09ca 9091 0000 lds r25,(FlugMinutenGesamt)+1 |
1181 09ce 9070 andi r25,hi8(255) |
1182 09d0 682F mov r22,r24 |
1183 09d2 8BE0 ldi r24,lo8(11) |
1184 09d4 90E0 ldi r25,hi8(11) |
1185 09d6 0E94 0000 call SetParamByte |
1186 09da 84E1 ldi r24,lo8(20) |
1187 09dc 90E0 ldi r25,hi8(20) |
1188 09de 0E94 0000 call SetDelay |
1189 09e2 8C01 movw r16,r24 |
1190 .L99: |
1191 09e4 0E94 0000 call LED_Update |
1192 09e8 0E94 0000 call Capacity_Update |
1193 .L80: |
1194 09ec 8091 0000 lds r24,SendSPI |
1195 09f0 8823 tst r24 |
1196 09f2 09F0 breq .+2 |
1197 09f4 06CE rjmp .L239 |
1198 09f6 0E94 0000 call SPI_TransmitByte |
1199 09fa 03CE rjmp .L239 |
1200 /* epilogue: frame size=0 */ |
1201 /* epilogue: noreturn */ |
1202 /* epilogue end (size=0) */ |
1203 /* function main size 1100 (1096) */ |
1205 .comm _printf_P,2,1 |
1206 /* File "main.c": code 1293 = 0x050d (1281), prologues 7, epilogues 5 */ |
DEFINED SYMBOLS |
*ABS*:00000000 main.c |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:15 .bss:00000000 FoundMotors |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:21 .bss:00000001 FlugSekunden |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:27 .bss:00000003 FlugMinutenGesamt |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:33 .bss:00000005 FlugMinuten |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:39 .data:00000000 BattLowVoltageWarning |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:44 .data:00000001 SendVersionToNavi |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:49 .data:00000002 PlatinenVersion |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:53 .data:00000003 stick.15 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:58 .text:00000000 CalMk3Mag |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:112 .progmem.data:00000000 __c.12 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:116 .progmem.data:00000008 __c.13 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:120 .progmem.data:00000013 __c.14 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:125 .text:0000006a LipoDetection |
*COM*:00000002 _printf_P |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:262 .progmem.data:0000002d __c.0 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:266 .progmem.data:0000003f __c.1 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:270 .progmem.data:00000042 __c.2 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:274 .progmem.data:00000060 __c.3 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:278 .progmem.data:00000086 __c.4 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:282 .progmem.data:000000a6 __c.5 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:286 .progmem.data:000000ab __c.6 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:290 .progmem.data:000000ce __c.7 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:294 .progmem.data:000000da __c.8 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:298 .progmem.data:000000e6 __c.9 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:302 .progmem.data:000000f8 __c.10 |
.bss:00000007 second.11 |
C:\Users\Thomas\AppData\Local\Temp/cc42aaaa.s:308 .text:0000017e main |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
EE_Parameter |
PPM_in |
WinkelOut |
beeptime |
Piep |
DebugOut |
uart_putchar |
SetDelay |
CheckDelay |
UBat |
__udivmodqi4 |
__stack |
StickGier |
StickRoll |
StickNick |
GIER_GRAD_FAKTOR |
Timer_Init |
TIMER2_Init |
UART_Init |
rc_sum_init |
ADC_Init |
I2C_Init |
SPI_MasterInit |
LIBFC_Init |
ParamSet_Init |
Capacity_Init |
BLFlags |
motor_read |
SendMotorData |
Motor |
Mixer |
ServoActive |
RequiredMotors |
VersionInfo |
SucheLuftruckOffset |
SetNeutral |
ExternControl |
GetParamByte |
LcdClear |
I2CTimeout |
LIBFC_ReceiverInit |
JetiUpdateModeActive |
LIBFC_Polling |
UpdateMotor |
AdReady |
MotorRegler |
SenderOkay |
MissingMotor |
I2C_Reset |
BeepMuster |
MotorenEin |
CalculateServoSignals |
CalculateServo |
DatenUebertragung |
BearbeiteRxDaten |
PcZugriff |
ExternStickNick |
ExternStickRoll |
ExternStickGier |
NaviDataOkay |
NC_Version |
GPS_Nick |
GPS_Roll |
FromNaviCtrl |
Capacity |
FC_StatusFlags |
SPI_StartTransmitPacket |
SendSPI |
SetParamByte |
LED_Update |
Capacity_Update |
SPI_TransmitByte |
/branches/metro/v0.82a metro_Akku+/makefile |
---|
0,0 → 1,465 |
#-------------------------------------------------------------------- |
# MCU name |
#MCU = atmega1284p |
MCU = atmega644p |
F_CPU = 20000000 |
#------------------------------------------------------------------- |
VERSION_MAJOR = 0 |
VERSION_MINOR = 82 |
VERSION_PATCH = 0 |
NAMEEXT = akku001 |
VERSION_SERIAL_MAJOR = 11 # Serial Protocol |
VERSION_SERIAL_MINOR = 0 # Serial Protocol |
NC_SPI_COMPATIBLE = 16 # Navi-Kompatibilität |
#------------------------------------------------------------------- |
# get SVN revision |
REV := $(shell sh -c "cat .svn/entries | sed -n '4p'") |
ifeq ($(MCU), atmega1284p) |
FUSE_SETTINGS = -u -U lfuse:w:0xff:m -U hfuse:w:0xdf:m |
HEX_NAME = MEGA1284P |
LIBFC_EXT = 1284 |
endif |
ifeq ($(MCU), atmega644p) |
FUSE_SETTINGS = -u -U lfuse:w:0xff:m -U hfuse:w:0xdf:m |
HEX_NAME = MEGA644 |
LIBFC_EXT = 644 |
endif |
ifeq ($(F_CPU), 16000000) |
QUARZ = 16MHZ |
endif |
ifeq ($(F_CPU), 20000000) |
QUARZ = 20MHZ |
endif |
# Output format. (can be srec, ihex, binary) |
FORMAT = ihex |
# Target file name (without extension). |
ifeq ($(VERSION_PATCH), 0) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)a_SVN$(REV)_$(NAMEEXT) |
endif |
ifeq ($(VERSION_PATCH), 1) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)b_SVN$(REV)_$(NAMEEXT) |
endif |
ifeq ($(VERSION_PATCH), 2) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)c_SVN$(REV)_$(NAMEEXT) |
endif |
ifeq ($(VERSION_PATCH), 3) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)d_SVN$(REV)_$(NAMEEXT) |
endif |
ifeq ($(VERSION_PATCH), 4) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)e_SVN$(REV)_$(NAMEEXT) |
endif |
ifeq ($(VERSION_PATCH), 5) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)f_SVN$(REV)_$(NAMEEXT) |
endif |
ifeq ($(VERSION_PATCH), 6) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)g_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 7) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)h_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 8) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)i_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 9) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)j_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 10) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)k_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 11) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)L_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 12) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)m_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 13) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)n_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 14) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)o_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 15) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)p_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 16) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)q_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 17) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)r_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 18) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)s_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 19) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)t_SVN$(REV) |
endif |
ifeq ($(VERSION_PATCH), 20) |
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)u_SVN$(REV) |
endif |
# Optimization level, can be [0, 1, 2, 3, s]. 0 turns off optimization. |
# (Note: 3 is not always the best optimization level. See avr-libc FAQ.) |
OPT = s |
#OPT = 2 |
########################################################################################################## |
# List C source files here. (C dependencies are automatically generated.) |
SRC = main.c uart.c timer0.c analog.c menu.c eeprom.c |
SRC += twimaster.c rc.c fc.c GPS.c spi.c led.c Spektrum.c |
SRC += mymath.c jetimenu.c capacity.c debug.c |
########################################################################################################## |
# List Assembler source files here. |
# Make them always end in a capital .S. Files ending in a lowercase .s |
# will not be considered source files but generated files (assembler |
# output from the compiler), and will be deleted upon "make clean"! |
# Even though the DOS/Win* filesystem matches both .s and .S the same, |
# it will preserve the spelling of the filenames, and gcc itself does |
# care about how the name is spelled on its command-line. |
ASRC = isqrt.S |
# List any extra directories to look for include files here. |
# Each directory must be seperated by a space. |
EXTRAINCDIRS = |
# Optional compiler flags. |
# -g: generate debugging information (for GDB, or for COFF conversion) |
# -O*: optimization level |
# -f...: tuning, see gcc manual and avr-libc documentation |
# -Wall...: warning level |
# -Wa,...: tell GCC to pass this to the assembler. |
# -ahlms: create assembler listing |
CFLAGS = -O$(OPT) -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=$(<:%.c=%.lst) $(patsubst %,-I%,$(EXTRAINCDIRS)) |
# Set a "language standard" compiler flag. |
# Unremark just one line below to set the language standard to use. |
# gnu99 = C99 + GNU extensions. See GCC manual for more information. |
#CFLAGS += -std=c89 |
#CFLAGS += -std=gnu89 |
#CFLAGS += -std=c99 |
CFLAGS += -std=gnu99 |
# shrink code size |
CFLAGS += -mtiny-stack |
#CFLAGS += -fno-inline-functions |
CFLAGS += -mcall-prologues |
CFLAGS += -DF_CPU=$(F_CPU) -DVERSION_MAJOR=$(VERSION_MAJOR) -DVERSION_MINOR=$(VERSION_MINOR) -DVERSION_PATCH=$(VERSION_PATCH) -DVERSION_SERIAL_MAJOR=$(VERSION_SERIAL_MAJOR) -DVERSION_SERIAL_MINOR=$(VERSION_SERIAL_MINOR) -DNC_SPI_COMPATIBLE=$(NC_SPI_COMPATIBLE) |
# Optional assembler flags. |
# -Wa,...: tell GCC to pass this to the assembler. |
# -ahlms: create listing |
# -gstabs: have the assembler create line number information; note that |
# for use in COFF files, additional information about filenames |
# and function names needs to be present in the assembler source |
# files -- see avr-libc docs [FIXME: not yet described there] |
ASFLAGS = -Wa,-adhlns=$(<:.S=.lst),-gstabs |
# Optional linker flags. |
# -Wl,...: tell GCC to pass this to linker. |
# -Map: create map file |
# --cref: add cross reference to map file |
LDFLAGS = -Wl,-Map=$(TARGET).map,--cref |
# Additional libraries |
# Minimalistic printf version |
#LDFLAGS += -Wl,-u,vfprintf -lprintf_min |
# Floating point printf version (requires -lm below) |
#LDFLAGS += -Wl,-u,vfprintf -lprintf_flt |
# -lm = math library |
LDFLAGS += -lm |
LDFLAGS += libfc$(LIBFC_EXT).a |
##LDFLAGS += -T./linkerfile/avr5.x |
# Programming support using avrdude. Settings and variables. |
# Programming hardware: alf avr910 avrisp bascom bsd |
# dt006 pavr picoweb pony-stk200 sp12 stk200 stk500 |
# |
# Type: avrdude -c ? |
# to get a full listing. |
# |
#AVRDUDE_PROGRAMMER = dt006 |
#AVRDUDE_PROGRAMMER = stk200 |
#AVRDUDE_PROGRAMMER = ponyser |
AVRDUDE_PROGRAMMER = avrispv2 |
#falls Ponyser ausgewählt wird, muss sich unsere avrdude-Configdatei im Bin-Verzeichnis des Compilers befinden |
#AVRDUDE_PORT = com1 # programmer connected to serial device |
#AVRDUDE_PORT = lpt1 # programmer connected to parallel port |
AVRDUDE_PORT = usb # programmer connected to USB |
#AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex |
AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex $(FUSE_SETTINGS) |
#AVRDUDE_WRITE_EEPROM = -U eeprom:w:$(TARGET).eep |
#avrdude -c avrispv2 -P usb -p m32 -U flash:w:blink.hex |
AVRDUDE_FLAGS = -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) |
# Uncomment the following if you want avrdude's erase cycle counter. |
# Note that this counter needs to be initialized first using -Yn, |
# see avrdude manual. |
#AVRDUDE_ERASE += -y |
# Uncomment the following if you do /not/ wish a verification to be |
# performed after programming the device. |
AVRDUDE_FLAGS += -V |
# Increase verbosity level. Please use this when submitting bug |
# reports about avrdude. See <http://savannah.nongnu.org/projects/avrdude> |
# to submit bug reports. |
#AVRDUDE_FLAGS += -v -v |
# --------------------------------------------------------------------------- |
# Define directories, if needed. |
DIRAVR = c:/winavr |
DIRAVRBIN = $(DIRAVR)/bin |
DIRAVRUTILS = $(DIRAVR)/utils/bin |
DIRINC = . |
DIRLIB = $(DIRAVR)/avr/lib |
# Define programs and commands. |
SHELL = sh |
CC = avr-gcc |
OBJCOPY = avr-objcopy |
OBJDUMP = avr-objdump |
SIZE = avr-size |
# Programming support using avrdude. |
AVRDUDE = avrdude |
REMOVE = rm -f |
COPY = cp |
HEXSIZE = $(SIZE) --target=$(FORMAT) $(TARGET).hex |
ELFSIZE = $(SIZE) -x -A $(TARGET).elf |
LIMITS = $(SIZE) --mcu=$(MCU) -C $(TARGET).elf |
# Define Messages |
# English |
MSG_ERRORS_NONE = Errors: none |
MSG_BEGIN = -------- begin -------- |
MSG_END = -------- end -------- |
MSG_SIZE_BEFORE = Size before: |
MSG_SIZE_AFTER = Size after: |
MSG_COFF = Converting to AVR COFF: |
MSG_EXTENDED_COFF = Converting to AVR Extended COFF: |
MSG_FLASH = Creating load file for Flash: |
MSG_EEPROM = Creating load file for EEPROM: |
MSG_EXTENDED_LISTING = Creating Extended Listing: |
MSG_SYMBOL_TABLE = Creating Symbol Table: |
MSG_LINKING = Linking: |
MSG_COMPILING = Compiling: |
MSG_ASSEMBLING = Assembling: |
MSG_CLEANING = Cleaning project: |
# Define all object files. |
OBJ = $(SRC:.c=.o) $(ASRC:.S=.o) |
# Define all listing files. |
LST = $(ASRC:.S=.lst) $(SRC:.c=.lst) |
# Combine all necessary flags and optional flags. |
# Add target processor to flags. |
#ALL_CFLAGS = -mmcu=$(MCU) -DF_CPU=$(F_CPU) -I. $(CFLAGS) |
ALL_CFLAGS = -mmcu=$(MCU) -I. $(CFLAGS) |
ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS) |
# Default target. |
all: begin gccversion sizebefore $(TARGET).elf $(TARGET).hex sizeafter finished end |
# Eye candy. |
# AVR Studio 3.x does not check make's exit code but relies on |
# the following magic strings to be generated by the compile job. |
begin: |
@echo |
@echo $(MSG_BEGIN) |
finished: |
@echo $(MSG_ERRORS_NONE) |
end: |
@echo $(MSG_END) |
@echo |
# Display size of file. |
sizebefore: |
@if [ -f $(TARGET).elf ]; then echo Size before:; $(ELFSIZE); $(HEXSIZE); $(LIMITS); echo; fi |
sizeafter: |
@if [ -f $(TARGET).elf ]; then echo Size after:; $(ELFSIZE); $(HEXSIZE); $(LIMITS); echo; fi |
# Display compiler version information. |
gccversion : |
@$(CC) --version |
# Convert ELF to COFF for use in debugging / simulating in |
# AVR Studio or VMLAB. |
COFFCONVERT=$(OBJCOPY) --debugging \ |
--change-section-address .data-0x800000 \ |
--change-section-address .bss-0x800000 \ |
--change-section-address .noinit-0x800000 \ |
--change-section-address .eeprom-0x810000 |
coff: $(TARGET).elf |
@echo |
@echo $(MSG_COFF) $(TARGET).cof |
$(COFFCONVERT) -O coff-avr $< $(TARGET).cof |
extcoff: $(TARGET).elf |
@echo |
@echo $(MSG_EXTENDED_COFF) $(TARGET).cof |
$(COFFCONVERT) -O coff-ext-avr $< $(TARGET).cof |
# Program the device. |
program: $(TARGET).hex $(TARGET).eep |
$(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) $(AVRDUDE_WRITE_EEPROM) |
# Create final output files (.hex, .eep) from ELF output file. |
%.hex: %.elf |
@echo |
@echo $(MSG_FLASH) $@ |
$(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@ |
%.eep: %.elf |
@echo |
@echo $(MSG_EEPROM) $@ |
-$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \ |
--change-section-lma .eeprom=0 -O $(FORMAT) $< $@ |
# Create extended listing file from ELF output file. |
%.lss: %.elf |
@echo |
@echo $(MSG_EXTENDED_LISTING) $@ |
$(OBJDUMP) -h -S $< > $@ |
# Create a symbol table from ELF output file. |
%.sym: %.elf |
@echo |
@echo $(MSG_SYMBOL_TABLE) $@ |
avr-nm -n $< > $@ |
# Link: create ELF output file from object files. |
.SECONDARY : $(TARGET).elf |
.PRECIOUS : $(OBJ) |
%.elf: $(OBJ) |
@echo |
@echo $(MSG_LINKING) $@ |
$(CC) $(ALL_CFLAGS) $(OBJ) --output $@ $(LDFLAGS) |
# Compile: create object files from C source files. |
%.o : %.c |
@echo |
@echo $(MSG_COMPILING) $< |
$(CC) -c $(ALL_CFLAGS) $< -o $@ |
# Compile: create assembler files from C source files. |
%.s : %.c |
$(CC) -S $(ALL_CFLAGS) $< -o $@ |
# Assemble: create object files from assembler source files. |
%.o : %.S |
@echo |
@echo $(MSG_ASSEMBLING) $< |
$(CC) -c $(ALL_ASFLAGS) $< -o $@ |
# Target: clean project. |
clean: begin clean_list finished end |
clean_list : |
@echo |
@echo $(MSG_CLEANING) |
$(REMOVE) Flight-Ctrl_*.hex |
$(REMOVE) Flight-Ctrl_*.eep |
$(REMOVE) $(TARGET).obj |
$(REMOVE) $(TARGET).cof |
$(REMOVE) Flight-Ctrl_*.elf |
$(REMOVE) Flight-Ctrl_*.map |
$(REMOVE) $(TARGET).obj |
$(REMOVE) $(TARGET).a90 |
$(REMOVE) Flight-Ctrl_*.sym |
$(REMOVE) $(TARGET).lnk |
$(REMOVE) $(TARGET).lss |
$(REMOVE) $(OBJ) |
$(REMOVE) $(LST) |
$(REMOVE) $(SRC:.c=.s) |
$(REMOVE) $(SRC:.c=.d) |
$(REMOVE) $(SRC:.c=.o) |
# Automatically generate C source code dependencies. |
# (Code originally taken from the GNU make user manual and modified |
# (See README.txt Credits).) |
# |
# Note that this will work with sh (bash) and sed that is shipped with WinAVR |
# (see the SHELL variable defined above). |
# This may not work with other shells or other seds. |
# |
%.d: %.c |
set -e; $(CC) -MM $(ALL_CFLAGS) $< \ |
| sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > $@; \ |
[ -s $@ ] || rm -f $@ |
# Remove the '-' if you want to see the dependency files generated. |
-include $(SRC:%.c=%.d) |
# Listing of phony targets. |
.PHONY : all begin finish end sizebefore sizeafter gccversion coff extcoff \ |
clean clean_list program |
/branches/metro/v0.82a metro_Akku+/menu.c |
---|
0,0 → 1,204 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + only for non-profit use |
// + www.MikroKopter.com |
// + porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// + see the File "License.txt" for further Informations |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include "main.h" |
#include "eeprom.h" |
char DisplayBuff[80] = "Hello World"; |
unsigned char DispPtr = 0; |
unsigned char MaxMenue = 17; |
unsigned char MenuePunkt = 0; |
unsigned char RemoteKeys = 0; |
#define KEY1 0x01 |
#define KEY2 0x02 |
#define KEY3 0x04 |
#define KEY4 0x08 |
#define KEY5 0x10 |
void LcdClear(void) |
{ |
unsigned char i; |
for(i=0;i<80;i++) DisplayBuff[i] = ' '; |
} |
void Menu_Putchar(char c) |
{ |
DisplayBuff[DispPtr++] = c; |
} |
void Menu(void) |
{ |
if(RemoteKeys & KEY1) { if(MenuePunkt) MenuePunkt--; else MenuePunkt = MaxMenue;} |
if(RemoteKeys & KEY2) { if(MenuePunkt == MaxMenue) MenuePunkt = 0; else MenuePunkt++;} |
if((RemoteKeys & KEY1) && (RemoteKeys & KEY2)) MenuePunkt = 0; |
LcdClear(); |
if(MenuePunkt < 10) {LCD_printfxy(17,0,"[%i]",MenuePunkt);} |
else {LCD_printfxy(16,0,"[%i]",MenuePunkt);}; |
switch(MenuePunkt) |
{ |
case 0: |
LCD_printfxy(0,0,"+ MikroKopter +"); |
LCD_printfxy(0,1,"HW:V%d.%d SW:%d.%d%c",PlatinenVersion/10,PlatinenVersion%10, VERSION_MAJOR, VERSION_MINOR, VERSION_PATCH +'a'); |
LCD_printfxy(0,2,"Setting:%d %s", GetActiveParamSet(),Mixer.Name); |
if(VersionInfo.HardwareError[0]) LCD_printfxy(0,3,"Hardware Error 1:%d !!",VersionInfo.HardwareError[0]) |
else |
if(MissingMotor) LCD_printfxy(0,3,"Missing BL-Ctrl:%d!!",MissingMotor) |
else |
if(VersionInfo.HardwareError[1] & FC_ERROR1_MIXER) LCD_printfxy(0,3,"Mixer Error!") |
else |
// if(VersionInfo.HardwareError[1]) LCD_printfxy(0,3,"Error 2:%d !!",VersionInfo.HardwareError[1]) |
// else |
if(I2CTimeout < 6) LCD_printfxy(0,3,"I2C ERROR!!!") |
break; |
case 1: |
if(EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG) |
{ |
LCD_printfxy(0,0,"Height: %5i",(int)(HoehenWert/5)); |
LCD_printfxy(0,1,"Setpoint:%5i",(int)(SollHoehe/5)); |
LCD_printfxy(0,2,"Pressure:%5i",MessLuftdruck); |
LCD_printfxy(0,3,"Offset: %5i",OCR0A); |
} |
else |
{ |
LCD_printfxy(0,0,"Height control"); |
LCD_printfxy(0,1,"DISABLED"); |
LCD_printfxy(0,2,"Height control"); |
LCD_printfxy(0,3,"DISABLED"); |
} |
break; |
case 2: |
LCD_printfxy(0,0,"act. bearing"); |
LCD_printfxy(0,1,"Nick: %5i",IntegralNick/1024); |
LCD_printfxy(0,2,"Roll: %5i",IntegralRoll/1024); |
LCD_printfxy(0,3,"Compass: %5i",KompassValue); |
break; |
case 3: |
LCD_printfxy(0,0,"K1:%4i K2:%4i ",PPM_in[1],PPM_in[2]); |
LCD_printfxy(0,1,"K3:%4i K4:%4i ",PPM_in[3],PPM_in[4]); |
LCD_printfxy(0,2,"K5:%4i K6:%4i ",PPM_in[5],PPM_in[6]); |
LCD_printfxy(0,3,"K7:%4i K8:%4i ",PPM_in[7],PPM_in[8]); |
break; |
case 4: |
LCD_printfxy(0,0,"Ni:%4i Ro:%4i ",PPM_in[EE_Parameter.Kanalbelegung[K_NICK]],PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]); |
LCD_printfxy(0,1,"Gs:%4i Gi:%4i ",PPM_in[EE_Parameter.Kanalbelegung[K_GAS]]+120,PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]); |
LCD_printfxy(0,2,"P1:%4i P2:%4i ",PPM_in[EE_Parameter.Kanalbelegung[K_POTI1]]+110,PPM_in[EE_Parameter.Kanalbelegung[K_POTI2]]+110); |
LCD_printfxy(0,3,"P3:%4i P4:%4i ",PPM_in[EE_Parameter.Kanalbelegung[K_POTI3]]+110,PPM_in[EE_Parameter.Kanalbelegung[K_POTI4]]+110); |
break; |
case 5: |
LCD_printfxy(0,0,"Gyro - Sensor"); |
if(PlatinenVersion == 10) |
{ |
LCD_printfxy(0,1,"Nick%4i (%3i.%i)",AdWertNick - AdNeutralNick/8, AdNeutralNick/8, AdNeutralNick%8); |
LCD_printfxy(0,2,"Roll%4i (%3i.%i)",AdWertRoll - AdNeutralRoll/8, AdNeutralRoll/8, AdNeutralRoll%8); |
LCD_printfxy(0,3,"Gier%4i (%3i)",AdNeutralGier - AdWertGier, AdNeutralGier); |
} |
else |
if((PlatinenVersion == 11) || (PlatinenVersion >= 20)) |
{ |
LCD_printfxy(0,1,"Nick %4i (%3i.%x)",AdWertNick - AdNeutralNick/8, AdNeutralNick/16, (AdNeutralNick%16)/2); |
LCD_printfxy(0,2,"Roll %4i (%3i.%x)",AdWertRoll - AdNeutralRoll/8, AdNeutralRoll/16, (AdNeutralRoll%16)/2); |
LCD_printfxy(0,3,"Yaw %4i (%3i)",AdNeutralGier - AdWertGier, AdNeutralGier/2); |
} |
else |
if(PlatinenVersion == 13) |
{ |
LCD_printfxy(0,1,"Nick %4i (%3i)(%3i)",AdWertNick - AdNeutralNick/8, AdNeutralNick/16,AnalogOffsetNick); |
LCD_printfxy(0,2,"Roll %4i (%3i)(%3i)",AdWertRoll - AdNeutralRoll/8, AdNeutralRoll/16,AnalogOffsetRoll); |
LCD_printfxy(0,3,"Yaw %4i (%3i)(%3i)",AdNeutralGier - AdWertGier, AdNeutralGier/2,AnalogOffsetGier); |
} |
break; |
case 6: |
LCD_printfxy(0,0,"ACC - Sensor"); |
LCD_printfxy(0,1,"Nick %4i (%3i)",AdWertAccNick,NeutralAccX); |
LCD_printfxy(0,2,"Roll %4i (%3i)",AdWertAccRoll,NeutralAccY); |
LCD_printfxy(0,3,"Z %4i (%3i)",AdWertAccHoch,(int)NeutralAccZ); |
break; |
case 7: |
LCD_printfxy(0,0,"Voltage: %3i.%1iV",UBat/10, UBat%10); |
LCD_printfxy(0,1,"Current: %3i.%1iA",Capacity.ActualCurrent/10, Capacity.ActualCurrent%10); |
LCD_printfxy(0,2,"Power: %4iW",Capacity.ActualPower); |
LCD_printfxy(0,3,"Discharge: %5imAh", Capacity.UsedCapacity); |
break; |
case 8: |
LCD_printfxy(0,0,"Receiver"); |
LCD_printfxy(0,1,"RC-RSSI: %4i", PPM_in[0]); |
LCD_printfxy(0,2,"RC-Quality: %4i", SenderOkay); |
LCD_printfxy(0,3,"RC-Channels:%4i", Channels-1); |
break; |
case 9: |
LCD_printfxy(0,0,"Compass"); |
LCD_printfxy(0,1,"Heading: %5i",KompassRichtung); |
LCD_printfxy(0,2,"Value: %5i",KompassValue); |
LCD_printfxy(0,3,"Start: %5i",KompassStartwert); |
break; |
case 10: |
LCD_printfxy(0,0,"Poti1: %3i",Poti[0]); |
LCD_printfxy(0,1,"Poti2: %3i",Poti[1]); |
LCD_printfxy(0,2,"Poti3: %3i",Poti[2]); |
LCD_printfxy(0,3,"Poti4: %3i",Poti[3]); |
break; |
case 11: |
LCD_printfxy(0,0,"Poti5: %3i",Poti[4]); |
LCD_printfxy(0,1,"Poti6: %3i",Poti[5]); |
LCD_printfxy(0,2,"Poti7: %3i",Poti[6]); |
LCD_printfxy(0,3,"Poti8: %3i",Poti[7]); |
break; |
case 12: |
LCD_printfxy(0,0,"Servo " ); |
LCD_printfxy(0,1,"Setpoint %3i",Parameter_ServoNickControl); |
LCD_printfxy(0,2,"Position: %3i",ServoNickValue/4); |
LCD_printfxy(0,3,"Range:%3i-%3i",EE_Parameter.ServoNickMin,EE_Parameter.ServoNickMax); |
break; |
case 13: |
LCD_printfxy(0,0,"ExternControl " ); |
LCD_printfxy(0,1,"Ni:%4i Ro:%4i ",ExternControl.Nick,ExternControl.Roll); |
LCD_printfxy(0,2,"Gs:%4i Gi:%4i ",ExternControl.Gas,ExternControl.Gier); |
LCD_printfxy(0,3,"Hi:%4i Cf:%4i ",ExternControl.Hight,ExternControl.Config); |
break; |
case 14: |
LCD_printfxy(0,0,"BL-Ctrl Errors " ); |
LCD_printfxy(0,1,"%3d %3d %3d %3d ",Motor[0].State & MOTOR_STATE_ERROR_MASK,Motor[1].State & MOTOR_STATE_ERROR_MASK,Motor[2].State & MOTOR_STATE_ERROR_MASK,Motor[3].State & MOTOR_STATE_ERROR_MASK); |
LCD_printfxy(0,2,"%3d %3d %3d %3d ",Motor[4].State & MOTOR_STATE_ERROR_MASK,Motor[5].State & MOTOR_STATE_ERROR_MASK,Motor[6].State & MOTOR_STATE_ERROR_MASK,Motor[7].State & MOTOR_STATE_ERROR_MASK); |
LCD_printfxy(0,3,"%3d %3d %3d %3d ",Motor[8].State & MOTOR_STATE_ERROR_MASK,Motor[9].State & MOTOR_STATE_ERROR_MASK,Motor[10].State & MOTOR_STATE_ERROR_MASK,Motor[11].State & MOTOR_STATE_ERROR_MASK); |
break; |
case 15: |
LCD_printfxy(0,0,"BL Temperature" ); |
LCD_printfxy(0,1,"%3i %3i %3i %3i ",Motor[0].Temperature,Motor[1].Temperature,Motor[2].Temperature,Motor[3].Temperature); |
LCD_printfxy(0,2,"%3i %3i %3i %3i ",Motor[4].Temperature,Motor[5].Temperature,Motor[6].Temperature,Motor[7].Temperature); |
LCD_printfxy(0,3,"%3i %3i %3i %3i ",Motor[8].Temperature,Motor[9].Temperature,Motor[10].Temperature,Motor[11].Temperature); |
break; |
case 16: |
LCD_printfxy(0,0,"BL-Ctrl found " ); |
LCD_printfxy(0,1," %c %c %c %c ",'-' + 4 * (Motor[0].State>>7),'-' + 5 * (Motor[1].State>>7),'-' + 6 * (Motor[2].State>>7),'-' + 7 * (Motor[3].State>>7)); |
LCD_printfxy(0,2," %c %c %c %c ",'-' + 8 * (Motor[4].State>>7),'-' + 9 * (Motor[5].State>>7),'-' + 10 * (Motor[6].State>>7),'-' + 11 * (Motor[7].State>>7)); |
LCD_printfxy(0,3," %c - - - ",'-' + 12 * (Motor[8].State>>7)); |
if(Motor[9].State>>7) LCD_printfxy(4,3,"10"); |
if(Motor[10].State>>7) LCD_printfxy(8,3,"11"); |
if(Motor[11].State>>7) LCD_printfxy(12,3,"12"); |
break; |
case 17: |
LCD_printfxy(0,0,"Flight-Time " ); |
LCD_printfxy(0,1,"Total:%5umin",FlugMinutenGesamt); |
LCD_printfxy(0,2,"Act: %5umin",FlugMinuten); |
LCD_printfxy(13,3,"(reset)"); |
if(RemoteKeys & KEY4) |
{ |
FlugMinuten = 0; |
SetParamWord(PID_FLIGHT_MINUTES, FlugMinuten); |
} |
break; |
default: |
if(MenuePunkt == MaxMenue) MaxMenue--; |
MenuePunkt = 0; |
break; |
} |
RemoteKeys = 0; |
} |
/branches/metro/v0.82a metro_Akku+/menu.d |
---|
0,0 → 1,3 |
menu.o menu.d : menu.c main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/menu.h |
---|
0,0 → 1,17 |
#ifndef _MENU_H |
#define _MENU_H |
extern void Menu(void); |
extern void LcdClear(void); |
extern void Menu_Putchar(char c); |
extern char DisplayBuff[80]; |
extern unsigned char DispPtr; |
extern unsigned char MaxMenue; |
extern unsigned char MenuePunkt; |
extern unsigned char RemoteKeys; |
#define LCD_printfxy(x,y,format, args...) { DispPtr = y * 20 + x; _printf_P(&Menu_Putchar,PSTR(format) , ## args);} |
#define LCD_printf(format, args...) { _printf_P(&Menu_Putchar, PSTR(format) , ## args);} |
#endif //_MENU_H |
/branches/metro/v0.82a metro_Akku+/menu.lst |
---|
0,0 → 1,3080 |
1 .file "menu.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global RemoteKeys |
11 .global RemoteKeys |
12 .section .bss |
15 RemoteKeys: |
16 0000 00 .skip 1,0 |
17 .global MenuePunkt |
18 .global MenuePunkt |
21 MenuePunkt: |
22 0001 00 .skip 1,0 |
23 .global MaxMenue |
24 .data |
27 MaxMenue: |
28 0000 11 .byte 17 |
29 .global DispPtr |
30 .global DispPtr |
31 .section .bss |
34 DispPtr: |
35 0002 00 .skip 1,0 |
36 .global DisplayBuff |
37 .data |
40 DisplayBuff: |
41 0001 4865 6C6C .string "Hello World" |
41 6F20 576F |
41 726C 6400 |
42 000d 0000 0000 .skip 68,0 |
42 0000 0000 |
42 0000 0000 |
42 0000 0000 |
42 0000 0000 |
43 .text |
44 .global LcdClear |
46 LcdClear: |
47 /* prologue: frame size=0 */ |
48 /* prologue end (size=0) */ |
49 0000 90E2 ldi r25,lo8(32) |
50 0002 E0E0 ldi r30,lo8(DisplayBuff) |
51 0004 F0E0 ldi r31,hi8(DisplayBuff) |
52 0006 8FE4 ldi r24,lo8(79) |
53 .L5: |
54 0008 9193 st Z+,r25 |
55 000a 8150 subi r24,lo8(-(-1)) |
56 000c 87FF sbrs r24,7 |
57 000e FCCF rjmp .L5 |
58 /* epilogue: frame size=0 */ |
59 0010 0895 ret |
60 /* epilogue end (size=1) */ |
61 /* function LcdClear size 9 (8) */ |
63 .global Menu_Putchar |
65 Menu_Putchar: |
66 /* prologue: frame size=0 */ |
67 /* prologue end (size=0) */ |
68 0012 9091 0000 lds r25,DispPtr |
69 0016 E0E0 ldi r30,lo8(DisplayBuff) |
70 0018 F0E0 ldi r31,hi8(DisplayBuff) |
71 001a E90F add r30,r25 |
72 001c F11D adc r31,__zero_reg__ |
73 001e 8083 st Z,r24 |
74 0020 9F5F subi r25,lo8(-(1)) |
75 0022 9093 0000 sts DispPtr,r25 |
76 /* epilogue: frame size=0 */ |
77 0026 0895 ret |
78 /* epilogue end (size=1) */ |
79 /* function Menu_Putchar size 11 (10) */ |
81 .section .progmem.data,"a",@progbits |
84 __c.0: |
85 0000 5B25 695D .string "[%i]" |
85 00 |
88 __c.1: |
89 0005 5B25 695D .string "[%i]" |
89 00 |
92 __c.2: |
93 000a 2B20 4D69 .string "+ MikroKopter +" |
93 6B72 6F4B |
93 6F70 7465 |
93 7220 2B00 |
96 __c.3: |
97 001a 4857 3A56 .string "HW:V%d.%d SW:%d.%d%c" |
97 2564 2E25 |
97 6420 5357 |
97 3A25 642E |
97 2564 2563 |
100 __c.4: |
101 002f 5365 7474 .string "Setting:%d %s" |
101 696E 673A |
101 2564 2025 |
101 7300 |
104 __c.5: |
105 003d 4861 7264 .string "Hardware Error 1:%d !!" |
105 7761 7265 |
105 2045 7272 |
105 6F72 2031 |
105 3A25 6420 |
108 __c.6: |
109 0054 4D69 7373 .string "Missing BL-Ctrl:%d!!" |
109 696E 6720 |
109 424C 2D43 |
109 7472 6C3A |
109 2564 2121 |
112 __c.7: |
113 0069 4D69 7865 .string "Mixer Error!" |
113 7220 4572 |
113 726F 7221 |
113 00 |
116 __c.8: |
117 0076 4932 4320 .string "I2C ERROR!!!" |
117 4552 524F |
117 5221 2121 |
117 00 |
120 __c.9: |
121 0083 4865 6967 .string "Height: %5i" |
121 6874 3A20 |
121 2025 3569 |
121 00 |
124 __c.10: |
125 0090 5365 7470 .string "Setpoint:%5i" |
125 6F69 6E74 |
125 3A25 3569 |
125 00 |
128 __c.11: |
129 009d 5072 6573 .string "Pressure:%5i" |
129 7375 7265 |
129 3A25 3569 |
129 00 |
132 __c.12: |
133 00aa 4F66 6673 .string "Offset: %5i" |
133 6574 3A20 |
133 2025 3569 |
133 00 |
136 __c.13: |
137 00b7 4865 6967 .string "Height control" |
137 6874 2063 |
137 6F6E 7472 |
137 6F6C 00 |
140 __c.14: |
141 00c6 4449 5341 .string "DISABLED" |
141 424C 4544 |
141 00 |
144 __c.15: |
145 00cf 4865 6967 .string "Height control" |
145 6874 2063 |
145 6F6E 7472 |
145 6F6C 00 |
148 __c.16: |
149 00de 4449 5341 .string "DISABLED" |
149 424C 4544 |
149 00 |
152 __c.17: |
153 00e7 6163 742E .string "act. bearing" |
153 2062 6561 |
153 7269 6E67 |
153 00 |
156 __c.18: |
157 00f4 4E69 636B .string "Nick: %5i" |
157 3A20 2020 |
157 2020 2025 |
157 3569 00 |
160 __c.19: |
161 0103 526F 6C6C .string "Roll: %5i" |
161 3A20 2020 |
161 2020 2025 |
161 3569 00 |
164 __c.20: |
165 0112 436F 6D70 .string "Compass: %5i" |
165 6173 733A |
165 2020 2025 |
165 3569 00 |
168 __c.21: |
169 0121 4B31 3A25 .string "K1:%4i K2:%4i " |
169 3469 2020 |
169 4B32 3A25 |
169 3469 2000 |
172 __c.22: |
173 0131 4B33 3A25 .string "K3:%4i K4:%4i " |
173 3469 2020 |
173 4B34 3A25 |
173 3469 2000 |
176 __c.23: |
177 0141 4B35 3A25 .string "K5:%4i K6:%4i " |
177 3469 2020 |
177 4B36 3A25 |
177 3469 2000 |
180 __c.24: |
181 0151 4B37 3A25 .string "K7:%4i K8:%4i " |
181 3469 2020 |
181 4B38 3A25 |
181 3469 2000 |
184 __c.25: |
185 0161 4E69 3A25 .string "Ni:%4i Ro:%4i " |
185 3469 2020 |
185 526F 3A25 |
185 3469 2000 |
188 __c.26: |
189 0171 4773 3A25 .string "Gs:%4i Gi:%4i " |
189 3469 2020 |
189 4769 3A25 |
189 3469 2000 |
192 __c.27: |
193 0181 5031 3A25 .string "P1:%4i P2:%4i " |
193 3469 2020 |
193 5032 3A25 |
193 3469 2000 |
196 __c.28: |
197 0191 5033 3A25 .string "P3:%4i P4:%4i " |
197 3469 2020 |
197 5034 3A25 |
197 3469 2000 |
200 __c.29: |
201 01a1 4779 726F .string "Gyro - Sensor" |
201 202D 2053 |
201 656E 736F |
201 7200 |
204 __c.30: |
205 01af 4E69 636B .string "Nick%4i (%3i.%i)" |
205 2534 6920 |
205 2825 3369 |
205 2E25 6929 |
205 00 |
208 __c.31: |
209 01c0 526F 6C6C .string "Roll%4i (%3i.%i)" |
209 2534 6920 |
209 2825 3369 |
209 2E25 6929 |
209 00 |
212 __c.32: |
213 01d1 4769 6572 .string "Gier%4i (%3i)" |
213 2534 6920 |
213 2825 3369 |
213 2900 |
216 __c.33: |
217 01df 4E69 636B .string "Nick %4i (%3i.%x)" |
217 2025 3469 |
217 2028 2533 |
217 692E 2578 |
217 2900 |
220 __c.34: |
221 01f1 526F 6C6C .string "Roll %4i (%3i.%x)" |
221 2025 3469 |
221 2028 2533 |
221 692E 2578 |
221 2900 |
224 __c.35: |
225 0203 5961 7720 .string "Yaw %4i (%3i)" |
225 2025 3469 |
225 2028 2533 |
225 6929 00 |
228 __c.36: |
229 0212 4E69 636B .string "Nick %4i (%3i)(%3i)" |
229 2025 3469 |
229 2028 2533 |
229 6929 2825 |
229 3369 2900 |
232 __c.37: |
233 0226 526F 6C6C .string "Roll %4i (%3i)(%3i)" |
233 2025 3469 |
233 2028 2533 |
233 6929 2825 |
233 3369 2900 |
236 __c.38: |
237 023a 5961 7720 .string "Yaw %4i (%3i)(%3i)" |
237 2025 3469 |
237 2028 2533 |
237 6929 2825 |
237 3369 2900 |
240 __c.39: |
241 024e 4143 4320 .string "ACC - Sensor" |
241 2D20 5365 |
241 6E73 6F72 |
241 00 |
244 __c.40: |
245 025b 4E69 636B .string "Nick %4i (%3i)" |
245 2025 3469 |
245 2028 2533 |
245 6929 00 |
248 __c.41: |
249 026a 526F 6C6C .string "Roll %4i (%3i)" |
249 2025 3469 |
249 2028 2533 |
249 6929 00 |
252 __c.42: |
253 0279 5A20 2020 .string "Z %4i (%3i)" |
253 2025 3469 |
253 2028 2533 |
253 6929 00 |
256 __c.43: |
257 0288 566F 6C74 .string "Voltage: %3i.%1iV" |
257 6167 653A |
257 2020 2025 |
257 3369 2E25 |
257 3169 5600 |
260 __c.44: |
261 029c 4375 7272 .string "Current: %3i.%1iA" |
261 656E 743A |
261 2020 2025 |
261 3369 2E25 |
261 3169 4100 |
264 __c.45: |
265 02b0 506F 7765 .string "Power: %4iW" |
265 723A 2020 |
265 2020 2025 |
265 3469 5700 |
268 __c.46: |
269 02c0 4469 7363 .string "Discharge: %5imAh" |
269 6861 7267 |
269 653A 2025 |
269 3569 6D41 |
269 6800 |
272 __c.47: |
273 02d2 5265 6365 .string "Receiver" |
273 6976 6572 |
273 00 |
276 __c.48: |
277 02db 5243 2D52 .string "RC-RSSI: %4i" |
277 5353 493A |
277 2020 2020 |
277 2534 6900 |
280 __c.49: |
281 02eb 5243 2D51 .string "RC-Quality: %4i" |
281 7561 6C69 |
281 7479 3A20 |
281 2534 6900 |
284 __c.50: |
285 02fb 5243 2D43 .string "RC-Channels:%4i" |
285 6861 6E6E |
285 656C 733A |
285 2534 6900 |
288 __c.51: |
289 030b 436F 6D70 .string "Compass" |
289 6173 7300 |
292 __c.52: |
293 0313 4865 6164 .string "Heading: %5i" |
293 696E 673A |
293 2020 2535 |
293 6900 |
296 __c.53: |
297 0321 5661 6C75 .string "Value: %5i" |
297 653A 2020 |
297 2020 2535 |
297 6900 |
300 __c.54: |
301 032f 5374 6172 .string "Start: %5i" |
301 743A 2020 |
301 2020 2535 |
301 6900 |
304 __c.55: |
305 033d 506F 7469 .string "Poti1: %3i" |
305 313A 2020 |
305 2533 6900 |
308 __c.56: |
309 0349 506F 7469 .string "Poti2: %3i" |
309 323A 2020 |
309 2533 6900 |
312 __c.57: |
313 0355 506F 7469 .string "Poti3: %3i" |
313 333A 2020 |
313 2533 6900 |
316 __c.58: |
317 0361 506F 7469 .string "Poti4: %3i" |
317 343A 2020 |
317 2533 6900 |
320 __c.59: |
321 036d 506F 7469 .string "Poti5: %3i" |
321 353A 2020 |
321 2533 6900 |
324 __c.60: |
325 0379 506F 7469 .string "Poti6: %3i" |
325 363A 2020 |
325 2533 6900 |
328 __c.61: |
329 0385 506F 7469 .string "Poti7: %3i" |
329 373A 2020 |
329 2533 6900 |
332 __c.62: |
333 0391 506F 7469 .string "Poti8: %3i" |
333 383A 2020 |
333 2533 6900 |
336 __c.63: |
337 039d 5365 7276 .string "Servo " |
337 6F20 2000 |
340 __c.64: |
341 03a5 5365 7470 .string "Setpoint %3i" |
341 6F69 6E74 |
341 2020 2533 |
341 6900 |
344 __c.65: |
345 03b3 506F 7369 .string "Position: %3i" |
345 7469 6F6E |
345 3A20 2533 |
345 6900 |
348 __c.66: |
349 03c1 5261 6E67 .string "Range:%3i-%3i" |
349 653A 2533 |
349 692D 2533 |
349 6900 |
352 __c.67: |
353 03cf 4578 7465 .string "ExternControl " |
353 726E 436F |
353 6E74 726F |
353 6C20 2000 |
356 __c.68: |
357 03df 4E69 3A25 .string "Ni:%4i Ro:%4i " |
357 3469 2020 |
357 526F 3A25 |
357 3469 2000 |
360 __c.69: |
361 03ef 4773 3A25 .string "Gs:%4i Gi:%4i " |
361 3469 2020 |
361 4769 3A25 |
361 3469 2000 |
364 __c.70: |
365 03ff 4869 3A25 .string "Hi:%4i Cf:%4i " |
365 3469 2020 |
365 4366 3A25 |
365 3469 2000 |
368 __c.71: |
369 040f 424C 2D43 .string "BL-Ctrl Errors " |
369 7472 6C20 |
369 4572 726F |
369 7273 2000 |
372 __c.72: |
373 041f 2533 6420 .string "%3d %3d %3d %3d " |
373 2533 6420 |
373 2533 6420 |
373 2533 6420 |
373 00 |
376 __c.73: |
377 0430 2533 6420 .string "%3d %3d %3d %3d " |
377 2533 6420 |
377 2533 6420 |
377 2533 6420 |
377 00 |
380 __c.74: |
381 0441 2533 6420 .string "%3d %3d %3d %3d " |
381 2533 6420 |
381 2533 6420 |
381 2533 6420 |
381 00 |
384 __c.75: |
385 0452 424C 2054 .string "BL Temperature" |
385 656D 7065 |
385 7261 7475 |
385 7265 00 |
388 __c.76: |
389 0461 2533 6920 .string "%3i %3i %3i %3i " |
389 2533 6920 |
389 2533 6920 |
389 2533 6920 |
389 00 |
392 __c.77: |
393 0472 2533 6920 .string "%3i %3i %3i %3i " |
393 2533 6920 |
393 2533 6920 |
393 2533 6920 |
393 00 |
396 __c.78: |
397 0483 2533 6920 .string "%3i %3i %3i %3i " |
397 2533 6920 |
397 2533 6920 |
397 2533 6920 |
397 00 |
400 __c.79: |
401 0494 424C 2D43 .string "BL-Ctrl found " |
401 7472 6C20 |
401 666F 756E |
401 6420 00 |
404 __c.80: |
405 04a3 2025 6320 .string " %c %c %c %c " |
405 2020 2563 |
405 2020 2025 |
405 6320 2020 |
405 2563 2000 |
408 __c.81: |
409 04b7 2025 6320 .string " %c %c %c %c " |
409 2020 2563 |
409 2020 2025 |
409 6320 2020 |
409 2563 2000 |
412 __c.82: |
413 04cb 2025 6320 .string " %c - - - " |
413 2020 2D20 |
413 2020 2D20 |
413 2020 2D20 |
413 00 |
416 __c.83: |
417 04dc 3130 00 .string "10" |
420 __c.84: |
421 04df 3131 00 .string "11" |
424 __c.85: |
425 04e2 3132 00 .string "12" |
428 __c.86: |
429 04e5 466C 6967 .string "Flight-Time " |
429 6874 2D54 |
429 696D 6520 |
429 2000 |
432 __c.87: |
433 04f3 546F 7461 .string "Total:%5umin" |
433 6C3A 2535 |
433 756D 696E |
433 00 |
436 __c.88: |
437 0500 4163 743A .string "Act: %5umin" |
437 2020 2535 |
437 756D 696E |
437 00 |
440 __c.89: |
441 050d 2872 6573 .string "(reset)" |
441 6574 2900 |
442 .text |
443 .global Menu |
445 Menu: |
446 /* prologue: frame size=0 */ |
447 0028 EF92 push r14 |
448 002a FF92 push r15 |
449 002c 0F93 push r16 |
450 002e 1F93 push r17 |
451 0030 CF93 push r28 |
452 0032 DF93 push r29 |
453 /* prologue end (size=6) */ |
454 0034 2091 0000 lds r18,RemoteKeys |
455 0038 20FF sbrs r18,0 |
456 003a 0AC0 rjmp .L10 |
457 003c 8091 0000 lds r24,MenuePunkt |
458 0040 8823 tst r24 |
459 0042 11F0 breq .L11 |
460 0044 8150 subi r24,lo8(-(-1)) |
461 0046 02C0 rjmp .L83 |
462 .L11: |
463 0048 8091 0000 lds r24,MaxMenue |
464 .L83: |
465 004c 8093 0000 sts MenuePunkt,r24 |
466 .L10: |
467 0050 21FF sbrs r18,1 |
468 0052 0CC0 rjmp .L13 |
469 0054 9091 0000 lds r25,MenuePunkt |
470 0058 8091 0000 lds r24,MaxMenue |
471 005c 9817 cp r25,r24 |
472 005e 19F4 brne .L14 |
473 0060 1092 0000 sts MenuePunkt,__zero_reg__ |
474 0064 03C0 rjmp .L13 |
475 .L14: |
476 0066 9F5F subi r25,lo8(-(1)) |
477 0068 9093 0000 sts MenuePunkt,r25 |
478 .L13: |
479 006c 822F mov r24,r18 |
480 006e 9927 clr r25 |
481 0070 80FF sbrs r24,0 |
482 0072 04C0 rjmp .L16 |
483 0074 81FF sbrs r24,1 |
484 0076 02C0 rjmp .L16 |
485 0078 1092 0000 sts MenuePunkt,__zero_reg__ |
486 .L16: |
487 007c 0E94 0000 call LcdClear |
488 0080 8091 0000 lds r24,MenuePunkt |
489 0084 282F mov r18,r24 |
490 0086 3327 clr r19 |
491 0088 50E0 ldi r21,lo8(pm(Menu_Putchar)) |
492 008a E52E mov r14,r21 |
493 008c 50E0 ldi r21,hi8(pm(Menu_Putchar)) |
494 008e F52E mov r15,r21 |
495 0090 C091 0000 lds r28,_printf_P |
496 0094 D091 0000 lds r29,(_printf_P)+1 |
497 0098 8A30 cpi r24,lo8(10) |
498 009a 98F4 brsh .L17 |
499 009c 81E1 ldi r24,lo8(17) |
500 009e 8093 0000 sts DispPtr,r24 |
501 00a2 3F93 push r19 |
502 00a4 2F93 push r18 |
503 00a6 80E0 ldi r24,lo8(__c.0) |
504 00a8 90E0 ldi r25,hi8(__c.0) |
505 00aa 9F93 push r25 |
506 00ac 8F93 push r24 |
507 00ae FF92 push r15 |
508 00b0 EF92 push r14 |
509 00b2 FE01 movw r30,r28 |
510 00b4 0995 icall |
511 00b6 2DB7 in r18,__SP_L__ |
512 00b8 3EB7 in r19,__SP_H__ |
513 00ba 2A5F subi r18,lo8(-(6)) |
514 00bc 3F4F sbci r19,hi8(-(6)) |
515 00be 2DBF out __SP_L__,r18 |
516 00c0 11C0 rjmp .L18 |
517 .L17: |
518 00c2 80E1 ldi r24,lo8(16) |
519 00c4 8093 0000 sts DispPtr,r24 |
520 00c8 3F93 push r19 |
521 00ca 2F93 push r18 |
522 00cc 80E0 ldi r24,lo8(__c.1) |
523 00ce 90E0 ldi r25,hi8(__c.1) |
524 00d0 9F93 push r25 |
525 00d2 8F93 push r24 |
526 00d4 FF92 push r15 |
527 00d6 EF92 push r14 |
528 00d8 FE01 movw r30,r28 |
529 00da 0995 icall |
530 00dc 8DB7 in r24,__SP_L__ |
531 00de 9EB7 in r25,__SP_H__ |
532 00e0 0696 adiw r24,6 |
533 00e2 8DBF out __SP_L__,r24 |
534 .L18: |
535 00e4 2091 0000 lds r18,MenuePunkt |
536 00e8 822F mov r24,r18 |
537 00ea 9927 clr r25 |
538 00ec AA27 clr r26 |
539 00ee BB27 clr r27 |
540 00f0 FC01 movw r30,r24 |
541 00f2 4297 sbiw r24,18 |
542 00f4 10F0 brlo .+4 |
543 00f6 0C94 0000 jmp .L80 |
544 00fa E050 subi r30,lo8(-(pm(.L82))) |
545 00fc F040 sbci r31,hi8(-(pm(.L82))) |
546 00fe 40E0 ldi r20,lo8(pm(Menu_Putchar)) |
547 0100 E42E mov r14,r20 |
548 0102 40E0 ldi r20,hi8(pm(Menu_Putchar)) |
549 0104 F42E mov r15,r20 |
550 0106 C091 0000 lds r28,_printf_P |
551 010a D091 0000 lds r29,(_printf_P)+1 |
552 010e 0C94 0000 jmp __tablejump2__ |
553 .data |
554 .section .progmem.gcc_sw_table, "a", @progbits |
555 .p2align 1 |
556 .L82: |
557 0000 0000 .word pm(.L20) |
558 0002 0000 .word pm(.L28) |
559 0004 0000 .word pm(.L31) |
560 0006 0000 .word pm(.L34) |
561 0008 0000 .word pm(.L35) |
562 000a 0000 .word pm(.L36) |
563 000c 0000 .word pm(.L63) |
564 000e 0000 .word pm(.L64) |
565 0010 0000 .word pm(.L65) |
566 0012 0000 .word pm(.L66) |
567 0014 0000 .word pm(.L67) |
568 0016 0000 .word pm(.L68) |
569 0018 0000 .word pm(.L69) |
570 001a 0000 .word pm(.L71) |
571 001c 0000 .word pm(.L72) |
572 001e 0000 .word pm(.L73) |
573 0020 0000 .word pm(.L74) |
574 0022 0000 .word pm(.L78) |
575 .text |
576 .L20: |
577 0112 1092 0000 sts DispPtr,__zero_reg__ |
578 0116 80E0 ldi r24,lo8(__c.2) |
579 0118 90E0 ldi r25,hi8(__c.2) |
580 011a 9F93 push r25 |
581 011c 8F93 push r24 |
582 011e 00E0 ldi r16,lo8(pm(Menu_Putchar)) |
583 0120 10E0 ldi r17,hi8(pm(Menu_Putchar)) |
584 0122 FF92 push r15 |
585 0124 EF92 push r14 |
586 0126 FE01 movw r30,r28 |
587 0128 0995 icall |
588 012a 84E1 ldi r24,lo8(20) |
589 012c 8093 0000 sts DispPtr,r24 |
590 0130 0F90 pop __tmp_reg__ |
591 0132 0F90 pop __tmp_reg__ |
592 0134 0F90 pop __tmp_reg__ |
593 0136 0F90 pop __tmp_reg__ |
594 0138 81E6 ldi r24,lo8(97) |
595 013a 90E0 ldi r25,hi8(97) |
596 013c 9F93 push r25 |
597 013e 8F93 push r24 |
598 0140 82E5 ldi r24,lo8(82) |
599 0142 90E0 ldi r25,hi8(82) |
600 0144 9F93 push r25 |
601 0146 8F93 push r24 |
602 0148 1F92 push __zero_reg__ |
603 014a 1F92 push __zero_reg__ |
604 014c 8091 0000 lds r24,PlatinenVersion |
605 0150 6AE0 ldi r22,lo8(10) |
606 0152 0E94 0000 call __udivmodqi4 |
607 0156 892F mov r24,r25 |
608 0158 9927 clr r25 |
609 015a 9F93 push r25 |
610 015c 8F93 push r24 |
611 015e 8091 0000 lds r24,PlatinenVersion |
612 0162 0E94 0000 call __udivmodqi4 |
613 0166 9927 clr r25 |
614 0168 9F93 push r25 |
615 016a 8F93 push r24 |
616 016c 80E0 ldi r24,lo8(__c.3) |
617 016e 90E0 ldi r25,hi8(__c.3) |
618 0170 9F93 push r25 |
619 0172 8F93 push r24 |
620 0174 FF92 push r15 |
621 0176 EF92 push r14 |
622 0178 E091 0000 lds r30,_printf_P |
623 017c F091 0000 lds r31,(_printf_P)+1 |
624 0180 0995 icall |
625 0182 88E2 ldi r24,lo8(40) |
626 0184 8093 0000 sts DispPtr,r24 |
627 0188 2DB7 in r18,__SP_L__ |
628 018a 3EB7 in r19,__SP_H__ |
629 018c 225F subi r18,lo8(-(14)) |
630 018e 3F4F sbci r19,hi8(-(14)) |
631 0190 2DBF out __SP_L__,r18 |
632 0192 80E0 ldi r24,lo8(Mixer+1) |
633 0194 90E0 ldi r25,hi8(Mixer+1) |
634 0196 9F93 push r25 |
635 0198 8F93 push r24 |
636 019a 0E94 0000 call GetActiveParamSet |
637 019e 9927 clr r25 |
638 01a0 9F93 push r25 |
639 01a2 8F93 push r24 |
640 01a4 80E0 ldi r24,lo8(__c.4) |
641 01a6 90E0 ldi r25,hi8(__c.4) |
642 01a8 9F93 push r25 |
643 01aa 8F93 push r24 |
644 01ac FF92 push r15 |
645 01ae EF92 push r14 |
646 01b0 E091 0000 lds r30,_printf_P |
647 01b4 F091 0000 lds r31,(_printf_P)+1 |
648 01b8 0995 icall |
649 01ba 8DB7 in r24,__SP_L__ |
650 01bc 9EB7 in r25,__SP_H__ |
651 01be 0896 adiw r24,8 |
652 01c0 8DBF out __SP_L__,r24 |
653 01c2 9091 0000 lds r25,VersionInfo+5 |
654 01c6 9923 tst r25 |
655 01c8 51F0 breq .L21 |
656 01ca 8CE3 ldi r24,lo8(60) |
657 01cc 8093 0000 sts DispPtr,r24 |
658 01d0 892F mov r24,r25 |
659 01d2 9927 clr r25 |
660 01d4 9F93 push r25 |
661 01d6 8F93 push r24 |
662 01d8 80E0 ldi r24,lo8(__c.5) |
663 01da 90E0 ldi r25,hi8(__c.5) |
664 01dc 81C6 rjmp .L94 |
665 .L21: |
666 01de 9091 0000 lds r25,MissingMotor |
667 01e2 9923 tst r25 |
668 01e4 71F0 breq .L23 |
669 01e6 8CE3 ldi r24,lo8(60) |
670 01e8 8093 0000 sts DispPtr,r24 |
671 01ec 892F mov r24,r25 |
672 01ee 9927 clr r25 |
673 01f0 9F93 push r25 |
674 01f2 8F93 push r24 |
675 01f4 80E0 ldi r24,lo8(__c.6) |
676 01f6 90E0 ldi r25,hi8(__c.6) |
677 01f8 9F93 push r25 |
678 01fa 8F93 push r24 |
679 01fc 1F93 push r17 |
680 01fe 0F93 push r16 |
681 0200 91C0 rjmp .L87 |
682 .L23: |
683 0202 8091 0000 lds r24,VersionInfo+6 |
684 0206 84FF sbrs r24,4 |
685 0208 07C0 rjmp .L25 |
686 020a 8CE3 ldi r24,lo8(60) |
687 020c 8093 0000 sts DispPtr,r24 |
688 0210 80E0 ldi r24,lo8(__c.7) |
689 0212 90E0 ldi r25,hi8(__c.7) |
690 0214 0C94 0000 jmp .L92 |
691 .L25: |
692 0218 8091 0000 lds r24,I2CTimeout |
693 021c 9091 0000 lds r25,(I2CTimeout)+1 |
694 0220 0697 sbiw r24,6 |
695 0222 10F0 brlo .+4 |
696 0224 0C94 0000 jmp .L19 |
697 0228 8CE3 ldi r24,lo8(60) |
698 022a 8093 0000 sts DispPtr,r24 |
699 022e 80E0 ldi r24,lo8(__c.8) |
700 0230 90E0 ldi r25,hi8(__c.8) |
701 0232 0C94 0000 jmp .L92 |
702 .L28: |
703 0236 8091 0000 lds r24,EE_Parameter+13 |
704 023a 30E0 ldi r19,lo8(pm(Menu_Putchar)) |
705 023c E32E mov r14,r19 |
706 023e 30E0 ldi r19,hi8(pm(Menu_Putchar)) |
707 0240 F32E mov r15,r19 |
708 0242 C091 0000 lds r28,_printf_P |
709 0246 D091 0000 lds r29,(_printf_P)+1 |
710 024a 80FF sbrs r24,0 |
711 024c 74C0 rjmp .L29 |
712 024e 1092 0000 sts DispPtr,__zero_reg__ |
713 0252 8091 0000 lds r24,HoehenWert |
714 0256 9091 0000 lds r25,(HoehenWert)+1 |
715 025a A091 0000 lds r26,(HoehenWert)+2 |
716 025e B091 0000 lds r27,(HoehenWert)+3 |
717 0262 BC01 movw r22,r24 |
718 0264 CD01 movw r24,r26 |
719 0266 25E0 ldi r18,lo8(5) |
720 0268 30E0 ldi r19,hi8(5) |
721 026a 40E0 ldi r20,hlo8(5) |
722 026c 50E0 ldi r21,hhi8(5) |
723 026e 0E94 0000 call __divmodsi4 |
724 0272 3F93 push r19 |
725 0274 2F93 push r18 |
726 0276 80E0 ldi r24,lo8(__c.9) |
727 0278 90E0 ldi r25,hi8(__c.9) |
728 027a 9F93 push r25 |
729 027c 8F93 push r24 |
730 027e FF92 push r15 |
731 0280 EF92 push r14 |
732 0282 FE01 movw r30,r28 |
733 0284 0995 icall |
734 0286 84E1 ldi r24,lo8(20) |
735 0288 8093 0000 sts DispPtr,r24 |
736 028c 2DB7 in r18,__SP_L__ |
737 028e 3EB7 in r19,__SP_H__ |
738 0290 2A5F subi r18,lo8(-(6)) |
739 0292 3F4F sbci r19,hi8(-(6)) |
740 0294 2DBF out __SP_L__,r18 |
741 0296 8091 0000 lds r24,SollHoehe |
742 029a 9091 0000 lds r25,(SollHoehe)+1 |
743 029e A091 0000 lds r26,(SollHoehe)+2 |
744 02a2 B091 0000 lds r27,(SollHoehe)+3 |
745 02a6 BC01 movw r22,r24 |
746 02a8 CD01 movw r24,r26 |
747 02aa 25E0 ldi r18,lo8(5) |
748 02ac 30E0 ldi r19,hi8(5) |
749 02ae 40E0 ldi r20,hlo8(5) |
750 02b0 50E0 ldi r21,hhi8(5) |
751 02b2 0E94 0000 call __divmodsi4 |
752 02b6 3F93 push r19 |
753 02b8 2F93 push r18 |
754 02ba 80E0 ldi r24,lo8(__c.10) |
755 02bc 90E0 ldi r25,hi8(__c.10) |
756 02be 9F93 push r25 |
757 02c0 8F93 push r24 |
758 02c2 FF92 push r15 |
759 02c4 EF92 push r14 |
760 02c6 E091 0000 lds r30,_printf_P |
761 02ca F091 0000 lds r31,(_printf_P)+1 |
762 02ce 0995 icall |
763 02d0 88E2 ldi r24,lo8(40) |
764 02d2 8093 0000 sts DispPtr,r24 |
765 02d6 8DB7 in r24,__SP_L__ |
766 02d8 9EB7 in r25,__SP_H__ |
767 02da 0696 adiw r24,6 |
768 02dc 8DBF out __SP_L__,r24 |
769 02de 8091 0000 lds r24,MessLuftdruck |
770 02e2 9091 0000 lds r25,(MessLuftdruck)+1 |
771 02e6 9F93 push r25 |
772 02e8 8F93 push r24 |
773 02ea 80E0 ldi r24,lo8(__c.11) |
774 02ec 90E0 ldi r25,hi8(__c.11) |
775 02ee 9F93 push r25 |
776 02f0 8F93 push r24 |
777 02f2 FF92 push r15 |
778 02f4 EF92 push r14 |
779 02f6 E091 0000 lds r30,_printf_P |
780 02fa F091 0000 lds r31,(_printf_P)+1 |
781 02fe 0995 icall |
782 0300 8CE3 ldi r24,lo8(60) |
783 0302 8093 0000 sts DispPtr,r24 |
784 0306 2DB7 in r18,__SP_L__ |
785 0308 3EB7 in r19,__SP_H__ |
786 030a 2A5F subi r18,lo8(-(6)) |
787 030c 3F4F sbci r19,hi8(-(6)) |
788 030e 2DBF out __SP_L__,r18 |
789 0310 87B5 in r24,71-0x20 |
790 0312 9927 clr r25 |
791 0314 9F93 push r25 |
792 0316 8F93 push r24 |
793 0318 80E0 ldi r24,lo8(__c.12) |
794 031a 90E0 ldi r25,hi8(__c.12) |
795 .L93: |
796 031c 9F93 push r25 |
797 031e 8F93 push r24 |
798 0320 FF92 push r15 |
799 0322 EF92 push r14 |
800 .L87: |
801 0324 E091 0000 lds r30,_printf_P |
802 0328 F091 0000 lds r31,(_printf_P)+1 |
803 032c 0995 icall |
804 032e 8DB7 in r24,__SP_L__ |
805 0330 9EB7 in r25,__SP_H__ |
806 0332 0696 adiw r24,6 |
807 0334 33C7 rjmp .L85 |
808 .L29: |
809 0336 1092 0000 sts DispPtr,__zero_reg__ |
810 033a 80E0 ldi r24,lo8(__c.13) |
811 033c 90E0 ldi r25,hi8(__c.13) |
812 033e 9F93 push r25 |
813 0340 8F93 push r24 |
814 0342 FF92 push r15 |
815 0344 EF92 push r14 |
816 0346 FE01 movw r30,r28 |
817 0348 0995 icall |
818 034a 84E1 ldi r24,lo8(20) |
819 034c 8093 0000 sts DispPtr,r24 |
820 0350 0F90 pop __tmp_reg__ |
821 0352 0F90 pop __tmp_reg__ |
822 0354 0F90 pop __tmp_reg__ |
823 0356 0F90 pop __tmp_reg__ |
824 0358 80E0 ldi r24,lo8(__c.14) |
825 035a 90E0 ldi r25,hi8(__c.14) |
826 035c 9F93 push r25 |
827 035e 8F93 push r24 |
828 0360 FF92 push r15 |
829 0362 EF92 push r14 |
830 0364 E091 0000 lds r30,_printf_P |
831 0368 F091 0000 lds r31,(_printf_P)+1 |
832 036c 0995 icall |
833 036e 88E2 ldi r24,lo8(40) |
834 0370 8093 0000 sts DispPtr,r24 |
835 0374 0F90 pop __tmp_reg__ |
836 0376 0F90 pop __tmp_reg__ |
837 0378 0F90 pop __tmp_reg__ |
838 037a 0F90 pop __tmp_reg__ |
839 037c 80E0 ldi r24,lo8(__c.15) |
840 037e 90E0 ldi r25,hi8(__c.15) |
841 0380 9F93 push r25 |
842 0382 8F93 push r24 |
843 0384 FF92 push r15 |
844 0386 EF92 push r14 |
845 0388 E091 0000 lds r30,_printf_P |
846 038c F091 0000 lds r31,(_printf_P)+1 |
847 0390 0995 icall |
848 0392 8CE3 ldi r24,lo8(60) |
849 0394 8093 0000 sts DispPtr,r24 |
850 0398 0F90 pop __tmp_reg__ |
851 039a 0F90 pop __tmp_reg__ |
852 039c 0F90 pop __tmp_reg__ |
853 039e 0F90 pop __tmp_reg__ |
854 03a0 80E0 ldi r24,lo8(__c.16) |
855 03a2 90E0 ldi r25,hi8(__c.16) |
856 03a4 9F93 push r25 |
857 03a6 8F93 push r24 |
858 03a8 FF92 push r15 |
859 03aa EF92 push r14 |
860 03ac 0C94 0000 jmp .L86 |
861 .L31: |
862 03b0 1092 0000 sts DispPtr,__zero_reg__ |
863 03b4 80E0 ldi r24,lo8(__c.17) |
864 03b6 90E0 ldi r25,hi8(__c.17) |
865 03b8 9F93 push r25 |
866 03ba 8F93 push r24 |
867 03bc 00E0 ldi r16,lo8(pm(Menu_Putchar)) |
868 03be 10E0 ldi r17,hi8(pm(Menu_Putchar)) |
869 03c0 FF92 push r15 |
870 03c2 EF92 push r14 |
871 03c4 FE01 movw r30,r28 |
872 03c6 0995 icall |
873 03c8 84E1 ldi r24,lo8(20) |
874 03ca 8093 0000 sts DispPtr,r24 |
875 03ce 0F90 pop __tmp_reg__ |
876 03d0 0F90 pop __tmp_reg__ |
877 03d2 0F90 pop __tmp_reg__ |
878 03d4 0F90 pop __tmp_reg__ |
879 03d6 8091 0000 lds r24,IntegralNick |
880 03da 9091 0000 lds r25,(IntegralNick)+1 |
881 03de A091 0000 lds r26,(IntegralNick)+2 |
882 03e2 B091 0000 lds r27,(IntegralNick)+3 |
883 03e6 B7FF sbrs r27,7 |
884 03e8 04C0 rjmp .L32 |
885 03ea 8150 subi r24,lo8(-(1023)) |
886 03ec 9C4F sbci r25,hi8(-(1023)) |
887 03ee AF4F sbci r26,hlo8(-(1023)) |
888 03f0 BF4F sbci r27,hhi8(-(1023)) |
889 .L32: |
890 03f2 2AE0 ldi r18,10 |
891 03f4 B595 1: asr r27 |
892 03f6 A795 ror r26 |
893 03f8 9795 ror r25 |
894 03fa 8795 ror r24 |
895 03fc 2A95 dec r18 |
896 03fe D1F7 brne 1b |
897 0400 BF93 push r27 |
898 0402 AF93 push r26 |
899 0404 9F93 push r25 |
900 0406 8F93 push r24 |
901 0408 80E0 ldi r24,lo8(__c.18) |
902 040a 90E0 ldi r25,hi8(__c.18) |
903 040c 9F93 push r25 |
904 040e 8F93 push r24 |
905 0410 1F93 push r17 |
906 0412 0F93 push r16 |
907 0414 E091 0000 lds r30,_printf_P |
908 0418 F091 0000 lds r31,(_printf_P)+1 |
909 041c 0995 icall |
910 041e 88E2 ldi r24,lo8(40) |
911 0420 8093 0000 sts DispPtr,r24 |
912 0424 2DB7 in r18,__SP_L__ |
913 0426 3EB7 in r19,__SP_H__ |
914 0428 285F subi r18,lo8(-(8)) |
915 042a 3F4F sbci r19,hi8(-(8)) |
916 042c 2DBF out __SP_L__,r18 |
917 042e 8091 0000 lds r24,IntegralRoll |
918 0432 9091 0000 lds r25,(IntegralRoll)+1 |
919 0436 A091 0000 lds r26,(IntegralRoll)+2 |
920 043a B091 0000 lds r27,(IntegralRoll)+3 |
921 043e B7FF sbrs r27,7 |
922 0440 04C0 rjmp .L33 |
923 0442 8150 subi r24,lo8(-(1023)) |
924 0444 9C4F sbci r25,hi8(-(1023)) |
925 0446 AF4F sbci r26,hlo8(-(1023)) |
926 0448 BF4F sbci r27,hhi8(-(1023)) |
927 .L33: |
928 044a CAE0 ldi r28,10 |
929 044c B595 1: asr r27 |
930 044e A795 ror r26 |
931 0450 9795 ror r25 |
932 0452 8795 ror r24 |
933 0454 CA95 dec r28 |
934 0456 D1F7 brne 1b |
935 0458 BF93 push r27 |
936 045a AF93 push r26 |
937 045c 9F93 push r25 |
938 045e 8F93 push r24 |
939 0460 80E0 ldi r24,lo8(__c.19) |
940 0462 90E0 ldi r25,hi8(__c.19) |
941 0464 9F93 push r25 |
942 0466 8F93 push r24 |
943 0468 1F93 push r17 |
944 046a 0F93 push r16 |
945 046c E091 0000 lds r30,_printf_P |
946 0470 F091 0000 lds r31,(_printf_P)+1 |
947 0474 0995 icall |
948 0476 8CE3 ldi r24,lo8(60) |
949 0478 8093 0000 sts DispPtr,r24 |
950 047c 8DB7 in r24,__SP_L__ |
951 047e 9EB7 in r25,__SP_H__ |
952 0480 0896 adiw r24,8 |
953 0482 8DBF out __SP_L__,r24 |
954 0484 8091 0000 lds r24,KompassValue |
955 0488 9091 0000 lds r25,(KompassValue)+1 |
956 048c 9F93 push r25 |
957 048e 8F93 push r24 |
958 0490 80E0 ldi r24,lo8(__c.20) |
959 0492 90E0 ldi r25,hi8(__c.20) |
960 0494 9F93 push r25 |
961 0496 8F93 push r24 |
962 0498 1F93 push r17 |
963 049a 0F93 push r16 |
964 .L89: |
965 049c E091 0000 lds r30,_printf_P |
966 04a0 F091 0000 lds r31,(_printf_P)+1 |
967 04a4 0995 icall |
968 04a6 2DB7 in r18,__SP_L__ |
969 04a8 3EB7 in r19,__SP_H__ |
970 04aa 2A5F subi r18,lo8(-(6)) |
971 04ac 3F4F sbci r19,hi8(-(6)) |
972 04ae 11C7 rjmp .L84 |
973 .L34: |
974 04b0 1092 0000 sts DispPtr,__zero_reg__ |
975 04b4 8091 0000 lds r24,PPM_in+4 |
976 04b8 9091 0000 lds r25,(PPM_in+4)+1 |
977 04bc 9F93 push r25 |
978 04be 8F93 push r24 |
979 04c0 8091 0000 lds r24,PPM_in+2 |
980 04c4 9091 0000 lds r25,(PPM_in+2)+1 |
981 04c8 9F93 push r25 |
982 04ca 8F93 push r24 |
983 04cc 80E0 ldi r24,lo8(__c.21) |
984 04ce 90E0 ldi r25,hi8(__c.21) |
985 04d0 9F93 push r25 |
986 04d2 8F93 push r24 |
987 04d4 FF92 push r15 |
988 04d6 EF92 push r14 |
989 04d8 FE01 movw r30,r28 |
990 04da 0995 icall |
991 04dc 84E1 ldi r24,lo8(20) |
992 04de 8093 0000 sts DispPtr,r24 |
993 04e2 8DB7 in r24,__SP_L__ |
994 04e4 9EB7 in r25,__SP_H__ |
995 04e6 0896 adiw r24,8 |
996 04e8 8DBF out __SP_L__,r24 |
997 04ea 8091 0000 lds r24,PPM_in+8 |
998 04ee 9091 0000 lds r25,(PPM_in+8)+1 |
999 04f2 9F93 push r25 |
1000 04f4 8F93 push r24 |
1001 04f6 8091 0000 lds r24,PPM_in+6 |
1002 04fa 9091 0000 lds r25,(PPM_in+6)+1 |
1003 04fe 9F93 push r25 |
1004 0500 8F93 push r24 |
1005 0502 80E0 ldi r24,lo8(__c.22) |
1006 0504 90E0 ldi r25,hi8(__c.22) |
1007 0506 9F93 push r25 |
1008 0508 8F93 push r24 |
1009 050a FF92 push r15 |
1010 050c EF92 push r14 |
1011 050e E091 0000 lds r30,_printf_P |
1012 0512 F091 0000 lds r31,(_printf_P)+1 |
1013 0516 0995 icall |
1014 0518 88E2 ldi r24,lo8(40) |
1015 051a 8093 0000 sts DispPtr,r24 |
1016 051e 2DB7 in r18,__SP_L__ |
1017 0520 3EB7 in r19,__SP_H__ |
1018 0522 285F subi r18,lo8(-(8)) |
1019 0524 3F4F sbci r19,hi8(-(8)) |
1020 0526 2DBF out __SP_L__,r18 |
1021 0528 8091 0000 lds r24,PPM_in+12 |
1022 052c 9091 0000 lds r25,(PPM_in+12)+1 |
1023 0530 9F93 push r25 |
1024 0532 8F93 push r24 |
1025 0534 8091 0000 lds r24,PPM_in+10 |
1026 0538 9091 0000 lds r25,(PPM_in+10)+1 |
1027 053c 9F93 push r25 |
1028 053e 8F93 push r24 |
1029 0540 80E0 ldi r24,lo8(__c.23) |
1030 0542 90E0 ldi r25,hi8(__c.23) |
1031 0544 9F93 push r25 |
1032 0546 8F93 push r24 |
1033 0548 FF92 push r15 |
1034 054a EF92 push r14 |
1035 054c E091 0000 lds r30,_printf_P |
1036 0550 F091 0000 lds r31,(_printf_P)+1 |
1037 0554 0995 icall |
1038 0556 8CE3 ldi r24,lo8(60) |
1039 0558 8093 0000 sts DispPtr,r24 |
1040 055c 8DB7 in r24,__SP_L__ |
1041 055e 9EB7 in r25,__SP_H__ |
1042 0560 0896 adiw r24,8 |
1043 0562 8DBF out __SP_L__,r24 |
1044 0564 8091 0000 lds r24,PPM_in+16 |
1045 0568 9091 0000 lds r25,(PPM_in+16)+1 |
1046 056c 9F93 push r25 |
1047 056e 8F93 push r24 |
1048 0570 8091 0000 lds r24,PPM_in+14 |
1049 0574 9091 0000 lds r25,(PPM_in+14)+1 |
1050 0578 9F93 push r25 |
1051 057a 8F93 push r24 |
1052 057c 80E0 ldi r24,lo8(__c.24) |
1053 057e 90E0 ldi r25,hi8(__c.24) |
1054 0580 A2C0 rjmp .L90 |
1055 .L35: |
1056 0582 1092 0000 sts DispPtr,__zero_reg__ |
1057 0586 8091 0000 lds r24,EE_Parameter+2 |
1058 058a E82F mov r30,r24 |
1059 058c FF27 clr r31 |
1060 058e EE0F add r30,r30 |
1061 0590 FF1F adc r31,r31 |
1062 0592 E050 subi r30,lo8(-(PPM_in)) |
1063 0594 F040 sbci r31,hi8(-(PPM_in)) |
1064 0596 8081 ld r24,Z |
1065 0598 9181 ldd r25,Z+1 |
1066 059a 9F93 push r25 |
1067 059c 8F93 push r24 |
1068 059e 8091 0000 lds r24,EE_Parameter+1 |
1069 05a2 E82F mov r30,r24 |
1070 05a4 FF27 clr r31 |
1071 05a6 EE0F add r30,r30 |
1072 05a8 FF1F adc r31,r31 |
1073 05aa E050 subi r30,lo8(-(PPM_in)) |
1074 05ac F040 sbci r31,hi8(-(PPM_in)) |
1075 05ae 8081 ld r24,Z |
1076 05b0 9181 ldd r25,Z+1 |
1077 05b2 9F93 push r25 |
1078 05b4 8F93 push r24 |
1079 05b6 80E0 ldi r24,lo8(__c.25) |
1080 05b8 90E0 ldi r25,hi8(__c.25) |
1081 05ba 9F93 push r25 |
1082 05bc 8F93 push r24 |
1083 05be FF92 push r15 |
1084 05c0 EF92 push r14 |
1085 05c2 FE01 movw r30,r28 |
1086 05c4 0995 icall |
1087 05c6 84E1 ldi r24,lo8(20) |
1088 05c8 8093 0000 sts DispPtr,r24 |
1089 05cc 8DB7 in r24,__SP_L__ |
1090 05ce 9EB7 in r25,__SP_H__ |
1091 05d0 0896 adiw r24,8 |
1092 05d2 8DBF out __SP_L__,r24 |
1093 05d4 8091 0000 lds r24,EE_Parameter+4 |
1094 05d8 E82F mov r30,r24 |
1095 05da FF27 clr r31 |
1096 05dc EE0F add r30,r30 |
1097 05de FF1F adc r31,r31 |
1098 05e0 E050 subi r30,lo8(-(PPM_in)) |
1099 05e2 F040 sbci r31,hi8(-(PPM_in)) |
1100 05e4 8081 ld r24,Z |
1101 05e6 9181 ldd r25,Z+1 |
1102 05e8 9F93 push r25 |
1103 05ea 8F93 push r24 |
1104 05ec 8091 0000 lds r24,EE_Parameter+3 |
1105 05f0 E82F mov r30,r24 |
1106 05f2 FF27 clr r31 |
1107 05f4 EE0F add r30,r30 |
1108 05f6 FF1F adc r31,r31 |
1109 05f8 E050 subi r30,lo8(-(PPM_in)) |
1110 05fa F040 sbci r31,hi8(-(PPM_in)) |
1111 05fc 8081 ld r24,Z |
1112 05fe 9181 ldd r25,Z+1 |
1113 0600 8858 subi r24,lo8(-(120)) |
1114 0602 9F4F sbci r25,hi8(-(120)) |
1115 0604 9F93 push r25 |
1116 0606 8F93 push r24 |
1117 0608 80E0 ldi r24,lo8(__c.26) |
1118 060a 90E0 ldi r25,hi8(__c.26) |
1119 060c 9F93 push r25 |
1120 060e 8F93 push r24 |
1121 0610 FF92 push r15 |
1122 0612 EF92 push r14 |
1123 0614 E091 0000 lds r30,_printf_P |
1124 0618 F091 0000 lds r31,(_printf_P)+1 |
1125 061c 0995 icall |
1126 061e 88E2 ldi r24,lo8(40) |
1127 0620 8093 0000 sts DispPtr,r24 |
1128 0624 2DB7 in r18,__SP_L__ |
1129 0626 3EB7 in r19,__SP_H__ |
1130 0628 285F subi r18,lo8(-(8)) |
1131 062a 3F4F sbci r19,hi8(-(8)) |
1132 062c 2DBF out __SP_L__,r18 |
1133 062e 8091 0000 lds r24,EE_Parameter+6 |
1134 0632 E82F mov r30,r24 |
1135 0634 FF27 clr r31 |
1136 0636 EE0F add r30,r30 |
1137 0638 FF1F adc r31,r31 |
1138 063a E050 subi r30,lo8(-(PPM_in)) |
1139 063c F040 sbci r31,hi8(-(PPM_in)) |
1140 063e 8081 ld r24,Z |
1141 0640 9181 ldd r25,Z+1 |
1142 0642 8259 subi r24,lo8(-(110)) |
1143 0644 9F4F sbci r25,hi8(-(110)) |
1144 0646 9F93 push r25 |
1145 0648 8F93 push r24 |
1146 064a 8091 0000 lds r24,EE_Parameter+5 |
1147 064e E82F mov r30,r24 |
1148 0650 FF27 clr r31 |
1149 0652 EE0F add r30,r30 |
1150 0654 FF1F adc r31,r31 |
1151 0656 E050 subi r30,lo8(-(PPM_in)) |
1152 0658 F040 sbci r31,hi8(-(PPM_in)) |
1153 065a 8081 ld r24,Z |
1154 065c 9181 ldd r25,Z+1 |
1155 065e 8259 subi r24,lo8(-(110)) |
1156 0660 9F4F sbci r25,hi8(-(110)) |
1157 0662 9F93 push r25 |
1158 0664 8F93 push r24 |
1159 0666 80E0 ldi r24,lo8(__c.27) |
1160 0668 90E0 ldi r25,hi8(__c.27) |
1161 066a 9F93 push r25 |
1162 066c 8F93 push r24 |
1163 066e FF92 push r15 |
1164 0670 EF92 push r14 |
1165 0672 E091 0000 lds r30,_printf_P |
1166 0676 F091 0000 lds r31,(_printf_P)+1 |
1167 067a 0995 icall |
1168 067c 8CE3 ldi r24,lo8(60) |
1169 067e 8093 0000 sts DispPtr,r24 |
1170 0682 8DB7 in r24,__SP_L__ |
1171 0684 9EB7 in r25,__SP_H__ |
1172 0686 0896 adiw r24,8 |
1173 0688 8DBF out __SP_L__,r24 |
1174 068a 8091 0000 lds r24,EE_Parameter+8 |
1175 068e E82F mov r30,r24 |
1176 0690 FF27 clr r31 |
1177 0692 EE0F add r30,r30 |
1178 0694 FF1F adc r31,r31 |
1179 0696 E050 subi r30,lo8(-(PPM_in)) |
1180 0698 F040 sbci r31,hi8(-(PPM_in)) |
1181 069a 8081 ld r24,Z |
1182 069c 9181 ldd r25,Z+1 |
1183 069e 8259 subi r24,lo8(-(110)) |
1184 06a0 9F4F sbci r25,hi8(-(110)) |
1185 06a2 9F93 push r25 |
1186 06a4 8F93 push r24 |
1187 06a6 8091 0000 lds r24,EE_Parameter+7 |
1188 06aa E82F mov r30,r24 |
1189 06ac FF27 clr r31 |
1190 06ae EE0F add r30,r30 |
1191 06b0 FF1F adc r31,r31 |
1192 06b2 E050 subi r30,lo8(-(PPM_in)) |
1193 06b4 F040 sbci r31,hi8(-(PPM_in)) |
1194 06b6 8081 ld r24,Z |
1195 06b8 9181 ldd r25,Z+1 |
1196 06ba 8259 subi r24,lo8(-(110)) |
1197 06bc 9F4F sbci r25,hi8(-(110)) |
1198 06be 9F93 push r25 |
1199 06c0 8F93 push r24 |
1200 06c2 80E0 ldi r24,lo8(__c.28) |
1201 06c4 90E0 ldi r25,hi8(__c.28) |
1202 .L90: |
1203 06c6 9F93 push r25 |
1204 06c8 8F93 push r24 |
1205 06ca FF92 push r15 |
1206 06cc EF92 push r14 |
1207 .L91: |
1208 06ce E091 0000 lds r30,_printf_P |
1209 06d2 F091 0000 lds r31,(_printf_P)+1 |
1210 06d6 0995 icall |
1211 06d8 2DB7 in r18,__SP_L__ |
1212 06da 3EB7 in r19,__SP_H__ |
1213 06dc 285F subi r18,lo8(-(8)) |
1214 06de 3F4F sbci r19,hi8(-(8)) |
1215 06e0 F8C5 rjmp .L84 |
1216 .L36: |
1217 06e2 1092 0000 sts DispPtr,__zero_reg__ |
1218 06e6 80E0 ldi r24,lo8(__c.29) |
1219 06e8 90E0 ldi r25,hi8(__c.29) |
1220 06ea 9F93 push r25 |
1221 06ec 8F93 push r24 |
1222 06ee 00E0 ldi r16,lo8(pm(Menu_Putchar)) |
1223 06f0 10E0 ldi r17,hi8(pm(Menu_Putchar)) |
1224 06f2 FF92 push r15 |
1225 06f4 EF92 push r14 |
1226 06f6 FE01 movw r30,r28 |
1227 06f8 0995 icall |
1228 06fa 8091 0000 lds r24,PlatinenVersion |
1229 06fe 0F90 pop __tmp_reg__ |
1230 0700 0F90 pop __tmp_reg__ |
1231 0702 0F90 pop __tmp_reg__ |
1232 0704 0F90 pop __tmp_reg__ |
1233 0706 8A30 cpi r24,lo8(10) |
1234 0708 09F0 breq .+2 |
1235 070a 9DC0 rjmp .L37 |
1236 070c 84E1 ldi r24,lo8(20) |
1237 070e 8093 0000 sts DispPtr,r24 |
1238 0712 8091 0000 lds r24,AdNeutralNick |
1239 0716 9091 0000 lds r25,(AdNeutralNick)+1 |
1240 071a 9C01 movw r18,r24 |
1241 071c 97FF sbrs r25,7 |
1242 071e 02C0 rjmp .L38 |
1243 0720 295F subi r18,lo8(-(7)) |
1244 0722 3F4F sbci r19,hi8(-(7)) |
1245 .L38: |
1246 0724 287F andi r18,lo8(-8) |
1247 0726 821B sub r24,r18 |
1248 0728 930B sbc r25,r19 |
1249 072a 9F93 push r25 |
1250 072c 8F93 push r24 |
1251 072e 8091 0000 lds r24,AdNeutralNick |
1252 0732 9091 0000 lds r25,(AdNeutralNick)+1 |
1253 0736 97FD sbrc r25,7 |
1254 0738 0796 adiw r24,7 |
1255 .L39: |
1256 073a A3E0 ldi r26,3 |
1257 073c 9595 1: asr r25 |
1258 073e 8795 ror r24 |
1259 0740 AA95 dec r26 |
1260 0742 E1F7 brne 1b |
1261 0744 9F93 push r25 |
1262 0746 8F93 push r24 |
1263 0748 2091 0000 lds r18,AdNeutralNick |
1264 074c 3091 0000 lds r19,(AdNeutralNick)+1 |
1265 0750 37FF sbrs r19,7 |
1266 0752 02C0 rjmp .L40 |
1267 0754 295F subi r18,lo8(-(7)) |
1268 0756 3F4F sbci r19,hi8(-(7)) |
1269 .L40: |
1270 0758 F3E0 ldi r31,3 |
1271 075a 3595 1: asr r19 |
1272 075c 2795 ror r18 |
1273 075e FA95 dec r31 |
1274 0760 E1F7 brne 1b |
1275 0762 8091 0000 lds r24,AdWertNick |
1276 0766 9091 0000 lds r25,(AdWertNick)+1 |
1277 076a 821B sub r24,r18 |
1278 076c 930B sbc r25,r19 |
1279 076e 9F93 push r25 |
1280 0770 8F93 push r24 |
1281 0772 80E0 ldi r24,lo8(__c.30) |
1282 0774 90E0 ldi r25,hi8(__c.30) |
1283 0776 9F93 push r25 |
1284 0778 8F93 push r24 |
1285 077a 1F93 push r17 |
1286 077c 0F93 push r16 |
1287 077e E091 0000 lds r30,_printf_P |
1288 0782 F091 0000 lds r31,(_printf_P)+1 |
1289 0786 0995 icall |
1290 0788 88E2 ldi r24,lo8(40) |
1291 078a 8093 0000 sts DispPtr,r24 |
1292 078e 8DB7 in r24,__SP_L__ |
1293 0790 9EB7 in r25,__SP_H__ |
1294 0792 0A96 adiw r24,10 |
1295 0794 8DBF out __SP_L__,r24 |
1296 0796 8091 0000 lds r24,AdNeutralRoll |
1297 079a 9091 0000 lds r25,(AdNeutralRoll)+1 |
1298 079e 9C01 movw r18,r24 |
1299 07a0 97FF sbrs r25,7 |
1300 07a2 02C0 rjmp .L41 |
1301 07a4 295F subi r18,lo8(-(7)) |
1302 07a6 3F4F sbci r19,hi8(-(7)) |
1303 .L41: |
1304 07a8 287F andi r18,lo8(-8) |
1305 07aa 821B sub r24,r18 |
1306 07ac 930B sbc r25,r19 |
1307 07ae 9F93 push r25 |
1308 07b0 8F93 push r24 |
1309 07b2 8091 0000 lds r24,AdNeutralRoll |
1310 07b6 9091 0000 lds r25,(AdNeutralRoll)+1 |
1311 07ba 97FD sbrc r25,7 |
1312 07bc 0796 adiw r24,7 |
1313 .L42: |
1314 07be E3E0 ldi r30,3 |
1315 07c0 9595 1: asr r25 |
1316 07c2 8795 ror r24 |
1317 07c4 EA95 dec r30 |
1318 07c6 E1F7 brne 1b |
1319 07c8 9F93 push r25 |
1320 07ca 8F93 push r24 |
1321 07cc 2091 0000 lds r18,AdNeutralRoll |
1322 07d0 3091 0000 lds r19,(AdNeutralRoll)+1 |
1323 07d4 37FF sbrs r19,7 |
1324 07d6 02C0 rjmp .L43 |
1325 07d8 295F subi r18,lo8(-(7)) |
1326 07da 3F4F sbci r19,hi8(-(7)) |
1327 .L43: |
1328 07dc 73E0 ldi r23,3 |
1329 07de 3595 1: asr r19 |
1330 07e0 2795 ror r18 |
1331 07e2 7A95 dec r23 |
1332 07e4 E1F7 brne 1b |
1333 07e6 8091 0000 lds r24,AdWertRoll |
1334 07ea 9091 0000 lds r25,(AdWertRoll)+1 |
1335 07ee 821B sub r24,r18 |
1336 07f0 930B sbc r25,r19 |
1337 07f2 9F93 push r25 |
1338 07f4 8F93 push r24 |
1339 07f6 80E0 ldi r24,lo8(__c.31) |
1340 07f8 90E0 ldi r25,hi8(__c.31) |
1341 07fa 9F93 push r25 |
1342 07fc 8F93 push r24 |
1343 07fe 1F93 push r17 |
1344 0800 0F93 push r16 |
1345 0802 E091 0000 lds r30,_printf_P |
1346 0806 F091 0000 lds r31,(_printf_P)+1 |
1347 080a 0995 icall |
1348 080c 8CE3 ldi r24,lo8(60) |
1349 080e 8093 0000 sts DispPtr,r24 |
1350 0812 2DB7 in r18,__SP_L__ |
1351 0814 3EB7 in r19,__SP_H__ |
1352 0816 265F subi r18,lo8(-(10)) |
1353 0818 3F4F sbci r19,hi8(-(10)) |
1354 081a 2DBF out __SP_L__,r18 |
1355 081c 8091 0000 lds r24,AdNeutralGier |
1356 0820 9091 0000 lds r25,(AdNeutralGier)+1 |
1357 0824 9F93 push r25 |
1358 0826 8F93 push r24 |
1359 0828 8091 0000 lds r24,AdNeutralGier |
1360 082c 9091 0000 lds r25,(AdNeutralGier)+1 |
1361 0830 2091 0000 lds r18,AdWertGier |
1362 0834 3091 0000 lds r19,(AdWertGier)+1 |
1363 0838 821B sub r24,r18 |
1364 083a 930B sbc r25,r19 |
1365 083c 9F93 push r25 |
1366 083e 8F93 push r24 |
1367 0840 80E0 ldi r24,lo8(__c.32) |
1368 0842 90E0 ldi r25,hi8(__c.32) |
1369 0844 A7C3 rjmp .L88 |
1370 .L37: |
1371 0846 8B30 cpi r24,lo8(11) |
1372 0848 19F0 breq .L46 |
1373 084a 8431 cpi r24,lo8(20) |
1374 084c 08F4 brsh .+2 |
1375 084e ADC0 rjmp .L45 |
1376 .L46: |
1377 0850 84E1 ldi r24,lo8(20) |
1378 0852 8093 0000 sts DispPtr,r24 |
1379 0856 8091 0000 lds r24,AdNeutralNick |
1380 085a 9091 0000 lds r25,(AdNeutralNick)+1 |
1381 085e 9C01 movw r18,r24 |
1382 0860 97FF sbrs r25,7 |
1383 0862 02C0 rjmp .L47 |
1384 0864 215F subi r18,lo8(-(15)) |
1385 0866 3F4F sbci r19,hi8(-(15)) |
1386 .L47: |
1387 0868 207F andi r18,lo8(-16) |
1388 086a 821B sub r24,r18 |
1389 086c 930B sbc r25,r19 |
1390 086e 97FD sbrc r25,7 |
1391 0870 0196 adiw r24,1 |
1392 .L48: |
1393 0872 9595 asr r25 |
1394 0874 8795 ror r24 |
1395 0876 9F93 push r25 |
1396 0878 8F93 push r24 |
1397 087a 8091 0000 lds r24,AdNeutralNick |
1398 087e 9091 0000 lds r25,(AdNeutralNick)+1 |
1399 0882 97FD sbrc r25,7 |
1400 0884 0F96 adiw r24,15 |
1401 .L49: |
1402 0886 54E0 ldi r21,4 |
1403 0888 9595 1: asr r25 |
1404 088a 8795 ror r24 |
1405 088c 5A95 dec r21 |
1406 088e E1F7 brne 1b |
1407 0890 9F93 push r25 |
1408 0892 8F93 push r24 |
1409 0894 2091 0000 lds r18,AdNeutralNick |
1410 0898 3091 0000 lds r19,(AdNeutralNick)+1 |
1411 089c 37FF sbrs r19,7 |
1412 089e 02C0 rjmp .L50 |
1413 08a0 295F subi r18,lo8(-(7)) |
1414 08a2 3F4F sbci r19,hi8(-(7)) |
1415 .L50: |
1416 08a4 43E0 ldi r20,3 |
1417 08a6 3595 1: asr r19 |
1418 08a8 2795 ror r18 |
1419 08aa 4A95 dec r20 |
1420 08ac E1F7 brne 1b |
1421 08ae 8091 0000 lds r24,AdWertNick |
1422 08b2 9091 0000 lds r25,(AdWertNick)+1 |
1423 08b6 821B sub r24,r18 |
1424 08b8 930B sbc r25,r19 |
1425 08ba 9F93 push r25 |
1426 08bc 8F93 push r24 |
1427 08be 80E0 ldi r24,lo8(__c.33) |
1428 08c0 90E0 ldi r25,hi8(__c.33) |
1429 08c2 9F93 push r25 |
1430 08c4 8F93 push r24 |
1431 08c6 1F93 push r17 |
1432 08c8 0F93 push r16 |
1433 08ca E091 0000 lds r30,_printf_P |
1434 08ce F091 0000 lds r31,(_printf_P)+1 |
1435 08d2 0995 icall |
1436 08d4 88E2 ldi r24,lo8(40) |
1437 08d6 8093 0000 sts DispPtr,r24 |
1438 08da 2DB7 in r18,__SP_L__ |
1439 08dc 3EB7 in r19,__SP_H__ |
1440 08de 265F subi r18,lo8(-(10)) |
1441 08e0 3F4F sbci r19,hi8(-(10)) |
1442 08e2 2DBF out __SP_L__,r18 |
1443 08e4 8091 0000 lds r24,AdNeutralRoll |
1444 08e8 9091 0000 lds r25,(AdNeutralRoll)+1 |
1445 08ec 9C01 movw r18,r24 |
1446 08ee 97FF sbrs r25,7 |
1447 08f0 02C0 rjmp .L51 |
1448 08f2 215F subi r18,lo8(-(15)) |
1449 08f4 3F4F sbci r19,hi8(-(15)) |
1450 .L51: |
1451 08f6 207F andi r18,lo8(-16) |
1452 08f8 821B sub r24,r18 |
1453 08fa 930B sbc r25,r19 |
1454 08fc 97FD sbrc r25,7 |
1455 08fe 0196 adiw r24,1 |
1456 .L52: |
1457 0900 9595 asr r25 |
1458 0902 8795 ror r24 |
1459 0904 9F93 push r25 |
1460 0906 8F93 push r24 |
1461 0908 8091 0000 lds r24,AdNeutralRoll |
1462 090c 9091 0000 lds r25,(AdNeutralRoll)+1 |
1463 0910 97FD sbrc r25,7 |
1464 0912 0F96 adiw r24,15 |
1465 .L53: |
1466 0914 C4E0 ldi r28,4 |
1467 0916 9595 1: asr r25 |
1468 0918 8795 ror r24 |
1469 091a CA95 dec r28 |
1470 091c E1F7 brne 1b |
1471 091e 9F93 push r25 |
1472 0920 8F93 push r24 |
1473 0922 2091 0000 lds r18,AdNeutralRoll |
1474 0926 3091 0000 lds r19,(AdNeutralRoll)+1 |
1475 092a 37FF sbrs r19,7 |
1476 092c 02C0 rjmp .L54 |
1477 092e 295F subi r18,lo8(-(7)) |
1478 0930 3F4F sbci r19,hi8(-(7)) |
1479 .L54: |
1480 0932 B3E0 ldi r27,3 |
1481 0934 3595 1: asr r19 |
1482 0936 2795 ror r18 |
1483 0938 BA95 dec r27 |
1484 093a E1F7 brne 1b |
1485 093c 8091 0000 lds r24,AdWertRoll |
1486 0940 9091 0000 lds r25,(AdWertRoll)+1 |
1487 0944 821B sub r24,r18 |
1488 0946 930B sbc r25,r19 |
1489 0948 9F93 push r25 |
1490 094a 8F93 push r24 |
1491 094c 80E0 ldi r24,lo8(__c.34) |
1492 094e 90E0 ldi r25,hi8(__c.34) |
1493 0950 9F93 push r25 |
1494 0952 8F93 push r24 |
1495 0954 1F93 push r17 |
1496 0956 0F93 push r16 |
1497 0958 E091 0000 lds r30,_printf_P |
1498 095c F091 0000 lds r31,(_printf_P)+1 |
1499 0960 0995 icall |
1500 0962 8CE3 ldi r24,lo8(60) |
1501 0964 8093 0000 sts DispPtr,r24 |
1502 0968 8DB7 in r24,__SP_L__ |
1503 096a 9EB7 in r25,__SP_H__ |
1504 096c 0A96 adiw r24,10 |
1505 096e 8DBF out __SP_L__,r24 |
1506 0970 8091 0000 lds r24,AdNeutralGier |
1507 0974 9091 0000 lds r25,(AdNeutralGier)+1 |
1508 0978 97FD sbrc r25,7 |
1509 097a 0196 adiw r24,1 |
1510 .L55: |
1511 097c 9595 asr r25 |
1512 097e 8795 ror r24 |
1513 0980 9F93 push r25 |
1514 0982 8F93 push r24 |
1515 0984 8091 0000 lds r24,AdNeutralGier |
1516 0988 9091 0000 lds r25,(AdNeutralGier)+1 |
1517 098c 2091 0000 lds r18,AdWertGier |
1518 0990 3091 0000 lds r19,(AdWertGier)+1 |
1519 0994 821B sub r24,r18 |
1520 0996 930B sbc r25,r19 |
1521 0998 9F93 push r25 |
1522 099a 8F93 push r24 |
1523 099c 80E0 ldi r24,lo8(__c.35) |
1524 099e 90E0 ldi r25,hi8(__c.35) |
1525 09a0 9F93 push r25 |
1526 09a2 8F93 push r24 |
1527 09a4 1F93 push r17 |
1528 09a6 0F93 push r16 |
1529 09a8 92CE rjmp .L91 |
1530 .L45: |
1531 09aa 8D30 cpi r24,lo8(13) |
1532 09ac 09F0 breq .+2 |
1533 09ae F6C5 rjmp .L19 |
1534 09b0 84E1 ldi r24,lo8(20) |
1535 09b2 8093 0000 sts DispPtr,r24 |
1536 09b6 8091 0000 lds r24,AnalogOffsetNick |
1537 09ba 9927 clr r25 |
1538 09bc 9F93 push r25 |
1539 09be 8F93 push r24 |
1540 09c0 8091 0000 lds r24,AdNeutralNick |
1541 09c4 9091 0000 lds r25,(AdNeutralNick)+1 |
1542 09c8 97FD sbrc r25,7 |
1543 09ca 0F96 adiw r24,15 |
1544 .L58: |
1545 09cc F4E0 ldi r31,4 |
1546 09ce 9595 1: asr r25 |
1547 09d0 8795 ror r24 |
1548 09d2 FA95 dec r31 |
1549 09d4 E1F7 brne 1b |
1550 09d6 9F93 push r25 |
1551 09d8 8F93 push r24 |
1552 09da 2091 0000 lds r18,AdNeutralNick |
1553 09de 3091 0000 lds r19,(AdNeutralNick)+1 |
1554 09e2 37FF sbrs r19,7 |
1555 09e4 02C0 rjmp .L59 |
1556 09e6 295F subi r18,lo8(-(7)) |
1557 09e8 3F4F sbci r19,hi8(-(7)) |
1558 .L59: |
1559 09ea E3E0 ldi r30,3 |
1560 09ec 3595 1: asr r19 |
1561 09ee 2795 ror r18 |
1562 09f0 EA95 dec r30 |
1563 09f2 E1F7 brne 1b |
1564 09f4 8091 0000 lds r24,AdWertNick |
1565 09f8 9091 0000 lds r25,(AdWertNick)+1 |
1566 09fc 821B sub r24,r18 |
1567 09fe 930B sbc r25,r19 |
1568 0a00 9F93 push r25 |
1569 0a02 8F93 push r24 |
1570 0a04 80E0 ldi r24,lo8(__c.36) |
1571 0a06 90E0 ldi r25,hi8(__c.36) |
1572 0a08 9F93 push r25 |
1573 0a0a 8F93 push r24 |
1574 0a0c 1F93 push r17 |
1575 0a0e 0F93 push r16 |
1576 0a10 E091 0000 lds r30,_printf_P |
1577 0a14 F091 0000 lds r31,(_printf_P)+1 |
1578 0a18 0995 icall |
1579 0a1a 88E2 ldi r24,lo8(40) |
1580 0a1c 8093 0000 sts DispPtr,r24 |
1581 0a20 8DB7 in r24,__SP_L__ |
1582 0a22 9EB7 in r25,__SP_H__ |
1583 0a24 0A96 adiw r24,10 |
1584 0a26 8DBF out __SP_L__,r24 |
1585 0a28 8091 0000 lds r24,AnalogOffsetRoll |
1586 0a2c 9927 clr r25 |
1587 0a2e 9F93 push r25 |
1588 0a30 8F93 push r24 |
1589 0a32 8091 0000 lds r24,AdNeutralRoll |
1590 0a36 9091 0000 lds r25,(AdNeutralRoll)+1 |
1591 0a3a 97FD sbrc r25,7 |
1592 0a3c 0F96 adiw r24,15 |
1593 .L60: |
1594 0a3e 74E0 ldi r23,4 |
1595 0a40 9595 1: asr r25 |
1596 0a42 8795 ror r24 |
1597 0a44 7A95 dec r23 |
1598 0a46 E1F7 brne 1b |
1599 0a48 9F93 push r25 |
1600 0a4a 8F93 push r24 |
1601 0a4c 2091 0000 lds r18,AdNeutralRoll |
1602 0a50 3091 0000 lds r19,(AdNeutralRoll)+1 |
1603 0a54 37FF sbrs r19,7 |
1604 0a56 02C0 rjmp .L61 |
1605 0a58 295F subi r18,lo8(-(7)) |
1606 0a5a 3F4F sbci r19,hi8(-(7)) |
1607 .L61: |
1608 0a5c 63E0 ldi r22,3 |
1609 0a5e 3595 1: asr r19 |
1610 0a60 2795 ror r18 |
1611 0a62 6A95 dec r22 |
1612 0a64 E1F7 brne 1b |
1613 0a66 8091 0000 lds r24,AdWertRoll |
1614 0a6a 9091 0000 lds r25,(AdWertRoll)+1 |
1615 0a6e 821B sub r24,r18 |
1616 0a70 930B sbc r25,r19 |
1617 0a72 9F93 push r25 |
1618 0a74 8F93 push r24 |
1619 0a76 80E0 ldi r24,lo8(__c.37) |
1620 0a78 90E0 ldi r25,hi8(__c.37) |
1621 0a7a 9F93 push r25 |
1622 0a7c 8F93 push r24 |
1623 0a7e 1F93 push r17 |
1624 0a80 0F93 push r16 |
1625 0a82 E091 0000 lds r30,_printf_P |
1626 0a86 F091 0000 lds r31,(_printf_P)+1 |
1627 0a8a 0995 icall |
1628 0a8c 8CE3 ldi r24,lo8(60) |
1629 0a8e 8093 0000 sts DispPtr,r24 |
1630 0a92 2DB7 in r18,__SP_L__ |
1631 0a94 3EB7 in r19,__SP_H__ |
1632 0a96 265F subi r18,lo8(-(10)) |
1633 0a98 3F4F sbci r19,hi8(-(10)) |
1634 0a9a 2DBF out __SP_L__,r18 |
1635 0a9c 8091 0000 lds r24,AnalogOffsetGier |
1636 0aa0 9927 clr r25 |
1637 0aa2 9F93 push r25 |
1638 0aa4 8F93 push r24 |
1639 0aa6 8091 0000 lds r24,AdNeutralGier |
1640 0aaa 9091 0000 lds r25,(AdNeutralGier)+1 |
1641 0aae 97FD sbrc r25,7 |
1642 0ab0 0196 adiw r24,1 |
1643 .L62: |
1644 0ab2 9595 asr r25 |
1645 0ab4 8795 ror r24 |
1646 0ab6 9F93 push r25 |
1647 0ab8 8F93 push r24 |
1648 0aba 8091 0000 lds r24,AdNeutralGier |
1649 0abe 9091 0000 lds r25,(AdNeutralGier)+1 |
1650 0ac2 2091 0000 lds r18,AdWertGier |
1651 0ac6 3091 0000 lds r19,(AdWertGier)+1 |
1652 0aca 821B sub r24,r18 |
1653 0acc 930B sbc r25,r19 |
1654 0ace 9F93 push r25 |
1655 0ad0 8F93 push r24 |
1656 0ad2 80E0 ldi r24,lo8(__c.38) |
1657 0ad4 90E0 ldi r25,hi8(__c.38) |
1658 0ad6 9F93 push r25 |
1659 0ad8 8F93 push r24 |
1660 0ada 1F93 push r17 |
1661 0adc 0F93 push r16 |
1662 0ade E091 0000 lds r30,_printf_P |
1663 0ae2 F091 0000 lds r31,(_printf_P)+1 |
1664 0ae6 0995 icall |
1665 0ae8 8DB7 in r24,__SP_L__ |
1666 0aea 9EB7 in r25,__SP_H__ |
1667 0aec 0A96 adiw r24,10 |
1668 0aee 56C3 rjmp .L85 |
1669 .L63: |
1670 0af0 1092 0000 sts DispPtr,__zero_reg__ |
1671 0af4 80E0 ldi r24,lo8(__c.39) |
1672 0af6 90E0 ldi r25,hi8(__c.39) |
1673 0af8 9F93 push r25 |
1674 0afa 8F93 push r24 |
1675 0afc FF92 push r15 |
1676 0afe EF92 push r14 |
1677 0b00 FE01 movw r30,r28 |
1678 0b02 0995 icall |
1679 0b04 84E1 ldi r24,lo8(20) |
1680 0b06 8093 0000 sts DispPtr,r24 |
1681 0b0a 0F90 pop __tmp_reg__ |
1682 0b0c 0F90 pop __tmp_reg__ |
1683 0b0e 0F90 pop __tmp_reg__ |
1684 0b10 0F90 pop __tmp_reg__ |
1685 0b12 8091 0000 lds r24,NeutralAccX |
1686 0b16 9091 0000 lds r25,(NeutralAccX)+1 |
1687 0b1a 9F93 push r25 |
1688 0b1c 8F93 push r24 |
1689 0b1e 8091 0000 lds r24,AdWertAccNick |
1690 0b22 9091 0000 lds r25,(AdWertAccNick)+1 |
1691 0b26 9F93 push r25 |
1692 0b28 8F93 push r24 |
1693 0b2a 80E0 ldi r24,lo8(__c.40) |
1694 0b2c 90E0 ldi r25,hi8(__c.40) |
1695 0b2e 9F93 push r25 |
1696 0b30 8F93 push r24 |
1697 0b32 FF92 push r15 |
1698 0b34 EF92 push r14 |
1699 0b36 E091 0000 lds r30,_printf_P |
1700 0b3a F091 0000 lds r31,(_printf_P)+1 |
1701 0b3e 0995 icall |
1702 0b40 88E2 ldi r24,lo8(40) |
1703 0b42 8093 0000 sts DispPtr,r24 |
1704 0b46 2DB7 in r18,__SP_L__ |
1705 0b48 3EB7 in r19,__SP_H__ |
1706 0b4a 285F subi r18,lo8(-(8)) |
1707 0b4c 3F4F sbci r19,hi8(-(8)) |
1708 0b4e 2DBF out __SP_L__,r18 |
1709 0b50 8091 0000 lds r24,NeutralAccY |
1710 0b54 9091 0000 lds r25,(NeutralAccY)+1 |
1711 0b58 9F93 push r25 |
1712 0b5a 8F93 push r24 |
1713 0b5c 8091 0000 lds r24,AdWertAccRoll |
1714 0b60 9091 0000 lds r25,(AdWertAccRoll)+1 |
1715 0b64 9F93 push r25 |
1716 0b66 8F93 push r24 |
1717 0b68 80E0 ldi r24,lo8(__c.41) |
1718 0b6a 90E0 ldi r25,hi8(__c.41) |
1719 0b6c 9F93 push r25 |
1720 0b6e 8F93 push r24 |
1721 0b70 FF92 push r15 |
1722 0b72 EF92 push r14 |
1723 0b74 E091 0000 lds r30,_printf_P |
1724 0b78 F091 0000 lds r31,(_printf_P)+1 |
1725 0b7c 0995 icall |
1726 0b7e 8CE3 ldi r24,lo8(60) |
1727 0b80 8093 0000 sts DispPtr,r24 |
1728 0b84 8DB7 in r24,__SP_L__ |
1729 0b86 9EB7 in r25,__SP_H__ |
1730 0b88 0896 adiw r24,8 |
1731 0b8a 8DBF out __SP_L__,r24 |
1732 0b8c 8091 0000 lds r24,NeutralAccZ |
1733 0b90 9091 0000 lds r25,(NeutralAccZ)+1 |
1734 0b94 9F93 push r25 |
1735 0b96 8F93 push r24 |
1736 0b98 8091 0000 lds r24,AdWertAccHoch |
1737 0b9c 9091 0000 lds r25,(AdWertAccHoch)+1 |
1738 0ba0 9F93 push r25 |
1739 0ba2 8F93 push r24 |
1740 0ba4 80E0 ldi r24,lo8(__c.42) |
1741 0ba6 90E0 ldi r25,hi8(__c.42) |
1742 0ba8 8ECD rjmp .L90 |
1743 .L64: |
1744 0baa 1092 0000 sts DispPtr,__zero_reg__ |
1745 0bae 8091 0000 lds r24,UBat |
1746 0bb2 9091 0000 lds r25,(UBat)+1 |
1747 0bb6 6AE0 ldi r22,lo8(10) |
1748 0bb8 70E0 ldi r23,hi8(10) |
1749 0bba 0E94 0000 call __divmodhi4 |
1750 0bbe 9F93 push r25 |
1751 0bc0 8F93 push r24 |
1752 0bc2 8091 0000 lds r24,UBat |
1753 0bc6 9091 0000 lds r25,(UBat)+1 |
1754 0bca 6AE0 ldi r22,lo8(10) |
1755 0bcc 70E0 ldi r23,hi8(10) |
1756 0bce 0E94 0000 call __divmodhi4 |
1757 0bd2 7F93 push r23 |
1758 0bd4 6F93 push r22 |
1759 0bd6 80E0 ldi r24,lo8(__c.43) |
1760 0bd8 90E0 ldi r25,hi8(__c.43) |
1761 0bda 9F93 push r25 |
1762 0bdc 8F93 push r24 |
1763 0bde FF92 push r15 |
1764 0be0 EF92 push r14 |
1765 0be2 FE01 movw r30,r28 |
1766 0be4 0995 icall |
1767 0be6 84E1 ldi r24,lo8(20) |
1768 0be8 8093 0000 sts DispPtr,r24 |
1769 0bec 8DB7 in r24,__SP_L__ |
1770 0bee 9EB7 in r25,__SP_H__ |
1771 0bf0 0896 adiw r24,8 |
1772 0bf2 8DBF out __SP_L__,r24 |
1773 0bf4 8091 0000 lds r24,Capacity |
1774 0bf8 9091 0000 lds r25,(Capacity)+1 |
1775 0bfc 6AE0 ldi r22,lo8(10) |
1776 0bfe 70E0 ldi r23,hi8(10) |
1777 0c00 0E94 0000 call __udivmodhi4 |
1778 0c04 9F93 push r25 |
1779 0c06 8F93 push r24 |
1780 0c08 8091 0000 lds r24,Capacity |
1781 0c0c 9091 0000 lds r25,(Capacity)+1 |
1782 0c10 6AE0 ldi r22,lo8(10) |
1783 0c12 70E0 ldi r23,hi8(10) |
1784 0c14 0E94 0000 call __udivmodhi4 |
1785 0c18 7F93 push r23 |
1786 0c1a 6F93 push r22 |
1787 0c1c 80E0 ldi r24,lo8(__c.44) |
1788 0c1e 90E0 ldi r25,hi8(__c.44) |
1789 0c20 9F93 push r25 |
1790 0c22 8F93 push r24 |
1791 0c24 FF92 push r15 |
1792 0c26 EF92 push r14 |
1793 0c28 E091 0000 lds r30,_printf_P |
1794 0c2c F091 0000 lds r31,(_printf_P)+1 |
1795 0c30 0995 icall |
1796 0c32 88E2 ldi r24,lo8(40) |
1797 0c34 8093 0000 sts DispPtr,r24 |
1798 0c38 2DB7 in r18,__SP_L__ |
1799 0c3a 3EB7 in r19,__SP_H__ |
1800 0c3c 285F subi r18,lo8(-(8)) |
1801 0c3e 3F4F sbci r19,hi8(-(8)) |
1802 0c40 2DBF out __SP_L__,r18 |
1803 0c42 8091 0000 lds r24,Capacity+2 |
1804 0c46 9091 0000 lds r25,(Capacity+2)+1 |
1805 0c4a 9F93 push r25 |
1806 0c4c 8F93 push r24 |
1807 0c4e 80E0 ldi r24,lo8(__c.45) |
1808 0c50 90E0 ldi r25,hi8(__c.45) |
1809 0c52 9F93 push r25 |
1810 0c54 8F93 push r24 |
1811 0c56 FF92 push r15 |
1812 0c58 EF92 push r14 |
1813 0c5a E091 0000 lds r30,_printf_P |
1814 0c5e F091 0000 lds r31,(_printf_P)+1 |
1815 0c62 0995 icall |
1816 0c64 8CE3 ldi r24,lo8(60) |
1817 0c66 8093 0000 sts DispPtr,r24 |
1818 0c6a 8DB7 in r24,__SP_L__ |
1819 0c6c 9EB7 in r25,__SP_H__ |
1820 0c6e 0696 adiw r24,6 |
1821 0c70 8DBF out __SP_L__,r24 |
1822 0c72 8091 0000 lds r24,Capacity+4 |
1823 0c76 9091 0000 lds r25,(Capacity+4)+1 |
1824 0c7a 9F93 push r25 |
1825 0c7c 8F93 push r24 |
1826 0c7e 80E0 ldi r24,lo8(__c.46) |
1827 0c80 90E0 ldi r25,hi8(__c.46) |
1828 0c82 2EC1 rjmp .L94 |
1829 .L65: |
1830 0c84 1092 0000 sts DispPtr,__zero_reg__ |
1831 0c88 80E0 ldi r24,lo8(__c.47) |
1832 0c8a 90E0 ldi r25,hi8(__c.47) |
1833 0c8c 9F93 push r25 |
1834 0c8e 8F93 push r24 |
1835 0c90 FF92 push r15 |
1836 0c92 EF92 push r14 |
1837 0c94 FE01 movw r30,r28 |
1838 0c96 0995 icall |
1839 0c98 84E1 ldi r24,lo8(20) |
1840 0c9a 8093 0000 sts DispPtr,r24 |
1841 0c9e 0F90 pop __tmp_reg__ |
1842 0ca0 0F90 pop __tmp_reg__ |
1843 0ca2 0F90 pop __tmp_reg__ |
1844 0ca4 0F90 pop __tmp_reg__ |
1845 0ca6 8091 0000 lds r24,PPM_in |
1846 0caa 9091 0000 lds r25,(PPM_in)+1 |
1847 0cae 9F93 push r25 |
1848 0cb0 8F93 push r24 |
1849 0cb2 80E0 ldi r24,lo8(__c.48) |
1850 0cb4 90E0 ldi r25,hi8(__c.48) |
1851 0cb6 9F93 push r25 |
1852 0cb8 8F93 push r24 |
1853 0cba FF92 push r15 |
1854 0cbc EF92 push r14 |
1855 0cbe E091 0000 lds r30,_printf_P |
1856 0cc2 F091 0000 lds r31,(_printf_P)+1 |
1857 0cc6 0995 icall |
1858 0cc8 88E2 ldi r24,lo8(40) |
1859 0cca 8093 0000 sts DispPtr,r24 |
1860 0cce 8DB7 in r24,__SP_L__ |
1861 0cd0 9EB7 in r25,__SP_H__ |
1862 0cd2 0696 adiw r24,6 |
1863 0cd4 8DBF out __SP_L__,r24 |
1864 0cd6 8091 0000 lds r24,SenderOkay |
1865 0cda 9927 clr r25 |
1866 0cdc 9F93 push r25 |
1867 0cde 8F93 push r24 |
1868 0ce0 80E0 ldi r24,lo8(__c.49) |
1869 0ce2 90E0 ldi r25,hi8(__c.49) |
1870 0ce4 9F93 push r25 |
1871 0ce6 8F93 push r24 |
1872 0ce8 FF92 push r15 |
1873 0cea EF92 push r14 |
1874 0cec E091 0000 lds r30,_printf_P |
1875 0cf0 F091 0000 lds r31,(_printf_P)+1 |
1876 0cf4 0995 icall |
1877 0cf6 8CE3 ldi r24,lo8(60) |
1878 0cf8 8093 0000 sts DispPtr,r24 |
1879 0cfc 2DB7 in r18,__SP_L__ |
1880 0cfe 3EB7 in r19,__SP_H__ |
1881 0d00 2A5F subi r18,lo8(-(6)) |
1882 0d02 3F4F sbci r19,hi8(-(6)) |
1883 0d04 2DBF out __SP_L__,r18 |
1884 0d06 8091 0000 lds r24,Channels |
1885 0d0a 9927 clr r25 |
1886 0d0c 0197 sbiw r24,1 |
1887 0d0e 9F93 push r25 |
1888 0d10 8F93 push r24 |
1889 0d12 80E0 ldi r24,lo8(__c.50) |
1890 0d14 90E0 ldi r25,hi8(__c.50) |
1891 0d16 02CB rjmp .L93 |
1892 .L66: |
1893 0d18 1092 0000 sts DispPtr,__zero_reg__ |
1894 0d1c 80E0 ldi r24,lo8(__c.51) |
1895 0d1e 90E0 ldi r25,hi8(__c.51) |
1896 0d20 9F93 push r25 |
1897 0d22 8F93 push r24 |
1898 0d24 FF92 push r15 |
1899 0d26 EF92 push r14 |
1900 0d28 FE01 movw r30,r28 |
1901 0d2a 0995 icall |
1902 0d2c 84E1 ldi r24,lo8(20) |
1903 0d2e 8093 0000 sts DispPtr,r24 |
1904 0d32 0F90 pop __tmp_reg__ |
1905 0d34 0F90 pop __tmp_reg__ |
1906 0d36 0F90 pop __tmp_reg__ |
1907 0d38 0F90 pop __tmp_reg__ |
1908 0d3a 8091 0000 lds r24,KompassRichtung |
1909 0d3e 9091 0000 lds r25,(KompassRichtung)+1 |
1910 0d42 9F93 push r25 |
1911 0d44 8F93 push r24 |
1912 0d46 80E0 ldi r24,lo8(__c.52) |
1913 0d48 90E0 ldi r25,hi8(__c.52) |
1914 0d4a 9F93 push r25 |
1915 0d4c 8F93 push r24 |
1916 0d4e FF92 push r15 |
1917 0d50 EF92 push r14 |
1918 0d52 E091 0000 lds r30,_printf_P |
1919 0d56 F091 0000 lds r31,(_printf_P)+1 |
1920 0d5a 0995 icall |
1921 0d5c 88E2 ldi r24,lo8(40) |
1922 0d5e 8093 0000 sts DispPtr,r24 |
1923 0d62 2DB7 in r18,__SP_L__ |
1924 0d64 3EB7 in r19,__SP_H__ |
1925 0d66 2A5F subi r18,lo8(-(6)) |
1926 0d68 3F4F sbci r19,hi8(-(6)) |
1927 0d6a 2DBF out __SP_L__,r18 |
1928 0d6c 8091 0000 lds r24,KompassValue |
1929 0d70 9091 0000 lds r25,(KompassValue)+1 |
1930 0d74 9F93 push r25 |
1931 0d76 8F93 push r24 |
1932 0d78 80E0 ldi r24,lo8(__c.53) |
1933 0d7a 90E0 ldi r25,hi8(__c.53) |
1934 0d7c 9F93 push r25 |
1935 0d7e 8F93 push r24 |
1936 0d80 FF92 push r15 |
1937 0d82 EF92 push r14 |
1938 0d84 E091 0000 lds r30,_printf_P |
1939 0d88 F091 0000 lds r31,(_printf_P)+1 |
1940 0d8c 0995 icall |
1941 0d8e 8CE3 ldi r24,lo8(60) |
1942 0d90 8093 0000 sts DispPtr,r24 |
1943 0d94 8DB7 in r24,__SP_L__ |
1944 0d96 9EB7 in r25,__SP_H__ |
1945 0d98 0696 adiw r24,6 |
1946 0d9a 8DBF out __SP_L__,r24 |
1947 0d9c 8091 0000 lds r24,KompassStartwert |
1948 0da0 9091 0000 lds r25,(KompassStartwert)+1 |
1949 0da4 9F93 push r25 |
1950 0da6 8F93 push r24 |
1951 0da8 80E0 ldi r24,lo8(__c.54) |
1952 0daa 90E0 ldi r25,hi8(__c.54) |
1953 0dac 99C0 rjmp .L94 |
1954 .L67: |
1955 0dae 1092 0000 sts DispPtr,__zero_reg__ |
1956 0db2 8091 0000 lds r24,Poti |
1957 0db6 9927 clr r25 |
1958 0db8 9F93 push r25 |
1959 0dba 8F93 push r24 |
1960 0dbc 80E0 ldi r24,lo8(__c.55) |
1961 0dbe 90E0 ldi r25,hi8(__c.55) |
1962 0dc0 9F93 push r25 |
1963 0dc2 8F93 push r24 |
1964 0dc4 FF92 push r15 |
1965 0dc6 EF92 push r14 |
1966 0dc8 FE01 movw r30,r28 |
1967 0dca 0995 icall |
1968 0dcc 84E1 ldi r24,lo8(20) |
1969 0dce 8093 0000 sts DispPtr,r24 |
1970 0dd2 8DB7 in r24,__SP_L__ |
1971 0dd4 9EB7 in r25,__SP_H__ |
1972 0dd6 0696 adiw r24,6 |
1973 0dd8 8DBF out __SP_L__,r24 |
1974 0dda 8091 0000 lds r24,Poti+1 |
1975 0dde 9927 clr r25 |
1976 0de0 9F93 push r25 |
1977 0de2 8F93 push r24 |
1978 0de4 80E0 ldi r24,lo8(__c.56) |
1979 0de6 90E0 ldi r25,hi8(__c.56) |
1980 0de8 9F93 push r25 |
1981 0dea 8F93 push r24 |
1982 0dec FF92 push r15 |
1983 0dee EF92 push r14 |
1984 0df0 E091 0000 lds r30,_printf_P |
1985 0df4 F091 0000 lds r31,(_printf_P)+1 |
1986 0df8 0995 icall |
1987 0dfa 88E2 ldi r24,lo8(40) |
1988 0dfc 8093 0000 sts DispPtr,r24 |
1989 0e00 2DB7 in r18,__SP_L__ |
1990 0e02 3EB7 in r19,__SP_H__ |
1991 0e04 2A5F subi r18,lo8(-(6)) |
1992 0e06 3F4F sbci r19,hi8(-(6)) |
1993 0e08 2DBF out __SP_L__,r18 |
1994 0e0a 8091 0000 lds r24,Poti+2 |
1995 0e0e 9927 clr r25 |
1996 0e10 9F93 push r25 |
1997 0e12 8F93 push r24 |
1998 0e14 80E0 ldi r24,lo8(__c.57) |
1999 0e16 90E0 ldi r25,hi8(__c.57) |
2000 0e18 9F93 push r25 |
2001 0e1a 8F93 push r24 |
2002 0e1c FF92 push r15 |
2003 0e1e EF92 push r14 |
2004 0e20 E091 0000 lds r30,_printf_P |
2005 0e24 F091 0000 lds r31,(_printf_P)+1 |
2006 0e28 0995 icall |
2007 0e2a 8CE3 ldi r24,lo8(60) |
2008 0e2c 8093 0000 sts DispPtr,r24 |
2009 0e30 8DB7 in r24,__SP_L__ |
2010 0e32 9EB7 in r25,__SP_H__ |
2011 0e34 0696 adiw r24,6 |
2012 0e36 8DBF out __SP_L__,r24 |
2013 0e38 8091 0000 lds r24,Poti+3 |
2014 0e3c 9927 clr r25 |
2015 0e3e 9F93 push r25 |
2016 0e40 8F93 push r24 |
2017 0e42 80E0 ldi r24,lo8(__c.58) |
2018 0e44 90E0 ldi r25,hi8(__c.58) |
2019 0e46 4CC0 rjmp .L94 |
2020 .L68: |
2021 0e48 1092 0000 sts DispPtr,__zero_reg__ |
2022 0e4c 8091 0000 lds r24,Poti+4 |
2023 0e50 9927 clr r25 |
2024 0e52 9F93 push r25 |
2025 0e54 8F93 push r24 |
2026 0e56 80E0 ldi r24,lo8(__c.59) |
2027 0e58 90E0 ldi r25,hi8(__c.59) |
2028 0e5a 9F93 push r25 |
2029 0e5c 8F93 push r24 |
2030 0e5e FF92 push r15 |
2031 0e60 EF92 push r14 |
2032 0e62 FE01 movw r30,r28 |
2033 0e64 0995 icall |
2034 0e66 84E1 ldi r24,lo8(20) |
2035 0e68 8093 0000 sts DispPtr,r24 |
2036 0e6c 8DB7 in r24,__SP_L__ |
2037 0e6e 9EB7 in r25,__SP_H__ |
2038 0e70 0696 adiw r24,6 |
2039 0e72 8DBF out __SP_L__,r24 |
2040 0e74 8091 0000 lds r24,Poti+5 |
2041 0e78 9927 clr r25 |
2042 0e7a 9F93 push r25 |
2043 0e7c 8F93 push r24 |
2044 0e7e 80E0 ldi r24,lo8(__c.60) |
2045 0e80 90E0 ldi r25,hi8(__c.60) |
2046 0e82 9F93 push r25 |
2047 0e84 8F93 push r24 |
2048 0e86 FF92 push r15 |
2049 0e88 EF92 push r14 |
2050 0e8a E091 0000 lds r30,_printf_P |
2051 0e8e F091 0000 lds r31,(_printf_P)+1 |
2052 0e92 0995 icall |
2053 0e94 88E2 ldi r24,lo8(40) |
2054 0e96 8093 0000 sts DispPtr,r24 |
2055 0e9a 2DB7 in r18,__SP_L__ |
2056 0e9c 3EB7 in r19,__SP_H__ |
2057 0e9e 2A5F subi r18,lo8(-(6)) |
2058 0ea0 3F4F sbci r19,hi8(-(6)) |
2059 0ea2 2DBF out __SP_L__,r18 |
2060 0ea4 8091 0000 lds r24,Poti+6 |
2061 0ea8 9927 clr r25 |
2062 0eaa 9F93 push r25 |
2063 0eac 8F93 push r24 |
2064 0eae 80E0 ldi r24,lo8(__c.61) |
2065 0eb0 90E0 ldi r25,hi8(__c.61) |
2066 0eb2 9F93 push r25 |
2067 0eb4 8F93 push r24 |
2068 0eb6 FF92 push r15 |
2069 0eb8 EF92 push r14 |
2070 0eba E091 0000 lds r30,_printf_P |
2071 0ebe F091 0000 lds r31,(_printf_P)+1 |
2072 0ec2 0995 icall |
2073 0ec4 8CE3 ldi r24,lo8(60) |
2074 0ec6 8093 0000 sts DispPtr,r24 |
2075 0eca 8DB7 in r24,__SP_L__ |
2076 0ecc 9EB7 in r25,__SP_H__ |
2077 0ece 0696 adiw r24,6 |
2078 0ed0 8DBF out __SP_L__,r24 |
2079 0ed2 8091 0000 lds r24,Poti+7 |
2080 0ed6 9927 clr r25 |
2081 0ed8 9F93 push r25 |
2082 0eda 8F93 push r24 |
2083 0edc 80E0 ldi r24,lo8(__c.62) |
2084 0ede 90E0 ldi r25,hi8(__c.62) |
2085 .L94: |
2086 0ee0 9F93 push r25 |
2087 0ee2 8F93 push r24 |
2088 0ee4 FF92 push r15 |
2089 0ee6 EF92 push r14 |
2090 0ee8 D9CA rjmp .L89 |
2091 .L69: |
2092 0eea 1092 0000 sts DispPtr,__zero_reg__ |
2093 0eee 80E0 ldi r24,lo8(__c.63) |
2094 0ef0 90E0 ldi r25,hi8(__c.63) |
2095 0ef2 9F93 push r25 |
2096 0ef4 8F93 push r24 |
2097 0ef6 00E0 ldi r16,lo8(pm(Menu_Putchar)) |
2098 0ef8 10E0 ldi r17,hi8(pm(Menu_Putchar)) |
2099 0efa FF92 push r15 |
2100 0efc EF92 push r14 |
2101 0efe FE01 movw r30,r28 |
2102 0f00 0995 icall |
2103 0f02 84E1 ldi r24,lo8(20) |
2104 0f04 8093 0000 sts DispPtr,r24 |
2105 0f08 0F90 pop __tmp_reg__ |
2106 0f0a 0F90 pop __tmp_reg__ |
2107 0f0c 0F90 pop __tmp_reg__ |
2108 0f0e 0F90 pop __tmp_reg__ |
2109 0f10 8091 0000 lds r24,Parameter_ServoNickControl |
2110 0f14 9927 clr r25 |
2111 0f16 9F93 push r25 |
2112 0f18 8F93 push r24 |
2113 0f1a 80E0 ldi r24,lo8(__c.64) |
2114 0f1c 90E0 ldi r25,hi8(__c.64) |
2115 0f1e 9F93 push r25 |
2116 0f20 8F93 push r24 |
2117 0f22 FF92 push r15 |
2118 0f24 EF92 push r14 |
2119 0f26 E091 0000 lds r30,_printf_P |
2120 0f2a F091 0000 lds r31,(_printf_P)+1 |
2121 0f2e 0995 icall |
2122 0f30 88E2 ldi r24,lo8(40) |
2123 0f32 8093 0000 sts DispPtr,r24 |
2124 0f36 8DB7 in r24,__SP_L__ |
2125 0f38 9EB7 in r25,__SP_H__ |
2126 0f3a 0696 adiw r24,6 |
2127 0f3c 8DBF out __SP_L__,r24 |
2128 0f3e 8091 0000 lds r24,ServoNickValue |
2129 0f42 9091 0000 lds r25,(ServoNickValue)+1 |
2130 0f46 97FD sbrc r25,7 |
2131 0f48 0396 adiw r24,3 |
2132 .L70: |
2133 0f4a 9595 asr r25 |
2134 0f4c 8795 ror r24 |
2135 0f4e 9595 asr r25 |
2136 0f50 8795 ror r24 |
2137 0f52 9F93 push r25 |
2138 0f54 8F93 push r24 |
2139 0f56 80E0 ldi r24,lo8(__c.65) |
2140 0f58 90E0 ldi r25,hi8(__c.65) |
2141 0f5a 9F93 push r25 |
2142 0f5c 8F93 push r24 |
2143 0f5e 1F93 push r17 |
2144 0f60 0F93 push r16 |
2145 0f62 E091 0000 lds r30,_printf_P |
2146 0f66 F091 0000 lds r31,(_printf_P)+1 |
2147 0f6a 0995 icall |
2148 0f6c 8CE3 ldi r24,lo8(60) |
2149 0f6e 8093 0000 sts DispPtr,r24 |
2150 0f72 2DB7 in r18,__SP_L__ |
2151 0f74 3EB7 in r19,__SP_H__ |
2152 0f76 2A5F subi r18,lo8(-(6)) |
2153 0f78 3F4F sbci r19,hi8(-(6)) |
2154 0f7a 2DBF out __SP_L__,r18 |
2155 0f7c 8091 0000 lds r24,EE_Parameter+48 |
2156 0f80 9927 clr r25 |
2157 0f82 9F93 push r25 |
2158 0f84 8F93 push r24 |
2159 0f86 8091 0000 lds r24,EE_Parameter+47 |
2160 0f8a 9927 clr r25 |
2161 0f8c 9F93 push r25 |
2162 0f8e 8F93 push r24 |
2163 0f90 80E0 ldi r24,lo8(__c.66) |
2164 0f92 90E0 ldi r25,hi8(__c.66) |
2165 .L88: |
2166 0f94 9F93 push r25 |
2167 0f96 8F93 push r24 |
2168 0f98 1F93 push r17 |
2169 0f9a 0F93 push r16 |
2170 0f9c E091 0000 lds r30,_printf_P |
2171 0fa0 F091 0000 lds r31,(_printf_P)+1 |
2172 0fa4 0995 icall |
2173 0fa6 8DB7 in r24,__SP_L__ |
2174 0fa8 9EB7 in r25,__SP_H__ |
2175 0faa 0896 adiw r24,8 |
2176 0fac F7C0 rjmp .L85 |
2177 .L71: |
2178 0fae 1092 0000 sts DispPtr,__zero_reg__ |
2179 0fb2 80E0 ldi r24,lo8(__c.67) |
2180 0fb4 90E0 ldi r25,hi8(__c.67) |
2181 0fb6 9F93 push r25 |
2182 0fb8 8F93 push r24 |
2183 0fba FF92 push r15 |
2184 0fbc EF92 push r14 |
2185 0fbe FE01 movw r30,r28 |
2186 0fc0 0995 icall |
2187 0fc2 84E1 ldi r24,lo8(20) |
2188 0fc4 8093 0000 sts DispPtr,r24 |
2189 0fc8 0F90 pop __tmp_reg__ |
2190 0fca 0F90 pop __tmp_reg__ |
2191 0fcc 0F90 pop __tmp_reg__ |
2192 0fce 0F90 pop __tmp_reg__ |
2193 0fd0 8091 0000 lds r24,ExternControl+4 |
2194 0fd4 9927 clr r25 |
2195 0fd6 87FD sbrc r24,7 |
2196 0fd8 9095 com r25 |
2197 0fda 9F93 push r25 |
2198 0fdc 8F93 push r24 |
2199 0fde 8091 0000 lds r24,ExternControl+3 |
2200 0fe2 9927 clr r25 |
2201 0fe4 87FD sbrc r24,7 |
2202 0fe6 9095 com r25 |
2203 0fe8 9F93 push r25 |
2204 0fea 8F93 push r24 |
2205 0fec 80E0 ldi r24,lo8(__c.68) |
2206 0fee 90E0 ldi r25,hi8(__c.68) |
2207 0ff0 9F93 push r25 |
2208 0ff2 8F93 push r24 |
2209 0ff4 FF92 push r15 |
2210 0ff6 EF92 push r14 |
2211 0ff8 E091 0000 lds r30,_printf_P |
2212 0ffc F091 0000 lds r31,(_printf_P)+1 |
2213 1000 0995 icall |
2214 1002 88E2 ldi r24,lo8(40) |
2215 1004 8093 0000 sts DispPtr,r24 |
2216 1008 2DB7 in r18,__SP_L__ |
2217 100a 3EB7 in r19,__SP_H__ |
2218 100c 285F subi r18,lo8(-(8)) |
2219 100e 3F4F sbci r19,hi8(-(8)) |
2220 1010 2DBF out __SP_L__,r18 |
2221 1012 8091 0000 lds r24,ExternControl+5 |
2222 1016 9927 clr r25 |
2223 1018 87FD sbrc r24,7 |
2224 101a 9095 com r25 |
2225 101c 9F93 push r25 |
2226 101e 8F93 push r24 |
2227 1020 8091 0000 lds r24,ExternControl+6 |
2228 1024 9927 clr r25 |
2229 1026 9F93 push r25 |
2230 1028 8F93 push r24 |
2231 102a 80E0 ldi r24,lo8(__c.69) |
2232 102c 90E0 ldi r25,hi8(__c.69) |
2233 102e 9F93 push r25 |
2234 1030 8F93 push r24 |
2235 1032 FF92 push r15 |
2236 1034 EF92 push r14 |
2237 1036 E091 0000 lds r30,_printf_P |
2238 103a F091 0000 lds r31,(_printf_P)+1 |
2239 103e 0995 icall |
2240 1040 8CE3 ldi r24,lo8(60) |
2241 1042 8093 0000 sts DispPtr,r24 |
2242 1046 8DB7 in r24,__SP_L__ |
2243 1048 9EB7 in r25,__SP_H__ |
2244 104a 0896 adiw r24,8 |
2245 104c 8DBF out __SP_L__,r24 |
2246 104e 8091 0000 lds r24,ExternControl+10 |
2247 1052 9927 clr r25 |
2248 1054 9F93 push r25 |
2249 1056 8F93 push r24 |
2250 1058 8091 0000 lds r24,ExternControl+7 |
2251 105c 9927 clr r25 |
2252 105e 87FD sbrc r24,7 |
2253 1060 9095 com r25 |
2254 1062 9F93 push r25 |
2255 1064 8F93 push r24 |
2256 1066 80E0 ldi r24,lo8(__c.70) |
2257 1068 90E0 ldi r25,hi8(__c.70) |
2258 106a 2DCB rjmp .L90 |
2259 .L72: |
2260 106c 1092 0000 sts DispPtr,__zero_reg__ |
2261 1070 80E0 ldi r24,lo8(__c.71) |
2262 1072 90E0 ldi r25,hi8(__c.71) |
2263 1074 9F93 push r25 |
2264 1076 8F93 push r24 |
2265 1078 FF92 push r15 |
2266 107a EF92 push r14 |
2267 107c FE01 movw r30,r28 |
2268 107e 0995 icall |
2269 1080 84E1 ldi r24,lo8(20) |
2270 1082 8093 0000 sts DispPtr,r24 |
2271 1086 0F90 pop __tmp_reg__ |
2272 1088 0F90 pop __tmp_reg__ |
2273 108a 0F90 pop __tmp_reg__ |
2274 108c 0F90 pop __tmp_reg__ |
2275 108e 8091 0000 lds r24,Motor+27 |
2276 1092 9927 clr r25 |
2277 1094 8F77 andi r24,lo8(127) |
2278 1096 9070 andi r25,hi8(127) |
2279 1098 9F93 push r25 |
2280 109a 8F93 push r24 |
2281 109c 8091 0000 lds r24,Motor+19 |
2282 10a0 9927 clr r25 |
2283 10a2 8F77 andi r24,lo8(127) |
2284 10a4 9070 andi r25,hi8(127) |
2285 10a6 9F93 push r25 |
2286 10a8 8F93 push r24 |
2287 10aa 8091 0000 lds r24,Motor+11 |
2288 10ae 9927 clr r25 |
2289 10b0 8F77 andi r24,lo8(127) |
2290 10b2 9070 andi r25,hi8(127) |
2291 10b4 9F93 push r25 |
2292 10b6 8F93 push r24 |
2293 10b8 8091 0000 lds r24,Motor+3 |
2294 10bc 9927 clr r25 |
2295 10be 8F77 andi r24,lo8(127) |
2296 10c0 9070 andi r25,hi8(127) |
2297 10c2 9F93 push r25 |
2298 10c4 8F93 push r24 |
2299 10c6 80E0 ldi r24,lo8(__c.72) |
2300 10c8 90E0 ldi r25,hi8(__c.72) |
2301 10ca 9F93 push r25 |
2302 10cc 8F93 push r24 |
2303 10ce FF92 push r15 |
2304 10d0 EF92 push r14 |
2305 10d2 E091 0000 lds r30,_printf_P |
2306 10d6 F091 0000 lds r31,(_printf_P)+1 |
2307 10da 0995 icall |
2308 10dc 88E2 ldi r24,lo8(40) |
2309 10de 8093 0000 sts DispPtr,r24 |
2310 10e2 8DB7 in r24,__SP_L__ |
2311 10e4 9EB7 in r25,__SP_H__ |
2312 10e6 0C96 adiw r24,12 |
2313 10e8 8DBF out __SP_L__,r24 |
2314 10ea 8091 0000 lds r24,Motor+59 |
2315 10ee 9927 clr r25 |
2316 10f0 8F77 andi r24,lo8(127) |
2317 10f2 9070 andi r25,hi8(127) |
2318 10f4 9F93 push r25 |
2319 10f6 8F93 push r24 |
2320 10f8 8091 0000 lds r24,Motor+51 |
2321 10fc 9927 clr r25 |
2322 10fe 8F77 andi r24,lo8(127) |
2323 1100 9070 andi r25,hi8(127) |
2324 1102 9F93 push r25 |
2325 1104 8F93 push r24 |
2326 1106 8091 0000 lds r24,Motor+43 |
2327 110a 9927 clr r25 |
2328 110c 8F77 andi r24,lo8(127) |
2329 110e 9070 andi r25,hi8(127) |
2330 1110 9F93 push r25 |
2331 1112 8F93 push r24 |
2332 1114 8091 0000 lds r24,Motor+35 |
2333 1118 9927 clr r25 |
2334 111a 8F77 andi r24,lo8(127) |
2335 111c 9070 andi r25,hi8(127) |
2336 111e 9F93 push r25 |
2337 1120 8F93 push r24 |
2338 1122 80E0 ldi r24,lo8(__c.73) |
2339 1124 90E0 ldi r25,hi8(__c.73) |
2340 1126 9F93 push r25 |
2341 1128 8F93 push r24 |
2342 112a FF92 push r15 |
2343 112c EF92 push r14 |
2344 112e E091 0000 lds r30,_printf_P |
2345 1132 F091 0000 lds r31,(_printf_P)+1 |
2346 1136 0995 icall |
2347 1138 8CE3 ldi r24,lo8(60) |
2348 113a 8093 0000 sts DispPtr,r24 |
2349 113e 2DB7 in r18,__SP_L__ |
2350 1140 3EB7 in r19,__SP_H__ |
2351 1142 245F subi r18,lo8(-(12)) |
2352 1144 3F4F sbci r19,hi8(-(12)) |
2353 1146 2DBF out __SP_L__,r18 |
2354 1148 8091 0000 lds r24,Motor+91 |
2355 114c 9927 clr r25 |
2356 114e 8F77 andi r24,lo8(127) |
2357 1150 9070 andi r25,hi8(127) |
2358 1152 9F93 push r25 |
2359 1154 8F93 push r24 |
2360 1156 8091 0000 lds r24,Motor+83 |
2361 115a 9927 clr r25 |
2362 115c 8F77 andi r24,lo8(127) |
2363 115e 9070 andi r25,hi8(127) |
2364 1160 9F93 push r25 |
2365 1162 8F93 push r24 |
2366 1164 8091 0000 lds r24,Motor+75 |
2367 1168 9927 clr r25 |
2368 116a 8F77 andi r24,lo8(127) |
2369 116c 9070 andi r25,hi8(127) |
2370 116e 9F93 push r25 |
2371 1170 8F93 push r24 |
2372 1172 8091 0000 lds r24,Motor+67 |
2373 1176 9927 clr r25 |
2374 1178 8F77 andi r24,lo8(127) |
2375 117a 9070 andi r25,hi8(127) |
2376 117c 9F93 push r25 |
2377 117e 8F93 push r24 |
2378 1180 80E0 ldi r24,lo8(__c.74) |
2379 1182 90E0 ldi r25,hi8(__c.74) |
2380 1184 9F93 push r25 |
2381 1186 8F93 push r24 |
2382 1188 FF92 push r15 |
2383 118a EF92 push r14 |
2384 118c E091 0000 lds r30,_printf_P |
2385 1190 F091 0000 lds r31,(_printf_P)+1 |
2386 1194 0995 icall |
2387 1196 8DB7 in r24,__SP_L__ |
2388 1198 9EB7 in r25,__SP_H__ |
2389 119a 0C96 adiw r24,12 |
2390 .L85: |
2391 119c 8DBF out __SP_L__,r24 |
2392 119e FEC1 rjmp .L19 |
2393 .L73: |
2394 11a0 1092 0000 sts DispPtr,__zero_reg__ |
2395 11a4 80E0 ldi r24,lo8(__c.75) |
2396 11a6 90E0 ldi r25,hi8(__c.75) |
2397 11a8 9F93 push r25 |
2398 11aa 8F93 push r24 |
2399 11ac FF92 push r15 |
2400 11ae EF92 push r14 |
2401 11b0 FE01 movw r30,r28 |
2402 11b2 0995 icall |
2403 11b4 84E1 ldi r24,lo8(20) |
2404 11b6 8093 0000 sts DispPtr,r24 |
2405 11ba 0F90 pop __tmp_reg__ |
2406 11bc 0F90 pop __tmp_reg__ |
2407 11be 0F90 pop __tmp_reg__ |
2408 11c0 0F90 pop __tmp_reg__ |
2409 11c2 8091 0000 lds r24,Motor+31 |
2410 11c6 9927 clr r25 |
2411 11c8 87FD sbrc r24,7 |
2412 11ca 9095 com r25 |
2413 11cc 9F93 push r25 |
2414 11ce 8F93 push r24 |
2415 11d0 8091 0000 lds r24,Motor+23 |
2416 11d4 9927 clr r25 |
2417 11d6 87FD sbrc r24,7 |
2418 11d8 9095 com r25 |
2419 11da 9F93 push r25 |
2420 11dc 8F93 push r24 |
2421 11de 8091 0000 lds r24,Motor+15 |
2422 11e2 9927 clr r25 |
2423 11e4 87FD sbrc r24,7 |
2424 11e6 9095 com r25 |
2425 11e8 9F93 push r25 |
2426 11ea 8F93 push r24 |
2427 11ec 8091 0000 lds r24,Motor+7 |
2428 11f0 9927 clr r25 |
2429 11f2 87FD sbrc r24,7 |
2430 11f4 9095 com r25 |
2431 11f6 9F93 push r25 |
2432 11f8 8F93 push r24 |
2433 11fa 80E0 ldi r24,lo8(__c.76) |
2434 11fc 90E0 ldi r25,hi8(__c.76) |
2435 11fe 9F93 push r25 |
2436 1200 8F93 push r24 |
2437 1202 FF92 push r15 |
2438 1204 EF92 push r14 |
2439 1206 E091 0000 lds r30,_printf_P |
2440 120a F091 0000 lds r31,(_printf_P)+1 |
2441 120e 0995 icall |
2442 1210 88E2 ldi r24,lo8(40) |
2443 1212 8093 0000 sts DispPtr,r24 |
2444 1216 2DB7 in r18,__SP_L__ |
2445 1218 3EB7 in r19,__SP_H__ |
2446 121a 245F subi r18,lo8(-(12)) |
2447 121c 3F4F sbci r19,hi8(-(12)) |
2448 121e 2DBF out __SP_L__,r18 |
2449 1220 8091 0000 lds r24,Motor+63 |
2450 1224 9927 clr r25 |
2451 1226 87FD sbrc r24,7 |
2452 1228 9095 com r25 |
2453 122a 9F93 push r25 |
2454 122c 8F93 push r24 |
2455 122e 8091 0000 lds r24,Motor+55 |
2456 1232 9927 clr r25 |
2457 1234 87FD sbrc r24,7 |
2458 1236 9095 com r25 |
2459 1238 9F93 push r25 |
2460 123a 8F93 push r24 |
2461 123c 8091 0000 lds r24,Motor+47 |
2462 1240 9927 clr r25 |
2463 1242 87FD sbrc r24,7 |
2464 1244 9095 com r25 |
2465 1246 9F93 push r25 |
2466 1248 8F93 push r24 |
2467 124a 8091 0000 lds r24,Motor+39 |
2468 124e 9927 clr r25 |
2469 1250 87FD sbrc r24,7 |
2470 1252 9095 com r25 |
2471 1254 9F93 push r25 |
2472 1256 8F93 push r24 |
2473 1258 80E0 ldi r24,lo8(__c.77) |
2474 125a 90E0 ldi r25,hi8(__c.77) |
2475 125c 9F93 push r25 |
2476 125e 8F93 push r24 |
2477 1260 FF92 push r15 |
2478 1262 EF92 push r14 |
2479 1264 E091 0000 lds r30,_printf_P |
2480 1268 F091 0000 lds r31,(_printf_P)+1 |
2481 126c 0995 icall |
2482 126e 8CE3 ldi r24,lo8(60) |
2483 1270 8093 0000 sts DispPtr,r24 |
2484 1274 8DB7 in r24,__SP_L__ |
2485 1276 9EB7 in r25,__SP_H__ |
2486 1278 0C96 adiw r24,12 |
2487 127a 8DBF out __SP_L__,r24 |
2488 127c 8091 0000 lds r24,Motor+95 |
2489 1280 9927 clr r25 |
2490 1282 87FD sbrc r24,7 |
2491 1284 9095 com r25 |
2492 1286 9F93 push r25 |
2493 1288 8F93 push r24 |
2494 128a 8091 0000 lds r24,Motor+87 |
2495 128e 9927 clr r25 |
2496 1290 87FD sbrc r24,7 |
2497 1292 9095 com r25 |
2498 1294 9F93 push r25 |
2499 1296 8F93 push r24 |
2500 1298 8091 0000 lds r24,Motor+79 |
2501 129c 9927 clr r25 |
2502 129e 87FD sbrc r24,7 |
2503 12a0 9095 com r25 |
2504 12a2 9F93 push r25 |
2505 12a4 8F93 push r24 |
2506 12a6 8091 0000 lds r24,Motor+71 |
2507 12aa 9927 clr r25 |
2508 12ac 87FD sbrc r24,7 |
2509 12ae 9095 com r25 |
2510 12b0 9F93 push r25 |
2511 12b2 8F93 push r24 |
2512 12b4 80E0 ldi r24,lo8(__c.78) |
2513 12b6 90E0 ldi r25,hi8(__c.78) |
2514 12b8 9F93 push r25 |
2515 12ba 8F93 push r24 |
2516 12bc FF92 push r15 |
2517 12be EF92 push r14 |
2518 12c0 E091 0000 lds r30,_printf_P |
2519 12c4 F091 0000 lds r31,(_printf_P)+1 |
2520 12c8 0995 icall |
2521 12ca 2DB7 in r18,__SP_L__ |
2522 12cc 3EB7 in r19,__SP_H__ |
2523 12ce 245F subi r18,lo8(-(12)) |
2524 12d0 3F4F sbci r19,hi8(-(12)) |
2525 .L84: |
2526 12d2 2DBF out __SP_L__,r18 |
2527 12d4 63C1 rjmp .L19 |
2528 .L74: |
2529 12d6 1092 0000 sts DispPtr,__zero_reg__ |
2530 12da 80E0 ldi r24,lo8(__c.79) |
2531 12dc 90E0 ldi r25,hi8(__c.79) |
2532 12de 9F93 push r25 |
2533 12e0 8F93 push r24 |
2534 12e2 00E0 ldi r16,lo8(pm(Menu_Putchar)) |
2535 12e4 10E0 ldi r17,hi8(pm(Menu_Putchar)) |
2536 12e6 FF92 push r15 |
2537 12e8 EF92 push r14 |
2538 12ea FE01 movw r30,r28 |
2539 12ec 0995 icall |
2540 12ee 84E1 ldi r24,lo8(20) |
2541 12f0 8093 0000 sts DispPtr,r24 |
2542 12f4 0F90 pop __tmp_reg__ |
2543 12f6 0F90 pop __tmp_reg__ |
2544 12f8 0F90 pop __tmp_reg__ |
2545 12fa 0F90 pop __tmp_reg__ |
2546 12fc 8091 0000 lds r24,Motor+27 |
2547 1300 881F rol r24 |
2548 1302 8827 clr r24 |
2549 1304 881F rol r24 |
2550 1306 97E0 ldi r25,lo8(7) |
2551 1308 899F mul r24,r25 |
2552 130a C001 movw r24,r0 |
2553 130c 1124 clr r1 |
2554 130e 8D96 adiw r24,45 |
2555 1310 9F93 push r25 |
2556 1312 8F93 push r24 |
2557 1314 8091 0000 lds r24,Motor+19 |
2558 1318 881F rol r24 |
2559 131a 8827 clr r24 |
2560 131c 881F rol r24 |
2561 131e 96E0 ldi r25,lo8(6) |
2562 1320 899F mul r24,r25 |
2563 1322 C001 movw r24,r0 |
2564 1324 1124 clr r1 |
2565 1326 8D96 adiw r24,45 |
2566 1328 9F93 push r25 |
2567 132a 8F93 push r24 |
2568 132c 8091 0000 lds r24,Motor+11 |
2569 1330 881F rol r24 |
2570 1332 8827 clr r24 |
2571 1334 881F rol r24 |
2572 1336 95E0 ldi r25,lo8(5) |
2573 1338 899F mul r24,r25 |
2574 133a C001 movw r24,r0 |
2575 133c 1124 clr r1 |
2576 133e 8D96 adiw r24,45 |
2577 1340 9F93 push r25 |
2578 1342 8F93 push r24 |
2579 1344 8091 0000 lds r24,Motor+3 |
2580 1348 881F rol r24 |
2581 134a 8827 clr r24 |
2582 134c 881F rol r24 |
2583 134e 9927 clr r25 |
2584 1350 880F lsl r24 |
2585 1352 991F rol r25 |
2586 1354 880F lsl r24 |
2587 1356 991F rol r25 |
2588 1358 8D96 adiw r24,45 |
2589 135a 9F93 push r25 |
2590 135c 8F93 push r24 |
2591 135e 80E0 ldi r24,lo8(__c.80) |
2592 1360 90E0 ldi r25,hi8(__c.80) |
2593 1362 9F93 push r25 |
2594 1364 8F93 push r24 |
2595 1366 FF92 push r15 |
2596 1368 EF92 push r14 |
2597 136a E091 0000 lds r30,_printf_P |
2598 136e F091 0000 lds r31,(_printf_P)+1 |
2599 1372 0995 icall |
2600 1374 88E2 ldi r24,lo8(40) |
2601 1376 8093 0000 sts DispPtr,r24 |
2602 137a 8DB7 in r24,__SP_L__ |
2603 137c 9EB7 in r25,__SP_H__ |
2604 137e 0C96 adiw r24,12 |
2605 1380 8DBF out __SP_L__,r24 |
2606 1382 8091 0000 lds r24,Motor+59 |
2607 1386 881F rol r24 |
2608 1388 8827 clr r24 |
2609 138a 881F rol r24 |
2610 138c 9BE0 ldi r25,lo8(11) |
2611 138e 899F mul r24,r25 |
2612 1390 C001 movw r24,r0 |
2613 1392 1124 clr r1 |
2614 1394 8D96 adiw r24,45 |
2615 1396 9F93 push r25 |
2616 1398 8F93 push r24 |
2617 139a 8091 0000 lds r24,Motor+51 |
2618 139e 881F rol r24 |
2619 13a0 8827 clr r24 |
2620 13a2 881F rol r24 |
2621 13a4 9AE0 ldi r25,lo8(10) |
2622 13a6 899F mul r24,r25 |
2623 13a8 C001 movw r24,r0 |
2624 13aa 1124 clr r1 |
2625 13ac 8D96 adiw r24,45 |
2626 13ae 9F93 push r25 |
2627 13b0 8F93 push r24 |
2628 13b2 8091 0000 lds r24,Motor+43 |
2629 13b6 881F rol r24 |
2630 13b8 8827 clr r24 |
2631 13ba 881F rol r24 |
2632 13bc 99E0 ldi r25,lo8(9) |
2633 13be 899F mul r24,r25 |
2634 13c0 C001 movw r24,r0 |
2635 13c2 1124 clr r1 |
2636 13c4 8D96 adiw r24,45 |
2637 13c6 9F93 push r25 |
2638 13c8 8F93 push r24 |
2639 13ca 8091 0000 lds r24,Motor+35 |
2640 13ce 881F rol r24 |
2641 13d0 8827 clr r24 |
2642 13d2 881F rol r24 |
2643 13d4 9927 clr r25 |
2644 13d6 23E0 ldi r18,3 |
2645 13d8 880F 1: lsl r24 |
2646 13da 991F rol r25 |
2647 13dc 2A95 dec r18 |
2648 13de E1F7 brne 1b |
2649 13e0 8D96 adiw r24,45 |
2650 13e2 9F93 push r25 |
2651 13e4 8F93 push r24 |
2652 13e6 80E0 ldi r24,lo8(__c.81) |
2653 13e8 90E0 ldi r25,hi8(__c.81) |
2654 13ea 9F93 push r25 |
2655 13ec 8F93 push r24 |
2656 13ee FF92 push r15 |
2657 13f0 EF92 push r14 |
2658 13f2 E091 0000 lds r30,_printf_P |
2659 13f6 F091 0000 lds r31,(_printf_P)+1 |
2660 13fa 0995 icall |
2661 13fc 8CE3 ldi r24,lo8(60) |
2662 13fe 8093 0000 sts DispPtr,r24 |
2663 1402 2DB7 in r18,__SP_L__ |
2664 1404 3EB7 in r19,__SP_H__ |
2665 1406 245F subi r18,lo8(-(12)) |
2666 1408 3F4F sbci r19,hi8(-(12)) |
2667 140a 2DBF out __SP_L__,r18 |
2668 140c 8091 0000 lds r24,Motor+67 |
2669 1410 881F rol r24 |
2670 1412 8827 clr r24 |
2671 1414 881F rol r24 |
2672 1416 9CE0 ldi r25,lo8(12) |
2673 1418 899F mul r24,r25 |
2674 141a C001 movw r24,r0 |
2675 141c 1124 clr r1 |
2676 141e 8D96 adiw r24,45 |
2677 1420 9F93 push r25 |
2678 1422 8F93 push r24 |
2679 1424 80E0 ldi r24,lo8(__c.82) |
2680 1426 90E0 ldi r25,hi8(__c.82) |
2681 1428 9F93 push r25 |
2682 142a 8F93 push r24 |
2683 142c FF92 push r15 |
2684 142e EF92 push r14 |
2685 1430 E091 0000 lds r30,_printf_P |
2686 1434 F091 0000 lds r31,(_printf_P)+1 |
2687 1438 0995 icall |
2688 143a 8091 0000 lds r24,Motor+75 |
2689 143e 2DB7 in r18,__SP_L__ |
2690 1440 3EB7 in r19,__SP_H__ |
2691 1442 2A5F subi r18,lo8(-(6)) |
2692 1444 3F4F sbci r19,hi8(-(6)) |
2693 1446 2DBF out __SP_L__,r18 |
2694 1448 87FF sbrs r24,7 |
2695 144a 12C0 rjmp .L75 |
2696 144c 80E4 ldi r24,lo8(64) |
2697 144e 8093 0000 sts DispPtr,r24 |
2698 1452 80E0 ldi r24,lo8(__c.83) |
2699 1454 90E0 ldi r25,hi8(__c.83) |
2700 1456 9F93 push r25 |
2701 1458 8F93 push r24 |
2702 145a FF92 push r15 |
2703 145c EF92 push r14 |
2704 145e E091 0000 lds r30,_printf_P |
2705 1462 F091 0000 lds r31,(_printf_P)+1 |
2706 1466 0995 icall |
2707 1468 0F90 pop __tmp_reg__ |
2708 146a 0F90 pop __tmp_reg__ |
2709 146c 0F90 pop __tmp_reg__ |
2710 146e 0F90 pop __tmp_reg__ |
2711 .L75: |
2712 1470 8091 0000 lds r24,Motor+83 |
2713 1474 87FF sbrs r24,7 |
2714 1476 12C0 rjmp .L76 |
2715 1478 84E4 ldi r24,lo8(68) |
2716 147a 8093 0000 sts DispPtr,r24 |
2717 147e 80E0 ldi r24,lo8(__c.84) |
2718 1480 90E0 ldi r25,hi8(__c.84) |
2719 1482 9F93 push r25 |
2720 1484 8F93 push r24 |
2721 1486 1F93 push r17 |
2722 1488 0F93 push r16 |
2723 148a E091 0000 lds r30,_printf_P |
2724 148e F091 0000 lds r31,(_printf_P)+1 |
2725 1492 0995 icall |
2726 1494 0F90 pop __tmp_reg__ |
2727 1496 0F90 pop __tmp_reg__ |
2728 1498 0F90 pop __tmp_reg__ |
2729 149a 0F90 pop __tmp_reg__ |
2730 .L76: |
2731 149c 8091 0000 lds r24,Motor+91 |
2732 14a0 87FF sbrs r24,7 |
2733 14a2 7CC0 rjmp .L19 |
2734 14a4 88E4 ldi r24,lo8(72) |
2735 14a6 8093 0000 sts DispPtr,r24 |
2736 14aa 80E0 ldi r24,lo8(__c.85) |
2737 14ac 90E0 ldi r25,hi8(__c.85) |
2738 .L92: |
2739 14ae 9F93 push r25 |
2740 14b0 8F93 push r24 |
2741 14b2 1F93 push r17 |
2742 14b4 0F93 push r16 |
2743 .L86: |
2744 14b6 E091 0000 lds r30,_printf_P |
2745 14ba F091 0000 lds r31,(_printf_P)+1 |
2746 14be 0995 icall |
2747 14c0 0F90 pop __tmp_reg__ |
2748 14c2 0F90 pop __tmp_reg__ |
2749 14c4 0F90 pop __tmp_reg__ |
2750 14c6 0F90 pop __tmp_reg__ |
2751 14c8 69C0 rjmp .L19 |
2752 .L78: |
2753 14ca 1092 0000 sts DispPtr,__zero_reg__ |
2754 14ce 80E0 ldi r24,lo8(__c.86) |
2755 14d0 90E0 ldi r25,hi8(__c.86) |
2756 14d2 9F93 push r25 |
2757 14d4 8F93 push r24 |
2758 14d6 FF92 push r15 |
2759 14d8 EF92 push r14 |
2760 14da FE01 movw r30,r28 |
2761 14dc 0995 icall |
2762 14de 84E1 ldi r24,lo8(20) |
2763 14e0 8093 0000 sts DispPtr,r24 |
2764 14e4 0F90 pop __tmp_reg__ |
2765 14e6 0F90 pop __tmp_reg__ |
2766 14e8 0F90 pop __tmp_reg__ |
2767 14ea 0F90 pop __tmp_reg__ |
2768 14ec 8091 0000 lds r24,FlugMinutenGesamt |
2769 14f0 9091 0000 lds r25,(FlugMinutenGesamt)+1 |
2770 14f4 9F93 push r25 |
2771 14f6 8F93 push r24 |
2772 14f8 80E0 ldi r24,lo8(__c.87) |
2773 14fa 90E0 ldi r25,hi8(__c.87) |
2774 14fc 9F93 push r25 |
2775 14fe 8F93 push r24 |
2776 1500 FF92 push r15 |
2777 1502 EF92 push r14 |
2778 1504 E091 0000 lds r30,_printf_P |
2779 1508 F091 0000 lds r31,(_printf_P)+1 |
2780 150c 0995 icall |
2781 150e 88E2 ldi r24,lo8(40) |
2782 1510 8093 0000 sts DispPtr,r24 |
2783 1514 8DB7 in r24,__SP_L__ |
2784 1516 9EB7 in r25,__SP_H__ |
2785 1518 0696 adiw r24,6 |
2786 151a 8DBF out __SP_L__,r24 |
2787 151c 8091 0000 lds r24,FlugMinuten |
2788 1520 9091 0000 lds r25,(FlugMinuten)+1 |
2789 1524 9F93 push r25 |
2790 1526 8F93 push r24 |
2791 1528 80E0 ldi r24,lo8(__c.88) |
2792 152a 90E0 ldi r25,hi8(__c.88) |
2793 152c 9F93 push r25 |
2794 152e 8F93 push r24 |
2795 1530 FF92 push r15 |
2796 1532 EF92 push r14 |
2797 1534 E091 0000 lds r30,_printf_P |
2798 1538 F091 0000 lds r31,(_printf_P)+1 |
2799 153c 0995 icall |
2800 153e 89E4 ldi r24,lo8(73) |
2801 1540 8093 0000 sts DispPtr,r24 |
2802 1544 2DB7 in r18,__SP_L__ |
2803 1546 3EB7 in r19,__SP_H__ |
2804 1548 2A5F subi r18,lo8(-(6)) |
2805 154a 3F4F sbci r19,hi8(-(6)) |
2806 154c 2DBF out __SP_L__,r18 |
2807 154e 80E0 ldi r24,lo8(__c.89) |
2808 1550 90E0 ldi r25,hi8(__c.89) |
2809 1552 9F93 push r25 |
2810 1554 8F93 push r24 |
2811 1556 FF92 push r15 |
2812 1558 EF92 push r14 |
2813 155a E091 0000 lds r30,_printf_P |
2814 155e F091 0000 lds r31,(_printf_P)+1 |
2815 1562 0995 icall |
2816 1564 8091 0000 lds r24,RemoteKeys |
2817 1568 0F90 pop __tmp_reg__ |
2818 156a 0F90 pop __tmp_reg__ |
2819 156c 0F90 pop __tmp_reg__ |
2820 156e 0F90 pop __tmp_reg__ |
2821 1570 83FF sbrs r24,3 |
2822 1572 14C0 rjmp .L19 |
2823 1574 1092 0000 sts (FlugMinuten)+1,__zero_reg__ |
2824 1578 1092 0000 sts FlugMinuten,__zero_reg__ |
2825 157c 60E0 ldi r22,lo8(0) |
2826 157e 70E0 ldi r23,hi8(0) |
2827 1580 8EE0 ldi r24,lo8(14) |
2828 1582 90E0 ldi r25,hi8(14) |
2829 1584 0E94 0000 call SetParamWord |
2830 1588 09C0 rjmp .L19 |
2831 .L80: |
2832 158a 8091 0000 lds r24,MaxMenue |
2833 158e 2817 cp r18,r24 |
2834 1590 19F4 brne .L81 |
2835 1592 2150 subi r18,lo8(-(-1)) |
2836 1594 2093 0000 sts MaxMenue,r18 |
2837 .L81: |
2838 1598 1092 0000 sts MenuePunkt,__zero_reg__ |
2839 .L19: |
2840 159c 1092 0000 sts RemoteKeys,__zero_reg__ |
2841 /* epilogue: frame size=0 */ |
2842 15a0 E6E0 ldi r30,6 |
2843 15a2 CDB7 in r28,__SP_L__ |
2844 15a4 DEB7 in r29,__SP_H__ |
2845 15a6 0C94 0000 jmp __epilogue_restores__+24 |
2846 /* epilogue end (size=5) */ |
2847 /* function Menu size 2788 (2777) */ |
2849 /* File "menu.c": code 2808 = 0x0af8 (2795), prologues 6, epilogues 7 */ |
DEFINED SYMBOLS |
*ABS*:00000000 menu.c |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:15 .bss:00000000 RemoteKeys |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:21 .bss:00000001 MenuePunkt |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:27 .data:00000000 MaxMenue |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:34 .bss:00000002 DispPtr |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:40 .data:00000001 DisplayBuff |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:46 .text:00000000 LcdClear |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:65 .text:00000012 Menu_Putchar |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:84 .progmem.data:00000000 __c.0 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:88 .progmem.data:00000005 __c.1 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:92 .progmem.data:0000000a __c.2 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:96 .progmem.data:0000001a __c.3 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:100 .progmem.data:0000002f __c.4 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:104 .progmem.data:0000003d __c.5 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:108 .progmem.data:00000054 __c.6 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:112 .progmem.data:00000069 __c.7 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:116 .progmem.data:00000076 __c.8 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:120 .progmem.data:00000083 __c.9 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:124 .progmem.data:00000090 __c.10 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:128 .progmem.data:0000009d __c.11 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:132 .progmem.data:000000aa __c.12 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:136 .progmem.data:000000b7 __c.13 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:140 .progmem.data:000000c6 __c.14 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:144 .progmem.data:000000cf __c.15 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:148 .progmem.data:000000de __c.16 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:152 .progmem.data:000000e7 __c.17 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:156 .progmem.data:000000f4 __c.18 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:160 .progmem.data:00000103 __c.19 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:164 .progmem.data:00000112 __c.20 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:168 .progmem.data:00000121 __c.21 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:172 .progmem.data:00000131 __c.22 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:176 .progmem.data:00000141 __c.23 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:180 .progmem.data:00000151 __c.24 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:184 .progmem.data:00000161 __c.25 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:188 .progmem.data:00000171 __c.26 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:192 .progmem.data:00000181 __c.27 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:196 .progmem.data:00000191 __c.28 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:200 .progmem.data:000001a1 __c.29 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:204 .progmem.data:000001af __c.30 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:208 .progmem.data:000001c0 __c.31 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:212 .progmem.data:000001d1 __c.32 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:216 .progmem.data:000001df __c.33 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:220 .progmem.data:000001f1 __c.34 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:224 .progmem.data:00000203 __c.35 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:228 .progmem.data:00000212 __c.36 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:232 .progmem.data:00000226 __c.37 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:236 .progmem.data:0000023a __c.38 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:240 .progmem.data:0000024e __c.39 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:244 .progmem.data:0000025b __c.40 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:248 .progmem.data:0000026a __c.41 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:252 .progmem.data:00000279 __c.42 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:256 .progmem.data:00000288 __c.43 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:260 .progmem.data:0000029c __c.44 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:264 .progmem.data:000002b0 __c.45 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:268 .progmem.data:000002c0 __c.46 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:272 .progmem.data:000002d2 __c.47 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:276 .progmem.data:000002db __c.48 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:280 .progmem.data:000002eb __c.49 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:284 .progmem.data:000002fb __c.50 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:288 .progmem.data:0000030b __c.51 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:292 .progmem.data:00000313 __c.52 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:296 .progmem.data:00000321 __c.53 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:300 .progmem.data:0000032f __c.54 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:304 .progmem.data:0000033d __c.55 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:308 .progmem.data:00000349 __c.56 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:312 .progmem.data:00000355 __c.57 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:316 .progmem.data:00000361 __c.58 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:320 .progmem.data:0000036d __c.59 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:324 .progmem.data:00000379 __c.60 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:328 .progmem.data:00000385 __c.61 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:332 .progmem.data:00000391 __c.62 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:336 .progmem.data:0000039d __c.63 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:340 .progmem.data:000003a5 __c.64 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:344 .progmem.data:000003b3 __c.65 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:348 .progmem.data:000003c1 __c.66 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:352 .progmem.data:000003cf __c.67 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:356 .progmem.data:000003df __c.68 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:360 .progmem.data:000003ef __c.69 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:364 .progmem.data:000003ff __c.70 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:368 .progmem.data:0000040f __c.71 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:372 .progmem.data:0000041f __c.72 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:376 .progmem.data:00000430 __c.73 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:380 .progmem.data:00000441 __c.74 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:384 .progmem.data:00000452 __c.75 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:388 .progmem.data:00000461 __c.76 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:392 .progmem.data:00000472 __c.77 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:396 .progmem.data:00000483 __c.78 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:400 .progmem.data:00000494 __c.79 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:404 .progmem.data:000004a3 __c.80 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:408 .progmem.data:000004b7 __c.81 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:412 .progmem.data:000004cb __c.82 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:416 .progmem.data:000004dc __c.83 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:420 .progmem.data:000004df __c.84 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:424 .progmem.data:000004e2 __c.85 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:428 .progmem.data:000004e5 __c.86 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:432 .progmem.data:000004f3 __c.87 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:436 .progmem.data:00000500 __c.88 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:440 .progmem.data:0000050d __c.89 |
C:\Users\Thomas\AppData\Local\Temp/cc0mbaaa.s:445 .text:00000028 Menu |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
_printf_P |
__tablejump2__ |
PlatinenVersion |
__udivmodqi4 |
Mixer |
GetActiveParamSet |
VersionInfo |
MissingMotor |
I2CTimeout |
EE_Parameter |
HoehenWert |
__divmodsi4 |
SollHoehe |
MessLuftdruck |
IntegralNick |
IntegralRoll |
KompassValue |
PPM_in |
AdNeutralNick |
AdWertNick |
AdNeutralRoll |
AdWertRoll |
AdNeutralGier |
AdWertGier |
AnalogOffsetNick |
AnalogOffsetRoll |
AnalogOffsetGier |
NeutralAccX |
AdWertAccNick |
NeutralAccY |
AdWertAccRoll |
NeutralAccZ |
AdWertAccHoch |
UBat |
__divmodhi4 |
Capacity |
__udivmodhi4 |
SenderOkay |
Channels |
KompassRichtung |
KompassStartwert |
Poti |
Parameter_ServoNickControl |
ServoNickValue |
ExternControl |
Motor |
FlugMinutenGesamt |
FlugMinuten |
SetParamWord |
__epilogue_restores__ |
/branches/metro/v0.82a metro_Akku+/mymath.c |
---|
0,0 → 1,41 |
#include <stdlib.h> |
#include <avr/pgmspace.h> |
#include "mymath.h" |
// discrete mathematics |
// Sinus with argument in degree at an angular resolution of 1 degree and a discretisation of 13 bit. |
const uint16_t pgm_sinlookup[91] PROGMEM = {0, 143, 286, 429, 571, 714, 856, 998, 1140, 1282, 1423, 1563, 1703, 1843, 1982, 2120, 2258, 2395, 2531, 2667, 2802, 2936, 3069, 3201, 3332, 3462, 3591, 3719, 3846, 3972, 4096, 4219, 4341, 4462, 4581, 4699, 4815, 4930, 5043, 5155, 5266, 5374, 5482, 5587, 5691, 5793, 5893, 5991, 6088, 6183, 6275, 6366, 6455, 6542, 6627, 6710, 6791, 6870, 6947, 7022, 7094, 7165, 7233, 7299, 7363, 7424, 7484, 7541, 7595, 7648, 7698, 7746, 7791, 7834, 7875, 7913, 7949, 7982, 8013, 8041, 8068, 8091, 8112, 8131, 8147, 8161, 8172, 8181, 8187, 8191, 8192}; |
int16_t c_sin_8192(int16_t angle) |
{ |
int8_t m,n; |
int16_t sinus; |
// avoid negative angles |
if (angle < 0) |
{ |
m = -1; |
angle = abs(angle); |
} |
else m = +1; |
// fold angle to intervall 0 to 359 |
angle %= 360; |
// check quadrant |
if (angle <= 90) n=1; // first quadrant |
else if ((angle > 90) && (angle <= 180)) {angle = 180 - angle; n = 1;} // second quadrant |
else if ((angle > 180) && (angle <= 270)) {angle = angle - 180; n = -1;} // third quadrant |
else {angle = 360 - angle; n = -1;} //fourth quadrant |
// get lookup value |
sinus = pgm_read_word(&pgm_sinlookup[angle]); |
// calculate sinus value |
return (sinus * m * n); |
} |
// Cosinus with argument in degree at an angular resolution of 1 degree and a discretisation of 13 bit. |
int16_t c_cos_8192(int16_t angle) |
{ |
return (c_sin_8192(90 - angle)); |
} |
/branches/metro/v0.82a metro_Akku+/mymath.d |
---|
0,0 → 1,0 |
mymath.o mymath.d : mymath.c mymath.h |
/branches/metro/v0.82a metro_Akku+/mymath.h |
---|
0,0 → 1,10 |
#ifndef _MYMATH_H |
#define _MYMATH_H |
#include <inttypes.h> |
extern int16_t c_sin_8192(int16_t angle); |
extern int16_t c_cos_8192(int16_t angle); |
extern int16_t c_atan2(int16_t y, int16_t x); |
extern uint32_t c_sqrt(uint32_t a); |
#endif // _MYMATH_H |
/branches/metro/v0.82a metro_Akku+/mymath.lst |
---|
0,0 → 1,226 |
1 .file "mymath.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global pgm_sinlookup |
11 .section .progmem.data,"a",@progbits |
14 pgm_sinlookup: |
15 0000 0000 .word 0 |
16 0002 8F00 .word 143 |
17 0004 1E01 .word 286 |
18 0006 AD01 .word 429 |
19 0008 3B02 .word 571 |
20 000a CA02 .word 714 |
21 000c 5803 .word 856 |
22 000e E603 .word 998 |
23 0010 7404 .word 1140 |
24 0012 0205 .word 1282 |
25 0014 8F05 .word 1423 |
26 0016 1B06 .word 1563 |
27 0018 A706 .word 1703 |
28 001a 3307 .word 1843 |
29 001c BE07 .word 1982 |
30 001e 4808 .word 2120 |
31 0020 D208 .word 2258 |
32 0022 5B09 .word 2395 |
33 0024 E309 .word 2531 |
34 0026 6B0A .word 2667 |
35 0028 F20A .word 2802 |
36 002a 780B .word 2936 |
37 002c FD0B .word 3069 |
38 002e 810C .word 3201 |
39 0030 040D .word 3332 |
40 0032 860D .word 3462 |
41 0034 070E .word 3591 |
42 0036 870E .word 3719 |
43 0038 060F .word 3846 |
44 003a 840F .word 3972 |
45 003c 0010 .word 4096 |
46 003e 7B10 .word 4219 |
47 0040 F510 .word 4341 |
48 0042 6E11 .word 4462 |
49 0044 E511 .word 4581 |
50 0046 5B12 .word 4699 |
51 0048 CF12 .word 4815 |
52 004a 4213 .word 4930 |
53 004c B313 .word 5043 |
54 004e 2314 .word 5155 |
55 0050 9214 .word 5266 |
56 0052 FE14 .word 5374 |
57 0054 6A15 .word 5482 |
58 0056 D315 .word 5587 |
59 0058 3B16 .word 5691 |
60 005a A116 .word 5793 |
61 005c 0517 .word 5893 |
62 005e 6717 .word 5991 |
63 0060 C817 .word 6088 |
64 0062 2718 .word 6183 |
65 0064 8318 .word 6275 |
66 0066 DE18 .word 6366 |
67 0068 3719 .word 6455 |
68 006a 8E19 .word 6542 |
69 006c E319 .word 6627 |
70 006e 361A .word 6710 |
71 0070 871A .word 6791 |
72 0072 D61A .word 6870 |
73 0074 231B .word 6947 |
74 0076 6E1B .word 7022 |
75 0078 B61B .word 7094 |
76 007a FD1B .word 7165 |
77 007c 411C .word 7233 |
78 007e 831C .word 7299 |
79 0080 C31C .word 7363 |
80 0082 001D .word 7424 |
81 0084 3C1D .word 7484 |
82 0086 751D .word 7541 |
83 0088 AB1D .word 7595 |
84 008a E01D .word 7648 |
85 008c 121E .word 7698 |
86 008e 421E .word 7746 |
87 0090 6F1E .word 7791 |
88 0092 9A1E .word 7834 |
89 0094 C31E .word 7875 |
90 0096 E91E .word 7913 |
91 0098 0D1F .word 7949 |
92 009a 2E1F .word 7982 |
93 009c 4D1F .word 8013 |
94 009e 691F .word 8041 |
95 00a0 841F .word 8068 |
96 00a2 9B1F .word 8091 |
97 00a4 B01F .word 8112 |
98 00a6 C31F .word 8131 |
99 00a8 D31F .word 8147 |
100 00aa E11F .word 8161 |
101 00ac EC1F .word 8172 |
102 00ae F51F .word 8181 |
103 00b0 FB1F .word 8187 |
104 00b2 FF1F .word 8191 |
105 00b4 0020 .word 8192 |
106 .text |
107 .global c_sin_8192 |
109 c_sin_8192: |
110 /* prologue: frame size=0 */ |
111 0000 CF93 push r28 |
112 /* prologue end (size=1) */ |
113 0002 FC01 movw r30,r24 |
114 0004 97FF sbrs r25,7 |
115 0006 05C0 rjmp .L2 |
116 0008 CFEF ldi r28,lo8(-1) |
117 000a F095 com r31 |
118 000c E195 neg r30 |
119 000e FF4F sbci r31,lo8(-1) |
120 0010 01C0 rjmp .L4 |
121 .L2: |
122 0012 C1E0 ldi r28,lo8(1) |
123 .L4: |
124 0014 28E6 ldi r18,lo8(360) |
125 0016 31E0 ldi r19,hi8(360) |
126 0018 CF01 movw r24,r30 |
127 001a B901 movw r22,r18 |
128 001c 0E94 0000 call __divmodhi4 |
129 0020 FC01 movw r30,r24 |
130 0022 8B35 cpi r24,91 |
131 0024 9105 cpc r25,__zero_reg__ |
132 0026 54F0 brlt .L12 |
133 0028 8B55 subi r24,lo8(-(-91)) |
134 002a 9040 sbci r25,hi8(-(-91)) |
135 002c 8A35 cpi r24,90 |
136 002e 9105 cpc r25,__zero_reg__ |
137 0030 38F4 brsh .L7 |
138 0032 84EB ldi r24,lo8(180) |
139 0034 90E0 ldi r25,hi8(180) |
140 0036 8E1B sub r24,r30 |
141 0038 9F0B sbc r25,r31 |
142 003a FC01 movw r30,r24 |
143 .L12: |
144 003c 41E0 ldi r20,lo8(1) |
145 003e 0DC0 rjmp .L6 |
146 .L7: |
147 0040 CF01 movw r24,r30 |
148 0042 855B subi r24,lo8(-(-181)) |
149 0044 9040 sbci r25,hi8(-(-181)) |
150 0046 8A35 cpi r24,90 |
151 0048 9105 cpc r25,__zero_reg__ |
152 004a 18F4 brsh .L9 |
153 004c E45B subi r30,lo8(-(-180)) |
154 004e F040 sbci r31,hi8(-(-180)) |
155 0050 03C0 rjmp .L11 |
156 .L9: |
157 0052 2E1B sub r18,r30 |
158 0054 3F0B sbc r19,r31 |
159 0056 F901 movw r30,r18 |
160 .L11: |
161 0058 4FEF ldi r20,lo8(-1) |
162 .L6: |
163 005a EE0F add r30,r30 |
164 005c FF1F adc r31,r31 |
165 005e E050 subi r30,lo8(-(pgm_sinlookup)) |
166 0060 F040 sbci r31,hi8(-(pgm_sinlookup)) |
167 /* #APP */ |
168 0062 2591 lpm r18, Z+ |
169 0064 3491 lpm r19, Z |
170 |
171 /* #NOAPP */ |
172 0066 8C2F mov r24,r28 |
173 0068 9927 clr r25 |
174 006a 87FD sbrc r24,7 |
175 006c 9095 com r25 |
176 006e 289F mul r18,r24 |
177 0070 B001 movw r22,r0 |
178 0072 299F mul r18,r25 |
179 0074 700D add r23,r0 |
180 0076 389F mul r19,r24 |
181 0078 700D add r23,r0 |
182 007a 1124 clr r1 |
183 007c 842F mov r24,r20 |
184 007e 9927 clr r25 |
185 0080 87FD sbrc r24,7 |
186 0082 9095 com r25 |
187 0084 689F mul r22,r24 |
188 0086 A001 movw r20,r0 |
189 0088 699F mul r22,r25 |
190 008a 500D add r21,r0 |
191 008c 789F mul r23,r24 |
192 008e 500D add r21,r0 |
193 0090 1124 clr r1 |
194 0092 CA01 movw r24,r20 |
195 /* epilogue: frame size=0 */ |
196 0094 CF91 pop r28 |
197 0096 0895 ret |
198 /* epilogue end (size=2) */ |
199 /* function c_sin_8192 size 80 (77) */ |
201 .global c_cos_8192 |
203 c_cos_8192: |
204 /* prologue: frame size=0 */ |
205 /* prologue end (size=0) */ |
206 0098 2AE5 ldi r18,lo8(90) |
207 009a 30E0 ldi r19,hi8(90) |
208 009c 281B sub r18,r24 |
209 009e 390B sbc r19,r25 |
210 00a0 C901 movw r24,r18 |
211 00a2 0E94 0000 call c_sin_8192 |
212 /* epilogue: frame size=0 */ |
213 00a6 0895 ret |
214 /* epilogue end (size=1) */ |
215 /* function c_cos_8192 size 8 (7) */ |
217 /* File "mymath.c": code 88 = 0x0058 ( 84), prologues 1, epilogues 3 */ |
DEFINED SYMBOLS |
*ABS*:00000000 mymath.c |
C:\Users\Thomas\AppData\Local\Temp/ccywbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccywbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccywbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccywbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccywbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccywbaaa.s:14 .progmem.data:00000000 pgm_sinlookup |
C:\Users\Thomas\AppData\Local\Temp/ccywbaaa.s:109 .text:00000000 c_sin_8192 |
C:\Users\Thomas\AppData\Local\Temp/ccywbaaa.s:203 .text:00000098 c_cos_8192 |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
__divmodhi4 |
/branches/metro/v0.82a metro_Akku+/old_macros.h |
---|
0,0 → 1,47 |
/* |
For backwards compatibility only. |
Ingo Busker ingo@mikrocontroller.com |
*/ |
#ifndef cbi |
#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) |
#endif |
#ifndef sbi |
#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) |
#endif |
#ifndef inb |
#define inb(sfr) _SFR_BYTE(sfr) |
#endif |
#ifndef outb |
#define outb(sfr, val) (_SFR_BYTE(sfr) = (val)) |
#endif |
#ifndef inw |
#define inw(sfr) _SFR_WORD(sfr) |
#endif |
#ifndef outw |
#define outw(sfr, val) (_SFR_WORD(sfr) = (val)) |
#endif |
#ifndef outp |
#define outp(val, sfr) outb(sfr, val) |
#endif |
#ifndef inp |
#define inp(sfr) inb(sfr) |
#endif |
#ifndef BV |
#define BV(bit) _BV(bit) |
#endif |
#ifndef PRG_RDB |
#define PRG_RDB pgm_read_byte |
#endif |
/branches/metro/v0.82a metro_Akku+/printf_P.h |
---|
0,0 → 1,69 |
// Die Funktion printf_P() unterliegt ihrer eigenen Lizenz und ist nicht von der Lizenz für den MikroKopter-Teil unterstellt |
/* |
Copyright (C) 1993 Free Software Foundation |
This file is part of the GNU IO Library. This library is free |
software; you can redistribute it and/or modify it under the |
terms of the GNU General Public License as published by the |
Free Software Foundation; either version 2, or (at your option) |
any later version. |
This library is distributed in the hope that it will be useful, |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
GNU General Public License for more details. |
You should have received a copy of the GNU General Public License |
along with this library; see the file COPYING. If not, write to the Free |
Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
As a special exception, if you link this library with files |
compiled with a GNU compiler to produce an executable, this does not cause |
the resulting executable to be covered by the GNU General Public License. |
This exception does not however invalidate any other reasons why |
the executable file might be covered by the GNU General Public License. */ |
/* |
* Copyright (c) 1990 Regents of the University of California. |
* All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* are met: |
* 1. Redistributions of source code must retain the above copyright |
* notice, this list of conditions and the following disclaimer. |
* 2. Redistributions in binary form must reproduce the above copyright |
* notice, this list of conditions and the following disclaimer in the |
* documentation and/or other materials provided with the distribution. |
* 3. [rescinded 22 July 1999] |
* 4. Neither the name of the University nor the names of its contributors |
* may be used to endorse or promote products derived from this software |
* without specific prior written permission. |
* |
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND |
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
* SUCH DAMAGE. |
*/ |
/******************************************************************************/ |
#ifndef _PRINTF_P_H_ |
#define _PRINTF_P_H_ |
#include <avr/pgmspace.h> |
// function pointer to external callback function |
typedef void (*pVoidFnctChar) (char ); |
typedef void (*pVoidFnct_pVoidFnctChar_const_fmt) (pVoidFnctChar, char const *fmt0, ...); |
extern pVoidFnct_pVoidFnctChar_const_fmt _printf_P; |
#endif //_PRINTF_P_H_ |
/branches/metro/v0.82a metro_Akku+/rc.c |
---|
0,0 → 1,217 |
/*####################################################################################### |
Decodieren eines RC Summen Signals |
#######################################################################################*/ |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + only for non-profit use |
// + www.MikroKopter.com |
// + porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// + see the File "License.txt" for further Informations |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include "rc.h" |
#include "main.h" |
// Achtung: ACT_S3D_SUMMENSIGNAL wird in der Main.h gesetzt |
volatile int PPM_in[26]; |
volatile int PPM_diff[26]; // das diffenzierte Stick-Signal |
volatile char Channels,tmpChannels = 0; |
volatile unsigned char NewPpmData = 1; |
//############################################################################ |
//zum decodieren des PPM-Signals wird Timer1 mit seiner Input |
//Capture Funktion benutzt: |
void rc_sum_init (void) |
//############################################################################ |
{ |
unsigned char i; |
for(i=0;i<26;i++) |
{ |
PPM_in[i] = 0; |
PPM_diff[i] = 0; |
} |
AdNeutralGier = 0; |
AdNeutralRoll = 0; |
AdNeutralNick = 0; |
return; |
} |
#ifndef ACT_S3D_SUMMENSIGNAL |
//############################################################################ |
//Diese Routine startet und inizialisiert den Timer für RC |
ISR(TIMER1_CAPT_vect) |
//############################################################################ |
{ |
if(!(EE_Parameter.ExtraConfig & CFG_SENSITIVE_RC)) |
{ |
static unsigned int AltICR=0; |
signed int signal = 0,tmp; |
static int index; |
signal = (unsigned int) ICR1 - AltICR; |
AltICR = ICR1; |
//Syncronisationspause? (3.52 ms < signal < 25.6 ms) |
if((signal > 1100) && (signal < 8000)) |
{ |
Channels = index; |
if(index >= 4) NewPpmData = 0; // Null bedeutet: Neue Daten |
index = 1; |
} |
else |
{ |
if(index < 13) |
{ |
if((signal > 250) && (signal < 687)) |
{ |
signal -= 466; |
// Stabiles Signal |
if(abs(signal - PPM_in[index]) < 6) { if(SenderOkay < 200) SenderOkay += 10; else SenderOkay = 200;} |
tmp = (3 * (PPM_in[index]) + signal) / 4; |
if(tmp > signal+1) tmp--; else |
if(tmp < signal-1) tmp++; |
if(SenderOkay >= 195) PPM_diff[index] = ((tmp - PPM_in[index]) / 3) * 3; |
else PPM_diff[index] = 0; |
PPM_in[index] = tmp; |
} |
index++; |
if(PlatinenVersion < 20) |
{ |
if(index == 5) J3High; else J3Low; // Servosignal an J3 anlegen |
if(index == 6) J4High; else J4Low; // Servosignal an J4 anlegen |
if(index == 7) J5High; else J5Low; // Servosignal an J5 anlegen |
} |
} |
} |
} |
else |
{ |
static unsigned int AltICR=0; |
static int ppm_in[13]; |
static int ppm_diff[13]; |
static int old_ppm_in[13]; |
static int old_ppm_diff[13]; |
signed int signal = 0,tmp; |
static unsigned char index, okay_cnt = 0; |
signal = (unsigned int) ICR1 - AltICR; |
AltICR = ICR1; |
//Syncronisationspause? (3.52 ms < signal < 25.6 ms) |
if((signal > 1100) && (signal < 8000)) |
{ |
tmpChannels = index; |
if(tmpChannels >= 4 && Channels == tmpChannels) |
{ |
if(okay_cnt > 10) |
{ |
NewPpmData = 0; // Null bedeutet: Neue Daten |
for(index = 0; index < 13; index++) |
{ |
if(okay_cnt > 30) |
{ |
old_ppm_in[index] = PPM_in[index]; |
old_ppm_diff[index] = PPM_diff[index]; |
} |
PPM_in[index] = ppm_in[index]; |
PPM_diff[index] = ppm_diff[index]; |
} |
} |
if(okay_cnt < 255) okay_cnt++; |
} |
else |
{ |
if(okay_cnt > 100) okay_cnt = 10; else okay_cnt = 0; |
ROT_ON; |
} |
index = 1; |
if(!MotorenEin) Channels = tmpChannels; |
} |
else |
{ |
if(index < 13) |
{ |
if((signal > 250) && (signal < 687)) |
{ |
signal -= 466; |
// Stabiles Signal |
if((abs(signal - ppm_in[index]) < 6)) |
{ |
if(okay_cnt > 25) SenderOkay += 10; |
else |
if(okay_cnt > 10) SenderOkay += 2; |
if(SenderOkay > 200) SenderOkay = 200; |
} |
tmp = (3 * (ppm_in[index]) + signal) / 4; |
if(tmp > signal+1) tmp--; else |
if(tmp < signal-1) tmp++; |
if(SenderOkay >= 190) ppm_diff[index] = ((tmp - ppm_in[index]) / 3) * 3; |
else ppm_diff[index] = 0; |
ppm_in[index] = tmp; |
} |
else ROT_ON; |
if(PlatinenVersion < 20) |
{ |
if(index == 5) J3High; else J3Low; // Servosignal an J3 anlegen |
if(index == 6) J4High; else J4Low; // Servosignal an J4 anlegen |
if(index == 7) J5High; else J5Low; // Servosignal an J5 anlegen |
} |
} |
if(index < 20) index++; |
else |
if(index == 20) |
{ |
unsigned char i; |
ROT_ON; |
index = 30; |
for(i=0;i<13;i++) // restore from older data |
{ |
PPM_in[i] = old_ppm_in[i]; |
PPM_diff[i] = 0; |
// okay_cnt /= 2; |
} |
} |
} |
} |
} |
#else |
//############################################################################ |
//Diese Routine startet und inizialisiert den Timer für RC |
ISR(TIMER1_CAPT_vect) |
//############################################################################ |
{ |
static unsigned int AltICR=0; |
signed int signal = 0,tmp; |
static int index; |
signal = (unsigned int) ICR1 - AltICR; |
signal /= 2; |
AltICR = ICR1; |
//Syncronisationspause? |
if((signal > 1100*2) && (signal < 8000*2)) |
{ |
if(index >= 4) NewPpmData = 0; // Null bedeutet: Neue Daten |
index = 1; |
} |
else |
{ |
if(index < 13) |
{ |
if((signal > 250) && (signal < 687*2)) |
{ |
signal -= 962; |
// Stabiles Signal |
if(abs(signal - PPM_in[index]) < 6) { if(SenderOkay < 200) SenderOkay += 10;} |
tmp = (3 * (PPM_in[index]) + signal) / 4; |
if(tmp > signal+1) tmp--; else |
if(tmp < signal-1) tmp++; |
if(SenderOkay >= 195) PPM_diff[index] = ((tmp - PPM_in[index]) / 3) * 3; |
else PPM_diff[index] = 0; |
PPM_in[index] = tmp; |
} |
index++; |
} |
} |
} |
#endif |
/branches/metro/v0.82a metro_Akku+/rc.d |
---|
0,0 → 1,3 |
rc.o rc.d : rc.c rc.h main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/rc.h |
---|
0,0 → 1,31 |
/*####################################################################################### |
Derkodieren eines RC Summen Signals |
#######################################################################################*/ |
#ifndef _RC_H |
#define _RC_H |
#if defined (__AVR_ATmega32__) |
#define TIMER_TEILER CK64 |
#define TIMER_RELOAD_VALUE 250 |
#endif |
#if defined (__AVR_ATmega644__) |
#define TIMER_RELOAD_VALUE 250 |
#endif |
#if defined (__AVR_ATmega644P__) |
#define TIMER_RELOAD_VALUE 250 |
#endif |
#define GAS PPM_in[2] |
extern void rc_sum_init (void); |
extern volatile int PPM_in[26]; |
extern volatile int PPM_diff[26]; // das diffenzierte Stick-Signal |
extern volatile unsigned char NewPpmData; |
extern volatile char Channels,tmpChannels; |
#endif //_RC_H |
/branches/metro/v0.82a metro_Akku+/rc.lst |
---|
0,0 → 1,690 |
1 .file "rc.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global NewPpmData |
11 .data |
14 NewPpmData: |
15 0000 01 .byte 1 |
16 .global tmpChannels |
17 .global tmpChannels |
18 .section .bss |
21 tmpChannels: |
22 0000 00 .skip 1,0 |
23 .text |
24 .global rc_sum_init |
26 rc_sum_init: |
27 /* prologue: frame size=0 */ |
28 /* prologue end (size=0) */ |
29 0000 89E1 ldi r24,lo8(25) |
30 0002 A0E0 ldi r26,lo8(PPM_diff) |
31 0004 B0E0 ldi r27,hi8(PPM_diff) |
32 0006 E0E0 ldi r30,lo8(PPM_in) |
33 0008 F0E0 ldi r31,hi8(PPM_in) |
34 .L5: |
35 000a 1182 std Z+1,__zero_reg__ |
36 000c 1082 st Z,__zero_reg__ |
37 000e 3296 adiw r30,2 |
38 0010 1196 adiw r26,1 |
39 0012 1C92 st X,__zero_reg__ |
40 0014 1E92 st -X,__zero_reg__ |
41 0016 1296 adiw r26,2 |
42 0018 8150 subi r24,lo8(-(-1)) |
43 001a 87FF sbrs r24,7 |
44 001c F6CF rjmp .L5 |
45 001e 1092 0000 sts (AdNeutralGier)+1,__zero_reg__ |
46 0022 1092 0000 sts AdNeutralGier,__zero_reg__ |
47 0026 1092 0000 sts (AdNeutralRoll)+1,__zero_reg__ |
48 002a 1092 0000 sts AdNeutralRoll,__zero_reg__ |
49 002e 1092 0000 sts (AdNeutralNick)+1,__zero_reg__ |
50 0032 1092 0000 sts AdNeutralNick,__zero_reg__ |
51 /* epilogue: frame size=0 */ |
52 0036 0895 ret |
53 /* epilogue end (size=1) */ |
54 /* function rc_sum_init size 28 (27) */ |
56 .lcomm AltICR.0,2 |
57 .lcomm index.1,2 |
58 .lcomm AltICR.2,2 |
59 .lcomm ppm_in.3,26 |
60 .lcomm ppm_diff.4,26 |
61 .lcomm old_ppm_in.5,26 |
62 .lcomm old_ppm_diff.6,26 |
63 .lcomm index.7,1 |
64 .lcomm okay_cnt.8,1 |
65 .global __vector_12 |
67 __vector_12: |
68 /* prologue: frame size=0 */ |
69 0038 1F92 push __zero_reg__ |
70 003a 0F92 push __tmp_reg__ |
71 003c 0FB6 in __tmp_reg__,__SREG__ |
72 003e 0F92 push __tmp_reg__ |
73 0040 1124 clr __zero_reg__ |
74 0042 0F93 push r16 |
75 0044 1F93 push r17 |
76 0046 2F93 push r18 |
77 0048 3F93 push r19 |
78 004a 4F93 push r20 |
79 004c 5F93 push r21 |
80 004e 6F93 push r22 |
81 0050 7F93 push r23 |
82 0052 8F93 push r24 |
83 0054 9F93 push r25 |
84 0056 AF93 push r26 |
85 0058 BF93 push r27 |
86 005a CF93 push r28 |
87 005c DF93 push r29 |
88 005e EF93 push r30 |
89 0060 FF93 push r31 |
90 /* prologue end (size=21) */ |
91 0062 8091 0000 lds r24,EE_Parameter+102 |
92 0066 82FD sbrc r24,2 |
93 0068 CFC0 rjmp .L9 |
94 006a 4091 8600 lds r20,134 |
95 006e 5091 8700 lds r21,(134)+1 |
96 0072 8091 0000 lds r24,AltICR.0 |
97 0076 9091 0000 lds r25,(AltICR.0)+1 |
98 007a 481B sub r20,r24 |
99 007c 590B sbc r21,r25 |
100 007e 8091 8600 lds r24,134 |
101 0082 9091 8700 lds r25,(134)+1 |
102 0086 9093 0000 sts (AltICR.0)+1,r25 |
103 008a 8093 0000 sts AltICR.0,r24 |
104 008e CA01 movw r24,r20 |
105 0090 8D54 subi r24,lo8(-(-1101)) |
106 0092 9440 sbci r25,hi8(-(-1101)) |
107 0094 A091 0000 lds r26,index.1 |
108 0098 B091 0000 lds r27,(index.1)+1 |
109 009c 835F subi r24,lo8(6899) |
110 009e 9A41 sbci r25,hi8(6899) |
111 00a0 78F4 brsh .L10 |
112 00a2 8091 0000 lds r24,index.1 |
113 00a6 8093 0000 sts Channels,r24 |
114 00aa 1497 sbiw r26,4 |
115 00ac 14F0 brlt .L11 |
116 00ae 1092 0000 sts NewPpmData,__zero_reg__ |
117 .L11: |
118 00b2 81E0 ldi r24,lo8(1) |
119 00b4 90E0 ldi r25,hi8(1) |
120 00b6 9093 0000 sts (index.1)+1,r25 |
121 00ba 8093 0000 sts index.1,r24 |
122 00be 07C2 rjmp .L8 |
123 .L10: |
124 00c0 AD30 cpi r26,13 |
125 00c2 B105 cpc r27,__zero_reg__ |
126 00c4 0CF0 brlt .+2 |
127 00c6 03C2 rjmp .L8 |
128 00c8 CA01 movw r24,r20 |
129 00ca 8B5F subi r24,lo8(-(-251)) |
130 00cc 9040 sbci r25,hi8(-(-251)) |
131 00ce 845B subi r24,lo8(436) |
132 00d0 9140 sbci r25,hi8(436) |
133 00d2 08F0 brlo .+2 |
134 00d4 74C0 rjmp .L14 |
135 00d6 425D subi r20,lo8(-(-466)) |
136 00d8 5140 sbci r21,hi8(-(-466)) |
137 00da FD01 movw r30,r26 |
138 00dc EA0F add r30,r26 |
139 00de FB1F adc r31,r27 |
140 00e0 E050 subi r30,lo8(-(PPM_in)) |
141 00e2 F040 sbci r31,hi8(-(PPM_in)) |
142 00e4 8081 ld r24,Z |
143 00e6 9181 ldd r25,Z+1 |
144 00e8 FA01 movw r30,r20 |
145 00ea E81B sub r30,r24 |
146 00ec F90B sbc r31,r25 |
147 00ee CF01 movw r24,r30 |
148 00f0 F7FF sbrs r31,7 |
149 00f2 03C0 rjmp .L16 |
150 00f4 9095 com r25 |
151 00f6 8195 neg r24 |
152 00f8 9F4F sbci r25,lo8(-1) |
153 .L16: |
154 00fa 0697 sbiw r24,6 |
155 00fc 5CF4 brge .L15 |
156 00fe 8091 0000 lds r24,SenderOkay |
157 0102 883C cpi r24,lo8(-56) |
158 0104 20F4 brsh .L17 |
159 0106 8091 0000 lds r24,SenderOkay |
160 010a 865F subi r24,lo8(-(10)) |
161 010c 01C0 rjmp .L87 |
162 .L17: |
163 010e 88EC ldi r24,lo8(-56) |
164 .L87: |
165 0110 8093 0000 sts SenderOkay,r24 |
166 .L15: |
167 0114 FD01 movw r30,r26 |
168 0116 EA0F add r30,r26 |
169 0118 FB1F adc r31,r27 |
170 011a E050 subi r30,lo8(-(PPM_in)) |
171 011c F040 sbci r31,hi8(-(PPM_in)) |
172 011e 8081 ld r24,Z |
173 0120 9181 ldd r25,Z+1 |
174 0122 9C01 movw r18,r24 |
175 0124 220F lsl r18 |
176 0126 331F rol r19 |
177 0128 280F add r18,r24 |
178 012a 391F adc r19,r25 |
179 012c 240F add r18,r20 |
180 012e 351F adc r19,r21 |
181 0130 37FF sbrs r19,7 |
182 0132 02C0 rjmp .L19 |
183 0134 2D5F subi r18,lo8(-(3)) |
184 0136 3F4F sbci r19,hi8(-(3)) |
185 .L19: |
186 0138 E901 movw r28,r18 |
187 013a D595 asr r29 |
188 013c C795 ror r28 |
189 013e D595 asr r29 |
190 0140 C795 ror r28 |
191 0142 CA01 movw r24,r20 |
192 0144 0196 adiw r24,1 |
193 0146 8C17 cp r24,r28 |
194 0148 9D07 cpc r25,r29 |
195 014a 14F4 brge .L20 |
196 014c 2197 sbiw r28,1 |
197 014e 06C0 rjmp .L21 |
198 .L20: |
199 0150 4150 subi r20,lo8(-(-1)) |
200 0152 5040 sbci r21,hi8(-(-1)) |
201 0154 C417 cp r28,r20 |
202 0156 D507 cpc r29,r21 |
203 0158 0CF4 brge .L21 |
204 015a 2196 adiw r28,1 |
205 .L21: |
206 015c 8091 0000 lds r24,SenderOkay |
207 0160 833C cpi r24,lo8(-61) |
208 0162 E0F0 brlo .L23 |
209 0164 8D01 movw r16,r26 |
210 0166 0A0F add r16,r26 |
211 0168 1B1F adc r17,r27 |
212 016a F801 movw r30,r16 |
213 016c E050 subi r30,lo8(-(PPM_in)) |
214 016e F040 sbci r31,hi8(-(PPM_in)) |
215 0170 8081 ld r24,Z |
216 0172 9181 ldd r25,Z+1 |
217 0174 9E01 movw r18,r28 |
218 0176 281B sub r18,r24 |
219 0178 390B sbc r19,r25 |
220 017a C901 movw r24,r18 |
221 017c 63E0 ldi r22,lo8(3) |
222 017e 70E0 ldi r23,hi8(3) |
223 0180 0E94 0000 call __divmodhi4 |
224 0184 CB01 movw r24,r22 |
225 0186 880F lsl r24 |
226 0188 991F rol r25 |
227 018a 860F add r24,r22 |
228 018c 971F adc r25,r23 |
229 018e 0050 subi r16,lo8(-(PPM_diff)) |
230 0190 1040 sbci r17,hi8(-(PPM_diff)) |
231 0192 D801 movw r26,r16 |
232 0194 1196 adiw r26,1 |
233 0196 9C93 st X,r25 |
234 0198 8E93 st -X,r24 |
235 019a 07C0 rjmp .L24 |
236 .L23: |
237 019c AA0F add r26,r26 |
238 019e BB1F adc r27,r27 |
239 01a0 A050 subi r26,lo8(-(PPM_diff)) |
240 01a2 B040 sbci r27,hi8(-(PPM_diff)) |
241 01a4 1196 adiw r26,1 |
242 01a6 1C92 st X,__zero_reg__ |
243 01a8 1E92 st -X,__zero_reg__ |
244 .L24: |
245 01aa E091 0000 lds r30,index.1 |
246 01ae F091 0000 lds r31,(index.1)+1 |
247 01b2 EE0F add r30,r30 |
248 01b4 FF1F adc r31,r31 |
249 01b6 E050 subi r30,lo8(-(PPM_in)) |
250 01b8 F040 sbci r31,hi8(-(PPM_in)) |
251 01ba D183 std Z+1,r29 |
252 01bc C083 st Z,r28 |
253 .L14: |
254 01be 2091 0000 lds r18,index.1 |
255 01c2 3091 0000 lds r19,(index.1)+1 |
256 01c6 2F5F subi r18,lo8(-(1)) |
257 01c8 3F4F sbci r19,hi8(-(1)) |
258 01ca 3093 0000 sts (index.1)+1,r19 |
259 01ce 2093 0000 sts index.1,r18 |
260 01d2 8091 0000 lds r24,PlatinenVersion |
261 01d6 8431 cpi r24,lo8(20) |
262 01d8 08F0 brlo .+2 |
263 01da 79C1 rjmp .L8 |
264 01dc 2530 cpi r18,5 |
265 01de 3105 cpc r19,__zero_reg__ |
266 01e0 11F4 brne .L26 |
267 01e2 5D9A sbi 43-0x20,5 |
268 01e4 01C0 rjmp .L27 |
269 .L26: |
270 01e6 5D98 cbi 43-0x20,5 |
271 .L27: |
272 01e8 8091 0000 lds r24,index.1 |
273 01ec 9091 0000 lds r25,(index.1)+1 |
274 01f0 8630 cpi r24,6 |
275 01f2 9105 cpc r25,__zero_reg__ |
276 01f4 11F4 brne .L28 |
277 01f6 5C9A sbi 43-0x20,4 |
278 01f8 01C0 rjmp .L29 |
279 .L28: |
280 01fa 5C98 cbi 43-0x20,4 |
281 .L29: |
282 01fc 0797 sbiw r24,7 |
283 01fe 11F4 brne .L30 |
284 0200 5B9A sbi 43-0x20,3 |
285 0202 65C1 rjmp .L8 |
286 .L30: |
287 0204 5B98 cbi 43-0x20,3 |
288 0206 63C1 rjmp .L8 |
289 .L9: |
290 0208 4091 8600 lds r20,134 |
291 020c 5091 8700 lds r21,(134)+1 |
292 0210 8091 0000 lds r24,AltICR.2 |
293 0214 9091 0000 lds r25,(AltICR.2)+1 |
294 0218 481B sub r20,r24 |
295 021a 590B sbc r21,r25 |
296 021c 8091 8600 lds r24,134 |
297 0220 9091 8700 lds r25,(134)+1 |
298 0224 9093 0000 sts (AltICR.2)+1,r25 |
299 0228 8093 0000 sts AltICR.2,r24 |
300 022c CA01 movw r24,r20 |
301 022e 8D54 subi r24,lo8(-(-1101)) |
302 0230 9440 sbci r25,hi8(-(-1101)) |
303 0232 6091 0000 lds r22,index.7 |
304 0236 835F subi r24,lo8(6899) |
305 0238 9A41 sbci r25,hi8(6899) |
306 023a 08F0 brlo .+2 |
307 023c 7AC0 rjmp .L33 |
308 023e 6093 0000 sts tmpChannels,r22 |
309 0242 8091 0000 lds r24,tmpChannels |
310 0246 8430 cpi r24,lo8(4) |
311 0248 08F4 brsh .+2 |
312 024a 53C0 rjmp .L34 |
313 024c 9091 0000 lds r25,Channels |
314 0250 8091 0000 lds r24,tmpChannels |
315 0254 9817 cp r25,r24 |
316 0256 09F0 breq .+2 |
317 0258 4CC0 rjmp .L34 |
318 025a 5091 0000 lds r21,okay_cnt.8 |
319 025e 5B30 cpi r21,lo8(11) |
320 0260 08F4 brsh .+2 |
321 0262 3FC0 rjmp .L35 |
322 0264 1092 0000 sts NewPpmData,__zero_reg__ |
323 0268 1092 0000 sts index.7,__zero_reg__ |
324 026c 40E0 ldi r20,lo8(0) |
325 .L40: |
326 026e 5F31 cpi r21,lo8(31) |
327 0270 C0F0 brlo .L39 |
328 0272 E42F mov r30,r20 |
329 0274 FF27 clr r31 |
330 0276 EE0F add r30,r30 |
331 0278 FF1F adc r31,r31 |
332 027a 9F01 movw r18,r30 |
333 027c 2050 subi r18,lo8(-(old_ppm_in.5)) |
334 027e 3040 sbci r19,hi8(-(old_ppm_in.5)) |
335 0280 DF01 movw r26,r30 |
336 0282 A050 subi r26,lo8(-(PPM_in)) |
337 0284 B040 sbci r27,hi8(-(PPM_in)) |
338 0286 8D91 ld r24,X+ |
339 0288 9C91 ld r25,X |
340 028a D901 movw r26,r18 |
341 028c 8D93 st X+,r24 |
342 028e 9C93 st X,r25 |
343 0290 DF01 movw r26,r30 |
344 0292 A050 subi r26,lo8(-(PPM_diff)) |
345 0294 B040 sbci r27,hi8(-(PPM_diff)) |
346 0296 8D91 ld r24,X+ |
347 0298 9C91 ld r25,X |
348 029a E050 subi r30,lo8(-(old_ppm_diff.6)) |
349 029c F040 sbci r31,hi8(-(old_ppm_diff.6)) |
350 029e 9183 std Z+1,r25 |
351 02a0 8083 st Z,r24 |
352 .L39: |
353 02a2 E42F mov r30,r20 |
354 02a4 FF27 clr r31 |
355 02a6 EE0F add r30,r30 |
356 02a8 FF1F adc r31,r31 |
357 02aa 9F01 movw r18,r30 |
358 02ac 2050 subi r18,lo8(-(PPM_in)) |
359 02ae 3040 sbci r19,hi8(-(PPM_in)) |
360 02b0 DF01 movw r26,r30 |
361 02b2 A050 subi r26,lo8(-(ppm_in.3)) |
362 02b4 B040 sbci r27,hi8(-(ppm_in.3)) |
363 02b6 8D91 ld r24,X+ |
364 02b8 9C91 ld r25,X |
365 02ba D901 movw r26,r18 |
366 02bc 1196 adiw r26,1 |
367 02be 9C93 st X,r25 |
368 02c0 8E93 st -X,r24 |
369 02c2 DF01 movw r26,r30 |
370 02c4 A050 subi r26,lo8(-(ppm_diff.4)) |
371 02c6 B040 sbci r27,hi8(-(ppm_diff.4)) |
372 02c8 8D91 ld r24,X+ |
373 02ca 9C91 ld r25,X |
374 02cc E050 subi r30,lo8(-(PPM_diff)) |
375 02ce F040 sbci r31,hi8(-(PPM_diff)) |
376 02d0 9183 std Z+1,r25 |
377 02d2 8083 st Z,r24 |
378 02d4 842F mov r24,r20 |
379 02d6 8F5F subi r24,lo8(-(1)) |
380 02d8 482F mov r20,r24 |
381 02da 8D30 cpi r24,lo8(13) |
382 02dc 40F2 brlo .L40 |
383 02de 8093 0000 sts index.7,r24 |
384 .L35: |
385 02e2 8091 0000 lds r24,okay_cnt.8 |
386 02e6 8F3F cpi r24,lo8(-1) |
387 02e8 B9F0 breq .L42 |
388 02ea 8F5F subi r24,lo8(-(1)) |
389 02ec 8093 0000 sts okay_cnt.8,r24 |
390 02f0 13C0 rjmp .L42 |
391 .L34: |
392 02f2 8091 0000 lds r24,okay_cnt.8 |
393 02f6 8536 cpi r24,lo8(101) |
394 02f8 20F0 brlo .L43 |
395 02fa 8AE0 ldi r24,lo8(10) |
396 02fc 8093 0000 sts okay_cnt.8,r24 |
397 0300 02C0 rjmp .L44 |
398 .L43: |
399 0302 1092 0000 sts okay_cnt.8,__zero_reg__ |
400 .L44: |
401 0306 8091 0000 lds r24,PlatinenVersion |
402 030a 8A30 cpi r24,lo8(10) |
403 030c 11F0 breq .L46 |
404 030e 8431 cpi r24,lo8(20) |
405 0310 10F0 brlo .L45 |
406 .L46: |
407 0312 289A sbi 37-0x20,0 |
408 0314 01C0 rjmp .L42 |
409 .L45: |
410 0316 2898 cbi 37-0x20,0 |
411 .L42: |
412 0318 81E0 ldi r24,lo8(1) |
413 031a 8093 0000 sts index.7,r24 |
414 031e 8091 0000 lds r24,MotorenEin |
415 0322 8823 tst r24 |
416 0324 09F0 breq .+2 |
417 0326 D3C0 rjmp .L8 |
418 0328 8091 0000 lds r24,tmpChannels |
419 032c 8093 0000 sts Channels,r24 |
420 0330 CEC0 rjmp .L8 |
421 .L33: |
422 0332 6D30 cpi r22,lo8(13) |
423 0334 08F0 brlo .+2 |
424 0336 A3C0 rjmp .L50 |
425 0338 CA01 movw r24,r20 |
426 033a 8B5F subi r24,lo8(-(-251)) |
427 033c 9040 sbci r25,hi8(-(-251)) |
428 033e 845B subi r24,lo8(436) |
429 0340 9140 sbci r25,hi8(436) |
430 0342 08F0 brlo .+2 |
431 0344 7EC0 rjmp .L51 |
432 0346 425D subi r20,lo8(-(-466)) |
433 0348 5140 sbci r21,hi8(-(-466)) |
434 034a E62F mov r30,r22 |
435 034c FF27 clr r31 |
436 034e EE0F add r30,r30 |
437 0350 FF1F adc r31,r31 |
438 0352 E050 subi r30,lo8(-(ppm_in.3)) |
439 0354 F040 sbci r31,hi8(-(ppm_in.3)) |
440 0356 8081 ld r24,Z |
441 0358 9181 ldd r25,Z+1 |
442 035a FA01 movw r30,r20 |
443 035c E81B sub r30,r24 |
444 035e F90B sbc r31,r25 |
445 0360 CF01 movw r24,r30 |
446 0362 0596 adiw r24,5 |
447 0364 0B97 sbiw r24,11 |
448 0366 B0F4 brsh .L52 |
449 0368 8091 0000 lds r24,okay_cnt.8 |
450 036c 8A31 cpi r24,lo8(26) |
451 036e 20F0 brlo .L53 |
452 0370 8091 0000 lds r24,SenderOkay |
453 0374 865F subi r24,lo8(-(10)) |
454 0376 05C0 rjmp .L88 |
455 .L53: |
456 0378 8B30 cpi r24,lo8(11) |
457 037a 28F0 brlo .L54 |
458 037c 8091 0000 lds r24,SenderOkay |
459 0380 8E5F subi r24,lo8(-(2)) |
460 .L88: |
461 0382 8093 0000 sts SenderOkay,r24 |
462 .L54: |
463 0386 8091 0000 lds r24,SenderOkay |
464 038a 893C cpi r24,lo8(-55) |
465 038c 18F0 brlo .L52 |
466 038e 88EC ldi r24,lo8(-56) |
467 0390 8093 0000 sts SenderOkay,r24 |
468 .L52: |
469 0394 E62F mov r30,r22 |
470 0396 FF27 clr r31 |
471 0398 EE0F add r30,r30 |
472 039a FF1F adc r31,r31 |
473 039c E050 subi r30,lo8(-(ppm_in.3)) |
474 039e F040 sbci r31,hi8(-(ppm_in.3)) |
475 03a0 8081 ld r24,Z |
476 03a2 9181 ldd r25,Z+1 |
477 03a4 9C01 movw r18,r24 |
478 03a6 220F lsl r18 |
479 03a8 331F rol r19 |
480 03aa 280F add r18,r24 |
481 03ac 391F adc r19,r25 |
482 03ae 240F add r18,r20 |
483 03b0 351F adc r19,r21 |
484 03b2 37FF sbrs r19,7 |
485 03b4 02C0 rjmp .L57 |
486 03b6 2D5F subi r18,lo8(-(3)) |
487 03b8 3F4F sbci r19,hi8(-(3)) |
488 .L57: |
489 03ba E901 movw r28,r18 |
490 03bc D595 asr r29 |
491 03be C795 ror r28 |
492 03c0 D595 asr r29 |
493 03c2 C795 ror r28 |
494 03c4 CA01 movw r24,r20 |
495 03c6 0196 adiw r24,1 |
496 03c8 8C17 cp r24,r28 |
497 03ca 9D07 cpc r25,r29 |
498 03cc 14F4 brge .L58 |
499 03ce 2197 sbiw r28,1 |
500 03d0 06C0 rjmp .L59 |
501 .L58: |
502 03d2 4150 subi r20,lo8(-(-1)) |
503 03d4 5040 sbci r21,hi8(-(-1)) |
504 03d6 C417 cp r28,r20 |
505 03d8 D507 cpc r29,r21 |
506 03da 0CF4 brge .L59 |
507 03dc 2196 adiw r28,1 |
508 .L59: |
509 03de 8091 0000 lds r24,SenderOkay |
510 03e2 8E3B cpi r24,lo8(-66) |
511 03e4 D8F0 brlo .L61 |
512 03e6 E62F mov r30,r22 |
513 03e8 FF27 clr r31 |
514 03ea EE0F add r30,r30 |
515 03ec FF1F adc r31,r31 |
516 03ee DF01 movw r26,r30 |
517 03f0 A050 subi r26,lo8(-(ppm_in.3)) |
518 03f2 B040 sbci r27,hi8(-(ppm_in.3)) |
519 03f4 8D91 ld r24,X+ |
520 03f6 9C91 ld r25,X |
521 03f8 9E01 movw r18,r28 |
522 03fa 281B sub r18,r24 |
523 03fc 390B sbc r19,r25 |
524 03fe C901 movw r24,r18 |
525 0400 63E0 ldi r22,lo8(3) |
526 0402 70E0 ldi r23,hi8(3) |
527 0404 0E94 0000 call __divmodhi4 |
528 0408 CB01 movw r24,r22 |
529 040a 880F lsl r24 |
530 040c 991F rol r25 |
531 040e 860F add r24,r22 |
532 0410 971F adc r25,r23 |
533 0412 E050 subi r30,lo8(-(ppm_diff.4)) |
534 0414 F040 sbci r31,hi8(-(ppm_diff.4)) |
535 0416 9183 std Z+1,r25 |
536 0418 8083 st Z,r24 |
537 041a 08C0 rjmp .L62 |
538 .L61: |
539 041c E62F mov r30,r22 |
540 041e FF27 clr r31 |
541 0420 EE0F add r30,r30 |
542 0422 FF1F adc r31,r31 |
543 0424 E050 subi r30,lo8(-(ppm_diff.4)) |
544 0426 F040 sbci r31,hi8(-(ppm_diff.4)) |
545 0428 1182 std Z+1,__zero_reg__ |
546 042a 1082 st Z,__zero_reg__ |
547 .L62: |
548 042c 8091 0000 lds r24,index.7 |
549 0430 E82F mov r30,r24 |
550 0432 FF27 clr r31 |
551 0434 EE0F add r30,r30 |
552 0436 FF1F adc r31,r31 |
553 0438 E050 subi r30,lo8(-(ppm_in.3)) |
554 043a F040 sbci r31,hi8(-(ppm_in.3)) |
555 043c D183 std Z+1,r29 |
556 043e C083 st Z,r28 |
557 0440 09C0 rjmp .L63 |
558 .L51: |
559 0442 8091 0000 lds r24,PlatinenVersion |
560 0446 8A30 cpi r24,lo8(10) |
561 0448 11F0 breq .L65 |
562 044a 8431 cpi r24,lo8(20) |
563 044c 10F0 brlo .L64 |
564 .L65: |
565 044e 289A sbi 37-0x20,0 |
566 0450 01C0 rjmp .L63 |
567 .L64: |
568 0452 2898 cbi 37-0x20,0 |
569 .L63: |
570 0454 8091 0000 lds r24,PlatinenVersion |
571 0458 8431 cpi r24,lo8(20) |
572 045a 88F4 brsh .L50 |
573 045c 8091 0000 lds r24,index.7 |
574 0460 8530 cpi r24,lo8(5) |
575 0462 11F4 brne .L68 |
576 0464 5D9A sbi 43-0x20,5 |
577 0466 05C0 rjmp .L70 |
578 .L68: |
579 0468 5D98 cbi 43-0x20,5 |
580 046a 8630 cpi r24,lo8(6) |
581 046c 11F4 brne .L70 |
582 046e 5C9A sbi 43-0x20,4 |
583 0470 05C0 rjmp .L72 |
584 .L70: |
585 0472 5C98 cbi 43-0x20,4 |
586 0474 8730 cpi r24,lo8(7) |
587 0476 11F4 brne .L72 |
588 0478 5B9A sbi 43-0x20,3 |
589 047a 01C0 rjmp .L50 |
590 .L72: |
591 047c 5B98 cbi 43-0x20,3 |
592 .L50: |
593 047e 8091 0000 lds r24,index.7 |
594 0482 8431 cpi r24,lo8(20) |
595 0484 20F4 brsh .L74 |
596 0486 8F5F subi r24,lo8(-(1)) |
597 0488 8093 0000 sts index.7,r24 |
598 048c 20C0 rjmp .L8 |
599 .L74: |
600 048e 8431 cpi r24,lo8(20) |
601 0490 F1F4 brne .L8 |
602 0492 8091 0000 lds r24,PlatinenVersion |
603 0496 8A30 cpi r24,lo8(10) |
604 0498 11F0 breq .L78 |
605 049a 8431 cpi r24,lo8(20) |
606 049c 10F0 brlo .L77 |
607 .L78: |
608 049e 289A sbi 37-0x20,0 |
609 04a0 01C0 rjmp .L79 |
610 .L77: |
611 04a2 2898 cbi 37-0x20,0 |
612 .L79: |
613 04a4 8EE1 ldi r24,lo8(30) |
614 04a6 8093 0000 sts index.7,r24 |
615 04aa 2CE0 ldi r18,lo8(12) |
616 04ac C0E0 ldi r28,lo8(PPM_diff) |
617 04ae D0E0 ldi r29,hi8(PPM_diff) |
618 04b0 A0E0 ldi r26,lo8(old_ppm_in.5) |
619 04b2 B0E0 ldi r27,hi8(old_ppm_in.5) |
620 04b4 E0E0 ldi r30,lo8(PPM_in) |
621 04b6 F0E0 ldi r31,hi8(PPM_in) |
622 .L83: |
623 04b8 8D91 ld r24,X+ |
624 04ba 9D91 ld r25,X+ |
625 04bc 9183 std Z+1,r25 |
626 04be 8083 st Z,r24 |
627 04c0 3296 adiw r30,2 |
628 04c2 1982 std Y+1,__zero_reg__ |
629 04c4 1882 st Y,__zero_reg__ |
630 04c6 2296 adiw r28,2 |
631 04c8 2150 subi r18,lo8(-(-1)) |
632 04ca 27FF sbrs r18,7 |
633 04cc F5CF rjmp .L83 |
634 .L8: |
635 /* epilogue: frame size=0 */ |
636 04ce FF91 pop r31 |
637 04d0 EF91 pop r30 |
638 04d2 DF91 pop r29 |
639 04d4 CF91 pop r28 |
640 04d6 BF91 pop r27 |
641 04d8 AF91 pop r26 |
642 04da 9F91 pop r25 |
643 04dc 8F91 pop r24 |
644 04de 7F91 pop r23 |
645 04e0 6F91 pop r22 |
646 04e2 5F91 pop r21 |
647 04e4 4F91 pop r20 |
648 04e6 3F91 pop r19 |
649 04e8 2F91 pop r18 |
650 04ea 1F91 pop r17 |
651 04ec 0F91 pop r16 |
652 04ee 0F90 pop __tmp_reg__ |
653 04f0 0FBE out __SREG__,__tmp_reg__ |
654 04f2 0F90 pop __tmp_reg__ |
655 04f4 1F90 pop __zero_reg__ |
656 04f6 1895 reti |
657 /* epilogue end (size=21) */ |
658 /* function __vector_12 size 615 (573) */ |
660 .comm PPM_in,52,1 |
661 .comm PPM_diff,52,1 |
662 .comm Channels,1,1 |
663 /* File "rc.c": code 643 = 0x0283 ( 600), prologues 21, epilogues 22 */ |
DEFINED SYMBOLS |
*ABS*:00000000 rc.c |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:14 .data:00000000 NewPpmData |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:21 .bss:00000000 tmpChannels |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:26 .text:00000000 rc_sum_init |
*COM*:00000034 PPM_diff |
*COM*:00000034 PPM_in |
.bss:00000001 AltICR.0 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:56 .bss:00000003 index.1 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:57 .bss:00000005 AltICR.2 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:58 .bss:00000007 ppm_in.3 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:59 .bss:00000021 ppm_diff.4 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:60 .bss:0000003b old_ppm_in.5 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:61 .bss:00000055 old_ppm_diff.6 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:62 .bss:0000006f index.7 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:63 .bss:00000070 okay_cnt.8 |
C:\Users\Thomas\AppData\Local\Temp/ccMFbaaa.s:67 .text:00000038 __vector_12 |
*COM*:00000001 Channels |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
AdNeutralGier |
AdNeutralRoll |
AdNeutralNick |
EE_Parameter |
SenderOkay |
__divmodhi4 |
PlatinenVersion |
MotorenEin |
/branches/metro/v0.82a metro_Akku+/spi.c |
---|
0,0 → 1,333 |
// ######################## SPI - FlightCtrl ################### |
#include "main.h" |
#include "eeprom.h" |
//struct str_ToNaviCtrl_Version ToNaviCtrl_Version; |
//struct str_FromNaviCtrl_Version FromNaviCtrl_Version; |
struct str_ToNaviCtrl ToNaviCtrl; |
struct str_FromNaviCtrl FromNaviCtrl; |
struct str_FromNaviCtrl_Value FromNaviCtrl_Value; |
struct str_SPI_VersionInfo NC_Version; |
struct str_GPSInfo GPSInfo; |
unsigned char SPI_BufferIndex; |
unsigned char SPI_RxBufferIndex; |
signed char FromNC_Rotate_C = 32, FromNC_Rotate_S = 0; |
volatile unsigned char SPI_Buffer[sizeof(FromNaviCtrl)]; |
unsigned char *SPI_TX_Buffer; |
unsigned char SPITransferCompleted, SPI_ChkSum; |
unsigned char SPI_RxDataValid,NaviDataOkay = 250; |
unsigned char SPI_CommandSequence[] = {SPI_FCCMD_STICK, SPI_FCCMD_USER, SPI_FCCMD_PARAMETER1, SPI_FCCMD_STICK, SPI_FCCMD_MISC, SPI_FCCMD_VERSION, SPI_FCCMD_STICK, SPI_FCCMD_SERVOS, SPI_FCCMD_ACCU}; |
unsigned char SPI_CommandCounter = 0; |
unsigned char NC_ErrorCode = 0; |
#ifdef USE_SPI_COMMUNICATION |
//------------------------------------------------------ |
void SPI_MasterInit(void) |
{ |
DDR_SPI |= (1<<DD_MOSI)|(1<<DD_SCK); // Set MOSI and SCK output, all others input |
SLAVE_SELECT_DDR_PORT |= (1 << SPI_SLAVE_SELECT); |
SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR1)|(0<<SPR0)|(0<<SPIE); // Enable SPI, Master, set clock rate fck/64 |
SPSR = 0;//(1<<SPI2X); |
SLAVE_SELECT_PORT |= (1 << SPI_SLAVE_SELECT); |
SPITransferCompleted = 1; |
//SPDR = 0x00; // dummy write |
ToNaviCtrl.Sync1 = 0xAA; |
ToNaviCtrl.Sync2 = 0x83; |
ToNaviCtrl.Command = SPI_FCCMD_USER; |
ToNaviCtrl.IntegralNick = 0; |
ToNaviCtrl.IntegralRoll = 0; |
FromNaviCtrl_Value.SerialDataOkay = 0; |
SPI_RxDataValid = 0; |
} |
//------------------------------------------------------ |
void SPI_StartTransmitPacket(void) |
{ |
//if ((SLAVE_SELECT_PORT & (1 << SPI_SLAVE_SELECT)) == 0) return; // transfer of prev. packet not completed |
if (!SPITransferCompleted) return; |
// _delay_us(30); |
SLAVE_SELECT_PORT &= ~(1 << SPI_SLAVE_SELECT); // SelectSlave |
SPI_TX_Buffer = (unsigned char *) &ToNaviCtrl; |
ToNaviCtrl.Command = SPI_CommandSequence[SPI_CommandCounter++]; |
if (SPI_CommandCounter >= sizeof(SPI_CommandSequence)) SPI_CommandCounter = 0; |
SPITransferCompleted = 0; |
UpdateSPI_Buffer(); // update buffer |
SPI_BufferIndex = 1; |
//ebugOut.Analog[16]++; |
// -- Debug-Output --- |
//---- |
asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); |
asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); |
asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); |
ToNaviCtrl.Chksum = ToNaviCtrl.Sync1; |
SPDR = ToNaviCtrl.Sync1; // Start transmission |
// SLAVE_SELECT_PORT |= (1 << SPI_SLAVE_SELECT); // DeselectSlave |
} |
//------------------------------------------------------ |
//SIGNAL(SIG_SPI) |
void SPI_TransmitByte(void) |
{ |
static unsigned char SPI_RXState = 0; |
unsigned char rxdata; |
static unsigned char rxchksum; |
if (SPITransferCompleted) return; |
if (!(SPSR & (1 << SPIF))) return; |
SendSPI = 4; |
// _delay_us(30); |
SLAVE_SELECT_PORT |= (1 << SPI_SLAVE_SELECT); // DeselectSlave |
rxdata = SPDR; |
switch ( SPI_RXState) |
{ |
case 0: |
SPI_RxBufferIndex = 0; |
rxchksum = rxdata; |
if (rxdata == 0x81 ) { SPI_RXState = 1; } // 1. Syncbyte ok |
break; |
case 1: |
if (rxdata == 0x55) { rxchksum += rxdata; SPI_RXState = 2; } // 2. Syncbyte ok |
else SPI_RXState = 0; |
break; |
case 2: |
SPI_Buffer[SPI_RxBufferIndex++]= rxdata; // get data |
//DebugOut.Analog[19]++; |
if (SPI_RxBufferIndex >= sizeof(FromNaviCtrl)) |
{ |
if (rxdata == rxchksum) |
{ |
unsigned char *ptr = (unsigned char *)&FromNaviCtrl; |
memcpy(ptr, (unsigned char *) SPI_Buffer, sizeof(SPI_Buffer)); |
SPI_RxDataValid = 1; |
} |
else SPI_RxDataValid = 0; |
SPI_RXState = 0; |
} |
else rxchksum += rxdata; |
break; |
} |
if (SPI_BufferIndex < sizeof(ToNaviCtrl)) |
{ |
SLAVE_SELECT_PORT &= ~(1 << SPI_SLAVE_SELECT); // SelectSlave |
asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); |
asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); |
asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); asm volatile ("nop"); |
SPDR = SPI_TX_Buffer[SPI_BufferIndex]; |
ToNaviCtrl.Chksum += SPI_TX_Buffer[SPI_BufferIndex]; |
// SLAVE_SELECT_PORT |= (1 << SPI_SLAVE_SELECT); // DeselectSlave |
} |
else SPITransferCompleted = 1; |
SPI_BufferIndex++; |
} |
//------------------------------------------------------ |
void UpdateSPI_Buffer(void) |
{ |
signed int tmp; |
ToNaviCtrl.IntegralNick = (int) (IntegralNick / (long)(EE_Parameter.GyroAccFaktor * 4)); |
ToNaviCtrl.IntegralRoll = (int) (IntegralRoll / (long)(EE_Parameter.GyroAccFaktor * 4)); |
ToNaviCtrl.GyroCompass = (10 * ErsatzKompass) / GIER_GRAD_FAKTOR; |
ToNaviCtrl.GyroGier = (signed int) AdNeutralGier - AdWertGier; |
ToNaviCtrl.AccNick = ((int) ACC_AMPLIFY * (NaviAccNick / NaviCntAcc))/4; |
ToNaviCtrl.AccRoll = ((int) ACC_AMPLIFY * (NaviAccRoll / NaviCntAcc))/4; |
NaviCntAcc = 0; NaviAccNick = 0; NaviAccRoll = 0; |
// ToNaviCtrl.User8 = Parameter_UserParam8; |
// ToNaviCtrl.CalState = WinkelOut.CalcState; |
switch(ToNaviCtrl.Command) // |
{ |
case SPI_FCCMD_USER: |
ToNaviCtrl.Param.Byte[0] = Parameter_UserParam1; |
ToNaviCtrl.Param.Byte[1] = Parameter_UserParam2; |
ToNaviCtrl.Param.Byte[2] = Parameter_UserParam3; |
ToNaviCtrl.Param.Byte[3] = Parameter_UserParam4; |
ToNaviCtrl.Param.Byte[4] = Parameter_UserParam5; |
ToNaviCtrl.Param.Byte[5] = Parameter_UserParam6; |
ToNaviCtrl.Param.Byte[6] = Parameter_UserParam7; |
ToNaviCtrl.Param.Byte[7] = Parameter_UserParam8; |
ToNaviCtrl.Param.Byte[8] = FC_StatusFlags; |
FC_StatusFlags &= ~(FC_STATUS_CALIBRATE | FC_STATUS_START); |
ToNaviCtrl.Param.Byte[9] = GetActiveParamSet(); |
ToNaviCtrl.Param.Byte[10] = ControlHeading; |
break; |
case SPI_FCCMD_ACCU: |
ToNaviCtrl.Param.Int[0] = Capacity.ActualCurrent; // 0.1A |
ToNaviCtrl.Param.Int[1] = Capacity.UsedCapacity; // mAh |
ToNaviCtrl.Param.Byte[4] = (unsigned char) UBat; // 0.1V |
ToNaviCtrl.Param.Byte[5] = (unsigned char) BattLowVoltageWarning; //0.1V |
break; |
case SPI_FCCMD_PARAMETER1: |
ToNaviCtrl.Param.Byte[0] = EE_Parameter.NaviGpsModeControl; // Parameters for the Naviboard |
ToNaviCtrl.Param.Byte[1] = EE_Parameter.NaviGpsGain; |
ToNaviCtrl.Param.Byte[2] = EE_Parameter.NaviGpsP; |
ToNaviCtrl.Param.Byte[3] = EE_Parameter.NaviGpsI; |
ToNaviCtrl.Param.Byte[4] = EE_Parameter.NaviGpsD; |
ToNaviCtrl.Param.Byte[5] = EE_Parameter.NaviGpsACC; |
ToNaviCtrl.Param.Byte[6] = EE_Parameter.NaviGpsMinSat; |
ToNaviCtrl.Param.Byte[7] = EE_Parameter.NaviStickThreshold; |
ToNaviCtrl.Param.Byte[8] = EE_Parameter.NaviOperatingRadius; |
ToNaviCtrl.Param.Byte[9] = EE_Parameter.NaviWindCorrection; |
ToNaviCtrl.Param.Byte[10] = EE_Parameter.NaviSpeedCompensation; |
ToNaviCtrl.Param.Byte[11] = EE_Parameter.NaviAngleLimitation; |
break; |
case SPI_FCCMD_STICK: |
cli(); |
tmp = PPM_in[EE_Parameter.Kanalbelegung[K_GAS]]; if(tmp > 127) tmp = 127; else if(tmp < -127) tmp = -127; |
ToNaviCtrl.Param.Byte[0] = (char) tmp; |
tmp = PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]; if(tmp > 127) tmp = 127; else if(tmp < -127) tmp = -127; |
ToNaviCtrl.Param.Byte[1] = (char) tmp; |
tmp = PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]; if(tmp > 127) tmp = 127; else if(tmp < -127) tmp = -127; |
ToNaviCtrl.Param.Byte[2] = (char) tmp; |
tmp = PPM_in[EE_Parameter.Kanalbelegung[K_NICK]]; if(tmp > 127) tmp = 127; else if(tmp < -127) tmp = -127; |
sei(); |
ToNaviCtrl.Param.Byte[3] = (char) tmp; |
ToNaviCtrl.Param.Byte[4] = (unsigned char) Poti[0]; |
ToNaviCtrl.Param.Byte[5] = (unsigned char) Poti[1]; |
ToNaviCtrl.Param.Byte[6] = (unsigned char) Poti[2]; |
ToNaviCtrl.Param.Byte[7] = (unsigned char) Poti[3]; |
ToNaviCtrl.Param.Byte[8] = (unsigned char) Poti[4]; |
ToNaviCtrl.Param.Byte[9] = (unsigned char) Poti[5]; |
ToNaviCtrl.Param.Byte[10] = (unsigned char) Poti[6]; |
ToNaviCtrl.Param.Byte[11] = (unsigned char) Poti[7]; |
break; |
case SPI_FCCMD_MISC: |
if(WinkelOut.CalcState > 5) |
{ |
WinkelOut.CalcState = 0; |
ToNaviCtrl.Param.Byte[0] = 5; |
} |
else ToNaviCtrl.Param.Byte[0] = WinkelOut.CalcState; |
ToNaviCtrl.Param.Byte[1] = EE_Parameter.NaviPH_LoginTime; |
ToNaviCtrl.Param.Int[1] = (int)(HoehenWert/5); |
ToNaviCtrl.Param.Int[2] = (int)(SollHoehe/5); |
ToNaviCtrl.Param.Byte[6] = EE_Parameter.NaviGpsPLimit; |
ToNaviCtrl.Param.Byte[7] = EE_Parameter.NaviGpsILimit; |
ToNaviCtrl.Param.Byte[8] = EE_Parameter.NaviGpsDLimit; |
ToNaviCtrl.Param.Byte[9] = (unsigned char) SenderOkay; |
ToNaviCtrl.Param.Byte[10] = (unsigned char) PPM_in[0]; |
ToNaviCtrl.Param.Byte[11] = DebugOut.Analog[7] / 4; //GasMischanteil |
break; |
case SPI_FCCMD_VERSION: |
ToNaviCtrl.Param.Byte[0] = VERSION_MAJOR; |
ToNaviCtrl.Param.Byte[1] = VERSION_MINOR; |
ToNaviCtrl.Param.Byte[2] = VERSION_PATCH; |
ToNaviCtrl.Param.Byte[3] = NC_SPI_COMPATIBLE; |
ToNaviCtrl.Param.Byte[4] = PlatinenVersion; |
ToNaviCtrl.Param.Byte[5] = VersionInfo.HardwareError[0]; |
ToNaviCtrl.Param.Byte[6] = VersionInfo.HardwareError[1]; |
ToNaviCtrl.Param.Byte[7] = VersionInfo.HardwareError[2]; |
ToNaviCtrl.Param.Byte[8] = VersionInfo.HardwareError[3]; |
ToNaviCtrl.Param.Byte[9] = VersionInfo.HardwareError[4]; |
break; |
case SPI_FCCMD_SERVOS: |
ToNaviCtrl.Param.Byte[0] = EE_Parameter.ServoNickRefresh; // Parameters for the Servo Control |
ToNaviCtrl.Param.Byte[1] = EE_Parameter.ServoCompInvert; |
ToNaviCtrl.Param.Byte[2] = Parameter_ServoNickControl; |
ToNaviCtrl.Param.Byte[3] = EE_Parameter.ServoNickComp; |
ToNaviCtrl.Param.Byte[4] = EE_Parameter.ServoNickMin; |
ToNaviCtrl.Param.Byte[5] = EE_Parameter.ServoNickMax; |
ToNaviCtrl.Param.Byte[6] = Parameter_ServoRollControl; |
ToNaviCtrl.Param.Byte[7] = EE_Parameter.ServoRollComp; |
ToNaviCtrl.Param.Byte[8] = EE_Parameter.ServoRollMin; |
ToNaviCtrl.Param.Byte[9] = EE_Parameter.ServoRollMax; |
break; |
} |
if(SPI_RxDataValid) |
{ |
NaviDataOkay = 250; |
if(abs(FromNaviCtrl.GPS_Nick) < 512 && abs(FromNaviCtrl.GPS_Roll) < 512 && (EE_Parameter.GlobalConfig & CFG_GPS_AKTIV)) |
{ |
GPS_Nick = FromNaviCtrl.GPS_Nick; |
GPS_Roll = FromNaviCtrl.GPS_Roll; |
} |
if(FromNaviCtrl.CompassValue <= 360) KompassValue = FromNaviCtrl.CompassValue; |
KompassRichtung = ((540 + KompassValue - KompassStartwert) % 360) - 180; |
if(FromNaviCtrl.BeepTime > beeptime && !WinkelOut.CalcState) beeptime = FromNaviCtrl.BeepTime; |
switch (FromNaviCtrl.Command) |
{ |
case SPI_NCCMD_KALMAN: |
FromNaviCtrl_Value.Kalman_K = FromNaviCtrl.Param.sByte[0]; |
FromNaviCtrl_Value.Kalman_MaxFusion = FromNaviCtrl.Param.sByte[1]; |
FromNaviCtrl_Value.Kalman_MaxDrift = FromNaviCtrl.Param.sByte[2]; |
FromNaviCtrl_Value.SerialDataOkay = FromNaviCtrl.Param.Byte[3]; |
FromNaviCtrl_Value.GpsZ = FromNaviCtrl.Param.Byte[4]; |
FromNC_Rotate_C = FromNaviCtrl.Param.Byte[5]; |
FromNC_Rotate_S = FromNaviCtrl.Param.Byte[6]; |
break; |
case SPI_NCCMD_VERSION: |
NC_Version.Major = FromNaviCtrl.Param.Byte[0]; |
NC_Version.Minor = FromNaviCtrl.Param.Byte[1]; |
NC_Version.Patch = FromNaviCtrl.Param.Byte[2]; |
NC_Version.Compatible = FromNaviCtrl.Param.Byte[3]; |
NC_Version.Hardware = FromNaviCtrl.Param.Byte[4]; |
DebugOut.Status[0] |= FromNaviCtrl.Param.Byte[5]; |
NC_ErrorCode = FromNaviCtrl.Param.Byte[6]; |
DebugOut.Status[1] = (DebugOut.Status[1] & (0x01|0x02)) | (FromNaviCtrl.Param.Byte[6] & (0x04 | 0x08)); |
break; |
case SPI_NCCMD_GPSINFO: |
GPSInfo.Flags = FromNaviCtrl.Param.Byte[0]; |
GPSInfo.NumOfSats = FromNaviCtrl.Param.Byte[1]; |
GPSInfo.SatFix = FromNaviCtrl.Param.Byte[2]; |
GPSInfo.Speed = FromNaviCtrl.Param.Byte[3]; |
GPSInfo.HomeDistance = FromNaviCtrl.Param.Int[2]; |
GPSInfo.HomeBearing = FromNaviCtrl.Param.sInt[3]; |
PPM_in[25] = (signed char) FromNaviCtrl.Param.Byte[8]; // WP_EVENT-Channel-Value |
break; |
default: |
break; |
} |
} |
else |
{ |
// KompassValue = 0; |
// KompassRichtung = 0; |
GPS_Nick = 0; |
GPS_Roll = 0; |
} |
} |
#endif |
/branches/metro/v0.82a metro_Akku+/spi.d |
---|
0,0 → 1,3 |
spi.o spi.d : spi.c main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/spi.h |
---|
0,0 → 1,183 |
// ######################## SPI - FlightCtrl ################### |
#ifndef _SPI_H |
#define _SPI_H |
#include <util/delay.h> |
#define USE_SPI_COMMUNICATION |
//----------------------------------------- |
#define DDR_SPI DDRB |
#define SLAVE_SELECT_DDR_PORT DDRC |
#define SLAVE_SELECT_PORT PORTC |
#if defined(__AVR_ATmega1284P__) |
#define DD_SS PORTB4 |
#define DD_SCK PORTB7 |
#define DD_MOSI PORTB5 |
#define DD_MISO PORTB6 |
#define SPI_SLAVE_SELECT PORTC5 |
#else |
#define DD_SS PB4 |
#define DD_SCK PB7 |
#define DD_MOSI PB5 |
#define DD_MISO PB6 |
#define SPI_SLAVE_SELECT PC5 |
#endif |
// for compatibility reasons gcc3.x <-> gcc4.x |
#ifndef SPCR |
#define SPCR SPCR0 |
#endif |
#ifndef SPE |
#define SPE SPE0 |
#endif |
#ifndef MSTR |
#define MSTR MSTR0 |
#endif |
#ifndef SPR1 |
#define SPR1 SPR01 |
#endif |
#ifndef SPR0 |
#define SPR0 SPR00 |
#endif |
#ifndef SPIE |
#define SPIE SPIE0 |
#endif |
#ifndef SPDR |
#define SPDR SPDR0 |
#endif |
#ifndef SPIF |
#define SPIF SPIF0 |
#endif |
#ifndef SPSR |
#define SPSR SPSR0 |
#endif |
// ------------------------- |
#define SPI_FCCMD_USER 10 |
#define SPI_FCCMD_STICK 11 |
#define SPI_FCCMD_MISC 12 |
#define SPI_FCCMD_PARAMETER1 13 |
#define SPI_FCCMD_VERSION 14 |
#define SPI_FCCMD_SERVOS 15 |
#define SPI_FCCMD_ACCU 16 |
struct str_ToNaviCtrl |
{ |
unsigned char Sync1, Sync2; |
unsigned char Command; |
signed int IntegralNick; |
signed int IntegralRoll; |
signed int AccNick; |
signed int AccRoll; |
signed int GyroCompass; |
signed int GyroNick; |
signed int GyroRoll; |
signed int GyroGier; |
union |
{ |
unsigned char Byte[12]; |
char sByte[12]; |
unsigned int Int[6]; |
int sInt[6]; |
unsigned long Long[3]; |
long sLong[3]; |
float Float[3]; |
} Param; |
unsigned char Chksum; |
}; |
#define SPI_NCCMD_KALMAN 103 |
#define SPI_NCCMD_VERSION 104 |
#define SPI_NCCMD_GPSINFO 105 |
struct str_FromNaviCtrl |
{ |
unsigned char Command; |
signed int GPS_Nick; |
signed int GPS_Roll; |
signed int GPS_Gier; |
signed int CompassValue; |
signed int Status; |
unsigned int BeepTime; |
union |
{ |
unsigned char Byte[12]; |
char sByte[12]; |
unsigned int Int[6]; |
int sInt[6]; |
unsigned long Long[3]; |
long sLong[3]; |
float Float[3]; |
} Param; |
unsigned char Chksum; |
}; |
struct str_FromNaviCtrl_Value |
{ |
signed char Kalman_K; |
signed char Kalman_MaxDrift; |
signed char Kalman_MaxFusion; |
unsigned char SerialDataOkay; |
signed char GpsZ; |
}; |
struct str_SPI_VersionInfo |
{ |
unsigned char Major; |
unsigned char Minor; |
unsigned char Patch; |
unsigned char Compatible; |
unsigned char Hardware; |
}; |
// Satfix types for GPSData.SatFix |
#define SATFIX_NONE 0x00 |
#define SATFIX_DEADRECKOING 0x01 |
#define SATFIX_2D 0x02 |
#define SATFIX_3D 0x03 |
#define SATFIX_GPS_DEADRECKOING 0x04 |
#define SATFIX_TIMEONLY 0x05 |
// Flags for interpretation of the GPSData.Flags |
#define FLAG_GPSFIXOK 0x01 // (i.e. within DOP & ACC Masks) |
#define FLAG_DIFFSOLN 0x02 // (is DGPS used) |
#define FLAG_WKNSET 0x04 // (is Week Number valid) |
#define FLAG_TOWSET 0x08 // (is Time of Week valid) |
struct str_GPSInfo |
{ |
unsigned char Flags; // Status Flags |
unsigned char NumOfSats; // number of satelites |
unsigned char SatFix; // type of satfix |
unsigned char Speed; // m/sek |
unsigned int HomeDistance; // distance to Home in dm |
int HomeBearing; // bearing to home in deg |
}; |
#ifdef USE_SPI_COMMUNICATION |
extern struct str_GPSInfo GPSInfo; |
extern struct str_SPI_VersionInfo NC_Version; |
extern struct str_FromNaviCtrl_Value FromNaviCtrl_Value; |
extern struct str_ToNaviCtrl ToNaviCtrl; |
extern struct str_FromNaviCtrl FromNaviCtrl; |
extern unsigned char SPI_CommandCounter,NaviDataOkay; |
extern signed char FromNC_Rotate_C, FromNC_Rotate_S; |
extern unsigned char NC_ErrorCode; |
extern void SPI_MasterInit(void); |
extern void SPI_StartTransmitPacket(void); |
extern void UpdateSPI_Buffer(void); |
extern void SPI_TransmitByte(void); |
#else |
// -------------------------------- Dummy ----------------------------------------- |
#define SPI_MasterInit() ; |
#define SPI_StartTransmitPacket() ; |
#define UpdateSPI_Buffer() ; |
#define SPI_TransmitByte() ; |
#endif |
#endif |
/branches/metro/v0.82a metro_Akku+/spi.lst |
---|
0,0 → 1,992 |
1 .file "spi.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global NC_ErrorCode |
11 .global NC_ErrorCode |
12 .section .bss |
15 NC_ErrorCode: |
16 0000 00 .skip 1,0 |
17 .global SPI_CommandCounter |
18 .global SPI_CommandCounter |
21 SPI_CommandCounter: |
22 0001 00 .skip 1,0 |
23 .global SPI_CommandSequence |
24 .data |
27 SPI_CommandSequence: |
28 0000 0B .byte 11 |
29 0001 0A .byte 10 |
30 0002 0D .byte 13 |
31 0003 0B .byte 11 |
32 0004 0C .byte 12 |
33 0005 0E .byte 14 |
34 0006 0B .byte 11 |
35 0007 0F .byte 15 |
36 0008 10 .byte 16 |
37 .global NaviDataOkay |
40 NaviDataOkay: |
41 0009 FA .byte -6 |
42 .global FromNC_Rotate_S |
43 .global FromNC_Rotate_S |
44 .section .bss |
47 FromNC_Rotate_S: |
48 0002 00 .skip 1,0 |
49 .global FromNC_Rotate_C |
50 .data |
53 FromNC_Rotate_C: |
54 000a 20 .byte 32 |
55 .text |
56 .global SPI_MasterInit |
58 SPI_MasterInit: |
59 /* prologue: frame size=0 */ |
60 /* prologue end (size=0) */ |
61 0000 84B1 in r24,36-0x20 |
62 0002 806A ori r24,lo8(-96) |
63 0004 84B9 out 36-0x20,r24 |
64 0006 3D9A sbi 39-0x20,5 |
65 0008 82E5 ldi r24,lo8(82) |
66 000a 8CBD out 76-0x20,r24 |
67 000c 1DBC out 77-0x20,__zero_reg__ |
68 000e 459A sbi 40-0x20,5 |
69 0010 81E0 ldi r24,lo8(1) |
70 0012 8093 0000 sts SPITransferCompleted,r24 |
71 0016 8AEA ldi r24,lo8(-86) |
72 0018 8093 0000 sts ToNaviCtrl,r24 |
73 001c 83E8 ldi r24,lo8(-125) |
74 001e 8093 0000 sts ToNaviCtrl+1,r24 |
75 0022 8AE0 ldi r24,lo8(10) |
76 0024 8093 0000 sts ToNaviCtrl+2,r24 |
77 0028 1092 0000 sts (ToNaviCtrl+3)+1,__zero_reg__ |
78 002c 1092 0000 sts ToNaviCtrl+3,__zero_reg__ |
79 0030 1092 0000 sts (ToNaviCtrl+5)+1,__zero_reg__ |
80 0034 1092 0000 sts ToNaviCtrl+5,__zero_reg__ |
81 0038 1092 0000 sts FromNaviCtrl_Value+3,__zero_reg__ |
82 003c 1092 0000 sts SPI_RxDataValid,__zero_reg__ |
83 /* epilogue: frame size=0 */ |
84 0040 0895 ret |
85 /* epilogue end (size=1) */ |
86 /* function SPI_MasterInit size 33 (32) */ |
88 .lcomm SPI_RXState.0,1 |
89 .lcomm rxchksum.1,1 |
90 .global SPI_TransmitByte |
92 SPI_TransmitByte: |
93 /* prologue: frame size=0 */ |
94 /* prologue end (size=0) */ |
95 0042 3091 0000 lds r19,SPITransferCompleted |
96 0046 3323 tst r19 |
97 0048 09F0 breq .+2 |
98 004a 85C0 rjmp .L2 |
99 004c 0DB4 in __tmp_reg__,77-0x20 |
100 004e 07FE sbrs __tmp_reg__,7 |
101 0050 82C0 rjmp .L2 |
102 0052 84E0 ldi r24,lo8(4) |
103 0054 8093 0000 sts SendSPI,r24 |
104 0058 459A sbi 40-0x20,5 |
105 005a 2EB5 in r18,78-0x20 |
106 005c 8091 0000 lds r24,SPI_RXState.0 |
107 0060 9927 clr r25 |
108 0062 8130 cpi r24,1 |
109 0064 9105 cpc r25,__zero_reg__ |
110 0066 89F0 breq .L8 |
111 0068 8230 cpi r24,2 |
112 006a 9105 cpc r25,__zero_reg__ |
113 006c 1CF4 brge .L16 |
114 006e 892B or r24,r25 |
115 0070 21F0 breq .L6 |
116 0072 3EC0 rjmp .L5 |
117 .L16: |
118 0074 0297 sbiw r24,2 |
119 0076 B9F0 breq .L11 |
120 0078 3BC0 rjmp .L5 |
121 .L6: |
122 007a 3093 0000 sts SPI_RxBufferIndex,r19 |
123 007e 2093 0000 sts rxchksum.1,r18 |
124 0082 2138 cpi r18,lo8(-127) |
125 0084 A9F5 brne .L5 |
126 0086 81E0 ldi r24,lo8(1) |
127 0088 08C0 rjmp .L19 |
128 .L8: |
129 008a 2535 cpi r18,lo8(85) |
130 008c 49F4 brne .L9 |
131 008e 8091 0000 lds r24,rxchksum.1 |
132 0092 820F add r24,r18 |
133 0094 8093 0000 sts rxchksum.1,r24 |
134 0098 82E0 ldi r24,lo8(2) |
135 .L19: |
136 009a 8093 0000 sts SPI_RXState.0,r24 |
137 009e 28C0 rjmp .L5 |
138 .L9: |
139 00a0 3093 0000 sts SPI_RXState.0,r19 |
140 00a4 25C0 rjmp .L5 |
141 .L11: |
142 00a6 8091 0000 lds r24,SPI_RxBufferIndex |
143 00aa E82F mov r30,r24 |
144 00ac FF27 clr r31 |
145 00ae E050 subi r30,lo8(-(SPI_Buffer)) |
146 00b0 F040 sbci r31,hi8(-(SPI_Buffer)) |
147 00b2 2083 st Z,r18 |
148 00b4 8F5F subi r24,lo8(-(1)) |
149 00b6 8093 0000 sts SPI_RxBufferIndex,r24 |
150 00ba 9091 0000 lds r25,rxchksum.1 |
151 00be 8A31 cpi r24,lo8(26) |
152 00c0 A0F0 brlo .L12 |
153 00c2 2917 cp r18,r25 |
154 00c4 69F4 brne .L13 |
155 00c6 8AE1 ldi r24,lo8(26) |
156 00c8 A0E0 ldi r26,lo8(SPI_Buffer) |
157 00ca B0E0 ldi r27,hi8(SPI_Buffer) |
158 00cc E0E0 ldi r30,lo8(FromNaviCtrl) |
159 00ce F0E0 ldi r31,hi8(FromNaviCtrl) |
160 00d0 0D90 ld __tmp_reg__,X+ |
161 00d2 0192 st Z+,__tmp_reg__ |
162 00d4 8A95 dec r24 |
163 00d6 E1F7 brne .-8 |
164 00d8 81E0 ldi r24,lo8(1) |
165 00da 8093 0000 sts SPI_RxDataValid,r24 |
166 00de 02C0 rjmp .L14 |
167 .L13: |
168 00e0 3093 0000 sts SPI_RxDataValid,r19 |
169 .L14: |
170 00e4 1092 0000 sts SPI_RXState.0,__zero_reg__ |
171 00e8 03C0 rjmp .L5 |
172 .L12: |
173 00ea 920F add r25,r18 |
174 00ec 9093 0000 sts rxchksum.1,r25 |
175 .L5: |
176 00f0 2091 0000 lds r18,SPI_BufferIndex |
177 00f4 2032 cpi r18,lo8(32) |
178 00f6 08F0 brlo .+2 |
179 00f8 28C0 rjmp .L17 |
180 00fa 4598 cbi 40-0x20,5 |
181 /* #APP */ |
182 00fc 0000 nop |
183 00fe 0000 nop |
184 0100 0000 nop |
185 0102 0000 nop |
186 0104 0000 nop |
187 0106 0000 nop |
188 0108 0000 nop |
189 010a 0000 nop |
190 010c 0000 nop |
191 010e 0000 nop |
192 0110 0000 nop |
193 0112 0000 nop |
194 0114 0000 nop |
195 0116 0000 nop |
196 0118 0000 nop |
197 011a 0000 nop |
198 011c 0000 nop |
199 011e 0000 nop |
200 0120 0000 nop |
201 0122 0000 nop |
202 0124 0000 nop |
203 0126 0000 nop |
204 0128 0000 nop |
205 012a 0000 nop |
206 /* #NOAPP */ |
207 012c E091 0000 lds r30,SPI_TX_Buffer |
208 0130 F091 0000 lds r31,(SPI_TX_Buffer)+1 |
209 0134 E20F add r30,r18 |
210 0136 F11D adc r31,__zero_reg__ |
211 0138 8081 ld r24,Z |
212 013a 8EBD out 78-0x20,r24 |
213 013c 8091 0000 lds r24,ToNaviCtrl+31 |
214 0140 9081 ld r25,Z |
215 0142 890F add r24,r25 |
216 0144 8093 0000 sts ToNaviCtrl+31,r24 |
217 0148 03C0 rjmp .L18 |
218 .L17: |
219 014a 81E0 ldi r24,lo8(1) |
220 014c 8093 0000 sts SPITransferCompleted,r24 |
221 .L18: |
222 0150 2F5F subi r18,lo8(-(1)) |
223 0152 2093 0000 sts SPI_BufferIndex,r18 |
224 .L2: |
225 0156 0895 ret |
226 /* epilogue: frame size=0 */ |
227 /* epilogue: noreturn */ |
228 /* epilogue end (size=0) */ |
229 /* function SPI_TransmitByte size 164 (164) */ |
231 .global UpdateSPI_Buffer |
233 UpdateSPI_Buffer: |
234 /* prologue: frame size=0 */ |
235 0158 EF92 push r14 |
236 015a FF92 push r15 |
237 015c 0F93 push r16 |
238 015e 1F93 push r17 |
239 /* prologue end (size=4) */ |
240 0160 8091 0000 lds r24,EE_Parameter+28 |
241 0164 9927 clr r25 |
242 0166 880F lsl r24 |
243 0168 991F rol r25 |
244 016a 880F lsl r24 |
245 016c 991F rol r25 |
246 016e 7C01 movw r14,r24 |
247 0170 0027 clr r16 |
248 0172 F7FC sbrc r15,7 |
249 0174 0095 com r16 |
250 0176 102F mov r17,r16 |
251 0178 8091 0000 lds r24,IntegralNick |
252 017c 9091 0000 lds r25,(IntegralNick)+1 |
253 0180 A091 0000 lds r26,(IntegralNick)+2 |
254 0184 B091 0000 lds r27,(IntegralNick)+3 |
255 0188 BC01 movw r22,r24 |
256 018a CD01 movw r24,r26 |
257 018c A801 movw r20,r16 |
258 018e 9701 movw r18,r14 |
259 0190 0E94 0000 call __divmodsi4 |
260 0194 3093 0000 sts (ToNaviCtrl+3)+1,r19 |
261 0198 2093 0000 sts ToNaviCtrl+3,r18 |
262 019c 8091 0000 lds r24,IntegralRoll |
263 01a0 9091 0000 lds r25,(IntegralRoll)+1 |
264 01a4 A091 0000 lds r26,(IntegralRoll)+2 |
265 01a8 B091 0000 lds r27,(IntegralRoll)+3 |
266 01ac BC01 movw r22,r24 |
267 01ae CD01 movw r24,r26 |
268 01b0 A801 movw r20,r16 |
269 01b2 9701 movw r18,r14 |
270 01b4 0E94 0000 call __divmodsi4 |
271 01b8 3093 0000 sts (ToNaviCtrl+5)+1,r19 |
272 01bc 2093 0000 sts ToNaviCtrl+5,r18 |
273 01c0 2091 0000 lds r18,ErsatzKompass |
274 01c4 3091 0000 lds r19,(ErsatzKompass)+1 |
275 01c8 4091 0000 lds r20,(ErsatzKompass)+2 |
276 01cc 5091 0000 lds r21,(ErsatzKompass)+3 |
277 01d0 DA01 movw r26,r20 |
278 01d2 C901 movw r24,r18 |
279 01d4 E3E0 ldi r30,3 |
280 01d6 880F 1: lsl r24 |
281 01d8 991F rol r25 |
282 01da AA1F rol r26 |
283 01dc BB1F rol r27 |
284 01de EA95 dec r30 |
285 01e0 D1F7 brne 1b |
286 01e2 820F add r24,r18 |
287 01e4 931F adc r25,r19 |
288 01e6 A41F adc r26,r20 |
289 01e8 B51F adc r27,r21 |
290 01ea 820F add r24,r18 |
291 01ec 931F adc r25,r19 |
292 01ee A41F adc r26,r20 |
293 01f0 B51F adc r27,r21 |
294 01f2 2091 0000 lds r18,GIER_GRAD_FAKTOR |
295 01f6 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1 |
296 01fa 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2 |
297 01fe 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3 |
298 0202 BC01 movw r22,r24 |
299 0204 CD01 movw r24,r26 |
300 0206 0E94 0000 call __divmodsi4 |
301 020a 3093 0000 sts (ToNaviCtrl+11)+1,r19 |
302 020e 2093 0000 sts ToNaviCtrl+11,r18 |
303 0212 8091 0000 lds r24,AdNeutralGier |
304 0216 9091 0000 lds r25,(AdNeutralGier)+1 |
305 021a 2091 0000 lds r18,AdWertGier |
306 021e 3091 0000 lds r19,(AdWertGier)+1 |
307 0222 821B sub r24,r18 |
308 0224 930B sbc r25,r19 |
309 0226 9093 0000 sts (ToNaviCtrl+17)+1,r25 |
310 022a 8093 0000 sts ToNaviCtrl+17,r24 |
311 022e E091 0000 lds r30,NaviCntAcc |
312 0232 F091 0000 lds r31,(NaviCntAcc)+1 |
313 0236 8091 0000 lds r24,NaviAccNick |
314 023a 9091 0000 lds r25,(NaviAccNick)+1 |
315 023e BF01 movw r22,r30 |
316 0240 0E94 0000 call __divmodhi4 |
317 0244 CB01 movw r24,r22 |
318 0246 9B01 movw r18,r22 |
319 0248 220F lsl r18 |
320 024a 331F rol r19 |
321 024c 220F lsl r18 |
322 024e 331F rol r19 |
323 0250 280F add r18,r24 |
324 0252 391F adc r19,r25 |
325 0254 280F add r18,r24 |
326 0256 391F adc r19,r25 |
327 0258 37FF sbrs r19,7 |
328 025a 02C0 rjmp .L21 |
329 025c 2D5F subi r18,lo8(-(3)) |
330 025e 3F4F sbci r19,hi8(-(3)) |
331 .L21: |
332 0260 3595 asr r19 |
333 0262 2795 ror r18 |
334 0264 3595 asr r19 |
335 0266 2795 ror r18 |
336 0268 3093 0000 sts (ToNaviCtrl+7)+1,r19 |
337 026c 2093 0000 sts ToNaviCtrl+7,r18 |
338 0270 8091 0000 lds r24,NaviAccRoll |
339 0274 9091 0000 lds r25,(NaviAccRoll)+1 |
340 0278 BF01 movw r22,r30 |
341 027a 0E94 0000 call __divmodhi4 |
342 027e 9B01 movw r18,r22 |
343 0280 220F lsl r18 |
344 0282 331F rol r19 |
345 0284 220F lsl r18 |
346 0286 331F rol r19 |
347 0288 260F add r18,r22 |
348 028a 371F adc r19,r23 |
349 028c 260F add r18,r22 |
350 028e 371F adc r19,r23 |
351 0290 37FF sbrs r19,7 |
352 0292 02C0 rjmp .L22 |
353 0294 2D5F subi r18,lo8(-(3)) |
354 0296 3F4F sbci r19,hi8(-(3)) |
355 .L22: |
356 0298 3595 asr r19 |
357 029a 2795 ror r18 |
358 029c 3595 asr r19 |
359 029e 2795 ror r18 |
360 02a0 3093 0000 sts (ToNaviCtrl+9)+1,r19 |
361 02a4 2093 0000 sts ToNaviCtrl+9,r18 |
362 02a8 1092 0000 sts (NaviCntAcc)+1,__zero_reg__ |
363 02ac 1092 0000 sts NaviCntAcc,__zero_reg__ |
364 02b0 1092 0000 sts (NaviAccNick)+1,__zero_reg__ |
365 02b4 1092 0000 sts NaviAccNick,__zero_reg__ |
366 02b8 1092 0000 sts (NaviAccRoll)+1,__zero_reg__ |
367 02bc 1092 0000 sts NaviAccRoll,__zero_reg__ |
368 02c0 8091 0000 lds r24,ToNaviCtrl+2 |
369 02c4 9927 clr r25 |
370 02c6 8D30 cpi r24,13 |
371 02c8 9105 cpc r25,__zero_reg__ |
372 02ca 09F4 brne .+2 |
373 02cc 66C0 rjmp .L26 |
374 02ce 8E30 cpi r24,14 |
375 02d0 9105 cpc r25,__zero_reg__ |
376 02d2 5CF4 brge .L46 |
377 02d4 8B30 cpi r24,11 |
378 02d6 9105 cpc r25,__zero_reg__ |
379 02d8 09F4 brne .+2 |
380 02da 8EC0 rjmp .L27 |
381 02dc 8C30 cpi r24,12 |
382 02de 9105 cpc r25,__zero_reg__ |
383 02e0 0CF0 brlt .+2 |
384 02e2 0FC1 rjmp .L40 |
385 02e4 0A97 sbiw r24,10 |
386 02e6 61F0 breq .L24 |
387 02e8 ADC1 rjmp .L23 |
388 .L46: |
389 02ea 8F30 cpi r24,15 |
390 02ec 9105 cpc r25,__zero_reg__ |
391 02ee 09F4 brne .+2 |
392 02f0 81C1 rjmp .L45 |
393 02f2 8F30 cpi r24,15 |
394 02f4 9105 cpc r25,__zero_reg__ |
395 02f6 0CF4 brge .+2 |
396 02f8 5CC1 rjmp .L44 |
397 02fa 4097 sbiw r24,16 |
398 02fc 99F1 breq .L25 |
399 02fe A2C1 rjmp .L23 |
400 .L24: |
401 0300 8091 0000 lds r24,Parameter_UserParam1 |
402 0304 8093 0000 sts ToNaviCtrl+19,r24 |
403 0308 8091 0000 lds r24,Parameter_UserParam2 |
404 030c 8093 0000 sts ToNaviCtrl+20,r24 |
405 0310 8091 0000 lds r24,Parameter_UserParam3 |
406 0314 8093 0000 sts ToNaviCtrl+21,r24 |
407 0318 8091 0000 lds r24,Parameter_UserParam4 |
408 031c 8093 0000 sts ToNaviCtrl+22,r24 |
409 0320 8091 0000 lds r24,Parameter_UserParam5 |
410 0324 8093 0000 sts ToNaviCtrl+23,r24 |
411 0328 8091 0000 lds r24,Parameter_UserParam6 |
412 032c 8093 0000 sts ToNaviCtrl+24,r24 |
413 0330 8091 0000 lds r24,Parameter_UserParam7 |
414 0334 8093 0000 sts ToNaviCtrl+25,r24 |
415 0338 8091 0000 lds r24,Parameter_UserParam8 |
416 033c 8093 0000 sts ToNaviCtrl+26,r24 |
417 0340 8091 0000 lds r24,FC_StatusFlags |
418 0344 8093 0000 sts ToNaviCtrl+27,r24 |
419 0348 8091 0000 lds r24,FC_StatusFlags |
420 034c 837F andi r24,lo8(-13) |
421 034e 8093 0000 sts FC_StatusFlags,r24 |
422 0352 0E94 0000 call GetActiveParamSet |
423 0356 8093 0000 sts ToNaviCtrl+28,r24 |
424 035a 8091 0000 lds r24,ControlHeading |
425 035e 8093 0000 sts ToNaviCtrl+29,r24 |
426 0362 70C1 rjmp .L23 |
427 .L25: |
428 0364 8091 0000 lds r24,Capacity |
429 0368 9091 0000 lds r25,(Capacity)+1 |
430 036c 9093 0000 sts (ToNaviCtrl+19)+1,r25 |
431 0370 8093 0000 sts ToNaviCtrl+19,r24 |
432 0374 8091 0000 lds r24,Capacity+4 |
433 0378 9091 0000 lds r25,(Capacity+4)+1 |
434 037c 9093 0000 sts (ToNaviCtrl+21)+1,r25 |
435 0380 8093 0000 sts ToNaviCtrl+21,r24 |
436 0384 8091 0000 lds r24,UBat |
437 0388 9091 0000 lds r25,(UBat)+1 |
438 038c 8093 0000 sts ToNaviCtrl+23,r24 |
439 0390 8091 0000 lds r24,BattLowVoltageWarning |
440 0394 8093 0000 sts ToNaviCtrl+24,r24 |
441 0398 55C1 rjmp .L23 |
442 .L26: |
443 039a 8091 0000 lds r24,EE_Parameter+80 |
444 039e 8093 0000 sts ToNaviCtrl+19,r24 |
445 03a2 8091 0000 lds r24,EE_Parameter+81 |
446 03a6 8093 0000 sts ToNaviCtrl+20,r24 |
447 03aa 8091 0000 lds r24,EE_Parameter+82 |
448 03ae 8093 0000 sts ToNaviCtrl+21,r24 |
449 03b2 8091 0000 lds r24,EE_Parameter+83 |
450 03b6 8093 0000 sts ToNaviCtrl+22,r24 |
451 03ba 8091 0000 lds r24,EE_Parameter+84 |
452 03be 8093 0000 sts ToNaviCtrl+23,r24 |
453 03c2 8091 0000 lds r24,EE_Parameter+88 |
454 03c6 8093 0000 sts ToNaviCtrl+24,r24 |
455 03ca 8091 0000 lds r24,EE_Parameter+89 |
456 03ce 8093 0000 sts ToNaviCtrl+25,r24 |
457 03d2 8091 0000 lds r24,EE_Parameter+90 |
458 03d6 8093 0000 sts ToNaviCtrl+26,r24 |
459 03da 8091 0000 lds r24,EE_Parameter+93 |
460 03de 8093 0000 sts ToNaviCtrl+27,r24 |
461 03e2 8091 0000 lds r24,EE_Parameter+91 |
462 03e6 8093 0000 sts ToNaviCtrl+28,r24 |
463 03ea 8091 0000 lds r24,EE_Parameter+92 |
464 03ee 8093 0000 sts ToNaviCtrl+29,r24 |
465 03f2 8091 0000 lds r24,EE_Parameter+94 |
466 03f6 DAC0 rjmp .L59 |
467 .L27: |
468 /* #APP */ |
469 03f8 F894 cli |
470 /* #NOAPP */ |
471 03fa 8091 0000 lds r24,EE_Parameter+3 |
472 03fe E82F mov r30,r24 |
473 0400 FF27 clr r31 |
474 0402 EE0F add r30,r30 |
475 0404 FF1F adc r31,r31 |
476 0406 E050 subi r30,lo8(-(PPM_in)) |
477 0408 F040 sbci r31,hi8(-(PPM_in)) |
478 040a 0190 ld __tmp_reg__,Z+ |
479 040c F081 ld r31,Z |
480 040e E02D mov r30,__tmp_reg__ |
481 0410 E038 cpi r30,128 |
482 0412 F105 cpc r31,__zero_reg__ |
483 0414 1CF0 brlt .L28 |
484 0416 EFE7 ldi r30,lo8(127) |
485 0418 F0E0 ldi r31,hi8(127) |
486 041a 06C0 rjmp .L29 |
487 .L28: |
488 041c 2FEF ldi r18,hi8(-127) |
489 041e E138 cpi r30,lo8(-127) |
490 0420 F207 cpc r31,r18 |
491 0422 14F4 brge .L29 |
492 0424 E1E8 ldi r30,lo8(-127) |
493 0426 FFEF ldi r31,hi8(-127) |
494 .L29: |
495 0428 E093 0000 sts ToNaviCtrl+19,r30 |
496 042c 8091 0000 lds r24,EE_Parameter+4 |
497 0430 E82F mov r30,r24 |
498 0432 FF27 clr r31 |
499 0434 EE0F add r30,r30 |
500 0436 FF1F adc r31,r31 |
501 0438 E050 subi r30,lo8(-(PPM_in)) |
502 043a F040 sbci r31,hi8(-(PPM_in)) |
503 043c 0190 ld __tmp_reg__,Z+ |
504 043e F081 ld r31,Z |
505 0440 E02D mov r30,__tmp_reg__ |
506 0442 E038 cpi r30,128 |
507 0444 F105 cpc r31,__zero_reg__ |
508 0446 1CF0 brlt .L31 |
509 0448 EFE7 ldi r30,lo8(127) |
510 044a F0E0 ldi r31,hi8(127) |
511 044c 06C0 rjmp .L32 |
512 .L31: |
513 044e 6FEF ldi r22,hi8(-127) |
514 0450 E138 cpi r30,lo8(-127) |
515 0452 F607 cpc r31,r22 |
516 0454 14F4 brge .L32 |
517 0456 E1E8 ldi r30,lo8(-127) |
518 0458 FFEF ldi r31,hi8(-127) |
519 .L32: |
520 045a E093 0000 sts ToNaviCtrl+20,r30 |
521 045e 8091 0000 lds r24,EE_Parameter+2 |
522 0462 E82F mov r30,r24 |
523 0464 FF27 clr r31 |
524 0466 EE0F add r30,r30 |
525 0468 FF1F adc r31,r31 |
526 046a E050 subi r30,lo8(-(PPM_in)) |
527 046c F040 sbci r31,hi8(-(PPM_in)) |
528 046e 0190 ld __tmp_reg__,Z+ |
529 0470 F081 ld r31,Z |
530 0472 E02D mov r30,__tmp_reg__ |
531 0474 E038 cpi r30,128 |
532 0476 F105 cpc r31,__zero_reg__ |
533 0478 1CF0 brlt .L34 |
534 047a EFE7 ldi r30,lo8(127) |
535 047c F0E0 ldi r31,hi8(127) |
536 047e 06C0 rjmp .L35 |
537 .L34: |
538 0480 8FEF ldi r24,hi8(-127) |
539 0482 E138 cpi r30,lo8(-127) |
540 0484 F807 cpc r31,r24 |
541 0486 14F4 brge .L35 |
542 0488 E1E8 ldi r30,lo8(-127) |
543 048a FFEF ldi r31,hi8(-127) |
544 .L35: |
545 048c E093 0000 sts ToNaviCtrl+21,r30 |
546 0490 8091 0000 lds r24,EE_Parameter+1 |
547 0494 E82F mov r30,r24 |
548 0496 FF27 clr r31 |
549 0498 EE0F add r30,r30 |
550 049a FF1F adc r31,r31 |
551 049c E050 subi r30,lo8(-(PPM_in)) |
552 049e F040 sbci r31,hi8(-(PPM_in)) |
553 04a0 0190 ld __tmp_reg__,Z+ |
554 04a2 F081 ld r31,Z |
555 04a4 E02D mov r30,__tmp_reg__ |
556 04a6 E038 cpi r30,128 |
557 04a8 F105 cpc r31,__zero_reg__ |
558 04aa 1CF0 brlt .L37 |
559 04ac EFE7 ldi r30,lo8(127) |
560 04ae F0E0 ldi r31,hi8(127) |
561 04b0 06C0 rjmp .L38 |
562 .L37: |
563 04b2 2FEF ldi r18,hi8(-127) |
564 04b4 E138 cpi r30,lo8(-127) |
565 04b6 F207 cpc r31,r18 |
566 04b8 14F4 brge .L38 |
567 04ba E1E8 ldi r30,lo8(-127) |
568 04bc FFEF ldi r31,hi8(-127) |
569 .L38: |
570 /* #APP */ |
571 04be 7894 sei |
572 /* #NOAPP */ |
573 04c0 E093 0000 sts ToNaviCtrl+22,r30 |
574 04c4 8091 0000 lds r24,Poti |
575 04c8 8093 0000 sts ToNaviCtrl+23,r24 |
576 04cc 8091 0000 lds r24,Poti+1 |
577 04d0 8093 0000 sts ToNaviCtrl+24,r24 |
578 04d4 8091 0000 lds r24,Poti+2 |
579 04d8 8093 0000 sts ToNaviCtrl+25,r24 |
580 04dc 8091 0000 lds r24,Poti+3 |
581 04e0 8093 0000 sts ToNaviCtrl+26,r24 |
582 04e4 8091 0000 lds r24,Poti+4 |
583 04e8 8093 0000 sts ToNaviCtrl+27,r24 |
584 04ec 8091 0000 lds r24,Poti+5 |
585 04f0 8093 0000 sts ToNaviCtrl+28,r24 |
586 04f4 8091 0000 lds r24,Poti+6 |
587 04f8 8093 0000 sts ToNaviCtrl+29,r24 |
588 04fc 8091 0000 lds r24,Poti+7 |
589 0500 55C0 rjmp .L59 |
590 .L40: |
591 0502 8091 0000 lds r24,WinkelOut+6 |
592 0506 8630 cpi r24,lo8(6) |
593 0508 18F0 brlo .L41 |
594 050a 1092 0000 sts WinkelOut+6,__zero_reg__ |
595 050e 85E0 ldi r24,lo8(5) |
596 .L41: |
597 0510 8093 0000 sts ToNaviCtrl+19,r24 |
598 0514 8091 0000 lds r24,EE_Parameter+95 |
599 0518 8093 0000 sts ToNaviCtrl+20,r24 |
600 051c 8091 0000 lds r24,HoehenWert |
601 0520 9091 0000 lds r25,(HoehenWert)+1 |
602 0524 A091 0000 lds r26,(HoehenWert)+2 |
603 0528 B091 0000 lds r27,(HoehenWert)+3 |
604 052c BC01 movw r22,r24 |
605 052e CD01 movw r24,r26 |
606 0530 25E0 ldi r18,lo8(5) |
607 0532 30E0 ldi r19,hi8(5) |
608 0534 40E0 ldi r20,hlo8(5) |
609 0536 50E0 ldi r21,hhi8(5) |
610 0538 0E94 0000 call __divmodsi4 |
611 053c 3093 0000 sts (ToNaviCtrl+21)+1,r19 |
612 0540 2093 0000 sts ToNaviCtrl+21,r18 |
613 0544 8091 0000 lds r24,SollHoehe |
614 0548 9091 0000 lds r25,(SollHoehe)+1 |
615 054c A091 0000 lds r26,(SollHoehe)+2 |
616 0550 B091 0000 lds r27,(SollHoehe)+3 |
617 0554 BC01 movw r22,r24 |
618 0556 CD01 movw r24,r26 |
619 0558 25E0 ldi r18,lo8(5) |
620 055a 30E0 ldi r19,hi8(5) |
621 055c 40E0 ldi r20,hlo8(5) |
622 055e 50E0 ldi r21,hhi8(5) |
623 0560 0E94 0000 call __divmodsi4 |
624 0564 3093 0000 sts (ToNaviCtrl+23)+1,r19 |
625 0568 2093 0000 sts ToNaviCtrl+23,r18 |
626 056c 8091 0000 lds r24,EE_Parameter+85 |
627 0570 8093 0000 sts ToNaviCtrl+25,r24 |
628 0574 8091 0000 lds r24,EE_Parameter+86 |
629 0578 8093 0000 sts ToNaviCtrl+26,r24 |
630 057c 8091 0000 lds r24,EE_Parameter+87 |
631 0580 8093 0000 sts ToNaviCtrl+27,r24 |
632 0584 8091 0000 lds r24,SenderOkay |
633 0588 8093 0000 sts ToNaviCtrl+28,r24 |
634 058c 8091 0000 lds r24,PPM_in |
635 0590 9091 0000 lds r25,(PPM_in)+1 |
636 0594 8093 0000 sts ToNaviCtrl+29,r24 |
637 0598 8091 0000 lds r24,DebugOut+16 |
638 059c 9091 0000 lds r25,(DebugOut+16)+1 |
639 05a0 97FD sbrc r25,7 |
640 05a2 0396 adiw r24,3 |
641 .L43: |
642 05a4 9595 asr r25 |
643 05a6 8795 ror r24 |
644 05a8 9595 asr r25 |
645 05aa 8795 ror r24 |
646 .L59: |
647 05ac 8093 0000 sts ToNaviCtrl+30,r24 |
648 05b0 49C0 rjmp .L23 |
649 .L44: |
650 05b2 1092 0000 sts ToNaviCtrl+19,__zero_reg__ |
651 05b6 82E5 ldi r24,lo8(82) |
652 05b8 8093 0000 sts ToNaviCtrl+20,r24 |
653 05bc 1092 0000 sts ToNaviCtrl+21,__zero_reg__ |
654 05c0 80E1 ldi r24,lo8(16) |
655 05c2 8093 0000 sts ToNaviCtrl+22,r24 |
656 05c6 8091 0000 lds r24,PlatinenVersion |
657 05ca 8093 0000 sts ToNaviCtrl+23,r24 |
658 05ce 8091 0000 lds r24,VersionInfo+5 |
659 05d2 8093 0000 sts ToNaviCtrl+24,r24 |
660 05d6 8091 0000 lds r24,VersionInfo+6 |
661 05da 8093 0000 sts ToNaviCtrl+25,r24 |
662 05de 8091 0000 lds r24,VersionInfo+7 |
663 05e2 8093 0000 sts ToNaviCtrl+26,r24 |
664 05e6 8091 0000 lds r24,VersionInfo+8 |
665 05ea 8093 0000 sts ToNaviCtrl+27,r24 |
666 05ee 8091 0000 lds r24,VersionInfo+9 |
667 05f2 26C0 rjmp .L58 |
668 .L45: |
669 05f4 8091 0000 lds r24,EE_Parameter+53 |
670 05f8 8093 0000 sts ToNaviCtrl+19,r24 |
671 05fc 8091 0000 lds r24,EE_Parameter+101 |
672 0600 8093 0000 sts ToNaviCtrl+20,r24 |
673 0604 8091 0000 lds r24,Parameter_ServoNickControl |
674 0608 8093 0000 sts ToNaviCtrl+21,r24 |
675 060c 8091 0000 lds r24,EE_Parameter+46 |
676 0610 8093 0000 sts ToNaviCtrl+22,r24 |
677 0614 8091 0000 lds r24,EE_Parameter+47 |
678 0618 8093 0000 sts ToNaviCtrl+23,r24 |
679 061c 8091 0000 lds r24,EE_Parameter+48 |
680 0620 8093 0000 sts ToNaviCtrl+24,r24 |
681 0624 8091 0000 lds r24,Parameter_ServoRollControl |
682 0628 8093 0000 sts ToNaviCtrl+25,r24 |
683 062c 8091 0000 lds r24,EE_Parameter+50 |
684 0630 8093 0000 sts ToNaviCtrl+26,r24 |
685 0634 8091 0000 lds r24,EE_Parameter+51 |
686 0638 8093 0000 sts ToNaviCtrl+27,r24 |
687 063c 8091 0000 lds r24,EE_Parameter+52 |
688 .L58: |
689 0640 8093 0000 sts ToNaviCtrl+28,r24 |
690 .L23: |
691 0644 8091 0000 lds r24,SPI_RxDataValid |
692 0648 8823 tst r24 |
693 064a 09F4 brne .+2 |
694 064c D8C0 rjmp .L47 |
695 064e 8AEF ldi r24,lo8(-6) |
696 0650 8093 0000 sts NaviDataOkay,r24 |
697 0654 4091 0000 lds r20,FromNaviCtrl+1 |
698 0658 5091 0000 lds r21,(FromNaviCtrl+1)+1 |
699 065c CA01 movw r24,r20 |
700 065e 8150 subi r24,lo8(-(511)) |
701 0660 9E4F sbci r25,hi8(-(511)) |
702 0662 8F5F subi r24,lo8(1023) |
703 0664 9340 sbci r25,hi8(1023) |
704 0666 B0F4 brsh .L48 |
705 0668 2091 0000 lds r18,FromNaviCtrl+3 |
706 066c 3091 0000 lds r19,(FromNaviCtrl+3)+1 |
707 0670 C901 movw r24,r18 |
708 0672 8150 subi r24,lo8(-(511)) |
709 0674 9E4F sbci r25,hi8(-(511)) |
710 0676 8F5F subi r24,lo8(1023) |
711 0678 9340 sbci r25,hi8(1023) |
712 067a 60F4 brsh .L48 |
713 067c 8091 0000 lds r24,EE_Parameter+13 |
714 0680 85FF sbrs r24,5 |
715 0682 08C0 rjmp .L48 |
716 0684 5093 0000 sts (GPS_Nick)+1,r21 |
717 0688 4093 0000 sts GPS_Nick,r20 |
718 068c 3093 0000 sts (GPS_Roll)+1,r19 |
719 0690 2093 0000 sts GPS_Roll,r18 |
720 .L48: |
721 0694 8091 0000 lds r24,FromNaviCtrl+7 |
722 0698 9091 0000 lds r25,(FromNaviCtrl+7)+1 |
723 069c 21E0 ldi r18,hi8(361) |
724 069e 8936 cpi r24,lo8(361) |
725 06a0 9207 cpc r25,r18 |
726 06a2 24F4 brge .L49 |
727 06a4 9093 0000 sts (KompassValue)+1,r25 |
728 06a8 8093 0000 sts KompassValue,r24 |
729 .L49: |
730 06ac 8091 0000 lds r24,KompassValue |
731 06b0 9091 0000 lds r25,(KompassValue)+1 |
732 06b4 2091 0000 lds r18,KompassStartwert |
733 06b8 3091 0000 lds r19,(KompassStartwert)+1 |
734 06bc 821B sub r24,r18 |
735 06be 930B sbc r25,r19 |
736 06c0 845E subi r24,lo8(-(540)) |
737 06c2 9D4F sbci r25,hi8(-(540)) |
738 06c4 68E6 ldi r22,lo8(360) |
739 06c6 71E0 ldi r23,hi8(360) |
740 06c8 0E94 0000 call __divmodhi4 |
741 06cc 845B subi r24,lo8(-(-180)) |
742 06ce 9040 sbci r25,hi8(-(-180)) |
743 06d0 9093 0000 sts (KompassRichtung)+1,r25 |
744 06d4 8093 0000 sts KompassRichtung,r24 |
745 06d8 2091 0000 lds r18,FromNaviCtrl+11 |
746 06dc 3091 0000 lds r19,(FromNaviCtrl+11)+1 |
747 06e0 8091 0000 lds r24,beeptime |
748 06e4 9091 0000 lds r25,(beeptime)+1 |
749 06e8 8217 cp r24,r18 |
750 06ea 9307 cpc r25,r19 |
751 06ec 40F4 brsh .L50 |
752 06ee 8091 0000 lds r24,WinkelOut+6 |
753 06f2 8823 tst r24 |
754 06f4 21F4 brne .L50 |
755 06f6 3093 0000 sts (beeptime)+1,r19 |
756 06fa 2093 0000 sts beeptime,r18 |
757 .L50: |
758 06fe 8091 0000 lds r24,FromNaviCtrl |
759 0702 9927 clr r25 |
760 0704 8836 cpi r24,104 |
761 0706 9105 cpc r25,__zero_reg__ |
762 0708 49F1 breq .L53 |
763 070a 8936 cpi r24,105 |
764 070c 9105 cpc r25,__zero_reg__ |
765 070e 24F4 brge .L56 |
766 0710 8736 cpi r24,103 |
767 0712 9105 cpc r25,__zero_reg__ |
768 0714 31F0 breq .L52 |
769 0716 7BC0 rjmp .L20 |
770 .L56: |
771 0718 8936 cpi r24,105 |
772 071a 9105 cpc r25,__zero_reg__ |
773 071c 09F4 brne .+2 |
774 071e 45C0 rjmp .L54 |
775 0720 76C0 rjmp .L20 |
776 .L52: |
777 0722 8091 0000 lds r24,FromNaviCtrl+13 |
778 0726 8093 0000 sts FromNaviCtrl_Value,r24 |
779 072a 8091 0000 lds r24,FromNaviCtrl+14 |
780 072e 8093 0000 sts FromNaviCtrl_Value+2,r24 |
781 0732 8091 0000 lds r24,FromNaviCtrl+15 |
782 0736 8093 0000 sts FromNaviCtrl_Value+1,r24 |
783 073a 8091 0000 lds r24,FromNaviCtrl+16 |
784 073e 8093 0000 sts FromNaviCtrl_Value+3,r24 |
785 0742 8091 0000 lds r24,FromNaviCtrl+17 |
786 0746 8093 0000 sts FromNaviCtrl_Value+4,r24 |
787 074a 8091 0000 lds r24,FromNaviCtrl+18 |
788 074e 8093 0000 sts FromNC_Rotate_C,r24 |
789 0752 8091 0000 lds r24,FromNaviCtrl+19 |
790 0756 8093 0000 sts FromNC_Rotate_S,r24 |
791 075a 59C0 rjmp .L20 |
792 .L53: |
793 075c 8091 0000 lds r24,FromNaviCtrl+13 |
794 0760 8093 0000 sts NC_Version,r24 |
795 0764 8091 0000 lds r24,FromNaviCtrl+14 |
796 0768 8093 0000 sts NC_Version+1,r24 |
797 076c 8091 0000 lds r24,FromNaviCtrl+15 |
798 0770 8093 0000 sts NC_Version+2,r24 |
799 0774 8091 0000 lds r24,FromNaviCtrl+16 |
800 0778 8093 0000 sts NC_Version+3,r24 |
801 077c 8091 0000 lds r24,FromNaviCtrl+17 |
802 0780 8093 0000 sts NC_Version+4,r24 |
803 0784 8091 0000 lds r24,DebugOut |
804 0788 9091 0000 lds r25,FromNaviCtrl+18 |
805 078c 892B or r24,r25 |
806 078e 8093 0000 sts DebugOut,r24 |
807 0792 9091 0000 lds r25,FromNaviCtrl+19 |
808 0796 9093 0000 sts NC_ErrorCode,r25 |
809 079a 8091 0000 lds r24,DebugOut+1 |
810 079e 8370 andi r24,lo8(3) |
811 07a0 9C70 andi r25,lo8(12) |
812 07a2 892B or r24,r25 |
813 07a4 8093 0000 sts DebugOut+1,r24 |
814 07a8 32C0 rjmp .L20 |
815 .L54: |
816 07aa 8091 0000 lds r24,FromNaviCtrl+13 |
817 07ae 8093 0000 sts GPSInfo,r24 |
818 07b2 8091 0000 lds r24,FromNaviCtrl+14 |
819 07b6 8093 0000 sts GPSInfo+1,r24 |
820 07ba 8091 0000 lds r24,FromNaviCtrl+15 |
821 07be 8093 0000 sts GPSInfo+2,r24 |
822 07c2 8091 0000 lds r24,FromNaviCtrl+16 |
823 07c6 8093 0000 sts GPSInfo+3,r24 |
824 07ca 8091 0000 lds r24,FromNaviCtrl+17 |
825 07ce 9091 0000 lds r25,(FromNaviCtrl+17)+1 |
826 07d2 9093 0000 sts (GPSInfo+4)+1,r25 |
827 07d6 8093 0000 sts GPSInfo+4,r24 |
828 07da 8091 0000 lds r24,FromNaviCtrl+19 |
829 07de 9091 0000 lds r25,(FromNaviCtrl+19)+1 |
830 07e2 9093 0000 sts (GPSInfo+6)+1,r25 |
831 07e6 8093 0000 sts GPSInfo+6,r24 |
832 07ea 8091 0000 lds r24,FromNaviCtrl+21 |
833 07ee 9927 clr r25 |
834 07f0 87FD sbrc r24,7 |
835 07f2 9095 com r25 |
836 07f4 9093 0000 sts (PPM_in+50)+1,r25 |
837 07f8 8093 0000 sts PPM_in+50,r24 |
838 07fc 08C0 rjmp .L20 |
839 .L47: |
840 07fe 1092 0000 sts (GPS_Nick)+1,__zero_reg__ |
841 0802 1092 0000 sts GPS_Nick,__zero_reg__ |
842 0806 1092 0000 sts (GPS_Roll)+1,__zero_reg__ |
843 080a 1092 0000 sts GPS_Roll,__zero_reg__ |
844 .L20: |
845 /* epilogue: frame size=0 */ |
846 080e 1F91 pop r17 |
847 0810 0F91 pop r16 |
848 0812 FF90 pop r15 |
849 0814 EF90 pop r14 |
850 0816 0895 ret |
851 /* epilogue end (size=5) */ |
852 /* function UpdateSPI_Buffer size 871 (862) */ |
854 .global SPI_StartTransmitPacket |
856 SPI_StartTransmitPacket: |
857 /* prologue: frame size=0 */ |
858 /* prologue end (size=0) */ |
859 0818 8091 0000 lds r24,SPITransferCompleted |
860 081c 8823 tst r24 |
861 081e 09F4 brne .+2 |
862 0820 3BC0 rjmp .L60 |
863 0822 4598 cbi 40-0x20,5 |
864 0824 80E0 ldi r24,lo8(ToNaviCtrl) |
865 0826 90E0 ldi r25,hi8(ToNaviCtrl) |
866 0828 9093 0000 sts (SPI_TX_Buffer)+1,r25 |
867 082c 8093 0000 sts SPI_TX_Buffer,r24 |
868 0830 9091 0000 lds r25,SPI_CommandCounter |
869 0834 E92F mov r30,r25 |
870 0836 FF27 clr r31 |
871 0838 E050 subi r30,lo8(-(SPI_CommandSequence)) |
872 083a F040 sbci r31,hi8(-(SPI_CommandSequence)) |
873 083c 9F5F subi r25,lo8(-(1)) |
874 083e 9093 0000 sts SPI_CommandCounter,r25 |
875 0842 8081 ld r24,Z |
876 0844 8093 0000 sts ToNaviCtrl+2,r24 |
877 0848 9930 cpi r25,lo8(9) |
878 084a 10F0 brlo .L62 |
879 084c 1092 0000 sts SPI_CommandCounter,__zero_reg__ |
880 .L62: |
881 0850 1092 0000 sts SPITransferCompleted,__zero_reg__ |
882 0854 0E94 0000 call UpdateSPI_Buffer |
883 0858 81E0 ldi r24,lo8(1) |
884 085a 8093 0000 sts SPI_BufferIndex,r24 |
885 /* #APP */ |
886 085e 0000 nop |
887 0860 0000 nop |
888 0862 0000 nop |
889 0864 0000 nop |
890 0866 0000 nop |
891 0868 0000 nop |
892 086a 0000 nop |
893 086c 0000 nop |
894 086e 0000 nop |
895 0870 0000 nop |
896 0872 0000 nop |
897 0874 0000 nop |
898 0876 0000 nop |
899 0878 0000 nop |
900 087a 0000 nop |
901 087c 0000 nop |
902 087e 0000 nop |
903 0880 0000 nop |
904 0882 0000 nop |
905 0884 0000 nop |
906 0886 0000 nop |
907 0888 0000 nop |
908 088a 0000 nop |
909 088c 0000 nop |
910 /* #NOAPP */ |
911 088e 8091 0000 lds r24,ToNaviCtrl |
912 0892 8093 0000 sts ToNaviCtrl+31,r24 |
913 0896 8EBD out 78-0x20,r24 |
914 .L60: |
915 0898 0895 ret |
916 /* epilogue: frame size=0 */ |
917 /* epilogue: noreturn */ |
918 /* epilogue end (size=0) */ |
919 /* function SPI_StartTransmitPacket size 89 (89) */ |
921 .comm GPSInfo,8,1 |
922 .comm NC_Version,5,1 |
923 .comm FromNaviCtrl_Value,5,1 |
924 .comm ToNaviCtrl,32,1 |
925 .comm FromNaviCtrl,26,1 |
926 .comm SPI_BufferIndex,1,1 |
927 .comm SPI_RxBufferIndex,1,1 |
928 .comm SPI_Buffer,26,1 |
929 .comm SPI_TX_Buffer,2,1 |
930 .comm SPITransferCompleted,1,1 |
931 .comm SPI_ChkSum,1,1 |
932 .comm SPI_RxDataValid,1,1 |
933 /* File "spi.c": code 1157 = 0x0485 (1147), prologues 4, epilogues 6 */ |
DEFINED SYMBOLS |
*ABS*:00000000 spi.c |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:15 .bss:00000000 NC_ErrorCode |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:21 .bss:00000001 SPI_CommandCounter |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:27 .data:00000000 SPI_CommandSequence |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:40 .data:00000009 NaviDataOkay |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:47 .bss:00000002 FromNC_Rotate_S |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:53 .data:0000000a FromNC_Rotate_C |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:58 .text:00000000 SPI_MasterInit |
*COM*:00000001 SPITransferCompleted |
*COM*:00000020 ToNaviCtrl |
*COM*:00000005 FromNaviCtrl_Value |
*COM*:00000001 SPI_RxDataValid |
.bss:00000003 SPI_RXState.0 |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:88 .bss:00000004 rxchksum.1 |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:92 .text:00000042 SPI_TransmitByte |
*COM*:00000001 SPI_RxBufferIndex |
*COM*:0000001a SPI_Buffer |
*COM*:0000001a FromNaviCtrl |
*COM*:00000001 SPI_BufferIndex |
*COM*:00000002 SPI_TX_Buffer |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:233 .text:00000158 UpdateSPI_Buffer |
*COM*:00000005 NC_Version |
*COM*:00000008 GPSInfo |
C:\Users\Thomas\AppData\Local\Temp/cceKbaaa.s:856 .text:00000818 SPI_StartTransmitPacket |
*COM*:00000001 SPI_ChkSum |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
SendSPI |
EE_Parameter |
IntegralNick |
__divmodsi4 |
IntegralRoll |
ErsatzKompass |
GIER_GRAD_FAKTOR |
AdNeutralGier |
AdWertGier |
NaviCntAcc |
NaviAccNick |
__divmodhi4 |
NaviAccRoll |
Parameter_UserParam1 |
Parameter_UserParam2 |
Parameter_UserParam3 |
Parameter_UserParam4 |
Parameter_UserParam5 |
Parameter_UserParam6 |
Parameter_UserParam7 |
Parameter_UserParam8 |
FC_StatusFlags |
GetActiveParamSet |
ControlHeading |
Capacity |
UBat |
BattLowVoltageWarning |
PPM_in |
Poti |
WinkelOut |
HoehenWert |
SollHoehe |
SenderOkay |
DebugOut |
PlatinenVersion |
VersionInfo |
Parameter_ServoNickControl |
Parameter_ServoRollControl |
GPS_Nick |
GPS_Roll |
KompassValue |
KompassStartwert |
KompassRichtung |
beeptime |
/branches/metro/v0.82a metro_Akku+/timer0.c |
---|
0,0 → 1,402 |
#include "main.h" |
#define MULTIPLYER 4 |
volatile unsigned int CountMilliseconds = 0; |
volatile static unsigned int tim_main; |
volatile unsigned char UpdateMotor = 0; |
volatile unsigned int cntKompass = 0; |
volatile unsigned int beeptime = 0; |
volatile unsigned char SendSPI = 0, ServoActive = 0, CalculateServoSignals = 1; |
uint16_t RemainingPulse = 0; |
volatile int16_t ServoNickOffset = (255 / 2) * MULTIPLYER * 16; // initial value near center positon |
volatile int16_t ServoRollOffset = (255 / 2) * MULTIPLYER * 16; // initial value near center positon |
unsigned int BeepMuster = 0xffff; |
volatile int16_t ServoNickValue = 0; |
volatile int16_t ServoRollValue = 0; |
enum { |
STOP = 0, |
CK = 1, |
CK8 = 2, |
CK64 = 3, |
CK256 = 4, |
CK1024 = 5, |
T0_FALLING_EDGE = 6, |
T0_RISING_EDGE = 7 |
}; |
ISR(TIMER0_OVF_vect) // 9,7kHz |
{ |
static unsigned char cnt_1ms = 1,cnt = 0, compass_active = 0; |
unsigned char pieper_ein = 0; |
if(SendSPI) SendSPI--; |
if(SpektrumTimer) SpektrumTimer--; |
if(!cnt--) |
{ |
cnt = 9; |
CountMilliseconds++; |
cnt_1ms++; |
cnt_1ms %= 2; |
if(!cnt_1ms) UpdateMotor = 1; |
if(!(PINC & 0x10)) compass_active = 1; |
if(beeptime) |
{ |
if(beeptime > 10) beeptime -= 10; else beeptime = 0; |
if(beeptime & BeepMuster) |
{ |
pieper_ein = 1; |
} |
else pieper_ein = 0; |
} |
else |
{ |
pieper_ein = 0; |
BeepMuster = 0xffff; |
} |
if(pieper_ein) |
{ |
if(PlatinenVersion == 10) PORTD |= (1<<2); // Speaker an PORTD.2 |
else PORTC |= (1<<7); // Speaker an PORTC.7 |
} |
else |
{ |
if(PlatinenVersion == 10) PORTD &= ~(1<<2); |
else PORTC &= ~(1<<7); |
} |
} |
if(compass_active && !NaviDataOkay && EE_Parameter.GlobalConfig & CFG_KOMPASS_AKTIV) |
{ |
if(PINC & 0x10) |
{ |
if(++cntKompass > 1000) compass_active = 0; |
} |
else |
{ |
if((cntKompass) && (cntKompass < 362)) |
{ |
cntKompass += cntKompass / 41; |
if(cntKompass > 10) KompassValue = cntKompass - 10; else KompassValue = 0; |
KompassRichtung = ((540 + KompassValue - KompassStartwert) % 360) - 180; |
} |
cntKompass = 0; |
} |
} |
} |
// ----------------------------------------------------------------------- |
unsigned int SetDelay (unsigned int t) |
{ |
// TIMSK0 &= ~_BV(TOIE0); |
return(CountMilliseconds + t + 1); |
// TIMSK0 |= _BV(TOIE0); |
} |
// ----------------------------------------------------------------------- |
char CheckDelay(unsigned int t) |
{ |
// TIMSK0 &= ~_BV(TOIE0); |
return(((t - CountMilliseconds) & 0x8000) >> 9); |
// TIMSK0 |= _BV(TOIE0); |
} |
// ----------------------------------------------------------------------- |
void Delay_ms(unsigned int w) |
{ |
unsigned int akt; |
akt = SetDelay(w); |
while (!CheckDelay(akt)); |
} |
void Delay_ms_Mess(unsigned int w) |
{ |
unsigned int akt; |
akt = SetDelay(w); |
while (!CheckDelay(akt)) if(AdReady) {AdReady = 0; ANALOG_ON;} |
} |
/*****************************************************/ |
/* Initialize Timer 2 */ |
/*****************************************************/ |
// The timer 2 is used to generate the PWM at PD7 (J7) |
// to control a camera servo for nick compensation. |
void TIMER2_Init(void) |
{ |
uint8_t sreg = SREG; |
// disable all interrupts before reconfiguration |
cli(); |
PORTD &= ~(1<<PORTD7); // set PD7 to low |
DDRC |= (1<<DDC6); // set PC6 as output (Reset for HEF4017) |
HEF4017R_ON; |
// Timer/Counter 2 Control Register A |
// Timer Mode is FastPWM with timer reload at OCR2A (Bits: WGM22 = 1, WGM21 = 1, WGM20 = 1) |
// PD7: Normal port operation, OC2A disconnected, (Bits: COM2A1 = 0, COM2A0 = 0) |
// PD6: Normal port operation, OC2B disconnected, (Bits: COM2B1 = 0, COM2B0 = 0) |
TCCR2A &= ~((1<<COM2A1)|(1<<COM2A0)|(1<<COM2B1)|(1<<COM2B0)); |
TCCR2A |= (1<<WGM21)|(1<<WGM20); |
// Timer/Counter 2 Control Register B |
// Set clock divider for timer 2 to SYSKLOCK/32 = 20MHz / 32 = 625 kHz |
// The timer increments from 0x00 to 0xFF with an update rate of 625 kHz or 1.6 us |
// hence the timer overflow interrupt frequency is 625 kHz / 256 = 2.44 kHz or 0.4096 ms |
// divider 32 (Bits: CS022 = 0, CS21 = 1, CS20 = 1) |
TCCR2B &= ~((1<<FOC2A)|(1<<FOC2B)|(1<<CS22)); |
TCCR2B |= (1<<CS21)|(1<<CS20)|(1<<WGM22); |
// Initialize the Timer/Counter 2 Register |
TCNT2 = 0; |
// Initialize the Output Compare Register A used for PWM generation on port PD7. |
OCR2A = 255; |
TCCR2A |= (1<<COM2A1); // set or clear at compare match depends on value of COM2A0 |
// Timer/Counter 2 Interrupt Mask Register |
// Enable timer output compare match A Interrupt only |
TIMSK2 &= ~((1<<OCIE2B)|(1<<TOIE2)); |
TIMSK2 |= (1<<OCIE2A); |
SREG = sreg; |
} |
//---------------------------- |
void Timer_Init(void) |
{ |
tim_main = SetDelay(10); |
TCCR0B = CK8; |
TCCR0A = (1<<COM0A1)|(1<<COM0B1)|3;//fast PWM |
OCR0A = 0; |
OCR0B = 180; |
TCNT0 = (unsigned char)-TIMER_RELOAD_VALUE; // reload |
//OCR1 = 0x00; |
TIMSK0 |= _BV(TOIE0); |
} |
/*****************************************************/ |
/* Control Servo Position */ |
/*****************************************************/ |
void CalculateServo(void) |
{ |
signed char cosinus, sinus; |
signed long nick, roll; |
cosinus = sintab[EE_Parameter.CamOrientation + 6]; |
sinus = sintab[EE_Parameter.CamOrientation]; |
if(CalculateServoSignals == 1) |
{ |
nick = (cosinus * IntegralNick) / 128L - (sinus * IntegralRoll) / 128L; |
nick = ((long)EE_Parameter.ServoNickComp * nick) / 512L; |
ServoNickOffset += ((int16_t)Parameter_ServoNickControl * (MULTIPLYER*16) - ServoNickOffset) / EE_Parameter.ServoManualControlSpeed; |
ServoNickValue = ServoNickOffset / 16; // offset (Range from 0 to 255 * 3 = 765) |
if(EE_Parameter.ServoCompInvert & 0x01) |
{ // inverting movement of servo |
ServoNickValue += nick;//(int16_t)( ( (int32_t)EE_Parameter.ServoNickComp * nick) / (256L) ); |
} |
else |
{ // non inverting movement of servo |
ServoNickValue -= nick; |
} |
// limit servo value to its parameter range definition |
if(ServoNickValue < ((int16_t)EE_Parameter.ServoNickMin * MULTIPLYER) ) |
{ |
ServoNickValue = (int16_t)EE_Parameter.ServoNickMin * MULTIPLYER; |
} |
else |
if(ServoNickValue > ((int16_t)EE_Parameter.ServoNickMax * MULTIPLYER) ) |
{ |
ServoNickValue = (int16_t)EE_Parameter.ServoNickMax * MULTIPLYER; |
} |
if(PlatinenVersion < 20) CalculateServoSignals = 0; else CalculateServoSignals++; |
} |
else |
{ |
roll = (cosinus * IntegralRoll) / 128L + (sinus * IntegralNick) / 128L; |
roll = ((long)EE_Parameter.ServoRollComp * roll) / 512L; |
ServoRollOffset += ((int16_t)Parameter_ServoRollControl * (MULTIPLYER*16) - ServoRollOffset) / EE_Parameter.ServoManualControlSpeed; |
ServoRollValue = ServoRollOffset/16; // offset (Range from 0 to 255 * 3 = 765) |
if(EE_Parameter.ServoCompInvert & 0x02) |
{ // inverting movement of servo |
ServoRollValue += roll; |
} |
else |
{ // non inverting movement of servo |
ServoRollValue -= roll; |
} |
// limit servo value to its parameter range definition |
if(ServoRollValue < ((int16_t)EE_Parameter.ServoRollMin * MULTIPLYER) ) |
{ |
ServoRollValue = (int16_t)EE_Parameter.ServoRollMin * MULTIPLYER; |
} |
else |
if(ServoRollValue > ((int16_t)EE_Parameter.ServoRollMax * MULTIPLYER) ) |
{ |
ServoRollValue = (int16_t)EE_Parameter.ServoRollMax * MULTIPLYER; |
} |
CalculateServoSignals = 0; |
} |
} |
ISR(TIMER2_COMPA_vect) |
{ |
// frame len 22.5 ms = 14063 * 1.6 us |
// stop pulse: 0.3 ms = 188 * 1.6 us |
// min servo pulse: 0.6 ms = 375 * 1.6 us |
// max servo pulse: 2.4 ms = 1500 * 1.6 us |
// resolution: 1500 - 375 = 1125 steps |
#define IRS_RUNTIME 127 |
#define PPM_STOPPULSE 188 |
#define PPM_FRAMELEN (1757 * EE_Parameter.ServoNickRefresh) |
#define MINSERVOPULSE 375 |
#define MAXSERVOPULSE 1500 |
#define SERVORANGE (MAXSERVOPULSE - MINSERVOPULSE) |
static uint8_t PulseOutput = 0; |
static uint16_t ServoFrameTime = 0; |
static uint8_t ServoIndex = 0; |
if(PlatinenVersion < 20) |
{ |
//--------------------------- |
// Nick servo state machine |
//--------------------------- |
if(!PulseOutput) // pulse output complete |
{ |
if(TCCR2A & (1<<COM2A0)) // we had a low pulse |
{ |
TCCR2A &= ~(1<<COM2A0);// make a high pulse |
RemainingPulse = MINSERVOPULSE + SERVORANGE/2; // center position ~ 1.5ms |
RemainingPulse += ServoNickValue - (256 / 2) * MULTIPLYER; // shift ServoNickValue to center position |
// range servo pulse width |
if(RemainingPulse > MAXSERVOPULSE ) RemainingPulse = MAXSERVOPULSE; // upper servo pulse limit |
else if(RemainingPulse < MINSERVOPULSE ) RemainingPulse = MINSERVOPULSE; // lower servo pulse limit |
// accumulate time for correct update rate |
ServoFrameTime = RemainingPulse; |
} |
else // we had a high pulse |
{ |
TCCR2A |= (1<<COM2A0); // make a low pulse |
RemainingPulse = PPM_FRAMELEN - ServoFrameTime; |
CalculateServoSignals = 1; |
} |
// set pulse output active |
PulseOutput = 1; |
} |
} // EOF Nick servo state machine |
else |
{ |
//----------------------------------------------------- |
// PPM state machine, onboard demultiplexed by HEF4017 |
//----------------------------------------------------- |
if(!PulseOutput) // pulse output complete |
{ |
if(TCCR2A & (1<<COM2A0)) // we had a low pulse |
{ |
TCCR2A &= ~(1<<COM2A0);// make a high pulse |
if(ServoIndex == 0) // if we are at the sync gap |
{ |
RemainingPulse = PPM_FRAMELEN - ServoFrameTime; // generate sync gap by filling time to full frame time |
ServoFrameTime = 0; // reset servo frame time |
HEF4017R_ON; // enable HEF4017 reset |
} |
else // servo channels |
{ |
RemainingPulse = MINSERVOPULSE + SERVORANGE/2; // center position ~ 1.5ms |
switch(ServoIndex) // map servo channels |
{ |
case 1: // Nick Compensation Servo |
RemainingPulse += ServoNickValue - (256 / 2) * MULTIPLYER; // shift ServoNickValue to center position |
break; |
case 2: // Roll Compensation Servo |
RemainingPulse += ServoRollValue - (256 / 2) * MULTIPLYER; // shift ServoNickValue to center position |
break; |
case 3: |
RemainingPulse += ((int16_t)Parameter_Servo3 * MULTIPLYER) - (256 / 2) * MULTIPLYER; |
break; |
case 4: |
RemainingPulse += ((int16_t)Parameter_Servo4 * MULTIPLYER) - (256 / 2) * MULTIPLYER; |
break; |
case 5: |
RemainingPulse += ((int16_t)Parameter_Servo5 * MULTIPLYER) - (256 / 2) * MULTIPLYER; |
break; |
default: // other servo channels |
RemainingPulse += 2 * PPM_in[ServoIndex]; // add channel value, factor of 2 because timer 1 increments 3.2µs |
break; |
} |
// range servo pulse width |
if(RemainingPulse > MAXSERVOPULSE ) RemainingPulse = MAXSERVOPULSE; // upper servo pulse limit |
else if(RemainingPulse < MINSERVOPULSE ) RemainingPulse = MINSERVOPULSE; // lower servo pulse limit |
// substract stop pulse width |
RemainingPulse -= PPM_STOPPULSE; |
// accumulate time for correct sync gap |
ServoFrameTime += RemainingPulse; |
} |
} |
else // we had a high pulse |
{ |
TCCR2A |= (1<<COM2A0); // make a low pulse |
// set pulsewidth to stop pulse width |
RemainingPulse = PPM_STOPPULSE; |
// accumulate time for correct sync gap |
ServoFrameTime += RemainingPulse; |
if((ServoActive && SenderOkay > 50) || ServoActive == 2) HEF4017R_OFF; // disable HEF4017 reset |
else HEF4017R_ON; |
ServoIndex++; // change to next servo channel |
if(ServoIndex > EE_Parameter.ServoNickRefresh) |
{ |
CalculateServoSignals = 1; |
ServoIndex = 0; // reset to the sync gap |
} |
} |
// set pulse output active |
PulseOutput = 1; |
} |
} // EOF PPM state machine |
// General pulse output generator |
if(RemainingPulse > (255 + IRS_RUNTIME)) |
{ |
OCR2A = 255; |
RemainingPulse -= 255; |
} |
else |
{ |
if(RemainingPulse > 255) // this is the 2nd last part |
{ |
if((RemainingPulse - 255) < IRS_RUNTIME) |
{ |
OCR2A = 255 - IRS_RUNTIME; |
RemainingPulse -= 255 - IRS_RUNTIME; |
} |
else // last part > ISR_RUNTIME |
{ |
OCR2A = 255; |
RemainingPulse -= 255; |
} |
} |
else // this is the last part |
{ |
OCR2A = RemainingPulse; |
RemainingPulse = 0; |
PulseOutput = 0; // trigger to stop pulse |
} |
} // EOF general pulse output generator |
} |
/branches/metro/v0.82a metro_Akku+/timer0.d |
---|
0,0 → 1,3 |
timer0.o timer0.d : timer0.c main.h old_macros.h printf_P.h timer0.h uart.h \ |
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h \ |
capacity.h eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/timer0.h |
---|
0,0 → 1,22 |
#define TIMER_TEILER CK8 |
#define TIMER_RELOAD_VALUE 250 |
#define HEF4017R_ON PORTC |= (1<<PORTC6) |
#define HEF4017R_OFF PORTC &= ~(1<<PORTC6) |
void Timer_Init(void); |
void TIMER2_Init(void); |
void Delay_ms(unsigned int); |
void Delay_ms_Mess(unsigned int); |
unsigned int SetDelay (unsigned int t); |
char CheckDelay (unsigned int t); |
void CalculateServo(void); |
extern volatile unsigned int CountMilliseconds; |
extern volatile unsigned char UpdateMotor; |
extern volatile unsigned int beeptime; |
extern volatile unsigned int cntKompass; |
extern unsigned int BeepMuster; |
extern volatile unsigned char SendSPI, ServoActive, CalculateServoSignals; |
extern volatile int16_t ServoNickValue; |
extern volatile int16_t ServoRollValue; |
/branches/metro/v0.82a metro_Akku+/timer0.lst |
---|
0,0 → 1,1182 |
1 .file "timer0.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global ServoRollValue |
11 .global ServoRollValue |
12 .section .bss |
15 ServoRollValue: |
16 0000 0000 .skip 2,0 |
17 .global ServoNickValue |
18 .global ServoNickValue |
21 ServoNickValue: |
22 0002 0000 .skip 2,0 |
23 .global BeepMuster |
24 .data |
27 BeepMuster: |
28 0000 FFFF .word -1 |
29 .global ServoRollOffset |
32 ServoRollOffset: |
33 0002 C01F .word 8128 |
34 .global ServoNickOffset |
37 ServoNickOffset: |
38 0004 C01F .word 8128 |
39 .global RemainingPulse |
40 .global RemainingPulse |
41 .section .bss |
44 RemainingPulse: |
45 0004 0000 .skip 2,0 |
46 .global CalculateServoSignals |
47 .data |
50 CalculateServoSignals: |
51 0006 01 .byte 1 |
52 .global ServoActive |
53 .global ServoActive |
54 .section .bss |
57 ServoActive: |
58 0006 00 .skip 1,0 |
59 .global SendSPI |
60 .global SendSPI |
63 SendSPI: |
64 0007 00 .skip 1,0 |
65 .global beeptime |
66 .global beeptime |
69 beeptime: |
70 0008 0000 .skip 2,0 |
71 .global cntKompass |
72 .global cntKompass |
75 cntKompass: |
76 000a 0000 .skip 2,0 |
77 .global UpdateMotor |
78 .global UpdateMotor |
81 UpdateMotor: |
82 000c 00 .skip 1,0 |
83 .global CountMilliseconds |
84 .global CountMilliseconds |
87 CountMilliseconds: |
88 000d 0000 .skip 2,0 |
89 .data |
92 cnt_1ms.3: |
93 0007 01 .byte 1 |
94 .lcomm cnt.4,1 |
95 .lcomm compass_active.5,1 |
96 .text |
97 .global __vector_18 |
99 __vector_18: |
100 /* prologue: frame size=0 */ |
101 0000 1F92 push __zero_reg__ |
102 0002 0F92 push __tmp_reg__ |
103 0004 0FB6 in __tmp_reg__,__SREG__ |
104 0006 0F92 push __tmp_reg__ |
105 0008 1124 clr __zero_reg__ |
106 000a 2F93 push r18 |
107 000c 3F93 push r19 |
108 000e 5F93 push r21 |
109 0010 6F93 push r22 |
110 0012 7F93 push r23 |
111 0014 8F93 push r24 |
112 0016 9F93 push r25 |
113 0018 AF93 push r26 |
114 001a BF93 push r27 |
115 001c EF93 push r30 |
116 001e FF93 push r31 |
117 /* prologue end (size=16) */ |
118 0020 20E0 ldi r18,lo8(0) |
119 0022 8091 0000 lds r24,SendSPI |
120 0026 8823 tst r24 |
121 0028 29F0 breq .L2 |
122 002a 8091 0000 lds r24,SendSPI |
123 002e 8150 subi r24,lo8(-(-1)) |
124 0030 8093 0000 sts SendSPI,r24 |
125 .L2: |
126 0034 8091 0000 lds r24,SpektrumTimer |
127 0038 8823 tst r24 |
128 003a 19F0 breq .L3 |
129 003c 8150 subi r24,lo8(-(-1)) |
130 003e 8093 0000 sts SpektrumTimer,r24 |
131 .L3: |
132 0042 8091 0000 lds r24,cnt.4 |
133 0046 8150 subi r24,lo8(-(-1)) |
134 0048 8093 0000 sts cnt.4,r24 |
135 004c 8F3F cpi r24,lo8(-1) |
136 004e 09F0 breq .+2 |
137 0050 5BC0 rjmp .L4 |
138 0052 89E0 ldi r24,lo8(9) |
139 0054 8093 0000 sts cnt.4,r24 |
140 0058 8091 0000 lds r24,CountMilliseconds |
141 005c 9091 0000 lds r25,(CountMilliseconds)+1 |
142 0060 0196 adiw r24,1 |
143 0062 9093 0000 sts (CountMilliseconds)+1,r25 |
144 0066 8093 0000 sts CountMilliseconds,r24 |
145 006a 8091 0000 lds r24,cnt_1ms.3 |
146 006e 8F5F subi r24,lo8(-(1)) |
147 0070 8170 andi r24,lo8(1) |
148 0072 8093 0000 sts cnt_1ms.3,r24 |
149 0076 8823 tst r24 |
150 0078 19F4 brne .L5 |
151 007a 81E0 ldi r24,lo8(1) |
152 007c 8093 0000 sts UpdateMotor,r24 |
153 .L5: |
154 0080 3499 sbic 38-0x20,4 |
155 0082 03C0 rjmp .L6 |
156 0084 81E0 ldi r24,lo8(1) |
157 0086 8093 0000 sts compass_active.5,r24 |
158 .L6: |
159 008a 8091 0000 lds r24,beeptime |
160 008e 9091 0000 lds r25,(beeptime)+1 |
161 0092 892B or r24,r25 |
162 0094 21F1 breq .L7 |
163 0096 8091 0000 lds r24,beeptime |
164 009a 9091 0000 lds r25,(beeptime)+1 |
165 009e 0B97 sbiw r24,11 |
166 00a0 50F0 brlo .L8 |
167 00a2 8091 0000 lds r24,beeptime |
168 00a6 9091 0000 lds r25,(beeptime)+1 |
169 00aa 0A97 sbiw r24,10 |
170 00ac 9093 0000 sts (beeptime)+1,r25 |
171 00b0 8093 0000 sts beeptime,r24 |
172 00b4 04C0 rjmp .L9 |
173 .L8: |
174 00b6 1092 0000 sts (beeptime)+1,__zero_reg__ |
175 00ba 1092 0000 sts beeptime,__zero_reg__ |
176 .L9: |
177 00be 8091 0000 lds r24,beeptime |
178 00c2 9091 0000 lds r25,(beeptime)+1 |
179 00c6 2091 0000 lds r18,BeepMuster |
180 00ca 3091 0000 lds r19,(BeepMuster)+1 |
181 00ce 8223 and r24,r18 |
182 00d0 9323 and r25,r19 |
183 00d2 892B or r24,r25 |
184 00d4 11F0 breq .L10 |
185 00d6 21E0 ldi r18,lo8(1) |
186 00d8 08C0 rjmp .L12 |
187 .L10: |
188 00da 20E0 ldi r18,lo8(0) |
189 00dc 06C0 rjmp .L12 |
190 .L7: |
191 00de 8FEF ldi r24,lo8(-1) |
192 00e0 9FEF ldi r25,hi8(-1) |
193 00e2 9093 0000 sts (BeepMuster)+1,r25 |
194 00e6 8093 0000 sts BeepMuster,r24 |
195 .L12: |
196 00ea 8091 0000 lds r24,PlatinenVersion |
197 00ee 2223 tst r18 |
198 00f0 31F0 breq .L13 |
199 00f2 8A30 cpi r24,lo8(10) |
200 00f4 11F4 brne .L14 |
201 00f6 5A9A sbi 43-0x20,2 |
202 00f8 07C0 rjmp .L4 |
203 .L14: |
204 00fa 479A sbi 40-0x20,7 |
205 00fc 05C0 rjmp .L4 |
206 .L13: |
207 00fe 8A30 cpi r24,lo8(10) |
208 0100 11F4 brne .L17 |
209 0102 5A98 cbi 43-0x20,2 |
210 0104 01C0 rjmp .L4 |
211 .L17: |
212 0106 4798 cbi 40-0x20,7 |
213 .L4: |
214 0108 8091 0000 lds r24,compass_active.5 |
215 010c 8823 tst r24 |
216 010e 09F4 brne .+2 |
217 0110 72C0 rjmp .L1 |
218 0112 2091 0000 lds r18,NaviDataOkay |
219 0116 2223 tst r18 |
220 0118 09F0 breq .+2 |
221 011a 6DC0 rjmp .L1 |
222 011c 8091 0000 lds r24,EE_Parameter+13 |
223 0120 83FF sbrs r24,3 |
224 0122 69C0 rjmp .L1 |
225 0124 86B1 in r24,38-0x20 |
226 0126 9927 clr r25 |
227 0128 FC01 movw r30,r24 |
228 012a E071 andi r30,lo8(16) |
229 012c F070 andi r31,hi8(16) |
230 012e 84FF sbrs r24,4 |
231 0130 14C0 rjmp .L20 |
232 0132 8091 0000 lds r24,cntKompass |
233 0136 9091 0000 lds r25,(cntKompass)+1 |
234 013a 0196 adiw r24,1 |
235 013c 9093 0000 sts (cntKompass)+1,r25 |
236 0140 8093 0000 sts cntKompass,r24 |
237 0144 8091 0000 lds r24,cntKompass |
238 0148 9091 0000 lds r25,(cntKompass)+1 |
239 014c 895E subi r24,lo8(1001) |
240 014e 9340 sbci r25,hi8(1001) |
241 0150 08F4 brsh .+2 |
242 0152 51C0 rjmp .L1 |
243 0154 2093 0000 sts compass_active.5,r18 |
244 0158 4EC0 rjmp .L1 |
245 .L20: |
246 015a 8091 0000 lds r24,cntKompass |
247 015e 9091 0000 lds r25,(cntKompass)+1 |
248 0162 892B or r24,r25 |
249 0164 09F4 brne .+2 |
250 0166 43C0 rjmp .L23 |
251 0168 8091 0000 lds r24,cntKompass |
252 016c 9091 0000 lds r25,(cntKompass)+1 |
253 0170 8A56 subi r24,lo8(362) |
254 0172 9140 sbci r25,hi8(362) |
255 0174 E0F5 brsh .L23 |
256 0176 8091 0000 lds r24,cntKompass |
257 017a 9091 0000 lds r25,(cntKompass)+1 |
258 017e 69E2 ldi r22,lo8(41) |
259 0180 70E0 ldi r23,hi8(41) |
260 0182 0E94 0000 call __udivmodhi4 |
261 0186 8091 0000 lds r24,cntKompass |
262 018a 9091 0000 lds r25,(cntKompass)+1 |
263 018e 860F add r24,r22 |
264 0190 971F adc r25,r23 |
265 0192 9093 0000 sts (cntKompass)+1,r25 |
266 0196 8093 0000 sts cntKompass,r24 |
267 019a 8091 0000 lds r24,cntKompass |
268 019e 9091 0000 lds r25,(cntKompass)+1 |
269 01a2 0B97 sbiw r24,11 |
270 01a4 50F0 brlo .L24 |
271 01a6 8091 0000 lds r24,cntKompass |
272 01aa 9091 0000 lds r25,(cntKompass)+1 |
273 01ae 0A97 sbiw r24,10 |
274 01b0 9093 0000 sts (KompassValue)+1,r25 |
275 01b4 8093 0000 sts KompassValue,r24 |
276 01b8 04C0 rjmp .L25 |
277 .L24: |
278 01ba F093 0000 sts (KompassValue)+1,r31 |
279 01be E093 0000 sts KompassValue,r30 |
280 .L25: |
281 01c2 8091 0000 lds r24,KompassValue |
282 01c6 9091 0000 lds r25,(KompassValue)+1 |
283 01ca 2091 0000 lds r18,KompassStartwert |
284 01ce 3091 0000 lds r19,(KompassStartwert)+1 |
285 01d2 821B sub r24,r18 |
286 01d4 930B sbc r25,r19 |
287 01d6 845E subi r24,lo8(-(540)) |
288 01d8 9D4F sbci r25,hi8(-(540)) |
289 01da 68E6 ldi r22,lo8(360) |
290 01dc 71E0 ldi r23,hi8(360) |
291 01de 0E94 0000 call __divmodhi4 |
292 01e2 845B subi r24,lo8(-(-180)) |
293 01e4 9040 sbci r25,hi8(-(-180)) |
294 01e6 9093 0000 sts (KompassRichtung)+1,r25 |
295 01ea 8093 0000 sts KompassRichtung,r24 |
296 .L23: |
297 01ee 1092 0000 sts (cntKompass)+1,__zero_reg__ |
298 01f2 1092 0000 sts cntKompass,__zero_reg__ |
299 .L1: |
300 /* epilogue: frame size=0 */ |
301 01f6 FF91 pop r31 |
302 01f8 EF91 pop r30 |
303 01fa BF91 pop r27 |
304 01fc AF91 pop r26 |
305 01fe 9F91 pop r25 |
306 0200 8F91 pop r24 |
307 0202 7F91 pop r23 |
308 0204 6F91 pop r22 |
309 0206 5F91 pop r21 |
310 0208 3F91 pop r19 |
311 020a 2F91 pop r18 |
312 020c 0F90 pop __tmp_reg__ |
313 020e 0FBE out __SREG__,__tmp_reg__ |
314 0210 0F90 pop __tmp_reg__ |
315 0212 1F90 pop __zero_reg__ |
316 0214 1895 reti |
317 /* epilogue end (size=16) */ |
318 /* function __vector_18 size 271 (239) */ |
320 .global SetDelay |
322 SetDelay: |
323 /* prologue: frame size=0 */ |
324 /* prologue end (size=0) */ |
325 0216 2091 0000 lds r18,CountMilliseconds |
326 021a 3091 0000 lds r19,(CountMilliseconds)+1 |
327 021e 280F add r18,r24 |
328 0220 391F adc r19,r25 |
329 0222 C901 movw r24,r18 |
330 0224 0196 adiw r24,1 |
331 /* epilogue: frame size=0 */ |
332 0226 0895 ret |
333 /* epilogue end (size=1) */ |
334 /* function SetDelay size 9 (8) */ |
336 .global CheckDelay |
338 CheckDelay: |
339 /* prologue: frame size=0 */ |
340 /* prologue end (size=0) */ |
341 0228 2091 0000 lds r18,CountMilliseconds |
342 022c 3091 0000 lds r19,(CountMilliseconds)+1 |
343 0230 821B sub r24,r18 |
344 0232 930B sbc r25,r19 |
345 0234 892F mov r24,r25 |
346 0236 9927 clr r25 |
347 0238 8695 lsr r24 |
348 023a 8074 andi r24,lo8(64) |
349 023c 9070 andi r25,hi8(64) |
350 /* epilogue: frame size=0 */ |
351 023e 0895 ret |
352 /* epilogue end (size=1) */ |
353 /* function CheckDelay size 12 (11) */ |
355 .global Delay_ms |
357 Delay_ms: |
358 /* prologue: frame size=0 */ |
359 0240 CF93 push r28 |
360 0242 DF93 push r29 |
361 /* prologue end (size=2) */ |
362 0244 0E94 0000 call SetDelay |
363 0248 EC01 movw r28,r24 |
364 .L29: |
365 024a CE01 movw r24,r28 |
366 024c 0E94 0000 call CheckDelay |
367 0250 8823 tst r24 |
368 0252 D9F3 breq .L29 |
369 /* epilogue: frame size=0 */ |
370 0254 DF91 pop r29 |
371 0256 CF91 pop r28 |
372 0258 0895 ret |
373 /* epilogue end (size=3) */ |
374 /* function Delay_ms size 13 (8) */ |
376 .global Delay_ms_Mess |
378 Delay_ms_Mess: |
379 /* prologue: frame size=0 */ |
380 025a CF93 push r28 |
381 025c DF93 push r29 |
382 /* prologue end (size=2) */ |
383 025e 0E94 0000 call SetDelay |
384 0262 EC01 movw r28,r24 |
385 0264 09C0 rjmp .L40 |
386 .L36: |
387 0266 8091 0000 lds r24,AdReady |
388 026a 8823 tst r24 |
389 026c 29F0 breq .L40 |
390 026e 9093 0000 sts AdReady,r25 |
391 0272 8FEC ldi r24,lo8(-49) |
392 0274 8093 7A00 sts 122,r24 |
393 .L40: |
394 0278 CE01 movw r24,r28 |
395 027a 0E94 0000 call CheckDelay |
396 027e 982F mov r25,r24 |
397 0280 8823 tst r24 |
398 0282 89F3 breq .L36 |
399 /* epilogue: frame size=0 */ |
400 0284 DF91 pop r29 |
401 0286 CF91 pop r28 |
402 0288 0895 ret |
403 /* epilogue end (size=3) */ |
404 /* function Delay_ms_Mess size 24 (19) */ |
406 .global TIMER2_Init |
408 TIMER2_Init: |
409 /* prologue: frame size=0 */ |
410 /* prologue end (size=0) */ |
411 028a 9FB7 in r25,95-0x20 |
412 /* #APP */ |
413 028c F894 cli |
414 /* #NOAPP */ |
415 028e 5F98 cbi 43-0x20,7 |
416 0290 3E9A sbi 39-0x20,6 |
417 0292 469A sbi 40-0x20,6 |
418 0294 8091 B000 lds r24,176 |
419 0298 8F70 andi r24,lo8(15) |
420 029a 8093 B000 sts 176,r24 |
421 029e 8091 B000 lds r24,176 |
422 02a2 8360 ori r24,lo8(3) |
423 02a4 8093 B000 sts 176,r24 |
424 02a8 8091 B100 lds r24,177 |
425 02ac 8B73 andi r24,lo8(59) |
426 02ae 8093 B100 sts 177,r24 |
427 02b2 8091 B100 lds r24,177 |
428 02b6 8B60 ori r24,lo8(11) |
429 02b8 8093 B100 sts 177,r24 |
430 02bc 1092 B200 sts 178,__zero_reg__ |
431 02c0 8FEF ldi r24,lo8(-1) |
432 02c2 8093 B300 sts 179,r24 |
433 02c6 8091 B000 lds r24,176 |
434 02ca 8068 ori r24,lo8(-128) |
435 02cc 8093 B000 sts 176,r24 |
436 02d0 8091 7000 lds r24,112 |
437 02d4 8A7F andi r24,lo8(-6) |
438 02d6 8093 7000 sts 112,r24 |
439 02da 8091 7000 lds r24,112 |
440 02de 8260 ori r24,lo8(2) |
441 02e0 8093 7000 sts 112,r24 |
442 02e4 9FBF out 95-0x20,r25 |
443 /* epilogue: frame size=0 */ |
444 02e6 0895 ret |
445 /* epilogue end (size=1) */ |
446 /* function TIMER2_Init size 48 (47) */ |
448 .global Timer_Init |
450 Timer_Init: |
451 /* prologue: frame size=0 */ |
452 /* prologue end (size=0) */ |
453 02e8 8AE0 ldi r24,lo8(10) |
454 02ea 90E0 ldi r25,hi8(10) |
455 02ec 0E94 0000 call SetDelay |
456 02f0 9093 0000 sts (tim_main)+1,r25 |
457 02f4 8093 0000 sts tim_main,r24 |
458 02f8 82E0 ldi r24,lo8(2) |
459 02fa 85BD out 69-0x20,r24 |
460 02fc 83EA ldi r24,lo8(-93) |
461 02fe 84BD out 68-0x20,r24 |
462 0300 17BC out 71-0x20,__zero_reg__ |
463 0302 84EB ldi r24,lo8(-76) |
464 0304 88BD out 72-0x20,r24 |
465 0306 86E0 ldi r24,lo8(6) |
466 0308 86BD out 70-0x20,r24 |
467 030a 8091 6E00 lds r24,110 |
468 030e 8160 ori r24,lo8(1) |
469 0310 8093 6E00 sts 110,r24 |
470 /* epilogue: frame size=0 */ |
471 0314 0895 ret |
472 /* epilogue end (size=1) */ |
473 /* function Timer_Init size 23 (22) */ |
475 .global CalculateServo |
477 CalculateServo: |
478 /* prologue: frame size=0 */ |
479 0316 A0E0 ldi r26,lo8(0) |
480 0318 B0E0 ldi r27,hi8(0) |
481 031a E0E0 ldi r30,pm_lo8(1f) |
482 031c F0E0 ldi r31,pm_hi8(1f) |
483 031e 0C94 0000 jmp __prologue_saves__+22 |
484 1: |
485 /* prologue end (size=6) */ |
486 0322 8091 0000 lds r24,EE_Parameter+55 |
487 0326 E82F mov r30,r24 |
488 0328 FF27 clr r31 |
489 032a E050 subi r30,lo8(-(sintab)) |
490 032c F040 sbci r31,hi8(-(sintab)) |
491 032e 9681 ldd r25,Z+6 |
492 0330 D080 ld r13,Z |
493 0332 8091 0000 lds r24,CalculateServoSignals |
494 0336 A92F mov r26,r25 |
495 0338 BB27 clr r27 |
496 033a A7FD sbrc r26,7 |
497 033c B095 com r27 |
498 033e CB2F mov r28,r27 |
499 0340 DB2F mov r29,r27 |
500 0342 8130 cpi r24,lo8(1) |
501 0344 09F0 breq .+2 |
502 0346 C9C0 rjmp .L44 |
503 0348 2091 0000 lds r18,IntegralNick |
504 034c 3091 0000 lds r19,(IntegralNick)+1 |
505 0350 4091 0000 lds r20,(IntegralNick)+2 |
506 0354 5091 0000 lds r21,(IntegralNick)+3 |
507 0358 BD01 movw r22,r26 |
508 035a CE01 movw r24,r28 |
509 035c 0E94 0000 call __mulsi3 |
510 0360 97FF sbrs r25,7 |
511 0362 04C0 rjmp .L45 |
512 0364 6158 subi r22,lo8(-(127)) |
513 0366 7F4F sbci r23,hi8(-(127)) |
514 0368 8F4F sbci r24,hlo8(-(127)) |
515 036a 9F4F sbci r25,hhi8(-(127)) |
516 .L45: |
517 036c 7B01 movw r14,r22 |
518 036e 8C01 movw r16,r24 |
519 0370 67E0 ldi r22,7 |
520 0372 1595 1: asr r17 |
521 0374 0795 ror r16 |
522 0376 F794 ror r15 |
523 0378 E794 ror r14 |
524 037a 6A95 dec r22 |
525 037c D1F7 brne 1b |
526 037e 8D2D mov r24,r13 |
527 0380 9927 clr r25 |
528 0382 87FD sbrc r24,7 |
529 0384 9095 com r25 |
530 0386 A92F mov r26,r25 |
531 0388 B92F mov r27,r25 |
532 038a 2091 0000 lds r18,IntegralRoll |
533 038e 3091 0000 lds r19,(IntegralRoll)+1 |
534 0392 4091 0000 lds r20,(IntegralRoll)+2 |
535 0396 5091 0000 lds r21,(IntegralRoll)+3 |
536 039a BC01 movw r22,r24 |
537 039c CD01 movw r24,r26 |
538 039e 0E94 0000 call __mulsi3 |
539 03a2 97FF sbrs r25,7 |
540 03a4 04C0 rjmp .L46 |
541 03a6 6158 subi r22,lo8(-(127)) |
542 03a8 7F4F sbci r23,hi8(-(127)) |
543 03aa 8F4F sbci r24,hlo8(-(127)) |
544 03ac 9F4F sbci r25,hhi8(-(127)) |
545 .L46: |
546 03ae 57E0 ldi r21,7 |
547 03b0 9595 1: asr r25 |
548 03b2 8795 ror r24 |
549 03b4 7795 ror r23 |
550 03b6 6795 ror r22 |
551 03b8 5A95 dec r21 |
552 03ba D1F7 brne 1b |
553 03bc F801 movw r30,r16 |
554 03be E701 movw r28,r14 |
555 03c0 C61B sub r28,r22 |
556 03c2 D70B sbc r29,r23 |
557 03c4 E80B sbc r30,r24 |
558 03c6 F90B sbc r31,r25 |
559 03c8 8091 0000 lds r24,EE_Parameter+46 |
560 03cc 9927 clr r25 |
561 03ce AA27 clr r26 |
562 03d0 BB27 clr r27 |
563 03d2 BC01 movw r22,r24 |
564 03d4 CD01 movw r24,r26 |
565 03d6 9E01 movw r18,r28 |
566 03d8 AF01 movw r20,r30 |
567 03da 0E94 0000 call __mulsi3 |
568 03de 97FF sbrs r25,7 |
569 03e0 04C0 rjmp .L47 |
570 03e2 6150 subi r22,lo8(-(511)) |
571 03e4 7E4F sbci r23,hi8(-(511)) |
572 03e6 8F4F sbci r24,hlo8(-(511)) |
573 03e8 9F4F sbci r25,hhi8(-(511)) |
574 .L47: |
575 03ea FC01 movw r30,r24 |
576 03ec EB01 movw r28,r22 |
577 03ee 49E0 ldi r20,9 |
578 03f0 F595 1: asr r31 |
579 03f2 E795 ror r30 |
580 03f4 D795 ror r29 |
581 03f6 C795 ror r28 |
582 03f8 4A95 dec r20 |
583 03fa D1F7 brne 1b |
584 03fc 8091 0000 lds r24,Parameter_ServoNickControl |
585 0400 9927 clr r25 |
586 0402 36E0 ldi r19,6 |
587 0404 880F 1: lsl r24 |
588 0406 991F rol r25 |
589 0408 3A95 dec r19 |
590 040a E1F7 brne 1b |
591 040c 4091 0000 lds r20,ServoNickOffset |
592 0410 5091 0000 lds r21,(ServoNickOffset)+1 |
593 0414 2091 0000 lds r18,EE_Parameter+54 |
594 0418 3327 clr r19 |
595 041a 841B sub r24,r20 |
596 041c 950B sbc r25,r21 |
597 041e B901 movw r22,r18 |
598 0420 0E94 0000 call __divmodhi4 |
599 0424 8091 0000 lds r24,ServoNickOffset |
600 0428 9091 0000 lds r25,(ServoNickOffset)+1 |
601 042c 860F add r24,r22 |
602 042e 971F adc r25,r23 |
603 0430 9093 0000 sts (ServoNickOffset)+1,r25 |
604 0434 8093 0000 sts ServoNickOffset,r24 |
605 0438 8091 0000 lds r24,ServoNickOffset |
606 043c 9091 0000 lds r25,(ServoNickOffset)+1 |
607 0440 97FD sbrc r25,7 |
608 0442 0F96 adiw r24,15 |
609 .L48: |
610 0444 24E0 ldi r18,4 |
611 0446 9595 1: asr r25 |
612 0448 8795 ror r24 |
613 044a 2A95 dec r18 |
614 044c E1F7 brne 1b |
615 044e 9093 0000 sts (ServoNickValue)+1,r25 |
616 0452 8093 0000 sts ServoNickValue,r24 |
617 0456 8091 0000 lds r24,EE_Parameter+101 |
618 045a 80FF sbrs r24,0 |
619 045c 07C0 rjmp .L49 |
620 045e 8091 0000 lds r24,ServoNickValue |
621 0462 9091 0000 lds r25,(ServoNickValue)+1 |
622 0466 8C0F add r24,r28 |
623 0468 9D1F adc r25,r29 |
624 046a 06C0 rjmp .L66 |
625 .L49: |
626 046c 8091 0000 lds r24,ServoNickValue |
627 0470 9091 0000 lds r25,(ServoNickValue)+1 |
628 0474 8C1B sub r24,r28 |
629 0476 9D0B sbc r25,r29 |
630 .L66: |
631 0478 9093 0000 sts (ServoNickValue)+1,r25 |
632 047c 8093 0000 sts ServoNickValue,r24 |
633 0480 8091 0000 lds r24,EE_Parameter+47 |
634 0484 282F mov r18,r24 |
635 0486 3327 clr r19 |
636 0488 220F lsl r18 |
637 048a 331F rol r19 |
638 048c 220F lsl r18 |
639 048e 331F rol r19 |
640 0490 8091 0000 lds r24,ServoNickValue |
641 0494 9091 0000 lds r25,(ServoNickValue)+1 |
642 0498 8217 cp r24,r18 |
643 049a 9307 cpc r25,r19 |
644 049c 7CF0 brlt .L67 |
645 049e 8091 0000 lds r24,EE_Parameter+48 |
646 04a2 282F mov r18,r24 |
647 04a4 3327 clr r19 |
648 04a6 220F lsl r18 |
649 04a8 331F rol r19 |
650 04aa 220F lsl r18 |
651 04ac 331F rol r19 |
652 04ae 8091 0000 lds r24,ServoNickValue |
653 04b2 9091 0000 lds r25,(ServoNickValue)+1 |
654 04b6 2817 cp r18,r24 |
655 04b8 3907 cpc r19,r25 |
656 04ba 24F4 brge .L52 |
657 .L67: |
658 04bc 3093 0000 sts (ServoNickValue)+1,r19 |
659 04c0 2093 0000 sts ServoNickValue,r18 |
660 .L52: |
661 04c4 8091 0000 lds r24,PlatinenVersion |
662 04c8 8431 cpi r24,lo8(20) |
663 04ca 08F4 brsh .+2 |
664 04cc C2C0 rjmp .L64 |
665 04ce 8091 0000 lds r24,CalculateServoSignals |
666 04d2 8F5F subi r24,lo8(-(1)) |
667 04d4 8093 0000 sts CalculateServoSignals,r24 |
668 04d8 BEC0 rjmp .L43 |
669 .L44: |
670 04da 2091 0000 lds r18,IntegralRoll |
671 04de 3091 0000 lds r19,(IntegralRoll)+1 |
672 04e2 4091 0000 lds r20,(IntegralRoll)+2 |
673 04e6 5091 0000 lds r21,(IntegralRoll)+3 |
674 04ea BD01 movw r22,r26 |
675 04ec CE01 movw r24,r28 |
676 04ee 0E94 0000 call __mulsi3 |
677 04f2 97FF sbrs r25,7 |
678 04f4 04C0 rjmp .L57 |
679 04f6 6158 subi r22,lo8(-(127)) |
680 04f8 7F4F sbci r23,hi8(-(127)) |
681 04fa 8F4F sbci r24,hlo8(-(127)) |
682 04fc 9F4F sbci r25,hhi8(-(127)) |
683 .L57: |
684 04fe 7B01 movw r14,r22 |
685 0500 8C01 movw r16,r24 |
686 0502 C7E0 ldi r28,7 |
687 0504 1595 1: asr r17 |
688 0506 0795 ror r16 |
689 0508 F794 ror r15 |
690 050a E794 ror r14 |
691 050c CA95 dec r28 |
692 050e D1F7 brne 1b |
693 0510 8D2D mov r24,r13 |
694 0512 9927 clr r25 |
695 0514 87FD sbrc r24,7 |
696 0516 9095 com r25 |
697 0518 A92F mov r26,r25 |
698 051a B92F mov r27,r25 |
699 051c 2091 0000 lds r18,IntegralNick |
700 0520 3091 0000 lds r19,(IntegralNick)+1 |
701 0524 4091 0000 lds r20,(IntegralNick)+2 |
702 0528 5091 0000 lds r21,(IntegralNick)+3 |
703 052c BC01 movw r22,r24 |
704 052e CD01 movw r24,r26 |
705 0530 0E94 0000 call __mulsi3 |
706 0534 9B01 movw r18,r22 |
707 0536 AC01 movw r20,r24 |
708 0538 97FF sbrs r25,7 |
709 053a 04C0 rjmp .L58 |
710 053c 2158 subi r18,lo8(-(127)) |
711 053e 3F4F sbci r19,hi8(-(127)) |
712 0540 4F4F sbci r20,hlo8(-(127)) |
713 0542 5F4F sbci r21,hhi8(-(127)) |
714 .L58: |
715 0544 B7E0 ldi r27,7 |
716 0546 5595 1: asr r21 |
717 0548 4795 ror r20 |
718 054a 3795 ror r19 |
719 054c 2795 ror r18 |
720 054e BA95 dec r27 |
721 0550 D1F7 brne 1b |
722 0552 2E0D add r18,r14 |
723 0554 3F1D adc r19,r15 |
724 0556 401F adc r20,r16 |
725 0558 511F adc r21,r17 |
726 055a 8091 0000 lds r24,EE_Parameter+50 |
727 055e 9927 clr r25 |
728 0560 AA27 clr r26 |
729 0562 BB27 clr r27 |
730 0564 BC01 movw r22,r24 |
731 0566 CD01 movw r24,r26 |
732 0568 0E94 0000 call __mulsi3 |
733 056c 97FF sbrs r25,7 |
734 056e 04C0 rjmp .L59 |
735 0570 6150 subi r22,lo8(-(511)) |
736 0572 7E4F sbci r23,hi8(-(511)) |
737 0574 8F4F sbci r24,hlo8(-(511)) |
738 0576 9F4F sbci r25,hhi8(-(511)) |
739 .L59: |
740 0578 FC01 movw r30,r24 |
741 057a EB01 movw r28,r22 |
742 057c A9E0 ldi r26,9 |
743 057e F595 1: asr r31 |
744 0580 E795 ror r30 |
745 0582 D795 ror r29 |
746 0584 C795 ror r28 |
747 0586 AA95 dec r26 |
748 0588 D1F7 brne 1b |
749 058a 8091 0000 lds r24,Parameter_ServoRollControl |
750 058e 9927 clr r25 |
751 0590 76E0 ldi r23,6 |
752 0592 880F 1: lsl r24 |
753 0594 991F rol r25 |
754 0596 7A95 dec r23 |
755 0598 E1F7 brne 1b |
756 059a 4091 0000 lds r20,ServoRollOffset |
757 059e 5091 0000 lds r21,(ServoRollOffset)+1 |
758 05a2 2091 0000 lds r18,EE_Parameter+54 |
759 05a6 3327 clr r19 |
760 05a8 841B sub r24,r20 |
761 05aa 950B sbc r25,r21 |
762 05ac B901 movw r22,r18 |
763 05ae 0E94 0000 call __divmodhi4 |
764 05b2 8091 0000 lds r24,ServoRollOffset |
765 05b6 9091 0000 lds r25,(ServoRollOffset)+1 |
766 05ba 860F add r24,r22 |
767 05bc 971F adc r25,r23 |
768 05be 9093 0000 sts (ServoRollOffset)+1,r25 |
769 05c2 8093 0000 sts ServoRollOffset,r24 |
770 05c6 8091 0000 lds r24,ServoRollOffset |
771 05ca 9091 0000 lds r25,(ServoRollOffset)+1 |
772 05ce 97FD sbrc r25,7 |
773 05d0 0F96 adiw r24,15 |
774 .L60: |
775 05d2 64E0 ldi r22,4 |
776 05d4 9595 1: asr r25 |
777 05d6 8795 ror r24 |
778 05d8 6A95 dec r22 |
779 05da E1F7 brne 1b |
780 05dc 9093 0000 sts (ServoRollValue)+1,r25 |
781 05e0 8093 0000 sts ServoRollValue,r24 |
782 05e4 8091 0000 lds r24,EE_Parameter+101 |
783 05e8 81FF sbrs r24,1 |
784 05ea 07C0 rjmp .L61 |
785 05ec 8091 0000 lds r24,ServoRollValue |
786 05f0 9091 0000 lds r25,(ServoRollValue)+1 |
787 05f4 8C0F add r24,r28 |
788 05f6 9D1F adc r25,r29 |
789 05f8 06C0 rjmp .L68 |
790 .L61: |
791 05fa 8091 0000 lds r24,ServoRollValue |
792 05fe 9091 0000 lds r25,(ServoRollValue)+1 |
793 0602 8C1B sub r24,r28 |
794 0604 9D0B sbc r25,r29 |
795 .L68: |
796 0606 9093 0000 sts (ServoRollValue)+1,r25 |
797 060a 8093 0000 sts ServoRollValue,r24 |
798 060e 8091 0000 lds r24,EE_Parameter+51 |
799 0612 282F mov r18,r24 |
800 0614 3327 clr r19 |
801 0616 220F lsl r18 |
802 0618 331F rol r19 |
803 061a 220F lsl r18 |
804 061c 331F rol r19 |
805 061e 8091 0000 lds r24,ServoRollValue |
806 0622 9091 0000 lds r25,(ServoRollValue)+1 |
807 0626 8217 cp r24,r18 |
808 0628 9307 cpc r25,r19 |
809 062a 7CF0 brlt .L69 |
810 062c 8091 0000 lds r24,EE_Parameter+52 |
811 0630 282F mov r18,r24 |
812 0632 3327 clr r19 |
813 0634 220F lsl r18 |
814 0636 331F rol r19 |
815 0638 220F lsl r18 |
816 063a 331F rol r19 |
817 063c 8091 0000 lds r24,ServoRollValue |
818 0640 9091 0000 lds r25,(ServoRollValue)+1 |
819 0644 2817 cp r18,r24 |
820 0646 3907 cpc r19,r25 |
821 0648 24F4 brge .L64 |
822 .L69: |
823 064a 3093 0000 sts (ServoRollValue)+1,r19 |
824 064e 2093 0000 sts ServoRollValue,r18 |
825 .L64: |
826 0652 1092 0000 sts CalculateServoSignals,__zero_reg__ |
827 .L43: |
828 /* epilogue: frame size=0 */ |
829 0656 E7E0 ldi r30,7 |
830 0658 CDB7 in r28,__SP_L__ |
831 065a DEB7 in r29,__SP_H__ |
832 065c 0C94 0000 jmp __epilogue_restores__+22 |
833 /* epilogue end (size=5) */ |
834 /* function CalculateServo size 423 (412) */ |
836 .lcomm PulseOutput.0,1 |
837 .lcomm ServoFrameTime.1,2 |
838 .lcomm ServoIndex.2,1 |
839 .global __vector_9 |
841 __vector_9: |
842 /* prologue: frame size=0 */ |
843 0660 1F92 push __zero_reg__ |
844 0662 0F92 push __tmp_reg__ |
845 0664 0FB6 in __tmp_reg__,__SREG__ |
846 0666 0F92 push __tmp_reg__ |
847 0668 1124 clr __zero_reg__ |
848 066a 2F93 push r18 |
849 066c 3F93 push r19 |
850 066e 4F93 push r20 |
851 0670 5F93 push r21 |
852 0672 8F93 push r24 |
853 0674 9F93 push r25 |
854 0676 EF93 push r30 |
855 0678 FF93 push r31 |
856 /* prologue end (size=13) */ |
857 067a 8091 0000 lds r24,PlatinenVersion |
858 067e 9091 0000 lds r25,PulseOutput.0 |
859 0682 8431 cpi r24,lo8(20) |
860 0684 08F0 brlo .+2 |
861 0686 4CC0 rjmp .L71 |
862 0688 9923 tst r25 |
863 068a 09F0 breq .+2 |
864 068c 1CC1 rjmp .L78 |
865 068e 8091 B000 lds r24,176 |
866 0692 86FF sbrs r24,6 |
867 0694 24C0 rjmp .L73 |
868 0696 8091 B000 lds r24,176 |
869 069a 8F7B andi r24,lo8(-65) |
870 069c 8093 B000 sts 176,r24 |
871 06a0 8091 0000 lds r24,ServoNickValue |
872 06a4 9091 0000 lds r25,(ServoNickValue)+1 |
873 06a8 8755 subi r24,lo8(-(425)) |
874 06aa 9E4F sbci r25,hi8(-(425)) |
875 06ac 9093 0000 sts (RemainingPulse)+1,r25 |
876 06b0 8093 0000 sts RemainingPulse,r24 |
877 06b4 25E0 ldi r18,hi8(1501) |
878 06b6 8D3D cpi r24,lo8(1501) |
879 06b8 9207 cpc r25,r18 |
880 06ba 18F0 brlo .L74 |
881 06bc 8CED ldi r24,lo8(1500) |
882 06be 95E0 ldi r25,hi8(1500) |
883 06c0 05C0 rjmp .L106 |
884 .L74: |
885 06c2 8757 subi r24,lo8(375) |
886 06c4 9140 sbci r25,hi8(375) |
887 06c6 30F4 brsh .L75 |
888 06c8 87E7 ldi r24,lo8(375) |
889 06ca 91E0 ldi r25,hi8(375) |
890 .L106: |
891 06cc 9093 0000 sts (RemainingPulse)+1,r25 |
892 06d0 8093 0000 sts RemainingPulse,r24 |
893 .L75: |
894 06d4 8091 0000 lds r24,RemainingPulse |
895 06d8 9091 0000 lds r25,(RemainingPulse)+1 |
896 06dc BAC0 rjmp .L111 |
897 .L73: |
898 06de 8091 B000 lds r24,176 |
899 06e2 8064 ori r24,lo8(64) |
900 06e4 8093 B000 sts 176,r24 |
901 06e8 8091 0000 lds r24,EE_Parameter+53 |
902 06ec 282F mov r18,r24 |
903 06ee 3327 clr r19 |
904 06f0 8DED ldi r24,lo8(1757) |
905 06f2 96E0 ldi r25,hi8(1757) |
906 06f4 289F mul r18,r24 |
907 06f6 A001 movw r20,r0 |
908 06f8 299F mul r18,r25 |
909 06fa 500D add r21,r0 |
910 06fc 389F mul r19,r24 |
911 06fe 500D add r21,r0 |
912 0700 1124 clr r1 |
913 0702 CA01 movw r24,r20 |
914 0704 2091 0000 lds r18,ServoFrameTime.1 |
915 0708 3091 0000 lds r19,(ServoFrameTime.1)+1 |
916 070c 821B sub r24,r18 |
917 070e 930B sbc r25,r19 |
918 0710 9093 0000 sts (RemainingPulse)+1,r25 |
919 0714 8093 0000 sts RemainingPulse,r24 |
920 0718 81E0 ldi r24,lo8(1) |
921 071a 8093 0000 sts CalculateServoSignals,r24 |
922 071e D0C0 rjmp .L94 |
923 .L71: |
924 0720 9923 tst r25 |
925 0722 09F0 breq .+2 |
926 0724 D0C0 rjmp .L78 |
927 0726 8091 B000 lds r24,176 |
928 072a 86FF sbrs r24,6 |
929 072c 97C0 rjmp .L80 |
930 072e 8091 B000 lds r24,176 |
931 0732 8F7B andi r24,lo8(-65) |
932 0734 8093 B000 sts 176,r24 |
933 0738 E091 0000 lds r30,ServoIndex.2 |
934 073c EE23 tst r30 |
935 073e F1F4 brne .L81 |
936 0740 8091 0000 lds r24,EE_Parameter+53 |
937 0744 282F mov r18,r24 |
938 0746 3327 clr r19 |
939 0748 8DED ldi r24,lo8(1757) |
940 074a 96E0 ldi r25,hi8(1757) |
941 074c 289F mul r18,r24 |
942 074e A001 movw r20,r0 |
943 0750 299F mul r18,r25 |
944 0752 500D add r21,r0 |
945 0754 389F mul r19,r24 |
946 0756 500D add r21,r0 |
947 0758 1124 clr r1 |
948 075a CA01 movw r24,r20 |
949 075c 2091 0000 lds r18,ServoFrameTime.1 |
950 0760 3091 0000 lds r19,(ServoFrameTime.1)+1 |
951 0764 821B sub r24,r18 |
952 0766 930B sbc r25,r19 |
953 0768 9093 0000 sts (RemainingPulse)+1,r25 |
954 076c 8093 0000 sts RemainingPulse,r24 |
955 0770 1092 0000 sts (ServoFrameTime.1)+1,__zero_reg__ |
956 0774 1092 0000 sts ServoFrameTime.1,__zero_reg__ |
957 0778 469A sbi 40-0x20,6 |
958 077a A2C0 rjmp .L94 |
959 .L81: |
960 077c 89EA ldi r24,lo8(937) |
961 077e 93E0 ldi r25,hi8(937) |
962 0780 9093 0000 sts (RemainingPulse)+1,r25 |
963 0784 8093 0000 sts RemainingPulse,r24 |
964 0788 8E2F mov r24,r30 |
965 078a 9927 clr r25 |
966 078c 8330 cpi r24,3 |
967 078e 9105 cpc r25,__zero_reg__ |
968 0790 D9F0 breq .L86 |
969 0792 8430 cpi r24,4 |
970 0794 9105 cpc r25,__zero_reg__ |
971 0796 34F4 brge .L90 |
972 0798 8130 cpi r24,1 |
973 079a 9105 cpc r25,__zero_reg__ |
974 079c 49F0 breq .L84 |
975 079e 0297 sbiw r24,2 |
976 07a0 61F0 breq .L85 |
977 07a2 20C0 rjmp .L89 |
978 .L90: |
979 07a4 8430 cpi r24,4 |
980 07a6 9105 cpc r25,__zero_reg__ |
981 07a8 91F0 breq .L87 |
982 07aa 0597 sbiw r24,5 |
983 07ac 99F0 breq .L88 |
984 07ae 1AC0 rjmp .L89 |
985 .L84: |
986 07b0 8091 0000 lds r24,ServoNickValue |
987 07b4 9091 0000 lds r25,(ServoNickValue)+1 |
988 07b8 04C0 rjmp .L110 |
989 .L85: |
990 07ba 8091 0000 lds r24,ServoRollValue |
991 07be 9091 0000 lds r25,(ServoRollValue)+1 |
992 .L110: |
993 07c2 8755 subi r24,lo8(-(425)) |
994 07c4 9E4F sbci r25,hi8(-(425)) |
995 07c6 1DC0 rjmp .L107 |
996 .L86: |
997 07c8 8091 0000 lds r24,Parameter_Servo3 |
998 07cc 05C0 rjmp .L112 |
999 .L87: |
1000 07ce 8091 0000 lds r24,Parameter_Servo4 |
1001 07d2 02C0 rjmp .L112 |
1002 .L88: |
1003 07d4 8091 0000 lds r24,Parameter_Servo5 |
1004 .L112: |
1005 07d8 9927 clr r25 |
1006 07da 880F lsl r24 |
1007 07dc 991F rol r25 |
1008 07de 880F lsl r24 |
1009 07e0 991F rol r25 |
1010 07e2 EFCF rjmp .L110 |
1011 .L89: |
1012 07e4 FF27 clr r31 |
1013 07e6 EE0F add r30,r30 |
1014 07e8 FF1F adc r31,r31 |
1015 07ea E050 subi r30,lo8(-(PPM_in)) |
1016 07ec F040 sbci r31,hi8(-(PPM_in)) |
1017 07ee 2081 ld r18,Z |
1018 07f0 3181 ldd r19,Z+1 |
1019 07f2 220F add r18,r18 |
1020 07f4 331F adc r19,r19 |
1021 07f6 8091 0000 lds r24,RemainingPulse |
1022 07fa 9091 0000 lds r25,(RemainingPulse)+1 |
1023 07fe 820F add r24,r18 |
1024 0800 931F adc r25,r19 |
1025 .L107: |
1026 0802 9093 0000 sts (RemainingPulse)+1,r25 |
1027 0806 8093 0000 sts RemainingPulse,r24 |
1028 080a 8091 0000 lds r24,RemainingPulse |
1029 080e 9091 0000 lds r25,(RemainingPulse)+1 |
1030 0812 55E0 ldi r21,hi8(1501) |
1031 0814 8D3D cpi r24,lo8(1501) |
1032 0816 9507 cpc r25,r21 |
1033 0818 18F0 brlo .L91 |
1034 081a 8CED ldi r24,lo8(1500) |
1035 081c 95E0 ldi r25,hi8(1500) |
1036 081e 05C0 rjmp .L108 |
1037 .L91: |
1038 0820 8757 subi r24,lo8(375) |
1039 0822 9140 sbci r25,hi8(375) |
1040 0824 30F4 brsh .L92 |
1041 0826 87E7 ldi r24,lo8(375) |
1042 0828 91E0 ldi r25,hi8(375) |
1043 .L108: |
1044 082a 9093 0000 sts (RemainingPulse)+1,r25 |
1045 082e 8093 0000 sts RemainingPulse,r24 |
1046 .L92: |
1047 0832 2091 0000 lds r18,RemainingPulse |
1048 0836 3091 0000 lds r19,(RemainingPulse)+1 |
1049 083a 2C5B subi r18,lo8(-(-188)) |
1050 083c 3040 sbci r19,hi8(-(-188)) |
1051 083e 3093 0000 sts (RemainingPulse)+1,r19 |
1052 0842 2093 0000 sts RemainingPulse,r18 |
1053 0846 8091 0000 lds r24,ServoFrameTime.1 |
1054 084a 9091 0000 lds r25,(ServoFrameTime.1)+1 |
1055 084e 820F add r24,r18 |
1056 0850 931F adc r25,r19 |
1057 .L111: |
1058 0852 9093 0000 sts (ServoFrameTime.1)+1,r25 |
1059 0856 8093 0000 sts ServoFrameTime.1,r24 |
1060 085a 32C0 rjmp .L94 |
1061 .L80: |
1062 085c 8091 B000 lds r24,176 |
1063 0860 8064 ori r24,lo8(64) |
1064 0862 8093 B000 sts 176,r24 |
1065 0866 8CEB ldi r24,lo8(188) |
1066 0868 90E0 ldi r25,hi8(188) |
1067 086a 9093 0000 sts (RemainingPulse)+1,r25 |
1068 086e 8093 0000 sts RemainingPulse,r24 |
1069 0872 8091 0000 lds r24,ServoFrameTime.1 |
1070 0876 9091 0000 lds r25,(ServoFrameTime.1)+1 |
1071 087a 8454 subi r24,lo8(-(188)) |
1072 087c 9F4F sbci r25,hi8(-(188)) |
1073 087e 9093 0000 sts (ServoFrameTime.1)+1,r25 |
1074 0882 8093 0000 sts ServoFrameTime.1,r24 |
1075 0886 8091 0000 lds r24,ServoActive |
1076 088a 8823 tst r24 |
1077 088c 21F0 breq .L97 |
1078 088e 8091 0000 lds r24,SenderOkay |
1079 0892 8333 cpi r24,lo8(51) |
1080 0894 20F4 brsh .L96 |
1081 .L97: |
1082 0896 8091 0000 lds r24,ServoActive |
1083 089a 8230 cpi r24,lo8(2) |
1084 089c 11F4 brne .L95 |
1085 .L96: |
1086 089e 4698 cbi 40-0x20,6 |
1087 08a0 01C0 rjmp .L98 |
1088 .L95: |
1089 08a2 469A sbi 40-0x20,6 |
1090 .L98: |
1091 08a4 8091 0000 lds r24,ServoIndex.2 |
1092 08a8 8F5F subi r24,lo8(-(1)) |
1093 08aa 8093 0000 sts ServoIndex.2,r24 |
1094 08ae 9091 0000 lds r25,EE_Parameter+53 |
1095 08b2 9817 cp r25,r24 |
1096 08b4 28F4 brsh .L94 |
1097 08b6 81E0 ldi r24,lo8(1) |
1098 08b8 8093 0000 sts CalculateServoSignals,r24 |
1099 08bc 1092 0000 sts ServoIndex.2,__zero_reg__ |
1100 .L94: |
1101 08c0 81E0 ldi r24,lo8(1) |
1102 08c2 8093 0000 sts PulseOutput.0,r24 |
1103 .L78: |
1104 08c6 2091 0000 lds r18,RemainingPulse |
1105 08ca 3091 0000 lds r19,(RemainingPulse)+1 |
1106 08ce 41E0 ldi r20,hi8(383) |
1107 08d0 2F37 cpi r18,lo8(383) |
1108 08d2 3407 cpc r19,r20 |
1109 08d4 30F0 brlo .L100 |
1110 08d6 8FEF ldi r24,lo8(-1) |
1111 08d8 8093 B300 sts 179,r24 |
1112 08dc 2F5F subi r18,lo8(-(-255)) |
1113 08de 3040 sbci r19,hi8(-(-255)) |
1114 08e0 0FC0 rjmp .L109 |
1115 .L100: |
1116 08e2 2F3F cpi r18,255 |
1117 08e4 3105 cpc r19,__zero_reg__ |
1118 08e6 C9F0 breq .L102 |
1119 08e8 C0F0 brlo .L102 |
1120 08ea A901 movw r20,r18 |
1121 08ec 4F5F subi r20,lo8(-(-255)) |
1122 08ee 5040 sbci r21,hi8(-(-255)) |
1123 08f0 4F37 cpi r20,127 |
1124 08f2 5105 cpc r21,__zero_reg__ |
1125 08f4 50F4 brsh .L103 |
1126 08f6 80E8 ldi r24,lo8(-128) |
1127 08f8 8093 B300 sts 179,r24 |
1128 08fc 2058 subi r18,lo8(-(-128)) |
1129 08fe 3040 sbci r19,hi8(-(-128)) |
1130 .L109: |
1131 0900 3093 0000 sts (RemainingPulse)+1,r19 |
1132 0904 2093 0000 sts RemainingPulse,r18 |
1133 0908 12C0 rjmp .L70 |
1134 .L103: |
1135 090a 8FEF ldi r24,lo8(-1) |
1136 090c 8093 B300 sts 179,r24 |
1137 0910 5093 0000 sts (RemainingPulse)+1,r21 |
1138 0914 4093 0000 sts RemainingPulse,r20 |
1139 0918 0AC0 rjmp .L70 |
1140 .L102: |
1141 091a 8091 0000 lds r24,RemainingPulse |
1142 091e 8093 B300 sts 179,r24 |
1143 0922 1092 0000 sts (RemainingPulse)+1,__zero_reg__ |
1144 0926 1092 0000 sts RemainingPulse,__zero_reg__ |
1145 092a 1092 0000 sts PulseOutput.0,__zero_reg__ |
1146 .L70: |
1147 /* epilogue: frame size=0 */ |
1148 092e FF91 pop r31 |
1149 0930 EF91 pop r30 |
1150 0932 9F91 pop r25 |
1151 0934 8F91 pop r24 |
1152 0936 5F91 pop r21 |
1153 0938 4F91 pop r20 |
1154 093a 3F91 pop r19 |
1155 093c 2F91 pop r18 |
1156 093e 0F90 pop __tmp_reg__ |
1157 0940 0FBE out __SREG__,__tmp_reg__ |
1158 0942 0F90 pop __tmp_reg__ |
1159 0944 1F90 pop __zero_reg__ |
1160 0946 1895 reti |
1161 /* epilogue end (size=13) */ |
1162 /* function __vector_9 size 376 (350) */ |
1164 .lcomm tim_main,2 |
1165 /* File "timer0.c": code 1199 = 0x04af (1116), prologues 39, epilogues 44 */ |
DEFINED SYMBOLS |
*ABS*:00000000 timer0.c |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:15 .bss:00000000 ServoRollValue |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:21 .bss:00000002 ServoNickValue |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:27 .data:00000000 BeepMuster |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:32 .data:00000002 ServoRollOffset |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:37 .data:00000004 ServoNickOffset |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:44 .bss:00000004 RemainingPulse |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:50 .data:00000006 CalculateServoSignals |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:57 .bss:00000006 ServoActive |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:63 .bss:00000007 SendSPI |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:69 .bss:00000008 beeptime |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:75 .bss:0000000a cntKompass |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:81 .bss:0000000c UpdateMotor |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:87 .bss:0000000d CountMilliseconds |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:92 .data:00000007 cnt_1ms.3 |
.bss:0000000f cnt.4 |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:94 .bss:00000010 compass_active.5 |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:99 .text:00000000 __vector_18 |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:322 .text:00000216 SetDelay |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:338 .text:00000228 CheckDelay |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:357 .text:00000240 Delay_ms |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:378 .text:0000025a Delay_ms_Mess |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:408 .text:0000028a TIMER2_Init |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:450 .text:000002e8 Timer_Init |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:838 .bss:00000015 tim_main |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:477 .text:00000316 CalculateServo |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:95 .bss:00000011 PulseOutput.0 |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:836 .bss:00000012 ServoFrameTime.1 |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:837 .bss:00000014 ServoIndex.2 |
C:\Users\Thomas\AppData\Local\Temp/ccmAbaaa.s:841 .text:00000660 __vector_9 |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
SpektrumTimer |
PlatinenVersion |
NaviDataOkay |
EE_Parameter |
__udivmodhi4 |
KompassValue |
KompassStartwert |
__divmodhi4 |
KompassRichtung |
AdReady |
__prologue_saves__ |
sintab |
IntegralNick |
__mulsi3 |
IntegralRoll |
Parameter_ServoNickControl |
Parameter_ServoRollControl |
__epilogue_restores__ |
Parameter_Servo3 |
Parameter_Servo4 |
Parameter_Servo5 |
PPM_in |
SenderOkay |
/branches/metro/v0.82a metro_Akku+/twimaster.c |
---|
0,0 → 1,468 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + Nur für den privaten Gebrauch |
// + www.MikroKopter.com |
// + porting the sources to other systems or using the software on other systems (except hardware from www.mikrokopter.de) is not allowed |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Es gilt für das gesamte Projekt (Hardware, Software, Binärfiles, Sourcecode und Dokumentation), |
// + dass eine Nutzung (auch auszugsweise) nur für den privaten (nicht-kommerziellen) Gebrauch zulässig ist. |
// + Sollten direkte oder indirekte kommerzielle Absichten verfolgt werden, ist mit uns (info@mikrokopter.de) Kontakt |
// + bzgl. der Nutzungsbedingungen aufzunehmen. |
// + Eine kommerzielle Nutzung ist z.B.Verkauf von MikroKoptern, Bestückung und Verkauf von Platinen oder Bausätzen, |
// + Verkauf von Luftbildaufnahmen, usw. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Werden Teile des Quellcodes (mit oder ohne Modifikation) weiterverwendet oder veröffentlicht, |
// + unterliegen sie auch diesen Nutzungsbedingungen und diese Nutzungsbedingungen incl. Copyright müssen dann beiliegen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Sollte die Software (auch auszugesweise) oder sonstige Informationen des MikroKopter-Projekts |
// + auf anderen Webseiten oder sonstigen Medien veröffentlicht werden, muss unsere Webseite "http://www.mikrokopter.de" |
// + eindeutig als Ursprung verlinkt werden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Keine Gewähr auf Fehlerfreiheit, Vollständigkeit oder Funktion |
// + Benutzung auf eigene Gefahr |
// + Wir übernehmen keinerlei Haftung für direkte oder indirekte Personen- oder Sachschäden |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Portierung der Software (oder Teile davon) auf andere Systeme (ausser der Hardware von www.mikrokopter.de) ist nur |
// + mit unserer Zustimmung zulässig |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Die Funktion printf_P() unterliegt ihrer eigenen Lizenz und ist hiervon nicht betroffen |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Redistributions of source code (with or without modifications) must retain the above copyright notice, |
// + this list of conditions and the following disclaimer. |
// + * Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived |
// + from this software without specific prior written permission. |
// + * The use of this project (hardware, software, binary files, sources and documentation) is only permittet |
// + for non-commercial use (directly or indirectly) |
// + Commercial use (for excample: selling of MikroKopters, selling of PCBs, assembly, ...) is only permitted |
// + with our written permission |
// + * If sources or documentations are redistributet on other webpages, out webpage (http://www.MikroKopter.de) must be |
// + clearly linked as origin |
// + * porting to systems other than hardware from www.mikrokopter.de is not allowed |
// + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
// + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
// + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
// + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
// + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
// + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
// + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
// + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN// + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
// + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
// + POSSIBILITY OF SUCH DAMAGE. |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include <avr/io.h> |
#include <avr/interrupt.h> |
#include <util/twi.h> |
#include "eeprom.h" |
#include "twimaster.h" |
#include "fc.h" |
#include "analog.h" |
#include "uart.h" |
#include "timer0.h" |
volatile uint8_t twi_state = TWI_STATE_MOTOR_TX; |
volatile uint8_t dac_channel = 0; |
volatile uint8_t motor_write = 0; |
volatile uint8_t motor_read = 0; |
volatile uint8_t I2C_TransferActive = 0; |
volatile uint16_t I2CTimeout = 100; |
uint8_t MissingMotor = 0; |
volatile uint8_t BLFlags = 0; |
MotorData_t Motor[MAX_MOTORS]; |
// bit mask for witch BL the configuration should be sent |
volatile uint16_t BLConfig_WriteMask = 0; |
// bit mask for witch BL the configuration should be read |
volatile uint16_t BLConfig_ReadMask = 0; |
// buffer for BL Configuration |
BLConfig_t BLConfig; |
#define I2C_WriteByte(byte) {TWDR = byte; TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWIE);} |
#define I2C_ReceiveByte() {TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWIE) | (1<<TWEA);} |
#define I2C_ReceiveLastByte() {TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWIE);} |
#define SCL_CLOCK 200000L |
#define I2C_TIMEOUT 30000 |
#define TWI_BASE_ADDRESS 0x52 |
/**************************************************/ |
/* Initialize I2C (TWI) */ |
/**************************************************/ |
void I2C_Init(char clear) |
{ |
uint8_t i; |
uint8_t sreg = SREG; |
cli(); |
// SDA is INPUT |
DDRC &= ~(1<<DDC1); |
// SCL is output |
DDRC |= (1<<DDC0); |
// pull up SDA |
PORTC |= (1<<PORTC0)|(1<<PORTC1); |
// TWI Status Register |
// prescaler 1 (TWPS1 = 0, TWPS0 = 0) |
TWSR &= ~((1<<TWPS1)|(1<<TWPS0)); |
// set TWI Bit Rate Register |
TWBR = ((F_CPU/SCL_CLOCK)-16)/2; |
twi_state = TWI_STATE_MOTOR_TX; |
motor_write = 0; |
motor_read = 0; |
if(clear) for(i=0; i < MAX_MOTORS; i++) |
{ |
Motor[i].Version = 0; |
Motor[i].SetPoint = 0; |
Motor[i].SetPointLowerBits = 0; |
Motor[i].State = 0; |
Motor[i].ReadMode = BL_READMODE_STATUS; |
Motor[i].Current = 0; |
Motor[i].MaxPWM = 0; |
Motor[i].Temperature = 0; |
} |
sei(); |
SREG = sreg; |
} |
void I2C_Reset(void) |
{ |
// stop i2c bus |
I2C_Stop(TWI_STATE_MOTOR_TX); |
TWCR = (1<<TWINT); // reset to original state incl. interrupt flag reset |
TWAMR = 0; |
TWAR = 0; |
TWDR = 0; |
TWSR = 0; |
TWBR = 0; |
I2C_TransferActive = 0; |
I2C_Init(0); |
I2C_WriteByte(0); |
BLFlags |= BLFLAG_READ_VERSION; |
} |
/****************************************/ |
/* I2C ISR */ |
/****************************************/ |
ISR (TWI_vect) |
{ |
static uint8_t missing_motor = 0, motor_read_temperature = 0; |
static uint8_t *pBuff = 0; |
static uint8_t BuffLen = 0; |
switch (twi_state++) |
{ |
// Master Transmit |
case 0: // TWI_STATE_MOTOR_TX |
I2C_TransferActive = 1; |
// skip motor if not used in mixer |
while((Mixer.Motor[motor_write][MIX_GAS] <= 0) && (motor_write < MAX_MOTORS)) motor_write++; |
if(motor_write >= MAX_MOTORS) // writing finished, read now |
{ |
BLConfig_WriteMask = 0; // reset configuration bitmask |
motor_write = 0; // reset motor write counter for next cycle |
twi_state = TWI_STATE_MOTOR_RX; |
I2C_WriteByte(TWI_BASE_ADDRESS + TW_READ + (motor_read<<1) ); // select slave address in rx mode |
} |
else I2C_WriteByte(TWI_BASE_ADDRESS + TW_WRITE + (motor_write<<1) ); // select slave address in tx mode |
break; |
case 1: // Send Data to Slave |
I2C_WriteByte(Motor[motor_write].SetPoint); // transmit setpoint |
// if old version has been detected |
if(!(Motor[motor_write].Version & MOTOR_STATE_NEW_PROTOCOL_MASK)) |
{ |
twi_state = 4; //jump over sending more data |
} |
// the new version has been detected |
else if(!( (Motor[motor_write].SetPointLowerBits && (RequiredMotors < 7)) || BLConfig_WriteMask || BLConfig_ReadMask ) ) |
{ // or LowerBits are zero and no BlConfig should be sent (saves round trip time) |
twi_state = 4; //jump over sending more data |
} |
break; |
case 2: // lower bits of setpoint (higher resolution) |
if ((0x0001<<motor_write) & BLConfig_ReadMask) |
{ |
Motor[motor_write].ReadMode = BL_READMODE_CONFIG; // configuration request |
} |
else |
{ |
Motor[motor_write].ReadMode = BL_READMODE_STATUS; // normal status request |
} |
// send read mode and the lower bits of setpoint |
I2C_WriteByte((Motor[motor_write].ReadMode<<3)|(Motor[motor_write].SetPointLowerBits & 0x07)); |
// configuration tranmission request? |
if((0x0001<<motor_write) & BLConfig_WriteMask) |
{ // redirect tx pointer to configuration data |
pBuff = (uint8_t*)&BLConfig; // select config for motor |
BuffLen = sizeof(BLConfig_t); |
} |
else |
{ // jump to end of transmission for that motor |
twi_state = 4; |
} |
break; |
case 3: // send configuration |
I2C_WriteByte(*pBuff); |
pBuff++; |
if(--BuffLen > 0) twi_state = 3; // if there are some bytes left |
break; |
case 4: // repeat case 0-4 for all motors |
if(TWSR == TW_MT_DATA_NACK) // Data transmitted, NACK received |
{ |
if(!missing_motor) missing_motor = motor_write + 1; |
if((Motor[motor_write].State & MOTOR_STATE_ERROR_MASK) < MOTOR_STATE_ERROR_MASK) Motor[motor_write].State++; // increment error counter and handle overflow |
} |
I2C_Stop(TWI_STATE_MOTOR_TX); |
I2CTimeout = 10; |
motor_write++; // next motor |
I2C_Start(TWI_STATE_MOTOR_TX); // Repeated start -> switch slave or switch Master Transmit -> Master Receive |
break; |
// Master Receive Data |
case 5: // TWI_STATE_MOTOR_RX |
if(TWSR != TW_MR_SLA_ACK) // SLA+R transmitted but no ACK received |
{ // no response from the addressed slave received |
Motor[motor_read].State &= ~MOTOR_STATE_PRESENT_MASK; // clear present bit |
if(++motor_read >= MAX_MOTORS) |
{ // all motors read |
motor_read = 0; // restart from beginning |
BLConfig_ReadMask = 0; // reset read configuration bitmask |
if(++motor_read_temperature >= MAX_MOTORS) |
{ |
motor_read_temperature = 0; |
BLFlags &= ~BLFLAG_READ_VERSION; |
} |
} |
BLFlags |= BLFLAG_TX_COMPLETE; |
I2C_Stop(TWI_STATE_MOTOR_TX); |
I2C_TransferActive = 0; |
} |
else |
{ // motor successfully addressed |
Motor[motor_read].State |= MOTOR_STATE_PRESENT_MASK; // set present bit |
if(Motor[motor_read].Version & MOTOR_STATE_NEW_PROTOCOL_MASK) |
{ |
// new BL found |
switch(Motor[motor_read].ReadMode) |
{ |
case BL_READMODE_CONFIG: |
pBuff = (uint8_t*)&BLConfig; |
BuffLen = sizeof(BLConfig_t); |
break; |
case BL_READMODE_STATUS: |
pBuff = (uint8_t*)&(Motor[motor_read].Current); |
if(motor_read == motor_read_temperature) BuffLen = 3; // read Current, MaxPwm & Temp |
else BuffLen = 1;// read Current only |
break; |
} |
} |
else // old BL version |
{ |
pBuff = (uint8_t*)&(Motor[motor_read].Current); |
if((BLFlags & BLFLAG_READ_VERSION) || (motor_read == motor_read_temperature)) BuffLen = 2; // Current & MaxPwm |
else BuffLen = 1; // read Current only |
} |
if(BuffLen == 1) |
{ |
I2C_ReceiveLastByte(); // read last byte |
} |
else |
{ |
I2C_ReceiveByte(); // read next byte |
} |
} |
MissingMotor = missing_motor; |
missing_motor = 0; |
break; |
case 6: // receive bytes |
*pBuff = TWDR; |
pBuff++; |
BuffLen--; |
if(BuffLen>1) |
{ |
I2C_ReceiveByte(); // read next byte |
} |
else if (BuffLen == 1) |
{ |
I2C_ReceiveLastByte(); // read last byte |
} |
else // nothing left |
{ |
if(BLFlags & BLFLAG_READ_VERSION) |
{ |
if(!(FC_StatusFlags & FC_STATUS_MOTOR_RUN) && (Motor[motor_read].MaxPWM == 250) ) Motor[motor_read].Version |= MOTOR_STATE_NEW_PROTOCOL_MASK; |
else Motor[motor_read].Version = 0; |
} |
if(++motor_read >= MAX_MOTORS) |
{ |
motor_read = 0; // restart from beginning |
BLConfig_ReadMask = 0; // reset read configuration bitmask |
if(++motor_read_temperature >= MAX_MOTORS) |
{ |
motor_read_temperature = 0; |
BLFlags &= ~BLFLAG_READ_VERSION; |
} |
} |
I2C_Stop(TWI_STATE_MOTOR_TX); |
BLFlags |= BLFLAG_TX_COMPLETE; |
I2C_TransferActive = 0; |
return; |
} |
twi_state = 6; // if there are some bytes left |
break; |
// writing Gyro-Offsets |
case 18: |
I2C_WriteByte(0x98); // Address the DAC |
break; |
case 19: |
I2C_WriteByte(0x10 + (dac_channel * 2)); // Select DAC Channel (0x10 = A, 0x12 = B, 0x14 = C) |
break; |
case 20: |
switch(dac_channel) |
{ |
case 0: |
I2C_WriteByte(AnalogOffsetNick); // 1st byte for Channel A |
break; |
case 1: |
I2C_WriteByte(AnalogOffsetRoll); // 1st byte for Channel B |
break; |
case 2: |
I2C_WriteByte(AnalogOffsetGier); // 1st byte for Channel C |
break; |
} |
break; |
case 21: |
I2C_WriteByte(0x80); // 2nd byte for all channels is 0x80 |
break; |
case 22: |
I2C_Stop(TWI_STATE_MOTOR_TX); |
I2C_TransferActive = 0; |
I2CTimeout = 10; |
// repeat case 18...22 until all DAC Channels are updated |
if(dac_channel < 2) |
{ |
dac_channel ++; // jump to next channel |
I2C_Start(TWI_STATE_GYRO_OFFSET_TX); // start transmission for next channel |
} |
else |
{ |
dac_channel = 0; // reset dac channel counter |
BLFlags |= BLFLAG_TX_COMPLETE; |
} |
break; |
default: |
I2C_Stop(TWI_STATE_MOTOR_TX); |
BLFlags |= BLFLAG_TX_COMPLETE; |
I2CTimeout = 10; |
motor_write = 0; |
motor_read = 0; |
I2C_TransferActive = 0; |
break; |
} |
} |
uint8_t I2C_WriteBLConfig(uint8_t motor) |
{ |
uint8_t i; |
uint16_t timer; |
if(MotorenEin || PC_MotortestActive) return(BLCONFIG_ERR_MOTOR_RUNNING); // not when motors are running! |
if(motor > MAX_MOTORS) return (BLCONFIG_ERR_MOTOR_NOT_EXIST); // motor does not exist! |
if(motor) |
{ |
if(!(Motor[motor-1].State & MOTOR_STATE_PRESENT_MASK)) return(BLCONFIG_ERR_MOTOR_NOT_EXIST); // motor does not exist! |
if(!(Motor[motor-1].Version & MOTOR_STATE_NEW_PROTOCOL_MASK)) return(BLCONFIG_ERR_HW_NOT_COMPATIBLE); // not a new BL! |
} |
// check BL configuration to send |
if(BLConfig.Revision != BLCONFIG_REVISION) return (BLCONFIG_ERR_SW_NOT_COMPATIBLE); // bad revison |
i = RAM_Checksum((uint8_t*)&BLConfig, sizeof(BLConfig_t) - 1); |
if(i != BLConfig.crc) return(BLCONFIG_ERR_CHECKSUM); // bad checksum |
timer = SetDelay(2000); |
while(!(BLFlags & BLFLAG_TX_COMPLETE) && !CheckDelay(timer)); //wait for complete transfer |
// prepare the bitmask |
if(!motor) // 0 means all |
{ |
BLConfig_WriteMask = 0xFF; // all motors at once with the same configuration |
} |
else //only one specific motor |
{ |
BLConfig_WriteMask = 0x0001<<(motor-1); |
} |
for(i = 0; i < MAX_MOTORS; i++) |
{ |
if((0x0001<<i) & BLConfig_WriteMask) |
{ |
Motor[i].SetPoint = 0; |
Motor[i].SetPointLowerBits = 0; |
} |
} |
motor_write = 0; |
// needs at least MAX_MOTORS loops of 2 ms (12*2ms = 24ms) |
do |
{ |
I2C_Start(TWI_STATE_MOTOR_TX); // start an i2c transmission |
while(!(BLFlags & BLFLAG_TX_COMPLETE) && !CheckDelay(timer)); //wait for complete transfer |
}while(BLConfig_WriteMask && !CheckDelay(timer)); // repeat until the BL config has been sent |
if(BLConfig_WriteMask) return(BLCONFIG_ERR_MOTOR_NOT_EXIST); |
return(BLCONFIG_SUCCESS); |
} |
uint8_t I2C_ReadBLConfig(uint8_t motor) |
{ |
uint8_t i; |
uint16_t timer; |
if(MotorenEin || PC_MotortestActive) return(BLCONFIG_ERR_MOTOR_RUNNING); // not when motors are running! |
if(motor > MAX_MOTORS) return (BLCONFIG_ERR_MOTOR_NOT_EXIST); // motor does not exist! |
if(motor == 0) return (BLCONFIG_ERR_READ_NOT_POSSIBLE); |
if(!(Motor[motor-1].State & MOTOR_STATE_PRESENT_MASK)) return(BLCONFIG_ERR_MOTOR_NOT_EXIST); // motor does not exist! |
if(!(Motor[motor-1].Version & MOTOR_STATE_NEW_PROTOCOL_MASK)) return(BLCONFIG_ERR_HW_NOT_COMPATIBLE); // not a new BL! |
timer = SetDelay(2000); |
while(!(BLFlags & BLFLAG_TX_COMPLETE) && !CheckDelay(timer)); //wait for complete transfer |
// prepare the bitmask |
BLConfig_ReadMask = 0x0001<<(motor-1); |
for(i = 0; i < MAX_MOTORS; i++) |
{ |
if((0x0001<<i) & BLConfig_ReadMask) |
{ |
Motor[i].SetPoint = 0; |
Motor[i].SetPointLowerBits = 0; |
} |
} |
motor_read = 0; |
BLConfig.Revision = 0; // bad revision |
BLConfig.crc = 0; // bad checksum |
// needs at least MAX_MOTORS loops of 2 ms (12*2ms = 24ms) |
do |
{ |
I2C_Start(TWI_STATE_MOTOR_TX); // start an i2c transmission |
while(!(BLFlags & BLFLAG_TX_COMPLETE) && !CheckDelay(timer)); //wait for complete transfer |
}while(BLConfig_ReadMask && !CheckDelay(timer)); // repeat until the BL config has been received from all motors |
// validate result |
if(BLConfig.Revision != BLCONFIG_REVISION) return (BLCONFIG_ERR_SW_NOT_COMPATIBLE); // bad revison |
i = RAM_Checksum((uint8_t*)&BLConfig, sizeof(BLConfig_t) - 1); |
if(i != BLConfig.crc) return(BLCONFIG_ERR_CHECKSUM); // bad checksum |
return(BLCONFIG_SUCCESS); |
} |
/branches/metro/v0.82a metro_Akku+/twimaster.d |
---|
0,0 → 1,2 |
twimaster.o twimaster.d : twimaster.c eeprom.h twimaster.h fc.h analog.h uart.h \ |
timer0.h |
/branches/metro/v0.82a metro_Akku+/twimaster.h |
---|
0,0 → 1,100 |
#ifndef _I2C_MASTER_H |
#define _I2C_MASTER_H |
+ |
+#include <inttypes.h> |
+ |
+#define TWI_STATE_MOTOR_TX 0 |
+#define TWI_STATE_MOTOR_RX 5 |
+#define TWI_STATE_GYRO_OFFSET_TX 18 |
+ |
+extern volatile uint8_t twi_state; |
+extern volatile uint8_t motor_write; |
+extern volatile uint8_t motor_read; |
+extern volatile uint8_t I2C_TransferActive; |
+ |
+extern uint8_t MissingMotor; |
+ |
+#define MAX_MOTORS 12 |
+#define MOTOR_STATE_PRESENT_MASK 0x80 |
+#define MOTOR_STATE_ERROR_MASK 0x7F |
+ |
+#define MOTOR_STATE_NEW_PROTOCOL_MASK 0x01 |
+ |
+#define BLFLAG_TX_COMPLETE 0x01 |
+#define BLFLAG_READ_VERSION 0x02 |
+ |
+extern volatile uint8_t BLFlags; |
+ |
+ |
+#define BL_READMODE_STATUS 0 |
+#define BL_READMODE_CONFIG 16 |
+ |
+typedef struct |
+{ |
+ uint8_t Version; // the version of the BL (0 = old) |
+ uint8_t SetPoint; // written by attitude controller |
+ uint8_t SetPointLowerBits; // for higher Resolution of new BLs |
+ uint8_t State; // 7 bit for I2C error counter, highest bit indicates if motor is present |
+ uint8_t ReadMode; // select data to read |
+ // the following bytes must be exactly in that order! |
+ uint8_t Current; // in 0.1 A steps, read back from BL |
+ uint8_t MaxPWM; // read back from BL is less than 255 if BL is in current limit |
+ int8_t Temperature; // old BL-Ctrl will return a 255 here, the new version the temp. in °C |
+} __attribute__((packed)) MotorData_t; |
+ |
+extern MotorData_t Motor[MAX_MOTORS]; |
+ |
+#define BLCONFIG_REVISION 2 |
+ |
+#define MASK_SET_PWM_SCALING 0x01 |
+#define MASK_SET_CURRENT_LIMIT 0x02 |
+#define MASK_SET_TEMP_LIMIT 0x04 |
+#define MASK_SET_CURRENT_SCALING 0x08 |
+#define MASK_SET_BITCONFIG 0x10 |
+#define MASK_RESET_CAPCOUNTER 0x20 |
+#define MASK_SET_DEFAULT_PARAMS 0x40 |
+#define MASK_SET_SAVE_EEPROM 0x80 |
+ |
+#define BITCONF_REVERSE_ROTATION 0x01 |
+#define BITCONF_RES1 0x02 |
+#define BITCONF_RES2 0x04 |
+#define BITCONF_RES3 0x08 |
+#define BITCONF_RES4 0x10 |
+#define BITCONF_RES5 0x20 |
+#define BITCONF_RES6 0x40 |
+#define BITCONF_RES7 0x80 |
+ |
+typedef struct |
+{ |
+ uint8_t Revision; // must be BL_REVISION |
+ uint8_t SetMask; // settings mask |
+ uint8_t PwmScaling; // maximum value of control pwm, acts like a thrust limit |
+ uint8_t CurrentLimit; // current limit in A |
+ uint8_t TempLimit; // in °C |
+ uint8_t CurrentScaling; // scaling factor for current measurement |
+ uint8_t BitConfig; // see defines above |
+ uint8_t crc; // checksum |
+} __attribute__((packed)) BLConfig_t; |
+ |
+extern BLConfig_t BLConfig; |
+ |
+extern volatile uint16_t I2CTimeout; |
+ |
+void I2C_Init(char); // Initialize I2C |
+#define I2C_Start(start_state) {twi_state = start_state; BLFlags &= ~BLFLAG_TX_COMPLETE; TWCR = (1<<TWSTA) | (1<<TWEN) | (1<<TWINT) | (1<<TWIE);} |
+#define I2C_Stop(start_state) {twi_state = start_state; TWCR = (1<<TWEN) | (1<<TWSTO) | (1<<TWINT);} |
+void I2C_Reset(void); // Reset I2C |
+ |
+#define BLCONFIG_SUCCESS 0 |
+#define BLCONFIG_ERR_MOTOR_RUNNING 1 |
+#define BLCONFIG_ERR_MOTOR_NOT_EXIST 2 |
+#define BLCONFIG_ERR_HW_NOT_COMPATIBLE 3 |
+#define BLCONFIG_ERR_SW_NOT_COMPATIBLE 4 |
+#define BLCONFIG_ERR_CHECKSUM 5 |
+#define BLCONFIG_ERR_READ_NOT_POSSIBLE 6 |
+ |
+uint8_t I2C_WriteBLConfig(uint8_t motor); |
+uint8_t I2C_ReadBLConfig(uint8_t motor); |
+ |
+#endif |
/branches/metro/v0.82a metro_Akku+/twimaster.lst |
---|
0,0 → 1,1208 |
1 .file "twimaster.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global BLConfig_ReadMask |
11 .global BLConfig_ReadMask |
12 .section .bss |
15 BLConfig_ReadMask: |
16 0000 0000 .skip 2,0 |
17 .global BLConfig_WriteMask |
18 .global BLConfig_WriteMask |
21 BLConfig_WriteMask: |
22 0002 0000 .skip 2,0 |
23 .global BLFlags |
24 .global BLFlags |
27 BLFlags: |
28 0004 00 .skip 1,0 |
29 .global MissingMotor |
30 .global MissingMotor |
33 MissingMotor: |
34 0005 00 .skip 1,0 |
35 .global I2CTimeout |
36 .data |
39 I2CTimeout: |
40 0000 6400 .word 100 |
41 .global I2C_TransferActive |
42 .global I2C_TransferActive |
43 .section .bss |
46 I2C_TransferActive: |
47 0006 00 .skip 1,0 |
48 .global motor_read |
49 .global motor_read |
52 motor_read: |
53 0007 00 .skip 1,0 |
54 .global motor_write |
55 .global motor_write |
58 motor_write: |
59 0008 00 .skip 1,0 |
60 .global dac_channel |
61 .global dac_channel |
64 dac_channel: |
65 0009 00 .skip 1,0 |
66 .global twi_state |
67 .global twi_state |
70 twi_state: |
71 000a 00 .skip 1,0 |
72 .text |
73 .global I2C_Init |
75 I2C_Init: |
76 /* prologue: frame size=0 */ |
77 /* prologue end (size=0) */ |
78 0000 982F mov r25,r24 |
79 0002 2FB7 in r18,95-0x20 |
80 /* #APP */ |
81 0004 F894 cli |
82 /* #NOAPP */ |
83 0006 3998 cbi 39-0x20,1 |
84 0008 389A sbi 39-0x20,0 |
85 000a 88B1 in r24,40-0x20 |
86 000c 8360 ori r24,lo8(3) |
87 000e 88B9 out 40-0x20,r24 |
88 0010 8091 B900 lds r24,185 |
89 0014 8C7F andi r24,lo8(-4) |
90 0016 8093 B900 sts 185,r24 |
91 001a 8AE2 ldi r24,lo8(42) |
92 001c 8093 B800 sts 184,r24 |
93 0020 1092 0000 sts twi_state,__zero_reg__ |
94 0024 1092 0000 sts motor_write,__zero_reg__ |
95 0028 1092 0000 sts motor_read,__zero_reg__ |
96 002c 9923 tst r25 |
97 002e 79F0 breq .L2 |
98 0030 E0E0 ldi r30,lo8(Motor) |
99 0032 F0E0 ldi r31,hi8(Motor) |
100 0034 8BE0 ldi r24,lo8(11) |
101 .L6: |
102 0036 1082 st Z,__zero_reg__ |
103 0038 1182 std Z+1,__zero_reg__ |
104 003a 1282 std Z+2,__zero_reg__ |
105 003c 1382 std Z+3,__zero_reg__ |
106 003e 1482 std Z+4,__zero_reg__ |
107 0040 1582 std Z+5,__zero_reg__ |
108 0042 1682 std Z+6,__zero_reg__ |
109 0044 1782 std Z+7,__zero_reg__ |
110 0046 8150 subi r24,lo8(-(-1)) |
111 0048 3896 adiw r30,8 |
112 004a 87FF sbrs r24,7 |
113 004c F4CF rjmp .L6 |
114 .L2: |
115 /* #APP */ |
116 004e 7894 sei |
117 /* #NOAPP */ |
118 0050 2FBF out 95-0x20,r18 |
119 /* epilogue: frame size=0 */ |
120 0052 0895 ret |
121 /* epilogue end (size=1) */ |
122 /* function I2C_Init size 44 (43) */ |
124 .global I2C_Reset |
126 I2C_Reset: |
127 /* prologue: frame size=0 */ |
128 /* prologue end (size=0) */ |
129 0054 1092 0000 sts twi_state,__zero_reg__ |
130 0058 84E9 ldi r24,lo8(-108) |
131 005a 8093 BC00 sts 188,r24 |
132 005e 80E8 ldi r24,lo8(-128) |
133 0060 8093 BC00 sts 188,r24 |
134 0064 1092 BD00 sts 189,__zero_reg__ |
135 0068 1092 BA00 sts 186,__zero_reg__ |
136 006c 1092 BB00 sts 187,__zero_reg__ |
137 0070 1092 B900 sts 185,__zero_reg__ |
138 0074 1092 B800 sts 184,__zero_reg__ |
139 0078 1092 0000 sts I2C_TransferActive,__zero_reg__ |
140 007c 80E0 ldi r24,lo8(0) |
141 007e 0E94 0000 call I2C_Init |
142 0082 1092 BB00 sts 187,__zero_reg__ |
143 0086 85E8 ldi r24,lo8(-123) |
144 0088 8093 BC00 sts 188,r24 |
145 008c 8091 0000 lds r24,BLFlags |
146 0090 8260 ori r24,lo8(2) |
147 0092 8093 0000 sts BLFlags,r24 |
148 /* epilogue: frame size=0 */ |
149 0096 0895 ret |
150 /* epilogue end (size=1) */ |
151 /* function I2C_Reset size 34 (33) */ |
153 .lcomm missing_motor.0,1 |
154 .lcomm motor_read_temperature.1,1 |
155 .lcomm pBuff.2,2 |
156 .lcomm BuffLen.3,1 |
157 .global __vector_26 |
159 __vector_26: |
160 /* prologue: frame size=0 */ |
161 0098 1F92 push __zero_reg__ |
162 009a 0F92 push __tmp_reg__ |
163 009c 0FB6 in __tmp_reg__,__SREG__ |
164 009e 0F92 push __tmp_reg__ |
165 00a0 1124 clr __zero_reg__ |
166 00a2 2F93 push r18 |
167 00a4 3F93 push r19 |
168 00a6 4F93 push r20 |
169 00a8 5F93 push r21 |
170 00aa 8F93 push r24 |
171 00ac 9F93 push r25 |
172 00ae EF93 push r30 |
173 00b0 FF93 push r31 |
174 /* prologue end (size=13) */ |
175 00b2 8091 0000 lds r24,twi_state |
176 00b6 282F mov r18,r24 |
177 00b8 3327 clr r19 |
178 00ba 4427 clr r20 |
179 00bc 5527 clr r21 |
180 00be 8F5F subi r24,lo8(-(1)) |
181 00c0 8093 0000 sts twi_state,r24 |
182 00c4 F901 movw r30,r18 |
183 00c6 2731 cpi r18,23 |
184 00c8 3105 cpc r19,__zero_reg__ |
185 00ca 08F0 brlo .+2 |
186 00cc C2C2 rjmp .L72 |
187 00ce E050 subi r30,lo8(-(pm(.L73))) |
188 00d0 F040 sbci r31,hi8(-(pm(.L73))) |
189 00d2 0C94 0000 jmp __tablejump2__ |
190 .data |
191 .section .progmem.gcc_sw_table, "a", @progbits |
192 .p2align 1 |
193 .L73: |
194 0000 0000 .word pm(.L11) |
195 0002 0000 .word pm(.L17) |
196 0004 0000 .word pm(.L22) |
197 0006 0000 .word pm(.L27) |
198 0008 0000 .word pm(.L29) |
199 000a 0000 .word pm(.L33) |
200 000c 0000 .word pm(.L50) |
201 000e 0000 .word pm(.L72) |
202 0010 0000 .word pm(.L72) |
203 0012 0000 .word pm(.L72) |
204 0014 0000 .word pm(.L72) |
205 0016 0000 .word pm(.L72) |
206 0018 0000 .word pm(.L72) |
207 001a 0000 .word pm(.L72) |
208 001c 0000 .word pm(.L72) |
209 001e 0000 .word pm(.L72) |
210 0020 0000 .word pm(.L72) |
211 0022 0000 .word pm(.L72) |
212 0024 0000 .word pm(.L60) |
213 0026 0000 .word pm(.L61) |
214 0028 0000 .word pm(.L62) |
215 002a 0000 .word pm(.L68) |
216 002c 0000 .word pm(.L69) |
217 .text |
218 .L11: |
219 00d6 81E0 ldi r24,lo8(1) |
220 00d8 8093 0000 sts I2C_TransferActive,r24 |
221 00dc 09C0 rjmp .L76 |
222 .L75: |
223 00de 8091 0000 lds r24,motor_write |
224 00e2 8C30 cpi r24,lo8(12) |
225 00e4 90F4 brsh .L13 |
226 00e6 8091 0000 lds r24,motor_write |
227 00ea 8F5F subi r24,lo8(-(1)) |
228 00ec 8093 0000 sts motor_write,r24 |
229 .L76: |
230 00f0 8091 0000 lds r24,motor_write |
231 00f4 E82F mov r30,r24 |
232 00f6 FF27 clr r31 |
233 00f8 EE0F lsl r30 |
234 00fa FF1F rol r31 |
235 00fc EE0F lsl r30 |
236 00fe FF1F rol r31 |
237 0100 E050 subi r30,lo8(-(Mixer)) |
238 0102 F040 sbci r31,hi8(-(Mixer)) |
239 0104 8585 ldd r24,Z+13 |
240 0106 1816 cp __zero_reg__,r24 |
241 0108 54F7 brge .L75 |
242 .L13: |
243 010a 8091 0000 lds r24,motor_write |
244 010e 8C30 cpi r24,lo8(12) |
245 0110 70F0 brlo .L15 |
246 0112 1092 0000 sts (BLConfig_WriteMask)+1,__zero_reg__ |
247 0116 1092 0000 sts BLConfig_WriteMask,__zero_reg__ |
248 011a 1092 0000 sts motor_write,__zero_reg__ |
249 011e 85E0 ldi r24,lo8(5) |
250 0120 8093 0000 sts twi_state,r24 |
251 0124 8091 0000 lds r24,motor_read |
252 0128 880F lsl r24 |
253 012a 8D5A subi r24,lo8(-(83)) |
254 012c 04C0 rjmp .L84 |
255 .L15: |
256 012e 8091 0000 lds r24,motor_write |
257 0132 880F lsl r24 |
258 0134 8E5A subi r24,lo8(-(82)) |
259 .L84: |
260 0136 8093 BB00 sts 187,r24 |
261 013a 85E8 ldi r24,lo8(-123) |
262 013c 7FC2 rjmp .L80 |
263 .L17: |
264 013e 8091 0000 lds r24,motor_write |
265 0142 E82F mov r30,r24 |
266 0144 FF27 clr r31 |
267 0146 83E0 ldi r24,3 |
268 0148 EE0F 1: lsl r30 |
269 014a FF1F rol r31 |
270 014c 8A95 dec r24 |
271 014e E1F7 brne 1b |
272 0150 E050 subi r30,lo8(-(Motor)) |
273 0152 F040 sbci r31,hi8(-(Motor)) |
274 0154 8181 ldd r24,Z+1 |
275 0156 8093 BB00 sts 187,r24 |
276 015a 85E8 ldi r24,lo8(-123) |
277 015c 8093 BC00 sts 188,r24 |
278 0160 8091 0000 lds r24,motor_write |
279 0164 E82F mov r30,r24 |
280 0166 FF27 clr r31 |
281 0168 EE0F lsl r30 |
282 016a FF1F rol r31 |
283 016c EE0F lsl r30 |
284 016e FF1F rol r31 |
285 0170 EE0F lsl r30 |
286 0172 FF1F rol r31 |
287 0174 E050 subi r30,lo8(-(Motor)) |
288 0176 F040 sbci r31,hi8(-(Motor)) |
289 0178 8081 ld r24,Z |
290 017a 80FF sbrs r24,0 |
291 017c 91C0 rjmp .L25 |
292 017e 8091 0000 lds r24,motor_write |
293 0182 E82F mov r30,r24 |
294 0184 FF27 clr r31 |
295 0186 EE0F lsl r30 |
296 0188 FF1F rol r31 |
297 018a EE0F lsl r30 |
298 018c FF1F rol r31 |
299 018e EE0F lsl r30 |
300 0190 FF1F rol r31 |
301 0192 E050 subi r30,lo8(-(Motor)) |
302 0194 F040 sbci r31,hi8(-(Motor)) |
303 0196 8281 ldd r24,Z+2 |
304 0198 8823 tst r24 |
305 019a 29F0 breq .L21 |
306 019c 8091 0000 lds r24,RequiredMotors |
307 01a0 8730 cpi r24,lo8(7) |
308 01a2 08F4 brsh .+2 |
309 01a4 6CC2 rjmp .L9 |
310 .L21: |
311 01a6 8091 0000 lds r24,BLConfig_WriteMask |
312 01aa 9091 0000 lds r25,(BLConfig_WriteMask)+1 |
313 01ae 892B or r24,r25 |
314 01b0 09F0 breq .+2 |
315 01b2 65C2 rjmp .L9 |
316 01b4 8091 0000 lds r24,BLConfig_ReadMask |
317 01b8 9091 0000 lds r25,(BLConfig_ReadMask)+1 |
318 01bc 892B or r24,r25 |
319 01be 09F0 breq .+2 |
320 01c0 5EC2 rjmp .L9 |
321 01c2 6EC0 rjmp .L25 |
322 .L22: |
323 01c4 8091 0000 lds r24,motor_write |
324 01c8 21E0 ldi r18,lo8(1) |
325 01ca 30E0 ldi r19,hi8(1) |
326 01cc 02C0 rjmp 2f |
327 01ce 220F 1: lsl r18 |
328 01d0 331F rol r19 |
329 01d2 8A95 2: dec r24 |
330 01d4 E2F7 brpl 1b |
331 01d6 8091 0000 lds r24,BLConfig_ReadMask |
332 01da 9091 0000 lds r25,(BLConfig_ReadMask)+1 |
333 01de 2823 and r18,r24 |
334 01e0 3923 and r19,r25 |
335 01e2 232B or r18,r19 |
336 01e4 79F0 breq .L23 |
337 01e6 8091 0000 lds r24,motor_write |
338 01ea E82F mov r30,r24 |
339 01ec FF27 clr r31 |
340 01ee EE0F lsl r30 |
341 01f0 FF1F rol r31 |
342 01f2 EE0F lsl r30 |
343 01f4 FF1F rol r31 |
344 01f6 EE0F lsl r30 |
345 01f8 FF1F rol r31 |
346 01fa E050 subi r30,lo8(-(Motor)) |
347 01fc F040 sbci r31,hi8(-(Motor)) |
348 01fe 80E1 ldi r24,lo8(16) |
349 0200 8483 std Z+4,r24 |
350 0202 0DC0 rjmp .L24 |
351 .L23: |
352 0204 8091 0000 lds r24,motor_write |
353 0208 E82F mov r30,r24 |
354 020a FF27 clr r31 |
355 020c EE0F lsl r30 |
356 020e FF1F rol r31 |
357 0210 EE0F lsl r30 |
358 0212 FF1F rol r31 |
359 0214 EE0F lsl r30 |
360 0216 FF1F rol r31 |
361 0218 E050 subi r30,lo8(-(Motor)) |
362 021a F040 sbci r31,hi8(-(Motor)) |
363 021c 1482 std Z+4,__zero_reg__ |
364 .L24: |
365 021e 8091 0000 lds r24,motor_write |
366 0222 E82F mov r30,r24 |
367 0224 FF27 clr r31 |
368 0226 53E0 ldi r21,3 |
369 0228 EE0F 1: lsl r30 |
370 022a FF1F rol r31 |
371 022c 5A95 dec r21 |
372 022e E1F7 brne 1b |
373 0230 E050 subi r30,lo8(-(Motor)) |
374 0232 F040 sbci r31,hi8(-(Motor)) |
375 0234 8481 ldd r24,Z+4 |
376 0236 282F mov r18,r24 |
377 0238 3327 clr r19 |
378 023a 43E0 ldi r20,3 |
379 023c 220F 1: lsl r18 |
380 023e 331F rol r19 |
381 0240 4A95 dec r20 |
382 0242 E1F7 brne 1b |
383 0244 8091 0000 lds r24,motor_write |
384 0248 E82F mov r30,r24 |
385 024a FF27 clr r31 |
386 024c 93E0 ldi r25,3 |
387 024e EE0F 1: lsl r30 |
388 0250 FF1F rol r31 |
389 0252 9A95 dec r25 |
390 0254 E1F7 brne 1b |
391 0256 E050 subi r30,lo8(-(Motor)) |
392 0258 F040 sbci r31,hi8(-(Motor)) |
393 025a 8281 ldd r24,Z+2 |
394 025c 8770 andi r24,lo8(7) |
395 025e 822B or r24,r18 |
396 0260 8093 BB00 sts 187,r24 |
397 0264 85E8 ldi r24,lo8(-123) |
398 0266 8093 BC00 sts 188,r24 |
399 026a 2091 0000 lds r18,motor_write |
400 026e 81E0 ldi r24,lo8(1) |
401 0270 90E0 ldi r25,hi8(1) |
402 0272 02C0 rjmp 2f |
403 0274 880F 1: lsl r24 |
404 0276 991F rol r25 |
405 0278 2A95 2: dec r18 |
406 027a E2F7 brpl 1b |
407 027c 2091 0000 lds r18,BLConfig_WriteMask |
408 0280 3091 0000 lds r19,(BLConfig_WriteMask)+1 |
409 0284 8223 and r24,r18 |
410 0286 9323 and r25,r19 |
411 0288 892B or r24,r25 |
412 028a 51F0 breq .L25 |
413 028c 80E0 ldi r24,lo8(BLConfig) |
414 028e 90E0 ldi r25,hi8(BLConfig) |
415 0290 9093 0000 sts (pBuff.2)+1,r25 |
416 0294 8093 0000 sts pBuff.2,r24 |
417 0298 88E0 ldi r24,lo8(8) |
418 029a 8093 0000 sts BuffLen.3,r24 |
419 029e EFC1 rjmp .L9 |
420 .L25: |
421 02a0 84E0 ldi r24,lo8(4) |
422 02a2 89C1 rjmp .L82 |
423 .L27: |
424 02a4 E091 0000 lds r30,pBuff.2 |
425 02a8 F091 0000 lds r31,(pBuff.2)+1 |
426 02ac 8191 ld r24,Z+ |
427 02ae 8093 BB00 sts 187,r24 |
428 02b2 85E8 ldi r24,lo8(-123) |
429 02b4 8093 BC00 sts 188,r24 |
430 02b8 F093 0000 sts (pBuff.2)+1,r31 |
431 02bc E093 0000 sts pBuff.2,r30 |
432 02c0 8091 0000 lds r24,BuffLen.3 |
433 02c4 8150 subi r24,lo8(-(-1)) |
434 02c6 8093 0000 sts BuffLen.3,r24 |
435 02ca 8823 tst r24 |
436 02cc 09F4 brne .+2 |
437 02ce D7C1 rjmp .L9 |
438 02d0 83E0 ldi r24,lo8(3) |
439 02d2 71C1 rjmp .L82 |
440 .L29: |
441 02d4 8091 B900 lds r24,185 |
442 02d8 8033 cpi r24,lo8(48) |
443 02da 51F5 brne .L30 |
444 02dc 8091 0000 lds r24,missing_motor.0 |
445 02e0 8823 tst r24 |
446 02e2 29F4 brne .L31 |
447 02e4 8091 0000 lds r24,motor_write |
448 02e8 8F5F subi r24,lo8(-(1)) |
449 02ea 8093 0000 sts missing_motor.0,r24 |
450 .L31: |
451 02ee 8091 0000 lds r24,motor_write |
452 02f2 E82F mov r30,r24 |
453 02f4 FF27 clr r31 |
454 02f6 83E0 ldi r24,3 |
455 02f8 EE0F 1: lsl r30 |
456 02fa FF1F rol r31 |
457 02fc 8A95 dec r24 |
458 02fe E1F7 brne 1b |
459 0300 E050 subi r30,lo8(-(Motor)) |
460 0302 F040 sbci r31,hi8(-(Motor)) |
461 0304 8381 ldd r24,Z+3 |
462 0306 9927 clr r25 |
463 0308 8F77 andi r24,lo8(127) |
464 030a 9070 andi r25,hi8(127) |
465 030c 8F37 cpi r24,127 |
466 030e 9105 cpc r25,__zero_reg__ |
467 0310 7CF4 brge .L30 |
468 0312 8091 0000 lds r24,motor_write |
469 0316 E82F mov r30,r24 |
470 0318 FF27 clr r31 |
471 031a EE0F lsl r30 |
472 031c FF1F rol r31 |
473 031e EE0F lsl r30 |
474 0320 FF1F rol r31 |
475 0322 EE0F lsl r30 |
476 0324 FF1F rol r31 |
477 0326 E050 subi r30,lo8(-(Motor)) |
478 0328 F040 sbci r31,hi8(-(Motor)) |
479 032a 8381 ldd r24,Z+3 |
480 032c 8F5F subi r24,lo8(-(1)) |
481 032e 8383 std Z+3,r24 |
482 .L30: |
483 0330 1092 0000 sts twi_state,__zero_reg__ |
484 0334 84E9 ldi r24,lo8(-108) |
485 0336 8093 BC00 sts 188,r24 |
486 033a 8AE0 ldi r24,lo8(10) |
487 033c 90E0 ldi r25,hi8(10) |
488 033e 9093 0000 sts (I2CTimeout)+1,r25 |
489 0342 8093 0000 sts I2CTimeout,r24 |
490 0346 8091 0000 lds r24,motor_write |
491 034a 8F5F subi r24,lo8(-(1)) |
492 034c 8093 0000 sts motor_write,r24 |
493 0350 1092 0000 sts twi_state,__zero_reg__ |
494 0354 6DC1 rjmp .L85 |
495 .L33: |
496 0356 8091 B900 lds r24,185 |
497 035a 8034 cpi r24,lo8(64) |
498 035c C9F1 breq .L34 |
499 035e 8091 0000 lds r24,motor_read |
500 0362 E82F mov r30,r24 |
501 0364 FF27 clr r31 |
502 0366 EE0F lsl r30 |
503 0368 FF1F rol r31 |
504 036a EE0F lsl r30 |
505 036c FF1F rol r31 |
506 036e EE0F lsl r30 |
507 0370 FF1F rol r31 |
508 0372 E050 subi r30,lo8(-(Motor)) |
509 0374 F040 sbci r31,hi8(-(Motor)) |
510 0376 8381 ldd r24,Z+3 |
511 0378 8F77 andi r24,lo8(127) |
512 037a 8383 std Z+3,r24 |
513 037c 8091 0000 lds r24,motor_read |
514 0380 8F5F subi r24,lo8(-(1)) |
515 0382 8093 0000 sts motor_read,r24 |
516 0386 8091 0000 lds r24,motor_read |
517 038a 8C30 cpi r24,lo8(12) |
518 038c A0F0 brlo .L35 |
519 038e 1092 0000 sts motor_read,__zero_reg__ |
520 0392 1092 0000 sts (BLConfig_ReadMask)+1,__zero_reg__ |
521 0396 1092 0000 sts BLConfig_ReadMask,__zero_reg__ |
522 039a 8091 0000 lds r24,motor_read_temperature.1 |
523 039e 8F5F subi r24,lo8(-(1)) |
524 03a0 8093 0000 sts motor_read_temperature.1,r24 |
525 03a4 8C30 cpi r24,lo8(12) |
526 03a6 38F0 brlo .L35 |
527 03a8 1092 0000 sts motor_read_temperature.1,__zero_reg__ |
528 03ac 8091 0000 lds r24,BLFlags |
529 03b0 8D7F andi r24,lo8(-3) |
530 03b2 8093 0000 sts BLFlags,r24 |
531 .L35: |
532 03b6 8091 0000 lds r24,BLFlags |
533 03ba 8160 ori r24,lo8(1) |
534 03bc 8093 0000 sts BLFlags,r24 |
535 03c0 1092 0000 sts twi_state,__zero_reg__ |
536 03c4 84E9 ldi r24,lo8(-108) |
537 03c6 8093 BC00 sts 188,r24 |
538 03ca 1092 0000 sts I2C_TransferActive,__zero_reg__ |
539 03ce 73C0 rjmp .L37 |
540 .L34: |
541 03d0 8091 0000 lds r24,motor_read |
542 03d4 E82F mov r30,r24 |
543 03d6 FF27 clr r31 |
544 03d8 EE0F lsl r30 |
545 03da FF1F rol r31 |
546 03dc EE0F lsl r30 |
547 03de FF1F rol r31 |
548 03e0 EE0F lsl r30 |
549 03e2 FF1F rol r31 |
550 03e4 E050 subi r30,lo8(-(Motor)) |
551 03e6 F040 sbci r31,hi8(-(Motor)) |
552 03e8 8381 ldd r24,Z+3 |
553 03ea 8068 ori r24,lo8(-128) |
554 03ec 8383 std Z+3,r24 |
555 03ee 8091 0000 lds r24,motor_read |
556 03f2 E82F mov r30,r24 |
557 03f4 FF27 clr r31 |
558 03f6 EE0F lsl r30 |
559 03f8 FF1F rol r31 |
560 03fa EE0F lsl r30 |
561 03fc FF1F rol r31 |
562 03fe EE0F lsl r30 |
563 0400 FF1F rol r31 |
564 0402 E050 subi r30,lo8(-(Motor)) |
565 0404 F040 sbci r31,hi8(-(Motor)) |
566 0406 8081 ld r24,Z |
567 0408 80FF sbrs r24,0 |
568 040a 2FC0 rjmp .L38 |
569 040c 8091 0000 lds r24,motor_read |
570 0410 E82F mov r30,r24 |
571 0412 FF27 clr r31 |
572 0414 53E0 ldi r21,3 |
573 0416 EE0F 1: lsl r30 |
574 0418 FF1F rol r31 |
575 041a 5A95 dec r21 |
576 041c E1F7 brne 1b |
577 041e E050 subi r30,lo8(-(Motor)) |
578 0420 F040 sbci r31,hi8(-(Motor)) |
579 0422 8481 ldd r24,Z+4 |
580 0424 9927 clr r25 |
581 0426 0097 sbiw r24,0 |
582 0428 51F0 breq .L41 |
583 042a 4097 sbiw r24,16 |
584 042c D9F5 brne .L44 |
585 042e 80E0 ldi r24,lo8(BLConfig) |
586 0430 90E0 ldi r25,hi8(BLConfig) |
587 0432 9093 0000 sts (pBuff.2)+1,r25 |
588 0436 8093 0000 sts pBuff.2,r24 |
589 043a 88E0 ldi r24,lo8(8) |
590 043c 31C0 rjmp .L77 |
591 .L41: |
592 043e 8091 0000 lds r24,motor_read |
593 0442 9927 clr r25 |
594 0444 43E0 ldi r20,3 |
595 0446 880F 1: lsl r24 |
596 0448 991F rol r25 |
597 044a 4A95 dec r20 |
598 044c E1F7 brne 1b |
599 044e 8050 subi r24,lo8(-(Motor+5)) |
600 0450 9040 sbci r25,hi8(-(Motor+5)) |
601 0452 9093 0000 sts (pBuff.2)+1,r25 |
602 0456 8093 0000 sts pBuff.2,r24 |
603 045a 9091 0000 lds r25,motor_read |
604 045e 8091 0000 lds r24,motor_read_temperature.1 |
605 0462 9817 cp r25,r24 |
606 0464 E1F4 brne .L45 |
607 0466 83E0 ldi r24,lo8(3) |
608 0468 1BC0 rjmp .L77 |
609 .L38: |
610 046a 8091 0000 lds r24,motor_read |
611 046e 9927 clr r25 |
612 0470 33E0 ldi r19,3 |
613 0472 880F 1: lsl r24 |
614 0474 991F rol r25 |
615 0476 3A95 dec r19 |
616 0478 E1F7 brne 1b |
617 047a 8050 subi r24,lo8(-(Motor+5)) |
618 047c 9040 sbci r25,hi8(-(Motor+5)) |
619 047e 9093 0000 sts (pBuff.2)+1,r25 |
620 0482 8093 0000 sts pBuff.2,r24 |
621 0486 8091 0000 lds r24,BLFlags |
622 048a 81FD sbrc r24,1 |
623 048c 06C0 rjmp .L46 |
624 048e 9091 0000 lds r25,motor_read |
625 0492 8091 0000 lds r24,motor_read_temperature.1 |
626 0496 9817 cp r25,r24 |
627 0498 11F4 brne .L45 |
628 .L46: |
629 049a 82E0 ldi r24,lo8(2) |
630 049c 01C0 rjmp .L77 |
631 .L45: |
632 049e 81E0 ldi r24,lo8(1) |
633 .L77: |
634 04a0 8093 0000 sts BuffLen.3,r24 |
635 .L44: |
636 04a4 8091 0000 lds r24,BuffLen.3 |
637 04a8 8130 cpi r24,lo8(1) |
638 04aa 11F4 brne .L48 |
639 04ac 85E8 ldi r24,lo8(-123) |
640 04ae 01C0 rjmp .L78 |
641 .L48: |
642 04b0 85EC ldi r24,lo8(-59) |
643 .L78: |
644 04b2 8093 BC00 sts 188,r24 |
645 .L37: |
646 04b6 8091 0000 lds r24,missing_motor.0 |
647 04ba 8093 0000 sts MissingMotor,r24 |
648 04be 1092 0000 sts missing_motor.0,__zero_reg__ |
649 04c2 DDC0 rjmp .L9 |
650 .L50: |
651 04c4 E091 0000 lds r30,pBuff.2 |
652 04c8 F091 0000 lds r31,(pBuff.2)+1 |
653 04cc 8091 BB00 lds r24,187 |
654 04d0 8083 st Z,r24 |
655 04d2 8091 0000 lds r24,pBuff.2 |
656 04d6 9091 0000 lds r25,(pBuff.2)+1 |
657 04da 0196 adiw r24,1 |
658 04dc 9093 0000 sts (pBuff.2)+1,r25 |
659 04e0 8093 0000 sts pBuff.2,r24 |
660 04e4 8091 0000 lds r24,BuffLen.3 |
661 04e8 8150 subi r24,lo8(-(-1)) |
662 04ea 8093 0000 sts BuffLen.3,r24 |
663 04ee 8230 cpi r24,lo8(2) |
664 04f0 10F0 brlo .L51 |
665 04f2 85EC ldi r24,lo8(-59) |
666 04f4 5DC0 rjmp .L79 |
667 .L51: |
668 04f6 8130 cpi r24,lo8(1) |
669 04f8 11F4 brne .L53 |
670 04fa 85E8 ldi r24,lo8(-123) |
671 04fc 59C0 rjmp .L79 |
672 .L53: |
673 04fe 8091 0000 lds r24,BLFlags |
674 0502 81FF sbrs r24,1 |
675 0504 2DC0 rjmp .L55 |
676 0506 8091 0000 lds r24,FC_StatusFlags |
677 050a 80FD sbrc r24,0 |
678 050c 1DC0 rjmp .L56 |
679 050e 8091 0000 lds r24,motor_read |
680 0512 E82F mov r30,r24 |
681 0514 FF27 clr r31 |
682 0516 23E0 ldi r18,3 |
683 0518 EE0F 1: lsl r30 |
684 051a FF1F rol r31 |
685 051c 2A95 dec r18 |
686 051e E1F7 brne 1b |
687 0520 E050 subi r30,lo8(-(Motor)) |
688 0522 F040 sbci r31,hi8(-(Motor)) |
689 0524 8681 ldd r24,Z+6 |
690 0526 8A3F cpi r24,lo8(-6) |
691 0528 79F4 brne .L56 |
692 052a 8091 0000 lds r24,motor_read |
693 052e E82F mov r30,r24 |
694 0530 FF27 clr r31 |
695 0532 93E0 ldi r25,3 |
696 0534 EE0F 1: lsl r30 |
697 0536 FF1F rol r31 |
698 0538 9A95 dec r25 |
699 053a E1F7 brne 1b |
700 053c E050 subi r30,lo8(-(Motor)) |
701 053e F040 sbci r31,hi8(-(Motor)) |
702 0540 8081 ld r24,Z |
703 0542 8160 ori r24,lo8(1) |
704 0544 8083 st Z,r24 |
705 0546 0CC0 rjmp .L55 |
706 .L56: |
707 0548 8091 0000 lds r24,motor_read |
708 054c E82F mov r30,r24 |
709 054e FF27 clr r31 |
710 0550 83E0 ldi r24,3 |
711 0552 EE0F 1: lsl r30 |
712 0554 FF1F rol r31 |
713 0556 8A95 dec r24 |
714 0558 E1F7 brne 1b |
715 055a E050 subi r30,lo8(-(Motor)) |
716 055c F040 sbci r31,hi8(-(Motor)) |
717 055e 1082 st Z,__zero_reg__ |
718 .L55: |
719 0560 8091 0000 lds r24,motor_read |
720 0564 8F5F subi r24,lo8(-(1)) |
721 0566 8093 0000 sts motor_read,r24 |
722 056a 8091 0000 lds r24,motor_read |
723 056e 8C30 cpi r24,lo8(12) |
724 0570 A0F0 brlo .L58 |
725 0572 1092 0000 sts motor_read,__zero_reg__ |
726 0576 1092 0000 sts (BLConfig_ReadMask)+1,__zero_reg__ |
727 057a 1092 0000 sts BLConfig_ReadMask,__zero_reg__ |
728 057e 8091 0000 lds r24,motor_read_temperature.1 |
729 0582 8F5F subi r24,lo8(-(1)) |
730 0584 8093 0000 sts motor_read_temperature.1,r24 |
731 0588 8C30 cpi r24,lo8(12) |
732 058a 38F0 brlo .L58 |
733 058c 1092 0000 sts motor_read_temperature.1,__zero_reg__ |
734 0590 8091 0000 lds r24,BLFlags |
735 0594 8D7F andi r24,lo8(-3) |
736 0596 8093 0000 sts BLFlags,r24 |
737 .L58: |
738 059a 1092 0000 sts twi_state,__zero_reg__ |
739 059e 84E9 ldi r24,lo8(-108) |
740 05a0 8093 BC00 sts 188,r24 |
741 05a4 8091 0000 lds r24,BLFlags |
742 05a8 8160 ori r24,lo8(1) |
743 05aa 8093 0000 sts BLFlags,r24 |
744 05ae 65C0 rjmp .L81 |
745 .L79: |
746 05b0 8093 BC00 sts 188,r24 |
747 05b4 86E0 ldi r24,lo8(6) |
748 .L82: |
749 05b6 8093 0000 sts twi_state,r24 |
750 05ba 61C0 rjmp .L9 |
751 .L60: |
752 05bc 88E9 ldi r24,lo8(-104) |
753 05be BBCD rjmp .L84 |
754 .L61: |
755 05c0 8091 0000 lds r24,dac_channel |
756 05c4 880F lsl r24 |
757 05c6 805F subi r24,lo8(-(16)) |
758 05c8 B6CD rjmp .L84 |
759 .L62: |
760 05ca 8091 0000 lds r24,dac_channel |
761 05ce 9927 clr r25 |
762 05d0 8130 cpi r24,1 |
763 05d2 9105 cpc r25,__zero_reg__ |
764 05d4 61F0 breq .L65 |
765 05d6 8230 cpi r24,2 |
766 05d8 9105 cpc r25,__zero_reg__ |
767 05da 1CF4 brge .L67 |
768 05dc 892B or r24,r25 |
769 05de 21F0 breq .L64 |
770 05e0 4EC0 rjmp .L9 |
771 .L67: |
772 05e2 0297 sbiw r24,2 |
773 05e4 39F0 breq .L66 |
774 05e6 4BC0 rjmp .L9 |
775 .L64: |
776 05e8 8091 0000 lds r24,AnalogOffsetNick |
777 05ec A4CD rjmp .L84 |
778 .L65: |
779 05ee 8091 0000 lds r24,AnalogOffsetRoll |
780 05f2 A1CD rjmp .L84 |
781 .L66: |
782 05f4 8091 0000 lds r24,AnalogOffsetGier |
783 05f8 9ECD rjmp .L84 |
784 .L68: |
785 05fa 80E8 ldi r24,lo8(-128) |
786 05fc 9CCD rjmp .L84 |
787 .L69: |
788 05fe 1092 0000 sts twi_state,__zero_reg__ |
789 0602 84E9 ldi r24,lo8(-108) |
790 0604 8093 BC00 sts 188,r24 |
791 0608 1092 0000 sts I2C_TransferActive,__zero_reg__ |
792 060c 8AE0 ldi r24,lo8(10) |
793 060e 90E0 ldi r25,hi8(10) |
794 0610 9093 0000 sts (I2CTimeout)+1,r25 |
795 0614 8093 0000 sts I2CTimeout,r24 |
796 0618 8091 0000 lds r24,dac_channel |
797 061c 8230 cpi r24,lo8(2) |
798 061e 88F4 brsh .L70 |
799 0620 8091 0000 lds r24,dac_channel |
800 0624 8F5F subi r24,lo8(-(1)) |
801 0626 8093 0000 sts dac_channel,r24 |
802 062a 82E1 ldi r24,lo8(18) |
803 062c 8093 0000 sts twi_state,r24 |
804 .L85: |
805 0630 8091 0000 lds r24,BLFlags |
806 0634 8E7F andi r24,lo8(-2) |
807 0636 8093 0000 sts BLFlags,r24 |
808 063a 85EA ldi r24,lo8(-91) |
809 .L80: |
810 063c 8093 BC00 sts 188,r24 |
811 0640 1EC0 rjmp .L9 |
812 .L70: |
813 0642 1092 0000 sts dac_channel,__zero_reg__ |
814 0646 8091 0000 lds r24,BLFlags |
815 064a 8160 ori r24,lo8(1) |
816 064c 8093 0000 sts BLFlags,r24 |
817 0650 16C0 rjmp .L9 |
818 .L72: |
819 0652 1092 0000 sts twi_state,__zero_reg__ |
820 0656 84E9 ldi r24,lo8(-108) |
821 0658 8093 BC00 sts 188,r24 |
822 065c 8091 0000 lds r24,BLFlags |
823 0660 8160 ori r24,lo8(1) |
824 0662 8093 0000 sts BLFlags,r24 |
825 0666 8AE0 ldi r24,lo8(10) |
826 0668 90E0 ldi r25,hi8(10) |
827 066a 9093 0000 sts (I2CTimeout)+1,r25 |
828 066e 8093 0000 sts I2CTimeout,r24 |
829 0672 1092 0000 sts motor_write,__zero_reg__ |
830 0676 1092 0000 sts motor_read,__zero_reg__ |
831 .L81: |
832 067a 1092 0000 sts I2C_TransferActive,__zero_reg__ |
833 .L9: |
834 /* epilogue: frame size=0 */ |
835 067e FF91 pop r31 |
836 0680 EF91 pop r30 |
837 0682 9F91 pop r25 |
838 0684 8F91 pop r24 |
839 0686 5F91 pop r21 |
840 0688 4F91 pop r20 |
841 068a 3F91 pop r19 |
842 068c 2F91 pop r18 |
843 068e 0F90 pop __tmp_reg__ |
844 0690 0FBE out __SREG__,__tmp_reg__ |
845 0692 0F90 pop __tmp_reg__ |
846 0694 1F90 pop __zero_reg__ |
847 0696 1895 reti |
848 /* epilogue end (size=13) */ |
849 /* function __vector_26 size 796 (770) */ |
851 .global I2C_WriteBLConfig |
853 I2C_WriteBLConfig: |
854 /* prologue: frame size=0 */ |
855 0698 1F93 push r17 |
856 069a CF93 push r28 |
857 069c DF93 push r29 |
858 /* prologue end (size=3) */ |
859 069e 182F mov r17,r24 |
860 06a0 8091 0000 lds r24,MotorenEin |
861 06a4 8823 tst r24 |
862 06a6 21F4 brne .L88 |
863 06a8 8091 0000 lds r24,PC_MotortestActive |
864 06ac 8823 tst r24 |
865 06ae 19F0 breq .L87 |
866 .L88: |
867 06b0 81E0 ldi r24,lo8(1) |
868 06b2 90E0 ldi r25,hi8(1) |
869 06b4 97C0 rjmp .L86 |
870 .L87: |
871 06b6 1D30 cpi r17,lo8(13) |
872 06b8 08F0 brlo .+2 |
873 06ba 92C0 rjmp .L115 |
874 06bc 1123 tst r17 |
875 06be B1F0 breq .L90 |
876 06c0 E12F mov r30,r17 |
877 06c2 FF27 clr r31 |
878 06c4 23E0 ldi r18,3 |
879 06c6 EE0F 1: lsl r30 |
880 06c8 FF1F rol r31 |
881 06ca 2A95 dec r18 |
882 06cc E1F7 brne 1b |
883 06ce E050 subi r30,lo8(-(Motor)) |
884 06d0 F040 sbci r31,hi8(-(Motor)) |
885 06d2 3597 sbiw r30,5 |
886 06d4 8081 ld r24,Z |
887 06d6 3596 adiw r30,5 |
888 06d8 8823 tst r24 |
889 06da 0CF0 brlt .+2 |
890 06dc 81C0 rjmp .L115 |
891 06de 3897 sbiw r30,8 |
892 06e0 8081 ld r24,Z |
893 06e2 80FD sbrc r24,0 |
894 06e4 03C0 rjmp .L90 |
895 06e6 83E0 ldi r24,lo8(3) |
896 06e8 90E0 ldi r25,hi8(3) |
897 06ea 7CC0 rjmp .L86 |
898 .L90: |
899 06ec 8091 0000 lds r24,BLConfig |
900 06f0 8230 cpi r24,lo8(2) |
901 06f2 19F0 breq .L93 |
902 06f4 84E0 ldi r24,lo8(4) |
903 06f6 90E0 ldi r25,hi8(4) |
904 06f8 75C0 rjmp .L86 |
905 .L93: |
906 06fa 67E0 ldi r22,lo8(7) |
907 06fc 70E0 ldi r23,hi8(7) |
908 06fe 80E0 ldi r24,lo8(BLConfig) |
909 0700 90E0 ldi r25,hi8(BLConfig) |
910 0702 0E94 0000 call RAM_Checksum |
911 0706 9091 0000 lds r25,BLConfig+7 |
912 070a 8917 cp r24,r25 |
913 070c 19F0 breq .L94 |
914 070e 85E0 ldi r24,lo8(5) |
915 0710 90E0 ldi r25,hi8(5) |
916 0712 68C0 rjmp .L86 |
917 .L94: |
918 0714 80ED ldi r24,lo8(2000) |
919 0716 97E0 ldi r25,hi8(2000) |
920 0718 0E94 0000 call SetDelay |
921 071c EC01 movw r28,r24 |
922 .L95: |
923 071e 8091 0000 lds r24,BLFlags |
924 0722 80FD sbrc r24,0 |
925 0724 05C0 rjmp .L96 |
926 0726 CE01 movw r24,r28 |
927 0728 0E94 0000 call CheckDelay |
928 072c 8823 tst r24 |
929 072e B9F3 breq .L95 |
930 .L96: |
931 0730 1123 tst r17 |
932 0732 19F4 brne .L98 |
933 0734 8FEF ldi r24,lo8(255) |
934 0736 90E0 ldi r25,hi8(255) |
935 0738 0BC0 rjmp .L114 |
936 .L98: |
937 073a 212F mov r18,r17 |
938 073c 3327 clr r19 |
939 073e 2150 subi r18,lo8(-(-1)) |
940 0740 3040 sbci r19,hi8(-(-1)) |
941 0742 81E0 ldi r24,lo8(1) |
942 0744 90E0 ldi r25,hi8(1) |
943 0746 02C0 rjmp 2f |
944 0748 880F 1: lsl r24 |
945 074a 991F rol r25 |
946 074c 2A95 2: dec r18 |
947 074e E2F7 brpl 1b |
948 .L114: |
949 0750 9093 0000 sts (BLConfig_WriteMask)+1,r25 |
950 0754 8093 0000 sts BLConfig_WriteMask,r24 |
951 0758 A1E0 ldi r26,lo8(1) |
952 075a B0E0 ldi r27,hi8(1) |
953 075c E0E0 ldi r30,lo8(Motor) |
954 075e F0E0 ldi r31,hi8(Motor) |
955 0760 40E0 ldi r20,lo8(0) |
956 0762 50E0 ldi r21,hi8(0) |
957 0764 6BE0 ldi r22,lo8(11) |
958 .L104: |
959 0766 CD01 movw r24,r26 |
960 0768 042E mov r0,r20 |
961 076a 02C0 rjmp 2f |
962 076c 880F 1: lsl r24 |
963 076e 991F rol r25 |
964 0770 0A94 2: dec r0 |
965 0772 E2F7 brpl 1b |
966 0774 2091 0000 lds r18,BLConfig_WriteMask |
967 0778 3091 0000 lds r19,(BLConfig_WriteMask)+1 |
968 077c 8223 and r24,r18 |
969 077e 9323 and r25,r19 |
970 0780 892B or r24,r25 |
971 0782 11F0 breq .L102 |
972 0784 1182 std Z+1,__zero_reg__ |
973 0786 1282 std Z+2,__zero_reg__ |
974 .L102: |
975 0788 6150 subi r22,lo8(-(-1)) |
976 078a 4F5F subi r20,lo8(-(1)) |
977 078c 5F4F sbci r21,hi8(-(1)) |
978 078e 3896 adiw r30,8 |
979 0790 67FF sbrs r22,7 |
980 0792 E9CF rjmp .L104 |
981 0794 1092 0000 sts motor_write,__zero_reg__ |
982 .L105: |
983 0798 1092 0000 sts twi_state,__zero_reg__ |
984 079c 8091 0000 lds r24,BLFlags |
985 07a0 8E7F andi r24,lo8(-2) |
986 07a2 8093 0000 sts BLFlags,r24 |
987 07a6 85EA ldi r24,lo8(-91) |
988 07a8 8093 BC00 sts 188,r24 |
989 .L108: |
990 07ac 8091 0000 lds r24,BLFlags |
991 07b0 80FD sbrc r24,0 |
992 07b2 05C0 rjmp .L109 |
993 07b4 CE01 movw r24,r28 |
994 07b6 0E94 0000 call CheckDelay |
995 07ba 8823 tst r24 |
996 07bc B9F3 breq .L108 |
997 .L109: |
998 07be 8091 0000 lds r24,BLConfig_WriteMask |
999 07c2 9091 0000 lds r25,(BLConfig_WriteMask)+1 |
1000 07c6 892B or r24,r25 |
1001 07c8 29F0 breq .L106 |
1002 07ca CE01 movw r24,r28 |
1003 07cc 0E94 0000 call CheckDelay |
1004 07d0 8823 tst r24 |
1005 07d2 11F3 breq .L105 |
1006 .L106: |
1007 07d4 8091 0000 lds r24,BLConfig_WriteMask |
1008 07d8 9091 0000 lds r25,(BLConfig_WriteMask)+1 |
1009 07dc 0097 sbiw r24,0 |
1010 07de 11F0 breq .L86 |
1011 .L115: |
1012 07e0 82E0 ldi r24,lo8(2) |
1013 07e2 90E0 ldi r25,hi8(2) |
1014 .L86: |
1015 /* epilogue: frame size=0 */ |
1016 07e4 DF91 pop r29 |
1017 07e6 CF91 pop r28 |
1018 07e8 1F91 pop r17 |
1019 07ea 0895 ret |
1020 /* epilogue end (size=4) */ |
1021 /* function I2C_WriteBLConfig size 172 (165) */ |
1023 .global I2C_ReadBLConfig |
1025 I2C_ReadBLConfig: |
1026 /* prologue: frame size=0 */ |
1027 07ec 0F93 push r16 |
1028 07ee 1F93 push r17 |
1029 07f0 CF93 push r28 |
1030 07f2 DF93 push r29 |
1031 /* prologue end (size=4) */ |
1032 07f4 982F mov r25,r24 |
1033 07f6 8091 0000 lds r24,MotorenEin |
1034 07fa 8823 tst r24 |
1035 07fc 21F4 brne .L118 |
1036 07fe 8091 0000 lds r24,PC_MotortestActive |
1037 0802 8823 tst r24 |
1038 0804 19F0 breq .L117 |
1039 .L118: |
1040 0806 81E0 ldi r24,lo8(1) |
1041 0808 90E0 ldi r25,hi8(1) |
1042 080a 92C0 rjmp .L116 |
1043 .L117: |
1044 080c 9D30 cpi r25,lo8(13) |
1045 080e A0F4 brsh .L141 |
1046 0810 9923 tst r25 |
1047 0812 19F4 brne .L120 |
1048 0814 86E0 ldi r24,lo8(6) |
1049 0816 90E0 ldi r25,hi8(6) |
1050 0818 8BC0 rjmp .L116 |
1051 .L120: |
1052 081a C92F mov r28,r25 |
1053 081c DD27 clr r29 |
1054 081e FE01 movw r30,r28 |
1055 0820 33E0 ldi r19,3 |
1056 0822 EE0F 1: lsl r30 |
1057 0824 FF1F rol r31 |
1058 0826 3A95 dec r19 |
1059 0828 E1F7 brne 1b |
1060 082a E050 subi r30,lo8(-(Motor)) |
1061 082c F040 sbci r31,hi8(-(Motor)) |
1062 082e 3597 sbiw r30,5 |
1063 0830 8081 ld r24,Z |
1064 0832 3596 adiw r30,5 |
1065 0834 87FD sbrc r24,7 |
1066 0836 03C0 rjmp .L121 |
1067 .L141: |
1068 0838 82E0 ldi r24,lo8(2) |
1069 083a 90E0 ldi r25,hi8(2) |
1070 083c 79C0 rjmp .L116 |
1071 .L121: |
1072 083e 3897 sbiw r30,8 |
1073 0840 8081 ld r24,Z |
1074 0842 80FD sbrc r24,0 |
1075 0844 03C0 rjmp .L122 |
1076 0846 83E0 ldi r24,lo8(3) |
1077 0848 90E0 ldi r25,hi8(3) |
1078 084a 72C0 rjmp .L116 |
1079 .L122: |
1080 084c 80ED ldi r24,lo8(2000) |
1081 084e 97E0 ldi r25,hi8(2000) |
1082 0850 0E94 0000 call SetDelay |
1083 0854 8C01 movw r16,r24 |
1084 .L123: |
1085 0856 8091 0000 lds r24,BLFlags |
1086 085a 80FD sbrc r24,0 |
1087 085c 05C0 rjmp .L124 |
1088 085e C801 movw r24,r16 |
1089 0860 0E94 0000 call CheckDelay |
1090 0864 8823 tst r24 |
1091 0866 B9F3 breq .L123 |
1092 .L124: |
1093 0868 2197 sbiw r28,1 |
1094 086a 21E0 ldi r18,lo8(1) |
1095 086c 30E0 ldi r19,hi8(1) |
1096 086e C901 movw r24,r18 |
1097 0870 02C0 rjmp 2f |
1098 0872 880F 1: lsl r24 |
1099 0874 991F rol r25 |
1100 0876 CA95 2: dec r28 |
1101 0878 E2F7 brpl 1b |
1102 087a 9093 0000 sts (BLConfig_ReadMask)+1,r25 |
1103 087e 8093 0000 sts BLConfig_ReadMask,r24 |
1104 0882 D901 movw r26,r18 |
1105 0884 E0E0 ldi r30,lo8(Motor) |
1106 0886 F0E0 ldi r31,hi8(Motor) |
1107 0888 40E0 ldi r20,lo8(0) |
1108 088a 50E0 ldi r21,hi8(0) |
1109 088c 6BE0 ldi r22,lo8(11) |
1110 .L130: |
1111 088e CD01 movw r24,r26 |
1112 0890 042E mov r0,r20 |
1113 0892 02C0 rjmp 2f |
1114 0894 880F 1: lsl r24 |
1115 0896 991F rol r25 |
1116 0898 0A94 2: dec r0 |
1117 089a E2F7 brpl 1b |
1118 089c 2091 0000 lds r18,BLConfig_ReadMask |
1119 08a0 3091 0000 lds r19,(BLConfig_ReadMask)+1 |
1120 08a4 8223 and r24,r18 |
1121 08a6 9323 and r25,r19 |
1122 08a8 892B or r24,r25 |
1123 08aa 11F0 breq .L128 |
1124 08ac 1182 std Z+1,__zero_reg__ |
1125 08ae 1282 std Z+2,__zero_reg__ |
1126 .L128: |
1127 08b0 6150 subi r22,lo8(-(-1)) |
1128 08b2 4F5F subi r20,lo8(-(1)) |
1129 08b4 5F4F sbci r21,hi8(-(1)) |
1130 08b6 3896 adiw r30,8 |
1131 08b8 67FF sbrs r22,7 |
1132 08ba E9CF rjmp .L130 |
1133 08bc 1092 0000 sts motor_read,__zero_reg__ |
1134 08c0 1092 0000 sts BLConfig,__zero_reg__ |
1135 08c4 1092 0000 sts BLConfig+7,__zero_reg__ |
1136 .L131: |
1137 08c8 1092 0000 sts twi_state,__zero_reg__ |
1138 08cc 8091 0000 lds r24,BLFlags |
1139 08d0 8E7F andi r24,lo8(-2) |
1140 08d2 8093 0000 sts BLFlags,r24 |
1141 08d6 85EA ldi r24,lo8(-91) |
1142 08d8 8093 BC00 sts 188,r24 |
1143 .L134: |
1144 08dc 8091 0000 lds r24,BLFlags |
1145 08e0 80FD sbrc r24,0 |
1146 08e2 05C0 rjmp .L135 |
1147 08e4 C801 movw r24,r16 |
1148 08e6 0E94 0000 call CheckDelay |
1149 08ea 8823 tst r24 |
1150 08ec B9F3 breq .L134 |
1151 .L135: |
1152 08ee 8091 0000 lds r24,BLConfig_ReadMask |
1153 08f2 9091 0000 lds r25,(BLConfig_ReadMask)+1 |
1154 08f6 892B or r24,r25 |
1155 08f8 29F0 breq .L132 |
1156 08fa C801 movw r24,r16 |
1157 08fc 0E94 0000 call CheckDelay |
1158 0900 8823 tst r24 |
1159 0902 11F3 breq .L131 |
1160 .L132: |
1161 0904 8091 0000 lds r24,BLConfig |
1162 0908 8230 cpi r24,lo8(2) |
1163 090a 19F0 breq .L137 |
1164 090c 84E0 ldi r24,lo8(4) |
1165 090e 90E0 ldi r25,hi8(4) |
1166 0910 0FC0 rjmp .L116 |
1167 .L137: |
1168 0912 67E0 ldi r22,lo8(7) |
1169 0914 70E0 ldi r23,hi8(7) |
1170 0916 80E0 ldi r24,lo8(BLConfig) |
1171 0918 90E0 ldi r25,hi8(BLConfig) |
1172 091a 0E94 0000 call RAM_Checksum |
1173 091e 9091 0000 lds r25,BLConfig+7 |
1174 0922 8917 cp r24,r25 |
1175 0924 19F0 breq .L138 |
1176 0926 85E0 ldi r24,lo8(5) |
1177 0928 90E0 ldi r25,hi8(5) |
1178 092a 02C0 rjmp .L116 |
1179 .L138: |
1180 092c 80E0 ldi r24,lo8(0) |
1181 092e 90E0 ldi r25,hi8(0) |
1182 .L116: |
1183 /* epilogue: frame size=0 */ |
1184 0930 DF91 pop r29 |
1185 0932 CF91 pop r28 |
1186 0934 1F91 pop r17 |
1187 0936 0F91 pop r16 |
1188 0938 0895 ret |
1189 /* epilogue end (size=5) */ |
1190 /* function I2C_ReadBLConfig size 168 (159) */ |
1192 .comm Motor,96,1 |
1193 .comm BLConfig,8,1 |
1194 /* File "twimaster.c": code 1214 = 0x04be (1170), prologues 20, epilogues 24 */ |
DEFINED SYMBOLS |
*ABS*:00000000 twimaster.c |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:15 .bss:00000000 BLConfig_ReadMask |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:21 .bss:00000002 BLConfig_WriteMask |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:27 .bss:00000004 BLFlags |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:33 .bss:00000005 MissingMotor |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:39 .data:00000000 I2CTimeout |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:46 .bss:00000006 I2C_TransferActive |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:52 .bss:00000007 motor_read |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:58 .bss:00000008 motor_write |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:64 .bss:00000009 dac_channel |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:70 .bss:0000000a twi_state |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:75 .text:00000000 I2C_Init |
*COM*:00000060 Motor |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:126 .text:00000054 I2C_Reset |
.bss:0000000b missing_motor.0 |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:153 .bss:0000000c motor_read_temperature.1 |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:154 .bss:0000000d pBuff.2 |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:155 .bss:0000000f BuffLen.3 |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:159 .text:00000098 __vector_26 |
*COM*:00000008 BLConfig |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:853 .text:00000698 I2C_WriteBLConfig |
C:\Users\Thomas\AppData\Local\Temp/ccMRaaaa.s:1025 .text:000007ec I2C_ReadBLConfig |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
__tablejump2__ |
Mixer |
RequiredMotors |
FC_StatusFlags |
AnalogOffsetNick |
AnalogOffsetRoll |
AnalogOffsetGier |
MotorenEin |
PC_MotortestActive |
RAM_Checksum |
SetDelay |
CheckDelay |
/branches/metro/v0.82a metro_Akku+/uart.c |
---|
0,0 → 1,761 |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
// + Copyright (c) Holger Buss, Ingo Busker |
// + only for non-profit use |
// + www.MikroKopter.com |
// + see the File "License.txt" for further Informations |
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
#include <stdarg.h> |
#include <string.h> |
#include <avr/pgmspace.h> |
#include "main.h" |
#include "uart.h" |
#include "libfc.h" |
#include "eeprom.h" |
#define FC_ADDRESS 1 |
#define NC_ADDRESS 2 |
#define MK3MAG_ADDRESS 3 |
#define BL_CTRL_ADDRESS 5 |
#define ABO_TIMEOUT 4000 // disable abo after 4 seconds |
#define MAX_SENDE_BUFF 170 |
#define MAX_EMPFANGS_BUFF 170 |
#define BLPARAM_REVISION 1 |
#define MASK_SET_PWM_SCALING 0x01 |
#define MASK_SET_CURRENT_LIMIT 0x02 |
#define MASK_SET_TEMP_LIMIT 0x04 |
#define MASK_SET_CURRENT_SCALING 0x08 |
#define MASK_SET_BITCONFIG 0x10 |
#define MASK_RESET_CAPCOUNTER 0x20 |
#define MASK_SET_DEFAULT_PARAMS 0x40 |
#define MASK_SET_SAVE_EEPROM 0x80 |
typedef struct |
{ |
unsigned char Revision; // revision of parameter structure |
unsigned char Address; // target address |
unsigned char PwmScaling; // maximum value of pwm setpoint |
unsigned char CurrentLimit; // current limit in 1A steps |
unsigned char TemperatureLimit; // in °C |
unsigned char CurrentScaling; // scaling factor for current measurement |
unsigned char BitConfig; // see defines above |
unsigned char SetMask; // filter for active paramters |
unsigned char Checksum; // checksum for parameter sturcture |
} __attribute__((packed)) BLParameter_t; |
unsigned char GetExternalControl = 0,DebugDisplayAnforderung1 = 0, DebugDisplayAnforderung = 0,DebugDataAnforderung = 0,GetVersionAnforderung = 0, GetPPMChannelAnforderung = 0; |
unsigned char DisplayLine = 0; |
unsigned volatile char SioTmp = 0; |
unsigned volatile char NeuerDatensatzEmpfangen = 0; |
unsigned volatile char NeueKoordinateEmpfangen = 0; |
unsigned volatile char UebertragungAbgeschlossen = 1; |
unsigned volatile char CntCrcError = 0; |
unsigned volatile char AnzahlEmpfangsBytes = 0; |
unsigned volatile char TxdBuffer[MAX_SENDE_BUFF]; |
unsigned volatile char RxdBuffer[MAX_EMPFANGS_BUFF]; |
unsigned char *pRxData = 0; |
unsigned char RxDataLen = 0; |
unsigned volatile char PC_DebugTimeout = 0; |
unsigned volatile char PC_MotortestActive = 0; |
unsigned char DebugTextAnforderung = 255; |
unsigned char PcZugriff = 100; |
unsigned char MotorTest[16]; |
unsigned char MeineSlaveAdresse = 1; // Flight-Ctrl |
unsigned char ConfirmFrame; |
struct str_DebugOut DebugOut; |
struct str_ExternControl ExternControl; |
struct str_VersionInfo VersionInfo; |
struct str_WinkelOut WinkelOut; |
struct str_Data3D Data3D; |
int Display_Timer, Debug_Timer,Kompass_Timer,Timer3D; |
unsigned int DebugDataIntervall = 0, Intervall3D = 0, Display_Interval = 0; |
unsigned int AboTimeOut = 0; |
unsigned volatile char JetiUpdateModeActive = 0; |
const unsigned char ANALOG_TEXT[32][16] PROGMEM = |
{ |
//1234567890123456 |
"AngleNick ", //0 |
"AngleRoll ", |
"AccNick ", |
"AccRoll ", |
"YawGyro ", |
"Height Value ", //5 |
"AccZ ", |
"Gas ", |
"Compass Value ", |
"Voltage [0.1V] ", |
"Receiver Level ", //10 |
"Gyro Compass ", |
"Motor 1 ", |
"Motor 2 ", |
"Motor 3 ", |
"Motor 4 ", //15 |
"16 ", |
"17 ", |
"18 ", |
"19 ", |
"Servo ", //20 |
"Hovergas ", |
"Current [0.1A] ", |
"Capacity [mAh] ", |
"24 ", |
"25 ", //25 |
"26 ", |
"27 ", |
"I2C-Error ", |
"BL Limit ", |
"GPS_Nick ", //30 |
"GPS_Roll " |
}; |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
//++ Sende-Part der Datenübertragung |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
ISR(USART0_TX_vect) |
{ |
static unsigned int ptr = 0; |
unsigned char tmp_tx; |
if(!UebertragungAbgeschlossen) |
{ |
ptr++; // die [0] wurde schon gesendet |
tmp_tx = TxdBuffer[ptr]; |
if((tmp_tx == '\r') || (ptr == MAX_SENDE_BUFF)) |
{ |
ptr = 0; |
UebertragungAbgeschlossen = 1; |
} |
UDR0 = tmp_tx; |
} |
else ptr = 0; |
} |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
//++ Empfangs-Part der Datenübertragung, incl. CRC-Auswertung |
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
ISR(USART0_RX_vect) |
{ |
static unsigned int crc; |
static unsigned char crc1,crc2,buf_ptr; |
static unsigned char UartState = 0; |
unsigned char CrcOkay = 0; |
if (JetiUpdateModeActive == 1) { UDR1 = UDR0; return; } |
if (JetiUpdateModeActive == 2) { RxdBuffer[0] = UDR0; return; } |
SioTmp = UDR0; |
if(buf_ptr >= MAX_SENDE_BUFF) UartState = 0; |
if(SioTmp == '\r' && UartState == 2) |
{ |
UartState = 0; |
crc -= RxdBuffer[buf_ptr-2]; |
crc -= RxdBuffer[buf_ptr-1]; |
crc %= 4096; |
crc1 = '=' + crc / 64; |
crc2 = '=' + crc % 64; |
CrcOkay = 0; |
if((crc1 == RxdBuffer[buf_ptr-2]) && (crc2 == RxdBuffer[buf_ptr-1])) CrcOkay = 1; else { CrcOkay = 0; CntCrcError++;}; |
if(!NeuerDatensatzEmpfangen && CrcOkay) // Datensatz schon verarbeitet |
{ |
NeuerDatensatzEmpfangen = 1; |
AnzahlEmpfangsBytes = buf_ptr + 1; |
RxdBuffer[buf_ptr] = '\r'; |
if(RxdBuffer[2] == 'R') |
{ |
LcdClear(); |
wdt_enable(WDTO_250MS); // Reset-Commando |
ServoActive = 0; |
} |
} |
} |
else |
switch(UartState) |
{ |
case 0: |
if(SioTmp == '#' && !NeuerDatensatzEmpfangen) UartState = 1; // Startzeichen und Daten schon verarbeitet |
buf_ptr = 0; |
RxdBuffer[buf_ptr++] = SioTmp; |
crc = SioTmp; |
break; |
case 1: // Adresse auswerten |
UartState++; |
RxdBuffer[buf_ptr++] = SioTmp; |
crc += SioTmp; |
break; |
case 2: // Eingangsdaten sammeln |
RxdBuffer[buf_ptr] = SioTmp; |
if(buf_ptr < MAX_EMPFANGS_BUFF) buf_ptr++; |
else UartState = 0; |
crc += SioTmp; |
break; |
default: |
UartState = 0; |
break; |
} |
} |
// -------------------------------------------------------------------------- |
void AddCRC(unsigned int wieviele) |
{ |
unsigned int tmpCRC = 0,i; |
for(i = 0; i < wieviele;i++) |
{ |
tmpCRC += TxdBuffer[i]; |
} |
tmpCRC %= 4096; |
TxdBuffer[i++] = '=' + tmpCRC / 64; |
TxdBuffer[i++] = '=' + tmpCRC % 64; |
TxdBuffer[i++] = '\r'; |
UebertragungAbgeschlossen = 0; |
UDR0 = TxdBuffer[0]; |
} |
// -------------------------------------------------------------------------- |
void SendOutData(unsigned char cmd,unsigned char address, unsigned char BufferAnzahl, ...) //unsigned char *snd, unsigned char len) |
{ |
va_list ap; |
unsigned int pt = 0; |
unsigned char a,b,c; |
unsigned char ptr = 0; |
unsigned char *snd = 0; |
int len = 0; |
TxdBuffer[pt++] = '#'; // Startzeichen |
TxdBuffer[pt++] = 'a' + address; // Adresse (a=0; b=1,...) |
TxdBuffer[pt++] = cmd; // Commando |
va_start(ap, BufferAnzahl); |
if(BufferAnzahl) |
{ |
snd = va_arg(ap, unsigned char*); |
len = va_arg(ap, int); |
ptr = 0; |
BufferAnzahl--; |
} |
while(len) |
{ |
if(len) |
{ |
a = snd[ptr++]; |
len--; |
if((!len) && BufferAnzahl) |
{ |
snd = va_arg(ap, unsigned char*); |
len = va_arg(ap, int); |
ptr = 0; |
BufferAnzahl--; |
} |
} |
else a = 0; |
if(len) |
{ |
b = snd[ptr++]; |
len--; |
if((!len) && BufferAnzahl) |
{ |
snd = va_arg(ap, unsigned char*); |
len = va_arg(ap, int); |
ptr = 0; |
BufferAnzahl--; |
} |
} |
else b = 0; |
if(len) |
{ |
c = snd[ptr++]; |
len--; |
if((!len) && BufferAnzahl) |
{ |
snd = va_arg(ap, unsigned char*); |
len = va_arg(ap, int); |
ptr = 0; |
BufferAnzahl--; |
} |
} |
else c = 0; |
TxdBuffer[pt++] = '=' + (a >> 2); |
TxdBuffer[pt++] = '=' + (((a & 0x03) << 4) | ((b & 0xf0) >> 4)); |
TxdBuffer[pt++] = '=' + (((b & 0x0f) << 2) | ((c & 0xc0) >> 6)); |
TxdBuffer[pt++] = '=' + ( c & 0x3f); |
} |
va_end(ap); |
AddCRC(pt); |
} |
// -------------------------------------------------------------------------- |
void Decode64(void) // die daten werden im rx buffer dekodiert, das geht nur, weil aus 4 byte immer 3 gemacht werden. |
{ |
unsigned char a,b,c,d; |
unsigned char x,y,z; |
unsigned char ptrIn = 3; // start at begin of data block |
unsigned char ptrOut = 3; |
unsigned char len = AnzahlEmpfangsBytes - 6; // von der Gesamtbytezahl eines Frames gehen 3 Bytes des Headers ('#',Addr, Cmd) und 3 Bytes des Footers (CRC1, CRC2, '\r') ab. |
while(len) |
{ |
a = RxdBuffer[ptrIn++] - '='; |
b = RxdBuffer[ptrIn++] - '='; |
c = RxdBuffer[ptrIn++] - '='; |
d = RxdBuffer[ptrIn++] - '='; |
x = (a << 2) | (b >> 4); |
y = ((b & 0x0f) << 4) | (c >> 2); |
z = ((c & 0x03) << 6) | d; |
if(len--) RxdBuffer[ptrOut++] = x; else break; |
if(len--) RxdBuffer[ptrOut++] = y; else break; |
if(len--) RxdBuffer[ptrOut++] = z; else break; |
} |
pRxData = (unsigned char*)&RxdBuffer[3]; // decodierte Daten beginnen beim 4. Byte |
RxDataLen = ptrOut - 3; // wie viele Bytes wurden dekodiert? |
} |
// -------------------------------------------------------------------------- |
void BearbeiteRxDaten(void) |
{ |
if(!NeuerDatensatzEmpfangen) return; |
unsigned char tempchar1, tempchar2; |
Decode64(); // dekodiere datenblock im Empfangsbuffer |
switch(RxdBuffer[1]-'a') // check for Slave Address |
{ |
case FC_ADDRESS: // FC special commands |
switch(RxdBuffer[2]) |
{ |
case 'K':// Kompasswert |
memcpy((unsigned char *)&KompassValue , (unsigned char *)pRxData, sizeof(KompassValue)); |
KompassRichtung = ((540 + KompassValue - KompassStartwert) % 360) - 180; |
break; |
case 't':// Motortest |
if(AnzahlEmpfangsBytes > 20) memcpy(&MotorTest[0], (unsigned char *)pRxData, sizeof(MotorTest)); |
else memcpy(&MotorTest[0], (unsigned char *)pRxData, 4); |
PC_MotortestActive = 240; |
//while(!UebertragungAbgeschlossen); |
//SendOutData('T', MeineSlaveAdresse, 0); |
PcZugriff = 255; |
break; |
case 'n':// "Get Mixer |
while(!UebertragungAbgeschlossen); |
SendOutData('N', FC_ADDRESS, 1, (unsigned char *) &Mixer, sizeof(Mixer) - 1); |
Debug("Mixer lesen"); |
break; |
case 'm':// "Write Mixer |
if(pRxData[0] == EEMIXER_REVISION) |
{ |
memcpy(&Mixer, (unsigned char *)pRxData, sizeof(Mixer) - 1); |
MixerTable_WriteToEEProm(); |
tempchar1 = 1; |
VersionInfo.HardwareError[1] &= ~FC_ERROR1_MIXER; |
} |
else |
{ |
tempchar1 = 0; |
} |
while(!UebertragungAbgeschlossen); |
SendOutData('M', FC_ADDRESS, 1, &tempchar1, sizeof(tempchar1)); |
break; |
case 'p': // get PPM Channels |
GetPPMChannelAnforderung = 1; |
PcZugriff = 255; |
break; |
case 'q':// "Get"-Anforderung für Settings |
// Bei Get werden die vom PC einstellbaren Werte vom PC zurückgelesen |
if((10 <= pRxData[0]) && (pRxData[0] < 20)) |
{ |
tempchar1 = pRxData[0] - 10; |
if(tempchar1< 1) tempchar1 = 1; // limit to 1 |
else if(tempchar1 > 5) tempchar1 = 5; // limit to 5 |
SetDefaultParameter(tempchar1, 1); |
} |
else if((20 <= pRxData[0]) && (pRxData[0] < 30)) |
{ |
tempchar1 = pRxData[0] - 20; |
if(tempchar1< 1) tempchar1 = 1; // limit to 1 |
else if(tempchar1 > 5) tempchar1 = 5; // limit to 5 |
SetDefaultParameter(tempchar1, 0); |
} |
else |
{ |
tempchar1 = pRxData[0]; |
if(tempchar1 == 0xFF) |
{ |
tempchar1 = GetActiveParamSet(); |
} |
if(tempchar1< 1) tempchar1 = 1; // limit to 1 |
else if(tempchar1 > 5) tempchar1 = 5; // limit to 5 |
// load requested parameter set |
ParamSet_ReadFromEEProm(tempchar1); |
} |
while(!UebertragungAbgeschlossen); |
SendOutData('Q', FC_ADDRESS, 2, &tempchar1, sizeof(tempchar1), (unsigned char *) &EE_Parameter, sizeof(EE_Parameter) - 1); |
Debug("Lese Setting %d", tempchar1); |
break; |
case 's': // Parametersatz speichern |
if((1 <= pRxData[0]) && (pRxData[0] <= 5) && (pRxData[1] == EEPARAM_REVISION)) // check for setting to be in range |
{ |
memcpy(&EE_Parameter, (uint8_t*)&pRxData[1], sizeof(EE_Parameter) - 1); |
ParamSet_WriteToEEProm(pRxData[0]); |
Umschlag180Nick = (long) EE_Parameter.WinkelUmschlagNick * 2500L; |
Umschlag180Roll = (long) EE_Parameter.WinkelUmschlagRoll * 2500L; |
tempchar1 = GetActiveParamSet(); |
} |
else |
{ |
tempchar1 = 0; // mark in response an invlid setting |
} |
while(!UebertragungAbgeschlossen); |
SendOutData('S', FC_ADDRESS, 1, &tempchar1, sizeof(tempchar1)); |
if(!MotorenEin) Piep(tempchar1,110); |
LipoDetection(0); |
LIBFC_ReceiverInit(EE_Parameter.Receiver); |
break; |
case 'f': // auf anderen Parametersatz umschalten |
if((1 <= pRxData[0]) && (pRxData[0] <= 5)) ParamSet_ReadFromEEProm(pRxData[0]); |
tempchar1 = GetActiveParamSet(); |
while(!UebertragungAbgeschlossen); |
SendOutData('F', FC_ADDRESS, 1, &tempchar1, sizeof(tempchar1)); |
if(!MotorenEin) Piep(tempchar1,110); |
LipoDetection(0); |
LIBFC_ReceiverInit(EE_Parameter.Receiver); |
break; |
case 'y':// serial Potis |
PPM_in[13] = (signed char) pRxData[0]; PPM_in[14] = (signed char) pRxData[1]; PPM_in[15] = (signed char) pRxData[2]; PPM_in[16] = (signed char) pRxData[3]; |
PPM_in[17] = (signed char) pRxData[4]; PPM_in[18] = (signed char) pRxData[5]; PPM_in[19] = (signed char) pRxData[6]; PPM_in[20] = (signed char) pRxData[7]; |
PPM_in[21] = (signed char) pRxData[8]; PPM_in[22] = (signed char) pRxData[9]; PPM_in[23] = (signed char) pRxData[10]; PPM_in[24] = (signed char) pRxData[11]; |
break; |
case 'u': // request BL parameter |
Debug("Reading BL %d", pRxData[0]); |
// try to read BL configuration |
tempchar2 = I2C_ReadBLConfig(pRxData[0]); |
if(tempchar2 == BLCONFIG_SUCCESS) tempchar1 = 1; |
else tempchar1 = 0; |
while(!UebertragungAbgeschlossen); // wait for previous frame to be sent |
SendOutData('U', FC_ADDRESS, 4, &tempchar1, sizeof(tempchar1), &tempchar2, sizeof(tempchar2), &pRxData[0], 1, &BLConfig, sizeof(BLConfig_t)); |
break; |
case 'w': // write BL parameter |
Debug("Writing BL %d", pRxData[0]); |
if(RxDataLen >= 1+sizeof(BLConfig_t)) |
{ |
memcpy(&BLConfig, (uint8_t*)(&pRxData[1]), sizeof(BLConfig_t)); |
tempchar2 = I2C_WriteBLConfig(pRxData[0]); |
if(tempchar2 == BLCONFIG_SUCCESS) tempchar1 = 1; |
else tempchar1 = 0; // indicate error |
while(!UebertragungAbgeschlossen); // wait for previous frame to be sent |
SendOutData('W', FC_ADDRESS,2, &tempchar1, sizeof(tempchar1), &tempchar2, sizeof(tempchar2)); |
} |
break; |
case 'j': |
tempchar1 = LIBFC_GetCPUType(); |
if((tempchar1 == CPU_ATMEGA644P) || (tempchar1 == CPU_ATMEGA1284P)) |
{ |
uint16_t ubrr = (uint16_t) ((uint32_t) F_CPU/ (8 * 38400L) - 1); |
cli(); |
// UART0 & UART1 disable RX and TX-Interrupt |
UCSR0B &= ~((1 << RXCIE0)|(1 << TXCIE0)); |
UCSR1B &= ~((1 << RXCIE1)|(1 << TXCIE1)); |
// UART0 & UART1 disable receiver and transmitter |
UCSR0B &= ~((1 << TXEN0) | (1 << RXEN0)); |
UCSR1B &= ~((1 << TXEN1) | (1 << RXEN1)); |
// UART0 & UART1 flush receive buffer explicit |
while ( UCSR1A & (1<<RXC1) ) UDR1; |
while ( UCSR0A & (1<<RXC0) ) UDR0; |
if (pRxData[0] == 0) |
{ |
JetiUpdateModeActive = 1; |
// UART0 & UART1 set baudrate |
UBRR1H = (uint8_t)(ubrr>>8); |
UBRR1L = (uint8_t)ubrr; |
UBRR0H = UBRR1H; |
UBRR0L = UBRR1L; |
// UART1 no parity |
UCSR1C &= ~(1 << UPM11); |
UCSR1C &= ~(1 << UPM10); |
// UART1 8-bit |
UCSR1B &= ~(1 << UCSZ12); |
UCSR1C |= (1 << UCSZ11); |
UCSR1C |= (1 << UCSZ10); |
} |
else JetiUpdateModeActive = 2; |
// UART0 & UART1 1 stop bit |
UCSR1C &= ~(1 << USBS1); |
UCSR0C &= ~(1 << USBS0); |
// UART1 clear 9th bit |
UCSR1B &= ~(1<<TXB81); |
// enable receiver and transmitter for UART0 and UART1 |
UCSR0B |= (1 << TXEN0) | (1 << RXEN0); |
UCSR1B |= (1 << TXEN1) | (1 << RXEN1); |
// enable RX-Interrupt for UART0 and UART1 |
UCSR0B |= (1 << RXCIE0); |
UCSR1B |= (1 << RXCIE1); |
// disable other Interrupts |
TIMSK0 = 0; |
TIMSK1 = 0; |
TIMSK2 = 0; |
sei(); |
} |
break; |
} // case FC_ADDRESS: |
default: // any Slave Address |
switch(RxdBuffer[2]) |
{ |
// 't' comand placed here only for compatibility to BL |
case 't':// Motortest |
if(AnzahlEmpfangsBytes >= sizeof(MotorTest)) memcpy(&MotorTest[0], (unsigned char *)pRxData, sizeof(MotorTest)); |
else memcpy(&MotorTest[0], (unsigned char *)pRxData, 4); |
while(!UebertragungAbgeschlossen); |
SendOutData('T', MeineSlaveAdresse, 0); |
PC_MotortestActive = 250; |
PcZugriff = 255; |
AboTimeOut = SetDelay(ABO_TIMEOUT); |
break; |
// 'K' comand placed here only for compatibility to old MK3MAG software, that does not send the right Slave Address |
case 'K':// Kompasswert |
memcpy((unsigned char *)&KompassValue , (unsigned char *)pRxData, sizeof(KompassValue)); |
KompassRichtung = ((540 + KompassValue - KompassStartwert) % 360) - 180; |
break; |
case 'a':// Texte der Analogwerte |
DebugTextAnforderung = pRxData[0]; |
if (DebugTextAnforderung > 31) DebugTextAnforderung = 31; |
PcZugriff = 255; |
break; |
case 'b': |
memcpy((unsigned char *)&ExternControl, (unsigned char *)pRxData, sizeof(ExternControl)); |
ConfirmFrame = ExternControl.Frame; |
PcZugriff = 255; |
break; |
case 'c': // Poll the 3D-Data |
if(!Intervall3D) { if(pRxData[0]) Timer3D = SetDelay(pRxData[0] * 10);} |
Intervall3D = pRxData[0] * 10; |
AboTimeOut = SetDelay(ABO_TIMEOUT); |
break; |
case 'd': // Poll the debug data |
PcZugriff = 255; |
DebugDataIntervall = (unsigned int)pRxData[0] * 10; |
if(DebugDataIntervall > 0) DebugDataAnforderung = 1; |
AboTimeOut = SetDelay(ABO_TIMEOUT); |
break; |
case 'h':// x-1 Displayzeilen |
PcZugriff = 255; |
if((pRxData[0] & 0x80) == 0x00) // old format |
{ |
DisplayLine = 2; |
Display_Interval = 0; |
} |
else // new format |
{ |
RemoteKeys |= ~pRxData[0]; |
Display_Interval = (unsigned int)pRxData[1] * 10; |
DisplayLine = 4; |
AboTimeOut = SetDelay(ABO_TIMEOUT); |
} |
DebugDisplayAnforderung = 1; |
break; |
case 'l':// x-1 Displayzeilen |
PcZugriff = 255; |
MenuePunkt = pRxData[0]; |
DebugDisplayAnforderung1 = 1; |
break; |
case 'v': // Version-Anforderung und Ausbaustufe |
GetVersionAnforderung = 1; |
break; |
case 'g':// |
GetExternalControl = 1; |
break; |
default: |
//unsupported command received |
break; |
} |
break; // default: |
} |
NeuerDatensatzEmpfangen = 0; |
pRxData = 0; |
RxDataLen = 0; |
} |
//############################################################################ |
//Routine für die Serielle Ausgabe |
void uart_putchar (char c) |
//############################################################################ |
{ |
//Warten solange bis Zeichen gesendet wurde |
loop_until_bit_is_set(UCSR0A, UDRE0); |
//Ausgabe des Zeichens |
UDR0 = c; |
} |
//############################################################################ |
//INstallation der Seriellen Schnittstelle |
void UART_Init (void) |
//############################################################################ |
{ |
unsigned int ubrr = (unsigned int) ((unsigned long) F_CPU/(8 * USART0_BAUD) - 1); |
//Enable TXEN im Register UCR TX-Data Enable & RX Enable |
UCSR0B = (1 << TXEN0) | (1 << RXEN0); |
// UART Double Speed (U2X) |
UCSR0A |= (1 << U2X0); |
// RX-Interrupt Freigabe |
UCSR0B |= (1 << RXCIE0); |
// TX-Interrupt Freigabe |
UCSR0B |= (1 << TXCIE0); |
// USART0 Baud Rate Register |
// set clock divider |
UBRR0H = (uint8_t)(ubrr >> 8); |
UBRR0L = (uint8_t)ubrr; |
Debug_Timer = SetDelay(DebugDataIntervall); |
Kompass_Timer = SetDelay(220); |
VersionInfo.SWMajor = VERSION_MAJOR; |
VersionInfo.SWMinor = VERSION_MINOR; |
VersionInfo.SWPatch = VERSION_PATCH; |
VersionInfo.ProtoMajor = VERSION_SERIAL_MAJOR; |
VersionInfo.ProtoMinor = VERSION_SERIAL_MINOR; |
pRxData = 0; |
RxDataLen = 0; |
} |
//--------------------------------------------------------------------------------------------- |
void DatenUebertragung(void) |
{ |
if(!UebertragungAbgeschlossen) return; |
if(CheckDelay(AboTimeOut)) |
{ |
Display_Interval = 0; |
DebugDataIntervall = 0; |
Intervall3D = 0; |
} |
if(((Display_Interval>0 && CheckDelay(Display_Timer)) || DebugDisplayAnforderung) && UebertragungAbgeschlossen) |
{ |
if(DisplayLine > 3)// new format |
{ |
Menu(); |
SendOutData('H', FC_ADDRESS, 1, (uint8_t *)DisplayBuff, 80); |
} |
else // old format |
{ |
LCD_printfxy(0,0,"!!! INCOMPATIBLE !!!"); |
SendOutData('H', FC_ADDRESS, 2, &DisplayLine, sizeof(DisplayLine), (uint8_t *)DisplayBuff, 20); |
if(DisplayLine++ > 3) DisplayLine = 0; |
} |
Display_Timer = SetDelay(Display_Interval); |
DebugDisplayAnforderung = 0; |
} |
if(DebugDisplayAnforderung1 && UebertragungAbgeschlossen) |
{ |
Menu(); |
SendOutData('L', FC_ADDRESS, 3, &MenuePunkt, sizeof(MenuePunkt), &MaxMenue, sizeof(MaxMenue), DisplayBuff, sizeof(DisplayBuff)); |
DebugDisplayAnforderung1 = 0; |
} |
if(GetVersionAnforderung && UebertragungAbgeschlossen) |
{ |
SendOutData('V', FC_ADDRESS, 1, (unsigned char *) &VersionInfo, sizeof(VersionInfo)); |
GetVersionAnforderung = 0; |
Debug_OK("Version gesendet"); |
} |
if(GetExternalControl && UebertragungAbgeschlossen) // Bei Get werden die vom PC einstellbaren Werte vom PC zurückgelesen |
{ |
SendOutData('G',MeineSlaveAdresse, 1, (unsigned char *) &ExternControl, sizeof(ExternControl)); |
GetExternalControl = 0; |
} |
if((CheckDelay(Kompass_Timer)) && UebertragungAbgeschlossen) |
{ |
WinkelOut.Winkel[0] = (int) (IntegralNick / (EE_Parameter.GyroAccFaktor * 4)); // etwa in 0.1 Grad |
WinkelOut.Winkel[1] = (int) (IntegralRoll / (EE_Parameter.GyroAccFaktor * 4)); // etwa in 0.1 Grad |
WinkelOut.UserParameter[0] = Parameter_UserParam1; |
WinkelOut.UserParameter[1] = Parameter_UserParam2; |
SendOutData('k', MK3MAG_ADDRESS, 1, (unsigned char *) &WinkelOut,sizeof(WinkelOut)); |
if(WinkelOut.CalcState > 4) WinkelOut.CalcState = 6; // wird dann in SPI auf Null gesetzt |
Kompass_Timer = SetDelay(99); |
} |
if(((DebugDataIntervall>0 && CheckDelay(Debug_Timer)) || DebugDataAnforderung) && UebertragungAbgeschlossen) |
{ |
CopyDebugValues(); |
SendOutData('D', FC_ADDRESS, 1, (unsigned char *) &DebugOut,sizeof(DebugOut)); |
DebugDataAnforderung = 0; |
if(DebugDataIntervall>0) Debug_Timer = SetDelay(DebugDataIntervall); |
} |
if(Intervall3D > 0 && CheckDelay(Timer3D) && UebertragungAbgeschlossen) |
{ |
Data3D.Winkel[0] = (int) (IntegralNick / (EE_Parameter.GyroAccFaktor * 4)); // etwa in 0.1 Grad |
Data3D.Winkel[1] = (int) (IntegralRoll / (EE_Parameter.GyroAccFaktor * 4)); // etwa in 0.1 Grad |
Data3D.Winkel[2] = (int) ((10 * ErsatzKompass) / GIER_GRAD_FAKTOR); |
Data3D.Centroid[0] = SummeNick >> 9; |
Data3D.Centroid[1] = SummeRoll >> 9; |
Data3D.Centroid[2] = Mess_Integral_Gier >> 9; |
SendOutData('C', FC_ADDRESS, 1, (unsigned char *) &Data3D,sizeof(Data3D)); |
Timer3D = SetDelay(Intervall3D); |
} |
if(DebugTextAnforderung != 255) // Texte für die Analogdaten |
{ |
unsigned char label[16]; // local sram buffer |
memcpy_P(label, ANALOG_TEXT[DebugTextAnforderung], 16); // read lable from flash to sra |
SendOutData('A', FC_ADDRESS, 2, (unsigned char *)&DebugTextAnforderung, sizeof(DebugTextAnforderung),label, 16); |
DebugTextAnforderung = 255; |
} |
if(ConfirmFrame && UebertragungAbgeschlossen) // Datensatz bestätigen |
{ |
SendOutData('B', FC_ADDRESS, 1, (uint8_t*)&ConfirmFrame, sizeof(ConfirmFrame)); |
ConfirmFrame = 0; |
} |
if(GetPPMChannelAnforderung && UebertragungAbgeschlossen) |
{ |
SendOutData('P', FC_ADDRESS, 1, (unsigned char *) &PPM_in, sizeof(PPM_in)); |
GetPPMChannelAnforderung = 0; |
} |
#ifdef DEBUG // only include functions if DEBUG is defined |
if(SendDebugOutput && UebertragungAbgeschlossen) |
{ |
SendOutData('0', FC_ADDRESS, 1, (unsigned char *) &tDebug, sizeof(tDebug)); |
SendDebugOutput = 0; |
} |
#endif |
} |
/branches/metro/v0.82a metro_Akku+/uart.d |
---|
0,0 → 1,3 |
uart.o uart.d : uart.c main.h old_macros.h printf_P.h timer0.h uart.h analog.h \ |
twimaster.h menu.h rc.h fc.h gps.h spi.h led.h spektrum.h capacity.h \ |
eeprom.h libfc.h debug.h |
/branches/metro/v0.82a metro_Akku+/uart.h |
---|
0,0 → 1,107 |
#ifndef _UART_H |
#define _UART_H |
#define printf_P(format, args...) _printf_P(&uart_putchar, format , ## args) |
#define printf(format, args...) _printf_P(&uart_putchar, PSTR(format) , ## args) |
void BearbeiteRxDaten(void); |
extern unsigned char DebugGetAnforderung; |
extern unsigned volatile char JetiUpdateModeActive; |
extern unsigned volatile char UebertragungAbgeschlossen; |
extern unsigned volatile char PC_DebugTimeout; |
extern unsigned volatile char NeueKoordinateEmpfangen; |
extern unsigned volatile char PC_MotortestActive; |
extern unsigned char MeineSlaveAdresse; |
extern unsigned char PcZugriff; |
extern unsigned char RemotePollDisplayLine; |
extern unsigned volatile char RxdBuffer[]; |
extern int Debug_Timer,Kompass_Timer; |
extern void UART_Init (void); |
extern void uart_putchar (char c); |
extern void boot_program_page (uint32_t page, uint8_t *buf); |
extern void DatenUebertragung(void); |
extern void Uart1Init(void); |
extern void BearbeiteRxDaten(void); |
extern unsigned char MotorTest[16]; |
struct str_DebugOut |
{ |
unsigned char Status[2]; |
signed int Analog[32]; // Debugwerte |
}; |
extern struct str_DebugOut DebugOut; |
struct str_WinkelOut |
{ |
signed int Winkel[2]; |
unsigned char UserParameter[2]; |
unsigned char CalcState; |
unsigned char Orientation; |
}; |
extern struct str_WinkelOut WinkelOut; |
struct str_Data3D |
{ |
signed int Winkel[3]; // nick, roll, compass in 0,1° |
signed char Centroid[3]; |
signed char reserve[5]; |
}; |
extern struct str_Data3D Data3D; |
struct str_ExternControl |
{ |
unsigned char Digital[2]; |
unsigned char RemoteTasten; |
signed char Nick; |
signed char Roll; |
signed char Gier; |
unsigned char Gas; |
signed char Hight; |
unsigned char free; |
unsigned char Frame; |
unsigned char Config; |
}; |
extern struct str_ExternControl ExternControl; |
// FC hardware errors |
// bitmask for UART_VersionInfo_t.HardwareError[0] |
#define FC_ERROR0_GYRO_NICK 0x01 |
#define FC_ERROR0_GYRO_ROLL 0x02 |
#define FC_ERROR0_GYRO_YAW 0x04 |
#define FC_ERROR0_ACC_NICK 0x08 |
#define FC_ERROR0_ACC_ROLL 0x10 |
#define FC_ERROR0_ACC_TOP 0x20 |
#define FC_ERROR0_PRESSURE 0x40 |
#define FC_ERROR0_CAREFREE 0x80 |
// bitmask for UART_VersionInfo_t.HardwareError[1] |
#define FC_ERROR1_I2C 0x01 |
#define FC_ERROR1_BL_MISSING 0x02 |
#define FC_ERROR1_SPI_RX 0x04 |
#define FC_ERROR1_PPM 0x08 |
#define FC_ERROR1_MIXER 0x10 |
#define FC_ERROR1_RES1 0x20 |
#define FC_ERROR1_RES2 0x40 |
#define FC_ERROR1_RES3 0x80 |
struct str_VersionInfo |
{ |
unsigned char SWMajor; |
unsigned char SWMinor; |
unsigned char ProtoMajor; |
unsigned char ProtoMinor; |
unsigned char SWPatch; |
unsigned char HardwareError[5]; |
}; |
extern struct str_VersionInfo VersionInfo; |
//#define USART0_BAUD 9600 |
//#define USART0_BAUD 14400 |
//#define USART0_BAUD 28800 |
//#define USART0_BAUD 38400 |
#define USART0_BAUD 57600 |
#endif //_UART_H |
/branches/metro/v0.82a metro_Akku+/uart.lst |
---|
0,0 → 1,2677 |
1 .file "uart.c" |
2 .arch atmega644p |
3 __SREG__ = 0x3f |
4 __SP_H__ = 0x3e |
5 __SP_L__ = 0x3d |
6 __tmp_reg__ = 0 |
7 __zero_reg__ = 1 |
8 .global __do_copy_data |
9 .global __do_clear_bss |
10 .global ANALOG_TEXT |
11 .section .progmem.data,"a",@progbits |
14 ANALOG_TEXT: |
15 0000 416E 676C .ascii "AngleNick " |
15 654E 6963 |
15 6B20 2020 |
15 2020 2020 |
16 0010 416E 676C .ascii "AngleRoll " |
16 6552 6F6C |
16 6C20 2020 |
16 2020 2020 |
17 0020 4163 634E .ascii "AccNick " |
17 6963 6B20 |
17 2020 2020 |
17 2020 2020 |
18 0030 4163 6352 .ascii "AccRoll " |
18 6F6C 6C20 |
18 2020 2020 |
18 2020 2020 |
19 0040 5961 7747 .ascii "YawGyro " |
19 7972 6F20 |
19 2020 2020 |
19 2020 2020 |
20 0050 4865 6967 .ascii "Height Value " |
20 6874 2056 |
20 616C 7565 |
20 2020 2020 |
21 0060 4163 635A .ascii "AccZ " |
21 2020 2020 |
21 2020 2020 |
21 2020 2020 |
22 0070 4761 7320 .ascii "Gas " |
22 2020 2020 |
22 2020 2020 |
22 2020 2020 |
23 0080 436F 6D70 .ascii "Compass Value " |
23 6173 7320 |
23 5661 6C75 |
23 6520 2020 |
24 0090 566F 6C74 .ascii "Voltage [0.1V] " |
24 6167 6520 |
24 5B30 2E31 |
24 565D 2020 |
25 00a0 5265 6365 .ascii "Receiver Level " |
25 6976 6572 |
25 204C 6576 |
25 656C 2020 |
26 00b0 4779 726F .ascii "Gyro Compass " |
26 2043 6F6D |
26 7061 7373 |
26 2020 2020 |
27 00c0 4D6F 746F .ascii "Motor 1 " |
27 7220 3120 |
27 2020 2020 |
27 2020 2020 |
28 00d0 4D6F 746F .ascii "Motor 2 " |
28 7220 3220 |
28 2020 2020 |
28 2020 2020 |
29 00e0 4D6F 746F .ascii "Motor 3 " |
29 7220 3320 |
29 2020 2020 |
29 2020 2020 |
30 00f0 4D6F 746F .ascii "Motor 4 " |
30 7220 3420 |
30 2020 2020 |
30 2020 2020 |
31 0100 3136 2020 .ascii "16 " |
31 2020 2020 |
31 2020 2020 |
31 2020 2020 |
32 0110 3137 2020 .ascii "17 " |
32 2020 2020 |
32 2020 2020 |
32 2020 2020 |
33 0120 3138 2020 .ascii "18 " |
33 2020 2020 |
33 2020 2020 |
33 2020 2020 |
34 0130 3139 2020 .ascii "19 " |
34 2020 2020 |
34 2020 2020 |
34 2020 2020 |
35 0140 5365 7276 .ascii "Servo " |
35 6F20 2020 |
35 2020 2020 |
35 2020 2020 |
36 0150 486F 7665 .ascii "Hovergas " |
36 7267 6173 |
36 2020 2020 |
36 2020 2020 |
37 0160 4375 7272 .ascii "Current [0.1A] " |
37 656E 7420 |
37 5B30 2E31 |
37 415D 2020 |
38 0170 4361 7061 .ascii "Capacity [mAh] " |
38 6369 7479 |
38 205B 6D41 |
38 685D 2020 |
39 0180 3234 2020 .ascii "24 " |
39 2020 2020 |
39 2020 2020 |
39 2020 2020 |
40 0190 3235 2020 .ascii "25 " |
40 2020 2020 |
40 2020 2020 |
40 2020 2020 |
41 01a0 3236 2020 .ascii "26 " |
41 2020 2020 |
41 2020 2020 |
41 2020 2020 |
42 01b0 3237 2020 .ascii "27 " |
42 2020 2020 |
42 2020 2020 |
42 2020 2020 |
43 01c0 4932 432D .ascii "I2C-Error " |
43 4572 726F |
43 7220 2020 |
43 2020 2020 |
44 01d0 424C 204C .ascii "BL Limit " |
44 696D 6974 |
44 2020 2020 |
44 2020 2020 |
45 01e0 4750 535F .ascii "GPS_Nick " |
45 4E69 636B |
45 2020 2020 |
45 2020 2020 |
46 01f0 4750 535F .ascii "GPS_Roll " |
46 526F 6C6C |
46 2020 2020 |
46 2020 2020 |
47 .global JetiUpdateModeActive |
48 .global JetiUpdateModeActive |
49 .section .bss |
52 JetiUpdateModeActive: |
53 0000 00 .skip 1,0 |
54 .global AboTimeOut |
55 .global AboTimeOut |
58 AboTimeOut: |
59 0001 0000 .skip 2,0 |
60 .global Display_Interval |
61 .global Display_Interval |
64 Display_Interval: |
65 0003 0000 .skip 2,0 |
66 .global Intervall3D |
67 .global Intervall3D |
70 Intervall3D: |
71 0005 0000 .skip 2,0 |
72 .global DebugDataIntervall |
73 .global DebugDataIntervall |
76 DebugDataIntervall: |
77 0007 0000 .skip 2,0 |
78 .global MeineSlaveAdresse |
79 .data |
82 MeineSlaveAdresse: |
83 0000 01 .byte 1 |
84 .global PcZugriff |
87 PcZugriff: |
88 0001 64 .byte 100 |
89 .global DebugTextAnforderung |
92 DebugTextAnforderung: |
93 0002 FF .byte -1 |
94 .global PC_MotortestActive |
95 .global PC_MotortestActive |
96 .section .bss |
99 PC_MotortestActive: |
100 0009 00 .skip 1,0 |
101 .global PC_DebugTimeout |
102 .global PC_DebugTimeout |
105 PC_DebugTimeout: |
106 000a 00 .skip 1,0 |
107 .global RxDataLen |
108 .global RxDataLen |
111 RxDataLen: |
112 000b 00 .skip 1,0 |
113 .global pRxData |
114 .global pRxData |
117 pRxData: |
118 000c 0000 .skip 2,0 |
119 .global AnzahlEmpfangsBytes |
120 .global AnzahlEmpfangsBytes |
123 AnzahlEmpfangsBytes: |
124 000e 00 .skip 1,0 |
125 .global CntCrcError |
126 .global CntCrcError |
129 CntCrcError: |
130 000f 00 .skip 1,0 |
131 .global UebertragungAbgeschlossen |
132 .data |
135 UebertragungAbgeschlossen: |
136 0003 01 .byte 1 |
137 .global NeueKoordinateEmpfangen |
138 .global NeueKoordinateEmpfangen |
139 .section .bss |
142 NeueKoordinateEmpfangen: |
143 0010 00 .skip 1,0 |
144 .global NeuerDatensatzEmpfangen |
145 .global NeuerDatensatzEmpfangen |
148 NeuerDatensatzEmpfangen: |
149 0011 00 .skip 1,0 |
150 .global SioTmp |
151 .global SioTmp |
154 SioTmp: |
155 0012 00 .skip 1,0 |
156 .global DisplayLine |
157 .global DisplayLine |
160 DisplayLine: |
161 0013 00 .skip 1,0 |
162 .global GetPPMChannelAnforderung |
163 .global GetPPMChannelAnforderung |
166 GetPPMChannelAnforderung: |
167 0014 00 .skip 1,0 |
168 .global GetVersionAnforderung |
169 .global GetVersionAnforderung |
172 GetVersionAnforderung: |
173 0015 00 .skip 1,0 |
174 .global DebugDataAnforderung |
175 .global DebugDataAnforderung |
178 DebugDataAnforderung: |
179 0016 00 .skip 1,0 |
180 .global DebugDisplayAnforderung |
181 .global DebugDisplayAnforderung |
184 DebugDisplayAnforderung: |
185 0017 00 .skip 1,0 |
186 .global DebugDisplayAnforderung1 |
187 .global DebugDisplayAnforderung1 |
190 DebugDisplayAnforderung1: |
191 0018 00 .skip 1,0 |
192 .global GetExternalControl |
193 .global GetExternalControl |
196 GetExternalControl: |
197 0019 00 .skip 1,0 |
198 .lcomm ptr.6,2 |
199 .text |
200 .global __vector_22 |
202 __vector_22: |
203 /* prologue: frame size=0 */ |
204 0000 1F92 push __zero_reg__ |
205 0002 0F92 push __tmp_reg__ |
206 0004 0FB6 in __tmp_reg__,__SREG__ |
207 0006 0F92 push __tmp_reg__ |
208 0008 1124 clr __zero_reg__ |
209 000a 8F93 push r24 |
210 000c 9F93 push r25 |
211 000e EF93 push r30 |
212 0010 FF93 push r31 |
213 /* prologue end (size=9) */ |
214 0012 8091 0000 lds r24,UebertragungAbgeschlossen |
215 0016 8823 tst r24 |
216 0018 E1F4 brne .L2 |
217 001a 8091 0000 lds r24,ptr.6 |
218 001e 9091 0000 lds r25,(ptr.6)+1 |
219 0022 0196 adiw r24,1 |
220 0024 9093 0000 sts (ptr.6)+1,r25 |
221 0028 8093 0000 sts ptr.6,r24 |
222 002c FC01 movw r30,r24 |
223 002e E050 subi r30,lo8(-(TxdBuffer)) |
224 0030 F040 sbci r31,hi8(-(TxdBuffer)) |
225 0032 E081 ld r30,Z |
226 0034 ED30 cpi r30,lo8(13) |
227 0036 19F0 breq .L4 |
228 0038 8A3A cpi r24,170 |
229 003a 9105 cpc r25,__zero_reg__ |
230 003c 39F4 brne .L3 |
231 .L4: |
232 003e 1092 0000 sts (ptr.6)+1,__zero_reg__ |
233 0042 1092 0000 sts ptr.6,__zero_reg__ |
234 0046 81E0 ldi r24,lo8(1) |
235 0048 8093 0000 sts UebertragungAbgeschlossen,r24 |
236 .L3: |
237 004c E093 C600 sts 198,r30 |
238 0050 04C0 rjmp .L1 |
239 .L2: |
240 0052 1092 0000 sts (ptr.6)+1,__zero_reg__ |
241 0056 1092 0000 sts ptr.6,__zero_reg__ |
242 .L1: |
243 /* epilogue: frame size=0 */ |
244 005a FF91 pop r31 |
245 005c EF91 pop r30 |
246 005e 9F91 pop r25 |
247 0060 8F91 pop r24 |
248 0062 0F90 pop __tmp_reg__ |
249 0064 0FBE out __SREG__,__tmp_reg__ |
250 0066 0F90 pop __tmp_reg__ |
251 0068 1F90 pop __zero_reg__ |
252 006a 1895 reti |
253 /* epilogue end (size=9) */ |
254 /* function __vector_22 size 54 (36) */ |
256 .lcomm crc.1,2 |
257 .lcomm crc1.2,1 |
258 .lcomm crc2.3,1 |
259 .lcomm buf_ptr.4,1 |
260 .lcomm UartState.5,1 |
261 .global __vector_20 |
263 __vector_20: |
264 /* prologue: frame size=0 */ |
265 006c 1F92 push __zero_reg__ |
266 006e 0F92 push __tmp_reg__ |
267 0070 0FB6 in __tmp_reg__,__SREG__ |
268 0072 0F92 push __tmp_reg__ |
269 0074 1124 clr __zero_reg__ |
270 0076 2F93 push r18 |
271 0078 3F93 push r19 |
272 007a 4F93 push r20 |
273 007c 5F93 push r21 |
274 007e 6F93 push r22 |
275 0080 7F93 push r23 |
276 0082 8F93 push r24 |
277 0084 9F93 push r25 |
278 0086 AF93 push r26 |
279 0088 BF93 push r27 |
280 008a CF93 push r28 |
281 008c EF93 push r30 |
282 008e FF93 push r31 |
283 /* prologue end (size=18) */ |
284 0090 90E0 ldi r25,lo8(0) |
285 0092 8091 0000 lds r24,JetiUpdateModeActive |
286 0096 8130 cpi r24,lo8(1) |
287 0098 29F4 brne .L7 |
288 009a 8091 C600 lds r24,198 |
289 009e 8093 CE00 sts 206,r24 |
290 00a2 CCC0 rjmp .L6 |
291 .L7: |
292 00a4 8091 0000 lds r24,JetiUpdateModeActive |
293 00a8 8230 cpi r24,lo8(2) |
294 00aa 29F4 brne .L8 |
295 00ac 8091 C600 lds r24,198 |
296 00b0 8093 0000 sts RxdBuffer,r24 |
297 00b4 C3C0 rjmp .L6 |
298 .L8: |
299 00b6 8091 C600 lds r24,198 |
300 00ba 8093 0000 sts SioTmp,r24 |
301 00be 5091 0000 lds r21,buf_ptr.4 |
302 00c2 5A3A cpi r21,lo8(-86) |
303 00c4 10F0 brlo .L9 |
304 00c6 9093 0000 sts UartState.5,r25 |
305 .L9: |
306 00ca 8091 0000 lds r24,SioTmp |
307 00ce 8D30 cpi r24,lo8(13) |
308 00d0 09F0 breq .+2 |
309 00d2 65C0 rjmp .L10 |
310 00d4 8091 0000 lds r24,UartState.5 |
311 00d8 8230 cpi r24,lo8(2) |
312 00da 09F0 breq .+2 |
313 00dc 60C0 rjmp .L10 |
314 00de 9093 0000 sts UartState.5,r25 |
315 00e2 852F mov r24,r21 |
316 00e4 9927 clr r25 |
317 00e6 8050 subi r24,lo8(-(RxdBuffer)) |
318 00e8 9040 sbci r25,hi8(-(RxdBuffer)) |
319 00ea FC01 movw r30,r24 |
320 00ec 3297 sbiw r30,2 |
321 00ee 4081 ld r20,Z |
322 00f0 2091 0000 lds r18,crc.1 |
323 00f4 3091 0000 lds r19,(crc.1)+1 |
324 00f8 241B sub r18,r20 |
325 00fa 3109 sbc r19,__zero_reg__ |
326 00fc DC01 movw r26,r24 |
327 00fe 1197 sbiw r26,1 |
328 0100 8C91 ld r24,X |
329 0102 281B sub r18,r24 |
330 0104 3109 sbc r19,__zero_reg__ |
331 0106 C901 movw r24,r18 |
332 0108 9F70 andi r25,hi8(4095) |
333 010a 9093 0000 sts (crc.1)+1,r25 |
334 010e 8093 0000 sts crc.1,r24 |
335 0112 46E0 ldi r20,6 |
336 0114 9695 1: lsr r25 |
337 0116 8795 ror r24 |
338 0118 4A95 dec r20 |
339 011a E1F7 brne 1b |
340 011c 982F mov r25,r24 |
341 011e 935C subi r25,lo8(-(61)) |
342 0120 9093 0000 sts crc1.2,r25 |
343 0124 2F73 andi r18,lo8(63) |
344 0126 3070 andi r19,hi8(63) |
345 0128 235C subi r18,lo8(-(61)) |
346 012a 2093 0000 sts crc2.3,r18 |
347 012e 8081 ld r24,Z |
348 0130 9817 cp r25,r24 |
349 0132 29F4 brne .L11 |
350 0134 8C91 ld r24,X |
351 0136 2817 cp r18,r24 |
352 0138 11F4 brne .L11 |
353 013a 91E0 ldi r25,lo8(1) |
354 013c 06C0 rjmp .L12 |
355 .L11: |
356 013e 90E0 ldi r25,lo8(0) |
357 0140 8091 0000 lds r24,CntCrcError |
358 0144 8F5F subi r24,lo8(-(1)) |
359 0146 8093 0000 sts CntCrcError,r24 |
360 .L12: |
361 014a C091 0000 lds r28,NeuerDatensatzEmpfangen |
362 014e CC23 tst r28 |
363 0150 09F0 breq .+2 |
364 0152 74C0 rjmp .L6 |
365 0154 9923 tst r25 |
366 0156 09F4 brne .+2 |
367 0158 71C0 rjmp .L6 |
368 015a 81E0 ldi r24,lo8(1) |
369 015c 8093 0000 sts NeuerDatensatzEmpfangen,r24 |
370 0160 580F add r21,r24 |
371 0162 5093 0000 sts AnzahlEmpfangsBytes,r21 |
372 0166 5150 subi r21,lo8(-(-1)) |
373 0168 E52F mov r30,r21 |
374 016a FF27 clr r31 |
375 016c E050 subi r30,lo8(-(RxdBuffer)) |
376 016e F040 sbci r31,hi8(-(RxdBuffer)) |
377 0170 8DE0 ldi r24,lo8(13) |
378 0172 8083 st Z,r24 |
379 0174 8091 0000 lds r24,RxdBuffer+2 |
380 0178 8235 cpi r24,lo8(82) |
381 017a 09F0 breq .+2 |
382 017c 5FC0 rjmp .L6 |
383 017e 0E94 0000 call LcdClear |
384 0182 88E1 ldi r24,lo8(24) |
385 0184 90E0 ldi r25,hi8(24) |
386 0186 2CE0 ldi r18,lo8(12) |
387 /* #APP */ |
388 0188 0FB6 in __tmp_reg__,__SREG__ |
389 018a F894 cli |
390 018c A895 wdr |
391 018e 8093 6000 sts 96,r24 |
392 0192 0FBE out __SREG__,__tmp_reg__ |
393 0194 2093 6000 sts 96,r18 |
394 /* #NOAPP */ |
395 0198 C093 0000 sts ServoActive,r28 |
396 019c 4FC0 rjmp .L6 |
397 .L10: |
398 019e 2091 0000 lds r18,UartState.5 |
399 01a2 822F mov r24,r18 |
400 01a4 9927 clr r25 |
401 01a6 8130 cpi r24,1 |
402 01a8 9105 cpc r25,__zero_reg__ |
403 01aa F9F0 breq .L19 |
404 01ac 8230 cpi r24,2 |
405 01ae 9105 cpc r25,__zero_reg__ |
406 01b0 1CF4 brge .L24 |
407 01b2 892B or r24,r25 |
408 01b4 21F0 breq .L17 |
409 01b6 40C0 rjmp .L23 |
410 .L24: |
411 01b8 0297 sbiw r24,2 |
412 01ba 11F1 breq .L20 |
413 01bc 3DC0 rjmp .L23 |
414 .L17: |
415 01be 8091 0000 lds r24,SioTmp |
416 01c2 8332 cpi r24,lo8(35) |
417 01c4 39F4 brne .L18 |
418 01c6 8091 0000 lds r24,NeuerDatensatzEmpfangen |
419 01ca 8823 tst r24 |
420 01cc 19F4 brne .L18 |
421 01ce 81E0 ldi r24,lo8(1) |
422 01d0 8093 0000 sts UartState.5,r24 |
423 .L18: |
424 01d4 8091 0000 lds r24,SioTmp |
425 01d8 8093 0000 sts RxdBuffer,r24 |
426 01dc 81E0 ldi r24,lo8(1) |
427 01de 8093 0000 sts buf_ptr.4,r24 |
428 01e2 8091 0000 lds r24,SioTmp |
429 01e6 9927 clr r25 |
430 01e8 22C0 rjmp .L25 |
431 .L19: |
432 01ea 2F5F subi r18,lo8(-(1)) |
433 01ec 2093 0000 sts UartState.5,r18 |
434 01f0 E52F mov r30,r21 |
435 01f2 FF27 clr r31 |
436 01f4 E050 subi r30,lo8(-(RxdBuffer)) |
437 01f6 F040 sbci r31,hi8(-(RxdBuffer)) |
438 01f8 8091 0000 lds r24,SioTmp |
439 01fc 8083 st Z,r24 |
440 01fe 09C0 rjmp .L26 |
441 .L20: |
442 0200 E52F mov r30,r21 |
443 0202 FF27 clr r31 |
444 0204 E050 subi r30,lo8(-(RxdBuffer)) |
445 0206 F040 sbci r31,hi8(-(RxdBuffer)) |
446 0208 8091 0000 lds r24,SioTmp |
447 020c 8083 st Z,r24 |
448 020e 5A3A cpi r21,lo8(-86) |
449 0210 20F4 brsh .L21 |
450 .L26: |
451 0212 5F5F subi r21,lo8(-(1)) |
452 0214 5093 0000 sts buf_ptr.4,r21 |
453 0218 02C0 rjmp .L22 |
454 .L21: |
455 021a 1092 0000 sts UartState.5,__zero_reg__ |
456 .L22: |
457 021e 2091 0000 lds r18,SioTmp |
458 0222 8091 0000 lds r24,crc.1 |
459 0226 9091 0000 lds r25,(crc.1)+1 |
460 022a 820F add r24,r18 |
461 022c 911D adc r25,__zero_reg__ |
462 .L25: |
463 022e 9093 0000 sts (crc.1)+1,r25 |
464 0232 8093 0000 sts crc.1,r24 |
465 0236 02C0 rjmp .L6 |
466 .L23: |
467 0238 1092 0000 sts UartState.5,__zero_reg__ |
468 .L6: |
469 /* epilogue: frame size=0 */ |
470 023c FF91 pop r31 |
471 023e EF91 pop r30 |
472 0240 CF91 pop r28 |
473 0242 BF91 pop r27 |
474 0244 AF91 pop r26 |
475 0246 9F91 pop r25 |
476 0248 8F91 pop r24 |
477 024a 7F91 pop r23 |
478 024c 6F91 pop r22 |
479 024e 5F91 pop r21 |
480 0250 4F91 pop r20 |
481 0252 3F91 pop r19 |
482 0254 2F91 pop r18 |
483 0256 0F90 pop __tmp_reg__ |
484 0258 0FBE out __SREG__,__tmp_reg__ |
485 025a 0F90 pop __tmp_reg__ |
486 025c 1F90 pop __zero_reg__ |
487 025e 1895 reti |
488 /* epilogue end (size=18) */ |
489 /* function __vector_20 size 256 (220) */ |
491 .global AddCRC |
493 AddCRC: |
494 /* prologue: frame size=0 */ |
495 /* prologue end (size=0) */ |
496 0260 AC01 movw r20,r24 |
497 0262 A0E0 ldi r26,lo8(0) |
498 0264 B0E0 ldi r27,hi8(0) |
499 0266 9D01 movw r18,r26 |
500 0268 A817 cp r26,r24 |
501 026a B907 cpc r27,r25 |
502 026c 48F4 brsh .L33 |
503 026e E0E0 ldi r30,lo8(TxdBuffer) |
504 0270 F0E0 ldi r31,hi8(TxdBuffer) |
505 .L31: |
506 0272 8191 ld r24,Z+ |
507 0274 280F add r18,r24 |
508 0276 311D adc r19,__zero_reg__ |
509 0278 1196 adiw r26,1 |
510 027a A417 cp r26,r20 |
511 027c B507 cpc r27,r21 |
512 027e C8F3 brlo .L31 |
513 .L33: |
514 0280 3F70 andi r19,hi8(4095) |
515 0282 FD01 movw r30,r26 |
516 0284 E050 subi r30,lo8(-(TxdBuffer)) |
517 0286 F040 sbci r31,hi8(-(TxdBuffer)) |
518 0288 C901 movw r24,r18 |
519 028a 56E0 ldi r21,6 |
520 028c 9695 1: lsr r25 |
521 028e 8795 ror r24 |
522 0290 5A95 dec r21 |
523 0292 E1F7 brne 1b |
524 0294 835C subi r24,lo8(-(61)) |
525 0296 8083 st Z,r24 |
526 0298 1196 adiw r26,1 |
527 029a FD01 movw r30,r26 |
528 029c E050 subi r30,lo8(-(TxdBuffer)) |
529 029e F040 sbci r31,hi8(-(TxdBuffer)) |
530 02a0 2F73 andi r18,lo8(63) |
531 02a2 3070 andi r19,hi8(63) |
532 02a4 822F mov r24,r18 |
533 02a6 835C subi r24,lo8(-(61)) |
534 02a8 8083 st Z,r24 |
535 02aa A050 subi r26,lo8(-(TxdBuffer+1)) |
536 02ac B040 sbci r27,hi8(-(TxdBuffer+1)) |
537 02ae 8DE0 ldi r24,lo8(13) |
538 02b0 8C93 st X,r24 |
539 02b2 1092 0000 sts UebertragungAbgeschlossen,__zero_reg__ |
540 02b6 8091 0000 lds r24,TxdBuffer |
541 02ba 8093 C600 sts 198,r24 |
542 /* epilogue: frame size=0 */ |
543 02be 0895 ret |
544 /* epilogue end (size=1) */ |
545 /* function AddCRC size 49 (48) */ |
547 .global SendOutData |
549 SendOutData: |
550 /* prologue: frame size=0 */ |
551 02c0 A0E0 ldi r26,lo8(0) |
552 02c2 B0E0 ldi r27,hi8(0) |
553 02c4 E0E0 ldi r30,pm_lo8(1f) |
554 02c6 F0E0 ldi r31,pm_hi8(1f) |
555 02c8 0C94 0000 jmp __prologue_saves__+18 |
556 1: |
557 /* prologue end (size=6) */ |
558 02cc 2C85 ldd r18,Y+12 |
559 02ce 9D85 ldd r25,Y+13 |
560 02d0 0E85 ldd r16,Y+14 |
561 02d2 BB24 clr r11 |
562 02d4 83E2 ldi r24,lo8(35) |
563 02d6 8093 0000 sts TxdBuffer,r24 |
564 02da 9F59 subi r25,lo8(-(97)) |
565 02dc 9093 0000 sts TxdBuffer+1,r25 |
566 02e0 2093 0000 sts TxdBuffer+2,r18 |
567 02e4 33E0 ldi r19,lo8(3) |
568 02e6 E32E mov r14,r19 |
569 02e8 F12C mov r15,__zero_reg__ |
570 02ea 0023 tst r16 |
571 02ec 09F4 brne .+2 |
572 02ee 9EC0 rjmp .L49 |
573 02f0 CF84 ldd r12,Y+15 |
574 02f2 D888 ldd r13,Y+16 |
575 02f4 BE01 movw r22,r28 |
576 02f6 6D5E subi r22,lo8(-(19)) |
577 02f8 7F4F sbci r23,hi8(-(19)) |
578 02fa A989 ldd r26,Y+17 |
579 02fc BA89 ldd r27,Y+18 |
580 02fe 0150 subi r16,lo8(-(-1)) |
581 .L50: |
582 0300 1097 sbiw r26,0 |
583 0302 09F4 brne .+2 |
584 0304 93C0 rjmp .L49 |
585 0306 1097 sbiw r26,0 |
586 0308 B9F0 breq .L38 |
587 030a F601 movw r30,r12 |
588 030c EB0D add r30,r11 |
589 030e F11D adc r31,__zero_reg__ |
590 0310 B394 inc r11 |
591 0312 9081 ld r25,Z |
592 0314 1197 sbiw r26,1 |
593 0316 91F4 brne .L40 |
594 0318 0023 tst r16 |
595 031a 49F1 breq .L41 |
596 031c FB01 movw r30,r22 |
597 031e 6E5F subi r22,lo8(-(2)) |
598 0320 7F4F sbci r23,hi8(-(2)) |
599 0322 DB01 movw r26,r22 |
600 0324 C080 ld r12,Z |
601 0326 D180 ldd r13,Z+1 |
602 0328 6E5F subi r22,lo8(-(2)) |
603 032a 7F4F sbci r23,hi8(-(2)) |
604 032c 0D90 ld __tmp_reg__,X+ |
605 032e BC91 ld r27,X |
606 0330 A02D mov r26,__tmp_reg__ |
607 0332 BB24 clr r11 |
608 0334 0150 subi r16,lo8(-(-1)) |
609 0336 02C0 rjmp .L40 |
610 .L38: |
611 0338 90E0 ldi r25,lo8(0) |
612 033a 19C0 rjmp .L41 |
613 .L40: |
614 033c 1097 sbiw r26,0 |
615 033e B9F0 breq .L41 |
616 0340 F601 movw r30,r12 |
617 0342 EB0D add r30,r11 |
618 0344 F11D adc r31,__zero_reg__ |
619 0346 B394 inc r11 |
620 0348 4081 ld r20,Z |
621 034a 1197 sbiw r26,1 |
622 034c 91F4 brne .L43 |
623 034e 0023 tst r16 |
624 0350 41F1 breq .L44 |
625 0352 FB01 movw r30,r22 |
626 0354 6E5F subi r22,lo8(-(2)) |
627 0356 7F4F sbci r23,hi8(-(2)) |
628 0358 DB01 movw r26,r22 |
629 035a C080 ld r12,Z |
630 035c D180 ldd r13,Z+1 |
631 035e 6E5F subi r22,lo8(-(2)) |
632 0360 7F4F sbci r23,hi8(-(2)) |
633 0362 0D90 ld __tmp_reg__,X+ |
634 0364 BC91 ld r27,X |
635 0366 A02D mov r26,__tmp_reg__ |
636 0368 BB24 clr r11 |
637 036a 0150 subi r16,lo8(-(-1)) |
638 036c 02C0 rjmp .L43 |
639 .L41: |
640 036e 40E0 ldi r20,lo8(0) |
641 0370 18C0 rjmp .L44 |
642 .L43: |
643 0372 1097 sbiw r26,0 |
644 0374 B1F0 breq .L44 |
645 0376 F601 movw r30,r12 |
646 0378 EB0D add r30,r11 |
647 037a F11D adc r31,__zero_reg__ |
648 037c B394 inc r11 |
649 037e 1081 ld r17,Z |
650 0380 1197 sbiw r26,1 |
651 0382 81F4 brne .L46 |
652 0384 0023 tst r16 |
653 0386 71F0 breq .L46 |
654 0388 FB01 movw r30,r22 |
655 038a 3296 adiw r30,2 |
656 038c DB01 movw r26,r22 |
657 038e CD90 ld r12,X+ |
658 0390 DC90 ld r13,X |
659 0392 BF01 movw r22,r30 |
660 0394 6E5F subi r22,lo8(-(2)) |
661 0396 7F4F sbci r23,hi8(-(2)) |
662 0398 A081 ld r26,Z |
663 039a B181 ldd r27,Z+1 |
664 039c BB24 clr r11 |
665 039e 0150 subi r16,lo8(-(-1)) |
666 03a0 01C0 rjmp .L46 |
667 .L44: |
668 03a2 10E0 ldi r17,lo8(0) |
669 .L46: |
670 03a4 F701 movw r30,r14 |
671 03a6 E050 subi r30,lo8(-(TxdBuffer)) |
672 03a8 F040 sbci r31,hi8(-(TxdBuffer)) |
673 03aa 892F mov r24,r25 |
674 03ac 8695 lsr r24 |
675 03ae 8695 lsr r24 |
676 03b0 835C subi r24,lo8(-(61)) |
677 03b2 8083 st Z,r24 |
678 03b4 0894 sec |
679 03b6 E11C adc r14,__zero_reg__ |
680 03b8 F11C adc r15,__zero_reg__ |
681 03ba F701 movw r30,r14 |
682 03bc E050 subi r30,lo8(-(TxdBuffer)) |
683 03be F040 sbci r31,hi8(-(TxdBuffer)) |
684 03c0 892F mov r24,r25 |
685 03c2 9927 clr r25 |
686 03c4 8370 andi r24,lo8(3) |
687 03c6 9070 andi r25,hi8(3) |
688 03c8 24E0 ldi r18,4 |
689 03ca 880F 1: lsl r24 |
690 03cc 991F rol r25 |
691 03ce 2A95 dec r18 |
692 03d0 E1F7 brne 1b |
693 03d2 5527 clr r21 |
694 03d4 9A01 movw r18,r20 |
695 03d6 94E0 ldi r25,4 |
696 03d8 3695 1: lsr r19 |
697 03da 2795 ror r18 |
698 03dc 9A95 dec r25 |
699 03de E1F7 brne 1b |
700 03e0 822B or r24,r18 |
701 03e2 835C subi r24,lo8(-(61)) |
702 03e4 8083 st Z,r24 |
703 03e6 0894 sec |
704 03e8 E11C adc r14,__zero_reg__ |
705 03ea F11C adc r15,__zero_reg__ |
706 03ec F701 movw r30,r14 |
707 03ee E050 subi r30,lo8(-(TxdBuffer)) |
708 03f0 F040 sbci r31,hi8(-(TxdBuffer)) |
709 03f2 4F70 andi r20,lo8(15) |
710 03f4 5070 andi r21,hi8(15) |
711 03f6 440F lsl r20 |
712 03f8 551F rol r21 |
713 03fa 440F lsl r20 |
714 03fc 551F rol r21 |
715 03fe 812F mov r24,r17 |
716 0400 9927 clr r25 |
717 0402 26E0 ldi r18,6 |
718 0404 9695 1: lsr r25 |
719 0406 8795 ror r24 |
720 0408 2A95 dec r18 |
721 040a E1F7 brne 1b |
722 040c 842B or r24,r20 |
723 040e 835C subi r24,lo8(-(61)) |
724 0410 8083 st Z,r24 |
725 0412 0894 sec |
726 0414 E11C adc r14,__zero_reg__ |
727 0416 F11C adc r15,__zero_reg__ |
728 0418 F701 movw r30,r14 |
729 041a E050 subi r30,lo8(-(TxdBuffer)) |
730 041c F040 sbci r31,hi8(-(TxdBuffer)) |
731 041e 1F73 andi r17,lo8(63) |
732 0420 135C subi r17,lo8(-(61)) |
733 0422 1083 st Z,r17 |
734 0424 0894 sec |
735 0426 E11C adc r14,__zero_reg__ |
736 0428 F11C adc r15,__zero_reg__ |
737 042a 6ACF rjmp .L50 |
738 .L49: |
739 042c C701 movw r24,r14 |
740 042e 0E94 0000 call AddCRC |
741 /* epilogue: frame size=0 */ |
742 0432 E9E0 ldi r30,9 |
743 0434 0C94 0000 jmp __epilogue_restores__+18 |
744 /* epilogue end (size=3) */ |
745 /* function SendOutData size 191 (182) */ |
747 .global Decode64 |
749 Decode64: |
750 /* prologue: frame size=0 */ |
751 /* prologue end (size=0) */ |
752 0438 A3E0 ldi r26,lo8(3) |
753 043a 7A2F mov r23,r26 |
754 043c 4091 0000 lds r20,AnzahlEmpfangsBytes |
755 0440 4650 subi r20,lo8(-(-6)) |
756 .L62: |
757 0442 4423 tst r20 |
758 0444 09F4 brne .+2 |
759 0446 58C0 rjmp .L53 |
760 0448 E72F mov r30,r23 |
761 044a FF27 clr r31 |
762 044c E050 subi r30,lo8(-(RxdBuffer)) |
763 044e F040 sbci r31,hi8(-(RxdBuffer)) |
764 0450 8081 ld r24,Z |
765 0452 8D53 subi r24,lo8(-(-61)) |
766 0454 7F5F subi r23,lo8(-(1)) |
767 0456 E72F mov r30,r23 |
768 0458 FF27 clr r31 |
769 045a E050 subi r30,lo8(-(RxdBuffer)) |
770 045c F040 sbci r31,hi8(-(RxdBuffer)) |
771 045e 2081 ld r18,Z |
772 0460 2D53 subi r18,lo8(-(-61)) |
773 0462 7F5F subi r23,lo8(-(1)) |
774 0464 E72F mov r30,r23 |
775 0466 FF27 clr r31 |
776 0468 E050 subi r30,lo8(-(RxdBuffer)) |
777 046a F040 sbci r31,hi8(-(RxdBuffer)) |
778 046c 3081 ld r19,Z |
779 046e 3D53 subi r19,lo8(-(-61)) |
780 0470 7F5F subi r23,lo8(-(1)) |
781 0472 E72F mov r30,r23 |
782 0474 FF27 clr r31 |
783 0476 E050 subi r30,lo8(-(RxdBuffer)) |
784 0478 F040 sbci r31,hi8(-(RxdBuffer)) |
785 047a 6081 ld r22,Z |
786 047c 6D53 subi r22,lo8(-(-61)) |
787 047e 7F5F subi r23,lo8(-(1)) |
788 0480 9927 clr r25 |
789 0482 880F lsl r24 |
790 0484 991F rol r25 |
791 0486 880F lsl r24 |
792 0488 991F rol r25 |
793 048a 522F mov r21,r18 |
794 048c 5295 swap r21 |
795 048e 5F70 andi r21,0x0f |
796 0490 582B or r21,r24 |
797 0492 822F mov r24,r18 |
798 0494 9927 clr r25 |
799 0496 8F70 andi r24,lo8(15) |
800 0498 9070 andi r25,hi8(15) |
801 049a F4E0 ldi r31,4 |
802 049c 880F 1: lsl r24 |
803 049e 991F rol r25 |
804 04a0 FA95 dec r31 |
805 04a2 E1F7 brne 1b |
806 04a4 232F mov r18,r19 |
807 04a6 2695 lsr r18 |
808 04a8 2695 lsr r18 |
809 04aa 282B or r18,r24 |
810 04ac 832F mov r24,r19 |
811 04ae 9927 clr r25 |
812 04b0 8370 andi r24,lo8(3) |
813 04b2 9070 andi r25,hi8(3) |
814 04b4 E6E0 ldi r30,6 |
815 04b6 880F 1: lsl r24 |
816 04b8 991F rol r25 |
817 04ba EA95 dec r30 |
818 04bc E1F7 brne 1b |
819 04be 682B or r22,r24 |
820 04c0 4150 subi r20,lo8(-(-1)) |
821 04c2 4F3F cpi r20,lo8(-1) |
822 04c4 C9F0 breq .L53 |
823 04c6 EA2F mov r30,r26 |
824 04c8 FF27 clr r31 |
825 04ca E050 subi r30,lo8(-(RxdBuffer)) |
826 04cc F040 sbci r31,hi8(-(RxdBuffer)) |
827 04ce 5083 st Z,r21 |
828 04d0 AF5F subi r26,lo8(-(1)) |
829 04d2 4150 subi r20,lo8(-(-1)) |
830 04d4 4F3F cpi r20,lo8(-1) |
831 04d6 81F0 breq .L53 |
832 04d8 EA2F mov r30,r26 |
833 04da FF27 clr r31 |
834 04dc E050 subi r30,lo8(-(RxdBuffer)) |
835 04de F040 sbci r31,hi8(-(RxdBuffer)) |
836 04e0 2083 st Z,r18 |
837 04e2 AF5F subi r26,lo8(-(1)) |
838 04e4 4150 subi r20,lo8(-(-1)) |
839 04e6 4F3F cpi r20,lo8(-1) |
840 04e8 39F0 breq .L53 |
841 04ea EA2F mov r30,r26 |
842 04ec FF27 clr r31 |
843 04ee E050 subi r30,lo8(-(RxdBuffer)) |
844 04f0 F040 sbci r31,hi8(-(RxdBuffer)) |
845 04f2 6083 st Z,r22 |
846 04f4 AF5F subi r26,lo8(-(1)) |
847 04f6 A5CF rjmp .L62 |
848 .L53: |
849 04f8 80E0 ldi r24,lo8(RxdBuffer+3) |
850 04fa 90E0 ldi r25,hi8(RxdBuffer+3) |
851 04fc 9093 0000 sts (pRxData)+1,r25 |
852 0500 8093 0000 sts pRxData,r24 |
853 0504 A350 subi r26,lo8(-(-3)) |
854 0506 A093 0000 sts RxDataLen,r26 |
855 /* epilogue: frame size=0 */ |
856 050a 0895 ret |
857 /* epilogue end (size=1) */ |
858 /* function Decode64 size 106 (105) */ |
860 .global BearbeiteRxDaten |
862 BearbeiteRxDaten: |
863 /* prologue: frame size=2 */ |
864 050c A2E0 ldi r26,lo8(2) |
865 050e B0E0 ldi r27,hi8(2) |
866 0510 E0E0 ldi r30,pm_lo8(1f) |
867 0512 F0E0 ldi r31,pm_hi8(1f) |
868 0514 0C94 0000 jmp __prologue_saves__+30 |
869 1: |
870 /* prologue end (size=6) */ |
871 0518 8091 0000 lds r24,NeuerDatensatzEmpfangen |
872 051c 8823 tst r24 |
873 051e 09F4 brne .+2 |
874 0520 6BC4 rjmp .L63 |
875 0522 0E94 0000 call Decode64 |
876 0526 8091 0000 lds r24,RxdBuffer+1 |
877 052a 8236 cpi r24,lo8(98) |
878 052c 09F0 breq .+2 |
879 052e 25C3 rjmp .L143 |
880 0530 8091 0000 lds r24,RxdBuffer+2 |
881 0534 9927 clr r25 |
882 0536 8037 cpi r24,112 |
883 0538 9105 cpc r25,__zero_reg__ |
884 053a 09F4 brne .+2 |
885 053c C1C0 rjmp .L82 |
886 053e 8137 cpi r24,113 |
887 0540 9105 cpc r25,__zero_reg__ |
888 0542 C4F4 brge .L139 |
889 0544 8A36 cpi r24,106 |
890 0546 9105 cpc r25,__zero_reg__ |
891 0548 09F4 brne .+2 |
892 054a 8DC2 rjmp .L128 |
893 054c 8B36 cpi r24,107 |
894 054e 9105 cpc r25,__zero_reg__ |
895 0550 44F4 brge .L140 |
896 0552 8B34 cpi r24,75 |
897 0554 9105 cpc r25,__zero_reg__ |
898 0556 71F1 breq .L68 |
899 0558 8636 cpi r24,102 |
900 055a 9105 cpc r25,__zero_reg__ |
901 055c 09F4 brne .+2 |
902 055e 6CC1 rjmp .L108 |
903 0560 0CC3 rjmp .L143 |
904 .L140: |
905 0562 8D36 cpi r24,109 |
906 0564 9105 cpc r25,__zero_reg__ |
907 0566 09F4 brne .+2 |
908 0568 7BC0 rjmp .L76 |
909 056a 8E36 cpi r24,110 |
910 056c 9105 cpc r25,__zero_reg__ |
911 056e 09F4 brne .+2 |
912 0570 5FC0 rjmp .L73 |
913 0572 03C3 rjmp .L143 |
914 .L139: |
915 0574 8437 cpi r24,116 |
916 0576 9105 cpc r25,__zero_reg__ |
917 0578 D1F1 breq .L69 |
918 057a 8537 cpi r24,117 |
919 057c 9105 cpc r25,__zero_reg__ |
920 057e 4CF4 brge .L141 |
921 0580 8137 cpi r24,113 |
922 0582 9105 cpc r25,__zero_reg__ |
923 0584 09F4 brne .+2 |
924 0586 A3C0 rjmp .L83 |
925 0588 8337 cpi r24,115 |
926 058a 9105 cpc r25,__zero_reg__ |
927 058c 09F4 brne .+2 |
928 058e F1C0 rjmp .L101 |
929 0590 F4C2 rjmp .L143 |
930 .L141: |
931 0592 8737 cpi r24,119 |
932 0594 9105 cpc r25,__zero_reg__ |
933 0596 09F4 brne .+2 |
934 0598 28C2 rjmp .L121 |
935 059a 8837 cpi r24,120 |
936 059c 9105 cpc r25,__zero_reg__ |
937 059e 2CF4 brge .L142 |
938 05a0 8537 cpi r24,117 |
939 05a2 9105 cpc r25,__zero_reg__ |
940 05a4 09F4 brne .+2 |
941 05a6 E4C1 rjmp .L115 |
942 05a8 E8C2 rjmp .L143 |
943 .L142: |
944 05aa 8937 cpi r24,121 |
945 05ac 9105 cpc r25,__zero_reg__ |
946 05ae 09F4 brne .+2 |
947 05b0 7AC1 rjmp .L114 |
948 05b2 E3C2 rjmp .L143 |
949 .L68: |
950 05b4 E091 0000 lds r30,pRxData |
951 05b8 F091 0000 lds r31,(pRxData)+1 |
952 05bc 8081 ld r24,Z |
953 05be 9181 ldd r25,Z+1 |
954 05c0 9093 0000 sts (KompassValue)+1,r25 |
955 05c4 8093 0000 sts KompassValue,r24 |
956 05c8 2091 0000 lds r18,KompassStartwert |
957 05cc 3091 0000 lds r19,(KompassStartwert)+1 |
958 05d0 821B sub r24,r18 |
959 05d2 930B sbc r25,r19 |
960 05d4 845E subi r24,lo8(-(540)) |
961 05d6 9D4F sbci r25,hi8(-(540)) |
962 05d8 68E6 ldi r22,lo8(360) |
963 05da 71E0 ldi r23,hi8(360) |
964 05dc 0E94 0000 call __divmodhi4 |
965 05e0 845B subi r24,lo8(-(-180)) |
966 05e2 9040 sbci r25,hi8(-(-180)) |
967 05e4 9093 0000 sts (KompassRichtung)+1,r25 |
968 05e8 8093 0000 sts KompassRichtung,r24 |
969 05ec C6C2 rjmp .L143 |
970 .L69: |
971 05ee 8091 0000 lds r24,AnzahlEmpfangsBytes |
972 05f2 A091 0000 lds r26,pRxData |
973 05f6 B091 0000 lds r27,(pRxData)+1 |
974 05fa 8531 cpi r24,lo8(21) |
975 05fc 40F0 brlo .L70 |
976 05fe 80E1 ldi r24,lo8(16) |
977 0600 E0E0 ldi r30,lo8(MotorTest) |
978 0602 F0E0 ldi r31,hi8(MotorTest) |
979 0604 0D90 ld __tmp_reg__,X+ |
980 0606 0192 st Z+,__tmp_reg__ |
981 0608 8A95 dec r24 |
982 060a E1F7 brne .-8 |
983 060c 0DC0 rjmp .L71 |
984 .L70: |
985 060e 8D91 ld r24,X+ |
986 0610 9D91 ld r25,X+ |
987 0612 0D90 ld __tmp_reg__,X+ |
988 0614 BC91 ld r27,X |
989 0616 A02D mov r26,__tmp_reg__ |
990 0618 8093 0000 sts MotorTest,r24 |
991 061c 9093 0000 sts (MotorTest)+1,r25 |
992 0620 A093 0000 sts (MotorTest)+2,r26 |
993 0624 B093 0000 sts (MotorTest)+3,r27 |
994 .L71: |
995 0628 80EF ldi r24,lo8(-16) |
996 062a 8093 0000 sts PC_MotortestActive,r24 |
997 062e 4BC0 rjmp .L180 |
998 .L73: |
999 0630 8091 0000 lds r24,UebertragungAbgeschlossen |
1000 0634 8823 tst r24 |
1001 0636 E1F3 breq .L73 |
1002 0638 8DE4 ldi r24,lo8(77) |
1003 063a 90E0 ldi r25,hi8(77) |
1004 063c 9F93 push r25 |
1005 063e 8F93 push r24 |
1006 0640 80E0 ldi r24,lo8(Mixer) |
1007 0642 90E0 ldi r25,hi8(Mixer) |
1008 0644 9F93 push r25 |
1009 0646 8F93 push r24 |
1010 0648 81E0 ldi r24,lo8(1) |
1011 064a 8F93 push r24 |
1012 064c 8F93 push r24 |
1013 064e 8EE4 ldi r24,lo8(78) |
1014 0650 8F93 push r24 |
1015 0652 0E94 0000 call SendOutData |
1016 0656 8DB7 in r24,__SP_L__ |
1017 0658 9EB7 in r25,__SP_H__ |
1018 065a 0796 adiw r24,7 |
1019 065c 8DBF out __SP_L__,r24 |
1020 065e 8DC2 rjmp .L143 |
1021 .L76: |
1022 0660 A091 0000 lds r26,pRxData |
1023 0664 B091 0000 lds r27,(pRxData)+1 |
1024 0668 1C91 ld r17,X |
1025 066a 1130 cpi r17,lo8(1) |
1026 066c 81F4 brne .L77 |
1027 066e 8DE4 ldi r24,lo8(77) |
1028 0670 E0E0 ldi r30,lo8(Mixer) |
1029 0672 F0E0 ldi r31,hi8(Mixer) |
1030 0674 0D90 ld __tmp_reg__,X+ |
1031 0676 0192 st Z+,__tmp_reg__ |
1032 0678 8A95 dec r24 |
1033 067a E1F7 brne .-8 |
1034 067c 0E94 0000 call MixerTable_WriteToEEProm |
1035 0680 1983 std Y+1,r17 |
1036 0682 8091 0000 lds r24,VersionInfo+6 |
1037 0686 8F7E andi r24,lo8(-17) |
1038 0688 8093 0000 sts VersionInfo+6,r24 |
1039 068c 01C0 rjmp .L79 |
1040 .L77: |
1041 068e 1982 std Y+1,__zero_reg__ |
1042 .L79: |
1043 0690 8091 0000 lds r24,UebertragungAbgeschlossen |
1044 0694 8823 tst r24 |
1045 0696 E1F3 breq .L79 |
1046 0698 81E0 ldi r24,lo8(1) |
1047 069a 90E0 ldi r25,hi8(1) |
1048 069c 9F93 push r25 |
1049 069e 8F93 push r24 |
1050 06a0 CE01 movw r24,r28 |
1051 06a2 0196 adiw r24,1 |
1052 06a4 9F93 push r25 |
1053 06a6 8F93 push r24 |
1054 06a8 81E0 ldi r24,lo8(1) |
1055 06aa 8F93 push r24 |
1056 06ac 8F93 push r24 |
1057 06ae 8DE4 ldi r24,lo8(77) |
1058 06b0 8F93 push r24 |
1059 06b2 0E94 0000 call SendOutData |
1060 06b6 ADB7 in r26,__SP_L__ |
1061 06b8 BEB7 in r27,__SP_H__ |
1062 06ba 1796 adiw r26,7 |
1063 06bc ADBF out __SP_L__,r26 |
1064 06be 5DC2 rjmp .L143 |
1065 .L82: |
1066 06c0 81E0 ldi r24,lo8(1) |
1067 06c2 8093 0000 sts GetPPMChannelAnforderung,r24 |
1068 .L180: |
1069 06c6 8FEF ldi r24,lo8(-1) |
1070 06c8 8093 0000 sts PcZugriff,r24 |
1071 06cc 56C2 rjmp .L143 |
1072 .L83: |
1073 06ce E091 0000 lds r30,pRxData |
1074 06d2 F091 0000 lds r31,(pRxData)+1 |
1075 06d6 E081 ld r30,Z |
1076 06d8 8E2F mov r24,r30 |
1077 06da 8A50 subi r24,lo8(-(-10)) |
1078 06dc 8A30 cpi r24,lo8(10) |
1079 06de 58F4 brsh .L84 |
1080 06e0 8983 std Y+1,r24 |
1081 06e2 8823 tst r24 |
1082 06e4 11F4 brne .L85 |
1083 06e6 81E0 ldi r24,lo8(1) |
1084 06e8 03C0 rjmp .L174 |
1085 .L85: |
1086 06ea 8630 cpi r24,lo8(6) |
1087 06ec 10F0 brlo .L86 |
1088 06ee 85E0 ldi r24,lo8(5) |
1089 .L174: |
1090 06f0 8983 std Y+1,r24 |
1091 .L86: |
1092 06f2 61E0 ldi r22,lo8(1) |
1093 06f4 0EC0 rjmp .L177 |
1094 .L84: |
1095 06f6 8E2F mov r24,r30 |
1096 06f8 8451 subi r24,lo8(-(-20)) |
1097 06fa 8A30 cpi r24,lo8(10) |
1098 06fc 70F4 brsh .L89 |
1099 06fe 8983 std Y+1,r24 |
1100 0700 8823 tst r24 |
1101 0702 11F4 brne .L90 |
1102 0704 81E0 ldi r24,lo8(1) |
1103 0706 03C0 rjmp .L175 |
1104 .L90: |
1105 0708 8630 cpi r24,lo8(6) |
1106 070a 10F0 brlo .L91 |
1107 070c 85E0 ldi r24,lo8(5) |
1108 .L175: |
1109 070e 8983 std Y+1,r24 |
1110 .L91: |
1111 0710 60E0 ldi r22,lo8(0) |
1112 .L177: |
1113 0712 8981 ldd r24,Y+1 |
1114 0714 0E94 0000 call SetDefaultParameter |
1115 0718 12C0 rjmp .L98 |
1116 .L89: |
1117 071a E983 std Y+1,r30 |
1118 071c EF3F cpi r30,lo8(-1) |
1119 071e 19F4 brne .L94 |
1120 0720 0E94 0000 call GetActiveParamSet |
1121 0724 8983 std Y+1,r24 |
1122 .L94: |
1123 0726 8981 ldd r24,Y+1 |
1124 0728 8823 tst r24 |
1125 072a 11F4 brne .L95 |
1126 072c 81E0 ldi r24,lo8(1) |
1127 072e 03C0 rjmp .L176 |
1128 .L95: |
1129 0730 8630 cpi r24,lo8(6) |
1130 0732 10F0 brlo .L96 |
1131 0734 85E0 ldi r24,lo8(5) |
1132 .L176: |
1133 0736 8983 std Y+1,r24 |
1134 .L96: |
1135 0738 8981 ldd r24,Y+1 |
1136 073a 0E94 0000 call ParamSet_ReadFromEEProm |
1137 .L98: |
1138 073e 8091 0000 lds r24,UebertragungAbgeschlossen |
1139 0742 8823 tst r24 |
1140 0744 E1F3 breq .L98 |
1141 0746 83E7 ldi r24,lo8(115) |
1142 0748 90E0 ldi r25,hi8(115) |
1143 074a 9F93 push r25 |
1144 074c 8F93 push r24 |
1145 074e 80E0 ldi r24,lo8(EE_Parameter) |
1146 0750 90E0 ldi r25,hi8(EE_Parameter) |
1147 0752 9F93 push r25 |
1148 0754 8F93 push r24 |
1149 0756 81E0 ldi r24,lo8(1) |
1150 0758 90E0 ldi r25,hi8(1) |
1151 075a 9F93 push r25 |
1152 075c 8F93 push r24 |
1153 075e CE01 movw r24,r28 |
1154 0760 0196 adiw r24,1 |
1155 0762 9F93 push r25 |
1156 0764 8F93 push r24 |
1157 0766 82E0 ldi r24,lo8(2) |
1158 0768 8F93 push r24 |
1159 076a 81E0 ldi r24,lo8(1) |
1160 076c 8F93 push r24 |
1161 076e 81E5 ldi r24,lo8(81) |
1162 0770 72C1 rjmp .L183 |
1163 .L101: |
1164 0772 2091 0000 lds r18,pRxData |
1165 0776 3091 0000 lds r19,(pRxData)+1 |
1166 077a D901 movw r26,r18 |
1167 077c 8C91 ld r24,X |
1168 077e 8150 subi r24,lo8(-(-1)) |
1169 0780 8530 cpi r24,lo8(5) |
1170 0782 08F0 brlo .+2 |
1171 0784 40C0 rjmp .L102 |
1172 0786 F901 movw r30,r18 |
1173 0788 8181 ldd r24,Z+1 |
1174 078a 8535 cpi r24,lo8(85) |
1175 078c E1F5 brne .L102 |
1176 078e 2F5F subi r18,lo8(-(1)) |
1177 0790 3F4F sbci r19,hi8(-(1)) |
1178 0792 83E7 ldi r24,lo8(115) |
1179 0794 E0E0 ldi r30,lo8(EE_Parameter) |
1180 0796 F0E0 ldi r31,hi8(EE_Parameter) |
1181 0798 D901 movw r26,r18 |
1182 079a 0D90 ld __tmp_reg__,X+ |
1183 079c 0192 st Z+,__tmp_reg__ |
1184 079e 8A95 dec r24 |
1185 07a0 E1F7 brne .-8 |
1186 07a2 F901 movw r30,r18 |
1187 07a4 8291 ld r24,-Z |
1188 07a6 0E94 0000 call ParamSet_WriteToEEProm |
1189 07aa 8091 0000 lds r24,EE_Parameter+65 |
1190 07ae 9927 clr r25 |
1191 07b0 AA27 clr r26 |
1192 07b2 BB27 clr r27 |
1193 07b4 BC01 movw r22,r24 |
1194 07b6 CD01 movw r24,r26 |
1195 07b8 24EC ldi r18,lo8(2500) |
1196 07ba 39E0 ldi r19,hi8(2500) |
1197 07bc 40E0 ldi r20,hlo8(2500) |
1198 07be 50E0 ldi r21,hhi8(2500) |
1199 07c0 0E94 0000 call __mulsi3 |
1200 07c4 DC01 movw r26,r24 |
1201 07c6 CB01 movw r24,r22 |
1202 07c8 8093 0000 sts Umschlag180Nick,r24 |
1203 07cc 9093 0000 sts (Umschlag180Nick)+1,r25 |
1204 07d0 A093 0000 sts (Umschlag180Nick)+2,r26 |
1205 07d4 B093 0000 sts (Umschlag180Nick)+3,r27 |
1206 07d8 8091 0000 lds r24,EE_Parameter+66 |
1207 07dc 9927 clr r25 |
1208 07de AA27 clr r26 |
1209 07e0 BB27 clr r27 |
1210 07e2 BC01 movw r22,r24 |
1211 07e4 CD01 movw r24,r26 |
1212 07e6 0E94 0000 call __mulsi3 |
1213 07ea DC01 movw r26,r24 |
1214 07ec CB01 movw r24,r22 |
1215 07ee 8093 0000 sts Umschlag180Roll,r24 |
1216 07f2 9093 0000 sts (Umschlag180Roll)+1,r25 |
1217 07f6 A093 0000 sts (Umschlag180Roll)+2,r26 |
1218 07fa B093 0000 sts (Umschlag180Roll)+3,r27 |
1219 07fe 0E94 0000 call GetActiveParamSet |
1220 0802 8983 std Y+1,r24 |
1221 0804 01C0 rjmp .L104 |
1222 .L102: |
1223 0806 1982 std Y+1,__zero_reg__ |
1224 .L104: |
1225 0808 8091 0000 lds r24,UebertragungAbgeschlossen |
1226 080c 8823 tst r24 |
1227 080e E1F3 breq .L104 |
1228 0810 81E0 ldi r24,lo8(1) |
1229 0812 90E0 ldi r25,hi8(1) |
1230 0814 9F93 push r25 |
1231 0816 8F93 push r24 |
1232 0818 CE01 movw r24,r28 |
1233 081a 0196 adiw r24,1 |
1234 081c 9F93 push r25 |
1235 081e 8F93 push r24 |
1236 0820 81E0 ldi r24,lo8(1) |
1237 0822 8F93 push r24 |
1238 0824 8F93 push r24 |
1239 0826 83E5 ldi r24,lo8(83) |
1240 0828 8F93 push r24 |
1241 082a 0E94 0000 call SendOutData |
1242 082e 8DB7 in r24,__SP_L__ |
1243 0830 9EB7 in r25,__SP_H__ |
1244 0832 0796 adiw r24,7 |
1245 0834 8DBF out __SP_L__,r24 |
1246 0836 26C0 rjmp .L184 |
1247 .L108: |
1248 0838 E091 0000 lds r30,pRxData |
1249 083c F091 0000 lds r31,(pRxData)+1 |
1250 0840 E081 ld r30,Z |
1251 0842 8E2F mov r24,r30 |
1252 0844 8150 subi r24,lo8(-(-1)) |
1253 0846 8530 cpi r24,lo8(5) |
1254 0848 18F4 brsh .L109 |
1255 084a 8E2F mov r24,r30 |
1256 084c 0E94 0000 call ParamSet_ReadFromEEProm |
1257 .L109: |
1258 0850 0E94 0000 call GetActiveParamSet |
1259 0854 8983 std Y+1,r24 |
1260 .L110: |
1261 0856 8091 0000 lds r24,UebertragungAbgeschlossen |
1262 085a 8823 tst r24 |
1263 085c E1F3 breq .L110 |
1264 085e 81E0 ldi r24,lo8(1) |
1265 0860 90E0 ldi r25,hi8(1) |
1266 0862 9F93 push r25 |
1267 0864 8F93 push r24 |
1268 0866 CE01 movw r24,r28 |
1269 0868 0196 adiw r24,1 |
1270 086a 9F93 push r25 |
1271 086c 8F93 push r24 |
1272 086e 81E0 ldi r24,lo8(1) |
1273 0870 8F93 push r24 |
1274 0872 8F93 push r24 |
1275 0874 86E4 ldi r24,lo8(70) |
1276 0876 8F93 push r24 |
1277 0878 0E94 0000 call SendOutData |
1278 087c ADB7 in r26,__SP_L__ |
1279 087e BEB7 in r27,__SP_H__ |
1280 0880 1796 adiw r26,7 |
1281 0882 ADBF out __SP_L__,r26 |
1282 .L184: |
1283 0884 8091 0000 lds r24,MotorenEin |
1284 0888 8823 tst r24 |
1285 088a 29F4 brne .L113 |
1286 088c 6EE6 ldi r22,lo8(110) |
1287 088e 70E0 ldi r23,hi8(110) |
1288 0890 8981 ldd r24,Y+1 |
1289 0892 0E94 0000 call Piep |
1290 .L113: |
1291 0896 80E0 ldi r24,lo8(0) |
1292 0898 0E94 0000 call LipoDetection |
1293 089c 8091 0000 lds r24,EE_Parameter+39 |
1294 08a0 0E94 0000 call LIBFC_ReceiverInit |
1295 08a4 6AC1 rjmp .L143 |
1296 .L114: |
1297 08a6 E091 0000 lds r30,pRxData |
1298 08aa F091 0000 lds r31,(pRxData)+1 |
1299 08ae 8081 ld r24,Z |
1300 08b0 9927 clr r25 |
1301 08b2 87FD sbrc r24,7 |
1302 08b4 9095 com r25 |
1303 08b6 9093 0000 sts (PPM_in+26)+1,r25 |
1304 08ba 8093 0000 sts PPM_in+26,r24 |
1305 08be 8181 ldd r24,Z+1 |
1306 08c0 9927 clr r25 |
1307 08c2 87FD sbrc r24,7 |
1308 08c4 9095 com r25 |
1309 08c6 9093 0000 sts (PPM_in+28)+1,r25 |
1310 08ca 8093 0000 sts PPM_in+28,r24 |
1311 08ce 8281 ldd r24,Z+2 |
1312 08d0 9927 clr r25 |
1313 08d2 87FD sbrc r24,7 |
1314 08d4 9095 com r25 |
1315 08d6 9093 0000 sts (PPM_in+30)+1,r25 |
1316 08da 8093 0000 sts PPM_in+30,r24 |
1317 08de 8381 ldd r24,Z+3 |
1318 08e0 9927 clr r25 |
1319 08e2 87FD sbrc r24,7 |
1320 08e4 9095 com r25 |
1321 08e6 9093 0000 sts (PPM_in+32)+1,r25 |
1322 08ea 8093 0000 sts PPM_in+32,r24 |
1323 08ee 8481 ldd r24,Z+4 |
1324 08f0 9927 clr r25 |
1325 08f2 87FD sbrc r24,7 |
1326 08f4 9095 com r25 |
1327 08f6 9093 0000 sts (PPM_in+34)+1,r25 |
1328 08fa 8093 0000 sts PPM_in+34,r24 |
1329 08fe 8581 ldd r24,Z+5 |
1330 0900 9927 clr r25 |
1331 0902 87FD sbrc r24,7 |
1332 0904 9095 com r25 |
1333 0906 9093 0000 sts (PPM_in+36)+1,r25 |
1334 090a 8093 0000 sts PPM_in+36,r24 |
1335 090e 8681 ldd r24,Z+6 |
1336 0910 9927 clr r25 |
1337 0912 87FD sbrc r24,7 |
1338 0914 9095 com r25 |
1339 0916 9093 0000 sts (PPM_in+38)+1,r25 |
1340 091a 8093 0000 sts PPM_in+38,r24 |
1341 091e 8781 ldd r24,Z+7 |
1342 0920 9927 clr r25 |
1343 0922 87FD sbrc r24,7 |
1344 0924 9095 com r25 |
1345 0926 9093 0000 sts (PPM_in+40)+1,r25 |
1346 092a 8093 0000 sts PPM_in+40,r24 |
1347 092e 8085 ldd r24,Z+8 |
1348 0930 9927 clr r25 |
1349 0932 87FD sbrc r24,7 |
1350 0934 9095 com r25 |
1351 0936 9093 0000 sts (PPM_in+42)+1,r25 |
1352 093a 8093 0000 sts PPM_in+42,r24 |
1353 093e 8185 ldd r24,Z+9 |
1354 0940 9927 clr r25 |
1355 0942 87FD sbrc r24,7 |
1356 0944 9095 com r25 |
1357 0946 9093 0000 sts (PPM_in+44)+1,r25 |
1358 094a 8093 0000 sts PPM_in+44,r24 |
1359 094e 8285 ldd r24,Z+10 |
1360 0950 9927 clr r25 |
1361 0952 87FD sbrc r24,7 |
1362 0954 9095 com r25 |
1363 0956 9093 0000 sts (PPM_in+46)+1,r25 |
1364 095a 8093 0000 sts PPM_in+46,r24 |
1365 095e 8385 ldd r24,Z+11 |
1366 0960 9927 clr r25 |
1367 0962 87FD sbrc r24,7 |
1368 0964 9095 com r25 |
1369 0966 9093 0000 sts (PPM_in+48)+1,r25 |
1370 096a 8093 0000 sts PPM_in+48,r24 |
1371 096e 05C1 rjmp .L143 |
1372 .L115: |
1373 0970 E091 0000 lds r30,pRxData |
1374 0974 F091 0000 lds r31,(pRxData)+1 |
1375 0978 8081 ld r24,Z |
1376 097a 0E94 0000 call I2C_ReadBLConfig |
1377 097e 8A83 std Y+2,r24 |
1378 0980 8823 tst r24 |
1379 0982 19F4 brne .L116 |
1380 0984 81E0 ldi r24,lo8(1) |
1381 0986 8983 std Y+1,r24 |
1382 0988 01C0 rjmp .L118 |
1383 .L116: |
1384 098a 1982 std Y+1,__zero_reg__ |
1385 .L118: |
1386 098c 8091 0000 lds r24,UebertragungAbgeschlossen |
1387 0990 8823 tst r24 |
1388 0992 E1F3 breq .L118 |
1389 0994 88E0 ldi r24,lo8(8) |
1390 0996 90E0 ldi r25,hi8(8) |
1391 0998 9F93 push r25 |
1392 099a 8F93 push r24 |
1393 099c 80E0 ldi r24,lo8(BLConfig) |
1394 099e 90E0 ldi r25,hi8(BLConfig) |
1395 09a0 9F93 push r25 |
1396 09a2 8F93 push r24 |
1397 09a4 21E0 ldi r18,lo8(1) |
1398 09a6 30E0 ldi r19,hi8(1) |
1399 09a8 3F93 push r19 |
1400 09aa 2F93 push r18 |
1401 09ac 8091 0000 lds r24,pRxData |
1402 09b0 9091 0000 lds r25,(pRxData)+1 |
1403 09b4 9F93 push r25 |
1404 09b6 8F93 push r24 |
1405 09b8 3F93 push r19 |
1406 09ba 2F93 push r18 |
1407 09bc CE01 movw r24,r28 |
1408 09be 0296 adiw r24,2 |
1409 09c0 9F93 push r25 |
1410 09c2 8F93 push r24 |
1411 09c4 3F93 push r19 |
1412 09c6 2F93 push r18 |
1413 09c8 CE01 movw r24,r28 |
1414 09ca 820F add r24,r18 |
1415 09cc 931F adc r25,r19 |
1416 09ce 9F93 push r25 |
1417 09d0 8F93 push r24 |
1418 09d2 84E0 ldi r24,lo8(4) |
1419 09d4 8F93 push r24 |
1420 09d6 81E0 ldi r24,lo8(1) |
1421 09d8 8F93 push r24 |
1422 09da 85E5 ldi r24,lo8(85) |
1423 09dc 8F93 push r24 |
1424 09de 0E94 0000 call SendOutData |
1425 09e2 EDB7 in r30,__SP_L__ |
1426 09e4 FEB7 in r31,__SP_H__ |
1427 09e6 7396 adiw r30,19 |
1428 09e8 3CC0 rjmp .L179 |
1429 .L121: |
1430 09ea 8091 0000 lds r24,RxDataLen |
1431 09ee 8930 cpi r24,lo8(9) |
1432 09f0 08F4 brsh .+2 |
1433 09f2 C3C0 rjmp .L143 |
1434 09f4 2091 0000 lds r18,pRxData |
1435 09f8 3091 0000 lds r19,(pRxData)+1 |
1436 09fc 2F5F subi r18,lo8(-(1)) |
1437 09fe 3F4F sbci r19,hi8(-(1)) |
1438 0a00 88E0 ldi r24,lo8(8) |
1439 0a02 A0E0 ldi r26,lo8(BLConfig) |
1440 0a04 B0E0 ldi r27,hi8(BLConfig) |
1441 0a06 F901 movw r30,r18 |
1442 0a08 0190 ld __tmp_reg__,Z+ |
1443 0a0a 0D92 st X+,__tmp_reg__ |
1444 0a0c 8A95 dec r24 |
1445 0a0e E1F7 brne .-8 |
1446 0a10 D901 movw r26,r18 |
1447 0a12 8E91 ld r24,-X |
1448 0a14 0E94 0000 call I2C_WriteBLConfig |
1449 0a18 8A83 std Y+2,r24 |
1450 0a1a 8823 tst r24 |
1451 0a1c 19F4 brne .L123 |
1452 0a1e 81E0 ldi r24,lo8(1) |
1453 0a20 8983 std Y+1,r24 |
1454 0a22 01C0 rjmp .L125 |
1455 .L123: |
1456 0a24 1982 std Y+1,__zero_reg__ |
1457 .L125: |
1458 0a26 8091 0000 lds r24,UebertragungAbgeschlossen |
1459 0a2a 8823 tst r24 |
1460 0a2c E1F3 breq .L125 |
1461 0a2e 21E0 ldi r18,lo8(1) |
1462 0a30 30E0 ldi r19,hi8(1) |
1463 0a32 3F93 push r19 |
1464 0a34 2F93 push r18 |
1465 0a36 CE01 movw r24,r28 |
1466 0a38 0296 adiw r24,2 |
1467 0a3a 9F93 push r25 |
1468 0a3c 8F93 push r24 |
1469 0a3e 3F93 push r19 |
1470 0a40 2F93 push r18 |
1471 0a42 CE01 movw r24,r28 |
1472 0a44 820F add r24,r18 |
1473 0a46 931F adc r25,r19 |
1474 0a48 9F93 push r25 |
1475 0a4a 8F93 push r24 |
1476 0a4c 82E0 ldi r24,lo8(2) |
1477 0a4e 8F93 push r24 |
1478 0a50 81E0 ldi r24,lo8(1) |
1479 0a52 8F93 push r24 |
1480 0a54 87E5 ldi r24,lo8(87) |
1481 .L183: |
1482 0a56 8F93 push r24 |
1483 0a58 0E94 0000 call SendOutData |
1484 0a5c EDB7 in r30,__SP_L__ |
1485 0a5e FEB7 in r31,__SP_H__ |
1486 0a60 3B96 adiw r30,11 |
1487 .L179: |
1488 0a62 EDBF out __SP_L__,r30 |
1489 0a64 8AC0 rjmp .L143 |
1490 .L128: |
1491 0a66 0E94 0000 call LIBFC_GetCPUType |
1492 0a6a 8983 std Y+1,r24 |
1493 0a6c 8230 cpi r24,lo8(2) |
1494 0a6e 19F0 breq .L130 |
1495 0a70 8430 cpi r24,lo8(4) |
1496 0a72 09F0 breq .+2 |
1497 0a74 82C0 rjmp .L143 |
1498 .L130: |
1499 /* #APP */ |
1500 0a76 F894 cli |
1501 /* #NOAPP */ |
1502 0a78 8091 C100 lds r24,193 |
1503 0a7c 8F73 andi r24,lo8(63) |
1504 0a7e 8093 C100 sts 193,r24 |
1505 0a82 8091 C900 lds r24,201 |
1506 0a86 8F73 andi r24,lo8(63) |
1507 0a88 8093 C900 sts 201,r24 |
1508 0a8c 8091 C100 lds r24,193 |
1509 0a90 877E andi r24,lo8(-25) |
1510 0a92 8093 C100 sts 193,r24 |
1511 0a96 8091 C900 lds r24,201 |
1512 0a9a 877E andi r24,lo8(-25) |
1513 0a9c 8093 C900 sts 201,r24 |
1514 .L178: |
1515 0aa0 8091 C800 lds r24,200 |
1516 0aa4 87FF sbrs r24,7 |
1517 0aa6 03C0 rjmp .L171 |
1518 0aa8 8091 CE00 lds r24,206 |
1519 0aac F9CF rjmp .L178 |
1520 .L171: |
1521 0aae 8091 C000 lds r24,192 |
1522 0ab2 87FF sbrs r24,7 |
1523 0ab4 03C0 rjmp .L173 |
1524 0ab6 8091 C600 lds r24,198 |
1525 0aba F9CF rjmp .L171 |
1526 .L173: |
1527 0abc E091 0000 lds r30,pRxData |
1528 0ac0 F091 0000 lds r31,(pRxData)+1 |
1529 0ac4 8081 ld r24,Z |
1530 0ac6 8823 tst r24 |
1531 0ac8 59F5 brne .L137 |
1532 0aca 81E0 ldi r24,lo8(1) |
1533 0acc 8093 0000 sts JetiUpdateModeActive,r24 |
1534 0ad0 1092 CD00 sts 205,__zero_reg__ |
1535 0ad4 80E4 ldi r24,lo8(64) |
1536 0ad6 90E0 ldi r25,hi8(64) |
1537 0ad8 8093 CC00 sts 204,r24 |
1538 0adc 8091 CD00 lds r24,205 |
1539 0ae0 8093 C500 sts 197,r24 |
1540 0ae4 8091 CC00 lds r24,204 |
1541 0ae8 8093 C400 sts 196,r24 |
1542 0aec 8091 CA00 lds r24,202 |
1543 0af0 8F7D andi r24,lo8(-33) |
1544 0af2 8093 CA00 sts 202,r24 |
1545 0af6 8091 CA00 lds r24,202 |
1546 0afa 8F7E andi r24,lo8(-17) |
1547 0afc 8093 CA00 sts 202,r24 |
1548 0b00 8091 C900 lds r24,201 |
1549 0b04 8B7F andi r24,lo8(-5) |
1550 0b06 8093 C900 sts 201,r24 |
1551 0b0a 8091 CA00 lds r24,202 |
1552 0b0e 8460 ori r24,lo8(4) |
1553 0b10 8093 CA00 sts 202,r24 |
1554 0b14 8091 CA00 lds r24,202 |
1555 0b18 8260 ori r24,lo8(2) |
1556 0b1a 8093 CA00 sts 202,r24 |
1557 0b1e 03C0 rjmp .L138 |
1558 .L137: |
1559 0b20 82E0 ldi r24,lo8(2) |
1560 0b22 8093 0000 sts JetiUpdateModeActive,r24 |
1561 .L138: |
1562 0b26 8091 CA00 lds r24,202 |
1563 0b2a 877F andi r24,lo8(-9) |
1564 0b2c 8093 CA00 sts 202,r24 |
1565 0b30 8091 C200 lds r24,194 |
1566 0b34 877F andi r24,lo8(-9) |
1567 0b36 8093 C200 sts 194,r24 |
1568 0b3a 8091 C900 lds r24,201 |
1569 0b3e 8E7F andi r24,lo8(-2) |
1570 0b40 8093 C900 sts 201,r24 |
1571 0b44 8091 C100 lds r24,193 |
1572 0b48 8861 ori r24,lo8(24) |
1573 0b4a 8093 C100 sts 193,r24 |
1574 0b4e 8091 C900 lds r24,201 |
1575 0b52 8861 ori r24,lo8(24) |
1576 0b54 8093 C900 sts 201,r24 |
1577 0b58 8091 C100 lds r24,193 |
1578 0b5c 8068 ori r24,lo8(-128) |
1579 0b5e 8093 C100 sts 193,r24 |
1580 0b62 8091 C900 lds r24,201 |
1581 0b66 8068 ori r24,lo8(-128) |
1582 0b68 8093 C900 sts 201,r24 |
1583 0b6c 1092 6E00 sts 110,__zero_reg__ |
1584 0b70 1092 6F00 sts 111,__zero_reg__ |
1585 0b74 1092 7000 sts 112,__zero_reg__ |
1586 /* #APP */ |
1587 0b78 7894 sei |
1588 /* #NOAPP */ |
1589 .L143: |
1590 0b7a 8091 0000 lds r24,RxdBuffer+2 |
1591 0b7e 9927 clr r25 |
1592 0b80 8436 cpi r24,100 |
1593 0b82 9105 cpc r25,__zero_reg__ |
1594 0b84 09F4 brne .+2 |
1595 0b86 CDC0 rjmp .L158 |
1596 0b88 8536 cpi r24,101 |
1597 0b8a 9105 cpc r25,__zero_reg__ |
1598 0b8c ACF4 brge .L167 |
1599 0b8e 8136 cpi r24,97 |
1600 0b90 9105 cpc r25,__zero_reg__ |
1601 0b92 09F4 brne .+2 |
1602 0b94 81C0 rjmp .L152 |
1603 0b96 8236 cpi r24,98 |
1604 0b98 9105 cpc r25,__zero_reg__ |
1605 0b9a 2CF4 brge .L168 |
1606 0b9c 8B34 cpi r24,75 |
1607 0b9e 9105 cpc r25,__zero_reg__ |
1608 0ba0 09F4 brne .+2 |
1609 0ba2 5DC0 rjmp .L151 |
1610 0ba4 21C1 rjmp .L65 |
1611 .L168: |
1612 0ba6 8236 cpi r24,98 |
1613 0ba8 9105 cpc r25,__zero_reg__ |
1614 0baa 09F4 brne .+2 |
1615 0bac 82C0 rjmp .L154 |
1616 0bae 8336 cpi r24,99 |
1617 0bb0 9105 cpc r25,__zero_reg__ |
1618 0bb2 09F4 brne .+2 |
1619 0bb4 91C0 rjmp .L155 |
1620 0bb6 18C1 rjmp .L65 |
1621 .L167: |
1622 0bb8 8C36 cpi r24,108 |
1623 0bba 9105 cpc r25,__zero_reg__ |
1624 0bbc 09F4 brne .+2 |
1625 0bbe FFC0 rjmp .L163 |
1626 0bc0 8D36 cpi r24,109 |
1627 0bc2 9105 cpc r25,__zero_reg__ |
1628 0bc4 4CF4 brge .L169 |
1629 0bc6 8736 cpi r24,103 |
1630 0bc8 9105 cpc r25,__zero_reg__ |
1631 0bca 09F4 brne .+2 |
1632 0bcc 0AC1 rjmp .L165 |
1633 0bce 8836 cpi r24,104 |
1634 0bd0 9105 cpc r25,__zero_reg__ |
1635 0bd2 09F4 brne .+2 |
1636 0bd4 C4C0 rjmp .L160 |
1637 0bd6 08C1 rjmp .L65 |
1638 .L169: |
1639 0bd8 8437 cpi r24,116 |
1640 0bda 9105 cpc r25,__zero_reg__ |
1641 0bdc 29F0 breq .L145 |
1642 0bde 8637 cpi r24,118 |
1643 0be0 9105 cpc r25,__zero_reg__ |
1644 0be2 09F4 brne .+2 |
1645 0be4 FAC0 rjmp .L164 |
1646 0be6 00C1 rjmp .L65 |
1647 .L145: |
1648 0be8 8091 0000 lds r24,AnzahlEmpfangsBytes |
1649 0bec A091 0000 lds r26,pRxData |
1650 0bf0 B091 0000 lds r27,(pRxData)+1 |
1651 0bf4 8031 cpi r24,lo8(16) |
1652 0bf6 40F0 brlo .L146 |
1653 0bf8 80E1 ldi r24,lo8(16) |
1654 0bfa E0E0 ldi r30,lo8(MotorTest) |
1655 0bfc F0E0 ldi r31,hi8(MotorTest) |
1656 0bfe 0D90 ld __tmp_reg__,X+ |
1657 0c00 0192 st Z+,__tmp_reg__ |
1658 0c02 8A95 dec r24 |
1659 0c04 E1F7 brne .-8 |
1660 0c06 0DC0 rjmp .L148 |
1661 .L146: |
1662 0c08 8D91 ld r24,X+ |
1663 0c0a 9D91 ld r25,X+ |
1664 0c0c 0D90 ld __tmp_reg__,X+ |
1665 0c0e BC91 ld r27,X |
1666 0c10 A02D mov r26,__tmp_reg__ |
1667 0c12 8093 0000 sts MotorTest,r24 |
1668 0c16 9093 0000 sts (MotorTest)+1,r25 |
1669 0c1a A093 0000 sts (MotorTest)+2,r26 |
1670 0c1e B093 0000 sts (MotorTest)+3,r27 |
1671 .L148: |
1672 0c22 8091 0000 lds r24,UebertragungAbgeschlossen |
1673 0c26 8823 tst r24 |
1674 0c28 E1F3 breq .L148 |
1675 0c2a 1F92 push __zero_reg__ |
1676 0c2c 8091 0000 lds r24,MeineSlaveAdresse |
1677 0c30 8F93 push r24 |
1678 0c32 84E5 ldi r24,lo8(84) |
1679 0c34 8F93 push r24 |
1680 0c36 0E94 0000 call SendOutData |
1681 0c3a 8AEF ldi r24,lo8(-6) |
1682 0c3c 8093 0000 sts PC_MotortestActive,r24 |
1683 0c40 8FEF ldi r24,lo8(-1) |
1684 0c42 8093 0000 sts PcZugriff,r24 |
1685 0c46 80EA ldi r24,lo8(4000) |
1686 0c48 9FE0 ldi r25,hi8(4000) |
1687 0c4a 0E94 0000 call SetDelay |
1688 0c4e 9093 0000 sts (AboTimeOut)+1,r25 |
1689 0c52 8093 0000 sts AboTimeOut,r24 |
1690 0c56 0F90 pop __tmp_reg__ |
1691 0c58 0F90 pop __tmp_reg__ |
1692 0c5a 0F90 pop __tmp_reg__ |
1693 0c5c C5C0 rjmp .L65 |
1694 .L151: |
1695 0c5e E091 0000 lds r30,pRxData |
1696 0c62 F091 0000 lds r31,(pRxData)+1 |
1697 0c66 8081 ld r24,Z |
1698 0c68 9181 ldd r25,Z+1 |
1699 0c6a 9093 0000 sts (KompassValue)+1,r25 |
1700 0c6e 8093 0000 sts KompassValue,r24 |
1701 0c72 2091 0000 lds r18,KompassStartwert |
1702 0c76 3091 0000 lds r19,(KompassStartwert)+1 |
1703 0c7a 821B sub r24,r18 |
1704 0c7c 930B sbc r25,r19 |
1705 0c7e 845E subi r24,lo8(-(540)) |
1706 0c80 9D4F sbci r25,hi8(-(540)) |
1707 0c82 68E6 ldi r22,lo8(360) |
1708 0c84 71E0 ldi r23,hi8(360) |
1709 0c86 0E94 0000 call __divmodhi4 |
1710 0c8a 845B subi r24,lo8(-(-180)) |
1711 0c8c 9040 sbci r25,hi8(-(-180)) |
1712 0c8e 9093 0000 sts (KompassRichtung)+1,r25 |
1713 0c92 8093 0000 sts KompassRichtung,r24 |
1714 0c96 A8C0 rjmp .L65 |
1715 .L152: |
1716 0c98 E091 0000 lds r30,pRxData |
1717 0c9c F091 0000 lds r31,(pRxData)+1 |
1718 0ca0 8081 ld r24,Z |
1719 0ca2 8093 0000 sts DebugTextAnforderung,r24 |
1720 0ca6 8032 cpi r24,lo8(32) |
1721 0ca8 98F0 brlo .L181 |
1722 0caa 8FE1 ldi r24,lo8(31) |
1723 0cac 8093 0000 sts DebugTextAnforderung,r24 |
1724 0cb0 0FC0 rjmp .L181 |
1725 .L154: |
1726 0cb2 A091 0000 lds r26,pRxData |
1727 0cb6 B091 0000 lds r27,(pRxData)+1 |
1728 0cba 8BE0 ldi r24,lo8(11) |
1729 0cbc E0E0 ldi r30,lo8(ExternControl) |
1730 0cbe F0E0 ldi r31,hi8(ExternControl) |
1731 0cc0 0D90 ld __tmp_reg__,X+ |
1732 0cc2 0192 st Z+,__tmp_reg__ |
1733 0cc4 8A95 dec r24 |
1734 0cc6 E1F7 brne .-8 |
1735 0cc8 8091 0000 lds r24,ExternControl+9 |
1736 0ccc 8093 0000 sts ConfirmFrame,r24 |
1737 .L181: |
1738 0cd0 8FEF ldi r24,lo8(-1) |
1739 0cd2 8093 0000 sts PcZugriff,r24 |
1740 0cd6 88C0 rjmp .L65 |
1741 .L155: |
1742 0cd8 8091 0000 lds r24,Intervall3D |
1743 0cdc 9091 0000 lds r25,(Intervall3D)+1 |
1744 0ce0 892B or r24,r25 |
1745 0ce2 89F4 brne .L156 |
1746 0ce4 E091 0000 lds r30,pRxData |
1747 0ce8 F091 0000 lds r31,(pRxData)+1 |
1748 0cec E081 ld r30,Z |
1749 0cee EE23 tst r30 |
1750 0cf0 51F0 breq .L156 |
1751 0cf2 8AE0 ldi r24,lo8(10) |
1752 0cf4 E89F mul r30,r24 |
1753 0cf6 C001 movw r24,r0 |
1754 0cf8 1124 clr r1 |
1755 0cfa 0E94 0000 call SetDelay |
1756 0cfe 9093 0000 sts (Timer3D)+1,r25 |
1757 0d02 8093 0000 sts Timer3D,r24 |
1758 .L156: |
1759 0d06 E091 0000 lds r30,pRxData |
1760 0d0a F091 0000 lds r31,(pRxData)+1 |
1761 0d0e 9081 ld r25,Z |
1762 0d10 8AE0 ldi r24,lo8(10) |
1763 0d12 989F mul r25,r24 |
1764 0d14 C001 movw r24,r0 |
1765 0d16 1124 clr r1 |
1766 0d18 9093 0000 sts (Intervall3D)+1,r25 |
1767 0d1c 8093 0000 sts Intervall3D,r24 |
1768 0d20 15C0 rjmp .L159 |
1769 .L158: |
1770 0d22 8FEF ldi r24,lo8(-1) |
1771 0d24 8093 0000 sts PcZugriff,r24 |
1772 0d28 E091 0000 lds r30,pRxData |
1773 0d2c F091 0000 lds r31,(pRxData)+1 |
1774 0d30 9081 ld r25,Z |
1775 0d32 8AE0 ldi r24,lo8(10) |
1776 0d34 989F mul r25,r24 |
1777 0d36 C001 movw r24,r0 |
1778 0d38 1124 clr r1 |
1779 0d3a 9093 0000 sts (DebugDataIntervall)+1,r25 |
1780 0d3e 8093 0000 sts DebugDataIntervall,r24 |
1781 0d42 892B or r24,r25 |
1782 0d44 19F0 breq .L159 |
1783 0d46 81E0 ldi r24,lo8(1) |
1784 0d48 8093 0000 sts DebugDataAnforderung,r24 |
1785 .L159: |
1786 0d4c 80EA ldi r24,lo8(4000) |
1787 0d4e 9FE0 ldi r25,hi8(4000) |
1788 0d50 0E94 0000 call SetDelay |
1789 0d54 9093 0000 sts (AboTimeOut)+1,r25 |
1790 0d58 8093 0000 sts AboTimeOut,r24 |
1791 0d5c 45C0 rjmp .L65 |
1792 .L160: |
1793 0d5e 8FEF ldi r24,lo8(-1) |
1794 0d60 8093 0000 sts PcZugriff,r24 |
1795 0d64 E091 0000 lds r30,pRxData |
1796 0d68 F091 0000 lds r31,(pRxData)+1 |
1797 0d6c 9081 ld r25,Z |
1798 0d6e 97FD sbrc r25,7 |
1799 0d70 08C0 rjmp .L161 |
1800 0d72 82E0 ldi r24,lo8(2) |
1801 0d74 8093 0000 sts DisplayLine,r24 |
1802 0d78 1092 0000 sts (Display_Interval)+1,__zero_reg__ |
1803 0d7c 1092 0000 sts Display_Interval,__zero_reg__ |
1804 0d80 1AC0 rjmp .L162 |
1805 .L161: |
1806 0d82 9095 com r25 |
1807 0d84 8091 0000 lds r24,RemoteKeys |
1808 0d88 892B or r24,r25 |
1809 0d8a 8093 0000 sts RemoteKeys,r24 |
1810 0d8e 9181 ldd r25,Z+1 |
1811 0d90 8AE0 ldi r24,lo8(10) |
1812 0d92 989F mul r25,r24 |
1813 0d94 C001 movw r24,r0 |
1814 0d96 1124 clr r1 |
1815 0d98 9093 0000 sts (Display_Interval)+1,r25 |
1816 0d9c 8093 0000 sts Display_Interval,r24 |
1817 0da0 84E0 ldi r24,lo8(4) |
1818 0da2 8093 0000 sts DisplayLine,r24 |
1819 0da6 80EA ldi r24,lo8(4000) |
1820 0da8 9FE0 ldi r25,hi8(4000) |
1821 0daa 0E94 0000 call SetDelay |
1822 0dae 9093 0000 sts (AboTimeOut)+1,r25 |
1823 0db2 8093 0000 sts AboTimeOut,r24 |
1824 .L162: |
1825 0db6 81E0 ldi r24,lo8(1) |
1826 0db8 8093 0000 sts DebugDisplayAnforderung,r24 |
1827 0dbc 15C0 rjmp .L65 |
1828 .L163: |
1829 0dbe 8FEF ldi r24,lo8(-1) |
1830 0dc0 8093 0000 sts PcZugriff,r24 |
1831 0dc4 E091 0000 lds r30,pRxData |
1832 0dc8 F091 0000 lds r31,(pRxData)+1 |
1833 0dcc 8081 ld r24,Z |
1834 0dce 8093 0000 sts MenuePunkt,r24 |
1835 0dd2 81E0 ldi r24,lo8(1) |
1836 0dd4 8093 0000 sts DebugDisplayAnforderung1,r24 |
1837 0dd8 07C0 rjmp .L65 |
1838 .L164: |
1839 0dda 81E0 ldi r24,lo8(1) |
1840 0ddc 8093 0000 sts GetVersionAnforderung,r24 |
1841 0de0 03C0 rjmp .L65 |
1842 .L165: |
1843 0de2 81E0 ldi r24,lo8(1) |
1844 0de4 8093 0000 sts GetExternalControl,r24 |
1845 .L65: |
1846 0de8 1092 0000 sts NeuerDatensatzEmpfangen,__zero_reg__ |
1847 0dec 1092 0000 sts (pRxData)+1,__zero_reg__ |
1848 0df0 1092 0000 sts pRxData,__zero_reg__ |
1849 0df4 1092 0000 sts RxDataLen,__zero_reg__ |
1850 .L63: |
1851 /* epilogue: frame size=2 */ |
1852 0df8 E3E0 ldi r30,3 |
1853 0dfa CE5F subi r28,-2 |
1854 0dfc 0C94 0000 jmp __epilogue_restores__+30 |
1855 /* epilogue end (size=4) */ |
1856 /* function BearbeiteRxDaten size 1148 (1138) */ |
1858 .global uart_putchar |
1860 uart_putchar: |
1861 /* prologue: frame size=0 */ |
1862 /* prologue end (size=0) */ |
1863 0e00 982F mov r25,r24 |
1864 .L186: |
1865 0e02 8091 C000 lds r24,192 |
1866 0e06 85FF sbrs r24,5 |
1867 0e08 FCCF rjmp .L186 |
1868 0e0a 9093 C600 sts 198,r25 |
1869 /* epilogue: frame size=0 */ |
1870 0e0e 0895 ret |
1871 /* epilogue end (size=1) */ |
1872 /* function uart_putchar size 8 (7) */ |
1874 .global UART_Init |
1876 UART_Init: |
1877 /* prologue: frame size=0 */ |
1878 0e10 0F93 push r16 |
1879 0e12 1F93 push r17 |
1880 /* prologue end (size=2) */ |
1881 0e14 88E1 ldi r24,lo8(24) |
1882 0e16 8093 C100 sts 193,r24 |
1883 0e1a 8091 C000 lds r24,192 |
1884 0e1e 8260 ori r24,lo8(2) |
1885 0e20 8093 C000 sts 192,r24 |
1886 0e24 8091 C100 lds r24,193 |
1887 0e28 8068 ori r24,lo8(-128) |
1888 0e2a 8093 C100 sts 193,r24 |
1889 0e2e 8091 C100 lds r24,193 |
1890 0e32 8064 ori r24,lo8(64) |
1891 0e34 8093 C100 sts 193,r24 |
1892 0e38 00E0 ldi r16,lo8(0) |
1893 0e3a 10E0 ldi r17,hi8(0) |
1894 0e3c 0093 C500 sts 197,r16 |
1895 0e40 8AE2 ldi r24,lo8(42) |
1896 0e42 90E0 ldi r25,hi8(42) |
1897 0e44 8093 C400 sts 196,r24 |
1898 0e48 8091 0000 lds r24,DebugDataIntervall |
1899 0e4c 9091 0000 lds r25,(DebugDataIntervall)+1 |
1900 0e50 0E94 0000 call SetDelay |
1901 0e54 9093 0000 sts (Debug_Timer)+1,r25 |
1902 0e58 8093 0000 sts Debug_Timer,r24 |
1903 0e5c 8CED ldi r24,lo8(220) |
1904 0e5e 90E0 ldi r25,hi8(220) |
1905 0e60 0E94 0000 call SetDelay |
1906 0e64 9093 0000 sts (Kompass_Timer)+1,r25 |
1907 0e68 8093 0000 sts Kompass_Timer,r24 |
1908 0e6c 1092 0000 sts VersionInfo,__zero_reg__ |
1909 0e70 82E5 ldi r24,lo8(82) |
1910 0e72 8093 0000 sts VersionInfo+1,r24 |
1911 0e76 1092 0000 sts VersionInfo+4,__zero_reg__ |
1912 0e7a 8BE0 ldi r24,lo8(11) |
1913 0e7c 8093 0000 sts VersionInfo+2,r24 |
1914 0e80 1092 0000 sts VersionInfo+3,__zero_reg__ |
1915 0e84 1093 0000 sts (pRxData)+1,r17 |
1916 0e88 0093 0000 sts pRxData,r16 |
1917 0e8c 1092 0000 sts RxDataLen,__zero_reg__ |
1918 /* epilogue: frame size=0 */ |
1919 0e90 1F91 pop r17 |
1920 0e92 0F91 pop r16 |
1921 0e94 0895 ret |
1922 /* epilogue end (size=3) */ |
1923 /* function UART_Init size 67 (62) */ |
1925 .section .progmem.data |
1928 __c.0: |
1929 0200 2121 2120 .string "!!! INCOMPATIBLE !!!" |
1929 494E 434F |
1929 4D50 4154 |
1929 4942 4C45 |
1929 2021 2121 |
1930 .text |
1931 .global DatenUebertragung |
1933 DatenUebertragung: |
1934 /* prologue: frame size=16 */ |
1935 0e96 A0E1 ldi r26,lo8(16) |
1936 0e98 B0E0 ldi r27,hi8(16) |
1937 0e9a E0E0 ldi r30,pm_lo8(1f) |
1938 0e9c F0E0 ldi r31,pm_hi8(1f) |
1939 0e9e 0C94 0000 jmp __prologue_saves__+24 |
1940 1: |
1941 /* prologue end (size=6) */ |
1942 0ea2 8091 0000 lds r24,UebertragungAbgeschlossen |
1943 0ea6 8823 tst r24 |
1944 0ea8 09F4 brne .+2 |
1945 0eaa C1C2 rjmp .L190 |
1946 0eac 8091 0000 lds r24,AboTimeOut |
1947 0eb0 9091 0000 lds r25,(AboTimeOut)+1 |
1948 0eb4 0E94 0000 call CheckDelay |
1949 0eb8 8823 tst r24 |
1950 0eba 61F0 breq .L192 |
1951 0ebc 1092 0000 sts (Display_Interval)+1,__zero_reg__ |
1952 0ec0 1092 0000 sts Display_Interval,__zero_reg__ |
1953 0ec4 1092 0000 sts (DebugDataIntervall)+1,__zero_reg__ |
1954 0ec8 1092 0000 sts DebugDataIntervall,__zero_reg__ |
1955 0ecc 1092 0000 sts (Intervall3D)+1,__zero_reg__ |
1956 0ed0 1092 0000 sts Intervall3D,__zero_reg__ |
1957 .L192: |
1958 0ed4 8091 0000 lds r24,Display_Interval |
1959 0ed8 9091 0000 lds r25,(Display_Interval)+1 |
1960 0edc 892B or r24,r25 |
1961 0ede 41F0 breq .L195 |
1962 0ee0 8091 0000 lds r24,Display_Timer |
1963 0ee4 9091 0000 lds r25,(Display_Timer)+1 |
1964 0ee8 0E94 0000 call CheckDelay |
1965 0eec 8823 tst r24 |
1966 0eee 29F4 brne .L194 |
1967 .L195: |
1968 0ef0 8091 0000 lds r24,DebugDisplayAnforderung |
1969 0ef4 8823 tst r24 |
1970 0ef6 09F4 brne .+2 |
1971 0ef8 60C0 rjmp .L193 |
1972 .L194: |
1973 0efa 8091 0000 lds r24,UebertragungAbgeschlossen |
1974 0efe 8823 tst r24 |
1975 0f00 09F4 brne .+2 |
1976 0f02 5BC0 rjmp .L193 |
1977 0f04 8091 0000 lds r24,DisplayLine |
1978 0f08 00E0 ldi r16,lo8(DisplayBuff) |
1979 0f0a 10E0 ldi r17,hi8(DisplayBuff) |
1980 0f0c 8430 cpi r24,lo8(4) |
1981 0f0e A8F0 brlo .L196 |
1982 0f10 0E94 0000 call Menu |
1983 0f14 80E5 ldi r24,lo8(80) |
1984 0f16 90E0 ldi r25,hi8(80) |
1985 0f18 9F93 push r25 |
1986 0f1a 8F93 push r24 |
1987 0f1c 1F93 push r17 |
1988 0f1e 0F93 push r16 |
1989 0f20 81E0 ldi r24,lo8(1) |
1990 0f22 8F93 push r24 |
1991 0f24 8F93 push r24 |
1992 0f26 88E4 ldi r24,lo8(72) |
1993 0f28 8F93 push r24 |
1994 0f2a 0E94 0000 call SendOutData |
1995 0f2e 2DB7 in r18,__SP_L__ |
1996 0f30 3EB7 in r19,__SP_H__ |
1997 0f32 295F subi r18,lo8(-(7)) |
1998 0f34 3F4F sbci r19,hi8(-(7)) |
1999 0f36 2DBF out __SP_L__,r18 |
2000 0f38 34C0 rjmp .L197 |
2001 .L196: |
2002 0f3a 1092 0000 sts DispPtr,__zero_reg__ |
2003 0f3e 80E0 ldi r24,lo8(__c.0) |
2004 0f40 90E0 ldi r25,hi8(__c.0) |
2005 0f42 9F93 push r25 |
2006 0f44 8F93 push r24 |
2007 0f46 80E0 ldi r24,lo8(pm(Menu_Putchar)) |
2008 0f48 90E0 ldi r25,hi8(pm(Menu_Putchar)) |
2009 0f4a 9F93 push r25 |
2010 0f4c 8F93 push r24 |
2011 0f4e E091 0000 lds r30,_printf_P |
2012 0f52 F091 0000 lds r31,(_printf_P)+1 |
2013 0f56 0995 icall |
2014 0f58 84E1 ldi r24,lo8(20) |
2015 0f5a 90E0 ldi r25,hi8(20) |
2016 0f5c 9F93 push r25 |
2017 0f5e 8F93 push r24 |
2018 0f60 1F93 push r17 |
2019 0f62 0F93 push r16 |
2020 0f64 81E0 ldi r24,lo8(1) |
2021 0f66 90E0 ldi r25,hi8(1) |
2022 0f68 9F93 push r25 |
2023 0f6a 8F93 push r24 |
2024 0f6c 80E0 ldi r24,lo8(DisplayLine) |
2025 0f6e 90E0 ldi r25,hi8(DisplayLine) |
2026 0f70 9F93 push r25 |
2027 0f72 8F93 push r24 |
2028 0f74 82E0 ldi r24,lo8(2) |
2029 0f76 8F93 push r24 |
2030 0f78 81E0 ldi r24,lo8(1) |
2031 0f7a 8F93 push r24 |
2032 0f7c 88E4 ldi r24,lo8(72) |
2033 0f7e 8F93 push r24 |
2034 0f80 0E94 0000 call SendOutData |
2035 0f84 8091 0000 lds r24,DisplayLine |
2036 0f88 982F mov r25,r24 |
2037 0f8a 8F5F subi r24,lo8(-(1)) |
2038 0f8c 8093 0000 sts DisplayLine,r24 |
2039 0f90 2DB7 in r18,__SP_L__ |
2040 0f92 3EB7 in r19,__SP_H__ |
2041 0f94 215F subi r18,lo8(-(15)) |
2042 0f96 3F4F sbci r19,hi8(-(15)) |
2043 0f98 2DBF out __SP_L__,r18 |
2044 0f9a 9430 cpi r25,lo8(4) |
2045 0f9c 10F0 brlo .L197 |
2046 0f9e 1092 0000 sts DisplayLine,__zero_reg__ |
2047 .L197: |
2048 0fa2 8091 0000 lds r24,Display_Interval |
2049 0fa6 9091 0000 lds r25,(Display_Interval)+1 |
2050 0faa 0E94 0000 call SetDelay |
2051 0fae 9093 0000 sts (Display_Timer)+1,r25 |
2052 0fb2 8093 0000 sts Display_Timer,r24 |
2053 0fb6 1092 0000 sts DebugDisplayAnforderung,__zero_reg__ |
2054 .L193: |
2055 0fba 8091 0000 lds r24,DebugDisplayAnforderung1 |
2056 0fbe 8823 tst r24 |
2057 0fc0 51F1 breq .L199 |
2058 0fc2 8091 0000 lds r24,UebertragungAbgeschlossen |
2059 0fc6 8823 tst r24 |
2060 0fc8 31F1 breq .L199 |
2061 0fca 0E94 0000 call Menu |
2062 0fce 80E5 ldi r24,lo8(80) |
2063 0fd0 90E0 ldi r25,hi8(80) |
2064 0fd2 9F93 push r25 |
2065 0fd4 8F93 push r24 |
2066 0fd6 80E0 ldi r24,lo8(DisplayBuff) |
2067 0fd8 90E0 ldi r25,hi8(DisplayBuff) |
2068 0fda 9F93 push r25 |
2069 0fdc 8F93 push r24 |
2070 0fde 21E0 ldi r18,lo8(1) |
2071 0fe0 30E0 ldi r19,hi8(1) |
2072 0fe2 3F93 push r19 |
2073 0fe4 2F93 push r18 |
2074 0fe6 80E0 ldi r24,lo8(MaxMenue) |
2075 0fe8 90E0 ldi r25,hi8(MaxMenue) |
2076 0fea 9F93 push r25 |
2077 0fec 8F93 push r24 |
2078 0fee 3F93 push r19 |
2079 0ff0 2F93 push r18 |
2080 0ff2 80E0 ldi r24,lo8(MenuePunkt) |
2081 0ff4 90E0 ldi r25,hi8(MenuePunkt) |
2082 0ff6 9F93 push r25 |
2083 0ff8 8F93 push r24 |
2084 0ffa 83E0 ldi r24,lo8(3) |
2085 0ffc 8F93 push r24 |
2086 0ffe 81E0 ldi r24,lo8(1) |
2087 1000 8F93 push r24 |
2088 1002 8CE4 ldi r24,lo8(76) |
2089 1004 8F93 push r24 |
2090 1006 0E94 0000 call SendOutData |
2091 100a 1092 0000 sts DebugDisplayAnforderung1,__zero_reg__ |
2092 100e 8DB7 in r24,__SP_L__ |
2093 1010 9EB7 in r25,__SP_H__ |
2094 1012 0F96 adiw r24,15 |
2095 1014 8DBF out __SP_L__,r24 |
2096 .L199: |
2097 1016 8091 0000 lds r24,GetVersionAnforderung |
2098 101a 8823 tst r24 |
2099 101c D1F0 breq .L200 |
2100 101e 8091 0000 lds r24,UebertragungAbgeschlossen |
2101 1022 8823 tst r24 |
2102 1024 B1F0 breq .L200 |
2103 1026 8AE0 ldi r24,lo8(10) |
2104 1028 90E0 ldi r25,hi8(10) |
2105 102a 9F93 push r25 |
2106 102c 8F93 push r24 |
2107 102e 80E0 ldi r24,lo8(VersionInfo) |
2108 1030 90E0 ldi r25,hi8(VersionInfo) |
2109 1032 9F93 push r25 |
2110 1034 8F93 push r24 |
2111 1036 81E0 ldi r24,lo8(1) |
2112 1038 8F93 push r24 |
2113 103a 8F93 push r24 |
2114 103c 86E5 ldi r24,lo8(86) |
2115 103e 8F93 push r24 |
2116 1040 0E94 0000 call SendOutData |
2117 1044 1092 0000 sts GetVersionAnforderung,__zero_reg__ |
2118 1048 2DB7 in r18,__SP_L__ |
2119 104a 3EB7 in r19,__SP_H__ |
2120 104c 295F subi r18,lo8(-(7)) |
2121 104e 3F4F sbci r19,hi8(-(7)) |
2122 1050 2DBF out __SP_L__,r18 |
2123 .L200: |
2124 1052 8091 0000 lds r24,GetExternalControl |
2125 1056 8823 tst r24 |
2126 1058 D9F0 breq .L201 |
2127 105a 8091 0000 lds r24,UebertragungAbgeschlossen |
2128 105e 8823 tst r24 |
2129 1060 B9F0 breq .L201 |
2130 1062 8BE0 ldi r24,lo8(11) |
2131 1064 90E0 ldi r25,hi8(11) |
2132 1066 9F93 push r25 |
2133 1068 8F93 push r24 |
2134 106a 80E0 ldi r24,lo8(ExternControl) |
2135 106c 90E0 ldi r25,hi8(ExternControl) |
2136 106e 9F93 push r25 |
2137 1070 8F93 push r24 |
2138 1072 81E0 ldi r24,lo8(1) |
2139 1074 8F93 push r24 |
2140 1076 8091 0000 lds r24,MeineSlaveAdresse |
2141 107a 8F93 push r24 |
2142 107c 87E4 ldi r24,lo8(71) |
2143 107e 8F93 push r24 |
2144 1080 0E94 0000 call SendOutData |
2145 1084 1092 0000 sts GetExternalControl,__zero_reg__ |
2146 1088 8DB7 in r24,__SP_L__ |
2147 108a 9EB7 in r25,__SP_H__ |
2148 108c 0796 adiw r24,7 |
2149 108e 8DBF out __SP_L__,r24 |
2150 .L201: |
2151 1090 8091 0000 lds r24,Kompass_Timer |
2152 1094 9091 0000 lds r25,(Kompass_Timer)+1 |
2153 1098 0E94 0000 call CheckDelay |
2154 109c 8823 tst r24 |
2155 109e 09F4 brne .+2 |
2156 10a0 61C0 rjmp .L202 |
2157 10a2 8091 0000 lds r24,UebertragungAbgeschlossen |
2158 10a6 8823 tst r24 |
2159 10a8 09F4 brne .+2 |
2160 10aa 5CC0 rjmp .L202 |
2161 10ac 8091 0000 lds r24,EE_Parameter+28 |
2162 10b0 9927 clr r25 |
2163 10b2 880F lsl r24 |
2164 10b4 991F rol r25 |
2165 10b6 880F lsl r24 |
2166 10b8 991F rol r25 |
2167 10ba 7C01 movw r14,r24 |
2168 10bc 0027 clr r16 |
2169 10be F7FC sbrc r15,7 |
2170 10c0 0095 com r16 |
2171 10c2 102F mov r17,r16 |
2172 10c4 8091 0000 lds r24,IntegralNick |
2173 10c8 9091 0000 lds r25,(IntegralNick)+1 |
2174 10cc A091 0000 lds r26,(IntegralNick)+2 |
2175 10d0 B091 0000 lds r27,(IntegralNick)+3 |
2176 10d4 BC01 movw r22,r24 |
2177 10d6 CD01 movw r24,r26 |
2178 10d8 A801 movw r20,r16 |
2179 10da 9701 movw r18,r14 |
2180 10dc 0E94 0000 call __divmodsi4 |
2181 10e0 3093 0000 sts (WinkelOut)+1,r19 |
2182 10e4 2093 0000 sts WinkelOut,r18 |
2183 10e8 8091 0000 lds r24,IntegralRoll |
2184 10ec 9091 0000 lds r25,(IntegralRoll)+1 |
2185 10f0 A091 0000 lds r26,(IntegralRoll)+2 |
2186 10f4 B091 0000 lds r27,(IntegralRoll)+3 |
2187 10f8 BC01 movw r22,r24 |
2188 10fa CD01 movw r24,r26 |
2189 10fc A801 movw r20,r16 |
2190 10fe 9701 movw r18,r14 |
2191 1100 0E94 0000 call __divmodsi4 |
2192 1104 3093 0000 sts (WinkelOut+2)+1,r19 |
2193 1108 2093 0000 sts WinkelOut+2,r18 |
2194 110c 8091 0000 lds r24,Parameter_UserParam1 |
2195 1110 8093 0000 sts WinkelOut+4,r24 |
2196 1114 8091 0000 lds r24,Parameter_UserParam2 |
2197 1118 8093 0000 sts WinkelOut+5,r24 |
2198 111c 88E0 ldi r24,lo8(8) |
2199 111e 90E0 ldi r25,hi8(8) |
2200 1120 9F93 push r25 |
2201 1122 8F93 push r24 |
2202 1124 80E0 ldi r24,lo8(WinkelOut) |
2203 1126 90E0 ldi r25,hi8(WinkelOut) |
2204 1128 9F93 push r25 |
2205 112a 8F93 push r24 |
2206 112c 81E0 ldi r24,lo8(1) |
2207 112e 8F93 push r24 |
2208 1130 83E0 ldi r24,lo8(3) |
2209 1132 8F93 push r24 |
2210 1134 8BE6 ldi r24,lo8(107) |
2211 1136 8F93 push r24 |
2212 1138 0E94 0000 call SendOutData |
2213 113c 8091 0000 lds r24,WinkelOut+6 |
2214 1140 2DB7 in r18,__SP_L__ |
2215 1142 3EB7 in r19,__SP_H__ |
2216 1144 295F subi r18,lo8(-(7)) |
2217 1146 3F4F sbci r19,hi8(-(7)) |
2218 1148 2DBF out __SP_L__,r18 |
2219 114a 8530 cpi r24,lo8(5) |
2220 114c 18F0 brlo .L203 |
2221 114e 86E0 ldi r24,lo8(6) |
2222 1150 8093 0000 sts WinkelOut+6,r24 |
2223 .L203: |
2224 1154 83E6 ldi r24,lo8(99) |
2225 1156 90E0 ldi r25,hi8(99) |
2226 1158 0E94 0000 call SetDelay |
2227 115c 9093 0000 sts (Kompass_Timer)+1,r25 |
2228 1160 8093 0000 sts Kompass_Timer,r24 |
2229 .L202: |
2230 1164 8091 0000 lds r24,DebugDataIntervall |
2231 1168 9091 0000 lds r25,(DebugDataIntervall)+1 |
2232 116c 892B or r24,r25 |
2233 116e 41F0 breq .L206 |
2234 1170 8091 0000 lds r24,Debug_Timer |
2235 1174 9091 0000 lds r25,(Debug_Timer)+1 |
2236 1178 0E94 0000 call CheckDelay |
2237 117c 8823 tst r24 |
2238 117e 21F4 brne .L205 |
2239 .L206: |
2240 1180 8091 0000 lds r24,DebugDataAnforderung |
2241 1184 8823 tst r24 |
2242 1186 39F1 breq .L204 |
2243 .L205: |
2244 1188 8091 0000 lds r24,UebertragungAbgeschlossen |
2245 118c 8823 tst r24 |
2246 118e 19F1 breq .L204 |
2247 1190 0E94 0000 call CopyDebugValues |
2248 1194 82E4 ldi r24,lo8(66) |
2249 1196 90E0 ldi r25,hi8(66) |
2250 1198 9F93 push r25 |
2251 119a 8F93 push r24 |
2252 119c 80E0 ldi r24,lo8(DebugOut) |
2253 119e 90E0 ldi r25,hi8(DebugOut) |
2254 11a0 9F93 push r25 |
2255 11a2 8F93 push r24 |
2256 11a4 81E0 ldi r24,lo8(1) |
2257 11a6 8F93 push r24 |
2258 11a8 8F93 push r24 |
2259 11aa 84E4 ldi r24,lo8(68) |
2260 11ac 8F93 push r24 |
2261 11ae 0E94 0000 call SendOutData |
2262 11b2 1092 0000 sts DebugDataAnforderung,__zero_reg__ |
2263 11b6 8DB7 in r24,__SP_L__ |
2264 11b8 9EB7 in r25,__SP_H__ |
2265 11ba 0796 adiw r24,7 |
2266 11bc 8DBF out __SP_L__,r24 |
2267 11be 8091 0000 lds r24,DebugDataIntervall |
2268 11c2 9091 0000 lds r25,(DebugDataIntervall)+1 |
2269 11c6 0097 sbiw r24,0 |
2270 11c8 31F0 breq .L204 |
2271 11ca 0E94 0000 call SetDelay |
2272 11ce 9093 0000 sts (Debug_Timer)+1,r25 |
2273 11d2 8093 0000 sts Debug_Timer,r24 |
2274 .L204: |
2275 11d6 8091 0000 lds r24,Intervall3D |
2276 11da 9091 0000 lds r25,(Intervall3D)+1 |
2277 11de 892B or r24,r25 |
2278 11e0 09F4 brne .+2 |
2279 11e2 B8C0 rjmp .L208 |
2280 11e4 8091 0000 lds r24,Timer3D |
2281 11e8 9091 0000 lds r25,(Timer3D)+1 |
2282 11ec 0E94 0000 call CheckDelay |
2283 11f0 8823 tst r24 |
2284 11f2 09F4 brne .+2 |
2285 11f4 AFC0 rjmp .L208 |
2286 11f6 8091 0000 lds r24,UebertragungAbgeschlossen |
2287 11fa 8823 tst r24 |
2288 11fc 09F4 brne .+2 |
2289 11fe AAC0 rjmp .L208 |
2290 1200 8091 0000 lds r24,EE_Parameter+28 |
2291 1204 9927 clr r25 |
2292 1206 880F lsl r24 |
2293 1208 991F rol r25 |
2294 120a 880F lsl r24 |
2295 120c 991F rol r25 |
2296 120e 7C01 movw r14,r24 |
2297 1210 0027 clr r16 |
2298 1212 F7FC sbrc r15,7 |
2299 1214 0095 com r16 |
2300 1216 102F mov r17,r16 |
2301 1218 8091 0000 lds r24,IntegralNick |
2302 121c 9091 0000 lds r25,(IntegralNick)+1 |
2303 1220 A091 0000 lds r26,(IntegralNick)+2 |
2304 1224 B091 0000 lds r27,(IntegralNick)+3 |
2305 1228 BC01 movw r22,r24 |
2306 122a CD01 movw r24,r26 |
2307 122c A801 movw r20,r16 |
2308 122e 9701 movw r18,r14 |
2309 1230 0E94 0000 call __divmodsi4 |
2310 1234 3093 0000 sts (Data3D)+1,r19 |
2311 1238 2093 0000 sts Data3D,r18 |
2312 123c 8091 0000 lds r24,IntegralRoll |
2313 1240 9091 0000 lds r25,(IntegralRoll)+1 |
2314 1244 A091 0000 lds r26,(IntegralRoll)+2 |
2315 1248 B091 0000 lds r27,(IntegralRoll)+3 |
2316 124c BC01 movw r22,r24 |
2317 124e CD01 movw r24,r26 |
2318 1250 A801 movw r20,r16 |
2319 1252 9701 movw r18,r14 |
2320 1254 0E94 0000 call __divmodsi4 |
2321 1258 3093 0000 sts (Data3D+2)+1,r19 |
2322 125c 2093 0000 sts Data3D+2,r18 |
2323 1260 2091 0000 lds r18,ErsatzKompass |
2324 1264 3091 0000 lds r19,(ErsatzKompass)+1 |
2325 1268 4091 0000 lds r20,(ErsatzKompass)+2 |
2326 126c 5091 0000 lds r21,(ErsatzKompass)+3 |
2327 1270 DA01 movw r26,r20 |
2328 1272 C901 movw r24,r18 |
2329 1274 63E0 ldi r22,3 |
2330 1276 880F 1: lsl r24 |
2331 1278 991F rol r25 |
2332 127a AA1F rol r26 |
2333 127c BB1F rol r27 |
2334 127e 6A95 dec r22 |
2335 1280 D1F7 brne 1b |
2336 1282 820F add r24,r18 |
2337 1284 931F adc r25,r19 |
2338 1286 A41F adc r26,r20 |
2339 1288 B51F adc r27,r21 |
2340 128a 820F add r24,r18 |
2341 128c 931F adc r25,r19 |
2342 128e A41F adc r26,r20 |
2343 1290 B51F adc r27,r21 |
2344 1292 2091 0000 lds r18,GIER_GRAD_FAKTOR |
2345 1296 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1 |
2346 129a 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2 |
2347 129e 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3 |
2348 12a2 BC01 movw r22,r24 |
2349 12a4 CD01 movw r24,r26 |
2350 12a6 0E94 0000 call __divmodsi4 |
2351 12aa 3093 0000 sts (Data3D+4)+1,r19 |
2352 12ae 2093 0000 sts Data3D+4,r18 |
2353 12b2 8091 0000 lds r24,SummeNick |
2354 12b6 9091 0000 lds r25,(SummeNick)+1 |
2355 12ba A091 0000 lds r26,(SummeNick)+2 |
2356 12be B091 0000 lds r27,(SummeNick)+3 |
2357 12c2 39E0 ldi r19,9 |
2358 12c4 B595 1: asr r27 |
2359 12c6 A795 ror r26 |
2360 12c8 9795 ror r25 |
2361 12ca 8795 ror r24 |
2362 12cc 3A95 dec r19 |
2363 12ce D1F7 brne 1b |
2364 12d0 8093 0000 sts Data3D+6,r24 |
2365 12d4 8091 0000 lds r24,SummeRoll |
2366 12d8 9091 0000 lds r25,(SummeRoll)+1 |
2367 12dc A091 0000 lds r26,(SummeRoll)+2 |
2368 12e0 B091 0000 lds r27,(SummeRoll)+3 |
2369 12e4 29E0 ldi r18,9 |
2370 12e6 B595 1: asr r27 |
2371 12e8 A795 ror r26 |
2372 12ea 9795 ror r25 |
2373 12ec 8795 ror r24 |
2374 12ee 2A95 dec r18 |
2375 12f0 D1F7 brne 1b |
2376 12f2 8093 0000 sts Data3D+7,r24 |
2377 12f6 8091 0000 lds r24,Mess_Integral_Gier |
2378 12fa 9091 0000 lds r25,(Mess_Integral_Gier)+1 |
2379 12fe A091 0000 lds r26,(Mess_Integral_Gier)+2 |
2380 1302 B091 0000 lds r27,(Mess_Integral_Gier)+3 |
2381 1306 09E0 ldi r16,9 |
2382 1308 B595 1: asr r27 |
2383 130a A795 ror r26 |
2384 130c 9795 ror r25 |
2385 130e 8795 ror r24 |
2386 1310 0A95 dec r16 |
2387 1312 D1F7 brne 1b |
2388 1314 8093 0000 sts Data3D+8,r24 |
2389 1318 8EE0 ldi r24,lo8(14) |
2390 131a 90E0 ldi r25,hi8(14) |
2391 131c 9F93 push r25 |
2392 131e 8F93 push r24 |
2393 1320 80E0 ldi r24,lo8(Data3D) |
2394 1322 90E0 ldi r25,hi8(Data3D) |
2395 1324 9F93 push r25 |
2396 1326 8F93 push r24 |
2397 1328 81E0 ldi r24,lo8(1) |
2398 132a 8F93 push r24 |
2399 132c 8F93 push r24 |
2400 132e 83E4 ldi r24,lo8(67) |
2401 1330 8F93 push r24 |
2402 1332 0E94 0000 call SendOutData |
2403 1336 8091 0000 lds r24,Intervall3D |
2404 133a 9091 0000 lds r25,(Intervall3D)+1 |
2405 133e 0E94 0000 call SetDelay |
2406 1342 9093 0000 sts (Timer3D)+1,r25 |
2407 1346 8093 0000 sts Timer3D,r24 |
2408 134a 2DB7 in r18,__SP_L__ |
2409 134c 3EB7 in r19,__SP_H__ |
2410 134e 295F subi r18,lo8(-(7)) |
2411 1350 3F4F sbci r19,hi8(-(7)) |
2412 1352 2DBF out __SP_L__,r18 |
2413 .L208: |
2414 1354 8091 0000 lds r24,DebugTextAnforderung |
2415 1358 8F3F cpi r24,lo8(-1) |
2416 135a 71F1 breq .L209 |
2417 135c 9927 clr r25 |
2418 135e 14E0 ldi r17,4 |
2419 1360 880F 1: lsl r24 |
2420 1362 991F rol r25 |
2421 1364 1A95 dec r17 |
2422 1366 E1F7 brne 1b |
2423 1368 8050 subi r24,lo8(-(ANALOG_TEXT)) |
2424 136a 9040 sbci r25,hi8(-(ANALOG_TEXT)) |
2425 136c 40E1 ldi r20,lo8(16) |
2426 136e 50E0 ldi r21,hi8(16) |
2427 1370 BC01 movw r22,r24 |
2428 1372 CE01 movw r24,r28 |
2429 1374 0196 adiw r24,1 |
2430 1376 0E94 0000 call memcpy_P |
2431 137a 80E1 ldi r24,lo8(16) |
2432 137c 90E0 ldi r25,hi8(16) |
2433 137e 9F93 push r25 |
2434 1380 8F93 push r24 |
2435 1382 CE01 movw r24,r28 |
2436 1384 0196 adiw r24,1 |
2437 1386 9F93 push r25 |
2438 1388 8F93 push r24 |
2439 138a 81E0 ldi r24,lo8(1) |
2440 138c 90E0 ldi r25,hi8(1) |
2441 138e 9F93 push r25 |
2442 1390 8F93 push r24 |
2443 1392 80E0 ldi r24,lo8(DebugTextAnforderung) |
2444 1394 90E0 ldi r25,hi8(DebugTextAnforderung) |
2445 1396 9F93 push r25 |
2446 1398 8F93 push r24 |
2447 139a 82E0 ldi r24,lo8(2) |
2448 139c 8F93 push r24 |
2449 139e 81E0 ldi r24,lo8(1) |
2450 13a0 8F93 push r24 |
2451 13a2 81E4 ldi r24,lo8(65) |
2452 13a4 8F93 push r24 |
2453 13a6 0E94 0000 call SendOutData |
2454 13aa 8FEF ldi r24,lo8(-1) |
2455 13ac 8093 0000 sts DebugTextAnforderung,r24 |
2456 13b0 8DB7 in r24,__SP_L__ |
2457 13b2 9EB7 in r25,__SP_H__ |
2458 13b4 0B96 adiw r24,11 |
2459 13b6 8DBF out __SP_L__,r24 |
2460 .L209: |
2461 13b8 8091 0000 lds r24,ConfirmFrame |
2462 13bc 8823 tst r24 |
2463 13be D1F0 breq .L210 |
2464 13c0 8091 0000 lds r24,UebertragungAbgeschlossen |
2465 13c4 8823 tst r24 |
2466 13c6 B1F0 breq .L210 |
2467 13c8 81E0 ldi r24,lo8(1) |
2468 13ca 90E0 ldi r25,hi8(1) |
2469 13cc 9F93 push r25 |
2470 13ce 8F93 push r24 |
2471 13d0 80E0 ldi r24,lo8(ConfirmFrame) |
2472 13d2 90E0 ldi r25,hi8(ConfirmFrame) |
2473 13d4 9F93 push r25 |
2474 13d6 8F93 push r24 |
2475 13d8 81E0 ldi r24,lo8(1) |
2476 13da 8F93 push r24 |
2477 13dc 8F93 push r24 |
2478 13de 82E4 ldi r24,lo8(66) |
2479 13e0 8F93 push r24 |
2480 13e2 0E94 0000 call SendOutData |
2481 13e6 1092 0000 sts ConfirmFrame,__zero_reg__ |
2482 13ea 2DB7 in r18,__SP_L__ |
2483 13ec 3EB7 in r19,__SP_H__ |
2484 13ee 295F subi r18,lo8(-(7)) |
2485 13f0 3F4F sbci r19,hi8(-(7)) |
2486 13f2 2DBF out __SP_L__,r18 |
2487 .L210: |
2488 13f4 8091 0000 lds r24,GetPPMChannelAnforderung |
2489 13f8 8823 tst r24 |
2490 13fa C9F0 breq .L190 |
2491 13fc 8091 0000 lds r24,UebertragungAbgeschlossen |
2492 1400 8823 tst r24 |
2493 1402 A9F0 breq .L190 |
2494 1404 84E3 ldi r24,lo8(52) |
2495 1406 90E0 ldi r25,hi8(52) |
2496 1408 9F93 push r25 |
2497 140a 8F93 push r24 |
2498 140c 80E0 ldi r24,lo8(PPM_in) |
2499 140e 90E0 ldi r25,hi8(PPM_in) |
2500 1410 9F93 push r25 |
2501 1412 8F93 push r24 |
2502 1414 81E0 ldi r24,lo8(1) |
2503 1416 8F93 push r24 |
2504 1418 8F93 push r24 |
2505 141a 80E5 ldi r24,lo8(80) |
2506 141c 8F93 push r24 |
2507 141e 0E94 0000 call SendOutData |
2508 1422 1092 0000 sts GetPPMChannelAnforderung,__zero_reg__ |
2509 1426 8DB7 in r24,__SP_L__ |
2510 1428 9EB7 in r25,__SP_H__ |
2511 142a 0796 adiw r24,7 |
2512 142c 8DBF out __SP_L__,r24 |
2513 .L190: |
2514 /* epilogue: frame size=16 */ |
2515 142e E6E0 ldi r30,6 |
2516 1430 C05F subi r28,-16 |
2517 1432 0C94 0000 jmp __epilogue_restores__+24 |
2518 /* epilogue end (size=4) */ |
2519 /* function DatenUebertragung size 720 (710) */ |
2521 .comm RxdBuffer,170,1 |
2522 .comm Debug_Timer,2,1 |
2523 .comm Kompass_Timer,2,1 |
2524 .comm MotorTest,16,1 |
2525 .comm DebugOut,66,1 |
2526 .comm WinkelOut,8,1 |
2527 .comm Data3D,14,1 |
2528 .comm ExternControl,11,1 |
2529 .comm VersionInfo,10,1 |
2530 .comm TxdBuffer,170,1 |
2531 .comm ConfirmFrame,1,1 |
2532 .comm Display_Timer,2,1 |
2533 .comm Timer3D,2,1 |
2534 /* File "uart.c": code 2599 = 0x0a27 (2508), prologues 47, epilogues 44 */ |
DEFINED SYMBOLS |
*ABS*:00000000 uart.c |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:3 *ABS*:0000003f __SREG__ |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:4 *ABS*:0000003e __SP_H__ |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:5 *ABS*:0000003d __SP_L__ |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:6 *ABS*:00000000 __tmp_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:7 *ABS*:00000001 __zero_reg__ |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:14 .progmem.data:00000000 ANALOG_TEXT |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:52 .bss:00000000 JetiUpdateModeActive |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:58 .bss:00000001 AboTimeOut |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:64 .bss:00000003 Display_Interval |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:70 .bss:00000005 Intervall3D |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:76 .bss:00000007 DebugDataIntervall |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:82 .data:00000000 MeineSlaveAdresse |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:87 .data:00000001 PcZugriff |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:92 .data:00000002 DebugTextAnforderung |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:99 .bss:00000009 PC_MotortestActive |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:105 .bss:0000000a PC_DebugTimeout |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:111 .bss:0000000b RxDataLen |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:117 .bss:0000000c pRxData |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:123 .bss:0000000e AnzahlEmpfangsBytes |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:129 .bss:0000000f CntCrcError |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:135 .data:00000003 UebertragungAbgeschlossen |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:142 .bss:00000010 NeueKoordinateEmpfangen |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:148 .bss:00000011 NeuerDatensatzEmpfangen |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:154 .bss:00000012 SioTmp |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:160 .bss:00000013 DisplayLine |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:166 .bss:00000014 GetPPMChannelAnforderung |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:172 .bss:00000015 GetVersionAnforderung |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:178 .bss:00000016 DebugDataAnforderung |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:184 .bss:00000017 DebugDisplayAnforderung |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:190 .bss:00000018 DebugDisplayAnforderung1 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:196 .bss:00000019 GetExternalControl |
.bss:0000001a ptr.6 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:202 .text:00000000 __vector_22 |
*COM*:000000aa TxdBuffer |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:198 .bss:0000001c crc.1 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:256 .bss:0000001e crc1.2 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:257 .bss:0000001f crc2.3 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:258 .bss:00000020 buf_ptr.4 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:259 .bss:00000021 UartState.5 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:263 .text:0000006c __vector_20 |
*COM*:000000aa RxdBuffer |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:493 .text:00000260 AddCRC |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:549 .text:000002c0 SendOutData |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:749 .text:00000438 Decode64 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:862 .text:0000050c BearbeiteRxDaten |
*COM*:00000010 MotorTest |
*COM*:0000000a VersionInfo |
*COM*:0000000b ExternControl |
*COM*:00000001 ConfirmFrame |
*COM*:00000002 Timer3D |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:1860 .text:00000e00 uart_putchar |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:1876 .text:00000e10 UART_Init |
*COM*:00000002 Debug_Timer |
*COM*:00000002 Kompass_Timer |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:1928 .progmem.data:00000200 __c.0 |
C:\Users\Thomas\AppData\Local\Temp/ccA9aaaa.s:1933 .text:00000e96 DatenUebertragung |
*COM*:00000002 Display_Timer |
*COM*:00000008 WinkelOut |
*COM*:00000042 DebugOut |
*COM*:0000000e Data3D |
UNDEFINED SYMBOLS |
__do_copy_data |
__do_clear_bss |
LcdClear |
ServoActive |
__prologue_saves__ |
__epilogue_restores__ |
KompassValue |
KompassStartwert |
__divmodhi4 |
KompassRichtung |
Mixer |
MixerTable_WriteToEEProm |
SetDefaultParameter |
GetActiveParamSet |
ParamSet_ReadFromEEProm |
EE_Parameter |
ParamSet_WriteToEEProm |
__mulsi3 |
Umschlag180Nick |
Umschlag180Roll |
MotorenEin |
Piep |
LipoDetection |
LIBFC_ReceiverInit |
PPM_in |
I2C_ReadBLConfig |
BLConfig |
I2C_WriteBLConfig |
LIBFC_GetCPUType |
SetDelay |
RemoteKeys |
MenuePunkt |
CheckDelay |
DisplayBuff |
Menu |
DispPtr |
Menu_Putchar |
_printf_P |
MaxMenue |
IntegralNick |
__divmodsi4 |
IntegralRoll |
Parameter_UserParam1 |
Parameter_UserParam2 |
CopyDebugValues |
ErsatzKompass |
GIER_GRAD_FAKTOR |
SummeNick |
SummeRoll |
Mess_Integral_Gier |
memcpy_P |
/branches/metro/v0.82a metro_Akku+/version.txt |
---|
0,0 → 1,441 |
------- |
V0.53 27.04.2007 H.Buss |
- erste öffentliche Version |
V0.53b 29.04.2007 H.Buss |
- der FAKTOR_I war versehentlich auf Null, dann liegt der MikroKopter nicht so hart in der Luft |
V0.53c 29.04.2007 H.Buss |
- es gib ein Menü, in dem die Werte der Kanäle nach Nick, Roll, Gas,... sortiert sind. |
Die angezeigten Werte waren nicht die Werte der Funke |
V0.54 01.05.2007 H.Buss |
- die Paramtersätze können jetzt vor dem Start ausgewählt werden |
Dazu wird beim Kalibrieren der Messwerte (Gashebel oben links) der Nick-Rollhebel abgefragt: |
2 3 4 |
1 x 5 |
- - - |
Bedeutet: Nick-Rollhebel Links Mitte = Setting:1 Links Oben = Setting:2 usw. |
- der Faktor_I für den Hauptregler ist hinzugekommen. Im Heading-Hold-Modus sollte er vergössert werden, was Stabilität bringt |
V0.55 14.05.2007 H.Buss |
- es können nun Servos an J3,J4,J5 mit den Kanälen 5-7 gesteuert werden |
V0.56 14.05.2007 H.Buss |
- es gab Probleme mit Funken, die mehr als 8 Kanäle haben, wenn mehrere Kanäle dann auf Null waren |
- Funken, die nicht bis +-120 aussteuern können, sollten jetzt auch gehen |
V0.57 24.05.2007 H.Buss |
- Der Höhenregler kann nun auch mittels Schalter bedient werden |
- Bug im Gier-Algorithmus behoben; Schnelles Gieren fürhrte dazu, dass der MK zu weit gedreht hat |
- Kompass-Einfluss dämpfen bei Neigung |
- Man kann zwischen Kompass FIX (Richtung beim Kalibrieren) und Variabel (einstellbar per Gier) wählen |
- Der Motortest vom Kopter-Tool geht jetzt |
- Man kann den Parametersätzen einen Namen geben |
- Das Kamerasetting ist unter Setting 2 defaultmässig integriert |
V0.58 30.05.2007 H.Buss |
- Der Höhenregler-Algorithmus wird nun umgangen, wenn der Höhenreglerschalter aus ist |
V0.60 17.08.2007 H.Buss |
- "Schwindel-Bug" behoben |
- Die Poti-Werte werden jetzt auf Unterlauf (<0) überprüft |
- Poti4 zugefügt |
- Es werden jetzt 8 Kanäle ausgewertet |
- Kamera-Servo (an J7) |
- Die Settings müssen überschrieben werden |
V0.61 - V0.63 H.Buss 27.09.2007 |
- Poti 4 und Kanal 8 werden im Menü angezeigt |
- ein paar Kleinigkeiten bei den DefaultKonstanten2 bereinigt |
- Analog.c: Aktuell_ax korrigiert |
- auf 32 Debug-Kanäle erweitert |
- Loopings sind jetzt möglich und einzeln im KopterTool freischaltbar |
- leichte Anpassungen im Gier - Geschwindigkeit und Drift |
- die Hardwareversion V1.1 wird erkannt und das Programm stellt sich auf die geänderte Gyroverstärkung und die geänderten Portpins ein |
- die Software startet nach dem Einschalten schneller, weil der Luftdruckoffset schneller gefunden wird |
- die PPM-Ausgänge liegen wieder an den Pins an |
- Details an der Sensordatenverarbeitung -> es fliegt sich geringfügig anders |
- der MK ist bei wenig Gas nicht mehr so giftig -> soll das Landen vereinfachen |
- I2C-Bus läuft jetzt sicher nach einer Störung wieder an |
- Sticksignale werden präziser ausgewertet |
- Stick-Kanäle werden ans Kopter-Tool übertragen |
- Es muss die Version V1.47 des Kopter-Tool verwendet werden |
- Die Settings werden auf Default zurückgesetzt |
- am Piepen kann man die Fehlerart unterscheiden |
1. einzelnes Piepen beim Einschalten und Kalibrieren |
2. langsames Intervall mindestens 1 Sek -> Empfangsausfall |
3. schnelleres Intervall mindestens 1 Sek -> Akku |
4. sehr schnelles Intervall mindestens 1 Sek -> Kommunikation zu den Reglern gestört |
V0.64 H.Buss 30.09.2007 |
- beim Gieren wurden die Achsen nicht hart genug geregelt |
V0.65a H.Buss 15.10.2007 |
- Integral im Mischer wieder integriert |
- Feinabstimmung im ACC/Gyro Abgleich -> 1/32 & 100 |
- ACC/Gyro Abgleich auch bei HH |
V0.66a H.Buss 3.11.2007 |
- Messwertverarbeitung aus dem Analog-Interrupt entfernt |
- Analogmessung hängt jetzt am FC-Timing |
- Looping-Stick-Hysterese eingebaut |
- Looping-180°-Umschlag einstellbar |
- Achsenkopplung: Gierbewegung verkoppelt Nick und Roll |
- Lageregelung nach ACC-Sensor verbessert |
- zusätzlicher I-Anteil in der Lageregelung verbessert die Neutrallage |
- Gyrodriftkompensation überarbeitet |
- Bug in der Gier-Stick-Berechnung behoben |
- Gyro-Messung auf 1kHz beschleunigt |
V0.67a H.Buss 16.11.2007 |
- der Hauptregler-I-Anteil wirkt jetzt nur noch auf den Winkel (ausser im HH-Mode) |
- Gyro-Acc-Abgleich jetzt wieder in jedem Zyklus |
- Feinabstimmung |
- Beim HH-Modus gab es noch Bugs |
V0.67e H.Buss 29.11.2007 |
- Parameter: Dynamic Stability und Driftfaktor eingeführt |
- Die Namen der Analogwerte werden jetzt zum Koptertool übertragen |
- Kompatibilität zum Koptertool erhöht |
V0.67f H.Buss 04.12.2007 |
- Das Integral des Hauptreglers wird jetzt linear entladen und nicht mehr proportional |
- Schub für Gier wird jetzt auf den Gaswert begrenzt, dadurch steigt der MK nicht mehr beim Gieren. Gier ist allerdings nicht mehr so agressiv |
- Die ACC-Nullwerte können jetzt dauerhaft im EEPROM gespeichert werden (Stick:Vollgas und Gier rechts) |
V0.68a I.Busker 28.12.2007 |
- SPI.c & SPI.h ins Projekt aufgenommen |
SPI-Kommuikation kann in SPI.h aktiviert/deaktivert werden |
V0.68c H.Buss 05.01.2008 |
- Stickauswertung verbessert -> träger und präziser |
- Alle Settings angepasst |
V0.69e H.Buss 05.05.2008 |
- kleinere Bugs beseitigt |
- Schneller Sinkflug jetzt möglich |
- Min- und Maxgas in den Settings geändert |
- Lagewinkel wird jetzt in 0,1 Grad an Kompass und Navi gesendet |
- Kalibrierung für MK3Mag -> Nick unten beim Kalibrieren |
- Kompassroutine um den Ersatzkompass (Gyro unterstützt Kompasswert) erweitert |
V0.69h H.Buss 21.05.2008 |
- STICK_GAIN = 4 eingeführt. Das erhöht die Auflösung der Sollwerte. Stick_P und Stick_I müssen nun um Faktor 4 erhöht werden |
- SenderOkay auch an das Naviboard übertragen |
- Bessere Parameter bei Senderausfall |
V0.69j H.Buss 30.05.2008 |
- Höhere Präzision der Achsenkopplung |
V0.69k H.Buss 31.05.2008 |
- Bug in SPI.C behoben |
- in 0.69h war ein Bug, der zu ungewollten Loopings führen konnte |
V0.69L H.Buss 14.06.2008 |
- feinere Cam-Servo-Auflösung |
V0.70a H.Buss 01.07.2008 |
- Unterstützung der V1.3-Hardware mit automatischem Hardware-Gyro-Abgleich |
V0.70b H.Buss 14.07.2008 |
- flexible Einstellungsmöglichkeit von J16 und J17 (Transistorausgänge) |
- eigene Parameter für GPS-Naviboard |
- eigener Parameter für ExternalControl (war vorher UserParameter1 bzw. 8) |
- neue Parameter im EEPROM-Datensatz: J16Bitmask, J16Timing, ExternalControl, Navi... |
- MikroKopterFlags eingeführt, damit das Navi den Status des MKs kennt |
- KopterTool-Kompatibilität auf 8 erhöht |
V0.70c H.Buss 30.07.2008 |
- Parameter der Datenfusion leicht modifiziert |
- EEPROM-Parameter für Looping-Umschlag angepasst (von 100 auf 85) |
- MaxStick wird auf 100 begrenzt |
V0.70d H.Buss 02.08.2008 |
- Transistorausgänge: das oberste Bit der Blinkmaske (im KopterTool linkes Bit) gibt nun den Zustand des Ausgangs im Schalterbetrieb an |
0.71b: H.Buss 19.10.2008 |
Kommunikation zum Navi erweitert: |
- Beeptime jetzt 32Bit |
- Datenfusion und Driftkopensation wird durch NaviBoard unterstützt |
0.71c: H.Buss 20.10.2008 |
- LoopConfig heisst jetzt BitConfig |
- 3-Fach-Schalter für Höhensteuerung möglich -> kann man mit GPS-Schalter zusammenlegen |
- bei den Settings wurde Setting[0] mit abgespeichert, welches es nicht gab. |
- in Zukunft werden bei neuen EEPROM-Settings die Kanäle von Setting 1 übernommen |
- Variablen NaviWindCorrection, NaviSpeedCompensation, NaviOperatingRadius eingeführt |
0.71f: H.Buss 15.11.2008 |
- Ausschalten der Höhenregelung per Schalter um 0,3 sek verzögert |
- bei der seriellen Übertragung hat die FC jetzt als SlaveAdresse die 1 |
- VersionInfo.NaviKompatibel eingeführt |
- wenn manuell gegiert wird, wird der GyroKompass-Wert auf den Kompasswert gesetzt |
- Luftdruckwert wird an das Navi übertragen |
- Der Baro-Offset wird jetzt nachgeführt, um den Messbereich zu erweitern. Geht nur bei Höhenregler mit Schalter |
- Debugdaten können jetzt mit 'f' gepollt werden |
0.71g: Gregor 09.12.2008 |
- Kommunikation überarbeitet |
Infos hier: http://www.mikrokopter.de/ucwiki/en/SerialCommands |
0.71h: H.Buss 15.12.2008 |
- Freigegebene Version |
- NaviAngleLimitation als Parameter zum Navi implementiert |
- Antwort auf CMD: 't' entfernt |
0.72d: H.Buss 22.01.2009 |
- OCTO als Compilerschalter |
- Unterstützung der FC 2.0 (ME) |
- GYRO_D eingeführt |
- Achsenkopplung jetzt auch auf Nick/Roll-Bewegung |
0.72e: H.Buss 27.01.2009 |
- die 0.72d hatte kein Integral im Gier |
- Parameter eingeführt: |
EE_Parameter.NaviGpsPLimit |
EE_Parameter.NaviGpsILimit |
EE_Parameter.NaviGpsDLimit |
EE_Parameter.NaviPH_LoginTime |
EE_Parameter.AchsKopplung2 |
EE_Parameter.CouplingYawCorrection |
0.72f: H.Buss 28.01.2009 |
- Bug im Ersatzkompass entfernt |
0.72h: H.Buss 05.02.2009 |
- Algorithmen beschleunigt -> Floats durch Fixkomma ersetzt |
- Achsentkopplung weiter verbessert |
- Nick- und Roll im Octo-Mischer auf jeweils vier Motoren aufgeteilt |
0.72i: H.Buss 07.02.2009 |
- Abtastrate von 1kHz auf 2kHz erhöht |
0.72j: H.Buss 09.02.2009 |
- neue Implementierung der Servoausgänge |
0.72k: H.Buss 10.02.2009 |
- Abtastrate auf 5kHz erhöht |
0.72L: H.Buss 13.02.2009 |
- Signalfilterung überarbeitet |
- OCTO2 implementiert |
0.72M: H.Buss 13.02.2009 |
- Code Cleanup |
0.72o: H.Buss 24.02.2009 |
- Abtastrate auf 2kHz |
- HW-Version an Navi |
- neuer Datensatz 'c' -> Lagedaten für 3D-Grafik |
- Auswerteroutine für Spectrum-Satteliten implementiert |
- Kanalsettings werden beim Parameterreset nicht mehr gelöscht |
- die Driftkompensation wird jetzt feiner aufgelöst --> EE_Parameter.Driftkomp muss mal 8 genommen werden |
- die Integrale und ACC-Werte werden jetzt im Scope in ca. 0,1° angezeigt (wie beim NaviBrd) |
0.72p: H.Buss 01.03.2009 |
- Octo3 erstellt |
- Analogwerte umbenannt |
0.73a-d: H.Buss 05.04.2009 |
- MixerTabelle implementiert |
- I2C-Bus auf bis zu 12 Motoren erweitert |
- die Busfehler der BL-Regler werden im Menü angezeigt |
- Revision der MixerTabelle eingeführt |
- MixerTabelle wird bei Parameterreset neu initialisiert |
- Motortest auf [12] erweitert |
- Motorschalter nicht mehr 3-Stufig |
0.74a |
- Datenfusion im Flug auch, wenn ACC-Z < 512 |
- Wert für die Luftdruck-Messbereichserweiterung abgefangen |
0.74d |
- Die Driftkompensation ist jetzt dreistufig -> 0,5% pro sekunde zusätzlich eingeführts |
0.75a G.Stobrawa 22.5.2009 |
- Extern Control also received from NC via SPI |
0.75b H.Buss 27.05.2009 |
- Spektrum-Singale schalten den PPM-Eingang aus |
- max. 2 Sekunden nach dem Start auf die BL-Regler warten |
- Automatische Zellenerkennung, wenn Spannungswarnung < 5,0V |
- Bei automatischer Zellenerkennung piept es je nach Zellenzahl |
- EE_DATENREVISION auf 76 erhöht |
- Servo: |
- Roll-Servo für FC ME implementiert |
- Update-Cmd stoppt Servos |
- Servos werden erst nach dem ersten Kalibrieren aktiviert |
0.75c G.Stobrawa 25.7.2009 |
- Übertragung der Servo-Settings zur NC |
- RSSI wird an NC gesendet, derzeit wird der Wert nicht gesetzt |
- Bugfix Messbereichsumschaltung des Luftdrucksensors springt |
- Auflösung des Luftdrucks nun bis auf 1 cm (5mal feiner) zur genaueren Berechnung des D-Anteils |
- Unterstützung von Warnings-Bitmasks für die J16, J17-Outputs bei Unterspannung |
- Unterspannung für einzelne Zelle´n von 3.2V auf 3.3V angehoben (9.6V --> 9.9V für 3S) |
0.75d H.Buss 13.8.2009 |
- RC-Routine: Empfangsausfall soll sicherer erkannt werden |
- Zellenerkennung nun auch beim Speichern der Settings |
- Warnungs-Blinkmaske auch bei Empfangsausfall |
0.75e H.Buss 18.8.2009 |
- LED-Blinken kann an die Motoren gekoppelt werden |
- Feinabstimmung des Höhenreglers |
0.75f H.Buss 27.8.2009 |
- D-Anteil des Höhenreglers jetzt mit Quadratischer Komponente |
- Lagewinkel wirkt jetzt mit 1/Cos(x) mit in den Höhenregler |
- leichte Modifikation der RC-Empfangroutine |
0.75g H.Buss 31.08.2009 |
- die Akkuspannung geht jetzt antiproportional ins Gas ein |
0.75h H.Buss 3.09.2009 |
- im Höhenregler werden jetzt die Stellwerte begrenzt --> max +- 16% vom geschätzten Schwebegas |
0.75i H.Buss 7.09.2009 |
- GpsZ vom Navi zur FC für den Höhenregler |
- "hoovergas-Variation" als Parameter |
- Kompatibilität zu NC und PC erhöht |
0.75j H.Buss 17.09.2009 |
- Laufzeitzähler eingebaut |
0.75k H.Buss 22.09.2009 |
- zweite Variante (Gregor) der Höhenregelung implementiert |
- umschaltbare RC-Routine |
0.75L H.Buss 23.09.2009 |
- SollHoehe und Gas geht nun auch an die NC |
0.75M H.Buss 29.09.2009 |
- Spektrum-Timing wird nun überwacht |
- die FC kann nun stand-Alone als Kamera-Stabilizer eingesetzt werden, weil die Servos aktiviert werden, wenn I2C fehlt |
0.75N H.Buss 29.09.2009 |
- Hoover-Stickpunkt wird bei aktivem Höhenregler nicht nachgeführt |
- Hoover-Stickpunkt kann per Parameter fest eingestellt werden |
- Baro-Messbereichserweiterung auch bei aktiviertem Höhenregler |
- Gyro_Gier_P und Gyro_Gier_I eingeführt |
- I2C_fehler-Zähler jetzt in den Analogdaten |
0.75o H.Buss 01.10.2009 |
- der Höhenregler wird jetzt nur alle 10ms bearbeitet |
- Baro-Messbereichserweiterung auch bei Poti als Sollwert |
0.76d H.Buss 10.10.2009 |
- bei aktiver Messbereichserweiterung wird die aktuelle Höhe übernommen |
0.76e H.Buss 27.10.2009 |
- es werden beim Start einmal alle BL-Regler angesprochen, damit BL-Regler#8 auch einen Selbsttest macht |
- S3D-ACT-Summensignal als Compilerschalter |
0.76f H.Buss 05.11.2009 |
- untere Spannungsgrenze der Unterspannungswarnung (9,3V) entfernt |
0.76g H.Buss 10.11.2009 |
- Casting-Fehler in der Gas-Berechnung |
0.77a H.Buss 11.11.2009 |
- Erweiterung auf 12 Kanäle |
- Bei Koptertool-Kanalabfrage kein Empfangsausfall-Piepsen |
- serielle Kanalerweiterung eingebaut -> PPM_in auf 25 erweitert |
- Servos3-5 einstellbar |
- neues Kommando "f" -> schaltet auf anderen Parametersatz um |
0.77b H.Buss 09.12.2009 |
- JetiBox: Menü wird übertragen |
- neu: FCFlags |= FCFLAG_I2CERR; |
- LED-Warn-Blinken nun mit festem Timing und abschaltbar |
0.77c H.Buss 07.01.2010 |
- zwei weitere Spektrum-Varianten implementiert |
0.77d H.Buss 25.01.2010 |
- Strom-Messung eingebaut |
0.78a H.Buss 03.02.2010 |
- Bugfix: Settingsumschaltung im Flug |
0.78b H.Buss |
- veröffentlichte Version |
0.78c H.Buss + G.Stobrawa 22.2.2010 |
- Bewegungsbegrenzung an Servo 3 to 5 der FC 2.0 |
- Theoretischer Variablenüberlauf bei Vario-Höhenregler |
- Anzeige des "SPI RX communication error" wenn GPS Option nicht aktiv |
- LED-Schwellwerte fürs Blinken waren unterschiedlich |
0.78c H.Buss + G.Stobrawa 04.3.2010 |
- Code cosmetics |
0.78f H.Buss + I.Busker 23.3.2010 |
- Unterstützung für Jeti-Expander |
- Begrenzung des Vario-Höhenreglers auf ein 10m-Fenster um Überläufe zu verhindern |
- Einführung eines Vario-Zeichens (+/-/ ) auf der Jetibox |
- BL-Timeout beim Start erhöht |
0.80a-d H. Buss + G.Stobrawa 20.5.2010 - 22.7.2010 |
- Motoren Starten nicht ohne Kalibrierung |
- Unterstützung der BL2.0-Regler |
- statt 8 nun 10 Bit Auflösung der Lageregekung |
- Unterstützung der BL2.0-Regler Konfiguration via MK-Tool |
- Parametersätze werden per I2C an die BL-Regler durchgereicht |
- "Care-Free" implementiert |
- Freie Belegung der "Vorne"-Richtung |
- nur wenn Motoren laufen: Beepen, wenn Carefree ohne Navi oder ohne gültigen MK3Mag-Wert |
- nur wenn Motoren laufen: Beepen wenn NC plötzlich ausfällt |
- #define RECEIVER_SPEKTRUM_EXP eingeführt |
- #define SWITCH_LEARNS_CAREFREE eingeführt |
- Schwerpunktanzeige in den 3D-Daten |
- Checksummen gesicherte Datenablage im EEProm |
- Fehlerdiagnose implementiert (Wiki: ErrorCodes) |
- ErrorCode aufs Jeti-Display |
- JetiMenü: bis acht Temperaturen der BL-Regler |
- GPSInfo.Speed im Jeti-Display |
- Compass-Richtung nun im Jeti-menü |
- diverse Änderungen im Höhenregler |
- P wirkt schwächer |
- D wirkt stärker |
- Anpassung der Höhenregelung auf Level des Hoovergases |
- AccZ schneller nachführen |
Parameter modifiziert: |
- EEPROM-Kompatibilität auf 84 -> Parameter werden resettet |
- EE_Parameter.Hoehe_ACC_Wirkung = 0; // war 30 |
- EE_Parameter.Hoehe_HoverBand = 8; // war 5 |
- Notgas = 45 |
- NotgasZeit = 90 |
- Beginnersetting: EE_Parameter.DynamicStability = 70; |
- Neu: GyroStability = 6 |
- GPS-Login-Time auf 2 reduziert |
0.80e H.Buss 02.08.2010 |
- MK3Mag ohne NC ging nicht |
0.80f H.Buss 04.08.2010 |
- Beim Höhenregler "Deckel" wird das Gas wieder wie in der alten Version behandelt und der D-Anteil auf das alte Verhalten (um Faktor 8) reduziert |
0.80g H.Buss 11.08.2010 |
- erweitetern Messbereich für Luftdruck bei der FC2.1 aktiviert |
0.80h H.Buss 30.08.2010 |
- bei I2C-Fehlern wurden die Counter zurück gesetzt und für einige ms die Interrupts angehalten - das ist jetzt behoben |
- Nur I2C-Daten senden, wenn das alte Paket komplett raus ist |
0.82a H.Buss 08.11.2010 |
- MotorSafetySwitch - Verriegelt das Ein/Ausschalten |
- ServoManualControlSpeed - Verlangsamt das Cam-Servo |
- CamOrientation - für verdrehte Kamera-Servos |
- Position der Status-Bits verändert |
- "Zucken" der Servos bei kurzen Empfangsausfällen behoben |
- jeti update command 'j' added |
- Poti-Auswertung nach ParameterZuordnung() verschoben -> FC-Code schneller |
- Waypont-Events z.B. zum Triggern der Kamera |
- Gyro-Sytbility: Werte bis 16 möglich |