Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 1188 → Rev 1189

/branches/v0.72p kmpec/Flight-Ctrl_MEGA644_V0_72p.eep
0,0 → 1,129
:1000000000000000000000000000000000000000F0
:1000100000000000000000000000000000000000E0
:1000200000000000000000000000000000000000D0
:1000300000000000000000000000000000000000C0
:1000400000000000000000000000000000000000B0
:1000500000000000000000000000000000000000A0
:100060000000000000000000000000000000000090
:100070000000000000000000000000000000000080
:100080000000000000000000000000000000000070
:100090000000000000000000000000000000000060
:1000A0000000000000000000000000000000000050
:1000B0000000000000000000000000000000000040
:1000C0000000000000000000000000000000000030
:1000D0000000000000000000000000000000000020
:1000E0000000000000000000000000000000000010
:1000F0000000000000000000000000000000000000
:1001000000000000000000000000000000000000EF
:1001100000000000000000000000000000000000DF
:1001200000000000000000000000000000000000CF
:1001300000000000000000000000000000000000BF
:1001400000000000000000000000000000000000AF
:10015000000000000000000000000000000000009F
:10016000000000000000000000000000000000008F
:10017000000000000000000000000000000000007F
:10018000000000000000000000000000000000006F
:10019000000000000000000000000000000000005F
:1001A000000000000000000000000000000000004F
:1001B000000000000000000000000000000000003F
:1001C000000000000000000000000000000000002F
:1001D000000000000000000000000000000000001F
:1001E000000000000000000000000000000000000F
:1001F00000000000000000000000000000000000FF
:1002000000000000000000000000000000000000EE
:1002100000000000000000000000000000000000DE
:1002200000000000000000000000000000000000CE
:1002300000000000000000000000000000000000BE
:1002400000000000000000000000000000000000AE
:10025000000000000000000000000000000000009E
:10026000000000000000000000000000000000008E
:10027000000000000000000000000000000000007E
:10028000000000000000000000000000000000006E
:10029000000000000000000000000000000000005E
:1002A000000000000000000000000000000000004E
:1002B000000000000000000000000000000000003E
:1002C000000000000000000000000000000000002E
:1002D000000000000000000000000000000000001E
:1002E000000000000000000000000000000000000E
:1002F00000000000000000000000000000000000FE
:1003000000000000000000000000000000000000ED
:1003100000000000000000000000000000000000DD
:1003200000000000000000000000000000000000CD
:1003300000000000000000000000000000000000BD
:1003400000000000000000000000000000000000AD
:10035000000000000000000000000000000000009D
:10036000000000000000000000000000000000008D
:10037000000000000000000000000000000000007D
:10038000000000000000000000000000000000006D
:10039000000000000000000000000000000000005D
:1003A000000000000000000000000000000000004D
:1003B000000000000000000000000000000000003D
:1003C000000000000000000000000000000000002D
:1003D000000000000000000000000000000000001D
:1003E000000000000000000000000000000000000D
:1003F00000000000000000000000000000000000FD
:1004000000000000000000000000000000000000EC
:1004100000000000000000000000000000000000DC
:1004200000000000000000000000000000000000CC
:1004300000000000000000000000000000000000BC
:1004400000000000000000000000000000000000AC
:10045000000000000000000000000000000000009C
:10046000000000000000000000000000000000008C
:10047000000000000000000000000000000000007C
:10048000000000000000000000000000000000006C
:10049000000000000000000000000000000000005C
:1004A000000000000000000000000000000000004C
:1004B000000000000000000000000000000000003C
:1004C000000000000000000000000000000000002C
:1004D000000000000000000000000000000000001C
:1004E000000000000000000000000000000000000C
:1004F00000000000000000000000000000000000FC
:1005000000000000000000000000000000000000EB
:1005100000000000000000000000000000000000DB
:1005200000000000000000000000000000000000CB
:1005300000000000000000000000000000000000BB
:1005400000000000000000000000000000000000AB
:10055000000000000000000000000000000000009B
:10056000000000000000000000000000000000008B
:10057000000000000000000000000000000000007B
:10058000000000000000000000000000000000006B
:10059000000000000000000000000000000000005B
:1005A000000000000000000000000000000000004B
:1005B000000000000000000000000000000000003B
:1005C000000000000000000000000000000000002B
:1005D000000000000000000000000000000000001B
:1005E000000000000000000000000000000000000B
:1005F00000000000000000000000000000000000FB
:1006000000000000000000000000000000000000EA
:1006100000000000000000000000000000000000DA
:1006200000000000000000000000000000000000CA
:1006300000000000000000000000000000000000BA
:1006400000000000000000000000000000000000AA
:10065000000000000000000000000000000000009A
:10066000000000000000000000000000000000008A
:10067000000000000000000000000000000000007A
:10068000000000000000000000000000000000006A
:10069000000000000000000000000000000000005A
:1006A000000000000000000000000000000000004A
:1006B000000000000000000000000000000000003A
:1006C000000000000000000000000000000000002A
:1006D000000000000000000000000000000000001A
:1006E000000000000000000000000000000000000A
:1006F00000000000000000000000000000000000FA
:1007000000000000000000000000000000000000E9
:1007100000000000000000000000000000000000D9
:1007200000000000000000000000000000000000C9
:1007300000000000000000000000000000000000B9
:1007400000000000000000000000000000000000A9
:100750000000000000000000000000000000000099
:100760000000000000000000000000000000000089
:100770000000000000000000000000000000000079
:100780000000000000000000000000000000000069
:100790000000000000000000000000000000000059
:1007A0000000000000000000000000000000000049
:1007B0000000000000000000000000000000000039
:1007C0000000000000000000000000000000000029
:1007D0000000000000000000000000000000000019
:1007E0000000000000000000000000000000000009
:1007F00000000000000000000000000000000000F9
:00000001FF
/branches/v0.72p kmpec/Flight-Ctrl_MEGA644_V0_72p.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/v0.72p kmpec/Flight-Ctrl_MEGA644_V0_72p.hex
0,0 → 1,2806
:100000000C9491020C94AE020C94AE020C94AE02CD
:100010000C94AE020C94AE020C94AE020C94AE02A0
:100020000C94AE020C94FD120C94AE020C94AE0231
:100030000C94D7220C94AE020C94AE020C94AE0237
:100040000C94AE020C94AE020C94AF110C94AE0260
:100050000C94BE060C94AE020C9486060C94AE0270
:100060000C94FF150C94AE020C94E4210C94AE0297
:100070000C94B2520C94AE020C94AE0270197C191E
:1000800011181D1837183216E017F2172D175D16C4
:100090003216511862187C189C18BC1816194E1686
:1000A00065227B2251229522702209229C2236222F
:1000B00023226C22602227222B22232291228C22AF
:1000C00027222B22232288225B22272246220A0A69
:1000D0000D004E65757472616C0048656164696EEF
:1000E00067486F6C64000A0D537465756572756EB0
:1000F000673A20004F4B0A0D000A0D4162676C659C
:10010000696368204C756674647275636B73656EA1
:10011000736F722E2E000A0D42656E75747A65201B
:10012000506172616D657465727361747A202564C3
:10013000000A0D414343206E696368742061626761
:1001400065676C696368656E21003A2047656E6576
:10015000726174696E672044656661756C742D50B8
:100160006172616D65746572207573696E67206F69
:100170006C6420537469636B2053657474696E6793
:1001800073000A0D496E69742E20454550524F4D3B
:10019000000A0D3D3D3D3D3D3D3D3D3D3D3D3D3D2F
:1001A0003D3D3D3D3D3D3D3D3D3D3D3D3D3D3D3D7F
:1001B0003D000A0D466C69676874436F6E74726F18
:1001C0006C0A0D48617264776172653A25642E2568
:1001D000640A0D536F6674776172653A5625642E12
:1001E0002564256320002E0048693A2534692020C3
:1001F00043663A253469200047733A253469202044
:1002000047693A25346920004E693A25346920202F
:10021000526F3A253469200045787465726E436FD9
:100220006E74726F6C20200052616E67653A2533E0
:10023000692D253369005374656C6C756E673A20BF
:1002400025336900536574706F696E7420202533FF
:100250006900536572766F202000506F7469343ADC
:10026000202025336900506F7469333A20202533EC
:100270006900506F7469323A202025336900506F4D
:100280007469313A20202533690053746172743ADD
:100290002020202020253569004D65737377657215
:1002A000743A2020253569005269636874756E6759
:1002B0003A2020253569004B6F6D706173732020E3
:1002C000202020202000456D70662E506567656CEB
:1002D0003A253569005370616E6E756E673A20205D
:1002E00025356900486F6368202534692028253347
:1002F000692900526F6C6C202534692028253369E8
:1003000029004E69636B202534692028253369292B
:1003100000414343202D2053656E736F720047697F
:1003200065722025346920282533692928253369F9
:100330002900526F6C6C20253469202825336929E7
:100340002825336929004E69636B202534692028EC
:1003500025336929282533692900476965722025D5
:10036000346920282533692900526F6C6C202534AC
:100370006920282533692E257829004E69636B2072
:1003800025346920282533692E2578290047696599
:10039000722025346920282533692900526F6C6C3E
:1003A0002025346920282533692E256929004E69C6
:1003B000636B2025346920282533692E256929009F
:1003C0004779726F202D2053656E736F7200503322
:1003D0003A253469202050343A25346920005031C0
:1003E0003A253469202050323A2534692000477379
:1003F0003A253469202047693A25346920004E693E
:100400003A2534692020526F3A25346920004B3751
:100410003A25346920204B383A25346920004B3581
:100420003A25346920204B363A25346920004B3375
:100430003A25346920204B343A25346920004B3169
:100440003A25346920204B323A25346920004B6F1D
:100450006D706173733A20202025356900526F6CEE
:100460006C3A202020202020253569004E69636BDE
:100470003A20202020202025356900616B742E2031
:100480004C6167650048F668656E726567656C75F6
:100490006E67004B65696E6520004F666620202000
:1004A0002020203A20253569004C756674647275E9
:1004B000636B3A2025356900536F6C6C486F656833
:1004C000653A2025356900486F6568653A20202027
:1004D00020202535690028632920486F6C676572E4
:1004E00020427573730053657474696E673A2025F2
:1004F00064200048573A5625642E25642053573A05
:1005000025642E25642563002B204D696B726F4B8B
:100510006F70746572202B005B25695D005B256937
:100520005D0011241FBECFEFD0E1DEBFCDBF13E0D1
:10053000A0E0B1E0EAE7FCEA02C005900D92A23C1F
:10054000B107D9F718E0A2ECB3E001C01D92AB3EB1
:10055000B107E1F70E9459030C943C560C9400003B
:10056000863038F085E0A2E0B0E0082E0E942B56DD
:1005700008958823C1F70895A2E0B0E00E942356B1
:10058000902D892F8150853018F4892F90E008959F
:1005900083E00E94B00283E090E008958091D70745
:1005A000E82FF0E0EE0FFF1FEB55F84F80819181AF
:1005B0008D5E9F4F14F010920201808191818A5BC1
:1005C0009F4FACF480910201882389F481E08093ED
:1005D000020120919A062F5F20939A06253050F051
:1005E00088EE93E09093E6038093E50308C02091A2
:1005F0009A0605C0822F0E94DF3420919A06822F2E
:1006000090E090936807809367070895582F9B01A7
:10061000863060F5882349F1A82FB0E01197842F28
:1006200090E0BD01689FD001699FB00D789FB00D2B
:100630001124AC59BF4FF901019724F001900E9499
:100640002B56FACF62E670E0DB01042E0E942B5697
:1006500088E062517040DB01F901182E0E94375684
:10066000852F0E94B0020E949F51089555E0A4E09A
:10067000B0E0D5CFA82FFB018150853018F0A2E063
:10068000B0E002C0B0E01197842F90E09D01289F58
:10069000D001299FB00D389FB00D1124AC59BF4F28
:1006A000019724F00E9423560192FACF0E949F5195
:1006B00008952F923F924F925F926F927F928F9206
:1006C0009F92AF92BF92CF92DF92EF92FF920F93E1
:1006D0001F93CF93DF93CDB7DEB722970FB6F89471
:1006E000DEBF0FBECDBF14B815B8189BF8C2199B5A
:1006F000F2C28DE08093000181E887B93E9A8FEFC6
:1007000088B98BE184B981E085B98EE38AB9579ABB
:1007100087E48BB9469A84B7877F84BF8091600055
:100720008861809360001092600080ED97E0909364
:10073000E6038093E50310929A04109299041092B4
:10074000AA071092A9071092980410929704109289
:1007500096041092950420910001243108F4C5C23A
:1007600088E894E0A0E0B0E08093B3039093B403F2
:10077000A093B503B093B6032A3009F48BC2243199
:1007800009F488C2289A0E94E6120E94BE120E94B2
:1007900065080E94C2220E94F9150E94AD210E94A4
:1007A000694E789420910001822F6AE00E94B3552F
:1007B000492F50E0822F0E94B35590E020E730E0AF
:1007C0003F932F9328E430E03F932F931F921F9283
:1007D0005F934F939F938F9382EB91E09F938F93BF
:1007E0001F920E94C30E8091C8002DB73EB7235FB1
:1007F0003F4F0FB6F8943EBF0FBE2DBF803209F4B5
:1008000020C281E991E09F938F931F920E94C30EB3
:100810000F900F900F90809100018C3008F00FC264
:10082000299A49E067ED77E083E00E943A0371E09E
:10083000C72E70E0D72ED6010E942356802D8A3411
:1008400009F4B2C00E945B3682E891E09F938F93D7
:100850001F920E94C30E1A8219820F900F900F9060
:1008600060E5A62E60E0B62E51E5852E50E0952E6F
:1008700042E5642E40E0742E33E5432E30E0532EE3
:1008800024E5222E20E0322E97E5E92E90E0F92E85
:100890000981102F1F5F123009F4C1C1133009F410
:1008A000FBC1143008F0BBC180910001843168F0B5
:1008B00085E08093EF07109207088BE18093EB07A8
:1008C0008EE48093040880930508D5010E94235686
:1008D000802D8C3008F05DC0D4010E942356802DFD
:1008E0008C3008F056C0D3010E942356802D8C30E6
:1008F00008F04FC0D2010E942356802D8C3008F0A2
:1009000048C0A0E5B0E00E942356802D8093D70711
:10091000A1E5B0E00E942356802D8093D807A2E580
:10092000B0E00E942356802D8093D907A3E5B0E064
:100930000E942356802D8093DA07D1010E9423560E
:10094000802D8093DB07A5E5B0E00E942356802D23
:100950008093DC07A6E5B0E00E942356802D8093AB
:10096000DD07D7010E942356802D8093DE071130CA
:1009700009F495C14CE567ED77E0812F0E940603ED
:100980000E5F063048F489819A8101969A838983A3
:100990007FCF0E94C423EECF83E00E94B0028AE49E
:1009A000D601082E0E942B56A4E0B0E00E942356E8
:1009B000802D853008F084C10E94BC024CE567EDB3
:1009C00077E00E943A030E94BC0290E09F938F93CD
:1009D00086E191E09F938F931F920E94C30E8091B6
:1009E000DF070F900F900F900F900F9080FD31C197
:1009F00008EE13E00E946232809100018A3009F40F
:100A00001CC1843109F419C1289A80ED97E09093B4
:100A1000E6038093E50385E580939C0686EE90E0EF
:100A20009F938F931F920E94C30E8091DF070F90B8
:100A30000F900F9082FFF6C08AED90E09F938F9306
:100A40001F920E94C30E0F900F900F908EEC90E0BB
:100A50009F938F931F920E94C30E0E94581B88E899
:100A600093E1909394038093930381E080939B069A
:100A70000F900F900F908091E203882309F471C0CA
:100A800080911D03882309F46CC01092E2038091C9
:100A90009A06882309F471C00E94CE020E94A030F9
:100AA000209100012A3009F471C0243109F46EC08C
:100AB000289A80910501882309F46EC081508093A3
:100AC000050180919404882329F080919404815039
:100AD000809394048091930390919403892B09F45B
:100AE0006CC0809193039091940301979093940329
:100AF000809393032A3009F45EC0243109F45BC06B
:100B0000289A8091E203882329F080919D0488230C
:100B100009F075C00E94A4090E94350CC8010E940A
:100B20008E128823E1F020910E0330910F03809103
:100B3000F00790E02817390744F480910903909159
:100B40000A038F5F9F4F09F45DC00E94D45084E078
:100B50008093E70384E190E00E9485128C010E945B
:100B6000AE518091E703882309F085CF0E9415518B
:100B70008091E2038823A9F383CF0E940A370E9461
:100B8000A030209100012A3009F08FCF2898809161
:100B90000501882309F092CF1092A6061092B504A1
:100BA0001092B4041092B7041092B6041092B904D3
:100BB0001092B80486CF2898A4CF85E090E0909357
:100BC0009403809393030E94C7218091090390911D
:100BD0000A038F5F9F4F09F094CF80919D04882373
:100BE00009F48FCF80E197E29093E6038093E503C9
:100BF00080E890E090930A038093090382CF0E94DB
:100C0000350C8CCF80E797E19093E6038093E50362
:100C100080E093E090930A038093090396CF0E94AB
:100C2000AA3542CE82ED90E09F938F931F920E944F
:100C3000C30E0F900F900F9009CF2898E6CE2998F9
:100C4000F0CD8091CA00863009F0DBCD0E945C5265
:100C5000D8CD89EF90E09F938F931F920E94C30E8F
:100C600088EE93E00E9485128C010E94FC1A0F907E
:100C70000F900F90C8010E948E128823D9F384EF41
:100C800090E09F938F931F920E94C30E0F900F903E
:100C90000F90B0CE289877CD0E94FB3405CEEAE4C1
:100CA000F1E0FF93EF931F920E94C30E4CE567EDB6
:100CB00077E081E00E9406030F900F900F9063CEC3
:100CC00081E391E09F938F931F920E94C30E0F9038
:100CD0000F900F9071CE8BE0809300010DCD199B8A
:100CE00011C084E18093000107CD8BE095E0A0E086
:100CF000B0E08093B3039093B403A093B503B09393
:100D0000B6033ACD8AE080930001F6CC1F920F9291
:100D10000FB60F9211248F939F93EF93FF938091BF
:100D200003018823A9F48091DE039091DF030196EB
:100D30009093DF038093DE03FC01E45AFA4FE081D5
:100D4000ED3059F08639910541F0E093C6000DC0B1
:100D50001092DF031092DE0308C01092DF0310929E
:100D6000DE0381E080930301F0CFFF91EF919F912B
:100D70008F910F900FBE0F901F9018951F920F929A
:100D80000FB60F9211242F933F934F938F939F93FE
:100D9000AF93BF93CF93DF93EF93FF938091C60000
:100DA0008093C9034091D903463910F01092D803BB
:100DB0008091C9038D3009F18091D803813009F405
:100DC00090C0813030F0823009F473C01092D803A3
:100DD000B5C08091C903833209F4A1C08091C903D1
:100DE0008093A90681E08093D9038091C90390E0A4
:100DF0009093DD038093DC03A1C08091D8038230FF
:100E0000E9F61092D803A42FB0E0FD01E955F94F9F
:100E10003081ED01C855D94F28818091DC03909134
:100E2000DD03831B9109821B91099F709093DD0361
:100E30008093DC039C010024220F331F001C220F2F
:100E4000331F001C232F302D235C2093DB03982FAE
:100E50009F73935C9093DA038081281709F468C02C
:100E60008091CC038F5F8093CC0390E08091CA0384
:100E7000882309F063C0992309F460C081E080935E
:100E8000CA034F5F4093CD03A755B94F8DE08C93B4
:100E90008091AB06823509F051C088E190E02CE0EA
:100EA0000FB6F894A895809360000FBE2093600061
:100EB00045C0E42FF0E08091C903E755F94F8083E6
:100EC000463948F11092D8032091C9038091DC0380
:100ED0009091DD03820F911D9093DD038093DC03DD
:100EE0002DC082E08093D803E42FF0E08091C90305
:100EF000E755F94F80834F5F4093D9032091C90391
:100F00008091DC039091DD03820F911D9093DD03AE
:100F10008093DC0313C04F5F4093D903D5CF8091FA
:100F2000CA03882309F05ACF81E08093D80356CFB3
:100F30008881981709F094CF91E098CFFF91EF91B5
:100F4000DF91CF91BF91AF919F918F914F913F9141
:100F50002F910F900FBE0F901F901895CF93DF9396
:100F6000BC01892B19F120E030E040E050E0FA01AB
:100F7000E45AFA4F8081280F311D4F5F5F4F4617AB
:100F80005707A9F73F70C9010024880F991F001C5B
:100F9000880F991F001C892F902D835CDB0111960F
:100FA0002F73235CED012196FB0108C0E0E0F0E027
:100FB0008DE3A1E0B0E02DE3C2E0D0E0E45AFA4FC7
:100FC0008083A45ABA4F2C93C45ADA4F8DE0888399
:100FD0001092030180915C058093C600DF91CF9150
:100FE00008954091CD03465009F451C033E063E0C9
:100FF00030C0282F2D53E62FF0E0822F82958F707E
:101000009D53990F990F982BE755F94F9083E62F31
:10101000EF5F4130D1F1972F9D53F0E02295207F73
:10102000892F86958695282BE755F94F2083E62F43
:10103000EE5F43504F3F49F1F0E09295990F990FC1
:10104000907C5D53952BE755F94F90836D5F44235A
:10105000D9F0E32FF0E0E755F94F90813F5FE32FA0
:10106000F0E0E755F94F80813F5FE32FF0E0E7556F
:10107000F94F70813F5FE32FF0E0E755F94F508162
:101080003F5F442309F0B5CFE62FE35001C0E0E015
:101090008CEA96E09093CF038093CE03E093D00345
:1010A00008951F93182F8A3029F08091C00085FF82
:1010B000FCCF04C08DE00E945108F7CF1093C6000A
:1010C00080E090E01F9108950895E1ECF0E088E160
:1010D0008083A0ECB0E08C9182608C9380818068EA
:1010E00080838081806480838AE28093C4008091C1
:1010F0000701909108010E948512909389068093C0
:1011000088068CED90E00E9485129093A80680934B
:10111000A70610928A0688E480938B068FE080935E
:101120008E068AE080938C0610928D061092CF0373
:101130001092CE031092D0030895EF92FF920F9376
:101140001F93CF93DF93CDB7DEB722970FB6F894F6
:10115000DEBF0FBECDBF9C854D8583E280935C05CD
:101160009F5990935D058B8580935E05CE010E9609
:101170009A838983442319F463E070E0D5C00E8517
:101180001F85CE0142969A83898328893989211542
:10119000310591F3F42EFA9463E070E0A0E05EC0B4
:1011A000EA2FF0E0AF5FC901E00FF11F40819C0121
:1011B0002150304009F473C0EA2FF0E0AF5FE00F38
:1011C000F11FB0812150304009F079C0FF2009F4AF
:1011D00076C0E981FA81008111813496FA83E9832E
:1011E000349722813381FA94842F90E042954F7096
:1011F0008F7090705B2F5295569556955370880F4F
:10120000991F880F991F582B535CBF73B35CA0E0E4
:101210008E2D86958695835CFB01E45AFA4F808378
:101220008E2D90E08370907082959295907F982794
:10123000807F9827482B435CFB01E35AFA4F408399
:10124000FB01E25AFA4F5083FB01E15AFA4FB08397
:101250006C5F7F4F2115310509F466C0F801EA0F74
:10126000F11DE080AF5F2150304009F099CFFF20A1
:1012700091F0E981FA81008111813496FA83E98342
:10128000349782819381FA94009721F0E0E0F0E0B6
:10129000A1E08ACFA0E040E05DE3BDE3B9CFFF204D
:1012A00011F5842F90E042954F708F709070880FE9
:1012B000991F880F991F582F535CBDE3A9CF842F26
:1012C00090E042954F708F7090705B2F52955695BD
:1012D00056955370880F991F880F991F582B535C90
:1012E000BF73B35C95CFE981FA8100811181349697
:1012F000FA83E983349722813381FA9421153105E9
:1013000079F4842F90E042954F708F709070880F21
:10131000991F880F991F582F535CA0E0BDE378CF29
:10132000E0E0F0E0A1E04BCFCB010E94AE072296B7
:101330000FB6F894DEBF0FBECDBFDF91CF911F91E6
:101340000F91FF90EF900895EF92FF920F931F93EC
:1013500080910301882309F483C28091C403882308
:1013600029F080910301882309F04AC18091C303C9
:10137000882329F080910301882309F07BC18091A3
:10138000C603882329F080910301882309F0A2C1B4
:101390008091C203882329F080910301882309F0FA
:1013A000B9C18091A7069091A8060E948E12882349
:1013B00029F080910301882309F0D1C180910701B0
:1013C00090910801892B09F06DC08091C503882395
:1013D00029F080910301882309F0EAC08091D603A7
:1013E0009091D703892B09F06CC0809104018F3F45
:1013F00059F190E082959295907F9827807F982769
:10140000875F9E4F20E130E03F932F939F938F9310
:1014100081E090E09F938F9384E091E09F938F937E
:1014200082E08F9381E08F9381E48F930E949D08E7
:101430008FEF809304012DB73EB7255F3F4F0FB666
:10144000F8943EBF0FBE2DBF80918107882329F0FD
:1014500080910301882309F0E5C18091C7038823A7
:1014600009F4FEC180910301882309F4F9C186E1E2
:1014700090E09F938F9385EA97E09F938F9381E00D
:101480008F938F9380E58F930E949D081092C703DE
:101490002DB73EB7295F3F4F0FB6F8943EBF0FBE42
:1014A0002DBFDEC180918806909189060E948E1220
:1014B000882309F48ACF80910301882309F48ECF11
:1014C00077C080915A0590915B050E948E12882307
:1014D00009F48BCF80910301882309F486CFE09033
:1014E000EB07FF24EE0CFF1CEE0CFF1C0027F7FCA3
:1014F0000095102F60914504709146048091470437
:1015000090914804A80197010E94085630934D0518
:1015100020934C0560914D0470914E0480914F04CE
:1015200090915004A80197010E94085630934F05EE
:1015300020934E0560917E0870917F08809180080D
:10154000909181082AE030E040E050E00E949455FC
:101550002091B3033091B4034091B5035091B60389
:101560000E94085630935105209350058EE090E07C
:101570009F938F938CE495E09F938F9381E08F935B
:101580008F9383E48F930E949D088091D60390915E
:10159000D7030E94851290935B0580935A058DB7FF
:1015A0009EB707960FB6F8949EBF0FBE8DBF1DCF96
:1015B00082E490E09F938F938FE397E09F938F93C4
:1015C00081E08F938F9384E48F930E949D08109203
:1015D000C50380910701909108012DB73EB7295F9F
:1015E0003F4F0FB6F8943EBF0FBE2DBF009709F4D2
:1015F000F5CE0E9485129093890680938806EECEE0
:101600000E94611B8091C80324E1829FC0011124C4
:10161000885D9C4F24E130E03F932F939F938F93FD
:1016200081E090E09F938F9388EC93E09F938F935A
:1016300082E08F9381E08F9388E48F930E949D08CE
:101640008091C8038F5F8093C8032DB73EB7255F95
:101650003F4F0FB6F8943EBF0FBE2DBF843010F041
:101660001092C8031092C4038091C303882309F425
:1016700086CE80CE0E94611B80E590E09F938F9381
:1016800088E293E09F938F9321E030E03F932F9384
:1016900088E793E09F938F933F932F9386E294E0A4
:1016A0009F938F9383E08F9381E08F938CE48F934C
:1016B0000E949D081092C3038DB79EB70F960FB678
:1016C000F8949EBF0FBE8DBF8091C603882309F496
:1016D0005FCE59CE8AE090E09F938F938AE896E0A0
:1016E0009F938F9381E08F938F9386E58F930E94D2
:1016F0009D081092C6032DB73EB7295F3F4F0FB626
:10170000F8943EBF0FBE2DBF8091C203882309F419
:1017100048CE42CE209106018BE090E09F938F93BC
:101720008CE996E09F938F9381E08F932F9387E4CA
:101730008F930E949D081092C2038DB79EB70796A3
:101740000FB6F8949EBF0FBE8DBF8091A7069091F3
:10175000A8060E948E12882309F430CE2ACEE0908B
:10176000EB07FF24EE0CFF1CEE0CFF1C0027F7FC20
:101770000095102F609145047091460480914704B4
:1017800090914804A80197010E940856309395064D
:101790002093940660914D0470914E0480914F0403
:1017A00090915004A80197010E9408563093970623
:1017B000209396068091AC04809398068091AD04A6
:1017C0008093990688E090E09F938F9384E996E058
:1017D0009F938F9381E08F9383E08F9387E78F931D
:1017E0000E949D082DB73EB7295F3F4F0FB6F89472
:1017F0003EBF0FBE2DBF80919A06853018F086E05F
:1018000080939A0683E690E00E9485129093A80642
:101810008093A7068091070190910801892B09F414
:10182000D4CD40CE81E090E09F938F9381E897E004
:101830009F938F9381E08F938F9382E48F930E9485
:101840009D08109281078DB79EB707960FB6F89442
:101850009EBF0FBE8DBF8091C703882309F002CEC3
:101860001F910F91FF90EF900895EF92FF920F93C9
:101870001F93CF93DF93CDB7DEB722970FB6F894BF
:10188000DEBF0FBECDBF8091CA03882309F415C205
:101890000E94F1078091AA06823679F18091AB0609
:1018A000843609F449C18536C0F18C3609F429C162
:1018B0008D3608F072C0873609F4E9C08836A1F485
:1018C0008FEF8093050180912704E091CE03F09182
:1018D000CF039081892B80932704882311F01092E5
:1018E000C80381E08093C4031092CA031092CF030F
:1018F0001092CE031092D003E0C18091AB068137E5
:1019000009F476C0823770F58B3409F429C1803729
:1019100029F681E08093C703C1CF813609F4FFC067
:10192000823608F044C08B34F9F6E091CE03F09192
:10193000CF03808191819093820480938104845E9F
:101940009D4F2091830430918404821B930B68E6A1
:1019500071E00E94D355845B9040909386048093FD
:101960008504C2CF833709F419C1843709F096CFB3
:101970000091CE031091CF03F80180819181A28163
:10198000B3818093D2039093D303A093D403B093F5
:10199000D5038FEF8093050181CF843709F48EC082
:1019A000863709F0A1CF81E08093C6039DCF8236B0
:1019B00009F471C0833609F097CF8091D6039091D6
:1019C000D703892B09F051C10091CE031091CF03A9
:1019D000F8019081992309F058C1F80180812AE02B
:1019E000829FC00111249093D7038093D6037CCFAC
:1019F0000091CE031091CF03F80180818F3F09F44D
:101A000053C1F8018081882309F034C181E08083CB
:101A10000091CE031091CF0397EDE92E97E0F92EB8
:101A20004CE5B701F80180810E943A0380910301DF
:101A30008823E1F3E091CE03F091CF038081898385
:101A40008AE48A838CE590E09F938F93FF92EF92D4
:101A500021E030E03F932F93CE0102969F938F9326
:101A60003F932F93CE0101969F938F9383E08F93A3
:101A700081E08F9381E58F930E949D088DB79EB77B
:101A80000F960FB6F8949EBF0FBE8DBF07CF81E0B3
:101A90008093C20329CFACE9B6E0E091CE03F09188
:101AA000CF038BE001900D928150E1F78091A50664
:101AB000809381078FEF8093050116CFE091CE03CD
:101AC000F091CF0380819181A281B3818093D20371
:101AD0009093D303A093D403B093D50380910301D3
:101AE0008823E1F3809106011F928F9384E58F9301
:101AF0000E949D088FEF809305010F900F900F902B
:101B0000F3CE8FEF80930501E091CE03F091CF03E8
:101B100080818093260481E08093C303E5CEE09129
:101B2000CE03F091CF03808180930401803210F2C4
:101B30008FE180930401BECFE091CE03F091CF03FB
:101B400080812AE0829FC001112490930801809334
:101B50000701892B09F4C8CE81E08093C503C4CE68
:101B60000091CE031091CF03F80180819181909371
:101B7000820480938104845E9D4F20918304309180
:101B80008404821B930B68E671E00E94D355845B4A
:101B90009040909386048093850480CE0091CE037C
:101BA0001091CF03F80180818150853018F4818134
:101BB0008A34E9F01982809103018823E1F381E0FE
:101BC00090E09F938F93CE0101969F938F9381E036
:101BD0008F938F9383E58F930E949D088DB79EB757
:101BE00007960FB6F8949EBF0FBE8DBF57CEA7EDD8
:101BF000B7E032968CE501900D928150E1F74CE50B
:101C000067ED77E0F80180810E9406036091040887
:101C100070E080E090E024EC39E040E050E00E9489
:101C200094556093970370939803809399039093CE
:101C30009A036091050870E080E090E00E9494555E
:101C400060939B0370939C0380939D0390939E03EA
:101C5000E091CE03F091CF0380810E94B0020E94F8
:101C6000BC0289830E94DF34A6CF0091CE0310917D
:101C7000CF03B3CE863008F4CFCE85E0F801808361
:101C80000091CE031091CF03C7CE8AE0989FC00188
:101C900011240E94851290935B0580935A05009150
:101CA000CE031091CF0399CE0E94BC02F80180832D
:101CB0000091CE031091CF03A4CE22960FB6F894D4
:101CC000DEBF0FBECDBFDF91CF911F910F91FF906F
:101CD000EF900895982F80918207813031F0892FFD
:101CE0000E945108282F30E00CC080912504E82F75
:101CF000F0E0E85DFC4F90838F5F8093250421E046
:101D000030E0C90108951F93182F18162CF480E3B2
:101D10000E946A0E1150D9F71F9108951F93182F32
:101D200018162CF480E20E946A0E1150D9F71F9108
:101D300008950F931F93CF93DF938C01EB01672BD3
:101D400049F0F8010F5F1F4FE4918E2F0E946A0E39
:101D50002197B9F7DF91CF911F910F9108950F93BC
:101D60001F93CF93DF938C01EB01672B39F0F801C0
:101D700081918F010E946A0E2197C9F7DF91CF915F
:101D80001F910F9108952F923F924F925F926F9201
:101D90007F928F929F92AF92BF92CF92DF92EF92FB
:101DA000FF920F931F93CF93DF93CDB7DEB7E597E5
:101DB0000FB6F894DEBF0FBECDBF2B968FAD2B971D
:101DC00080938207CE01835B9F4F9B838A832D96EE
:101DD0000EAD1FAD2D971EA61FA618AA19AAF801B1
:101DE0008491882309F4A2C2853209F41BC26801D8
:101DF00003C0F5E2FF1639F00894C11CD11CF601AE
:101E0000F490FF20B1F7B601601B710B19F0C80107
:101E10000E94990EFF2009F489C286010F5F1F4FAF
:101E20001982AA81BB818EA49FA4A8A8B9A8332433
:101E300022248FEF8BABF8010F5F1F4FF490C32C60
:101E4000DD2491E0C922DD24E5E7FE1609F443C054
:101E50008F2D8062883709F43EC0F0E2FF1609F446
:101E600048C083E2F81609F48FC0EAE2FE1609F4CE
:101E700080C0FDE2FF1609F482C0EBE2FE1609F411
:101E80003CC0FEE2FF16D9F180E3F81609F47FC0EA
:101E90008F2D8153893008F07FC020E030E0C901E8
:101EA000880F991F880F991F880F991F220F331FC2
:101EB000280F391F2F0D311D20533040F8010F5FBF
:101EC0001F4FF4908F2D80538A3048F3222EE5E780
:101ED000FE1609F0BDCFC114D10409F43CC08D90A9
:101EE0009D90AD90BC9013971496F0E2FF1609F008
:101EF000B8CF8981882309F09ECFF9829CCFF80161
:101F00000F5F1F4F94919A3209F44FC0892F80536D
:101F10008A3060F5492F20E030E0C901880F991F11
:101F2000880F991F880F991F220F331F280F391F01
:101F3000240F311D20533040F8010F5F1F4F649173
:101F4000462F862F80538A3040F3A90137FD0BC0FE
:101F50004BABF62E79CF8D919C9111974C01AA2411
:101F6000BB2412967ACF4FEF5FEFF2CFF92E1BAA68
:101F70006BCFFD011296208027FE5DCF219480E17A
:101F8000382A9FED392257CF98E0392A54CF34FCB4
:101F900052CF90E2392A4FCFE8E6FE1679F08CE670
:101FA000F81679F491E0392A46CFCD0102964D9189
:101FB0005C9157FD77C04BABDC013DCFF4E03F2A8D
:101FC0003ACFBB83AA83E3E6FE1609F40BC1F4E41F
:101FD000FF1609F46AC084E6F81609F468C099E6A9
:101FE000F91609F464C09FE4F91609F407C1EFE695
:101FF000FE1609F4FFC0E0E7FE1609F45DC193E7A1
:10200000F91609F419C185E5F81609F410C195E728
:10201000F91609F409C198E5F91609F469C1E8E768
:10202000FE1609F465C1FF2009F480C1FE82198201
:10203000632C77248EA69FA6A8AAB9AAEE2436E020
:10204000C32ED12CCC0EDD1E81E0E1E090E021E03A
:10205000A22EB12C2981222309F4A0C08F5F582E13
:10206000590E40E3842E912C8620972081149104F0
:1020700009F438C1222309F02EC166FCC9C0F0E280
:102080008F16910409F4BFC08E2D0E94830EB501F6
:10209000C6010E94AF0E64FEA2CE822D85190E9459
:1020A0008E0E9DCE4FEF5FEF86CFE1E03E2A30FEF1
:1020B0008EC01496BB83AA83BE90AE909E908E90E5
:1020C000B7FC78C0FAE0FAABEBA9E7FD02C0FFED80
:1020D0003F2281149104A104B104A9F18AA9482ED8
:1020E000552466247724EEE2CE2ED12CCC0EDD1EB4
:1020F000DDAACCAA17C070E3E72EE60EF601E29245
:102100006F01C501B401A30192010E94E6552EA7FB
:102110003FA748AB59AB84149504A604B704A0F1BB
:1021200049015A01C501B401A30192010E94E6557B
:102130006A3008F357E5E52EE60EF8E5FF16F1F6EE
:102140008FEDE822DBCF9BA99923C1F4632C772480
:102150001EA61FA618AA19AAFEE2CF2ED12CCC0EBD
:10216000DD1E80E0E0E04BA9E42EEE1AE7FC1BC088
:102170009E2DA82EBB24A7FCB0946CCFEAA94E2EAE
:10218000552466247724AFCFFAA9F83009F4BCC0EF
:10219000ECA9EC198E2F632C7724E5CF66FE5FCF78
:1021A0008E2F8E5F5CCFA82EBB24A7FCB094EE24AC
:1021B00090E050CFB094A09490948094811C911C96
:1021C000A11CB11C2DE229838AE08AAB7DCF129637
:1021D000BB83AA839E918E914C01AA2497FCA09464
:1021E000BA2C6ECF1296BB83AA8312978C918E83E2
:1021F00019821ECFF8E0FAAB198266CF81E0382A47
:1022000098E09AABF9CF822D85190E94830E3CCFBE
:1022100080E38C83FD8262E070E0CE0104960E9430
:10222000AF0E2DCF6801F9CDEAE0EAABE5CFF1E0E2
:102230003F2A8AE08AABE0CF1296BB83AA83DE9066
:10224000CE90C114D10489F488E28E838EE68F8308
:1022500085E788878CE689878A8789E28B871C8651
:10226000A6E0CA2ED12CCC0EDD1EEBA9E7FD1CC0CA
:102270004E2F552747FD509560E070E0C6010E9443
:102280003754009779F08C19FBA9F8170CF48F2FAD
:102290001982E82F632C77248EA69FA6A8AAB9AA34
:1022A00040E062CF8BA9F4CFF60101900020E9F75E
:1022B00031978E2F8C19ECCF1296BB83AA839E91F7
:1022C0008E914C01AA24BB24F0E43F2AB8E7FB2EF0
:1022D00080E18AAB91CF61E070E0CE0101960E946F
:1022E000AF0ECDCE822D85190E948E0E2981C2CED1
:1022F00033FE19C081149104A104B104A1F0F0E4EB
:102300003F2A80E18AAB78CF632C772433FE07C065
:1023100080E3E81621F080E3F60182936F01ECA9D7
:10232000EC198E2F20CF90E19AAB66CFE5960FB6D1
:10233000F894DEBF0FBECDBFDF91CF911F910F91FB
:10234000FF90EF90DF90CF90BF90AF909F908F90D5
:102350007F906F905F904F903F902F9008951F92C5
:102360000F920FB60F9211242F933F935F936F93A9
:102370007F938F939F93AF93BF938091E7038823BD
:1023800029F08091E70381508093E7038091F50362
:1023900081508093F5038F3F09F488C08091E50355
:1023A0009091E6030297E0F08091E5039091E603B7
:1023B00001979093E6038093E5038091E503909164
:1023C000E6032091090330910A0382239323892B8A
:1023D00069F0809100018A3009F482C0479A0CC0EC
:1023E0008FEF9FEF90930A03809309038091000180
:1023F0008A3009F473C047988091DF0783FF77C064
:10240000349B0AC08091E3039091E403019690937A
:10241000E4038093E3036BC08091E3039091E403B2
:10242000892B49F18091E3039091E4038A5691400E
:1024300010F58091E3039091E4032091E303309140
:10244000E40369E270E00E94BF55260F371F309306
:10245000E4032093E3038091E3039091E4030B975B
:1024600008F440C08091E3039091E4030A979093AD
:102470008204809381048091810490918204845E1F
:102480009D4F2091830430918404821B930B68E656
:1024900071E00E94D355845B9040909386048093B2
:1024A00085041092E4031092E30321C089E0809335
:1024B000F50380910D038F5F817080930D03882356
:1024C00019F481E08093E2038091E0039091E103AD
:1024D00001969093E1038093E00360CF5A988CCFEC
:1024E0005A9A8ACF1092820410928104C4CFBF916D
:1024F000AF919F918F917F916F915F913F912F91BC
:102500000F900FBE0F901F9018952091E00330910F
:10251000E1032F5F3F4F820F931F08952091E00347
:102520003091E103821B930B892F99278695807444
:1025300090E00895CF93DF930E948512EC01CE01C5
:102540000E948E128823D9F3DF91CF910895CF9303
:10255000DF930E948512EC0109C080911D0388233E
:1025600029F010921D038FEC80937A00CE010E9417
:102570008E12882391F3DF91CF9108959FB7F8943D
:10258000579A5F983E9A469AA0EBB0E08C918F7074
:102590008C938C9183608C93E1EBF0E080818B7362
:1025A000808380818B6080831092B2008FEF809354
:1025B000B3008C9180688C93E0E7F0E080818A7FA3
:1025C00080838081826080839FBF08958AE090E04D
:1025D0000E9485129093F7038093F60382E085BDF5
:1025E00083EA84BD17BC88E788BD86E086BDEEE639
:1025F000F0E080818160808308951F920F920FB672
:102600000F921124CF92DF92EF92FF920F931F93BC
:102610002F933F934F935F936F937F938F939F93EA
:10262000AF93BF93EF93FF93809100018431B8F48F
:102630008091F403882309F45DC02091F203309166
:10264000F30341E02F373407C8F18FEF8093B300D5
:102650002F5F30403093F3032093F203B3C2809195
:10266000F403882351F78091B00086FF15C1809153
:10267000B0008F7B8093B000E091EF03EE2309F070
:1026800049C18091FD0790E02DED36E0A901849FBE
:102690009001859F300D949F300D11248091F0039F
:1026A0009091F103281B390B3093F3032093F2032D
:1026B0001092F1031092F003469AEAC02F3F3105C1
:1026C00081F078F051E02E37350709F414C180E825
:1026D0008093B300205830403093F3032093F203EB
:1026E00071C22093B3001092F3031092F203109280
:1026F000F40368C28091B00086FFAEC08091B00044
:102700008F7B8093B0008091AB03482F50E0440F43
:10271000551F440F551F20910B0330910C03C90125
:10272000880F991F820F931F480F591F57FD10C222
:10273000CA01959587959595879590930C038093FD
:102740000B039093EC038093EB038091230880FFAD
:1027500024C1C090EB03D090EC03E090FA07FF2473
:1027600000E010E0609145047091460480914704B8
:102770009091480420E830E040E050E00E94085684
:10278000C801B7010E949455660F771F881F991FD3
:10279000660F771F881F991F20E031E040E050E06E
:1027A0000E940856C20ED31ED092EC03C092EB03D7
:1027B0008091FB07282F30E0220F331F220F331F99
:1027C0008091EB039091EC03821793070CF49DC06A
:1027D0008091FC07282F30E0220F331F220F331F78
:1027E0008091EB039091EC03281739070CF48DC00E
:1027F0002091EB033091EC0327553E4F3093F303C8
:102800002093F2038091EB039091EC0397FDA3C119
:1028100095958795959587959093EC038093EB0319
:102820008091EB039091EC0390936A078093690782
:1028300045E02D3D340708F4A5C02CED35E030937C
:10284000F3032093F2032091F2033091F3033093CA
:10285000F1032093F0031CC08091B000806480934A
:10286000B0008091FD0790E02DED36E0A901849F36
:102870009001859F300D949F300D11248091F003BD
:102880009091F103281B390B3093F3032093F2034B
:1028900081E08093F403D5CE8091B0008064809372
:1028A000B0002CEB30E03093F3032093F2038091DF
:1028B000F0039091F10384549F4F9093F103809320
:1028C000F0038091E803882329F080919404853BEC
:1028D00008F098C08091EF038F5F8093EF03909191
:1028E000FD07981708F089C01092EF032091F203BA
:1028F0003091F303CDCF8FEF8093B3002FE730E01B
:102900003093F3032093F2035DC13093EC032093E3
:10291000EB036ECF29EA33E03093F3032093F20305
:10292000E13009F471C0F0E0EE0FFF1FEB55F84FF6
:1029300080819181880F991F87559C4F9093F30355
:102940008093F2032091F2033091F30355E02D3D83
:10295000350708F4F1C02CED35E03093F3032093F4
:10296000F2032C5B30403093F3032093F203809109
:10297000F0039091F103820F931F9093F1038093E2
:10298000F00386CF2757314008F05DCF27E731E0CD
:102990003093F3032093F20356CFC090EB03D09013
:1029A000EC03E090FA07FF2400E010E0609145049A
:1029B00070914604809147049091480420E830E0EB
:1029C00040E050E00E940856C801B7010E949455AB
:1029D000660F771F881F991F660F771F881F991F23
:1029E00020E031E040E050E00E940856C21AD30ACD
:1029F000D092EC03C092EB03DBCE2091F203309136
:102A0000F30346CF469866CF8091AB03482F50E042
:102A1000440F551F440F551F20910B0330910C0399
:102A2000C901880F991F820F931F480F591F57FD27
:102A3000C6C0CA01959587959595879590930C0387
:102A400080930B039093EC038093EB038091230816
:102A500080FF83C0C090EB03D090EC03E090FA07B6
:102A6000FF2400E010E060914504709146048091DD
:102A700047049091480420E830E040E050E00E9494
:102A80000856C801B7010E949455660F771F881F2A
:102A9000991F660F771F881F991F20E031E040E0E3
:102AA00050E00E940856C20ED31ED092EC03C09292
:102AB000EB038091FB07282F30E0220F331F220FFA
:102AC000331F8091EB039091EC03821793077CF006
:102AD0008091FC07282F30E0220F331F220F331F75
:102AE0008091EB039091EC032817390724F430937D
:102AF000EC032093EB038091EB039091EC0387555B
:102B00009E4F9093F3038093F2038091EB03909197
:102B1000EC0397FD52C09595879595958795909371
:102B2000EC038093EB038091EB039091EC03909383
:102B30006A078093690706CF81E02737380708F0D6
:102B400010CF27E731E03093F3032093F20309CF4E
:102B50004D5F5F4FEDCD03965BCEC090EB03D09001
:102B6000EC03E090FA07FF2400E010E060914504D8
:102B700070914604809147049091480420E830E029
:102B800040E050E00E940856C801B7010E949455E9
:102B9000660F771F881F991F660F771F881F991F61
:102BA00020E031E040E050E00E940856C21AD30A0B
:102BB000D092EC03C092EB037CCF0396ACCF4D5F79
:102BC0005F4F37CFFF91EF91BF91AF919F918F9161
:102BD0007F916F915F914F913F912F911F910F9135
:102BE000FF90EF90DF90CF900F900FBE0F901F904F
:102BF000189510927C008FEC80937A0008951F92B4
:102C00000F920FB60F921124DF92EF92FF920F9363
:102C10001F932F933F934F935F936F937F938F9364
:102C20009F93AF93BF93CF93DF93EF93FF93D09096
:102C300021048D2DD394D0922104E82FF0E0E231CD
:102C4000F10540F01092210482E0809322048093E9
:102C50007C00F3C3E25CFF4FEE0FFF1F0590F49181
:102C6000E02D0994809178009091790020911B04C7
:102C700030911C04280F391F30931C0420931B042F
:102C800081E0809322048091220480937C00DD20E7
:102C900009F4D3C38FEC80937A00CFC3DD24109264
:102CA000210481E080931D0380910E0490910F0414
:102CB000019690930F0480930E0420917800309138
:102CC00079008091930790919407820F931F9093BE
:102CD00094078093930780918B078F5F80938B0776
:102CE00080918B07853008F4B4C080919307909150
:102CF000940797FD7FC3959587959093940780934C
:102D000093078091780090917900909319038093B4
:102D1000180310928B0760910C0470910D04809140
:102D20000B04992787FD9095D82FCC27C81BD90B6A
:102D3000209187073091880780919307909194079D
:102D400040919E0450919F04281B390B241B350B86
:102D50002C0F3D1F8091A10390E0A901489F900195
:102D6000499F300D589F300D11248FE190E0AC0148
:102D7000649FC001659F900D749F900D1124280FD2
:102D8000391F37FDE6C23595279535952795359539
:102D90002795359527953595279530930D042093E4
:102DA0000C046091930770919407E0901403F090E5
:102DB00015030091160310911703882777FD80955E
:102DC000982FA8019701220F331F441F551F220F70
:102DD000331F441F551F220F331F441F551F2E1929
:102DE0003F09400B510B620F731F841F951F6C5FCF
:102DF0007F4F8F4F9F4F28E030E040E050E00E942F
:102E000008562093140330931503409316035093F0
:102E100017032091870730918807809114039091C0
:102E20001503A0911603B0911703C20FD31FC81B3F
:102E3000D90BD0939F04C0939E04809193079091E7
:102E4000940797FD84C295958795909394078093F6
:102E5000930782E08093220416CF609178007091EE
:102E60007900E0903F04F0904004009141041091FB
:102E70004204882777FD8095982F0E94DC54A80192
:102E800097010E9444540E94A954709309046093CE
:102E90000804809108049091090402970CF45CC224
:102EA00060913F04709140048091410490914204EC
:102EB00020E030E84BE354E40E94175588239CF54A
:102EC00060913F04709140048091410490914204CC
:102ED0002AE037ED43EA5CE30E94455460933F04E7
:102EE0007093400480934104909342048091BE0407
:102EF0009091BF04845F9140B0F460913F04709161
:102F0000400480914104909142042DEC3CEC4CEC47
:102F10005DE30E94455460933F04709340048093A6
:102F200041049093420481E080930A0480917800E8
:102F3000909179009093860780938507809108048B
:102F40009091090420917D0430917E0440917F048A
:102F500050918004AA2797FDA095BA2F820F931F46
:102F6000A41FB51F80937D0490937E04A0937F04DB
:102F7000B0938004E0907D04F0907E0400917F0483
:102F80001091800460917D0470917E0480917F0493
:102F90009091800420E034E040E050E00E94085628
:102FA000E21AF30A040B150BE0927D04F0927E0402
:102FB00000937F041093800483E08093220463CE07
:102FC000809178009091790020911D0430911E0429
:102FD000280F391F30931E0420931D0484E0809332
:102FE000220451CE40910E0350910F03809178003E
:102FF000909179009A01220F331F240F351F63E04F
:1030000070E00E94BF55260F371F369527953695DD
:10301000279530930F0320930E0385E080932204BD
:1030200032CE809178009091790090932004809323
:103030001F0486E08093220426CE209178003091F0
:10304000790080913B0490913C04821B930B9093F8
:1030500084078093830780918307909184079093DE
:1030600016048093150487E0809322040CCE80918F
:103070007800909179002091390430913A04821BB4
:10308000930B90938F0780938E0780918E0790917A
:103090008F07909314048093130482E0809322049A
:1030A000F2CD209178003091790080911D049091AB
:1030B0001E04820F931F90931E0480931D04109290
:1030C0002204E1CD809100018A3009F420C18431CD
:1030D00009F4A0C1809178009091790020911F049B
:1030E00030912004820F931F909303048093020475
:1030F00086E080932204C7CD20917800309179003A
:1031000080913B0490913C04821B930B9093840725
:103110008093830780918307909184072091150401
:1031200030911604820F931F90930504809304043A
:1031300087E080932204A7CD809178009091790058
:103140002091390430913A04821B930B90938F079E
:1031500080938E0780918E0790918F0720911304A2
:1031600030911404820F931F9093070480930604F8
:1031700082E08093220487CD2091780030917900FD
:1031800080911B0490911C04280F391F30931C045C
:1031900020931B04809100018A3009F4D1C0220FD2
:1031A000331F220F331F30931C0420931B042091E4
:1031B0001B0430911C04C90137FD2AC195958795E0
:1031C00095958795959587959093FF038093FE033A
:1031D0008091190490911A04820F931F97FD16C1D4
:1031E0009595879590931A048093190420912F0444
:1031F00030913004821B930B909311038093100342
:103200008091F8039091F9032091100330911103FC
:10321000280F391F37FDF7C0359527953093F903EF
:103220002093F80381E0809322042DCD2091780033
:103230003091790080911D0490911E04280F391F50
:1032400030931E0420931D04809100018A3009F4FC
:1032500070C0220F331F220F331F30931E042093A0
:103260001D0420911D0430911E04C90137FDC9C001
:103270009595879595958795959587959093010454
:10328000809300048091170490911804820F931F7B
:1032900097FDB5C095958795909318048093170472
:1032A0002091310430913204821B930B90931303CD
:1032B000809312038091FA039091FB0320911203F3
:1032C00030911303280F391F37FD96C03595279588
:1032D0003093FB032093FA0383E080932204D3CC42
:1032E000809178009091790090931C0480931B0446
:1032F00081E080932204C7CC80917800909179007E
:1033000090931E0480931D0410922204BCCC8091E3
:10331000780090917900019620911F04309120044B
:10332000820F931F969587959093030480930204D0
:10333000DFCE220F331F30931E0420931D0491CF44
:10334000220F331F30931C0420931B0430CF0196AF
:103350007ACD215E3F4F17CD8091080490910904EA
:103360008F5F9F4F0CF0DFCD60913F047091400460
:10337000809141049091420420E030E849E054E417
:103380000E941B5518160CF0CECD60913F04709131
:10339000400480914104909142042AE037ED43EAD1
:1033A0005CE30E94445460933F0470934004809314
:1033B0004104909342048091BE049091BF04845FC5
:1033C000914008F0B0CD60913F047091400480912D
:1033D0004104909142042DEC3CEC4CEC5DE30E94E6
:1033E000445460933F04709340048093410490934D
:1033F000420499CD01967FCC2F5F3F4F67CF019656
:1034000049CF079635CF2F5F3F4F06CF0196E8CEC5
:103410000796D4CE80917800909179002FEF37E015
:10342000281B390B80911F0490912004281B390B15
:1034300030930304209302045BCEFF91EF91DF9160
:10344000CF91BF91AF919F918F917F916F915F913C
:103450004F913F912F911F910F91FF90EF90DF902F
:103460000F900FBE0F901F9018950F931F931092FF
:10347000100410921104109212041CE800E00330B2
:1034800009F4A3C08091FE039091FF038C5F9340E9
:103490000CF08DC080911A03815080931A0300E0D4
:1034A00080910004909101048C5F93400CF072C0F5
:1034B00080911B03815080931B03809102049091A3
:1034C00003048C5F93400CF058C080911C03815022
:1034D00080931C0388E0809328040E94B32180918C
:1034E0001A038A3008F040C081E0809310048AE01B
:1034F00080931A0380911B038A3068F581E08093E2
:1035000011048AE080931B0380911C038A30D0F45D
:1035100081E0809312048AE080931C038091280448
:103520008823E1F710928B078FEC80937A008091CB
:103530008B078823E1F31A3008F442C0115009F0D8
:103540009ECF53C0863F50F381E08093120485EFF5
:1035500080931C03E3CF863FB8F281E0809311048F
:1035600085EF80931B03D0CF863F20F281E08093CC
:10357000100485EF80931A03BDCF809102049091CF
:1035800003048750944044F180911C038F5F809323
:103590001C03A0CF809100049091010487509440B7
:1035A000CCF080911B038F5F80931B0386CF8091AB
:1035B000FE039091FF038750944084F401E070CFA4
:1035C0008AE090E00E94A712B9CF1B3008F45ACFCE
:1035D00019E058CF0F5F71CF0F5F7CCF80911A0336
:1035E0008F5F80931A0300E05BCF86E490E00E9437
:1035F000A7121F910F910895CF92DF92EF92FF9241
:103600001F93CF93DF93F3E0EF2EF0E0FF2ED7016F
:103610000E942356802DC82FD0E0C531D10508F077
:103620002A97C7BD10920B0484E690E00E94A7126F
:1036300080911803909119038255934008F5C0E0DA
:10364000D0E0E6EECE2EE1E0DE2E04C02196CA3FA9
:10365000D105D8F41C2FC7BD82E390E00E94A712C9
:10366000DF92CF921F920E94C30E80911803909117
:1036700019030F900F900F908255934038F706C0B2
:1036800076EEC72E71E0D72EE5CF1C2FD701012E85
:103690000E942B56109390078CE291E00E94A71293
:1036A000DF91CF911F91FF90EF90DF90CF90089521
:1036B000E8E2F3E080E2819383E0E837F807D1F7AE
:1036C00008951F934091780380912604481710F4C1
:1036D0004093260480912704282F30E0C90181708F
:1036E0009070582F882341F080912604882309F494
:1036F000EAC0815080932604B9016270707021FF86
:1037000008C080912604481709F4E0C08F5F8093B9
:103710002604552319F0672B09F0D2C00E94581BCC
:10372000909126049A3068F581E180932504892FD1
:1037300090E09F938F938DE195E09F938F9381E02D
:103740008F930E94C30E0F900F900F900F900F90C9
:1037500010912604153009F4D7C31630E0F0183064
:1037600009F4EDC2193008F0B4C0163009F48BC268
:10377000173009F45EC2115010937803109226049A
:10378000E8C580E180932504892F90E09F938F9373
:1037900088E195E0D2CF123009F45BC3133008F40E
:1037A000F9C0133009F492C1143029F7109225049E
:1037B000E091D807F0E0EE0FFF1FEB55F84F2081A6
:1037C0003181E091D707F0E0EE0FFF1FEB55F84F86
:1037D000808191813F932F939F938F938EEF93E0FE
:1037E0009F938F9311E01F930E94C30E84E18093F7
:1037F0002504E091DA07F0E0EE0FFF1FEB55F84FDC
:1038000020813181E091D907F0E0EE0FFF1FEB55E9
:10381000F84F808191813F932F939F938F938EEEEA
:1038200093E09F938F931F930E94C30E88E280932F
:103830002504E091DC07F0E0EE0FFF1FEB55F84F99
:1038400020813181E091DB07F0E0EE0FFF1FEB55A7
:10385000F84F808191813F932F939F938F938EEDAB
:1038600093E09F938F931F930E94C30E8CE38093EA
:103870002504E091DE07F0E0EE0FFF1FEB55F84F57
:1038800020813181E091DD07F0E0EE0FFF1FEB5565
:10389000F84F808191813F932F939F938F938EEC6C
:1038A00093E09F938F931F930E94C30E4DB75EB713
:1038B000445E5F4F0FB6F8945EBF0FBE4DBF49C563
:1038C000109226042BCF4093260416CF1092260484
:1038D00020CF1A3009F476C21A3008F4ADC01B307C
:1038E00009F049CF1092250488E192E09F938F93CD
:1038F00011E01F930E94C30E84E180932504209160
:10390000A006332727FD309580919F06992787FDD4
:1039100090953F932F939F938F9388E092E09F938E
:103920008F931F930E94C30E88E2809325042091F9
:10393000A106332727FD30958091A20690E03F93A2
:103940002F939F938F9388EF91E09F938F931F9373
:103950000E94C30E8CE3809325042091A60630E0DC
:103960008091A306992787FD90953F932F939F936E
:103970008F9388EE91E09F938F931F930E94C30EC5
:103980006DB77EB7685E7F4F0FB6F8947EBF0FBEEF
:103990006DBFDFC4112309F4FBC0113009F0EBCE79
:1039A0008091DF0780FF6BC31092250480919E04F5
:1039B00090919F049F938F9387EC94E09F938F93B4
:1039C0001F930E94C30E84E1809325048091A0047C
:1039D0009091A1049F938F9388EB94E09F938F9392
:1039E0001F930E94C30E88E28093250480911803E0
:1039F000909119039F938F9389EA94E09F938F93FB
:103A00001F930E94C30E8CE380932504809190073E
:103A100090E09F938F938AE994E09F938F931F93F5
:103A20000E94C30E4DB75EB74C5E5F4F0FB6F89461
:103A30005EBF0FBE4DBF8DC41092250480918C04D3
:103A400090918D049F938F938EE792E09F938F9335
:103A500011E01F930E94C30E84E18093250480919E
:103A60008E0490918F049F938F9382E792E09F93AF
:103A70008F931F930E94C30E88E280932504809148
:103A80009004909191049F938F9386E692E09F9388
:103A90008F931F930E94C30E8CE380932504809123
:103AA0009204909193049F938F938AE592E09F9361
:103AB0008F931F930E94C30E2DB73EB72C5E3F4FCE
:103AC0000FB6F8943EBF0FBE2DBF43C4109225041D
:103AD0008091A9079091AA072091A7073091A80784
:103AE0009F938F933F932F938EE394E09F938F93B5
:103AF00011E01F930E94C30E84E1809325048091FE
:103B0000AD079091AE072091AB073091AC079F9322
:103B10008F933F932F938EE294E09F938F931F9305
:103B20000E94C30E88E2809325048091B107909192
:103B3000B2072091AF073091B0079F938F933F93C7
:103B40002F938EE194E09F938F931F930E94C30E57
:103B50008CE3809325048091B5079091B60720915E
:103B6000B3073091B4079F938F933F932F938EE0C9
:103B700094E09F938F931F930E94C30E2DB73EB77F
:103B8000245E3F4F0FB6F8943EBF0FBE2DBFE1C37A
:103B90001092250488E095E09F938F9311E01F9386
:103BA0000E94C30E84E18093250420910001822F9E
:103BB0006AE00E94B355492F50E0822F0E94B3550E
:103BC00090E020E730E03F932F9328E430E03F93EC
:103BD0002F931F921F925F934F939F938F9383EF27
:103BE00094E09F938F931F930E94C30E88E280936B
:103BF00025040E94BC0290E09F938F9386EE94E090
:103C00009F938F931F930E94C30E8CE38093250490
:103C100086ED94E09F938F931F930E94C30E2DB760
:103C20003EB7285E3F4F0FB6F8943EBF0FBE2DBF84
:103C300090C384E18093250480910E0390910F033B
:103C40009F938F9385ED92E09F938F9311E01F9345
:103C50000E94C30E88E2809325048091940490E032
:103C60009F938F9386EC92E09F938F931F930E9474
:103C7000C30E6DB77EB7665F7F4F0FB6F8947EBFF9
:103C80000FBE6DBF66C31092250481E193E09F9340
:103C90008F9311E01F930E94C30E84E1809325044B
:103CA0008091390490913A042091060430910704E0
:103CB0009F938F933F932F9382E093E09F938F93F3
:103CC0001F930E94C30E88E28093250480913B04D9
:103CD00090913C0420910404309105049F938F93AC
:103CE0003F932F9383EF92E09F938F931F930E94B4
:103CF000C30E8CE38093250460913F0470914004CF
:103D000080914104909142040E94A954209154084A
:103D1000309155087F936F933F932F9384EE92E0F9
:103D20009F938F931F930E94C30E4DB75EB7485E5B
:103D30005F4F0FB6F8945EBF0FBE4DBF0AC310921F
:103D4000250487EB92E09F938F9311E01F930E94CD
:103D5000C30E84E1809325048091850490918604AC
:103D60009F938F9388EA92E09F938F931F930E9473
:103D7000C30E88E28093250480918104909182048F
:103D80009F938F9389E992E09F938F931F930E9453
:103D9000C30E8CE380932504809183049091840466
:103DA0009F938F938AE892E09F938F931F930E9433
:103DB000C30E8DB79EB742960FB6F8949EBF0FBE46
:103DC0008DBFC7C21092250482E592E09F938F9326
:103DD00011E01F930E94C30E84E18093250480911B
:103DE000AB0390E09F938F9384E492E09F938F9333
:103DF0001F930E94C30E88E2809325048091E903FB
:103E00009091EA039F938F9386E392E09F938F9321
:103E10001F930E94C30E8CE3809325042091FC071E
:103E200030E08091FB0790E03F932F939F938F9317
:103E300088E292E09F938F931F930E94C30E4DB729
:103E40005EB74C5E5F4F0FB6F8945EBF0FBE4DBFBE
:103E500080C2109225048BE794E09F938F9311E02A
:103E60001F930E94C30E84E1809325046091450452
:103E700070914604809147049091480420E034E01A
:103E800040E050E00E9408565F934F933F932F937A
:103E90008CE694E09F938F931F930E94C30E88E259
:103EA0008093250460914D0470914E0480914F04DD
:103EB0009091500420E034E040E050E00E94085629
:103EC0005F934F933F932F938DE594E09F938F9350
:103ED0001F930E94C30E8CE380932504809181047C
:103EE000909182049F938F938EE494E09F938F939D
:103EF0001F930E94C30E8DB79EB746960FB6F894D7
:103F00009EBF0FBE8DBF25C21092250480EC93E0AA
:103F10009F938F9311E01F930E94C30E8091000125
:103F20000F900F900F908A3009F471C18B3009F413
:103F3000C4C0843109F4C1C08D3009F00AC284E1E3
:103F40008093250480911A0390E020912F043091F2
:103F50003004A90137FDFAC1BA01759567957595C9
:103F6000679575956795759567954091FE03509196
:103F7000FF0337FDE8C1359527953595279535958C
:103F80002795421B530B9F938F937F936F935F9360
:103F90004F9386E493E09F938F931F930E94C30EE9
:103FA00088E28093250480911B0390E020913104E6
:103FB00030913204A9016DB77EB7675F7F4F0FB6AE
:103FC000F8947EBF0FBE6DBF37FDBAC1BA017595BB
:103FD0006795759567957595679575956795409102
:103FE00000045091010437FDA8C1359527953595FA
:103FF000279535952795421B530B9F938F937F935E
:104000006F935F934F9382E393E09F938F931F93FC
:104010000E94C30E8CE38093250480911C03682FBB
:1040200070E02091330430913404A9018DB79EB71C
:1040300009960FB6F8949EBF0FBE8DBF37FD7AC1AB
:10404000559547958091020490910304281B390BE4
:104050007F936F935F934F933F932F938EE193E002
:104060009F938F931F930E94C30E2DB73EB7275F78
:104070003F4F0FB6F8943EBF0FBE2DBF6AC184E11B
:104080008093250483E994E09F938F931F930E946C
:10409000C30E88E28093250485E894E09F938F9374
:1040A0001F930E94C30E6DB77EB76A5F7F4F0FB636
:1040B000F8947EBF0FBE6DBF4CC184E18093250490
:1040C000E0912F04F0913004CF0160E170E00E9494
:1040D000D35597FD27C1BC01759567959F01F7FDE5
:1040E0001EC1A901559547955595479555954795F5
:1040F000559547952091FE033091FF03CF01F7FDC1
:104100000CC1959587959595879595958795281BCD
:10411000390B7F936F935F934F933F932F938BE76D
:1041200093E09F938F931F930E94C30E88E2809326
:104130002504E0913104F0913204CF0160E170E098
:104140000E94D3552DB73EB7275F3F4F0FB6F89467
:104150003EBF0FBE2DBF97FDDEC0BC0175956795B4
:104160009F01F7FDD5C0A9015595479555954795F0
:104170005595479555954795209100043091010438
:10418000CF01F7FDC3C09595879595958795959532
:104190008795281B390B7F936F935F934F933F93C2
:1041A0002F9389E693E09F938F931F930E94C30EF2
:1041B0008CE3809325042091330430913404A901C9
:1041C0006DB77EB7675F7F4F0FB6F8947EBF0FBEA7
:1041D0006DBF37FD98C05595479580910204909129
:1041E0000304281B390B5F934F933F932F938AE56A
:1041F00093E09F938F931F930E94C30E8DB79EB73A
:1042000007960FB6F8949EBF0FBE8DBFA2C084E183
:104210008093250420912F0430913004C90168E077
:1042200070E00E94D355AC0137FD81C035952795CC
:1042300035952795359527958091FE039091FF033D
:10424000821B930B5F934F933F932F939F938F9377
:104250008EEA93E09F938F931F930E94C30E88E290
:10426000809325042091310430913204C90168E023
:1042700070E00E94D355AC016DB77EB7675F7F4F8A
:104280000FB6F8947EBF0FBE6DBF37FD4DC035959C
:104290002795359527953595279580910004909120
:1042A0000104821B930B5F934F933F932F939F9334
:1042B0008F938CE993E09F938F931F930E94C30E7B
:1042C0008CE3809325042091330430913404809151
:1042D000020490910304A901481B590B3F932F93AB
:1042E0005F934F938DE893E09F938F931F930E946A
:1042F000C30E6DB77EB7605F7F4F0FB6F8947EBF79
:104300000FBE6DBF26C04F5F5F4F65CF07963BCF97
:10431000215F3F4F28CF019620CF0796F2CE215F35
:104320003F4FDFCE0196D7CE295F3F4FB0CF295FF9
:104330003F4F7CCF4F5F5F4F83CE295F3F4F55CEBE
:10434000415F5F4F43CE295F3F4F15CE415F5F4FC7
:1043500003CE109227041F9108951092B9008AE2AB
:104360008093B800089585EA8093BC0080E090E0D7
:10437000089584E98093BC0008951092B900809359
:10438000BB0085E88093BC0080E090E008950E9427
:10439000B92110922804EBEBF0E0808110922904FF
:1043A00080E88093BC001092BD001092BA00108289
:1043B0001092B9001092B8000E94AD210E94B32162
:1043C00080E00E94BD2108951F920F920FB60F92B8
:1043D00011242F933F934F935F936F937F938F930A
:1043E0009F93AF93BF93EF93FF93809128048F5FC8
:1043F000809328048150E82FF0E0E731F10508F0C0
:10440000ABC0E05BFF4FEE0FFF1F0590F491E02D76
:1044100009948091BB0090912A04E92FF0E0EB56BB
:10442000F84F8083913009F46EC0913008F487C052
:10443000923009F489C0933009F08EC080916E08E3
:104440000E94BD2189C088E90E94BD2185C080E805
:104450000E94BD2181C00E94B9218AE090E0909322
:104460009403809393030E94B32176C090912A0411
:104470008091BB00E92FF0E0EB56F84F84839F5FFB
:1044800090932A04943010F010922A040E94B921CB
:104490008AE090E090939403809393031092280411
:1044A0005BC00E94B92180912904843008F051C07A
:1044B00010922804D8CF80911C030E94BD214CC0CB
:1044C00080911A030E94BD2147C080912904880F62
:1044D0008E5A0E94BD2140C080E10E94BD213CC097
:1044E00080912A04813079F0813048F1823061F185
:1044F000833091F5A3CF809129048F5F80932904A5
:104500008150813089F7809145080E94BD2124C0E7
:1045100084E10E94BD2120C080911B030E94BD2127
:104520001BC082E10E94BD2117C080912A04880F20
:104530008D5A0E94BD2110C090912A0473CF8091A2
:1045400038080E94BD2108C0809169080E94BD21E1
:1045500003C01092290487CF8091BC0080688093AB
:10456000BC00FF91EF91BF91AF919F918F917F918F
:104570006F915F914F913F912F910F900FBE0F90D0
:104580001F90189583EC80938100EFE6F0E0808126
:1045900080628083109234041092330410923204AB
:1045A000109231041092300410922F0408951F923B
:1045B0000F920FB60F9211240F931F932F933F93D7
:1045C0004F935F936F937F938F939F93AF93BF931B
:1045D000CF93DF93EF93FF93209186003091870074
:1045E00080912D0490912E04281B390B8091860018
:1045F0009091870090932E0480932D04C9018D54CF
:104600009440835F9A4170F480912B0490912C0424
:1046100004970CF07EC081E090E090932C0480938E
:104620002B049DC000912B0410912C040A3011051D
:104630000CF095C0C9018B5F9040845B914008F0FD
:1046400056C0A901425D5140E801CC0FDD1FFE01BB
:10465000EB55F84F808191819A01281B390BC901D4
:1046600037FD79C0069754F480919404883C08F093
:104670006BC080919404865F80939404FE01EB5597
:10468000F84F808191819C01220F331F280F391F21
:10469000240F351F37FD5CC0359527953595279537
:1046A000CA010196821793070CF045C02150304093
:1046B00080919404833CC8F1FE01EB55F84F808152
:1046C0009181A901481B590BCA0163E070E00E9467
:1046D000D355CB01880F991F860F971FFE01E55414
:1046E000F84F91838083CB55D84F39832883C801F5
:1046F000019690932C0480932B048530910589F0CA
:104700005D988630910551F05C98079729F05B9889
:1047100026C0109279037FCF5B9A21C05C9A5B9888
:104720001EC05D9A5C985B981AC0FE01E554F84F74
:1047300011821082D8CF41505040241735070CF019
:10474000B7CF2F5F3F4FB4CF88EC8093940496CFC0
:104750002D5F3F4FA1CF909581959F4F83CFFF91C4
:10476000EF91DF91CF91BF91AF919F918F917F9109
:104770006F915F914F913F912F911F910F910F90EA
:104780000FBE0F901F90189581E08093D70782E0AD
:104790008093D80783E08093D90784E08093DA0779
:1047A00085E08093DB0786E08093DC0787E08093D9
:1047B000DD0788E08093DE0708956817790744F4E1
:1047C000680F791F77FD09C0CB01959587950895EE
:1047D000681B790B861B970B08956F5F7F4FCB018A
:1047E0009595879508952F923F924F925F926F9281
:1047F0007F928F929F92AF92BF92CF92DF92EF9271
:10480000FF920F931F93CF93DF93CDB7DEB76B97D4
:104810000FB6F894DEBF0FBECDBF80910204909119
:1048200003044090330450903404481A590A5092BB
:104830007808409277082091F8033091F90337FF08
:1048400002C00C94112C35952795359527953595F3
:1048500027953B8F2A8F2091FA033091FB0337FD78
:10486000DDC73595279535952795359527953C8B4B
:104870002B8B2A8D3B8D30935708209356088B89BC
:104880009C8990934B0880934A086091060470912C
:104890000704882777FD8095982F26E030E040E0D8
:1048A00050E00E9494557B018C0120917208309158
:1048B0007308442737FD4095542FCA01B901660F8C
:1048C000771F881F991F620F731F841F951F6E0D1E
:1048D0007F1D801F911F24E030E040E050E00E94E7
:1048E0000856309373082093720860910404709105
:1048F0000504882777FD8095982F26E030E040E07A
:1049000050E00E9494557B018C01209182083091E7
:104910008308442737FD4095542FCA01B901660F1B
:10492000771F881F991F620F731F841F951F6E0DBD
:104930007F1D801F911F24E030E040E050E00E9486
:1049400008563093830820938208E0900804F09082
:1049500009042091540830915508442737FD4095AB
:10496000542FCA01B901660F771F881F991F620F64
:10497000731F841F951F0027F7FC0095102F6E0DE5
:104980007F1D801F911F24E030E040E050E00E9436
:10499000085630935508209354082091060430910E
:1049A0000704C901880F991F820F931F880F991F51
:1049B000AA2797FDA095BA2F20915504309156044F
:1049C0004091570450915804280F391F4A1F5B1F0C
:1049D0002093550430935604409357045093580441
:1049E0002091040430910504C901880F991F820F9A
:1049F000931F880F991FAA2797FDA095BA2F209182
:104A0000590430915A0440915B0450915C04280F82
:104A1000391F4A1F5B1F2093590430935A04409357
:104A20005B0450935C04209106043091070480914C
:104A30005F0890916008820F931F909360088093A5
:104A40005F08209104043091050480917A089091C8
:104A50007B08820F931F90937B0880937A08809144
:104A60003D0490913E04019690933E0480933D0452
:104A7000E0908507F0908607A0903F04B090400436
:104A8000C0904104D090420460915D0470915E0436
:104A900080915F04909160040E94DC543B014C01C2
:104AA0000027F7FC0095102FC801B7010E94DC54C5
:104AB000A60195010E9444549B01AC01C401B301BD
:104AC0000E9445540E94A95460935D0470935E0453
:104AD00080935F04909360048FEC80937A0010922F
:104AE0001D0380916D0490916E04A0916F04B091AC
:104AF00070048F87988BA98BBA8B809165049091F5
:104B00006604A0916704B09168048B879C87AD8789
:104B1000BE873201882477FC8094982C809175049C
:104B200090917604A0917704B0917804860D971D3A
:104B3000A81DB91D8E8B9F8BA88FB98F809375048C
:104B400090937604A0937704B093780420907E0825
:104B500030907F084090800850908108260C371CC8
:104B6000481C591C20927E0830927F084092800891
:104B7000509281089091A6049A87992329F48091F4
:104B8000A704882309F474C4A091DF07A9831092B5
:104B9000D6071092D5071092D2071092D107109223
:104BA00018051092190510921A0510921B05109203
:104BB0001C0510921D0510921E0510921F05B09144
:104BC000AF03BD8BE0901C05F0901D0500911E0504
:104BD00010911F05A0901805B0901905C0901A05F6
:104BE000D0901B05C601B50124E630E040E050E05E
:104BF0000E9408564701821A930A909244088092B4
:104C00004308C801B70124E630E040E050E00E94CC
:104C1000085639016A187B0870923A086092390880
:104C20006091B3037091B4038091B5039091B60382
:104C300028E631E040E050E00E9494552616370601
:104C40004806590664F0261A370A480A590A20927B
:104C50007E0830927F08409280085092810857FC6D
:104C600056C56B897C89680D791D9B01442737FDEA
:104C70004095542F8091710490917204A091730417
:104C8000B0917404820F931FA41FB51F8093710409
:104C900090937204A0937304B09374048091A2045F
:104CA0009091A304681B790B7B010027F7FC00950A
:104CB000102F8F859889A989BA89E80EF91E0A1FD5
:104CC0001B1FE0926D04F0926E0400936F0410932A
:104CD000700420919B0330919C0340919D0350915F
:104CE0009E032E153F0540075107D4F478EAE72EBE
:104CF00071E6F72E012D112DE21AF30A040B150BA4
:104D0000E0926D04F0926E0400936F0410937004AF
:104D1000E0927104F092720400937304109374048F
:104D200088279927DC01821B930BA40BB50BE0901D
:104D30006D04F0906E0400916F0410917004E816F9
:104D4000F9060A071B07E4F468E5E62E6EE9F62E7D
:104D50006FEF062F6FEF162FE20EF31E041F151FC5
:104D6000E0926D04F0926E0400936F04109370044F
:104D7000E0927104F092720400937304109374042F
:104D80006A8D7B8D660D771D9B01442737FD40950D
:104D9000542F8091690490916A04A0916B04B091A2
:104DA0006C04820F931FA41FB51F80936904909316
:104DB0006A04A0936B04B0936C048091A404909156
:104DC000A504681B790B9B01442737FD4095542FA0
:104DD0008B859C85AD85BE85280F391F4A1F5B1FBB
:104DE00020936504309366044093670450936804ED
:104DF000A0909703B0909803C0909903D0909A0325
:104E0000A216B306C406D506C4F428EA31E640E08B
:104E100050E02A193B094C095D0920936504309341
:104E200066044093670450936804209369043093A8
:104E30006A0440936B0450936C0488279927DC0123
:104E40008A199B09AC09BD0920916504309166045B
:104E50004091670450916804281739074A075B0797
:104E6000B4F4A6019501285A3146404050402093A1
:104E7000650430936604409367045093680420935C
:104E8000690430936A0440936B0450936C048E89D8
:104E90009F89A88DB98D8093610490936204A0933B
:104EA0006304B09364042093450430934604409314
:104EB000470450934804E0924D04F0924E0400934E
:104EC0004F04109350048091690490916A04A0915A
:104ED0006B04B0916C048093490490934A04A093AE
:104EE0004B04B0934C048091710490917204A09192
:104EF0007304B09174048093510490935204A0936E
:104F00005304B0935404809110039091110397FDC2
:104F1000FCC39595879595958795959587959093DD
:104F2000470880934608809112039091130397FDE0
:104F300073C4959587959595879595958795909345
:104F40003708809336088091FE039091FF030F97F6
:104F500034F488E19CEF9093470880934608809151
:104F6000FE039091FF03079734F480E398EF90934A
:104F7000470880934608209100012A3009F4DAC1DD
:104F80008091FE039091FF03815D974034F088EE9D
:104F900093E090934708809346088091FE03909198
:104FA000FF03805E97400CF0DAC18091000490917D
:104FB00001040F9734F488E19CEF909337088093B5
:104FC00036088091000490910104079734F480E33F
:104FD00098EF90933708809336082A3009F48EC1F1
:104FE0008091000490910104815D974034F088EE37
:104FF00093E0909337088093360880910004909155
:105000000104805E97400CF08EC16091A603662378
:1050100009F4A2C0409110035091110380910E0534
:1050200090910F05481B590B5093090540930805B3
:105030002091100330911103280F391F37FDF5C35C
:105040003595279530930F0520930E05413851056E
:105050000CF403C280E890E0909309058093080562
:10506000E62FF0E08091080590910905E89FB001D6
:10507000E99F700DF89F700D11249B0177FDE0C32F
:105080003595279535952795359527953595279508
:105090008091460890914708820F931F909347088C
:1050A00080934608409112035091130380910C05A0
:1050B00090910D05481B590B50930B0540930A0521
:1050C0002091120330911303280F391F37FDBEC3FF
:1050D0003595279530930D0520930C0541385105E2
:1050E0000CF408C380E890E090930B0580930A05C8
:1050F00080910A0590910B05E89FA001E99F500D52
:10510000F89F500D11249A0157FD9DC335952795A1
:1051100035952795359527953595279580913608AE
:1051200090913708820F931F909337088093360829
:105130008091100390911103680F791F70931103F0
:10514000609310038091120390911303480F591F2D
:1051500050931303409312038B899C8918161906E8
:105160000CF0E2C29D89E92EFF2400E010E060917E
:10517000D1077091D20777FD5FC3882777FD8095AF
:10518000982FA80197010E94945520E430E040E058
:1051900050E00E940856820E931E9092440880921E
:1051A0004308EA8DFB8D1E161F060CF0E2C220910B
:1051B000D5073091D60737FD3BC3442737FD4095CF
:1051C000542FC801B7010E94945520E430E040E01C
:1051D00050E00E940856620E731E70923A08609268
:1051E0003908F981F7FDE2C28091DB07E82FF0E092
:1051F000EE0FFF1FEB55F84F80819181A0918C0439
:10520000B0918D0482599F4FA817B9070CF0FFC0C9
:105210001196B0938D04A0938C048091DC07E82F45
:10522000F0E0EE0FFF1FEB55F84F80819181609108
:105230008E0470918F0482599F4F681779070CF084
:10524000D3C06F5F7F4F70938F0460938E04809103
:10525000DD07E82FF0E0EE0FFF1FEB55F84F8081E0
:105260009181409190045091910482599F4F481729
:1052700059070CF0A6C04F5F5F4F509391044093C5
:1052800090048091DE07E82FF0E0EE0FFF1FEB5552
:10529000F84F80819181209192043091930482593A
:1052A0009F4F281739070CF061C02F5F3F4F309395
:1052B000930420939204B7FD6DC0AF3FB10511F088
:1052C0000CF0C4C077FD6CC06F3F710511F00CF09D
:1052D000B6C057FD6BC04F3F510511F00CF0A8C090
:1052E00037FD6AC02F3F310509F00CF4EEC28FEF95
:1052F00090E09093930480939204E7C2809100041D
:1053000090910104835F934034F088EE93E0909392
:1053100037088093360880910004909101048A5FD9
:1053200093400CF472CE80ED97E090933708809311
:1053300036086BCE8091FE039091FF03835F93400C
:1053400034F088EE93E0909347088093460880916C
:10535000FE039091FF038A5F93400CF426CE80ED0C
:1053600097E090934708809346081FCE80819181F3
:1053700082599F4F821793070CF09DCF211531055D
:1053800009F499CF21503040309393042093920434
:10539000B7FF93CF10928D0410928C0477FF94CFB7
:1053A00010928F0410928E0457FF95CF10929104A3
:1053B0001092900437FF96CF1092930410929204AB
:1053C00084C28081918182599F4F841795070CF088
:1053D00058CF4115510509F454CF415050405093D6
:1053E0009104409390044DCF8081918182599F4FC9
:1053F000861797070CF02BCF6115710509F427CF9D
:105400006150704070938F0460938E0420CF808130
:10541000918182599F4F8A179B070CF0FECE1097FF
:1054200009F4FBCE1197B0938D04A0938C04F5CEB4
:105430008FEF90E0909391048093900451CF8FEF81
:1054400090E090938F0480938E0443CF8FEF90E091
:1054500090938D0480938C0435CF40585F4F0CF0AF
:10546000FFCD80E89FEF9093090580930805F8CD64
:10547000B091DF07B983B6FF8ACB2F853889498978
:105480005A89283BE4E93E07EEEF4E07EFEF5E074F
:1054900024F428EB34E94EEF5FEF2A833B834C83FF
:1054A0005D8329543B464140504044F088E49BE6EC
:1054B000A1E0B0E08A839B83AC83BD832B853C85D0
:1054C0004D855E85283B94E939079EEF49079FEF9C
:1054D000590724F428EB34E94EEF5FEF2E833F8326
:1054E0004887598729543B464140504044F088E45E
:1054F0009BE6A1E0B0E08E839F83A887B987A09048
:10550000AE03BB24CC24DD24AB89BC899D01442798
:1055100037FD4095542F6E817F81888599850E9443
:10552000945520E038E040E050E00E940856CA015F
:10553000B901A60195010E94945520E030E140E0B8
:1055400050E00E94085679018A0120931405309397
:1055500015054093160550931705EA8DFB8D9F01A5
:10556000442737FD4095542F6A817B818C819D8132
:105570000E94945520E038E040E050E00E94085638
:10558000CA01B901A60195010E94945520E030E1BD
:1055900040E050E00E940856F092D207E092D10716
:1055A0003093D6072093D5072E193F09400B510B96
:1055B00079018A012093100530931105409312055B
:1055C00050931305220E331E441E551E20927E0852
:1055D00030927F084092800850928108F091AF038A
:1055E000FD8BFF23E1F4CA01B90122E030E040E085
:1055F00050E00E9408568E899F89A88DB98D821B24
:10560000930BA40BB50B8E8B9F8BA88FB98F8093B8
:10561000750490937604A0937704B09378046E0C8D
:105620007F1C801E911EE090AD03FF2400E010E07F
:10563000C401B3012E813F81488559850E9494554C
:1056400020E038E040E050E00E940856CA01B9016D
:10565000A80197010E94945520E030E140E050E01D
:105660000E94085659016A0120931C0530931D05BC
:1056700040931E0550931F05C401B3012A813B814D
:105680004C815D810E94945520E038E040E050E07C
:105690000E940856CA01B901A80197010E949455B9
:1056A00020E030E140E050E00E94085620931805C9
:1056B0003093190540931A0550931B05D7FCE8C099
:1056C00091E8A916B104C104D10444F457FDD8C02F
:1056D00021383105410551050CF474CA81E08093ED
:1056E000890420907E0830907F0840908008509078
:1056F000810868CA40585F4F0CF0FACC80E89FEFF1
:1057000090930B0580930A05F3CC079602CC260EE6
:10571000371E481E591E20927E0830927F08409204
:105720008008509281089DCAAD89EA2EFF2400E0CE
:1057300010E06091D1077091D20777FD8AC0882769
:1057400077FD8095982FA80197010E94945520E439
:1057500030E040E050E00E940856821A930A90928E
:10576000440880924308EA8DFB8D1E161F060CF438
:105770001ECD2091D5073091D60737FD6EC0442746
:1057800037FD4095542FC801B7010E94945520E47D
:1057900030E040E050E00E940856621A730A7092AE
:1057A0003A0860923908F981F7FF1ECD2A85222335
:1057B00009F01ACD8091A704882309F015CD8A8DB0
:1057C0009B8D815091400CF04CC02A8D3B8D6FEF2A
:1057D0002030360764F48091460890914708805045
:1057E0009F4F820F931F90934708809346088B89A1
:1057F0009C89815091400CF454C08091360890915E
:10580000370880509140EB89FC898E0F9F1F909341
:10581000370880933608E8CC07968BCB295F3F4F3B
:1058200020C8295F3F4F0C9423242F5F3F4F08CCA3
:10583000309521953F4FC1CC709561957F4F9DCCA0
:10584000215F3F4F1DCC215F3F4F60CC2F5F3F4F0B
:105850003FCC709561957F4F72CF309521953F4F2A
:105860008ECF809146089091470880509140EA8DF4
:10587000FB8D8E0F9F1F9093470880934608B7CFEC
:1058800050954095309521953F4F4F4F5F4F20CF1A
:10589000D094C094B094A094A11CB11CC11CD11C84
:1058A0000FCF2B893C896FEF203036070CF09CCC52
:1058B000809136089091370880509F4F820F931F38
:1058C00090933708809336088FCC6B960FB6F89478
:1058D000DEBF0FBECDBFDF91CF911F910F91FF9023
:1058E000EF90DF90CF90BF90AF909F908F907F9080
:1058F0006F905F904F903F902F9008958091E207B6
:105900008B3F80F08B3F09F4EDC28C3F09F4C1C39B
:105910008D3F09F428C38E3F39F48091920480931F
:10592000A20302C08093A2038091E1078B3F80F025
:105930008B3F09F4C8C28C3F09F4D8C38D3F09F4EA
:1059400003C38E3F39F4809192048093A10302C077
:105950008093A1038091A1038823B1F41092A10345
:105960008091E3078B3FC8F08B3F09F4B1C28C3FB5
:1059700009F4C1C38D3F09F4ECC28E3F81F48091DC
:1059800092048093A3030BC0843650F384E6809383
:10599000A1038091E3078B3F38F78093A3038091A5
:1059A000A3038823B1F41092A3038091E5078B3FF2
:1059B000C8F08B3F09F491C28C3F09F465C38D3F59
:1059C00009F4CCC28E3F81F4809192048093A403A9
:1059D0000BC0843650F384E68093A3038091E507DF
:1059E0008B3F38F78093A4038091EC078B3F80F0C6
:1059F0008B3F09F486C28C3F09F469C38D3F09F4DB
:105A000094C28E3F39F4809192048093A50302C022
:105A10008093A5038091ED078B3F80F08B3F09F4C5
:105A200066C28C3F09F46CC38D3F09F483C28E3F7C
:105A300039F4809192048093A70302C08093A70356
:105A40008091A7038B30B8F48AE08093A7038091FC
:105A5000EE078B3FC0F08B3F09F44EC28C3F09F438
:105A600054C38D3F09F46BC28E3F79F48091920448
:105A70008093A8030AC08F3F51F78093A7038091BA
:105A8000EE078B3F40F78093A8038091EF078B3F91
:105A900080F08B3F09F4F4C18C3F09F413C38D3FB0
:105AA00009F43EC28E3F39F4809192048093A6039C
:105AB00002C08093A6038091F4078B3F80F08B3F58
:105AC00009F4E3C18C3F09F4D0C28D3F09F487C2C9
:105AD0008E3F39F4809192048093AA0302C0809390
:105AE000AA038091F5078B3F80F08B3F09F4D2C168
:105AF0008C3F09F497C28D3F09F462C28E3F39F49E
:105B0000809192048093AC0402C08093AC04809195
:105B1000F6078B3F80F08B3F09F49EC18C3F09F460
:105B200086C28D3F09F451C28E3F39F480919204B0
:105B30008093AD0402C08093AD048091F7078B3F42
:105B400080F08B3F09F48DC18C3F09F489C28D3FF1
:105B500009F440C28E3F39F4809192048093AE04E0
:105B600002C08093AE048091F8078B3F80F08B3F9A
:105B700009F47CC18C3F09F46EC28D3F09F439C22F
:105B80008E3F39F4809192048093AF0402C08093D9
:105B9000AF04809109088B3F80F08B3F09F46BC103
:105BA0008C3F09F435C28D3F09F428C28E3F39F489
:105BB000809192048093B00402C08093B0048091DD
:105BC0000A088B3F80F08B3F09F41EC18C3F09F41B
:105BD00024C28D3F09F417C28E3F39F4809192049C
:105BE0008093B10402C08093B10480910B088B3F75
:105BF00080F08B3F09F40DC18C3F09F427C28D3F23
:105C000009F4F2C18E3F39F4809192048093B2047A
:105C100002C08093B20480910C088B3F80F08B3FD0
:105C200009F4FCC08C3F09F40CC28D3F09F4C3C1D8
:105C30008E3F39F4809192048093B30402C0809324
:105C4000B3048091F9078B3F80F08B3F09F4EBC0E0
:105C50008C3F09F423C28D3F09F49EC18E3F39F475
:105C6000809192048093AB0302C08093AB03809138
:105C7000FE078B3F80F08B3F09F4DAC08C3F09F4BC
:105C800012C28D3F09F48DC18E3F39F48091920488
:105C90008093AC0302C08093AC03809101088B3FDA
:105CA00080F08B3F09F4C9C08C3F09F4C5C18D3F1A
:105CB00009F47CC18E3F39F4809192048093AD0346
:105CC00002C08093AD03809102088B3F80F08B3F30
:105CD00009F4B8C08C3F09F4D2C18D3F09F44DC11D
:105CE0008E3F39F4809192048093AE0302C080937A
:105CF000AE03809103088B3F80F08B3F09F4A7C06F
:105D00008C3F09F4D5C18D3F09F43CC18E3F39F475
:105D1000809192048093AF0302C08093AF0380917F
:105D200008088B3F80F08B3F09F4B9C08C3F09F421
:105D3000C4C18D3F09F42BC18E3F39F48091920488
:105D40008093B00302C08093B00380910E088B3F14
:105D500080F08B3F09F4A8C08C3F09F48BC18D3FC4
:105D600009F406C18E3F39F4809192048093610852
:105D700002C08093610880916108823008F440C0BD
:105D80008F3FB9F1809110088B3F80F08B3F09F471
:105D900090C08C3F09F4A0C18D3F09F4B7C08E3F7D
:105DA00039F4809192048093750802C0809375083D
:105DB00080917508823000F18F3FC1F080912108F9
:105DC0008B3F88F08B3F09F479C08C3F09F489C17F
:105DD0008D3F09F4A0C08E3F09F09CC180919204D0
:105DE0008093860897C18093860894C18093750834
:105DF000E5CF80936108C6CF81E080937508DECF40
:105E000081E080936108BECF80918C048093B104BF
:105E1000ECCE80918C048093B204FDCE80918C04F2
:105E20008093B3040ECF80918C048093AB031FCF7B
:105E300080918C048093AC0330CF80918C0480934C
:105E4000AD0341CF80918C048093AE0352CF8091FB
:105E50008C048093AF0363CF80918C048093AD0456
:105E60006CCE80918C048093AE047DCE80918C04A6
:105E70008093AF048ECE80918C048093B0049FCE2B
:105E800080918C048093A60316CE80918C0480931D
:105E9000AA0327CE80918C048093AC0438CE8091E5
:105EA0008C048093B00351CF80918C04809361085F
:105EB00062CF80918C04809375087ACF80918C0496
:105EC0008093860827C180918C048093A10342CDE2
:105ED00080918C048093A30362CD80918C04809385
:105EE000A40382CD80918C048093A2031DCD809168
:105EF0008C048093A703A4CD80918C048093A80385
:105F0000C4CD80918C048093A50384CD80919004AE
:105F1000809375084DCF8091900480938608FAC0D5
:105F2000809190048093A603C6CD809190048093C5
:105F3000A50370CD809190048093A70381CD8091BB
:105F400090048093A803A1CD809190048093A10335
:105F500001CD809190048093A30321CD8091900482
:105F60008093A40341CD809190048093A203DCCC64
:105F70008091900480936108FECE8091900480937C
:105F8000AE03B7CE809190048093AF03C8CE8091CA
:105F900090048093B003D9CE809190048093AB039A
:105FA00066CE809190048093AC0377CE809190046C
:105FB0008093AD0388CE809190048093B30441CE4A
:105FC000809190048093AC04A2CD80919004809342
:105FD000AD04B3CD809190048093AE04C4CD809184
:105FE00090048093AA037DCD809190048093B204A5
:105FF00012CE809190048093AF04CBCD8091900419
:106000008093B004DCCD809190048093B104EDCDF9
:1060100080918E048093B004D2CD80918E048093C1
:10602000B104E3CD80918E048093AC0470CD809157
:106030008E048093AD0481CD80918E048093AD0356
:1060400042CE80918E048093B304FBCD80918E0468
:106050008093B204E0CD80918E048093AF0499CDFB
:1060600080918E048093AE047ECD80918E048093C7
:10607000AA0337CD80918E04809361087CCE8091F5
:106080008E048093AE0335CE80918E048093A4035A
:10609000ABCC80918E048093A20346CC80918E0479
:1060A0008093AB03E4CD80918E048093AC03F5CD57
:1060B00080918E048093AF0332CE80918E048093C2
:1060C000B00343CE80918E048093A603F4CC8091DC
:1060D0008E048093A5039ECC80918E0480937508D6
:1060E00067CE80918E048093860814C080918E04C0
:1060F0008093A1032FCC80918E048093A3034FCC77
:1061000080918E048093A7039BCC80918E04809312
:10611000A803BBCC6091AA0370E06F5F7F4F8CE354
:1061200098E20E94D3557093A00360939F038091DF
:10613000EA07809376088091E90780934C080895D8
:1061400080919D04882321F510924508109238080B
:106150001092690810926E088091D203882311F082
:10616000809338088091D303882311F080934508E9
:106170008091D403882311F080936E088091D50319
:10618000882361F48091C0048C7F8093C00409C08F
:106190008091C00481608093C00403C0809369082B
:1061A000F1CF8091380890E090935A078093590777
:1061B0008091450890E090935C0780935B07809105
:1061C0006E0890E090935E0780935D078091690868
:1061D00090E09093600780935F07109228041092DC
:1061E00029040E94B3210895809100018D3009F4A3
:1061F00043C110927A008091FE039091FF03909327
:106200004708809346088091000490910104909380
:10621000370880933608809102049091030490938C
:1062200078088093770860910604709107048827A6
:1062300077FD8095982F26E030E040E050E00E9406
:106240009455709373086093720860910404709180
:106250000504882777FD8095982F0E9494557093A8
:1062600083086093820880910804909109049093B8
:106270005508809354088FEC80937A008091DB0757
:10628000E82FF0E0EE0FFF1FEB55F84F8081918172
:10629000A0918C04B0918D0482599F4FA817B90723
:1062A0000CF0C4C01196B0938D04A0938C0480911F
:1062B000DC07E82FF0E0EE0FFF1FEB55F84F808171
:1062C000918160918E0470918F0482599F4F68175D
:1062D00079070CF098C06F5F7F4F70938F046093C5
:1062E0008E048091DD07E82FF0E0EE0FFF1FEB55E5
:1062F000F84F80819181409190045091910482598E
:106300009F4F481759070CF06BC04F5F5F4F50937A
:106310009104409390048091DE07E82FF0E0EE0FA7
:10632000FF1FEB55F84F80819181209192043091AD
:10633000930482599F4F281739074CF52F5F3F4F21
:106340003093930420939204B7FD33C0AF3FB1055F
:1063500011F00CF08AC077FD32C06F3F710511F06B
:106360000CF07CC057FD31C04F3F510511F00CF0CF
:106370006EC037FD30C02F3F310509F00CF47FC0EF
:106380008FEF90E0909393048093920478C0808183
:10639000918182599F4F82179307B4F621153105D9
:1063A00099F2215030403093930420939204B7FF28
:1063B000CDCF10928D0410928C0477FFCECF109227
:1063C0008F0410928E0457FFCFCF10929104109239
:1063D000900437FFD0CF10929304109292044FC0D4
:1063E0008081918182599F4F841795070CF093CF3C
:1063F0004115510509F48FCF4150504050939104FD
:106400004093900488CF8081918182599F4F861755
:1064100097070CF066CF6115710509F462CF6150E2
:10642000704070938F0460938E045BCF8081918164
:1064300082599F4F8A179B070CF039CF109709F4A8
:1064400036CF1197B0938D04A0938C0430CF8FEF8B
:1064500090E090939104809390048BCF8FEF90E025
:1064600090938F0480938E047DCF8FEF90E0909374
:106470008D0480938C046FCF0E94351ABACE609140
:10648000040870E080E090E024EC39E040E050E067
:106490000E94945560939703709398038093990397
:1064A00090939A036091050870E080E090E00E946C
:1064B000945560939B0370939C0380939D039093EA
:1064C0009E0308956F927F928F929F92AF92BF9298
:1064D000CF92DF92EF92FF920F931F93CF93DF93B0
:1064E0001092E803469A10923A04109239041092DE
:1064F0003C0410923B0480E090E0A0E0B0E0809388
:106500003F0490934004A0934104B093420410923E
:10651000300410922F041092320410923104109221
:106520003404109233041092670810926608109297
:10653000AD031092AE0310920B040E94F43084E677
:1065400090E00E94A7120E94F4308091DF0780FF44
:1065500010C08091180390911903875B934008F055
:10656000D8C080911803909119038E5E924008F470
:10657000D0C0EE24CC24DD24C0E0D0E000E010E068
:106580008AE090E00E94A712809102049091030497
:10659000C80ED91E8091FE039091FF03C80FD91F2A
:1065A0008091000490910104080F191FE39480E288
:1065B000E81631F7AE01405F5F4F56954795569507
:1065C00047955093300440932F049801205F3F4F2C
:1065D00036952795369527953093320420933104CC
:1065E000C601409696958795929582958F708927DA
:1065F0009F708927909334048093330490936708A5
:106600008093660830933604209335045093380401
:106610004093370444E050E0DA010E942356802D75
:10662000853078F1809182089091830897FD78C039
:106630006CE070E00E94D35570933C0460933B047F
:10664000809172089091730897FD66C06CE070E0CD
:106650000E94D35570933A04609339046091850782
:1066600070918607882777FD8095982F0E94DC54CB
:1066700060933F04709340048093410490934204DC
:1066800053C0DA010E942356802D4F5F5F4FDA011D
:106690000E942356202D90E0982F8827820F911D6D
:1066A00090933A04809339044F5F5F4FDA010E9460
:1066B0002356802D4F5F5F4FDA010E942356202D15
:1066C00090E0982F8827820F911D90933C0480932F
:1066D0003B044F5F5F4FDA010E942356602D4F5FEE
:1066E0005F4FDA010E942356202D70E0762F662737
:1066F000620F711D882777FD8095982F0E94DC54CA
:1067000060933F047093400480934104909342044B
:106710000BC00E94FC1A2DCF909581959F4F96CF6C
:10672000909581959F4F84CF10924708109246080C
:106730001092370810923608109278081092770855
:1067400084E690E00E94A71260910604709107040D
:10675000882777FD8095982F26E030E040E050E0D4
:106760000E9494553B014C0170937308609372082A
:106770006091040470910504882777FD8095982F17
:106780000E9494555B016C017093830860938208AA
:10679000E090EB07FF2400E010E0882477FC809471
:1067A000982CC401B301A80197010E9494553B01A4
:1067B0004C01609345047093460480934704909382
:1067C0004804CC24B7FCC094DC2CC601B5010E945F
:1067D000945560934D0470934E0480934F049093AE
:1067E00050046092690470926A0480926B049092E3
:1067F0006C0460937104709372048093730490939B
:10680000740410927504109276041092770410921A
:1068100078048091140390911503A0911603B09110
:106820001703909388078093870710920D041092A6
:106830000C0410927D0410927E0410927F0410923A
:1068400080048091810490918204909384048093C9
:1068500083040E943F4E82E390E09093E60380938E
:10686000E5036091040870E080E090E024EC39E0FA
:1068700040E050E00E9494556856754C8F4F9F4FF2
:1068800060939703709398038093990390939A036E
:106890006091050870E080E090E00E949455685691
:1068A000754C8F4F9F4F60939B0370939C03809315
:1068B0009D0390939E031092B2031092B1036091D6
:1068C000810470918204882777FD8095982F20910C
:1068D000B3033091B4034091B5035091B6030E94C5
:1068E000945560937E0870937F08809380089093FE
:1068F000810810928B0410928A0411E01093010118
:106900000E949F518091C00484608093C0048FEFE7
:106910008093E8081092E90880E28093EA08E09109
:10692000DB07F0E0EE0FFF1FEB55F84F8081918100
:1069300082599F4F90938D0480938C04E091DC07E3
:10694000F0E0EE0FFF1FEB55F84F808191818259E7
:106950009F4F90938F0480938E04E091DD07F0E0C9
:10696000EE0FFF1FEB55F84F8081918182599F4FA9
:106970009093910480939004E091DE07F0E0EE0F95
:10698000FF1FEB55F84F8081918182599F4F909363
:106990009304809392041093E80384E68093940414
:1069A000DF91CF911F910F91FF90EF90DF90CF90EB
:1069B000BF90AF909F908F907F906F9008951F939E
:1069C000182F11501F3FA9F080919D04882329F0B2
:1069D00010C080919D04882361F484E690E0909338
:1069E000E6038093E5038AEF90E00E949A1211502B
:1069F00080F71F91089588EE8093DF073EE1309382
:106A0000E0078BEF8093E2078AE08093E3073093FF
:106A1000E1073093E50793E09093E40758E0509343
:106A2000E60720E12093E70766E06093E8075093CC
:106A3000E90786EE8093EA073093EB0780E88093BE
:106A4000EC0744E64093ED0788E78093EE079093C8
:106A5000EF078EE58093F00783E28093F10784E1EE
:106A60008093F2071092F3072093F4071092F50732
:106A70001092F6071092F7071092F8071092090883
:106A800010920A0810920B0810920C084093F90714
:106A900088E28093FA071092230892E39093FB0711
:106AA00086E98093FC0785E08093FD079093FE07BD
:106AB0002AE52093FF079093000810922208209364
:106AC000010883E48093020886E48093030885E547
:106AD000809304088093050880E2809306088093E1
:106AE0000708909308088FE580930D0883EF809343
:106AF0000F0830930E08309310088DEF8093110823
:106B0000409312082093130820931408209315082B
:106B10008BE48093160880931708809318081092CE
:106B2000190860931A0850931B0820931C0830938F
:106B30001D0840931E0840931F0884E0809320089E
:106B4000A8E2B8E0EAE7F3E08CE001900D92815012
:106B5000E1F7089588E68093DF075EE15093E00750
:106B60008BEF8093E2078AE08093E3075093E1077D
:106B70005093E50793E09093E4078CE08093E60759
:106B800080E18093E70776E07093E80768E0609320
:106B9000E90786EE8093EA075093EB0780E880933D
:106BA000EC0780E58093ED0788E78093EE079093EC
:106BB000EF078EE58093F00783E28093F10750930F
:106BC000F2071092F30730E23093F4071092F507C2
:106BD0001092F6071092F7071092F8071092090822
:106BE00010920A0810920B0810920C0844E6409389
:106BF000F90788E28093FA071092230892E39093B2
:106C0000FB0786E98093FC0785E08093FD0790935E
:106C1000FE072AE52093FF079093000810922208B0
:106C20002093010883E4809302088CE38093030897
:106C300085E5809304088093050830930608309317
:106C400007089BE4909308088FE580930D0883EF75
:106C500080930F0884E180930E08809310088DEFD5
:106C6000809311084093120820931308209314086E
:106C7000209315089093160890931708909318087E
:106C80001092190870931A0860931B0820931C082F
:106C900050931D0840931E0840931F0884E0809382
:106CA0002008A8E2B8E0E4E8F3E08CE001900D925F
:106CB0008150E1F7089588E68093DF073EE1309345
:106CC000E0078BEF8093E2078AE08093E30730933D
:106CD000E1073093E507E4E0E093E4075FE05093D9
:106CE000E6073093E7078CE08093E80778E070933D
:106CF000E90786EE8093EA073093EB0780E88093FC
:106D0000EC0780E58093ED0726E92093EE0783E00A
:106D10008093EF078EE58093F00783E28093F1077D
:106D20003093F2071092F30760E26093F407109239
:106D3000F5071092F6071092F7071092F8071092D5
:106D4000090810920A0810920B0810920C0844E6E9
:106D50004093F90788E28093FA071092230892E3A0
:106D60009093FB072093FC0785E08093FD079093A9
:106D7000FE072AE52093FF0790930008109222084F
:106D80002093010883E4809302081092030885E5AC
:106D9000809304088093050880E18093060860933F
:106DA0000708409308088FE580930D0883EF8093D0
:106DB0000F0850930E08509310088DEF8093110820
:106DC0004093120820931308209314082093150869
:106DD0008BE480931608809317088093180810920C
:106DE000190886E080931A0870931B0820931C08EA
:106DF00030931D0840931E0840931F08E09320081D
:106E0000A8E2B8E0ECE8F3E08CE001900D9281504C
:106E1000E1F708952F923F924F925F926F927F9287
:106E20008F929F92AF92BF92CF92DF92EF92FF929A
:106E30000F931F93CF93DF93CDB7DEB7AE970FB607
:106E4000F894DEBF0FBECDBF0E94F3234091000136
:106E50004C3008F04FC7299A20919B0430919C0434
:106E600080914C08682F70E0665F7F4F798B688B4C
:106E70006217730714F4398B288B8091940484363D
:106E800008F0EFC380910501882349F4809109033C
:106E900090910A038F5F9F4F11F40C941A498091CF
:106EA000EA049091EB04009709F431C7019790939D
:106EB000EB048093EA044A3009F430C7443109F402
:106EC0002DC728988091BE049091BF04895E93409D
:106ED00010F40C9473458091F107E82FF0E0F98BE2
:106EE000E88BF1E0F0938704A091D707B0E0AA0FF8
:106EF000BB1FFD01E554F84F11821082E091D807C5
:106F00002E2F30E0220F331FC9018554984FFC010A
:106F100011821082AB55B84F11961C921E922B55C0
:106F2000384FD90111961C921E92E091DA07F0E0D9
:106F3000EE0FFF1FEB55F84F1182108280917903FD
:106F4000815080937903809179038F3F09F4D0C4F5
:106F5000B0918704BFA3BB2309F0CAC4B091DF0777
:106F60002091A704222311F40C9476498091FE0706
:106F700090E0688979898617970714F4998B888B34
:106F800071E0709389048B2F90E09B878A879FA183
:106F90009923B1F010929A041092990410929604D9
:106FA0001092950410929804109297048AE58093A9
:106FB0007C08A8E7A09368081092A7041092A60482
:106FC0002091450430914604409147045091480473
:106FD00029833A834B835C8340915B0850915C0822
:106FE00060915D0870915E0848A759A76AA77BA7C2
:106FF00089819A81AB81BC81480F591F6A1F7B1F11
:1070000040935B0850935C0860935D0870935E0842
:1070100020914D0430914E0440914F045091500402
:107020002D833E834F8358872090620830906308F9
:107030004090640850906508220E331E441E551E71
:10704000209262083092630840926408509265086A
:107050004091490450914A0460914B0470914C0452
:1070600049A35AA36BA37CA380914E0890914F082B
:10707000A0915008B0915108840F951FA61FB71F0B
:1070800080934E0890934F08A0935008B0935108F6
:107090006091510470915204809153049091540472
:1070A0006D8F7E8F8F8F98A380913E0890913F08BF
:1070B000A0914008B09141082D8D3E8D4F8D58A173
:1070C000820F931FA41FB51F80933E0890933F0823
:1070D000A0934008B09341083091A6043987332328
:1070E00011F40C94A7421092550410925604109279
:1070F0005704109258041092590410925A04109296
:107100005B0410925C0410925B0810925C08109271
:107110005D0810925E081092620810926308109247
:1071200064081092650810924E0810924F08109251
:1071300050081092510810923E0810923F08109289
:107140004008109241088091650490916604A091D6
:107150006704B09168048093690490936A04A093D3
:107160006B04B0936C0480916D0490916E04A091B7
:107170006F04B09170048093710490937204A09393
:107180007304B093740410920F0410920E041092C2
:10719000A5041092A4041092A3041092A20450918A
:1071A000A7045CA780910E0490910F048F3F910576
:1071B00009F010F40C949242B985BB2329F4ECA594
:1071C000EE2311F40C940E461092A3041092A20424
:1071D0001092A5041092A4041EA21092890420917A
:1071E0005B0830915C0840915D0850915E0828A7CB
:1071F00039A74AA75BA720906208309063084090A7
:10720000640850906508309168083DA3332341F429
:107210001092A3041092A2041092A5041092A40448
:1072200048A559A56AA57BA54093C5045093C604FB
:107230006093C7047093C8042092C1043092C204C2
:107240004092C3045092C404109255041092560404
:1072500010925704109258041092590410925A0434
:1072600010925B0410925C0410925D0410925E0414
:1072700010925F041092600410925B0810925C08F8
:1072800010925D0810925E081092620810926308D6
:10729000109264081092650810924E0810924F08E0
:1072A000109250081092510810923E0810923F0818
:1072B000109240081092410810920F0410920E0490
:1072C000E0909904F0909A046701F7FE02C00C94D4
:1072D000A14270E1C716D10464F088EE93E0909368
:1072E0009603809395038A8584FD03C081E0809393
:1072F000DB040091E807B701882777FD8095982F78
:10730000202F30E040E050E00E9494559601442741
:1073100037FD4095542F0E94945520E032E040E024
:1073200050E00E94085610E00E9DB0010F9D700DB8
:107330001E9D700D112477FF02C00C947745759542
:10734000679575956795260F371FA901662757FD25
:107350006095762F488F598F6A8F7B8F4093FC04FE
:107360005093FD046093FE047093FF0480917504B4
:1073700090917604A0917704B0917804841B950BCA
:10738000A60BB70B8093750490937604A0937704B3
:10739000B0937804813553EC950750E0A50750E091
:1073A000B50714F40C947D4280E593ECA0E0B0E0C6
:1073B0008093750490937604A0937704B093780437
:1073C00020908104309082042114310409F4A8C46F
:1073D0007A8573FFA5C469817A818B819C8120E0C5
:1073E00032E040E050E00E940856890137FF02C0B9
:1073F0000C942E496D817E818F81988520E032E04A
:1074000040E050E00E940856690137FF02C00C942A
:107410002849C016D10614F40C94C14840907E0847
:1074200050907F0860908008709081088091B3032D
:107430009091B403A091B503B091B6038C8B9D8B52
:10744000AE8BBF8B8090770890907808C40197FE30
:1074500002C00C9433498138910514F00C94C4484F
:10746000ACE1B2E02A0E3B1E71010027F7FC00954B
:10747000102FE4EEFDEF2E0E3F1EC301B2012C894A
:107480003D894E895F890E940856E21AF30A040B6F
:10749000150BC801B70128E631E040E050E00E943A
:1074A0000856645B70408B01000F111F000F111F05
:1074B000000F111F2091DB04E0909503F0909603DC
:1074C000E114F10491F4F9E1CF16D10474F4809140
:1074D0008A0490918B04860F971F90938B0480935E
:1074E0008A04222311F00C94624AB601D7FE02C02E
:1074F0000C94AA49759567957595679575956795E7
:107500006F5F7F4FC8010E94D3559B01A901662779
:1075100057FD6095762F440D551D661D771D4093D0
:107520007E0850937F086093800870938108809153
:10753000A503A82EBB24CA9C9001CB9C300DDA9CDD
:10754000300D112437FF02C00C94A64935952795BC
:107550003595279535952795359527953595279513
:107560006501C21AD30AD7FE02C00C949E49E114E9
:10757000F10411F00C946D496090BC047090BD044E
:107580008091BA049091BB04680E791E77FE02C008
:107590000C94C14C75946794759467947594679432
:1075A000A0E4B0E06A0E7B1E809183049091840475
:1075B000AA2797FDA095BA2FECE1EE2EE2E0FE2E71
:1075C000012D112DE81AF90A0A0B1B0BCB01BA0188
:1075D0002C893D894E895F890E940856E20EF31E70
:1075E000041F151FC801B70128E631E040E050E054
:1075F0000E940856645B70406C9DC0016D9D900DAB
:107600007C9D900D1124B3010E94D3559501220F4A
:10761000331F2A0D3B1D2617370714F40C94AE496F
:10762000309521953F4F621773070CF4B9019B0108
:10763000442737FD4095542F80917504909176042E
:10764000A0917704B0917804820F931FA41FB51FF7
:107650008093750490937604A0937704B093780494
:1076600063C3809194048D3808F468CC1092870429
:107670008091F20722E3829FC00111249093EB04D2
:107680008093EA04E889F989B9978CF080919D0488
:10769000882369F08091BE049091BF04FFEF8F3F73
:1076A0009F0779F001969093BF048093BE04809168
:1076B000BE049091BF048F3F910509F010F40C9423
:1076C000E3488091C00482608093C0048091D90710
:1076D000A82FB0E0AA0FBB1FFD01EB55F84F80812A
:1076E0009181813591050CF4C4C080919D0488235B
:1076F00009F0BFC08091DA07E82FF0E0EE0FFF1F1E
:10770000EB55F84F808191818C34910514F40C94E1
:10771000C8498091E9048F5F8093E904893C08F4AB
:10772000A8C04C3010F00C94F34D299810929D0491
:107730001092E9041092BF041092BE048091D70702
:10774000282F30E0220F331FF901EB55F84F8081CD
:1077500091818734910514F40C94DE4D8091D80703
:10776000A82FB0E0AA0FBB1FAD014B55584FFA012F
:1077700080819181873491052CF0F901EB55F84F08
:1077800080819181FA01808191818734910514F47F
:107790000C94C84DF901EB55F84F808191818734E5
:1077A000910514F40C94C84D42E0FD01EB55F84FDF
:1077B00080819181863491054CF4F901EB55F84FA5
:1077C00080819181873491050CF043E0FD01EB55F8
:1077D000F84F808191818A5B9F4F4CF4F901EB5502
:1077E000F84F80819181873491050CF044E0AB55CE
:1077F000B84F8D919C918A5B9F4F4CF42B55384F1D
:10780000D9018D919C91863491050CF445E0842F2B
:107810000E94B0028091D807A82FB0E0AA0FBB1F2A
:10782000AB55B84F8D919C9197FF02C00C94004EC0
:107830004E9714F00C94934DE091D707F0E0EE0FC3
:10784000FF1FEB55F84F808191818A5B9F4F14F0A9
:107850000C94934D81E080939A0688EE93E0909388
:10786000E6038093E5038091D907A82FB0E0AA0F23
:10787000BB1FAB55B84F8D919C918B5A9F4F0CF00D
:107880005DCB8091DA07C82EDD24CC0CDD1CF6011F
:10789000EB55F84F80819181855B9F4F14F00C94DC
:1078A00082498091E8048F5F8093E804893C10F05E
:1078B0000C94874A65EA77E0C60ED71ED6018D91F3
:1078C0009C918C34910514F40C9486498091E704C2
:1078D0008F5F8093E704893C08F430CB10929D04BD
:1078E00088EC8093E7041092BF041092BE0426CB6C
:1078F0000E947E2C8091D707A82EBB24AA0CBB1C0B
:10790000F501EB55F84F208131818091E607882EF3
:107910009924F501E554F84F0190F081E02D809114
:10792000E707682F70E0289DA001299D500D389D24
:10793000500D11242091D1043091D204C901880F37
:10794000991F820F931F480F591F57FF02C00C94B5
:10795000DB489A013595279535952795E69FC00117
:10796000E79F900DF69F900D1124280F391F30933B
:10797000D2042093D1048091240590912505409153
:107980002005509121056901C81AD90AC41AD50ADF
:10799000D0929604C09295048091D807E82EFF24D7
:1079A000EE0CFF1CF701EB55F84F80819181F70138
:1079B000E554F84F0190F081E02D889DA001899D4C
:1079C000500D989D500D11242091CF043091D0047A
:1079D000C901880F991F820F931F480F591F57FF26
:1079E00002C00C94DF489A01359527953595279567
:1079F000E69FC001E79F900DF69F900D1124280F80
:107A0000391F3093D0042093CF04809126059091A4
:107A1000270540912205509123058901081B190B68
:107A2000041B150B1093980400939704E091DA0758
:107A3000F0E0EE0FFF1FEB55F84F8081918190959C
:107A400081959F4F90939A04809399048330910578
:107A50000CF452C1029790939A0480939904E09198
:107A6000D907F0E0EE0FFF1FEB55F84F60807180F3
:107A700028E730E0620E731E70929C0460929B04B3
:107A80006091A70370E0882777FD8095982F0E946A
:107A9000DC5420E030E040E251E40E9445540E9472
:107AA000AE5460937C083091A803309368088091AD
:107AB000A60680FF06C080918608813810F00C94DD
:107AC000B14580919B0490919C0497FF02C00C9457
:107AD0005149B091DF07B2FF02C0109268082091AF
:107AE0009504309196044091BA045091BB04C901A9
:107AF00037FF02C00C945C499595879595958795BD
:107B000097FF02C00C945749481759070CF02AC731
:107B1000C90137FF02C00C94994997FF02C00C9429
:107B2000964995958795959587959093BB048093F5
:107B3000BA048536910514F00C94A9452091970458
:107B4000309198044091BC045091BD04C90137FFA5
:107B500002C00C945F49959587959595879597FFF9
:107B600002C00C946849481759070CF0F4C6C901C3
:107B700037FF02C00C94914997FF02C00C948E49C4
:107B800095958795959587959093BD048093BC04B2
:107B9000853691050CF0D6C7E0918704EFA3EE235C
:107BA00041F01092BB041092BA041092BD041092DE
:107BB000BC04F701EB55F84F208131818091FF071C
:107BC000482F50E04217530724F48091220882FD89
:107BD000B5C7F701EB55F84F20813181809100083E
:107BE000BA01681B71092617370714F41092A8040C
:107BF000F701EB55F84F8081918166277727641B49
:107C0000750B8617970724F48091220883FD92C78D
:107C10008091A904882389F085EA97E0E80EF91E8F
:107C2000F701208131818091000890E0841B950B41
:107C30008217930714F40C941649F501EB55F84F8D
:107C4000808191814817590724F48091220880FD92
:107C50006DC7A091AB04AA2379F0F501EB55F84F5D
:107C60002081318180910008FA01E81BF1092E176B
:107C70003F0714F40C940D49F501EB55F84F808142
:107C800091818617970724F48091220881FD4AC7C5
:107C90008091AA04882389F025EA37E0A20EB31E5A
:107CA000F501208131818091000890E0841B950BC3
:107CB0008217930714F40C9412498091A804882326
:107CC00029F48091A904882309F429C7F1E0F093ED
:107CD000A704AA2329F48091AA04882309F41BC7C6
:107CE00081E08093A6041092A7041092A804109239
:107CF000A9043CC92998B0C8EFEF8E3F9E070CF04D
:107D000087C7029690939A0480939904A8CE109204
:107D10009D04109287044A3009F0D0C8289AD2C82E
:107D200080907708909078088091DC04815080934F
:107D3000DC048F3F09F45DC5BEA1BB2381F0109226
:107D40000005109201051092020510920305109291
:107D50000405109205051092060510920705E985A5
:107D6000EE2309F4B5C31F861E86442455242CA592
:107D7000222309F498C31D861C8622243324809173
:107D8000390890913A08893C91050CF480C388EC3D
:107D900090E090933A08809339086091430870917D
:107DA00044087EA76DA7693C71050CF461C3A8EC7B
:107DB000B0E0BEA7ADA7B0934408A0934308A0903D
:107DC0007C08BB24CC24DD247C010027F7FC009533
:107DD000102FEE0CFF1C001F111FEE0CFF1C001FCC
:107DE000111FEE0CFF1C001F111FEE0CFF1C001FCB
:107DF000111FEE0CFF1C001F111FEE0CFF1C001FBB
:107E0000111FEE0CFF1C001F111F609046087090A0
:107E100047089301442737FD4095542FC601B5010B
:107E20000E949455E60EF71E081F191FC801B701DE
:107E300020E430E040E050E00E9408563201620E3B
:107E4000731E70924708609246086DA57EA57B015F
:107E50000027F7FC0095102FEE0CFF1C001F111FD0
:107E6000EE0CFF1C001F111FEE0CFF1C001F111F4A
:107E7000EE0CFF1C001F111FEE0CFF1C001F111F3A
:107E8000EE0CFF1C001F111FEE0CFF1C001F111F2A
:107E90004090360850903708B201882777FD8095CA
:107EA000982FA60195010E949455E60EF71E081F13
:107EB000191FC801B70120E430E040E050E00E9403
:107EC00008562101420E531E509237084092360840
:107ED000880C991CB401882777FD8095982FA601FE
:107EE00095010E94945520E430E040E050E00E946B
:107EF000085679018A01ADA16A2F70E080E090E018
:107F000020916104309162044091630450916404B3
:107F10000E94945520EF35E540E050E00E9408565D
:107F20004701820E931E9092780880927708B1E004
:107F30006B16B0E47B060CF48DC2612C40E4742E09
:107F40007092470860924608F1E04F16F0E45F0631
:107F50000CF472C2412C20E4522E50923708409209
:107F6000360831E0831630E493060CF457C2812CB6
:107F700080E4982E909278088092770868897989B1
:107F8000660F771F660F771F7EA76DA77A8570FF34
:107F90002CC071FFEEC48091220884FD02C00C94B5
:107FA000CA488091A20381558B3310F00C94D048BD
:107FB0008091B70381508093B7038F3F11F40C94E5
:107FC000B74B20919E0430919F04F2C4EDA5FEA50D
:107FD000E217F30724F4F093E604E093E50420911C
:107FE000E5043091E6043EA72DA780917608282E5F
:107FF0003324A101440F551F440F551FCA0180555A
:1080000090400DA51EA5801791070CF48C011093CC
:10801000500700934F07688D798D8A8D9B8D660F71
:10802000771F881F991F660F771F881F991F74017C
:10803000E61AF70A013A11050CF4E2C198013595E8
:1080400027952E153F0584F0F80117FF02C00C9408
:108050003949F595E795222733272E1B3F0B2E151F
:108060003F0514F40C94BE48CA01801B910B821783
:1080700093070CF49C01C801841B950B5901281728
:1080800039070CF45C01809195049091960463018A
:10809000C81AD90AD0925A08C0925908ADA1AA2389
:1080A00009F494C1EE85FF85E81BF90BCF01AA27DF
:1080B00097FDA095BA2F20910405309105054091B8
:1080C000060550910705280F391F4A1F5B1F209393
:1080D00004053093050540930605509307052130AC
:1080E000FAEF3F07F0E04F07F0E05F070CF458C1EC
:1080F00020E03AEF40E050E020930405309305057E
:10810000409306055093070580919F039091A0032B
:108110003C01882477FC8094982CCA01B901A40101
:1081200093010E940856C20ED31EB501B7FCE6C4E7
:1081300077FDE1C475956795600F711F882777FDFE
:108140008095982F2091B00330E040E050E00E94ED
:10815000945520E430E040E050E00E940856790158
:10816000C216D3060CF49601CC24DD24CE18DF0809
:10817000DB8ACA8AC216D3060CF46901809197047F
:1081800090919804481A590A509235084092340840
:108190007DA1772309F4EAC0AC85BD85A81BB90B86
:1081A000FD01CF01AA2797FDA095BA2F20910005C8
:1081B000309101054091020550910305280F391FA8
:1081C0004A1F5B1F20930005309301054093020571
:1081D000509303052130FAEF3F07F0E04F07F0E03E
:1081E0005F070CF4ADC020E03AEF40E050E0209390
:1081F0000005309301054093020550930305CA0121
:10820000B901A40193010E940856B201620F731FC5
:1082100097016E157F050CF49B0179018A899B8972
:10822000281739070CF47C014501800E911E6091DE
:10823000E3047091E404C601880D991D0E94DD23BA
:108240009093E4048093E30497FD5FC49C0135950B
:1082500027953595279580914C08682E772426150B
:1082600037050CF066C0C301809338086091E104C3
:108270007091E204C4018C199D090E94DD23909342
:10828000E2048093E10497FD3EC49595879595950A
:108290008795861597050CF046C0C3018093450865
:1082A0006091DF047091E004C8018A199B098E0D6A
:1082B0009F1D0E94DD239093E0048093DF0497FDCF
:1082C00028C495958795959587958615970534F5D6
:1082D000C30180936E086091DD047091DE040E1975
:1082E0001F09C8018A199B090E94DD239093DE04AF
:1082F0008093DD0497FD0BC495958795959587959B
:108300008615970514F40C94244E3C012816390662
:1083100014F00C94244E31010C94244E2816390686
:10832000C4F6C101D6CF281639060CF0B7CFC1016B
:10833000B5CFC901221633060CF096CFC10194CFF8
:10834000203066E036076FEF46076FEF56070CF0F8
:1083500056CF20E036E04FEF5FEF209300053093DB
:108360000105409302055093030549CFC201AA2796
:1083700097FDA095BA2F20910005309101054091FD
:10838000020550910305280F391F4A1F5B1F2093D8
:1083900000053093010540930205509303051ACF61
:1083A000203066E036076FEF46076FEF56070CF098
:1083B000ABCE20E036E04FEF5FEF20930405309323
:1083C000050540930605509307059ECEC601AA27D2
:1083D00097FDA095BA2F2091040530910505409195
:1083E000060550910705280F391F4A1F5B1F209370
:1083F00004053093050540930605509307056FCE9D
:1084000097017FEF203B370714F420EB3FEF213536
:1084100031050CF429CE20E530E026CE40E084166C
:1084200040EC94060CF0AACD812C00EC902E90929A
:10843000780880927708A2CD20E0421620EC520600
:108440000CF08FCD412C90EC592E50923708409271
:10845000360887CDE0E06E16E0EC7E060CF074CDB9
:10846000612C30EC732E70924708609246086CCDF8
:10847000EDA5FEA5E853FF4F0CF0A1CC48E35FEF5C
:108480005EA74DA7509344084093430898CC4FEF04
:10849000883394070CF081CC88E39FEF90933A08DF
:1084A000809339087ACC3DA1632F70E080E090E0A2
:1084B0002D813E814F8158850E94945528EF3AE2E4
:1084C00040E050E00E9408563D872C87190157CCA8
:1084D000FDA16F2F70E080E090E029813A814B810F
:1084E0005C810E94945528EF3AE240E050E00E94FF
:1084F00008563F872E8729013ACC805B9C43AF4FBB
:10850000BF4F14F00C94E03980EB9CE3AFEFBFEF6A
:108510008093750490937604A0937704B0937804C5
:108520000C94E039509189045EA3609168086DA3B2
:10853000E0909904F0909A046701F7FC02C00C9453
:108540006939CC24DD24CE18DF080C9469394091B8
:10855000A7044CA7442309F45EC01092550410925E
:108560005604109257041092580410925904109215
:108570005A0410925B0410925C0410925B081092F3
:108580005C0810925D0810925E08109262081092CA
:108590006308109264081092650810924E081092B9
:1085A0004F08109250081092510810923E081092F5
:1085B0003F08109240081092410880916504909104
:1085C0006604A0916704B091680480936904909355
:1085D0006A04A0936B04B0936C0480916D04909135
:1085E0006E04A0916F04B091700480937104909315
:1085F0007204A0937304B093740410920F04109249
:108600000E041092A5041092A4041092A3041092D8
:10861000A2040C94D23880918507909186078150EE
:10862000924014F40C94D2388091E8088F3F11F4F2
:108630000C94154BE090EB07FF2400E010E0A82E0F
:10864000BB24A7FCB094CB2CDB2C69817A818B8175
:108650009C81A80197010E94085680917208909110
:108660007308AA2797FDA095BA2F281B390B4A0B30
:108670005B0BCA01B901A60195010E94945520E047
:1086800032E040E050E00E94085639014A016D8115
:108690007E818F819885A80197010E94085680915C
:1086A000820890918308AA2797FDA095BA2F281BCE
:1086B000390B4A0B5B0BCA01B901A60195010E9457
:1086C000945520E032E040E050E00E940856590105
:1086D0006A018091BA049091BB04813491050CF039
:1086E000CBC58091BC049091BD04813491050CF000
:1086F000C3C5E091DA07F0E0EE0FFF1FEB55F84F2E
:108700000190F081E02DF7FF02C00C94944C7A9711
:10871000A4F0C401B30123E030E040E050E00E9447
:10872000085639014A01C601B50123E030E040E0B6
:1087300050E00E94085659016A018091EA08E82E2B
:10874000FF24E7FCF0940F2D1F2DA4019301E614E4
:10875000F7040805190514F4A8019701992787FD66
:108760009095909581959F4FAA2797FDA095BA2F38
:1087700039014A01281739074A075B0714F43C01FD
:108780004D01EA14FB040C051D0514F457016801A2
:10879000A816B906CA06DB0614F45C016D018091C7
:1087A000650490916604A0916704B09168048619ED
:1087B0009709A809B9098093650490936604A0936A
:1087C0006704B093680480916D0490916E04A09149
:1087D0006F04B09170048A199B09AC09BD0980939C
:1087E0006D0490936E04A0936F04B09370040C9486
:1087F000D23888E18093DC04E090EB07FF24EE0C94
:10880000FF1CEE0CFF1C0027F7FC0095102F698160
:108810007A818B819C81A80197010E940856309330
:108820004207209341076D817E818F819885A80141
:1088300097010E9408563093440720934307809184
:1088400072089091730897FD67C5959587959595E2
:108850008795909346078093450780918208909171
:10886000830897FD57C5959587959595879590931E
:1088700048078093470790924A07809249072091C2
:108880009E0430919F0430934C0720934B076091D6
:108890007D0470917E0480917F049091800420E09B
:1088A00032E040E050E00E94085630934E0720939B
:1088B0004D07309252072092510780910E039091FC
:1088C0000F03909354078093530760917E08709133
:1088D0007F0880918008909181082091B3033091A6
:1088E000B4034091B5035091B6030E9408563093EB
:1088F0005807209357078091940490E0909356076F
:108900008093550780919A0690E090936807809332
:1089100067078091E9039091EA0390936A07809337
:1089200069078091E908992787FD909590937807CA
:1089300080937707809120059091210590937E0781
:1089400080937D0780912205909123059093800765
:1089500080937F07F1C9415050405093BD0440932C
:10896000BC041AC9415050405093BB044093BA0410
:10897000E5C88091A2032091B1033091B203280F82
:10898000311D8091E40790E0FC012E9FC0012F9FD4
:10899000900D3E9F900D112444979093A1048093D5
:1089A000A00481E08093880420919E0430919F046C
:1089B000FFA1FF2321F01092A1041092A004409186
:1089C000A0045091A104421753070CF00ECB8091E4
:1089D0008804882309F409CB8091A30390E0241B29
:1089E000350BAC01429FC001439F900D529F900DEB
:1089F000112497FDDBC65C01B594A794B594A794A8
:108A0000C0900C04D0900D0460917D0470917E04A0
:108A100080917F0490918004E090A403FF2400E003
:108A200010E020E830E040E050E00E940856C80125
:108A3000B7010E94945520E230E040E050E00E94EF
:108A40000856A901285E3E4F14F448EE5EEF2091CF
:108A5000E5043091E604C901880F991F820F931F26
:108A6000BC01660F771F660F771F680F791F96018D
:108A7000D7FCA1C635952795CB01821B930B9A0194
:108A80004951514014F028E131E0821B930B9C01C5
:108A90008DA59EA58A199B09280F391F37FD88C609
:108AA00035952795359527953595279535952795AE
:108AB0003093E6042093E5048091E007682F70E08E
:108AC000660F771F660F771F261737070CF07ECAD1
:108AD0008DA59EA5861797070CF49FC57093E60495
:108AE0006093E5047CCA10929D040C949E376D5FE0
:108AF0007F4F0C949F396F5F7F4F1CCB6627772782
:108B00006A197B0915CB0396C0CB03969FCB0396BE
:108B1000F3CB0396D6CB1092A6040C94B0371092E8
:108B2000A704D7C881E08093AA04C7C8A1E0A09396
:108B3000AB04A2C881E08093A9047FC881E0809340
:108B4000A80456C884E690E09093BD048093BC04CA
:108B500023C884E690E09093BB048093BA040C94FD
:108B60009E3D80919F06992787FD9095AC01489D79
:108B7000C001499D900D589D900D1124C80ED91E1D
:108B8000D0929604C09295048091A006992787FD03
:108B90009095BC01689DC001699D900D789D900DD8
:108BA0001124080F191F1093980400939704209123
:108BB000A106332727FD30958091990490919A045E
:108BC000820F931F90939A04809399042091E40755
:108BD00030E08091A306992787FD9095DC012A9FBC
:108BE000C0012B9F900D3A9F900D11249093B203DA
:108BF0008093B1038091A20690E08615970514F04A
:108C00000C94613D90939C0480939B040C94613D73
:108C100010929A04109299040C942F3DF0918904BB
:108C2000FEA3FF2311F00C94E438209107082C8F49
:108C3000222311F40C94E43840915B0850915C08B5
:108C400060915D0870915E08CB01BA0120E031E0CF
:108C500040E050E00E94085628A739A74AA75BA722
:108C600020935B0830935C0840935D0850935E0846
:108C70002090620830906308409064085090650826
:108C8000C201B10120E031E040E050E00E9408560E
:108C900019012A0120936208309363084093640805
:108CA00050936508E090EB07FF2400E010E020916E
:108CB0005504309156044091570450915804C8010E
:108CC000B7010E94945520E031E040E050E00E945E
:108CD000085659016A012093550430935604409375
:108CE0005704509358042091590430915A044091EC
:108CF0005B0450915C04C801B7010E94945520E0C8
:108D000031E040E050E00E94085639014A012093CA
:108D1000590430935A0440935B0450935C0460916F
:108D20005D0470915E0480915F049091600420E086
:108D300031E040E050E00E94085620935D043093FB
:108D40005E0440935F0450936004E0900608FF24A3
:108D500000E010E068A579A58AA59BA56A197B09A2
:108D60008C099D09A80197010E9408562093D704F9
:108D70003093D8044093D9045093DA04CA01B9015E
:108D800020E031E040E050E00E9408566901309355
:108D9000A5042093A404C201B101661977098809CA
:108DA0009909A80197010E940856CA01B90120E05B
:108DB00031E040E050E00E940856B9013093A3042E
:108DC0002093A2048091BA049091BB048134910550
:108DD000ACF48091BC049091BD048134910574F48D
:108DE000E091DA07F0E0EE0FFF1FEB55F84F01902E
:108DF000F081E02DF7FD17C77A972CF08091E808F5
:108E00008F3F09F4C8C660914E0870914F08809159
:108E100050089091510820E031E040E050E00E947D
:108E2000085620934E0830934F08409350085093B3
:108E3000510860913E0870913F08809140089091E0
:108E4000410820E031E040E050E00E9408562093C5
:108E50003E0830933F084093400850934108E9A0F2
:108E6000FAA00BA11CA169817A818B819C81E61AF1
:108E7000F70A080B190BE092F804F092F90400933A
:108E8000FA041093FB04AD8CBE8CCF8CD8A08D81DE
:108E90009E81AF81B885A81AB90ACA0ADB0AA092D6
:108EA000F404B092F504C092F604D092F704E09274
:108EB000F004F092F1040093F2041093F304A092F2
:108EC000EC04B092ED04C092EE04D092EF048091D5
:108ED000690490916A04A0916B04B0916C048E199E
:108EE0009F09A00BB10B8093690490936A04A0932F
:108EF0006B04B0936C048091710490917204A09102
:108F00007304B09174048A199B09AC09BD0980935C
:108F1000710490937204A0937304B093740420912D
:108F20008A0430918B042138310594F08091330408
:108F3000909134040196909334048093330480918B
:108F40006608909167080196909367088093660879
:108F500020583F4F94F4809133049091340401974A
:108F6000909334048093330480916608909167084D
:108F70000197909367088093660810928B04109273
:108F80008A0481E090E09093CE048093CD04809198
:108F9000C5049091C604A091C704B091C80428A547
:108FA00039A54AA55BA5821B930BA40BB50B815E6B
:108FB000914BAF4FBF4F8F539C49A040B04008F436
:108FC00057C49090E90848E149150CF453C4109235
:108FD000CE041092CD0488EE93E090939603809394
:108FE00095039C8D692E77248091CD049091CE04B9
:108FF0006816790624F47092CE046092CD0499200C
:1090000079F0292D332727FD30958091CD0490915B
:10901000CE042817390724F43093CE042093CD04CE
:10902000A1E0EA16A4E0FA06A0E00A07A0E01A0709
:1090300074F080912F04909130042091CD043091F0
:10904000CE04820F931F9093300480932F04B0E0DE
:10905000EB16BCEFFB06BFEF0B07BFEF1B0774F46B
:1090600080912F04909130042091CD043091CE0452
:10907000821B930B9093300480932F0481E090E047
:109080009093CE048093CD041092D3041092D40414
:109090001092D5041092D6048091C1049091C2041C
:1090A000A091C304B091C40482199309A409B5091D
:1090B000815E914BAF4FBF4F8F539C49A040B04052
:1090C00008F47CC3F8E1F9150CF478C31092CE04CF
:1090D0001092CD0488EE93E09093960380939503CD
:1090E0008091CD049091CE046816790624F4709294
:1090F000CE046092CD04992079F0292D332727FDE5
:1091000030958091CD049091CE042817390724F42E
:109110003093CE042093CD0471E0A71674E0B70617
:1091200070E0C70670E0D70674F08091310490912A
:1091300032042091CD043091CE04820F931F90937E
:1091400032048093310480E0A8168CEFB8068FEFCC
:10915000C8068FEFD80614F00C94033980913104BF
:10916000909132042091CD043091CE04821B930B58
:1091700090933204809331040C94033997010C943A
:10918000344068010C940E3A60E070E000E010E0BA
:109190000C945A3A8091A203823310F40C94D83F75
:1091A00081E08093880488EC8093B70320919E042B
:1091B00030919F04FDCB4D5F5F4F0C94A93C4D5FF8
:1091C0005F4F0C94F33C1092040510920505109229
:1091D00006051092070510920005109201051092E5
:1091E0000205109203058A3F910511F00C94663B2D
:1091F00081E08093DB041092FC041092FD04109235
:10920000FE041092FF0410927504109276041092DE
:109210007704109278040C94663BA0E01092AB04A3
:109220000C943C3E1092AA040C945D3E1092A9044A
:109230000C941D3E88E99AE39093E6038093E5033E
:1092400080E09CE090930A03809309030C944F37CD
:10925000D094C194D108D3940C94093A10950195F7
:109260001F4F0C94FA3988279927881999090C946B
:109270002B3A31960C942940C401B30122E030E02E
:1092800040E050E00E94085639014A01C601B5018C
:1092900022E030E040E050E00E94085659016A01A7
:1092A00028CA10929C0410929B040C94693D9095DE
:1092B00081959F4F0C94843D03960C947C3D0396BE
:1092C000959587959595879597FD02C00C94B33D2C
:1092D000909581959F4F0C94B33D0894E108F10857
:1092E000F0929603E09295030C94943E4B2F50E03D
:1092F0005B874A878091A604882311F40C94C737B2
:109300000C94B6371092E8040C945A3C1092E7047F
:109310000C949E370396A7CA039697CA03960C949B
:10932000C03D909581959F4F0C94BC3D03960C9445
:10933000913D909581959F4F0C948D3D84EF91E0E8
:1093400090939603809395030C94943E215E3F4F37
:109350000C94A63A695F7F4F0C947A3A442737FD04
:109360004095542F8091750490917604A0917704D4
:10937000B0917804820F931FA41FB51F80937504CA
:1093800090937604A0937704B09378040C94943E61
:1093900080819181855B9F4F0CF005C38091E9042A
:1093A0008F5F8093E904893C10F40C94393C4C3075
:1093B00008F024C429988FEF04E010E0D801082EAB
:1093C0000E942B5610929D041092E9041092BF0443
:1093D0001092BE040E9462328091390490913A0446
:1093E00097FD28C4892F990F990BD801082E0E9448
:1093F0002B568091390490913A0460E071E00E940C
:10940000D3550F5F1F4FD801082E0E942B560150D5
:10941000104020913B0430913C0437FD08C4832F59
:10942000992787FD9A950E5F1F4FD801082E0E943D
:109430002B5680913B0490913C0460E071E00E94C7
:10944000D3550F5F1F4FD801082E0E942B56035093
:10945000104060913F0470914004809141049091CC
:1094600042040E94A9549B0177FDE7C3832F9927EB
:1094700087FD9A950C5F1F4FD801082E0E942B562E
:1094800060913F04709140048091410490914204A6
:109490000E94A954DC01CB0160E071E00E94D35529
:1094A0000F5F1F4FD801082E0E942B560E94BC024E
:1094B0000E94DF348091D907A82FB0E0AA0FBB1F0C
:1094C0000C94393C88EC90E09093E6038093E5039C
:1094D000B101882777FD8095982F2C893D894E8989
:1094E0005F890E9494552B013C0160937E08709324
:1094F0007F0880938008909381080E9408563093DB
:109500008404209383041092DB040C94753A88EC55
:109510008093E80481E090E09093BF048093BE04C0
:1095200081E080939D041092FC041092FD0410923F
:10953000FE041092FF0410927504109276041092AB
:109540007704109278041092790410927A041092A1
:109550007B0410927C04E090EB07FF2400E010E015
:109560006091720870917308882777FD8095982F15
:10957000A80197010E949455609365047093660456
:1095800080936704909368046091820870918308C7
:10959000882777FD8095982F0E94945560936D04DD
:1095A00070936E0480936F049093700480914504CF
:1095B00090914604A0914704B091480480936904B7
:1095C00090936A04A0936B04B0936C0480914D0453
:1095D00090914E04A0914F04B09150048093710477
:1095E00090937204A0937304B093740410920405D2
:1095F00010920505109206051092070510920005BD
:109600001092010510920205109203058091C0048A
:1096100088608093C0040C945A3CADA5BEA5B0935D
:10962000E604A093E5040C94EF3FE090EB07FF24E1
:1096300000E010E069817A818B819C81A80197010B
:109640000E94085659016A0180917208909173082E
:10965000AA2797FDA095BA2FA81AB90ACA0ADB0A49
:109660006D817E818F819885A80197010E9408569F
:1096700079018A018091820890918308AA2797FD39
:10968000A095BA2FE81AF90A0A0B1B0BC601B501FF
:1096900020E130E040E050E00E94085639014A01E4
:1096A000C801B70120E130E040E050E00E940856D8
:1096B00059016A018091BA049091BB0481349105EB
:1096C0003CF48091BC049091BD0481349105A4F0D8
:1096D000C401B30123E030E040E050E00E940856AE
:1096E00039014A01C601B50123E030E040E050E015
:1096F0000E94085659016A01E091DA07F0E0EE0F86
:10970000FF1FEB55F84F0190F081E02DF7FD29C2C6
:109710007A97A4F0C401B30123E030E040E050E0C8
:109720000E94085639014A01C601B50123E030E024
:1097300040E050E00E94085659016A0171E2671644
:109740007104810491040CF409C180E2682E712C2B
:10975000812C912C91E2A916B104C104D1040CF41E
:10976000E8C010E2A12EB12CC12CD12C18C88091D8
:10977000180390911903895E934008F408C19091F1
:109780000B049A5090930B0480919007891B87BD1E
:109790008CE291E09093E6038093E5038AEF809357
:1097A000B70320919E0430919F0402C9039623C9F8
:1097B000215F3F4F75C92F5F3F4F5CC921E0A21663
:1097C00020E1B20620E0C20620E0D2060CF44DC132
:1097D0008091CA04882309F40DC2D601C50149E06D
:1097E000B595A795979587954A95D1F7019690934A
:1097F000CE048093CD04D601C50133E0B595A7957D
:10980000979587953A95D1F78093D3049093D40494
:10981000A093D504B093D60489589341A040B0409A
:1098200064F088E893E1A0E0B0E08093D3049093E3
:10983000D404A093D504B093D6046091D30470915E
:10984000D4048091D5049091D60420E031E040E02A
:1098500050E00E9408568091A2049091A304820FC8
:10986000931F9093A3048093A2041092C90438CC50
:109870009090E90851E0E51650E1F50650E0050743
:1098800050E015070CF493C08091CC04882309F4B0
:10989000ADC1D801C70179E0B595A7959795879592
:1098A0007A95D1F701969093CE048093CD04D80198
:1098B000C70163E0B595A795979587956A95D1F708
:1098C0008093D7049093D804A093D904B093DA047A
:1098D00089589341A040B04064F088E893E1A0E04B
:1098E000B0E08093D7049093D804A093D904B093A8
:1098F000DA046091D7047091D8048091D9049091D2
:10990000DA0420E031E040E050E00E940856809107
:10991000A4049091A504820F931F9093A5048093B3
:10992000A4041092CB045DCBF095E195FF4F0C940D
:109930008743A0EEAA16AFEFBA06AFEFCA06AFEFA5
:10994000DA0614F00C94CF43B0EEAB2EBFEFBB2E73
:10995000BFEFCB2EBFEFDB2E0C94CF4380EE68160B
:109960008FEF78068FEF88068FEF98060CF0F2CE17
:1099700000EE602E0FEF702E0FEF802E0FEF902E67
:10998000E9CE87E090E0680E791E0C94CA3A809187
:109990001803909119038436910508F0E6C0909160
:1099A0000B04965FEFCE1092E9040C94393C1092B0
:1099B000CC0470E0E71670EFF7067FEF07077FEF44
:1099C00017070CF0AECF8091CB04882309F421C196
:1099D00088279927DC018E199F09A00BB10B59E04C
:1099E000B595A795979587955A95D1F70196909338
:1099F000CE048093CD04C801B70128E030E040E0F8
:109A000050E00E9408562093D7043093D804409326
:109A1000D9045093DA0428573C4E4F4F5F4F64F4FB
:109A200088E79CEEAFEFBFEF8093D7049093D80404
:109A3000A093D904B093DA046091D7047091D8044C
:109A40008091D9049091DA0420E031E040E050E0C8
:109A50000E9408568091A4049091A504820F931F40
:109A60009093A5048093A404BCCA1092CA0440E059
:109A7000A41640EFB4064FEFC4064FEFD4060CF027
:109A8000F4CE8091C904882309F4BFC088279927A0
:109A9000DC018A199B09AC09BD0929E0B595A79598
:109AA000979587952A95D1F701969093CE04809348
:109AB000CD04C601B50128E030E040E050E00E944E
:109AC00008562093D3043093D4044093D504509384
:109AD000D60428573C4E4F4F5F4F64F488E79CEE06
:109AE000AFEFBFEF8093D3049093D404A093D50439
:109AF000B093D6046091D3047091D4048091D504BE
:109B00009091D60420E031E040E050E00E940856F9
:109B10008091A2049091A304820F931F9093A304B9
:109B20008093A204DDCA0E94BC024CE567ED77E099
:109B30000E943A038091DF0780FF10C080911803D4
:109B400090911903875B934038F4809118039091AA
:109B500019038E5E924010F40E94FC1A0E94623239
:109B6000A5CCF095E195FF4FD3CD20919E04309187
:109B70009F04245130403093A1042093A0042C5E14
:109B80003F4F1092880481E08093B7030C94D8442F
:109B900041E00C94D53B9601D7FC42C03595279502
:109BA0003093A5042093A4049B0177FD36C035951E
:109BB00027953093A3042093A20425C98091D80748
:109BC000A82FB0E0AA0FBB1FFD01EB55F84F019085
:109BD000F081E02DF7FD34C0E734F10514F40C9466
:109BE000103C0C94B43B299A0C94963B81E08093F2
:109BF000CC0497CE81E08093CA0437CE299ADBCB80
:109C0000909581959F4F0C94183C81E08093C904F6
:109C100067CA81E08093CB04E4C92F5F3F4FC7CF71
:109C20002F5F3F4FBBCFF095E195FF4FE5C8215027
:109C30003F4FF5CB81509F4FD5CB21503F4F16CC96
:109C4000F095E195FF4FC8CF60926908AE960FB6C8
:109C5000F894DEBF0FBECDBFDF91CF911F910F9162
:109C6000FF90EF90DF90CF90BF90AF909F908F903C
:109C70007F906F905F904F903F902F9008958091CC
:109C8000280590912905A0912A05B0912B05809374
:109C9000300590933105A0933205B0933305809140
:109CA0002C0590912D05A0912E05B0912F05809344
:109CB000340590933505A0933605B0933705089584
:109CC0001092210510922005109223051092220572
:109CD000089584B1806A84B93D9A82E58CBD1DBC2B
:109CE000459A81E0809389088AEA80938D0883E809
:109CF00080938E088AE080938F08109291081092CA
:109D0000900810929308109292081092AF08109247
:109D1000B00888E48093B1088FE08093B20885E0B2
:109D20008093B3080895EF92FF920F931F93F894D6
:109D3000E090EB07FF24EE0CFF1CEE0CFF1C00274D
:109D4000F7FC0095102F60914504709146048091B6
:109D5000470490914804A80197010E940856309347
:109D600091082093900860914D0470914E04809169
:109D70004F0490915004A80197010E940856309317
:109D800093082093920860917E0870917F088091DB
:109D90008008909181082AE030E040E050E00E9485
:109DA00094552091B3033091B4034091B503509181
:109DB000B6030E9408563093990820939808E091C2
:109DC0003D04F0913E0480915F0890916008BF01CE
:109DD0000E94D355CB01880F991F860F971F9C01B6
:109DE000220F331F96FD22C135952795359527956E
:109DF000309395082093940880917A0890917B087D
:109E0000BF010E94D355CB01880F991F860F971F62
:109E10009C01220F331F96FD06C135952795359578
:109E20002795309397082093960810923E0410923D
:109E30003D041092600810925F0810927B08109207
:109E40007A0880918F088C3009F484C18D3008F431
:109E500065C08D3009F414C18E3009F4FCC07894CB
:109E60008091AF08882309F4D5C02091B5083091BE
:109E7000B608C90181509E4F8F5F934058F44091BE
:109E8000B7085091B808CA0181509E4F8F5F934028
:109E900008F4D4C08091BB089091BC0821E08936B9
:109EA000920724F49093820480938104809181042A
:109EB00090918204845E9D4F2091830430918404AC
:109EC000821B930B68E671E00E94D355845B90403F
:109ED00090938604809385042091BF083091C00838
:109EE0008091E5039091E6038217930728F480910F
:109EF0009A06882309F49DC08091B408873609F03A
:109F00004EC18091C1088093E8088091C208809377
:109F1000EA088091C3088093E90841C18A3009F4B6
:109F2000E0C08B3009F09BCFE091D907F0E0EE0F55
:109F3000FF1FEB55F84F0190F081E02D2FEFE13836
:109F4000F20714F4E1E8FFEFE038F10514F0EFE771
:109F5000F0E0E093A008E091DA07F0E0EE0FFF1FD9
:109F6000EB55F84F0190F081E02D4FEFE138F40709
:109F700014F4E1E8FFEFE038F10514F0EFE7F0E06A
:109F8000E093A108E091D807F0E0EE0FFF1FEB553A
:109F9000F84F0190F081E02D6FEFE138F60714F4EF
:109FA000E1E8FFEFE038F10514F0EFE7F0E0E093CF
:109FB000A208E091D707F0E0EE0FFF1FEB55F84F36
:109FC0000190F081E02D8FEFE138F80714F4E1E81B
:109FD000FFEFE038F10514F0EFE7F0E0E093A308BD
:109FE00080918C048093A40880918E048093A508AE
:109FF000809190048093A608809192048093A70892
:10A00000809194048093A80878948091AF08882365
:10A0100009F02BCF109221051092200510922305F4
:10A0200010922205BCC02D5F3F4FF7CE2D5F3F4FF2
:10A03000DBCE3093E6032093E5035ECF8091DF070C
:10A0400085FF28CF309321052093200550932305C9
:10A05000409322051FCF8091B0088093A008809183
:10A06000B1088093A1088091B2088093A2088091E2
:10A07000B3088093A308809100018093A408EFCED9
:10A08000809111088093A008809112088093A10804
:10A09000809113088093A208809114088093A308EC
:10A0A000809115088093A408809119088093A508D1
:10A0B00080911A088093A60880911B088093A708B6
:10A0C00080911E088093A80880911C088093A9089D
:10A0D00080911D088093AA0880911F088093AB0887
:10A0E000BECE8091AC048093A0088091AD04809393
:10A0F000A1088091AE048093A2088091AF04809360
:10A10000A3088091B0048093A4088091B104809347
:10A11000A5088091B2048093A6088091B30480932F
:10A12000A7088091C0048093A808837F8093C0040F
:10A1300080910E0390910F038093A9088091F007FE
:10A140008093AA08A2E0B0E00E942356802D80935D
:10A15000AB0885CE80919A068630F0F010929A0670
:10A1600085E08093A00880919E0490919F04909335
:10A17000A3088093A208809120088093A108809171
:10A1800016088093A408809117088093A5088091F1
:10A1900018088093A60863CE8093A008E4CF1F918F
:10A1A0000F91FF90EF90089580918908882309F41A
:10A1B0003BC045988DE898E090938B0880938A087F
:10A1C00090913805E92FF0E0E854FC4F80818093AE
:10A1D0008F089F5F90933805963010F010923805E5
:10A1E000109289080E94934E81E080938C080000B1
:10A1F000000000000000000000000000000000005F
:10A20000000000000000000000000000000000004E
:10A21000000000000000000000000000000080912D
:10A220008D088093AC088EBD08958091890888239D
:10A2300011F40DB407FE089584E08093E703459A76
:10A240009EB580913A05813009F43AC0813008F01A
:10A2500040C01092AE0890933905913809F45EC061
:10A2600020918C08203208F030C045980000000092
:10A2700000000000000000000000000000000000DE
:10A2800000000000000000000000000000000000CE
:10A29000000000000000000000000000E0918A08BB
:10A2A000F0918B08E20FF11D80818EBD808190912D
:10A2B000AC08890F8093AC082F5F20938C08089519
:10A2C000953519F110923A05CBCF81E0809389083A
:10A2D000F3CF823009F0C4CF8091AE08E82FF0E0D0
:10A2E000E253F74F90838F5F8093AE088A3138F046
:10A2F000809139059817B1F01092AF08E3CF8091A3
:10A300003905890F80933905ABCF809139058B5A78
:10A310008093390582E080933A05A2CF81E0809353
:10A320003A059ECFA4EBB8E0EEECF8E08AE10190AC
:10A330000D928150E1F781E08093AF08C3CF87B1E0
:10A340008C6087B94298439810923F0580E88093CB
:10A35000BE03109240058093BF030895809141058C
:10A360008150809341058F3F09F0089584E08093E8
:10A370004105809188048823B1F180913F05815087
:10A3800080933F058F3F09F473C042988091100875
:10A390008B3F68F080917508873E08F046C08A3090
:10A3A00030F480910F0887FD45C0439A089580914D
:10A3B00040058150809340058F3FB9F68091750824
:10A3C0008150809340058091BF03813009F468C0BB
:10A3D00086958093BF038091BF0390910F088923D6
:10A3E00021F74398089580914208843628F18739EF
:10A3F000D0F080913F05815080933F058F3F29F633
:10A4000080916108815080933F058091BE03813027
:10A4100009F44EC086958093BE038091BE0390914F
:10A42000F707892319F1429AB0CF80910F0888234A
:10A430000CF4BBCF4398089580913F0581508093E1
:10A440003F058F3F09F0A1CF809161088150809333
:10A450003F058091BE03813039F186958093BE031C
:10A460008091BE039091F6078923E9F642988DCF3B
:10A4700080916108815080933F058091BE038130B7
:10A4800059F086958093BE038091BE039091F507A5
:10A49000892361F3429A79CF80E88093BE03F4CF99
:10A4A00080E88093BF0397CF80E88093BE03D8CF26
:10A4B00080E88093BE03B1CF8091C9008F778093ED
:10A4C000C9008091C9008F7B8093C9008091C90029
:10A4D0008F7D8093C9005A9A52981092CD0084E1E2
:10A4E0008093CC008091C80082608093C80080E196
:10A4F0008093C9008091CA008F778093CA008091B1
:10A50000CA008F7B8093CA008091CA008F7D8093A0
:10A51000CA008091CA008F7E8093CA008091CA00D1
:10A52000877F8093CA008091C9008B7F8093C90088
:10A530008091CA0084608093CA008091CA008260C2
:10A540008093CA008091C80087FF06C08091CE002A
:10A550008091C80087FDFACF8091C9008068809300
:10A56000C90008951F920F920FB60F9211240F93F6
:10A570001F932F933F934F935F936F937F938F938B
:10A580009F93AF93BF93CF93DF93EF93FF9310917C
:10A59000CE008091C0039091C103019709F44DC092
:10A5A00080914205909143050E948E1220914A05A8
:10A5B00030914B052115310519F12130310509F490
:10A5C000EAC02230310509F4F9C02330310509F41D
:10A5D0005DC081E090E09093C1038093C00310922E
:10A5E000490510924805109245051092440587E0F0
:10A5F00090E00E948512909343058093420522C10A
:10A600008823A1F5C0914805D0914905609778F35A
:10A610008091440590914505892B11F4109279039E
:10A620001092490510924805109245051092440574
:10A6300010924B0510924A05DACF1092C103109286
:10A64000C00387E090E00E948512909343058093B9
:10A650004205109249051092480510924B05109240
:10A660004A051092470510924605ECC081E090E043
:10A6700090934B0580934A05C0914805D0914905B8
:10A680002196D0934905C0934805C0CF882309F08F
:10A69000A0CF82E090E090934B0580934A05C09153
:10A6A0004805D09149052196D0934905C0934805A6
:10A6B0002091460530914705F901F695E795F69505
:10A6C000E795EF70F0703196EB30F10508F09ECF12
:10A6D000812F90E0322F2227822B932B9370805072
:10A6E000924063E070E00E94D3558F01000F111F6C
:10A6F000F801EB55F84F808191819B01281B390BA4
:10A70000C90137FD9BC0069754F480919404883C9E
:10A7100008F08DC080919404865F80939404F801C2
:10A72000EB55F84F808191819C01220F331F280F38
:10A73000391F260F371F37FD7EC035952795359574
:10A740002795CB010196821793070CF067C0215023
:10A75000304080919404843B08F45AC0F801EB55D2
:10A76000F84F80819181A901481B590BCA0163E010
:10A7700070E00E94D355CB01880F991F860F971F59
:10A78000F801E554F84F918380830B55184FF80179
:10A79000318320833BCF882309F013CF82E090E000
:10A7A00090934B0580934A05C0914805D091490587
:10A7B0002196D0934905C093480528CF882309F0F6
:10A7C00004CF812F90E09093470580934605209118
:10A7D0004805309149052230310569F083E090E069
:10A7E00090934B0580934A05E9012196D093490542
:10A7F000C09348050BCF109245051092440517FFF2
:10A80000EDCF81E090E09093450580934405E6CF3D
:10A81000F801E554F84F11821082B7CF61507040B3
:10A82000261737070CF095CF2F5F3F4F92CF88EC5C
:10A830008093940474CF2D5F3F4F7FCF9095819587
:10A840009F4F61CFFF91EF91DF91CF91BF91AF917A
:10A850009F918F917F916F915F914F913F912F9138
:10A860001F910F910F900FBE0F901F901895FC0134
:10A870004150504030F001900616D1F73197CF018A
:10A8800008958827992708955058BB27AA270ED0E6
:10A8900011C102D130F007D120F031F49F3F11F403
:10A8A0001EF4F7C00EF4E095E7FBEDC0E92F13D1DD
:10A8B00080F3BA17620773078407950718F071F4DD
:10A8C0009EF52BC10EF4E0950B2EBA2FA02D0B0197
:10A8D000B90190010C01CA01A0011124FF27591BE5
:10A8E00099F0593F50F4503E68F11A16F040A22FEB
:10A8F000232F342F4427585FF3CF4695379527955C
:10A90000A795F0405395C9F77EF41F16BA0B620B5A
:10A91000730B840BBAF09150A1F0FF0FBB1F661FA1
:10A92000771F881FC2F70EC0BA0F621F731F841FE4
:10A9300048F4879577956795B795F7959E3F08F00A
:10A94000B3CF9395880F08F09927EE0F97958795C9
:10A95000089504D06894B111E1C00895C4D088F07E
:10A960009F5790F0B92F9927B751A0F0D1F0660FFB
:10A97000771F881F991F1AF0BA95C9F712C0B13016
:10A9800081F0CBD0B1E00895C8C0672F782F882719
:10A99000B85F39F0B93FCCF3869577956795B39555
:10A9A000D9F73EF490958095709561957F4F8F4FC4
:10A9B0009F4F0895E89409C097FB3EF490958095C9
:10A9C000709561957F4F8F4F9F4F9923A9F0F92F75
:10A9D00096E9BB279395F695879577956795B795F3
:10A9E000F111F8CFFAF4BB0F11F460FF1BC06F5FD9
:10A9F0007F4F8F4F9F4F16C0882311F096E911C0EB
:10AA0000772321F09EE8872F762F05C0662371F00B
:10AA100096E8862F70E060E02AF09A95660F771F1F
:10AA2000881FDAF7880F9695879597F9089507D0CC
:10AA300008F481E0089503D008F48FEF0895990F8A
:10AA40000008550FAA0BE0E8FEEF16161706E807F8
:10AA5000F907C0F012161306E407F50798F0621B19
:10AA6000730B840B950B39F40A2661F0232B242BEE
:10AA7000252B21F408950A2609F4A140A6958FEF0D
:10AA8000811D811D089597F99F6780E870E060E05F
:10AA900008959FEF80EC089500240A941616170677
:10AAA00018060906089500240A94121613061406BF
:10AAB00005060895092E0394000C11F4882352F022
:10AAC000BB0F40F4BF2B11F460FF04C06F5F7F4FDA
:10AAD0008F4F9F4F089557FD9058440F551F59F0C1
:10AAE0005F3F71F04795880F97FB991F61F09F3F7B
:10AAF00079F087950895121613061406551FF2CFA4
:10AB00004695F1DF08C0161617061806991FF1CFF3
:10AB100086957105610508940895E894BB2766271A
:10AB20007727CB0197F90895629FD001739FF001B9
:10AB3000829FE00DF11D649FE00DF11D929FF00DCD
:10AB4000839FF00D749FF00D659FF00D9927729F04
:10AB5000B00DE11DF91F639FB00DE11DF91FBD018F
:10AB6000CF0111240895991B79E004C0991F96170D
:10AB700008F0961B881F7A95C9F780950895AA1B3F
:10AB8000BB1B51E107C0AA1FBB1FA617B70710F0D8
:10AB9000A61BB70B881F991F5A95A9F7809590950A
:10ABA000BC01CD01089597FB092E07260AD077FD39
:10ABB00004D0E5DF06D000201AF4709561957F4F30
:10ABC0000895F6F7909581959F4F0895A1E21A2E6A
:10ABD000AA1BBB1BFD010DC0AA1FBB1FEE1FFF1F41
:10ABE000A217B307E407F50720F0A21BB30BE40B91
:10ABF000F50B661F771F881F991F1A9469F76095D8
:10AC00007095809590959B01AC01BD01CF01089591
:10AC100097FB092E05260ED057FD04D0D7DF0AD0AA
:10AC2000001C38F450954095309521953F4F4F4F7B
:10AC30005F4F0895F6F790958095709561957F4FD9
:10AC40008F4F9F4F0895F999FECFB2BDA1BDF89ADD
:10AC5000119600B40895F999FECFB2BDA1BD00BC14
:10AC600011960FB6F894FA9AF99A0FBE08950190CA
:0AAC7000F2DF1A94E1F70895FFCF18
:10AC7A000A010101FF6401C800416E676C654E69F3
:10AC8A00636B20202020202020416E676C65526F64
:10AC9A006C6C202020202020204163634E69636B66
:10ACAA00202020202020202020416363526F6C6CDA
:10ACBA002020202020202020204779726F476965B4
:10ACCA00722020202020202020486967687420569E
:10ACDA00616C756520202020204163635A20202062
:10ACEA00202020202020202020476173202020209F
:10ACFA00202020202020202020436F6D7061737354
:10AD0A002056616C7565202020566F6C74616765EA
:10AD1A00202020202020202020456D7066616E674B
:10AD2A002020202020202020204779726F204B6F7E
:10AD3A006D70617373202020204D6F746F722046EE
:10AD4A00726F6E7420202020204D6F746F72205213
:10AD5A006561722020202020204D6F746F72204C74
:10AD6A006566742020202020204D6F746F72205257
:10AD7A00696768742020202020202020202020209D
:10AD8A0020202020202020202020202020202020B9
:10AD9A0020202020202020202020202020202020A9
:10ADAA002020202020202020204D4B334D61672079
:10ADBA0043616C537461746520536572766F202009
:10ADCA002020202020202020202020202020202079
:10ADDA002020202020202020202020202020202069
:10ADEA002020202020202020202020202020202059
:10ADFA002020202020202020202020202020202049
:10AE0A002020202020202020202020202020202038
:10AE1A002020202020202020202020202020202028
:10AE2A002020202020202020204B616C6D616E5F45
:10AE3A004D617844726966742020202020202020E9
:10AE4A0020202020202020202020202020202020F8
:10AE5A002020202020202020204750535F4E696365
:10AE6A006B20202020202020204750535F526F6CF7
:10AE7A006C2020202020202020FFFFFC01016400FC
:10AE8A00C409C409007D0000FF0373737301010242
:10AE9A00030405060708090A48616C6C6F205765A8
:10AEAA006C740000000000000000000000000000B8
:10AEBA000000000000000000000000000000000088
:10AECA000000000000000000000000000000000078
:10AEDA000000000000000000000000000000000068
:10AEEA0000000000000000000B01426567696E6EF9
:10AEFA00657200004E6F726D616C000053706F7264
:10AF0A007400006400F40190D0030090D00300386C
:10AF1A000130FB103A40089696020A64465A4140AC
:10AF2A0064ECFF0B050000640A0B0D0B0C0E01010B
:02AF3A00010014
:00000001FF
/branches/v0.72p kmpec/Flight-Ctrl_MEGA644_V0_72p.lss
0,0 → 1,17220
 
Flight-Ctrl_MEGA644_V0_72p.elf: file format elf32-avr
 
Sections:
Idx Name Size VMA LMA File off Algn
0 .data 000002c2 00800100 0000ac7a 0000ad0e 2**0
CONTENTS, ALLOC, LOAD, DATA
1 .text 0000ac7a 00000000 00000000 00000094 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
2 .bss 00000529 008003c2 0000af3c 0000afd0 2**0
ALLOC
3 .eeprom 00000800 00810000 00810000 0000afd0 2**0
CONTENTS, ALLOC, LOAD, DATA
4 .stab 00000378 00000000 00000000 0000b7d0 2**2
CONTENTS, READONLY, DEBUGGING
5 .stabstr 0000005f 00000000 00000000 0000bb48 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
 
00000000 <__vectors>:
0: 0c 94 91 02 jmp 0x522 ; 0x522 <__ctors_end>
4: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
8: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
c: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
10: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
14: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
18: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
1c: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
20: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
24: 0c 94 fd 12 jmp 0x25fa ; 0x25fa <__vector_9>
28: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
2c: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
30: 0c 94 d7 22 jmp 0x45ae ; 0x45ae <__vector_12>
34: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
38: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
3c: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
40: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
44: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
48: 0c 94 af 11 jmp 0x235e ; 0x235e <__vector_18>
4c: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
50: 0c 94 be 06 jmp 0xd7c ; 0xd7c <__vector_20>
54: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
58: 0c 94 86 06 jmp 0xd0c ; 0xd0c <__vector_22>
5c: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
60: 0c 94 ff 15 jmp 0x2bfe ; 0x2bfe <__vector_24>
64: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
68: 0c 94 e4 21 jmp 0x43c8 ; 0x43c8 <__vector_26>
6c: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
70: 0c 94 b2 52 jmp 0xa564 ; 0xa564 <__vector_28>
74: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
78: 0c 94 ae 02 jmp 0x55c ; 0x55c <__bad_interrupt>
7c: 70 19 sub r23, r0
7e: 7c 19 sub r23, r12
80: 11 18 sub r1, r1
82: 1d 18 sub r1, r13
84: 37 18 sub r3, r7
86: 32 16 cp r3, r18
88: e0 17 cp r30, r16
8a: f2 17 cp r31, r18
8c: 2d 17 cp r18, r29
8e: 5d 16 cp r5, r29
90: 32 16 cp r3, r18
92: 51 18 sub r5, r1
94: 62 18 sub r6, r2
96: 7c 18 sub r7, r12
98: 9c 18 sub r9, r12
9a: bc 18 sub r11, r12
9c: 16 19 sub r17, r6
9e: 4e 16 cp r4, r30
a0: 65 22 and r6, r21
a2: 7b 22 and r7, r27
a4: 51 22 and r5, r17
a6: 95 22 and r9, r21
a8: 70 22 and r7, r16
aa: 09 22 and r0, r25
ac: 9c 22 and r9, r28
ae: 36 22 and r3, r22
b0: 23 22 and r2, r19
b2: 6c 22 and r6, r28
b4: 60 22 and r6, r16
b6: 27 22 and r2, r23
b8: 2b 22 and r2, r27
ba: 23 22 and r2, r19
bc: 91 22 and r9, r17
be: 8c 22 and r8, r28
c0: 27 22 and r2, r23
c2: 2b 22 and r2, r27
c4: 23 22 and r2, r19
c6: 88 22 and r8, r24
c8: 5b 22 and r5, r27
ca: 27 22 and r2, r23
cc: 46 22 and r4, r22
 
000000ce <__c.2448>:
ce: 0a 0a 0d 00 ....
 
000000d2 <__c.2446>:
d2: 4e 65 75 74 72 61 6c 00 Neutral.
 
000000da <__c.2444>:
da: 48 65 61 64 69 6e 67 48 6f 6c 64 00 HeadingHold.
 
000000e6 <__c.2442>:
e6: 0a 0d 53 74 65 75 65 72 75 6e 67 3a 20 00 ..Steuerung: .
 
000000f4 <__c.2440>:
f4: 4f 4b 0a 0d 00 OK...
 
000000f9 <__c.2435>:
f9: 0a 0d 41 62 67 6c 65 69 63 68 20 4c 75 66 74 64 ..Abgleich Luftd
109: 72 75 63 6b 73 65 6e 73 6f 72 2e 2e 00 rucksensor...
 
00000116 <__c.2433>:
116: 0a 0d 42 65 6e 75 74 7a 65 20 50 61 72 61 6d 65 ..Benutze Parame
126: 74 65 72 73 61 74 7a 20 25 64 00 tersatz %d.
 
00000131 <__c.2431>:
131: 0a 0d 41 43 43 20 6e 69 63 68 74 20 61 62 67 65 ..ACC nicht abge
141: 67 6c 69 63 68 65 6e 21 00 glichen!.
 
0000014a <__c.2425>:
14a: 3a 20 47 65 6e 65 72 61 74 69 6e 67 20 44 65 66 : Generating Def
15a: 61 75 6c 74 2d 50 61 72 61 6d 65 74 65 72 20 75 ault-Parameter u
16a: 73 69 6e 67 20 6f 6c 64 20 53 74 69 63 6b 20 53 sing old Stick S
17a: 65 74 74 69 6e 67 73 00 ettings.
 
00000182 <__c.2421>:
182: 0a 0d 49 6e 69 74 2e 20 45 45 50 52 4f 4d 00 ..Init. EEPROM.
 
00000191 <__c.2419>:
191: 0a 0d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ..==============
1a1: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d ================
...
 
000001b2 <__c.2416>:
1b2: 0a 0d 46 6c 69 67 68 74 43 6f 6e 74 72 6f 6c 0a ..FlightControl.
1c2: 0d 48 61 72 64 77 61 72 65 3a 25 64 2e 25 64 0a .Hardware:%d.%d.
1d2: 0d 53 6f 66 74 77 61 72 65 3a 56 25 64 2e 25 64 .Software:V%d.%d
1e2: 25 63 20 00 %c .
 
000001e6 <__c.2396>:
1e6: 2e 00 ..
 
000001e8 <__c.2493>:
1e8: 48 69 3a 25 34 69 20 20 43 66 3a 25 34 69 20 00 Hi:%4i Cf:%4i .
 
000001f8 <__c.2491>:
1f8: 47 73 3a 25 34 69 20 20 47 69 3a 25 34 69 20 00 Gs:%4i Gi:%4i .
 
00000208 <__c.2489>:
208: 4e 69 3a 25 34 69 20 20 52 6f 3a 25 34 69 20 00 Ni:%4i Ro:%4i .
 
00000218 <__c.2487>:
218: 45 78 74 65 72 6e 43 6f 6e 74 72 6f 6c 20 20 00 ExternControl .
 
00000228 <__c.2484>:
228: 52 61 6e 67 65 3a 25 33 69 2d 25 33 69 00 Range:%3i-%3i.
 
00000236 <__c.2482>:
236: 53 74 65 6c 6c 75 6e 67 3a 20 25 33 69 00 Stellung: %3i.
 
00000244 <__c.2480>:
244: 53 65 74 70 6f 69 6e 74 20 20 25 33 69 00 Setpoint %3i.
 
00000252 <__c.2478>:
252: 53 65 72 76 6f 20 20 00 Servo .
 
0000025a <__c.2475>:
25a: 50 6f 74 69 34 3a 20 20 25 33 69 00 Poti4: %3i.
 
00000266 <__c.2473>:
266: 50 6f 74 69 33 3a 20 20 25 33 69 00 Poti3: %3i.
 
00000272 <__c.2471>:
272: 50 6f 74 69 32 3a 20 20 25 33 69 00 Poti2: %3i.
 
0000027e <__c.2469>:
27e: 50 6f 74 69 31 3a 20 20 25 33 69 00 Poti1: %3i.
 
0000028a <__c.2466>:
28a: 53 74 61 72 74 3a 20 20 20 20 20 25 35 69 00 Start: %5i.
 
00000299 <__c.2464>:
299: 4d 65 73 73 77 65 72 74 3a 20 20 25 35 69 00 Messwert: %5i.
 
000002a8 <__c.2462>:
2a8: 52 69 63 68 74 75 6e 67 3a 20 20 25 35 69 00 Richtung: %5i.
 
000002b7 <__c.2460>:
2b7: 4b 6f 6d 70 61 73 73 20 20 20 20 20 20 20 00 Kompass .
 
000002c6 <__c.2457>:
2c6: 45 6d 70 66 2e 50 65 67 65 6c 3a 25 35 69 00 Empf.Pegel:%5i.
 
000002d5 <__c.2455>:
2d5: 53 70 61 6e 6e 75 6e 67 3a 20 20 25 35 69 00 Spannung: %5i.
 
000002e4 <__c.2452>:
2e4: 48 6f 63 68 20 25 34 69 20 28 25 33 69 29 00 Hoch %4i (%3i).
 
000002f3 <__c.2450>:
2f3: 52 6f 6c 6c 20 25 34 69 20 28 25 33 69 29 00 Roll %4i (%3i).
 
00000302 <__c.2448>:
302: 4e 69 63 6b 20 25 34 69 20 28 25 33 69 29 00 Nick %4i (%3i).
 
00000311 <__c.2446>:
311: 41 43 43 20 2d 20 53 65 6e 73 6f 72 00 ACC - Sensor.
 
0000031e <__c.2443>:
31e: 47 69 65 72 20 25 34 69 20 28 25 33 69 29 28 25 Gier %4i (%3i)(%
32e: 33 69 29 00 3i).
 
00000332 <__c.2441>:
332: 52 6f 6c 6c 20 25 34 69 20 28 25 33 69 29 28 25 Roll %4i (%3i)(%
342: 33 69 29 00 3i).
 
00000346 <__c.2439>:
346: 4e 69 63 6b 20 25 34 69 20 28 25 33 69 29 28 25 Nick %4i (%3i)(%
356: 33 69 29 00 3i).
 
0000035a <__c.2437>:
35a: 47 69 65 72 20 25 34 69 20 28 25 33 69 29 00 Gier %4i (%3i).
 
00000369 <__c.2435>:
369: 52 6f 6c 6c 20 25 34 69 20 28 25 33 69 2e 25 78 Roll %4i (%3i.%x
379: 29 00 ).
 
0000037b <__c.2433>:
37b: 4e 69 63 6b 20 25 34 69 20 28 25 33 69 2e 25 78 Nick %4i (%3i.%x
38b: 29 00 ).
 
0000038d <__c.2431>:
38d: 47 69 65 72 20 25 34 69 20 28 25 33 69 29 00 Gier %4i (%3i).
 
0000039c <__c.2429>:
39c: 52 6f 6c 6c 20 25 34 69 20 28 25 33 69 2e 25 69 Roll %4i (%3i.%i
3ac: 29 00 ).
 
000003ae <__c.2427>:
3ae: 4e 69 63 6b 20 25 34 69 20 28 25 33 69 2e 25 69 Nick %4i (%3i.%i
3be: 29 00 ).
 
000003c0 <__c.2425>:
3c0: 47 79 72 6f 20 2d 20 53 65 6e 73 6f 72 00 Gyro - Sensor.
 
000003ce <__c.2422>:
3ce: 50 33 3a 25 34 69 20 20 50 34 3a 25 34 69 20 00 P3:%4i P4:%4i .
 
000003de <__c.2420>:
3de: 50 31 3a 25 34 69 20 20 50 32 3a 25 34 69 20 00 P1:%4i P2:%4i .
 
000003ee <__c.2418>:
3ee: 47 73 3a 25 34 69 20 20 47 69 3a 25 34 69 20 00 Gs:%4i Gi:%4i .
 
000003fe <__c.2416>:
3fe: 4e 69 3a 25 34 69 20 20 52 6f 3a 25 34 69 20 00 Ni:%4i Ro:%4i .
 
0000040e <__c.2413>:
40e: 4b 37 3a 25 34 69 20 20 4b 38 3a 25 34 69 20 00 K7:%4i K8:%4i .
 
0000041e <__c.2411>:
41e: 4b 35 3a 25 34 69 20 20 4b 36 3a 25 34 69 20 00 K5:%4i K6:%4i .
 
0000042e <__c.2409>:
42e: 4b 33 3a 25 34 69 20 20 4b 34 3a 25 34 69 20 00 K3:%4i K4:%4i .
 
0000043e <__c.2407>:
43e: 4b 31 3a 25 34 69 20 20 4b 32 3a 25 34 69 20 00 K1:%4i K2:%4i .
 
0000044e <__c.2404>:
44e: 4b 6f 6d 70 61 73 73 3a 20 20 20 25 35 69 00 Kompass: %5i.
 
0000045d <__c.2402>:
45d: 52 6f 6c 6c 3a 20 20 20 20 20 20 25 35 69 00 Roll: %5i.
 
0000046c <__c.2400>:
46c: 4e 69 63 6b 3a 20 20 20 20 20 20 25 35 69 00 Nick: %5i.
 
0000047b <__c.2398>:
47b: 61 6b 74 2e 20 4c 61 67 65 00 akt. Lage.
 
00000485 <__c.2395>:
485: 48 f6 68 65 6e 72 65 67 65 6c 75 6e 67 00 H.henregelung.
 
00000493 <__c.2393>:
493: 4b 65 69 6e 65 20 00 Keine .
 
0000049a <__c.2391>:
49a: 4f 66 66 20 20 20 20 20 20 3a 20 25 35 69 00 Off : %5i.
 
000004a9 <__c.2389>:
4a9: 4c 75 66 74 64 72 75 63 6b 3a 20 25 35 69 00 Luftdruck: %5i.
 
000004b8 <__c.2387>:
4b8: 53 6f 6c 6c 48 6f 65 68 65 3a 20 25 35 69 00 SollHoehe: %5i.
 
000004c7 <__c.2385>:
4c7: 48 6f 65 68 65 3a 20 20 20 20 20 25 35 69 00 Hoehe: %5i.
 
000004d6 <__c.2381>:
4d6: 28 63 29 20 48 6f 6c 67 65 72 20 42 75 73 73 00 (c) Holger Buss.
 
000004e6 <__c.2379>:
4e6: 53 65 74 74 69 6e 67 3a 20 25 64 20 00 Setting: %d .
 
000004f3 <__c.2377>:
4f3: 48 57 3a 56 25 64 2e 25 64 20 53 57 3a 25 64 2e HW:V%d.%d SW:%d.
503: 25 64 25 63 00 %d%c.
 
00000508 <__c.2375>:
508: 2b 20 4d 69 6b 72 6f 4b 6f 70 74 65 72 20 2b 00 + MikroKopter +.
 
00000518 <__c.2372>:
518: 5b 25 69 5d 00 [%i].
 
0000051d <__c.2370>:
51d: 5b 25 69 5d 00 [%i].
 
00000522 <__ctors_end>:
522: 11 24 eor r1, r1
524: 1f be out 0x3f, r1 ; 63
526: cf ef ldi r28, 0xFF ; 255
528: d0 e1 ldi r29, 0x10 ; 16
52a: de bf out 0x3e, r29 ; 62
52c: cd bf out 0x3d, r28 ; 61
 
0000052e <__do_copy_data>:
52e: 13 e0 ldi r17, 0x03 ; 3
530: a0 e0 ldi r26, 0x00 ; 0
532: b1 e0 ldi r27, 0x01 ; 1
534: ea e7 ldi r30, 0x7A ; 122
536: fc ea ldi r31, 0xAC ; 172
538: 02 c0 rjmp .+4 ; 0x53e <.do_copy_data_start>
 
0000053a <.do_copy_data_loop>:
53a: 05 90 lpm r0, Z+
53c: 0d 92 st X+, r0
 
0000053e <.do_copy_data_start>:
53e: a2 3c cpi r26, 0xC2 ; 194
540: b1 07 cpc r27, r17
542: d9 f7 brne .-10 ; 0x53a <.do_copy_data_loop>
 
00000544 <__do_clear_bss>:
544: 18 e0 ldi r17, 0x08 ; 8
546: a2 ec ldi r26, 0xC2 ; 194
548: b3 e0 ldi r27, 0x03 ; 3
54a: 01 c0 rjmp .+2 ; 0x54e <.do_clear_bss_start>
 
0000054c <.do_clear_bss_loop>:
54c: 1d 92 st X+, r1
 
0000054e <.do_clear_bss_start>:
54e: ab 3e cpi r26, 0xEB ; 235
550: b1 07 cpc r27, r17
552: e1 f7 brne .-8 ; 0x54c <.do_clear_bss_loop>
554: 0e 94 59 03 call 0x6b2 ; 0x6b2 <main>
558: 0c 94 3c 56 jmp 0xac78 ; 0xac78 <_exit>
 
0000055c <__bad_interrupt>:
55c: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
 
00000560 <SetActiveParamSetNumber>:
560: 86 30 cpi r24, 0x06 ; 6
562: 38 f0 brcs .+14 ; 0x572 <SetActiveParamSetNumber+0x12>
564: 85 e0 ldi r24, 0x05 ; 5
566: a2 e0 ldi r26, 0x02 ; 2
568: b0 e0 ldi r27, 0x00 ; 0
56a: 08 2e mov r0, r24
56c: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
570: 08 95 ret
572: 88 23 and r24, r24
574: c1 f7 brne .-16 ; 0x566 <SetActiveParamSetNumber+0x6>
576: 08 95 ret
 
00000578 <GetActiveParamSetNumber>:
578: a2 e0 ldi r26, 0x02 ; 2
57a: b0 e0 ldi r27, 0x00 ; 0
57c: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
580: 90 2d mov r25, r0
582: 89 2f mov r24, r25
584: 81 50 subi r24, 0x01 ; 1
586: 85 30 cpi r24, 0x05 ; 5
588: 18 f4 brcc .+6 ; 0x590 <GetActiveParamSetNumber+0x18>
58a: 89 2f mov r24, r25
58c: 90 e0 ldi r25, 0x00 ; 0
58e: 08 95 ret
590: 83 e0 ldi r24, 0x03 ; 3
592: 0e 94 b0 02 call 0x560 ; 0x560 <SetActiveParamSetNumber>
596: 83 e0 ldi r24, 0x03 ; 3
598: 90 e0 ldi r25, 0x00 ; 0
59a: 08 95 ret
 
0000059c <CalMk3Mag>:
59c: 80 91 d7 07 lds r24, 0x07D7
5a0: e8 2f mov r30, r24
5a2: f0 e0 ldi r31, 0x00 ; 0
5a4: ee 0f add r30, r30
5a6: ff 1f adc r31, r31
5a8: eb 55 subi r30, 0x5B ; 91
5aa: f8 4f sbci r31, 0xF8 ; 248
5ac: 80 81 ld r24, Z
5ae: 91 81 ldd r25, Z+1 ; 0x01
5b0: 8d 5e subi r24, 0xED ; 237
5b2: 9f 4f sbci r25, 0xFF ; 255
5b4: 14 f0 brlt .+4 ; 0x5ba <CalMk3Mag+0x1e>
5b6: 10 92 02 01 sts 0x0102, r1
5ba: 80 81 ld r24, Z
5bc: 91 81 ldd r25, Z+1 ; 0x01
5be: 8a 5b subi r24, 0xBA ; 186
5c0: 9f 4f sbci r25, 0xFF ; 255
5c2: ac f4 brge .+42 ; 0x5ee <CalMk3Mag+0x52>
5c4: 80 91 02 01 lds r24, 0x0102
5c8: 88 23 and r24, r24
5ca: 89 f4 brne .+34 ; 0x5ee <CalMk3Mag+0x52>
5cc: 81 e0 ldi r24, 0x01 ; 1
5ce: 80 93 02 01 sts 0x0102, r24
5d2: 20 91 9a 06 lds r18, 0x069A
5d6: 2f 5f subi r18, 0xFF ; 255
5d8: 20 93 9a 06 sts 0x069A, r18
5dc: 25 30 cpi r18, 0x05 ; 5
5de: 50 f0 brcs .+20 ; 0x5f4 <CalMk3Mag+0x58>
5e0: 88 ee ldi r24, 0xE8 ; 232
5e2: 93 e0 ldi r25, 0x03 ; 3
5e4: 90 93 e6 03 sts 0x03E6, r25
5e8: 80 93 e5 03 sts 0x03E5, r24
5ec: 08 c0 rjmp .+16 ; 0x5fe <CalMk3Mag+0x62>
5ee: 20 91 9a 06 lds r18, 0x069A
5f2: 05 c0 rjmp .+10 ; 0x5fe <CalMk3Mag+0x62>
5f4: 82 2f mov r24, r18
5f6: 0e 94 df 34 call 0x69be ; 0x69be <Piep>
5fa: 20 91 9a 06 lds r18, 0x069A
5fe: 82 2f mov r24, r18
600: 90 e0 ldi r25, 0x00 ; 0
602: 90 93 68 07 sts 0x0768, r25
606: 80 93 67 07 sts 0x0767, r24
60a: 08 95 ret
 
0000060c <WriteParameterSet>:
60c: 58 2f mov r21, r24
60e: 9b 01 movw r18, r22
610: 86 30 cpi r24, 0x06 ; 6
612: 60 f5 brcc .+88 ; 0x66c <.117_finished+0x28>
614: 88 23 and r24, r24
616: 49 f1 breq .+82 ; 0x66a <.117_finished+0x26>
618: a8 2f mov r26, r24
61a: b0 e0 ldi r27, 0x00 ; 0
61c: 11 97 sbiw r26, 0x01 ; 1
61e: 84 2f mov r24, r20
620: 90 e0 ldi r25, 0x00 ; 0
622: bd 01 movw r22, r26
624: 68 9f mul r22, r24
626: d0 01 movw r26, r0
628: 69 9f mul r22, r25
62a: b0 0d add r27, r0
62c: 78 9f mul r23, r24
62e: b0 0d add r27, r0
630: 11 24 eor r1, r1
632: ac 59 subi r26, 0x9C ; 156
634: bf 4f sbci r27, 0xFF ; 255
636: f9 01 movw r30, r18
 
00000638 <.117_start>:
638: 01 97 sbiw r24, 0x01 ; 1
63a: 24 f0 brlt .+8 ; 0x644 <.117_finished>
63c: 01 90 ld r0, Z+
63e: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
642: fa cf rjmp .-12 ; 0x638 <.117_start>
 
00000644 <.117_finished>:
644: 62 e6 ldi r22, 0x62 ; 98
646: 70 e0 ldi r23, 0x00 ; 0
648: db 01 movw r26, r22
64a: 04 2e mov r0, r20
64c: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
650: 88 e0 ldi r24, 0x08 ; 8
652: 62 51 subi r22, 0x12 ; 18
654: 70 40 sbci r23, 0x00 ; 0
656: db 01 movw r26, r22
658: f9 01 movw r30, r18
65a: 18 2e mov r1, r24
65c: 0e 94 37 56 call 0xac6e ; 0xac6e <__eeprom_write_block_1F2021>
660: 85 2f mov r24, r21
662: 0e 94 b0 02 call 0x560 ; 0x560 <SetActiveParamSetNumber>
666: 0e 94 9f 51 call 0xa33e ; 0xa33e <LED_Init>
66a: 08 95 ret
66c: 55 e0 ldi r21, 0x05 ; 5
66e: a4 e0 ldi r26, 0x04 ; 4
670: b0 e0 ldi r27, 0x00 ; 0
672: d5 cf rjmp .-86 ; 0x61e <WriteParameterSet+0x12>
 
00000674 <ReadParameterSet>:
674: a8 2f mov r26, r24
676: fb 01 movw r30, r22
678: 81 50 subi r24, 0x01 ; 1
67a: 85 30 cpi r24, 0x05 ; 5
67c: 18 f0 brcs .+6 ; 0x684 <ReadParameterSet+0x10>
67e: a2 e0 ldi r26, 0x02 ; 2
680: b0 e0 ldi r27, 0x00 ; 0
682: 02 c0 rjmp .+4 ; 0x688 <ReadParameterSet+0x14>
684: b0 e0 ldi r27, 0x00 ; 0
686: 11 97 sbiw r26, 0x01 ; 1
688: 84 2f mov r24, r20
68a: 90 e0 ldi r25, 0x00 ; 0
68c: 9d 01 movw r18, r26
68e: 28 9f mul r18, r24
690: d0 01 movw r26, r0
692: 29 9f mul r18, r25
694: b0 0d add r27, r0
696: 38 9f mul r19, r24
698: b0 0d add r27, r0
69a: 11 24 eor r1, r1
69c: ac 59 subi r26, 0x9C ; 156
69e: bf 4f sbci r27, 0xFF ; 255
 
000006a0 <.163_start>:
6a0: 01 97 sbiw r24, 0x01 ; 1
6a2: 24 f0 brlt .+8 ; 0x6ac <.163_finished>
6a4: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
6a8: 01 92 st Z+, r0
6aa: fa cf rjmp .-12 ; 0x6a0 <.163_start>
 
000006ac <.163_finished>:
6ac: 0e 94 9f 51 call 0xa33e ; 0xa33e <LED_Init>
6b0: 08 95 ret
 
000006b2 <main>:
6b2: 2f 92 push r2
6b4: 3f 92 push r3
6b6: 4f 92 push r4
6b8: 5f 92 push r5
6ba: 6f 92 push r6
6bc: 7f 92 push r7
6be: 8f 92 push r8
6c0: 9f 92 push r9
6c2: af 92 push r10
6c4: bf 92 push r11
6c6: cf 92 push r12
6c8: df 92 push r13
6ca: ef 92 push r14
6cc: ff 92 push r15
6ce: 0f 93 push r16
6d0: 1f 93 push r17
6d2: cf 93 push r28
6d4: df 93 push r29
6d6: cd b7 in r28, 0x3d ; 61
6d8: de b7 in r29, 0x3e ; 62
6da: 22 97 sbiw r28, 0x02 ; 2
6dc: 0f b6 in r0, 0x3f ; 63
6de: f8 94 cli
6e0: de bf out 0x3e, r29 ; 62
6e2: 0f be out 0x3f, r0 ; 63
6e4: cd bf out 0x3d, r28 ; 61
6e6: 14 b8 out 0x04, r1 ; 4
6e8: 15 b8 out 0x05, r1 ; 5
6ea: 18 9b sbis 0x03, 0 ; 3
6ec: f8 c2 rjmp .+1520 ; 0xcde <main+0x62c>
6ee: 19 9b sbis 0x03, 1 ; 3
6f0: f2 c2 rjmp .+1508 ; 0xcd6 <main+0x624>
6f2: 8d e0 ldi r24, 0x0D ; 13
6f4: 80 93 00 01 sts 0x0100, r24
6f8: 81 e8 ldi r24, 0x81 ; 129
6fa: 87 b9 out 0x07, r24 ; 7
6fc: 3e 9a sbi 0x07, 6 ; 7
6fe: 8f ef ldi r24, 0xFF ; 255
700: 88 b9 out 0x08, r24 ; 8
702: 8b e1 ldi r24, 0x1B ; 27
704: 84 b9 out 0x04, r24 ; 4
706: 81 e0 ldi r24, 0x01 ; 1
708: 85 b9 out 0x05, r24 ; 5
70a: 8e e3 ldi r24, 0x3E ; 62
70c: 8a b9 out 0x0a, r24 ; 10
70e: 57 9a sbi 0x0a, 7 ; 10
710: 87 e4 ldi r24, 0x47 ; 71
712: 8b b9 out 0x0b, r24 ; 11
714: 46 9a sbi 0x08, 6 ; 8
716: 84 b7 in r24, 0x34 ; 52
718: 87 7f andi r24, 0xF7 ; 247
71a: 84 bf out 0x34, r24 ; 52
71c: 80 91 60 00 lds r24, 0x0060
720: 88 61 ori r24, 0x18 ; 24
722: 80 93 60 00 sts 0x0060, r24
726: 10 92 60 00 sts 0x0060, r1
72a: 80 ed ldi r24, 0xD0 ; 208
72c: 97 e0 ldi r25, 0x07 ; 7
72e: 90 93 e6 03 sts 0x03E6, r25
732: 80 93 e5 03 sts 0x03E5, r24
736: 10 92 9a 04 sts 0x049A, r1
73a: 10 92 99 04 sts 0x0499, r1
73e: 10 92 aa 07 sts 0x07AA, r1
742: 10 92 a9 07 sts 0x07A9, r1
746: 10 92 98 04 sts 0x0498, r1
74a: 10 92 97 04 sts 0x0497, r1
74e: 10 92 96 04 sts 0x0496, r1
752: 10 92 95 04 sts 0x0495, r1
756: 20 91 00 01 lds r18, 0x0100
75a: 24 31 cpi r18, 0x14 ; 20
75c: 08 f4 brcc .+2 ; 0x760 <main+0xae>
75e: c5 c2 rjmp .+1418 ; 0xcea <main+0x638>
760: 88 e8 ldi r24, 0x88 ; 136
762: 94 e0 ldi r25, 0x04 ; 4
764: a0 e0 ldi r26, 0x00 ; 0
766: b0 e0 ldi r27, 0x00 ; 0
768: 80 93 b3 03 sts 0x03B3, r24
76c: 90 93 b4 03 sts 0x03B4, r25
770: a0 93 b5 03 sts 0x03B5, r26
774: b0 93 b6 03 sts 0x03B6, r27
778: 2a 30 cpi r18, 0x0A ; 10
77a: 09 f4 brne .+2 ; 0x77e <main+0xcc>
77c: 8b c2 rjmp .+1302 ; 0xc94 <main+0x5e2>
77e: 24 31 cpi r18, 0x14 ; 20
780: 09 f4 brne .+2 ; 0x784 <main+0xd2>
782: 88 c2 rjmp .+1296 ; 0xc94 <main+0x5e2>
784: 28 9a sbi 0x05, 0 ; 5
786: 0e 94 e6 12 call 0x25cc ; 0x25cc <Timer_Init>
78a: 0e 94 be 12 call 0x257c ; 0x257c <TIMER2_Init>
78e: 0e 94 65 08 call 0x10ca ; 0x10ca <UART_Init>
792: 0e 94 c2 22 call 0x4584 ; 0x4584 <rc_sum_init>
796: 0e 94 f9 15 call 0x2bf2 ; 0x2bf2 <ADC_Init>
79a: 0e 94 ad 21 call 0x435a ; 0x435a <i2c_init>
79e: 0e 94 69 4e call 0x9cd2 ; 0x9cd2 <SPI_MasterInit>
7a2: 78 94 sei
7a4: 20 91 00 01 lds r18, 0x0100
7a8: 82 2f mov r24, r18
7aa: 6a e0 ldi r22, 0x0A ; 10
7ac: 0e 94 b3 55 call 0xab66 ; 0xab66 <__udivmodqi4>
7b0: 49 2f mov r20, r25
7b2: 50 e0 ldi r21, 0x00 ; 0
7b4: 82 2f mov r24, r18
7b6: 0e 94 b3 55 call 0xab66 ; 0xab66 <__udivmodqi4>
7ba: 90 e0 ldi r25, 0x00 ; 0
7bc: 20 e7 ldi r18, 0x70 ; 112
7be: 30 e0 ldi r19, 0x00 ; 0
7c0: 3f 93 push r19
7c2: 2f 93 push r18
7c4: 28 e4 ldi r18, 0x48 ; 72
7c6: 30 e0 ldi r19, 0x00 ; 0
7c8: 3f 93 push r19
7ca: 2f 93 push r18
7cc: 1f 92 push r1
7ce: 1f 92 push r1
7d0: 5f 93 push r21
7d2: 4f 93 push r20
7d4: 9f 93 push r25
7d6: 8f 93 push r24
7d8: 82 eb ldi r24, 0xB2 ; 178
7da: 91 e0 ldi r25, 0x01 ; 1
7dc: 9f 93 push r25
7de: 8f 93 push r24
7e0: 1f 92 push r1
7e2: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
7e6: 80 91 c8 00 lds r24, 0x00C8
7ea: 2d b7 in r18, 0x3d ; 61
7ec: 3e b7 in r19, 0x3e ; 62
7ee: 23 5f subi r18, 0xF3 ; 243
7f0: 3f 4f sbci r19, 0xFF ; 255
7f2: 0f b6 in r0, 0x3f ; 63
7f4: f8 94 cli
7f6: 3e bf out 0x3e, r19 ; 62
7f8: 0f be out 0x3f, r0 ; 63
7fa: 2d bf out 0x3d, r18 ; 61
7fc: 80 32 cpi r24, 0x20 ; 32
7fe: 09 f4 brne .+2 ; 0x802 <main+0x150>
800: 20 c2 rjmp .+1088 ; 0xc42 <main+0x590>
802: 81 e9 ldi r24, 0x91 ; 145
804: 91 e0 ldi r25, 0x01 ; 1
806: 9f 93 push r25
808: 8f 93 push r24
80a: 1f 92 push r1
80c: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
810: 0f 90 pop r0
812: 0f 90 pop r0
814: 0f 90 pop r0
816: 80 91 00 01 lds r24, 0x0100
81a: 8c 30 cpi r24, 0x0C ; 12
81c: 08 f0 brcs .+2 ; 0x820 <main+0x16e>
81e: 0f c2 rjmp .+1054 ; 0xc3e <main+0x58c>
820: 29 9a sbi 0x05, 1 ; 5
822: 49 e0 ldi r20, 0x09 ; 9
824: 67 ed ldi r22, 0xD7 ; 215
826: 77 e0 ldi r23, 0x07 ; 7
828: 83 e0 ldi r24, 0x03 ; 3
82a: 0e 94 3a 03 call 0x674 ; 0x674 <ReadParameterSet>
82e: 71 e0 ldi r23, 0x01 ; 1
830: c7 2e mov r12, r23
832: 70 e0 ldi r23, 0x00 ; 0
834: d7 2e mov r13, r23
836: d6 01 movw r26, r12
838: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
83c: 80 2d mov r24, r0
83e: 8a 34 cpi r24, 0x4A ; 74
840: 09 f4 brne .+2 ; 0x844 <main+0x192>
842: b2 c0 rjmp .+356 ; 0x9a8 <main+0x2f6>
844: 0e 94 5b 36 call 0x6cb6 ; 0x6cb6 <DefaultKonstanten1>
848: 82 e8 ldi r24, 0x82 ; 130
84a: 91 e0 ldi r25, 0x01 ; 1
84c: 9f 93 push r25
84e: 8f 93 push r24
850: 1f 92 push r1
852: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
856: 1a 82 std Y+2, r1 ; 0x02
858: 19 82 std Y+1, r1 ; 0x01
85a: 0f 90 pop r0
85c: 0f 90 pop r0
85e: 0f 90 pop r0
860: 60 e5 ldi r22, 0x50 ; 80
862: a6 2e mov r10, r22
864: 60 e0 ldi r22, 0x00 ; 0
866: b6 2e mov r11, r22
868: 51 e5 ldi r21, 0x51 ; 81
86a: 85 2e mov r8, r21
86c: 50 e0 ldi r21, 0x00 ; 0
86e: 95 2e mov r9, r21
870: 42 e5 ldi r20, 0x52 ; 82
872: 64 2e mov r6, r20
874: 40 e0 ldi r20, 0x00 ; 0
876: 74 2e mov r7, r20
878: 33 e5 ldi r19, 0x53 ; 83
87a: 43 2e mov r4, r19
87c: 30 e0 ldi r19, 0x00 ; 0
87e: 53 2e mov r5, r19
880: 24 e5 ldi r18, 0x54 ; 84
882: 22 2e mov r2, r18
884: 20 e0 ldi r18, 0x00 ; 0
886: 32 2e mov r3, r18
888: 97 e5 ldi r25, 0x57 ; 87
88a: e9 2e mov r14, r25
88c: 90 e0 ldi r25, 0x00 ; 0
88e: f9 2e mov r15, r25
890: 09 81 ldd r16, Y+1 ; 0x01
892: 10 2f mov r17, r16
894: 1f 5f subi r17, 0xFF ; 255
896: 12 30 cpi r17, 0x02 ; 2
898: 09 f4 brne .+2 ; 0x89c <main+0x1ea>
89a: c1 c1 rjmp .+898 ; 0xc1e <main+0x56c>
89c: 13 30 cpi r17, 0x03 ; 3
89e: 09 f4 brne .+2 ; 0x8a2 <main+0x1f0>
8a0: fb c1 rjmp .+1014 ; 0xc98 <main+0x5e6>
8a2: 14 30 cpi r17, 0x04 ; 4
8a4: 08 f0 brcs .+2 ; 0x8a8 <main+0x1f6>
8a6: bb c1 rjmp .+886 ; 0xc1e <main+0x56c>
8a8: 80 91 00 01 lds r24, 0x0100
8ac: 84 31 cpi r24, 0x14 ; 20
8ae: 68 f0 brcs .+26 ; 0x8ca <main+0x218>
8b0: 85 e0 ldi r24, 0x05 ; 5
8b2: 80 93 ef 07 sts 0x07EF, r24
8b6: 10 92 07 08 sts 0x0807, r1
8ba: 8b e1 ldi r24, 0x1B ; 27
8bc: 80 93 eb 07 sts 0x07EB, r24
8c0: 8e e4 ldi r24, 0x4E ; 78
8c2: 80 93 04 08 sts 0x0804, r24
8c6: 80 93 05 08 sts 0x0805, r24
8ca: d5 01 movw r26, r10
8cc: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
8d0: 80 2d mov r24, r0
8d2: 8c 30 cpi r24, 0x0C ; 12
8d4: 08 f0 brcs .+2 ; 0x8d8 <main+0x226>
8d6: 5d c0 rjmp .+186 ; 0x992 <main+0x2e0>
8d8: d4 01 movw r26, r8
8da: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
8de: 80 2d mov r24, r0
8e0: 8c 30 cpi r24, 0x0C ; 12
8e2: 08 f0 brcs .+2 ; 0x8e6 <main+0x234>
8e4: 56 c0 rjmp .+172 ; 0x992 <main+0x2e0>
8e6: d3 01 movw r26, r6
8e8: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
8ec: 80 2d mov r24, r0
8ee: 8c 30 cpi r24, 0x0C ; 12
8f0: 08 f0 brcs .+2 ; 0x8f4 <main+0x242>
8f2: 4f c0 rjmp .+158 ; 0x992 <main+0x2e0>
8f4: d2 01 movw r26, r4
8f6: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
8fa: 80 2d mov r24, r0
8fc: 8c 30 cpi r24, 0x0C ; 12
8fe: 08 f0 brcs .+2 ; 0x902 <main+0x250>
900: 48 c0 rjmp .+144 ; 0x992 <main+0x2e0>
902: a0 e5 ldi r26, 0x50 ; 80
904: b0 e0 ldi r27, 0x00 ; 0
906: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
90a: 80 2d mov r24, r0
90c: 80 93 d7 07 sts 0x07D7, r24
910: a1 e5 ldi r26, 0x51 ; 81
912: b0 e0 ldi r27, 0x00 ; 0
914: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
918: 80 2d mov r24, r0
91a: 80 93 d8 07 sts 0x07D8, r24
91e: a2 e5 ldi r26, 0x52 ; 82
920: b0 e0 ldi r27, 0x00 ; 0
922: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
926: 80 2d mov r24, r0
928: 80 93 d9 07 sts 0x07D9, r24
92c: a3 e5 ldi r26, 0x53 ; 83
92e: b0 e0 ldi r27, 0x00 ; 0
930: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
934: 80 2d mov r24, r0
936: 80 93 da 07 sts 0x07DA, r24
93a: d1 01 movw r26, r2
93c: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
940: 80 2d mov r24, r0
942: 80 93 db 07 sts 0x07DB, r24
946: a5 e5 ldi r26, 0x55 ; 85
948: b0 e0 ldi r27, 0x00 ; 0
94a: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
94e: 80 2d mov r24, r0
950: 80 93 dc 07 sts 0x07DC, r24
954: a6 e5 ldi r26, 0x56 ; 86
956: b0 e0 ldi r27, 0x00 ; 0
958: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
95c: 80 2d mov r24, r0
95e: 80 93 dd 07 sts 0x07DD, r24
962: d7 01 movw r26, r14
964: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
968: 80 2d mov r24, r0
96a: 80 93 de 07 sts 0x07DE, r24
96e: 11 30 cpi r17, 0x01 ; 1
970: 09 f4 brne .+2 ; 0x974 <main+0x2c2>
972: 95 c1 rjmp .+810 ; 0xc9e <main+0x5ec>
974: 4c e5 ldi r20, 0x5C ; 92
976: 67 ed ldi r22, 0xD7 ; 215
978: 77 e0 ldi r23, 0x07 ; 7
97a: 81 2f mov r24, r17
97c: 0e 94 06 03 call 0x60c ; 0x60c <WriteParameterSet>
980: 0e 5f subi r16, 0xFE ; 254
982: 06 30 cpi r16, 0x06 ; 6
984: 48 f4 brcc .+18 ; 0x998 <main+0x2e6>
986: 89 81 ldd r24, Y+1 ; 0x01
988: 9a 81 ldd r25, Y+2 ; 0x02
98a: 01 96 adiw r24, 0x01 ; 1
98c: 9a 83 std Y+2, r25 ; 0x02
98e: 89 83 std Y+1, r24 ; 0x01
990: 7f cf rjmp .-258 ; 0x890 <main+0x1de>
992: 0e 94 c4 23 call 0x4788 ; 0x4788 <DefaultStickMapping>
996: ee cf rjmp .-36 ; 0x974 <main+0x2c2>
998: 83 e0 ldi r24, 0x03 ; 3
99a: 0e 94 b0 02 call 0x560 ; 0x560 <SetActiveParamSetNumber>
99e: 8a e4 ldi r24, 0x4A ; 74
9a0: d6 01 movw r26, r12
9a2: 08 2e mov r0, r24
9a4: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
9a8: a4 e0 ldi r26, 0x04 ; 4
9aa: b0 e0 ldi r27, 0x00 ; 0
9ac: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
9b0: 80 2d mov r24, r0
9b2: 85 30 cpi r24, 0x05 ; 5
9b4: 08 f0 brcs .+2 ; 0x9b8 <main+0x306>
9b6: 84 c1 rjmp .+776 ; 0xcc0 <main+0x60e>
9b8: 0e 94 bc 02 call 0x578 ; 0x578 <GetActiveParamSetNumber>
9bc: 4c e5 ldi r20, 0x5C ; 92
9be: 67 ed ldi r22, 0xD7 ; 215
9c0: 77 e0 ldi r23, 0x07 ; 7
9c2: 0e 94 3a 03 call 0x674 ; 0x674 <ReadParameterSet>
9c6: 0e 94 bc 02 call 0x578 ; 0x578 <GetActiveParamSetNumber>
9ca: 90 e0 ldi r25, 0x00 ; 0
9cc: 9f 93 push r25
9ce: 8f 93 push r24
9d0: 86 e1 ldi r24, 0x16 ; 22
9d2: 91 e0 ldi r25, 0x01 ; 1
9d4: 9f 93 push r25
9d6: 8f 93 push r24
9d8: 1f 92 push r1
9da: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
9de: 80 91 df 07 lds r24, 0x07DF
9e2: 0f 90 pop r0
9e4: 0f 90 pop r0
9e6: 0f 90 pop r0
9e8: 0f 90 pop r0
9ea: 0f 90 pop r0
9ec: 80 fd sbrc r24, 0
9ee: 31 c1 rjmp .+610 ; 0xc52 <main+0x5a0>
9f0: 08 ee ldi r16, 0xE8 ; 232
9f2: 13 e0 ldi r17, 0x03 ; 3
9f4: 0e 94 62 32 call 0x64c4 ; 0x64c4 <SetNeutral>
9f8: 80 91 00 01 lds r24, 0x0100
9fc: 8a 30 cpi r24, 0x0A ; 10
9fe: 09 f4 brne .+2 ; 0xa02 <main+0x350>
a00: 1c c1 rjmp .+568 ; 0xc3a <main+0x588>
a02: 84 31 cpi r24, 0x14 ; 20
a04: 09 f4 brne .+2 ; 0xa08 <main+0x356>
a06: 19 c1 rjmp .+562 ; 0xc3a <main+0x588>
a08: 28 9a sbi 0x05, 0 ; 5
a0a: 80 ed ldi r24, 0xD0 ; 208
a0c: 97 e0 ldi r25, 0x07 ; 7
a0e: 90 93 e6 03 sts 0x03E6, r25
a12: 80 93 e5 03 sts 0x03E5, r24
a16: 85 e5 ldi r24, 0x55 ; 85
a18: 80 93 9c 06 sts 0x069C, r24
a1c: 86 ee ldi r24, 0xE6 ; 230
a1e: 90 e0 ldi r25, 0x00 ; 0
a20: 9f 93 push r25
a22: 8f 93 push r24
a24: 1f 92 push r1
a26: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
a2a: 80 91 df 07 lds r24, 0x07DF
a2e: 0f 90 pop r0
a30: 0f 90 pop r0
a32: 0f 90 pop r0
a34: 82 ff sbrs r24, 2
a36: f6 c0 rjmp .+492 ; 0xc24 <main+0x572>
a38: 8a ed ldi r24, 0xDA ; 218
a3a: 90 e0 ldi r25, 0x00 ; 0
a3c: 9f 93 push r25
a3e: 8f 93 push r24
a40: 1f 92 push r1
a42: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
a46: 0f 90 pop r0
a48: 0f 90 pop r0
a4a: 0f 90 pop r0
a4c: 8e ec ldi r24, 0xCE ; 206
a4e: 90 e0 ldi r25, 0x00 ; 0
a50: 9f 93 push r25
a52: 8f 93 push r24
a54: 1f 92 push r1
a56: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
a5a: 0e 94 58 1b call 0x36b0 ; 0x36b0 <LcdClear>
a5e: 88 e8 ldi r24, 0x88 ; 136
a60: 93 e1 ldi r25, 0x13 ; 19
a62: 90 93 94 03 sts 0x0394, r25
a66: 80 93 93 03 sts 0x0393, r24
a6a: 81 e0 ldi r24, 0x01 ; 1
a6c: 80 93 9b 06 sts 0x069B, r24
a70: 0f 90 pop r0
a72: 0f 90 pop r0
a74: 0f 90 pop r0
a76: 80 91 e2 03 lds r24, 0x03E2
a7a: 88 23 and r24, r24
a7c: 09 f4 brne .+2 ; 0xa80 <main+0x3ce>
a7e: 71 c0 rjmp .+226 ; 0xb62 <main+0x4b0>
a80: 80 91 1d 03 lds r24, 0x031D
a84: 88 23 and r24, r24
a86: 09 f4 brne .+2 ; 0xa8a <main+0x3d8>
a88: 6c c0 rjmp .+216 ; 0xb62 <main+0x4b0>
a8a: 10 92 e2 03 sts 0x03E2, r1
a8e: 80 91 9a 06 lds r24, 0x069A
a92: 88 23 and r24, r24
a94: 09 f4 brne .+2 ; 0xa98 <main+0x3e6>
a96: 71 c0 rjmp .+226 ; 0xb7a <main+0x4c8>
a98: 0e 94 ce 02 call 0x59c ; 0x59c <CalMk3Mag>
a9c: 0e 94 a0 30 call 0x6140 ; 0x6140 <SendMotorData>
aa0: 20 91 00 01 lds r18, 0x0100
aa4: 2a 30 cpi r18, 0x0A ; 10
aa6: 09 f4 brne .+2 ; 0xaaa <main+0x3f8>
aa8: 71 c0 rjmp .+226 ; 0xb8c <main+0x4da>
aaa: 24 31 cpi r18, 0x14 ; 20
aac: 09 f4 brne .+2 ; 0xab0 <main+0x3fe>
aae: 6e c0 rjmp .+220 ; 0xb8c <main+0x4da>
ab0: 28 9a sbi 0x05, 0 ; 5
ab2: 80 91 05 01 lds r24, 0x0105
ab6: 88 23 and r24, r24
ab8: 09 f4 brne .+2 ; 0xabc <main+0x40a>
aba: 6e c0 rjmp .+220 ; 0xb98 <main+0x4e6>
abc: 81 50 subi r24, 0x01 ; 1
abe: 80 93 05 01 sts 0x0105, r24
ac2: 80 91 94 04 lds r24, 0x0494
ac6: 88 23 and r24, r24
ac8: 29 f0 breq .+10 ; 0xad4 <main+0x422>
aca: 80 91 94 04 lds r24, 0x0494
ace: 81 50 subi r24, 0x01 ; 1
ad0: 80 93 94 04 sts 0x0494, r24
ad4: 80 91 93 03 lds r24, 0x0393
ad8: 90 91 94 03 lds r25, 0x0394
adc: 89 2b or r24, r25
ade: 09 f4 brne .+2 ; 0xae2 <main+0x430>
ae0: 6c c0 rjmp .+216 ; 0xbba <main+0x508>
ae2: 80 91 93 03 lds r24, 0x0393
ae6: 90 91 94 03 lds r25, 0x0394
aea: 01 97 sbiw r24, 0x01 ; 1
aec: 90 93 94 03 sts 0x0394, r25
af0: 80 93 93 03 sts 0x0393, r24
af4: 2a 30 cpi r18, 0x0A ; 10
af6: 09 f4 brne .+2 ; 0xafa <main+0x448>
af8: 5e c0 rjmp .+188 ; 0xbb6 <main+0x504>
afa: 24 31 cpi r18, 0x14 ; 20
afc: 09 f4 brne .+2 ; 0xb00 <main+0x44e>
afe: 5b c0 rjmp .+182 ; 0xbb6 <main+0x504>
b00: 28 9a sbi 0x05, 0 ; 5
b02: 80 91 e2 03 lds r24, 0x03E2
b06: 88 23 and r24, r24
b08: 29 f0 breq .+10 ; 0xb14 <main+0x462>
b0a: 80 91 9d 04 lds r24, 0x049D
b0e: 88 23 and r24, r24
b10: 09 f0 breq .+2 ; 0xb14 <main+0x462>
b12: 75 c0 rjmp .+234 ; 0xbfe <main+0x54c>
b14: 0e 94 a4 09 call 0x1348 ; 0x1348 <DatenUebertragung>
b18: 0e 94 35 0c call 0x186a ; 0x186a <BearbeiteRxDaten>
b1c: c8 01 movw r24, r16
b1e: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
b22: 88 23 and r24, r24
b24: e1 f0 breq .+56 ; 0xb5e <main+0x4ac>
b26: 20 91 0e 03 lds r18, 0x030E
b2a: 30 91 0f 03 lds r19, 0x030F
b2e: 80 91 f0 07 lds r24, 0x07F0
b32: 90 e0 ldi r25, 0x00 ; 0
b34: 28 17 cp r18, r24
b36: 39 07 cpc r19, r25
b38: 44 f4 brge .+16 ; 0xb4a <main+0x498>
b3a: 80 91 09 03 lds r24, 0x0309
b3e: 90 91 0a 03 lds r25, 0x030A
b42: 8f 5f subi r24, 0xFF ; 255
b44: 9f 4f sbci r25, 0xFF ; 255
b46: 09 f4 brne .+2 ; 0xb4a <main+0x498>
b48: 5d c0 rjmp .+186 ; 0xc04 <main+0x552>
b4a: 0e 94 d4 50 call 0xa1a8 ; 0xa1a8 <SPI_StartTransmitPacket>
b4e: 84 e0 ldi r24, 0x04 ; 4
b50: 80 93 e7 03 sts 0x03E7, r24
b54: 84 e1 ldi r24, 0x14 ; 20
b56: 90 e0 ldi r25, 0x00 ; 0
b58: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
b5c: 8c 01 movw r16, r24
b5e: 0e 94 ae 51 call 0xa35c ; 0xa35c <LED_Update>
b62: 80 91 e7 03 lds r24, 0x03E7
b66: 88 23 and r24, r24
b68: 09 f0 breq .+2 ; 0xb6c <main+0x4ba>
b6a: 85 cf rjmp .-246 ; 0xa76 <main+0x3c4>
b6c: 0e 94 15 51 call 0xa22a ; 0xa22a <SPI_TransmitByte>
b70: 80 91 e2 03 lds r24, 0x03E2
b74: 88 23 and r24, r24
b76: a9 f3 breq .-22 ; 0xb62 <main+0x4b0>
b78: 83 cf rjmp .-250 ; 0xa80 <main+0x3ce>
b7a: 0e 94 0a 37 call 0x6e14 ; 0x6e14 <MotorRegler>
b7e: 0e 94 a0 30 call 0x6140 ; 0x6140 <SendMotorData>
b82: 20 91 00 01 lds r18, 0x0100
b86: 2a 30 cpi r18, 0x0A ; 10
b88: 09 f0 breq .+2 ; 0xb8c <main+0x4da>
b8a: 8f cf rjmp .-226 ; 0xaaa <main+0x3f8>
b8c: 28 98 cbi 0x05, 0 ; 5
b8e: 80 91 05 01 lds r24, 0x0105
b92: 88 23 and r24, r24
b94: 09 f0 breq .+2 ; 0xb98 <main+0x4e6>
b96: 92 cf rjmp .-220 ; 0xabc <main+0x40a>
b98: 10 92 a6 06 sts 0x06A6, r1
b9c: 10 92 b5 04 sts 0x04B5, r1
ba0: 10 92 b4 04 sts 0x04B4, r1
ba4: 10 92 b7 04 sts 0x04B7, r1
ba8: 10 92 b6 04 sts 0x04B6, r1
bac: 10 92 b9 04 sts 0x04B9, r1
bb0: 10 92 b8 04 sts 0x04B8, r1
bb4: 86 cf rjmp .-244 ; 0xac2 <main+0x410>
bb6: 28 98 cbi 0x05, 0 ; 5
bb8: a4 cf rjmp .-184 ; 0xb02 <main+0x450>
bba: 85 e0 ldi r24, 0x05 ; 5
bbc: 90 e0 ldi r25, 0x00 ; 0
bbe: 90 93 94 03 sts 0x0394, r25
bc2: 80 93 93 03 sts 0x0393, r24
bc6: 0e 94 c7 21 call 0x438e ; 0x438e <i2c_reset>
bca: 80 91 09 03 lds r24, 0x0309
bce: 90 91 0a 03 lds r25, 0x030A
bd2: 8f 5f subi r24, 0xFF ; 255
bd4: 9f 4f sbci r25, 0xFF ; 255
bd6: 09 f0 breq .+2 ; 0xbda <main+0x528>
bd8: 94 cf rjmp .-216 ; 0xb02 <main+0x450>
bda: 80 91 9d 04 lds r24, 0x049D
bde: 88 23 and r24, r24
be0: 09 f4 brne .+2 ; 0xbe4 <main+0x532>
be2: 8f cf rjmp .-226 ; 0xb02 <main+0x450>
be4: 80 e1 ldi r24, 0x10 ; 16
be6: 97 e2 ldi r25, 0x27 ; 39
be8: 90 93 e6 03 sts 0x03E6, r25
bec: 80 93 e5 03 sts 0x03E5, r24
bf0: 80 e8 ldi r24, 0x80 ; 128
bf2: 90 e0 ldi r25, 0x00 ; 0
bf4: 90 93 0a 03 sts 0x030A, r25
bf8: 80 93 09 03 sts 0x0309, r24
bfc: 82 cf rjmp .-252 ; 0xb02 <main+0x450>
bfe: 0e 94 35 0c call 0x186a ; 0x186a <BearbeiteRxDaten>
c02: 8c cf rjmp .-232 ; 0xb1c <main+0x46a>
c04: 80 e7 ldi r24, 0x70 ; 112
c06: 97 e1 ldi r25, 0x17 ; 23
c08: 90 93 e6 03 sts 0x03E6, r25
c0c: 80 93 e5 03 sts 0x03E5, r24
c10: 80 e0 ldi r24, 0x00 ; 0
c12: 93 e0 ldi r25, 0x03 ; 3
c14: 90 93 0a 03 sts 0x030A, r25
c18: 80 93 09 03 sts 0x0309, r24
c1c: 96 cf rjmp .-212 ; 0xb4a <main+0x498>
c1e: 0e 94 aa 35 call 0x6b54 ; 0x6b54 <DefaultKonstanten2>
c22: 42 ce rjmp .-892 ; 0x8a8 <main+0x1f6>
c24: 82 ed ldi r24, 0xD2 ; 210
c26: 90 e0 ldi r25, 0x00 ; 0
c28: 9f 93 push r25
c2a: 8f 93 push r24
c2c: 1f 92 push r1
c2e: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
c32: 0f 90 pop r0
c34: 0f 90 pop r0
c36: 0f 90 pop r0
c38: 09 cf rjmp .-494 ; 0xa4c <main+0x39a>
c3a: 28 98 cbi 0x05, 0 ; 5
c3c: e6 ce rjmp .-564 ; 0xa0a <main+0x358>
c3e: 29 98 cbi 0x05, 1 ; 5
c40: f0 cd rjmp .-1056 ; 0x822 <main+0x170>
c42: 80 91 ca 00 lds r24, 0x00CA
c46: 86 30 cpi r24, 0x06 ; 6
c48: 09 f0 breq .+2 ; 0xc4c <main+0x59a>
c4a: db cd rjmp .-1098 ; 0x802 <main+0x150>
c4c: 0e 94 5c 52 call 0xa4b8 ; 0xa4b8 <Uart1Init>
c50: d8 cd rjmp .-1104 ; 0x802 <main+0x150>
c52: 89 ef ldi r24, 0xF9 ; 249
c54: 90 e0 ldi r25, 0x00 ; 0
c56: 9f 93 push r25
c58: 8f 93 push r24
c5a: 1f 92 push r1
c5c: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
c60: 88 ee ldi r24, 0xE8 ; 232
c62: 93 e0 ldi r25, 0x03 ; 3
c64: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
c68: 8c 01 movw r16, r24
c6a: 0e 94 fc 1a call 0x35f8 ; 0x35f8 <SucheLuftruckOffset>
c6e: 0f 90 pop r0
c70: 0f 90 pop r0
c72: 0f 90 pop r0
c74: c8 01 movw r24, r16
c76: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
c7a: 88 23 and r24, r24
c7c: d9 f3 breq .-10 ; 0xc74 <main+0x5c2>
c7e: 84 ef ldi r24, 0xF4 ; 244
c80: 90 e0 ldi r25, 0x00 ; 0
c82: 9f 93 push r25
c84: 8f 93 push r24
c86: 1f 92 push r1
c88: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
c8c: 0f 90 pop r0
c8e: 0f 90 pop r0
c90: 0f 90 pop r0
c92: b0 ce rjmp .-672 ; 0x9f4 <main+0x342>
c94: 28 98 cbi 0x05, 0 ; 5
c96: 77 cd rjmp .-1298 ; 0x786 <main+0xd4>
c98: 0e 94 fb 34 call 0x69f6 ; 0x69f6 <DefaultKonstanten3>
c9c: 05 ce rjmp .-1014 ; 0x8a8 <main+0x1f6>
c9e: ea e4 ldi r30, 0x4A ; 74
ca0: f1 e0 ldi r31, 0x01 ; 1
ca2: ff 93 push r31
ca4: ef 93 push r30
ca6: 1f 92 push r1
ca8: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
cac: 4c e5 ldi r20, 0x5C ; 92
cae: 67 ed ldi r22, 0xD7 ; 215
cb0: 77 e0 ldi r23, 0x07 ; 7
cb2: 81 e0 ldi r24, 0x01 ; 1
cb4: 0e 94 06 03 call 0x60c ; 0x60c <WriteParameterSet>
cb8: 0f 90 pop r0
cba: 0f 90 pop r0
cbc: 0f 90 pop r0
cbe: 63 ce rjmp .-826 ; 0x986 <main+0x2d4>
cc0: 81 e3 ldi r24, 0x31 ; 49
cc2: 91 e0 ldi r25, 0x01 ; 1
cc4: 9f 93 push r25
cc6: 8f 93 push r24
cc8: 1f 92 push r1
cca: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
cce: 0f 90 pop r0
cd0: 0f 90 pop r0
cd2: 0f 90 pop r0
cd4: 71 ce rjmp .-798 ; 0x9b8 <main+0x306>
cd6: 8b e0 ldi r24, 0x0B ; 11
cd8: 80 93 00 01 sts 0x0100, r24
cdc: 0d cd rjmp .-1510 ; 0x6f8 <main+0x46>
cde: 19 9b sbis 0x03, 1 ; 3
ce0: 11 c0 rjmp .+34 ; 0xd04 <main+0x652>
ce2: 84 e1 ldi r24, 0x14 ; 20
ce4: 80 93 00 01 sts 0x0100, r24
ce8: 07 cd rjmp .-1522 ; 0x6f8 <main+0x46>
cea: 8b e0 ldi r24, 0x0B ; 11
cec: 95 e0 ldi r25, 0x05 ; 5
cee: a0 e0 ldi r26, 0x00 ; 0
cf0: b0 e0 ldi r27, 0x00 ; 0
cf2: 80 93 b3 03 sts 0x03B3, r24
cf6: 90 93 b4 03 sts 0x03B4, r25
cfa: a0 93 b5 03 sts 0x03B5, r26
cfe: b0 93 b6 03 sts 0x03B6, r27
d02: 3a cd rjmp .-1420 ; 0x778 <main+0xc6>
d04: 8a e0 ldi r24, 0x0A ; 10
d06: 80 93 00 01 sts 0x0100, r24
d0a: f6 cc rjmp .-1556 ; 0x6f8 <main+0x46>
 
00000d0c <__vector_22>:
d0c: 1f 92 push r1
d0e: 0f 92 push r0
d10: 0f b6 in r0, 0x3f ; 63
d12: 0f 92 push r0
d14: 11 24 eor r1, r1
d16: 8f 93 push r24
d18: 9f 93 push r25
d1a: ef 93 push r30
d1c: ff 93 push r31
d1e: 80 91 03 01 lds r24, 0x0103
d22: 88 23 and r24, r24
d24: a9 f4 brne .+42 ; 0xd50 <__vector_22+0x44>
d26: 80 91 de 03 lds r24, 0x03DE
d2a: 90 91 df 03 lds r25, 0x03DF
d2e: 01 96 adiw r24, 0x01 ; 1
d30: 90 93 df 03 sts 0x03DF, r25
d34: 80 93 de 03 sts 0x03DE, r24
d38: fc 01 movw r30, r24
d3a: e4 5a subi r30, 0xA4 ; 164
d3c: fa 4f sbci r31, 0xFA ; 250
d3e: e0 81 ld r30, Z
d40: ed 30 cpi r30, 0x0D ; 13
d42: 59 f0 breq .+22 ; 0xd5a <__vector_22+0x4e>
d44: 86 39 cpi r24, 0x96 ; 150
d46: 91 05 cpc r25, r1
d48: 41 f0 breq .+16 ; 0xd5a <__vector_22+0x4e>
d4a: e0 93 c6 00 sts 0x00C6, r30
d4e: 0d c0 rjmp .+26 ; 0xd6a <__vector_22+0x5e>
d50: 10 92 df 03 sts 0x03DF, r1
d54: 10 92 de 03 sts 0x03DE, r1
d58: 08 c0 rjmp .+16 ; 0xd6a <__vector_22+0x5e>
d5a: 10 92 df 03 sts 0x03DF, r1
d5e: 10 92 de 03 sts 0x03DE, r1
d62: 81 e0 ldi r24, 0x01 ; 1
d64: 80 93 03 01 sts 0x0103, r24
d68: f0 cf rjmp .-32 ; 0xd4a <__vector_22+0x3e>
d6a: ff 91 pop r31
d6c: ef 91 pop r30
d6e: 9f 91 pop r25
d70: 8f 91 pop r24
d72: 0f 90 pop r0
d74: 0f be out 0x3f, r0 ; 63
d76: 0f 90 pop r0
d78: 1f 90 pop r1
d7a: 18 95 reti
 
00000d7c <__vector_20>:
d7c: 1f 92 push r1
d7e: 0f 92 push r0
d80: 0f b6 in r0, 0x3f ; 63
d82: 0f 92 push r0
d84: 11 24 eor r1, r1
d86: 2f 93 push r18
d88: 3f 93 push r19
d8a: 4f 93 push r20
d8c: 8f 93 push r24
d8e: 9f 93 push r25
d90: af 93 push r26
d92: bf 93 push r27
d94: cf 93 push r28
d96: df 93 push r29
d98: ef 93 push r30
d9a: ff 93 push r31
d9c: 80 91 c6 00 lds r24, 0x00C6
da0: 80 93 c9 03 sts 0x03C9, r24
da4: 40 91 d9 03 lds r20, 0x03D9
da8: 46 39 cpi r20, 0x96 ; 150
daa: 10 f0 brcs .+4 ; 0xdb0 <__vector_20+0x34>
dac: 10 92 d8 03 sts 0x03D8, r1
db0: 80 91 c9 03 lds r24, 0x03C9
db4: 8d 30 cpi r24, 0x0D ; 13
db6: 09 f1 breq .+66 ; 0xdfa <__vector_20+0x7e>
db8: 80 91 d8 03 lds r24, 0x03D8
dbc: 81 30 cpi r24, 0x01 ; 1
dbe: 09 f4 brne .+2 ; 0xdc2 <__vector_20+0x46>
dc0: 90 c0 rjmp .+288 ; 0xee2 <__vector_20+0x166>
dc2: 81 30 cpi r24, 0x01 ; 1
dc4: 30 f0 brcs .+12 ; 0xdd2 <__vector_20+0x56>
dc6: 82 30 cpi r24, 0x02 ; 2
dc8: 09 f4 brne .+2 ; 0xdcc <__vector_20+0x50>
dca: 73 c0 rjmp .+230 ; 0xeb2 <__vector_20+0x136>
dcc: 10 92 d8 03 sts 0x03D8, r1
dd0: b5 c0 rjmp .+362 ; 0xf3c <__vector_20+0x1c0>
dd2: 80 91 c9 03 lds r24, 0x03C9
dd6: 83 32 cpi r24, 0x23 ; 35
dd8: 09 f4 brne .+2 ; 0xddc <__vector_20+0x60>
dda: a1 c0 rjmp .+322 ; 0xf1e <__vector_20+0x1a2>
ddc: 80 91 c9 03 lds r24, 0x03C9
de0: 80 93 a9 06 sts 0x06A9, r24
de4: 81 e0 ldi r24, 0x01 ; 1
de6: 80 93 d9 03 sts 0x03D9, r24
dea: 80 91 c9 03 lds r24, 0x03C9
dee: 90 e0 ldi r25, 0x00 ; 0
df0: 90 93 dd 03 sts 0x03DD, r25
df4: 80 93 dc 03 sts 0x03DC, r24
df8: a1 c0 rjmp .+322 ; 0xf3c <__vector_20+0x1c0>
dfa: 80 91 d8 03 lds r24, 0x03D8
dfe: 82 30 cpi r24, 0x02 ; 2
e00: e9 f6 brne .-70 ; 0xdbc <__vector_20+0x40>
e02: 10 92 d8 03 sts 0x03D8, r1
e06: a4 2f mov r26, r20
e08: b0 e0 ldi r27, 0x00 ; 0
e0a: fd 01 movw r30, r26
e0c: e9 55 subi r30, 0x59 ; 89
e0e: f9 4f sbci r31, 0xF9 ; 249
e10: 30 81 ld r19, Z
e12: ed 01 movw r28, r26
e14: c8 55 subi r28, 0x58 ; 88
e16: d9 4f sbci r29, 0xF9 ; 249
e18: 28 81 ld r18, Y
e1a: 80 91 dc 03 lds r24, 0x03DC
e1e: 90 91 dd 03 lds r25, 0x03DD
e22: 83 1b sub r24, r19
e24: 91 09 sbc r25, r1
e26: 82 1b sub r24, r18
e28: 91 09 sbc r25, r1
e2a: 9f 70 andi r25, 0x0F ; 15
e2c: 90 93 dd 03 sts 0x03DD, r25
e30: 80 93 dc 03 sts 0x03DC, r24
e34: 9c 01 movw r18, r24
e36: 00 24 eor r0, r0
e38: 22 0f add r18, r18
e3a: 33 1f adc r19, r19
e3c: 00 1c adc r0, r0
e3e: 22 0f add r18, r18
e40: 33 1f adc r19, r19
e42: 00 1c adc r0, r0
e44: 23 2f mov r18, r19
e46: 30 2d mov r19, r0
e48: 23 5c subi r18, 0xC3 ; 195
e4a: 20 93 db 03 sts 0x03DB, r18
e4e: 98 2f mov r25, r24
e50: 9f 73 andi r25, 0x3F ; 63
e52: 93 5c subi r25, 0xC3 ; 195
e54: 90 93 da 03 sts 0x03DA, r25
e58: 80 81 ld r24, Z
e5a: 28 17 cp r18, r24
e5c: 09 f4 brne .+2 ; 0xe60 <__vector_20+0xe4>
e5e: 68 c0 rjmp .+208 ; 0xf30 <__vector_20+0x1b4>
e60: 80 91 cc 03 lds r24, 0x03CC
e64: 8f 5f subi r24, 0xFF ; 255
e66: 80 93 cc 03 sts 0x03CC, r24
e6a: 90 e0 ldi r25, 0x00 ; 0
e6c: 80 91 ca 03 lds r24, 0x03CA
e70: 88 23 and r24, r24
e72: 09 f0 breq .+2 ; 0xe76 <__vector_20+0xfa>
e74: 63 c0 rjmp .+198 ; 0xf3c <__vector_20+0x1c0>
e76: 99 23 and r25, r25
e78: 09 f4 brne .+2 ; 0xe7c <__vector_20+0x100>
e7a: 60 c0 rjmp .+192 ; 0xf3c <__vector_20+0x1c0>
e7c: 81 e0 ldi r24, 0x01 ; 1
e7e: 80 93 ca 03 sts 0x03CA, r24
e82: 4f 5f subi r20, 0xFF ; 255
e84: 40 93 cd 03 sts 0x03CD, r20
e88: a7 55 subi r26, 0x57 ; 87
e8a: b9 4f sbci r27, 0xF9 ; 249
e8c: 8d e0 ldi r24, 0x0D ; 13
e8e: 8c 93 st X, r24
e90: 80 91 ab 06 lds r24, 0x06AB
e94: 82 35 cpi r24, 0x52 ; 82
e96: 09 f0 breq .+2 ; 0xe9a <__vector_20+0x11e>
e98: 51 c0 rjmp .+162 ; 0xf3c <__vector_20+0x1c0>
e9a: 88 e1 ldi r24, 0x18 ; 24
e9c: 90 e0 ldi r25, 0x00 ; 0
e9e: 2c e0 ldi r18, 0x0C ; 12
ea0: 0f b6 in r0, 0x3f ; 63
ea2: f8 94 cli
ea4: a8 95 wdr
ea6: 80 93 60 00 sts 0x0060, r24
eaa: 0f be out 0x3f, r0 ; 63
eac: 20 93 60 00 sts 0x0060, r18
eb0: 45 c0 rjmp .+138 ; 0xf3c <__vector_20+0x1c0>
eb2: e4 2f mov r30, r20
eb4: f0 e0 ldi r31, 0x00 ; 0
eb6: 80 91 c9 03 lds r24, 0x03C9
eba: e7 55 subi r30, 0x57 ; 87
ebc: f9 4f sbci r31, 0xF9 ; 249
ebe: 80 83 st Z, r24
ec0: 46 39 cpi r20, 0x96 ; 150
ec2: 48 f1 brcs .+82 ; 0xf16 <__vector_20+0x19a>
ec4: 10 92 d8 03 sts 0x03D8, r1
ec8: 20 91 c9 03 lds r18, 0x03C9
ecc: 80 91 dc 03 lds r24, 0x03DC
ed0: 90 91 dd 03 lds r25, 0x03DD
ed4: 82 0f add r24, r18
ed6: 91 1d adc r25, r1
ed8: 90 93 dd 03 sts 0x03DD, r25
edc: 80 93 dc 03 sts 0x03DC, r24
ee0: 2d c0 rjmp .+90 ; 0xf3c <__vector_20+0x1c0>
ee2: 82 e0 ldi r24, 0x02 ; 2
ee4: 80 93 d8 03 sts 0x03D8, r24
ee8: e4 2f mov r30, r20
eea: f0 e0 ldi r31, 0x00 ; 0
eec: 80 91 c9 03 lds r24, 0x03C9
ef0: e7 55 subi r30, 0x57 ; 87
ef2: f9 4f sbci r31, 0xF9 ; 249
ef4: 80 83 st Z, r24
ef6: 4f 5f subi r20, 0xFF ; 255
ef8: 40 93 d9 03 sts 0x03D9, r20
efc: 20 91 c9 03 lds r18, 0x03C9
f00: 80 91 dc 03 lds r24, 0x03DC
f04: 90 91 dd 03 lds r25, 0x03DD
f08: 82 0f add r24, r18
f0a: 91 1d adc r25, r1
f0c: 90 93 dd 03 sts 0x03DD, r25
f10: 80 93 dc 03 sts 0x03DC, r24
f14: 13 c0 rjmp .+38 ; 0xf3c <__vector_20+0x1c0>
f16: 4f 5f subi r20, 0xFF ; 255
f18: 40 93 d9 03 sts 0x03D9, r20
f1c: d5 cf rjmp .-86 ; 0xec8 <__vector_20+0x14c>
f1e: 80 91 ca 03 lds r24, 0x03CA
f22: 88 23 and r24, r24
f24: 09 f0 breq .+2 ; 0xf28 <__vector_20+0x1ac>
f26: 5a cf rjmp .-332 ; 0xddc <__vector_20+0x60>
f28: 81 e0 ldi r24, 0x01 ; 1
f2a: 80 93 d8 03 sts 0x03D8, r24
f2e: 56 cf rjmp .-340 ; 0xddc <__vector_20+0x60>
f30: 88 81 ld r24, Y
f32: 98 17 cp r25, r24
f34: 09 f0 breq .+2 ; 0xf38 <__vector_20+0x1bc>
f36: 94 cf rjmp .-216 ; 0xe60 <__vector_20+0xe4>
f38: 91 e0 ldi r25, 0x01 ; 1
f3a: 98 cf rjmp .-208 ; 0xe6c <__vector_20+0xf0>
f3c: ff 91 pop r31
f3e: ef 91 pop r30
f40: df 91 pop r29
f42: cf 91 pop r28
f44: bf 91 pop r27
f46: af 91 pop r26
f48: 9f 91 pop r25
f4a: 8f 91 pop r24
f4c: 4f 91 pop r20
f4e: 3f 91 pop r19
f50: 2f 91 pop r18
f52: 0f 90 pop r0
f54: 0f be out 0x3f, r0 ; 63
f56: 0f 90 pop r0
f58: 1f 90 pop r1
f5a: 18 95 reti
 
00000f5c <AddCRC>:
f5c: cf 93 push r28
f5e: df 93 push r29
f60: bc 01 movw r22, r24
f62: 89 2b or r24, r25
f64: 19 f1 breq .+70 ; 0xfac <AddCRC+0x50>
f66: 20 e0 ldi r18, 0x00 ; 0
f68: 30 e0 ldi r19, 0x00 ; 0
f6a: 40 e0 ldi r20, 0x00 ; 0
f6c: 50 e0 ldi r21, 0x00 ; 0
f6e: fa 01 movw r30, r20
f70: e4 5a subi r30, 0xA4 ; 164
f72: fa 4f sbci r31, 0xFA ; 250
f74: 80 81 ld r24, Z
f76: 28 0f add r18, r24
f78: 31 1d adc r19, r1
f7a: 4f 5f subi r20, 0xFF ; 255
f7c: 5f 4f sbci r21, 0xFF ; 255
f7e: 46 17 cp r20, r22
f80: 57 07 cpc r21, r23
f82: a9 f7 brne .-22 ; 0xf6e <AddCRC+0x12>
f84: 3f 70 andi r19, 0x0F ; 15
f86: c9 01 movw r24, r18
f88: 00 24 eor r0, r0
f8a: 88 0f add r24, r24
f8c: 99 1f adc r25, r25
f8e: 00 1c adc r0, r0
f90: 88 0f add r24, r24
f92: 99 1f adc r25, r25
f94: 00 1c adc r0, r0
f96: 89 2f mov r24, r25
f98: 90 2d mov r25, r0
f9a: 83 5c subi r24, 0xC3 ; 195
f9c: db 01 movw r26, r22
f9e: 11 96 adiw r26, 0x01 ; 1
fa0: 2f 73 andi r18, 0x3F ; 63
fa2: 23 5c subi r18, 0xC3 ; 195
fa4: ed 01 movw r28, r26
fa6: 21 96 adiw r28, 0x01 ; 1
fa8: fb 01 movw r30, r22
faa: 08 c0 rjmp .+16 ; 0xfbc <AddCRC+0x60>
fac: e0 e0 ldi r30, 0x00 ; 0
fae: f0 e0 ldi r31, 0x00 ; 0
fb0: 8d e3 ldi r24, 0x3D ; 61
fb2: a1 e0 ldi r26, 0x01 ; 1
fb4: b0 e0 ldi r27, 0x00 ; 0
fb6: 2d e3 ldi r18, 0x3D ; 61
fb8: c2 e0 ldi r28, 0x02 ; 2
fba: d0 e0 ldi r29, 0x00 ; 0
fbc: e4 5a subi r30, 0xA4 ; 164
fbe: fa 4f sbci r31, 0xFA ; 250
fc0: 80 83 st Z, r24
fc2: a4 5a subi r26, 0xA4 ; 164
fc4: ba 4f sbci r27, 0xFA ; 250
fc6: 2c 93 st X, r18
fc8: c4 5a subi r28, 0xA4 ; 164
fca: da 4f sbci r29, 0xFA ; 250
fcc: 8d e0 ldi r24, 0x0D ; 13
fce: 88 83 st Y, r24
fd0: 10 92 03 01 sts 0x0103, r1
fd4: 80 91 5c 05 lds r24, 0x055C
fd8: 80 93 c6 00 sts 0x00C6, r24
fdc: df 91 pop r29
fde: cf 91 pop r28
fe0: 08 95 ret
 
00000fe2 <Decode64>:
fe2: 40 91 cd 03 lds r20, 0x03CD
fe6: 46 50 subi r20, 0x06 ; 6
fe8: 09 f4 brne .+2 ; 0xfec <Decode64+0xa>
fea: 51 c0 rjmp .+162 ; 0x108e <Decode64+0xac>
fec: 33 e0 ldi r19, 0x03 ; 3
fee: 63 e0 ldi r22, 0x03 ; 3
ff0: 30 c0 rjmp .+96 ; 0x1052 <Decode64+0x70>
ff2: 28 2f mov r18, r24
ff4: 2d 53 subi r18, 0x3D ; 61
ff6: e6 2f mov r30, r22
ff8: f0 e0 ldi r31, 0x00 ; 0
ffa: 82 2f mov r24, r18
ffc: 82 95 swap r24
ffe: 8f 70 andi r24, 0x0F ; 15
1000: 9d 53 subi r25, 0x3D ; 61
1002: 99 0f add r25, r25
1004: 99 0f add r25, r25
1006: 98 2b or r25, r24
1008: e7 55 subi r30, 0x57 ; 87
100a: f9 4f sbci r31, 0xF9 ; 249
100c: 90 83 st Z, r25
100e: e6 2f mov r30, r22
1010: ef 5f subi r30, 0xFF ; 255
1012: 41 30 cpi r20, 0x01 ; 1
1014: d1 f1 breq .+116 ; 0x108a <Decode64+0xa8>
1016: 97 2f mov r25, r23
1018: 9d 53 subi r25, 0x3D ; 61
101a: f0 e0 ldi r31, 0x00 ; 0
101c: 22 95 swap r18
101e: 20 7f andi r18, 0xF0 ; 240
1020: 89 2f mov r24, r25
1022: 86 95 lsr r24
1024: 86 95 lsr r24
1026: 28 2b or r18, r24
1028: e7 55 subi r30, 0x57 ; 87
102a: f9 4f sbci r31, 0xF9 ; 249
102c: 20 83 st Z, r18
102e: e6 2f mov r30, r22
1030: ee 5f subi r30, 0xFE ; 254
1032: 43 50 subi r20, 0x03 ; 3
1034: 4f 3f cpi r20, 0xFF ; 255
1036: 49 f1 breq .+82 ; 0x108a <Decode64+0xa8>
1038: f0 e0 ldi r31, 0x00 ; 0
103a: 92 95 swap r25
103c: 99 0f add r25, r25
103e: 99 0f add r25, r25
1040: 90 7c andi r25, 0xC0 ; 192
1042: 5d 53 subi r21, 0x3D ; 61
1044: 95 2b or r25, r21
1046: e7 55 subi r30, 0x57 ; 87
1048: f9 4f sbci r31, 0xF9 ; 249
104a: 90 83 st Z, r25
104c: 6d 5f subi r22, 0xFD ; 253
104e: 44 23 and r20, r20
1050: d9 f0 breq .+54 ; 0x1088 <Decode64+0xa6>
1052: e3 2f mov r30, r19
1054: f0 e0 ldi r31, 0x00 ; 0
1056: e7 55 subi r30, 0x57 ; 87
1058: f9 4f sbci r31, 0xF9 ; 249
105a: 90 81 ld r25, Z
105c: 3f 5f subi r19, 0xFF ; 255
105e: e3 2f mov r30, r19
1060: f0 e0 ldi r31, 0x00 ; 0
1062: e7 55 subi r30, 0x57 ; 87
1064: f9 4f sbci r31, 0xF9 ; 249
1066: 80 81 ld r24, Z
1068: 3f 5f subi r19, 0xFF ; 255
106a: e3 2f mov r30, r19
106c: f0 e0 ldi r31, 0x00 ; 0
106e: e7 55 subi r30, 0x57 ; 87
1070: f9 4f sbci r31, 0xF9 ; 249
1072: 70 81 ld r23, Z
1074: 3f 5f subi r19, 0xFF ; 255
1076: e3 2f mov r30, r19
1078: f0 e0 ldi r31, 0x00 ; 0
107a: e7 55 subi r30, 0x57 ; 87
107c: f9 4f sbci r31, 0xF9 ; 249
107e: 50 81 ld r21, Z
1080: 3f 5f subi r19, 0xFF ; 255
1082: 44 23 and r20, r20
1084: 09 f0 breq .+2 ; 0x1088 <Decode64+0xa6>
1086: b5 cf rjmp .-150 ; 0xff2 <Decode64+0x10>
1088: e6 2f mov r30, r22
108a: e3 50 subi r30, 0x03 ; 3
108c: 01 c0 rjmp .+2 ; 0x1090 <Decode64+0xae>
108e: e0 e0 ldi r30, 0x00 ; 0
1090: 8c ea ldi r24, 0xAC ; 172
1092: 96 e0 ldi r25, 0x06 ; 6
1094: 90 93 cf 03 sts 0x03CF, r25
1098: 80 93 ce 03 sts 0x03CE, r24
109c: e0 93 d0 03 sts 0x03D0, r30
10a0: 08 95 ret
 
000010a2 <uart_putchar>:
10a2: 1f 93 push r17
10a4: 18 2f mov r17, r24
10a6: 8a 30 cpi r24, 0x0A ; 10
10a8: 29 f0 breq .+10 ; 0x10b4 <uart_putchar+0x12>
10aa: 80 91 c0 00 lds r24, 0x00C0
10ae: 85 ff sbrs r24, 5
10b0: fc cf rjmp .-8 ; 0x10aa <uart_putchar+0x8>
10b2: 04 c0 rjmp .+8 ; 0x10bc <uart_putchar+0x1a>
10b4: 8d e0 ldi r24, 0x0D ; 13
10b6: 0e 94 51 08 call 0x10a2 ; 0x10a2 <uart_putchar>
10ba: f7 cf rjmp .-18 ; 0x10aa <uart_putchar+0x8>
10bc: 10 93 c6 00 sts 0x00C6, r17
10c0: 80 e0 ldi r24, 0x00 ; 0
10c2: 90 e0 ldi r25, 0x00 ; 0
10c4: 1f 91 pop r17
10c6: 08 95 ret
 
000010c8 <WriteProgramData>:
10c8: 08 95 ret
 
000010ca <UART_Init>:
10ca: e1 ec ldi r30, 0xC1 ; 193
10cc: f0 e0 ldi r31, 0x00 ; 0
10ce: 88 e1 ldi r24, 0x18 ; 24
10d0: 80 83 st Z, r24
10d2: a0 ec ldi r26, 0xC0 ; 192
10d4: b0 e0 ldi r27, 0x00 ; 0
10d6: 8c 91 ld r24, X
10d8: 82 60 ori r24, 0x02 ; 2
10da: 8c 93 st X, r24
10dc: 80 81 ld r24, Z
10de: 80 68 ori r24, 0x80 ; 128
10e0: 80 83 st Z, r24
10e2: 80 81 ld r24, Z
10e4: 80 64 ori r24, 0x40 ; 64
10e6: 80 83 st Z, r24
10e8: 8a e2 ldi r24, 0x2A ; 42
10ea: 80 93 c4 00 sts 0x00C4, r24
10ee: 80 91 07 01 lds r24, 0x0107
10f2: 90 91 08 01 lds r25, 0x0108
10f6: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
10fa: 90 93 89 06 sts 0x0689, r25
10fe: 80 93 88 06 sts 0x0688, r24
1102: 8c ed ldi r24, 0xDC ; 220
1104: 90 e0 ldi r25, 0x00 ; 0
1106: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
110a: 90 93 a8 06 sts 0x06A8, r25
110e: 80 93 a7 06 sts 0x06A7, r24
1112: 10 92 8a 06 sts 0x068A, r1
1116: 88 e4 ldi r24, 0x48 ; 72
1118: 80 93 8b 06 sts 0x068B, r24
111c: 8f e0 ldi r24, 0x0F ; 15
111e: 80 93 8e 06 sts 0x068E, r24
1122: 8a e0 ldi r24, 0x0A ; 10
1124: 80 93 8c 06 sts 0x068C, r24
1128: 10 92 8d 06 sts 0x068D, r1
112c: 10 92 cf 03 sts 0x03CF, r1
1130: 10 92 ce 03 sts 0x03CE, r1
1134: 10 92 d0 03 sts 0x03D0, r1
1138: 08 95 ret
 
0000113a <SendOutData>:
113a: ef 92 push r14
113c: ff 92 push r15
113e: 0f 93 push r16
1140: 1f 93 push r17
1142: cf 93 push r28
1144: df 93 push r29
1146: cd b7 in r28, 0x3d ; 61
1148: de b7 in r29, 0x3e ; 62
114a: 22 97 sbiw r28, 0x02 ; 2
114c: 0f b6 in r0, 0x3f ; 63
114e: f8 94 cli
1150: de bf out 0x3e, r29 ; 62
1152: 0f be out 0x3f, r0 ; 63
1154: cd bf out 0x3d, r28 ; 61
1156: 9c 85 ldd r25, Y+12 ; 0x0c
1158: 4d 85 ldd r20, Y+13 ; 0x0d
115a: 83 e2 ldi r24, 0x23 ; 35
115c: 80 93 5c 05 sts 0x055C, r24
1160: 9f 59 subi r25, 0x9F ; 159
1162: 90 93 5d 05 sts 0x055D, r25
1166: 8b 85 ldd r24, Y+11 ; 0x0b
1168: 80 93 5e 05 sts 0x055E, r24
116c: ce 01 movw r24, r28
116e: 0e 96 adiw r24, 0x0e ; 14
1170: 9a 83 std Y+2, r25 ; 0x02
1172: 89 83 std Y+1, r24 ; 0x01
1174: 44 23 and r20, r20
1176: 19 f4 brne .+6 ; 0x117e <SendOutData+0x44>
1178: 63 e0 ldi r22, 0x03 ; 3
117a: 70 e0 ldi r23, 0x00 ; 0
117c: d5 c0 rjmp .+426 ; 0x1328 <SendOutData+0x1ee>
117e: 0e 85 ldd r16, Y+14 ; 0x0e
1180: 1f 85 ldd r17, Y+15 ; 0x0f
1182: ce 01 movw r24, r28
1184: 42 96 adiw r24, 0x12 ; 18
1186: 9a 83 std Y+2, r25 ; 0x02
1188: 89 83 std Y+1, r24 ; 0x01
118a: 28 89 ldd r18, Y+16 ; 0x10
118c: 39 89 ldd r19, Y+17 ; 0x11
118e: 21 15 cp r18, r1
1190: 31 05 cpc r19, r1
1192: 91 f3 breq .-28 ; 0x1178 <SendOutData+0x3e>
1194: f4 2e mov r15, r20
1196: fa 94 dec r15
1198: 63 e0 ldi r22, 0x03 ; 3
119a: 70 e0 ldi r23, 0x00 ; 0
119c: a0 e0 ldi r26, 0x00 ; 0
119e: 5e c0 rjmp .+188 ; 0x125c <SendOutData+0x122>
11a0: ea 2f mov r30, r26
11a2: f0 e0 ldi r31, 0x00 ; 0
11a4: af 5f subi r26, 0xFF ; 255
11a6: c9 01 movw r24, r18
11a8: e0 0f add r30, r16
11aa: f1 1f adc r31, r17
11ac: 40 81 ld r20, Z
11ae: 9c 01 movw r18, r24
11b0: 21 50 subi r18, 0x01 ; 1
11b2: 30 40 sbci r19, 0x00 ; 0
11b4: 09 f4 brne .+2 ; 0x11b8 <SendOutData+0x7e>
11b6: 73 c0 rjmp .+230 ; 0x129e <SendOutData+0x164>
11b8: ea 2f mov r30, r26
11ba: f0 e0 ldi r31, 0x00 ; 0
11bc: af 5f subi r26, 0xFF ; 255
11be: e0 0f add r30, r16
11c0: f1 1f adc r31, r17
11c2: b0 81 ld r27, Z
11c4: 21 50 subi r18, 0x01 ; 1
11c6: 30 40 sbci r19, 0x00 ; 0
11c8: 09 f0 breq .+2 ; 0x11cc <SendOutData+0x92>
11ca: 79 c0 rjmp .+242 ; 0x12be <SendOutData+0x184>
11cc: ff 20 and r15, r15
11ce: 09 f4 brne .+2 ; 0x11d2 <SendOutData+0x98>
11d0: 76 c0 rjmp .+236 ; 0x12be <SendOutData+0x184>
11d2: e9 81 ldd r30, Y+1 ; 0x01
11d4: fa 81 ldd r31, Y+2 ; 0x02
11d6: 00 81 ld r16, Z
11d8: 11 81 ldd r17, Z+1 ; 0x01
11da: 34 96 adiw r30, 0x04 ; 4
11dc: fa 83 std Y+2, r31 ; 0x02
11de: e9 83 std Y+1, r30 ; 0x01
11e0: 34 97 sbiw r30, 0x04 ; 4
11e2: 22 81 ldd r18, Z+2 ; 0x02
11e4: 33 81 ldd r19, Z+3 ; 0x03
11e6: fa 94 dec r15
11e8: 84 2f mov r24, r20
11ea: 90 e0 ldi r25, 0x00 ; 0
11ec: 42 95 swap r20
11ee: 4f 70 andi r20, 0x0F ; 15
11f0: 8f 70 andi r24, 0x0F ; 15
11f2: 90 70 andi r25, 0x00 ; 0
11f4: 5b 2f mov r21, r27
11f6: 52 95 swap r21
11f8: 56 95 lsr r21
11fa: 56 95 lsr r21
11fc: 53 70 andi r21, 0x03 ; 3
11fe: 88 0f add r24, r24
1200: 99 1f adc r25, r25
1202: 88 0f add r24, r24
1204: 99 1f adc r25, r25
1206: 58 2b or r21, r24
1208: 53 5c subi r21, 0xC3 ; 195
120a: bf 73 andi r27, 0x3F ; 63
120c: b3 5c subi r27, 0xC3 ; 195
120e: a0 e0 ldi r26, 0x00 ; 0
1210: 8e 2d mov r24, r14
1212: 86 95 lsr r24
1214: 86 95 lsr r24
1216: 83 5c subi r24, 0xC3 ; 195
1218: fb 01 movw r30, r22
121a: e4 5a subi r30, 0xA4 ; 164
121c: fa 4f sbci r31, 0xFA ; 250
121e: 80 83 st Z, r24
1220: 8e 2d mov r24, r14
1222: 90 e0 ldi r25, 0x00 ; 0
1224: 83 70 andi r24, 0x03 ; 3
1226: 90 70 andi r25, 0x00 ; 0
1228: 82 95 swap r24
122a: 92 95 swap r25
122c: 90 7f andi r25, 0xF0 ; 240
122e: 98 27 eor r25, r24
1230: 80 7f andi r24, 0xF0 ; 240
1232: 98 27 eor r25, r24
1234: 48 2b or r20, r24
1236: 43 5c subi r20, 0xC3 ; 195
1238: fb 01 movw r30, r22
123a: e3 5a subi r30, 0xA3 ; 163
123c: fa 4f sbci r31, 0xFA ; 250
123e: 40 83 st Z, r20
1240: fb 01 movw r30, r22
1242: e2 5a subi r30, 0xA2 ; 162
1244: fa 4f sbci r31, 0xFA ; 250
1246: 50 83 st Z, r21
1248: fb 01 movw r30, r22
124a: e1 5a subi r30, 0xA1 ; 161
124c: fa 4f sbci r31, 0xFA ; 250
124e: b0 83 st Z, r27
1250: 6c 5f subi r22, 0xFC ; 252
1252: 7f 4f sbci r23, 0xFF ; 255
1254: 21 15 cp r18, r1
1256: 31 05 cpc r19, r1
1258: 09 f4 brne .+2 ; 0x125c <SendOutData+0x122>
125a: 66 c0 rjmp .+204 ; 0x1328 <SendOutData+0x1ee>
125c: f8 01 movw r30, r16
125e: ea 0f add r30, r26
1260: f1 1d adc r31, r1
1262: e0 80 ld r14, Z
1264: af 5f subi r26, 0xFF ; 255
1266: 21 50 subi r18, 0x01 ; 1
1268: 30 40 sbci r19, 0x00 ; 0
126a: 09 f0 breq .+2 ; 0x126e <SendOutData+0x134>
126c: 99 cf rjmp .-206 ; 0x11a0 <SendOutData+0x66>
126e: ff 20 and r15, r15
1270: 91 f0 breq .+36 ; 0x1296 <SendOutData+0x15c>
1272: e9 81 ldd r30, Y+1 ; 0x01
1274: fa 81 ldd r31, Y+2 ; 0x02
1276: 00 81 ld r16, Z
1278: 11 81 ldd r17, Z+1 ; 0x01
127a: 34 96 adiw r30, 0x04 ; 4
127c: fa 83 std Y+2, r31 ; 0x02
127e: e9 83 std Y+1, r30 ; 0x01
1280: 34 97 sbiw r30, 0x04 ; 4
1282: 82 81 ldd r24, Z+2 ; 0x02
1284: 93 81 ldd r25, Z+3 ; 0x03
1286: fa 94 dec r15
1288: 00 97 sbiw r24, 0x00 ; 0
128a: 21 f0 breq .+8 ; 0x1294 <SendOutData+0x15a>
128c: e0 e0 ldi r30, 0x00 ; 0
128e: f0 e0 ldi r31, 0x00 ; 0
1290: a1 e0 ldi r26, 0x01 ; 1
1292: 8a cf rjmp .-236 ; 0x11a8 <SendOutData+0x6e>
1294: a0 e0 ldi r26, 0x00 ; 0
1296: 40 e0 ldi r20, 0x00 ; 0
1298: 5d e3 ldi r21, 0x3D ; 61
129a: bd e3 ldi r27, 0x3D ; 61
129c: b9 cf rjmp .-142 ; 0x1210 <SendOutData+0xd6>
129e: ff 20 and r15, r15
12a0: 11 f5 brne .+68 ; 0x12e6 <SendOutData+0x1ac>
12a2: 84 2f mov r24, r20
12a4: 90 e0 ldi r25, 0x00 ; 0
12a6: 42 95 swap r20
12a8: 4f 70 andi r20, 0x0F ; 15
12aa: 8f 70 andi r24, 0x0F ; 15
12ac: 90 70 andi r25, 0x00 ; 0
12ae: 88 0f add r24, r24
12b0: 99 1f adc r25, r25
12b2: 88 0f add r24, r24
12b4: 99 1f adc r25, r25
12b6: 58 2f mov r21, r24
12b8: 53 5c subi r21, 0xC3 ; 195
12ba: bd e3 ldi r27, 0x3D ; 61
12bc: a9 cf rjmp .-174 ; 0x1210 <SendOutData+0xd6>
12be: 84 2f mov r24, r20
12c0: 90 e0 ldi r25, 0x00 ; 0
12c2: 42 95 swap r20
12c4: 4f 70 andi r20, 0x0F ; 15
12c6: 8f 70 andi r24, 0x0F ; 15
12c8: 90 70 andi r25, 0x00 ; 0
12ca: 5b 2f mov r21, r27
12cc: 52 95 swap r21
12ce: 56 95 lsr r21
12d0: 56 95 lsr r21
12d2: 53 70 andi r21, 0x03 ; 3
12d4: 88 0f add r24, r24
12d6: 99 1f adc r25, r25
12d8: 88 0f add r24, r24
12da: 99 1f adc r25, r25
12dc: 58 2b or r21, r24
12de: 53 5c subi r21, 0xC3 ; 195
12e0: bf 73 andi r27, 0x3F ; 63
12e2: b3 5c subi r27, 0xC3 ; 195
12e4: 95 cf rjmp .-214 ; 0x1210 <SendOutData+0xd6>
12e6: e9 81 ldd r30, Y+1 ; 0x01
12e8: fa 81 ldd r31, Y+2 ; 0x02
12ea: 00 81 ld r16, Z
12ec: 11 81 ldd r17, Z+1 ; 0x01
12ee: 34 96 adiw r30, 0x04 ; 4
12f0: fa 83 std Y+2, r31 ; 0x02
12f2: e9 83 std Y+1, r30 ; 0x01
12f4: 34 97 sbiw r30, 0x04 ; 4
12f6: 22 81 ldd r18, Z+2 ; 0x02
12f8: 33 81 ldd r19, Z+3 ; 0x03
12fa: fa 94 dec r15
12fc: 21 15 cp r18, r1
12fe: 31 05 cpc r19, r1
1300: 79 f4 brne .+30 ; 0x1320 <SendOutData+0x1e6>
1302: 84 2f mov r24, r20
1304: 90 e0 ldi r25, 0x00 ; 0
1306: 42 95 swap r20
1308: 4f 70 andi r20, 0x0F ; 15
130a: 8f 70 andi r24, 0x0F ; 15
130c: 90 70 andi r25, 0x00 ; 0
130e: 88 0f add r24, r24
1310: 99 1f adc r25, r25
1312: 88 0f add r24, r24
1314: 99 1f adc r25, r25
1316: 58 2f mov r21, r24
1318: 53 5c subi r21, 0xC3 ; 195
131a: a0 e0 ldi r26, 0x00 ; 0
131c: bd e3 ldi r27, 0x3D ; 61
131e: 78 cf rjmp .-272 ; 0x1210 <SendOutData+0xd6>
1320: e0 e0 ldi r30, 0x00 ; 0
1322: f0 e0 ldi r31, 0x00 ; 0
1324: a1 e0 ldi r26, 0x01 ; 1
1326: 4b cf rjmp .-362 ; 0x11be <SendOutData+0x84>
1328: cb 01 movw r24, r22
132a: 0e 94 ae 07 call 0xf5c ; 0xf5c <AddCRC>
132e: 22 96 adiw r28, 0x02 ; 2
1330: 0f b6 in r0, 0x3f ; 63
1332: f8 94 cli
1334: de bf out 0x3e, r29 ; 62
1336: 0f be out 0x3f, r0 ; 63
1338: cd bf out 0x3d, r28 ; 61
133a: df 91 pop r29
133c: cf 91 pop r28
133e: 1f 91 pop r17
1340: 0f 91 pop r16
1342: ff 90 pop r15
1344: ef 90 pop r14
1346: 08 95 ret
 
00001348 <DatenUebertragung>:
1348: ef 92 push r14
134a: ff 92 push r15
134c: 0f 93 push r16
134e: 1f 93 push r17
1350: 80 91 03 01 lds r24, 0x0103
1354: 88 23 and r24, r24
1356: 09 f4 brne .+2 ; 0x135a <DatenUebertragung+0x12>
1358: 83 c2 rjmp .+1286 ; 0x1860 <DatenUebertragung+0x518>
135a: 80 91 c4 03 lds r24, 0x03C4
135e: 88 23 and r24, r24
1360: 29 f0 breq .+10 ; 0x136c <DatenUebertragung+0x24>
1362: 80 91 03 01 lds r24, 0x0103
1366: 88 23 and r24, r24
1368: 09 f0 breq .+2 ; 0x136c <DatenUebertragung+0x24>
136a: 4a c1 rjmp .+660 ; 0x1600 <DatenUebertragung+0x2b8>
136c: 80 91 c3 03 lds r24, 0x03C3
1370: 88 23 and r24, r24
1372: 29 f0 breq .+10 ; 0x137e <DatenUebertragung+0x36>
1374: 80 91 03 01 lds r24, 0x0103
1378: 88 23 and r24, r24
137a: 09 f0 breq .+2 ; 0x137e <DatenUebertragung+0x36>
137c: 7b c1 rjmp .+758 ; 0x1674 <DatenUebertragung+0x32c>
137e: 80 91 c6 03 lds r24, 0x03C6
1382: 88 23 and r24, r24
1384: 29 f0 breq .+10 ; 0x1390 <DatenUebertragung+0x48>
1386: 80 91 03 01 lds r24, 0x0103
138a: 88 23 and r24, r24
138c: 09 f0 breq .+2 ; 0x1390 <DatenUebertragung+0x48>
138e: a2 c1 rjmp .+836 ; 0x16d4 <DatenUebertragung+0x38c>
1390: 80 91 c2 03 lds r24, 0x03C2
1394: 88 23 and r24, r24
1396: 29 f0 breq .+10 ; 0x13a2 <DatenUebertragung+0x5a>
1398: 80 91 03 01 lds r24, 0x0103
139c: 88 23 and r24, r24
139e: 09 f0 breq .+2 ; 0x13a2 <DatenUebertragung+0x5a>
13a0: b9 c1 rjmp .+882 ; 0x1714 <DatenUebertragung+0x3cc>
13a2: 80 91 a7 06 lds r24, 0x06A7
13a6: 90 91 a8 06 lds r25, 0x06A8
13aa: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
13ae: 88 23 and r24, r24
13b0: 29 f0 breq .+10 ; 0x13bc <DatenUebertragung+0x74>
13b2: 80 91 03 01 lds r24, 0x0103
13b6: 88 23 and r24, r24
13b8: 09 f0 breq .+2 ; 0x13bc <DatenUebertragung+0x74>
13ba: d1 c1 rjmp .+930 ; 0x175e <DatenUebertragung+0x416>
13bc: 80 91 07 01 lds r24, 0x0107
13c0: 90 91 08 01 lds r25, 0x0108
13c4: 89 2b or r24, r25
13c6: 09 f0 breq .+2 ; 0x13ca <DatenUebertragung+0x82>
13c8: 6d c0 rjmp .+218 ; 0x14a4 <DatenUebertragung+0x15c>
13ca: 80 91 c5 03 lds r24, 0x03C5
13ce: 88 23 and r24, r24
13d0: 29 f0 breq .+10 ; 0x13dc <DatenUebertragung+0x94>
13d2: 80 91 03 01 lds r24, 0x0103
13d6: 88 23 and r24, r24
13d8: 09 f0 breq .+2 ; 0x13dc <DatenUebertragung+0x94>
13da: ea c0 rjmp .+468 ; 0x15b0 <DatenUebertragung+0x268>
13dc: 80 91 d6 03 lds r24, 0x03D6
13e0: 90 91 d7 03 lds r25, 0x03D7
13e4: 89 2b or r24, r25
13e6: 09 f0 breq .+2 ; 0x13ea <DatenUebertragung+0xa2>
13e8: 6c c0 rjmp .+216 ; 0x14c2 <DatenUebertragung+0x17a>
13ea: 80 91 04 01 lds r24, 0x0104
13ee: 8f 3f cpi r24, 0xFF ; 255
13f0: 59 f1 breq .+86 ; 0x1448 <DatenUebertragung+0x100>
13f2: 90 e0 ldi r25, 0x00 ; 0
13f4: 82 95 swap r24
13f6: 92 95 swap r25
13f8: 90 7f andi r25, 0xF0 ; 240
13fa: 98 27 eor r25, r24
13fc: 80 7f andi r24, 0xF0 ; 240
13fe: 98 27 eor r25, r24
1400: 87 5f subi r24, 0xF7 ; 247
1402: 9e 4f sbci r25, 0xFE ; 254
1404: 20 e1 ldi r18, 0x10 ; 16
1406: 30 e0 ldi r19, 0x00 ; 0
1408: 3f 93 push r19
140a: 2f 93 push r18
140c: 9f 93 push r25
140e: 8f 93 push r24
1410: 81 e0 ldi r24, 0x01 ; 1
1412: 90 e0 ldi r25, 0x00 ; 0
1414: 9f 93 push r25
1416: 8f 93 push r24
1418: 84 e0 ldi r24, 0x04 ; 4
141a: 91 e0 ldi r25, 0x01 ; 1
141c: 9f 93 push r25
141e: 8f 93 push r24
1420: 82 e0 ldi r24, 0x02 ; 2
1422: 8f 93 push r24
1424: 81 e0 ldi r24, 0x01 ; 1
1426: 8f 93 push r24
1428: 81 e4 ldi r24, 0x41 ; 65
142a: 8f 93 push r24
142c: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
1430: 8f ef ldi r24, 0xFF ; 255
1432: 80 93 04 01 sts 0x0104, r24
1436: 2d b7 in r18, 0x3d ; 61
1438: 3e b7 in r19, 0x3e ; 62
143a: 25 5f subi r18, 0xF5 ; 245
143c: 3f 4f sbci r19, 0xFF ; 255
143e: 0f b6 in r0, 0x3f ; 63
1440: f8 94 cli
1442: 3e bf out 0x3e, r19 ; 62
1444: 0f be out 0x3f, r0 ; 63
1446: 2d bf out 0x3d, r18 ; 61
1448: 80 91 81 07 lds r24, 0x0781
144c: 88 23 and r24, r24
144e: 29 f0 breq .+10 ; 0x145a <DatenUebertragung+0x112>
1450: 80 91 03 01 lds r24, 0x0103
1454: 88 23 and r24, r24
1456: 09 f0 breq .+2 ; 0x145a <DatenUebertragung+0x112>
1458: e5 c1 rjmp .+970 ; 0x1824 <DatenUebertragung+0x4dc>
145a: 80 91 c7 03 lds r24, 0x03C7
145e: 88 23 and r24, r24
1460: 09 f4 brne .+2 ; 0x1464 <DatenUebertragung+0x11c>
1462: fe c1 rjmp .+1020 ; 0x1860 <DatenUebertragung+0x518>
1464: 80 91 03 01 lds r24, 0x0103
1468: 88 23 and r24, r24
146a: 09 f4 brne .+2 ; 0x146e <DatenUebertragung+0x126>
146c: f9 c1 rjmp .+1010 ; 0x1860 <DatenUebertragung+0x518>
146e: 86 e1 ldi r24, 0x16 ; 22
1470: 90 e0 ldi r25, 0x00 ; 0
1472: 9f 93 push r25
1474: 8f 93 push r24
1476: 85 ea ldi r24, 0xA5 ; 165
1478: 97 e0 ldi r25, 0x07 ; 7
147a: 9f 93 push r25
147c: 8f 93 push r24
147e: 81 e0 ldi r24, 0x01 ; 1
1480: 8f 93 push r24
1482: 8f 93 push r24
1484: 80 e5 ldi r24, 0x50 ; 80
1486: 8f 93 push r24
1488: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
148c: 10 92 c7 03 sts 0x03C7, r1
1490: 2d b7 in r18, 0x3d ; 61
1492: 3e b7 in r19, 0x3e ; 62
1494: 29 5f subi r18, 0xF9 ; 249
1496: 3f 4f sbci r19, 0xFF ; 255
1498: 0f b6 in r0, 0x3f ; 63
149a: f8 94 cli
149c: 3e bf out 0x3e, r19 ; 62
149e: 0f be out 0x3f, r0 ; 63
14a0: 2d bf out 0x3d, r18 ; 61
14a2: de c1 rjmp .+956 ; 0x1860 <DatenUebertragung+0x518>
14a4: 80 91 88 06 lds r24, 0x0688
14a8: 90 91 89 06 lds r25, 0x0689
14ac: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
14b0: 88 23 and r24, r24
14b2: 09 f4 brne .+2 ; 0x14b6 <DatenUebertragung+0x16e>
14b4: 8a cf rjmp .-236 ; 0x13ca <DatenUebertragung+0x82>
14b6: 80 91 03 01 lds r24, 0x0103
14ba: 88 23 and r24, r24
14bc: 09 f4 brne .+2 ; 0x14c0 <DatenUebertragung+0x178>
14be: 8e cf rjmp .-228 ; 0x13dc <DatenUebertragung+0x94>
14c0: 77 c0 rjmp .+238 ; 0x15b0 <DatenUebertragung+0x268>
14c2: 80 91 5a 05 lds r24, 0x055A
14c6: 90 91 5b 05 lds r25, 0x055B
14ca: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
14ce: 88 23 and r24, r24
14d0: 09 f4 brne .+2 ; 0x14d4 <DatenUebertragung+0x18c>
14d2: 8b cf rjmp .-234 ; 0x13ea <DatenUebertragung+0xa2>
14d4: 80 91 03 01 lds r24, 0x0103
14d8: 88 23 and r24, r24
14da: 09 f4 brne .+2 ; 0x14de <DatenUebertragung+0x196>
14dc: 86 cf rjmp .-244 ; 0x13ea <DatenUebertragung+0xa2>
14de: e0 90 eb 07 lds r14, 0x07EB
14e2: ff 24 eor r15, r15
14e4: ee 0c add r14, r14
14e6: ff 1c adc r15, r15
14e8: ee 0c add r14, r14
14ea: ff 1c adc r15, r15
14ec: 00 27 eor r16, r16
14ee: f7 fc sbrc r15, 7
14f0: 00 95 com r16
14f2: 10 2f mov r17, r16
14f4: 60 91 45 04 lds r22, 0x0445
14f8: 70 91 46 04 lds r23, 0x0446
14fc: 80 91 47 04 lds r24, 0x0447
1500: 90 91 48 04 lds r25, 0x0448
1504: a8 01 movw r20, r16
1506: 97 01 movw r18, r14
1508: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
150c: 30 93 4d 05 sts 0x054D, r19
1510: 20 93 4c 05 sts 0x054C, r18
1514: 60 91 4d 04 lds r22, 0x044D
1518: 70 91 4e 04 lds r23, 0x044E
151c: 80 91 4f 04 lds r24, 0x044F
1520: 90 91 50 04 lds r25, 0x0450
1524: a8 01 movw r20, r16
1526: 97 01 movw r18, r14
1528: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
152c: 30 93 4f 05 sts 0x054F, r19
1530: 20 93 4e 05 sts 0x054E, r18
1534: 60 91 7e 08 lds r22, 0x087E
1538: 70 91 7f 08 lds r23, 0x087F
153c: 80 91 80 08 lds r24, 0x0880
1540: 90 91 81 08 lds r25, 0x0881
1544: 2a e0 ldi r18, 0x0A ; 10
1546: 30 e0 ldi r19, 0x00 ; 0
1548: 40 e0 ldi r20, 0x00 ; 0
154a: 50 e0 ldi r21, 0x00 ; 0
154c: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
1550: 20 91 b3 03 lds r18, 0x03B3
1554: 30 91 b4 03 lds r19, 0x03B4
1558: 40 91 b5 03 lds r20, 0x03B5
155c: 50 91 b6 03 lds r21, 0x03B6
1560: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
1564: 30 93 51 05 sts 0x0551, r19
1568: 20 93 50 05 sts 0x0550, r18
156c: 8e e0 ldi r24, 0x0E ; 14
156e: 90 e0 ldi r25, 0x00 ; 0
1570: 9f 93 push r25
1572: 8f 93 push r24
1574: 8c e4 ldi r24, 0x4C ; 76
1576: 95 e0 ldi r25, 0x05 ; 5
1578: 9f 93 push r25
157a: 8f 93 push r24
157c: 81 e0 ldi r24, 0x01 ; 1
157e: 8f 93 push r24
1580: 8f 93 push r24
1582: 83 e4 ldi r24, 0x43 ; 67
1584: 8f 93 push r24
1586: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
158a: 80 91 d6 03 lds r24, 0x03D6
158e: 90 91 d7 03 lds r25, 0x03D7
1592: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
1596: 90 93 5b 05 sts 0x055B, r25
159a: 80 93 5a 05 sts 0x055A, r24
159e: 8d b7 in r24, 0x3d ; 61
15a0: 9e b7 in r25, 0x3e ; 62
15a2: 07 96 adiw r24, 0x07 ; 7
15a4: 0f b6 in r0, 0x3f ; 63
15a6: f8 94 cli
15a8: 9e bf out 0x3e, r25 ; 62
15aa: 0f be out 0x3f, r0 ; 63
15ac: 8d bf out 0x3d, r24 ; 61
15ae: 1d cf rjmp .-454 ; 0x13ea <DatenUebertragung+0xa2>
15b0: 82 e4 ldi r24, 0x42 ; 66
15b2: 90 e0 ldi r25, 0x00 ; 0
15b4: 9f 93 push r25
15b6: 8f 93 push r24
15b8: 8f e3 ldi r24, 0x3F ; 63
15ba: 97 e0 ldi r25, 0x07 ; 7
15bc: 9f 93 push r25
15be: 8f 93 push r24
15c0: 81 e0 ldi r24, 0x01 ; 1
15c2: 8f 93 push r24
15c4: 8f 93 push r24
15c6: 84 e4 ldi r24, 0x44 ; 68
15c8: 8f 93 push r24
15ca: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
15ce: 10 92 c5 03 sts 0x03C5, r1
15d2: 80 91 07 01 lds r24, 0x0107
15d6: 90 91 08 01 lds r25, 0x0108
15da: 2d b7 in r18, 0x3d ; 61
15dc: 3e b7 in r19, 0x3e ; 62
15de: 29 5f subi r18, 0xF9 ; 249
15e0: 3f 4f sbci r19, 0xFF ; 255
15e2: 0f b6 in r0, 0x3f ; 63
15e4: f8 94 cli
15e6: 3e bf out 0x3e, r19 ; 62
15e8: 0f be out 0x3f, r0 ; 63
15ea: 2d bf out 0x3d, r18 ; 61
15ec: 00 97 sbiw r24, 0x00 ; 0
15ee: 09 f4 brne .+2 ; 0x15f2 <DatenUebertragung+0x2aa>
15f0: f5 ce rjmp .-534 ; 0x13dc <DatenUebertragung+0x94>
15f2: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
15f6: 90 93 89 06 sts 0x0689, r25
15fa: 80 93 88 06 sts 0x0688, r24
15fe: ee ce rjmp .-548 ; 0x13dc <DatenUebertragung+0x94>
1600: 0e 94 61 1b call 0x36c2 ; 0x36c2 <Menu>
1604: 80 91 c8 03 lds r24, 0x03C8
1608: 24 e1 ldi r18, 0x14 ; 20
160a: 82 9f mul r24, r18
160c: c0 01 movw r24, r0
160e: 11 24 eor r1, r1
1610: 88 5d subi r24, 0xD8 ; 216
1612: 9c 4f sbci r25, 0xFC ; 252
1614: 24 e1 ldi r18, 0x14 ; 20
1616: 30 e0 ldi r19, 0x00 ; 0
1618: 3f 93 push r19
161a: 2f 93 push r18
161c: 9f 93 push r25
161e: 8f 93 push r24
1620: 81 e0 ldi r24, 0x01 ; 1
1622: 90 e0 ldi r25, 0x00 ; 0
1624: 9f 93 push r25
1626: 8f 93 push r24
1628: 88 ec ldi r24, 0xC8 ; 200
162a: 93 e0 ldi r25, 0x03 ; 3
162c: 9f 93 push r25
162e: 8f 93 push r24
1630: 82 e0 ldi r24, 0x02 ; 2
1632: 8f 93 push r24
1634: 81 e0 ldi r24, 0x01 ; 1
1636: 8f 93 push r24
1638: 88 e4 ldi r24, 0x48 ; 72
163a: 8f 93 push r24
163c: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
1640: 80 91 c8 03 lds r24, 0x03C8
1644: 8f 5f subi r24, 0xFF ; 255
1646: 80 93 c8 03 sts 0x03C8, r24
164a: 2d b7 in r18, 0x3d ; 61
164c: 3e b7 in r19, 0x3e ; 62
164e: 25 5f subi r18, 0xF5 ; 245
1650: 3f 4f sbci r19, 0xFF ; 255
1652: 0f b6 in r0, 0x3f ; 63
1654: f8 94 cli
1656: 3e bf out 0x3e, r19 ; 62
1658: 0f be out 0x3f, r0 ; 63
165a: 2d bf out 0x3d, r18 ; 61
165c: 84 30 cpi r24, 0x04 ; 4
165e: 10 f0 brcs .+4 ; 0x1664 <DatenUebertragung+0x31c>
1660: 10 92 c8 03 sts 0x03C8, r1
1664: 10 92 c4 03 sts 0x03C4, r1
1668: 80 91 c3 03 lds r24, 0x03C3
166c: 88 23 and r24, r24
166e: 09 f4 brne .+2 ; 0x1672 <DatenUebertragung+0x32a>
1670: 86 ce rjmp .-756 ; 0x137e <DatenUebertragung+0x36>
1672: 80 ce rjmp .-768 ; 0x1374 <DatenUebertragung+0x2c>
1674: 0e 94 61 1b call 0x36c2 ; 0x36c2 <Menu>
1678: 80 e5 ldi r24, 0x50 ; 80
167a: 90 e0 ldi r25, 0x00 ; 0
167c: 9f 93 push r25
167e: 8f 93 push r24
1680: 88 e2 ldi r24, 0x28 ; 40
1682: 93 e0 ldi r25, 0x03 ; 3
1684: 9f 93 push r25
1686: 8f 93 push r24
1688: 21 e0 ldi r18, 0x01 ; 1
168a: 30 e0 ldi r19, 0x00 ; 0
168c: 3f 93 push r19
168e: 2f 93 push r18
1690: 88 e7 ldi r24, 0x78 ; 120
1692: 93 e0 ldi r25, 0x03 ; 3
1694: 9f 93 push r25
1696: 8f 93 push r24
1698: 3f 93 push r19
169a: 2f 93 push r18
169c: 86 e2 ldi r24, 0x26 ; 38
169e: 94 e0 ldi r25, 0x04 ; 4
16a0: 9f 93 push r25
16a2: 8f 93 push r24
16a4: 83 e0 ldi r24, 0x03 ; 3
16a6: 8f 93 push r24
16a8: 81 e0 ldi r24, 0x01 ; 1
16aa: 8f 93 push r24
16ac: 8c e4 ldi r24, 0x4C ; 76
16ae: 8f 93 push r24
16b0: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
16b4: 10 92 c3 03 sts 0x03C3, r1
16b8: 8d b7 in r24, 0x3d ; 61
16ba: 9e b7 in r25, 0x3e ; 62
16bc: 0f 96 adiw r24, 0x0f ; 15
16be: 0f b6 in r0, 0x3f ; 63
16c0: f8 94 cli
16c2: 9e bf out 0x3e, r25 ; 62
16c4: 0f be out 0x3f, r0 ; 63
16c6: 8d bf out 0x3d, r24 ; 61
16c8: 80 91 c6 03 lds r24, 0x03C6
16cc: 88 23 and r24, r24
16ce: 09 f4 brne .+2 ; 0x16d2 <DatenUebertragung+0x38a>
16d0: 5f ce rjmp .-834 ; 0x1390 <DatenUebertragung+0x48>
16d2: 59 ce rjmp .-846 ; 0x1386 <DatenUebertragung+0x3e>
16d4: 8a e0 ldi r24, 0x0A ; 10
16d6: 90 e0 ldi r25, 0x00 ; 0
16d8: 9f 93 push r25
16da: 8f 93 push r24
16dc: 8a e8 ldi r24, 0x8A ; 138
16de: 96 e0 ldi r25, 0x06 ; 6
16e0: 9f 93 push r25
16e2: 8f 93 push r24
16e4: 81 e0 ldi r24, 0x01 ; 1
16e6: 8f 93 push r24
16e8: 8f 93 push r24
16ea: 86 e5 ldi r24, 0x56 ; 86
16ec: 8f 93 push r24
16ee: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
16f2: 10 92 c6 03 sts 0x03C6, r1
16f6: 2d b7 in r18, 0x3d ; 61
16f8: 3e b7 in r19, 0x3e ; 62
16fa: 29 5f subi r18, 0xF9 ; 249
16fc: 3f 4f sbci r19, 0xFF ; 255
16fe: 0f b6 in r0, 0x3f ; 63
1700: f8 94 cli
1702: 3e bf out 0x3e, r19 ; 62
1704: 0f be out 0x3f, r0 ; 63
1706: 2d bf out 0x3d, r18 ; 61
1708: 80 91 c2 03 lds r24, 0x03C2
170c: 88 23 and r24, r24
170e: 09 f4 brne .+2 ; 0x1712 <DatenUebertragung+0x3ca>
1710: 48 ce rjmp .-880 ; 0x13a2 <DatenUebertragung+0x5a>
1712: 42 ce rjmp .-892 ; 0x1398 <DatenUebertragung+0x50>
1714: 20 91 06 01 lds r18, 0x0106
1718: 8b e0 ldi r24, 0x0B ; 11
171a: 90 e0 ldi r25, 0x00 ; 0
171c: 9f 93 push r25
171e: 8f 93 push r24
1720: 8c e9 ldi r24, 0x9C ; 156
1722: 96 e0 ldi r25, 0x06 ; 6
1724: 9f 93 push r25
1726: 8f 93 push r24
1728: 81 e0 ldi r24, 0x01 ; 1
172a: 8f 93 push r24
172c: 2f 93 push r18
172e: 87 e4 ldi r24, 0x47 ; 71
1730: 8f 93 push r24
1732: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
1736: 10 92 c2 03 sts 0x03C2, r1
173a: 8d b7 in r24, 0x3d ; 61
173c: 9e b7 in r25, 0x3e ; 62
173e: 07 96 adiw r24, 0x07 ; 7
1740: 0f b6 in r0, 0x3f ; 63
1742: f8 94 cli
1744: 9e bf out 0x3e, r25 ; 62
1746: 0f be out 0x3f, r0 ; 63
1748: 8d bf out 0x3d, r24 ; 61
174a: 80 91 a7 06 lds r24, 0x06A7
174e: 90 91 a8 06 lds r25, 0x06A8
1752: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
1756: 88 23 and r24, r24
1758: 09 f4 brne .+2 ; 0x175c <DatenUebertragung+0x414>
175a: 30 ce rjmp .-928 ; 0x13bc <DatenUebertragung+0x74>
175c: 2a ce rjmp .-940 ; 0x13b2 <DatenUebertragung+0x6a>
175e: e0 90 eb 07 lds r14, 0x07EB
1762: ff 24 eor r15, r15
1764: ee 0c add r14, r14
1766: ff 1c adc r15, r15
1768: ee 0c add r14, r14
176a: ff 1c adc r15, r15
176c: 00 27 eor r16, r16
176e: f7 fc sbrc r15, 7
1770: 00 95 com r16
1772: 10 2f mov r17, r16
1774: 60 91 45 04 lds r22, 0x0445
1778: 70 91 46 04 lds r23, 0x0446
177c: 80 91 47 04 lds r24, 0x0447
1780: 90 91 48 04 lds r25, 0x0448
1784: a8 01 movw r20, r16
1786: 97 01 movw r18, r14
1788: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
178c: 30 93 95 06 sts 0x0695, r19
1790: 20 93 94 06 sts 0x0694, r18
1794: 60 91 4d 04 lds r22, 0x044D
1798: 70 91 4e 04 lds r23, 0x044E
179c: 80 91 4f 04 lds r24, 0x044F
17a0: 90 91 50 04 lds r25, 0x0450
17a4: a8 01 movw r20, r16
17a6: 97 01 movw r18, r14
17a8: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
17ac: 30 93 97 06 sts 0x0697, r19
17b0: 20 93 96 06 sts 0x0696, r18
17b4: 80 91 ac 04 lds r24, 0x04AC
17b8: 80 93 98 06 sts 0x0698, r24
17bc: 80 91 ad 04 lds r24, 0x04AD
17c0: 80 93 99 06 sts 0x0699, r24
17c4: 88 e0 ldi r24, 0x08 ; 8
17c6: 90 e0 ldi r25, 0x00 ; 0
17c8: 9f 93 push r25
17ca: 8f 93 push r24
17cc: 84 e9 ldi r24, 0x94 ; 148
17ce: 96 e0 ldi r25, 0x06 ; 6
17d0: 9f 93 push r25
17d2: 8f 93 push r24
17d4: 81 e0 ldi r24, 0x01 ; 1
17d6: 8f 93 push r24
17d8: 83 e0 ldi r24, 0x03 ; 3
17da: 8f 93 push r24
17dc: 87 e7 ldi r24, 0x77 ; 119
17de: 8f 93 push r24
17e0: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
17e4: 2d b7 in r18, 0x3d ; 61
17e6: 3e b7 in r19, 0x3e ; 62
17e8: 29 5f subi r18, 0xF9 ; 249
17ea: 3f 4f sbci r19, 0xFF ; 255
17ec: 0f b6 in r0, 0x3f ; 63
17ee: f8 94 cli
17f0: 3e bf out 0x3e, r19 ; 62
17f2: 0f be out 0x3f, r0 ; 63
17f4: 2d bf out 0x3d, r18 ; 61
17f6: 80 91 9a 06 lds r24, 0x069A
17fa: 85 30 cpi r24, 0x05 ; 5
17fc: 18 f0 brcs .+6 ; 0x1804 <DatenUebertragung+0x4bc>
17fe: 86 e0 ldi r24, 0x06 ; 6
1800: 80 93 9a 06 sts 0x069A, r24
1804: 83 e6 ldi r24, 0x63 ; 99
1806: 90 e0 ldi r25, 0x00 ; 0
1808: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
180c: 90 93 a8 06 sts 0x06A8, r25
1810: 80 93 a7 06 sts 0x06A7, r24
1814: 80 91 07 01 lds r24, 0x0107
1818: 90 91 08 01 lds r25, 0x0108
181c: 89 2b or r24, r25
181e: 09 f4 brne .+2 ; 0x1822 <DatenUebertragung+0x4da>
1820: d4 cd rjmp .-1112 ; 0x13ca <DatenUebertragung+0x82>
1822: 40 ce rjmp .-896 ; 0x14a4 <DatenUebertragung+0x15c>
1824: 81 e0 ldi r24, 0x01 ; 1
1826: 90 e0 ldi r25, 0x00 ; 0
1828: 9f 93 push r25
182a: 8f 93 push r24
182c: 81 e8 ldi r24, 0x81 ; 129
182e: 97 e0 ldi r25, 0x07 ; 7
1830: 9f 93 push r25
1832: 8f 93 push r24
1834: 81 e0 ldi r24, 0x01 ; 1
1836: 8f 93 push r24
1838: 8f 93 push r24
183a: 82 e4 ldi r24, 0x42 ; 66
183c: 8f 93 push r24
183e: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
1842: 10 92 81 07 sts 0x0781, r1
1846: 8d b7 in r24, 0x3d ; 61
1848: 9e b7 in r25, 0x3e ; 62
184a: 07 96 adiw r24, 0x07 ; 7
184c: 0f b6 in r0, 0x3f ; 63
184e: f8 94 cli
1850: 9e bf out 0x3e, r25 ; 62
1852: 0f be out 0x3f, r0 ; 63
1854: 8d bf out 0x3d, r24 ; 61
1856: 80 91 c7 03 lds r24, 0x03C7
185a: 88 23 and r24, r24
185c: 09 f0 breq .+2 ; 0x1860 <DatenUebertragung+0x518>
185e: 02 ce rjmp .-1020 ; 0x1464 <DatenUebertragung+0x11c>
1860: 1f 91 pop r17
1862: 0f 91 pop r16
1864: ff 90 pop r15
1866: ef 90 pop r14
1868: 08 95 ret
 
0000186a <BearbeiteRxDaten>:
186a: ef 92 push r14
186c: ff 92 push r15
186e: 0f 93 push r16
1870: 1f 93 push r17
1872: cf 93 push r28
1874: df 93 push r29
1876: cd b7 in r28, 0x3d ; 61
1878: de b7 in r29, 0x3e ; 62
187a: 22 97 sbiw r28, 0x02 ; 2
187c: 0f b6 in r0, 0x3f ; 63
187e: f8 94 cli
1880: de bf out 0x3e, r29 ; 62
1882: 0f be out 0x3f, r0 ; 63
1884: cd bf out 0x3d, r28 ; 61
1886: 80 91 ca 03 lds r24, 0x03CA
188a: 88 23 and r24, r24
188c: 09 f4 brne .+2 ; 0x1890 <BearbeiteRxDaten+0x26>
188e: 15 c2 rjmp .+1066 ; 0x1cba <BearbeiteRxDaten+0x450>
1890: 0e 94 f1 07 call 0xfe2 ; 0xfe2 <Decode64>
1894: 80 91 aa 06 lds r24, 0x06AA
1898: 82 36 cpi r24, 0x62 ; 98
189a: 79 f1 breq .+94 ; 0x18fa <BearbeiteRxDaten+0x90>
189c: 80 91 ab 06 lds r24, 0x06AB
18a0: 84 36 cpi r24, 0x64 ; 100
18a2: 09 f4 brne .+2 ; 0x18a6 <BearbeiteRxDaten+0x3c>
18a4: 49 c1 rjmp .+658 ; 0x1b38 <BearbeiteRxDaten+0x2ce>
18a6: 85 36 cpi r24, 0x65 ; 101
18a8: c0 f1 brcs .+112 ; 0x191a <BearbeiteRxDaten+0xb0>
18aa: 8c 36 cpi r24, 0x6C ; 108
18ac: 09 f4 brne .+2 ; 0x18b0 <BearbeiteRxDaten+0x46>
18ae: 29 c1 rjmp .+594 ; 0x1b02 <BearbeiteRxDaten+0x298>
18b0: 8d 36 cpi r24, 0x6D ; 109
18b2: 08 f0 brcs .+2 ; 0x18b6 <BearbeiteRxDaten+0x4c>
18b4: 72 c0 rjmp .+228 ; 0x199a <BearbeiteRxDaten+0x130>
18b6: 87 36 cpi r24, 0x67 ; 103
18b8: 09 f4 brne .+2 ; 0x18bc <BearbeiteRxDaten+0x52>
18ba: e9 c0 rjmp .+466 ; 0x1a8e <BearbeiteRxDaten+0x224>
18bc: 88 36 cpi r24, 0x68 ; 104
18be: a1 f4 brne .+40 ; 0x18e8 <BearbeiteRxDaten+0x7e>
18c0: 8f ef ldi r24, 0xFF ; 255
18c2: 80 93 05 01 sts 0x0105, r24
18c6: 80 91 27 04 lds r24, 0x0427
18ca: e0 91 ce 03 lds r30, 0x03CE
18ce: f0 91 cf 03 lds r31, 0x03CF
18d2: 90 81 ld r25, Z
18d4: 89 2b or r24, r25
18d6: 80 93 27 04 sts 0x0427, r24
18da: 88 23 and r24, r24
18dc: 11 f0 breq .+4 ; 0x18e2 <BearbeiteRxDaten+0x78>
18de: 10 92 c8 03 sts 0x03C8, r1
18e2: 81 e0 ldi r24, 0x01 ; 1
18e4: 80 93 c4 03 sts 0x03C4, r24
18e8: 10 92 ca 03 sts 0x03CA, r1
18ec: 10 92 cf 03 sts 0x03CF, r1
18f0: 10 92 ce 03 sts 0x03CE, r1
18f4: 10 92 d0 03 sts 0x03D0, r1
18f8: e0 c1 rjmp .+960 ; 0x1cba <BearbeiteRxDaten+0x450>
18fa: 80 91 ab 06 lds r24, 0x06AB
18fe: 81 37 cpi r24, 0x71 ; 113
1900: 09 f4 brne .+2 ; 0x1904 <BearbeiteRxDaten+0x9a>
1902: 76 c0 rjmp .+236 ; 0x19f0 <BearbeiteRxDaten+0x186>
1904: 82 37 cpi r24, 0x72 ; 114
1906: 70 f5 brcc .+92 ; 0x1964 <BearbeiteRxDaten+0xfa>
1908: 8b 34 cpi r24, 0x4B ; 75
190a: 09 f4 brne .+2 ; 0x190e <BearbeiteRxDaten+0xa4>
190c: 29 c1 rjmp .+594 ; 0x1b60 <BearbeiteRxDaten+0x2f6>
190e: 80 37 cpi r24, 0x70 ; 112
1910: 29 f6 brne .-118 ; 0x189c <BearbeiteRxDaten+0x32>
1912: 81 e0 ldi r24, 0x01 ; 1
1914: 80 93 c7 03 sts 0x03C7, r24
1918: c1 cf rjmp .-126 ; 0x189c <BearbeiteRxDaten+0x32>
191a: 81 36 cpi r24, 0x61 ; 97
191c: 09 f4 brne .+2 ; 0x1920 <BearbeiteRxDaten+0xb6>
191e: ff c0 rjmp .+510 ; 0x1b1e <BearbeiteRxDaten+0x2b4>
1920: 82 36 cpi r24, 0x62 ; 98
1922: 08 f0 brcs .+2 ; 0x1926 <BearbeiteRxDaten+0xbc>
1924: 44 c0 rjmp .+136 ; 0x19ae <BearbeiteRxDaten+0x144>
1926: 8b 34 cpi r24, 0x4B ; 75
1928: f9 f6 brne .-66 ; 0x18e8 <BearbeiteRxDaten+0x7e>
192a: e0 91 ce 03 lds r30, 0x03CE
192e: f0 91 cf 03 lds r31, 0x03CF
1932: 80 81 ld r24, Z
1934: 91 81 ldd r25, Z+1 ; 0x01
1936: 90 93 82 04 sts 0x0482, r25
193a: 80 93 81 04 sts 0x0481, r24
193e: 84 5e subi r24, 0xE4 ; 228
1940: 9d 4f sbci r25, 0xFD ; 253
1942: 20 91 83 04 lds r18, 0x0483
1946: 30 91 84 04 lds r19, 0x0484
194a: 82 1b sub r24, r18
194c: 93 0b sbc r25, r19
194e: 68 e6 ldi r22, 0x68 ; 104
1950: 71 e0 ldi r23, 0x01 ; 1
1952: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
1956: 84 5b subi r24, 0xB4 ; 180
1958: 90 40 sbci r25, 0x00 ; 0
195a: 90 93 86 04 sts 0x0486, r25
195e: 80 93 85 04 sts 0x0485, r24
1962: c2 cf rjmp .-124 ; 0x18e8 <BearbeiteRxDaten+0x7e>
1964: 83 37 cpi r24, 0x73 ; 115
1966: 09 f4 brne .+2 ; 0x196a <BearbeiteRxDaten+0x100>
1968: 19 c1 rjmp .+562 ; 0x1b9c <BearbeiteRxDaten+0x332>
196a: 84 37 cpi r24, 0x74 ; 116
196c: 09 f0 breq .+2 ; 0x1970 <BearbeiteRxDaten+0x106>
196e: 96 cf rjmp .-212 ; 0x189c <BearbeiteRxDaten+0x32>
1970: 00 91 ce 03 lds r16, 0x03CE
1974: 10 91 cf 03 lds r17, 0x03CF
1978: f8 01 movw r30, r16
197a: 80 81 ld r24, Z
197c: 91 81 ldd r25, Z+1 ; 0x01
197e: a2 81 ldd r26, Z+2 ; 0x02
1980: b3 81 ldd r27, Z+3 ; 0x03
1982: 80 93 d2 03 sts 0x03D2, r24
1986: 90 93 d3 03 sts 0x03D3, r25
198a: a0 93 d4 03 sts 0x03D4, r26
198e: b0 93 d5 03 sts 0x03D5, r27
1992: 8f ef ldi r24, 0xFF ; 255
1994: 80 93 05 01 sts 0x0105, r24
1998: 81 cf rjmp .-254 ; 0x189c <BearbeiteRxDaten+0x32>
199a: 84 37 cpi r24, 0x74 ; 116
199c: 09 f4 brne .+2 ; 0x19a0 <BearbeiteRxDaten+0x136>
199e: 8e c0 rjmp .+284 ; 0x1abc <BearbeiteRxDaten+0x252>
19a0: 86 37 cpi r24, 0x76 ; 118
19a2: 09 f0 breq .+2 ; 0x19a6 <BearbeiteRxDaten+0x13c>
19a4: a1 cf rjmp .-190 ; 0x18e8 <BearbeiteRxDaten+0x7e>
19a6: 81 e0 ldi r24, 0x01 ; 1
19a8: 80 93 c6 03 sts 0x03C6, r24
19ac: 9d cf rjmp .-198 ; 0x18e8 <BearbeiteRxDaten+0x7e>
19ae: 82 36 cpi r24, 0x62 ; 98
19b0: 09 f4 brne .+2 ; 0x19b4 <BearbeiteRxDaten+0x14a>
19b2: 71 c0 rjmp .+226 ; 0x1a96 <BearbeiteRxDaten+0x22c>
19b4: 83 36 cpi r24, 0x63 ; 99
19b6: 09 f0 breq .+2 ; 0x19ba <BearbeiteRxDaten+0x150>
19b8: 97 cf rjmp .-210 ; 0x18e8 <BearbeiteRxDaten+0x7e>
19ba: 80 91 d6 03 lds r24, 0x03D6
19be: 90 91 d7 03 lds r25, 0x03D7
19c2: 89 2b or r24, r25
19c4: 09 f0 breq .+2 ; 0x19c8 <BearbeiteRxDaten+0x15e>
19c6: 51 c1 rjmp .+674 ; 0x1c6a <BearbeiteRxDaten+0x400>
19c8: 00 91 ce 03 lds r16, 0x03CE
19cc: 10 91 cf 03 lds r17, 0x03CF
19d0: f8 01 movw r30, r16
19d2: 90 81 ld r25, Z
19d4: 99 23 and r25, r25
19d6: 09 f0 breq .+2 ; 0x19da <BearbeiteRxDaten+0x170>
19d8: 58 c1 rjmp .+688 ; 0x1c8a <BearbeiteRxDaten+0x420>
19da: f8 01 movw r30, r16
19dc: 80 81 ld r24, Z
19de: 2a e0 ldi r18, 0x0A ; 10
19e0: 82 9f mul r24, r18
19e2: c0 01 movw r24, r0
19e4: 11 24 eor r1, r1
19e6: 90 93 d7 03 sts 0x03D7, r25
19ea: 80 93 d6 03 sts 0x03D6, r24
19ee: 7c cf rjmp .-264 ; 0x18e8 <BearbeiteRxDaten+0x7e>
19f0: 00 91 ce 03 lds r16, 0x03CE
19f4: 10 91 cf 03 lds r17, 0x03CF
19f8: f8 01 movw r30, r16
19fa: 80 81 ld r24, Z
19fc: 8f 3f cpi r24, 0xFF ; 255
19fe: 09 f4 brne .+2 ; 0x1a02 <BearbeiteRxDaten+0x198>
1a00: 53 c1 rjmp .+678 ; 0x1ca8 <BearbeiteRxDaten+0x43e>
1a02: f8 01 movw r30, r16
1a04: 80 81 ld r24, Z
1a06: 88 23 and r24, r24
1a08: 09 f0 breq .+2 ; 0x1a0c <BearbeiteRxDaten+0x1a2>
1a0a: 34 c1 rjmp .+616 ; 0x1c74 <BearbeiteRxDaten+0x40a>
1a0c: 81 e0 ldi r24, 0x01 ; 1
1a0e: 80 83 st Z, r24
1a10: 00 91 ce 03 lds r16, 0x03CE
1a14: 10 91 cf 03 lds r17, 0x03CF
1a18: 97 ed ldi r25, 0xD7 ; 215
1a1a: e9 2e mov r14, r25
1a1c: 97 e0 ldi r25, 0x07 ; 7
1a1e: f9 2e mov r15, r25
1a20: 4c e5 ldi r20, 0x5C ; 92
1a22: b7 01 movw r22, r14
1a24: f8 01 movw r30, r16
1a26: 80 81 ld r24, Z
1a28: 0e 94 3a 03 call 0x674 ; 0x674 <ReadParameterSet>
1a2c: 80 91 03 01 lds r24, 0x0103
1a30: 88 23 and r24, r24
1a32: e1 f3 breq .-8 ; 0x1a2c <BearbeiteRxDaten+0x1c2>
1a34: e0 91 ce 03 lds r30, 0x03CE
1a38: f0 91 cf 03 lds r31, 0x03CF
1a3c: 80 81 ld r24, Z
1a3e: 89 83 std Y+1, r24 ; 0x01
1a40: 8a e4 ldi r24, 0x4A ; 74
1a42: 8a 83 std Y+2, r24 ; 0x02
1a44: 8c e5 ldi r24, 0x5C ; 92
1a46: 90 e0 ldi r25, 0x00 ; 0
1a48: 9f 93 push r25
1a4a: 8f 93 push r24
1a4c: ff 92 push r15
1a4e: ef 92 push r14
1a50: 21 e0 ldi r18, 0x01 ; 1
1a52: 30 e0 ldi r19, 0x00 ; 0
1a54: 3f 93 push r19
1a56: 2f 93 push r18
1a58: ce 01 movw r24, r28
1a5a: 02 96 adiw r24, 0x02 ; 2
1a5c: 9f 93 push r25
1a5e: 8f 93 push r24
1a60: 3f 93 push r19
1a62: 2f 93 push r18
1a64: ce 01 movw r24, r28
1a66: 01 96 adiw r24, 0x01 ; 1
1a68: 9f 93 push r25
1a6a: 8f 93 push r24
1a6c: 83 e0 ldi r24, 0x03 ; 3
1a6e: 8f 93 push r24
1a70: 81 e0 ldi r24, 0x01 ; 1
1a72: 8f 93 push r24
1a74: 81 e5 ldi r24, 0x51 ; 81
1a76: 8f 93 push r24
1a78: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
1a7c: 8d b7 in r24, 0x3d ; 61
1a7e: 9e b7 in r25, 0x3e ; 62
1a80: 0f 96 adiw r24, 0x0f ; 15
1a82: 0f b6 in r0, 0x3f ; 63
1a84: f8 94 cli
1a86: 9e bf out 0x3e, r25 ; 62
1a88: 0f be out 0x3f, r0 ; 63
1a8a: 8d bf out 0x3d, r24 ; 61
1a8c: 07 cf rjmp .-498 ; 0x189c <BearbeiteRxDaten+0x32>
1a8e: 81 e0 ldi r24, 0x01 ; 1
1a90: 80 93 c2 03 sts 0x03C2, r24
1a94: 29 cf rjmp .-430 ; 0x18e8 <BearbeiteRxDaten+0x7e>
1a96: ac e9 ldi r26, 0x9C ; 156
1a98: b6 e0 ldi r27, 0x06 ; 6
1a9a: e0 91 ce 03 lds r30, 0x03CE
1a9e: f0 91 cf 03 lds r31, 0x03CF
1aa2: 8b e0 ldi r24, 0x0B ; 11
1aa4: 01 90 ld r0, Z+
1aa6: 0d 92 st X+, r0
1aa8: 81 50 subi r24, 0x01 ; 1
1aaa: e1 f7 brne .-8 ; 0x1aa4 <BearbeiteRxDaten+0x23a>
1aac: 80 91 a5 06 lds r24, 0x06A5
1ab0: 80 93 81 07 sts 0x0781, r24
1ab4: 8f ef ldi r24, 0xFF ; 255
1ab6: 80 93 05 01 sts 0x0105, r24
1aba: 16 cf rjmp .-468 ; 0x18e8 <BearbeiteRxDaten+0x7e>
1abc: e0 91 ce 03 lds r30, 0x03CE
1ac0: f0 91 cf 03 lds r31, 0x03CF
1ac4: 80 81 ld r24, Z
1ac6: 91 81 ldd r25, Z+1 ; 0x01
1ac8: a2 81 ldd r26, Z+2 ; 0x02
1aca: b3 81 ldd r27, Z+3 ; 0x03
1acc: 80 93 d2 03 sts 0x03D2, r24
1ad0: 90 93 d3 03 sts 0x03D3, r25
1ad4: a0 93 d4 03 sts 0x03D4, r26
1ad8: b0 93 d5 03 sts 0x03D5, r27
1adc: 80 91 03 01 lds r24, 0x0103
1ae0: 88 23 and r24, r24
1ae2: e1 f3 breq .-8 ; 0x1adc <BearbeiteRxDaten+0x272>
1ae4: 80 91 06 01 lds r24, 0x0106
1ae8: 1f 92 push r1
1aea: 8f 93 push r24
1aec: 84 e5 ldi r24, 0x54 ; 84
1aee: 8f 93 push r24
1af0: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
1af4: 8f ef ldi r24, 0xFF ; 255
1af6: 80 93 05 01 sts 0x0105, r24
1afa: 0f 90 pop r0
1afc: 0f 90 pop r0
1afe: 0f 90 pop r0
1b00: f3 ce rjmp .-538 ; 0x18e8 <BearbeiteRxDaten+0x7e>
1b02: 8f ef ldi r24, 0xFF ; 255
1b04: 80 93 05 01 sts 0x0105, r24
1b08: e0 91 ce 03 lds r30, 0x03CE
1b0c: f0 91 cf 03 lds r31, 0x03CF
1b10: 80 81 ld r24, Z
1b12: 80 93 26 04 sts 0x0426, r24
1b16: 81 e0 ldi r24, 0x01 ; 1
1b18: 80 93 c3 03 sts 0x03C3, r24
1b1c: e5 ce rjmp .-566 ; 0x18e8 <BearbeiteRxDaten+0x7e>
1b1e: e0 91 ce 03 lds r30, 0x03CE
1b22: f0 91 cf 03 lds r31, 0x03CF
1b26: 80 81 ld r24, Z
1b28: 80 93 04 01 sts 0x0104, r24
1b2c: 80 32 cpi r24, 0x20 ; 32
1b2e: 10 f2 brcs .-124 ; 0x1ab4 <BearbeiteRxDaten+0x24a>
1b30: 8f e1 ldi r24, 0x1F ; 31
1b32: 80 93 04 01 sts 0x0104, r24
1b36: be cf rjmp .-132 ; 0x1ab4 <BearbeiteRxDaten+0x24a>
1b38: e0 91 ce 03 lds r30, 0x03CE
1b3c: f0 91 cf 03 lds r31, 0x03CF
1b40: 80 81 ld r24, Z
1b42: 2a e0 ldi r18, 0x0A ; 10
1b44: 82 9f mul r24, r18
1b46: c0 01 movw r24, r0
1b48: 11 24 eor r1, r1
1b4a: 90 93 08 01 sts 0x0108, r25
1b4e: 80 93 07 01 sts 0x0107, r24
1b52: 89 2b or r24, r25
1b54: 09 f4 brne .+2 ; 0x1b58 <BearbeiteRxDaten+0x2ee>
1b56: c8 ce rjmp .-624 ; 0x18e8 <BearbeiteRxDaten+0x7e>
1b58: 81 e0 ldi r24, 0x01 ; 1
1b5a: 80 93 c5 03 sts 0x03C5, r24
1b5e: c4 ce rjmp .-632 ; 0x18e8 <BearbeiteRxDaten+0x7e>
1b60: 00 91 ce 03 lds r16, 0x03CE
1b64: 10 91 cf 03 lds r17, 0x03CF
1b68: f8 01 movw r30, r16
1b6a: 80 81 ld r24, Z
1b6c: 91 81 ldd r25, Z+1 ; 0x01
1b6e: 90 93 82 04 sts 0x0482, r25
1b72: 80 93 81 04 sts 0x0481, r24
1b76: 84 5e subi r24, 0xE4 ; 228
1b78: 9d 4f sbci r25, 0xFD ; 253
1b7a: 20 91 83 04 lds r18, 0x0483
1b7e: 30 91 84 04 lds r19, 0x0484
1b82: 82 1b sub r24, r18
1b84: 93 0b sbc r25, r19
1b86: 68 e6 ldi r22, 0x68 ; 104
1b88: 71 e0 ldi r23, 0x01 ; 1
1b8a: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
1b8e: 84 5b subi r24, 0xB4 ; 180
1b90: 90 40 sbci r25, 0x00 ; 0
1b92: 90 93 86 04 sts 0x0486, r25
1b96: 80 93 85 04 sts 0x0485, r24
1b9a: 80 ce rjmp .-768 ; 0x189c <BearbeiteRxDaten+0x32>
1b9c: 00 91 ce 03 lds r16, 0x03CE
1ba0: 10 91 cf 03 lds r17, 0x03CF
1ba4: f8 01 movw r30, r16
1ba6: 80 81 ld r24, Z
1ba8: 81 50 subi r24, 0x01 ; 1
1baa: 85 30 cpi r24, 0x05 ; 5
1bac: 18 f4 brcc .+6 ; 0x1bb4 <BearbeiteRxDaten+0x34a>
1bae: 81 81 ldd r24, Z+1 ; 0x01
1bb0: 8a 34 cpi r24, 0x4A ; 74
1bb2: e9 f0 breq .+58 ; 0x1bee <BearbeiteRxDaten+0x384>
1bb4: 19 82 std Y+1, r1 ; 0x01
1bb6: 80 91 03 01 lds r24, 0x0103
1bba: 88 23 and r24, r24
1bbc: e1 f3 breq .-8 ; 0x1bb6 <BearbeiteRxDaten+0x34c>
1bbe: 81 e0 ldi r24, 0x01 ; 1
1bc0: 90 e0 ldi r25, 0x00 ; 0
1bc2: 9f 93 push r25
1bc4: 8f 93 push r24
1bc6: ce 01 movw r24, r28
1bc8: 01 96 adiw r24, 0x01 ; 1
1bca: 9f 93 push r25
1bcc: 8f 93 push r24
1bce: 81 e0 ldi r24, 0x01 ; 1
1bd0: 8f 93 push r24
1bd2: 8f 93 push r24
1bd4: 83 e5 ldi r24, 0x53 ; 83
1bd6: 8f 93 push r24
1bd8: 0e 94 9d 08 call 0x113a ; 0x113a <SendOutData>
1bdc: 8d b7 in r24, 0x3d ; 61
1bde: 9e b7 in r25, 0x3e ; 62
1be0: 07 96 adiw r24, 0x07 ; 7
1be2: 0f b6 in r0, 0x3f ; 63
1be4: f8 94 cli
1be6: 9e bf out 0x3e, r25 ; 62
1be8: 0f be out 0x3f, r0 ; 63
1bea: 8d bf out 0x3d, r24 ; 61
1bec: 57 ce rjmp .-850 ; 0x189c <BearbeiteRxDaten+0x32>
1bee: a7 ed ldi r26, 0xD7 ; 215
1bf0: b7 e0 ldi r27, 0x07 ; 7
1bf2: 32 96 adiw r30, 0x02 ; 2
1bf4: 8c e5 ldi r24, 0x5C ; 92
1bf6: 01 90 ld r0, Z+
1bf8: 0d 92 st X+, r0
1bfa: 81 50 subi r24, 0x01 ; 1
1bfc: e1 f7 brne .-8 ; 0x1bf6 <BearbeiteRxDaten+0x38c>
1bfe: 4c e5 ldi r20, 0x5C ; 92
1c00: 67 ed ldi r22, 0xD7 ; 215
1c02: 77 e0 ldi r23, 0x07 ; 7
1c04: f8 01 movw r30, r16
1c06: 80 81 ld r24, Z
1c08: 0e 94 06 03 call 0x60c ; 0x60c <WriteParameterSet>
1c0c: 60 91 04 08 lds r22, 0x0804
1c10: 70 e0 ldi r23, 0x00 ; 0
1c12: 80 e0 ldi r24, 0x00 ; 0
1c14: 90 e0 ldi r25, 0x00 ; 0
1c16: 24 ec ldi r18, 0xC4 ; 196
1c18: 39 e0 ldi r19, 0x09 ; 9
1c1a: 40 e0 ldi r20, 0x00 ; 0
1c1c: 50 e0 ldi r21, 0x00 ; 0
1c1e: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
1c22: 60 93 97 03 sts 0x0397, r22
1c26: 70 93 98 03 sts 0x0398, r23
1c2a: 80 93 99 03 sts 0x0399, r24
1c2e: 90 93 9a 03 sts 0x039A, r25
1c32: 60 91 05 08 lds r22, 0x0805
1c36: 70 e0 ldi r23, 0x00 ; 0
1c38: 80 e0 ldi r24, 0x00 ; 0
1c3a: 90 e0 ldi r25, 0x00 ; 0
1c3c: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
1c40: 60 93 9b 03 sts 0x039B, r22
1c44: 70 93 9c 03 sts 0x039C, r23
1c48: 80 93 9d 03 sts 0x039D, r24
1c4c: 90 93 9e 03 sts 0x039E, r25
1c50: e0 91 ce 03 lds r30, 0x03CE
1c54: f0 91 cf 03 lds r31, 0x03CF
1c58: 80 81 ld r24, Z
1c5a: 0e 94 b0 02 call 0x560 ; 0x560 <SetActiveParamSetNumber>
1c5e: 0e 94 bc 02 call 0x578 ; 0x578 <GetActiveParamSetNumber>
1c62: 89 83 std Y+1, r24 ; 0x01
1c64: 0e 94 df 34 call 0x69be ; 0x69be <Piep>
1c68: a6 cf rjmp .-180 ; 0x1bb6 <BearbeiteRxDaten+0x34c>
1c6a: 00 91 ce 03 lds r16, 0x03CE
1c6e: 10 91 cf 03 lds r17, 0x03CF
1c72: b3 ce rjmp .-666 ; 0x19da <BearbeiteRxDaten+0x170>
1c74: 86 30 cpi r24, 0x06 ; 6
1c76: 08 f4 brcc .+2 ; 0x1c7a <BearbeiteRxDaten+0x410>
1c78: cf ce rjmp .-610 ; 0x1a18 <BearbeiteRxDaten+0x1ae>
1c7a: 85 e0 ldi r24, 0x05 ; 5
1c7c: f8 01 movw r30, r16
1c7e: 80 83 st Z, r24
1c80: 00 91 ce 03 lds r16, 0x03CE
1c84: 10 91 cf 03 lds r17, 0x03CF
1c88: c7 ce rjmp .-626 ; 0x1a18 <BearbeiteRxDaten+0x1ae>
1c8a: 8a e0 ldi r24, 0x0A ; 10
1c8c: 98 9f mul r25, r24
1c8e: c0 01 movw r24, r0
1c90: 11 24 eor r1, r1
1c92: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
1c96: 90 93 5b 05 sts 0x055B, r25
1c9a: 80 93 5a 05 sts 0x055A, r24
1c9e: 00 91 ce 03 lds r16, 0x03CE
1ca2: 10 91 cf 03 lds r17, 0x03CF
1ca6: 99 ce rjmp .-718 ; 0x19da <BearbeiteRxDaten+0x170>
1ca8: 0e 94 bc 02 call 0x578 ; 0x578 <GetActiveParamSetNumber>
1cac: f8 01 movw r30, r16
1cae: 80 83 st Z, r24
1cb0: 00 91 ce 03 lds r16, 0x03CE
1cb4: 10 91 cf 03 lds r17, 0x03CF
1cb8: a4 ce rjmp .-696 ; 0x1a02 <BearbeiteRxDaten+0x198>
1cba: 22 96 adiw r28, 0x02 ; 2
1cbc: 0f b6 in r0, 0x3f ; 63
1cbe: f8 94 cli
1cc0: de bf out 0x3e, r29 ; 62
1cc2: 0f be out 0x3f, r0 ; 63
1cc4: cd bf out 0x3d, r28 ; 61
1cc6: df 91 pop r29
1cc8: cf 91 pop r28
1cca: 1f 91 pop r17
1ccc: 0f 91 pop r16
1cce: ff 90 pop r15
1cd0: ef 90 pop r14
1cd2: 08 95 ret
 
00001cd4 <Putchar>:
1cd4: 98 2f mov r25, r24
1cd6: 80 91 82 07 lds r24, 0x0782
1cda: 81 30 cpi r24, 0x01 ; 1
1cdc: 31 f0 breq .+12 ; 0x1cea <Putchar+0x16>
1cde: 89 2f mov r24, r25
1ce0: 0e 94 51 08 call 0x10a2 ; 0x10a2 <uart_putchar>
1ce4: 28 2f mov r18, r24
1ce6: 30 e0 ldi r19, 0x00 ; 0
1ce8: 0c c0 rjmp .+24 ; 0x1d02 <Putchar+0x2e>
1cea: 80 91 25 04 lds r24, 0x0425
1cee: e8 2f mov r30, r24
1cf0: f0 e0 ldi r31, 0x00 ; 0
1cf2: e8 5d subi r30, 0xD8 ; 216
1cf4: fc 4f sbci r31, 0xFC ; 252
1cf6: 90 83 st Z, r25
1cf8: 8f 5f subi r24, 0xFF ; 255
1cfa: 80 93 25 04 sts 0x0425, r24
1cfe: 21 e0 ldi r18, 0x01 ; 1
1d00: 30 e0 ldi r19, 0x00 ; 0
1d02: c9 01 movw r24, r18
1d04: 08 95 ret
 
00001d06 <PAD_0>:
1d06: 1f 93 push r17
1d08: 18 2f mov r17, r24
1d0a: 18 16 cp r1, r24
1d0c: 2c f4 brge .+10 ; 0x1d18 <PAD_0+0x12>
1d0e: 80 e3 ldi r24, 0x30 ; 48
1d10: 0e 94 6a 0e call 0x1cd4 ; 0x1cd4 <Putchar>
1d14: 11 50 subi r17, 0x01 ; 1
1d16: d9 f7 brne .-10 ; 0x1d0e <PAD_0+0x8>
1d18: 1f 91 pop r17
1d1a: 08 95 ret
 
00001d1c <PAD_SP>:
1d1c: 1f 93 push r17
1d1e: 18 2f mov r17, r24
1d20: 18 16 cp r1, r24
1d22: 2c f4 brge .+10 ; 0x1d2e <PAD_SP+0x12>
1d24: 80 e2 ldi r24, 0x20 ; 32
1d26: 0e 94 6a 0e call 0x1cd4 ; 0x1cd4 <Putchar>
1d2a: 11 50 subi r17, 0x01 ; 1
1d2c: d9 f7 brne .-10 ; 0x1d24 <PAD_SP+0x8>
1d2e: 1f 91 pop r17
1d30: 08 95 ret
 
00001d32 <PRINTP>:
1d32: 0f 93 push r16
1d34: 1f 93 push r17
1d36: cf 93 push r28
1d38: df 93 push r29
1d3a: 8c 01 movw r16, r24
1d3c: eb 01 movw r28, r22
1d3e: 67 2b or r22, r23
1d40: 49 f0 breq .+18 ; 0x1d54 <PRINTP+0x22>
1d42: f8 01 movw r30, r16
1d44: 0f 5f subi r16, 0xFF ; 255
1d46: 1f 4f sbci r17, 0xFF ; 255
1d48: e4 91 lpm r30, Z
1d4a: 8e 2f mov r24, r30
1d4c: 0e 94 6a 0e call 0x1cd4 ; 0x1cd4 <Putchar>
1d50: 21 97 sbiw r28, 0x01 ; 1
1d52: b9 f7 brne .-18 ; 0x1d42 <PRINTP+0x10>
1d54: df 91 pop r29
1d56: cf 91 pop r28
1d58: 1f 91 pop r17
1d5a: 0f 91 pop r16
1d5c: 08 95 ret
 
00001d5e <PRINT>:
1d5e: 0f 93 push r16
1d60: 1f 93 push r17
1d62: cf 93 push r28
1d64: df 93 push r29
1d66: 8c 01 movw r16, r24
1d68: eb 01 movw r28, r22
1d6a: 67 2b or r22, r23
1d6c: 39 f0 breq .+14 ; 0x1d7c <PRINT+0x1e>
1d6e: f8 01 movw r30, r16
1d70: 81 91 ld r24, Z+
1d72: 8f 01 movw r16, r30
1d74: 0e 94 6a 0e call 0x1cd4 ; 0x1cd4 <Putchar>
1d78: 21 97 sbiw r28, 0x01 ; 1
1d7a: c9 f7 brne .-14 ; 0x1d6e <PRINT+0x10>
1d7c: df 91 pop r29
1d7e: cf 91 pop r28
1d80: 1f 91 pop r17
1d82: 0f 91 pop r16
1d84: 08 95 ret
 
00001d86 <_printf_P>:
1d86: 2f 92 push r2
1d88: 3f 92 push r3
1d8a: 4f 92 push r4
1d8c: 5f 92 push r5
1d8e: 6f 92 push r6
1d90: 7f 92 push r7
1d92: 8f 92 push r8
1d94: 9f 92 push r9
1d96: af 92 push r10
1d98: bf 92 push r11
1d9a: cf 92 push r12
1d9c: df 92 push r13
1d9e: ef 92 push r14
1da0: ff 92 push r15
1da2: 0f 93 push r16
1da4: 1f 93 push r17
1da6: cf 93 push r28
1da8: df 93 push r29
1daa: cd b7 in r28, 0x3d ; 61
1dac: de b7 in r29, 0x3e ; 62
1dae: e5 97 sbiw r28, 0x35 ; 53
1db0: 0f b6 in r0, 0x3f ; 63
1db2: f8 94 cli
1db4: de bf out 0x3e, r29 ; 62
1db6: 0f be out 0x3f, r0 ; 63
1db8: cd bf out 0x3d, r28 ; 61
1dba: 2b 96 adiw r28, 0x0b ; 11
1dbc: 8f ad ldd r24, Y+63 ; 0x3f
1dbe: 2b 97 sbiw r28, 0x0b ; 11
1dc0: 80 93 82 07 sts 0x0782, r24
1dc4: ce 01 movw r24, r28
1dc6: 83 5b subi r24, 0xB3 ; 179
1dc8: 9f 4f sbci r25, 0xFF ; 255
1dca: 9b 83 std Y+3, r25 ; 0x03
1dcc: 8a 83 std Y+2, r24 ; 0x02
1dce: 2d 96 adiw r28, 0x0d ; 13
1dd0: 0e ad ldd r16, Y+62 ; 0x3e
1dd2: 1f ad ldd r17, Y+63 ; 0x3f
1dd4: 2d 97 sbiw r28, 0x0d ; 13
1dd6: 1e a6 std Y+46, r1 ; 0x2e
1dd8: 1f a6 std Y+47, r1 ; 0x2f
1dda: 18 aa std Y+48, r1 ; 0x30
1ddc: 19 aa std Y+49, r1 ; 0x31
1dde: f8 01 movw r30, r16
1de0: 84 91 lpm r24, Z
1de2: 88 23 and r24, r24
1de4: 09 f4 brne .+2 ; 0x1de8 <_printf_P+0x62>
1de6: a2 c2 rjmp .+1348 ; 0x232c <_printf_P+0x5a6>
1de8: 85 32 cpi r24, 0x25 ; 37
1dea: 09 f4 brne .+2 ; 0x1dee <_printf_P+0x68>
1dec: 1b c2 rjmp .+1078 ; 0x2224 <_printf_P+0x49e>
1dee: 68 01 movw r12, r16
1df0: 03 c0 rjmp .+6 ; 0x1df8 <_printf_P+0x72>
1df2: f5 e2 ldi r31, 0x25 ; 37
1df4: ff 16 cp r15, r31
1df6: 39 f0 breq .+14 ; 0x1e06 <_printf_P+0x80>
1df8: 08 94 sec
1dfa: c1 1c adc r12, r1
1dfc: d1 1c adc r13, r1
1dfe: f6 01 movw r30, r12
1e00: f4 90 lpm r15, Z
1e02: ff 20 and r15, r15
1e04: b1 f7 brne .-20 ; 0x1df2 <_printf_P+0x6c>
1e06: b6 01 movw r22, r12
1e08: 60 1b sub r22, r16
1e0a: 71 0b sbc r23, r17
1e0c: 19 f0 breq .+6 ; 0x1e14 <_printf_P+0x8e>
1e0e: c8 01 movw r24, r16
1e10: 0e 94 99 0e call 0x1d32 ; 0x1d32 <PRINTP>
1e14: ff 20 and r15, r15
1e16: 09 f4 brne .+2 ; 0x1e1a <_printf_P+0x94>
1e18: 89 c2 rjmp .+1298 ; 0x232c <_printf_P+0x5a6>
1e1a: 86 01 movw r16, r12
1e1c: 0f 5f subi r16, 0xFF ; 255
1e1e: 1f 4f sbci r17, 0xFF ; 255
1e20: 19 82 std Y+1, r1 ; 0x01
1e22: aa 81 ldd r26, Y+2 ; 0x02
1e24: bb 81 ldd r27, Y+3 ; 0x03
1e26: 8e a4 ldd r8, Y+46 ; 0x2e
1e28: 9f a4 ldd r9, Y+47 ; 0x2f
1e2a: a8 a8 ldd r10, Y+48 ; 0x30
1e2c: b9 a8 ldd r11, Y+49 ; 0x31
1e2e: 33 24 eor r3, r3
1e30: 22 24 eor r2, r2
1e32: 8f ef ldi r24, 0xFF ; 255
1e34: 8b ab std Y+51, r24 ; 0x33
1e36: f8 01 movw r30, r16
1e38: 0f 5f subi r16, 0xFF ; 255
1e3a: 1f 4f sbci r17, 0xFF ; 255
1e3c: f4 90 lpm r15, Z
1e3e: c3 2c mov r12, r3
1e40: dd 24 eor r13, r13
1e42: 91 e0 ldi r25, 0x01 ; 1
1e44: c9 22 and r12, r25
1e46: dd 24 eor r13, r13
1e48: e5 e7 ldi r30, 0x75 ; 117
1e4a: fe 16 cp r15, r30
1e4c: 09 f4 brne .+2 ; 0x1e50 <_printf_P+0xca>
1e4e: 43 c0 rjmp .+134 ; 0x1ed6 <_printf_P+0x150>
1e50: 8f 2d mov r24, r15
1e52: 80 62 ori r24, 0x20 ; 32
1e54: 88 37 cpi r24, 0x78 ; 120
1e56: 09 f4 brne .+2 ; 0x1e5a <_printf_P+0xd4>
1e58: 3e c0 rjmp .+124 ; 0x1ed6 <_printf_P+0x150>
1e5a: f0 e2 ldi r31, 0x20 ; 32
1e5c: ff 16 cp r15, r31
1e5e: 09 f4 brne .+2 ; 0x1e62 <_printf_P+0xdc>
1e60: 48 c0 rjmp .+144 ; 0x1ef2 <_printf_P+0x16c>
1e62: 83 e2 ldi r24, 0x23 ; 35
1e64: f8 16 cp r15, r24
1e66: 09 f4 brne .+2 ; 0x1e6a <_printf_P+0xe4>
1e68: 8f c0 rjmp .+286 ; 0x1f88 <_printf_P+0x202>
1e6a: ea e2 ldi r30, 0x2A ; 42
1e6c: fe 16 cp r15, r30
1e6e: 09 f4 brne .+2 ; 0x1e72 <_printf_P+0xec>
1e70: 80 c0 rjmp .+256 ; 0x1f72 <_printf_P+0x1ec>
1e72: fd e2 ldi r31, 0x2D ; 45
1e74: ff 16 cp r15, r31
1e76: 09 f4 brne .+2 ; 0x1e7a <_printf_P+0xf4>
1e78: 82 c0 rjmp .+260 ; 0x1f7e <_printf_P+0x1f8>
1e7a: eb e2 ldi r30, 0x2B ; 43
1e7c: fe 16 cp r15, r30
1e7e: 09 f4 brne .+2 ; 0x1e82 <_printf_P+0xfc>
1e80: 3c c0 rjmp .+120 ; 0x1efa <_printf_P+0x174>
1e82: fe e2 ldi r31, 0x2E ; 46
1e84: ff 16 cp r15, r31
1e86: d9 f1 breq .+118 ; 0x1efe <_printf_P+0x178>
1e88: 80 e3 ldi r24, 0x30 ; 48
1e8a: f8 16 cp r15, r24
1e8c: 09 f4 brne .+2 ; 0x1e90 <_printf_P+0x10a>
1e8e: 7f c0 rjmp .+254 ; 0x1f8e <_printf_P+0x208>
1e90: 8f 2d mov r24, r15
1e92: 81 53 subi r24, 0x31 ; 49
1e94: 89 30 cpi r24, 0x09 ; 9
1e96: 08 f0 brcs .+2 ; 0x1e9a <_printf_P+0x114>
1e98: 7f c0 rjmp .+254 ; 0x1f98 <_printf_P+0x212>
1e9a: 20 e0 ldi r18, 0x00 ; 0
1e9c: 30 e0 ldi r19, 0x00 ; 0
1e9e: c9 01 movw r24, r18
1ea0: 88 0f add r24, r24
1ea2: 99 1f adc r25, r25
1ea4: 88 0f add r24, r24
1ea6: 99 1f adc r25, r25
1ea8: 88 0f add r24, r24
1eaa: 99 1f adc r25, r25
1eac: 22 0f add r18, r18
1eae: 33 1f adc r19, r19
1eb0: 28 0f add r18, r24
1eb2: 39 1f adc r19, r25
1eb4: 2f 0d add r18, r15
1eb6: 31 1d adc r19, r1
1eb8: 20 53 subi r18, 0x30 ; 48
1eba: 30 40 sbci r19, 0x00 ; 0
1ebc: f8 01 movw r30, r16
1ebe: 0f 5f subi r16, 0xFF ; 255
1ec0: 1f 4f sbci r17, 0xFF ; 255
1ec2: f4 90 lpm r15, Z
1ec4: 8f 2d mov r24, r15
1ec6: 80 53 subi r24, 0x30 ; 48
1ec8: 8a 30 cpi r24, 0x0A ; 10
1eca: 48 f3 brcs .-46 ; 0x1e9e <_printf_P+0x118>
1ecc: 22 2e mov r2, r18
1ece: e5 e7 ldi r30, 0x75 ; 117
1ed0: fe 16 cp r15, r30
1ed2: 09 f0 breq .+2 ; 0x1ed6 <_printf_P+0x150>
1ed4: bd cf rjmp .-134 ; 0x1e50 <_printf_P+0xca>
1ed6: c1 14 cp r12, r1
1ed8: d1 04 cpc r13, r1
1eda: 09 f4 brne .+2 ; 0x1ede <_printf_P+0x158>
1edc: 3c c0 rjmp .+120 ; 0x1f56 <_printf_P+0x1d0>
1ede: 8d 90 ld r8, X+
1ee0: 9d 90 ld r9, X+
1ee2: ad 90 ld r10, X+
1ee4: bc 90 ld r11, X
1ee6: 13 97 sbiw r26, 0x03 ; 3
1ee8: 14 96 adiw r26, 0x04 ; 4
1eea: f0 e2 ldi r31, 0x20 ; 32
1eec: ff 16 cp r15, r31
1eee: 09 f0 breq .+2 ; 0x1ef2 <_printf_P+0x16c>
1ef0: b8 cf rjmp .-144 ; 0x1e62 <_printf_P+0xdc>
1ef2: 89 81 ldd r24, Y+1 ; 0x01
1ef4: 88 23 and r24, r24
1ef6: 09 f0 breq .+2 ; 0x1efa <_printf_P+0x174>
1ef8: 9e cf rjmp .-196 ; 0x1e36 <_printf_P+0xb0>
1efa: f9 82 std Y+1, r15 ; 0x01
1efc: 9c cf rjmp .-200 ; 0x1e36 <_printf_P+0xb0>
1efe: f8 01 movw r30, r16
1f00: 0f 5f subi r16, 0xFF ; 255
1f02: 1f 4f sbci r17, 0xFF ; 255
1f04: 94 91 lpm r25, Z
1f06: 9a 32 cpi r25, 0x2A ; 42
1f08: 09 f4 brne .+2 ; 0x1f0c <_printf_P+0x186>
1f0a: 4f c0 rjmp .+158 ; 0x1faa <_printf_P+0x224>
1f0c: 89 2f mov r24, r25
1f0e: 80 53 subi r24, 0x30 ; 48
1f10: 8a 30 cpi r24, 0x0A ; 10
1f12: 60 f5 brcc .+88 ; 0x1f6c <_printf_P+0x1e6>
1f14: 49 2f mov r20, r25
1f16: 20 e0 ldi r18, 0x00 ; 0
1f18: 30 e0 ldi r19, 0x00 ; 0
1f1a: c9 01 movw r24, r18
1f1c: 88 0f add r24, r24
1f1e: 99 1f adc r25, r25
1f20: 88 0f add r24, r24
1f22: 99 1f adc r25, r25
1f24: 88 0f add r24, r24
1f26: 99 1f adc r25, r25
1f28: 22 0f add r18, r18
1f2a: 33 1f adc r19, r19
1f2c: 28 0f add r18, r24
1f2e: 39 1f adc r19, r25
1f30: 24 0f add r18, r20
1f32: 31 1d adc r19, r1
1f34: 20 53 subi r18, 0x30 ; 48
1f36: 30 40 sbci r19, 0x00 ; 0
1f38: f8 01 movw r30, r16
1f3a: 0f 5f subi r16, 0xFF ; 255
1f3c: 1f 4f sbci r17, 0xFF ; 255
1f3e: 64 91 lpm r22, Z
1f40: 46 2f mov r20, r22
1f42: 86 2f mov r24, r22
1f44: 80 53 subi r24, 0x30 ; 48
1f46: 8a 30 cpi r24, 0x0A ; 10
1f48: 40 f3 brcs .-48 ; 0x1f1a <_printf_P+0x194>
1f4a: a9 01 movw r20, r18
1f4c: 37 fd sbrc r19, 7
1f4e: 0b c0 rjmp .+22 ; 0x1f66 <_printf_P+0x1e0>
1f50: 4b ab std Y+51, r20 ; 0x33
1f52: f6 2e mov r15, r22
1f54: 79 cf rjmp .-270 ; 0x1e48 <_printf_P+0xc2>
1f56: 8d 91 ld r24, X+
1f58: 9c 91 ld r25, X
1f5a: 11 97 sbiw r26, 0x01 ; 1
1f5c: 4c 01 movw r8, r24
1f5e: aa 24 eor r10, r10
1f60: bb 24 eor r11, r11
1f62: 12 96 adiw r26, 0x02 ; 2
1f64: 7a cf rjmp .-268 ; 0x1e5a <_printf_P+0xd4>
1f66: 4f ef ldi r20, 0xFF ; 255
1f68: 5f ef ldi r21, 0xFF ; 255
1f6a: f2 cf rjmp .-28 ; 0x1f50 <_printf_P+0x1ca>
1f6c: f9 2e mov r15, r25
1f6e: 1b aa std Y+51, r1 ; 0x33
1f70: 6b cf rjmp .-298 ; 0x1e48 <_printf_P+0xc2>
1f72: fd 01 movw r30, r26
1f74: 12 96 adiw r26, 0x02 ; 2
1f76: 20 80 ld r2, Z
1f78: 27 fe sbrs r2, 7
1f7a: 5d cf rjmp .-326 ; 0x1e36 <_printf_P+0xb0>
1f7c: 21 94 neg r2
1f7e: 80 e1 ldi r24, 0x10 ; 16
1f80: 38 2a or r3, r24
1f82: 9f ed ldi r25, 0xDF ; 223
1f84: 39 22 and r3, r25
1f86: 57 cf rjmp .-338 ; 0x1e36 <_printf_P+0xb0>
1f88: 98 e0 ldi r25, 0x08 ; 8
1f8a: 39 2a or r3, r25
1f8c: 54 cf rjmp .-344 ; 0x1e36 <_printf_P+0xb0>
1f8e: 34 fc sbrc r3, 4
1f90: 52 cf rjmp .-348 ; 0x1e36 <_printf_P+0xb0>
1f92: 90 e2 ldi r25, 0x20 ; 32
1f94: 39 2a or r3, r25
1f96: 4f cf rjmp .-354 ; 0x1e36 <_printf_P+0xb0>
1f98: e8 e6 ldi r30, 0x68 ; 104
1f9a: fe 16 cp r15, r30
1f9c: 79 f0 breq .+30 ; 0x1fbc <_printf_P+0x236>
1f9e: 8c e6 ldi r24, 0x6C ; 108
1fa0: f8 16 cp r15, r24
1fa2: 79 f4 brne .+30 ; 0x1fc2 <_printf_P+0x23c>
1fa4: 91 e0 ldi r25, 0x01 ; 1
1fa6: 39 2a or r3, r25
1fa8: 46 cf rjmp .-372 ; 0x1e36 <_printf_P+0xb0>
1faa: cd 01 movw r24, r26
1fac: 02 96 adiw r24, 0x02 ; 2
1fae: 4d 91 ld r20, X+
1fb0: 5c 91 ld r21, X
1fb2: 57 fd sbrc r21, 7
1fb4: 77 c0 rjmp .+238 ; 0x20a4 <_printf_P+0x31e>
1fb6: 4b ab std Y+51, r20 ; 0x33
1fb8: dc 01 movw r26, r24
1fba: 3d cf rjmp .-390 ; 0x1e36 <_printf_P+0xb0>
1fbc: f4 e0 ldi r31, 0x04 ; 4
1fbe: 3f 2a or r3, r31
1fc0: 3a cf rjmp .-396 ; 0x1e36 <_printf_P+0xb0>
1fc2: bb 83 std Y+3, r27 ; 0x03
1fc4: aa 83 std Y+2, r26 ; 0x02
1fc6: e3 e6 ldi r30, 0x63 ; 99
1fc8: fe 16 cp r15, r30
1fca: 09 f4 brne .+2 ; 0x1fce <_printf_P+0x248>
1fcc: 0b c1 rjmp .+534 ; 0x21e4 <_printf_P+0x45e>
1fce: f4 e4 ldi r31, 0x44 ; 68
1fd0: ff 16 cp r15, r31
1fd2: 09 f4 brne .+2 ; 0x1fd6 <_printf_P+0x250>
1fd4: 6a c0 rjmp .+212 ; 0x20aa <_printf_P+0x324>
1fd6: 84 e6 ldi r24, 0x64 ; 100
1fd8: f8 16 cp r15, r24
1fda: 09 f4 brne .+2 ; 0x1fde <_printf_P+0x258>
1fdc: 68 c0 rjmp .+208 ; 0x20ae <_printf_P+0x328>
1fde: 99 e6 ldi r25, 0x69 ; 105
1fe0: f9 16 cp r15, r25
1fe2: 09 f4 brne .+2 ; 0x1fe6 <_printf_P+0x260>
1fe4: 64 c0 rjmp .+200 ; 0x20ae <_printf_P+0x328>
1fe6: 9f e4 ldi r25, 0x4F ; 79
1fe8: f9 16 cp r15, r25
1fea: 09 f4 brne .+2 ; 0x1fee <_printf_P+0x268>
1fec: 07 c1 rjmp .+526 ; 0x21fc <_printf_P+0x476>
1fee: ef e6 ldi r30, 0x6F ; 111
1ff0: fe 16 cp r15, r30
1ff2: 09 f4 brne .+2 ; 0x1ff6 <_printf_P+0x270>
1ff4: ff c0 rjmp .+510 ; 0x21f4 <_printf_P+0x46e>
1ff6: e0 e7 ldi r30, 0x70 ; 112
1ff8: fe 16 cp r15, r30
1ffa: 09 f4 brne .+2 ; 0x1ffe <_printf_P+0x278>
1ffc: 5d c1 rjmp .+698 ; 0x22b8 <_printf_P+0x532>
1ffe: 93 e7 ldi r25, 0x73 ; 115
2000: f9 16 cp r15, r25
2002: 09 f4 brne .+2 ; 0x2006 <_printf_P+0x280>
2004: 19 c1 rjmp .+562 ; 0x2238 <_printf_P+0x4b2>
2006: 85 e5 ldi r24, 0x55 ; 85
2008: f8 16 cp r15, r24
200a: 09 f4 brne .+2 ; 0x200e <_printf_P+0x288>
200c: 10 c1 rjmp .+544 ; 0x222e <_printf_P+0x4a8>
200e: 95 e7 ldi r25, 0x75 ; 117
2010: f9 16 cp r15, r25
2012: 09 f4 brne .+2 ; 0x2016 <_printf_P+0x290>
2014: 09 c1 rjmp .+530 ; 0x2228 <_printf_P+0x4a2>
2016: 98 e5 ldi r25, 0x58 ; 88
2018: f9 16 cp r15, r25
201a: 09 f4 brne .+2 ; 0x201e <_printf_P+0x298>
201c: 69 c1 rjmp .+722 ; 0x22f0 <_printf_P+0x56a>
201e: e8 e7 ldi r30, 0x78 ; 120
2020: fe 16 cp r15, r30
2022: 09 f4 brne .+2 ; 0x2026 <_printf_P+0x2a0>
2024: 65 c1 rjmp .+714 ; 0x22f0 <_printf_P+0x56a>
2026: ff 20 and r15, r15
2028: 09 f4 brne .+2 ; 0x202c <_printf_P+0x2a6>
202a: 80 c1 rjmp .+768 ; 0x232c <_printf_P+0x5a6>
202c: fe 82 std Y+6, r15 ; 0x06
202e: 19 82 std Y+1, r1 ; 0x01
2030: 63 2c mov r6, r3
2032: 77 24 eor r7, r7
2034: 8e a6 std Y+46, r8 ; 0x2e
2036: 9f a6 std Y+47, r9 ; 0x2f
2038: a8 aa std Y+48, r10 ; 0x30
203a: b9 aa std Y+49, r11 ; 0x31
203c: ee 24 eor r14, r14
203e: 36 e0 ldi r19, 0x06 ; 6
2040: c3 2e mov r12, r19
2042: d1 2c mov r13, r1
2044: cc 0e add r12, r28
2046: dd 1e adc r13, r29
2048: 81 e0 ldi r24, 0x01 ; 1
204a: e1 e0 ldi r30, 0x01 ; 1
204c: 90 e0 ldi r25, 0x00 ; 0
204e: 21 e0 ldi r18, 0x01 ; 1
2050: a2 2e mov r10, r18
2052: b1 2c mov r11, r1
2054: 29 81 ldd r18, Y+1 ; 0x01
2056: 22 23 and r18, r18
2058: 09 f4 brne .+2 ; 0x205c <_printf_P+0x2d6>
205a: a0 c0 rjmp .+320 ; 0x219c <_printf_P+0x416>
205c: 8f 5f subi r24, 0xFF ; 255
205e: 58 2e mov r5, r24
2060: 59 0e add r5, r25
2062: 40 e3 ldi r20, 0x30 ; 48
2064: 84 2e mov r8, r20
2066: 91 2c mov r9, r1
2068: 86 20 and r8, r6
206a: 97 20 and r9, r7
206c: 81 14 cp r8, r1
206e: 91 04 cpc r9, r1
2070: 09 f4 brne .+2 ; 0x2074 <_printf_P+0x2ee>
2072: 38 c1 rjmp .+624 ; 0x22e4 <_printf_P+0x55e>
2074: 22 23 and r18, r18
2076: 09 f0 breq .+2 ; 0x207a <_printf_P+0x2f4>
2078: 2e c1 rjmp .+604 ; 0x22d6 <_printf_P+0x550>
207a: 66 fc sbrc r6, 6
207c: c9 c0 rjmp .+402 ; 0x2210 <_printf_P+0x48a>
207e: f0 e2 ldi r31, 0x20 ; 32
2080: 8f 16 cp r8, r31
2082: 91 04 cpc r9, r1
2084: 09 f4 brne .+2 ; 0x2088 <_printf_P+0x302>
2086: bf c0 rjmp .+382 ; 0x2206 <_printf_P+0x480>
2088: 8e 2d mov r24, r14
208a: 0e 94 83 0e call 0x1d06 ; 0x1d06 <PAD_0>
208e: b5 01 movw r22, r10
2090: c6 01 movw r24, r12
2092: 0e 94 af 0e call 0x1d5e ; 0x1d5e <PRINT>
2096: 64 fe sbrs r6, 4
2098: a2 ce rjmp .-700 ; 0x1dde <_printf_P+0x58>
209a: 82 2d mov r24, r2
209c: 85 19 sub r24, r5
209e: 0e 94 8e 0e call 0x1d1c ; 0x1d1c <PAD_SP>
20a2: 9d ce rjmp .-710 ; 0x1dde <_printf_P+0x58>
20a4: 4f ef ldi r20, 0xFF ; 255
20a6: 5f ef ldi r21, 0xFF ; 255
20a8: 86 cf rjmp .-244 ; 0x1fb6 <_printf_P+0x230>
20aa: e1 e0 ldi r30, 0x01 ; 1
20ac: 3e 2a or r3, r30
20ae: 30 fe sbrs r3, 0
20b0: 8e c0 rjmp .+284 ; 0x21ce <_printf_P+0x448>
20b2: 14 96 adiw r26, 0x04 ; 4
20b4: bb 83 std Y+3, r27 ; 0x03
20b6: aa 83 std Y+2, r26 ; 0x02
20b8: be 90 ld r11, -X
20ba: ae 90 ld r10, -X
20bc: 9e 90 ld r9, -X
20be: 8e 90 ld r8, -X
20c0: b7 fc sbrc r11, 7
20c2: 78 c0 rjmp .+240 ; 0x21b4 <_printf_P+0x42e>
20c4: fa e0 ldi r31, 0x0A ; 10
20c6: fa ab std Y+50, r31 ; 0x32
20c8: eb a9 ldd r30, Y+51 ; 0x33
20ca: e7 fd sbrc r30, 7
20cc: 02 c0 rjmp .+4 ; 0x20d2 <_printf_P+0x34c>
20ce: ff ed ldi r31, 0xDF ; 223
20d0: 3f 22 and r3, r31
20d2: 81 14 cp r8, r1
20d4: 91 04 cpc r9, r1
20d6: a1 04 cpc r10, r1
20d8: b1 04 cpc r11, r1
20da: a9 f1 breq .+106 ; 0x2146 <_printf_P+0x3c0>
20dc: 8a a9 ldd r24, Y+50 ; 0x32
20de: 48 2e mov r4, r24
20e0: 55 24 eor r5, r5
20e2: 66 24 eor r6, r6
20e4: 77 24 eor r7, r7
20e6: ee e2 ldi r30, 0x2E ; 46
20e8: ce 2e mov r12, r30
20ea: d1 2c mov r13, r1
20ec: cc 0e add r12, r28
20ee: dd 1e adc r13, r29
20f0: dd aa std Y+53, r13 ; 0x35
20f2: cc aa std Y+52, r12 ; 0x34
20f4: 17 c0 rjmp .+46 ; 0x2124 <_printf_P+0x39e>
20f6: 70 e3 ldi r23, 0x30 ; 48
20f8: e7 2e mov r14, r23
20fa: e6 0e add r14, r22
20fc: f6 01 movw r30, r12
20fe: e2 92 st -Z, r14
2100: 6f 01 movw r12, r30
2102: c5 01 movw r24, r10
2104: b4 01 movw r22, r8
2106: a3 01 movw r20, r6
2108: 92 01 movw r18, r4
210a: 0e 94 e6 55 call 0xabcc ; 0xabcc <__udivmodsi4>
210e: 2e a7 std Y+46, r18 ; 0x2e
2110: 3f a7 std Y+47, r19 ; 0x2f
2112: 48 ab std Y+48, r20 ; 0x30
2114: 59 ab std Y+49, r21 ; 0x31
2116: 84 14 cp r8, r4
2118: 95 04 cpc r9, r5
211a: a6 04 cpc r10, r6
211c: b7 04 cpc r11, r7
211e: a0 f1 brcs .+104 ; 0x2188 <_printf_P+0x402>
2120: 49 01 movw r8, r18
2122: 5a 01 movw r10, r20
2124: c5 01 movw r24, r10
2126: b4 01 movw r22, r8
2128: a3 01 movw r20, r6
212a: 92 01 movw r18, r4
212c: 0e 94 e6 55 call 0xabcc ; 0xabcc <__udivmodsi4>
2130: 6a 30 cpi r22, 0x0A ; 10
2132: 08 f3 brcs .-62 ; 0x20f6 <_printf_P+0x370>
2134: 57 e5 ldi r21, 0x57 ; 87
2136: e5 2e mov r14, r21
2138: e6 0e add r14, r22
213a: f8 e5 ldi r31, 0x58 ; 88
213c: ff 16 cp r15, r31
213e: f1 f6 brne .-68 ; 0x20fc <_printf_P+0x376>
2140: 8f ed ldi r24, 0xDF ; 223
2142: e8 22 and r14, r24
2144: db cf rjmp .-74 ; 0x20fc <_printf_P+0x376>
2146: 9b a9 ldd r25, Y+51 ; 0x33
2148: 99 23 and r25, r25
214a: c1 f4 brne .+48 ; 0x217c <_printf_P+0x3f6>
214c: 63 2c mov r6, r3
214e: 77 24 eor r7, r7
2150: 1e a6 std Y+46, r1 ; 0x2e
2152: 1f a6 std Y+47, r1 ; 0x2f
2154: 18 aa std Y+48, r1 ; 0x30
2156: 19 aa std Y+49, r1 ; 0x31
2158: fe e2 ldi r31, 0x2E ; 46
215a: cf 2e mov r12, r31
215c: d1 2c mov r13, r1
215e: cc 0e add r12, r28
2160: dd 1e adc r13, r29
2162: 80 e0 ldi r24, 0x00 ; 0
2164: e0 e0 ldi r30, 0x00 ; 0
2166: 4b a9 ldd r20, Y+51 ; 0x33
2168: e4 2e mov r14, r20
216a: ee 1a sub r14, r30
216c: e7 fc sbrc r14, 7
216e: 1b c0 rjmp .+54 ; 0x21a6 <_printf_P+0x420>
2170: 9e 2d mov r25, r14
2172: a8 2e mov r10, r24
2174: bb 24 eor r11, r11
2176: a7 fc sbrc r10, 7
2178: b0 94 com r11
217a: 6c cf rjmp .-296 ; 0x2054 <_printf_P+0x2ce>
217c: ea a9 ldd r30, Y+50 ; 0x32
217e: 4e 2e mov r4, r30
2180: 55 24 eor r5, r5
2182: 66 24 eor r6, r6
2184: 77 24 eor r7, r7
2186: af cf rjmp .-162 ; 0x20e6 <_printf_P+0x360>
2188: fa a9 ldd r31, Y+50 ; 0x32
218a: f8 30 cpi r31, 0x08 ; 8
218c: 09 f4 brne .+2 ; 0x2190 <_printf_P+0x40a>
218e: bc c0 rjmp .+376 ; 0x2308 <_printf_P+0x582>
2190: ec a9 ldd r30, Y+52 ; 0x34
2192: ec 19 sub r30, r12
2194: 8e 2f mov r24, r30
2196: 63 2c mov r6, r3
2198: 77 24 eor r7, r7
219a: e5 cf rjmp .-54 ; 0x2166 <_printf_P+0x3e0>
219c: 66 fe sbrs r6, 6
219e: 5f cf rjmp .-322 ; 0x205e <_printf_P+0x2d8>
21a0: 8e 2f mov r24, r30
21a2: 8e 5f subi r24, 0xFE ; 254
21a4: 5c cf rjmp .-328 ; 0x205e <_printf_P+0x2d8>
21a6: a8 2e mov r10, r24
21a8: bb 24 eor r11, r11
21aa: a7 fc sbrc r10, 7
21ac: b0 94 com r11
21ae: ee 24 eor r14, r14
21b0: 90 e0 ldi r25, 0x00 ; 0
21b2: 50 cf rjmp .-352 ; 0x2054 <_printf_P+0x2ce>
21b4: b0 94 com r11
21b6: a0 94 com r10
21b8: 90 94 com r9
21ba: 80 94 com r8
21bc: 81 1c adc r8, r1
21be: 91 1c adc r9, r1
21c0: a1 1c adc r10, r1
21c2: b1 1c adc r11, r1
21c4: 2d e2 ldi r18, 0x2D ; 45
21c6: 29 83 std Y+1, r18 ; 0x01
21c8: 8a e0 ldi r24, 0x0A ; 10
21ca: 8a ab std Y+50, r24 ; 0x32
21cc: 7d cf rjmp .-262 ; 0x20c8 <_printf_P+0x342>
21ce: 12 96 adiw r26, 0x02 ; 2
21d0: bb 83 std Y+3, r27 ; 0x03
21d2: aa 83 std Y+2, r26 ; 0x02
21d4: 9e 91 ld r25, -X
21d6: 8e 91 ld r24, -X
21d8: 4c 01 movw r8, r24
21da: aa 24 eor r10, r10
21dc: 97 fc sbrc r9, 7
21de: a0 94 com r10
21e0: ba 2c mov r11, r10
21e2: 6e cf rjmp .-292 ; 0x20c0 <_printf_P+0x33a>
21e4: 12 96 adiw r26, 0x02 ; 2
21e6: bb 83 std Y+3, r27 ; 0x03
21e8: aa 83 std Y+2, r26 ; 0x02
21ea: 12 97 sbiw r26, 0x02 ; 2
21ec: 8c 91 ld r24, X
21ee: 8e 83 std Y+6, r24 ; 0x06
21f0: 19 82 std Y+1, r1 ; 0x01
21f2: 1e cf rjmp .-452 ; 0x2030 <_printf_P+0x2aa>
21f4: f8 e0 ldi r31, 0x08 ; 8
21f6: fa ab std Y+50, r31 ; 0x32
21f8: 19 82 std Y+1, r1 ; 0x01
21fa: 66 cf rjmp .-308 ; 0x20c8 <_printf_P+0x342>
21fc: 81 e0 ldi r24, 0x01 ; 1
21fe: 38 2a or r3, r24
2200: 98 e0 ldi r25, 0x08 ; 8
2202: 9a ab std Y+50, r25 ; 0x32
2204: f9 cf rjmp .-14 ; 0x21f8 <_printf_P+0x472>
2206: 82 2d mov r24, r2
2208: 85 19 sub r24, r5
220a: 0e 94 83 0e call 0x1d06 ; 0x1d06 <PAD_0>
220e: 3c cf rjmp .-392 ; 0x2088 <_printf_P+0x302>
2210: 80 e3 ldi r24, 0x30 ; 48
2212: 8c 83 std Y+4, r24 ; 0x04
2214: fd 82 std Y+5, r15 ; 0x05
2216: 62 e0 ldi r22, 0x02 ; 2
2218: 70 e0 ldi r23, 0x00 ; 0
221a: ce 01 movw r24, r28
221c: 04 96 adiw r24, 0x04 ; 4
221e: 0e 94 af 0e call 0x1d5e ; 0x1d5e <PRINT>
2222: 2d cf rjmp .-422 ; 0x207e <_printf_P+0x2f8>
2224: 68 01 movw r12, r16
2226: f9 cd rjmp .-1038 ; 0x1e1a <_printf_P+0x94>
2228: ea e0 ldi r30, 0x0A ; 10
222a: ea ab std Y+50, r30 ; 0x32
222c: e5 cf rjmp .-54 ; 0x21f8 <_printf_P+0x472>
222e: f1 e0 ldi r31, 0x01 ; 1
2230: 3f 2a or r3, r31
2232: 8a e0 ldi r24, 0x0A ; 10
2234: 8a ab std Y+50, r24 ; 0x32
2236: e0 cf rjmp .-64 ; 0x21f8 <_printf_P+0x472>
2238: 12 96 adiw r26, 0x02 ; 2
223a: bb 83 std Y+3, r27 ; 0x03
223c: aa 83 std Y+2, r26 ; 0x02
223e: de 90 ld r13, -X
2240: ce 90 ld r12, -X
2242: c1 14 cp r12, r1
2244: d1 04 cpc r13, r1
2246: 89 f4 brne .+34 ; 0x226a <_printf_P+0x4e4>
2248: 88 e2 ldi r24, 0x28 ; 40
224a: 8e 83 std Y+6, r24 ; 0x06
224c: 8e e6 ldi r24, 0x6E ; 110
224e: 8f 83 std Y+7, r24 ; 0x07
2250: 85 e7 ldi r24, 0x75 ; 117
2252: 88 87 std Y+8, r24 ; 0x08
2254: 8c e6 ldi r24, 0x6C ; 108
2256: 89 87 std Y+9, r24 ; 0x09
2258: 8a 87 std Y+10, r24 ; 0x0a
225a: 89 e2 ldi r24, 0x29 ; 41
225c: 8b 87 std Y+11, r24 ; 0x0b
225e: 1c 86 std Y+12, r1 ; 0x0c
2260: a6 e0 ldi r26, 0x06 ; 6
2262: ca 2e mov r12, r26
2264: d1 2c mov r13, r1
2266: cc 0e add r12, r28
2268: dd 1e adc r13, r29
226a: eb a9 ldd r30, Y+51 ; 0x33
226c: e7 fd sbrc r30, 7
226e: 1c c0 rjmp .+56 ; 0x22a8 <_printf_P+0x522>
2270: 4e 2f mov r20, r30
2272: 55 27 eor r21, r21
2274: 47 fd sbrc r20, 7
2276: 50 95 com r21
2278: 60 e0 ldi r22, 0x00 ; 0
227a: 70 e0 ldi r23, 0x00 ; 0
227c: c6 01 movw r24, r12
227e: 0e 94 37 54 call 0xa86e ; 0xa86e <memchr>
2282: 00 97 sbiw r24, 0x00 ; 0
2284: 79 f0 breq .+30 ; 0x22a4 <_printf_P+0x51e>
2286: 8c 19 sub r24, r12
2288: fb a9 ldd r31, Y+51 ; 0x33
228a: f8 17 cp r31, r24
228c: 0c f4 brge .+2 ; 0x2290 <_printf_P+0x50a>
228e: 8f 2f mov r24, r31
2290: 19 82 std Y+1, r1 ; 0x01
2292: e8 2f mov r30, r24
2294: 63 2c mov r6, r3
2296: 77 24 eor r7, r7
2298: 8e a6 std Y+46, r8 ; 0x2e
229a: 9f a6 std Y+47, r9 ; 0x2f
229c: a8 aa std Y+48, r10 ; 0x30
229e: b9 aa std Y+49, r11 ; 0x31
22a0: 40 e0 ldi r20, 0x00 ; 0
22a2: 62 cf rjmp .-316 ; 0x2168 <_printf_P+0x3e2>
22a4: 8b a9 ldd r24, Y+51 ; 0x33
22a6: f4 cf rjmp .-24 ; 0x2290 <_printf_P+0x50a>
22a8: f6 01 movw r30, r12
22aa: 01 90 ld r0, Z+
22ac: 00 20 and r0, r0
22ae: e9 f7 brne .-6 ; 0x22aa <_printf_P+0x524>
22b0: 31 97 sbiw r30, 0x01 ; 1
22b2: 8e 2f mov r24, r30
22b4: 8c 19 sub r24, r12
22b6: ec cf rjmp .-40 ; 0x2290 <_printf_P+0x50a>
22b8: 12 96 adiw r26, 0x02 ; 2
22ba: bb 83 std Y+3, r27 ; 0x03
22bc: aa 83 std Y+2, r26 ; 0x02
22be: 9e 91 ld r25, -X
22c0: 8e 91 ld r24, -X
22c2: 4c 01 movw r8, r24
22c4: aa 24 eor r10, r10
22c6: bb 24 eor r11, r11
22c8: f0 e4 ldi r31, 0x40 ; 64
22ca: 3f 2a or r3, r31
22cc: b8 e7 ldi r27, 0x78 ; 120
22ce: fb 2e mov r15, r27
22d0: 80 e1 ldi r24, 0x10 ; 16
22d2: 8a ab std Y+50, r24 ; 0x32
22d4: 91 cf rjmp .-222 ; 0x21f8 <_printf_P+0x472>
22d6: 61 e0 ldi r22, 0x01 ; 1
22d8: 70 e0 ldi r23, 0x00 ; 0
22da: ce 01 movw r24, r28
22dc: 01 96 adiw r24, 0x01 ; 1
22de: 0e 94 af 0e call 0x1d5e ; 0x1d5e <PRINT>
22e2: cd ce rjmp .-614 ; 0x207e <_printf_P+0x2f8>
22e4: 82 2d mov r24, r2
22e6: 85 19 sub r24, r5
22e8: 0e 94 8e 0e call 0x1d1c ; 0x1d1c <PAD_SP>
22ec: 29 81 ldd r18, Y+1 ; 0x01
22ee: c2 ce rjmp .-636 ; 0x2074 <_printf_P+0x2ee>
22f0: 33 fe sbrs r3, 3
22f2: 19 c0 rjmp .+50 ; 0x2326 <_printf_P+0x5a0>
22f4: 81 14 cp r8, r1
22f6: 91 04 cpc r9, r1
22f8: a1 04 cpc r10, r1
22fa: b1 04 cpc r11, r1
22fc: a1 f0 breq .+40 ; 0x2326 <_printf_P+0x5a0>
22fe: f0 e4 ldi r31, 0x40 ; 64
2300: 3f 2a or r3, r31
2302: 80 e1 ldi r24, 0x10 ; 16
2304: 8a ab std Y+50, r24 ; 0x32
2306: 78 cf rjmp .-272 ; 0x21f8 <_printf_P+0x472>
2308: 63 2c mov r6, r3
230a: 77 24 eor r7, r7
230c: 33 fe sbrs r3, 3
230e: 07 c0 rjmp .+14 ; 0x231e <_printf_P+0x598>
2310: 80 e3 ldi r24, 0x30 ; 48
2312: e8 16 cp r14, r24
2314: 21 f0 breq .+8 ; 0x231e <_printf_P+0x598>
2316: 80 e3 ldi r24, 0x30 ; 48
2318: f6 01 movw r30, r12
231a: 82 93 st -Z, r24
231c: 6f 01 movw r12, r30
231e: ec a9 ldd r30, Y+52 ; 0x34
2320: ec 19 sub r30, r12
2322: 8e 2f mov r24, r30
2324: 20 cf rjmp .-448 ; 0x2166 <_printf_P+0x3e0>
2326: 90 e1 ldi r25, 0x10 ; 16
2328: 9a ab std Y+50, r25 ; 0x32
232a: 66 cf rjmp .-308 ; 0x21f8 <_printf_P+0x472>
232c: e5 96 adiw r28, 0x35 ; 53
232e: 0f b6 in r0, 0x3f ; 63
2330: f8 94 cli
2332: de bf out 0x3e, r29 ; 62
2334: 0f be out 0x3f, r0 ; 63
2336: cd bf out 0x3d, r28 ; 61
2338: df 91 pop r29
233a: cf 91 pop r28
233c: 1f 91 pop r17
233e: 0f 91 pop r16
2340: ff 90 pop r15
2342: ef 90 pop r14
2344: df 90 pop r13
2346: cf 90 pop r12
2348: bf 90 pop r11
234a: af 90 pop r10
234c: 9f 90 pop r9
234e: 8f 90 pop r8
2350: 7f 90 pop r7
2352: 6f 90 pop r6
2354: 5f 90 pop r5
2356: 4f 90 pop r4
2358: 3f 90 pop r3
235a: 2f 90 pop r2
235c: 08 95 ret
 
0000235e <__vector_18>:
235e: 1f 92 push r1
2360: 0f 92 push r0
2362: 0f b6 in r0, 0x3f ; 63
2364: 0f 92 push r0
2366: 11 24 eor r1, r1
2368: 2f 93 push r18
236a: 3f 93 push r19
236c: 5f 93 push r21
236e: 6f 93 push r22
2370: 7f 93 push r23
2372: 8f 93 push r24
2374: 9f 93 push r25
2376: af 93 push r26
2378: bf 93 push r27
237a: 80 91 e7 03 lds r24, 0x03E7
237e: 88 23 and r24, r24
2380: 29 f0 breq .+10 ; 0x238c <__vector_18+0x2e>
2382: 80 91 e7 03 lds r24, 0x03E7
2386: 81 50 subi r24, 0x01 ; 1
2388: 80 93 e7 03 sts 0x03E7, r24
238c: 80 91 f5 03 lds r24, 0x03F5
2390: 81 50 subi r24, 0x01 ; 1
2392: 80 93 f5 03 sts 0x03F5, r24
2396: 8f 3f cpi r24, 0xFF ; 255
2398: 09 f4 brne .+2 ; 0x239c <__vector_18+0x3e>
239a: 88 c0 rjmp .+272 ; 0x24ac <__vector_18+0x14e>
239c: 80 91 e5 03 lds r24, 0x03E5
23a0: 90 91 e6 03 lds r25, 0x03E6
23a4: 02 97 sbiw r24, 0x02 ; 2
23a6: e0 f0 brcs .+56 ; 0x23e0 <__vector_18+0x82>
23a8: 80 91 e5 03 lds r24, 0x03E5
23ac: 90 91 e6 03 lds r25, 0x03E6
23b0: 01 97 sbiw r24, 0x01 ; 1
23b2: 90 93 e6 03 sts 0x03E6, r25
23b6: 80 93 e5 03 sts 0x03E5, r24
23ba: 80 91 e5 03 lds r24, 0x03E5
23be: 90 91 e6 03 lds r25, 0x03E6
23c2: 20 91 09 03 lds r18, 0x0309
23c6: 30 91 0a 03 lds r19, 0x030A
23ca: 82 23 and r24, r18
23cc: 93 23 and r25, r19
23ce: 89 2b or r24, r25
23d0: 69 f0 breq .+26 ; 0x23ec <__vector_18+0x8e>
23d2: 80 91 00 01 lds r24, 0x0100
23d6: 8a 30 cpi r24, 0x0A ; 10
23d8: 09 f4 brne .+2 ; 0x23dc <__vector_18+0x7e>
23da: 82 c0 rjmp .+260 ; 0x24e0 <__vector_18+0x182>
23dc: 47 9a sbi 0x08, 7 ; 8
23de: 0c c0 rjmp .+24 ; 0x23f8 <__vector_18+0x9a>
23e0: 8f ef ldi r24, 0xFF ; 255
23e2: 9f ef ldi r25, 0xFF ; 255
23e4: 90 93 0a 03 sts 0x030A, r25
23e8: 80 93 09 03 sts 0x0309, r24
23ec: 80 91 00 01 lds r24, 0x0100
23f0: 8a 30 cpi r24, 0x0A ; 10
23f2: 09 f4 brne .+2 ; 0x23f6 <__vector_18+0x98>
23f4: 73 c0 rjmp .+230 ; 0x24dc <__vector_18+0x17e>
23f6: 47 98 cbi 0x08, 7 ; 8
23f8: 80 91 df 07 lds r24, 0x07DF
23fc: 83 ff sbrs r24, 3
23fe: 77 c0 rjmp .+238 ; 0x24ee <__vector_18+0x190>
2400: 34 9b sbis 0x06, 4 ; 6
2402: 0a c0 rjmp .+20 ; 0x2418 <__vector_18+0xba>
2404: 80 91 e3 03 lds r24, 0x03E3
2408: 90 91 e4 03 lds r25, 0x03E4
240c: 01 96 adiw r24, 0x01 ; 1
240e: 90 93 e4 03 sts 0x03E4, r25
2412: 80 93 e3 03 sts 0x03E3, r24
2416: 6b c0 rjmp .+214 ; 0x24ee <__vector_18+0x190>
2418: 80 91 e3 03 lds r24, 0x03E3
241c: 90 91 e4 03 lds r25, 0x03E4
2420: 89 2b or r24, r25
2422: 49 f1 breq .+82 ; 0x2476 <__vector_18+0x118>
2424: 80 91 e3 03 lds r24, 0x03E3
2428: 90 91 e4 03 lds r25, 0x03E4
242c: 8a 56 subi r24, 0x6A ; 106
242e: 91 40 sbci r25, 0x01 ; 1
2430: 10 f5 brcc .+68 ; 0x2476 <__vector_18+0x118>
2432: 80 91 e3 03 lds r24, 0x03E3
2436: 90 91 e4 03 lds r25, 0x03E4
243a: 20 91 e3 03 lds r18, 0x03E3
243e: 30 91 e4 03 lds r19, 0x03E4
2442: 69 e2 ldi r22, 0x29 ; 41
2444: 70 e0 ldi r23, 0x00 ; 0
2446: 0e 94 bf 55 call 0xab7e ; 0xab7e <__udivmodhi4>
244a: 26 0f add r18, r22
244c: 37 1f adc r19, r23
244e: 30 93 e4 03 sts 0x03E4, r19
2452: 20 93 e3 03 sts 0x03E3, r18
2456: 80 91 e3 03 lds r24, 0x03E3
245a: 90 91 e4 03 lds r25, 0x03E4
245e: 0b 97 sbiw r24, 0x0b ; 11
2460: 08 f4 brcc .+2 ; 0x2464 <__vector_18+0x106>
2462: 40 c0 rjmp .+128 ; 0x24e4 <__vector_18+0x186>
2464: 80 91 e3 03 lds r24, 0x03E3
2468: 90 91 e4 03 lds r25, 0x03E4
246c: 0a 97 sbiw r24, 0x0a ; 10
246e: 90 93 82 04 sts 0x0482, r25
2472: 80 93 81 04 sts 0x0481, r24
2476: 80 91 81 04 lds r24, 0x0481
247a: 90 91 82 04 lds r25, 0x0482
247e: 84 5e subi r24, 0xE4 ; 228
2480: 9d 4f sbci r25, 0xFD ; 253
2482: 20 91 83 04 lds r18, 0x0483
2486: 30 91 84 04 lds r19, 0x0484
248a: 82 1b sub r24, r18
248c: 93 0b sbc r25, r19
248e: 68 e6 ldi r22, 0x68 ; 104
2490: 71 e0 ldi r23, 0x01 ; 1
2492: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
2496: 84 5b subi r24, 0xB4 ; 180
2498: 90 40 sbci r25, 0x00 ; 0
249a: 90 93 86 04 sts 0x0486, r25
249e: 80 93 85 04 sts 0x0485, r24
24a2: 10 92 e4 03 sts 0x03E4, r1
24a6: 10 92 e3 03 sts 0x03E3, r1
24aa: 21 c0 rjmp .+66 ; 0x24ee <__vector_18+0x190>
24ac: 89 e0 ldi r24, 0x09 ; 9
24ae: 80 93 f5 03 sts 0x03F5, r24
24b2: 80 91 0d 03 lds r24, 0x030D
24b6: 8f 5f subi r24, 0xFF ; 255
24b8: 81 70 andi r24, 0x01 ; 1
24ba: 80 93 0d 03 sts 0x030D, r24
24be: 88 23 and r24, r24
24c0: 19 f4 brne .+6 ; 0x24c8 <__vector_18+0x16a>
24c2: 81 e0 ldi r24, 0x01 ; 1
24c4: 80 93 e2 03 sts 0x03E2, r24
24c8: 80 91 e0 03 lds r24, 0x03E0
24cc: 90 91 e1 03 lds r25, 0x03E1
24d0: 01 96 adiw r24, 0x01 ; 1
24d2: 90 93 e1 03 sts 0x03E1, r25
24d6: 80 93 e0 03 sts 0x03E0, r24
24da: 60 cf rjmp .-320 ; 0x239c <__vector_18+0x3e>
24dc: 5a 98 cbi 0x0b, 2 ; 11
24de: 8c cf rjmp .-232 ; 0x23f8 <__vector_18+0x9a>
24e0: 5a 9a sbi 0x0b, 2 ; 11
24e2: 8a cf rjmp .-236 ; 0x23f8 <__vector_18+0x9a>
24e4: 10 92 82 04 sts 0x0482, r1
24e8: 10 92 81 04 sts 0x0481, r1
24ec: c4 cf rjmp .-120 ; 0x2476 <__vector_18+0x118>
24ee: bf 91 pop r27
24f0: af 91 pop r26
24f2: 9f 91 pop r25
24f4: 8f 91 pop r24
24f6: 7f 91 pop r23
24f8: 6f 91 pop r22
24fa: 5f 91 pop r21
24fc: 3f 91 pop r19
24fe: 2f 91 pop r18
2500: 0f 90 pop r0
2502: 0f be out 0x3f, r0 ; 63
2504: 0f 90 pop r0
2506: 1f 90 pop r1
2508: 18 95 reti
 
0000250a <SetDelay>:
250a: 20 91 e0 03 lds r18, 0x03E0
250e: 30 91 e1 03 lds r19, 0x03E1
2512: 2f 5f subi r18, 0xFF ; 255
2514: 3f 4f sbci r19, 0xFF ; 255
2516: 82 0f add r24, r18
2518: 93 1f adc r25, r19
251a: 08 95 ret
 
0000251c <CheckDelay>:
251c: 20 91 e0 03 lds r18, 0x03E0
2520: 30 91 e1 03 lds r19, 0x03E1
2524: 82 1b sub r24, r18
2526: 93 0b sbc r25, r19
2528: 89 2f mov r24, r25
252a: 99 27 eor r25, r25
252c: 86 95 lsr r24
252e: 80 74 andi r24, 0x40 ; 64
2530: 90 e0 ldi r25, 0x00 ; 0
2532: 08 95 ret
 
00002534 <Delay_ms>:
2534: cf 93 push r28
2536: df 93 push r29
2538: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
253c: ec 01 movw r28, r24
253e: ce 01 movw r24, r28
2540: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
2544: 88 23 and r24, r24
2546: d9 f3 breq .-10 ; 0x253e <Delay_ms+0xa>
2548: df 91 pop r29
254a: cf 91 pop r28
254c: 08 95 ret
 
0000254e <Delay_ms_Mess>:
254e: cf 93 push r28
2550: df 93 push r29
2552: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
2556: ec 01 movw r28, r24
2558: 09 c0 rjmp .+18 ; 0x256c <Delay_ms_Mess+0x1e>
255a: 80 91 1d 03 lds r24, 0x031D
255e: 88 23 and r24, r24
2560: 29 f0 breq .+10 ; 0x256c <Delay_ms_Mess+0x1e>
2562: 10 92 1d 03 sts 0x031D, r1
2566: 8f ec ldi r24, 0xCF ; 207
2568: 80 93 7a 00 sts 0x007A, r24
256c: ce 01 movw r24, r28
256e: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
2572: 88 23 and r24, r24
2574: 91 f3 breq .-28 ; 0x255a <Delay_ms_Mess+0xc>
2576: df 91 pop r29
2578: cf 91 pop r28
257a: 08 95 ret
 
0000257c <TIMER2_Init>:
257c: 9f b7 in r25, 0x3f ; 63
257e: f8 94 cli
2580: 57 9a sbi 0x0a, 7 ; 10
2582: 5f 98 cbi 0x0b, 7 ; 11
2584: 3e 9a sbi 0x07, 6 ; 7
2586: 46 9a sbi 0x08, 6 ; 8
2588: a0 eb ldi r26, 0xB0 ; 176
258a: b0 e0 ldi r27, 0x00 ; 0
258c: 8c 91 ld r24, X
258e: 8f 70 andi r24, 0x0F ; 15
2590: 8c 93 st X, r24
2592: 8c 91 ld r24, X
2594: 83 60 ori r24, 0x03 ; 3
2596: 8c 93 st X, r24
2598: e1 eb ldi r30, 0xB1 ; 177
259a: f0 e0 ldi r31, 0x00 ; 0
259c: 80 81 ld r24, Z
259e: 8b 73 andi r24, 0x3B ; 59
25a0: 80 83 st Z, r24
25a2: 80 81 ld r24, Z
25a4: 8b 60 ori r24, 0x0B ; 11
25a6: 80 83 st Z, r24
25a8: 10 92 b2 00 sts 0x00B2, r1
25ac: 8f ef ldi r24, 0xFF ; 255
25ae: 80 93 b3 00 sts 0x00B3, r24
25b2: 8c 91 ld r24, X
25b4: 80 68 ori r24, 0x80 ; 128
25b6: 8c 93 st X, r24
25b8: e0 e7 ldi r30, 0x70 ; 112
25ba: f0 e0 ldi r31, 0x00 ; 0
25bc: 80 81 ld r24, Z
25be: 8a 7f andi r24, 0xFA ; 250
25c0: 80 83 st Z, r24
25c2: 80 81 ld r24, Z
25c4: 82 60 ori r24, 0x02 ; 2
25c6: 80 83 st Z, r24
25c8: 9f bf out 0x3f, r25 ; 63
25ca: 08 95 ret
 
000025cc <Timer_Init>:
25cc: 8a e0 ldi r24, 0x0A ; 10
25ce: 90 e0 ldi r25, 0x00 ; 0
25d0: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
25d4: 90 93 f7 03 sts 0x03F7, r25
25d8: 80 93 f6 03 sts 0x03F6, r24
25dc: 82 e0 ldi r24, 0x02 ; 2
25de: 85 bd out 0x25, r24 ; 37
25e0: 83 ea ldi r24, 0xA3 ; 163
25e2: 84 bd out 0x24, r24 ; 36
25e4: 17 bc out 0x27, r1 ; 39
25e6: 88 e7 ldi r24, 0x78 ; 120
25e8: 88 bd out 0x28, r24 ; 40
25ea: 86 e0 ldi r24, 0x06 ; 6
25ec: 86 bd out 0x26, r24 ; 38
25ee: ee e6 ldi r30, 0x6E ; 110
25f0: f0 e0 ldi r31, 0x00 ; 0
25f2: 80 81 ld r24, Z
25f4: 81 60 ori r24, 0x01 ; 1
25f6: 80 83 st Z, r24
25f8: 08 95 ret
 
000025fa <__vector_9>:
25fa: 1f 92 push r1
25fc: 0f 92 push r0
25fe: 0f b6 in r0, 0x3f ; 63
2600: 0f 92 push r0
2602: 11 24 eor r1, r1
2604: cf 92 push r12
2606: df 92 push r13
2608: ef 92 push r14
260a: ff 92 push r15
260c: 0f 93 push r16
260e: 1f 93 push r17
2610: 2f 93 push r18
2612: 3f 93 push r19
2614: 4f 93 push r20
2616: 5f 93 push r21
2618: 6f 93 push r22
261a: 7f 93 push r23
261c: 8f 93 push r24
261e: 9f 93 push r25
2620: af 93 push r26
2622: bf 93 push r27
2624: ef 93 push r30
2626: ff 93 push r31
2628: 80 91 00 01 lds r24, 0x0100
262c: 84 31 cpi r24, 0x14 ; 20
262e: b8 f4 brcc .+46 ; 0x265e <__vector_9+0x64>
2630: 80 91 f4 03 lds r24, 0x03F4
2634: 88 23 and r24, r24
2636: 09 f4 brne .+2 ; 0x263a <__vector_9+0x40>
2638: 5d c0 rjmp .+186 ; 0x26f4 <__vector_9+0xfa>
263a: 20 91 f2 03 lds r18, 0x03F2
263e: 30 91 f3 03 lds r19, 0x03F3
2642: 41 e0 ldi r20, 0x01 ; 1
2644: 2f 37 cpi r18, 0x7F ; 127
2646: 34 07 cpc r19, r20
2648: c8 f1 brcs .+114 ; 0x26bc <__vector_9+0xc2>
264a: 8f ef ldi r24, 0xFF ; 255
264c: 80 93 b3 00 sts 0x00B3, r24
2650: 2f 5f subi r18, 0xFF ; 255
2652: 30 40 sbci r19, 0x00 ; 0
2654: 30 93 f3 03 sts 0x03F3, r19
2658: 20 93 f2 03 sts 0x03F2, r18
265c: b3 c2 rjmp .+1382 ; 0x2bc4 <__vector_9+0x5ca>
265e: 80 91 f4 03 lds r24, 0x03F4
2662: 88 23 and r24, r24
2664: 51 f7 brne .-44 ; 0x263a <__vector_9+0x40>
2666: 80 91 b0 00 lds r24, 0x00B0
266a: 86 ff sbrs r24, 6
266c: 15 c1 rjmp .+554 ; 0x2898 <__vector_9+0x29e>
266e: 80 91 b0 00 lds r24, 0x00B0
2672: 8f 7b andi r24, 0xBF ; 191
2674: 80 93 b0 00 sts 0x00B0, r24
2678: e0 91 ef 03 lds r30, 0x03EF
267c: ee 23 and r30, r30
267e: 09 f0 breq .+2 ; 0x2682 <__vector_9+0x88>
2680: 49 c1 rjmp .+658 ; 0x2914 <__vector_9+0x31a>
2682: 80 91 fd 07 lds r24, 0x07FD
2686: 90 e0 ldi r25, 0x00 ; 0
2688: 2d ed ldi r18, 0xDD ; 221
268a: 36 e0 ldi r19, 0x06 ; 6
268c: a9 01 movw r20, r18
268e: 84 9f mul r24, r20
2690: 90 01 movw r18, r0
2692: 85 9f mul r24, r21
2694: 30 0d add r19, r0
2696: 94 9f mul r25, r20
2698: 30 0d add r19, r0
269a: 11 24 eor r1, r1
269c: 80 91 f0 03 lds r24, 0x03F0
26a0: 90 91 f1 03 lds r25, 0x03F1
26a4: 28 1b sub r18, r24
26a6: 39 0b sbc r19, r25
26a8: 30 93 f3 03 sts 0x03F3, r19
26ac: 20 93 f2 03 sts 0x03F2, r18
26b0: 10 92 f1 03 sts 0x03F1, r1
26b4: 10 92 f0 03 sts 0x03F0, r1
26b8: 46 9a sbi 0x08, 6 ; 8
26ba: ea c0 rjmp .+468 ; 0x2890 <__vector_9+0x296>
26bc: 2f 3f cpi r18, 0xFF ; 255
26be: 31 05 cpc r19, r1
26c0: 81 f0 breq .+32 ; 0x26e2 <__vector_9+0xe8>
26c2: 78 f0 brcs .+30 ; 0x26e2 <__vector_9+0xe8>
26c4: 51 e0 ldi r21, 0x01 ; 1
26c6: 2e 37 cpi r18, 0x7E ; 126
26c8: 35 07 cpc r19, r21
26ca: 09 f4 brne .+2 ; 0x26ce <__vector_9+0xd4>
26cc: 14 c1 rjmp .+552 ; 0x28f6 <__vector_9+0x2fc>
26ce: 80 e8 ldi r24, 0x80 ; 128
26d0: 80 93 b3 00 sts 0x00B3, r24
26d4: 20 58 subi r18, 0x80 ; 128
26d6: 30 40 sbci r19, 0x00 ; 0
26d8: 30 93 f3 03 sts 0x03F3, r19
26dc: 20 93 f2 03 sts 0x03F2, r18
26e0: 71 c2 rjmp .+1250 ; 0x2bc4 <__vector_9+0x5ca>
26e2: 20 93 b3 00 sts 0x00B3, r18
26e6: 10 92 f3 03 sts 0x03F3, r1
26ea: 10 92 f2 03 sts 0x03F2, r1
26ee: 10 92 f4 03 sts 0x03F4, r1
26f2: 68 c2 rjmp .+1232 ; 0x2bc4 <__vector_9+0x5ca>
26f4: 80 91 b0 00 lds r24, 0x00B0
26f8: 86 ff sbrs r24, 6
26fa: ae c0 rjmp .+348 ; 0x2858 <__vector_9+0x25e>
26fc: 80 91 b0 00 lds r24, 0x00B0
2700: 8f 7b andi r24, 0xBF ; 191
2702: 80 93 b0 00 sts 0x00B0, r24
2706: 80 91 ab 03 lds r24, 0x03AB
270a: 48 2f mov r20, r24
270c: 50 e0 ldi r21, 0x00 ; 0
270e: 44 0f add r20, r20
2710: 55 1f adc r21, r21
2712: 44 0f add r20, r20
2714: 55 1f adc r21, r21
2716: 20 91 0b 03 lds r18, 0x030B
271a: 30 91 0c 03 lds r19, 0x030C
271e: c9 01 movw r24, r18
2720: 88 0f add r24, r24
2722: 99 1f adc r25, r25
2724: 82 0f add r24, r18
2726: 93 1f adc r25, r19
2728: 48 0f add r20, r24
272a: 59 1f adc r21, r25
272c: 57 fd sbrc r21, 7
272e: 10 c2 rjmp .+1056 ; 0x2b50 <__vector_9+0x556>
2730: ca 01 movw r24, r20
2732: 95 95 asr r25
2734: 87 95 ror r24
2736: 95 95 asr r25
2738: 87 95 ror r24
273a: 90 93 0c 03 sts 0x030C, r25
273e: 80 93 0b 03 sts 0x030B, r24
2742: 90 93 ec 03 sts 0x03EC, r25
2746: 80 93 eb 03 sts 0x03EB, r24
274a: 80 91 23 08 lds r24, 0x0823
274e: 80 ff sbrs r24, 0
2750: 24 c1 rjmp .+584 ; 0x299a <__vector_9+0x3a0>
2752: c0 90 eb 03 lds r12, 0x03EB
2756: d0 90 ec 03 lds r13, 0x03EC
275a: e0 90 fa 07 lds r14, 0x07FA
275e: ff 24 eor r15, r15
2760: 00 e0 ldi r16, 0x00 ; 0
2762: 10 e0 ldi r17, 0x00 ; 0
2764: 60 91 45 04 lds r22, 0x0445
2768: 70 91 46 04 lds r23, 0x0446
276c: 80 91 47 04 lds r24, 0x0447
2770: 90 91 48 04 lds r25, 0x0448
2774: 20 e8 ldi r18, 0x80 ; 128
2776: 30 e0 ldi r19, 0x00 ; 0
2778: 40 e0 ldi r20, 0x00 ; 0
277a: 50 e0 ldi r21, 0x00 ; 0
277c: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
2780: c8 01 movw r24, r16
2782: b7 01 movw r22, r14
2784: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
2788: 66 0f add r22, r22
278a: 77 1f adc r23, r23
278c: 88 1f adc r24, r24
278e: 99 1f adc r25, r25
2790: 66 0f add r22, r22
2792: 77 1f adc r23, r23
2794: 88 1f adc r24, r24
2796: 99 1f adc r25, r25
2798: 20 e0 ldi r18, 0x00 ; 0
279a: 31 e0 ldi r19, 0x01 ; 1
279c: 40 e0 ldi r20, 0x00 ; 0
279e: 50 e0 ldi r21, 0x00 ; 0
27a0: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
27a4: c2 0e add r12, r18
27a6: d3 1e adc r13, r19
27a8: d0 92 ec 03 sts 0x03EC, r13
27ac: c0 92 eb 03 sts 0x03EB, r12
27b0: 80 91 fb 07 lds r24, 0x07FB
27b4: 28 2f mov r18, r24
27b6: 30 e0 ldi r19, 0x00 ; 0
27b8: 22 0f add r18, r18
27ba: 33 1f adc r19, r19
27bc: 22 0f add r18, r18
27be: 33 1f adc r19, r19
27c0: 80 91 eb 03 lds r24, 0x03EB
27c4: 90 91 ec 03 lds r25, 0x03EC
27c8: 82 17 cp r24, r18
27ca: 93 07 cpc r25, r19
27cc: 0c f4 brge .+2 ; 0x27d0 <__vector_9+0x1d6>
27ce: 9d c0 rjmp .+314 ; 0x290a <__vector_9+0x310>
27d0: 80 91 fc 07 lds r24, 0x07FC
27d4: 28 2f mov r18, r24
27d6: 30 e0 ldi r19, 0x00 ; 0
27d8: 22 0f add r18, r18
27da: 33 1f adc r19, r19
27dc: 22 0f add r18, r18
27de: 33 1f adc r19, r19
27e0: 80 91 eb 03 lds r24, 0x03EB
27e4: 90 91 ec 03 lds r25, 0x03EC
27e8: 28 17 cp r18, r24
27ea: 39 07 cpc r19, r25
27ec: 0c f4 brge .+2 ; 0x27f0 <__vector_9+0x1f6>
27ee: 8d c0 rjmp .+282 ; 0x290a <__vector_9+0x310>
27f0: 20 91 eb 03 lds r18, 0x03EB
27f4: 30 91 ec 03 lds r19, 0x03EC
27f8: 27 55 subi r18, 0x57 ; 87
27fa: 3e 4f sbci r19, 0xFE ; 254
27fc: 30 93 f3 03 sts 0x03F3, r19
2800: 20 93 f2 03 sts 0x03F2, r18
2804: 80 91 eb 03 lds r24, 0x03EB
2808: 90 91 ec 03 lds r25, 0x03EC
280c: 97 fd sbrc r25, 7
280e: a3 c1 rjmp .+838 ; 0x2b56 <__vector_9+0x55c>
2810: 95 95 asr r25
2812: 87 95 ror r24
2814: 95 95 asr r25
2816: 87 95 ror r24
2818: 90 93 ec 03 sts 0x03EC, r25
281c: 80 93 eb 03 sts 0x03EB, r24
2820: 80 91 eb 03 lds r24, 0x03EB
2824: 90 91 ec 03 lds r25, 0x03EC
2828: 90 93 6a 07 sts 0x076A, r25
282c: 80 93 69 07 sts 0x0769, r24
2830: 45 e0 ldi r20, 0x05 ; 5
2832: 2d 3d cpi r18, 0xDD ; 221
2834: 34 07 cpc r19, r20
2836: 08 f4 brcc .+2 ; 0x283a <__vector_9+0x240>
2838: a5 c0 rjmp .+330 ; 0x2984 <__vector_9+0x38a>
283a: 2c ed ldi r18, 0xDC ; 220
283c: 35 e0 ldi r19, 0x05 ; 5
283e: 30 93 f3 03 sts 0x03F3, r19
2842: 20 93 f2 03 sts 0x03F2, r18
2846: 20 91 f2 03 lds r18, 0x03F2
284a: 30 91 f3 03 lds r19, 0x03F3
284e: 30 93 f1 03 sts 0x03F1, r19
2852: 20 93 f0 03 sts 0x03F0, r18
2856: 1c c0 rjmp .+56 ; 0x2890 <__vector_9+0x296>
2858: 80 91 b0 00 lds r24, 0x00B0
285c: 80 64 ori r24, 0x40 ; 64
285e: 80 93 b0 00 sts 0x00B0, r24
2862: 80 91 fd 07 lds r24, 0x07FD
2866: 90 e0 ldi r25, 0x00 ; 0
2868: 2d ed ldi r18, 0xDD ; 221
286a: 36 e0 ldi r19, 0x06 ; 6
286c: a9 01 movw r20, r18
286e: 84 9f mul r24, r20
2870: 90 01 movw r18, r0
2872: 85 9f mul r24, r21
2874: 30 0d add r19, r0
2876: 94 9f mul r25, r20
2878: 30 0d add r19, r0
287a: 11 24 eor r1, r1
287c: 80 91 f0 03 lds r24, 0x03F0
2880: 90 91 f1 03 lds r25, 0x03F1
2884: 28 1b sub r18, r24
2886: 39 0b sbc r19, r25
2888: 30 93 f3 03 sts 0x03F3, r19
288c: 20 93 f2 03 sts 0x03F2, r18
2890: 81 e0 ldi r24, 0x01 ; 1
2892: 80 93 f4 03 sts 0x03F4, r24
2896: d5 ce rjmp .-598 ; 0x2642 <__vector_9+0x48>
2898: 80 91 b0 00 lds r24, 0x00B0
289c: 80 64 ori r24, 0x40 ; 64
289e: 80 93 b0 00 sts 0x00B0, r24
28a2: 2c eb ldi r18, 0xBC ; 188
28a4: 30 e0 ldi r19, 0x00 ; 0
28a6: 30 93 f3 03 sts 0x03F3, r19
28aa: 20 93 f2 03 sts 0x03F2, r18
28ae: 80 91 f0 03 lds r24, 0x03F0
28b2: 90 91 f1 03 lds r25, 0x03F1
28b6: 84 54 subi r24, 0x44 ; 68
28b8: 9f 4f sbci r25, 0xFF ; 255
28ba: 90 93 f1 03 sts 0x03F1, r25
28be: 80 93 f0 03 sts 0x03F0, r24
28c2: 80 91 e8 03 lds r24, 0x03E8
28c6: 88 23 and r24, r24
28c8: 29 f0 breq .+10 ; 0x28d4 <__vector_9+0x2da>
28ca: 80 91 94 04 lds r24, 0x0494
28ce: 85 3b cpi r24, 0xB5 ; 181
28d0: 08 f0 brcs .+2 ; 0x28d4 <__vector_9+0x2da>
28d2: 98 c0 rjmp .+304 ; 0x2a04 <__vector_9+0x40a>
28d4: 80 91 ef 03 lds r24, 0x03EF
28d8: 8f 5f subi r24, 0xFF ; 255
28da: 80 93 ef 03 sts 0x03EF, r24
28de: 90 91 fd 07 lds r25, 0x07FD
28e2: 98 17 cp r25, r24
28e4: 08 f0 brcs .+2 ; 0x28e8 <__vector_9+0x2ee>
28e6: 89 c0 rjmp .+274 ; 0x29fa <__vector_9+0x400>
28e8: 10 92 ef 03 sts 0x03EF, r1
28ec: 20 91 f2 03 lds r18, 0x03F2
28f0: 30 91 f3 03 lds r19, 0x03F3
28f4: cd cf rjmp .-102 ; 0x2890 <__vector_9+0x296>
28f6: 8f ef ldi r24, 0xFF ; 255
28f8: 80 93 b3 00 sts 0x00B3, r24
28fc: 2f e7 ldi r18, 0x7F ; 127
28fe: 30 e0 ldi r19, 0x00 ; 0
2900: 30 93 f3 03 sts 0x03F3, r19
2904: 20 93 f2 03 sts 0x03F2, r18
2908: 5d c1 rjmp .+698 ; 0x2bc4 <__vector_9+0x5ca>
290a: 30 93 ec 03 sts 0x03EC, r19
290e: 20 93 eb 03 sts 0x03EB, r18
2912: 6e cf rjmp .-292 ; 0x27f0 <__vector_9+0x1f6>
2914: 29 ea ldi r18, 0xA9 ; 169
2916: 33 e0 ldi r19, 0x03 ; 3
2918: 30 93 f3 03 sts 0x03F3, r19
291c: 20 93 f2 03 sts 0x03F2, r18
2920: e1 30 cpi r30, 0x01 ; 1
2922: 09 f4 brne .+2 ; 0x2926 <__vector_9+0x32c>
2924: 71 c0 rjmp .+226 ; 0x2a08 <__vector_9+0x40e>
2926: f0 e0 ldi r31, 0x00 ; 0
2928: ee 0f add r30, r30
292a: ff 1f adc r31, r31
292c: eb 55 subi r30, 0x5B ; 91
292e: f8 4f sbci r31, 0xF8 ; 248
2930: 80 81 ld r24, Z
2932: 91 81 ldd r25, Z+1 ; 0x01
2934: 88 0f add r24, r24
2936: 99 1f adc r25, r25
2938: 87 55 subi r24, 0x57 ; 87
293a: 9c 4f sbci r25, 0xFC ; 252
293c: 90 93 f3 03 sts 0x03F3, r25
2940: 80 93 f2 03 sts 0x03F2, r24
2944: 20 91 f2 03 lds r18, 0x03F2
2948: 30 91 f3 03 lds r19, 0x03F3
294c: 55 e0 ldi r21, 0x05 ; 5
294e: 2d 3d cpi r18, 0xDD ; 221
2950: 35 07 cpc r19, r21
2952: 08 f4 brcc .+2 ; 0x2956 <__vector_9+0x35c>
2954: f1 c0 rjmp .+482 ; 0x2b38 <__vector_9+0x53e>
2956: 2c ed ldi r18, 0xDC ; 220
2958: 35 e0 ldi r19, 0x05 ; 5
295a: 30 93 f3 03 sts 0x03F3, r19
295e: 20 93 f2 03 sts 0x03F2, r18
2962: 2c 5b subi r18, 0xBC ; 188
2964: 30 40 sbci r19, 0x00 ; 0
2966: 30 93 f3 03 sts 0x03F3, r19
296a: 20 93 f2 03 sts 0x03F2, r18
296e: 80 91 f0 03 lds r24, 0x03F0
2972: 90 91 f1 03 lds r25, 0x03F1
2976: 82 0f add r24, r18
2978: 93 1f adc r25, r19
297a: 90 93 f1 03 sts 0x03F1, r25
297e: 80 93 f0 03 sts 0x03F0, r24
2982: 86 cf rjmp .-244 ; 0x2890 <__vector_9+0x296>
2984: 27 57 subi r18, 0x77 ; 119
2986: 31 40 sbci r19, 0x01 ; 1
2988: 08 f0 brcs .+2 ; 0x298c <__vector_9+0x392>
298a: 5d cf rjmp .-326 ; 0x2846 <__vector_9+0x24c>
298c: 27 e7 ldi r18, 0x77 ; 119
298e: 31 e0 ldi r19, 0x01 ; 1
2990: 30 93 f3 03 sts 0x03F3, r19
2994: 20 93 f2 03 sts 0x03F2, r18
2998: 56 cf rjmp .-340 ; 0x2846 <__vector_9+0x24c>
299a: c0 90 eb 03 lds r12, 0x03EB
299e: d0 90 ec 03 lds r13, 0x03EC
29a2: e0 90 fa 07 lds r14, 0x07FA
29a6: ff 24 eor r15, r15
29a8: 00 e0 ldi r16, 0x00 ; 0
29aa: 10 e0 ldi r17, 0x00 ; 0
29ac: 60 91 45 04 lds r22, 0x0445
29b0: 70 91 46 04 lds r23, 0x0446
29b4: 80 91 47 04 lds r24, 0x0447
29b8: 90 91 48 04 lds r25, 0x0448
29bc: 20 e8 ldi r18, 0x80 ; 128
29be: 30 e0 ldi r19, 0x00 ; 0
29c0: 40 e0 ldi r20, 0x00 ; 0
29c2: 50 e0 ldi r21, 0x00 ; 0
29c4: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
29c8: c8 01 movw r24, r16
29ca: b7 01 movw r22, r14
29cc: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
29d0: 66 0f add r22, r22
29d2: 77 1f adc r23, r23
29d4: 88 1f adc r24, r24
29d6: 99 1f adc r25, r25
29d8: 66 0f add r22, r22
29da: 77 1f adc r23, r23
29dc: 88 1f adc r24, r24
29de: 99 1f adc r25, r25
29e0: 20 e0 ldi r18, 0x00 ; 0
29e2: 31 e0 ldi r19, 0x01 ; 1
29e4: 40 e0 ldi r20, 0x00 ; 0
29e6: 50 e0 ldi r21, 0x00 ; 0
29e8: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
29ec: c2 1a sub r12, r18
29ee: d3 0a sbc r13, r19
29f0: d0 92 ec 03 sts 0x03EC, r13
29f4: c0 92 eb 03 sts 0x03EB, r12
29f8: db ce rjmp .-586 ; 0x27b0 <__vector_9+0x1b6>
29fa: 20 91 f2 03 lds r18, 0x03F2
29fe: 30 91 f3 03 lds r19, 0x03F3
2a02: 46 cf rjmp .-372 ; 0x2890 <__vector_9+0x296>
2a04: 46 98 cbi 0x08, 6 ; 8
2a06: 66 cf rjmp .-308 ; 0x28d4 <__vector_9+0x2da>
2a08: 80 91 ab 03 lds r24, 0x03AB
2a0c: 48 2f mov r20, r24
2a0e: 50 e0 ldi r21, 0x00 ; 0
2a10: 44 0f add r20, r20
2a12: 55 1f adc r21, r21
2a14: 44 0f add r20, r20
2a16: 55 1f adc r21, r21
2a18: 20 91 0b 03 lds r18, 0x030B
2a1c: 30 91 0c 03 lds r19, 0x030C
2a20: c9 01 movw r24, r18
2a22: 88 0f add r24, r24
2a24: 99 1f adc r25, r25
2a26: 82 0f add r24, r18
2a28: 93 1f adc r25, r19
2a2a: 48 0f add r20, r24
2a2c: 59 1f adc r21, r25
2a2e: 57 fd sbrc r21, 7
2a30: c6 c0 rjmp .+396 ; 0x2bbe <__vector_9+0x5c4>
2a32: ca 01 movw r24, r20
2a34: 95 95 asr r25
2a36: 87 95 ror r24
2a38: 95 95 asr r25
2a3a: 87 95 ror r24
2a3c: 90 93 0c 03 sts 0x030C, r25
2a40: 80 93 0b 03 sts 0x030B, r24
2a44: 90 93 ec 03 sts 0x03EC, r25
2a48: 80 93 eb 03 sts 0x03EB, r24
2a4c: 80 91 23 08 lds r24, 0x0823
2a50: 80 ff sbrs r24, 0
2a52: 83 c0 rjmp .+262 ; 0x2b5a <__vector_9+0x560>
2a54: c0 90 eb 03 lds r12, 0x03EB
2a58: d0 90 ec 03 lds r13, 0x03EC
2a5c: e0 90 fa 07 lds r14, 0x07FA
2a60: ff 24 eor r15, r15
2a62: 00 e0 ldi r16, 0x00 ; 0
2a64: 10 e0 ldi r17, 0x00 ; 0
2a66: 60 91 45 04 lds r22, 0x0445
2a6a: 70 91 46 04 lds r23, 0x0446
2a6e: 80 91 47 04 lds r24, 0x0447
2a72: 90 91 48 04 lds r25, 0x0448
2a76: 20 e8 ldi r18, 0x80 ; 128
2a78: 30 e0 ldi r19, 0x00 ; 0
2a7a: 40 e0 ldi r20, 0x00 ; 0
2a7c: 50 e0 ldi r21, 0x00 ; 0
2a7e: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
2a82: c8 01 movw r24, r16
2a84: b7 01 movw r22, r14
2a86: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
2a8a: 66 0f add r22, r22
2a8c: 77 1f adc r23, r23
2a8e: 88 1f adc r24, r24
2a90: 99 1f adc r25, r25
2a92: 66 0f add r22, r22
2a94: 77 1f adc r23, r23
2a96: 88 1f adc r24, r24
2a98: 99 1f adc r25, r25
2a9a: 20 e0 ldi r18, 0x00 ; 0
2a9c: 31 e0 ldi r19, 0x01 ; 1
2a9e: 40 e0 ldi r20, 0x00 ; 0
2aa0: 50 e0 ldi r21, 0x00 ; 0
2aa2: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
2aa6: c2 0e add r12, r18
2aa8: d3 1e adc r13, r19
2aaa: d0 92 ec 03 sts 0x03EC, r13
2aae: c0 92 eb 03 sts 0x03EB, r12
2ab2: 80 91 fb 07 lds r24, 0x07FB
2ab6: 28 2f mov r18, r24
2ab8: 30 e0 ldi r19, 0x00 ; 0
2aba: 22 0f add r18, r18
2abc: 33 1f adc r19, r19
2abe: 22 0f add r18, r18
2ac0: 33 1f adc r19, r19
2ac2: 80 91 eb 03 lds r24, 0x03EB
2ac6: 90 91 ec 03 lds r25, 0x03EC
2aca: 82 17 cp r24, r18
2acc: 93 07 cpc r25, r19
2ace: 7c f0 brlt .+30 ; 0x2aee <__vector_9+0x4f4>
2ad0: 80 91 fc 07 lds r24, 0x07FC
2ad4: 28 2f mov r18, r24
2ad6: 30 e0 ldi r19, 0x00 ; 0
2ad8: 22 0f add r18, r18
2ada: 33 1f adc r19, r19
2adc: 22 0f add r18, r18
2ade: 33 1f adc r19, r19
2ae0: 80 91 eb 03 lds r24, 0x03EB
2ae4: 90 91 ec 03 lds r25, 0x03EC
2ae8: 28 17 cp r18, r24
2aea: 39 07 cpc r19, r25
2aec: 24 f4 brge .+8 ; 0x2af6 <__vector_9+0x4fc>
2aee: 30 93 ec 03 sts 0x03EC, r19
2af2: 20 93 eb 03 sts 0x03EB, r18
2af6: 80 91 eb 03 lds r24, 0x03EB
2afa: 90 91 ec 03 lds r25, 0x03EC
2afe: 87 55 subi r24, 0x57 ; 87
2b00: 9e 4f sbci r25, 0xFE ; 254
2b02: 90 93 f3 03 sts 0x03F3, r25
2b06: 80 93 f2 03 sts 0x03F2, r24
2b0a: 80 91 eb 03 lds r24, 0x03EB
2b0e: 90 91 ec 03 lds r25, 0x03EC
2b12: 97 fd sbrc r25, 7
2b14: 52 c0 rjmp .+164 ; 0x2bba <__vector_9+0x5c0>
2b16: 95 95 asr r25
2b18: 87 95 ror r24
2b1a: 95 95 asr r25
2b1c: 87 95 ror r24
2b1e: 90 93 ec 03 sts 0x03EC, r25
2b22: 80 93 eb 03 sts 0x03EB, r24
2b26: 80 91 eb 03 lds r24, 0x03EB
2b2a: 90 91 ec 03 lds r25, 0x03EC
2b2e: 90 93 6a 07 sts 0x076A, r25
2b32: 80 93 69 07 sts 0x0769, r24
2b36: 06 cf rjmp .-500 ; 0x2944 <__vector_9+0x34a>
2b38: 81 e0 ldi r24, 0x01 ; 1
2b3a: 27 37 cpi r18, 0x77 ; 119
2b3c: 38 07 cpc r19, r24
2b3e: 08 f0 brcs .+2 ; 0x2b42 <__vector_9+0x548>
2b40: 10 cf rjmp .-480 ; 0x2962 <__vector_9+0x368>
2b42: 27 e7 ldi r18, 0x77 ; 119
2b44: 31 e0 ldi r19, 0x01 ; 1
2b46: 30 93 f3 03 sts 0x03F3, r19
2b4a: 20 93 f2 03 sts 0x03F2, r18
2b4e: 09 cf rjmp .-494 ; 0x2962 <__vector_9+0x368>
2b50: 4d 5f subi r20, 0xFD ; 253
2b52: 5f 4f sbci r21, 0xFF ; 255
2b54: ed cd rjmp .-1062 ; 0x2730 <__vector_9+0x136>
2b56: 03 96 adiw r24, 0x03 ; 3
2b58: 5b ce rjmp .-842 ; 0x2810 <__vector_9+0x216>
2b5a: c0 90 eb 03 lds r12, 0x03EB
2b5e: d0 90 ec 03 lds r13, 0x03EC
2b62: e0 90 fa 07 lds r14, 0x07FA
2b66: ff 24 eor r15, r15
2b68: 00 e0 ldi r16, 0x00 ; 0
2b6a: 10 e0 ldi r17, 0x00 ; 0
2b6c: 60 91 45 04 lds r22, 0x0445
2b70: 70 91 46 04 lds r23, 0x0446
2b74: 80 91 47 04 lds r24, 0x0447
2b78: 90 91 48 04 lds r25, 0x0448
2b7c: 20 e8 ldi r18, 0x80 ; 128
2b7e: 30 e0 ldi r19, 0x00 ; 0
2b80: 40 e0 ldi r20, 0x00 ; 0
2b82: 50 e0 ldi r21, 0x00 ; 0
2b84: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
2b88: c8 01 movw r24, r16
2b8a: b7 01 movw r22, r14
2b8c: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
2b90: 66 0f add r22, r22
2b92: 77 1f adc r23, r23
2b94: 88 1f adc r24, r24
2b96: 99 1f adc r25, r25
2b98: 66 0f add r22, r22
2b9a: 77 1f adc r23, r23
2b9c: 88 1f adc r24, r24
2b9e: 99 1f adc r25, r25
2ba0: 20 e0 ldi r18, 0x00 ; 0
2ba2: 31 e0 ldi r19, 0x01 ; 1
2ba4: 40 e0 ldi r20, 0x00 ; 0
2ba6: 50 e0 ldi r21, 0x00 ; 0
2ba8: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
2bac: c2 1a sub r12, r18
2bae: d3 0a sbc r13, r19
2bb0: d0 92 ec 03 sts 0x03EC, r13
2bb4: c0 92 eb 03 sts 0x03EB, r12
2bb8: 7c cf rjmp .-264 ; 0x2ab2 <__vector_9+0x4b8>
2bba: 03 96 adiw r24, 0x03 ; 3
2bbc: ac cf rjmp .-168 ; 0x2b16 <__vector_9+0x51c>
2bbe: 4d 5f subi r20, 0xFD ; 253
2bc0: 5f 4f sbci r21, 0xFF ; 255
2bc2: 37 cf rjmp .-402 ; 0x2a32 <__vector_9+0x438>
2bc4: ff 91 pop r31
2bc6: ef 91 pop r30
2bc8: bf 91 pop r27
2bca: af 91 pop r26
2bcc: 9f 91 pop r25
2bce: 8f 91 pop r24
2bd0: 7f 91 pop r23
2bd2: 6f 91 pop r22
2bd4: 5f 91 pop r21
2bd6: 4f 91 pop r20
2bd8: 3f 91 pop r19
2bda: 2f 91 pop r18
2bdc: 1f 91 pop r17
2bde: 0f 91 pop r16
2be0: ff 90 pop r15
2be2: ef 90 pop r14
2be4: df 90 pop r13
2be6: cf 90 pop r12
2be8: 0f 90 pop r0
2bea: 0f be out 0x3f, r0 ; 63
2bec: 0f 90 pop r0
2bee: 1f 90 pop r1
2bf0: 18 95 reti
 
00002bf2 <ADC_Init>:
2bf2: 10 92 7c 00 sts 0x007C, r1
2bf6: 8f ec ldi r24, 0xCF ; 207
2bf8: 80 93 7a 00 sts 0x007A, r24
2bfc: 08 95 ret
 
00002bfe <__vector_24>:
2bfe: 1f 92 push r1
2c00: 0f 92 push r0
2c02: 0f b6 in r0, 0x3f ; 63
2c04: 0f 92 push r0
2c06: 11 24 eor r1, r1
2c08: df 92 push r13
2c0a: ef 92 push r14
2c0c: ff 92 push r15
2c0e: 0f 93 push r16
2c10: 1f 93 push r17
2c12: 2f 93 push r18
2c14: 3f 93 push r19
2c16: 4f 93 push r20
2c18: 5f 93 push r21
2c1a: 6f 93 push r22
2c1c: 7f 93 push r23
2c1e: 8f 93 push r24
2c20: 9f 93 push r25
2c22: af 93 push r26
2c24: bf 93 push r27
2c26: cf 93 push r28
2c28: df 93 push r29
2c2a: ef 93 push r30
2c2c: ff 93 push r31
2c2e: d0 90 21 04 lds r13, 0x0421
2c32: 8d 2d mov r24, r13
2c34: d3 94 inc r13
2c36: d0 92 21 04 sts 0x0421, r13
2c3a: e8 2f mov r30, r24
2c3c: f0 e0 ldi r31, 0x00 ; 0
2c3e: e2 31 cpi r30, 0x12 ; 18
2c40: f1 05 cpc r31, r1
2c42: 40 f0 brcs .+16 ; 0x2c54 <__vector_24+0x56>
2c44: 10 92 21 04 sts 0x0421, r1
2c48: 82 e0 ldi r24, 0x02 ; 2
2c4a: 80 93 22 04 sts 0x0422, r24
2c4e: 80 93 7c 00 sts 0x007C, r24
2c52: f3 c3 rjmp .+2022 ; 0x343a <__vector_24+0x83c>
2c54: e2 5c subi r30, 0xC2 ; 194
2c56: ff 4f sbci r31, 0xFF ; 255
2c58: ee 0f add r30, r30
2c5a: ff 1f adc r31, r31
2c5c: 05 90 lpm r0, Z+
2c5e: f4 91 lpm r31, Z
2c60: e0 2d mov r30, r0
2c62: 09 94 ijmp
2c64: 80 91 78 00 lds r24, 0x0078
2c68: 90 91 79 00 lds r25, 0x0079
2c6c: 20 91 1b 04 lds r18, 0x041B
2c70: 30 91 1c 04 lds r19, 0x041C
2c74: 28 0f add r18, r24
2c76: 39 1f adc r19, r25
2c78: 30 93 1c 04 sts 0x041C, r19
2c7c: 20 93 1b 04 sts 0x041B, r18
2c80: 81 e0 ldi r24, 0x01 ; 1
2c82: 80 93 22 04 sts 0x0422, r24
2c86: 80 91 22 04 lds r24, 0x0422
2c8a: 80 93 7c 00 sts 0x007C, r24
2c8e: dd 20 and r13, r13
2c90: 09 f4 brne .+2 ; 0x2c94 <__vector_24+0x96>
2c92: d3 c3 rjmp .+1958 ; 0x343a <__vector_24+0x83c>
2c94: 8f ec ldi r24, 0xCF ; 207
2c96: 80 93 7a 00 sts 0x007A, r24
2c9a: cf c3 rjmp .+1950 ; 0x343a <__vector_24+0x83c>
2c9c: dd 24 eor r13, r13
2c9e: 10 92 21 04 sts 0x0421, r1
2ca2: 81 e0 ldi r24, 0x01 ; 1
2ca4: 80 93 1d 03 sts 0x031D, r24
2ca8: 80 91 0e 04 lds r24, 0x040E
2cac: 90 91 0f 04 lds r25, 0x040F
2cb0: 01 96 adiw r24, 0x01 ; 1
2cb2: 90 93 0f 04 sts 0x040F, r25
2cb6: 80 93 0e 04 sts 0x040E, r24
2cba: 20 91 78 00 lds r18, 0x0078
2cbe: 30 91 79 00 lds r19, 0x0079
2cc2: 80 91 93 07 lds r24, 0x0793
2cc6: 90 91 94 07 lds r25, 0x0794
2cca: 82 0f add r24, r18
2ccc: 93 1f adc r25, r19
2cce: 90 93 94 07 sts 0x0794, r25
2cd2: 80 93 93 07 sts 0x0793, r24
2cd6: 80 91 8b 07 lds r24, 0x078B
2cda: 8f 5f subi r24, 0xFF ; 255
2cdc: 80 93 8b 07 sts 0x078B, r24
2ce0: 80 91 8b 07 lds r24, 0x078B
2ce4: 85 30 cpi r24, 0x05 ; 5
2ce6: 08 f4 brcc .+2 ; 0x2cea <__vector_24+0xec>
2ce8: b4 c0 rjmp .+360 ; 0x2e52 <__vector_24+0x254>
2cea: 80 91 93 07 lds r24, 0x0793
2cee: 90 91 94 07 lds r25, 0x0794
2cf2: 97 fd sbrc r25, 7
2cf4: 7f c3 rjmp .+1790 ; 0x33f4 <__vector_24+0x7f6>
2cf6: 95 95 asr r25
2cf8: 87 95 ror r24
2cfa: 90 93 94 07 sts 0x0794, r25
2cfe: 80 93 93 07 sts 0x0793, r24
2d02: 80 91 78 00 lds r24, 0x0078
2d06: 90 91 79 00 lds r25, 0x0079
2d0a: 90 93 19 03 sts 0x0319, r25
2d0e: 80 93 18 03 sts 0x0318, r24
2d12: 10 92 8b 07 sts 0x078B, r1
2d16: 60 91 0c 04 lds r22, 0x040C
2d1a: 70 91 0d 04 lds r23, 0x040D
2d1e: 80 91 0b 04 lds r24, 0x040B
2d22: 99 27 eor r25, r25
2d24: 87 fd sbrc r24, 7
2d26: 90 95 com r25
2d28: d8 2f mov r29, r24
2d2a: cc 27 eor r28, r28
2d2c: c8 1b sub r28, r24
2d2e: d9 0b sbc r29, r25
2d30: 20 91 87 07 lds r18, 0x0787
2d34: 30 91 88 07 lds r19, 0x0788
2d38: 80 91 93 07 lds r24, 0x0793
2d3c: 90 91 94 07 lds r25, 0x0794
2d40: 40 91 9e 04 lds r20, 0x049E
2d44: 50 91 9f 04 lds r21, 0x049F
2d48: 28 1b sub r18, r24
2d4a: 39 0b sbc r19, r25
2d4c: 24 1b sub r18, r20
2d4e: 35 0b sbc r19, r21
2d50: 2c 0f add r18, r28
2d52: 3d 1f adc r19, r29
2d54: 80 91 a1 03 lds r24, 0x03A1
2d58: 90 e0 ldi r25, 0x00 ; 0
2d5a: a9 01 movw r20, r18
2d5c: 48 9f mul r20, r24
2d5e: 90 01 movw r18, r0
2d60: 49 9f mul r20, r25
2d62: 30 0d add r19, r0
2d64: 58 9f mul r21, r24
2d66: 30 0d add r19, r0
2d68: 11 24 eor r1, r1
2d6a: 8f e1 ldi r24, 0x1F ; 31
2d6c: 90 e0 ldi r25, 0x00 ; 0
2d6e: ac 01 movw r20, r24
2d70: 64 9f mul r22, r20
2d72: c0 01 movw r24, r0
2d74: 65 9f mul r22, r21
2d76: 90 0d add r25, r0
2d78: 74 9f mul r23, r20
2d7a: 90 0d add r25, r0
2d7c: 11 24 eor r1, r1
2d7e: 28 0f add r18, r24
2d80: 39 1f adc r19, r25
2d82: 37 fd sbrc r19, 7
2d84: e6 c2 rjmp .+1484 ; 0x3352 <__vector_24+0x754>
2d86: 35 95 asr r19
2d88: 27 95 ror r18
2d8a: 35 95 asr r19
2d8c: 27 95 ror r18
2d8e: 35 95 asr r19
2d90: 27 95 ror r18
2d92: 35 95 asr r19
2d94: 27 95 ror r18
2d96: 35 95 asr r19
2d98: 27 95 ror r18
2d9a: 30 93 0d 04 sts 0x040D, r19
2d9e: 20 93 0c 04 sts 0x040C, r18
2da2: 60 91 93 07 lds r22, 0x0793
2da6: 70 91 94 07 lds r23, 0x0794
2daa: e0 90 14 03 lds r14, 0x0314
2dae: f0 90 15 03 lds r15, 0x0315
2db2: 00 91 16 03 lds r16, 0x0316
2db6: 10 91 17 03 lds r17, 0x0317
2dba: 88 27 eor r24, r24
2dbc: 77 fd sbrc r23, 7
2dbe: 80 95 com r24
2dc0: 98 2f mov r25, r24
2dc2: a8 01 movw r20, r16
2dc4: 97 01 movw r18, r14
2dc6: 22 0f add r18, r18
2dc8: 33 1f adc r19, r19
2dca: 44 1f adc r20, r20
2dcc: 55 1f adc r21, r21
2dce: 22 0f add r18, r18
2dd0: 33 1f adc r19, r19
2dd2: 44 1f adc r20, r20
2dd4: 55 1f adc r21, r21
2dd6: 22 0f add r18, r18
2dd8: 33 1f adc r19, r19
2dda: 44 1f adc r20, r20
2ddc: 55 1f adc r21, r21
2dde: 2e 19 sub r18, r14
2de0: 3f 09 sbc r19, r15
2de2: 40 0b sbc r20, r16
2de4: 51 0b sbc r21, r17
2de6: 62 0f add r22, r18
2de8: 73 1f adc r23, r19
2dea: 84 1f adc r24, r20
2dec: 95 1f adc r25, r21
2dee: 6c 5f subi r22, 0xFC ; 252
2df0: 7f 4f sbci r23, 0xFF ; 255
2df2: 8f 4f sbci r24, 0xFF ; 255
2df4: 9f 4f sbci r25, 0xFF ; 255
2df6: 28 e0 ldi r18, 0x08 ; 8
2df8: 30 e0 ldi r19, 0x00 ; 0
2dfa: 40 e0 ldi r20, 0x00 ; 0
2dfc: 50 e0 ldi r21, 0x00 ; 0
2dfe: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
2e02: 20 93 14 03 sts 0x0314, r18
2e06: 30 93 15 03 sts 0x0315, r19
2e0a: 40 93 16 03 sts 0x0316, r20
2e0e: 50 93 17 03 sts 0x0317, r21
2e12: 20 91 87 07 lds r18, 0x0787
2e16: 30 91 88 07 lds r19, 0x0788
2e1a: 80 91 14 03 lds r24, 0x0314
2e1e: 90 91 15 03 lds r25, 0x0315
2e22: a0 91 16 03 lds r26, 0x0316
2e26: b0 91 17 03 lds r27, 0x0317
2e2a: c2 0f add r28, r18
2e2c: d3 1f adc r29, r19
2e2e: c8 1b sub r28, r24
2e30: d9 0b sbc r29, r25
2e32: d0 93 9f 04 sts 0x049F, r29
2e36: c0 93 9e 04 sts 0x049E, r28
2e3a: 80 91 93 07 lds r24, 0x0793
2e3e: 90 91 94 07 lds r25, 0x0794
2e42: 97 fd sbrc r25, 7
2e44: 84 c2 rjmp .+1288 ; 0x334e <__vector_24+0x750>
2e46: 95 95 asr r25
2e48: 87 95 ror r24
2e4a: 90 93 94 07 sts 0x0794, r25
2e4e: 80 93 93 07 sts 0x0793, r24
2e52: 82 e0 ldi r24, 0x02 ; 2
2e54: 80 93 22 04 sts 0x0422, r24
2e58: 16 cf rjmp .-468 ; 0x2c86 <__vector_24+0x88>
2e5a: 60 91 78 00 lds r22, 0x0078
2e5e: 70 91 79 00 lds r23, 0x0079
2e62: e0 90 3f 04 lds r14, 0x043F
2e66: f0 90 40 04 lds r15, 0x0440
2e6a: 00 91 41 04 lds r16, 0x0441
2e6e: 10 91 42 04 lds r17, 0x0442
2e72: 88 27 eor r24, r24
2e74: 77 fd sbrc r23, 7
2e76: 80 95 com r24
2e78: 98 2f mov r25, r24
2e7a: 0e 94 dc 54 call 0xa9b8 ; 0xa9b8 <__floatsisf>
2e7e: a8 01 movw r20, r16
2e80: 97 01 movw r18, r14
2e82: 0e 94 44 54 call 0xa888 ; 0xa888 <__subsf3>
2e86: 0e 94 a9 54 call 0xa952 ; 0xa952 <__fixsfsi>
2e8a: 70 93 09 04 sts 0x0409, r23
2e8e: 60 93 08 04 sts 0x0408, r22
2e92: 80 91 08 04 lds r24, 0x0408
2e96: 90 91 09 04 lds r25, 0x0409
2e9a: 02 97 sbiw r24, 0x02 ; 2
2e9c: 0c f4 brge .+2 ; 0x2ea0 <__vector_24+0x2a2>
2e9e: 5c c2 rjmp .+1208 ; 0x3358 <__vector_24+0x75a>
2ea0: 60 91 3f 04 lds r22, 0x043F
2ea4: 70 91 40 04 lds r23, 0x0440
2ea8: 80 91 41 04 lds r24, 0x0441
2eac: 90 91 42 04 lds r25, 0x0442
2eb0: 20 e0 ldi r18, 0x00 ; 0
2eb2: 30 e8 ldi r19, 0x80 ; 128
2eb4: 4b e3 ldi r20, 0x3B ; 59
2eb6: 54 e4 ldi r21, 0x44 ; 68
2eb8: 0e 94 17 55 call 0xaa2e ; 0xaa2e <__cmpsf2>
2ebc: 88 23 and r24, r24
2ebe: 9c f5 brge .+102 ; 0x2f26 <__vector_24+0x328>
2ec0: 60 91 3f 04 lds r22, 0x043F
2ec4: 70 91 40 04 lds r23, 0x0440
2ec8: 80 91 41 04 lds r24, 0x0441
2ecc: 90 91 42 04 lds r25, 0x0442
2ed0: 2a e0 ldi r18, 0x0A ; 10
2ed2: 37 ed ldi r19, 0xD7 ; 215
2ed4: 43 ea ldi r20, 0xA3 ; 163
2ed6: 5c e3 ldi r21, 0x3C ; 60
2ed8: 0e 94 45 54 call 0xa88a ; 0xa88a <__addsf3>
2edc: 60 93 3f 04 sts 0x043F, r22
2ee0: 70 93 40 04 sts 0x0440, r23
2ee4: 80 93 41 04 sts 0x0441, r24
2ee8: 90 93 42 04 sts 0x0442, r25
2eec: 80 91 be 04 lds r24, 0x04BE
2ef0: 90 91 bf 04 lds r25, 0x04BF
2ef4: 84 5f subi r24, 0xF4 ; 244
2ef6: 91 40 sbci r25, 0x01 ; 1
2ef8: b0 f4 brcc .+44 ; 0x2f26 <__vector_24+0x328>
2efa: 60 91 3f 04 lds r22, 0x043F
2efe: 70 91 40 04 lds r23, 0x0440
2f02: 80 91 41 04 lds r24, 0x0441
2f06: 90 91 42 04 lds r25, 0x0442
2f0a: 2d ec ldi r18, 0xCD ; 205
2f0c: 3c ec ldi r19, 0xCC ; 204
2f0e: 4c ec ldi r20, 0xCC ; 204
2f10: 5d e3 ldi r21, 0x3D ; 61
2f12: 0e 94 45 54 call 0xa88a ; 0xa88a <__addsf3>
2f16: 60 93 3f 04 sts 0x043F, r22
2f1a: 70 93 40 04 sts 0x0440, r23
2f1e: 80 93 41 04 sts 0x0441, r24
2f22: 90 93 42 04 sts 0x0442, r25
2f26: 81 e0 ldi r24, 0x01 ; 1
2f28: 80 93 0a 04 sts 0x040A, r24
2f2c: 80 91 78 00 lds r24, 0x0078
2f30: 90 91 79 00 lds r25, 0x0079
2f34: 90 93 86 07 sts 0x0786, r25
2f38: 80 93 85 07 sts 0x0785, r24
2f3c: 80 91 08 04 lds r24, 0x0408
2f40: 90 91 09 04 lds r25, 0x0409
2f44: 20 91 7d 04 lds r18, 0x047D
2f48: 30 91 7e 04 lds r19, 0x047E
2f4c: 40 91 7f 04 lds r20, 0x047F
2f50: 50 91 80 04 lds r21, 0x0480
2f54: aa 27 eor r26, r26
2f56: 97 fd sbrc r25, 7
2f58: a0 95 com r26
2f5a: ba 2f mov r27, r26
2f5c: 82 0f add r24, r18
2f5e: 93 1f adc r25, r19
2f60: a4 1f adc r26, r20
2f62: b5 1f adc r27, r21
2f64: 80 93 7d 04 sts 0x047D, r24
2f68: 90 93 7e 04 sts 0x047E, r25
2f6c: a0 93 7f 04 sts 0x047F, r26
2f70: b0 93 80 04 sts 0x0480, r27
2f74: e0 90 7d 04 lds r14, 0x047D
2f78: f0 90 7e 04 lds r15, 0x047E
2f7c: 00 91 7f 04 lds r16, 0x047F
2f80: 10 91 80 04 lds r17, 0x0480
2f84: 60 91 7d 04 lds r22, 0x047D
2f88: 70 91 7e 04 lds r23, 0x047E
2f8c: 80 91 7f 04 lds r24, 0x047F
2f90: 90 91 80 04 lds r25, 0x0480
2f94: 20 e0 ldi r18, 0x00 ; 0
2f96: 34 e0 ldi r19, 0x04 ; 4
2f98: 40 e0 ldi r20, 0x00 ; 0
2f9a: 50 e0 ldi r21, 0x00 ; 0
2f9c: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
2fa0: e2 1a sub r14, r18
2fa2: f3 0a sbc r15, r19
2fa4: 04 0b sbc r16, r20
2fa6: 15 0b sbc r17, r21
2fa8: e0 92 7d 04 sts 0x047D, r14
2fac: f0 92 7e 04 sts 0x047E, r15
2fb0: 00 93 7f 04 sts 0x047F, r16
2fb4: 10 93 80 04 sts 0x0480, r17
2fb8: 83 e0 ldi r24, 0x03 ; 3
2fba: 80 93 22 04 sts 0x0422, r24
2fbe: 63 ce rjmp .-826 ; 0x2c86 <__vector_24+0x88>
2fc0: 80 91 78 00 lds r24, 0x0078
2fc4: 90 91 79 00 lds r25, 0x0079
2fc8: 20 91 1d 04 lds r18, 0x041D
2fcc: 30 91 1e 04 lds r19, 0x041E
2fd0: 28 0f add r18, r24
2fd2: 39 1f adc r19, r25
2fd4: 30 93 1e 04 sts 0x041E, r19
2fd8: 20 93 1d 04 sts 0x041D, r18
2fdc: 84 e0 ldi r24, 0x04 ; 4
2fde: 80 93 22 04 sts 0x0422, r24
2fe2: 51 ce rjmp .-862 ; 0x2c86 <__vector_24+0x88>
2fe4: 40 91 0e 03 lds r20, 0x030E
2fe8: 50 91 0f 03 lds r21, 0x030F
2fec: 80 91 78 00 lds r24, 0x0078
2ff0: 90 91 79 00 lds r25, 0x0079
2ff4: 9a 01 movw r18, r20
2ff6: 22 0f add r18, r18
2ff8: 33 1f adc r19, r19
2ffa: 24 0f add r18, r20
2ffc: 35 1f adc r19, r21
2ffe: 63 e0 ldi r22, 0x03 ; 3
3000: 70 e0 ldi r23, 0x00 ; 0
3002: 0e 94 bf 55 call 0xab7e ; 0xab7e <__udivmodhi4>
3006: 26 0f add r18, r22
3008: 37 1f adc r19, r23
300a: 36 95 lsr r19
300c: 27 95 ror r18
300e: 36 95 lsr r19
3010: 27 95 ror r18
3012: 30 93 0f 03 sts 0x030F, r19
3016: 20 93 0e 03 sts 0x030E, r18
301a: 85 e0 ldi r24, 0x05 ; 5
301c: 80 93 22 04 sts 0x0422, r24
3020: 32 ce rjmp .-924 ; 0x2c86 <__vector_24+0x88>
3022: 80 91 78 00 lds r24, 0x0078
3026: 90 91 79 00 lds r25, 0x0079
302a: 90 93 20 04 sts 0x0420, r25
302e: 80 93 1f 04 sts 0x041F, r24
3032: 86 e0 ldi r24, 0x06 ; 6
3034: 80 93 22 04 sts 0x0422, r24
3038: 26 ce rjmp .-948 ; 0x2c86 <__vector_24+0x88>
303a: 20 91 78 00 lds r18, 0x0078
303e: 30 91 79 00 lds r19, 0x0079
3042: 80 91 3b 04 lds r24, 0x043B
3046: 90 91 3c 04 lds r25, 0x043C
304a: 82 1b sub r24, r18
304c: 93 0b sbc r25, r19
304e: 90 93 84 07 sts 0x0784, r25
3052: 80 93 83 07 sts 0x0783, r24
3056: 80 91 83 07 lds r24, 0x0783
305a: 90 91 84 07 lds r25, 0x0784
305e: 90 93 16 04 sts 0x0416, r25
3062: 80 93 15 04 sts 0x0415, r24
3066: 87 e0 ldi r24, 0x07 ; 7
3068: 80 93 22 04 sts 0x0422, r24
306c: 0c ce rjmp .-1000 ; 0x2c86 <__vector_24+0x88>
306e: 80 91 78 00 lds r24, 0x0078
3072: 90 91 79 00 lds r25, 0x0079
3076: 20 91 39 04 lds r18, 0x0439
307a: 30 91 3a 04 lds r19, 0x043A
307e: 82 1b sub r24, r18
3080: 93 0b sbc r25, r19
3082: 90 93 8f 07 sts 0x078F, r25
3086: 80 93 8e 07 sts 0x078E, r24
308a: 80 91 8e 07 lds r24, 0x078E
308e: 90 91 8f 07 lds r25, 0x078F
3092: 90 93 14 04 sts 0x0414, r25
3096: 80 93 13 04 sts 0x0413, r24
309a: 82 e0 ldi r24, 0x02 ; 2
309c: 80 93 22 04 sts 0x0422, r24
30a0: f2 cd rjmp .-1052 ; 0x2c86 <__vector_24+0x88>
30a2: 20 91 78 00 lds r18, 0x0078
30a6: 30 91 79 00 lds r19, 0x0079
30aa: 80 91 1d 04 lds r24, 0x041D
30ae: 90 91 1e 04 lds r25, 0x041E
30b2: 82 0f add r24, r18
30b4: 93 1f adc r25, r19
30b6: 90 93 1e 04 sts 0x041E, r25
30ba: 80 93 1d 04 sts 0x041D, r24
30be: 10 92 22 04 sts 0x0422, r1
30c2: e1 cd rjmp .-1086 ; 0x2c86 <__vector_24+0x88>
30c4: 80 91 00 01 lds r24, 0x0100
30c8: 8a 30 cpi r24, 0x0A ; 10
30ca: 09 f4 brne .+2 ; 0x30ce <__vector_24+0x4d0>
30cc: 20 c1 rjmp .+576 ; 0x330e <__vector_24+0x710>
30ce: 84 31 cpi r24, 0x14 ; 20
30d0: 09 f4 brne .+2 ; 0x30d4 <__vector_24+0x4d6>
30d2: a0 c1 rjmp .+832 ; 0x3414 <__vector_24+0x816>
30d4: 80 91 78 00 lds r24, 0x0078
30d8: 90 91 79 00 lds r25, 0x0079
30dc: 20 91 1f 04 lds r18, 0x041F
30e0: 30 91 20 04 lds r19, 0x0420
30e4: 82 0f add r24, r18
30e6: 93 1f adc r25, r19
30e8: 90 93 03 04 sts 0x0403, r25
30ec: 80 93 02 04 sts 0x0402, r24
30f0: 86 e0 ldi r24, 0x06 ; 6
30f2: 80 93 22 04 sts 0x0422, r24
30f6: c7 cd rjmp .-1138 ; 0x2c86 <__vector_24+0x88>
30f8: 20 91 78 00 lds r18, 0x0078
30fc: 30 91 79 00 lds r19, 0x0079
3100: 80 91 3b 04 lds r24, 0x043B
3104: 90 91 3c 04 lds r25, 0x043C
3108: 82 1b sub r24, r18
310a: 93 0b sbc r25, r19
310c: 90 93 84 07 sts 0x0784, r25
3110: 80 93 83 07 sts 0x0783, r24
3114: 80 91 83 07 lds r24, 0x0783
3118: 90 91 84 07 lds r25, 0x0784
311c: 20 91 15 04 lds r18, 0x0415
3120: 30 91 16 04 lds r19, 0x0416
3124: 82 0f add r24, r18
3126: 93 1f adc r25, r19
3128: 90 93 05 04 sts 0x0405, r25
312c: 80 93 04 04 sts 0x0404, r24
3130: 87 e0 ldi r24, 0x07 ; 7
3132: 80 93 22 04 sts 0x0422, r24
3136: a7 cd rjmp .-1202 ; 0x2c86 <__vector_24+0x88>
3138: 80 91 78 00 lds r24, 0x0078
313c: 90 91 79 00 lds r25, 0x0079
3140: 20 91 39 04 lds r18, 0x0439
3144: 30 91 3a 04 lds r19, 0x043A
3148: 82 1b sub r24, r18
314a: 93 0b sbc r25, r19
314c: 90 93 8f 07 sts 0x078F, r25
3150: 80 93 8e 07 sts 0x078E, r24
3154: 80 91 8e 07 lds r24, 0x078E
3158: 90 91 8f 07 lds r25, 0x078F
315c: 20 91 13 04 lds r18, 0x0413
3160: 30 91 14 04 lds r19, 0x0414
3164: 82 0f add r24, r18
3166: 93 1f adc r25, r19
3168: 90 93 07 04 sts 0x0407, r25
316c: 80 93 06 04 sts 0x0406, r24
3170: 82 e0 ldi r24, 0x02 ; 2
3172: 80 93 22 04 sts 0x0422, r24
3176: 87 cd rjmp .-1266 ; 0x2c86 <__vector_24+0x88>
3178: 20 91 78 00 lds r18, 0x0078
317c: 30 91 79 00 lds r19, 0x0079
3180: 80 91 1b 04 lds r24, 0x041B
3184: 90 91 1c 04 lds r25, 0x041C
3188: 28 0f add r18, r24
318a: 39 1f adc r19, r25
318c: 30 93 1c 04 sts 0x041C, r19
3190: 20 93 1b 04 sts 0x041B, r18
3194: 80 91 00 01 lds r24, 0x0100
3198: 8a 30 cpi r24, 0x0A ; 10
319a: 09 f4 brne .+2 ; 0x319e <__vector_24+0x5a0>
319c: d1 c0 rjmp .+418 ; 0x3340 <__vector_24+0x742>
319e: 22 0f add r18, r18
31a0: 33 1f adc r19, r19
31a2: 22 0f add r18, r18
31a4: 33 1f adc r19, r19
31a6: 30 93 1c 04 sts 0x041C, r19
31aa: 20 93 1b 04 sts 0x041B, r18
31ae: 20 91 1b 04 lds r18, 0x041B
31b2: 30 91 1c 04 lds r19, 0x041C
31b6: c9 01 movw r24, r18
31b8: 37 fd sbrc r19, 7
31ba: 2a c1 rjmp .+596 ; 0x3410 <__vector_24+0x812>
31bc: 95 95 asr r25
31be: 87 95 ror r24
31c0: 95 95 asr r25
31c2: 87 95 ror r24
31c4: 95 95 asr r25
31c6: 87 95 ror r24
31c8: 90 93 ff 03 sts 0x03FF, r25
31cc: 80 93 fe 03 sts 0x03FE, r24
31d0: 80 91 19 04 lds r24, 0x0419
31d4: 90 91 1a 04 lds r25, 0x041A
31d8: 82 0f add r24, r18
31da: 93 1f adc r25, r19
31dc: 97 fd sbrc r25, 7
31de: 16 c1 rjmp .+556 ; 0x340c <__vector_24+0x80e>
31e0: 95 95 asr r25
31e2: 87 95 ror r24
31e4: 90 93 1a 04 sts 0x041A, r25
31e8: 80 93 19 04 sts 0x0419, r24
31ec: 20 91 2f 04 lds r18, 0x042F
31f0: 30 91 30 04 lds r19, 0x0430
31f4: 82 1b sub r24, r18
31f6: 93 0b sbc r25, r19
31f8: 90 93 11 03 sts 0x0311, r25
31fc: 80 93 10 03 sts 0x0310, r24
3200: 80 91 f8 03 lds r24, 0x03F8
3204: 90 91 f9 03 lds r25, 0x03F9
3208: 20 91 10 03 lds r18, 0x0310
320c: 30 91 11 03 lds r19, 0x0311
3210: 28 0f add r18, r24
3212: 39 1f adc r19, r25
3214: 37 fd sbrc r19, 7
3216: f7 c0 rjmp .+494 ; 0x3406 <__vector_24+0x808>
3218: 35 95 asr r19
321a: 27 95 ror r18
321c: 30 93 f9 03 sts 0x03F9, r19
3220: 20 93 f8 03 sts 0x03F8, r18
3224: 81 e0 ldi r24, 0x01 ; 1
3226: 80 93 22 04 sts 0x0422, r24
322a: 2d cd rjmp .-1446 ; 0x2c86 <__vector_24+0x88>
322c: 20 91 78 00 lds r18, 0x0078
3230: 30 91 79 00 lds r19, 0x0079
3234: 80 91 1d 04 lds r24, 0x041D
3238: 90 91 1e 04 lds r25, 0x041E
323c: 28 0f add r18, r24
323e: 39 1f adc r19, r25
3240: 30 93 1e 04 sts 0x041E, r19
3244: 20 93 1d 04 sts 0x041D, r18
3248: 80 91 00 01 lds r24, 0x0100
324c: 8a 30 cpi r24, 0x0A ; 10
324e: 09 f4 brne .+2 ; 0x3252 <__vector_24+0x654>
3250: 70 c0 rjmp .+224 ; 0x3332 <__vector_24+0x734>
3252: 22 0f add r18, r18
3254: 33 1f adc r19, r19
3256: 22 0f add r18, r18
3258: 33 1f adc r19, r19
325a: 30 93 1e 04 sts 0x041E, r19
325e: 20 93 1d 04 sts 0x041D, r18
3262: 20 91 1d 04 lds r18, 0x041D
3266: 30 91 1e 04 lds r19, 0x041E
326a: c9 01 movw r24, r18
326c: 37 fd sbrc r19, 7
326e: c9 c0 rjmp .+402 ; 0x3402 <__vector_24+0x804>
3270: 95 95 asr r25
3272: 87 95 ror r24
3274: 95 95 asr r25
3276: 87 95 ror r24
3278: 95 95 asr r25
327a: 87 95 ror r24
327c: 90 93 01 04 sts 0x0401, r25
3280: 80 93 00 04 sts 0x0400, r24
3284: 80 91 17 04 lds r24, 0x0417
3288: 90 91 18 04 lds r25, 0x0418
328c: 82 0f add r24, r18
328e: 93 1f adc r25, r19
3290: 97 fd sbrc r25, 7
3292: b5 c0 rjmp .+362 ; 0x33fe <__vector_24+0x800>
3294: 95 95 asr r25
3296: 87 95 ror r24
3298: 90 93 18 04 sts 0x0418, r25
329c: 80 93 17 04 sts 0x0417, r24
32a0: 20 91 31 04 lds r18, 0x0431
32a4: 30 91 32 04 lds r19, 0x0432
32a8: 82 1b sub r24, r18
32aa: 93 0b sbc r25, r19
32ac: 90 93 13 03 sts 0x0313, r25
32b0: 80 93 12 03 sts 0x0312, r24
32b4: 80 91 fa 03 lds r24, 0x03FA
32b8: 90 91 fb 03 lds r25, 0x03FB
32bc: 20 91 12 03 lds r18, 0x0312
32c0: 30 91 13 03 lds r19, 0x0313
32c4: 28 0f add r18, r24
32c6: 39 1f adc r19, r25
32c8: 37 fd sbrc r19, 7
32ca: 96 c0 rjmp .+300 ; 0x33f8 <__vector_24+0x7fa>
32cc: 35 95 asr r19
32ce: 27 95 ror r18
32d0: 30 93 fb 03 sts 0x03FB, r19
32d4: 20 93 fa 03 sts 0x03FA, r18
32d8: 83 e0 ldi r24, 0x03 ; 3
32da: 80 93 22 04 sts 0x0422, r24
32de: d3 cc rjmp .-1626 ; 0x2c86 <__vector_24+0x88>
32e0: 80 91 78 00 lds r24, 0x0078
32e4: 90 91 79 00 lds r25, 0x0079
32e8: 90 93 1c 04 sts 0x041C, r25
32ec: 80 93 1b 04 sts 0x041B, r24
32f0: 81 e0 ldi r24, 0x01 ; 1
32f2: 80 93 22 04 sts 0x0422, r24
32f6: c7 cc rjmp .-1650 ; 0x2c86 <__vector_24+0x88>
32f8: 80 91 78 00 lds r24, 0x0078
32fc: 90 91 79 00 lds r25, 0x0079
3300: 90 93 1e 04 sts 0x041E, r25
3304: 80 93 1d 04 sts 0x041D, r24
3308: 10 92 22 04 sts 0x0422, r1
330c: bc cc rjmp .-1672 ; 0x2c86 <__vector_24+0x88>
330e: 80 91 78 00 lds r24, 0x0078
3312: 90 91 79 00 lds r25, 0x0079
3316: 01 96 adiw r24, 0x01 ; 1
3318: 20 91 1f 04 lds r18, 0x041F
331c: 30 91 20 04 lds r19, 0x0420
3320: 82 0f add r24, r18
3322: 93 1f adc r25, r19
3324: 96 95 lsr r25
3326: 87 95 ror r24
3328: 90 93 03 04 sts 0x0403, r25
332c: 80 93 02 04 sts 0x0402, r24
3330: df ce rjmp .-578 ; 0x30f0 <__vector_24+0x4f2>
3332: 22 0f add r18, r18
3334: 33 1f adc r19, r19
3336: 30 93 1e 04 sts 0x041E, r19
333a: 20 93 1d 04 sts 0x041D, r18
333e: 91 cf rjmp .-222 ; 0x3262 <__vector_24+0x664>
3340: 22 0f add r18, r18
3342: 33 1f adc r19, r19
3344: 30 93 1c 04 sts 0x041C, r19
3348: 20 93 1b 04 sts 0x041B, r18
334c: 30 cf rjmp .-416 ; 0x31ae <__vector_24+0x5b0>
334e: 01 96 adiw r24, 0x01 ; 1
3350: 7a cd rjmp .-1292 ; 0x2e46 <__vector_24+0x248>
3352: 21 5e subi r18, 0xE1 ; 225
3354: 3f 4f sbci r19, 0xFF ; 255
3356: 17 cd rjmp .-1490 ; 0x2d86 <__vector_24+0x188>
3358: 80 91 08 04 lds r24, 0x0408
335c: 90 91 09 04 lds r25, 0x0409
3360: 8f 5f subi r24, 0xFF ; 255
3362: 9f 4f sbci r25, 0xFF ; 255
3364: 0c f0 brlt .+2 ; 0x3368 <__vector_24+0x76a>
3366: df cd rjmp .-1090 ; 0x2f26 <__vector_24+0x328>
3368: 60 91 3f 04 lds r22, 0x043F
336c: 70 91 40 04 lds r23, 0x0440
3370: 80 91 41 04 lds r24, 0x0441
3374: 90 91 42 04 lds r25, 0x0442
3378: 20 e0 ldi r18, 0x00 ; 0
337a: 30 e8 ldi r19, 0x80 ; 128
337c: 49 e0 ldi r20, 0x09 ; 9
337e: 54 e4 ldi r21, 0x44 ; 68
3380: 0e 94 1b 55 call 0xaa36 ; 0xaa36 <__gesf2>
3384: 18 16 cp r1, r24
3386: 0c f0 brlt .+2 ; 0x338a <__vector_24+0x78c>
3388: ce cd rjmp .-1124 ; 0x2f26 <__vector_24+0x328>
338a: 60 91 3f 04 lds r22, 0x043F
338e: 70 91 40 04 lds r23, 0x0440
3392: 80 91 41 04 lds r24, 0x0441
3396: 90 91 42 04 lds r25, 0x0442
339a: 2a e0 ldi r18, 0x0A ; 10
339c: 37 ed ldi r19, 0xD7 ; 215
339e: 43 ea ldi r20, 0xA3 ; 163
33a0: 5c e3 ldi r21, 0x3C ; 60
33a2: 0e 94 44 54 call 0xa888 ; 0xa888 <__subsf3>
33a6: 60 93 3f 04 sts 0x043F, r22
33aa: 70 93 40 04 sts 0x0440, r23
33ae: 80 93 41 04 sts 0x0441, r24
33b2: 90 93 42 04 sts 0x0442, r25
33b6: 80 91 be 04 lds r24, 0x04BE
33ba: 90 91 bf 04 lds r25, 0x04BF
33be: 84 5f subi r24, 0xF4 ; 244
33c0: 91 40 sbci r25, 0x01 ; 1
33c2: 08 f0 brcs .+2 ; 0x33c6 <__vector_24+0x7c8>
33c4: b0 cd rjmp .-1184 ; 0x2f26 <__vector_24+0x328>
33c6: 60 91 3f 04 lds r22, 0x043F
33ca: 70 91 40 04 lds r23, 0x0440
33ce: 80 91 41 04 lds r24, 0x0441
33d2: 90 91 42 04 lds r25, 0x0442
33d6: 2d ec ldi r18, 0xCD ; 205
33d8: 3c ec ldi r19, 0xCC ; 204
33da: 4c ec ldi r20, 0xCC ; 204
33dc: 5d e3 ldi r21, 0x3D ; 61
33de: 0e 94 44 54 call 0xa888 ; 0xa888 <__subsf3>
33e2: 60 93 3f 04 sts 0x043F, r22
33e6: 70 93 40 04 sts 0x0440, r23
33ea: 80 93 41 04 sts 0x0441, r24
33ee: 90 93 42 04 sts 0x0442, r25
33f2: 99 cd rjmp .-1230 ; 0x2f26 <__vector_24+0x328>
33f4: 01 96 adiw r24, 0x01 ; 1
33f6: 7f cc rjmp .-1794 ; 0x2cf6 <__vector_24+0xf8>
33f8: 2f 5f subi r18, 0xFF ; 255
33fa: 3f 4f sbci r19, 0xFF ; 255
33fc: 67 cf rjmp .-306 ; 0x32cc <__vector_24+0x6ce>
33fe: 01 96 adiw r24, 0x01 ; 1
3400: 49 cf rjmp .-366 ; 0x3294 <__vector_24+0x696>
3402: 07 96 adiw r24, 0x07 ; 7
3404: 35 cf rjmp .-406 ; 0x3270 <__vector_24+0x672>
3406: 2f 5f subi r18, 0xFF ; 255
3408: 3f 4f sbci r19, 0xFF ; 255
340a: 06 cf rjmp .-500 ; 0x3218 <__vector_24+0x61a>
340c: 01 96 adiw r24, 0x01 ; 1
340e: e8 ce rjmp .-560 ; 0x31e0 <__vector_24+0x5e2>
3410: 07 96 adiw r24, 0x07 ; 7
3412: d4 ce rjmp .-600 ; 0x31bc <__vector_24+0x5be>
3414: 80 91 78 00 lds r24, 0x0078
3418: 90 91 79 00 lds r25, 0x0079
341c: 2f ef ldi r18, 0xFF ; 255
341e: 37 e0 ldi r19, 0x07 ; 7
3420: 28 1b sub r18, r24
3422: 39 0b sbc r19, r25
3424: 80 91 1f 04 lds r24, 0x041F
3428: 90 91 20 04 lds r25, 0x0420
342c: 28 1b sub r18, r24
342e: 39 0b sbc r19, r25
3430: 30 93 03 04 sts 0x0403, r19
3434: 20 93 02 04 sts 0x0402, r18
3438: 5b ce rjmp .-842 ; 0x30f0 <__vector_24+0x4f2>
343a: ff 91 pop r31
343c: ef 91 pop r30
343e: df 91 pop r29
3440: cf 91 pop r28
3442: bf 91 pop r27
3444: af 91 pop r26
3446: 9f 91 pop r25
3448: 8f 91 pop r24
344a: 7f 91 pop r23
344c: 6f 91 pop r22
344e: 5f 91 pop r21
3450: 4f 91 pop r20
3452: 3f 91 pop r19
3454: 2f 91 pop r18
3456: 1f 91 pop r17
3458: 0f 91 pop r16
345a: ff 90 pop r15
345c: ef 90 pop r14
345e: df 90 pop r13
3460: 0f 90 pop r0
3462: 0f be out 0x3f, r0 ; 63
3464: 0f 90 pop r0
3466: 1f 90 pop r1
3468: 18 95 reti
 
0000346a <SucheGyroOffset>:
346a: 0f 93 push r16
346c: 1f 93 push r17
346e: 10 92 10 04 sts 0x0410, r1
3472: 10 92 11 04 sts 0x0411, r1
3476: 10 92 12 04 sts 0x0412, r1
347a: 1c e8 ldi r17, 0x8C ; 140
347c: 00 e0 ldi r16, 0x00 ; 0
347e: 03 30 cpi r16, 0x03 ; 3
3480: 09 f4 brne .+2 ; 0x3484 <SucheGyroOffset+0x1a>
3482: a3 c0 rjmp .+326 ; 0x35ca <SucheGyroOffset+0x160>
3484: 80 91 fe 03 lds r24, 0x03FE
3488: 90 91 ff 03 lds r25, 0x03FF
348c: 8c 5f subi r24, 0xFC ; 252
348e: 93 40 sbci r25, 0x03 ; 3
3490: 0c f0 brlt .+2 ; 0x3494 <SucheGyroOffset+0x2a>
3492: 8d c0 rjmp .+282 ; 0x35ae <SucheGyroOffset+0x144>
3494: 80 91 1a 03 lds r24, 0x031A
3498: 81 50 subi r24, 0x01 ; 1
349a: 80 93 1a 03 sts 0x031A, r24
349e: 00 e0 ldi r16, 0x00 ; 0
34a0: 80 91 00 04 lds r24, 0x0400
34a4: 90 91 01 04 lds r25, 0x0401
34a8: 8c 5f subi r24, 0xFC ; 252
34aa: 93 40 sbci r25, 0x03 ; 3
34ac: 0c f0 brlt .+2 ; 0x34b0 <SucheGyroOffset+0x46>
34ae: 72 c0 rjmp .+228 ; 0x3594 <SucheGyroOffset+0x12a>
34b0: 80 91 1b 03 lds r24, 0x031B
34b4: 81 50 subi r24, 0x01 ; 1
34b6: 80 93 1b 03 sts 0x031B, r24
34ba: 80 91 02 04 lds r24, 0x0402
34be: 90 91 03 04 lds r25, 0x0403
34c2: 8c 5f subi r24, 0xFC ; 252
34c4: 93 40 sbci r25, 0x03 ; 3
34c6: 0c f0 brlt .+2 ; 0x34ca <SucheGyroOffset+0x60>
34c8: 58 c0 rjmp .+176 ; 0x357a <SucheGyroOffset+0x110>
34ca: 80 91 1c 03 lds r24, 0x031C
34ce: 81 50 subi r24, 0x01 ; 1
34d0: 80 93 1c 03 sts 0x031C, r24
34d4: 88 e0 ldi r24, 0x08 ; 8
34d6: 80 93 28 04 sts 0x0428, r24
34da: 0e 94 b3 21 call 0x4366 ; 0x4366 <i2c_start>
34de: 80 91 1a 03 lds r24, 0x031A
34e2: 8a 30 cpi r24, 0x0A ; 10
34e4: 08 f0 brcs .+2 ; 0x34e8 <SucheGyroOffset+0x7e>
34e6: 40 c0 rjmp .+128 ; 0x3568 <SucheGyroOffset+0xfe>
34e8: 81 e0 ldi r24, 0x01 ; 1
34ea: 80 93 10 04 sts 0x0410, r24
34ee: 8a e0 ldi r24, 0x0A ; 10
34f0: 80 93 1a 03 sts 0x031A, r24
34f4: 80 91 1b 03 lds r24, 0x031B
34f8: 8a 30 cpi r24, 0x0A ; 10
34fa: 68 f5 brcc .+90 ; 0x3556 <SucheGyroOffset+0xec>
34fc: 81 e0 ldi r24, 0x01 ; 1
34fe: 80 93 11 04 sts 0x0411, r24
3502: 8a e0 ldi r24, 0x0A ; 10
3504: 80 93 1b 03 sts 0x031B, r24
3508: 80 91 1c 03 lds r24, 0x031C
350c: 8a 30 cpi r24, 0x0A ; 10
350e: d0 f4 brcc .+52 ; 0x3544 <SucheGyroOffset+0xda>
3510: 81 e0 ldi r24, 0x01 ; 1
3512: 80 93 12 04 sts 0x0412, r24
3516: 8a e0 ldi r24, 0x0A ; 10
3518: 80 93 1c 03 sts 0x031C, r24
351c: 80 91 28 04 lds r24, 0x0428
3520: 88 23 and r24, r24
3522: e1 f7 brne .-8 ; 0x351c <SucheGyroOffset+0xb2>
3524: 10 92 8b 07 sts 0x078B, r1
3528: 8f ec ldi r24, 0xCF ; 207
352a: 80 93 7a 00 sts 0x007A, r24
352e: 80 91 8b 07 lds r24, 0x078B
3532: 88 23 and r24, r24
3534: e1 f3 breq .-8 ; 0x352e <SucheGyroOffset+0xc4>
3536: 1a 30 cpi r17, 0x0A ; 10
3538: 08 f4 brcc .+2 ; 0x353c <SucheGyroOffset+0xd2>
353a: 42 c0 rjmp .+132 ; 0x35c0 <SucheGyroOffset+0x156>
353c: 11 50 subi r17, 0x01 ; 1
353e: 09 f0 breq .+2 ; 0x3542 <SucheGyroOffset+0xd8>
3540: 9e cf rjmp .-196 ; 0x347e <SucheGyroOffset+0x14>
3542: 53 c0 rjmp .+166 ; 0x35ea <SucheGyroOffset+0x180>
3544: 86 3f cpi r24, 0xF6 ; 246
3546: 50 f3 brcs .-44 ; 0x351c <SucheGyroOffset+0xb2>
3548: 81 e0 ldi r24, 0x01 ; 1
354a: 80 93 12 04 sts 0x0412, r24
354e: 85 ef ldi r24, 0xF5 ; 245
3550: 80 93 1c 03 sts 0x031C, r24
3554: e3 cf rjmp .-58 ; 0x351c <SucheGyroOffset+0xb2>
3556: 86 3f cpi r24, 0xF6 ; 246
3558: b8 f2 brcs .-82 ; 0x3508 <SucheGyroOffset+0x9e>
355a: 81 e0 ldi r24, 0x01 ; 1
355c: 80 93 11 04 sts 0x0411, r24
3560: 85 ef ldi r24, 0xF5 ; 245
3562: 80 93 1b 03 sts 0x031B, r24
3566: d0 cf rjmp .-96 ; 0x3508 <SucheGyroOffset+0x9e>
3568: 86 3f cpi r24, 0xF6 ; 246
356a: 20 f2 brcs .-120 ; 0x34f4 <SucheGyroOffset+0x8a>
356c: 81 e0 ldi r24, 0x01 ; 1
356e: 80 93 10 04 sts 0x0410, r24
3572: 85 ef ldi r24, 0xF5 ; 245
3574: 80 93 1a 03 sts 0x031A, r24
3578: bd cf rjmp .-134 ; 0x34f4 <SucheGyroOffset+0x8a>
357a: 80 91 02 04 lds r24, 0x0402
357e: 90 91 03 04 lds r25, 0x0403
3582: 87 50 subi r24, 0x07 ; 7
3584: 94 40 sbci r25, 0x04 ; 4
3586: 44 f1 brlt .+80 ; 0x35d8 <SucheGyroOffset+0x16e>
3588: 80 91 1c 03 lds r24, 0x031C
358c: 8f 5f subi r24, 0xFF ; 255
358e: 80 93 1c 03 sts 0x031C, r24
3592: a0 cf rjmp .-192 ; 0x34d4 <SucheGyroOffset+0x6a>
3594: 80 91 00 04 lds r24, 0x0400
3598: 90 91 01 04 lds r25, 0x0401
359c: 87 50 subi r24, 0x07 ; 7
359e: 94 40 sbci r25, 0x04 ; 4
35a0: cc f0 brlt .+50 ; 0x35d4 <SucheGyroOffset+0x16a>
35a2: 80 91 1b 03 lds r24, 0x031B
35a6: 8f 5f subi r24, 0xFF ; 255
35a8: 80 93 1b 03 sts 0x031B, r24
35ac: 86 cf rjmp .-244 ; 0x34ba <SucheGyroOffset+0x50>
35ae: 80 91 fe 03 lds r24, 0x03FE
35b2: 90 91 ff 03 lds r25, 0x03FF
35b6: 87 50 subi r24, 0x07 ; 7
35b8: 94 40 sbci r25, 0x04 ; 4
35ba: 84 f4 brge .+32 ; 0x35dc <SucheGyroOffset+0x172>
35bc: 01 e0 ldi r16, 0x01 ; 1
35be: 70 cf rjmp .-288 ; 0x34a0 <SucheGyroOffset+0x36>
35c0: 8a e0 ldi r24, 0x0A ; 10
35c2: 90 e0 ldi r25, 0x00 ; 0
35c4: 0e 94 a7 12 call 0x254e ; 0x254e <Delay_ms_Mess>
35c8: b9 cf rjmp .-142 ; 0x353c <SucheGyroOffset+0xd2>
35ca: 1b 30 cpi r17, 0x0B ; 11
35cc: 08 f4 brcc .+2 ; 0x35d0 <SucheGyroOffset+0x166>
35ce: 5a cf rjmp .-332 ; 0x3484 <SucheGyroOffset+0x1a>
35d0: 19 e0 ldi r17, 0x09 ; 9
35d2: 58 cf rjmp .-336 ; 0x3484 <SucheGyroOffset+0x1a>
35d4: 0f 5f subi r16, 0xFF ; 255
35d6: 71 cf rjmp .-286 ; 0x34ba <SucheGyroOffset+0x50>
35d8: 0f 5f subi r16, 0xFF ; 255
35da: 7c cf rjmp .-264 ; 0x34d4 <SucheGyroOffset+0x6a>
35dc: 80 91 1a 03 lds r24, 0x031A
35e0: 8f 5f subi r24, 0xFF ; 255
35e2: 80 93 1a 03 sts 0x031A, r24
35e6: 00 e0 ldi r16, 0x00 ; 0
35e8: 5b cf rjmp .-330 ; 0x34a0 <SucheGyroOffset+0x36>
35ea: 86 e4 ldi r24, 0x46 ; 70
35ec: 90 e0 ldi r25, 0x00 ; 0
35ee: 0e 94 a7 12 call 0x254e ; 0x254e <Delay_ms_Mess>
35f2: 1f 91 pop r17
35f4: 0f 91 pop r16
35f6: 08 95 ret
 
000035f8 <SucheLuftruckOffset>:
35f8: cf 92 push r12
35fa: df 92 push r13
35fc: ef 92 push r14
35fe: ff 92 push r15
3600: 1f 93 push r17
3602: cf 93 push r28
3604: df 93 push r29
3606: f3 e0 ldi r31, 0x03 ; 3
3608: ef 2e mov r14, r31
360a: f0 e0 ldi r31, 0x00 ; 0
360c: ff 2e mov r15, r31
360e: d7 01 movw r26, r14
3610: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
3614: 80 2d mov r24, r0
3616: c8 2f mov r28, r24
3618: d0 e0 ldi r29, 0x00 ; 0
361a: c5 31 cpi r28, 0x15 ; 21
361c: d1 05 cpc r29, r1
361e: 08 f0 brcs .+2 ; 0x3622 <SucheLuftruckOffset+0x2a>
3620: 2a 97 sbiw r28, 0x0a ; 10
3622: c7 bd out 0x27, r28 ; 39
3624: 10 92 0b 04 sts 0x040B, r1
3628: 84 e6 ldi r24, 0x64 ; 100
362a: 90 e0 ldi r25, 0x00 ; 0
362c: 0e 94 a7 12 call 0x254e ; 0x254e <Delay_ms_Mess>
3630: 80 91 18 03 lds r24, 0x0318
3634: 90 91 19 03 lds r25, 0x0319
3638: 82 55 subi r24, 0x52 ; 82
363a: 93 40 sbci r25, 0x03 ; 3
363c: 08 f5 brcc .+66 ; 0x3680 <SucheLuftruckOffset+0x88>
363e: c0 e0 ldi r28, 0x00 ; 0
3640: d0 e0 ldi r29, 0x00 ; 0
3642: e6 ee ldi r30, 0xE6 ; 230
3644: ce 2e mov r12, r30
3646: e1 e0 ldi r30, 0x01 ; 1
3648: de 2e mov r13, r30
364a: 04 c0 rjmp .+8 ; 0x3654 <SucheLuftruckOffset+0x5c>
364c: 21 96 adiw r28, 0x01 ; 1
364e: ca 3f cpi r28, 0xFA ; 250
3650: d1 05 cpc r29, r1
3652: d8 f4 brcc .+54 ; 0x368a <SucheLuftruckOffset+0x92>
3654: 1c 2f mov r17, r28
3656: c7 bd out 0x27, r28 ; 39
3658: 82 e3 ldi r24, 0x32 ; 50
365a: 90 e0 ldi r25, 0x00 ; 0
365c: 0e 94 a7 12 call 0x254e ; 0x254e <Delay_ms_Mess>
3660: df 92 push r13
3662: cf 92 push r12
3664: 1f 92 push r1
3666: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
366a: 80 91 18 03 lds r24, 0x0318
366e: 90 91 19 03 lds r25, 0x0319
3672: 0f 90 pop r0
3674: 0f 90 pop r0
3676: 0f 90 pop r0
3678: 82 55 subi r24, 0x52 ; 82
367a: 93 40 sbci r25, 0x03 ; 3
367c: 38 f7 brcc .-50 ; 0x364c <SucheLuftruckOffset+0x54>
367e: 06 c0 rjmp .+12 ; 0x368c <SucheLuftruckOffset+0x94>
3680: 76 ee ldi r23, 0xE6 ; 230
3682: c7 2e mov r12, r23
3684: 71 e0 ldi r23, 0x01 ; 1
3686: d7 2e mov r13, r23
3688: e5 cf rjmp .-54 ; 0x3654 <SucheLuftruckOffset+0x5c>
368a: 1c 2f mov r17, r28
368c: d7 01 movw r26, r14
368e: 01 2e mov r0, r17
3690: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
3694: 10 93 90 07 sts 0x0790, r17
3698: 8c e2 ldi r24, 0x2C ; 44
369a: 91 e0 ldi r25, 0x01 ; 1
369c: 0e 94 a7 12 call 0x254e ; 0x254e <Delay_ms_Mess>
36a0: df 91 pop r29
36a2: cf 91 pop r28
36a4: 1f 91 pop r17
36a6: ff 90 pop r15
36a8: ef 90 pop r14
36aa: df 90 pop r13
36ac: cf 90 pop r12
36ae: 08 95 ret
 
000036b0 <LcdClear>:
36b0: e8 e2 ldi r30, 0x28 ; 40
36b2: f3 e0 ldi r31, 0x03 ; 3
36b4: 80 e2 ldi r24, 0x20 ; 32
36b6: 81 93 st Z+, r24
36b8: 83 e0 ldi r24, 0x03 ; 3
36ba: e8 37 cpi r30, 0x78 ; 120
36bc: f8 07 cpc r31, r24
36be: d1 f7 brne .-12 ; 0x36b4 <LcdClear+0x4>
36c0: 08 95 ret
 
000036c2 <Menu>:
36c2: 1f 93 push r17
36c4: 40 91 78 03 lds r20, 0x0378
36c8: 80 91 26 04 lds r24, 0x0426
36cc: 48 17 cp r20, r24
36ce: 10 f4 brcc .+4 ; 0x36d4 <Menu+0x12>
36d0: 40 93 26 04 sts 0x0426, r20
36d4: 80 91 27 04 lds r24, 0x0427
36d8: 28 2f mov r18, r24
36da: 30 e0 ldi r19, 0x00 ; 0
36dc: c9 01 movw r24, r18
36de: 81 70 andi r24, 0x01 ; 1
36e0: 90 70 andi r25, 0x00 ; 0
36e2: 58 2f mov r21, r24
36e4: 88 23 and r24, r24
36e6: 41 f0 breq .+16 ; 0x36f8 <Menu+0x36>
36e8: 80 91 26 04 lds r24, 0x0426
36ec: 88 23 and r24, r24
36ee: 09 f4 brne .+2 ; 0x36f2 <Menu+0x30>
36f0: ea c0 rjmp .+468 ; 0x38c6 <Menu+0x204>
36f2: 81 50 subi r24, 0x01 ; 1
36f4: 80 93 26 04 sts 0x0426, r24
36f8: b9 01 movw r22, r18
36fa: 62 70 andi r22, 0x02 ; 2
36fc: 70 70 andi r23, 0x00 ; 0
36fe: 21 ff sbrs r18, 1
3700: 08 c0 rjmp .+16 ; 0x3712 <Menu+0x50>
3702: 80 91 26 04 lds r24, 0x0426
3706: 48 17 cp r20, r24
3708: 09 f4 brne .+2 ; 0x370c <Menu+0x4a>
370a: e0 c0 rjmp .+448 ; 0x38cc <Menu+0x20a>
370c: 8f 5f subi r24, 0xFF ; 255
370e: 80 93 26 04 sts 0x0426, r24
3712: 55 23 and r21, r21
3714: 19 f0 breq .+6 ; 0x371c <Menu+0x5a>
3716: 67 2b or r22, r23
3718: 09 f0 breq .+2 ; 0x371c <Menu+0x5a>
371a: d2 c0 rjmp .+420 ; 0x38c0 <Menu+0x1fe>
371c: 0e 94 58 1b call 0x36b0 ; 0x36b0 <LcdClear>
3720: 90 91 26 04 lds r25, 0x0426
3724: 9a 30 cpi r25, 0x0A ; 10
3726: 68 f5 brcc .+90 ; 0x3782 <Menu+0xc0>
3728: 81 e1 ldi r24, 0x11 ; 17
372a: 80 93 25 04 sts 0x0425, r24
372e: 89 2f mov r24, r25
3730: 90 e0 ldi r25, 0x00 ; 0
3732: 9f 93 push r25
3734: 8f 93 push r24
3736: 8d e1 ldi r24, 0x1D ; 29
3738: 95 e0 ldi r25, 0x05 ; 5
373a: 9f 93 push r25
373c: 8f 93 push r24
373e: 81 e0 ldi r24, 0x01 ; 1
3740: 8f 93 push r24
3742: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3746: 0f 90 pop r0
3748: 0f 90 pop r0
374a: 0f 90 pop r0
374c: 0f 90 pop r0
374e: 0f 90 pop r0
3750: 10 91 26 04 lds r17, 0x0426
3754: 15 30 cpi r17, 0x05 ; 5
3756: 09 f4 brne .+2 ; 0x375a <Menu+0x98>
3758: d7 c3 rjmp .+1966 ; 0x3f08 <Menu+0x846>
375a: 16 30 cpi r17, 0x06 ; 6
375c: e0 f0 brcs .+56 ; 0x3796 <Menu+0xd4>
375e: 18 30 cpi r17, 0x08 ; 8
3760: 09 f4 brne .+2 ; 0x3764 <Menu+0xa2>
3762: ed c2 rjmp .+1498 ; 0x3d3e <Menu+0x67c>
3764: 19 30 cpi r17, 0x09 ; 9
3766: 08 f0 brcs .+2 ; 0x376a <Menu+0xa8>
3768: b4 c0 rjmp .+360 ; 0x38d2 <Menu+0x210>
376a: 16 30 cpi r17, 0x06 ; 6
376c: 09 f4 brne .+2 ; 0x3770 <Menu+0xae>
376e: 8b c2 rjmp .+1302 ; 0x3c86 <Menu+0x5c4>
3770: 17 30 cpi r17, 0x07 ; 7
3772: 09 f4 brne .+2 ; 0x3776 <Menu+0xb4>
3774: 5e c2 rjmp .+1212 ; 0x3c32 <Menu+0x570>
3776: 11 50 subi r17, 0x01 ; 1
3778: 10 93 78 03 sts 0x0378, r17
377c: 10 92 26 04 sts 0x0426, r1
3780: e8 c5 rjmp .+3024 ; 0x4352 <Menu+0xc90>
3782: 80 e1 ldi r24, 0x10 ; 16
3784: 80 93 25 04 sts 0x0425, r24
3788: 89 2f mov r24, r25
378a: 90 e0 ldi r25, 0x00 ; 0
378c: 9f 93 push r25
378e: 8f 93 push r24
3790: 88 e1 ldi r24, 0x18 ; 24
3792: 95 e0 ldi r25, 0x05 ; 5
3794: d2 cf rjmp .-92 ; 0x373a <Menu+0x78>
3796: 12 30 cpi r17, 0x02 ; 2
3798: 09 f4 brne .+2 ; 0x379c <Menu+0xda>
379a: 5b c3 rjmp .+1718 ; 0x3e52 <Menu+0x790>
379c: 13 30 cpi r17, 0x03 ; 3
379e: 08 f4 brcc .+2 ; 0x37a2 <Menu+0xe0>
37a0: f9 c0 rjmp .+498 ; 0x3994 <Menu+0x2d2>
37a2: 13 30 cpi r17, 0x03 ; 3
37a4: 09 f4 brne .+2 ; 0x37a8 <Menu+0xe6>
37a6: 92 c1 rjmp .+804 ; 0x3acc <Menu+0x40a>
37a8: 14 30 cpi r17, 0x04 ; 4
37aa: 29 f7 brne .-54 ; 0x3776 <Menu+0xb4>
37ac: 10 92 25 04 sts 0x0425, r1
37b0: e0 91 d8 07 lds r30, 0x07D8
37b4: f0 e0 ldi r31, 0x00 ; 0
37b6: ee 0f add r30, r30
37b8: ff 1f adc r31, r31
37ba: eb 55 subi r30, 0x5B ; 91
37bc: f8 4f sbci r31, 0xF8 ; 248
37be: 20 81 ld r18, Z
37c0: 31 81 ldd r19, Z+1 ; 0x01
37c2: e0 91 d7 07 lds r30, 0x07D7
37c6: f0 e0 ldi r31, 0x00 ; 0
37c8: ee 0f add r30, r30
37ca: ff 1f adc r31, r31
37cc: eb 55 subi r30, 0x5B ; 91
37ce: f8 4f sbci r31, 0xF8 ; 248
37d0: 80 81 ld r24, Z
37d2: 91 81 ldd r25, Z+1 ; 0x01
37d4: 3f 93 push r19
37d6: 2f 93 push r18
37d8: 9f 93 push r25
37da: 8f 93 push r24
37dc: 8e ef ldi r24, 0xFE ; 254
37de: 93 e0 ldi r25, 0x03 ; 3
37e0: 9f 93 push r25
37e2: 8f 93 push r24
37e4: 11 e0 ldi r17, 0x01 ; 1
37e6: 1f 93 push r17
37e8: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
37ec: 84 e1 ldi r24, 0x14 ; 20
37ee: 80 93 25 04 sts 0x0425, r24
37f2: e0 91 da 07 lds r30, 0x07DA
37f6: f0 e0 ldi r31, 0x00 ; 0
37f8: ee 0f add r30, r30
37fa: ff 1f adc r31, r31
37fc: eb 55 subi r30, 0x5B ; 91
37fe: f8 4f sbci r31, 0xF8 ; 248
3800: 20 81 ld r18, Z
3802: 31 81 ldd r19, Z+1 ; 0x01
3804: e0 91 d9 07 lds r30, 0x07D9
3808: f0 e0 ldi r31, 0x00 ; 0
380a: ee 0f add r30, r30
380c: ff 1f adc r31, r31
380e: eb 55 subi r30, 0x5B ; 91
3810: f8 4f sbci r31, 0xF8 ; 248
3812: 80 81 ld r24, Z
3814: 91 81 ldd r25, Z+1 ; 0x01
3816: 3f 93 push r19
3818: 2f 93 push r18
381a: 9f 93 push r25
381c: 8f 93 push r24
381e: 8e ee ldi r24, 0xEE ; 238
3820: 93 e0 ldi r25, 0x03 ; 3
3822: 9f 93 push r25
3824: 8f 93 push r24
3826: 1f 93 push r17
3828: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
382c: 88 e2 ldi r24, 0x28 ; 40
382e: 80 93 25 04 sts 0x0425, r24
3832: e0 91 dc 07 lds r30, 0x07DC
3836: f0 e0 ldi r31, 0x00 ; 0
3838: ee 0f add r30, r30
383a: ff 1f adc r31, r31
383c: eb 55 subi r30, 0x5B ; 91
383e: f8 4f sbci r31, 0xF8 ; 248
3840: 20 81 ld r18, Z
3842: 31 81 ldd r19, Z+1 ; 0x01
3844: e0 91 db 07 lds r30, 0x07DB
3848: f0 e0 ldi r31, 0x00 ; 0
384a: ee 0f add r30, r30
384c: ff 1f adc r31, r31
384e: eb 55 subi r30, 0x5B ; 91
3850: f8 4f sbci r31, 0xF8 ; 248
3852: 80 81 ld r24, Z
3854: 91 81 ldd r25, Z+1 ; 0x01
3856: 3f 93 push r19
3858: 2f 93 push r18
385a: 9f 93 push r25
385c: 8f 93 push r24
385e: 8e ed ldi r24, 0xDE ; 222
3860: 93 e0 ldi r25, 0x03 ; 3
3862: 9f 93 push r25
3864: 8f 93 push r24
3866: 1f 93 push r17
3868: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
386c: 8c e3 ldi r24, 0x3C ; 60
386e: 80 93 25 04 sts 0x0425, r24
3872: e0 91 de 07 lds r30, 0x07DE
3876: f0 e0 ldi r31, 0x00 ; 0
3878: ee 0f add r30, r30
387a: ff 1f adc r31, r31
387c: eb 55 subi r30, 0x5B ; 91
387e: f8 4f sbci r31, 0xF8 ; 248
3880: 20 81 ld r18, Z
3882: 31 81 ldd r19, Z+1 ; 0x01
3884: e0 91 dd 07 lds r30, 0x07DD
3888: f0 e0 ldi r31, 0x00 ; 0
388a: ee 0f add r30, r30
388c: ff 1f adc r31, r31
388e: eb 55 subi r30, 0x5B ; 91
3890: f8 4f sbci r31, 0xF8 ; 248
3892: 80 81 ld r24, Z
3894: 91 81 ldd r25, Z+1 ; 0x01
3896: 3f 93 push r19
3898: 2f 93 push r18
389a: 9f 93 push r25
389c: 8f 93 push r24
389e: 8e ec ldi r24, 0xCE ; 206
38a0: 93 e0 ldi r25, 0x03 ; 3
38a2: 9f 93 push r25
38a4: 8f 93 push r24
38a6: 1f 93 push r17
38a8: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
38ac: 4d b7 in r20, 0x3d ; 61
38ae: 5e b7 in r21, 0x3e ; 62
38b0: 44 5e subi r20, 0xE4 ; 228
38b2: 5f 4f sbci r21, 0xFF ; 255
38b4: 0f b6 in r0, 0x3f ; 63
38b6: f8 94 cli
38b8: 5e bf out 0x3e, r21 ; 62
38ba: 0f be out 0x3f, r0 ; 63
38bc: 4d bf out 0x3d, r20 ; 61
38be: 49 c5 rjmp .+2706 ; 0x4352 <Menu+0xc90>
38c0: 10 92 26 04 sts 0x0426, r1
38c4: 2b cf rjmp .-426 ; 0x371c <Menu+0x5a>
38c6: 40 93 26 04 sts 0x0426, r20
38ca: 16 cf rjmp .-468 ; 0x36f8 <Menu+0x36>
38cc: 10 92 26 04 sts 0x0426, r1
38d0: 20 cf rjmp .-448 ; 0x3712 <Menu+0x50>
38d2: 1a 30 cpi r17, 0x0A ; 10
38d4: 09 f4 brne .+2 ; 0x38d8 <Menu+0x216>
38d6: 76 c2 rjmp .+1260 ; 0x3dc4 <Menu+0x702>
38d8: 1a 30 cpi r17, 0x0A ; 10
38da: 08 f4 brcc .+2 ; 0x38de <Menu+0x21c>
38dc: ad c0 rjmp .+346 ; 0x3a38 <Menu+0x376>
38de: 1b 30 cpi r17, 0x0B ; 11
38e0: 09 f0 breq .+2 ; 0x38e4 <Menu+0x222>
38e2: 49 cf rjmp .-366 ; 0x3776 <Menu+0xb4>
38e4: 10 92 25 04 sts 0x0425, r1
38e8: 88 e1 ldi r24, 0x18 ; 24
38ea: 92 e0 ldi r25, 0x02 ; 2
38ec: 9f 93 push r25
38ee: 8f 93 push r24
38f0: 11 e0 ldi r17, 0x01 ; 1
38f2: 1f 93 push r17
38f4: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
38f8: 84 e1 ldi r24, 0x14 ; 20
38fa: 80 93 25 04 sts 0x0425, r24
38fe: 20 91 a0 06 lds r18, 0x06A0
3902: 33 27 eor r19, r19
3904: 27 fd sbrc r18, 7
3906: 30 95 com r19
3908: 80 91 9f 06 lds r24, 0x069F
390c: 99 27 eor r25, r25
390e: 87 fd sbrc r24, 7
3910: 90 95 com r25
3912: 3f 93 push r19
3914: 2f 93 push r18
3916: 9f 93 push r25
3918: 8f 93 push r24
391a: 88 e0 ldi r24, 0x08 ; 8
391c: 92 e0 ldi r25, 0x02 ; 2
391e: 9f 93 push r25
3920: 8f 93 push r24
3922: 1f 93 push r17
3924: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3928: 88 e2 ldi r24, 0x28 ; 40
392a: 80 93 25 04 sts 0x0425, r24
392e: 20 91 a1 06 lds r18, 0x06A1
3932: 33 27 eor r19, r19
3934: 27 fd sbrc r18, 7
3936: 30 95 com r19
3938: 80 91 a2 06 lds r24, 0x06A2
393c: 90 e0 ldi r25, 0x00 ; 0
393e: 3f 93 push r19
3940: 2f 93 push r18
3942: 9f 93 push r25
3944: 8f 93 push r24
3946: 88 ef ldi r24, 0xF8 ; 248
3948: 91 e0 ldi r25, 0x01 ; 1
394a: 9f 93 push r25
394c: 8f 93 push r24
394e: 1f 93 push r17
3950: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3954: 8c e3 ldi r24, 0x3C ; 60
3956: 80 93 25 04 sts 0x0425, r24
395a: 20 91 a6 06 lds r18, 0x06A6
395e: 30 e0 ldi r19, 0x00 ; 0
3960: 80 91 a3 06 lds r24, 0x06A3
3964: 99 27 eor r25, r25
3966: 87 fd sbrc r24, 7
3968: 90 95 com r25
396a: 3f 93 push r19
396c: 2f 93 push r18
396e: 9f 93 push r25
3970: 8f 93 push r24
3972: 88 ee ldi r24, 0xE8 ; 232
3974: 91 e0 ldi r25, 0x01 ; 1
3976: 9f 93 push r25
3978: 8f 93 push r24
397a: 1f 93 push r17
397c: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3980: 6d b7 in r22, 0x3d ; 61
3982: 7e b7 in r23, 0x3e ; 62
3984: 68 5e subi r22, 0xE8 ; 232
3986: 7f 4f sbci r23, 0xFF ; 255
3988: 0f b6 in r0, 0x3f ; 63
398a: f8 94 cli
398c: 7e bf out 0x3e, r23 ; 62
398e: 0f be out 0x3f, r0 ; 63
3990: 6d bf out 0x3d, r22 ; 61
3992: df c4 rjmp .+2494 ; 0x4352 <Menu+0xc90>
3994: 11 23 and r17, r17
3996: 09 f4 brne .+2 ; 0x399a <Menu+0x2d8>
3998: fb c0 rjmp .+502 ; 0x3b90 <Menu+0x4ce>
399a: 11 30 cpi r17, 0x01 ; 1
399c: 09 f0 breq .+2 ; 0x39a0 <Menu+0x2de>
399e: eb ce rjmp .-554 ; 0x3776 <Menu+0xb4>
39a0: 80 91 df 07 lds r24, 0x07DF
39a4: 80 ff sbrs r24, 0
39a6: 6b c3 rjmp .+1750 ; 0x407e <Menu+0x9bc>
39a8: 10 92 25 04 sts 0x0425, r1
39ac: 80 91 9e 04 lds r24, 0x049E
39b0: 90 91 9f 04 lds r25, 0x049F
39b4: 9f 93 push r25
39b6: 8f 93 push r24
39b8: 87 ec ldi r24, 0xC7 ; 199
39ba: 94 e0 ldi r25, 0x04 ; 4
39bc: 9f 93 push r25
39be: 8f 93 push r24
39c0: 1f 93 push r17
39c2: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
39c6: 84 e1 ldi r24, 0x14 ; 20
39c8: 80 93 25 04 sts 0x0425, r24
39cc: 80 91 a0 04 lds r24, 0x04A0
39d0: 90 91 a1 04 lds r25, 0x04A1
39d4: 9f 93 push r25
39d6: 8f 93 push r24
39d8: 88 eb ldi r24, 0xB8 ; 184
39da: 94 e0 ldi r25, 0x04 ; 4
39dc: 9f 93 push r25
39de: 8f 93 push r24
39e0: 1f 93 push r17
39e2: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
39e6: 88 e2 ldi r24, 0x28 ; 40
39e8: 80 93 25 04 sts 0x0425, r24
39ec: 80 91 18 03 lds r24, 0x0318
39f0: 90 91 19 03 lds r25, 0x0319
39f4: 9f 93 push r25
39f6: 8f 93 push r24
39f8: 89 ea ldi r24, 0xA9 ; 169
39fa: 94 e0 ldi r25, 0x04 ; 4
39fc: 9f 93 push r25
39fe: 8f 93 push r24
3a00: 1f 93 push r17
3a02: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3a06: 8c e3 ldi r24, 0x3C ; 60
3a08: 80 93 25 04 sts 0x0425, r24
3a0c: 80 91 90 07 lds r24, 0x0790
3a10: 90 e0 ldi r25, 0x00 ; 0
3a12: 9f 93 push r25
3a14: 8f 93 push r24
3a16: 8a e9 ldi r24, 0x9A ; 154
3a18: 94 e0 ldi r25, 0x04 ; 4
3a1a: 9f 93 push r25
3a1c: 8f 93 push r24
3a1e: 1f 93 push r17
3a20: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3a24: 4d b7 in r20, 0x3d ; 61
3a26: 5e b7 in r21, 0x3e ; 62
3a28: 4c 5e subi r20, 0xEC ; 236
3a2a: 5f 4f sbci r21, 0xFF ; 255
3a2c: 0f b6 in r0, 0x3f ; 63
3a2e: f8 94 cli
3a30: 5e bf out 0x3e, r21 ; 62
3a32: 0f be out 0x3f, r0 ; 63
3a34: 4d bf out 0x3d, r20 ; 61
3a36: 8d c4 rjmp .+2330 ; 0x4352 <Menu+0xc90>
3a38: 10 92 25 04 sts 0x0425, r1
3a3c: 80 91 8c 04 lds r24, 0x048C
3a40: 90 91 8d 04 lds r25, 0x048D
3a44: 9f 93 push r25
3a46: 8f 93 push r24
3a48: 8e e7 ldi r24, 0x7E ; 126
3a4a: 92 e0 ldi r25, 0x02 ; 2
3a4c: 9f 93 push r25
3a4e: 8f 93 push r24
3a50: 11 e0 ldi r17, 0x01 ; 1
3a52: 1f 93 push r17
3a54: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3a58: 84 e1 ldi r24, 0x14 ; 20
3a5a: 80 93 25 04 sts 0x0425, r24
3a5e: 80 91 8e 04 lds r24, 0x048E
3a62: 90 91 8f 04 lds r25, 0x048F
3a66: 9f 93 push r25
3a68: 8f 93 push r24
3a6a: 82 e7 ldi r24, 0x72 ; 114
3a6c: 92 e0 ldi r25, 0x02 ; 2
3a6e: 9f 93 push r25
3a70: 8f 93 push r24
3a72: 1f 93 push r17
3a74: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3a78: 88 e2 ldi r24, 0x28 ; 40
3a7a: 80 93 25 04 sts 0x0425, r24
3a7e: 80 91 90 04 lds r24, 0x0490
3a82: 90 91 91 04 lds r25, 0x0491
3a86: 9f 93 push r25
3a88: 8f 93 push r24
3a8a: 86 e6 ldi r24, 0x66 ; 102
3a8c: 92 e0 ldi r25, 0x02 ; 2
3a8e: 9f 93 push r25
3a90: 8f 93 push r24
3a92: 1f 93 push r17
3a94: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3a98: 8c e3 ldi r24, 0x3C ; 60
3a9a: 80 93 25 04 sts 0x0425, r24
3a9e: 80 91 92 04 lds r24, 0x0492
3aa2: 90 91 93 04 lds r25, 0x0493
3aa6: 9f 93 push r25
3aa8: 8f 93 push r24
3aaa: 8a e5 ldi r24, 0x5A ; 90
3aac: 92 e0 ldi r25, 0x02 ; 2
3aae: 9f 93 push r25
3ab0: 8f 93 push r24
3ab2: 1f 93 push r17
3ab4: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3ab8: 2d b7 in r18, 0x3d ; 61
3aba: 3e b7 in r19, 0x3e ; 62
3abc: 2c 5e subi r18, 0xEC ; 236
3abe: 3f 4f sbci r19, 0xFF ; 255
3ac0: 0f b6 in r0, 0x3f ; 63
3ac2: f8 94 cli
3ac4: 3e bf out 0x3e, r19 ; 62
3ac6: 0f be out 0x3f, r0 ; 63
3ac8: 2d bf out 0x3d, r18 ; 61
3aca: 43 c4 rjmp .+2182 ; 0x4352 <Menu+0xc90>
3acc: 10 92 25 04 sts 0x0425, r1
3ad0: 80 91 a9 07 lds r24, 0x07A9
3ad4: 90 91 aa 07 lds r25, 0x07AA
3ad8: 20 91 a7 07 lds r18, 0x07A7
3adc: 30 91 a8 07 lds r19, 0x07A8
3ae0: 9f 93 push r25
3ae2: 8f 93 push r24
3ae4: 3f 93 push r19
3ae6: 2f 93 push r18
3ae8: 8e e3 ldi r24, 0x3E ; 62
3aea: 94 e0 ldi r25, 0x04 ; 4
3aec: 9f 93 push r25
3aee: 8f 93 push r24
3af0: 11 e0 ldi r17, 0x01 ; 1
3af2: 1f 93 push r17
3af4: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3af8: 84 e1 ldi r24, 0x14 ; 20
3afa: 80 93 25 04 sts 0x0425, r24
3afe: 80 91 ad 07 lds r24, 0x07AD
3b02: 90 91 ae 07 lds r25, 0x07AE
3b06: 20 91 ab 07 lds r18, 0x07AB
3b0a: 30 91 ac 07 lds r19, 0x07AC
3b0e: 9f 93 push r25
3b10: 8f 93 push r24
3b12: 3f 93 push r19
3b14: 2f 93 push r18
3b16: 8e e2 ldi r24, 0x2E ; 46
3b18: 94 e0 ldi r25, 0x04 ; 4
3b1a: 9f 93 push r25
3b1c: 8f 93 push r24
3b1e: 1f 93 push r17
3b20: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3b24: 88 e2 ldi r24, 0x28 ; 40
3b26: 80 93 25 04 sts 0x0425, r24
3b2a: 80 91 b1 07 lds r24, 0x07B1
3b2e: 90 91 b2 07 lds r25, 0x07B2
3b32: 20 91 af 07 lds r18, 0x07AF
3b36: 30 91 b0 07 lds r19, 0x07B0
3b3a: 9f 93 push r25
3b3c: 8f 93 push r24
3b3e: 3f 93 push r19
3b40: 2f 93 push r18
3b42: 8e e1 ldi r24, 0x1E ; 30
3b44: 94 e0 ldi r25, 0x04 ; 4
3b46: 9f 93 push r25
3b48: 8f 93 push r24
3b4a: 1f 93 push r17
3b4c: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3b50: 8c e3 ldi r24, 0x3C ; 60
3b52: 80 93 25 04 sts 0x0425, r24
3b56: 80 91 b5 07 lds r24, 0x07B5
3b5a: 90 91 b6 07 lds r25, 0x07B6
3b5e: 20 91 b3 07 lds r18, 0x07B3
3b62: 30 91 b4 07 lds r19, 0x07B4
3b66: 9f 93 push r25
3b68: 8f 93 push r24
3b6a: 3f 93 push r19
3b6c: 2f 93 push r18
3b6e: 8e e0 ldi r24, 0x0E ; 14
3b70: 94 e0 ldi r25, 0x04 ; 4
3b72: 9f 93 push r25
3b74: 8f 93 push r24
3b76: 1f 93 push r17
3b78: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3b7c: 2d b7 in r18, 0x3d ; 61
3b7e: 3e b7 in r19, 0x3e ; 62
3b80: 24 5e subi r18, 0xE4 ; 228
3b82: 3f 4f sbci r19, 0xFF ; 255
3b84: 0f b6 in r0, 0x3f ; 63
3b86: f8 94 cli
3b88: 3e bf out 0x3e, r19 ; 62
3b8a: 0f be out 0x3f, r0 ; 63
3b8c: 2d bf out 0x3d, r18 ; 61
3b8e: e1 c3 rjmp .+1986 ; 0x4352 <Menu+0xc90>
3b90: 10 92 25 04 sts 0x0425, r1
3b94: 88 e0 ldi r24, 0x08 ; 8
3b96: 95 e0 ldi r25, 0x05 ; 5
3b98: 9f 93 push r25
3b9a: 8f 93 push r24
3b9c: 11 e0 ldi r17, 0x01 ; 1
3b9e: 1f 93 push r17
3ba0: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3ba4: 84 e1 ldi r24, 0x14 ; 20
3ba6: 80 93 25 04 sts 0x0425, r24
3baa: 20 91 00 01 lds r18, 0x0100
3bae: 82 2f mov r24, r18
3bb0: 6a e0 ldi r22, 0x0A ; 10
3bb2: 0e 94 b3 55 call 0xab66 ; 0xab66 <__udivmodqi4>
3bb6: 49 2f mov r20, r25
3bb8: 50 e0 ldi r21, 0x00 ; 0
3bba: 82 2f mov r24, r18
3bbc: 0e 94 b3 55 call 0xab66 ; 0xab66 <__udivmodqi4>
3bc0: 90 e0 ldi r25, 0x00 ; 0
3bc2: 20 e7 ldi r18, 0x70 ; 112
3bc4: 30 e0 ldi r19, 0x00 ; 0
3bc6: 3f 93 push r19
3bc8: 2f 93 push r18
3bca: 28 e4 ldi r18, 0x48 ; 72
3bcc: 30 e0 ldi r19, 0x00 ; 0
3bce: 3f 93 push r19
3bd0: 2f 93 push r18
3bd2: 1f 92 push r1
3bd4: 1f 92 push r1
3bd6: 5f 93 push r21
3bd8: 4f 93 push r20
3bda: 9f 93 push r25
3bdc: 8f 93 push r24
3bde: 83 ef ldi r24, 0xF3 ; 243
3be0: 94 e0 ldi r25, 0x04 ; 4
3be2: 9f 93 push r25
3be4: 8f 93 push r24
3be6: 1f 93 push r17
3be8: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3bec: 88 e2 ldi r24, 0x28 ; 40
3bee: 80 93 25 04 sts 0x0425, r24
3bf2: 0e 94 bc 02 call 0x578 ; 0x578 <GetActiveParamSetNumber>
3bf6: 90 e0 ldi r25, 0x00 ; 0
3bf8: 9f 93 push r25
3bfa: 8f 93 push r24
3bfc: 86 ee ldi r24, 0xE6 ; 230
3bfe: 94 e0 ldi r25, 0x04 ; 4
3c00: 9f 93 push r25
3c02: 8f 93 push r24
3c04: 1f 93 push r17
3c06: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3c0a: 8c e3 ldi r24, 0x3C ; 60
3c0c: 80 93 25 04 sts 0x0425, r24
3c10: 86 ed ldi r24, 0xD6 ; 214
3c12: 94 e0 ldi r25, 0x04 ; 4
3c14: 9f 93 push r25
3c16: 8f 93 push r24
3c18: 1f 93 push r17
3c1a: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3c1e: 2d b7 in r18, 0x3d ; 61
3c20: 3e b7 in r19, 0x3e ; 62
3c22: 28 5e subi r18, 0xE8 ; 232
3c24: 3f 4f sbci r19, 0xFF ; 255
3c26: 0f b6 in r0, 0x3f ; 63
3c28: f8 94 cli
3c2a: 3e bf out 0x3e, r19 ; 62
3c2c: 0f be out 0x3f, r0 ; 63
3c2e: 2d bf out 0x3d, r18 ; 61
3c30: 90 c3 rjmp .+1824 ; 0x4352 <Menu+0xc90>
3c32: 84 e1 ldi r24, 0x14 ; 20
3c34: 80 93 25 04 sts 0x0425, r24
3c38: 80 91 0e 03 lds r24, 0x030E
3c3c: 90 91 0f 03 lds r25, 0x030F
3c40: 9f 93 push r25
3c42: 8f 93 push r24
3c44: 85 ed ldi r24, 0xD5 ; 213
3c46: 92 e0 ldi r25, 0x02 ; 2
3c48: 9f 93 push r25
3c4a: 8f 93 push r24
3c4c: 11 e0 ldi r17, 0x01 ; 1
3c4e: 1f 93 push r17
3c50: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3c54: 88 e2 ldi r24, 0x28 ; 40
3c56: 80 93 25 04 sts 0x0425, r24
3c5a: 80 91 94 04 lds r24, 0x0494
3c5e: 90 e0 ldi r25, 0x00 ; 0
3c60: 9f 93 push r25
3c62: 8f 93 push r24
3c64: 86 ec ldi r24, 0xC6 ; 198
3c66: 92 e0 ldi r25, 0x02 ; 2
3c68: 9f 93 push r25
3c6a: 8f 93 push r24
3c6c: 1f 93 push r17
3c6e: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3c72: 6d b7 in r22, 0x3d ; 61
3c74: 7e b7 in r23, 0x3e ; 62
3c76: 66 5f subi r22, 0xF6 ; 246
3c78: 7f 4f sbci r23, 0xFF ; 255
3c7a: 0f b6 in r0, 0x3f ; 63
3c7c: f8 94 cli
3c7e: 7e bf out 0x3e, r23 ; 62
3c80: 0f be out 0x3f, r0 ; 63
3c82: 6d bf out 0x3d, r22 ; 61
3c84: 66 c3 rjmp .+1740 ; 0x4352 <Menu+0xc90>
3c86: 10 92 25 04 sts 0x0425, r1
3c8a: 81 e1 ldi r24, 0x11 ; 17
3c8c: 93 e0 ldi r25, 0x03 ; 3
3c8e: 9f 93 push r25
3c90: 8f 93 push r24
3c92: 11 e0 ldi r17, 0x01 ; 1
3c94: 1f 93 push r17
3c96: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3c9a: 84 e1 ldi r24, 0x14 ; 20
3c9c: 80 93 25 04 sts 0x0425, r24
3ca0: 80 91 39 04 lds r24, 0x0439
3ca4: 90 91 3a 04 lds r25, 0x043A
3ca8: 20 91 06 04 lds r18, 0x0406
3cac: 30 91 07 04 lds r19, 0x0407
3cb0: 9f 93 push r25
3cb2: 8f 93 push r24
3cb4: 3f 93 push r19
3cb6: 2f 93 push r18
3cb8: 82 e0 ldi r24, 0x02 ; 2
3cba: 93 e0 ldi r25, 0x03 ; 3
3cbc: 9f 93 push r25
3cbe: 8f 93 push r24
3cc0: 1f 93 push r17
3cc2: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3cc6: 88 e2 ldi r24, 0x28 ; 40
3cc8: 80 93 25 04 sts 0x0425, r24
3ccc: 80 91 3b 04 lds r24, 0x043B
3cd0: 90 91 3c 04 lds r25, 0x043C
3cd4: 20 91 04 04 lds r18, 0x0404
3cd8: 30 91 05 04 lds r19, 0x0405
3cdc: 9f 93 push r25
3cde: 8f 93 push r24
3ce0: 3f 93 push r19
3ce2: 2f 93 push r18
3ce4: 83 ef ldi r24, 0xF3 ; 243
3ce6: 92 e0 ldi r25, 0x02 ; 2
3ce8: 9f 93 push r25
3cea: 8f 93 push r24
3cec: 1f 93 push r17
3cee: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3cf2: 8c e3 ldi r24, 0x3C ; 60
3cf4: 80 93 25 04 sts 0x0425, r24
3cf8: 60 91 3f 04 lds r22, 0x043F
3cfc: 70 91 40 04 lds r23, 0x0440
3d00: 80 91 41 04 lds r24, 0x0441
3d04: 90 91 42 04 lds r25, 0x0442
3d08: 0e 94 a9 54 call 0xa952 ; 0xa952 <__fixsfsi>
3d0c: 20 91 54 08 lds r18, 0x0854
3d10: 30 91 55 08 lds r19, 0x0855
3d14: 7f 93 push r23
3d16: 6f 93 push r22
3d18: 3f 93 push r19
3d1a: 2f 93 push r18
3d1c: 84 ee ldi r24, 0xE4 ; 228
3d1e: 92 e0 ldi r25, 0x02 ; 2
3d20: 9f 93 push r25
3d22: 8f 93 push r24
3d24: 1f 93 push r17
3d26: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3d2a: 4d b7 in r20, 0x3d ; 61
3d2c: 5e b7 in r21, 0x3e ; 62
3d2e: 48 5e subi r20, 0xE8 ; 232
3d30: 5f 4f sbci r21, 0xFF ; 255
3d32: 0f b6 in r0, 0x3f ; 63
3d34: f8 94 cli
3d36: 5e bf out 0x3e, r21 ; 62
3d38: 0f be out 0x3f, r0 ; 63
3d3a: 4d bf out 0x3d, r20 ; 61
3d3c: 0a c3 rjmp .+1556 ; 0x4352 <Menu+0xc90>
3d3e: 10 92 25 04 sts 0x0425, r1
3d42: 87 eb ldi r24, 0xB7 ; 183
3d44: 92 e0 ldi r25, 0x02 ; 2
3d46: 9f 93 push r25
3d48: 8f 93 push r24
3d4a: 11 e0 ldi r17, 0x01 ; 1
3d4c: 1f 93 push r17
3d4e: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3d52: 84 e1 ldi r24, 0x14 ; 20
3d54: 80 93 25 04 sts 0x0425, r24
3d58: 80 91 85 04 lds r24, 0x0485
3d5c: 90 91 86 04 lds r25, 0x0486
3d60: 9f 93 push r25
3d62: 8f 93 push r24
3d64: 88 ea ldi r24, 0xA8 ; 168
3d66: 92 e0 ldi r25, 0x02 ; 2
3d68: 9f 93 push r25
3d6a: 8f 93 push r24
3d6c: 1f 93 push r17
3d6e: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3d72: 88 e2 ldi r24, 0x28 ; 40
3d74: 80 93 25 04 sts 0x0425, r24
3d78: 80 91 81 04 lds r24, 0x0481
3d7c: 90 91 82 04 lds r25, 0x0482
3d80: 9f 93 push r25
3d82: 8f 93 push r24
3d84: 89 e9 ldi r24, 0x99 ; 153
3d86: 92 e0 ldi r25, 0x02 ; 2
3d88: 9f 93 push r25
3d8a: 8f 93 push r24
3d8c: 1f 93 push r17
3d8e: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3d92: 8c e3 ldi r24, 0x3C ; 60
3d94: 80 93 25 04 sts 0x0425, r24
3d98: 80 91 83 04 lds r24, 0x0483
3d9c: 90 91 84 04 lds r25, 0x0484
3da0: 9f 93 push r25
3da2: 8f 93 push r24
3da4: 8a e8 ldi r24, 0x8A ; 138
3da6: 92 e0 ldi r25, 0x02 ; 2
3da8: 9f 93 push r25
3daa: 8f 93 push r24
3dac: 1f 93 push r17
3dae: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3db2: 8d b7 in r24, 0x3d ; 61
3db4: 9e b7 in r25, 0x3e ; 62
3db6: 42 96 adiw r24, 0x12 ; 18
3db8: 0f b6 in r0, 0x3f ; 63
3dba: f8 94 cli
3dbc: 9e bf out 0x3e, r25 ; 62
3dbe: 0f be out 0x3f, r0 ; 63
3dc0: 8d bf out 0x3d, r24 ; 61
3dc2: c7 c2 rjmp .+1422 ; 0x4352 <Menu+0xc90>
3dc4: 10 92 25 04 sts 0x0425, r1
3dc8: 82 e5 ldi r24, 0x52 ; 82
3dca: 92 e0 ldi r25, 0x02 ; 2
3dcc: 9f 93 push r25
3dce: 8f 93 push r24
3dd0: 11 e0 ldi r17, 0x01 ; 1
3dd2: 1f 93 push r17
3dd4: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3dd8: 84 e1 ldi r24, 0x14 ; 20
3dda: 80 93 25 04 sts 0x0425, r24
3dde: 80 91 ab 03 lds r24, 0x03AB
3de2: 90 e0 ldi r25, 0x00 ; 0
3de4: 9f 93 push r25
3de6: 8f 93 push r24
3de8: 84 e4 ldi r24, 0x44 ; 68
3dea: 92 e0 ldi r25, 0x02 ; 2
3dec: 9f 93 push r25
3dee: 8f 93 push r24
3df0: 1f 93 push r17
3df2: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3df6: 88 e2 ldi r24, 0x28 ; 40
3df8: 80 93 25 04 sts 0x0425, r24
3dfc: 80 91 e9 03 lds r24, 0x03E9
3e00: 90 91 ea 03 lds r25, 0x03EA
3e04: 9f 93 push r25
3e06: 8f 93 push r24
3e08: 86 e3 ldi r24, 0x36 ; 54
3e0a: 92 e0 ldi r25, 0x02 ; 2
3e0c: 9f 93 push r25
3e0e: 8f 93 push r24
3e10: 1f 93 push r17
3e12: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3e16: 8c e3 ldi r24, 0x3C ; 60
3e18: 80 93 25 04 sts 0x0425, r24
3e1c: 20 91 fc 07 lds r18, 0x07FC
3e20: 30 e0 ldi r19, 0x00 ; 0
3e22: 80 91 fb 07 lds r24, 0x07FB
3e26: 90 e0 ldi r25, 0x00 ; 0
3e28: 3f 93 push r19
3e2a: 2f 93 push r18
3e2c: 9f 93 push r25
3e2e: 8f 93 push r24
3e30: 88 e2 ldi r24, 0x28 ; 40
3e32: 92 e0 ldi r25, 0x02 ; 2
3e34: 9f 93 push r25
3e36: 8f 93 push r24
3e38: 1f 93 push r17
3e3a: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3e3e: 4d b7 in r20, 0x3d ; 61
3e40: 5e b7 in r21, 0x3e ; 62
3e42: 4c 5e subi r20, 0xEC ; 236
3e44: 5f 4f sbci r21, 0xFF ; 255
3e46: 0f b6 in r0, 0x3f ; 63
3e48: f8 94 cli
3e4a: 5e bf out 0x3e, r21 ; 62
3e4c: 0f be out 0x3f, r0 ; 63
3e4e: 4d bf out 0x3d, r20 ; 61
3e50: 80 c2 rjmp .+1280 ; 0x4352 <Menu+0xc90>
3e52: 10 92 25 04 sts 0x0425, r1
3e56: 8b e7 ldi r24, 0x7B ; 123
3e58: 94 e0 ldi r25, 0x04 ; 4
3e5a: 9f 93 push r25
3e5c: 8f 93 push r24
3e5e: 11 e0 ldi r17, 0x01 ; 1
3e60: 1f 93 push r17
3e62: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3e66: 84 e1 ldi r24, 0x14 ; 20
3e68: 80 93 25 04 sts 0x0425, r24
3e6c: 60 91 45 04 lds r22, 0x0445
3e70: 70 91 46 04 lds r23, 0x0446
3e74: 80 91 47 04 lds r24, 0x0447
3e78: 90 91 48 04 lds r25, 0x0448
3e7c: 20 e0 ldi r18, 0x00 ; 0
3e7e: 34 e0 ldi r19, 0x04 ; 4
3e80: 40 e0 ldi r20, 0x00 ; 0
3e82: 50 e0 ldi r21, 0x00 ; 0
3e84: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
3e88: 5f 93 push r21
3e8a: 4f 93 push r20
3e8c: 3f 93 push r19
3e8e: 2f 93 push r18
3e90: 8c e6 ldi r24, 0x6C ; 108
3e92: 94 e0 ldi r25, 0x04 ; 4
3e94: 9f 93 push r25
3e96: 8f 93 push r24
3e98: 1f 93 push r17
3e9a: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3e9e: 88 e2 ldi r24, 0x28 ; 40
3ea0: 80 93 25 04 sts 0x0425, r24
3ea4: 60 91 4d 04 lds r22, 0x044D
3ea8: 70 91 4e 04 lds r23, 0x044E
3eac: 80 91 4f 04 lds r24, 0x044F
3eb0: 90 91 50 04 lds r25, 0x0450
3eb4: 20 e0 ldi r18, 0x00 ; 0
3eb6: 34 e0 ldi r19, 0x04 ; 4
3eb8: 40 e0 ldi r20, 0x00 ; 0
3eba: 50 e0 ldi r21, 0x00 ; 0
3ebc: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
3ec0: 5f 93 push r21
3ec2: 4f 93 push r20
3ec4: 3f 93 push r19
3ec6: 2f 93 push r18
3ec8: 8d e5 ldi r24, 0x5D ; 93
3eca: 94 e0 ldi r25, 0x04 ; 4
3ecc: 9f 93 push r25
3ece: 8f 93 push r24
3ed0: 1f 93 push r17
3ed2: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3ed6: 8c e3 ldi r24, 0x3C ; 60
3ed8: 80 93 25 04 sts 0x0425, r24
3edc: 80 91 81 04 lds r24, 0x0481
3ee0: 90 91 82 04 lds r25, 0x0482
3ee4: 9f 93 push r25
3ee6: 8f 93 push r24
3ee8: 8e e4 ldi r24, 0x4E ; 78
3eea: 94 e0 ldi r25, 0x04 ; 4
3eec: 9f 93 push r25
3eee: 8f 93 push r24
3ef0: 1f 93 push r17
3ef2: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3ef6: 8d b7 in r24, 0x3d ; 61
3ef8: 9e b7 in r25, 0x3e ; 62
3efa: 46 96 adiw r24, 0x16 ; 22
3efc: 0f b6 in r0, 0x3f ; 63
3efe: f8 94 cli
3f00: 9e bf out 0x3e, r25 ; 62
3f02: 0f be out 0x3f, r0 ; 63
3f04: 8d bf out 0x3d, r24 ; 61
3f06: 25 c2 rjmp .+1098 ; 0x4352 <Menu+0xc90>
3f08: 10 92 25 04 sts 0x0425, r1
3f0c: 80 ec ldi r24, 0xC0 ; 192
3f0e: 93 e0 ldi r25, 0x03 ; 3
3f10: 9f 93 push r25
3f12: 8f 93 push r24
3f14: 11 e0 ldi r17, 0x01 ; 1
3f16: 1f 93 push r17
3f18: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3f1c: 80 91 00 01 lds r24, 0x0100
3f20: 0f 90 pop r0
3f22: 0f 90 pop r0
3f24: 0f 90 pop r0
3f26: 8a 30 cpi r24, 0x0A ; 10
3f28: 09 f4 brne .+2 ; 0x3f2c <Menu+0x86a>
3f2a: 71 c1 rjmp .+738 ; 0x420e <Menu+0xb4c>
3f2c: 8b 30 cpi r24, 0x0B ; 11
3f2e: 09 f4 brne .+2 ; 0x3f32 <Menu+0x870>
3f30: c4 c0 rjmp .+392 ; 0x40ba <Menu+0x9f8>
3f32: 84 31 cpi r24, 0x14 ; 20
3f34: 09 f4 brne .+2 ; 0x3f38 <Menu+0x876>
3f36: c1 c0 rjmp .+386 ; 0x40ba <Menu+0x9f8>
3f38: 8d 30 cpi r24, 0x0D ; 13
3f3a: 09 f0 breq .+2 ; 0x3f3e <Menu+0x87c>
3f3c: 0a c2 rjmp .+1044 ; 0x4352 <Menu+0xc90>
3f3e: 84 e1 ldi r24, 0x14 ; 20
3f40: 80 93 25 04 sts 0x0425, r24
3f44: 80 91 1a 03 lds r24, 0x031A
3f48: 90 e0 ldi r25, 0x00 ; 0
3f4a: 20 91 2f 04 lds r18, 0x042F
3f4e: 30 91 30 04 lds r19, 0x0430
3f52: a9 01 movw r20, r18
3f54: 37 fd sbrc r19, 7
3f56: fa c1 rjmp .+1012 ; 0x434c <Menu+0xc8a>
3f58: ba 01 movw r22, r20
3f5a: 75 95 asr r23
3f5c: 67 95 ror r22
3f5e: 75 95 asr r23
3f60: 67 95 ror r22
3f62: 75 95 asr r23
3f64: 67 95 ror r22
3f66: 75 95 asr r23
3f68: 67 95 ror r22
3f6a: 40 91 fe 03 lds r20, 0x03FE
3f6e: 50 91 ff 03 lds r21, 0x03FF
3f72: 37 fd sbrc r19, 7
3f74: e8 c1 rjmp .+976 ; 0x4346 <Menu+0xc84>
3f76: 35 95 asr r19
3f78: 27 95 ror r18
3f7a: 35 95 asr r19
3f7c: 27 95 ror r18
3f7e: 35 95 asr r19
3f80: 27 95 ror r18
3f82: 42 1b sub r20, r18
3f84: 53 0b sbc r21, r19
3f86: 9f 93 push r25
3f88: 8f 93 push r24
3f8a: 7f 93 push r23
3f8c: 6f 93 push r22
3f8e: 5f 93 push r21
3f90: 4f 93 push r20
3f92: 86 e4 ldi r24, 0x46 ; 70
3f94: 93 e0 ldi r25, 0x03 ; 3
3f96: 9f 93 push r25
3f98: 8f 93 push r24
3f9a: 1f 93 push r17
3f9c: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
3fa0: 88 e2 ldi r24, 0x28 ; 40
3fa2: 80 93 25 04 sts 0x0425, r24
3fa6: 80 91 1b 03 lds r24, 0x031B
3faa: 90 e0 ldi r25, 0x00 ; 0
3fac: 20 91 31 04 lds r18, 0x0431
3fb0: 30 91 32 04 lds r19, 0x0432
3fb4: a9 01 movw r20, r18
3fb6: 6d b7 in r22, 0x3d ; 61
3fb8: 7e b7 in r23, 0x3e ; 62
3fba: 67 5f subi r22, 0xF7 ; 247
3fbc: 7f 4f sbci r23, 0xFF ; 255
3fbe: 0f b6 in r0, 0x3f ; 63
3fc0: f8 94 cli
3fc2: 7e bf out 0x3e, r23 ; 62
3fc4: 0f be out 0x3f, r0 ; 63
3fc6: 6d bf out 0x3d, r22 ; 61
3fc8: 37 fd sbrc r19, 7
3fca: ba c1 rjmp .+884 ; 0x4340 <Menu+0xc7e>
3fcc: ba 01 movw r22, r20
3fce: 75 95 asr r23
3fd0: 67 95 ror r22
3fd2: 75 95 asr r23
3fd4: 67 95 ror r22
3fd6: 75 95 asr r23
3fd8: 67 95 ror r22
3fda: 75 95 asr r23
3fdc: 67 95 ror r22
3fde: 40 91 00 04 lds r20, 0x0400
3fe2: 50 91 01 04 lds r21, 0x0401
3fe6: 37 fd sbrc r19, 7
3fe8: a8 c1 rjmp .+848 ; 0x433a <Menu+0xc78>
3fea: 35 95 asr r19
3fec: 27 95 ror r18
3fee: 35 95 asr r19
3ff0: 27 95 ror r18
3ff2: 35 95 asr r19
3ff4: 27 95 ror r18
3ff6: 42 1b sub r20, r18
3ff8: 53 0b sbc r21, r19
3ffa: 9f 93 push r25
3ffc: 8f 93 push r24
3ffe: 7f 93 push r23
4000: 6f 93 push r22
4002: 5f 93 push r21
4004: 4f 93 push r20
4006: 82 e3 ldi r24, 0x32 ; 50
4008: 93 e0 ldi r25, 0x03 ; 3
400a: 9f 93 push r25
400c: 8f 93 push r24
400e: 1f 93 push r17
4010: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
4014: 8c e3 ldi r24, 0x3C ; 60
4016: 80 93 25 04 sts 0x0425, r24
401a: 80 91 1c 03 lds r24, 0x031C
401e: 68 2f mov r22, r24
4020: 70 e0 ldi r23, 0x00 ; 0
4022: 20 91 33 04 lds r18, 0x0433
4026: 30 91 34 04 lds r19, 0x0434
402a: a9 01 movw r20, r18
402c: 8d b7 in r24, 0x3d ; 61
402e: 9e b7 in r25, 0x3e ; 62
4030: 09 96 adiw r24, 0x09 ; 9
4032: 0f b6 in r0, 0x3f ; 63
4034: f8 94 cli
4036: 9e bf out 0x3e, r25 ; 62
4038: 0f be out 0x3f, r0 ; 63
403a: 8d bf out 0x3d, r24 ; 61
403c: 37 fd sbrc r19, 7
403e: 7a c1 rjmp .+756 ; 0x4334 <Menu+0xc72>
4040: 55 95 asr r21
4042: 47 95 ror r20
4044: 80 91 02 04 lds r24, 0x0402
4048: 90 91 03 04 lds r25, 0x0403
404c: 28 1b sub r18, r24
404e: 39 0b sbc r19, r25
4050: 7f 93 push r23
4052: 6f 93 push r22
4054: 5f 93 push r21
4056: 4f 93 push r20
4058: 3f 93 push r19
405a: 2f 93 push r18
405c: 8e e1 ldi r24, 0x1E ; 30
405e: 93 e0 ldi r25, 0x03 ; 3
4060: 9f 93 push r25
4062: 8f 93 push r24
4064: 1f 93 push r17
4066: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
406a: 2d b7 in r18, 0x3d ; 61
406c: 3e b7 in r19, 0x3e ; 62
406e: 27 5f subi r18, 0xF7 ; 247
4070: 3f 4f sbci r19, 0xFF ; 255
4072: 0f b6 in r0, 0x3f ; 63
4074: f8 94 cli
4076: 3e bf out 0x3e, r19 ; 62
4078: 0f be out 0x3f, r0 ; 63
407a: 2d bf out 0x3d, r18 ; 61
407c: 6a c1 rjmp .+724 ; 0x4352 <Menu+0xc90>
407e: 84 e1 ldi r24, 0x14 ; 20
4080: 80 93 25 04 sts 0x0425, r24
4084: 83 e9 ldi r24, 0x93 ; 147
4086: 94 e0 ldi r25, 0x04 ; 4
4088: 9f 93 push r25
408a: 8f 93 push r24
408c: 1f 93 push r17
408e: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
4092: 88 e2 ldi r24, 0x28 ; 40
4094: 80 93 25 04 sts 0x0425, r24
4098: 85 e8 ldi r24, 0x85 ; 133
409a: 94 e0 ldi r25, 0x04 ; 4
409c: 9f 93 push r25
409e: 8f 93 push r24
40a0: 1f 93 push r17
40a2: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
40a6: 6d b7 in r22, 0x3d ; 61
40a8: 7e b7 in r23, 0x3e ; 62
40aa: 6a 5f subi r22, 0xFA ; 250
40ac: 7f 4f sbci r23, 0xFF ; 255
40ae: 0f b6 in r0, 0x3f ; 63
40b0: f8 94 cli
40b2: 7e bf out 0x3e, r23 ; 62
40b4: 0f be out 0x3f, r0 ; 63
40b6: 6d bf out 0x3d, r22 ; 61
40b8: 4c c1 rjmp .+664 ; 0x4352 <Menu+0xc90>
40ba: 84 e1 ldi r24, 0x14 ; 20
40bc: 80 93 25 04 sts 0x0425, r24
40c0: e0 91 2f 04 lds r30, 0x042F
40c4: f0 91 30 04 lds r31, 0x0430
40c8: cf 01 movw r24, r30
40ca: 60 e1 ldi r22, 0x10 ; 16
40cc: 70 e0 ldi r23, 0x00 ; 0
40ce: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
40d2: 97 fd sbrc r25, 7
40d4: 27 c1 rjmp .+590 ; 0x4324 <Menu+0xc62>
40d6: bc 01 movw r22, r24
40d8: 75 95 asr r23
40da: 67 95 ror r22
40dc: 9f 01 movw r18, r30
40de: f7 fd sbrc r31, 7
40e0: 1e c1 rjmp .+572 ; 0x431e <Menu+0xc5c>
40e2: a9 01 movw r20, r18
40e4: 55 95 asr r21
40e6: 47 95 ror r20
40e8: 55 95 asr r21
40ea: 47 95 ror r20
40ec: 55 95 asr r21
40ee: 47 95 ror r20
40f0: 55 95 asr r21
40f2: 47 95 ror r20
40f4: 20 91 fe 03 lds r18, 0x03FE
40f8: 30 91 ff 03 lds r19, 0x03FF
40fc: cf 01 movw r24, r30
40fe: f7 fd sbrc r31, 7
4100: 0c c1 rjmp .+536 ; 0x431a <Menu+0xc58>
4102: 95 95 asr r25
4104: 87 95 ror r24
4106: 95 95 asr r25
4108: 87 95 ror r24
410a: 95 95 asr r25
410c: 87 95 ror r24
410e: 28 1b sub r18, r24
4110: 39 0b sbc r19, r25
4112: 7f 93 push r23
4114: 6f 93 push r22
4116: 5f 93 push r21
4118: 4f 93 push r20
411a: 3f 93 push r19
411c: 2f 93 push r18
411e: 8b e7 ldi r24, 0x7B ; 123
4120: 93 e0 ldi r25, 0x03 ; 3
4122: 9f 93 push r25
4124: 8f 93 push r24
4126: 1f 93 push r17
4128: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
412c: 88 e2 ldi r24, 0x28 ; 40
412e: 80 93 25 04 sts 0x0425, r24
4132: e0 91 31 04 lds r30, 0x0431
4136: f0 91 32 04 lds r31, 0x0432
413a: cf 01 movw r24, r30
413c: 60 e1 ldi r22, 0x10 ; 16
413e: 70 e0 ldi r23, 0x00 ; 0
4140: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
4144: 2d b7 in r18, 0x3d ; 61
4146: 3e b7 in r19, 0x3e ; 62
4148: 27 5f subi r18, 0xF7 ; 247
414a: 3f 4f sbci r19, 0xFF ; 255
414c: 0f b6 in r0, 0x3f ; 63
414e: f8 94 cli
4150: 3e bf out 0x3e, r19 ; 62
4152: 0f be out 0x3f, r0 ; 63
4154: 2d bf out 0x3d, r18 ; 61
4156: 97 fd sbrc r25, 7
4158: de c0 rjmp .+444 ; 0x4316 <Menu+0xc54>
415a: bc 01 movw r22, r24
415c: 75 95 asr r23
415e: 67 95 ror r22
4160: 9f 01 movw r18, r30
4162: f7 fd sbrc r31, 7
4164: d5 c0 rjmp .+426 ; 0x4310 <Menu+0xc4e>
4166: a9 01 movw r20, r18
4168: 55 95 asr r21
416a: 47 95 ror r20
416c: 55 95 asr r21
416e: 47 95 ror r20
4170: 55 95 asr r21
4172: 47 95 ror r20
4174: 55 95 asr r21
4176: 47 95 ror r20
4178: 20 91 00 04 lds r18, 0x0400
417c: 30 91 01 04 lds r19, 0x0401
4180: cf 01 movw r24, r30
4182: f7 fd sbrc r31, 7
4184: c3 c0 rjmp .+390 ; 0x430c <Menu+0xc4a>
4186: 95 95 asr r25
4188: 87 95 ror r24
418a: 95 95 asr r25
418c: 87 95 ror r24
418e: 95 95 asr r25
4190: 87 95 ror r24
4192: 28 1b sub r18, r24
4194: 39 0b sbc r19, r25
4196: 7f 93 push r23
4198: 6f 93 push r22
419a: 5f 93 push r21
419c: 4f 93 push r20
419e: 3f 93 push r19
41a0: 2f 93 push r18
41a2: 89 e6 ldi r24, 0x69 ; 105
41a4: 93 e0 ldi r25, 0x03 ; 3
41a6: 9f 93 push r25
41a8: 8f 93 push r24
41aa: 1f 93 push r17
41ac: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
41b0: 8c e3 ldi r24, 0x3C ; 60
41b2: 80 93 25 04 sts 0x0425, r24
41b6: 20 91 33 04 lds r18, 0x0433
41ba: 30 91 34 04 lds r19, 0x0434
41be: a9 01 movw r20, r18
41c0: 6d b7 in r22, 0x3d ; 61
41c2: 7e b7 in r23, 0x3e ; 62
41c4: 67 5f subi r22, 0xF7 ; 247
41c6: 7f 4f sbci r23, 0xFF ; 255
41c8: 0f b6 in r0, 0x3f ; 63
41ca: f8 94 cli
41cc: 7e bf out 0x3e, r23 ; 62
41ce: 0f be out 0x3f, r0 ; 63
41d0: 6d bf out 0x3d, r22 ; 61
41d2: 37 fd sbrc r19, 7
41d4: 98 c0 rjmp .+304 ; 0x4306 <Menu+0xc44>
41d6: 55 95 asr r21
41d8: 47 95 ror r20
41da: 80 91 02 04 lds r24, 0x0402
41de: 90 91 03 04 lds r25, 0x0403
41e2: 28 1b sub r18, r24
41e4: 39 0b sbc r19, r25
41e6: 5f 93 push r21
41e8: 4f 93 push r20
41ea: 3f 93 push r19
41ec: 2f 93 push r18
41ee: 8a e5 ldi r24, 0x5A ; 90
41f0: 93 e0 ldi r25, 0x03 ; 3
41f2: 9f 93 push r25
41f4: 8f 93 push r24
41f6: 1f 93 push r17
41f8: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
41fc: 8d b7 in r24, 0x3d ; 61
41fe: 9e b7 in r25, 0x3e ; 62
4200: 07 96 adiw r24, 0x07 ; 7
4202: 0f b6 in r0, 0x3f ; 63
4204: f8 94 cli
4206: 9e bf out 0x3e, r25 ; 62
4208: 0f be out 0x3f, r0 ; 63
420a: 8d bf out 0x3d, r24 ; 61
420c: a2 c0 rjmp .+324 ; 0x4352 <Menu+0xc90>
420e: 84 e1 ldi r24, 0x14 ; 20
4210: 80 93 25 04 sts 0x0425, r24
4214: 20 91 2f 04 lds r18, 0x042F
4218: 30 91 30 04 lds r19, 0x0430
421c: c9 01 movw r24, r18
421e: 68 e0 ldi r22, 0x08 ; 8
4220: 70 e0 ldi r23, 0x00 ; 0
4222: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
4226: ac 01 movw r20, r24
4228: 37 fd sbrc r19, 7
422a: 81 c0 rjmp .+258 ; 0x432e <Menu+0xc6c>
422c: 35 95 asr r19
422e: 27 95 ror r18
4230: 35 95 asr r19
4232: 27 95 ror r18
4234: 35 95 asr r19
4236: 27 95 ror r18
4238: 80 91 fe 03 lds r24, 0x03FE
423c: 90 91 ff 03 lds r25, 0x03FF
4240: 82 1b sub r24, r18
4242: 93 0b sbc r25, r19
4244: 5f 93 push r21
4246: 4f 93 push r20
4248: 3f 93 push r19
424a: 2f 93 push r18
424c: 9f 93 push r25
424e: 8f 93 push r24
4250: 8e ea ldi r24, 0xAE ; 174
4252: 93 e0 ldi r25, 0x03 ; 3
4254: 9f 93 push r25
4256: 8f 93 push r24
4258: 1f 93 push r17
425a: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
425e: 88 e2 ldi r24, 0x28 ; 40
4260: 80 93 25 04 sts 0x0425, r24
4264: 20 91 31 04 lds r18, 0x0431
4268: 30 91 32 04 lds r19, 0x0432
426c: c9 01 movw r24, r18
426e: 68 e0 ldi r22, 0x08 ; 8
4270: 70 e0 ldi r23, 0x00 ; 0
4272: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
4276: ac 01 movw r20, r24
4278: 6d b7 in r22, 0x3d ; 61
427a: 7e b7 in r23, 0x3e ; 62
427c: 67 5f subi r22, 0xF7 ; 247
427e: 7f 4f sbci r23, 0xFF ; 255
4280: 0f b6 in r0, 0x3f ; 63
4282: f8 94 cli
4284: 7e bf out 0x3e, r23 ; 62
4286: 0f be out 0x3f, r0 ; 63
4288: 6d bf out 0x3d, r22 ; 61
428a: 37 fd sbrc r19, 7
428c: 4d c0 rjmp .+154 ; 0x4328 <Menu+0xc66>
428e: 35 95 asr r19
4290: 27 95 ror r18
4292: 35 95 asr r19
4294: 27 95 ror r18
4296: 35 95 asr r19
4298: 27 95 ror r18
429a: 80 91 00 04 lds r24, 0x0400
429e: 90 91 01 04 lds r25, 0x0401
42a2: 82 1b sub r24, r18
42a4: 93 0b sbc r25, r19
42a6: 5f 93 push r21
42a8: 4f 93 push r20
42aa: 3f 93 push r19
42ac: 2f 93 push r18
42ae: 9f 93 push r25
42b0: 8f 93 push r24
42b2: 8c e9 ldi r24, 0x9C ; 156
42b4: 93 e0 ldi r25, 0x03 ; 3
42b6: 9f 93 push r25
42b8: 8f 93 push r24
42ba: 1f 93 push r17
42bc: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
42c0: 8c e3 ldi r24, 0x3C ; 60
42c2: 80 93 25 04 sts 0x0425, r24
42c6: 20 91 33 04 lds r18, 0x0433
42ca: 30 91 34 04 lds r19, 0x0434
42ce: 80 91 02 04 lds r24, 0x0402
42d2: 90 91 03 04 lds r25, 0x0403
42d6: a9 01 movw r20, r18
42d8: 48 1b sub r20, r24
42da: 59 0b sbc r21, r25
42dc: 3f 93 push r19
42de: 2f 93 push r18
42e0: 5f 93 push r21
42e2: 4f 93 push r20
42e4: 8d e8 ldi r24, 0x8D ; 141
42e6: 93 e0 ldi r25, 0x03 ; 3
42e8: 9f 93 push r25
42ea: 8f 93 push r24
42ec: 1f 93 push r17
42ee: 0e 94 c3 0e call 0x1d86 ; 0x1d86 <_printf_P>
42f2: 6d b7 in r22, 0x3d ; 61
42f4: 7e b7 in r23, 0x3e ; 62
42f6: 60 5f subi r22, 0xF0 ; 240
42f8: 7f 4f sbci r23, 0xFF ; 255
42fa: 0f b6 in r0, 0x3f ; 63
42fc: f8 94 cli
42fe: 7e bf out 0x3e, r23 ; 62
4300: 0f be out 0x3f, r0 ; 63
4302: 6d bf out 0x3d, r22 ; 61
4304: 26 c0 rjmp .+76 ; 0x4352 <Menu+0xc90>
4306: 4f 5f subi r20, 0xFF ; 255
4308: 5f 4f sbci r21, 0xFF ; 255
430a: 65 cf rjmp .-310 ; 0x41d6 <Menu+0xb14>
430c: 07 96 adiw r24, 0x07 ; 7
430e: 3b cf rjmp .-394 ; 0x4186 <Menu+0xac4>
4310: 21 5f subi r18, 0xF1 ; 241
4312: 3f 4f sbci r19, 0xFF ; 255
4314: 28 cf rjmp .-432 ; 0x4166 <Menu+0xaa4>
4316: 01 96 adiw r24, 0x01 ; 1
4318: 20 cf rjmp .-448 ; 0x415a <Menu+0xa98>
431a: 07 96 adiw r24, 0x07 ; 7
431c: f2 ce rjmp .-540 ; 0x4102 <Menu+0xa40>
431e: 21 5f subi r18, 0xF1 ; 241
4320: 3f 4f sbci r19, 0xFF ; 255
4322: df ce rjmp .-578 ; 0x40e2 <Menu+0xa20>
4324: 01 96 adiw r24, 0x01 ; 1
4326: d7 ce rjmp .-594 ; 0x40d6 <Menu+0xa14>
4328: 29 5f subi r18, 0xF9 ; 249
432a: 3f 4f sbci r19, 0xFF ; 255
432c: b0 cf rjmp .-160 ; 0x428e <Menu+0xbcc>
432e: 29 5f subi r18, 0xF9 ; 249
4330: 3f 4f sbci r19, 0xFF ; 255
4332: 7c cf rjmp .-264 ; 0x422c <Menu+0xb6a>
4334: 4f 5f subi r20, 0xFF ; 255
4336: 5f 4f sbci r21, 0xFF ; 255
4338: 83 ce rjmp .-762 ; 0x4040 <Menu+0x97e>
433a: 29 5f subi r18, 0xF9 ; 249
433c: 3f 4f sbci r19, 0xFF ; 255
433e: 55 ce rjmp .-854 ; 0x3fea <Menu+0x928>
4340: 41 5f subi r20, 0xF1 ; 241
4342: 5f 4f sbci r21, 0xFF ; 255
4344: 43 ce rjmp .-890 ; 0x3fcc <Menu+0x90a>
4346: 29 5f subi r18, 0xF9 ; 249
4348: 3f 4f sbci r19, 0xFF ; 255
434a: 15 ce rjmp .-982 ; 0x3f76 <Menu+0x8b4>
434c: 41 5f subi r20, 0xF1 ; 241
434e: 5f 4f sbci r21, 0xFF ; 255
4350: 03 ce rjmp .-1018 ; 0x3f58 <Menu+0x896>
4352: 10 92 27 04 sts 0x0427, r1
4356: 1f 91 pop r17
4358: 08 95 ret
 
0000435a <i2c_init>:
435a: 10 92 b9 00 sts 0x00B9, r1
435e: 8a e2 ldi r24, 0x2A ; 42
4360: 80 93 b8 00 sts 0x00B8, r24
4364: 08 95 ret
 
00004366 <i2c_start>:
4366: 85 ea ldi r24, 0xA5 ; 165
4368: 80 93 bc 00 sts 0x00BC, r24
436c: 80 e0 ldi r24, 0x00 ; 0
436e: 90 e0 ldi r25, 0x00 ; 0
4370: 08 95 ret
 
00004372 <i2c_stop>:
4372: 84 e9 ldi r24, 0x94 ; 148
4374: 80 93 bc 00 sts 0x00BC, r24
4378: 08 95 ret
 
0000437a <i2c_write_byte>:
437a: 10 92 b9 00 sts 0x00B9, r1
437e: 80 93 bb 00 sts 0x00BB, r24
4382: 85 e8 ldi r24, 0x85 ; 133
4384: 80 93 bc 00 sts 0x00BC, r24
4388: 80 e0 ldi r24, 0x00 ; 0
438a: 90 e0 ldi r25, 0x00 ; 0
438c: 08 95 ret
 
0000438e <i2c_reset>:
438e: 0e 94 b9 21 call 0x4372 ; 0x4372 <i2c_stop>
4392: 10 92 28 04 sts 0x0428, r1
4396: eb eb ldi r30, 0xBB ; 187
4398: f0 e0 ldi r31, 0x00 ; 0
439a: 80 81 ld r24, Z
439c: 10 92 29 04 sts 0x0429, r1
43a0: 80 e8 ldi r24, 0x80 ; 128
43a2: 80 93 bc 00 sts 0x00BC, r24
43a6: 10 92 bd 00 sts 0x00BD, r1
43aa: 10 92 ba 00 sts 0x00BA, r1
43ae: 10 82 st Z, r1
43b0: 10 92 b9 00 sts 0x00B9, r1
43b4: 10 92 b8 00 sts 0x00B8, r1
43b8: 0e 94 ad 21 call 0x435a ; 0x435a <i2c_init>
43bc: 0e 94 b3 21 call 0x4366 ; 0x4366 <i2c_start>
43c0: 80 e0 ldi r24, 0x00 ; 0
43c2: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
43c6: 08 95 ret
 
000043c8 <__vector_26>:
43c8: 1f 92 push r1
43ca: 0f 92 push r0
43cc: 0f b6 in r0, 0x3f ; 63
43ce: 0f 92 push r0
43d0: 11 24 eor r1, r1
43d2: 2f 93 push r18
43d4: 3f 93 push r19
43d6: 4f 93 push r20
43d8: 5f 93 push r21
43da: 6f 93 push r22
43dc: 7f 93 push r23
43de: 8f 93 push r24
43e0: 9f 93 push r25
43e2: af 93 push r26
43e4: bf 93 push r27
43e6: ef 93 push r30
43e8: ff 93 push r31
43ea: 80 91 28 04 lds r24, 0x0428
43ee: 8f 5f subi r24, 0xFF ; 255
43f0: 80 93 28 04 sts 0x0428, r24
43f4: 81 50 subi r24, 0x01 ; 1
43f6: e8 2f mov r30, r24
43f8: f0 e0 ldi r31, 0x00 ; 0
43fa: e7 31 cpi r30, 0x17 ; 23
43fc: f1 05 cpc r31, r1
43fe: 08 f0 brcs .+2 ; 0x4402 <__vector_26+0x3a>
4400: ab c0 rjmp .+342 ; 0x4558 <__vector_26+0x190>
4402: e0 5b subi r30, 0xB0 ; 176
4404: ff 4f sbci r31, 0xFF ; 255
4406: ee 0f add r30, r30
4408: ff 1f adc r31, r31
440a: 05 90 lpm r0, Z+
440c: f4 91 lpm r31, Z
440e: e0 2d mov r30, r0
4410: 09 94 ijmp
4412: 80 91 bb 00 lds r24, 0x00BB
4416: 90 91 2a 04 lds r25, 0x042A
441a: e9 2f mov r30, r25
441c: f0 e0 ldi r31, 0x00 ; 0
441e: eb 56 subi r30, 0x6B ; 107
4420: f8 4f sbci r31, 0xF8 ; 248
4422: 80 83 st Z, r24
4424: 91 30 cpi r25, 0x01 ; 1
4426: 09 f4 brne .+2 ; 0x442a <__vector_26+0x62>
4428: 6e c0 rjmp .+220 ; 0x4506 <__vector_26+0x13e>
442a: 91 30 cpi r25, 0x01 ; 1
442c: 08 f4 brcc .+2 ; 0x4430 <__vector_26+0x68>
442e: 87 c0 rjmp .+270 ; 0x453e <__vector_26+0x176>
4430: 92 30 cpi r25, 0x02 ; 2
4432: 09 f4 brne .+2 ; 0x4436 <__vector_26+0x6e>
4434: 89 c0 rjmp .+274 ; 0x4548 <__vector_26+0x180>
4436: 93 30 cpi r25, 0x03 ; 3
4438: 09 f0 breq .+2 ; 0x443c <__vector_26+0x74>
443a: 8e c0 rjmp .+284 ; 0x4558 <__vector_26+0x190>
443c: 80 91 6e 08 lds r24, 0x086E
4440: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
4444: 89 c0 rjmp .+274 ; 0x4558 <__vector_26+0x190>
4446: 88 e9 ldi r24, 0x98 ; 152
4448: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
444c: 85 c0 rjmp .+266 ; 0x4558 <__vector_26+0x190>
444e: 80 e8 ldi r24, 0x80 ; 128
4450: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
4454: 81 c0 rjmp .+258 ; 0x4558 <__vector_26+0x190>
4456: 0e 94 b9 21 call 0x4372 ; 0x4372 <i2c_stop>
445a: 8a e0 ldi r24, 0x0A ; 10
445c: 90 e0 ldi r25, 0x00 ; 0
445e: 90 93 94 03 sts 0x0394, r25
4462: 80 93 93 03 sts 0x0393, r24
4466: 0e 94 b3 21 call 0x4366 ; 0x4366 <i2c_start>
446a: 76 c0 rjmp .+236 ; 0x4558 <__vector_26+0x190>
446c: 90 91 2a 04 lds r25, 0x042A
4470: 80 91 bb 00 lds r24, 0x00BB
4474: e9 2f mov r30, r25
4476: f0 e0 ldi r31, 0x00 ; 0
4478: eb 56 subi r30, 0x6B ; 107
447a: f8 4f sbci r31, 0xF8 ; 248
447c: 84 83 std Z+4, r24 ; 0x04
447e: 9f 5f subi r25, 0xFF ; 255
4480: 90 93 2a 04 sts 0x042A, r25
4484: 94 30 cpi r25, 0x04 ; 4
4486: 10 f0 brcs .+4 ; 0x448c <__vector_26+0xc4>
4488: 10 92 2a 04 sts 0x042A, r1
448c: 0e 94 b9 21 call 0x4372 ; 0x4372 <i2c_stop>
4490: 8a e0 ldi r24, 0x0A ; 10
4492: 90 e0 ldi r25, 0x00 ; 0
4494: 90 93 94 03 sts 0x0394, r25
4498: 80 93 93 03 sts 0x0393, r24
449c: 10 92 28 04 sts 0x0428, r1
44a0: 5b c0 rjmp .+182 ; 0x4558 <__vector_26+0x190>
44a2: 0e 94 b9 21 call 0x4372 ; 0x4372 <i2c_stop>
44a6: 80 91 29 04 lds r24, 0x0429
44aa: 84 30 cpi r24, 0x04 ; 4
44ac: 08 f0 brcs .+2 ; 0x44b0 <__vector_26+0xe8>
44ae: 51 c0 rjmp .+162 ; 0x4552 <__vector_26+0x18a>
44b0: 10 92 28 04 sts 0x0428, r1
44b4: d8 cf rjmp .-80 ; 0x4466 <__vector_26+0x9e>
44b6: 80 91 1c 03 lds r24, 0x031C
44ba: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
44be: 4c c0 rjmp .+152 ; 0x4558 <__vector_26+0x190>
44c0: 80 91 1a 03 lds r24, 0x031A
44c4: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
44c8: 47 c0 rjmp .+142 ; 0x4558 <__vector_26+0x190>
44ca: 80 91 29 04 lds r24, 0x0429
44ce: 88 0f add r24, r24
44d0: 8e 5a subi r24, 0xAE ; 174
44d2: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
44d6: 40 c0 rjmp .+128 ; 0x4558 <__vector_26+0x190>
44d8: 80 e1 ldi r24, 0x10 ; 16
44da: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
44de: 3c c0 rjmp .+120 ; 0x4558 <__vector_26+0x190>
44e0: 80 91 2a 04 lds r24, 0x042A
44e4: 81 30 cpi r24, 0x01 ; 1
44e6: 79 f0 breq .+30 ; 0x4506 <__vector_26+0x13e>
44e8: 81 30 cpi r24, 0x01 ; 1
44ea: 48 f1 brcs .+82 ; 0x453e <__vector_26+0x176>
44ec: 82 30 cpi r24, 0x02 ; 2
44ee: 61 f1 breq .+88 ; 0x4548 <__vector_26+0x180>
44f0: 83 30 cpi r24, 0x03 ; 3
44f2: 91 f5 brne .+100 ; 0x4558 <__vector_26+0x190>
44f4: a3 cf rjmp .-186 ; 0x443c <__vector_26+0x74>
44f6: 80 91 29 04 lds r24, 0x0429
44fa: 8f 5f subi r24, 0xFF ; 255
44fc: 80 93 29 04 sts 0x0429, r24
4500: 81 50 subi r24, 0x01 ; 1
4502: 81 30 cpi r24, 0x01 ; 1
4504: 89 f7 brne .-30 ; 0x44e8 <__vector_26+0x120>
4506: 80 91 45 08 lds r24, 0x0845
450a: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
450e: 24 c0 rjmp .+72 ; 0x4558 <__vector_26+0x190>
4510: 84 e1 ldi r24, 0x14 ; 20
4512: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
4516: 20 c0 rjmp .+64 ; 0x4558 <__vector_26+0x190>
4518: 80 91 1b 03 lds r24, 0x031B
451c: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
4520: 1b c0 rjmp .+54 ; 0x4558 <__vector_26+0x190>
4522: 82 e1 ldi r24, 0x12 ; 18
4524: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
4528: 17 c0 rjmp .+46 ; 0x4558 <__vector_26+0x190>
452a: 80 91 2a 04 lds r24, 0x042A
452e: 88 0f add r24, r24
4530: 8d 5a subi r24, 0xAD ; 173
4532: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
4536: 10 c0 rjmp .+32 ; 0x4558 <__vector_26+0x190>
4538: 90 91 2a 04 lds r25, 0x042A
453c: 73 cf rjmp .-282 ; 0x4424 <__vector_26+0x5c>
453e: 80 91 38 08 lds r24, 0x0838
4542: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
4546: 08 c0 rjmp .+16 ; 0x4558 <__vector_26+0x190>
4548: 80 91 69 08 lds r24, 0x0869
454c: 0e 94 bd 21 call 0x437a ; 0x437a <i2c_write_byte>
4550: 03 c0 rjmp .+6 ; 0x4558 <__vector_26+0x190>
4552: 10 92 29 04 sts 0x0429, r1
4556: 87 cf rjmp .-242 ; 0x4466 <__vector_26+0x9e>
4558: 80 91 bc 00 lds r24, 0x00BC
455c: 80 68 ori r24, 0x80 ; 128
455e: 80 93 bc 00 sts 0x00BC, r24
4562: ff 91 pop r31
4564: ef 91 pop r30
4566: bf 91 pop r27
4568: af 91 pop r26
456a: 9f 91 pop r25
456c: 8f 91 pop r24
456e: 7f 91 pop r23
4570: 6f 91 pop r22
4572: 5f 91 pop r21
4574: 4f 91 pop r20
4576: 3f 91 pop r19
4578: 2f 91 pop r18
457a: 0f 90 pop r0
457c: 0f be out 0x3f, r0 ; 63
457e: 0f 90 pop r0
4580: 1f 90 pop r1
4582: 18 95 reti
 
00004584 <rc_sum_init>:
4584: 83 ec ldi r24, 0xC3 ; 195
4586: 80 93 81 00 sts 0x0081, r24
458a: ef e6 ldi r30, 0x6F ; 111
458c: f0 e0 ldi r31, 0x00 ; 0
458e: 80 81 ld r24, Z
4590: 80 62 ori r24, 0x20 ; 32
4592: 80 83 st Z, r24
4594: 10 92 34 04 sts 0x0434, r1
4598: 10 92 33 04 sts 0x0433, r1
459c: 10 92 32 04 sts 0x0432, r1
45a0: 10 92 31 04 sts 0x0431, r1
45a4: 10 92 30 04 sts 0x0430, r1
45a8: 10 92 2f 04 sts 0x042F, r1
45ac: 08 95 ret
 
000045ae <__vector_12>:
45ae: 1f 92 push r1
45b0: 0f 92 push r0
45b2: 0f b6 in r0, 0x3f ; 63
45b4: 0f 92 push r0
45b6: 11 24 eor r1, r1
45b8: 0f 93 push r16
45ba: 1f 93 push r17
45bc: 2f 93 push r18
45be: 3f 93 push r19
45c0: 4f 93 push r20
45c2: 5f 93 push r21
45c4: 6f 93 push r22
45c6: 7f 93 push r23
45c8: 8f 93 push r24
45ca: 9f 93 push r25
45cc: af 93 push r26
45ce: bf 93 push r27
45d0: cf 93 push r28
45d2: df 93 push r29
45d4: ef 93 push r30
45d6: ff 93 push r31
45d8: 20 91 86 00 lds r18, 0x0086
45dc: 30 91 87 00 lds r19, 0x0087
45e0: 80 91 2d 04 lds r24, 0x042D
45e4: 90 91 2e 04 lds r25, 0x042E
45e8: 28 1b sub r18, r24
45ea: 39 0b sbc r19, r25
45ec: 80 91 86 00 lds r24, 0x0086
45f0: 90 91 87 00 lds r25, 0x0087
45f4: 90 93 2e 04 sts 0x042E, r25
45f8: 80 93 2d 04 sts 0x042D, r24
45fc: c9 01 movw r24, r18
45fe: 8d 54 subi r24, 0x4D ; 77
4600: 94 40 sbci r25, 0x04 ; 4
4602: 83 5f subi r24, 0xF3 ; 243
4604: 9a 41 sbci r25, 0x1A ; 26
4606: 70 f4 brcc .+28 ; 0x4624 <__vector_12+0x76>
4608: 80 91 2b 04 lds r24, 0x042B
460c: 90 91 2c 04 lds r25, 0x042C
4610: 04 97 sbiw r24, 0x04 ; 4
4612: 0c f0 brlt .+2 ; 0x4616 <__vector_12+0x68>
4614: 7e c0 rjmp .+252 ; 0x4712 <__vector_12+0x164>
4616: 81 e0 ldi r24, 0x01 ; 1
4618: 90 e0 ldi r25, 0x00 ; 0
461a: 90 93 2c 04 sts 0x042C, r25
461e: 80 93 2b 04 sts 0x042B, r24
4622: 9d c0 rjmp .+314 ; 0x475e <__vector_12+0x1b0>
4624: 00 91 2b 04 lds r16, 0x042B
4628: 10 91 2c 04 lds r17, 0x042C
462c: 0a 30 cpi r16, 0x0A ; 10
462e: 11 05 cpc r17, r1
4630: 0c f0 brlt .+2 ; 0x4634 <__vector_12+0x86>
4632: 95 c0 rjmp .+298 ; 0x475e <__vector_12+0x1b0>
4634: c9 01 movw r24, r18
4636: 8b 5f subi r24, 0xFB ; 251
4638: 90 40 sbci r25, 0x00 ; 0
463a: 84 5b subi r24, 0xB4 ; 180
463c: 91 40 sbci r25, 0x01 ; 1
463e: 08 f0 brcs .+2 ; 0x4642 <__vector_12+0x94>
4640: 56 c0 rjmp .+172 ; 0x46ee <__vector_12+0x140>
4642: a9 01 movw r20, r18
4644: 42 5d subi r20, 0xD2 ; 210
4646: 51 40 sbci r21, 0x01 ; 1
4648: e8 01 movw r28, r16
464a: cc 0f add r28, r28
464c: dd 1f adc r29, r29
464e: fe 01 movw r30, r28
4650: eb 55 subi r30, 0x5B ; 91
4652: f8 4f sbci r31, 0xF8 ; 248
4654: 80 81 ld r24, Z
4656: 91 81 ldd r25, Z+1 ; 0x01
4658: 9a 01 movw r18, r20
465a: 28 1b sub r18, r24
465c: 39 0b sbc r19, r25
465e: c9 01 movw r24, r18
4660: 37 fd sbrc r19, 7
4662: 79 c0 rjmp .+242 ; 0x4756 <__vector_12+0x1a8>
4664: 06 97 sbiw r24, 0x06 ; 6
4666: 54 f4 brge .+20 ; 0x467c <__vector_12+0xce>
4668: 80 91 94 04 lds r24, 0x0494
466c: 88 3c cpi r24, 0xC8 ; 200
466e: 08 f0 brcs .+2 ; 0x4672 <__vector_12+0xc4>
4670: 6b c0 rjmp .+214 ; 0x4748 <__vector_12+0x19a>
4672: 80 91 94 04 lds r24, 0x0494
4676: 86 5f subi r24, 0xF6 ; 246
4678: 80 93 94 04 sts 0x0494, r24
467c: fe 01 movw r30, r28
467e: eb 55 subi r30, 0x5B ; 91
4680: f8 4f sbci r31, 0xF8 ; 248
4682: 80 81 ld r24, Z
4684: 91 81 ldd r25, Z+1 ; 0x01
4686: 9c 01 movw r18, r24
4688: 22 0f add r18, r18
468a: 33 1f adc r19, r19
468c: 28 0f add r18, r24
468e: 39 1f adc r19, r25
4690: 24 0f add r18, r20
4692: 35 1f adc r19, r21
4694: 37 fd sbrc r19, 7
4696: 5c c0 rjmp .+184 ; 0x4750 <__vector_12+0x1a2>
4698: 35 95 asr r19
469a: 27 95 ror r18
469c: 35 95 asr r19
469e: 27 95 ror r18
46a0: ca 01 movw r24, r20
46a2: 01 96 adiw r24, 0x01 ; 1
46a4: 82 17 cp r24, r18
46a6: 93 07 cpc r25, r19
46a8: 0c f0 brlt .+2 ; 0x46ac <__vector_12+0xfe>
46aa: 45 c0 rjmp .+138 ; 0x4736 <__vector_12+0x188>
46ac: 21 50 subi r18, 0x01 ; 1
46ae: 30 40 sbci r19, 0x00 ; 0
46b0: 80 91 94 04 lds r24, 0x0494
46b4: 83 3c cpi r24, 0xC3 ; 195
46b6: c8 f1 brcs .+114 ; 0x472a <__vector_12+0x17c>
46b8: fe 01 movw r30, r28
46ba: eb 55 subi r30, 0x5B ; 91
46bc: f8 4f sbci r31, 0xF8 ; 248
46be: 80 81 ld r24, Z
46c0: 91 81 ldd r25, Z+1 ; 0x01
46c2: a9 01 movw r20, r18
46c4: 48 1b sub r20, r24
46c6: 59 0b sbc r21, r25
46c8: ca 01 movw r24, r20
46ca: 63 e0 ldi r22, 0x03 ; 3
46cc: 70 e0 ldi r23, 0x00 ; 0
46ce: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
46d2: cb 01 movw r24, r22
46d4: 88 0f add r24, r24
46d6: 99 1f adc r25, r25
46d8: 86 0f add r24, r22
46da: 97 1f adc r25, r23
46dc: fe 01 movw r30, r28
46de: e5 54 subi r30, 0x45 ; 69
46e0: f8 4f sbci r31, 0xF8 ; 248
46e2: 91 83 std Z+1, r25 ; 0x01
46e4: 80 83 st Z, r24
46e6: cb 55 subi r28, 0x5B ; 91
46e8: d8 4f sbci r29, 0xF8 ; 248
46ea: 39 83 std Y+1, r19 ; 0x01
46ec: 28 83 st Y, r18
46ee: c8 01 movw r24, r16
46f0: 01 96 adiw r24, 0x01 ; 1
46f2: 90 93 2c 04 sts 0x042C, r25
46f6: 80 93 2b 04 sts 0x042B, r24
46fa: 85 30 cpi r24, 0x05 ; 5
46fc: 91 05 cpc r25, r1
46fe: 89 f0 breq .+34 ; 0x4722 <__vector_12+0x174>
4700: 5d 98 cbi 0x0b, 5 ; 11
4702: 86 30 cpi r24, 0x06 ; 6
4704: 91 05 cpc r25, r1
4706: 51 f0 breq .+20 ; 0x471c <__vector_12+0x16e>
4708: 5c 98 cbi 0x0b, 4 ; 11
470a: 07 97 sbiw r24, 0x07 ; 7
470c: 29 f0 breq .+10 ; 0x4718 <__vector_12+0x16a>
470e: 5b 98 cbi 0x0b, 3 ; 11
4710: 26 c0 rjmp .+76 ; 0x475e <__vector_12+0x1b0>
4712: 10 92 79 03 sts 0x0379, r1
4716: 7f cf rjmp .-258 ; 0x4616 <__vector_12+0x68>
4718: 5b 9a sbi 0x0b, 3 ; 11
471a: 21 c0 rjmp .+66 ; 0x475e <__vector_12+0x1b0>
471c: 5c 9a sbi 0x0b, 4 ; 11
471e: 5b 98 cbi 0x0b, 3 ; 11
4720: 1e c0 rjmp .+60 ; 0x475e <__vector_12+0x1b0>
4722: 5d 9a sbi 0x0b, 5 ; 11
4724: 5c 98 cbi 0x0b, 4 ; 11
4726: 5b 98 cbi 0x0b, 3 ; 11
4728: 1a c0 rjmp .+52 ; 0x475e <__vector_12+0x1b0>
472a: fe 01 movw r30, r28
472c: e5 54 subi r30, 0x45 ; 69
472e: f8 4f sbci r31, 0xF8 ; 248
4730: 11 82 std Z+1, r1 ; 0x01
4732: 10 82 st Z, r1
4734: d8 cf rjmp .-80 ; 0x46e6 <__vector_12+0x138>
4736: 41 50 subi r20, 0x01 ; 1
4738: 50 40 sbci r21, 0x00 ; 0
473a: 24 17 cp r18, r20
473c: 35 07 cpc r19, r21
473e: 0c f0 brlt .+2 ; 0x4742 <__vector_12+0x194>
4740: b7 cf rjmp .-146 ; 0x46b0 <__vector_12+0x102>
4742: 2f 5f subi r18, 0xFF ; 255
4744: 3f 4f sbci r19, 0xFF ; 255
4746: b4 cf rjmp .-152 ; 0x46b0 <__vector_12+0x102>
4748: 88 ec ldi r24, 0xC8 ; 200
474a: 80 93 94 04 sts 0x0494, r24
474e: 96 cf rjmp .-212 ; 0x467c <__vector_12+0xce>
4750: 2d 5f subi r18, 0xFD ; 253
4752: 3f 4f sbci r19, 0xFF ; 255
4754: a1 cf rjmp .-190 ; 0x4698 <__vector_12+0xea>
4756: 90 95 com r25
4758: 81 95 neg r24
475a: 9f 4f sbci r25, 0xFF ; 255
475c: 83 cf rjmp .-250 ; 0x4664 <__vector_12+0xb6>
475e: ff 91 pop r31
4760: ef 91 pop r30
4762: df 91 pop r29
4764: cf 91 pop r28
4766: bf 91 pop r27
4768: af 91 pop r26
476a: 9f 91 pop r25
476c: 8f 91 pop r24
476e: 7f 91 pop r23
4770: 6f 91 pop r22
4772: 5f 91 pop r21
4774: 4f 91 pop r20
4776: 3f 91 pop r19
4778: 2f 91 pop r18
477a: 1f 91 pop r17
477c: 0f 91 pop r16
477e: 0f 90 pop r0
4780: 0f be out 0x3f, r0 ; 63
4782: 0f 90 pop r0
4784: 1f 90 pop r1
4786: 18 95 reti
 
00004788 <DefaultStickMapping>:
4788: 81 e0 ldi r24, 0x01 ; 1
478a: 80 93 d7 07 sts 0x07D7, r24
478e: 82 e0 ldi r24, 0x02 ; 2
4790: 80 93 d8 07 sts 0x07D8, r24
4794: 83 e0 ldi r24, 0x03 ; 3
4796: 80 93 d9 07 sts 0x07D9, r24
479a: 84 e0 ldi r24, 0x04 ; 4
479c: 80 93 da 07 sts 0x07DA, r24
47a0: 85 e0 ldi r24, 0x05 ; 5
47a2: 80 93 db 07 sts 0x07DB, r24
47a6: 86 e0 ldi r24, 0x06 ; 6
47a8: 80 93 dc 07 sts 0x07DC, r24
47ac: 87 e0 ldi r24, 0x07 ; 7
47ae: 80 93 dd 07 sts 0x07DD, r24
47b2: 88 e0 ldi r24, 0x08 ; 8
47b4: 80 93 de 07 sts 0x07DE, r24
47b8: 08 95 ret
 
000047ba <MotorSmoothing>:
47ba: 68 17 cp r22, r24
47bc: 79 07 cpc r23, r25
47be: 44 f4 brge .+16 ; 0x47d0 <MotorSmoothing+0x16>
47c0: 68 0f add r22, r24
47c2: 79 1f adc r23, r25
47c4: 77 fd sbrc r23, 7
47c6: 09 c0 rjmp .+18 ; 0x47da <MotorSmoothing+0x20>
47c8: cb 01 movw r24, r22
47ca: 95 95 asr r25
47cc: 87 95 ror r24
47ce: 08 95 ret
47d0: 68 1b sub r22, r24
47d2: 79 0b sbc r23, r25
47d4: 86 1b sub r24, r22
47d6: 97 0b sbc r25, r23
47d8: 08 95 ret
47da: 6f 5f subi r22, 0xFF ; 255
47dc: 7f 4f sbci r23, 0xFF ; 255
47de: cb 01 movw r24, r22
47e0: 95 95 asr r25
47e2: 87 95 ror r24
47e4: 08 95 ret
 
000047e6 <Mittelwert>:
47e6: 2f 92 push r2
47e8: 3f 92 push r3
47ea: 4f 92 push r4
47ec: 5f 92 push r5
47ee: 6f 92 push r6
47f0: 7f 92 push r7
47f2: 8f 92 push r8
47f4: 9f 92 push r9
47f6: af 92 push r10
47f8: bf 92 push r11
47fa: cf 92 push r12
47fc: df 92 push r13
47fe: ef 92 push r14
4800: ff 92 push r15
4802: 0f 93 push r16
4804: 1f 93 push r17
4806: cf 93 push r28
4808: df 93 push r29
480a: cd b7 in r28, 0x3d ; 61
480c: de b7 in r29, 0x3e ; 62
480e: 6b 97 sbiw r28, 0x1b ; 27
4810: 0f b6 in r0, 0x3f ; 63
4812: f8 94 cli
4814: de bf out 0x3e, r29 ; 62
4816: 0f be out 0x3f, r0 ; 63
4818: cd bf out 0x3d, r28 ; 61
481a: 80 91 02 04 lds r24, 0x0402
481e: 90 91 03 04 lds r25, 0x0403
4822: 40 90 33 04 lds r4, 0x0433
4826: 50 90 34 04 lds r5, 0x0434
482a: 48 1a sub r4, r24
482c: 59 0a sbc r5, r25
482e: 50 92 78 08 sts 0x0878, r5
4832: 40 92 77 08 sts 0x0877, r4
4836: 20 91 f8 03 lds r18, 0x03F8
483a: 30 91 f9 03 lds r19, 0x03F9
483e: 37 ff sbrs r19, 7
4840: 02 c0 rjmp .+4 ; 0x4846 <Mittelwert+0x60>
4842: 0c 94 11 2c jmp 0x5822 ; 0x5822 <Mittelwert+0x103c>
4846: 35 95 asr r19
4848: 27 95 ror r18
484a: 35 95 asr r19
484c: 27 95 ror r18
484e: 35 95 asr r19
4850: 27 95 ror r18
4852: 3b 8f std Y+27, r19 ; 0x1b
4854: 2a 8f std Y+26, r18 ; 0x1a
4856: 20 91 fa 03 lds r18, 0x03FA
485a: 30 91 fb 03 lds r19, 0x03FB
485e: 37 fd sbrc r19, 7
4860: dd c7 rjmp .+4026 ; 0x581c <Mittelwert+0x1036>
4862: 35 95 asr r19
4864: 27 95 ror r18
4866: 35 95 asr r19
4868: 27 95 ror r18
486a: 35 95 asr r19
486c: 27 95 ror r18
486e: 3c 8b std Y+20, r19 ; 0x14
4870: 2b 8b std Y+19, r18 ; 0x13
4872: 2a 8d ldd r18, Y+26 ; 0x1a
4874: 3b 8d ldd r19, Y+27 ; 0x1b
4876: 30 93 57 08 sts 0x0857, r19
487a: 20 93 56 08 sts 0x0856, r18
487e: 8b 89 ldd r24, Y+19 ; 0x13
4880: 9c 89 ldd r25, Y+20 ; 0x14
4882: 90 93 4b 08 sts 0x084B, r25
4886: 80 93 4a 08 sts 0x084A, r24
488a: 60 91 06 04 lds r22, 0x0406
488e: 70 91 07 04 lds r23, 0x0407
4892: 88 27 eor r24, r24
4894: 77 fd sbrc r23, 7
4896: 80 95 com r24
4898: 98 2f mov r25, r24
489a: 26 e0 ldi r18, 0x06 ; 6
489c: 30 e0 ldi r19, 0x00 ; 0
489e: 40 e0 ldi r20, 0x00 ; 0
48a0: 50 e0 ldi r21, 0x00 ; 0
48a2: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
48a6: 7b 01 movw r14, r22
48a8: 8c 01 movw r16, r24
48aa: 20 91 72 08 lds r18, 0x0872
48ae: 30 91 73 08 lds r19, 0x0873
48b2: 44 27 eor r20, r20
48b4: 37 fd sbrc r19, 7
48b6: 40 95 com r20
48b8: 54 2f mov r21, r20
48ba: ca 01 movw r24, r20
48bc: b9 01 movw r22, r18
48be: 66 0f add r22, r22
48c0: 77 1f adc r23, r23
48c2: 88 1f adc r24, r24
48c4: 99 1f adc r25, r25
48c6: 62 0f add r22, r18
48c8: 73 1f adc r23, r19
48ca: 84 1f adc r24, r20
48cc: 95 1f adc r25, r21
48ce: 6e 0d add r22, r14
48d0: 7f 1d adc r23, r15
48d2: 80 1f adc r24, r16
48d4: 91 1f adc r25, r17
48d6: 24 e0 ldi r18, 0x04 ; 4
48d8: 30 e0 ldi r19, 0x00 ; 0
48da: 40 e0 ldi r20, 0x00 ; 0
48dc: 50 e0 ldi r21, 0x00 ; 0
48de: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
48e2: 30 93 73 08 sts 0x0873, r19
48e6: 20 93 72 08 sts 0x0872, r18
48ea: 60 91 04 04 lds r22, 0x0404
48ee: 70 91 05 04 lds r23, 0x0405
48f2: 88 27 eor r24, r24
48f4: 77 fd sbrc r23, 7
48f6: 80 95 com r24
48f8: 98 2f mov r25, r24
48fa: 26 e0 ldi r18, 0x06 ; 6
48fc: 30 e0 ldi r19, 0x00 ; 0
48fe: 40 e0 ldi r20, 0x00 ; 0
4900: 50 e0 ldi r21, 0x00 ; 0
4902: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
4906: 7b 01 movw r14, r22
4908: 8c 01 movw r16, r24
490a: 20 91 82 08 lds r18, 0x0882
490e: 30 91 83 08 lds r19, 0x0883
4912: 44 27 eor r20, r20
4914: 37 fd sbrc r19, 7
4916: 40 95 com r20
4918: 54 2f mov r21, r20
491a: ca 01 movw r24, r20
491c: b9 01 movw r22, r18
491e: 66 0f add r22, r22
4920: 77 1f adc r23, r23
4922: 88 1f adc r24, r24
4924: 99 1f adc r25, r25
4926: 62 0f add r22, r18
4928: 73 1f adc r23, r19
492a: 84 1f adc r24, r20
492c: 95 1f adc r25, r21
492e: 6e 0d add r22, r14
4930: 7f 1d adc r23, r15
4932: 80 1f adc r24, r16
4934: 91 1f adc r25, r17
4936: 24 e0 ldi r18, 0x04 ; 4
4938: 30 e0 ldi r19, 0x00 ; 0
493a: 40 e0 ldi r20, 0x00 ; 0
493c: 50 e0 ldi r21, 0x00 ; 0
493e: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
4942: 30 93 83 08 sts 0x0883, r19
4946: 20 93 82 08 sts 0x0882, r18
494a: e0 90 08 04 lds r14, 0x0408
494e: f0 90 09 04 lds r15, 0x0409
4952: 20 91 54 08 lds r18, 0x0854
4956: 30 91 55 08 lds r19, 0x0855
495a: 44 27 eor r20, r20
495c: 37 fd sbrc r19, 7
495e: 40 95 com r20
4960: 54 2f mov r21, r20
4962: ca 01 movw r24, r20
4964: b9 01 movw r22, r18
4966: 66 0f add r22, r22
4968: 77 1f adc r23, r23
496a: 88 1f adc r24, r24
496c: 99 1f adc r25, r25
496e: 62 0f add r22, r18
4970: 73 1f adc r23, r19
4972: 84 1f adc r24, r20
4974: 95 1f adc r25, r21
4976: 00 27 eor r16, r16
4978: f7 fc sbrc r15, 7
497a: 00 95 com r16
497c: 10 2f mov r17, r16
497e: 6e 0d add r22, r14
4980: 7f 1d adc r23, r15
4982: 80 1f adc r24, r16
4984: 91 1f adc r25, r17
4986: 24 e0 ldi r18, 0x04 ; 4
4988: 30 e0 ldi r19, 0x00 ; 0
498a: 40 e0 ldi r20, 0x00 ; 0
498c: 50 e0 ldi r21, 0x00 ; 0
498e: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
4992: 30 93 55 08 sts 0x0855, r19
4996: 20 93 54 08 sts 0x0854, r18
499a: 20 91 06 04 lds r18, 0x0406
499e: 30 91 07 04 lds r19, 0x0407
49a2: c9 01 movw r24, r18
49a4: 88 0f add r24, r24
49a6: 99 1f adc r25, r25
49a8: 82 0f add r24, r18
49aa: 93 1f adc r25, r19
49ac: 88 0f add r24, r24
49ae: 99 1f adc r25, r25
49b0: aa 27 eor r26, r26
49b2: 97 fd sbrc r25, 7
49b4: a0 95 com r26
49b6: ba 2f mov r27, r26
49b8: 20 91 55 04 lds r18, 0x0455
49bc: 30 91 56 04 lds r19, 0x0456
49c0: 40 91 57 04 lds r20, 0x0457
49c4: 50 91 58 04 lds r21, 0x0458
49c8: 28 0f add r18, r24
49ca: 39 1f adc r19, r25
49cc: 4a 1f adc r20, r26
49ce: 5b 1f adc r21, r27
49d0: 20 93 55 04 sts 0x0455, r18
49d4: 30 93 56 04 sts 0x0456, r19
49d8: 40 93 57 04 sts 0x0457, r20
49dc: 50 93 58 04 sts 0x0458, r21
49e0: 20 91 04 04 lds r18, 0x0404
49e4: 30 91 05 04 lds r19, 0x0405
49e8: c9 01 movw r24, r18
49ea: 88 0f add r24, r24
49ec: 99 1f adc r25, r25
49ee: 82 0f add r24, r18
49f0: 93 1f adc r25, r19
49f2: 88 0f add r24, r24
49f4: 99 1f adc r25, r25
49f6: aa 27 eor r26, r26
49f8: 97 fd sbrc r25, 7
49fa: a0 95 com r26
49fc: ba 2f mov r27, r26
49fe: 20 91 59 04 lds r18, 0x0459
4a02: 30 91 5a 04 lds r19, 0x045A
4a06: 40 91 5b 04 lds r20, 0x045B
4a0a: 50 91 5c 04 lds r21, 0x045C
4a0e: 28 0f add r18, r24
4a10: 39 1f adc r19, r25
4a12: 4a 1f adc r20, r26
4a14: 5b 1f adc r21, r27
4a16: 20 93 59 04 sts 0x0459, r18
4a1a: 30 93 5a 04 sts 0x045A, r19
4a1e: 40 93 5b 04 sts 0x045B, r20
4a22: 50 93 5c 04 sts 0x045C, r21
4a26: 20 91 06 04 lds r18, 0x0406
4a2a: 30 91 07 04 lds r19, 0x0407
4a2e: 80 91 5f 08 lds r24, 0x085F
4a32: 90 91 60 08 lds r25, 0x0860
4a36: 82 0f add r24, r18
4a38: 93 1f adc r25, r19
4a3a: 90 93 60 08 sts 0x0860, r25
4a3e: 80 93 5f 08 sts 0x085F, r24
4a42: 20 91 04 04 lds r18, 0x0404
4a46: 30 91 05 04 lds r19, 0x0405
4a4a: 80 91 7a 08 lds r24, 0x087A
4a4e: 90 91 7b 08 lds r25, 0x087B
4a52: 82 0f add r24, r18
4a54: 93 1f adc r25, r19
4a56: 90 93 7b 08 sts 0x087B, r25
4a5a: 80 93 7a 08 sts 0x087A, r24
4a5e: 80 91 3d 04 lds r24, 0x043D
4a62: 90 91 3e 04 lds r25, 0x043E
4a66: 01 96 adiw r24, 0x01 ; 1
4a68: 90 93 3e 04 sts 0x043E, r25
4a6c: 80 93 3d 04 sts 0x043D, r24
4a70: e0 90 85 07 lds r14, 0x0785
4a74: f0 90 86 07 lds r15, 0x0786
4a78: a0 90 3f 04 lds r10, 0x043F
4a7c: b0 90 40 04 lds r11, 0x0440
4a80: c0 90 41 04 lds r12, 0x0441
4a84: d0 90 42 04 lds r13, 0x0442
4a88: 60 91 5d 04 lds r22, 0x045D
4a8c: 70 91 5e 04 lds r23, 0x045E
4a90: 80 91 5f 04 lds r24, 0x045F
4a94: 90 91 60 04 lds r25, 0x0460
4a98: 0e 94 dc 54 call 0xa9b8 ; 0xa9b8 <__floatsisf>
4a9c: 3b 01 movw r6, r22
4a9e: 4c 01 movw r8, r24
4aa0: 00 27 eor r16, r16
4aa2: f7 fc sbrc r15, 7
4aa4: 00 95 com r16
4aa6: 10 2f mov r17, r16
4aa8: c8 01 movw r24, r16
4aaa: b7 01 movw r22, r14
4aac: 0e 94 dc 54 call 0xa9b8 ; 0xa9b8 <__floatsisf>
4ab0: a6 01 movw r20, r12
4ab2: 95 01 movw r18, r10
4ab4: 0e 94 44 54 call 0xa888 ; 0xa888 <__subsf3>
4ab8: 9b 01 movw r18, r22
4aba: ac 01 movw r20, r24
4abc: c4 01 movw r24, r8
4abe: b3 01 movw r22, r6
4ac0: 0e 94 45 54 call 0xa88a ; 0xa88a <__addsf3>
4ac4: 0e 94 a9 54 call 0xa952 ; 0xa952 <__fixsfsi>
4ac8: 60 93 5d 04 sts 0x045D, r22
4acc: 70 93 5e 04 sts 0x045E, r23
4ad0: 80 93 5f 04 sts 0x045F, r24
4ad4: 90 93 60 04 sts 0x0460, r25
4ad8: 8f ec ldi r24, 0xCF ; 207
4ada: 80 93 7a 00 sts 0x007A, r24
4ade: 10 92 1d 03 sts 0x031D, r1
4ae2: 80 91 6d 04 lds r24, 0x046D
4ae6: 90 91 6e 04 lds r25, 0x046E
4aea: a0 91 6f 04 lds r26, 0x046F
4aee: b0 91 70 04 lds r27, 0x0470
4af2: 8f 87 std Y+15, r24 ; 0x0f
4af4: 98 8b std Y+16, r25 ; 0x10
4af6: a9 8b std Y+17, r26 ; 0x11
4af8: ba 8b std Y+18, r27 ; 0x12
4afa: 80 91 65 04 lds r24, 0x0465
4afe: 90 91 66 04 lds r25, 0x0466
4b02: a0 91 67 04 lds r26, 0x0467
4b06: b0 91 68 04 lds r27, 0x0468
4b0a: 8b 87 std Y+11, r24 ; 0x0b
4b0c: 9c 87 std Y+12, r25 ; 0x0c
4b0e: ad 87 std Y+13, r26 ; 0x0d
4b10: be 87 std Y+14, r27 ; 0x0e
4b12: 32 01 movw r6, r4
4b14: 88 24 eor r8, r8
4b16: 77 fc sbrc r7, 7
4b18: 80 94 com r8
4b1a: 98 2c mov r9, r8
4b1c: 80 91 75 04 lds r24, 0x0475
4b20: 90 91 76 04 lds r25, 0x0476
4b24: a0 91 77 04 lds r26, 0x0477
4b28: b0 91 78 04 lds r27, 0x0478
4b2c: 86 0d add r24, r6
4b2e: 97 1d adc r25, r7
4b30: a8 1d adc r26, r8
4b32: b9 1d adc r27, r9
4b34: 8e 8b std Y+22, r24 ; 0x16
4b36: 9f 8b std Y+23, r25 ; 0x17
4b38: a8 8f std Y+24, r26 ; 0x18
4b3a: b9 8f std Y+25, r27 ; 0x19
4b3c: 80 93 75 04 sts 0x0475, r24
4b40: 90 93 76 04 sts 0x0476, r25
4b44: a0 93 77 04 sts 0x0477, r26
4b48: b0 93 78 04 sts 0x0478, r27
4b4c: 20 90 7e 08 lds r2, 0x087E
4b50: 30 90 7f 08 lds r3, 0x087F
4b54: 40 90 80 08 lds r4, 0x0880
4b58: 50 90 81 08 lds r5, 0x0881
4b5c: 26 0c add r2, r6
4b5e: 37 1c adc r3, r7
4b60: 48 1c adc r4, r8
4b62: 59 1c adc r5, r9
4b64: 20 92 7e 08 sts 0x087E, r2
4b68: 30 92 7f 08 sts 0x087F, r3
4b6c: 40 92 80 08 sts 0x0880, r4
4b70: 50 92 81 08 sts 0x0881, r5
4b74: 90 91 a6 04 lds r25, 0x04A6
4b78: 9a 87 std Y+10, r25 ; 0x0a
4b7a: 99 23 and r25, r25
4b7c: 29 f4 brne .+10 ; 0x4b88 <Mittelwert+0x3a2>
4b7e: 80 91 a7 04 lds r24, 0x04A7
4b82: 88 23 and r24, r24
4b84: 09 f4 brne .+2 ; 0x4b88 <Mittelwert+0x3a2>
4b86: 74 c4 rjmp .+2280 ; 0x5470 <Mittelwert+0xc8a>
4b88: a0 91 df 07 lds r26, 0x07DF
4b8c: a9 83 std Y+1, r26 ; 0x01
4b8e: 10 92 d6 07 sts 0x07D6, r1
4b92: 10 92 d5 07 sts 0x07D5, r1
4b96: 10 92 d2 07 sts 0x07D2, r1
4b9a: 10 92 d1 07 sts 0x07D1, r1
4b9e: 10 92 18 05 sts 0x0518, r1
4ba2: 10 92 19 05 sts 0x0519, r1
4ba6: 10 92 1a 05 sts 0x051A, r1
4baa: 10 92 1b 05 sts 0x051B, r1
4bae: 10 92 1c 05 sts 0x051C, r1
4bb2: 10 92 1d 05 sts 0x051D, r1
4bb6: 10 92 1e 05 sts 0x051E, r1
4bba: 10 92 1f 05 sts 0x051F, r1
4bbe: b0 91 af 03 lds r27, 0x03AF
4bc2: bd 8b std Y+21, r27 ; 0x15
4bc4: e0 90 1c 05 lds r14, 0x051C
4bc8: f0 90 1d 05 lds r15, 0x051D
4bcc: 00 91 1e 05 lds r16, 0x051E
4bd0: 10 91 1f 05 lds r17, 0x051F
4bd4: a0 90 18 05 lds r10, 0x0518
4bd8: b0 90 19 05 lds r11, 0x0519
4bdc: c0 90 1a 05 lds r12, 0x051A
4be0: d0 90 1b 05 lds r13, 0x051B
4be4: c6 01 movw r24, r12
4be6: b5 01 movw r22, r10
4be8: 24 e6 ldi r18, 0x64 ; 100
4bea: 30 e0 ldi r19, 0x00 ; 0
4bec: 40 e0 ldi r20, 0x00 ; 0
4bee: 50 e0 ldi r21, 0x00 ; 0
4bf0: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
4bf4: 47 01 movw r8, r14
4bf6: 82 1a sub r8, r18
4bf8: 93 0a sbc r9, r19
4bfa: 90 92 44 08 sts 0x0844, r9
4bfe: 80 92 43 08 sts 0x0843, r8
4c02: c8 01 movw r24, r16
4c04: b7 01 movw r22, r14
4c06: 24 e6 ldi r18, 0x64 ; 100
4c08: 30 e0 ldi r19, 0x00 ; 0
4c0a: 40 e0 ldi r20, 0x00 ; 0
4c0c: 50 e0 ldi r21, 0x00 ; 0
4c0e: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
4c12: 39 01 movw r6, r18
4c14: 6a 18 sub r6, r10
4c16: 7b 08 sbc r7, r11
4c18: 70 92 3a 08 sts 0x083A, r7
4c1c: 60 92 39 08 sts 0x0839, r6
4c20: 60 91 b3 03 lds r22, 0x03B3
4c24: 70 91 b4 03 lds r23, 0x03B4
4c28: 80 91 b5 03 lds r24, 0x03B5
4c2c: 90 91 b6 03 lds r25, 0x03B6
4c30: 28 e6 ldi r18, 0x68 ; 104
4c32: 31 e0 ldi r19, 0x01 ; 1
4c34: 40 e0 ldi r20, 0x00 ; 0
4c36: 50 e0 ldi r21, 0x00 ; 0
4c38: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
4c3c: 26 16 cp r2, r22
4c3e: 37 06 cpc r3, r23
4c40: 48 06 cpc r4, r24
4c42: 59 06 cpc r5, r25
4c44: 64 f0 brlt .+24 ; 0x4c5e <Mittelwert+0x478>
4c46: 26 1a sub r2, r22
4c48: 37 0a sbc r3, r23
4c4a: 48 0a sbc r4, r24
4c4c: 59 0a sbc r5, r25
4c4e: 20 92 7e 08 sts 0x087E, r2
4c52: 30 92 7f 08 sts 0x087F, r3
4c56: 40 92 80 08 sts 0x0880, r4
4c5a: 50 92 81 08 sts 0x0881, r5
4c5e: 57 fc sbrc r5, 7
4c60: 56 c5 rjmp .+2732 ; 0x570e <Mittelwert+0xf28>
4c62: 6b 89 ldd r22, Y+19 ; 0x13
4c64: 7c 89 ldd r23, Y+20 ; 0x14
4c66: 68 0d add r22, r8
4c68: 79 1d adc r23, r9
4c6a: 9b 01 movw r18, r22
4c6c: 44 27 eor r20, r20
4c6e: 37 fd sbrc r19, 7
4c70: 40 95 com r20
4c72: 54 2f mov r21, r20
4c74: 80 91 71 04 lds r24, 0x0471
4c78: 90 91 72 04 lds r25, 0x0472
4c7c: a0 91 73 04 lds r26, 0x0473
4c80: b0 91 74 04 lds r27, 0x0474
4c84: 82 0f add r24, r18
4c86: 93 1f adc r25, r19
4c88: a4 1f adc r26, r20
4c8a: b5 1f adc r27, r21
4c8c: 80 93 71 04 sts 0x0471, r24
4c90: 90 93 72 04 sts 0x0472, r25
4c94: a0 93 73 04 sts 0x0473, r26
4c98: b0 93 74 04 sts 0x0474, r27
4c9c: 80 91 a2 04 lds r24, 0x04A2
4ca0: 90 91 a3 04 lds r25, 0x04A3
4ca4: 68 1b sub r22, r24
4ca6: 79 0b sbc r23, r25
4ca8: 7b 01 movw r14, r22
4caa: 00 27 eor r16, r16
4cac: f7 fc sbrc r15, 7
4cae: 00 95 com r16
4cb0: 10 2f mov r17, r16
4cb2: 8f 85 ldd r24, Y+15 ; 0x0f
4cb4: 98 89 ldd r25, Y+16 ; 0x10
4cb6: a9 89 ldd r26, Y+17 ; 0x11
4cb8: ba 89 ldd r27, Y+18 ; 0x12
4cba: e8 0e add r14, r24
4cbc: f9 1e adc r15, r25
4cbe: 0a 1f adc r16, r26
4cc0: 1b 1f adc r17, r27
4cc2: e0 92 6d 04 sts 0x046D, r14
4cc6: f0 92 6e 04 sts 0x046E, r15
4cca: 00 93 6f 04 sts 0x046F, r16
4cce: 10 93 70 04 sts 0x0470, r17
4cd2: 20 91 9b 03 lds r18, 0x039B
4cd6: 30 91 9c 03 lds r19, 0x039C
4cda: 40 91 9d 03 lds r20, 0x039D
4cde: 50 91 9e 03 lds r21, 0x039E
4ce2: 2e 15 cp r18, r14
4ce4: 3f 05 cpc r19, r15
4ce6: 40 07 cpc r20, r16
4ce8: 51 07 cpc r21, r17
4cea: d4 f4 brge .+52 ; 0x4d20 <Mittelwert+0x53a>
4cec: 78 ea ldi r23, 0xA8 ; 168
4cee: e7 2e mov r14, r23
4cf0: 71 e6 ldi r23, 0x61 ; 97
4cf2: f7 2e mov r15, r23
4cf4: 01 2d mov r16, r1
4cf6: 11 2d mov r17, r1
4cf8: e2 1a sub r14, r18
4cfa: f3 0a sbc r15, r19
4cfc: 04 0b sbc r16, r20
4cfe: 15 0b sbc r17, r21
4d00: e0 92 6d 04 sts 0x046D, r14
4d04: f0 92 6e 04 sts 0x046E, r15
4d08: 00 93 6f 04 sts 0x046F, r16
4d0c: 10 93 70 04 sts 0x0470, r17
4d10: e0 92 71 04 sts 0x0471, r14
4d14: f0 92 72 04 sts 0x0472, r15
4d18: 00 93 73 04 sts 0x0473, r16
4d1c: 10 93 74 04 sts 0x0474, r17
4d20: 88 27 eor r24, r24
4d22: 99 27 eor r25, r25
4d24: dc 01 movw r26, r24
4d26: 82 1b sub r24, r18
4d28: 93 0b sbc r25, r19
4d2a: a4 0b sbc r26, r20
4d2c: b5 0b sbc r27, r21
4d2e: e0 90 6d 04 lds r14, 0x046D
4d32: f0 90 6e 04 lds r15, 0x046E
4d36: 00 91 6f 04 lds r16, 0x046F
4d3a: 10 91 70 04 lds r17, 0x0470
4d3e: e8 16 cp r14, r24
4d40: f9 06 cpc r15, r25
4d42: 0a 07 cpc r16, r26
4d44: 1b 07 cpc r17, r27
4d46: e4 f4 brge .+56 ; 0x4d80 <Mittelwert+0x59a>
4d48: 68 e5 ldi r22, 0x58 ; 88
4d4a: e6 2e mov r14, r22
4d4c: 6e e9 ldi r22, 0x9E ; 158
4d4e: f6 2e mov r15, r22
4d50: 6f ef ldi r22, 0xFF ; 255
4d52: 06 2f mov r16, r22
4d54: 6f ef ldi r22, 0xFF ; 255
4d56: 16 2f mov r17, r22
4d58: e2 0e add r14, r18
4d5a: f3 1e adc r15, r19
4d5c: 04 1f adc r16, r20
4d5e: 15 1f adc r17, r21
4d60: e0 92 6d 04 sts 0x046D, r14
4d64: f0 92 6e 04 sts 0x046E, r15
4d68: 00 93 6f 04 sts 0x046F, r16
4d6c: 10 93 70 04 sts 0x0470, r17
4d70: e0 92 71 04 sts 0x0471, r14
4d74: f0 92 72 04 sts 0x0472, r15
4d78: 00 93 73 04 sts 0x0473, r16
4d7c: 10 93 74 04 sts 0x0474, r17
4d80: 6a 8d ldd r22, Y+26 ; 0x1a
4d82: 7b 8d ldd r23, Y+27 ; 0x1b
4d84: 66 0d add r22, r6
4d86: 77 1d adc r23, r7
4d88: 9b 01 movw r18, r22
4d8a: 44 27 eor r20, r20
4d8c: 37 fd sbrc r19, 7
4d8e: 40 95 com r20
4d90: 54 2f mov r21, r20
4d92: 80 91 69 04 lds r24, 0x0469
4d96: 90 91 6a 04 lds r25, 0x046A
4d9a: a0 91 6b 04 lds r26, 0x046B
4d9e: b0 91 6c 04 lds r27, 0x046C
4da2: 82 0f add r24, r18
4da4: 93 1f adc r25, r19
4da6: a4 1f adc r26, r20
4da8: b5 1f adc r27, r21
4daa: 80 93 69 04 sts 0x0469, r24
4dae: 90 93 6a 04 sts 0x046A, r25
4db2: a0 93 6b 04 sts 0x046B, r26
4db6: b0 93 6c 04 sts 0x046C, r27
4dba: 80 91 a4 04 lds r24, 0x04A4
4dbe: 90 91 a5 04 lds r25, 0x04A5
4dc2: 68 1b sub r22, r24
4dc4: 79 0b sbc r23, r25
4dc6: 9b 01 movw r18, r22
4dc8: 44 27 eor r20, r20
4dca: 37 fd sbrc r19, 7
4dcc: 40 95 com r20
4dce: 54 2f mov r21, r20
4dd0: 8b 85 ldd r24, Y+11 ; 0x0b
4dd2: 9c 85 ldd r25, Y+12 ; 0x0c
4dd4: ad 85 ldd r26, Y+13 ; 0x0d
4dd6: be 85 ldd r27, Y+14 ; 0x0e
4dd8: 28 0f add r18, r24
4dda: 39 1f adc r19, r25
4ddc: 4a 1f adc r20, r26
4dde: 5b 1f adc r21, r27
4de0: 20 93 65 04 sts 0x0465, r18
4de4: 30 93 66 04 sts 0x0466, r19
4de8: 40 93 67 04 sts 0x0467, r20
4dec: 50 93 68 04 sts 0x0468, r21
4df0: a0 90 97 03 lds r10, 0x0397
4df4: b0 90 98 03 lds r11, 0x0398
4df8: c0 90 99 03 lds r12, 0x0399
4dfc: d0 90 9a 03 lds r13, 0x039A
4e00: a2 16 cp r10, r18
4e02: b3 06 cpc r11, r19
4e04: c4 06 cpc r12, r20
4e06: d5 06 cpc r13, r21
4e08: c4 f4 brge .+48 ; 0x4e3a <Mittelwert+0x654>
4e0a: 28 ea ldi r18, 0xA8 ; 168
4e0c: 31 e6 ldi r19, 0x61 ; 97
4e0e: 40 e0 ldi r20, 0x00 ; 0
4e10: 50 e0 ldi r21, 0x00 ; 0
4e12: 2a 19 sub r18, r10
4e14: 3b 09 sbc r19, r11
4e16: 4c 09 sbc r20, r12
4e18: 5d 09 sbc r21, r13
4e1a: 20 93 65 04 sts 0x0465, r18
4e1e: 30 93 66 04 sts 0x0466, r19
4e22: 40 93 67 04 sts 0x0467, r20
4e26: 50 93 68 04 sts 0x0468, r21
4e2a: 20 93 69 04 sts 0x0469, r18
4e2e: 30 93 6a 04 sts 0x046A, r19
4e32: 40 93 6b 04 sts 0x046B, r20
4e36: 50 93 6c 04 sts 0x046C, r21
4e3a: 88 27 eor r24, r24
4e3c: 99 27 eor r25, r25
4e3e: dc 01 movw r26, r24
4e40: 8a 19 sub r24, r10
4e42: 9b 09 sbc r25, r11
4e44: ac 09 sbc r26, r12
4e46: bd 09 sbc r27, r13
4e48: 20 91 65 04 lds r18, 0x0465
4e4c: 30 91 66 04 lds r19, 0x0466
4e50: 40 91 67 04 lds r20, 0x0467
4e54: 50 91 68 04 lds r21, 0x0468
4e58: 28 17 cp r18, r24
4e5a: 39 07 cpc r19, r25
4e5c: 4a 07 cpc r20, r26
4e5e: 5b 07 cpc r21, r27
4e60: b4 f4 brge .+44 ; 0x4e8e <Mittelwert+0x6a8>
4e62: a6 01 movw r20, r12
4e64: 95 01 movw r18, r10
4e66: 28 5a subi r18, 0xA8 ; 168
4e68: 31 46 sbci r19, 0x61 ; 97
4e6a: 40 40 sbci r20, 0x00 ; 0
4e6c: 50 40 sbci r21, 0x00 ; 0
4e6e: 20 93 65 04 sts 0x0465, r18
4e72: 30 93 66 04 sts 0x0466, r19
4e76: 40 93 67 04 sts 0x0467, r20
4e7a: 50 93 68 04 sts 0x0468, r21
4e7e: 20 93 69 04 sts 0x0469, r18
4e82: 30 93 6a 04 sts 0x046A, r19
4e86: 40 93 6b 04 sts 0x046B, r20
4e8a: 50 93 6c 04 sts 0x046C, r21
4e8e: 8e 89 ldd r24, Y+22 ; 0x16
4e90: 9f 89 ldd r25, Y+23 ; 0x17
4e92: a8 8d ldd r26, Y+24 ; 0x18
4e94: b9 8d ldd r27, Y+25 ; 0x19
4e96: 80 93 61 04 sts 0x0461, r24
4e9a: 90 93 62 04 sts 0x0462, r25
4e9e: a0 93 63 04 sts 0x0463, r26
4ea2: b0 93 64 04 sts 0x0464, r27
4ea6: 20 93 45 04 sts 0x0445, r18
4eaa: 30 93 46 04 sts 0x0446, r19
4eae: 40 93 47 04 sts 0x0447, r20
4eb2: 50 93 48 04 sts 0x0448, r21
4eb6: e0 92 4d 04 sts 0x044D, r14
4eba: f0 92 4e 04 sts 0x044E, r15
4ebe: 00 93 4f 04 sts 0x044F, r16
4ec2: 10 93 50 04 sts 0x0450, r17
4ec6: 80 91 69 04 lds r24, 0x0469
4eca: 90 91 6a 04 lds r25, 0x046A
4ece: a0 91 6b 04 lds r26, 0x046B
4ed2: b0 91 6c 04 lds r27, 0x046C
4ed6: 80 93 49 04 sts 0x0449, r24
4eda: 90 93 4a 04 sts 0x044A, r25
4ede: a0 93 4b 04 sts 0x044B, r26
4ee2: b0 93 4c 04 sts 0x044C, r27
4ee6: 80 91 71 04 lds r24, 0x0471
4eea: 90 91 72 04 lds r25, 0x0472
4eee: a0 91 73 04 lds r26, 0x0473
4ef2: b0 91 74 04 lds r27, 0x0474
4ef6: 80 93 51 04 sts 0x0451, r24
4efa: 90 93 52 04 sts 0x0452, r25
4efe: a0 93 53 04 sts 0x0453, r26
4f02: b0 93 54 04 sts 0x0454, r27
4f06: 80 91 10 03 lds r24, 0x0310
4f0a: 90 91 11 03 lds r25, 0x0311
4f0e: 97 fd sbrc r25, 7
4f10: fc c3 rjmp .+2040 ; 0x570a <Mittelwert+0xf24>
4f12: 95 95 asr r25
4f14: 87 95 ror r24
4f16: 95 95 asr r25
4f18: 87 95 ror r24
4f1a: 95 95 asr r25
4f1c: 87 95 ror r24
4f1e: 90 93 47 08 sts 0x0847, r25
4f22: 80 93 46 08 sts 0x0846, r24
4f26: 80 91 12 03 lds r24, 0x0312
4f2a: 90 91 13 03 lds r25, 0x0313
4f2e: 97 fd sbrc r25, 7
4f30: 73 c4 rjmp .+2278 ; 0x5818 <Mittelwert+0x1032>
4f32: 95 95 asr r25
4f34: 87 95 ror r24
4f36: 95 95 asr r25
4f38: 87 95 ror r24
4f3a: 95 95 asr r25
4f3c: 87 95 ror r24
4f3e: 90 93 37 08 sts 0x0837, r25
4f42: 80 93 36 08 sts 0x0836, r24
4f46: 80 91 fe 03 lds r24, 0x03FE
4f4a: 90 91 ff 03 lds r25, 0x03FF
4f4e: 0f 97 sbiw r24, 0x0f ; 15
4f50: 34 f4 brge .+12 ; 0x4f5e <Mittelwert+0x778>
4f52: 88 e1 ldi r24, 0x18 ; 24
4f54: 9c ef ldi r25, 0xFC ; 252
4f56: 90 93 47 08 sts 0x0847, r25
4f5a: 80 93 46 08 sts 0x0846, r24
4f5e: 80 91 fe 03 lds r24, 0x03FE
4f62: 90 91 ff 03 lds r25, 0x03FF
4f66: 07 97 sbiw r24, 0x07 ; 7
4f68: 34 f4 brge .+12 ; 0x4f76 <Mittelwert+0x790>
4f6a: 80 e3 ldi r24, 0x30 ; 48
4f6c: 98 ef ldi r25, 0xF8 ; 248
4f6e: 90 93 47 08 sts 0x0847, r25
4f72: 80 93 46 08 sts 0x0846, r24
4f76: 20 91 00 01 lds r18, 0x0100
4f7a: 2a 30 cpi r18, 0x0A ; 10
4f7c: 09 f4 brne .+2 ; 0x4f80 <Mittelwert+0x79a>
4f7e: da c1 rjmp .+948 ; 0x5334 <Mittelwert+0xb4e>
4f80: 80 91 fe 03 lds r24, 0x03FE
4f84: 90 91 ff 03 lds r25, 0x03FF
4f88: 81 5d subi r24, 0xD1 ; 209
4f8a: 97 40 sbci r25, 0x07 ; 7
4f8c: 34 f0 brlt .+12 ; 0x4f9a <Mittelwert+0x7b4>
4f8e: 88 ee ldi r24, 0xE8 ; 232
4f90: 93 e0 ldi r25, 0x03 ; 3
4f92: 90 93 47 08 sts 0x0847, r25
4f96: 80 93 46 08 sts 0x0846, r24
4f9a: 80 91 fe 03 lds r24, 0x03FE
4f9e: 90 91 ff 03 lds r25, 0x03FF
4fa2: 80 5e subi r24, 0xE0 ; 224
4fa4: 97 40 sbci r25, 0x07 ; 7
4fa6: 0c f0 brlt .+2 ; 0x4faa <Mittelwert+0x7c4>
4fa8: da c1 rjmp .+948 ; 0x535e <Mittelwert+0xb78>
4faa: 80 91 00 04 lds r24, 0x0400
4fae: 90 91 01 04 lds r25, 0x0401
4fb2: 0f 97 sbiw r24, 0x0f ; 15
4fb4: 34 f4 brge .+12 ; 0x4fc2 <Mittelwert+0x7dc>
4fb6: 88 e1 ldi r24, 0x18 ; 24
4fb8: 9c ef ldi r25, 0xFC ; 252
4fba: 90 93 37 08 sts 0x0837, r25
4fbe: 80 93 36 08 sts 0x0836, r24
4fc2: 80 91 00 04 lds r24, 0x0400
4fc6: 90 91 01 04 lds r25, 0x0401
4fca: 07 97 sbiw r24, 0x07 ; 7
4fcc: 34 f4 brge .+12 ; 0x4fda <Mittelwert+0x7f4>
4fce: 80 e3 ldi r24, 0x30 ; 48
4fd0: 98 ef ldi r25, 0xF8 ; 248
4fd2: 90 93 37 08 sts 0x0837, r25
4fd6: 80 93 36 08 sts 0x0836, r24
4fda: 2a 30 cpi r18, 0x0A ; 10
4fdc: 09 f4 brne .+2 ; 0x4fe0 <Mittelwert+0x7fa>
4fde: 8e c1 rjmp .+796 ; 0x52fc <Mittelwert+0xb16>
4fe0: 80 91 00 04 lds r24, 0x0400
4fe4: 90 91 01 04 lds r25, 0x0401
4fe8: 81 5d subi r24, 0xD1 ; 209
4fea: 97 40 sbci r25, 0x07 ; 7
4fec: 34 f0 brlt .+12 ; 0x4ffa <Mittelwert+0x814>
4fee: 88 ee ldi r24, 0xE8 ; 232
4ff0: 93 e0 ldi r25, 0x03 ; 3
4ff2: 90 93 37 08 sts 0x0837, r25
4ff6: 80 93 36 08 sts 0x0836, r24
4ffa: 80 91 00 04 lds r24, 0x0400
4ffe: 90 91 01 04 lds r25, 0x0401
5002: 80 5e subi r24, 0xE0 ; 224
5004: 97 40 sbci r25, 0x07 ; 7
5006: 0c f0 brlt .+2 ; 0x500a <Mittelwert+0x824>
5008: 8e c1 rjmp .+796 ; 0x5326 <Mittelwert+0xb40>
500a: 60 91 a6 03 lds r22, 0x03A6
500e: 66 23 and r22, r22
5010: 09 f4 brne .+2 ; 0x5014 <Mittelwert+0x82e>
5012: a2 c0 rjmp .+324 ; 0x5158 <Mittelwert+0x972>
5014: 40 91 10 03 lds r20, 0x0310
5018: 50 91 11 03 lds r21, 0x0311
501c: 80 91 0e 05 lds r24, 0x050E
5020: 90 91 0f 05 lds r25, 0x050F
5024: 48 1b sub r20, r24
5026: 59 0b sbc r21, r25
5028: 50 93 09 05 sts 0x0509, r21
502c: 40 93 08 05 sts 0x0508, r20
5030: 20 91 10 03 lds r18, 0x0310
5034: 30 91 11 03 lds r19, 0x0311
5038: 28 0f add r18, r24
503a: 39 1f adc r19, r25
503c: 37 fd sbrc r19, 7
503e: f5 c3 rjmp .+2026 ; 0x582a <Mittelwert+0x1044>
5040: 35 95 asr r19
5042: 27 95 ror r18
5044: 30 93 0f 05 sts 0x050F, r19
5048: 20 93 0e 05 sts 0x050E, r18
504c: 41 38 cpi r20, 0x81 ; 129
504e: 51 05 cpc r21, r1
5050: 0c f4 brge .+2 ; 0x5054 <Mittelwert+0x86e>
5052: 03 c2 rjmp .+1030 ; 0x545a <Mittelwert+0xc74>
5054: 80 e8 ldi r24, 0x80 ; 128
5056: 90 e0 ldi r25, 0x00 ; 0
5058: 90 93 09 05 sts 0x0509, r25
505c: 80 93 08 05 sts 0x0508, r24
5060: e6 2f mov r30, r22
5062: f0 e0 ldi r31, 0x00 ; 0
5064: 80 91 08 05 lds r24, 0x0508
5068: 90 91 09 05 lds r25, 0x0509
506c: e8 9f mul r30, r24
506e: b0 01 movw r22, r0
5070: e9 9f mul r30, r25
5072: 70 0d add r23, r0
5074: f8 9f mul r31, r24
5076: 70 0d add r23, r0
5078: 11 24 eor r1, r1
507a: 9b 01 movw r18, r22
507c: 77 fd sbrc r23, 7
507e: e0 c3 rjmp .+1984 ; 0x5840 <Mittelwert+0x105a>
5080: 35 95 asr r19
5082: 27 95 ror r18
5084: 35 95 asr r19
5086: 27 95 ror r18
5088: 35 95 asr r19
508a: 27 95 ror r18
508c: 35 95 asr r19
508e: 27 95 ror r18
5090: 80 91 46 08 lds r24, 0x0846
5094: 90 91 47 08 lds r25, 0x0847
5098: 82 0f add r24, r18
509a: 93 1f adc r25, r19
509c: 90 93 47 08 sts 0x0847, r25
50a0: 80 93 46 08 sts 0x0846, r24
50a4: 40 91 12 03 lds r20, 0x0312
50a8: 50 91 13 03 lds r21, 0x0313
50ac: 80 91 0c 05 lds r24, 0x050C
50b0: 90 91 0d 05 lds r25, 0x050D
50b4: 48 1b sub r20, r24
50b6: 59 0b sbc r21, r25
50b8: 50 93 0b 05 sts 0x050B, r21
50bc: 40 93 0a 05 sts 0x050A, r20
50c0: 20 91 12 03 lds r18, 0x0312
50c4: 30 91 13 03 lds r19, 0x0313
50c8: 28 0f add r18, r24
50ca: 39 1f adc r19, r25
50cc: 37 fd sbrc r19, 7
50ce: be c3 rjmp .+1916 ; 0x584c <Mittelwert+0x1066>
50d0: 35 95 asr r19
50d2: 27 95 ror r18
50d4: 30 93 0d 05 sts 0x050D, r19
50d8: 20 93 0c 05 sts 0x050C, r18
50dc: 41 38 cpi r20, 0x81 ; 129
50de: 51 05 cpc r21, r1
50e0: 0c f4 brge .+2 ; 0x50e4 <Mittelwert+0x8fe>
50e2: 08 c3 rjmp .+1552 ; 0x56f4 <Mittelwert+0xf0e>
50e4: 80 e8 ldi r24, 0x80 ; 128
50e6: 90 e0 ldi r25, 0x00 ; 0
50e8: 90 93 0b 05 sts 0x050B, r25
50ec: 80 93 0a 05 sts 0x050A, r24
50f0: 80 91 0a 05 lds r24, 0x050A
50f4: 90 91 0b 05 lds r25, 0x050B
50f8: e8 9f mul r30, r24
50fa: a0 01 movw r20, r0
50fc: e9 9f mul r30, r25
50fe: 50 0d add r21, r0
5100: f8 9f mul r31, r24
5102: 50 0d add r21, r0
5104: 11 24 eor r1, r1
5106: 9a 01 movw r18, r20
5108: 57 fd sbrc r21, 7
510a: 9d c3 rjmp .+1850 ; 0x5846 <Mittelwert+0x1060>
510c: 35 95 asr r19
510e: 27 95 ror r18
5110: 35 95 asr r19
5112: 27 95 ror r18
5114: 35 95 asr r19
5116: 27 95 ror r18
5118: 35 95 asr r19
511a: 27 95 ror r18
511c: 80 91 36 08 lds r24, 0x0836
5120: 90 91 37 08 lds r25, 0x0837
5124: 82 0f add r24, r18
5126: 93 1f adc r25, r19
5128: 90 93 37 08 sts 0x0837, r25
512c: 80 93 36 08 sts 0x0836, r24
5130: 80 91 10 03 lds r24, 0x0310
5134: 90 91 11 03 lds r25, 0x0311
5138: 68 0f add r22, r24
513a: 79 1f adc r23, r25
513c: 70 93 11 03 sts 0x0311, r23
5140: 60 93 10 03 sts 0x0310, r22
5144: 80 91 12 03 lds r24, 0x0312
5148: 90 91 13 03 lds r25, 0x0313
514c: 48 0f add r20, r24
514e: 59 1f adc r21, r25
5150: 50 93 13 03 sts 0x0313, r21
5154: 40 93 12 03 sts 0x0312, r20
5158: 8b 89 ldd r24, Y+19 ; 0x13
515a: 9c 89 ldd r25, Y+20 ; 0x14
515c: 18 16 cp r1, r24
515e: 19 06 cpc r1, r25
5160: 0c f0 brlt .+2 ; 0x5164 <Mittelwert+0x97e>
5162: e2 c2 rjmp .+1476 ; 0x5728 <Mittelwert+0xf42>
5164: 9d 89 ldd r25, Y+21 ; 0x15
5166: e9 2e mov r14, r25
5168: ff 24 eor r15, r15
516a: 00 e0 ldi r16, 0x00 ; 0
516c: 10 e0 ldi r17, 0x00 ; 0
516e: 60 91 d1 07 lds r22, 0x07D1
5172: 70 91 d2 07 lds r23, 0x07D2
5176: 77 fd sbrc r23, 7
5178: 5f c3 rjmp .+1726 ; 0x5838 <Mittelwert+0x1052>
517a: 88 27 eor r24, r24
517c: 77 fd sbrc r23, 7
517e: 80 95 com r24
5180: 98 2f mov r25, r24
5182: a8 01 movw r20, r16
5184: 97 01 movw r18, r14
5186: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
518a: 20 e4 ldi r18, 0x40 ; 64
518c: 30 e0 ldi r19, 0x00 ; 0
518e: 40 e0 ldi r20, 0x00 ; 0
5190: 50 e0 ldi r21, 0x00 ; 0
5192: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
5196: 82 0e add r8, r18
5198: 93 1e adc r9, r19
519a: 90 92 44 08 sts 0x0844, r9
519e: 80 92 43 08 sts 0x0843, r8
51a2: ea 8d ldd r30, Y+26 ; 0x1a
51a4: fb 8d ldd r31, Y+27 ; 0x1b
51a6: 1e 16 cp r1, r30
51a8: 1f 06 cpc r1, r31
51aa: 0c f0 brlt .+2 ; 0x51ae <Mittelwert+0x9c8>
51ac: e2 c2 rjmp .+1476 ; 0x5772 <Mittelwert+0xf8c>
51ae: 20 91 d5 07 lds r18, 0x07D5
51b2: 30 91 d6 07 lds r19, 0x07D6
51b6: 37 fd sbrc r19, 7
51b8: 3b c3 rjmp .+1654 ; 0x5830 <Mittelwert+0x104a>
51ba: 44 27 eor r20, r20
51bc: 37 fd sbrc r19, 7
51be: 40 95 com r20
51c0: 54 2f mov r21, r20
51c2: c8 01 movw r24, r16
51c4: b7 01 movw r22, r14
51c6: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
51ca: 20 e4 ldi r18, 0x40 ; 64
51cc: 30 e0 ldi r19, 0x00 ; 0
51ce: 40 e0 ldi r20, 0x00 ; 0
51d0: 50 e0 ldi r21, 0x00 ; 0
51d2: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
51d6: 62 0e add r6, r18
51d8: 73 1e adc r7, r19
51da: 70 92 3a 08 sts 0x083A, r7
51de: 60 92 39 08 sts 0x0839, r6
51e2: f9 81 ldd r31, Y+1 ; 0x01
51e4: f7 fd sbrc r31, 7
51e6: e2 c2 rjmp .+1476 ; 0x57ac <Mittelwert+0xfc6>
51e8: 80 91 db 07 lds r24, 0x07DB
51ec: e8 2f mov r30, r24
51ee: f0 e0 ldi r31, 0x00 ; 0
51f0: ee 0f add r30, r30
51f2: ff 1f adc r31, r31
51f4: eb 55 subi r30, 0x5B ; 91
51f6: f8 4f sbci r31, 0xF8 ; 248
51f8: 80 81 ld r24, Z
51fa: 91 81 ldd r25, Z+1 ; 0x01
51fc: a0 91 8c 04 lds r26, 0x048C
5200: b0 91 8d 04 lds r27, 0x048D
5204: 82 59 subi r24, 0x92 ; 146
5206: 9f 4f sbci r25, 0xFF ; 255
5208: a8 17 cp r26, r24
520a: b9 07 cpc r27, r25
520c: 0c f0 brlt .+2 ; 0x5210 <Mittelwert+0xa2a>
520e: ff c0 rjmp .+510 ; 0x540e <Mittelwert+0xc28>
5210: 11 96 adiw r26, 0x01 ; 1
5212: b0 93 8d 04 sts 0x048D, r27
5216: a0 93 8c 04 sts 0x048C, r26
521a: 80 91 dc 07 lds r24, 0x07DC
521e: e8 2f mov r30, r24
5220: f0 e0 ldi r31, 0x00 ; 0
5222: ee 0f add r30, r30
5224: ff 1f adc r31, r31
5226: eb 55 subi r30, 0x5B ; 91
5228: f8 4f sbci r31, 0xF8 ; 248
522a: 80 81 ld r24, Z
522c: 91 81 ldd r25, Z+1 ; 0x01
522e: 60 91 8e 04 lds r22, 0x048E
5232: 70 91 8f 04 lds r23, 0x048F
5236: 82 59 subi r24, 0x92 ; 146
5238: 9f 4f sbci r25, 0xFF ; 255
523a: 68 17 cp r22, r24
523c: 79 07 cpc r23, r25
523e: 0c f0 brlt .+2 ; 0x5242 <Mittelwert+0xa5c>
5240: d3 c0 rjmp .+422 ; 0x53e8 <Mittelwert+0xc02>
5242: 6f 5f subi r22, 0xFF ; 255
5244: 7f 4f sbci r23, 0xFF ; 255
5246: 70 93 8f 04 sts 0x048F, r23
524a: 60 93 8e 04 sts 0x048E, r22
524e: 80 91 dd 07 lds r24, 0x07DD
5252: e8 2f mov r30, r24
5254: f0 e0 ldi r31, 0x00 ; 0
5256: ee 0f add r30, r30
5258: ff 1f adc r31, r31
525a: eb 55 subi r30, 0x5B ; 91
525c: f8 4f sbci r31, 0xF8 ; 248
525e: 80 81 ld r24, Z
5260: 91 81 ldd r25, Z+1 ; 0x01
5262: 40 91 90 04 lds r20, 0x0490
5266: 50 91 91 04 lds r21, 0x0491
526a: 82 59 subi r24, 0x92 ; 146
526c: 9f 4f sbci r25, 0xFF ; 255
526e: 48 17 cp r20, r24
5270: 59 07 cpc r21, r25
5272: 0c f0 brlt .+2 ; 0x5276 <Mittelwert+0xa90>
5274: a6 c0 rjmp .+332 ; 0x53c2 <Mittelwert+0xbdc>
5276: 4f 5f subi r20, 0xFF ; 255
5278: 5f 4f sbci r21, 0xFF ; 255
527a: 50 93 91 04 sts 0x0491, r21
527e: 40 93 90 04 sts 0x0490, r20
5282: 80 91 de 07 lds r24, 0x07DE
5286: e8 2f mov r30, r24
5288: f0 e0 ldi r31, 0x00 ; 0
528a: ee 0f add r30, r30
528c: ff 1f adc r31, r31
528e: eb 55 subi r30, 0x5B ; 91
5290: f8 4f sbci r31, 0xF8 ; 248
5292: 80 81 ld r24, Z
5294: 91 81 ldd r25, Z+1 ; 0x01
5296: 20 91 92 04 lds r18, 0x0492
529a: 30 91 93 04 lds r19, 0x0493
529e: 82 59 subi r24, 0x92 ; 146
52a0: 9f 4f sbci r25, 0xFF ; 255
52a2: 28 17 cp r18, r24
52a4: 39 07 cpc r19, r25
52a6: 0c f0 brlt .+2 ; 0x52aa <Mittelwert+0xac4>
52a8: 61 c0 rjmp .+194 ; 0x536c <Mittelwert+0xb86>
52aa: 2f 5f subi r18, 0xFF ; 255
52ac: 3f 4f sbci r19, 0xFF ; 255
52ae: 30 93 93 04 sts 0x0493, r19
52b2: 20 93 92 04 sts 0x0492, r18
52b6: b7 fd sbrc r27, 7
52b8: 6d c0 rjmp .+218 ; 0x5394 <Mittelwert+0xbae>
52ba: af 3f cpi r26, 0xFF ; 255
52bc: b1 05 cpc r27, r1
52be: 11 f0 breq .+4 ; 0x52c4 <Mittelwert+0xade>
52c0: 0c f0 brlt .+2 ; 0x52c4 <Mittelwert+0xade>
52c2: c4 c0 rjmp .+392 ; 0x544c <Mittelwert+0xc66>
52c4: 77 fd sbrc r23, 7
52c6: 6c c0 rjmp .+216 ; 0x53a0 <Mittelwert+0xbba>
52c8: 6f 3f cpi r22, 0xFF ; 255
52ca: 71 05 cpc r23, r1
52cc: 11 f0 breq .+4 ; 0x52d2 <Mittelwert+0xaec>
52ce: 0c f0 brlt .+2 ; 0x52d2 <Mittelwert+0xaec>
52d0: b6 c0 rjmp .+364 ; 0x543e <Mittelwert+0xc58>
52d2: 57 fd sbrc r21, 7
52d4: 6b c0 rjmp .+214 ; 0x53ac <Mittelwert+0xbc6>
52d6: 4f 3f cpi r20, 0xFF ; 255
52d8: 51 05 cpc r21, r1
52da: 11 f0 breq .+4 ; 0x52e0 <Mittelwert+0xafa>
52dc: 0c f0 brlt .+2 ; 0x52e0 <Mittelwert+0xafa>
52de: a8 c0 rjmp .+336 ; 0x5430 <Mittelwert+0xc4a>
52e0: 37 fd sbrc r19, 7
52e2: 6a c0 rjmp .+212 ; 0x53b8 <Mittelwert+0xbd2>
52e4: 2f 3f cpi r18, 0xFF ; 255
52e6: 31 05 cpc r19, r1
52e8: 09 f0 breq .+2 ; 0x52ec <Mittelwert+0xb06>
52ea: 0c f4 brge .+2 ; 0x52ee <Mittelwert+0xb08>
52ec: ee c2 rjmp .+1500 ; 0x58ca <Mittelwert+0x10e4>
52ee: 8f ef ldi r24, 0xFF ; 255
52f0: 90 e0 ldi r25, 0x00 ; 0
52f2: 90 93 93 04 sts 0x0493, r25
52f6: 80 93 92 04 sts 0x0492, r24
52fa: e7 c2 rjmp .+1486 ; 0x58ca <Mittelwert+0x10e4>
52fc: 80 91 00 04 lds r24, 0x0400
5300: 90 91 01 04 lds r25, 0x0401
5304: 83 5f subi r24, 0xF3 ; 243
5306: 93 40 sbci r25, 0x03 ; 3
5308: 34 f0 brlt .+12 ; 0x5316 <Mittelwert+0xb30>
530a: 88 ee ldi r24, 0xE8 ; 232
530c: 93 e0 ldi r25, 0x03 ; 3
530e: 90 93 37 08 sts 0x0837, r25
5312: 80 93 36 08 sts 0x0836, r24
5316: 80 91 00 04 lds r24, 0x0400
531a: 90 91 01 04 lds r25, 0x0401
531e: 8a 5f subi r24, 0xFA ; 250
5320: 93 40 sbci r25, 0x03 ; 3
5322: 0c f4 brge .+2 ; 0x5326 <Mittelwert+0xb40>
5324: 72 ce rjmp .-796 ; 0x500a <Mittelwert+0x824>
5326: 80 ed ldi r24, 0xD0 ; 208
5328: 97 e0 ldi r25, 0x07 ; 7
532a: 90 93 37 08 sts 0x0837, r25
532e: 80 93 36 08 sts 0x0836, r24
5332: 6b ce rjmp .-810 ; 0x500a <Mittelwert+0x824>
5334: 80 91 fe 03 lds r24, 0x03FE
5338: 90 91 ff 03 lds r25, 0x03FF
533c: 83 5f subi r24, 0xF3 ; 243
533e: 93 40 sbci r25, 0x03 ; 3
5340: 34 f0 brlt .+12 ; 0x534e <Mittelwert+0xb68>
5342: 88 ee ldi r24, 0xE8 ; 232
5344: 93 e0 ldi r25, 0x03 ; 3
5346: 90 93 47 08 sts 0x0847, r25
534a: 80 93 46 08 sts 0x0846, r24
534e: 80 91 fe 03 lds r24, 0x03FE
5352: 90 91 ff 03 lds r25, 0x03FF
5356: 8a 5f subi r24, 0xFA ; 250
5358: 93 40 sbci r25, 0x03 ; 3
535a: 0c f4 brge .+2 ; 0x535e <Mittelwert+0xb78>
535c: 26 ce rjmp .-948 ; 0x4faa <Mittelwert+0x7c4>
535e: 80 ed ldi r24, 0xD0 ; 208
5360: 97 e0 ldi r25, 0x07 ; 7
5362: 90 93 47 08 sts 0x0847, r25
5366: 80 93 46 08 sts 0x0846, r24
536a: 1f ce rjmp .-962 ; 0x4faa <Mittelwert+0x7c4>
536c: 80 81 ld r24, Z
536e: 91 81 ldd r25, Z+1 ; 0x01
5370: 82 59 subi r24, 0x92 ; 146
5372: 9f 4f sbci r25, 0xFF ; 255
5374: 82 17 cp r24, r18
5376: 93 07 cpc r25, r19
5378: 0c f0 brlt .+2 ; 0x537c <Mittelwert+0xb96>
537a: 9d cf rjmp .-198 ; 0x52b6 <Mittelwert+0xad0>
537c: 21 15 cp r18, r1
537e: 31 05 cpc r19, r1
5380: 09 f4 brne .+2 ; 0x5384 <Mittelwert+0xb9e>
5382: 99 cf rjmp .-206 ; 0x52b6 <Mittelwert+0xad0>
5384: 21 50 subi r18, 0x01 ; 1
5386: 30 40 sbci r19, 0x00 ; 0
5388: 30 93 93 04 sts 0x0493, r19
538c: 20 93 92 04 sts 0x0492, r18
5390: b7 ff sbrs r27, 7
5392: 93 cf rjmp .-218 ; 0x52ba <Mittelwert+0xad4>
5394: 10 92 8d 04 sts 0x048D, r1
5398: 10 92 8c 04 sts 0x048C, r1
539c: 77 ff sbrs r23, 7
539e: 94 cf rjmp .-216 ; 0x52c8 <Mittelwert+0xae2>
53a0: 10 92 8f 04 sts 0x048F, r1
53a4: 10 92 8e 04 sts 0x048E, r1
53a8: 57 ff sbrs r21, 7
53aa: 95 cf rjmp .-214 ; 0x52d6 <Mittelwert+0xaf0>
53ac: 10 92 91 04 sts 0x0491, r1
53b0: 10 92 90 04 sts 0x0490, r1
53b4: 37 ff sbrs r19, 7
53b6: 96 cf rjmp .-212 ; 0x52e4 <Mittelwert+0xafe>
53b8: 10 92 93 04 sts 0x0493, r1
53bc: 10 92 92 04 sts 0x0492, r1
53c0: 84 c2 rjmp .+1288 ; 0x58ca <Mittelwert+0x10e4>
53c2: 80 81 ld r24, Z
53c4: 91 81 ldd r25, Z+1 ; 0x01
53c6: 82 59 subi r24, 0x92 ; 146
53c8: 9f 4f sbci r25, 0xFF ; 255
53ca: 84 17 cp r24, r20
53cc: 95 07 cpc r25, r21
53ce: 0c f0 brlt .+2 ; 0x53d2 <Mittelwert+0xbec>
53d0: 58 cf rjmp .-336 ; 0x5282 <Mittelwert+0xa9c>
53d2: 41 15 cp r20, r1
53d4: 51 05 cpc r21, r1
53d6: 09 f4 brne .+2 ; 0x53da <Mittelwert+0xbf4>
53d8: 54 cf rjmp .-344 ; 0x5282 <Mittelwert+0xa9c>
53da: 41 50 subi r20, 0x01 ; 1
53dc: 50 40 sbci r21, 0x00 ; 0
53de: 50 93 91 04 sts 0x0491, r21
53e2: 40 93 90 04 sts 0x0490, r20
53e6: 4d cf rjmp .-358 ; 0x5282 <Mittelwert+0xa9c>
53e8: 80 81 ld r24, Z
53ea: 91 81 ldd r25, Z+1 ; 0x01
53ec: 82 59 subi r24, 0x92 ; 146
53ee: 9f 4f sbci r25, 0xFF ; 255
53f0: 86 17 cp r24, r22
53f2: 97 07 cpc r25, r23
53f4: 0c f0 brlt .+2 ; 0x53f8 <Mittelwert+0xc12>
53f6: 2b cf rjmp .-426 ; 0x524e <Mittelwert+0xa68>
53f8: 61 15 cp r22, r1
53fa: 71 05 cpc r23, r1
53fc: 09 f4 brne .+2 ; 0x5400 <Mittelwert+0xc1a>
53fe: 27 cf rjmp .-434 ; 0x524e <Mittelwert+0xa68>
5400: 61 50 subi r22, 0x01 ; 1
5402: 70 40 sbci r23, 0x00 ; 0
5404: 70 93 8f 04 sts 0x048F, r23
5408: 60 93 8e 04 sts 0x048E, r22
540c: 20 cf rjmp .-448 ; 0x524e <Mittelwert+0xa68>
540e: 80 81 ld r24, Z
5410: 91 81 ldd r25, Z+1 ; 0x01
5412: 82 59 subi r24, 0x92 ; 146
5414: 9f 4f sbci r25, 0xFF ; 255
5416: 8a 17 cp r24, r26
5418: 9b 07 cpc r25, r27
541a: 0c f0 brlt .+2 ; 0x541e <Mittelwert+0xc38>
541c: fe ce rjmp .-516 ; 0x521a <Mittelwert+0xa34>
541e: 10 97 sbiw r26, 0x00 ; 0
5420: 09 f4 brne .+2 ; 0x5424 <Mittelwert+0xc3e>
5422: fb ce rjmp .-522 ; 0x521a <Mittelwert+0xa34>
5424: 11 97 sbiw r26, 0x01 ; 1
5426: b0 93 8d 04 sts 0x048D, r27
542a: a0 93 8c 04 sts 0x048C, r26
542e: f5 ce rjmp .-534 ; 0x521a <Mittelwert+0xa34>
5430: 8f ef ldi r24, 0xFF ; 255
5432: 90 e0 ldi r25, 0x00 ; 0
5434: 90 93 91 04 sts 0x0491, r25
5438: 80 93 90 04 sts 0x0490, r24
543c: 51 cf rjmp .-350 ; 0x52e0 <Mittelwert+0xafa>
543e: 8f ef ldi r24, 0xFF ; 255
5440: 90 e0 ldi r25, 0x00 ; 0
5442: 90 93 8f 04 sts 0x048F, r25
5446: 80 93 8e 04 sts 0x048E, r24
544a: 43 cf rjmp .-378 ; 0x52d2 <Mittelwert+0xaec>
544c: 8f ef ldi r24, 0xFF ; 255
544e: 90 e0 ldi r25, 0x00 ; 0
5450: 90 93 8d 04 sts 0x048D, r25
5454: 80 93 8c 04 sts 0x048C, r24
5458: 35 cf rjmp .-406 ; 0x52c4 <Mittelwert+0xade>
545a: 40 58 subi r20, 0x80 ; 128
545c: 5f 4f sbci r21, 0xFF ; 255
545e: 0c f0 brlt .+2 ; 0x5462 <Mittelwert+0xc7c>
5460: ff cd rjmp .-1026 ; 0x5060 <Mittelwert+0x87a>
5462: 80 e8 ldi r24, 0x80 ; 128
5464: 9f ef ldi r25, 0xFF ; 255
5466: 90 93 09 05 sts 0x0509, r25
546a: 80 93 08 05 sts 0x0508, r24
546e: f8 cd rjmp .-1040 ; 0x5060 <Mittelwert+0x87a>
5470: b0 91 df 07 lds r27, 0x07DF
5474: b9 83 std Y+1, r27 ; 0x01
5476: b6 ff sbrs r27, 6
5478: 8a cb rjmp .-2284 ; 0x4b8e <Mittelwert+0x3a8>
547a: 2f 85 ldd r18, Y+15 ; 0x0f
547c: 38 89 ldd r19, Y+16 ; 0x10
547e: 49 89 ldd r20, Y+17 ; 0x11
5480: 5a 89 ldd r21, Y+18 ; 0x12
5482: 28 3b cpi r18, 0xB8 ; 184
5484: e4 e9 ldi r30, 0x94 ; 148
5486: 3e 07 cpc r19, r30
5488: ee ef ldi r30, 0xFE ; 254
548a: 4e 07 cpc r20, r30
548c: ef ef ldi r30, 0xFF ; 255
548e: 5e 07 cpc r21, r30
5490: 24 f4 brge .+8 ; 0x549a <Mittelwert+0xcb4>
5492: 28 eb ldi r18, 0xB8 ; 184
5494: 34 e9 ldi r19, 0x94 ; 148
5496: 4e ef ldi r20, 0xFE ; 254
5498: 5f ef ldi r21, 0xFF ; 255
549a: 2a 83 std Y+2, r18 ; 0x02
549c: 3b 83 std Y+3, r19 ; 0x03
549e: 4c 83 std Y+4, r20 ; 0x04
54a0: 5d 83 std Y+5, r21 ; 0x05
54a2: 29 54 subi r18, 0x49 ; 73
54a4: 3b 46 sbci r19, 0x6B ; 107
54a6: 41 40 sbci r20, 0x01 ; 1
54a8: 50 40 sbci r21, 0x00 ; 0
54aa: 44 f0 brlt .+16 ; 0x54bc <Mittelwert+0xcd6>
54ac: 88 e4 ldi r24, 0x48 ; 72
54ae: 9b e6 ldi r25, 0x6B ; 107
54b0: a1 e0 ldi r26, 0x01 ; 1
54b2: b0 e0 ldi r27, 0x00 ; 0
54b4: 8a 83 std Y+2, r24 ; 0x02
54b6: 9b 83 std Y+3, r25 ; 0x03
54b8: ac 83 std Y+4, r26 ; 0x04
54ba: bd 83 std Y+5, r27 ; 0x05
54bc: 2b 85 ldd r18, Y+11 ; 0x0b
54be: 3c 85 ldd r19, Y+12 ; 0x0c
54c0: 4d 85 ldd r20, Y+13 ; 0x0d
54c2: 5e 85 ldd r21, Y+14 ; 0x0e
54c4: 28 3b cpi r18, 0xB8 ; 184
54c6: 94 e9 ldi r25, 0x94 ; 148
54c8: 39 07 cpc r19, r25
54ca: 9e ef ldi r25, 0xFE ; 254
54cc: 49 07 cpc r20, r25
54ce: 9f ef ldi r25, 0xFF ; 255
54d0: 59 07 cpc r21, r25
54d2: 24 f4 brge .+8 ; 0x54dc <Mittelwert+0xcf6>
54d4: 28 eb ldi r18, 0xB8 ; 184
54d6: 34 e9 ldi r19, 0x94 ; 148
54d8: 4e ef ldi r20, 0xFE ; 254
54da: 5f ef ldi r21, 0xFF ; 255
54dc: 2e 83 std Y+6, r18 ; 0x06
54de: 3f 83 std Y+7, r19 ; 0x07
54e0: 48 87 std Y+8, r20 ; 0x08
54e2: 59 87 std Y+9, r21 ; 0x09
54e4: 29 54 subi r18, 0x49 ; 73
54e6: 3b 46 sbci r19, 0x6B ; 107
54e8: 41 40 sbci r20, 0x01 ; 1
54ea: 50 40 sbci r21, 0x00 ; 0
54ec: 44 f0 brlt .+16 ; 0x54fe <Mittelwert+0xd18>
54ee: 88 e4 ldi r24, 0x48 ; 72
54f0: 9b e6 ldi r25, 0x6B ; 107
54f2: a1 e0 ldi r26, 0x01 ; 1
54f4: b0 e0 ldi r27, 0x00 ; 0
54f6: 8e 83 std Y+6, r24 ; 0x06
54f8: 9f 83 std Y+7, r25 ; 0x07
54fa: a8 87 std Y+8, r26 ; 0x08
54fc: b9 87 std Y+9, r27 ; 0x09
54fe: a0 90 ae 03 lds r10, 0x03AE
5502: bb 24 eor r11, r11
5504: cc 24 eor r12, r12
5506: dd 24 eor r13, r13
5508: ab 89 ldd r26, Y+19 ; 0x13
550a: bc 89 ldd r27, Y+20 ; 0x14
550c: 9d 01 movw r18, r26
550e: 44 27 eor r20, r20
5510: 37 fd sbrc r19, 7
5512: 40 95 com r20
5514: 54 2f mov r21, r20
5516: 6e 81 ldd r22, Y+6 ; 0x06
5518: 7f 81 ldd r23, Y+7 ; 0x07
551a: 88 85 ldd r24, Y+8 ; 0x08
551c: 99 85 ldd r25, Y+9 ; 0x09
551e: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
5522: 20 e0 ldi r18, 0x00 ; 0
5524: 38 e0 ldi r19, 0x08 ; 8
5526: 40 e0 ldi r20, 0x00 ; 0
5528: 50 e0 ldi r21, 0x00 ; 0
552a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
552e: ca 01 movw r24, r20
5530: b9 01 movw r22, r18
5532: a6 01 movw r20, r12
5534: 95 01 movw r18, r10
5536: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
553a: 20 e0 ldi r18, 0x00 ; 0
553c: 30 e1 ldi r19, 0x10 ; 16
553e: 40 e0 ldi r20, 0x00 ; 0
5540: 50 e0 ldi r21, 0x00 ; 0
5542: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
5546: 79 01 movw r14, r18
5548: 8a 01 movw r16, r20
554a: 20 93 14 05 sts 0x0514, r18
554e: 30 93 15 05 sts 0x0515, r19
5552: 40 93 16 05 sts 0x0516, r20
5556: 50 93 17 05 sts 0x0517, r21
555a: ea 8d ldd r30, Y+26 ; 0x1a
555c: fb 8d ldd r31, Y+27 ; 0x1b
555e: 9f 01 movw r18, r30
5560: 44 27 eor r20, r20
5562: 37 fd sbrc r19, 7
5564: 40 95 com r20
5566: 54 2f mov r21, r20
5568: 6a 81 ldd r22, Y+2 ; 0x02
556a: 7b 81 ldd r23, Y+3 ; 0x03
556c: 8c 81 ldd r24, Y+4 ; 0x04
556e: 9d 81 ldd r25, Y+5 ; 0x05
5570: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
5574: 20 e0 ldi r18, 0x00 ; 0
5576: 38 e0 ldi r19, 0x08 ; 8
5578: 40 e0 ldi r20, 0x00 ; 0
557a: 50 e0 ldi r21, 0x00 ; 0
557c: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
5580: ca 01 movw r24, r20
5582: b9 01 movw r22, r18
5584: a6 01 movw r20, r12
5586: 95 01 movw r18, r10
5588: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
558c: 20 e0 ldi r18, 0x00 ; 0
558e: 30 e1 ldi r19, 0x10 ; 16
5590: 40 e0 ldi r20, 0x00 ; 0
5592: 50 e0 ldi r21, 0x00 ; 0
5594: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
5598: f0 92 d2 07 sts 0x07D2, r15
559c: e0 92 d1 07 sts 0x07D1, r14
55a0: 30 93 d6 07 sts 0x07D6, r19
55a4: 20 93 d5 07 sts 0x07D5, r18
55a8: 2e 19 sub r18, r14
55aa: 3f 09 sbc r19, r15
55ac: 40 0b sbc r20, r16
55ae: 51 0b sbc r21, r17
55b0: 79 01 movw r14, r18
55b2: 8a 01 movw r16, r20
55b4: 20 93 10 05 sts 0x0510, r18
55b8: 30 93 11 05 sts 0x0511, r19
55bc: 40 93 12 05 sts 0x0512, r20
55c0: 50 93 13 05 sts 0x0513, r21
55c4: 22 0e add r2, r18
55c6: 33 1e adc r3, r19
55c8: 44 1e adc r4, r20
55ca: 55 1e adc r5, r21
55cc: 20 92 7e 08 sts 0x087E, r2
55d0: 30 92 7f 08 sts 0x087F, r3
55d4: 40 92 80 08 sts 0x0880, r4
55d8: 50 92 81 08 sts 0x0881, r5
55dc: f0 91 af 03 lds r31, 0x03AF
55e0: fd 8b std Y+21, r31 ; 0x15
55e2: ff 23 and r31, r31
55e4: e1 f4 brne .+56 ; 0x561e <Mittelwert+0xe38>
55e6: ca 01 movw r24, r20
55e8: b9 01 movw r22, r18
55ea: 22 e0 ldi r18, 0x02 ; 2
55ec: 30 e0 ldi r19, 0x00 ; 0
55ee: 40 e0 ldi r20, 0x00 ; 0
55f0: 50 e0 ldi r21, 0x00 ; 0
55f2: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
55f6: 8e 89 ldd r24, Y+22 ; 0x16
55f8: 9f 89 ldd r25, Y+23 ; 0x17
55fa: a8 8d ldd r26, Y+24 ; 0x18
55fc: b9 8d ldd r27, Y+25 ; 0x19
55fe: 82 1b sub r24, r18
5600: 93 0b sbc r25, r19
5602: a4 0b sbc r26, r20
5604: b5 0b sbc r27, r21
5606: 8e 8b std Y+22, r24 ; 0x16
5608: 9f 8b std Y+23, r25 ; 0x17
560a: a8 8f std Y+24, r26 ; 0x18
560c: b9 8f std Y+25, r27 ; 0x19
560e: 80 93 75 04 sts 0x0475, r24
5612: 90 93 76 04 sts 0x0476, r25
5616: a0 93 77 04 sts 0x0477, r26
561a: b0 93 78 04 sts 0x0478, r27
561e: 6e 0c add r6, r14
5620: 7f 1c adc r7, r15
5622: 80 1e adc r8, r16
5624: 91 1e adc r9, r17
5626: e0 90 ad 03 lds r14, 0x03AD
562a: ff 24 eor r15, r15
562c: 00 e0 ldi r16, 0x00 ; 0
562e: 10 e0 ldi r17, 0x00 ; 0
5630: c4 01 movw r24, r8
5632: b3 01 movw r22, r6
5634: 2e 81 ldd r18, Y+6 ; 0x06
5636: 3f 81 ldd r19, Y+7 ; 0x07
5638: 48 85 ldd r20, Y+8 ; 0x08
563a: 59 85 ldd r21, Y+9 ; 0x09
563c: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
5640: 20 e0 ldi r18, 0x00 ; 0
5642: 38 e0 ldi r19, 0x08 ; 8
5644: 40 e0 ldi r20, 0x00 ; 0
5646: 50 e0 ldi r21, 0x00 ; 0
5648: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
564c: ca 01 movw r24, r20
564e: b9 01 movw r22, r18
5650: a8 01 movw r20, r16
5652: 97 01 movw r18, r14
5654: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
5658: 20 e0 ldi r18, 0x00 ; 0
565a: 30 e1 ldi r19, 0x10 ; 16
565c: 40 e0 ldi r20, 0x00 ; 0
565e: 50 e0 ldi r21, 0x00 ; 0
5660: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
5664: 59 01 movw r10, r18
5666: 6a 01 movw r12, r20
5668: 20 93 1c 05 sts 0x051C, r18
566c: 30 93 1d 05 sts 0x051D, r19
5670: 40 93 1e 05 sts 0x051E, r20
5674: 50 93 1f 05 sts 0x051F, r21
5678: c4 01 movw r24, r8
567a: b3 01 movw r22, r6
567c: 2a 81 ldd r18, Y+2 ; 0x02
567e: 3b 81 ldd r19, Y+3 ; 0x03
5680: 4c 81 ldd r20, Y+4 ; 0x04
5682: 5d 81 ldd r21, Y+5 ; 0x05
5684: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
5688: 20 e0 ldi r18, 0x00 ; 0
568a: 38 e0 ldi r19, 0x08 ; 8
568c: 40 e0 ldi r20, 0x00 ; 0
568e: 50 e0 ldi r21, 0x00 ; 0
5690: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
5694: ca 01 movw r24, r20
5696: b9 01 movw r22, r18
5698: a8 01 movw r20, r16
569a: 97 01 movw r18, r14
569c: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
56a0: 20 e0 ldi r18, 0x00 ; 0
56a2: 30 e1 ldi r19, 0x10 ; 16
56a4: 40 e0 ldi r20, 0x00 ; 0
56a6: 50 e0 ldi r21, 0x00 ; 0
56a8: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
56ac: 20 93 18 05 sts 0x0518, r18
56b0: 30 93 19 05 sts 0x0519, r19
56b4: 40 93 1a 05 sts 0x051A, r20
56b8: 50 93 1b 05 sts 0x051B, r21
56bc: d7 fc sbrc r13, 7
56be: e8 c0 rjmp .+464 ; 0x5890 <Mittelwert+0x10aa>
56c0: 91 e8 ldi r25, 0x81 ; 129
56c2: a9 16 cp r10, r25
56c4: b1 04 cpc r11, r1
56c6: c1 04 cpc r12, r1
56c8: d1 04 cpc r13, r1
56ca: 44 f4 brge .+16 ; 0x56dc <Mittelwert+0xef6>
56cc: 57 fd sbrc r21, 7
56ce: d8 c0 rjmp .+432 ; 0x5880 <Mittelwert+0x109a>
56d0: 21 38 cpi r18, 0x81 ; 129
56d2: 31 05 cpc r19, r1
56d4: 41 05 cpc r20, r1
56d6: 51 05 cpc r21, r1
56d8: 0c f4 brge .+2 ; 0x56dc <Mittelwert+0xef6>
56da: 74 ca rjmp .-2840 ; 0x4bc4 <Mittelwert+0x3de>
56dc: 81 e0 ldi r24, 0x01 ; 1
56de: 80 93 89 04 sts 0x0489, r24
56e2: 20 90 7e 08 lds r2, 0x087E
56e6: 30 90 7f 08 lds r3, 0x087F
56ea: 40 90 80 08 lds r4, 0x0880
56ee: 50 90 81 08 lds r5, 0x0881
56f2: 68 ca rjmp .-2864 ; 0x4bc4 <Mittelwert+0x3de>
56f4: 40 58 subi r20, 0x80 ; 128
56f6: 5f 4f sbci r21, 0xFF ; 255
56f8: 0c f0 brlt .+2 ; 0x56fc <Mittelwert+0xf16>
56fa: fa cc rjmp .-1548 ; 0x50f0 <Mittelwert+0x90a>
56fc: 80 e8 ldi r24, 0x80 ; 128
56fe: 9f ef ldi r25, 0xFF ; 255
5700: 90 93 0b 05 sts 0x050B, r25
5704: 80 93 0a 05 sts 0x050A, r24
5708: f3 cc rjmp .-1562 ; 0x50f0 <Mittelwert+0x90a>
570a: 07 96 adiw r24, 0x07 ; 7
570c: 02 cc rjmp .-2044 ; 0x4f12 <Mittelwert+0x72c>
570e: 26 0e add r2, r22
5710: 37 1e adc r3, r23
5712: 48 1e adc r4, r24
5714: 59 1e adc r5, r25
5716: 20 92 7e 08 sts 0x087E, r2
571a: 30 92 7f 08 sts 0x087F, r3
571e: 40 92 80 08 sts 0x0880, r4
5722: 50 92 81 08 sts 0x0881, r5
5726: 9d ca rjmp .-2758 ; 0x4c62 <Mittelwert+0x47c>
5728: ad 89 ldd r26, Y+21 ; 0x15
572a: ea 2e mov r14, r26
572c: ff 24 eor r15, r15
572e: 00 e0 ldi r16, 0x00 ; 0
5730: 10 e0 ldi r17, 0x00 ; 0
5732: 60 91 d1 07 lds r22, 0x07D1
5736: 70 91 d2 07 lds r23, 0x07D2
573a: 77 fd sbrc r23, 7
573c: 8a c0 rjmp .+276 ; 0x5852 <Mittelwert+0x106c>
573e: 88 27 eor r24, r24
5740: 77 fd sbrc r23, 7
5742: 80 95 com r24
5744: 98 2f mov r25, r24
5746: a8 01 movw r20, r16
5748: 97 01 movw r18, r14
574a: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
574e: 20 e4 ldi r18, 0x40 ; 64
5750: 30 e0 ldi r19, 0x00 ; 0
5752: 40 e0 ldi r20, 0x00 ; 0
5754: 50 e0 ldi r21, 0x00 ; 0
5756: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
575a: 82 1a sub r8, r18
575c: 93 0a sbc r9, r19
575e: 90 92 44 08 sts 0x0844, r9
5762: 80 92 43 08 sts 0x0843, r8
5766: ea 8d ldd r30, Y+26 ; 0x1a
5768: fb 8d ldd r31, Y+27 ; 0x1b
576a: 1e 16 cp r1, r30
576c: 1f 06 cpc r1, r31
576e: 0c f4 brge .+2 ; 0x5772 <Mittelwert+0xf8c>
5770: 1e cd rjmp .-1476 ; 0x51ae <Mittelwert+0x9c8>
5772: 20 91 d5 07 lds r18, 0x07D5
5776: 30 91 d6 07 lds r19, 0x07D6
577a: 37 fd sbrc r19, 7
577c: 6e c0 rjmp .+220 ; 0x585a <Mittelwert+0x1074>
577e: 44 27 eor r20, r20
5780: 37 fd sbrc r19, 7
5782: 40 95 com r20
5784: 54 2f mov r21, r20
5786: c8 01 movw r24, r16
5788: b7 01 movw r22, r14
578a: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
578e: 20 e4 ldi r18, 0x40 ; 64
5790: 30 e0 ldi r19, 0x00 ; 0
5792: 40 e0 ldi r20, 0x00 ; 0
5794: 50 e0 ldi r21, 0x00 ; 0
5796: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
579a: 62 1a sub r6, r18
579c: 73 0a sbc r7, r19
579e: 70 92 3a 08 sts 0x083A, r7
57a2: 60 92 39 08 sts 0x0839, r6
57a6: f9 81 ldd r31, Y+1 ; 0x01
57a8: f7 ff sbrs r31, 7
57aa: 1e cd rjmp .-1476 ; 0x51e8 <Mittelwert+0xa02>
57ac: 2a 85 ldd r18, Y+10 ; 0x0a
57ae: 22 23 and r18, r18
57b0: 09 f0 breq .+2 ; 0x57b4 <Mittelwert+0xfce>
57b2: 1a cd rjmp .-1484 ; 0x51e8 <Mittelwert+0xa02>
57b4: 80 91 a7 04 lds r24, 0x04A7
57b8: 88 23 and r24, r24
57ba: 09 f0 breq .+2 ; 0x57be <Mittelwert+0xfd8>
57bc: 15 cd rjmp .-1494 ; 0x51e8 <Mittelwert+0xa02>
57be: 8a 8d ldd r24, Y+26 ; 0x1a
57c0: 9b 8d ldd r25, Y+27 ; 0x1b
57c2: 81 50 subi r24, 0x01 ; 1
57c4: 91 40 sbci r25, 0x01 ; 1
57c6: 0c f0 brlt .+2 ; 0x57ca <Mittelwert+0xfe4>
57c8: 4c c0 rjmp .+152 ; 0x5862 <Mittelwert+0x107c>
57ca: 2a 8d ldd r18, Y+26 ; 0x1a
57cc: 3b 8d ldd r19, Y+27 ; 0x1b
57ce: 6f ef ldi r22, 0xFF ; 255
57d0: 20 30 cpi r18, 0x00 ; 0
57d2: 36 07 cpc r19, r22
57d4: 64 f4 brge .+24 ; 0x57ee <Mittelwert+0x1008>
57d6: 80 91 46 08 lds r24, 0x0846
57da: 90 91 47 08 lds r25, 0x0847
57de: 80 50 subi r24, 0x00 ; 0
57e0: 9f 4f sbci r25, 0xFF ; 255
57e2: 82 0f add r24, r18
57e4: 93 1f adc r25, r19
57e6: 90 93 47 08 sts 0x0847, r25
57ea: 80 93 46 08 sts 0x0846, r24
57ee: 8b 89 ldd r24, Y+19 ; 0x13
57f0: 9c 89 ldd r25, Y+20 ; 0x14
57f2: 81 50 subi r24, 0x01 ; 1
57f4: 91 40 sbci r25, 0x01 ; 1
57f6: 0c f4 brge .+2 ; 0x57fa <Mittelwert+0x1014>
57f8: 54 c0 rjmp .+168 ; 0x58a2 <Mittelwert+0x10bc>
57fa: 80 91 36 08 lds r24, 0x0836
57fe: 90 91 37 08 lds r25, 0x0837
5802: 80 50 subi r24, 0x00 ; 0
5804: 91 40 sbci r25, 0x01 ; 1
5806: eb 89 ldd r30, Y+19 ; 0x13
5808: fc 89 ldd r31, Y+20 ; 0x14
580a: 8e 0f add r24, r30
580c: 9f 1f adc r25, r31
580e: 90 93 37 08 sts 0x0837, r25
5812: 80 93 36 08 sts 0x0836, r24
5816: e8 cc rjmp .-1584 ; 0x51e8 <Mittelwert+0xa02>
5818: 07 96 adiw r24, 0x07 ; 7
581a: 8b cb rjmp .-2282 ; 0x4f32 <Mittelwert+0x74c>
581c: 29 5f subi r18, 0xF9 ; 249
581e: 3f 4f sbci r19, 0xFF ; 255
5820: 20 c8 rjmp .-4032 ; 0x4862 <Mittelwert+0x7c>
5822: 29 5f subi r18, 0xF9 ; 249
5824: 3f 4f sbci r19, 0xFF ; 255
5826: 0c 94 23 24 jmp 0x4846 ; 0x4846 <Mittelwert+0x60>
582a: 2f 5f subi r18, 0xFF ; 255
582c: 3f 4f sbci r19, 0xFF ; 255
582e: 08 cc rjmp .-2032 ; 0x5040 <Mittelwert+0x85a>
5830: 30 95 com r19
5832: 21 95 neg r18
5834: 3f 4f sbci r19, 0xFF ; 255
5836: c1 cc rjmp .-1662 ; 0x51ba <Mittelwert+0x9d4>
5838: 70 95 com r23
583a: 61 95 neg r22
583c: 7f 4f sbci r23, 0xFF ; 255
583e: 9d cc rjmp .-1734 ; 0x517a <Mittelwert+0x994>
5840: 21 5f subi r18, 0xF1 ; 241
5842: 3f 4f sbci r19, 0xFF ; 255
5844: 1d cc rjmp .-1990 ; 0x5080 <Mittelwert+0x89a>
5846: 21 5f subi r18, 0xF1 ; 241
5848: 3f 4f sbci r19, 0xFF ; 255
584a: 60 cc rjmp .-1856 ; 0x510c <Mittelwert+0x926>
584c: 2f 5f subi r18, 0xFF ; 255
584e: 3f 4f sbci r19, 0xFF ; 255
5850: 3f cc rjmp .-1922 ; 0x50d0 <Mittelwert+0x8ea>
5852: 70 95 com r23
5854: 61 95 neg r22
5856: 7f 4f sbci r23, 0xFF ; 255
5858: 72 cf rjmp .-284 ; 0x573e <Mittelwert+0xf58>
585a: 30 95 com r19
585c: 21 95 neg r18
585e: 3f 4f sbci r19, 0xFF ; 255
5860: 8e cf rjmp .-228 ; 0x577e <Mittelwert+0xf98>
5862: 80 91 46 08 lds r24, 0x0846
5866: 90 91 47 08 lds r25, 0x0847
586a: 80 50 subi r24, 0x00 ; 0
586c: 91 40 sbci r25, 0x01 ; 1
586e: ea 8d ldd r30, Y+26 ; 0x1a
5870: fb 8d ldd r31, Y+27 ; 0x1b
5872: 8e 0f add r24, r30
5874: 9f 1f adc r25, r31
5876: 90 93 47 08 sts 0x0847, r25
587a: 80 93 46 08 sts 0x0846, r24
587e: b7 cf rjmp .-146 ; 0x57ee <Mittelwert+0x1008>
5880: 50 95 com r21
5882: 40 95 com r20
5884: 30 95 com r19
5886: 21 95 neg r18
5888: 3f 4f sbci r19, 0xFF ; 255
588a: 4f 4f sbci r20, 0xFF ; 255
588c: 5f 4f sbci r21, 0xFF ; 255
588e: 20 cf rjmp .-448 ; 0x56d0 <Mittelwert+0xeea>
5890: d0 94 com r13
5892: c0 94 com r12
5894: b0 94 com r11
5896: a0 94 com r10
5898: a1 1c adc r10, r1
589a: b1 1c adc r11, r1
589c: c1 1c adc r12, r1
589e: d1 1c adc r13, r1
58a0: 0f cf rjmp .-482 ; 0x56c0 <Mittelwert+0xeda>
58a2: 2b 89 ldd r18, Y+19 ; 0x13
58a4: 3c 89 ldd r19, Y+20 ; 0x14
58a6: 6f ef ldi r22, 0xFF ; 255
58a8: 20 30 cpi r18, 0x00 ; 0
58aa: 36 07 cpc r19, r22
58ac: 0c f0 brlt .+2 ; 0x58b0 <Mittelwert+0x10ca>
58ae: 9c cc rjmp .-1736 ; 0x51e8 <Mittelwert+0xa02>
58b0: 80 91 36 08 lds r24, 0x0836
58b4: 90 91 37 08 lds r25, 0x0837
58b8: 80 50 subi r24, 0x00 ; 0
58ba: 9f 4f sbci r25, 0xFF ; 255
58bc: 82 0f add r24, r18
58be: 93 1f adc r25, r19
58c0: 90 93 37 08 sts 0x0837, r25
58c4: 80 93 36 08 sts 0x0836, r24
58c8: 8f cc rjmp .-1762 ; 0x51e8 <Mittelwert+0xa02>
58ca: 6b 96 adiw r28, 0x1b ; 27
58cc: 0f b6 in r0, 0x3f ; 63
58ce: f8 94 cli
58d0: de bf out 0x3e, r29 ; 62
58d2: 0f be out 0x3f, r0 ; 63
58d4: cd bf out 0x3d, r28 ; 61
58d6: df 91 pop r29
58d8: cf 91 pop r28
58da: 1f 91 pop r17
58dc: 0f 91 pop r16
58de: ff 90 pop r15
58e0: ef 90 pop r14
58e2: df 90 pop r13
58e4: cf 90 pop r12
58e6: bf 90 pop r11
58e8: af 90 pop r10
58ea: 9f 90 pop r9
58ec: 8f 90 pop r8
58ee: 7f 90 pop r7
58f0: 6f 90 pop r6
58f2: 5f 90 pop r5
58f4: 4f 90 pop r4
58f6: 3f 90 pop r3
58f8: 2f 90 pop r2
58fa: 08 95 ret
 
000058fc <ParameterZuordnung>:
58fc: 80 91 e2 07 lds r24, 0x07E2
5900: 8b 3f cpi r24, 0xFB ; 251
5902: 80 f0 brcs .+32 ; 0x5924 <ParameterZuordnung+0x28>
5904: 8b 3f cpi r24, 0xFB ; 251
5906: 09 f4 brne .+2 ; 0x590a <ParameterZuordnung+0xe>
5908: ed c2 rjmp .+1498 ; 0x5ee4 <ParameterZuordnung+0x5e8>
590a: 8c 3f cpi r24, 0xFC ; 252
590c: 09 f4 brne .+2 ; 0x5910 <ParameterZuordnung+0x14>
590e: c1 c3 rjmp .+1922 ; 0x6092 <ParameterZuordnung+0x796>
5910: 8d 3f cpi r24, 0xFD ; 253
5912: 09 f4 brne .+2 ; 0x5916 <ParameterZuordnung+0x1a>
5914: 28 c3 rjmp .+1616 ; 0x5f66 <ParameterZuordnung+0x66a>
5916: 8e 3f cpi r24, 0xFE ; 254
5918: 39 f4 brne .+14 ; 0x5928 <ParameterZuordnung+0x2c>
591a: 80 91 92 04 lds r24, 0x0492
591e: 80 93 a2 03 sts 0x03A2, r24
5922: 02 c0 rjmp .+4 ; 0x5928 <ParameterZuordnung+0x2c>
5924: 80 93 a2 03 sts 0x03A2, r24
5928: 80 91 e1 07 lds r24, 0x07E1
592c: 8b 3f cpi r24, 0xFB ; 251
592e: 80 f0 brcs .+32 ; 0x5950 <ParameterZuordnung+0x54>
5930: 8b 3f cpi r24, 0xFB ; 251
5932: 09 f4 brne .+2 ; 0x5936 <ParameterZuordnung+0x3a>
5934: c8 c2 rjmp .+1424 ; 0x5ec6 <ParameterZuordnung+0x5ca>
5936: 8c 3f cpi r24, 0xFC ; 252
5938: 09 f4 brne .+2 ; 0x593c <ParameterZuordnung+0x40>
593a: d8 c3 rjmp .+1968 ; 0x60ec <ParameterZuordnung+0x7f0>
593c: 8d 3f cpi r24, 0xFD ; 253
593e: 09 f4 brne .+2 ; 0x5942 <ParameterZuordnung+0x46>
5940: 03 c3 rjmp .+1542 ; 0x5f48 <ParameterZuordnung+0x64c>
5942: 8e 3f cpi r24, 0xFE ; 254
5944: 39 f4 brne .+14 ; 0x5954 <ParameterZuordnung+0x58>
5946: 80 91 92 04 lds r24, 0x0492
594a: 80 93 a1 03 sts 0x03A1, r24
594e: 02 c0 rjmp .+4 ; 0x5954 <ParameterZuordnung+0x58>
5950: 80 93 a1 03 sts 0x03A1, r24
5954: 80 91 a1 03 lds r24, 0x03A1
5958: 88 23 and r24, r24
595a: b1 f4 brne .+44 ; 0x5988 <ParameterZuordnung+0x8c>
595c: 10 92 a1 03 sts 0x03A1, r1
5960: 80 91 e3 07 lds r24, 0x07E3
5964: 8b 3f cpi r24, 0xFB ; 251
5966: c8 f0 brcs .+50 ; 0x599a <ParameterZuordnung+0x9e>
5968: 8b 3f cpi r24, 0xFB ; 251
596a: 09 f4 brne .+2 ; 0x596e <ParameterZuordnung+0x72>
596c: b1 c2 rjmp .+1378 ; 0x5ed0 <ParameterZuordnung+0x5d4>
596e: 8c 3f cpi r24, 0xFC ; 252
5970: 09 f4 brne .+2 ; 0x5974 <ParameterZuordnung+0x78>
5972: c1 c3 rjmp .+1922 ; 0x60f6 <ParameterZuordnung+0x7fa>
5974: 8d 3f cpi r24, 0xFD ; 253
5976: 09 f4 brne .+2 ; 0x597a <ParameterZuordnung+0x7e>
5978: ec c2 rjmp .+1496 ; 0x5f52 <ParameterZuordnung+0x656>
597a: 8e 3f cpi r24, 0xFE ; 254
597c: 81 f4 brne .+32 ; 0x599e <ParameterZuordnung+0xa2>
597e: 80 91 92 04 lds r24, 0x0492
5982: 80 93 a3 03 sts 0x03A3, r24
5986: 0b c0 rjmp .+22 ; 0x599e <ParameterZuordnung+0xa2>
5988: 84 36 cpi r24, 0x64 ; 100
598a: 50 f3 brcs .-44 ; 0x5960 <ParameterZuordnung+0x64>
598c: 84 e6 ldi r24, 0x64 ; 100
598e: 80 93 a1 03 sts 0x03A1, r24
5992: 80 91 e3 07 lds r24, 0x07E3
5996: 8b 3f cpi r24, 0xFB ; 251
5998: 38 f7 brcc .-50 ; 0x5968 <ParameterZuordnung+0x6c>
599a: 80 93 a3 03 sts 0x03A3, r24
599e: 80 91 a3 03 lds r24, 0x03A3
59a2: 88 23 and r24, r24
59a4: b1 f4 brne .+44 ; 0x59d2 <ParameterZuordnung+0xd6>
59a6: 10 92 a3 03 sts 0x03A3, r1
59aa: 80 91 e5 07 lds r24, 0x07E5
59ae: 8b 3f cpi r24, 0xFB ; 251
59b0: c8 f0 brcs .+50 ; 0x59e4 <ParameterZuordnung+0xe8>
59b2: 8b 3f cpi r24, 0xFB ; 251
59b4: 09 f4 brne .+2 ; 0x59b8 <ParameterZuordnung+0xbc>
59b6: 91 c2 rjmp .+1314 ; 0x5eda <ParameterZuordnung+0x5de>
59b8: 8c 3f cpi r24, 0xFC ; 252
59ba: 09 f4 brne .+2 ; 0x59be <ParameterZuordnung+0xc2>
59bc: 65 c3 rjmp .+1738 ; 0x6088 <ParameterZuordnung+0x78c>
59be: 8d 3f cpi r24, 0xFD ; 253
59c0: 09 f4 brne .+2 ; 0x59c4 <ParameterZuordnung+0xc8>
59c2: cc c2 rjmp .+1432 ; 0x5f5c <ParameterZuordnung+0x660>
59c4: 8e 3f cpi r24, 0xFE ; 254
59c6: 81 f4 brne .+32 ; 0x59e8 <ParameterZuordnung+0xec>
59c8: 80 91 92 04 lds r24, 0x0492
59cc: 80 93 a4 03 sts 0x03A4, r24
59d0: 0b c0 rjmp .+22 ; 0x59e8 <ParameterZuordnung+0xec>
59d2: 84 36 cpi r24, 0x64 ; 100
59d4: 50 f3 brcs .-44 ; 0x59aa <ParameterZuordnung+0xae>
59d6: 84 e6 ldi r24, 0x64 ; 100
59d8: 80 93 a3 03 sts 0x03A3, r24
59dc: 80 91 e5 07 lds r24, 0x07E5
59e0: 8b 3f cpi r24, 0xFB ; 251
59e2: 38 f7 brcc .-50 ; 0x59b2 <ParameterZuordnung+0xb6>
59e4: 80 93 a4 03 sts 0x03A4, r24
59e8: 80 91 ec 07 lds r24, 0x07EC
59ec: 8b 3f cpi r24, 0xFB ; 251
59ee: 80 f0 brcs .+32 ; 0x5a10 <ParameterZuordnung+0x114>
59f0: 8b 3f cpi r24, 0xFB ; 251
59f2: 09 f4 brne .+2 ; 0x59f6 <ParameterZuordnung+0xfa>
59f4: 86 c2 rjmp .+1292 ; 0x5f02 <ParameterZuordnung+0x606>
59f6: 8c 3f cpi r24, 0xFC ; 252
59f8: 09 f4 brne .+2 ; 0x59fc <ParameterZuordnung+0x100>
59fa: 69 c3 rjmp .+1746 ; 0x60ce <ParameterZuordnung+0x7d2>
59fc: 8d 3f cpi r24, 0xFD ; 253
59fe: 09 f4 brne .+2 ; 0x5a02 <ParameterZuordnung+0x106>
5a00: 94 c2 rjmp .+1320 ; 0x5f2a <ParameterZuordnung+0x62e>
5a02: 8e 3f cpi r24, 0xFE ; 254
5a04: 39 f4 brne .+14 ; 0x5a14 <ParameterZuordnung+0x118>
5a06: 80 91 92 04 lds r24, 0x0492
5a0a: 80 93 a5 03 sts 0x03A5, r24
5a0e: 02 c0 rjmp .+4 ; 0x5a14 <ParameterZuordnung+0x118>
5a10: 80 93 a5 03 sts 0x03A5, r24
5a14: 80 91 ed 07 lds r24, 0x07ED
5a18: 8b 3f cpi r24, 0xFB ; 251
5a1a: 80 f0 brcs .+32 ; 0x5a3c <ParameterZuordnung+0x140>
5a1c: 8b 3f cpi r24, 0xFB ; 251
5a1e: 09 f4 brne .+2 ; 0x5a22 <ParameterZuordnung+0x126>
5a20: 66 c2 rjmp .+1228 ; 0x5eee <ParameterZuordnung+0x5f2>
5a22: 8c 3f cpi r24, 0xFC ; 252
5a24: 09 f4 brne .+2 ; 0x5a28 <ParameterZuordnung+0x12c>
5a26: 6c c3 rjmp .+1752 ; 0x6100 <ParameterZuordnung+0x804>
5a28: 8d 3f cpi r24, 0xFD ; 253
5a2a: 09 f4 brne .+2 ; 0x5a2e <ParameterZuordnung+0x132>
5a2c: 83 c2 rjmp .+1286 ; 0x5f34 <ParameterZuordnung+0x638>
5a2e: 8e 3f cpi r24, 0xFE ; 254
5a30: 39 f4 brne .+14 ; 0x5a40 <ParameterZuordnung+0x144>
5a32: 80 91 92 04 lds r24, 0x0492
5a36: 80 93 a7 03 sts 0x03A7, r24
5a3a: 02 c0 rjmp .+4 ; 0x5a40 <ParameterZuordnung+0x144>
5a3c: 80 93 a7 03 sts 0x03A7, r24
5a40: 80 91 a7 03 lds r24, 0x03A7
5a44: 8b 30 cpi r24, 0x0B ; 11
5a46: b8 f4 brcc .+46 ; 0x5a76 <ParameterZuordnung+0x17a>
5a48: 8a e0 ldi r24, 0x0A ; 10
5a4a: 80 93 a7 03 sts 0x03A7, r24
5a4e: 80 91 ee 07 lds r24, 0x07EE
5a52: 8b 3f cpi r24, 0xFB ; 251
5a54: c0 f0 brcs .+48 ; 0x5a86 <ParameterZuordnung+0x18a>
5a56: 8b 3f cpi r24, 0xFB ; 251
5a58: 09 f4 brne .+2 ; 0x5a5c <ParameterZuordnung+0x160>
5a5a: 4e c2 rjmp .+1180 ; 0x5ef8 <ParameterZuordnung+0x5fc>
5a5c: 8c 3f cpi r24, 0xFC ; 252
5a5e: 09 f4 brne .+2 ; 0x5a62 <ParameterZuordnung+0x166>
5a60: 54 c3 rjmp .+1704 ; 0x610a <ParameterZuordnung+0x80e>
5a62: 8d 3f cpi r24, 0xFD ; 253
5a64: 09 f4 brne .+2 ; 0x5a68 <ParameterZuordnung+0x16c>
5a66: 6b c2 rjmp .+1238 ; 0x5f3e <ParameterZuordnung+0x642>
5a68: 8e 3f cpi r24, 0xFE ; 254
5a6a: 79 f4 brne .+30 ; 0x5a8a <ParameterZuordnung+0x18e>
5a6c: 80 91 92 04 lds r24, 0x0492
5a70: 80 93 a8 03 sts 0x03A8, r24
5a74: 0a c0 rjmp .+20 ; 0x5a8a <ParameterZuordnung+0x18e>
5a76: 8f 3f cpi r24, 0xFF ; 255
5a78: 51 f7 brne .-44 ; 0x5a4e <ParameterZuordnung+0x152>
5a7a: 80 93 a7 03 sts 0x03A7, r24
5a7e: 80 91 ee 07 lds r24, 0x07EE
5a82: 8b 3f cpi r24, 0xFB ; 251
5a84: 40 f7 brcc .-48 ; 0x5a56 <ParameterZuordnung+0x15a>
5a86: 80 93 a8 03 sts 0x03A8, r24
5a8a: 80 91 ef 07 lds r24, 0x07EF
5a8e: 8b 3f cpi r24, 0xFB ; 251
5a90: 80 f0 brcs .+32 ; 0x5ab2 <ParameterZuordnung+0x1b6>
5a92: 8b 3f cpi r24, 0xFB ; 251
5a94: 09 f4 brne .+2 ; 0x5a98 <ParameterZuordnung+0x19c>
5a96: f4 c1 rjmp .+1000 ; 0x5e80 <ParameterZuordnung+0x584>
5a98: 8c 3f cpi r24, 0xFC ; 252
5a9a: 09 f4 brne .+2 ; 0x5a9e <ParameterZuordnung+0x1a2>
5a9c: 13 c3 rjmp .+1574 ; 0x60c4 <ParameterZuordnung+0x7c8>
5a9e: 8d 3f cpi r24, 0xFD ; 253
5aa0: 09 f4 brne .+2 ; 0x5aa4 <ParameterZuordnung+0x1a8>
5aa2: 3e c2 rjmp .+1148 ; 0x5f20 <ParameterZuordnung+0x624>
5aa4: 8e 3f cpi r24, 0xFE ; 254
5aa6: 39 f4 brne .+14 ; 0x5ab6 <ParameterZuordnung+0x1ba>
5aa8: 80 91 92 04 lds r24, 0x0492
5aac: 80 93 a6 03 sts 0x03A6, r24
5ab0: 02 c0 rjmp .+4 ; 0x5ab6 <ParameterZuordnung+0x1ba>
5ab2: 80 93 a6 03 sts 0x03A6, r24
5ab6: 80 91 f4 07 lds r24, 0x07F4
5aba: 8b 3f cpi r24, 0xFB ; 251
5abc: 80 f0 brcs .+32 ; 0x5ade <ParameterZuordnung+0x1e2>
5abe: 8b 3f cpi r24, 0xFB ; 251
5ac0: 09 f4 brne .+2 ; 0x5ac4 <ParameterZuordnung+0x1c8>
5ac2: e3 c1 rjmp .+966 ; 0x5e8a <ParameterZuordnung+0x58e>
5ac4: 8c 3f cpi r24, 0xFC ; 252
5ac6: 09 f4 brne .+2 ; 0x5aca <ParameterZuordnung+0x1ce>
5ac8: d0 c2 rjmp .+1440 ; 0x606a <ParameterZuordnung+0x76e>
5aca: 8d 3f cpi r24, 0xFD ; 253
5acc: 09 f4 brne .+2 ; 0x5ad0 <ParameterZuordnung+0x1d4>
5ace: 87 c2 rjmp .+1294 ; 0x5fde <ParameterZuordnung+0x6e2>
5ad0: 8e 3f cpi r24, 0xFE ; 254
5ad2: 39 f4 brne .+14 ; 0x5ae2 <ParameterZuordnung+0x1e6>
5ad4: 80 91 92 04 lds r24, 0x0492
5ad8: 80 93 aa 03 sts 0x03AA, r24
5adc: 02 c0 rjmp .+4 ; 0x5ae2 <ParameterZuordnung+0x1e6>
5ade: 80 93 aa 03 sts 0x03AA, r24
5ae2: 80 91 f5 07 lds r24, 0x07F5
5ae6: 8b 3f cpi r24, 0xFB ; 251
5ae8: 80 f0 brcs .+32 ; 0x5b0a <ParameterZuordnung+0x20e>
5aea: 8b 3f cpi r24, 0xFB ; 251
5aec: 09 f4 brne .+2 ; 0x5af0 <ParameterZuordnung+0x1f4>
5aee: d2 c1 rjmp .+932 ; 0x5e94 <ParameterZuordnung+0x598>
5af0: 8c 3f cpi r24, 0xFC ; 252
5af2: 09 f4 brne .+2 ; 0x5af6 <ParameterZuordnung+0x1fa>
5af4: 97 c2 rjmp .+1326 ; 0x6024 <ParameterZuordnung+0x728>
5af6: 8d 3f cpi r24, 0xFD ; 253
5af8: 09 f4 brne .+2 ; 0x5afc <ParameterZuordnung+0x200>
5afa: 62 c2 rjmp .+1220 ; 0x5fc0 <ParameterZuordnung+0x6c4>
5afc: 8e 3f cpi r24, 0xFE ; 254
5afe: 39 f4 brne .+14 ; 0x5b0e <ParameterZuordnung+0x212>
5b00: 80 91 92 04 lds r24, 0x0492
5b04: 80 93 ac 04 sts 0x04AC, r24
5b08: 02 c0 rjmp .+4 ; 0x5b0e <ParameterZuordnung+0x212>
5b0a: 80 93 ac 04 sts 0x04AC, r24
5b0e: 80 91 f6 07 lds r24, 0x07F6
5b12: 8b 3f cpi r24, 0xFB ; 251
5b14: 80 f0 brcs .+32 ; 0x5b36 <ParameterZuordnung+0x23a>
5b16: 8b 3f cpi r24, 0xFB ; 251
5b18: 09 f4 brne .+2 ; 0x5b1c <ParameterZuordnung+0x220>
5b1a: 9e c1 rjmp .+828 ; 0x5e58 <ParameterZuordnung+0x55c>
5b1c: 8c 3f cpi r24, 0xFC ; 252
5b1e: 09 f4 brne .+2 ; 0x5b22 <ParameterZuordnung+0x226>
5b20: 86 c2 rjmp .+1292 ; 0x602e <ParameterZuordnung+0x732>
5b22: 8d 3f cpi r24, 0xFD ; 253
5b24: 09 f4 brne .+2 ; 0x5b28 <ParameterZuordnung+0x22c>
5b26: 51 c2 rjmp .+1186 ; 0x5fca <ParameterZuordnung+0x6ce>
5b28: 8e 3f cpi r24, 0xFE ; 254
5b2a: 39 f4 brne .+14 ; 0x5b3a <ParameterZuordnung+0x23e>
5b2c: 80 91 92 04 lds r24, 0x0492
5b30: 80 93 ad 04 sts 0x04AD, r24
5b34: 02 c0 rjmp .+4 ; 0x5b3a <ParameterZuordnung+0x23e>
5b36: 80 93 ad 04 sts 0x04AD, r24
5b3a: 80 91 f7 07 lds r24, 0x07F7
5b3e: 8b 3f cpi r24, 0xFB ; 251
5b40: 80 f0 brcs .+32 ; 0x5b62 <ParameterZuordnung+0x266>
5b42: 8b 3f cpi r24, 0xFB ; 251
5b44: 09 f4 brne .+2 ; 0x5b48 <ParameterZuordnung+0x24c>
5b46: 8d c1 rjmp .+794 ; 0x5e62 <ParameterZuordnung+0x566>
5b48: 8c 3f cpi r24, 0xFC ; 252
5b4a: 09 f4 brne .+2 ; 0x5b4e <ParameterZuordnung+0x252>
5b4c: 89 c2 rjmp .+1298 ; 0x6060 <ParameterZuordnung+0x764>
5b4e: 8d 3f cpi r24, 0xFD ; 253
5b50: 09 f4 brne .+2 ; 0x5b54 <ParameterZuordnung+0x258>
5b52: 40 c2 rjmp .+1152 ; 0x5fd4 <ParameterZuordnung+0x6d8>
5b54: 8e 3f cpi r24, 0xFE ; 254
5b56: 39 f4 brne .+14 ; 0x5b66 <ParameterZuordnung+0x26a>
5b58: 80 91 92 04 lds r24, 0x0492
5b5c: 80 93 ae 04 sts 0x04AE, r24
5b60: 02 c0 rjmp .+4 ; 0x5b66 <ParameterZuordnung+0x26a>
5b62: 80 93 ae 04 sts 0x04AE, r24
5b66: 80 91 f8 07 lds r24, 0x07F8
5b6a: 8b 3f cpi r24, 0xFB ; 251
5b6c: 80 f0 brcs .+32 ; 0x5b8e <ParameterZuordnung+0x292>
5b6e: 8b 3f cpi r24, 0xFB ; 251
5b70: 09 f4 brne .+2 ; 0x5b74 <ParameterZuordnung+0x278>
5b72: 7c c1 rjmp .+760 ; 0x5e6c <ParameterZuordnung+0x570>
5b74: 8c 3f cpi r24, 0xFC ; 252
5b76: 09 f4 brne .+2 ; 0x5b7a <ParameterZuordnung+0x27e>
5b78: 6e c2 rjmp .+1244 ; 0x6056 <ParameterZuordnung+0x75a>
5b7a: 8d 3f cpi r24, 0xFD ; 253
5b7c: 09 f4 brne .+2 ; 0x5b80 <ParameterZuordnung+0x284>
5b7e: 39 c2 rjmp .+1138 ; 0x5ff2 <ParameterZuordnung+0x6f6>
5b80: 8e 3f cpi r24, 0xFE ; 254
5b82: 39 f4 brne .+14 ; 0x5b92 <ParameterZuordnung+0x296>
5b84: 80 91 92 04 lds r24, 0x0492
5b88: 80 93 af 04 sts 0x04AF, r24
5b8c: 02 c0 rjmp .+4 ; 0x5b92 <ParameterZuordnung+0x296>
5b8e: 80 93 af 04 sts 0x04AF, r24
5b92: 80 91 09 08 lds r24, 0x0809
5b96: 8b 3f cpi r24, 0xFB ; 251
5b98: 80 f0 brcs .+32 ; 0x5bba <ParameterZuordnung+0x2be>
5b9a: 8b 3f cpi r24, 0xFB ; 251
5b9c: 09 f4 brne .+2 ; 0x5ba0 <ParameterZuordnung+0x2a4>
5b9e: 6b c1 rjmp .+726 ; 0x5e76 <ParameterZuordnung+0x57a>
5ba0: 8c 3f cpi r24, 0xFC ; 252
5ba2: 09 f4 brne .+2 ; 0x5ba6 <ParameterZuordnung+0x2aa>
5ba4: 35 c2 rjmp .+1130 ; 0x6010 <ParameterZuordnung+0x714>
5ba6: 8d 3f cpi r24, 0xFD ; 253
5ba8: 09 f4 brne .+2 ; 0x5bac <ParameterZuordnung+0x2b0>
5baa: 28 c2 rjmp .+1104 ; 0x5ffc <ParameterZuordnung+0x700>
5bac: 8e 3f cpi r24, 0xFE ; 254
5bae: 39 f4 brne .+14 ; 0x5bbe <ParameterZuordnung+0x2c2>
5bb0: 80 91 92 04 lds r24, 0x0492
5bb4: 80 93 b0 04 sts 0x04B0, r24
5bb8: 02 c0 rjmp .+4 ; 0x5bbe <ParameterZuordnung+0x2c2>
5bba: 80 93 b0 04 sts 0x04B0, r24
5bbe: 80 91 0a 08 lds r24, 0x080A
5bc2: 8b 3f cpi r24, 0xFB ; 251
5bc4: 80 f0 brcs .+32 ; 0x5be6 <ParameterZuordnung+0x2ea>
5bc6: 8b 3f cpi r24, 0xFB ; 251
5bc8: 09 f4 brne .+2 ; 0x5bcc <ParameterZuordnung+0x2d0>
5bca: 1e c1 rjmp .+572 ; 0x5e08 <ParameterZuordnung+0x50c>
5bcc: 8c 3f cpi r24, 0xFC ; 252
5bce: 09 f4 brne .+2 ; 0x5bd2 <ParameterZuordnung+0x2d6>
5bd0: 24 c2 rjmp .+1096 ; 0x601a <ParameterZuordnung+0x71e>
5bd2: 8d 3f cpi r24, 0xFD ; 253
5bd4: 09 f4 brne .+2 ; 0x5bd8 <ParameterZuordnung+0x2dc>
5bd6: 17 c2 rjmp .+1070 ; 0x6006 <ParameterZuordnung+0x70a>
5bd8: 8e 3f cpi r24, 0xFE ; 254
5bda: 39 f4 brne .+14 ; 0x5bea <ParameterZuordnung+0x2ee>
5bdc: 80 91 92 04 lds r24, 0x0492
5be0: 80 93 b1 04 sts 0x04B1, r24
5be4: 02 c0 rjmp .+4 ; 0x5bea <ParameterZuordnung+0x2ee>
5be6: 80 93 b1 04 sts 0x04B1, r24
5bea: 80 91 0b 08 lds r24, 0x080B
5bee: 8b 3f cpi r24, 0xFB ; 251
5bf0: 80 f0 brcs .+32 ; 0x5c12 <ParameterZuordnung+0x316>
5bf2: 8b 3f cpi r24, 0xFB ; 251
5bf4: 09 f4 brne .+2 ; 0x5bf8 <ParameterZuordnung+0x2fc>
5bf6: 0d c1 rjmp .+538 ; 0x5e12 <ParameterZuordnung+0x516>
5bf8: 8c 3f cpi r24, 0xFC ; 252
5bfa: 09 f4 brne .+2 ; 0x5bfe <ParameterZuordnung+0x302>
5bfc: 27 c2 rjmp .+1102 ; 0x604c <ParameterZuordnung+0x750>
5bfe: 8d 3f cpi r24, 0xFD ; 253
5c00: 09 f4 brne .+2 ; 0x5c04 <ParameterZuordnung+0x308>
5c02: f2 c1 rjmp .+996 ; 0x5fe8 <ParameterZuordnung+0x6ec>
5c04: 8e 3f cpi r24, 0xFE ; 254
5c06: 39 f4 brne .+14 ; 0x5c16 <ParameterZuordnung+0x31a>
5c08: 80 91 92 04 lds r24, 0x0492
5c0c: 80 93 b2 04 sts 0x04B2, r24
5c10: 02 c0 rjmp .+4 ; 0x5c16 <ParameterZuordnung+0x31a>
5c12: 80 93 b2 04 sts 0x04B2, r24
5c16: 80 91 0c 08 lds r24, 0x080C
5c1a: 8b 3f cpi r24, 0xFB ; 251
5c1c: 80 f0 brcs .+32 ; 0x5c3e <ParameterZuordnung+0x342>
5c1e: 8b 3f cpi r24, 0xFB ; 251
5c20: 09 f4 brne .+2 ; 0x5c24 <ParameterZuordnung+0x328>
5c22: fc c0 rjmp .+504 ; 0x5e1c <ParameterZuordnung+0x520>
5c24: 8c 3f cpi r24, 0xFC ; 252
5c26: 09 f4 brne .+2 ; 0x5c2a <ParameterZuordnung+0x32e>
5c28: 0c c2 rjmp .+1048 ; 0x6042 <ParameterZuordnung+0x746>
5c2a: 8d 3f cpi r24, 0xFD ; 253
5c2c: 09 f4 brne .+2 ; 0x5c30 <ParameterZuordnung+0x334>
5c2e: c3 c1 rjmp .+902 ; 0x5fb6 <ParameterZuordnung+0x6ba>
5c30: 8e 3f cpi r24, 0xFE ; 254
5c32: 39 f4 brne .+14 ; 0x5c42 <ParameterZuordnung+0x346>
5c34: 80 91 92 04 lds r24, 0x0492
5c38: 80 93 b3 04 sts 0x04B3, r24
5c3c: 02 c0 rjmp .+4 ; 0x5c42 <ParameterZuordnung+0x346>
5c3e: 80 93 b3 04 sts 0x04B3, r24
5c42: 80 91 f9 07 lds r24, 0x07F9
5c46: 8b 3f cpi r24, 0xFB ; 251
5c48: 80 f0 brcs .+32 ; 0x5c6a <ParameterZuordnung+0x36e>
5c4a: 8b 3f cpi r24, 0xFB ; 251
5c4c: 09 f4 brne .+2 ; 0x5c50 <ParameterZuordnung+0x354>
5c4e: eb c0 rjmp .+470 ; 0x5e26 <ParameterZuordnung+0x52a>
5c50: 8c 3f cpi r24, 0xFC ; 252
5c52: 09 f4 brne .+2 ; 0x5c56 <ParameterZuordnung+0x35a>
5c54: 23 c2 rjmp .+1094 ; 0x609c <ParameterZuordnung+0x7a0>
5c56: 8d 3f cpi r24, 0xFD ; 253
5c58: 09 f4 brne .+2 ; 0x5c5c <ParameterZuordnung+0x360>
5c5a: 9e c1 rjmp .+828 ; 0x5f98 <ParameterZuordnung+0x69c>
5c5c: 8e 3f cpi r24, 0xFE ; 254
5c5e: 39 f4 brne .+14 ; 0x5c6e <ParameterZuordnung+0x372>
5c60: 80 91 92 04 lds r24, 0x0492
5c64: 80 93 ab 03 sts 0x03AB, r24
5c68: 02 c0 rjmp .+4 ; 0x5c6e <ParameterZuordnung+0x372>
5c6a: 80 93 ab 03 sts 0x03AB, r24
5c6e: 80 91 fe 07 lds r24, 0x07FE
5c72: 8b 3f cpi r24, 0xFB ; 251
5c74: 80 f0 brcs .+32 ; 0x5c96 <ParameterZuordnung+0x39a>
5c76: 8b 3f cpi r24, 0xFB ; 251
5c78: 09 f4 brne .+2 ; 0x5c7c <ParameterZuordnung+0x380>
5c7a: da c0 rjmp .+436 ; 0x5e30 <ParameterZuordnung+0x534>
5c7c: 8c 3f cpi r24, 0xFC ; 252
5c7e: 09 f4 brne .+2 ; 0x5c82 <ParameterZuordnung+0x386>
5c80: 12 c2 rjmp .+1060 ; 0x60a6 <ParameterZuordnung+0x7aa>
5c82: 8d 3f cpi r24, 0xFD ; 253
5c84: 09 f4 brne .+2 ; 0x5c88 <ParameterZuordnung+0x38c>
5c86: 8d c1 rjmp .+794 ; 0x5fa2 <ParameterZuordnung+0x6a6>
5c88: 8e 3f cpi r24, 0xFE ; 254
5c8a: 39 f4 brne .+14 ; 0x5c9a <ParameterZuordnung+0x39e>
5c8c: 80 91 92 04 lds r24, 0x0492
5c90: 80 93 ac 03 sts 0x03AC, r24
5c94: 02 c0 rjmp .+4 ; 0x5c9a <ParameterZuordnung+0x39e>
5c96: 80 93 ac 03 sts 0x03AC, r24
5c9a: 80 91 01 08 lds r24, 0x0801
5c9e: 8b 3f cpi r24, 0xFB ; 251
5ca0: 80 f0 brcs .+32 ; 0x5cc2 <ParameterZuordnung+0x3c6>
5ca2: 8b 3f cpi r24, 0xFB ; 251
5ca4: 09 f4 brne .+2 ; 0x5ca8 <ParameterZuordnung+0x3ac>
5ca6: c9 c0 rjmp .+402 ; 0x5e3a <ParameterZuordnung+0x53e>
5ca8: 8c 3f cpi r24, 0xFC ; 252
5caa: 09 f4 brne .+2 ; 0x5cae <ParameterZuordnung+0x3b2>
5cac: c5 c1 rjmp .+906 ; 0x6038 <ParameterZuordnung+0x73c>
5cae: 8d 3f cpi r24, 0xFD ; 253
5cb0: 09 f4 brne .+2 ; 0x5cb4 <ParameterZuordnung+0x3b8>
5cb2: 7c c1 rjmp .+760 ; 0x5fac <ParameterZuordnung+0x6b0>
5cb4: 8e 3f cpi r24, 0xFE ; 254
5cb6: 39 f4 brne .+14 ; 0x5cc6 <ParameterZuordnung+0x3ca>
5cb8: 80 91 92 04 lds r24, 0x0492
5cbc: 80 93 ad 03 sts 0x03AD, r24
5cc0: 02 c0 rjmp .+4 ; 0x5cc6 <ParameterZuordnung+0x3ca>
5cc2: 80 93 ad 03 sts 0x03AD, r24
5cc6: 80 91 02 08 lds r24, 0x0802
5cca: 8b 3f cpi r24, 0xFB ; 251
5ccc: 80 f0 brcs .+32 ; 0x5cee <ParameterZuordnung+0x3f2>
5cce: 8b 3f cpi r24, 0xFB ; 251
5cd0: 09 f4 brne .+2 ; 0x5cd4 <ParameterZuordnung+0x3d8>
5cd2: b8 c0 rjmp .+368 ; 0x5e44 <ParameterZuordnung+0x548>
5cd4: 8c 3f cpi r24, 0xFC ; 252
5cd6: 09 f4 brne .+2 ; 0x5cda <ParameterZuordnung+0x3de>
5cd8: d2 c1 rjmp .+932 ; 0x607e <ParameterZuordnung+0x782>
5cda: 8d 3f cpi r24, 0xFD ; 253
5cdc: 09 f4 brne .+2 ; 0x5ce0 <ParameterZuordnung+0x3e4>
5cde: 4d c1 rjmp .+666 ; 0x5f7a <ParameterZuordnung+0x67e>
5ce0: 8e 3f cpi r24, 0xFE ; 254
5ce2: 39 f4 brne .+14 ; 0x5cf2 <ParameterZuordnung+0x3f6>
5ce4: 80 91 92 04 lds r24, 0x0492
5ce8: 80 93 ae 03 sts 0x03AE, r24
5cec: 02 c0 rjmp .+4 ; 0x5cf2 <ParameterZuordnung+0x3f6>
5cee: 80 93 ae 03 sts 0x03AE, r24
5cf2: 80 91 03 08 lds r24, 0x0803
5cf6: 8b 3f cpi r24, 0xFB ; 251
5cf8: 80 f0 brcs .+32 ; 0x5d1a <ParameterZuordnung+0x41e>
5cfa: 8b 3f cpi r24, 0xFB ; 251
5cfc: 09 f4 brne .+2 ; 0x5d00 <ParameterZuordnung+0x404>
5cfe: a7 c0 rjmp .+334 ; 0x5e4e <ParameterZuordnung+0x552>
5d00: 8c 3f cpi r24, 0xFC ; 252
5d02: 09 f4 brne .+2 ; 0x5d06 <ParameterZuordnung+0x40a>
5d04: d5 c1 rjmp .+938 ; 0x60b0 <ParameterZuordnung+0x7b4>
5d06: 8d 3f cpi r24, 0xFD ; 253
5d08: 09 f4 brne .+2 ; 0x5d0c <ParameterZuordnung+0x410>
5d0a: 3c c1 rjmp .+632 ; 0x5f84 <ParameterZuordnung+0x688>
5d0c: 8e 3f cpi r24, 0xFE ; 254
5d0e: 39 f4 brne .+14 ; 0x5d1e <ParameterZuordnung+0x422>
5d10: 80 91 92 04 lds r24, 0x0492
5d14: 80 93 af 03 sts 0x03AF, r24
5d18: 02 c0 rjmp .+4 ; 0x5d1e <ParameterZuordnung+0x422>
5d1a: 80 93 af 03 sts 0x03AF, r24
5d1e: 80 91 08 08 lds r24, 0x0808
5d22: 8b 3f cpi r24, 0xFB ; 251
5d24: 80 f0 brcs .+32 ; 0x5d46 <ParameterZuordnung+0x44a>
5d26: 8b 3f cpi r24, 0xFB ; 251
5d28: 09 f4 brne .+2 ; 0x5d2c <ParameterZuordnung+0x430>
5d2a: b9 c0 rjmp .+370 ; 0x5e9e <ParameterZuordnung+0x5a2>
5d2c: 8c 3f cpi r24, 0xFC ; 252
5d2e: 09 f4 brne .+2 ; 0x5d32 <ParameterZuordnung+0x436>
5d30: c4 c1 rjmp .+904 ; 0x60ba <ParameterZuordnung+0x7be>
5d32: 8d 3f cpi r24, 0xFD ; 253
5d34: 09 f4 brne .+2 ; 0x5d38 <ParameterZuordnung+0x43c>
5d36: 2b c1 rjmp .+598 ; 0x5f8e <ParameterZuordnung+0x692>
5d38: 8e 3f cpi r24, 0xFE ; 254
5d3a: 39 f4 brne .+14 ; 0x5d4a <ParameterZuordnung+0x44e>
5d3c: 80 91 92 04 lds r24, 0x0492
5d40: 80 93 b0 03 sts 0x03B0, r24
5d44: 02 c0 rjmp .+4 ; 0x5d4a <ParameterZuordnung+0x44e>
5d46: 80 93 b0 03 sts 0x03B0, r24
5d4a: 80 91 0e 08 lds r24, 0x080E
5d4e: 8b 3f cpi r24, 0xFB ; 251
5d50: 80 f0 brcs .+32 ; 0x5d72 <ParameterZuordnung+0x476>
5d52: 8b 3f cpi r24, 0xFB ; 251
5d54: 09 f4 brne .+2 ; 0x5d58 <ParameterZuordnung+0x45c>
5d56: a8 c0 rjmp .+336 ; 0x5ea8 <ParameterZuordnung+0x5ac>
5d58: 8c 3f cpi r24, 0xFC ; 252
5d5a: 09 f4 brne .+2 ; 0x5d5e <ParameterZuordnung+0x462>
5d5c: 8b c1 rjmp .+790 ; 0x6074 <ParameterZuordnung+0x778>
5d5e: 8d 3f cpi r24, 0xFD ; 253
5d60: 09 f4 brne .+2 ; 0x5d64 <ParameterZuordnung+0x468>
5d62: 06 c1 rjmp .+524 ; 0x5f70 <ParameterZuordnung+0x674>
5d64: 8e 3f cpi r24, 0xFE ; 254
5d66: 39 f4 brne .+14 ; 0x5d76 <ParameterZuordnung+0x47a>
5d68: 80 91 92 04 lds r24, 0x0492
5d6c: 80 93 61 08 sts 0x0861, r24
5d70: 02 c0 rjmp .+4 ; 0x5d76 <ParameterZuordnung+0x47a>
5d72: 80 93 61 08 sts 0x0861, r24
5d76: 80 91 61 08 lds r24, 0x0861
5d7a: 82 30 cpi r24, 0x02 ; 2
5d7c: 08 f4 brcc .+2 ; 0x5d80 <ParameterZuordnung+0x484>
5d7e: 40 c0 rjmp .+128 ; 0x5e00 <ParameterZuordnung+0x504>
5d80: 8f 3f cpi r24, 0xFF ; 255
5d82: b9 f1 breq .+110 ; 0x5df2 <ParameterZuordnung+0x4f6>
5d84: 80 91 10 08 lds r24, 0x0810
5d88: 8b 3f cpi r24, 0xFB ; 251
5d8a: 80 f0 brcs .+32 ; 0x5dac <ParameterZuordnung+0x4b0>
5d8c: 8b 3f cpi r24, 0xFB ; 251
5d8e: 09 f4 brne .+2 ; 0x5d92 <ParameterZuordnung+0x496>
5d90: 90 c0 rjmp .+288 ; 0x5eb2 <ParameterZuordnung+0x5b6>
5d92: 8c 3f cpi r24, 0xFC ; 252
5d94: 09 f4 brne .+2 ; 0x5d98 <ParameterZuordnung+0x49c>
5d96: a0 c1 rjmp .+832 ; 0x60d8 <ParameterZuordnung+0x7dc>
5d98: 8d 3f cpi r24, 0xFD ; 253
5d9a: 09 f4 brne .+2 ; 0x5d9e <ParameterZuordnung+0x4a2>
5d9c: b7 c0 rjmp .+366 ; 0x5f0c <ParameterZuordnung+0x610>
5d9e: 8e 3f cpi r24, 0xFE ; 254
5da0: 39 f4 brne .+14 ; 0x5db0 <ParameterZuordnung+0x4b4>
5da2: 80 91 92 04 lds r24, 0x0492
5da6: 80 93 75 08 sts 0x0875, r24
5daa: 02 c0 rjmp .+4 ; 0x5db0 <ParameterZuordnung+0x4b4>
5dac: 80 93 75 08 sts 0x0875, r24
5db0: 80 91 75 08 lds r24, 0x0875
5db4: 82 30 cpi r24, 0x02 ; 2
5db6: 00 f1 brcs .+64 ; 0x5df8 <ParameterZuordnung+0x4fc>
5db8: 8f 3f cpi r24, 0xFF ; 255
5dba: c1 f0 breq .+48 ; 0x5dec <ParameterZuordnung+0x4f0>
5dbc: 80 91 21 08 lds r24, 0x0821
5dc0: 8b 3f cpi r24, 0xFB ; 251
5dc2: 88 f0 brcs .+34 ; 0x5de6 <ParameterZuordnung+0x4ea>
5dc4: 8b 3f cpi r24, 0xFB ; 251
5dc6: 09 f4 brne .+2 ; 0x5dca <ParameterZuordnung+0x4ce>
5dc8: 79 c0 rjmp .+242 ; 0x5ebc <ParameterZuordnung+0x5c0>
5dca: 8c 3f cpi r24, 0xFC ; 252
5dcc: 09 f4 brne .+2 ; 0x5dd0 <ParameterZuordnung+0x4d4>
5dce: 89 c1 rjmp .+786 ; 0x60e2 <ParameterZuordnung+0x7e6>
5dd0: 8d 3f cpi r24, 0xFD ; 253
5dd2: 09 f4 brne .+2 ; 0x5dd6 <ParameterZuordnung+0x4da>
5dd4: a0 c0 rjmp .+320 ; 0x5f16 <ParameterZuordnung+0x61a>
5dd6: 8e 3f cpi r24, 0xFE ; 254
5dd8: 09 f0 breq .+2 ; 0x5ddc <ParameterZuordnung+0x4e0>
5dda: 9c c1 rjmp .+824 ; 0x6114 <ParameterZuordnung+0x818>
5ddc: 80 91 92 04 lds r24, 0x0492
5de0: 80 93 86 08 sts 0x0886, r24
5de4: 97 c1 rjmp .+814 ; 0x6114 <ParameterZuordnung+0x818>
5de6: 80 93 86 08 sts 0x0886, r24
5dea: 94 c1 rjmp .+808 ; 0x6114 <ParameterZuordnung+0x818>
5dec: 80 93 75 08 sts 0x0875, r24
5df0: e5 cf rjmp .-54 ; 0x5dbc <ParameterZuordnung+0x4c0>
5df2: 80 93 61 08 sts 0x0861, r24
5df6: c6 cf rjmp .-116 ; 0x5d84 <ParameterZuordnung+0x488>
5df8: 81 e0 ldi r24, 0x01 ; 1
5dfa: 80 93 75 08 sts 0x0875, r24
5dfe: de cf rjmp .-68 ; 0x5dbc <ParameterZuordnung+0x4c0>
5e00: 81 e0 ldi r24, 0x01 ; 1
5e02: 80 93 61 08 sts 0x0861, r24
5e06: be cf rjmp .-132 ; 0x5d84 <ParameterZuordnung+0x488>
5e08: 80 91 8c 04 lds r24, 0x048C
5e0c: 80 93 b1 04 sts 0x04B1, r24
5e10: ec ce rjmp .-552 ; 0x5bea <ParameterZuordnung+0x2ee>
5e12: 80 91 8c 04 lds r24, 0x048C
5e16: 80 93 b2 04 sts 0x04B2, r24
5e1a: fd ce rjmp .-518 ; 0x5c16 <ParameterZuordnung+0x31a>
5e1c: 80 91 8c 04 lds r24, 0x048C
5e20: 80 93 b3 04 sts 0x04B3, r24
5e24: 0e cf rjmp .-484 ; 0x5c42 <ParameterZuordnung+0x346>
5e26: 80 91 8c 04 lds r24, 0x048C
5e2a: 80 93 ab 03 sts 0x03AB, r24
5e2e: 1f cf rjmp .-450 ; 0x5c6e <ParameterZuordnung+0x372>
5e30: 80 91 8c 04 lds r24, 0x048C
5e34: 80 93 ac 03 sts 0x03AC, r24
5e38: 30 cf rjmp .-416 ; 0x5c9a <ParameterZuordnung+0x39e>
5e3a: 80 91 8c 04 lds r24, 0x048C
5e3e: 80 93 ad 03 sts 0x03AD, r24
5e42: 41 cf rjmp .-382 ; 0x5cc6 <ParameterZuordnung+0x3ca>
5e44: 80 91 8c 04 lds r24, 0x048C
5e48: 80 93 ae 03 sts 0x03AE, r24
5e4c: 52 cf rjmp .-348 ; 0x5cf2 <ParameterZuordnung+0x3f6>
5e4e: 80 91 8c 04 lds r24, 0x048C
5e52: 80 93 af 03 sts 0x03AF, r24
5e56: 63 cf rjmp .-314 ; 0x5d1e <ParameterZuordnung+0x422>
5e58: 80 91 8c 04 lds r24, 0x048C
5e5c: 80 93 ad 04 sts 0x04AD, r24
5e60: 6c ce rjmp .-808 ; 0x5b3a <ParameterZuordnung+0x23e>
5e62: 80 91 8c 04 lds r24, 0x048C
5e66: 80 93 ae 04 sts 0x04AE, r24
5e6a: 7d ce rjmp .-774 ; 0x5b66 <ParameterZuordnung+0x26a>
5e6c: 80 91 8c 04 lds r24, 0x048C
5e70: 80 93 af 04 sts 0x04AF, r24
5e74: 8e ce rjmp .-740 ; 0x5b92 <ParameterZuordnung+0x296>
5e76: 80 91 8c 04 lds r24, 0x048C
5e7a: 80 93 b0 04 sts 0x04B0, r24
5e7e: 9f ce rjmp .-706 ; 0x5bbe <ParameterZuordnung+0x2c2>
5e80: 80 91 8c 04 lds r24, 0x048C
5e84: 80 93 a6 03 sts 0x03A6, r24
5e88: 16 ce rjmp .-980 ; 0x5ab6 <ParameterZuordnung+0x1ba>
5e8a: 80 91 8c 04 lds r24, 0x048C
5e8e: 80 93 aa 03 sts 0x03AA, r24
5e92: 27 ce rjmp .-946 ; 0x5ae2 <ParameterZuordnung+0x1e6>
5e94: 80 91 8c 04 lds r24, 0x048C
5e98: 80 93 ac 04 sts 0x04AC, r24
5e9c: 38 ce rjmp .-912 ; 0x5b0e <ParameterZuordnung+0x212>
5e9e: 80 91 8c 04 lds r24, 0x048C
5ea2: 80 93 b0 03 sts 0x03B0, r24
5ea6: 51 cf rjmp .-350 ; 0x5d4a <ParameterZuordnung+0x44e>
5ea8: 80 91 8c 04 lds r24, 0x048C
5eac: 80 93 61 08 sts 0x0861, r24
5eb0: 62 cf rjmp .-316 ; 0x5d76 <ParameterZuordnung+0x47a>
5eb2: 80 91 8c 04 lds r24, 0x048C
5eb6: 80 93 75 08 sts 0x0875, r24
5eba: 7a cf rjmp .-268 ; 0x5db0 <ParameterZuordnung+0x4b4>
5ebc: 80 91 8c 04 lds r24, 0x048C
5ec0: 80 93 86 08 sts 0x0886, r24
5ec4: 27 c1 rjmp .+590 ; 0x6114 <ParameterZuordnung+0x818>
5ec6: 80 91 8c 04 lds r24, 0x048C
5eca: 80 93 a1 03 sts 0x03A1, r24
5ece: 42 cd rjmp .-1404 ; 0x5954 <ParameterZuordnung+0x58>
5ed0: 80 91 8c 04 lds r24, 0x048C
5ed4: 80 93 a3 03 sts 0x03A3, r24
5ed8: 62 cd rjmp .-1340 ; 0x599e <ParameterZuordnung+0xa2>
5eda: 80 91 8c 04 lds r24, 0x048C
5ede: 80 93 a4 03 sts 0x03A4, r24
5ee2: 82 cd rjmp .-1276 ; 0x59e8 <ParameterZuordnung+0xec>
5ee4: 80 91 8c 04 lds r24, 0x048C
5ee8: 80 93 a2 03 sts 0x03A2, r24
5eec: 1d cd rjmp .-1478 ; 0x5928 <ParameterZuordnung+0x2c>
5eee: 80 91 8c 04 lds r24, 0x048C
5ef2: 80 93 a7 03 sts 0x03A7, r24
5ef6: a4 cd rjmp .-1208 ; 0x5a40 <ParameterZuordnung+0x144>
5ef8: 80 91 8c 04 lds r24, 0x048C
5efc: 80 93 a8 03 sts 0x03A8, r24
5f00: c4 cd rjmp .-1144 ; 0x5a8a <ParameterZuordnung+0x18e>
5f02: 80 91 8c 04 lds r24, 0x048C
5f06: 80 93 a5 03 sts 0x03A5, r24
5f0a: 84 cd rjmp .-1272 ; 0x5a14 <ParameterZuordnung+0x118>
5f0c: 80 91 90 04 lds r24, 0x0490
5f10: 80 93 75 08 sts 0x0875, r24
5f14: 4d cf rjmp .-358 ; 0x5db0 <ParameterZuordnung+0x4b4>
5f16: 80 91 90 04 lds r24, 0x0490
5f1a: 80 93 86 08 sts 0x0886, r24
5f1e: fa c0 rjmp .+500 ; 0x6114 <ParameterZuordnung+0x818>
5f20: 80 91 90 04 lds r24, 0x0490
5f24: 80 93 a6 03 sts 0x03A6, r24
5f28: c6 cd rjmp .-1140 ; 0x5ab6 <ParameterZuordnung+0x1ba>
5f2a: 80 91 90 04 lds r24, 0x0490
5f2e: 80 93 a5 03 sts 0x03A5, r24
5f32: 70 cd rjmp .-1312 ; 0x5a14 <ParameterZuordnung+0x118>
5f34: 80 91 90 04 lds r24, 0x0490
5f38: 80 93 a7 03 sts 0x03A7, r24
5f3c: 81 cd rjmp .-1278 ; 0x5a40 <ParameterZuordnung+0x144>
5f3e: 80 91 90 04 lds r24, 0x0490
5f42: 80 93 a8 03 sts 0x03A8, r24
5f46: a1 cd rjmp .-1214 ; 0x5a8a <ParameterZuordnung+0x18e>
5f48: 80 91 90 04 lds r24, 0x0490
5f4c: 80 93 a1 03 sts 0x03A1, r24
5f50: 01 cd rjmp .-1534 ; 0x5954 <ParameterZuordnung+0x58>
5f52: 80 91 90 04 lds r24, 0x0490
5f56: 80 93 a3 03 sts 0x03A3, r24
5f5a: 21 cd rjmp .-1470 ; 0x599e <ParameterZuordnung+0xa2>
5f5c: 80 91 90 04 lds r24, 0x0490
5f60: 80 93 a4 03 sts 0x03A4, r24
5f64: 41 cd rjmp .-1406 ; 0x59e8 <ParameterZuordnung+0xec>
5f66: 80 91 90 04 lds r24, 0x0490
5f6a: 80 93 a2 03 sts 0x03A2, r24
5f6e: dc cc rjmp .-1608 ; 0x5928 <ParameterZuordnung+0x2c>
5f70: 80 91 90 04 lds r24, 0x0490
5f74: 80 93 61 08 sts 0x0861, r24
5f78: fe ce rjmp .-516 ; 0x5d76 <ParameterZuordnung+0x47a>
5f7a: 80 91 90 04 lds r24, 0x0490
5f7e: 80 93 ae 03 sts 0x03AE, r24
5f82: b7 ce rjmp .-658 ; 0x5cf2 <ParameterZuordnung+0x3f6>
5f84: 80 91 90 04 lds r24, 0x0490
5f88: 80 93 af 03 sts 0x03AF, r24
5f8c: c8 ce rjmp .-624 ; 0x5d1e <ParameterZuordnung+0x422>
5f8e: 80 91 90 04 lds r24, 0x0490
5f92: 80 93 b0 03 sts 0x03B0, r24
5f96: d9 ce rjmp .-590 ; 0x5d4a <ParameterZuordnung+0x44e>
5f98: 80 91 90 04 lds r24, 0x0490
5f9c: 80 93 ab 03 sts 0x03AB, r24
5fa0: 66 ce rjmp .-820 ; 0x5c6e <ParameterZuordnung+0x372>
5fa2: 80 91 90 04 lds r24, 0x0490
5fa6: 80 93 ac 03 sts 0x03AC, r24
5faa: 77 ce rjmp .-786 ; 0x5c9a <ParameterZuordnung+0x39e>
5fac: 80 91 90 04 lds r24, 0x0490
5fb0: 80 93 ad 03 sts 0x03AD, r24
5fb4: 88 ce rjmp .-752 ; 0x5cc6 <ParameterZuordnung+0x3ca>
5fb6: 80 91 90 04 lds r24, 0x0490
5fba: 80 93 b3 04 sts 0x04B3, r24
5fbe: 41 ce rjmp .-894 ; 0x5c42 <ParameterZuordnung+0x346>
5fc0: 80 91 90 04 lds r24, 0x0490
5fc4: 80 93 ac 04 sts 0x04AC, r24
5fc8: a2 cd rjmp .-1212 ; 0x5b0e <ParameterZuordnung+0x212>
5fca: 80 91 90 04 lds r24, 0x0490
5fce: 80 93 ad 04 sts 0x04AD, r24
5fd2: b3 cd rjmp .-1178 ; 0x5b3a <ParameterZuordnung+0x23e>
5fd4: 80 91 90 04 lds r24, 0x0490
5fd8: 80 93 ae 04 sts 0x04AE, r24
5fdc: c4 cd rjmp .-1144 ; 0x5b66 <ParameterZuordnung+0x26a>
5fde: 80 91 90 04 lds r24, 0x0490
5fe2: 80 93 aa 03 sts 0x03AA, r24
5fe6: 7d cd rjmp .-1286 ; 0x5ae2 <ParameterZuordnung+0x1e6>
5fe8: 80 91 90 04 lds r24, 0x0490
5fec: 80 93 b2 04 sts 0x04B2, r24
5ff0: 12 ce rjmp .-988 ; 0x5c16 <ParameterZuordnung+0x31a>
5ff2: 80 91 90 04 lds r24, 0x0490
5ff6: 80 93 af 04 sts 0x04AF, r24
5ffa: cb cd rjmp .-1130 ; 0x5b92 <ParameterZuordnung+0x296>
5ffc: 80 91 90 04 lds r24, 0x0490
6000: 80 93 b0 04 sts 0x04B0, r24
6004: dc cd rjmp .-1096 ; 0x5bbe <ParameterZuordnung+0x2c2>
6006: 80 91 90 04 lds r24, 0x0490
600a: 80 93 b1 04 sts 0x04B1, r24
600e: ed cd rjmp .-1062 ; 0x5bea <ParameterZuordnung+0x2ee>
6010: 80 91 8e 04 lds r24, 0x048E
6014: 80 93 b0 04 sts 0x04B0, r24
6018: d2 cd rjmp .-1116 ; 0x5bbe <ParameterZuordnung+0x2c2>
601a: 80 91 8e 04 lds r24, 0x048E
601e: 80 93 b1 04 sts 0x04B1, r24
6022: e3 cd rjmp .-1082 ; 0x5bea <ParameterZuordnung+0x2ee>
6024: 80 91 8e 04 lds r24, 0x048E
6028: 80 93 ac 04 sts 0x04AC, r24
602c: 70 cd rjmp .-1312 ; 0x5b0e <ParameterZuordnung+0x212>
602e: 80 91 8e 04 lds r24, 0x048E
6032: 80 93 ad 04 sts 0x04AD, r24
6036: 81 cd rjmp .-1278 ; 0x5b3a <ParameterZuordnung+0x23e>
6038: 80 91 8e 04 lds r24, 0x048E
603c: 80 93 ad 03 sts 0x03AD, r24
6040: 42 ce rjmp .-892 ; 0x5cc6 <ParameterZuordnung+0x3ca>
6042: 80 91 8e 04 lds r24, 0x048E
6046: 80 93 b3 04 sts 0x04B3, r24
604a: fb cd rjmp .-1034 ; 0x5c42 <ParameterZuordnung+0x346>
604c: 80 91 8e 04 lds r24, 0x048E
6050: 80 93 b2 04 sts 0x04B2, r24
6054: e0 cd rjmp .-1088 ; 0x5c16 <ParameterZuordnung+0x31a>
6056: 80 91 8e 04 lds r24, 0x048E
605a: 80 93 af 04 sts 0x04AF, r24
605e: 99 cd rjmp .-1230 ; 0x5b92 <ParameterZuordnung+0x296>
6060: 80 91 8e 04 lds r24, 0x048E
6064: 80 93 ae 04 sts 0x04AE, r24
6068: 7e cd rjmp .-1284 ; 0x5b66 <ParameterZuordnung+0x26a>
606a: 80 91 8e 04 lds r24, 0x048E
606e: 80 93 aa 03 sts 0x03AA, r24
6072: 37 cd rjmp .-1426 ; 0x5ae2 <ParameterZuordnung+0x1e6>
6074: 80 91 8e 04 lds r24, 0x048E
6078: 80 93 61 08 sts 0x0861, r24
607c: 7c ce rjmp .-776 ; 0x5d76 <ParameterZuordnung+0x47a>
607e: 80 91 8e 04 lds r24, 0x048E
6082: 80 93 ae 03 sts 0x03AE, r24
6086: 35 ce rjmp .-918 ; 0x5cf2 <ParameterZuordnung+0x3f6>
6088: 80 91 8e 04 lds r24, 0x048E
608c: 80 93 a4 03 sts 0x03A4, r24
6090: ab cc rjmp .-1706 ; 0x59e8 <ParameterZuordnung+0xec>
6092: 80 91 8e 04 lds r24, 0x048E
6096: 80 93 a2 03 sts 0x03A2, r24
609a: 46 cc rjmp .-1908 ; 0x5928 <ParameterZuordnung+0x2c>
609c: 80 91 8e 04 lds r24, 0x048E
60a0: 80 93 ab 03 sts 0x03AB, r24
60a4: e4 cd rjmp .-1080 ; 0x5c6e <ParameterZuordnung+0x372>
60a6: 80 91 8e 04 lds r24, 0x048E
60aa: 80 93 ac 03 sts 0x03AC, r24
60ae: f5 cd rjmp .-1046 ; 0x5c9a <ParameterZuordnung+0x39e>
60b0: 80 91 8e 04 lds r24, 0x048E
60b4: 80 93 af 03 sts 0x03AF, r24
60b8: 32 ce rjmp .-924 ; 0x5d1e <ParameterZuordnung+0x422>
60ba: 80 91 8e 04 lds r24, 0x048E
60be: 80 93 b0 03 sts 0x03B0, r24
60c2: 43 ce rjmp .-890 ; 0x5d4a <ParameterZuordnung+0x44e>
60c4: 80 91 8e 04 lds r24, 0x048E
60c8: 80 93 a6 03 sts 0x03A6, r24
60cc: f4 cc rjmp .-1560 ; 0x5ab6 <ParameterZuordnung+0x1ba>
60ce: 80 91 8e 04 lds r24, 0x048E
60d2: 80 93 a5 03 sts 0x03A5, r24
60d6: 9e cc rjmp .-1732 ; 0x5a14 <ParameterZuordnung+0x118>
60d8: 80 91 8e 04 lds r24, 0x048E
60dc: 80 93 75 08 sts 0x0875, r24
60e0: 67 ce rjmp .-818 ; 0x5db0 <ParameterZuordnung+0x4b4>
60e2: 80 91 8e 04 lds r24, 0x048E
60e6: 80 93 86 08 sts 0x0886, r24
60ea: 14 c0 rjmp .+40 ; 0x6114 <ParameterZuordnung+0x818>
60ec: 80 91 8e 04 lds r24, 0x048E
60f0: 80 93 a1 03 sts 0x03A1, r24
60f4: 2f cc rjmp .-1954 ; 0x5954 <ParameterZuordnung+0x58>
60f6: 80 91 8e 04 lds r24, 0x048E
60fa: 80 93 a3 03 sts 0x03A3, r24
60fe: 4f cc rjmp .-1890 ; 0x599e <ParameterZuordnung+0xa2>
6100: 80 91 8e 04 lds r24, 0x048E
6104: 80 93 a7 03 sts 0x03A7, r24
6108: 9b cc rjmp .-1738 ; 0x5a40 <ParameterZuordnung+0x144>
610a: 80 91 8e 04 lds r24, 0x048E
610e: 80 93 a8 03 sts 0x03A8, r24
6112: bb cc rjmp .-1674 ; 0x5a8a <ParameterZuordnung+0x18e>
6114: 60 91 aa 03 lds r22, 0x03AA
6118: 70 e0 ldi r23, 0x00 ; 0
611a: 6f 5f subi r22, 0xFF ; 255
611c: 7f 4f sbci r23, 0xFF ; 255
611e: 8c e3 ldi r24, 0x3C ; 60
6120: 98 e2 ldi r25, 0x28 ; 40
6122: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
6126: 70 93 a0 03 sts 0x03A0, r23
612a: 60 93 9f 03 sts 0x039F, r22
612e: 80 91 ea 07 lds r24, 0x07EA
6132: 80 93 76 08 sts 0x0876, r24
6136: 80 91 e9 07 lds r24, 0x07E9
613a: 80 93 4c 08 sts 0x084C, r24
613e: 08 95 ret
 
00006140 <SendMotorData>:
6140: 80 91 9d 04 lds r24, 0x049D
6144: 88 23 and r24, r24
6146: 21 f5 brne .+72 ; 0x6190 <SendMotorData+0x50>
6148: 10 92 45 08 sts 0x0845, r1
614c: 10 92 38 08 sts 0x0838, r1
6150: 10 92 69 08 sts 0x0869, r1
6154: 10 92 6e 08 sts 0x086E, r1
6158: 80 91 d2 03 lds r24, 0x03D2
615c: 88 23 and r24, r24
615e: 11 f0 breq .+4 ; 0x6164 <SendMotorData+0x24>
6160: 80 93 38 08 sts 0x0838, r24
6164: 80 91 d3 03 lds r24, 0x03D3
6168: 88 23 and r24, r24
616a: 11 f0 breq .+4 ; 0x6170 <SendMotorData+0x30>
616c: 80 93 45 08 sts 0x0845, r24
6170: 80 91 d4 03 lds r24, 0x03D4
6174: 88 23 and r24, r24
6176: 11 f0 breq .+4 ; 0x617c <SendMotorData+0x3c>
6178: 80 93 6e 08 sts 0x086E, r24
617c: 80 91 d5 03 lds r24, 0x03D5
6180: 88 23 and r24, r24
6182: 61 f4 brne .+24 ; 0x619c <SendMotorData+0x5c>
6184: 80 91 c0 04 lds r24, 0x04C0
6188: 8c 7f andi r24, 0xFC ; 252
618a: 80 93 c0 04 sts 0x04C0, r24
618e: 09 c0 rjmp .+18 ; 0x61a2 <SendMotorData+0x62>
6190: 80 91 c0 04 lds r24, 0x04C0
6194: 81 60 ori r24, 0x01 ; 1
6196: 80 93 c0 04 sts 0x04C0, r24
619a: 03 c0 rjmp .+6 ; 0x61a2 <SendMotorData+0x62>
619c: 80 93 69 08 sts 0x0869, r24
61a0: f1 cf rjmp .-30 ; 0x6184 <SendMotorData+0x44>
61a2: 80 91 38 08 lds r24, 0x0838
61a6: 90 e0 ldi r25, 0x00 ; 0
61a8: 90 93 5a 07 sts 0x075A, r25
61ac: 80 93 59 07 sts 0x0759, r24
61b0: 80 91 45 08 lds r24, 0x0845
61b4: 90 e0 ldi r25, 0x00 ; 0
61b6: 90 93 5c 07 sts 0x075C, r25
61ba: 80 93 5b 07 sts 0x075B, r24
61be: 80 91 6e 08 lds r24, 0x086E
61c2: 90 e0 ldi r25, 0x00 ; 0
61c4: 90 93 5e 07 sts 0x075E, r25
61c8: 80 93 5d 07 sts 0x075D, r24
61cc: 80 91 69 08 lds r24, 0x0869
61d0: 90 e0 ldi r25, 0x00 ; 0
61d2: 90 93 60 07 sts 0x0760, r25
61d6: 80 93 5f 07 sts 0x075F, r24
61da: 10 92 28 04 sts 0x0428, r1
61de: 10 92 29 04 sts 0x0429, r1
61e2: 0e 94 b3 21 call 0x4366 ; 0x4366 <i2c_start>
61e6: 08 95 ret
 
000061e8 <CalibrierMittelwert>:
61e8: 80 91 00 01 lds r24, 0x0100
61ec: 8d 30 cpi r24, 0x0D ; 13
61ee: 09 f4 brne .+2 ; 0x61f2 <CalibrierMittelwert+0xa>
61f0: 43 c1 rjmp .+646 ; 0x6478 <CalibrierMittelwert+0x290>
61f2: 10 92 7a 00 sts 0x007A, r1
61f6: 80 91 fe 03 lds r24, 0x03FE
61fa: 90 91 ff 03 lds r25, 0x03FF
61fe: 90 93 47 08 sts 0x0847, r25
6202: 80 93 46 08 sts 0x0846, r24
6206: 80 91 00 04 lds r24, 0x0400
620a: 90 91 01 04 lds r25, 0x0401
620e: 90 93 37 08 sts 0x0837, r25
6212: 80 93 36 08 sts 0x0836, r24
6216: 80 91 02 04 lds r24, 0x0402
621a: 90 91 03 04 lds r25, 0x0403
621e: 90 93 78 08 sts 0x0878, r25
6222: 80 93 77 08 sts 0x0877, r24
6226: 60 91 06 04 lds r22, 0x0406
622a: 70 91 07 04 lds r23, 0x0407
622e: 88 27 eor r24, r24
6230: 77 fd sbrc r23, 7
6232: 80 95 com r24
6234: 98 2f mov r25, r24
6236: 26 e0 ldi r18, 0x06 ; 6
6238: 30 e0 ldi r19, 0x00 ; 0
623a: 40 e0 ldi r20, 0x00 ; 0
623c: 50 e0 ldi r21, 0x00 ; 0
623e: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
6242: 70 93 73 08 sts 0x0873, r23
6246: 60 93 72 08 sts 0x0872, r22
624a: 60 91 04 04 lds r22, 0x0404
624e: 70 91 05 04 lds r23, 0x0405
6252: 88 27 eor r24, r24
6254: 77 fd sbrc r23, 7
6256: 80 95 com r24
6258: 98 2f mov r25, r24
625a: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
625e: 70 93 83 08 sts 0x0883, r23
6262: 60 93 82 08 sts 0x0882, r22
6266: 80 91 08 04 lds r24, 0x0408
626a: 90 91 09 04 lds r25, 0x0409
626e: 90 93 55 08 sts 0x0855, r25
6272: 80 93 54 08 sts 0x0854, r24
6276: 8f ec ldi r24, 0xCF ; 207
6278: 80 93 7a 00 sts 0x007A, r24
627c: 80 91 db 07 lds r24, 0x07DB
6280: e8 2f mov r30, r24
6282: f0 e0 ldi r31, 0x00 ; 0
6284: ee 0f add r30, r30
6286: ff 1f adc r31, r31
6288: eb 55 subi r30, 0x5B ; 91
628a: f8 4f sbci r31, 0xF8 ; 248
628c: 80 81 ld r24, Z
628e: 91 81 ldd r25, Z+1 ; 0x01
6290: a0 91 8c 04 lds r26, 0x048C
6294: b0 91 8d 04 lds r27, 0x048D
6298: 82 59 subi r24, 0x92 ; 146
629a: 9f 4f sbci r25, 0xFF ; 255
629c: a8 17 cp r26, r24
629e: b9 07 cpc r27, r25
62a0: 0c f0 brlt .+2 ; 0x62a4 <CalibrierMittelwert+0xbc>
62a2: c4 c0 rjmp .+392 ; 0x642c <CalibrierMittelwert+0x244>
62a4: 11 96 adiw r26, 0x01 ; 1
62a6: b0 93 8d 04 sts 0x048D, r27
62aa: a0 93 8c 04 sts 0x048C, r26
62ae: 80 91 dc 07 lds r24, 0x07DC
62b2: e8 2f mov r30, r24
62b4: f0 e0 ldi r31, 0x00 ; 0
62b6: ee 0f add r30, r30
62b8: ff 1f adc r31, r31
62ba: eb 55 subi r30, 0x5B ; 91
62bc: f8 4f sbci r31, 0xF8 ; 248
62be: 80 81 ld r24, Z
62c0: 91 81 ldd r25, Z+1 ; 0x01
62c2: 60 91 8e 04 lds r22, 0x048E
62c6: 70 91 8f 04 lds r23, 0x048F
62ca: 82 59 subi r24, 0x92 ; 146
62cc: 9f 4f sbci r25, 0xFF ; 255
62ce: 68 17 cp r22, r24
62d0: 79 07 cpc r23, r25
62d2: 0c f0 brlt .+2 ; 0x62d6 <CalibrierMittelwert+0xee>
62d4: 98 c0 rjmp .+304 ; 0x6406 <CalibrierMittelwert+0x21e>
62d6: 6f 5f subi r22, 0xFF ; 255
62d8: 7f 4f sbci r23, 0xFF ; 255
62da: 70 93 8f 04 sts 0x048F, r23
62de: 60 93 8e 04 sts 0x048E, r22
62e2: 80 91 dd 07 lds r24, 0x07DD
62e6: e8 2f mov r30, r24
62e8: f0 e0 ldi r31, 0x00 ; 0
62ea: ee 0f add r30, r30
62ec: ff 1f adc r31, r31
62ee: eb 55 subi r30, 0x5B ; 91
62f0: f8 4f sbci r31, 0xF8 ; 248
62f2: 80 81 ld r24, Z
62f4: 91 81 ldd r25, Z+1 ; 0x01
62f6: 40 91 90 04 lds r20, 0x0490
62fa: 50 91 91 04 lds r21, 0x0491
62fe: 82 59 subi r24, 0x92 ; 146
6300: 9f 4f sbci r25, 0xFF ; 255
6302: 48 17 cp r20, r24
6304: 59 07 cpc r21, r25
6306: 0c f0 brlt .+2 ; 0x630a <CalibrierMittelwert+0x122>
6308: 6b c0 rjmp .+214 ; 0x63e0 <CalibrierMittelwert+0x1f8>
630a: 4f 5f subi r20, 0xFF ; 255
630c: 5f 4f sbci r21, 0xFF ; 255
630e: 50 93 91 04 sts 0x0491, r21
6312: 40 93 90 04 sts 0x0490, r20
6316: 80 91 de 07 lds r24, 0x07DE
631a: e8 2f mov r30, r24
631c: f0 e0 ldi r31, 0x00 ; 0
631e: ee 0f add r30, r30
6320: ff 1f adc r31, r31
6322: eb 55 subi r30, 0x5B ; 91
6324: f8 4f sbci r31, 0xF8 ; 248
6326: 80 81 ld r24, Z
6328: 91 81 ldd r25, Z+1 ; 0x01
632a: 20 91 92 04 lds r18, 0x0492
632e: 30 91 93 04 lds r19, 0x0493
6332: 82 59 subi r24, 0x92 ; 146
6334: 9f 4f sbci r25, 0xFF ; 255
6336: 28 17 cp r18, r24
6338: 39 07 cpc r19, r25
633a: 4c f5 brge .+82 ; 0x638e <CalibrierMittelwert+0x1a6>
633c: 2f 5f subi r18, 0xFF ; 255
633e: 3f 4f sbci r19, 0xFF ; 255
6340: 30 93 93 04 sts 0x0493, r19
6344: 20 93 92 04 sts 0x0492, r18
6348: b7 fd sbrc r27, 7
634a: 33 c0 rjmp .+102 ; 0x63b2 <CalibrierMittelwert+0x1ca>
634c: af 3f cpi r26, 0xFF ; 255
634e: b1 05 cpc r27, r1
6350: 11 f0 breq .+4 ; 0x6356 <CalibrierMittelwert+0x16e>
6352: 0c f0 brlt .+2 ; 0x6356 <CalibrierMittelwert+0x16e>
6354: 8a c0 rjmp .+276 ; 0x646a <CalibrierMittelwert+0x282>
6356: 77 fd sbrc r23, 7
6358: 32 c0 rjmp .+100 ; 0x63be <CalibrierMittelwert+0x1d6>
635a: 6f 3f cpi r22, 0xFF ; 255
635c: 71 05 cpc r23, r1
635e: 11 f0 breq .+4 ; 0x6364 <CalibrierMittelwert+0x17c>
6360: 0c f0 brlt .+2 ; 0x6364 <CalibrierMittelwert+0x17c>
6362: 7c c0 rjmp .+248 ; 0x645c <CalibrierMittelwert+0x274>
6364: 57 fd sbrc r21, 7
6366: 31 c0 rjmp .+98 ; 0x63ca <CalibrierMittelwert+0x1e2>
6368: 4f 3f cpi r20, 0xFF ; 255
636a: 51 05 cpc r21, r1
636c: 11 f0 breq .+4 ; 0x6372 <CalibrierMittelwert+0x18a>
636e: 0c f0 brlt .+2 ; 0x6372 <CalibrierMittelwert+0x18a>
6370: 6e c0 rjmp .+220 ; 0x644e <CalibrierMittelwert+0x266>
6372: 37 fd sbrc r19, 7
6374: 30 c0 rjmp .+96 ; 0x63d6 <CalibrierMittelwert+0x1ee>
6376: 2f 3f cpi r18, 0xFF ; 255
6378: 31 05 cpc r19, r1
637a: 09 f0 breq .+2 ; 0x637e <CalibrierMittelwert+0x196>
637c: 0c f4 brge .+2 ; 0x6380 <CalibrierMittelwert+0x198>
637e: 7f c0 rjmp .+254 ; 0x647e <CalibrierMittelwert+0x296>
6380: 8f ef ldi r24, 0xFF ; 255
6382: 90 e0 ldi r25, 0x00 ; 0
6384: 90 93 93 04 sts 0x0493, r25
6388: 80 93 92 04 sts 0x0492, r24
638c: 78 c0 rjmp .+240 ; 0x647e <CalibrierMittelwert+0x296>
638e: 80 81 ld r24, Z
6390: 91 81 ldd r25, Z+1 ; 0x01
6392: 82 59 subi r24, 0x92 ; 146
6394: 9f 4f sbci r25, 0xFF ; 255
6396: 82 17 cp r24, r18
6398: 93 07 cpc r25, r19
639a: b4 f6 brge .-84 ; 0x6348 <CalibrierMittelwert+0x160>
639c: 21 15 cp r18, r1
639e: 31 05 cpc r19, r1
63a0: 99 f2 breq .-90 ; 0x6348 <CalibrierMittelwert+0x160>
63a2: 21 50 subi r18, 0x01 ; 1
63a4: 30 40 sbci r19, 0x00 ; 0
63a6: 30 93 93 04 sts 0x0493, r19
63aa: 20 93 92 04 sts 0x0492, r18
63ae: b7 ff sbrs r27, 7
63b0: cd cf rjmp .-102 ; 0x634c <CalibrierMittelwert+0x164>
63b2: 10 92 8d 04 sts 0x048D, r1
63b6: 10 92 8c 04 sts 0x048C, r1
63ba: 77 ff sbrs r23, 7
63bc: ce cf rjmp .-100 ; 0x635a <CalibrierMittelwert+0x172>
63be: 10 92 8f 04 sts 0x048F, r1
63c2: 10 92 8e 04 sts 0x048E, r1
63c6: 57 ff sbrs r21, 7
63c8: cf cf rjmp .-98 ; 0x6368 <CalibrierMittelwert+0x180>
63ca: 10 92 91 04 sts 0x0491, r1
63ce: 10 92 90 04 sts 0x0490, r1
63d2: 37 ff sbrs r19, 7
63d4: d0 cf rjmp .-96 ; 0x6376 <CalibrierMittelwert+0x18e>
63d6: 10 92 93 04 sts 0x0493, r1
63da: 10 92 92 04 sts 0x0492, r1
63de: 4f c0 rjmp .+158 ; 0x647e <CalibrierMittelwert+0x296>
63e0: 80 81 ld r24, Z
63e2: 91 81 ldd r25, Z+1 ; 0x01
63e4: 82 59 subi r24, 0x92 ; 146
63e6: 9f 4f sbci r25, 0xFF ; 255
63e8: 84 17 cp r24, r20
63ea: 95 07 cpc r25, r21
63ec: 0c f0 brlt .+2 ; 0x63f0 <CalibrierMittelwert+0x208>
63ee: 93 cf rjmp .-218 ; 0x6316 <CalibrierMittelwert+0x12e>
63f0: 41 15 cp r20, r1
63f2: 51 05 cpc r21, r1
63f4: 09 f4 brne .+2 ; 0x63f8 <CalibrierMittelwert+0x210>
63f6: 8f cf rjmp .-226 ; 0x6316 <CalibrierMittelwert+0x12e>
63f8: 41 50 subi r20, 0x01 ; 1
63fa: 50 40 sbci r21, 0x00 ; 0
63fc: 50 93 91 04 sts 0x0491, r21
6400: 40 93 90 04 sts 0x0490, r20
6404: 88 cf rjmp .-240 ; 0x6316 <CalibrierMittelwert+0x12e>
6406: 80 81 ld r24, Z
6408: 91 81 ldd r25, Z+1 ; 0x01
640a: 82 59 subi r24, 0x92 ; 146
640c: 9f 4f sbci r25, 0xFF ; 255
640e: 86 17 cp r24, r22
6410: 97 07 cpc r25, r23
6412: 0c f0 brlt .+2 ; 0x6416 <CalibrierMittelwert+0x22e>
6414: 66 cf rjmp .-308 ; 0x62e2 <CalibrierMittelwert+0xfa>
6416: 61 15 cp r22, r1
6418: 71 05 cpc r23, r1
641a: 09 f4 brne .+2 ; 0x641e <CalibrierMittelwert+0x236>
641c: 62 cf rjmp .-316 ; 0x62e2 <CalibrierMittelwert+0xfa>
641e: 61 50 subi r22, 0x01 ; 1
6420: 70 40 sbci r23, 0x00 ; 0
6422: 70 93 8f 04 sts 0x048F, r23
6426: 60 93 8e 04 sts 0x048E, r22
642a: 5b cf rjmp .-330 ; 0x62e2 <CalibrierMittelwert+0xfa>
642c: 80 81 ld r24, Z
642e: 91 81 ldd r25, Z+1 ; 0x01
6430: 82 59 subi r24, 0x92 ; 146
6432: 9f 4f sbci r25, 0xFF ; 255
6434: 8a 17 cp r24, r26
6436: 9b 07 cpc r25, r27
6438: 0c f0 brlt .+2 ; 0x643c <CalibrierMittelwert+0x254>
643a: 39 cf rjmp .-398 ; 0x62ae <CalibrierMittelwert+0xc6>
643c: 10 97 sbiw r26, 0x00 ; 0
643e: 09 f4 brne .+2 ; 0x6442 <CalibrierMittelwert+0x25a>
6440: 36 cf rjmp .-404 ; 0x62ae <CalibrierMittelwert+0xc6>
6442: 11 97 sbiw r26, 0x01 ; 1
6444: b0 93 8d 04 sts 0x048D, r27
6448: a0 93 8c 04 sts 0x048C, r26
644c: 30 cf rjmp .-416 ; 0x62ae <CalibrierMittelwert+0xc6>
644e: 8f ef ldi r24, 0xFF ; 255
6450: 90 e0 ldi r25, 0x00 ; 0
6452: 90 93 91 04 sts 0x0491, r25
6456: 80 93 90 04 sts 0x0490, r24
645a: 8b cf rjmp .-234 ; 0x6372 <CalibrierMittelwert+0x18a>
645c: 8f ef ldi r24, 0xFF ; 255
645e: 90 e0 ldi r25, 0x00 ; 0
6460: 90 93 8f 04 sts 0x048F, r25
6464: 80 93 8e 04 sts 0x048E, r24
6468: 7d cf rjmp .-262 ; 0x6364 <CalibrierMittelwert+0x17c>
646a: 8f ef ldi r24, 0xFF ; 255
646c: 90 e0 ldi r25, 0x00 ; 0
646e: 90 93 8d 04 sts 0x048D, r25
6472: 80 93 8c 04 sts 0x048C, r24
6476: 6f cf rjmp .-290 ; 0x6356 <CalibrierMittelwert+0x16e>
6478: 0e 94 35 1a call 0x346a ; 0x346a <SucheGyroOffset>
647c: ba ce rjmp .-652 ; 0x61f2 <CalibrierMittelwert+0xa>
647e: 60 91 04 08 lds r22, 0x0804
6482: 70 e0 ldi r23, 0x00 ; 0
6484: 80 e0 ldi r24, 0x00 ; 0
6486: 90 e0 ldi r25, 0x00 ; 0
6488: 24 ec ldi r18, 0xC4 ; 196
648a: 39 e0 ldi r19, 0x09 ; 9
648c: 40 e0 ldi r20, 0x00 ; 0
648e: 50 e0 ldi r21, 0x00 ; 0
6490: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
6494: 60 93 97 03 sts 0x0397, r22
6498: 70 93 98 03 sts 0x0398, r23
649c: 80 93 99 03 sts 0x0399, r24
64a0: 90 93 9a 03 sts 0x039A, r25
64a4: 60 91 05 08 lds r22, 0x0805
64a8: 70 e0 ldi r23, 0x00 ; 0
64aa: 80 e0 ldi r24, 0x00 ; 0
64ac: 90 e0 ldi r25, 0x00 ; 0
64ae: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
64b2: 60 93 9b 03 sts 0x039B, r22
64b6: 70 93 9c 03 sts 0x039C, r23
64ba: 80 93 9d 03 sts 0x039D, r24
64be: 90 93 9e 03 sts 0x039E, r25
64c2: 08 95 ret
 
000064c4 <SetNeutral>:
64c4: 6f 92 push r6
64c6: 7f 92 push r7
64c8: 8f 92 push r8
64ca: 9f 92 push r9
64cc: af 92 push r10
64ce: bf 92 push r11
64d0: cf 92 push r12
64d2: df 92 push r13
64d4: ef 92 push r14
64d6: ff 92 push r15
64d8: 0f 93 push r16
64da: 1f 93 push r17
64dc: cf 93 push r28
64de: df 93 push r29
64e0: 10 92 e8 03 sts 0x03E8, r1
64e4: 46 9a sbi 0x08, 6 ; 8
64e6: 10 92 3a 04 sts 0x043A, r1
64ea: 10 92 39 04 sts 0x0439, r1
64ee: 10 92 3c 04 sts 0x043C, r1
64f2: 10 92 3b 04 sts 0x043B, r1
64f6: 80 e0 ldi r24, 0x00 ; 0
64f8: 90 e0 ldi r25, 0x00 ; 0
64fa: a0 e0 ldi r26, 0x00 ; 0
64fc: b0 e0 ldi r27, 0x00 ; 0
64fe: 80 93 3f 04 sts 0x043F, r24
6502: 90 93 40 04 sts 0x0440, r25
6506: a0 93 41 04 sts 0x0441, r26
650a: b0 93 42 04 sts 0x0442, r27
650e: 10 92 30 04 sts 0x0430, r1
6512: 10 92 2f 04 sts 0x042F, r1
6516: 10 92 32 04 sts 0x0432, r1
651a: 10 92 31 04 sts 0x0431, r1
651e: 10 92 34 04 sts 0x0434, r1
6522: 10 92 33 04 sts 0x0433, r1
6526: 10 92 67 08 sts 0x0867, r1
652a: 10 92 66 08 sts 0x0866, r1
652e: 10 92 ad 03 sts 0x03AD, r1
6532: 10 92 ae 03 sts 0x03AE, r1
6536: 10 92 0b 04 sts 0x040B, r1
653a: 0e 94 f4 30 call 0x61e8 ; 0x61e8 <CalibrierMittelwert>
653e: 84 e6 ldi r24, 0x64 ; 100
6540: 90 e0 ldi r25, 0x00 ; 0
6542: 0e 94 a7 12 call 0x254e ; 0x254e <Delay_ms_Mess>
6546: 0e 94 f4 30 call 0x61e8 ; 0x61e8 <CalibrierMittelwert>
654a: 80 91 df 07 lds r24, 0x07DF
654e: 80 ff sbrs r24, 0
6550: 10 c0 rjmp .+32 ; 0x6572 <SetNeutral+0xae>
6552: 80 91 18 03 lds r24, 0x0318
6556: 90 91 19 03 lds r25, 0x0319
655a: 87 5b subi r24, 0xB7 ; 183
655c: 93 40 sbci r25, 0x03 ; 3
655e: 08 f0 brcs .+2 ; 0x6562 <SetNeutral+0x9e>
6560: d8 c0 rjmp .+432 ; 0x6712 <SetNeutral+0x24e>
6562: 80 91 18 03 lds r24, 0x0318
6566: 90 91 19 03 lds r25, 0x0319
656a: 8e 5e subi r24, 0xEE ; 238
656c: 92 40 sbci r25, 0x02 ; 2
656e: 08 f4 brcc .+2 ; 0x6572 <SetNeutral+0xae>
6570: d0 c0 rjmp .+416 ; 0x6712 <SetNeutral+0x24e>
6572: ee 24 eor r14, r14
6574: cc 24 eor r12, r12
6576: dd 24 eor r13, r13
6578: c0 e0 ldi r28, 0x00 ; 0
657a: d0 e0 ldi r29, 0x00 ; 0
657c: 00 e0 ldi r16, 0x00 ; 0
657e: 10 e0 ldi r17, 0x00 ; 0
6580: 8a e0 ldi r24, 0x0A ; 10
6582: 90 e0 ldi r25, 0x00 ; 0
6584: 0e 94 a7 12 call 0x254e ; 0x254e <Delay_ms_Mess>
6588: 80 91 02 04 lds r24, 0x0402
658c: 90 91 03 04 lds r25, 0x0403
6590: c8 0e add r12, r24
6592: d9 1e adc r13, r25
6594: 80 91 fe 03 lds r24, 0x03FE
6598: 90 91 ff 03 lds r25, 0x03FF
659c: c8 0f add r28, r24
659e: d9 1f adc r29, r25
65a0: 80 91 00 04 lds r24, 0x0400
65a4: 90 91 01 04 lds r25, 0x0401
65a8: 08 0f add r16, r24
65aa: 19 1f adc r17, r25
65ac: e3 94 inc r14
65ae: 80 e2 ldi r24, 0x20 ; 32
65b0: e8 16 cp r14, r24
65b2: 31 f7 brne .-52 ; 0x6580 <SetNeutral+0xbc>
65b4: ae 01 movw r20, r28
65b6: 40 5f subi r20, 0xF0 ; 240
65b8: 5f 4f sbci r21, 0xFF ; 255
65ba: 56 95 lsr r21
65bc: 47 95 ror r20
65be: 56 95 lsr r21
65c0: 47 95 ror r20
65c2: 50 93 30 04 sts 0x0430, r21
65c6: 40 93 2f 04 sts 0x042F, r20
65ca: 98 01 movw r18, r16
65cc: 20 5f subi r18, 0xF0 ; 240
65ce: 3f 4f sbci r19, 0xFF ; 255
65d0: 36 95 lsr r19
65d2: 27 95 ror r18
65d4: 36 95 lsr r19
65d6: 27 95 ror r18
65d8: 30 93 32 04 sts 0x0432, r19
65dc: 20 93 31 04 sts 0x0431, r18
65e0: c6 01 movw r24, r12
65e2: 40 96 adiw r24, 0x10 ; 16
65e4: 96 95 lsr r25
65e6: 87 95 ror r24
65e8: 92 95 swap r25
65ea: 82 95 swap r24
65ec: 8f 70 andi r24, 0x0F ; 15
65ee: 89 27 eor r24, r25
65f0: 9f 70 andi r25, 0x0F ; 15
65f2: 89 27 eor r24, r25
65f4: 90 93 34 04 sts 0x0434, r25
65f8: 80 93 33 04 sts 0x0433, r24
65fc: 90 93 67 08 sts 0x0867, r25
6600: 80 93 66 08 sts 0x0866, r24
6604: 30 93 36 04 sts 0x0436, r19
6608: 20 93 35 04 sts 0x0435, r18
660c: 50 93 38 04 sts 0x0438, r21
6610: 40 93 37 04 sts 0x0437, r20
6614: 44 e0 ldi r20, 0x04 ; 4
6616: 50 e0 ldi r21, 0x00 ; 0
6618: da 01 movw r26, r20
661a: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
661e: 80 2d mov r24, r0
6620: 85 30 cpi r24, 0x05 ; 5
6622: 78 f1 brcs .+94 ; 0x6682 <SetNeutral+0x1be>
6624: 80 91 82 08 lds r24, 0x0882
6628: 90 91 83 08 lds r25, 0x0883
662c: 97 fd sbrc r25, 7
662e: 78 c0 rjmp .+240 ; 0x6720 <SetNeutral+0x25c>
6630: 6c e0 ldi r22, 0x0C ; 12
6632: 70 e0 ldi r23, 0x00 ; 0
6634: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
6638: 70 93 3c 04 sts 0x043C, r23
663c: 60 93 3b 04 sts 0x043B, r22
6640: 80 91 72 08 lds r24, 0x0872
6644: 90 91 73 08 lds r25, 0x0873
6648: 97 fd sbrc r25, 7
664a: 66 c0 rjmp .+204 ; 0x6718 <SetNeutral+0x254>
664c: 6c e0 ldi r22, 0x0C ; 12
664e: 70 e0 ldi r23, 0x00 ; 0
6650: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
6654: 70 93 3a 04 sts 0x043A, r23
6658: 60 93 39 04 sts 0x0439, r22
665c: 60 91 85 07 lds r22, 0x0785
6660: 70 91 86 07 lds r23, 0x0786
6664: 88 27 eor r24, r24
6666: 77 fd sbrc r23, 7
6668: 80 95 com r24
666a: 98 2f mov r25, r24
666c: 0e 94 dc 54 call 0xa9b8 ; 0xa9b8 <__floatsisf>
6670: 60 93 3f 04 sts 0x043F, r22
6674: 70 93 40 04 sts 0x0440, r23
6678: 80 93 41 04 sts 0x0441, r24
667c: 90 93 42 04 sts 0x0442, r25
6680: 53 c0 rjmp .+166 ; 0x6728 <SetNeutral+0x264>
6682: da 01 movw r26, r20
6684: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
6688: 80 2d mov r24, r0
668a: 4f 5f subi r20, 0xFF ; 255
668c: 5f 4f sbci r21, 0xFF ; 255
668e: da 01 movw r26, r20
6690: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
6694: 20 2d mov r18, r0
6696: 90 e0 ldi r25, 0x00 ; 0
6698: 98 2f mov r25, r24
669a: 88 27 eor r24, r24
669c: 82 0f add r24, r18
669e: 91 1d adc r25, r1
66a0: 90 93 3a 04 sts 0x043A, r25
66a4: 80 93 39 04 sts 0x0439, r24
66a8: 4f 5f subi r20, 0xFF ; 255
66aa: 5f 4f sbci r21, 0xFF ; 255
66ac: da 01 movw r26, r20
66ae: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
66b2: 80 2d mov r24, r0
66b4: 4f 5f subi r20, 0xFF ; 255
66b6: 5f 4f sbci r21, 0xFF ; 255
66b8: da 01 movw r26, r20
66ba: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
66be: 20 2d mov r18, r0
66c0: 90 e0 ldi r25, 0x00 ; 0
66c2: 98 2f mov r25, r24
66c4: 88 27 eor r24, r24
66c6: 82 0f add r24, r18
66c8: 91 1d adc r25, r1
66ca: 90 93 3c 04 sts 0x043C, r25
66ce: 80 93 3b 04 sts 0x043B, r24
66d2: 4f 5f subi r20, 0xFF ; 255
66d4: 5f 4f sbci r21, 0xFF ; 255
66d6: da 01 movw r26, r20
66d8: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
66dc: 60 2d mov r22, r0
66de: 4f 5f subi r20, 0xFF ; 255
66e0: 5f 4f sbci r21, 0xFF ; 255
66e2: da 01 movw r26, r20
66e4: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
66e8: 20 2d mov r18, r0
66ea: 70 e0 ldi r23, 0x00 ; 0
66ec: 76 2f mov r23, r22
66ee: 66 27 eor r22, r22
66f0: 62 0f add r22, r18
66f2: 71 1d adc r23, r1
66f4: 88 27 eor r24, r24
66f6: 77 fd sbrc r23, 7
66f8: 80 95 com r24
66fa: 98 2f mov r25, r24
66fc: 0e 94 dc 54 call 0xa9b8 ; 0xa9b8 <__floatsisf>
6700: 60 93 3f 04 sts 0x043F, r22
6704: 70 93 40 04 sts 0x0440, r23
6708: 80 93 41 04 sts 0x0441, r24
670c: 90 93 42 04 sts 0x0442, r25
6710: 0b c0 rjmp .+22 ; 0x6728 <SetNeutral+0x264>
6712: 0e 94 fc 1a call 0x35f8 ; 0x35f8 <SucheLuftruckOffset>
6716: 2d cf rjmp .-422 ; 0x6572 <SetNeutral+0xae>
6718: 90 95 com r25
671a: 81 95 neg r24
671c: 9f 4f sbci r25, 0xFF ; 255
671e: 96 cf rjmp .-212 ; 0x664c <SetNeutral+0x188>
6720: 90 95 com r25
6722: 81 95 neg r24
6724: 9f 4f sbci r25, 0xFF ; 255
6726: 84 cf rjmp .-248 ; 0x6630 <SetNeutral+0x16c>
6728: 10 92 47 08 sts 0x0847, r1
672c: 10 92 46 08 sts 0x0846, r1
6730: 10 92 37 08 sts 0x0837, r1
6734: 10 92 36 08 sts 0x0836, r1
6738: 10 92 78 08 sts 0x0878, r1
673c: 10 92 77 08 sts 0x0877, r1
6740: 84 e6 ldi r24, 0x64 ; 100
6742: 90 e0 ldi r25, 0x00 ; 0
6744: 0e 94 a7 12 call 0x254e ; 0x254e <Delay_ms_Mess>
6748: 60 91 06 04 lds r22, 0x0406
674c: 70 91 07 04 lds r23, 0x0407
6750: 88 27 eor r24, r24
6752: 77 fd sbrc r23, 7
6754: 80 95 com r24
6756: 98 2f mov r25, r24
6758: 26 e0 ldi r18, 0x06 ; 6
675a: 30 e0 ldi r19, 0x00 ; 0
675c: 40 e0 ldi r20, 0x00 ; 0
675e: 50 e0 ldi r21, 0x00 ; 0
6760: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
6764: 3b 01 movw r6, r22
6766: 4c 01 movw r8, r24
6768: 70 93 73 08 sts 0x0873, r23
676c: 60 93 72 08 sts 0x0872, r22
6770: 60 91 04 04 lds r22, 0x0404
6774: 70 91 05 04 lds r23, 0x0405
6778: 88 27 eor r24, r24
677a: 77 fd sbrc r23, 7
677c: 80 95 com r24
677e: 98 2f mov r25, r24
6780: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
6784: 5b 01 movw r10, r22
6786: 6c 01 movw r12, r24
6788: 70 93 83 08 sts 0x0883, r23
678c: 60 93 82 08 sts 0x0882, r22
6790: e0 90 eb 07 lds r14, 0x07EB
6794: ff 24 eor r15, r15
6796: 00 e0 ldi r16, 0x00 ; 0
6798: 10 e0 ldi r17, 0x00 ; 0
679a: 88 24 eor r8, r8
679c: 77 fc sbrc r7, 7
679e: 80 94 com r8
67a0: 98 2c mov r9, r8
67a2: c4 01 movw r24, r8
67a4: b3 01 movw r22, r6
67a6: a8 01 movw r20, r16
67a8: 97 01 movw r18, r14
67aa: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
67ae: 3b 01 movw r6, r22
67b0: 4c 01 movw r8, r24
67b2: 60 93 45 04 sts 0x0445, r22
67b6: 70 93 46 04 sts 0x0446, r23
67ba: 80 93 47 04 sts 0x0447, r24
67be: 90 93 48 04 sts 0x0448, r25
67c2: cc 24 eor r12, r12
67c4: b7 fc sbrc r11, 7
67c6: c0 94 com r12
67c8: dc 2c mov r13, r12
67ca: c6 01 movw r24, r12
67cc: b5 01 movw r22, r10
67ce: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
67d2: 60 93 4d 04 sts 0x044D, r22
67d6: 70 93 4e 04 sts 0x044E, r23
67da: 80 93 4f 04 sts 0x044F, r24
67de: 90 93 50 04 sts 0x0450, r25
67e2: 60 92 69 04 sts 0x0469, r6
67e6: 70 92 6a 04 sts 0x046A, r7
67ea: 80 92 6b 04 sts 0x046B, r8
67ee: 90 92 6c 04 sts 0x046C, r9
67f2: 60 93 71 04 sts 0x0471, r22
67f6: 70 93 72 04 sts 0x0472, r23
67fa: 80 93 73 04 sts 0x0473, r24
67fe: 90 93 74 04 sts 0x0474, r25
6802: 10 92 75 04 sts 0x0475, r1
6806: 10 92 76 04 sts 0x0476, r1
680a: 10 92 77 04 sts 0x0477, r1
680e: 10 92 78 04 sts 0x0478, r1
6812: 80 91 14 03 lds r24, 0x0314
6816: 90 91 15 03 lds r25, 0x0315
681a: a0 91 16 03 lds r26, 0x0316
681e: b0 91 17 03 lds r27, 0x0317
6822: 90 93 88 07 sts 0x0788, r25
6826: 80 93 87 07 sts 0x0787, r24
682a: 10 92 0d 04 sts 0x040D, r1
682e: 10 92 0c 04 sts 0x040C, r1
6832: 10 92 7d 04 sts 0x047D, r1
6836: 10 92 7e 04 sts 0x047E, r1
683a: 10 92 7f 04 sts 0x047F, r1
683e: 10 92 80 04 sts 0x0480, r1
6842: 80 91 81 04 lds r24, 0x0481
6846: 90 91 82 04 lds r25, 0x0482
684a: 90 93 84 04 sts 0x0484, r25
684e: 80 93 83 04 sts 0x0483, r24
6852: 0e 94 3f 4e call 0x9c7e ; 0x9c7e <GPS_Neutral>
6856: 82 e3 ldi r24, 0x32 ; 50
6858: 90 e0 ldi r25, 0x00 ; 0
685a: 90 93 e6 03 sts 0x03E6, r25
685e: 80 93 e5 03 sts 0x03E5, r24
6862: 60 91 04 08 lds r22, 0x0804
6866: 70 e0 ldi r23, 0x00 ; 0
6868: 80 e0 ldi r24, 0x00 ; 0
686a: 90 e0 ldi r25, 0x00 ; 0
686c: 24 ec ldi r18, 0xC4 ; 196
686e: 39 e0 ldi r19, 0x09 ; 9
6870: 40 e0 ldi r20, 0x00 ; 0
6872: 50 e0 ldi r21, 0x00 ; 0
6874: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
6878: 68 56 subi r22, 0x68 ; 104
687a: 75 4c sbci r23, 0xC5 ; 197
687c: 8f 4f sbci r24, 0xFF ; 255
687e: 9f 4f sbci r25, 0xFF ; 255
6880: 60 93 97 03 sts 0x0397, r22
6884: 70 93 98 03 sts 0x0398, r23
6888: 80 93 99 03 sts 0x0399, r24
688c: 90 93 9a 03 sts 0x039A, r25
6890: 60 91 05 08 lds r22, 0x0805
6894: 70 e0 ldi r23, 0x00 ; 0
6896: 80 e0 ldi r24, 0x00 ; 0
6898: 90 e0 ldi r25, 0x00 ; 0
689a: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
689e: 68 56 subi r22, 0x68 ; 104
68a0: 75 4c sbci r23, 0xC5 ; 197
68a2: 8f 4f sbci r24, 0xFF ; 255
68a4: 9f 4f sbci r25, 0xFF ; 255
68a6: 60 93 9b 03 sts 0x039B, r22
68aa: 70 93 9c 03 sts 0x039C, r23
68ae: 80 93 9d 03 sts 0x039D, r24
68b2: 90 93 9e 03 sts 0x039E, r25
68b6: 10 92 b2 03 sts 0x03B2, r1
68ba: 10 92 b1 03 sts 0x03B1, r1
68be: 60 91 81 04 lds r22, 0x0481
68c2: 70 91 82 04 lds r23, 0x0482
68c6: 88 27 eor r24, r24
68c8: 77 fd sbrc r23, 7
68ca: 80 95 com r24
68cc: 98 2f mov r25, r24
68ce: 20 91 b3 03 lds r18, 0x03B3
68d2: 30 91 b4 03 lds r19, 0x03B4
68d6: 40 91 b5 03 lds r20, 0x03B5
68da: 50 91 b6 03 lds r21, 0x03B6
68de: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
68e2: 60 93 7e 08 sts 0x087E, r22
68e6: 70 93 7f 08 sts 0x087F, r23
68ea: 80 93 80 08 sts 0x0880, r24
68ee: 90 93 81 08 sts 0x0881, r25
68f2: 10 92 8b 04 sts 0x048B, r1
68f6: 10 92 8a 04 sts 0x048A, r1
68fa: 11 e0 ldi r17, 0x01 ; 1
68fc: 10 93 01 01 sts 0x0101, r17
6900: 0e 94 9f 51 call 0xa33e ; 0xa33e <LED_Init>
6904: 80 91 c0 04 lds r24, 0x04C0
6908: 84 60 ori r24, 0x04 ; 4
690a: 80 93 c0 04 sts 0x04C0, r24
690e: 8f ef ldi r24, 0xFF ; 255
6910: 80 93 e8 08 sts 0x08E8, r24
6914: 10 92 e9 08 sts 0x08E9, r1
6918: 80 e2 ldi r24, 0x20 ; 32
691a: 80 93 ea 08 sts 0x08EA, r24
691e: e0 91 db 07 lds r30, 0x07DB
6922: f0 e0 ldi r31, 0x00 ; 0
6924: ee 0f add r30, r30
6926: ff 1f adc r31, r31
6928: eb 55 subi r30, 0x5B ; 91
692a: f8 4f sbci r31, 0xF8 ; 248
692c: 80 81 ld r24, Z
692e: 91 81 ldd r25, Z+1 ; 0x01
6930: 82 59 subi r24, 0x92 ; 146
6932: 9f 4f sbci r25, 0xFF ; 255
6934: 90 93 8d 04 sts 0x048D, r25
6938: 80 93 8c 04 sts 0x048C, r24
693c: e0 91 dc 07 lds r30, 0x07DC
6940: f0 e0 ldi r31, 0x00 ; 0
6942: ee 0f add r30, r30
6944: ff 1f adc r31, r31
6946: eb 55 subi r30, 0x5B ; 91
6948: f8 4f sbci r31, 0xF8 ; 248
694a: 80 81 ld r24, Z
694c: 91 81 ldd r25, Z+1 ; 0x01
694e: 82 59 subi r24, 0x92 ; 146
6950: 9f 4f sbci r25, 0xFF ; 255
6952: 90 93 8f 04 sts 0x048F, r25
6956: 80 93 8e 04 sts 0x048E, r24
695a: e0 91 dd 07 lds r30, 0x07DD
695e: f0 e0 ldi r31, 0x00 ; 0
6960: ee 0f add r30, r30
6962: ff 1f adc r31, r31
6964: eb 55 subi r30, 0x5B ; 91
6966: f8 4f sbci r31, 0xF8 ; 248
6968: 80 81 ld r24, Z
696a: 91 81 ldd r25, Z+1 ; 0x01
696c: 82 59 subi r24, 0x92 ; 146
696e: 9f 4f sbci r25, 0xFF ; 255
6970: 90 93 91 04 sts 0x0491, r25
6974: 80 93 90 04 sts 0x0490, r24
6978: e0 91 de 07 lds r30, 0x07DE
697c: f0 e0 ldi r31, 0x00 ; 0
697e: ee 0f add r30, r30
6980: ff 1f adc r31, r31
6982: eb 55 subi r30, 0x5B ; 91
6984: f8 4f sbci r31, 0xF8 ; 248
6986: 80 81 ld r24, Z
6988: 91 81 ldd r25, Z+1 ; 0x01
698a: 82 59 subi r24, 0x92 ; 146
698c: 9f 4f sbci r25, 0xFF ; 255
698e: 90 93 93 04 sts 0x0493, r25
6992: 80 93 92 04 sts 0x0492, r24
6996: 10 93 e8 03 sts 0x03E8, r17
699a: 84 e6 ldi r24, 0x64 ; 100
699c: 80 93 94 04 sts 0x0494, r24
69a0: df 91 pop r29
69a2: cf 91 pop r28
69a4: 1f 91 pop r17
69a6: 0f 91 pop r16
69a8: ff 90 pop r15
69aa: ef 90 pop r14
69ac: df 90 pop r13
69ae: cf 90 pop r12
69b0: bf 90 pop r11
69b2: af 90 pop r10
69b4: 9f 90 pop r9
69b6: 8f 90 pop r8
69b8: 7f 90 pop r7
69ba: 6f 90 pop r6
69bc: 08 95 ret
 
000069be <Piep>:
69be: 1f 93 push r17
69c0: 18 2f mov r17, r24
69c2: 11 50 subi r17, 0x01 ; 1
69c4: 1f 3f cpi r17, 0xFF ; 255
69c6: a9 f0 breq .+42 ; 0x69f2 <Piep+0x34>
69c8: 80 91 9d 04 lds r24, 0x049D
69cc: 88 23 and r24, r24
69ce: 29 f0 breq .+10 ; 0x69da <Piep+0x1c>
69d0: 10 c0 rjmp .+32 ; 0x69f2 <Piep+0x34>
69d2: 80 91 9d 04 lds r24, 0x049D
69d6: 88 23 and r24, r24
69d8: 61 f4 brne .+24 ; 0x69f2 <Piep+0x34>
69da: 84 e6 ldi r24, 0x64 ; 100
69dc: 90 e0 ldi r25, 0x00 ; 0
69de: 90 93 e6 03 sts 0x03E6, r25
69e2: 80 93 e5 03 sts 0x03E5, r24
69e6: 8a ef ldi r24, 0xFA ; 250
69e8: 90 e0 ldi r25, 0x00 ; 0
69ea: 0e 94 9a 12 call 0x2534 ; 0x2534 <Delay_ms>
69ee: 11 50 subi r17, 0x01 ; 1
69f0: 80 f7 brcc .-32 ; 0x69d2 <Piep+0x14>
69f2: 1f 91 pop r17
69f4: 08 95 ret
 
000069f6 <DefaultKonstanten3>:
69f6: 88 ee ldi r24, 0xE8 ; 232
69f8: 80 93 df 07 sts 0x07DF, r24
69fc: 3e e1 ldi r19, 0x1E ; 30
69fe: 30 93 e0 07 sts 0x07E0, r19
6a02: 8b ef ldi r24, 0xFB ; 251
6a04: 80 93 e2 07 sts 0x07E2, r24
6a08: 8a e0 ldi r24, 0x0A ; 10
6a0a: 80 93 e3 07 sts 0x07E3, r24
6a0e: 30 93 e1 07 sts 0x07E1, r19
6a12: 30 93 e5 07 sts 0x07E5, r19
6a16: 93 e0 ldi r25, 0x03 ; 3
6a18: 90 93 e4 07 sts 0x07E4, r25
6a1c: 58 e0 ldi r21, 0x08 ; 8
6a1e: 50 93 e6 07 sts 0x07E6, r21
6a22: 20 e1 ldi r18, 0x10 ; 16
6a24: 20 93 e7 07 sts 0x07E7, r18
6a28: 66 e0 ldi r22, 0x06 ; 6
6a2a: 60 93 e8 07 sts 0x07E8, r22
6a2e: 50 93 e9 07 sts 0x07E9, r21
6a32: 86 ee ldi r24, 0xE6 ; 230
6a34: 80 93 ea 07 sts 0x07EA, r24
6a38: 30 93 eb 07 sts 0x07EB, r19
6a3c: 80 e8 ldi r24, 0x80 ; 128
6a3e: 80 93 ec 07 sts 0x07EC, r24
6a42: 44 e6 ldi r20, 0x64 ; 100
6a44: 40 93 ed 07 sts 0x07ED, r20
6a48: 88 e7 ldi r24, 0x78 ; 120
6a4a: 80 93 ee 07 sts 0x07EE, r24
6a4e: 90 93 ef 07 sts 0x07EF, r25
6a52: 8e e5 ldi r24, 0x5E ; 94
6a54: 80 93 f0 07 sts 0x07F0, r24
6a58: 83 e2 ldi r24, 0x23 ; 35
6a5a: 80 93 f1 07 sts 0x07F1, r24
6a5e: 84 e1 ldi r24, 0x14 ; 20
6a60: 80 93 f2 07 sts 0x07F2, r24
6a64: 10 92 f3 07 sts 0x07F3, r1
6a68: 20 93 f4 07 sts 0x07F4, r18
6a6c: 10 92 f5 07 sts 0x07F5, r1
6a70: 10 92 f6 07 sts 0x07F6, r1
6a74: 10 92 f7 07 sts 0x07F7, r1
6a78: 10 92 f8 07 sts 0x07F8, r1
6a7c: 10 92 09 08 sts 0x0809, r1
6a80: 10 92 0a 08 sts 0x080A, r1
6a84: 10 92 0b 08 sts 0x080B, r1
6a88: 10 92 0c 08 sts 0x080C, r1
6a8c: 40 93 f9 07 sts 0x07F9, r20
6a90: 88 e2 ldi r24, 0x28 ; 40
6a92: 80 93 fa 07 sts 0x07FA, r24
6a96: 10 92 23 08 sts 0x0823, r1
6a9a: 92 e3 ldi r25, 0x32 ; 50
6a9c: 90 93 fb 07 sts 0x07FB, r25
6aa0: 86 e9 ldi r24, 0x96 ; 150
6aa2: 80 93 fc 07 sts 0x07FC, r24
6aa6: 85 e0 ldi r24, 0x05 ; 5
6aa8: 80 93 fd 07 sts 0x07FD, r24
6aac: 90 93 fe 07 sts 0x07FE, r25
6ab0: 2a e5 ldi r18, 0x5A ; 90
6ab2: 20 93 ff 07 sts 0x07FF, r18
6ab6: 90 93 00 08 sts 0x0800, r25
6aba: 10 92 22 08 sts 0x0822, r1
6abe: 20 93 01 08 sts 0x0801, r18
6ac2: 83 e4 ldi r24, 0x43 ; 67
6ac4: 80 93 02 08 sts 0x0802, r24
6ac8: 86 e4 ldi r24, 0x46 ; 70
6aca: 80 93 03 08 sts 0x0803, r24
6ace: 85 e5 ldi r24, 0x55 ; 85
6ad0: 80 93 04 08 sts 0x0804, r24
6ad4: 80 93 05 08 sts 0x0805, r24
6ad8: 80 e2 ldi r24, 0x20 ; 32
6ada: 80 93 06 08 sts 0x0806, r24
6ade: 80 93 07 08 sts 0x0807, r24
6ae2: 90 93 08 08 sts 0x0808, r25
6ae6: 8f e5 ldi r24, 0x5F ; 95
6ae8: 80 93 0d 08 sts 0x080D, r24
6aec: 83 ef ldi r24, 0xF3 ; 243
6aee: 80 93 0f 08 sts 0x080F, r24
6af2: 30 93 0e 08 sts 0x080E, r19
6af6: 30 93 10 08 sts 0x0810, r19
6afa: 8d ef ldi r24, 0xFD ; 253
6afc: 80 93 11 08 sts 0x0811, r24
6b00: 40 93 12 08 sts 0x0812, r20
6b04: 20 93 13 08 sts 0x0813, r18
6b08: 20 93 14 08 sts 0x0814, r18
6b0c: 20 93 15 08 sts 0x0815, r18
6b10: 8b e4 ldi r24, 0x4B ; 75
6b12: 80 93 16 08 sts 0x0816, r24
6b16: 80 93 17 08 sts 0x0817, r24
6b1a: 80 93 18 08 sts 0x0818, r24
6b1e: 10 92 19 08 sts 0x0819, r1
6b22: 60 93 1a 08 sts 0x081A, r22
6b26: 50 93 1b 08 sts 0x081B, r21
6b2a: 20 93 1c 08 sts 0x081C, r18
6b2e: 30 93 1d 08 sts 0x081D, r19
6b32: 40 93 1e 08 sts 0x081E, r20
6b36: 40 93 1f 08 sts 0x081F, r20
6b3a: 84 e0 ldi r24, 0x04 ; 4
6b3c: 80 93 20 08 sts 0x0820, r24
6b40: a8 e2 ldi r26, 0x28 ; 40
6b42: b8 e0 ldi r27, 0x08 ; 8
6b44: ea e7 ldi r30, 0x7A ; 122
6b46: f3 e0 ldi r31, 0x03 ; 3
6b48: 8c e0 ldi r24, 0x0C ; 12
6b4a: 01 90 ld r0, Z+
6b4c: 0d 92 st X+, r0
6b4e: 81 50 subi r24, 0x01 ; 1
6b50: e1 f7 brne .-8 ; 0x6b4a <DefaultKonstanten3+0x154>
6b52: 08 95 ret
 
00006b54 <DefaultKonstanten2>:
6b54: 88 e6 ldi r24, 0x68 ; 104
6b56: 80 93 df 07 sts 0x07DF, r24
6b5a: 5e e1 ldi r21, 0x1E ; 30
6b5c: 50 93 e0 07 sts 0x07E0, r21
6b60: 8b ef ldi r24, 0xFB ; 251
6b62: 80 93 e2 07 sts 0x07E2, r24
6b66: 8a e0 ldi r24, 0x0A ; 10
6b68: 80 93 e3 07 sts 0x07E3, r24
6b6c: 50 93 e1 07 sts 0x07E1, r21
6b70: 50 93 e5 07 sts 0x07E5, r21
6b74: 93 e0 ldi r25, 0x03 ; 3
6b76: 90 93 e4 07 sts 0x07E4, r25
6b7a: 8c e0 ldi r24, 0x0C ; 12
6b7c: 80 93 e6 07 sts 0x07E6, r24
6b80: 80 e1 ldi r24, 0x10 ; 16
6b82: 80 93 e7 07 sts 0x07E7, r24
6b86: 76 e0 ldi r23, 0x06 ; 6
6b88: 70 93 e8 07 sts 0x07E8, r23
6b8c: 68 e0 ldi r22, 0x08 ; 8
6b8e: 60 93 e9 07 sts 0x07E9, r22
6b92: 86 ee ldi r24, 0xE6 ; 230
6b94: 80 93 ea 07 sts 0x07EA, r24
6b98: 50 93 eb 07 sts 0x07EB, r21
6b9c: 80 e8 ldi r24, 0x80 ; 128
6b9e: 80 93 ec 07 sts 0x07EC, r24
6ba2: 80 e5 ldi r24, 0x50 ; 80
6ba4: 80 93 ed 07 sts 0x07ED, r24
6ba8: 88 e7 ldi r24, 0x78 ; 120
6baa: 80 93 ee 07 sts 0x07EE, r24
6bae: 90 93 ef 07 sts 0x07EF, r25
6bb2: 8e e5 ldi r24, 0x5E ; 94
6bb4: 80 93 f0 07 sts 0x07F0, r24
6bb8: 83 e2 ldi r24, 0x23 ; 35
6bba: 80 93 f1 07 sts 0x07F1, r24
6bbe: 50 93 f2 07 sts 0x07F2, r21
6bc2: 10 92 f3 07 sts 0x07F3, r1
6bc6: 30 e2 ldi r19, 0x20 ; 32
6bc8: 30 93 f4 07 sts 0x07F4, r19
6bcc: 10 92 f5 07 sts 0x07F5, r1
6bd0: 10 92 f6 07 sts 0x07F6, r1
6bd4: 10 92 f7 07 sts 0x07F7, r1
6bd8: 10 92 f8 07 sts 0x07F8, r1
6bdc: 10 92 09 08 sts 0x0809, r1
6be0: 10 92 0a 08 sts 0x080A, r1
6be4: 10 92 0b 08 sts 0x080B, r1
6be8: 10 92 0c 08 sts 0x080C, r1
6bec: 44 e6 ldi r20, 0x64 ; 100
6bee: 40 93 f9 07 sts 0x07F9, r20
6bf2: 88 e2 ldi r24, 0x28 ; 40
6bf4: 80 93 fa 07 sts 0x07FA, r24
6bf8: 10 92 23 08 sts 0x0823, r1
6bfc: 92 e3 ldi r25, 0x32 ; 50
6bfe: 90 93 fb 07 sts 0x07FB, r25
6c02: 86 e9 ldi r24, 0x96 ; 150
6c04: 80 93 fc 07 sts 0x07FC, r24
6c08: 85 e0 ldi r24, 0x05 ; 5
6c0a: 80 93 fd 07 sts 0x07FD, r24
6c0e: 90 93 fe 07 sts 0x07FE, r25
6c12: 2a e5 ldi r18, 0x5A ; 90
6c14: 20 93 ff 07 sts 0x07FF, r18
6c18: 90 93 00 08 sts 0x0800, r25
6c1c: 10 92 22 08 sts 0x0822, r1
6c20: 20 93 01 08 sts 0x0801, r18
6c24: 83 e4 ldi r24, 0x43 ; 67
6c26: 80 93 02 08 sts 0x0802, r24
6c2a: 8c e3 ldi r24, 0x3C ; 60
6c2c: 80 93 03 08 sts 0x0803, r24
6c30: 85 e5 ldi r24, 0x55 ; 85
6c32: 80 93 04 08 sts 0x0804, r24
6c36: 80 93 05 08 sts 0x0805, r24
6c3a: 30 93 06 08 sts 0x0806, r19
6c3e: 30 93 07 08 sts 0x0807, r19
6c42: 9b e4 ldi r25, 0x4B ; 75
6c44: 90 93 08 08 sts 0x0808, r25
6c48: 8f e5 ldi r24, 0x5F ; 95
6c4a: 80 93 0d 08 sts 0x080D, r24
6c4e: 83 ef ldi r24, 0xF3 ; 243
6c50: 80 93 0f 08 sts 0x080F, r24
6c54: 84 e1 ldi r24, 0x14 ; 20
6c56: 80 93 0e 08 sts 0x080E, r24
6c5a: 80 93 10 08 sts 0x0810, r24
6c5e: 8d ef ldi r24, 0xFD ; 253
6c60: 80 93 11 08 sts 0x0811, r24
6c64: 40 93 12 08 sts 0x0812, r20
6c68: 20 93 13 08 sts 0x0813, r18
6c6c: 20 93 14 08 sts 0x0814, r18
6c70: 20 93 15 08 sts 0x0815, r18
6c74: 90 93 16 08 sts 0x0816, r25
6c78: 90 93 17 08 sts 0x0817, r25
6c7c: 90 93 18 08 sts 0x0818, r25
6c80: 10 92 19 08 sts 0x0819, r1
6c84: 70 93 1a 08 sts 0x081A, r23
6c88: 60 93 1b 08 sts 0x081B, r22
6c8c: 20 93 1c 08 sts 0x081C, r18
6c90: 50 93 1d 08 sts 0x081D, r21
6c94: 40 93 1e 08 sts 0x081E, r20
6c98: 40 93 1f 08 sts 0x081F, r20
6c9c: 84 e0 ldi r24, 0x04 ; 4
6c9e: 80 93 20 08 sts 0x0820, r24
6ca2: a8 e2 ldi r26, 0x28 ; 40
6ca4: b8 e0 ldi r27, 0x08 ; 8
6ca6: e4 e8 ldi r30, 0x84 ; 132
6ca8: f3 e0 ldi r31, 0x03 ; 3
6caa: 8c e0 ldi r24, 0x0C ; 12
6cac: 01 90 ld r0, Z+
6cae: 0d 92 st X+, r0
6cb0: 81 50 subi r24, 0x01 ; 1
6cb2: e1 f7 brne .-8 ; 0x6cac <DefaultKonstanten2+0x158>
6cb4: 08 95 ret
 
00006cb6 <DefaultKonstanten1>:
6cb6: 88 e6 ldi r24, 0x68 ; 104
6cb8: 80 93 df 07 sts 0x07DF, r24
6cbc: 3e e1 ldi r19, 0x1E ; 30
6cbe: 30 93 e0 07 sts 0x07E0, r19
6cc2: 8b ef ldi r24, 0xFB ; 251
6cc4: 80 93 e2 07 sts 0x07E2, r24
6cc8: 8a e0 ldi r24, 0x0A ; 10
6cca: 80 93 e3 07 sts 0x07E3, r24
6cce: 30 93 e1 07 sts 0x07E1, r19
6cd2: 30 93 e5 07 sts 0x07E5, r19
6cd6: e4 e0 ldi r30, 0x04 ; 4
6cd8: e0 93 e4 07 sts 0x07E4, r30
6cdc: 5f e0 ldi r21, 0x0F ; 15
6cde: 50 93 e6 07 sts 0x07E6, r21
6ce2: 30 93 e7 07 sts 0x07E7, r19
6ce6: 8c e0 ldi r24, 0x0C ; 12
6ce8: 80 93 e8 07 sts 0x07E8, r24
6cec: 78 e0 ldi r23, 0x08 ; 8
6cee: 70 93 e9 07 sts 0x07E9, r23
6cf2: 86 ee ldi r24, 0xE6 ; 230
6cf4: 80 93 ea 07 sts 0x07EA, r24
6cf8: 30 93 eb 07 sts 0x07EB, r19
6cfc: 80 e8 ldi r24, 0x80 ; 128
6cfe: 80 93 ec 07 sts 0x07EC, r24
6d02: 80 e5 ldi r24, 0x50 ; 80
6d04: 80 93 ed 07 sts 0x07ED, r24
6d08: 26 e9 ldi r18, 0x96 ; 150
6d0a: 20 93 ee 07 sts 0x07EE, r18
6d0e: 83 e0 ldi r24, 0x03 ; 3
6d10: 80 93 ef 07 sts 0x07EF, r24
6d14: 8e e5 ldi r24, 0x5E ; 94
6d16: 80 93 f0 07 sts 0x07F0, r24
6d1a: 83 e2 ldi r24, 0x23 ; 35
6d1c: 80 93 f1 07 sts 0x07F1, r24
6d20: 30 93 f2 07 sts 0x07F2, r19
6d24: 10 92 f3 07 sts 0x07F3, r1
6d28: 60 e2 ldi r22, 0x20 ; 32
6d2a: 60 93 f4 07 sts 0x07F4, r22
6d2e: 10 92 f5 07 sts 0x07F5, r1
6d32: 10 92 f6 07 sts 0x07F6, r1
6d36: 10 92 f7 07 sts 0x07F7, r1
6d3a: 10 92 f8 07 sts 0x07F8, r1
6d3e: 10 92 09 08 sts 0x0809, r1
6d42: 10 92 0a 08 sts 0x080A, r1
6d46: 10 92 0b 08 sts 0x080B, r1
6d4a: 10 92 0c 08 sts 0x080C, r1
6d4e: 44 e6 ldi r20, 0x64 ; 100
6d50: 40 93 f9 07 sts 0x07F9, r20
6d54: 88 e2 ldi r24, 0x28 ; 40
6d56: 80 93 fa 07 sts 0x07FA, r24
6d5a: 10 92 23 08 sts 0x0823, r1
6d5e: 92 e3 ldi r25, 0x32 ; 50
6d60: 90 93 fb 07 sts 0x07FB, r25
6d64: 20 93 fc 07 sts 0x07FC, r18
6d68: 85 e0 ldi r24, 0x05 ; 5
6d6a: 80 93 fd 07 sts 0x07FD, r24
6d6e: 90 93 fe 07 sts 0x07FE, r25
6d72: 2a e5 ldi r18, 0x5A ; 90
6d74: 20 93 ff 07 sts 0x07FF, r18
6d78: 90 93 00 08 sts 0x0800, r25
6d7c: 10 92 22 08 sts 0x0822, r1
6d80: 20 93 01 08 sts 0x0801, r18
6d84: 83 e4 ldi r24, 0x43 ; 67
6d86: 80 93 02 08 sts 0x0802, r24
6d8a: 10 92 03 08 sts 0x0803, r1
6d8e: 85 e5 ldi r24, 0x55 ; 85
6d90: 80 93 04 08 sts 0x0804, r24
6d94: 80 93 05 08 sts 0x0805, r24
6d98: 80 e1 ldi r24, 0x10 ; 16
6d9a: 80 93 06 08 sts 0x0806, r24
6d9e: 60 93 07 08 sts 0x0807, r22
6da2: 40 93 08 08 sts 0x0808, r20
6da6: 8f e5 ldi r24, 0x5F ; 95
6da8: 80 93 0d 08 sts 0x080D, r24
6dac: 83 ef ldi r24, 0xF3 ; 243
6dae: 80 93 0f 08 sts 0x080F, r24
6db2: 50 93 0e 08 sts 0x080E, r21
6db6: 50 93 10 08 sts 0x0810, r21
6dba: 8d ef ldi r24, 0xFD ; 253
6dbc: 80 93 11 08 sts 0x0811, r24
6dc0: 40 93 12 08 sts 0x0812, r20
6dc4: 20 93 13 08 sts 0x0813, r18
6dc8: 20 93 14 08 sts 0x0814, r18
6dcc: 20 93 15 08 sts 0x0815, r18
6dd0: 8b e4 ldi r24, 0x4B ; 75
6dd2: 80 93 16 08 sts 0x0816, r24
6dd6: 80 93 17 08 sts 0x0817, r24
6dda: 80 93 18 08 sts 0x0818, r24
6dde: 10 92 19 08 sts 0x0819, r1
6de2: 86 e0 ldi r24, 0x06 ; 6
6de4: 80 93 1a 08 sts 0x081A, r24
6de8: 70 93 1b 08 sts 0x081B, r23
6dec: 20 93 1c 08 sts 0x081C, r18
6df0: 30 93 1d 08 sts 0x081D, r19
6df4: 40 93 1e 08 sts 0x081E, r20
6df8: 40 93 1f 08 sts 0x081F, r20
6dfc: e0 93 20 08 sts 0x0820, r30
6e00: a8 e2 ldi r26, 0x28 ; 40
6e02: b8 e0 ldi r27, 0x08 ; 8
6e04: ec e8 ldi r30, 0x8C ; 140
6e06: f3 e0 ldi r31, 0x03 ; 3
6e08: 8c e0 ldi r24, 0x0C ; 12
6e0a: 01 90 ld r0, Z+
6e0c: 0d 92 st X+, r0
6e0e: 81 50 subi r24, 0x01 ; 1
6e10: e1 f7 brne .-8 ; 0x6e0a <DefaultKonstanten1+0x154>
6e12: 08 95 ret
 
00006e14 <MotorRegler>:
6e14: 2f 92 push r2
6e16: 3f 92 push r3
6e18: 4f 92 push r4
6e1a: 5f 92 push r5
6e1c: 6f 92 push r6
6e1e: 7f 92 push r7
6e20: 8f 92 push r8
6e22: 9f 92 push r9
6e24: af 92 push r10
6e26: bf 92 push r11
6e28: cf 92 push r12
6e2a: df 92 push r13
6e2c: ef 92 push r14
6e2e: ff 92 push r15
6e30: 0f 93 push r16
6e32: 1f 93 push r17
6e34: cf 93 push r28
6e36: df 93 push r29
6e38: cd b7 in r28, 0x3d ; 61
6e3a: de b7 in r29, 0x3e ; 62
6e3c: ae 97 sbiw r28, 0x2e ; 46
6e3e: 0f b6 in r0, 0x3f ; 63
6e40: f8 94 cli
6e42: de bf out 0x3e, r29 ; 62
6e44: 0f be out 0x3f, r0 ; 63
6e46: cd bf out 0x3d, r28 ; 61
6e48: 0e 94 f3 23 call 0x47e6 ; 0x47e6 <Mittelwert>
6e4c: 40 91 00 01 lds r20, 0x0100
6e50: 4c 30 cpi r20, 0x0C ; 12
6e52: 08 f0 brcs .+2 ; 0x6e56 <MotorRegler+0x42>
6e54: 4f c7 rjmp .+3742 ; 0x7cf4 <MotorRegler+0xee0>
6e56: 29 9a sbi 0x05, 1 ; 5
6e58: 20 91 9b 04 lds r18, 0x049B
6e5c: 30 91 9c 04 lds r19, 0x049C
6e60: 80 91 4c 08 lds r24, 0x084C
6e64: 68 2f mov r22, r24
6e66: 70 e0 ldi r23, 0x00 ; 0
6e68: 66 5f subi r22, 0xF6 ; 246
6e6a: 7f 4f sbci r23, 0xFF ; 255
6e6c: 79 8b std Y+17, r23 ; 0x11
6e6e: 68 8b std Y+16, r22 ; 0x10
6e70: 62 17 cp r22, r18
6e72: 73 07 cpc r23, r19
6e74: 14 f4 brge .+4 ; 0x6e7a <MotorRegler+0x66>
6e76: 39 8b std Y+17, r19 ; 0x11
6e78: 28 8b std Y+16, r18 ; 0x10
6e7a: 80 91 94 04 lds r24, 0x0494
6e7e: 84 36 cpi r24, 0x64 ; 100
6e80: 08 f0 brcs .+2 ; 0x6e84 <MotorRegler+0x70>
6e82: ef c3 rjmp .+2014 ; 0x7662 <MotorRegler+0x84e>
6e84: 80 91 05 01 lds r24, 0x0105
6e88: 88 23 and r24, r24
6e8a: 49 f4 brne .+18 ; 0x6e9e <MotorRegler+0x8a>
6e8c: 80 91 09 03 lds r24, 0x0309
6e90: 90 91 0a 03 lds r25, 0x030A
6e94: 8f 5f subi r24, 0xFF ; 255
6e96: 9f 4f sbci r25, 0xFF ; 255
6e98: 11 f4 brne .+4 ; 0x6e9e <MotorRegler+0x8a>
6e9a: 0c 94 1a 49 jmp 0x9234 ; 0x9234 <MotorRegler+0x2420>
6e9e: 80 91 ea 04 lds r24, 0x04EA
6ea2: 90 91 eb 04 lds r25, 0x04EB
6ea6: 00 97 sbiw r24, 0x00 ; 0
6ea8: 09 f4 brne .+2 ; 0x6eac <MotorRegler+0x98>
6eaa: 31 c7 rjmp .+3682 ; 0x7d0e <MotorRegler+0xefa>
6eac: 01 97 sbiw r24, 0x01 ; 1
6eae: 90 93 eb 04 sts 0x04EB, r25
6eb2: 80 93 ea 04 sts 0x04EA, r24
6eb6: 4a 30 cpi r20, 0x0A ; 10
6eb8: 09 f4 brne .+2 ; 0x6ebc <MotorRegler+0xa8>
6eba: 30 c7 rjmp .+3680 ; 0x7d1c <MotorRegler+0xf08>
6ebc: 44 31 cpi r20, 0x14 ; 20
6ebe: 09 f4 brne .+2 ; 0x6ec2 <MotorRegler+0xae>
6ec0: 2d c7 rjmp .+3674 ; 0x7d1c <MotorRegler+0xf08>
6ec2: 28 98 cbi 0x05, 0 ; 5
6ec4: 80 91 be 04 lds r24, 0x04BE
6ec8: 90 91 bf 04 lds r25, 0x04BF
6ecc: 89 5e subi r24, 0xE9 ; 233
6ece: 93 40 sbci r25, 0x03 ; 3
6ed0: 10 f4 brcc .+4 ; 0x6ed6 <MotorRegler+0xc2>
6ed2: 0c 94 73 45 jmp 0x8ae6 ; 0x8ae6 <MotorRegler+0x1cd2>
6ed6: 80 91 f1 07 lds r24, 0x07F1
6eda: e8 2f mov r30, r24
6edc: f0 e0 ldi r31, 0x00 ; 0
6ede: f9 8b std Y+17, r31 ; 0x11
6ee0: e8 8b std Y+16, r30 ; 0x10
6ee2: f1 e0 ldi r31, 0x01 ; 1
6ee4: f0 93 87 04 sts 0x0487, r31
6ee8: a0 91 d7 07 lds r26, 0x07D7
6eec: b0 e0 ldi r27, 0x00 ; 0
6eee: aa 0f add r26, r26
6ef0: bb 1f adc r27, r27
6ef2: fd 01 movw r30, r26
6ef4: e5 54 subi r30, 0x45 ; 69
6ef6: f8 4f sbci r31, 0xF8 ; 248
6ef8: 11 82 std Z+1, r1 ; 0x01
6efa: 10 82 st Z, r1
6efc: e0 91 d8 07 lds r30, 0x07D8
6f00: 2e 2f mov r18, r30
6f02: 30 e0 ldi r19, 0x00 ; 0
6f04: 22 0f add r18, r18
6f06: 33 1f adc r19, r19
6f08: c9 01 movw r24, r18
6f0a: 85 54 subi r24, 0x45 ; 69
6f0c: 98 4f sbci r25, 0xF8 ; 248
6f0e: fc 01 movw r30, r24
6f10: 11 82 std Z+1, r1 ; 0x01
6f12: 10 82 st Z, r1
6f14: ab 55 subi r26, 0x5B ; 91
6f16: b8 4f sbci r27, 0xF8 ; 248
6f18: 11 96 adiw r26, 0x01 ; 1
6f1a: 1c 92 st X, r1
6f1c: 1e 92 st -X, r1
6f1e: 2b 55 subi r18, 0x5B ; 91
6f20: 38 4f sbci r19, 0xF8 ; 248
6f22: d9 01 movw r26, r18
6f24: 11 96 adiw r26, 0x01 ; 1
6f26: 1c 92 st X, r1
6f28: 1e 92 st -X, r1
6f2a: e0 91 da 07 lds r30, 0x07DA
6f2e: f0 e0 ldi r31, 0x00 ; 0
6f30: ee 0f add r30, r30
6f32: ff 1f adc r31, r31
6f34: eb 55 subi r30, 0x5B ; 91
6f36: f8 4f sbci r31, 0xF8 ; 248
6f38: 11 82 std Z+1, r1 ; 0x01
6f3a: 10 82 st Z, r1
6f3c: 80 91 79 03 lds r24, 0x0379
6f40: 81 50 subi r24, 0x01 ; 1
6f42: 80 93 79 03 sts 0x0379, r24
6f46: 80 91 79 03 lds r24, 0x0379
6f4a: 8f 3f cpi r24, 0xFF ; 255
6f4c: 09 f4 brne .+2 ; 0x6f50 <MotorRegler+0x13c>
6f4e: d0 c4 rjmp .+2464 ; 0x78f0 <MotorRegler+0xadc>
6f50: b0 91 87 04 lds r27, 0x0487
6f54: bf a3 std Y+39, r27 ; 0x27
6f56: bb 23 and r27, r27
6f58: 09 f0 breq .+2 ; 0x6f5c <MotorRegler+0x148>
6f5a: ca c4 rjmp .+2452 ; 0x78f0 <MotorRegler+0xadc>
6f5c: b0 91 df 07 lds r27, 0x07DF
6f60: 20 91 a7 04 lds r18, 0x04A7
6f64: 22 23 and r18, r18
6f66: 11 f4 brne .+4 ; 0x6f6c <MotorRegler+0x158>
6f68: 0c 94 76 49 jmp 0x92ec ; 0x92ec <MotorRegler+0x24d8>
6f6c: 80 91 fe 07 lds r24, 0x07FE
6f70: 90 e0 ldi r25, 0x00 ; 0
6f72: 68 89 ldd r22, Y+16 ; 0x10
6f74: 79 89 ldd r23, Y+17 ; 0x11
6f76: 86 17 cp r24, r22
6f78: 97 07 cpc r25, r23
6f7a: 14 f4 brge .+4 ; 0x6f80 <MotorRegler+0x16c>
6f7c: 99 8b std Y+17, r25 ; 0x11
6f7e: 88 8b std Y+16, r24 ; 0x10
6f80: 71 e0 ldi r23, 0x01 ; 1
6f82: 70 93 89 04 sts 0x0489, r23
6f86: 8b 2f mov r24, r27
6f88: 90 e0 ldi r25, 0x00 ; 0
6f8a: 9b 87 std Y+11, r25 ; 0x0b
6f8c: 8a 87 std Y+10, r24 ; 0x0a
6f8e: 9f a1 ldd r25, Y+39 ; 0x27
6f90: 99 23 and r25, r25
6f92: b1 f0 breq .+44 ; 0x6fc0 <MotorRegler+0x1ac>
6f94: 10 92 9a 04 sts 0x049A, r1
6f98: 10 92 99 04 sts 0x0499, r1
6f9c: 10 92 96 04 sts 0x0496, r1
6fa0: 10 92 95 04 sts 0x0495, r1
6fa4: 10 92 98 04 sts 0x0498, r1
6fa8: 10 92 97 04 sts 0x0497, r1
6fac: 8a e5 ldi r24, 0x5A ; 90
6fae: 80 93 7c 08 sts 0x087C, r24
6fb2: a8 e7 ldi r26, 0x78 ; 120
6fb4: a0 93 68 08 sts 0x0868, r26
6fb8: 10 92 a7 04 sts 0x04A7, r1
6fbc: 10 92 a6 04 sts 0x04A6, r1
6fc0: 20 91 45 04 lds r18, 0x0445
6fc4: 30 91 46 04 lds r19, 0x0446
6fc8: 40 91 47 04 lds r20, 0x0447
6fcc: 50 91 48 04 lds r21, 0x0448
6fd0: 29 83 std Y+1, r18 ; 0x01
6fd2: 3a 83 std Y+2, r19 ; 0x02
6fd4: 4b 83 std Y+3, r20 ; 0x03
6fd6: 5c 83 std Y+4, r21 ; 0x04
6fd8: 40 91 5b 08 lds r20, 0x085B
6fdc: 50 91 5c 08 lds r21, 0x085C
6fe0: 60 91 5d 08 lds r22, 0x085D
6fe4: 70 91 5e 08 lds r23, 0x085E
6fe8: 48 a7 std Y+40, r20 ; 0x28
6fea: 59 a7 std Y+41, r21 ; 0x29
6fec: 6a a7 std Y+42, r22 ; 0x2a
6fee: 7b a7 std Y+43, r23 ; 0x2b
6ff0: 89 81 ldd r24, Y+1 ; 0x01
6ff2: 9a 81 ldd r25, Y+2 ; 0x02
6ff4: ab 81 ldd r26, Y+3 ; 0x03
6ff6: bc 81 ldd r27, Y+4 ; 0x04
6ff8: 48 0f add r20, r24
6ffa: 59 1f adc r21, r25
6ffc: 6a 1f adc r22, r26
6ffe: 7b 1f adc r23, r27
7000: 40 93 5b 08 sts 0x085B, r20
7004: 50 93 5c 08 sts 0x085C, r21
7008: 60 93 5d 08 sts 0x085D, r22
700c: 70 93 5e 08 sts 0x085E, r23
7010: 20 91 4d 04 lds r18, 0x044D
7014: 30 91 4e 04 lds r19, 0x044E
7018: 40 91 4f 04 lds r20, 0x044F
701c: 50 91 50 04 lds r21, 0x0450
7020: 2d 83 std Y+5, r18 ; 0x05
7022: 3e 83 std Y+6, r19 ; 0x06
7024: 4f 83 std Y+7, r20 ; 0x07
7026: 58 87 std Y+8, r21 ; 0x08
7028: 20 90 62 08 lds r2, 0x0862
702c: 30 90 63 08 lds r3, 0x0863
7030: 40 90 64 08 lds r4, 0x0864
7034: 50 90 65 08 lds r5, 0x0865
7038: 22 0e add r2, r18
703a: 33 1e adc r3, r19
703c: 44 1e adc r4, r20
703e: 55 1e adc r5, r21
7040: 20 92 62 08 sts 0x0862, r2
7044: 30 92 63 08 sts 0x0863, r3
7048: 40 92 64 08 sts 0x0864, r4
704c: 50 92 65 08 sts 0x0865, r5
7050: 40 91 49 04 lds r20, 0x0449
7054: 50 91 4a 04 lds r21, 0x044A
7058: 60 91 4b 04 lds r22, 0x044B
705c: 70 91 4c 04 lds r23, 0x044C
7060: 49 a3 std Y+33, r20 ; 0x21
7062: 5a a3 std Y+34, r21 ; 0x22
7064: 6b a3 std Y+35, r22 ; 0x23
7066: 7c a3 std Y+36, r23 ; 0x24
7068: 80 91 4e 08 lds r24, 0x084E
706c: 90 91 4f 08 lds r25, 0x084F
7070: a0 91 50 08 lds r26, 0x0850
7074: b0 91 51 08 lds r27, 0x0851
7078: 84 0f add r24, r20
707a: 95 1f adc r25, r21
707c: a6 1f adc r26, r22
707e: b7 1f adc r27, r23
7080: 80 93 4e 08 sts 0x084E, r24
7084: 90 93 4f 08 sts 0x084F, r25
7088: a0 93 50 08 sts 0x0850, r26
708c: b0 93 51 08 sts 0x0851, r27
7090: 60 91 51 04 lds r22, 0x0451
7094: 70 91 52 04 lds r23, 0x0452
7098: 80 91 53 04 lds r24, 0x0453
709c: 90 91 54 04 lds r25, 0x0454
70a0: 6d 8f std Y+29, r22 ; 0x1d
70a2: 7e 8f std Y+30, r23 ; 0x1e
70a4: 8f 8f std Y+31, r24 ; 0x1f
70a6: 98 a3 std Y+32, r25 ; 0x20
70a8: 80 91 3e 08 lds r24, 0x083E
70ac: 90 91 3f 08 lds r25, 0x083F
70b0: a0 91 40 08 lds r26, 0x0840
70b4: b0 91 41 08 lds r27, 0x0841
70b8: 2d 8d ldd r18, Y+29 ; 0x1d
70ba: 3e 8d ldd r19, Y+30 ; 0x1e
70bc: 4f 8d ldd r20, Y+31 ; 0x1f
70be: 58 a1 ldd r21, Y+32 ; 0x20
70c0: 82 0f add r24, r18
70c2: 93 1f adc r25, r19
70c4: a4 1f adc r26, r20
70c6: b5 1f adc r27, r21
70c8: 80 93 3e 08 sts 0x083E, r24
70cc: 90 93 3f 08 sts 0x083F, r25
70d0: a0 93 40 08 sts 0x0840, r26
70d4: b0 93 41 08 sts 0x0841, r27
70d8: 30 91 a6 04 lds r19, 0x04A6
70dc: 39 87 std Y+9, r19 ; 0x09
70de: 33 23 and r19, r19
70e0: 11 f4 brne .+4 ; 0x70e6 <MotorRegler+0x2d2>
70e2: 0c 94 a7 42 jmp 0x854e ; 0x854e <MotorRegler+0x173a>
70e6: 10 92 55 04 sts 0x0455, r1
70ea: 10 92 56 04 sts 0x0456, r1
70ee: 10 92 57 04 sts 0x0457, r1
70f2: 10 92 58 04 sts 0x0458, r1
70f6: 10 92 59 04 sts 0x0459, r1
70fa: 10 92 5a 04 sts 0x045A, r1
70fe: 10 92 5b 04 sts 0x045B, r1
7102: 10 92 5c 04 sts 0x045C, r1
7106: 10 92 5b 08 sts 0x085B, r1
710a: 10 92 5c 08 sts 0x085C, r1
710e: 10 92 5d 08 sts 0x085D, r1
7112: 10 92 5e 08 sts 0x085E, r1
7116: 10 92 62 08 sts 0x0862, r1
711a: 10 92 63 08 sts 0x0863, r1
711e: 10 92 64 08 sts 0x0864, r1
7122: 10 92 65 08 sts 0x0865, r1
7126: 10 92 4e 08 sts 0x084E, r1
712a: 10 92 4f 08 sts 0x084F, r1
712e: 10 92 50 08 sts 0x0850, r1
7132: 10 92 51 08 sts 0x0851, r1
7136: 10 92 3e 08 sts 0x083E, r1
713a: 10 92 3f 08 sts 0x083F, r1
713e: 10 92 40 08 sts 0x0840, r1
7142: 10 92 41 08 sts 0x0841, r1
7146: 80 91 65 04 lds r24, 0x0465
714a: 90 91 66 04 lds r25, 0x0466
714e: a0 91 67 04 lds r26, 0x0467
7152: b0 91 68 04 lds r27, 0x0468
7156: 80 93 69 04 sts 0x0469, r24
715a: 90 93 6a 04 sts 0x046A, r25
715e: a0 93 6b 04 sts 0x046B, r26
7162: b0 93 6c 04 sts 0x046C, r27
7166: 80 91 6d 04 lds r24, 0x046D
716a: 90 91 6e 04 lds r25, 0x046E
716e: a0 91 6f 04 lds r26, 0x046F
7172: b0 91 70 04 lds r27, 0x0470
7176: 80 93 71 04 sts 0x0471, r24
717a: 90 93 72 04 sts 0x0472, r25
717e: a0 93 73 04 sts 0x0473, r26
7182: b0 93 74 04 sts 0x0474, r27
7186: 10 92 0f 04 sts 0x040F, r1
718a: 10 92 0e 04 sts 0x040E, r1
718e: 10 92 a5 04 sts 0x04A5, r1
7192: 10 92 a4 04 sts 0x04A4, r1
7196: 10 92 a3 04 sts 0x04A3, r1
719a: 10 92 a2 04 sts 0x04A2, r1
719e: 50 91 a7 04 lds r21, 0x04A7
71a2: 5c a7 std Y+44, r21 ; 0x2c
71a4: 80 91 0e 04 lds r24, 0x040E
71a8: 90 91 0f 04 lds r25, 0x040F
71ac: 8f 3f cpi r24, 0xFF ; 255
71ae: 91 05 cpc r25, r1
71b0: 09 f0 breq .+2 ; 0x71b4 <MotorRegler+0x3a0>
71b2: 10 f4 brcc .+4 ; 0x71b8 <MotorRegler+0x3a4>
71b4: 0c 94 92 42 jmp 0x8524 ; 0x8524 <MotorRegler+0x1710>
71b8: b9 85 ldd r27, Y+9 ; 0x09
71ba: bb 23 and r27, r27
71bc: 29 f4 brne .+10 ; 0x71c8 <MotorRegler+0x3b4>
71be: ec a5 ldd r30, Y+44 ; 0x2c
71c0: ee 23 and r30, r30
71c2: 11 f4 brne .+4 ; 0x71c8 <MotorRegler+0x3b4>
71c4: 0c 94 0e 46 jmp 0x8c1c ; 0x8c1c <MotorRegler+0x1e08>
71c8: 10 92 a3 04 sts 0x04A3, r1
71cc: 10 92 a2 04 sts 0x04A2, r1
71d0: 10 92 a5 04 sts 0x04A5, r1
71d4: 10 92 a4 04 sts 0x04A4, r1
71d8: 1e a2 std Y+38, r1 ; 0x26
71da: 10 92 89 04 sts 0x0489, r1
71de: 20 91 5b 08 lds r18, 0x085B
71e2: 30 91 5c 08 lds r19, 0x085C
71e6: 40 91 5d 08 lds r20, 0x085D
71ea: 50 91 5e 08 lds r21, 0x085E
71ee: 28 a7 std Y+40, r18 ; 0x28
71f0: 39 a7 std Y+41, r19 ; 0x29
71f2: 4a a7 std Y+42, r20 ; 0x2a
71f4: 5b a7 std Y+43, r21 ; 0x2b
71f6: 20 90 62 08 lds r2, 0x0862
71fa: 30 90 63 08 lds r3, 0x0863
71fe: 40 90 64 08 lds r4, 0x0864
7202: 50 90 65 08 lds r5, 0x0865
7206: 30 91 68 08 lds r19, 0x0868
720a: 3d a3 std Y+37, r19 ; 0x25
720c: 33 23 and r19, r19
720e: 41 f4 brne .+16 ; 0x7220 <MotorRegler+0x40c>
7210: 10 92 a3 04 sts 0x04A3, r1
7214: 10 92 a2 04 sts 0x04A2, r1
7218: 10 92 a5 04 sts 0x04A5, r1
721c: 10 92 a4 04 sts 0x04A4, r1
7220: 48 a5 ldd r20, Y+40 ; 0x28
7222: 59 a5 ldd r21, Y+41 ; 0x29
7224: 6a a5 ldd r22, Y+42 ; 0x2a
7226: 7b a5 ldd r23, Y+43 ; 0x2b
7228: 40 93 c5 04 sts 0x04C5, r20
722c: 50 93 c6 04 sts 0x04C6, r21
7230: 60 93 c7 04 sts 0x04C7, r22
7234: 70 93 c8 04 sts 0x04C8, r23
7238: 20 92 c1 04 sts 0x04C1, r2
723c: 30 92 c2 04 sts 0x04C2, r3
7240: 40 92 c3 04 sts 0x04C3, r4
7244: 50 92 c4 04 sts 0x04C4, r5
7248: 10 92 55 04 sts 0x0455, r1
724c: 10 92 56 04 sts 0x0456, r1
7250: 10 92 57 04 sts 0x0457, r1
7254: 10 92 58 04 sts 0x0458, r1
7258: 10 92 59 04 sts 0x0459, r1
725c: 10 92 5a 04 sts 0x045A, r1
7260: 10 92 5b 04 sts 0x045B, r1
7264: 10 92 5c 04 sts 0x045C, r1
7268: 10 92 5d 04 sts 0x045D, r1
726c: 10 92 5e 04 sts 0x045E, r1
7270: 10 92 5f 04 sts 0x045F, r1
7274: 10 92 60 04 sts 0x0460, r1
7278: 10 92 5b 08 sts 0x085B, r1
727c: 10 92 5c 08 sts 0x085C, r1
7280: 10 92 5d 08 sts 0x085D, r1
7284: 10 92 5e 08 sts 0x085E, r1
7288: 10 92 62 08 sts 0x0862, r1
728c: 10 92 63 08 sts 0x0863, r1
7290: 10 92 64 08 sts 0x0864, r1
7294: 10 92 65 08 sts 0x0865, r1
7298: 10 92 4e 08 sts 0x084E, r1
729c: 10 92 4f 08 sts 0x084F, r1
72a0: 10 92 50 08 sts 0x0850, r1
72a4: 10 92 51 08 sts 0x0851, r1
72a8: 10 92 3e 08 sts 0x083E, r1
72ac: 10 92 3f 08 sts 0x083F, r1
72b0: 10 92 40 08 sts 0x0840, r1
72b4: 10 92 41 08 sts 0x0841, r1
72b8: 10 92 0f 04 sts 0x040F, r1
72bc: 10 92 0e 04 sts 0x040E, r1
72c0: e0 90 99 04 lds r14, 0x0499
72c4: f0 90 9a 04 lds r15, 0x049A
72c8: 67 01 movw r12, r14
72ca: f7 fe sbrs r15, 7
72cc: 02 c0 rjmp .+4 ; 0x72d2 <MotorRegler+0x4be>
72ce: 0c 94 a1 42 jmp 0x8542 ; 0x8542 <MotorRegler+0x172e>
72d2: 70 e1 ldi r23, 0x10 ; 16
72d4: c7 16 cp r12, r23
72d6: d1 04 cpc r13, r1
72d8: 64 f0 brlt .+24 ; 0x72f2 <MotorRegler+0x4de>
72da: 88 ee ldi r24, 0xE8 ; 232
72dc: 93 e0 ldi r25, 0x03 ; 3
72de: 90 93 96 03 sts 0x0396, r25
72e2: 80 93 95 03 sts 0x0395, r24
72e6: 8a 85 ldd r24, Y+10 ; 0x0a
72e8: 84 fd sbrc r24, 4
72ea: 03 c0 rjmp .+6 ; 0x72f2 <MotorRegler+0x4de>
72ec: 81 e0 ldi r24, 0x01 ; 1
72ee: 80 93 db 04 sts 0x04DB, r24
72f2: 00 91 e8 07 lds r16, 0x07E8
72f6: b7 01 movw r22, r14
72f8: 88 27 eor r24, r24
72fa: 77 fd sbrc r23, 7
72fc: 80 95 com r24
72fe: 98 2f mov r25, r24
7300: 20 2f mov r18, r16
7302: 30 e0 ldi r19, 0x00 ; 0
7304: 40 e0 ldi r20, 0x00 ; 0
7306: 50 e0 ldi r21, 0x00 ; 0
7308: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
730c: 96 01 movw r18, r12
730e: 44 27 eor r20, r20
7310: 37 fd sbrc r19, 7
7312: 40 95 com r20
7314: 54 2f mov r21, r20
7316: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
731a: 20 e0 ldi r18, 0x00 ; 0
731c: 32 e0 ldi r19, 0x02 ; 2
731e: 40 e0 ldi r20, 0x00 ; 0
7320: 50 e0 ldi r21, 0x00 ; 0
7322: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
7326: 10 e0 ldi r17, 0x00 ; 0
7328: 0e 9d mul r16, r14
732a: b0 01 movw r22, r0
732c: 0f 9d mul r16, r15
732e: 70 0d add r23, r0
7330: 1e 9d mul r17, r14
7332: 70 0d add r23, r0
7334: 11 24 eor r1, r1
7336: 77 ff sbrs r23, 7
7338: 02 c0 rjmp .+4 ; 0x733e <MotorRegler+0x52a>
733a: 0c 94 77 45 jmp 0x8aee ; 0x8aee <MotorRegler+0x1cda>
733e: 75 95 asr r23
7340: 67 95 ror r22
7342: 75 95 asr r23
7344: 67 95 ror r22
7346: 26 0f add r18, r22
7348: 37 1f adc r19, r23
734a: a9 01 movw r20, r18
734c: 66 27 eor r22, r22
734e: 57 fd sbrc r21, 7
7350: 60 95 com r22
7352: 76 2f mov r23, r22
7354: 48 8f std Y+24, r20 ; 0x18
7356: 59 8f std Y+25, r21 ; 0x19
7358: 6a 8f std Y+26, r22 ; 0x1a
735a: 7b 8f std Y+27, r23 ; 0x1b
735c: 40 93 fc 04 sts 0x04FC, r20
7360: 50 93 fd 04 sts 0x04FD, r21
7364: 60 93 fe 04 sts 0x04FE, r22
7368: 70 93 ff 04 sts 0x04FF, r23
736c: 80 91 75 04 lds r24, 0x0475
7370: 90 91 76 04 lds r25, 0x0476
7374: a0 91 77 04 lds r26, 0x0477
7378: b0 91 78 04 lds r27, 0x0478
737c: 84 1b sub r24, r20
737e: 95 0b sbc r25, r21
7380: a6 0b sbc r26, r22
7382: b7 0b sbc r27, r23
7384: 80 93 75 04 sts 0x0475, r24
7388: 90 93 76 04 sts 0x0476, r25
738c: a0 93 77 04 sts 0x0477, r26
7390: b0 93 78 04 sts 0x0478, r27
7394: 81 35 cpi r24, 0x51 ; 81
7396: 53 ec ldi r21, 0xC3 ; 195
7398: 95 07 cpc r25, r21
739a: 50 e0 ldi r21, 0x00 ; 0
739c: a5 07 cpc r26, r21
739e: 50 e0 ldi r21, 0x00 ; 0
73a0: b5 07 cpc r27, r21
73a2: 14 f4 brge .+4 ; 0x73a8 <MotorRegler+0x594>
73a4: 0c 94 7d 42 jmp 0x84fa ; 0x84fa <MotorRegler+0x16e6>
73a8: 80 e5 ldi r24, 0x50 ; 80
73aa: 93 ec ldi r25, 0xC3 ; 195
73ac: a0 e0 ldi r26, 0x00 ; 0
73ae: b0 e0 ldi r27, 0x00 ; 0
73b0: 80 93 75 04 sts 0x0475, r24
73b4: 90 93 76 04 sts 0x0476, r25
73b8: a0 93 77 04 sts 0x0477, r26
73bc: b0 93 78 04 sts 0x0478, r27
73c0: 20 90 81 04 lds r2, 0x0481
73c4: 30 90 82 04 lds r3, 0x0482
73c8: 21 14 cp r2, r1
73ca: 31 04 cpc r3, r1
73cc: 09 f4 brne .+2 ; 0x73d0 <MotorRegler+0x5bc>
73ce: a8 c4 rjmp .+2384 ; 0x7d20 <MotorRegler+0xf0c>
73d0: 7a 85 ldd r23, Y+10 ; 0x0a
73d2: 73 ff sbrs r23, 3
73d4: a5 c4 rjmp .+2378 ; 0x7d20 <MotorRegler+0xf0c>
73d6: 69 81 ldd r22, Y+1 ; 0x01
73d8: 7a 81 ldd r23, Y+2 ; 0x02
73da: 8b 81 ldd r24, Y+3 ; 0x03
73dc: 9c 81 ldd r25, Y+4 ; 0x04
73de: 20 e0 ldi r18, 0x00 ; 0
73e0: 32 e0 ldi r19, 0x02 ; 2
73e2: 40 e0 ldi r20, 0x00 ; 0
73e4: 50 e0 ldi r21, 0x00 ; 0
73e6: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
73ea: 89 01 movw r16, r18
73ec: 37 ff sbrs r19, 7
73ee: 02 c0 rjmp .+4 ; 0x73f4 <MotorRegler+0x5e0>
73f0: 0c 94 2e 49 jmp 0x925c ; 0x925c <MotorRegler+0x2448>
73f4: 6d 81 ldd r22, Y+5 ; 0x05
73f6: 7e 81 ldd r23, Y+6 ; 0x06
73f8: 8f 81 ldd r24, Y+7 ; 0x07
73fa: 98 85 ldd r25, Y+8 ; 0x08
73fc: 20 e0 ldi r18, 0x00 ; 0
73fe: 32 e0 ldi r19, 0x02 ; 2
7400: 40 e0 ldi r20, 0x00 ; 0
7402: 50 e0 ldi r21, 0x00 ; 0
7404: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
7408: 69 01 movw r12, r18
740a: 37 ff sbrs r19, 7
740c: 02 c0 rjmp .+4 ; 0x7412 <MotorRegler+0x5fe>
740e: 0c 94 28 49 jmp 0x9250 ; 0x9250 <MotorRegler+0x243c>
7412: c0 16 cp r12, r16
7414: d1 06 cpc r13, r17
7416: 14 f4 brge .+4 ; 0x741c <MotorRegler+0x608>
7418: 0c 94 c1 48 jmp 0x9182 ; 0x9182 <MotorRegler+0x236e>
741c: 40 90 7e 08 lds r4, 0x087E
7420: 50 90 7f 08 lds r5, 0x087F
7424: 60 90 80 08 lds r6, 0x0880
7428: 70 90 81 08 lds r7, 0x0881
742c: 80 91 b3 03 lds r24, 0x03B3
7430: 90 91 b4 03 lds r25, 0x03B4
7434: a0 91 b5 03 lds r26, 0x03B5
7438: b0 91 b6 03 lds r27, 0x03B6
743c: 8c 8b std Y+20, r24 ; 0x14
743e: 9d 8b std Y+21, r25 ; 0x15
7440: ae 8b std Y+22, r26 ; 0x16
7442: bf 8b std Y+23, r27 ; 0x17
7444: 80 90 77 08 lds r8, 0x0877
7448: 90 90 78 08 lds r9, 0x0878
744c: c4 01 movw r24, r8
744e: 97 fe sbrs r9, 7
7450: 02 c0 rjmp .+4 ; 0x7456 <MotorRegler+0x642>
7452: 0c 94 33 49 jmp 0x9266 ; 0x9266 <MotorRegler+0x2452>
7456: 81 38 cpi r24, 0x81 ; 129
7458: 91 05 cpc r25, r1
745a: 14 f0 brlt .+4 ; 0x7460 <MotorRegler+0x64c>
745c: 0c 94 c4 48 jmp 0x9188 ; 0x9188 <MotorRegler+0x2374>
7460: ac e1 ldi r26, 0x1C ; 28
7462: b2 e0 ldi r27, 0x02 ; 2
7464: 2a 0e add r2, r26
7466: 3b 1e adc r3, r27
7468: 71 01 movw r14, r2
746a: 00 27 eor r16, r16
746c: f7 fc sbrc r15, 7
746e: 00 95 com r16
7470: 10 2f mov r17, r16
7472: e4 ee ldi r30, 0xE4 ; 228
7474: fd ef ldi r31, 0xFD ; 253
7476: 2e 0e add r2, r30
7478: 3f 1e adc r3, r31
747a: c3 01 movw r24, r6
747c: b2 01 movw r22, r4
747e: 2c 89 ldd r18, Y+20 ; 0x14
7480: 3d 89 ldd r19, Y+21 ; 0x15
7482: 4e 89 ldd r20, Y+22 ; 0x16
7484: 5f 89 ldd r21, Y+23 ; 0x17
7486: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
748a: e2 1a sub r14, r18
748c: f3 0a sbc r15, r19
748e: 04 0b sbc r16, r20
7490: 15 0b sbc r17, r21
7492: c8 01 movw r24, r16
7494: b7 01 movw r22, r14
7496: 28 e6 ldi r18, 0x68 ; 104
7498: 31 e0 ldi r19, 0x01 ; 1
749a: 40 e0 ldi r20, 0x00 ; 0
749c: 50 e0 ldi r21, 0x00 ; 0
749e: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
74a2: 64 5b subi r22, 0xB4 ; 180
74a4: 70 40 sbci r23, 0x00 ; 0
74a6: 8b 01 movw r16, r22
74a8: 00 0f add r16, r16
74aa: 11 1f adc r17, r17
74ac: 00 0f add r16, r16
74ae: 11 1f adc r17, r17
74b0: 00 0f add r16, r16
74b2: 11 1f adc r17, r17
74b4: 20 91 db 04 lds r18, 0x04DB
74b8: e0 90 95 03 lds r14, 0x0395
74bc: f0 90 96 03 lds r15, 0x0396
74c0: e1 14 cp r14, r1
74c2: f1 04 cpc r15, r1
74c4: 91 f4 brne .+36 ; 0x74ea <MotorRegler+0x6d6>
74c6: f9 e1 ldi r31, 0x19 ; 25
74c8: cf 16 cp r12, r31
74ca: d1 04 cpc r13, r1
74cc: 74 f4 brge .+28 ; 0x74ea <MotorRegler+0x6d6>
74ce: 80 91 8a 04 lds r24, 0x048A
74d2: 90 91 8b 04 lds r25, 0x048B
74d6: 86 0f add r24, r22
74d8: 97 1f adc r25, r23
74da: 90 93 8b 04 sts 0x048B, r25
74de: 80 93 8a 04 sts 0x048A, r24
74e2: 22 23 and r18, r18
74e4: 11 f0 breq .+4 ; 0x74ea <MotorRegler+0x6d6>
74e6: 0c 94 62 4a jmp 0x94c4 ; 0x94c4 <MotorRegler+0x26b0>
74ea: b6 01 movw r22, r12
74ec: d7 fe sbrs r13, 7
74ee: 02 c0 rjmp .+4 ; 0x74f4 <MotorRegler+0x6e0>
74f0: 0c 94 aa 49 jmp 0x9354 ; 0x9354 <MotorRegler+0x2540>
74f4: 75 95 asr r23
74f6: 67 95 ror r22
74f8: 75 95 asr r23
74fa: 67 95 ror r22
74fc: 75 95 asr r23
74fe: 67 95 ror r22
7500: 6f 5f subi r22, 0xFF ; 255
7502: 7f 4f sbci r23, 0xFF ; 255
7504: c8 01 movw r24, r16
7506: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
750a: 9b 01 movw r18, r22
750c: a9 01 movw r20, r18
750e: 66 27 eor r22, r22
7510: 57 fd sbrc r21, 7
7512: 60 95 com r22
7514: 76 2f mov r23, r22
7516: 44 0d add r20, r4
7518: 55 1d adc r21, r5
751a: 66 1d adc r22, r6
751c: 77 1d adc r23, r7
751e: 40 93 7e 08 sts 0x087E, r20
7522: 50 93 7f 08 sts 0x087F, r21
7526: 60 93 80 08 sts 0x0880, r22
752a: 70 93 81 08 sts 0x0881, r23
752e: 80 91 a5 03 lds r24, 0x03A5
7532: a8 2e mov r10, r24
7534: bb 24 eor r11, r11
7536: ca 9c mul r12, r10
7538: 90 01 movw r18, r0
753a: cb 9c mul r12, r11
753c: 30 0d add r19, r0
753e: da 9c mul r13, r10
7540: 30 0d add r19, r0
7542: 11 24 eor r1, r1
7544: 37 ff sbrs r19, 7
7546: 02 c0 rjmp .+4 ; 0x754c <MotorRegler+0x738>
7548: 0c 94 a6 49 jmp 0x934c ; 0x934c <MotorRegler+0x2538>
754c: 35 95 asr r19
754e: 27 95 ror r18
7550: 35 95 asr r19
7552: 27 95 ror r18
7554: 35 95 asr r19
7556: 27 95 ror r18
7558: 35 95 asr r19
755a: 27 95 ror r18
755c: 35 95 asr r19
755e: 27 95 ror r18
7560: 65 01 movw r12, r10
7562: c2 1a sub r12, r18
7564: d3 0a sbc r13, r19
7566: d7 fe sbrs r13, 7
7568: 02 c0 rjmp .+4 ; 0x756e <MotorRegler+0x75a>
756a: 0c 94 9e 49 jmp 0x933c ; 0x933c <MotorRegler+0x2528>
756e: e1 14 cp r14, r1
7570: f1 04 cpc r15, r1
7572: 11 f0 breq .+4 ; 0x7578 <MotorRegler+0x764>
7574: 0c 94 6d 49 jmp 0x92da ; 0x92da <MotorRegler+0x24c6>
7578: 60 90 bc 04 lds r6, 0x04BC
757c: 70 90 bd 04 lds r7, 0x04BD
7580: 80 91 ba 04 lds r24, 0x04BA
7584: 90 91 bb 04 lds r25, 0x04BB
7588: 68 0e add r6, r24
758a: 79 1e adc r7, r25
758c: 77 fe sbrs r7, 7
758e: 02 c0 rjmp .+4 ; 0x7594 <MotorRegler+0x780>
7590: 0c 94 c1 4c jmp 0x9982 ; 0x9982 <MotorRegler+0x2b6e>
7594: 75 94 asr r7
7596: 67 94 ror r6
7598: 75 94 asr r7
759a: 67 94 ror r6
759c: 75 94 asr r7
759e: 67 94 ror r6
75a0: a0 e4 ldi r26, 0x40 ; 64
75a2: b0 e0 ldi r27, 0x00 ; 0
75a4: 6a 0e add r6, r26
75a6: 7b 1e adc r7, r27
75a8: 80 91 83 04 lds r24, 0x0483
75ac: 90 91 84 04 lds r25, 0x0484
75b0: aa 27 eor r26, r26
75b2: 97 fd sbrc r25, 7
75b4: a0 95 com r26
75b6: ba 2f mov r27, r26
75b8: ec e1 ldi r30, 0x1C ; 28
75ba: ee 2e mov r14, r30
75bc: e2 e0 ldi r30, 0x02 ; 2
75be: fe 2e mov r15, r30
75c0: 01 2d mov r16, r1
75c2: 11 2d mov r17, r1
75c4: e8 1a sub r14, r24
75c6: f9 0a sbc r15, r25
75c8: 0a 0b sbc r16, r26
75ca: 1b 0b sbc r17, r27
75cc: cb 01 movw r24, r22
75ce: ba 01 movw r22, r20
75d0: 2c 89 ldd r18, Y+20 ; 0x14
75d2: 3d 89 ldd r19, Y+21 ; 0x15
75d4: 4e 89 ldd r20, Y+22 ; 0x16
75d6: 5f 89 ldd r21, Y+23 ; 0x17
75d8: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
75dc: e2 0e add r14, r18
75de: f3 1e adc r15, r19
75e0: 04 1f adc r16, r20
75e2: 15 1f adc r17, r21
75e4: c8 01 movw r24, r16
75e6: b7 01 movw r22, r14
75e8: 28 e6 ldi r18, 0x68 ; 104
75ea: 31 e0 ldi r19, 0x01 ; 1
75ec: 40 e0 ldi r20, 0x00 ; 0
75ee: 50 e0 ldi r21, 0x00 ; 0
75f0: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
75f4: 64 5b subi r22, 0xB4 ; 180
75f6: 70 40 sbci r23, 0x00 ; 0
75f8: 6c 9d mul r22, r12
75fa: c0 01 movw r24, r0
75fc: 6d 9d mul r22, r13
75fe: 90 0d add r25, r0
7600: 7c 9d mul r23, r12
7602: 90 0d add r25, r0
7604: 11 24 eor r1, r1
7606: b3 01 movw r22, r6
7608: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
760c: 95 01 movw r18, r10
760e: 22 0f add r18, r18
7610: 33 1f adc r19, r19
7612: 2a 0d add r18, r10
7614: 3b 1d adc r19, r11
7616: 26 17 cp r18, r22
7618: 37 07 cpc r19, r23
761a: 14 f4 brge .+4 ; 0x7620 <MotorRegler+0x80c>
761c: 0c 94 ae 49 jmp 0x935c ; 0x935c <MotorRegler+0x2548>
7620: 30 95 com r19
7622: 21 95 neg r18
7624: 3f 4f sbci r19, 0xFF ; 255
7626: 62 17 cp r22, r18
7628: 73 07 cpc r23, r19
762a: 0c f4 brge .+2 ; 0x762e <MotorRegler+0x81a>
762c: b9 01 movw r22, r18
762e: 9b 01 movw r18, r22
7630: 44 27 eor r20, r20
7632: 37 fd sbrc r19, 7
7634: 40 95 com r20
7636: 54 2f mov r21, r20
7638: 80 91 75 04 lds r24, 0x0475
763c: 90 91 76 04 lds r25, 0x0476
7640: a0 91 77 04 lds r26, 0x0477
7644: b0 91 78 04 lds r27, 0x0478
7648: 82 0f add r24, r18
764a: 93 1f adc r25, r19
764c: a4 1f adc r26, r20
764e: b5 1f adc r27, r21
7650: 80 93 75 04 sts 0x0475, r24
7654: 90 93 76 04 sts 0x0476, r25
7658: a0 93 77 04 sts 0x0477, r26
765c: b0 93 78 04 sts 0x0478, r27
7660: 63 c3 rjmp .+1734 ; 0x7d28 <MotorRegler+0xf14>
7662: 80 91 94 04 lds r24, 0x0494
7666: 8d 38 cpi r24, 0x8D ; 141
7668: 08 f4 brcc .+2 ; 0x766c <MotorRegler+0x858>
766a: 68 cc rjmp .-1840 ; 0x6f3c <MotorRegler+0x128>
766c: 10 92 87 04 sts 0x0487, r1
7670: 80 91 f2 07 lds r24, 0x07F2
7674: 22 e3 ldi r18, 0x32 ; 50
7676: 82 9f mul r24, r18
7678: c0 01 movw r24, r0
767a: 11 24 eor r1, r1
767c: 90 93 eb 04 sts 0x04EB, r25
7680: 80 93 ea 04 sts 0x04EA, r24
7684: e8 89 ldd r30, Y+16 ; 0x10
7686: f9 89 ldd r31, Y+17 ; 0x11
7688: b9 97 sbiw r30, 0x29 ; 41
768a: 8c f0 brlt .+34 ; 0x76ae <MotorRegler+0x89a>
768c: 80 91 9d 04 lds r24, 0x049D
7690: 88 23 and r24, r24
7692: 69 f0 breq .+26 ; 0x76ae <MotorRegler+0x89a>
7694: 80 91 be 04 lds r24, 0x04BE
7698: 90 91 bf 04 lds r25, 0x04BF
769c: ff ef ldi r31, 0xFF ; 255
769e: 8f 3f cpi r24, 0xFF ; 255
76a0: 9f 07 cpc r25, r31
76a2: 79 f0 breq .+30 ; 0x76c2 <MotorRegler+0x8ae>
76a4: 01 96 adiw r24, 0x01 ; 1
76a6: 90 93 bf 04 sts 0x04BF, r25
76aa: 80 93 be 04 sts 0x04BE, r24
76ae: 80 91 be 04 lds r24, 0x04BE
76b2: 90 91 bf 04 lds r25, 0x04BF
76b6: 8f 3f cpi r24, 0xFF ; 255
76b8: 91 05 cpc r25, r1
76ba: 09 f0 breq .+2 ; 0x76be <MotorRegler+0x8aa>
76bc: 10 f4 brcc .+4 ; 0x76c2 <MotorRegler+0x8ae>
76be: 0c 94 e3 48 jmp 0x91c6 ; 0x91c6 <MotorRegler+0x23b2>
76c2: 80 91 c0 04 lds r24, 0x04C0
76c6: 82 60 ori r24, 0x02 ; 2
76c8: 80 93 c0 04 sts 0x04C0, r24
76cc: 80 91 d9 07 lds r24, 0x07D9
76d0: a8 2f mov r26, r24
76d2: b0 e0 ldi r27, 0x00 ; 0
76d4: aa 0f add r26, r26
76d6: bb 1f adc r27, r27
76d8: fd 01 movw r30, r26
76da: eb 55 subi r30, 0x5B ; 91
76dc: f8 4f sbci r31, 0xF8 ; 248
76de: 80 81 ld r24, Z
76e0: 91 81 ldd r25, Z+1 ; 0x01
76e2: 81 35 cpi r24, 0x51 ; 81
76e4: 91 05 cpc r25, r1
76e6: 0c f4 brge .+2 ; 0x76ea <MotorRegler+0x8d6>
76e8: c4 c0 rjmp .+392 ; 0x7872 <MotorRegler+0xa5e>
76ea: 80 91 9d 04 lds r24, 0x049D
76ee: 88 23 and r24, r24
76f0: 09 f0 breq .+2 ; 0x76f4 <MotorRegler+0x8e0>
76f2: bf c0 rjmp .+382 ; 0x7872 <MotorRegler+0xa5e>
76f4: 80 91 da 07 lds r24, 0x07DA
76f8: e8 2f mov r30, r24
76fa: f0 e0 ldi r31, 0x00 ; 0
76fc: ee 0f add r30, r30
76fe: ff 1f adc r31, r31
7700: eb 55 subi r30, 0x5B ; 91
7702: f8 4f sbci r31, 0xF8 ; 248
7704: 80 81 ld r24, Z
7706: 91 81 ldd r25, Z+1 ; 0x01
7708: 8c 34 cpi r24, 0x4C ; 76
770a: 91 05 cpc r25, r1
770c: 14 f4 brge .+4 ; 0x7712 <MotorRegler+0x8fe>
770e: 0c 94 c8 49 jmp 0x9390 ; 0x9390 <MotorRegler+0x257c>
7712: 80 91 e9 04 lds r24, 0x04E9
7716: 8f 5f subi r24, 0xFF ; 255
7718: 80 93 e9 04 sts 0x04E9, r24
771c: 89 3c cpi r24, 0xC9 ; 201
771e: 08 f4 brcc .+2 ; 0x7722 <MotorRegler+0x90e>
7720: a8 c0 rjmp .+336 ; 0x7872 <MotorRegler+0xa5e>
7722: 4c 30 cpi r20, 0x0C ; 12
7724: 10 f0 brcs .+4 ; 0x772a <MotorRegler+0x916>
7726: 0c 94 f3 4d jmp 0x9be6 ; 0x9be6 <MotorRegler+0x2dd2>
772a: 29 98 cbi 0x05, 1 ; 5
772c: 10 92 9d 04 sts 0x049D, r1
7730: 10 92 e9 04 sts 0x04E9, r1
7734: 10 92 bf 04 sts 0x04BF, r1
7738: 10 92 be 04 sts 0x04BE, r1
773c: 80 91 d7 07 lds r24, 0x07D7
7740: 28 2f mov r18, r24
7742: 30 e0 ldi r19, 0x00 ; 0
7744: 22 0f add r18, r18
7746: 33 1f adc r19, r19
7748: f9 01 movw r30, r18
774a: eb 55 subi r30, 0x5B ; 91
774c: f8 4f sbci r31, 0xF8 ; 248
774e: 80 81 ld r24, Z
7750: 91 81 ldd r25, Z+1 ; 0x01
7752: 87 34 cpi r24, 0x47 ; 71
7754: 91 05 cpc r25, r1
7756: 14 f4 brge .+4 ; 0x775c <MotorRegler+0x948>
7758: 0c 94 de 4d jmp 0x9bbc ; 0x9bbc <MotorRegler+0x2da8>
775c: 80 91 d8 07 lds r24, 0x07D8
7760: a8 2f mov r26, r24
7762: b0 e0 ldi r27, 0x00 ; 0
7764: aa 0f add r26, r26
7766: bb 1f adc r27, r27
7768: ad 01 movw r20, r26
776a: 4b 55 subi r20, 0x5B ; 91
776c: 58 4f sbci r21, 0xF8 ; 248
776e: fa 01 movw r30, r20
7770: 80 81 ld r24, Z
7772: 91 81 ldd r25, Z+1 ; 0x01
7774: 87 34 cpi r24, 0x47 ; 71
7776: 91 05 cpc r25, r1
7778: 2c f0 brlt .+10 ; 0x7784 <MotorRegler+0x970>
777a: f9 01 movw r30, r18
777c: eb 55 subi r30, 0x5B ; 91
777e: f8 4f sbci r31, 0xF8 ; 248
7780: 80 81 ld r24, Z
7782: 91 81 ldd r25, Z+1 ; 0x01
7784: fa 01 movw r30, r20
7786: 80 81 ld r24, Z
7788: 91 81 ldd r25, Z+1 ; 0x01
778a: 87 34 cpi r24, 0x47 ; 71
778c: 91 05 cpc r25, r1
778e: 14 f4 brge .+4 ; 0x7794 <MotorRegler+0x980>
7790: 0c 94 c8 4d jmp 0x9b90 ; 0x9b90 <MotorRegler+0x2d7c>
7794: f9 01 movw r30, r18
7796: eb 55 subi r30, 0x5B ; 91
7798: f8 4f sbci r31, 0xF8 ; 248
779a: 80 81 ld r24, Z
779c: 91 81 ldd r25, Z+1 ; 0x01
779e: 87 34 cpi r24, 0x47 ; 71
77a0: 91 05 cpc r25, r1
77a2: 14 f4 brge .+4 ; 0x77a8 <MotorRegler+0x994>
77a4: 0c 94 c8 4d jmp 0x9b90 ; 0x9b90 <MotorRegler+0x2d7c>
77a8: 42 e0 ldi r20, 0x02 ; 2
77aa: fd 01 movw r30, r26
77ac: eb 55 subi r30, 0x5B ; 91
77ae: f8 4f sbci r31, 0xF8 ; 248
77b0: 80 81 ld r24, Z
77b2: 91 81 ldd r25, Z+1 ; 0x01
77b4: 86 34 cpi r24, 0x46 ; 70
77b6: 91 05 cpc r25, r1
77b8: 4c f4 brge .+18 ; 0x77cc <MotorRegler+0x9b8>
77ba: f9 01 movw r30, r18
77bc: eb 55 subi r30, 0x5B ; 91
77be: f8 4f sbci r31, 0xF8 ; 248
77c0: 80 81 ld r24, Z
77c2: 91 81 ldd r25, Z+1 ; 0x01
77c4: 87 34 cpi r24, 0x47 ; 71
77c6: 91 05 cpc r25, r1
77c8: 0c f0 brlt .+2 ; 0x77cc <MotorRegler+0x9b8>
77ca: 43 e0 ldi r20, 0x03 ; 3
77cc: fd 01 movw r30, r26
77ce: eb 55 subi r30, 0x5B ; 91
77d0: f8 4f sbci r31, 0xF8 ; 248
77d2: 80 81 ld r24, Z
77d4: 91 81 ldd r25, Z+1 ; 0x01
77d6: 8a 5b subi r24, 0xBA ; 186
77d8: 9f 4f sbci r25, 0xFF ; 255
77da: 4c f4 brge .+18 ; 0x77ee <MotorRegler+0x9da>
77dc: f9 01 movw r30, r18
77de: eb 55 subi r30, 0x5B ; 91
77e0: f8 4f sbci r31, 0xF8 ; 248
77e2: 80 81 ld r24, Z
77e4: 91 81 ldd r25, Z+1 ; 0x01
77e6: 87 34 cpi r24, 0x47 ; 71
77e8: 91 05 cpc r25, r1
77ea: 0c f0 brlt .+2 ; 0x77ee <MotorRegler+0x9da>
77ec: 44 e0 ldi r20, 0x04 ; 4
77ee: ab 55 subi r26, 0x5B ; 91
77f0: b8 4f sbci r27, 0xF8 ; 248
77f2: 8d 91 ld r24, X+
77f4: 9c 91 ld r25, X
77f6: 8a 5b subi r24, 0xBA ; 186
77f8: 9f 4f sbci r25, 0xFF ; 255
77fa: 4c f4 brge .+18 ; 0x780e <MotorRegler+0x9fa>
77fc: 2b 55 subi r18, 0x5B ; 91
77fe: 38 4f sbci r19, 0xF8 ; 248
7800: d9 01 movw r26, r18
7802: 8d 91 ld r24, X+
7804: 9c 91 ld r25, X
7806: 86 34 cpi r24, 0x46 ; 70
7808: 91 05 cpc r25, r1
780a: 0c f4 brge .+2 ; 0x780e <MotorRegler+0x9fa>
780c: 45 e0 ldi r20, 0x05 ; 5
780e: 84 2f mov r24, r20
7810: 0e 94 b0 02 call 0x560 ; 0x560 <SetActiveParamSetNumber>
7814: 80 91 d8 07 lds r24, 0x07D8
7818: a8 2f mov r26, r24
781a: b0 e0 ldi r27, 0x00 ; 0
781c: aa 0f add r26, r26
781e: bb 1f adc r27, r27
7820: ab 55 subi r26, 0x5B ; 91
7822: b8 4f sbci r27, 0xF8 ; 248
7824: 8d 91 ld r24, X+
7826: 9c 91 ld r25, X
7828: 97 ff sbrs r25, 7
782a: 02 c0 rjmp .+4 ; 0x7830 <MotorRegler+0xa1c>
782c: 0c 94 00 4e jmp 0x9c00 ; 0x9c00 <MotorRegler+0x2dec>
7830: 4e 97 sbiw r24, 0x1e ; 30
7832: 14 f0 brlt .+4 ; 0x7838 <MotorRegler+0xa24>
7834: 0c 94 93 4d jmp 0x9b26 ; 0x9b26 <MotorRegler+0x2d12>
7838: e0 91 d7 07 lds r30, 0x07D7
783c: f0 e0 ldi r31, 0x00 ; 0
783e: ee 0f add r30, r30
7840: ff 1f adc r31, r31
7842: eb 55 subi r30, 0x5B ; 91
7844: f8 4f sbci r31, 0xF8 ; 248
7846: 80 81 ld r24, Z
7848: 91 81 ldd r25, Z+1 ; 0x01
784a: 8a 5b subi r24, 0xBA ; 186
784c: 9f 4f sbci r25, 0xFF ; 255
784e: 14 f0 brlt .+4 ; 0x7854 <MotorRegler+0xa40>
7850: 0c 94 93 4d jmp 0x9b26 ; 0x9b26 <MotorRegler+0x2d12>
7854: 81 e0 ldi r24, 0x01 ; 1
7856: 80 93 9a 06 sts 0x069A, r24
785a: 88 ee ldi r24, 0xE8 ; 232
785c: 93 e0 ldi r25, 0x03 ; 3
785e: 90 93 e6 03 sts 0x03E6, r25
7862: 80 93 e5 03 sts 0x03E5, r24
7866: 80 91 d9 07 lds r24, 0x07D9
786a: a8 2f mov r26, r24
786c: b0 e0 ldi r27, 0x00 ; 0
786e: aa 0f add r26, r26
7870: bb 1f adc r27, r27
7872: ab 55 subi r26, 0x5B ; 91
7874: b8 4f sbci r27, 0xF8 ; 248
7876: 8d 91 ld r24, X+
7878: 9c 91 ld r25, X
787a: 8b 5a subi r24, 0xAB ; 171
787c: 9f 4f sbci r25, 0xFF ; 255
787e: 0c f0 brlt .+2 ; 0x7882 <MotorRegler+0xa6e>
7880: 5d cb rjmp .-2374 ; 0x6f3c <MotorRegler+0x128>
7882: 80 91 da 07 lds r24, 0x07DA
7886: c8 2e mov r12, r24
7888: dd 24 eor r13, r13
788a: cc 0c add r12, r12
788c: dd 1c adc r13, r13
788e: f6 01 movw r30, r12
7890: eb 55 subi r30, 0x5B ; 91
7892: f8 4f sbci r31, 0xF8 ; 248
7894: 80 81 ld r24, Z
7896: 91 81 ldd r25, Z+1 ; 0x01
7898: 85 5b subi r24, 0xB5 ; 181
789a: 9f 4f sbci r25, 0xFF ; 255
789c: 14 f0 brlt .+4 ; 0x78a2 <MotorRegler+0xa8e>
789e: 0c 94 82 49 jmp 0x9304 ; 0x9304 <MotorRegler+0x24f0>
78a2: 80 91 e8 04 lds r24, 0x04E8
78a6: 8f 5f subi r24, 0xFF ; 255
78a8: 80 93 e8 04 sts 0x04E8, r24
78ac: 89 3c cpi r24, 0xC9 ; 201
78ae: 10 f0 brcs .+4 ; 0x78b4 <MotorRegler+0xaa0>
78b0: 0c 94 87 4a jmp 0x950e ; 0x950e <MotorRegler+0x26fa>
78b4: 65 ea ldi r22, 0xA5 ; 165
78b6: 77 e0 ldi r23, 0x07 ; 7
78b8: c6 0e add r12, r22
78ba: d7 1e adc r13, r23
78bc: d6 01 movw r26, r12
78be: 8d 91 ld r24, X+
78c0: 9c 91 ld r25, X
78c2: 8c 34 cpi r24, 0x4C ; 76
78c4: 91 05 cpc r25, r1
78c6: 14 f4 brge .+4 ; 0x78cc <MotorRegler+0xab8>
78c8: 0c 94 86 49 jmp 0x930c ; 0x930c <MotorRegler+0x24f8>
78cc: 80 91 e7 04 lds r24, 0x04E7
78d0: 8f 5f subi r24, 0xFF ; 255
78d2: 80 93 e7 04 sts 0x04E7, r24
78d6: 89 3c cpi r24, 0xC9 ; 201
78d8: 08 f4 brcc .+2 ; 0x78dc <MotorRegler+0xac8>
78da: 30 cb rjmp .-2464 ; 0x6f3c <MotorRegler+0x128>
78dc: 10 92 9d 04 sts 0x049D, r1
78e0: 88 ec ldi r24, 0xC8 ; 200
78e2: 80 93 e7 04 sts 0x04E7, r24
78e6: 10 92 bf 04 sts 0x04BF, r1
78ea: 10 92 be 04 sts 0x04BE, r1
78ee: 26 cb rjmp .-2484 ; 0x6f3c <MotorRegler+0x128>
78f0: 0e 94 7e 2c call 0x58fc ; 0x58fc <ParameterZuordnung>
78f4: 80 91 d7 07 lds r24, 0x07D7
78f8: a8 2e mov r10, r24
78fa: bb 24 eor r11, r11
78fc: aa 0c add r10, r10
78fe: bb 1c adc r11, r11
7900: f5 01 movw r30, r10
7902: eb 55 subi r30, 0x5B ; 91
7904: f8 4f sbci r31, 0xF8 ; 248
7906: 20 81 ld r18, Z
7908: 31 81 ldd r19, Z+1 ; 0x01
790a: 80 91 e6 07 lds r24, 0x07E6
790e: 88 2e mov r8, r24
7910: 99 24 eor r9, r9
7912: f5 01 movw r30, r10
7914: e5 54 subi r30, 0x45 ; 69
7916: f8 4f sbci r31, 0xF8 ; 248
7918: 01 90 ld r0, Z+
791a: f0 81 ld r31, Z
791c: e0 2d mov r30, r0
791e: 80 91 e7 07 lds r24, 0x07E7
7922: 68 2f mov r22, r24
7924: 70 e0 ldi r23, 0x00 ; 0
7926: 28 9d mul r18, r8
7928: a0 01 movw r20, r0
792a: 29 9d mul r18, r9
792c: 50 0d add r21, r0
792e: 38 9d mul r19, r8
7930: 50 0d add r21, r0
7932: 11 24 eor r1, r1
7934: 20 91 d1 04 lds r18, 0x04D1
7938: 30 91 d2 04 lds r19, 0x04D2
793c: c9 01 movw r24, r18
793e: 88 0f add r24, r24
7940: 99 1f adc r25, r25
7942: 82 0f add r24, r18
7944: 93 1f adc r25, r19
7946: 48 0f add r20, r24
7948: 59 1f adc r21, r25
794a: 57 ff sbrs r21, 7
794c: 02 c0 rjmp .+4 ; 0x7952 <MotorRegler+0xb3e>
794e: 0c 94 db 48 jmp 0x91b6 ; 0x91b6 <MotorRegler+0x23a2>
7952: 9a 01 movw r18, r20
7954: 35 95 asr r19
7956: 27 95 ror r18
7958: 35 95 asr r19
795a: 27 95 ror r18
795c: e6 9f mul r30, r22
795e: c0 01 movw r24, r0
7960: e7 9f mul r30, r23
7962: 90 0d add r25, r0
7964: f6 9f mul r31, r22
7966: 90 0d add r25, r0
7968: 11 24 eor r1, r1
796a: 28 0f add r18, r24
796c: 39 1f adc r19, r25
796e: 30 93 d2 04 sts 0x04D2, r19
7972: 20 93 d1 04 sts 0x04D1, r18
7976: 80 91 24 05 lds r24, 0x0524
797a: 90 91 25 05 lds r25, 0x0525
797e: 40 91 20 05 lds r20, 0x0520
7982: 50 91 21 05 lds r21, 0x0521
7986: 69 01 movw r12, r18
7988: c8 1a sub r12, r24
798a: d9 0a sbc r13, r25
798c: c4 1a sub r12, r20
798e: d5 0a sbc r13, r21
7990: d0 92 96 04 sts 0x0496, r13
7994: c0 92 95 04 sts 0x0495, r12
7998: 80 91 d8 07 lds r24, 0x07D8
799c: e8 2e mov r14, r24
799e: ff 24 eor r15, r15
79a0: ee 0c add r14, r14
79a2: ff 1c adc r15, r15
79a4: f7 01 movw r30, r14
79a6: eb 55 subi r30, 0x5B ; 91
79a8: f8 4f sbci r31, 0xF8 ; 248
79aa: 80 81 ld r24, Z
79ac: 91 81 ldd r25, Z+1 ; 0x01
79ae: f7 01 movw r30, r14
79b0: e5 54 subi r30, 0x45 ; 69
79b2: f8 4f sbci r31, 0xF8 ; 248
79b4: 01 90 ld r0, Z+
79b6: f0 81 ld r31, Z
79b8: e0 2d mov r30, r0
79ba: 88 9d mul r24, r8
79bc: a0 01 movw r20, r0
79be: 89 9d mul r24, r9
79c0: 50 0d add r21, r0
79c2: 98 9d mul r25, r8
79c4: 50 0d add r21, r0
79c6: 11 24 eor r1, r1
79c8: 20 91 cf 04 lds r18, 0x04CF
79cc: 30 91 d0 04 lds r19, 0x04D0
79d0: c9 01 movw r24, r18
79d2: 88 0f add r24, r24
79d4: 99 1f adc r25, r25
79d6: 82 0f add r24, r18
79d8: 93 1f adc r25, r19
79da: 48 0f add r20, r24
79dc: 59 1f adc r21, r25
79de: 57 ff sbrs r21, 7
79e0: 02 c0 rjmp .+4 ; 0x79e6 <MotorRegler+0xbd2>
79e2: 0c 94 df 48 jmp 0x91be ; 0x91be <MotorRegler+0x23aa>
79e6: 9a 01 movw r18, r20
79e8: 35 95 asr r19
79ea: 27 95 ror r18
79ec: 35 95 asr r19
79ee: 27 95 ror r18
79f0: e6 9f mul r30, r22
79f2: c0 01 movw r24, r0
79f4: e7 9f mul r30, r23
79f6: 90 0d add r25, r0
79f8: f6 9f mul r31, r22
79fa: 90 0d add r25, r0
79fc: 11 24 eor r1, r1
79fe: 28 0f add r18, r24
7a00: 39 1f adc r19, r25
7a02: 30 93 d0 04 sts 0x04D0, r19
7a06: 20 93 cf 04 sts 0x04CF, r18
7a0a: 80 91 26 05 lds r24, 0x0526
7a0e: 90 91 27 05 lds r25, 0x0527
7a12: 40 91 22 05 lds r20, 0x0522
7a16: 50 91 23 05 lds r21, 0x0523
7a1a: 89 01 movw r16, r18
7a1c: 08 1b sub r16, r24
7a1e: 19 0b sbc r17, r25
7a20: 04 1b sub r16, r20
7a22: 15 0b sbc r17, r21
7a24: 10 93 98 04 sts 0x0498, r17
7a28: 00 93 97 04 sts 0x0497, r16
7a2c: e0 91 da 07 lds r30, 0x07DA
7a30: f0 e0 ldi r31, 0x00 ; 0
7a32: ee 0f add r30, r30
7a34: ff 1f adc r31, r31
7a36: eb 55 subi r30, 0x5B ; 91
7a38: f8 4f sbci r31, 0xF8 ; 248
7a3a: 80 81 ld r24, Z
7a3c: 91 81 ldd r25, Z+1 ; 0x01
7a3e: 90 95 com r25
7a40: 81 95 neg r24
7a42: 9f 4f sbci r25, 0xFF ; 255
7a44: 90 93 9a 04 sts 0x049A, r25
7a48: 80 93 99 04 sts 0x0499, r24
7a4c: 83 30 cpi r24, 0x03 ; 3
7a4e: 91 05 cpc r25, r1
7a50: 0c f4 brge .+2 ; 0x7a54 <MotorRegler+0xc40>
7a52: 52 c1 rjmp .+676 ; 0x7cf8 <MotorRegler+0xee4>
7a54: 02 97 sbiw r24, 0x02 ; 2
7a56: 90 93 9a 04 sts 0x049A, r25
7a5a: 80 93 99 04 sts 0x0499, r24
7a5e: e0 91 d9 07 lds r30, 0x07D9
7a62: f0 e0 ldi r31, 0x00 ; 0
7a64: ee 0f add r30, r30
7a66: ff 1f adc r31, r31
7a68: eb 55 subi r30, 0x5B ; 91
7a6a: f8 4f sbci r31, 0xF8 ; 248
7a6c: 60 80 ld r6, Z
7a6e: 71 80 ldd r7, Z+1 ; 0x01
7a70: 28 e7 ldi r18, 0x78 ; 120
7a72: 30 e0 ldi r19, 0x00 ; 0
7a74: 62 0e add r6, r18
7a76: 73 1e adc r7, r19
7a78: 70 92 9c 04 sts 0x049C, r7
7a7c: 60 92 9b 04 sts 0x049B, r6
7a80: 60 91 a7 03 lds r22, 0x03A7
7a84: 70 e0 ldi r23, 0x00 ; 0
7a86: 88 27 eor r24, r24
7a88: 77 fd sbrc r23, 7
7a8a: 80 95 com r24
7a8c: 98 2f mov r25, r24
7a8e: 0e 94 dc 54 call 0xa9b8 ; 0xa9b8 <__floatsisf>
7a92: 20 e0 ldi r18, 0x00 ; 0
7a94: 30 e0 ldi r19, 0x00 ; 0
7a96: 40 e2 ldi r20, 0x20 ; 32
7a98: 51 e4 ldi r21, 0x41 ; 65
7a9a: 0e 94 45 54 call 0xa88a ; 0xa88a <__addsf3>
7a9e: 0e 94 ae 54 call 0xa95c ; 0xa95c <__fixunssfsi>
7aa2: 60 93 7c 08 sts 0x087C, r22
7aa6: 30 91 a8 03 lds r19, 0x03A8
7aaa: 30 93 68 08 sts 0x0868, r19
7aae: 80 91 a6 06 lds r24, 0x06A6
7ab2: 80 ff sbrs r24, 0
7ab4: 06 c0 rjmp .+12 ; 0x7ac2 <MotorRegler+0xcae>
7ab6: 80 91 86 08 lds r24, 0x0886
7aba: 81 38 cpi r24, 0x81 ; 129
7abc: 10 f0 brcs .+4 ; 0x7ac2 <MotorRegler+0xcae>
7abe: 0c 94 b1 45 jmp 0x8b62 ; 0x8b62 <MotorRegler+0x1d4e>
7ac2: 80 91 9b 04 lds r24, 0x049B
7ac6: 90 91 9c 04 lds r25, 0x049C
7aca: 97 ff sbrs r25, 7
7acc: 02 c0 rjmp .+4 ; 0x7ad2 <MotorRegler+0xcbe>
7ace: 0c 94 51 49 jmp 0x92a2 ; 0x92a2 <MotorRegler+0x248e>
7ad2: b0 91 df 07 lds r27, 0x07DF
7ad6: b2 ff sbrs r27, 2
7ad8: 02 c0 rjmp .+4 ; 0x7ade <MotorRegler+0xcca>
7ada: 10 92 68 08 sts 0x0868, r1
7ade: 20 91 95 04 lds r18, 0x0495
7ae2: 30 91 96 04 lds r19, 0x0496
7ae6: 40 91 ba 04 lds r20, 0x04BA
7aea: 50 91 bb 04 lds r21, 0x04BB
7aee: c9 01 movw r24, r18
7af0: 37 ff sbrs r19, 7
7af2: 02 c0 rjmp .+4 ; 0x7af8 <MotorRegler+0xce4>
7af4: 0c 94 5c 49 jmp 0x92b8 ; 0x92b8 <MotorRegler+0x24a4>
7af8: 95 95 asr r25
7afa: 87 95 ror r24
7afc: 95 95 asr r25
7afe: 87 95 ror r24
7b00: 97 ff sbrs r25, 7
7b02: 02 c0 rjmp .+4 ; 0x7b08 <MotorRegler+0xcf4>
7b04: 0c 94 57 49 jmp 0x92ae ; 0x92ae <MotorRegler+0x249a>
7b08: 48 17 cp r20, r24
7b0a: 59 07 cpc r21, r25
7b0c: 0c f0 brlt .+2 ; 0x7b10 <MotorRegler+0xcfc>
7b0e: 2a c7 rjmp .+3668 ; 0x8964 <MotorRegler+0x1b50>
7b10: c9 01 movw r24, r18
7b12: 37 ff sbrs r19, 7
7b14: 02 c0 rjmp .+4 ; 0x7b1a <MotorRegler+0xd06>
7b16: 0c 94 99 49 jmp 0x9332 ; 0x9332 <MotorRegler+0x251e>
7b1a: 97 ff sbrs r25, 7
7b1c: 02 c0 rjmp .+4 ; 0x7b22 <MotorRegler+0xd0e>
7b1e: 0c 94 96 49 jmp 0x932c ; 0x932c <MotorRegler+0x2518>
7b22: 95 95 asr r25
7b24: 87 95 ror r24
7b26: 95 95 asr r25
7b28: 87 95 ror r24
7b2a: 90 93 bb 04 sts 0x04BB, r25
7b2e: 80 93 ba 04 sts 0x04BA, r24
7b32: 85 36 cpi r24, 0x65 ; 101
7b34: 91 05 cpc r25, r1
7b36: 14 f0 brlt .+4 ; 0x7b3c <MotorRegler+0xd28>
7b38: 0c 94 a9 45 jmp 0x8b52 ; 0x8b52 <MotorRegler+0x1d3e>
7b3c: 20 91 97 04 lds r18, 0x0497
7b40: 30 91 98 04 lds r19, 0x0498
7b44: 40 91 bc 04 lds r20, 0x04BC
7b48: 50 91 bd 04 lds r21, 0x04BD
7b4c: c9 01 movw r24, r18
7b4e: 37 ff sbrs r19, 7
7b50: 02 c0 rjmp .+4 ; 0x7b56 <MotorRegler+0xd42>
7b52: 0c 94 5f 49 jmp 0x92be ; 0x92be <MotorRegler+0x24aa>
7b56: 95 95 asr r25
7b58: 87 95 ror r24
7b5a: 95 95 asr r25
7b5c: 87 95 ror r24
7b5e: 97 ff sbrs r25, 7
7b60: 02 c0 rjmp .+4 ; 0x7b66 <MotorRegler+0xd52>
7b62: 0c 94 68 49 jmp 0x92d0 ; 0x92d0 <MotorRegler+0x24bc>
7b66: 48 17 cp r20, r24
7b68: 59 07 cpc r21, r25
7b6a: 0c f0 brlt .+2 ; 0x7b6e <MotorRegler+0xd5a>
7b6c: f4 c6 rjmp .+3560 ; 0x8956 <MotorRegler+0x1b42>
7b6e: c9 01 movw r24, r18
7b70: 37 ff sbrs r19, 7
7b72: 02 c0 rjmp .+4 ; 0x7b78 <MotorRegler+0xd64>
7b74: 0c 94 91 49 jmp 0x9322 ; 0x9322 <MotorRegler+0x250e>
7b78: 97 ff sbrs r25, 7
7b7a: 02 c0 rjmp .+4 ; 0x7b80 <MotorRegler+0xd6c>
7b7c: 0c 94 8e 49 jmp 0x931c ; 0x931c <MotorRegler+0x2508>
7b80: 95 95 asr r25
7b82: 87 95 ror r24
7b84: 95 95 asr r25
7b86: 87 95 ror r24
7b88: 90 93 bd 04 sts 0x04BD, r25
7b8c: 80 93 bc 04 sts 0x04BC, r24
7b90: 85 36 cpi r24, 0x65 ; 101
7b92: 91 05 cpc r25, r1
7b94: 0c f0 brlt .+2 ; 0x7b98 <MotorRegler+0xd84>
7b96: d6 c7 rjmp .+4012 ; 0x8b44 <MotorRegler+0x1d30>
7b98: e0 91 87 04 lds r30, 0x0487
7b9c: ef a3 std Y+39, r30 ; 0x27
7b9e: ee 23 and r30, r30
7ba0: 41 f0 breq .+16 ; 0x7bb2 <MotorRegler+0xd9e>
7ba2: 10 92 bb 04 sts 0x04BB, r1
7ba6: 10 92 ba 04 sts 0x04BA, r1
7baa: 10 92 bd 04 sts 0x04BD, r1
7bae: 10 92 bc 04 sts 0x04BC, r1
7bb2: f7 01 movw r30, r14
7bb4: eb 55 subi r30, 0x5B ; 91
7bb6: f8 4f sbci r31, 0xF8 ; 248
7bb8: 20 81 ld r18, Z
7bba: 31 81 ldd r19, Z+1 ; 0x01
7bbc: 80 91 ff 07 lds r24, 0x07FF
7bc0: 48 2f mov r20, r24
7bc2: 50 e0 ldi r21, 0x00 ; 0
7bc4: 42 17 cp r20, r18
7bc6: 53 07 cpc r21, r19
7bc8: 24 f4 brge .+8 ; 0x7bd2 <MotorRegler+0xdbe>
7bca: 80 91 22 08 lds r24, 0x0822
7bce: 82 fd sbrc r24, 2
7bd0: b5 c7 rjmp .+3946 ; 0x8b3c <MotorRegler+0x1d28>
7bd2: f7 01 movw r30, r14
7bd4: eb 55 subi r30, 0x5B ; 91
7bd6: f8 4f sbci r31, 0xF8 ; 248
7bd8: 20 81 ld r18, Z
7bda: 31 81 ldd r19, Z+1 ; 0x01
7bdc: 80 91 00 08 lds r24, 0x0800
7be0: ba 01 movw r22, r20
7be2: 68 1b sub r22, r24
7be4: 71 09 sbc r23, r1
7be6: 26 17 cp r18, r22
7be8: 37 07 cpc r19, r23
7bea: 14 f4 brge .+4 ; 0x7bf0 <MotorRegler+0xddc>
7bec: 10 92 a8 04 sts 0x04A8, r1
7bf0: f7 01 movw r30, r14
7bf2: eb 55 subi r30, 0x5B ; 91
7bf4: f8 4f sbci r31, 0xF8 ; 248
7bf6: 80 81 ld r24, Z
7bf8: 91 81 ldd r25, Z+1 ; 0x01
7bfa: 66 27 eor r22, r22
7bfc: 77 27 eor r23, r23
7bfe: 64 1b sub r22, r20
7c00: 75 0b sbc r23, r21
7c02: 86 17 cp r24, r22
7c04: 97 07 cpc r25, r23
7c06: 24 f4 brge .+8 ; 0x7c10 <MotorRegler+0xdfc>
7c08: 80 91 22 08 lds r24, 0x0822
7c0c: 83 fd sbrc r24, 3
7c0e: 92 c7 rjmp .+3876 ; 0x8b34 <MotorRegler+0x1d20>
7c10: 80 91 a9 04 lds r24, 0x04A9
7c14: 88 23 and r24, r24
7c16: 89 f0 breq .+34 ; 0x7c3a <MotorRegler+0xe26>
7c18: 85 ea ldi r24, 0xA5 ; 165
7c1a: 97 e0 ldi r25, 0x07 ; 7
7c1c: e8 0e add r14, r24
7c1e: f9 1e adc r15, r25
7c20: f7 01 movw r30, r14
7c22: 20 81 ld r18, Z
7c24: 31 81 ldd r19, Z+1 ; 0x01
7c26: 80 91 00 08 lds r24, 0x0800
7c2a: 90 e0 ldi r25, 0x00 ; 0
7c2c: 84 1b sub r24, r20
7c2e: 95 0b sbc r25, r21
7c30: 82 17 cp r24, r18
7c32: 93 07 cpc r25, r19
7c34: 14 f4 brge .+4 ; 0x7c3a <MotorRegler+0xe26>
7c36: 0c 94 16 49 jmp 0x922c ; 0x922c <MotorRegler+0x2418>
7c3a: f5 01 movw r30, r10
7c3c: eb 55 subi r30, 0x5B ; 91
7c3e: f8 4f sbci r31, 0xF8 ; 248
7c40: 80 81 ld r24, Z
7c42: 91 81 ldd r25, Z+1 ; 0x01
7c44: 48 17 cp r20, r24
7c46: 59 07 cpc r21, r25
7c48: 24 f4 brge .+8 ; 0x7c52 <MotorRegler+0xe3e>
7c4a: 80 91 22 08 lds r24, 0x0822
7c4e: 80 fd sbrc r24, 0
7c50: 6d c7 rjmp .+3802 ; 0x8b2c <MotorRegler+0x1d18>
7c52: a0 91 ab 04 lds r26, 0x04AB
7c56: aa 23 and r26, r26
7c58: 79 f0 breq .+30 ; 0x7c78 <MotorRegler+0xe64>
7c5a: f5 01 movw r30, r10
7c5c: eb 55 subi r30, 0x5B ; 91
7c5e: f8 4f sbci r31, 0xF8 ; 248
7c60: 20 81 ld r18, Z
7c62: 31 81 ldd r19, Z+1 ; 0x01
7c64: 80 91 00 08 lds r24, 0x0800
7c68: fa 01 movw r30, r20
7c6a: e8 1b sub r30, r24
7c6c: f1 09 sbc r31, r1
7c6e: 2e 17 cp r18, r30
7c70: 3f 07 cpc r19, r31
7c72: 14 f4 brge .+4 ; 0x7c78 <MotorRegler+0xe64>
7c74: 0c 94 0d 49 jmp 0x921a ; 0x921a <MotorRegler+0x2406>
7c78: f5 01 movw r30, r10
7c7a: eb 55 subi r30, 0x5B ; 91
7c7c: f8 4f sbci r31, 0xF8 ; 248
7c7e: 80 81 ld r24, Z
7c80: 91 81 ldd r25, Z+1 ; 0x01
7c82: 86 17 cp r24, r22
7c84: 97 07 cpc r25, r23
7c86: 24 f4 brge .+8 ; 0x7c90 <MotorRegler+0xe7c>
7c88: 80 91 22 08 lds r24, 0x0822
7c8c: 81 fd sbrc r24, 1
7c8e: 4a c7 rjmp .+3732 ; 0x8b24 <MotorRegler+0x1d10>
7c90: 80 91 aa 04 lds r24, 0x04AA
7c94: 88 23 and r24, r24
7c96: 89 f0 breq .+34 ; 0x7cba <MotorRegler+0xea6>
7c98: 25 ea ldi r18, 0xA5 ; 165
7c9a: 37 e0 ldi r19, 0x07 ; 7
7c9c: a2 0e add r10, r18
7c9e: b3 1e adc r11, r19
7ca0: f5 01 movw r30, r10
7ca2: 20 81 ld r18, Z
7ca4: 31 81 ldd r19, Z+1 ; 0x01
7ca6: 80 91 00 08 lds r24, 0x0800
7caa: 90 e0 ldi r25, 0x00 ; 0
7cac: 84 1b sub r24, r20
7cae: 95 0b sbc r25, r21
7cb0: 82 17 cp r24, r18
7cb2: 93 07 cpc r25, r19
7cb4: 14 f4 brge .+4 ; 0x7cba <MotorRegler+0xea6>
7cb6: 0c 94 12 49 jmp 0x9224 ; 0x9224 <MotorRegler+0x2410>
7cba: 80 91 a8 04 lds r24, 0x04A8
7cbe: 88 23 and r24, r24
7cc0: 29 f4 brne .+10 ; 0x7ccc <MotorRegler+0xeb8>
7cc2: 80 91 a9 04 lds r24, 0x04A9
7cc6: 88 23 and r24, r24
7cc8: 09 f4 brne .+2 ; 0x7ccc <MotorRegler+0xeb8>
7cca: 29 c7 rjmp .+3666 ; 0x8b1e <MotorRegler+0x1d0a>
7ccc: f1 e0 ldi r31, 0x01 ; 1
7cce: f0 93 a7 04 sts 0x04A7, r31
7cd2: aa 23 and r26, r26
7cd4: 29 f4 brne .+10 ; 0x7ce0 <MotorRegler+0xecc>
7cd6: 80 91 aa 04 lds r24, 0x04AA
7cda: 88 23 and r24, r24
7cdc: 09 f4 brne .+2 ; 0x7ce0 <MotorRegler+0xecc>
7cde: 1b c7 rjmp .+3638 ; 0x8b16 <MotorRegler+0x1d02>
7ce0: 81 e0 ldi r24, 0x01 ; 1
7ce2: 80 93 a6 04 sts 0x04A6, r24
7ce6: 10 92 a7 04 sts 0x04A7, r1
7cea: 10 92 a8 04 sts 0x04A8, r1
7cee: 10 92 a9 04 sts 0x04A9, r1
7cf2: 3c c9 rjmp .-3464 ; 0x6f6c <MotorRegler+0x158>
7cf4: 29 98 cbi 0x05, 1 ; 5
7cf6: b0 c8 rjmp .-3744 ; 0x6e58 <MotorRegler+0x44>
7cf8: ef ef ldi r30, 0xFF ; 255
7cfa: 8e 3f cpi r24, 0xFE ; 254
7cfc: 9e 07 cpc r25, r30
7cfe: 0c f0 brlt .+2 ; 0x7d02 <MotorRegler+0xeee>
7d00: 87 c7 rjmp .+3854 ; 0x8c10 <MotorRegler+0x1dfc>
7d02: 02 96 adiw r24, 0x02 ; 2
7d04: 90 93 9a 04 sts 0x049A, r25
7d08: 80 93 99 04 sts 0x0499, r24
7d0c: a8 ce rjmp .-688 ; 0x7a5e <MotorRegler+0xc4a>
7d0e: 10 92 9d 04 sts 0x049D, r1
7d12: 10 92 87 04 sts 0x0487, r1
7d16: 4a 30 cpi r20, 0x0A ; 10
7d18: 09 f0 breq .+2 ; 0x7d1c <MotorRegler+0xf08>
7d1a: d0 c8 rjmp .-3680 ; 0x6ebc <MotorRegler+0xa8>
7d1c: 28 9a sbi 0x05, 0 ; 5
7d1e: d2 c8 rjmp .-3676 ; 0x6ec4 <MotorRegler+0xb0>
7d20: 80 90 77 08 lds r8, 0x0877
7d24: 90 90 78 08 lds r9, 0x0878
7d28: 80 91 dc 04 lds r24, 0x04DC
7d2c: 81 50 subi r24, 0x01 ; 1
7d2e: 80 93 dc 04 sts 0x04DC, r24
7d32: 8f 3f cpi r24, 0xFF ; 255
7d34: 09 f4 brne .+2 ; 0x7d38 <MotorRegler+0xf24>
7d36: 5d c5 rjmp .+2746 ; 0x87f2 <MotorRegler+0x19de>
7d38: be a1 ldd r27, Y+38 ; 0x26
7d3a: bb 23 and r27, r27
7d3c: 81 f0 breq .+32 ; 0x7d5e <MotorRegler+0xf4a>
7d3e: 10 92 00 05 sts 0x0500, r1
7d42: 10 92 01 05 sts 0x0501, r1
7d46: 10 92 02 05 sts 0x0502, r1
7d4a: 10 92 03 05 sts 0x0503, r1
7d4e: 10 92 04 05 sts 0x0504, r1
7d52: 10 92 05 05 sts 0x0505, r1
7d56: 10 92 06 05 sts 0x0506, r1
7d5a: 10 92 07 05 sts 0x0507, r1
7d5e: e9 85 ldd r30, Y+9 ; 0x09
7d60: ee 23 and r30, r30
7d62: 09 f4 brne .+2 ; 0x7d66 <MotorRegler+0xf52>
7d64: b5 c3 rjmp .+1898 ; 0x84d0 <MotorRegler+0x16bc>
7d66: 1f 86 std Y+15, r1 ; 0x0f
7d68: 1e 86 std Y+14, r1 ; 0x0e
7d6a: 44 24 eor r4, r4
7d6c: 55 24 eor r5, r5
7d6e: 2c a5 ldd r18, Y+44 ; 0x2c
7d70: 22 23 and r18, r18
7d72: 09 f4 brne .+2 ; 0x7d76 <MotorRegler+0xf62>
7d74: 98 c3 rjmp .+1840 ; 0x84a6 <MotorRegler+0x1692>
7d76: 1d 86 std Y+13, r1 ; 0x0d
7d78: 1c 86 std Y+12, r1 ; 0x0c
7d7a: 22 24 eor r2, r2
7d7c: 33 24 eor r3, r3
7d7e: 80 91 39 08 lds r24, 0x0839
7d82: 90 91 3a 08 lds r25, 0x083A
7d86: 89 3c cpi r24, 0xC9 ; 201
7d88: 91 05 cpc r25, r1
7d8a: 0c f4 brge .+2 ; 0x7d8e <MotorRegler+0xf7a>
7d8c: 80 c3 rjmp .+1792 ; 0x848e <MotorRegler+0x167a>
7d8e: 88 ec ldi r24, 0xC8 ; 200
7d90: 90 e0 ldi r25, 0x00 ; 0
7d92: 90 93 3a 08 sts 0x083A, r25
7d96: 80 93 39 08 sts 0x0839, r24
7d9a: 60 91 43 08 lds r22, 0x0843
7d9e: 70 91 44 08 lds r23, 0x0844
7da2: 7e a7 std Y+46, r23 ; 0x2e
7da4: 6d a7 std Y+45, r22 ; 0x2d
7da6: 69 3c cpi r22, 0xC9 ; 201
7da8: 71 05 cpc r23, r1
7daa: 0c f4 brge .+2 ; 0x7dae <MotorRegler+0xf9a>
7dac: 61 c3 rjmp .+1730 ; 0x8470 <MotorRegler+0x165c>
7dae: a8 ec ldi r26, 0xC8 ; 200
7db0: b0 e0 ldi r27, 0x00 ; 0
7db2: be a7 std Y+46, r27 ; 0x2e
7db4: ad a7 std Y+45, r26 ; 0x2d
7db6: b0 93 44 08 sts 0x0844, r27
7dba: a0 93 43 08 sts 0x0843, r26
7dbe: a0 90 7c 08 lds r10, 0x087C
7dc2: bb 24 eor r11, r11
7dc4: cc 24 eor r12, r12
7dc6: dd 24 eor r13, r13
7dc8: 7c 01 movw r14, r24
7dca: 00 27 eor r16, r16
7dcc: f7 fc sbrc r15, 7
7dce: 00 95 com r16
7dd0: 10 2f mov r17, r16
7dd2: ee 0c add r14, r14
7dd4: ff 1c adc r15, r15
7dd6: 00 1f adc r16, r16
7dd8: 11 1f adc r17, r17
7dda: ee 0c add r14, r14
7ddc: ff 1c adc r15, r15
7dde: 00 1f adc r16, r16
7de0: 11 1f adc r17, r17
7de2: ee 0c add r14, r14
7de4: ff 1c adc r15, r15
7de6: 00 1f adc r16, r16
7de8: 11 1f adc r17, r17
7dea: ee 0c add r14, r14
7dec: ff 1c adc r15, r15
7dee: 00 1f adc r16, r16
7df0: 11 1f adc r17, r17
7df2: ee 0c add r14, r14
7df4: ff 1c adc r15, r15
7df6: 00 1f adc r16, r16
7df8: 11 1f adc r17, r17
7dfa: ee 0c add r14, r14
7dfc: ff 1c adc r15, r15
7dfe: 00 1f adc r16, r16
7e00: 11 1f adc r17, r17
7e02: ee 0c add r14, r14
7e04: ff 1c adc r15, r15
7e06: 00 1f adc r16, r16
7e08: 11 1f adc r17, r17
7e0a: 60 90 46 08 lds r6, 0x0846
7e0e: 70 90 47 08 lds r7, 0x0847
7e12: 93 01 movw r18, r6
7e14: 44 27 eor r20, r20
7e16: 37 fd sbrc r19, 7
7e18: 40 95 com r20
7e1a: 54 2f mov r21, r20
7e1c: c6 01 movw r24, r12
7e1e: b5 01 movw r22, r10
7e20: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
7e24: e6 0e add r14, r22
7e26: f7 1e adc r15, r23
7e28: 08 1f adc r16, r24
7e2a: 19 1f adc r17, r25
7e2c: c8 01 movw r24, r16
7e2e: b7 01 movw r22, r14
7e30: 20 e4 ldi r18, 0x40 ; 64
7e32: 30 e0 ldi r19, 0x00 ; 0
7e34: 40 e0 ldi r20, 0x00 ; 0
7e36: 50 e0 ldi r21, 0x00 ; 0
7e38: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
7e3c: 32 01 movw r6, r4
7e3e: 62 0e add r6, r18
7e40: 73 1e adc r7, r19
7e42: 70 92 47 08 sts 0x0847, r7
7e46: 60 92 46 08 sts 0x0846, r6
7e4a: 6d a5 ldd r22, Y+45 ; 0x2d
7e4c: 7e a5 ldd r23, Y+46 ; 0x2e
7e4e: 7b 01 movw r14, r22
7e50: 00 27 eor r16, r16
7e52: f7 fc sbrc r15, 7
7e54: 00 95 com r16
7e56: 10 2f mov r17, r16
7e58: ee 0c add r14, r14
7e5a: ff 1c adc r15, r15
7e5c: 00 1f adc r16, r16
7e5e: 11 1f adc r17, r17
7e60: ee 0c add r14, r14
7e62: ff 1c adc r15, r15
7e64: 00 1f adc r16, r16
7e66: 11 1f adc r17, r17
7e68: ee 0c add r14, r14
7e6a: ff 1c adc r15, r15
7e6c: 00 1f adc r16, r16
7e6e: 11 1f adc r17, r17
7e70: ee 0c add r14, r14
7e72: ff 1c adc r15, r15
7e74: 00 1f adc r16, r16
7e76: 11 1f adc r17, r17
7e78: ee 0c add r14, r14
7e7a: ff 1c adc r15, r15
7e7c: 00 1f adc r16, r16
7e7e: 11 1f adc r17, r17
7e80: ee 0c add r14, r14
7e82: ff 1c adc r15, r15
7e84: 00 1f adc r16, r16
7e86: 11 1f adc r17, r17
7e88: ee 0c add r14, r14
7e8a: ff 1c adc r15, r15
7e8c: 00 1f adc r16, r16
7e8e: 11 1f adc r17, r17
7e90: 40 90 36 08 lds r4, 0x0836
7e94: 50 90 37 08 lds r5, 0x0837
7e98: b2 01 movw r22, r4
7e9a: 88 27 eor r24, r24
7e9c: 77 fd sbrc r23, 7
7e9e: 80 95 com r24
7ea0: 98 2f mov r25, r24
7ea2: a6 01 movw r20, r12
7ea4: 95 01 movw r18, r10
7ea6: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
7eaa: e6 0e add r14, r22
7eac: f7 1e adc r15, r23
7eae: 08 1f adc r16, r24
7eb0: 19 1f adc r17, r25
7eb2: c8 01 movw r24, r16
7eb4: b7 01 movw r22, r14
7eb6: 20 e4 ldi r18, 0x40 ; 64
7eb8: 30 e0 ldi r19, 0x00 ; 0
7eba: 40 e0 ldi r20, 0x00 ; 0
7ebc: 50 e0 ldi r21, 0x00 ; 0
7ebe: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
7ec2: 21 01 movw r4, r2
7ec4: 42 0e add r4, r18
7ec6: 53 1e adc r5, r19
7ec8: 50 92 37 08 sts 0x0837, r5
7ecc: 40 92 36 08 sts 0x0836, r4
7ed0: 88 0c add r8, r8
7ed2: 99 1c adc r9, r9
7ed4: b4 01 movw r22, r8
7ed6: 88 27 eor r24, r24
7ed8: 77 fd sbrc r23, 7
7eda: 80 95 com r24
7edc: 98 2f mov r25, r24
7ede: a6 01 movw r20, r12
7ee0: 95 01 movw r18, r10
7ee2: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
7ee6: 20 e4 ldi r18, 0x40 ; 64
7ee8: 30 e0 ldi r19, 0x00 ; 0
7eea: 40 e0 ldi r20, 0x00 ; 0
7eec: 50 e0 ldi r21, 0x00 ; 0
7eee: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
7ef2: 79 01 movw r14, r18
7ef4: 8a 01 movw r16, r20
7ef6: ad a1 ldd r26, Y+37 ; 0x25
7ef8: 6a 2f mov r22, r26
7efa: 70 e0 ldi r23, 0x00 ; 0
7efc: 80 e0 ldi r24, 0x00 ; 0
7efe: 90 e0 ldi r25, 0x00 ; 0
7f00: 20 91 61 04 lds r18, 0x0461
7f04: 30 91 62 04 lds r19, 0x0462
7f08: 40 91 63 04 lds r20, 0x0463
7f0c: 50 91 64 04 lds r21, 0x0464
7f10: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
7f14: 20 ef ldi r18, 0xF0 ; 240
7f16: 35 e5 ldi r19, 0x55 ; 85
7f18: 40 e0 ldi r20, 0x00 ; 0
7f1a: 50 e0 ldi r21, 0x00 ; 0
7f1c: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
7f20: 47 01 movw r8, r14
7f22: 82 0e add r8, r18
7f24: 93 1e adc r9, r19
7f26: 90 92 78 08 sts 0x0878, r9
7f2a: 80 92 77 08 sts 0x0877, r8
7f2e: b1 e0 ldi r27, 0x01 ; 1
7f30: 6b 16 cp r6, r27
7f32: b0 e4 ldi r27, 0x40 ; 64
7f34: 7b 06 cpc r7, r27
7f36: 0c f4 brge .+2 ; 0x7f3a <MotorRegler+0x1126>
7f38: 8d c2 rjmp .+1306 ; 0x8454 <MotorRegler+0x1640>
7f3a: 61 2c mov r6, r1
7f3c: 40 e4 ldi r20, 0x40 ; 64
7f3e: 74 2e mov r7, r20
7f40: 70 92 47 08 sts 0x0847, r7
7f44: 60 92 46 08 sts 0x0846, r6
7f48: f1 e0 ldi r31, 0x01 ; 1
7f4a: 4f 16 cp r4, r31
7f4c: f0 e4 ldi r31, 0x40 ; 64
7f4e: 5f 06 cpc r5, r31
7f50: 0c f4 brge .+2 ; 0x7f54 <MotorRegler+0x1140>
7f52: 72 c2 rjmp .+1252 ; 0x8438 <MotorRegler+0x1624>
7f54: 41 2c mov r4, r1
7f56: 20 e4 ldi r18, 0x40 ; 64
7f58: 52 2e mov r5, r18
7f5a: 50 92 37 08 sts 0x0837, r5
7f5e: 40 92 36 08 sts 0x0836, r4
7f62: 31 e0 ldi r19, 0x01 ; 1
7f64: 83 16 cp r8, r19
7f66: 30 e4 ldi r19, 0x40 ; 64
7f68: 93 06 cpc r9, r19
7f6a: 0c f4 brge .+2 ; 0x7f6e <MotorRegler+0x115a>
7f6c: 57 c2 rjmp .+1198 ; 0x841c <MotorRegler+0x1608>
7f6e: 81 2c mov r8, r1
7f70: 80 e4 ldi r24, 0x40 ; 64
7f72: 98 2e mov r9, r24
7f74: 90 92 78 08 sts 0x0878, r9
7f78: 80 92 77 08 sts 0x0877, r8
7f7c: 68 89 ldd r22, Y+16 ; 0x10
7f7e: 79 89 ldd r23, Y+17 ; 0x11
7f80: 66 0f add r22, r22
7f82: 77 1f adc r23, r23
7f84: 66 0f add r22, r22
7f86: 77 1f adc r23, r23
7f88: 7e a7 std Y+46, r23 ; 0x2e
7f8a: 6d a7 std Y+45, r22 ; 0x2d
7f8c: 7a 85 ldd r23, Y+10 ; 0x0a
7f8e: 70 ff sbrs r23, 0
7f90: 2c c0 rjmp .+88 ; 0x7fea <MotorRegler+0x11d6>
7f92: 71 ff sbrs r23, 1
7f94: ee c4 rjmp .+2524 ; 0x8972 <MotorRegler+0x1b5e>
7f96: 80 91 22 08 lds r24, 0x0822
7f9a: 84 fd sbrc r24, 4
7f9c: 02 c0 rjmp .+4 ; 0x7fa2 <MotorRegler+0x118e>
7f9e: 0c 94 ca 48 jmp 0x9194 ; 0x9194 <MotorRegler+0x2380>
7fa2: 80 91 a2 03 lds r24, 0x03A2
7fa6: 81 55 subi r24, 0x51 ; 81
7fa8: 8b 33 cpi r24, 0x3B ; 59
7faa: 10 f0 brcs .+4 ; 0x7fb0 <MotorRegler+0x119c>
7fac: 0c 94 d0 48 jmp 0x91a0 ; 0x91a0 <MotorRegler+0x238c>
7fb0: 80 91 b7 03 lds r24, 0x03B7
7fb4: 81 50 subi r24, 0x01 ; 1
7fb6: 80 93 b7 03 sts 0x03B7, r24
7fba: 8f 3f cpi r24, 0xFF ; 255
7fbc: 11 f4 brne .+4 ; 0x7fc2 <MotorRegler+0x11ae>
7fbe: 0c 94 b7 4b jmp 0x976e ; 0x976e <MotorRegler+0x295a>
7fc2: 20 91 9e 04 lds r18, 0x049E
7fc6: 30 91 9f 04 lds r19, 0x049F
7fca: f2 c4 rjmp .+2532 ; 0x89b0 <MotorRegler+0x1b9c>
7fcc: ed a5 ldd r30, Y+45 ; 0x2d
7fce: fe a5 ldd r31, Y+46 ; 0x2e
7fd0: e2 17 cp r30, r18
7fd2: f3 07 cpc r31, r19
7fd4: 24 f4 brge .+8 ; 0x7fde <MotorRegler+0x11ca>
7fd6: f0 93 e6 04 sts 0x04E6, r31
7fda: e0 93 e5 04 sts 0x04E5, r30
7fde: 20 91 e5 04 lds r18, 0x04E5
7fe2: 30 91 e6 04 lds r19, 0x04E6
7fe6: 3e a7 std Y+46, r19 ; 0x2e
7fe8: 2d a7 std Y+45, r18 ; 0x2d
7fea: 80 91 76 08 lds r24, 0x0876
7fee: 28 2e mov r2, r24
7ff0: 33 24 eor r3, r3
7ff2: a1 01 movw r20, r2
7ff4: 44 0f add r20, r20
7ff6: 55 1f adc r21, r21
7ff8: 44 0f add r20, r20
7ffa: 55 1f adc r21, r21
7ffc: ca 01 movw r24, r20
7ffe: 80 55 subi r24, 0x50 ; 80
8000: 90 40 sbci r25, 0x00 ; 0
8002: 0d a5 ldd r16, Y+45 ; 0x2d
8004: 1e a5 ldd r17, Y+46 ; 0x2e
8006: 80 17 cp r24, r16
8008: 91 07 cpc r25, r17
800a: 0c f4 brge .+2 ; 0x800e <MotorRegler+0x11fa>
800c: 8c 01 movw r16, r24
800e: 10 93 50 07 sts 0x0750, r17
8012: 00 93 4f 07 sts 0x074F, r16
8016: 68 8d ldd r22, Y+24 ; 0x18
8018: 79 8d ldd r23, Y+25 ; 0x19
801a: 8a 8d ldd r24, Y+26 ; 0x1a
801c: 9b 8d ldd r25, Y+27 ; 0x1b
801e: 66 0f add r22, r22
8020: 77 1f adc r23, r23
8022: 88 1f adc r24, r24
8024: 99 1f adc r25, r25
8026: 66 0f add r22, r22
8028: 77 1f adc r23, r23
802a: 88 1f adc r24, r24
802c: 99 1f adc r25, r25
802e: 74 01 movw r14, r8
8030: e6 1a sub r14, r22
8032: f7 0a sbc r15, r23
8034: 01 3a cpi r16, 0xA1 ; 161
8036: 11 05 cpc r17, r1
8038: 0c f4 brge .+2 ; 0x803c <MotorRegler+0x1228>
803a: e2 c1 rjmp .+964 ; 0x8400 <MotorRegler+0x15ec>
803c: 98 01 movw r18, r16
803e: 35 95 asr r19
8040: 27 95 ror r18
8042: 2e 15 cp r18, r14
8044: 3f 05 cpc r19, r15
8046: 84 f0 brlt .+32 ; 0x8068 <MotorRegler+0x1254>
8048: f8 01 movw r30, r16
804a: 17 ff sbrs r17, 7
804c: 02 c0 rjmp .+4 ; 0x8052 <MotorRegler+0x123e>
804e: 0c 94 39 49 jmp 0x9272 ; 0x9272 <MotorRegler+0x245e>
8052: f5 95 asr r31
8054: e7 95 ror r30
8056: 22 27 eor r18, r18
8058: 33 27 eor r19, r19
805a: 2e 1b sub r18, r30
805c: 3f 0b sbc r19, r31
805e: 2e 15 cp r18, r14
8060: 3f 05 cpc r19, r15
8062: 14 f4 brge .+4 ; 0x8068 <MotorRegler+0x1254>
8064: 0c 94 be 48 jmp 0x917c ; 0x917c <MotorRegler+0x2368>
8068: ca 01 movw r24, r20
806a: 80 1b sub r24, r16
806c: 91 0b sbc r25, r17
806e: 82 17 cp r24, r18
8070: 93 07 cpc r25, r19
8072: 0c f4 brge .+2 ; 0x8076 <MotorRegler+0x1262>
8074: 9c 01 movw r18, r24
8076: c8 01 movw r24, r16
8078: 84 1b sub r24, r20
807a: 95 0b sbc r25, r21
807c: 59 01 movw r10, r18
807e: 28 17 cp r18, r24
8080: 39 07 cpc r19, r25
8082: 0c f4 brge .+2 ; 0x8086 <MotorRegler+0x1272>
8084: 5c 01 movw r10, r24
8086: 80 91 95 04 lds r24, 0x0495
808a: 90 91 96 04 lds r25, 0x0496
808e: 63 01 movw r12, r6
8090: c8 1a sub r12, r24
8092: d9 0a sbc r13, r25
8094: d0 92 5a 08 sts 0x085A, r13
8098: c0 92 59 08 sts 0x0859, r12
809c: ad a1 ldd r26, Y+37 ; 0x25
809e: aa 23 and r26, r26
80a0: 09 f4 brne .+2 ; 0x80a4 <MotorRegler+0x1290>
80a2: 94 c1 rjmp .+808 ; 0x83cc <MotorRegler+0x15b8>
80a4: ee 85 ldd r30, Y+14 ; 0x0e
80a6: ff 85 ldd r31, Y+15 ; 0x0f
80a8: e8 1b sub r30, r24
80aa: f9 0b sbc r31, r25
80ac: cf 01 movw r24, r30
80ae: aa 27 eor r26, r26
80b0: 97 fd sbrc r25, 7
80b2: a0 95 com r26
80b4: ba 2f mov r27, r26
80b6: 20 91 04 05 lds r18, 0x0504
80ba: 30 91 05 05 lds r19, 0x0505
80be: 40 91 06 05 lds r20, 0x0506
80c2: 50 91 07 05 lds r21, 0x0507
80c6: 28 0f add r18, r24
80c8: 39 1f adc r19, r25
80ca: 4a 1f adc r20, r26
80cc: 5b 1f adc r21, r27
80ce: 20 93 04 05 sts 0x0504, r18
80d2: 30 93 05 05 sts 0x0505, r19
80d6: 40 93 06 05 sts 0x0506, r20
80da: 50 93 07 05 sts 0x0507, r21
80de: 21 30 cpi r18, 0x01 ; 1
80e0: fa ef ldi r31, 0xFA ; 250
80e2: 3f 07 cpc r19, r31
80e4: f0 e0 ldi r31, 0x00 ; 0
80e6: 4f 07 cpc r20, r31
80e8: f0 e0 ldi r31, 0x00 ; 0
80ea: 5f 07 cpc r21, r31
80ec: 0c f4 brge .+2 ; 0x80f0 <MotorRegler+0x12dc>
80ee: 58 c1 rjmp .+688 ; 0x83a0 <MotorRegler+0x158c>
80f0: 20 e0 ldi r18, 0x00 ; 0
80f2: 3a ef ldi r19, 0xFA ; 250
80f4: 40 e0 ldi r20, 0x00 ; 0
80f6: 50 e0 ldi r21, 0x00 ; 0
80f8: 20 93 04 05 sts 0x0504, r18
80fc: 30 93 05 05 sts 0x0505, r19
8100: 40 93 06 05 sts 0x0506, r20
8104: 50 93 07 05 sts 0x0507, r21
8108: 80 91 9f 03 lds r24, 0x039F
810c: 90 91 a0 03 lds r25, 0x03A0
8110: 3c 01 movw r6, r24
8112: 88 24 eor r8, r8
8114: 77 fc sbrc r7, 7
8116: 80 94 com r8
8118: 98 2c mov r9, r8
811a: ca 01 movw r24, r20
811c: b9 01 movw r22, r18
811e: a4 01 movw r20, r8
8120: 93 01 movw r18, r6
8122: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8126: c2 0e add r12, r18
8128: d3 1e adc r13, r19
812a: b5 01 movw r22, r10
812c: b7 fc sbrc r11, 7
812e: e6 c4 rjmp .+2508 ; 0x8afc <MotorRegler+0x1ce8>
8130: 77 fd sbrc r23, 7
8132: e1 c4 rjmp .+2498 ; 0x8af6 <MotorRegler+0x1ce2>
8134: 75 95 asr r23
8136: 67 95 ror r22
8138: 60 0f add r22, r16
813a: 71 1f adc r23, r17
813c: 88 27 eor r24, r24
813e: 77 fd sbrc r23, 7
8140: 80 95 com r24
8142: 98 2f mov r25, r24
8144: 20 91 b0 03 lds r18, 0x03B0
8148: 30 e0 ldi r19, 0x00 ; 0
814a: 40 e0 ldi r20, 0x00 ; 0
814c: 50 e0 ldi r21, 0x00 ; 0
814e: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
8152: 20 e4 ldi r18, 0x40 ; 64
8154: 30 e0 ldi r19, 0x00 ; 0
8156: 40 e0 ldi r20, 0x00 ; 0
8158: 50 e0 ldi r21, 0x00 ; 0
815a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
815e: 79 01 movw r14, r18
8160: c2 16 cp r12, r18
8162: d3 06 cpc r13, r19
8164: 0c f4 brge .+2 ; 0x8168 <MotorRegler+0x1354>
8166: 96 01 movw r18, r12
8168: cc 24 eor r12, r12
816a: dd 24 eor r13, r13
816c: ce 18 sub r12, r14
816e: df 08 sbc r13, r15
8170: db 8a std Y+19, r13 ; 0x13
8172: ca 8a std Y+18, r12 ; 0x12
8174: c2 16 cp r12, r18
8176: d3 06 cpc r13, r19
8178: 0c f4 brge .+2 ; 0x817c <MotorRegler+0x1368>
817a: 69 01 movw r12, r18
817c: 80 91 97 04 lds r24, 0x0497
8180: 90 91 98 04 lds r25, 0x0498
8184: 48 1a sub r4, r24
8186: 59 0a sbc r5, r25
8188: 50 92 35 08 sts 0x0835, r5
818c: 40 92 34 08 sts 0x0834, r4
8190: 7d a1 ldd r23, Y+37 ; 0x25
8192: 77 23 and r23, r23
8194: 09 f4 brne .+2 ; 0x8198 <MotorRegler+0x1384>
8196: ea c0 rjmp .+468 ; 0x836c <MotorRegler+0x1558>
8198: ac 85 ldd r26, Y+12 ; 0x0c
819a: bd 85 ldd r27, Y+13 ; 0x0d
819c: a8 1b sub r26, r24
819e: b9 0b sbc r27, r25
81a0: fd 01 movw r30, r26
81a2: cf 01 movw r24, r30
81a4: aa 27 eor r26, r26
81a6: 97 fd sbrc r25, 7
81a8: a0 95 com r26
81aa: ba 2f mov r27, r26
81ac: 20 91 00 05 lds r18, 0x0500
81b0: 30 91 01 05 lds r19, 0x0501
81b4: 40 91 02 05 lds r20, 0x0502
81b8: 50 91 03 05 lds r21, 0x0503
81bc: 28 0f add r18, r24
81be: 39 1f adc r19, r25
81c0: 4a 1f adc r20, r26
81c2: 5b 1f adc r21, r27
81c4: 20 93 00 05 sts 0x0500, r18
81c8: 30 93 01 05 sts 0x0501, r19
81cc: 40 93 02 05 sts 0x0502, r20
81d0: 50 93 03 05 sts 0x0503, r21
81d4: 21 30 cpi r18, 0x01 ; 1
81d6: fa ef ldi r31, 0xFA ; 250
81d8: 3f 07 cpc r19, r31
81da: f0 e0 ldi r31, 0x00 ; 0
81dc: 4f 07 cpc r20, r31
81de: f0 e0 ldi r31, 0x00 ; 0
81e0: 5f 07 cpc r21, r31
81e2: 0c f4 brge .+2 ; 0x81e6 <MotorRegler+0x13d2>
81e4: ad c0 rjmp .+346 ; 0x8340 <MotorRegler+0x152c>
81e6: 20 e0 ldi r18, 0x00 ; 0
81e8: 3a ef ldi r19, 0xFA ; 250
81ea: 40 e0 ldi r20, 0x00 ; 0
81ec: 50 e0 ldi r21, 0x00 ; 0
81ee: 20 93 00 05 sts 0x0500, r18
81f2: 30 93 01 05 sts 0x0501, r19
81f6: 40 93 02 05 sts 0x0502, r20
81fa: 50 93 03 05 sts 0x0503, r21
81fe: ca 01 movw r24, r20
8200: b9 01 movw r22, r18
8202: a4 01 movw r20, r8
8204: 93 01 movw r18, r6
8206: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
820a: b2 01 movw r22, r4
820c: 62 0f add r22, r18
820e: 73 1f adc r23, r19
8210: 97 01 movw r18, r14
8212: 6e 15 cp r22, r14
8214: 7f 05 cpc r23, r15
8216: 0c f4 brge .+2 ; 0x821a <MotorRegler+0x1406>
8218: 9b 01 movw r18, r22
821a: 79 01 movw r14, r18
821c: 8a 89 ldd r24, Y+18 ; 0x12
821e: 9b 89 ldd r25, Y+19 ; 0x13
8220: 28 17 cp r18, r24
8222: 39 07 cpc r19, r25
8224: 0c f4 brge .+2 ; 0x8228 <MotorRegler+0x1414>
8226: 7c 01 movw r14, r24
8228: 45 01 movw r8, r10
822a: 80 0e add r8, r16
822c: 91 1e adc r9, r17
822e: 60 91 e3 04 lds r22, 0x04E3
8232: 70 91 e4 04 lds r23, 0x04E4
8236: c6 01 movw r24, r12
8238: 88 0d add r24, r8
823a: 99 1d adc r25, r9
823c: 0e 94 dd 23 call 0x47ba ; 0x47ba <MotorSmoothing>
8240: 90 93 e4 04 sts 0x04E4, r25
8244: 80 93 e3 04 sts 0x04E3, r24
8248: 97 fd sbrc r25, 7
824a: 5f c4 rjmp .+2238 ; 0x8b0a <MotorRegler+0x1cf6>
824c: 9c 01 movw r18, r24
824e: 35 95 asr r19
8250: 27 95 ror r18
8252: 35 95 asr r19
8254: 27 95 ror r18
8256: 80 91 4c 08 lds r24, 0x084C
825a: 68 2e mov r6, r24
825c: 77 24 eor r7, r7
825e: 26 15 cp r18, r6
8260: 37 05 cpc r19, r7
8262: 0c f0 brlt .+2 ; 0x8266 <MotorRegler+0x1452>
8264: 66 c0 rjmp .+204 ; 0x8332 <MotorRegler+0x151e>
8266: c3 01 movw r24, r6
8268: 80 93 38 08 sts 0x0838, r24
826c: 60 91 e1 04 lds r22, 0x04E1
8270: 70 91 e2 04 lds r23, 0x04E2
8274: c4 01 movw r24, r8
8276: 8c 19 sub r24, r12
8278: 9d 09 sbc r25, r13
827a: 0e 94 dd 23 call 0x47ba ; 0x47ba <MotorSmoothing>
827e: 90 93 e2 04 sts 0x04E2, r25
8282: 80 93 e1 04 sts 0x04E1, r24
8286: 97 fd sbrc r25, 7
8288: 3e c4 rjmp .+2172 ; 0x8b06 <MotorRegler+0x1cf2>
828a: 95 95 asr r25
828c: 87 95 ror r24
828e: 95 95 asr r25
8290: 87 95 ror r24
8292: 86 15 cp r24, r6
8294: 97 05 cpc r25, r7
8296: 0c f0 brlt .+2 ; 0x829a <MotorRegler+0x1486>
8298: 46 c0 rjmp .+140 ; 0x8326 <MotorRegler+0x1512>
829a: c3 01 movw r24, r6
829c: 80 93 45 08 sts 0x0845, r24
82a0: 60 91 df 04 lds r22, 0x04DF
82a4: 70 91 e0 04 lds r23, 0x04E0
82a8: c8 01 movw r24, r16
82aa: 8a 19 sub r24, r10
82ac: 9b 09 sbc r25, r11
82ae: 8e 0d add r24, r14
82b0: 9f 1d adc r25, r15
82b2: 0e 94 dd 23 call 0x47ba ; 0x47ba <MotorSmoothing>
82b6: 90 93 e0 04 sts 0x04E0, r25
82ba: 80 93 df 04 sts 0x04DF, r24
82be: 97 fd sbrc r25, 7
82c0: 28 c4 rjmp .+2128 ; 0x8b12 <MotorRegler+0x1cfe>
82c2: 95 95 asr r25
82c4: 87 95 ror r24
82c6: 95 95 asr r25
82c8: 87 95 ror r24
82ca: 86 15 cp r24, r6
82cc: 97 05 cpc r25, r7
82ce: 34 f5 brge .+76 ; 0x831c <MotorRegler+0x1508>
82d0: c3 01 movw r24, r6
82d2: 80 93 6e 08 sts 0x086E, r24
82d6: 60 91 dd 04 lds r22, 0x04DD
82da: 70 91 de 04 lds r23, 0x04DE
82de: 0e 19 sub r16, r14
82e0: 1f 09 sbc r17, r15
82e2: c8 01 movw r24, r16
82e4: 8a 19 sub r24, r10
82e6: 9b 09 sbc r25, r11
82e8: 0e 94 dd 23 call 0x47ba ; 0x47ba <MotorSmoothing>
82ec: 90 93 de 04 sts 0x04DE, r25
82f0: 80 93 dd 04 sts 0x04DD, r24
82f4: 97 fd sbrc r25, 7
82f6: 0b c4 rjmp .+2070 ; 0x8b0e <MotorRegler+0x1cfa>
82f8: 95 95 asr r25
82fa: 87 95 ror r24
82fc: 95 95 asr r25
82fe: 87 95 ror r24
8300: 86 15 cp r24, r6
8302: 97 05 cpc r25, r7
8304: 14 f4 brge .+4 ; 0x830a <MotorRegler+0x14f6>
8306: 0c 94 24 4e jmp 0x9c48 ; 0x9c48 <MotorRegler+0x2e34>
830a: 3c 01 movw r6, r24
830c: 28 16 cp r2, r24
830e: 39 06 cpc r3, r25
8310: 14 f0 brlt .+4 ; 0x8316 <MotorRegler+0x1502>
8312: 0c 94 24 4e jmp 0x9c48 ; 0x9c48 <MotorRegler+0x2e34>
8316: 31 01 movw r6, r2
8318: 0c 94 24 4e jmp 0x9c48 ; 0x9c48 <MotorRegler+0x2e34>
831c: 28 16 cp r2, r24
831e: 39 06 cpc r3, r25
8320: c4 f6 brge .-80 ; 0x82d2 <MotorRegler+0x14be>
8322: c1 01 movw r24, r2
8324: d6 cf rjmp .-84 ; 0x82d2 <MotorRegler+0x14be>
8326: 28 16 cp r2, r24
8328: 39 06 cpc r3, r25
832a: 0c f0 brlt .+2 ; 0x832e <MotorRegler+0x151a>
832c: b7 cf rjmp .-146 ; 0x829c <MotorRegler+0x1488>
832e: c1 01 movw r24, r2
8330: b5 cf rjmp .-150 ; 0x829c <MotorRegler+0x1488>
8332: c9 01 movw r24, r18
8334: 22 16 cp r2, r18
8336: 33 06 cpc r3, r19
8338: 0c f0 brlt .+2 ; 0x833c <MotorRegler+0x1528>
833a: 96 cf rjmp .-212 ; 0x8268 <MotorRegler+0x1454>
833c: c1 01 movw r24, r2
833e: 94 cf rjmp .-216 ; 0x8268 <MotorRegler+0x1454>
8340: 20 30 cpi r18, 0x00 ; 0
8342: 66 e0 ldi r22, 0x06 ; 6
8344: 36 07 cpc r19, r22
8346: 6f ef ldi r22, 0xFF ; 255
8348: 46 07 cpc r20, r22
834a: 6f ef ldi r22, 0xFF ; 255
834c: 56 07 cpc r21, r22
834e: 0c f0 brlt .+2 ; 0x8352 <MotorRegler+0x153e>
8350: 56 cf rjmp .-340 ; 0x81fe <MotorRegler+0x13ea>
8352: 20 e0 ldi r18, 0x00 ; 0
8354: 36 e0 ldi r19, 0x06 ; 6
8356: 4f ef ldi r20, 0xFF ; 255
8358: 5f ef ldi r21, 0xFF ; 255
835a: 20 93 00 05 sts 0x0500, r18
835e: 30 93 01 05 sts 0x0501, r19
8362: 40 93 02 05 sts 0x0502, r20
8366: 50 93 03 05 sts 0x0503, r21
836a: 49 cf rjmp .-366 ; 0x81fe <MotorRegler+0x13ea>
836c: c2 01 movw r24, r4
836e: aa 27 eor r26, r26
8370: 97 fd sbrc r25, 7
8372: a0 95 com r26
8374: ba 2f mov r27, r26
8376: 20 91 00 05 lds r18, 0x0500
837a: 30 91 01 05 lds r19, 0x0501
837e: 40 91 02 05 lds r20, 0x0502
8382: 50 91 03 05 lds r21, 0x0503
8386: 28 0f add r18, r24
8388: 39 1f adc r19, r25
838a: 4a 1f adc r20, r26
838c: 5b 1f adc r21, r27
838e: 20 93 00 05 sts 0x0500, r18
8392: 30 93 01 05 sts 0x0501, r19
8396: 40 93 02 05 sts 0x0502, r20
839a: 50 93 03 05 sts 0x0503, r21
839e: 1a cf rjmp .-460 ; 0x81d4 <MotorRegler+0x13c0>
83a0: 20 30 cpi r18, 0x00 ; 0
83a2: 66 e0 ldi r22, 0x06 ; 6
83a4: 36 07 cpc r19, r22
83a6: 6f ef ldi r22, 0xFF ; 255
83a8: 46 07 cpc r20, r22
83aa: 6f ef ldi r22, 0xFF ; 255
83ac: 56 07 cpc r21, r22
83ae: 0c f0 brlt .+2 ; 0x83b2 <MotorRegler+0x159e>
83b0: ab ce rjmp .-682 ; 0x8108 <MotorRegler+0x12f4>
83b2: 20 e0 ldi r18, 0x00 ; 0
83b4: 36 e0 ldi r19, 0x06 ; 6
83b6: 4f ef ldi r20, 0xFF ; 255
83b8: 5f ef ldi r21, 0xFF ; 255
83ba: 20 93 04 05 sts 0x0504, r18
83be: 30 93 05 05 sts 0x0505, r19
83c2: 40 93 06 05 sts 0x0506, r20
83c6: 50 93 07 05 sts 0x0507, r21
83ca: 9e ce rjmp .-708 ; 0x8108 <MotorRegler+0x12f4>
83cc: c6 01 movw r24, r12
83ce: aa 27 eor r26, r26
83d0: 97 fd sbrc r25, 7
83d2: a0 95 com r26
83d4: ba 2f mov r27, r26
83d6: 20 91 04 05 lds r18, 0x0504
83da: 30 91 05 05 lds r19, 0x0505
83de: 40 91 06 05 lds r20, 0x0506
83e2: 50 91 07 05 lds r21, 0x0507
83e6: 28 0f add r18, r24
83e8: 39 1f adc r19, r25
83ea: 4a 1f adc r20, r26
83ec: 5b 1f adc r21, r27
83ee: 20 93 04 05 sts 0x0504, r18
83f2: 30 93 05 05 sts 0x0505, r19
83f6: 40 93 06 05 sts 0x0506, r20
83fa: 50 93 07 05 sts 0x0507, r21
83fe: 6f ce rjmp .-802 ; 0x80de <MotorRegler+0x12ca>
8400: 97 01 movw r18, r14
8402: 7f ef ldi r23, 0xFF ; 255
8404: 20 3b cpi r18, 0xB0 ; 176
8406: 37 07 cpc r19, r23
8408: 14 f4 brge .+4 ; 0x840e <MotorRegler+0x15fa>
840a: 20 eb ldi r18, 0xB0 ; 176
840c: 3f ef ldi r19, 0xFF ; 255
840e: 21 35 cpi r18, 0x51 ; 81
8410: 31 05 cpc r19, r1
8412: 0c f4 brge .+2 ; 0x8416 <MotorRegler+0x1602>
8414: 29 ce rjmp .-942 ; 0x8068 <MotorRegler+0x1254>
8416: 20 e5 ldi r18, 0x50 ; 80
8418: 30 e0 ldi r19, 0x00 ; 0
841a: 26 ce rjmp .-948 ; 0x8068 <MotorRegler+0x1254>
841c: 40 e0 ldi r20, 0x00 ; 0
841e: 84 16 cp r8, r20
8420: 40 ec ldi r20, 0xC0 ; 192
8422: 94 06 cpc r9, r20
8424: 0c f0 brlt .+2 ; 0x8428 <MotorRegler+0x1614>
8426: aa cd rjmp .-1196 ; 0x7f7c <MotorRegler+0x1168>
8428: 81 2c mov r8, r1
842a: 00 ec ldi r16, 0xC0 ; 192
842c: 90 2e mov r9, r16
842e: 90 92 78 08 sts 0x0878, r9
8432: 80 92 77 08 sts 0x0877, r8
8436: a2 cd rjmp .-1212 ; 0x7f7c <MotorRegler+0x1168>
8438: 20 e0 ldi r18, 0x00 ; 0
843a: 42 16 cp r4, r18
843c: 20 ec ldi r18, 0xC0 ; 192
843e: 52 06 cpc r5, r18
8440: 0c f0 brlt .+2 ; 0x8444 <MotorRegler+0x1630>
8442: 8f cd rjmp .-1250 ; 0x7f62 <MotorRegler+0x114e>
8444: 41 2c mov r4, r1
8446: 90 ec ldi r25, 0xC0 ; 192
8448: 59 2e mov r5, r25
844a: 50 92 37 08 sts 0x0837, r5
844e: 40 92 36 08 sts 0x0836, r4
8452: 87 cd rjmp .-1266 ; 0x7f62 <MotorRegler+0x114e>
8454: e0 e0 ldi r30, 0x00 ; 0
8456: 6e 16 cp r6, r30
8458: e0 ec ldi r30, 0xC0 ; 192
845a: 7e 06 cpc r7, r30
845c: 0c f0 brlt .+2 ; 0x8460 <MotorRegler+0x164c>
845e: 74 cd rjmp .-1304 ; 0x7f48 <MotorRegler+0x1134>
8460: 61 2c mov r6, r1
8462: 30 ec ldi r19, 0xC0 ; 192
8464: 73 2e mov r7, r19
8466: 70 92 47 08 sts 0x0847, r7
846a: 60 92 46 08 sts 0x0846, r6
846e: 6c cd rjmp .-1320 ; 0x7f48 <MotorRegler+0x1134>
8470: ed a5 ldd r30, Y+45 ; 0x2d
8472: fe a5 ldd r31, Y+46 ; 0x2e
8474: e8 53 subi r30, 0x38 ; 56
8476: ff 4f sbci r31, 0xFF ; 255
8478: 0c f0 brlt .+2 ; 0x847c <MotorRegler+0x1668>
847a: a1 cc rjmp .-1726 ; 0x7dbe <MotorRegler+0xfaa>
847c: 48 e3 ldi r20, 0x38 ; 56
847e: 5f ef ldi r21, 0xFF ; 255
8480: 5e a7 std Y+46, r21 ; 0x2e
8482: 4d a7 std Y+45, r20 ; 0x2d
8484: 50 93 44 08 sts 0x0844, r21
8488: 40 93 43 08 sts 0x0843, r20
848c: 98 cc rjmp .-1744 ; 0x7dbe <MotorRegler+0xfaa>
848e: 4f ef ldi r20, 0xFF ; 255
8490: 88 33 cpi r24, 0x38 ; 56
8492: 94 07 cpc r25, r20
8494: 0c f0 brlt .+2 ; 0x8498 <MotorRegler+0x1684>
8496: 81 cc rjmp .-1790 ; 0x7d9a <MotorRegler+0xf86>
8498: 88 e3 ldi r24, 0x38 ; 56
849a: 9f ef ldi r25, 0xFF ; 255
849c: 90 93 3a 08 sts 0x083A, r25
84a0: 80 93 39 08 sts 0x0839, r24
84a4: 7a cc rjmp .-1804 ; 0x7d9a <MotorRegler+0xf86>
84a6: 3d a1 ldd r19, Y+37 ; 0x25
84a8: 63 2f mov r22, r19
84aa: 70 e0 ldi r23, 0x00 ; 0
84ac: 80 e0 ldi r24, 0x00 ; 0
84ae: 90 e0 ldi r25, 0x00 ; 0
84b0: 2d 81 ldd r18, Y+5 ; 0x05
84b2: 3e 81 ldd r19, Y+6 ; 0x06
84b4: 4f 81 ldd r20, Y+7 ; 0x07
84b6: 58 85 ldd r21, Y+8 ; 0x08
84b8: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
84bc: 28 ef ldi r18, 0xF8 ; 248
84be: 3a e2 ldi r19, 0x2A ; 42
84c0: 40 e0 ldi r20, 0x00 ; 0
84c2: 50 e0 ldi r21, 0x00 ; 0
84c4: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
84c8: 3d 87 std Y+13, r19 ; 0x0d
84ca: 2c 87 std Y+12, r18 ; 0x0c
84cc: 19 01 movw r2, r18
84ce: 57 cc rjmp .-1874 ; 0x7d7e <MotorRegler+0xf6a>
84d0: fd a1 ldd r31, Y+37 ; 0x25
84d2: 6f 2f mov r22, r31
84d4: 70 e0 ldi r23, 0x00 ; 0
84d6: 80 e0 ldi r24, 0x00 ; 0
84d8: 90 e0 ldi r25, 0x00 ; 0
84da: 29 81 ldd r18, Y+1 ; 0x01
84dc: 3a 81 ldd r19, Y+2 ; 0x02
84de: 4b 81 ldd r20, Y+3 ; 0x03
84e0: 5c 81 ldd r21, Y+4 ; 0x04
84e2: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
84e6: 28 ef ldi r18, 0xF8 ; 248
84e8: 3a e2 ldi r19, 0x2A ; 42
84ea: 40 e0 ldi r20, 0x00 ; 0
84ec: 50 e0 ldi r21, 0x00 ; 0
84ee: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
84f2: 3f 87 std Y+15, r19 ; 0x0f
84f4: 2e 87 std Y+14, r18 ; 0x0e
84f6: 29 01 movw r4, r18
84f8: 3a cc rjmp .-1932 ; 0x7d6e <MotorRegler+0xf5a>
84fa: 80 5b subi r24, 0xB0 ; 176
84fc: 9c 43 sbci r25, 0x3C ; 60
84fe: af 4f sbci r26, 0xFF ; 255
8500: bf 4f sbci r27, 0xFF ; 255
8502: 14 f0 brlt .+4 ; 0x8508 <MotorRegler+0x16f4>
8504: 0c 94 e0 39 jmp 0x73c0 ; 0x73c0 <MotorRegler+0x5ac>
8508: 80 eb ldi r24, 0xB0 ; 176
850a: 9c e3 ldi r25, 0x3C ; 60
850c: af ef ldi r26, 0xFF ; 255
850e: bf ef ldi r27, 0xFF ; 255
8510: 80 93 75 04 sts 0x0475, r24
8514: 90 93 76 04 sts 0x0476, r25
8518: a0 93 77 04 sts 0x0477, r26
851c: b0 93 78 04 sts 0x0478, r27
8520: 0c 94 e0 39 jmp 0x73c0 ; 0x73c0 <MotorRegler+0x5ac>
8524: 50 91 89 04 lds r21, 0x0489
8528: 5e a3 std Y+38, r21 ; 0x26
852a: 60 91 68 08 lds r22, 0x0868
852e: 6d a3 std Y+37, r22 ; 0x25
8530: e0 90 99 04 lds r14, 0x0499
8534: f0 90 9a 04 lds r15, 0x049A
8538: 67 01 movw r12, r14
853a: f7 fc sbrc r15, 7
853c: 02 c0 rjmp .+4 ; 0x8542 <MotorRegler+0x172e>
853e: 0c 94 69 39 jmp 0x72d2 ; 0x72d2 <MotorRegler+0x4be>
8542: cc 24 eor r12, r12
8544: dd 24 eor r13, r13
8546: ce 18 sub r12, r14
8548: df 08 sbc r13, r15
854a: 0c 94 69 39 jmp 0x72d2 ; 0x72d2 <MotorRegler+0x4be>
854e: 40 91 a7 04 lds r20, 0x04A7
8552: 4c a7 std Y+44, r20 ; 0x2c
8554: 44 23 and r20, r20
8556: 09 f4 brne .+2 ; 0x855a <MotorRegler+0x1746>
8558: 5e c0 rjmp .+188 ; 0x8616 <MotorRegler+0x1802>
855a: 10 92 55 04 sts 0x0455, r1
855e: 10 92 56 04 sts 0x0456, r1
8562: 10 92 57 04 sts 0x0457, r1
8566: 10 92 58 04 sts 0x0458, r1
856a: 10 92 59 04 sts 0x0459, r1
856e: 10 92 5a 04 sts 0x045A, r1
8572: 10 92 5b 04 sts 0x045B, r1
8576: 10 92 5c 04 sts 0x045C, r1
857a: 10 92 5b 08 sts 0x085B, r1
857e: 10 92 5c 08 sts 0x085C, r1
8582: 10 92 5d 08 sts 0x085D, r1
8586: 10 92 5e 08 sts 0x085E, r1
858a: 10 92 62 08 sts 0x0862, r1
858e: 10 92 63 08 sts 0x0863, r1
8592: 10 92 64 08 sts 0x0864, r1
8596: 10 92 65 08 sts 0x0865, r1
859a: 10 92 4e 08 sts 0x084E, r1
859e: 10 92 4f 08 sts 0x084F, r1
85a2: 10 92 50 08 sts 0x0850, r1
85a6: 10 92 51 08 sts 0x0851, r1
85aa: 10 92 3e 08 sts 0x083E, r1
85ae: 10 92 3f 08 sts 0x083F, r1
85b2: 10 92 40 08 sts 0x0840, r1
85b6: 10 92 41 08 sts 0x0841, r1
85ba: 80 91 65 04 lds r24, 0x0465
85be: 90 91 66 04 lds r25, 0x0466
85c2: a0 91 67 04 lds r26, 0x0467
85c6: b0 91 68 04 lds r27, 0x0468
85ca: 80 93 69 04 sts 0x0469, r24
85ce: 90 93 6a 04 sts 0x046A, r25
85d2: a0 93 6b 04 sts 0x046B, r26
85d6: b0 93 6c 04 sts 0x046C, r27
85da: 80 91 6d 04 lds r24, 0x046D
85de: 90 91 6e 04 lds r25, 0x046E
85e2: a0 91 6f 04 lds r26, 0x046F
85e6: b0 91 70 04 lds r27, 0x0470
85ea: 80 93 71 04 sts 0x0471, r24
85ee: 90 93 72 04 sts 0x0472, r25
85f2: a0 93 73 04 sts 0x0473, r26
85f6: b0 93 74 04 sts 0x0474, r27
85fa: 10 92 0f 04 sts 0x040F, r1
85fe: 10 92 0e 04 sts 0x040E, r1
8602: 10 92 a5 04 sts 0x04A5, r1
8606: 10 92 a4 04 sts 0x04A4, r1
860a: 10 92 a3 04 sts 0x04A3, r1
860e: 10 92 a2 04 sts 0x04A2, r1
8612: 0c 94 d2 38 jmp 0x71a4 ; 0x71a4 <MotorRegler+0x390>
8616: 80 91 85 07 lds r24, 0x0785
861a: 90 91 86 07 lds r25, 0x0786
861e: 81 50 subi r24, 0x01 ; 1
8620: 92 40 sbci r25, 0x02 ; 2
8622: 14 f4 brge .+4 ; 0x8628 <MotorRegler+0x1814>
8624: 0c 94 d2 38 jmp 0x71a4 ; 0x71a4 <MotorRegler+0x390>
8628: 80 91 e8 08 lds r24, 0x08E8
862c: 8f 3f cpi r24, 0xFF ; 255
862e: 11 f4 brne .+4 ; 0x8634 <MotorRegler+0x1820>
8630: 0c 94 15 4b jmp 0x962a ; 0x962a <MotorRegler+0x2816>
8634: e0 90 eb 07 lds r14, 0x07EB
8638: ff 24 eor r15, r15
863a: 00 e0 ldi r16, 0x00 ; 0
863c: 10 e0 ldi r17, 0x00 ; 0
863e: a8 2e mov r10, r24
8640: bb 24 eor r11, r11
8642: a7 fc sbrc r10, 7
8644: b0 94 com r11
8646: cb 2c mov r12, r11
8648: db 2c mov r13, r11
864a: 69 81 ldd r22, Y+1 ; 0x01
864c: 7a 81 ldd r23, Y+2 ; 0x02
864e: 8b 81 ldd r24, Y+3 ; 0x03
8650: 9c 81 ldd r25, Y+4 ; 0x04
8652: a8 01 movw r20, r16
8654: 97 01 movw r18, r14
8656: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
865a: 80 91 72 08 lds r24, 0x0872
865e: 90 91 73 08 lds r25, 0x0873
8662: aa 27 eor r26, r26
8664: 97 fd sbrc r25, 7
8666: a0 95 com r26
8668: ba 2f mov r27, r26
866a: 28 1b sub r18, r24
866c: 39 0b sbc r19, r25
866e: 4a 0b sbc r20, r26
8670: 5b 0b sbc r21, r27
8672: ca 01 movw r24, r20
8674: b9 01 movw r22, r18
8676: a6 01 movw r20, r12
8678: 95 01 movw r18, r10
867a: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
867e: 20 e0 ldi r18, 0x00 ; 0
8680: 32 e0 ldi r19, 0x02 ; 2
8682: 40 e0 ldi r20, 0x00 ; 0
8684: 50 e0 ldi r21, 0x00 ; 0
8686: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
868a: 39 01 movw r6, r18
868c: 4a 01 movw r8, r20
868e: 6d 81 ldd r22, Y+5 ; 0x05
8690: 7e 81 ldd r23, Y+6 ; 0x06
8692: 8f 81 ldd r24, Y+7 ; 0x07
8694: 98 85 ldd r25, Y+8 ; 0x08
8696: a8 01 movw r20, r16
8698: 97 01 movw r18, r14
869a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
869e: 80 91 82 08 lds r24, 0x0882
86a2: 90 91 83 08 lds r25, 0x0883
86a6: aa 27 eor r26, r26
86a8: 97 fd sbrc r25, 7
86aa: a0 95 com r26
86ac: ba 2f mov r27, r26
86ae: 28 1b sub r18, r24
86b0: 39 0b sbc r19, r25
86b2: 4a 0b sbc r20, r26
86b4: 5b 0b sbc r21, r27
86b6: ca 01 movw r24, r20
86b8: b9 01 movw r22, r18
86ba: a6 01 movw r20, r12
86bc: 95 01 movw r18, r10
86be: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
86c2: 20 e0 ldi r18, 0x00 ; 0
86c4: 32 e0 ldi r19, 0x02 ; 2
86c6: 40 e0 ldi r20, 0x00 ; 0
86c8: 50 e0 ldi r21, 0x00 ; 0
86ca: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
86ce: 59 01 movw r10, r18
86d0: 6a 01 movw r12, r20
86d2: 80 91 ba 04 lds r24, 0x04BA
86d6: 90 91 bb 04 lds r25, 0x04BB
86da: 81 34 cpi r24, 0x41 ; 65
86dc: 91 05 cpc r25, r1
86de: 0c f0 brlt .+2 ; 0x86e2 <MotorRegler+0x18ce>
86e0: cb c5 rjmp .+2966 ; 0x9278 <MotorRegler+0x2464>
86e2: 80 91 bc 04 lds r24, 0x04BC
86e6: 90 91 bd 04 lds r25, 0x04BD
86ea: 81 34 cpi r24, 0x41 ; 65
86ec: 91 05 cpc r25, r1
86ee: 0c f0 brlt .+2 ; 0x86f2 <MotorRegler+0x18de>
86f0: c3 c5 rjmp .+2950 ; 0x9278 <MotorRegler+0x2464>
86f2: e0 91 da 07 lds r30, 0x07DA
86f6: f0 e0 ldi r31, 0x00 ; 0
86f8: ee 0f add r30, r30
86fa: ff 1f adc r31, r31
86fc: eb 55 subi r30, 0x5B ; 91
86fe: f8 4f sbci r31, 0xF8 ; 248
8700: 01 90 ld r0, Z+
8702: f0 81 ld r31, Z
8704: e0 2d mov r30, r0
8706: f7 ff sbrs r31, 7
8708: 02 c0 rjmp .+4 ; 0x870e <MotorRegler+0x18fa>
870a: 0c 94 94 4c jmp 0x9928 ; 0x9928 <MotorRegler+0x2b14>
870e: 7a 97 sbiw r30, 0x1a ; 26
8710: a4 f0 brlt .+40 ; 0x873a <MotorRegler+0x1926>
8712: c4 01 movw r24, r8
8714: b3 01 movw r22, r6
8716: 23 e0 ldi r18, 0x03 ; 3
8718: 30 e0 ldi r19, 0x00 ; 0
871a: 40 e0 ldi r20, 0x00 ; 0
871c: 50 e0 ldi r21, 0x00 ; 0
871e: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8722: 39 01 movw r6, r18
8724: 4a 01 movw r8, r20
8726: c6 01 movw r24, r12
8728: b5 01 movw r22, r10
872a: 23 e0 ldi r18, 0x03 ; 3
872c: 30 e0 ldi r19, 0x00 ; 0
872e: 40 e0 ldi r20, 0x00 ; 0
8730: 50 e0 ldi r21, 0x00 ; 0
8732: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8736: 59 01 movw r10, r18
8738: 6a 01 movw r12, r20
873a: 80 91 ea 08 lds r24, 0x08EA
873e: e8 2e mov r14, r24
8740: ff 24 eor r15, r15
8742: e7 fc sbrc r14, 7
8744: f0 94 com r15
8746: 0f 2d mov r16, r15
8748: 1f 2d mov r17, r15
874a: a4 01 movw r20, r8
874c: 93 01 movw r18, r6
874e: e6 14 cp r14, r6
8750: f7 04 cpc r15, r7
8752: 08 05 cpc r16, r8
8754: 19 05 cpc r17, r9
8756: 14 f4 brge .+4 ; 0x875c <MotorRegler+0x1948>
8758: a8 01 movw r20, r16
875a: 97 01 movw r18, r14
875c: 99 27 eor r25, r25
875e: 87 fd sbrc r24, 7
8760: 90 95 com r25
8762: 90 95 com r25
8764: 81 95 neg r24
8766: 9f 4f sbci r25, 0xFF ; 255
8768: aa 27 eor r26, r26
876a: 97 fd sbrc r25, 7
876c: a0 95 com r26
876e: ba 2f mov r27, r26
8770: 39 01 movw r6, r18
8772: 4a 01 movw r8, r20
8774: 28 17 cp r18, r24
8776: 39 07 cpc r19, r25
8778: 4a 07 cpc r20, r26
877a: 5b 07 cpc r21, r27
877c: 14 f4 brge .+4 ; 0x8782 <MotorRegler+0x196e>
877e: 3c 01 movw r6, r24
8780: 4d 01 movw r8, r26
8782: ea 14 cp r14, r10
8784: fb 04 cpc r15, r11
8786: 0c 05 cpc r16, r12
8788: 1d 05 cpc r17, r13
878a: 14 f4 brge .+4 ; 0x8790 <MotorRegler+0x197c>
878c: 57 01 movw r10, r14
878e: 68 01 movw r12, r16
8790: a8 16 cp r10, r24
8792: b9 06 cpc r11, r25
8794: ca 06 cpc r12, r26
8796: db 06 cpc r13, r27
8798: 14 f4 brge .+4 ; 0x879e <MotorRegler+0x198a>
879a: 5c 01 movw r10, r24
879c: 6d 01 movw r12, r26
879e: 80 91 65 04 lds r24, 0x0465
87a2: 90 91 66 04 lds r25, 0x0466
87a6: a0 91 67 04 lds r26, 0x0467
87aa: b0 91 68 04 lds r27, 0x0468
87ae: 86 19 sub r24, r6
87b0: 97 09 sbc r25, r7
87b2: a8 09 sbc r26, r8
87b4: b9 09 sbc r27, r9
87b6: 80 93 65 04 sts 0x0465, r24
87ba: 90 93 66 04 sts 0x0466, r25
87be: a0 93 67 04 sts 0x0467, r26
87c2: b0 93 68 04 sts 0x0468, r27
87c6: 80 91 6d 04 lds r24, 0x046D
87ca: 90 91 6e 04 lds r25, 0x046E
87ce: a0 91 6f 04 lds r26, 0x046F
87d2: b0 91 70 04 lds r27, 0x0470
87d6: 8a 19 sub r24, r10
87d8: 9b 09 sbc r25, r11
87da: ac 09 sbc r26, r12
87dc: bd 09 sbc r27, r13
87de: 80 93 6d 04 sts 0x046D, r24
87e2: 90 93 6e 04 sts 0x046E, r25
87e6: a0 93 6f 04 sts 0x046F, r26
87ea: b0 93 70 04 sts 0x0470, r27
87ee: 0c 94 d2 38 jmp 0x71a4 ; 0x71a4 <MotorRegler+0x390>
87f2: 88 e1 ldi r24, 0x18 ; 24
87f4: 80 93 dc 04 sts 0x04DC, r24
87f8: e0 90 eb 07 lds r14, 0x07EB
87fc: ff 24 eor r15, r15
87fe: ee 0c add r14, r14
8800: ff 1c adc r15, r15
8802: ee 0c add r14, r14
8804: ff 1c adc r15, r15
8806: 00 27 eor r16, r16
8808: f7 fc sbrc r15, 7
880a: 00 95 com r16
880c: 10 2f mov r17, r16
880e: 69 81 ldd r22, Y+1 ; 0x01
8810: 7a 81 ldd r23, Y+2 ; 0x02
8812: 8b 81 ldd r24, Y+3 ; 0x03
8814: 9c 81 ldd r25, Y+4 ; 0x04
8816: a8 01 movw r20, r16
8818: 97 01 movw r18, r14
881a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
881e: 30 93 42 07 sts 0x0742, r19
8822: 20 93 41 07 sts 0x0741, r18
8826: 6d 81 ldd r22, Y+5 ; 0x05
8828: 7e 81 ldd r23, Y+6 ; 0x06
882a: 8f 81 ldd r24, Y+7 ; 0x07
882c: 98 85 ldd r25, Y+8 ; 0x08
882e: a8 01 movw r20, r16
8830: 97 01 movw r18, r14
8832: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8836: 30 93 44 07 sts 0x0744, r19
883a: 20 93 43 07 sts 0x0743, r18
883e: 80 91 72 08 lds r24, 0x0872
8842: 90 91 73 08 lds r25, 0x0873
8846: 97 fd sbrc r25, 7
8848: 67 c5 rjmp .+2766 ; 0x9318 <MotorRegler+0x2504>
884a: 95 95 asr r25
884c: 87 95 ror r24
884e: 95 95 asr r25
8850: 87 95 ror r24
8852: 90 93 46 07 sts 0x0746, r25
8856: 80 93 45 07 sts 0x0745, r24
885a: 80 91 82 08 lds r24, 0x0882
885e: 90 91 83 08 lds r25, 0x0883
8862: 97 fd sbrc r25, 7
8864: 57 c5 rjmp .+2734 ; 0x9314 <MotorRegler+0x2500>
8866: 95 95 asr r25
8868: 87 95 ror r24
886a: 95 95 asr r25
886c: 87 95 ror r24
886e: 90 93 48 07 sts 0x0748, r25
8872: 80 93 47 07 sts 0x0747, r24
8876: 90 92 4a 07 sts 0x074A, r9
887a: 80 92 49 07 sts 0x0749, r8
887e: 20 91 9e 04 lds r18, 0x049E
8882: 30 91 9f 04 lds r19, 0x049F
8886: 30 93 4c 07 sts 0x074C, r19
888a: 20 93 4b 07 sts 0x074B, r18
888e: 60 91 7d 04 lds r22, 0x047D
8892: 70 91 7e 04 lds r23, 0x047E
8896: 80 91 7f 04 lds r24, 0x047F
889a: 90 91 80 04 lds r25, 0x0480
889e: 20 e0 ldi r18, 0x00 ; 0
88a0: 32 e0 ldi r19, 0x02 ; 2
88a2: 40 e0 ldi r20, 0x00 ; 0
88a4: 50 e0 ldi r21, 0x00 ; 0
88a6: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
88aa: 30 93 4e 07 sts 0x074E, r19
88ae: 20 93 4d 07 sts 0x074D, r18
88b2: 30 92 52 07 sts 0x0752, r3
88b6: 20 92 51 07 sts 0x0751, r2
88ba: 80 91 0e 03 lds r24, 0x030E
88be: 90 91 0f 03 lds r25, 0x030F
88c2: 90 93 54 07 sts 0x0754, r25
88c6: 80 93 53 07 sts 0x0753, r24
88ca: 60 91 7e 08 lds r22, 0x087E
88ce: 70 91 7f 08 lds r23, 0x087F
88d2: 80 91 80 08 lds r24, 0x0880
88d6: 90 91 81 08 lds r25, 0x0881
88da: 20 91 b3 03 lds r18, 0x03B3
88de: 30 91 b4 03 lds r19, 0x03B4
88e2: 40 91 b5 03 lds r20, 0x03B5
88e6: 50 91 b6 03 lds r21, 0x03B6
88ea: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
88ee: 30 93 58 07 sts 0x0758, r19
88f2: 20 93 57 07 sts 0x0757, r18
88f6: 80 91 94 04 lds r24, 0x0494
88fa: 90 e0 ldi r25, 0x00 ; 0
88fc: 90 93 56 07 sts 0x0756, r25
8900: 80 93 55 07 sts 0x0755, r24
8904: 80 91 9a 06 lds r24, 0x069A
8908: 90 e0 ldi r25, 0x00 ; 0
890a: 90 93 68 07 sts 0x0768, r25
890e: 80 93 67 07 sts 0x0767, r24
8912: 80 91 e9 03 lds r24, 0x03E9
8916: 90 91 ea 03 lds r25, 0x03EA
891a: 90 93 6a 07 sts 0x076A, r25
891e: 80 93 69 07 sts 0x0769, r24
8922: 80 91 e9 08 lds r24, 0x08E9
8926: 99 27 eor r25, r25
8928: 87 fd sbrc r24, 7
892a: 90 95 com r25
892c: 90 93 78 07 sts 0x0778, r25
8930: 80 93 77 07 sts 0x0777, r24
8934: 80 91 20 05 lds r24, 0x0520
8938: 90 91 21 05 lds r25, 0x0521
893c: 90 93 7e 07 sts 0x077E, r25
8940: 80 93 7d 07 sts 0x077D, r24
8944: 80 91 22 05 lds r24, 0x0522
8948: 90 91 23 05 lds r25, 0x0523
894c: 90 93 80 07 sts 0x0780, r25
8950: 80 93 7f 07 sts 0x077F, r24
8954: f1 c9 rjmp .-3102 ; 0x7d38 <MotorRegler+0xf24>
8956: 41 50 subi r20, 0x01 ; 1
8958: 50 40 sbci r21, 0x00 ; 0
895a: 50 93 bd 04 sts 0x04BD, r21
895e: 40 93 bc 04 sts 0x04BC, r20
8962: 1a c9 rjmp .-3532 ; 0x7b98 <MotorRegler+0xd84>
8964: 41 50 subi r20, 0x01 ; 1
8966: 50 40 sbci r21, 0x00 ; 0
8968: 50 93 bb 04 sts 0x04BB, r21
896c: 40 93 ba 04 sts 0x04BA, r20
8970: e5 c8 rjmp .-3638 ; 0x7b3c <MotorRegler+0xd28>
8972: 80 91 a2 03 lds r24, 0x03A2
8976: 20 91 b1 03 lds r18, 0x03B1
897a: 30 91 b2 03 lds r19, 0x03B2
897e: 28 0f add r18, r24
8980: 31 1d adc r19, r1
8982: 80 91 e4 07 lds r24, 0x07E4
8986: 90 e0 ldi r25, 0x00 ; 0
8988: fc 01 movw r30, r24
898a: 2e 9f mul r18, r30
898c: c0 01 movw r24, r0
898e: 2f 9f mul r18, r31
8990: 90 0d add r25, r0
8992: 3e 9f mul r19, r30
8994: 90 0d add r25, r0
8996: 11 24 eor r1, r1
8998: 44 97 sbiw r24, 0x14 ; 20
899a: 90 93 a1 04 sts 0x04A1, r25
899e: 80 93 a0 04 sts 0x04A0, r24
89a2: 81 e0 ldi r24, 0x01 ; 1
89a4: 80 93 88 04 sts 0x0488, r24
89a8: 20 91 9e 04 lds r18, 0x049E
89ac: 30 91 9f 04 lds r19, 0x049F
89b0: ff a1 ldd r31, Y+39 ; 0x27
89b2: ff 23 and r31, r31
89b4: 21 f0 breq .+8 ; 0x89be <MotorRegler+0x1baa>
89b6: 10 92 a1 04 sts 0x04A1, r1
89ba: 10 92 a0 04 sts 0x04A0, r1
89be: 40 91 a0 04 lds r20, 0x04A0
89c2: 50 91 a1 04 lds r21, 0x04A1
89c6: 42 17 cp r20, r18
89c8: 53 07 cpc r21, r19
89ca: 0c f0 brlt .+2 ; 0x89ce <MotorRegler+0x1bba>
89cc: 0e cb rjmp .-2532 ; 0x7fea <MotorRegler+0x11d6>
89ce: 80 91 88 04 lds r24, 0x0488
89d2: 88 23 and r24, r24
89d4: 09 f4 brne .+2 ; 0x89d8 <MotorRegler+0x1bc4>
89d6: 09 cb rjmp .-2542 ; 0x7fea <MotorRegler+0x11d6>
89d8: 80 91 a3 03 lds r24, 0x03A3
89dc: 90 e0 ldi r25, 0x00 ; 0
89de: 24 1b sub r18, r20
89e0: 35 0b sbc r19, r21
89e2: ac 01 movw r20, r24
89e4: 42 9f mul r20, r18
89e6: c0 01 movw r24, r0
89e8: 43 9f mul r20, r19
89ea: 90 0d add r25, r0
89ec: 52 9f mul r21, r18
89ee: 90 0d add r25, r0
89f0: 11 24 eor r1, r1
89f2: 97 fd sbrc r25, 7
89f4: db c6 rjmp .+3510 ; 0x97ac <MotorRegler+0x2998>
89f6: 5c 01 movw r10, r24
89f8: b5 94 asr r11
89fa: a7 94 ror r10
89fc: b5 94 asr r11
89fe: a7 94 ror r10
8a00: c0 90 0c 04 lds r12, 0x040C
8a04: d0 90 0d 04 lds r13, 0x040D
8a08: 60 91 7d 04 lds r22, 0x047D
8a0c: 70 91 7e 04 lds r23, 0x047E
8a10: 80 91 7f 04 lds r24, 0x047F
8a14: 90 91 80 04 lds r25, 0x0480
8a18: e0 90 a4 03 lds r14, 0x03A4
8a1c: ff 24 eor r15, r15
8a1e: 00 e0 ldi r16, 0x00 ; 0
8a20: 10 e0 ldi r17, 0x00 ; 0
8a22: 20 e8 ldi r18, 0x80 ; 128
8a24: 30 e0 ldi r19, 0x00 ; 0
8a26: 40 e0 ldi r20, 0x00 ; 0
8a28: 50 e0 ldi r21, 0x00 ; 0
8a2a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8a2e: c8 01 movw r24, r16
8a30: b7 01 movw r22, r14
8a32: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
8a36: 20 e2 ldi r18, 0x20 ; 32
8a38: 30 e0 ldi r19, 0x00 ; 0
8a3a: 40 e0 ldi r20, 0x00 ; 0
8a3c: 50 e0 ldi r21, 0x00 ; 0
8a3e: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8a42: a9 01 movw r20, r18
8a44: 28 5e subi r18, 0xE8 ; 232
8a46: 3e 4f sbci r19, 0xFE ; 254
8a48: 14 f4 brge .+4 ; 0x8a4e <MotorRegler+0x1c3a>
8a4a: 48 ee ldi r20, 0xE8 ; 232
8a4c: 5e ef ldi r21, 0xFE ; 254
8a4e: 20 91 e5 04 lds r18, 0x04E5
8a52: 30 91 e6 04 lds r19, 0x04E6
8a56: c9 01 movw r24, r18
8a58: 88 0f add r24, r24
8a5a: 99 1f adc r25, r25
8a5c: 82 0f add r24, r18
8a5e: 93 1f adc r25, r19
8a60: bc 01 movw r22, r24
8a62: 66 0f add r22, r22
8a64: 77 1f adc r23, r23
8a66: 66 0f add r22, r22
8a68: 77 1f adc r23, r23
8a6a: 68 0f add r22, r24
8a6c: 79 1f adc r23, r25
8a6e: 96 01 movw r18, r12
8a70: d7 fc sbrc r13, 7
8a72: a1 c6 rjmp .+3394 ; 0x97b6 <MotorRegler+0x29a2>
8a74: 35 95 asr r19
8a76: 27 95 ror r18
8a78: cb 01 movw r24, r22
8a7a: 82 1b sub r24, r18
8a7c: 93 0b sbc r25, r19
8a7e: 9a 01 movw r18, r20
8a80: 49 51 subi r20, 0x19 ; 25
8a82: 51 40 sbci r21, 0x01 ; 1
8a84: 14 f0 brlt .+4 ; 0x8a8a <MotorRegler+0x1c76>
8a86: 28 e1 ldi r18, 0x18 ; 24
8a88: 31 e0 ldi r19, 0x01 ; 1
8a8a: 82 1b sub r24, r18
8a8c: 93 0b sbc r25, r19
8a8e: 9c 01 movw r18, r24
8a90: 8d a5 ldd r24, Y+45 ; 0x2d
8a92: 9e a5 ldd r25, Y+46 ; 0x2e
8a94: 8a 19 sub r24, r10
8a96: 9b 09 sbc r25, r11
8a98: 28 0f add r18, r24
8a9a: 39 1f adc r19, r25
8a9c: 37 fd sbrc r19, 7
8a9e: 88 c6 rjmp .+3344 ; 0x97b0 <MotorRegler+0x299c>
8aa0: 35 95 asr r19
8aa2: 27 95 ror r18
8aa4: 35 95 asr r19
8aa6: 27 95 ror r18
8aa8: 35 95 asr r19
8aaa: 27 95 ror r18
8aac: 35 95 asr r19
8aae: 27 95 ror r18
8ab0: 30 93 e6 04 sts 0x04E6, r19
8ab4: 20 93 e5 04 sts 0x04E5, r18
8ab8: 80 91 e0 07 lds r24, 0x07E0
8abc: 68 2f mov r22, r24
8abe: 70 e0 ldi r23, 0x00 ; 0
8ac0: 66 0f add r22, r22
8ac2: 77 1f adc r23, r23
8ac4: 66 0f add r22, r22
8ac6: 77 1f adc r23, r23
8ac8: 26 17 cp r18, r22
8aca: 37 07 cpc r19, r23
8acc: 0c f0 brlt .+2 ; 0x8ad0 <MotorRegler+0x1cbc>
8ace: 7e ca rjmp .-2820 ; 0x7fcc <MotorRegler+0x11b8>
8ad0: 8d a5 ldd r24, Y+45 ; 0x2d
8ad2: 9e a5 ldd r25, Y+46 ; 0x2e
8ad4: 86 17 cp r24, r22
8ad6: 97 07 cpc r25, r23
8ad8: 0c f4 brge .+2 ; 0x8adc <MotorRegler+0x1cc8>
8ada: 9f c5 rjmp .+2878 ; 0x961a <MotorRegler+0x2806>
8adc: 70 93 e6 04 sts 0x04E6, r23
8ae0: 60 93 e5 04 sts 0x04E5, r22
8ae4: 7c ca rjmp .-2824 ; 0x7fde <MotorRegler+0x11ca>
8ae6: 10 92 9d 04 sts 0x049D, r1
8aea: 0c 94 9e 37 jmp 0x6f3c ; 0x6f3c <MotorRegler+0x128>
8aee: 6d 5f subi r22, 0xFD ; 253
8af0: 7f 4f sbci r23, 0xFF ; 255
8af2: 0c 94 9f 39 jmp 0x733e ; 0x733e <MotorRegler+0x52a>
8af6: 6f 5f subi r22, 0xFF ; 255
8af8: 7f 4f sbci r23, 0xFF ; 255
8afa: 1c cb rjmp .-2504 ; 0x8134 <MotorRegler+0x1320>
8afc: 66 27 eor r22, r22
8afe: 77 27 eor r23, r23
8b00: 6a 19 sub r22, r10
8b02: 7b 09 sbc r23, r11
8b04: 15 cb rjmp .-2518 ; 0x8130 <MotorRegler+0x131c>
8b06: 03 96 adiw r24, 0x03 ; 3
8b08: c0 cb rjmp .-2176 ; 0x828a <MotorRegler+0x1476>
8b0a: 03 96 adiw r24, 0x03 ; 3
8b0c: 9f cb rjmp .-2242 ; 0x824c <MotorRegler+0x1438>
8b0e: 03 96 adiw r24, 0x03 ; 3
8b10: f3 cb rjmp .-2074 ; 0x82f8 <MotorRegler+0x14e4>
8b12: 03 96 adiw r24, 0x03 ; 3
8b14: d6 cb rjmp .-2132 ; 0x82c2 <MotorRegler+0x14ae>
8b16: 10 92 a6 04 sts 0x04A6, r1
8b1a: 0c 94 b0 37 jmp 0x6f60 ; 0x6f60 <MotorRegler+0x14c>
8b1e: 10 92 a7 04 sts 0x04A7, r1
8b22: d7 c8 rjmp .-3666 ; 0x7cd2 <MotorRegler+0xebe>
8b24: 81 e0 ldi r24, 0x01 ; 1
8b26: 80 93 aa 04 sts 0x04AA, r24
8b2a: c7 c8 rjmp .-3698 ; 0x7cba <MotorRegler+0xea6>
8b2c: a1 e0 ldi r26, 0x01 ; 1
8b2e: a0 93 ab 04 sts 0x04AB, r26
8b32: a2 c8 rjmp .-3772 ; 0x7c78 <MotorRegler+0xe64>
8b34: 81 e0 ldi r24, 0x01 ; 1
8b36: 80 93 a9 04 sts 0x04A9, r24
8b3a: 7f c8 rjmp .-3842 ; 0x7c3a <MotorRegler+0xe26>
8b3c: 81 e0 ldi r24, 0x01 ; 1
8b3e: 80 93 a8 04 sts 0x04A8, r24
8b42: 56 c8 rjmp .-3924 ; 0x7bf0 <MotorRegler+0xddc>
8b44: 84 e6 ldi r24, 0x64 ; 100
8b46: 90 e0 ldi r25, 0x00 ; 0
8b48: 90 93 bd 04 sts 0x04BD, r25
8b4c: 80 93 bc 04 sts 0x04BC, r24
8b50: 23 c8 rjmp .-4026 ; 0x7b98 <MotorRegler+0xd84>
8b52: 84 e6 ldi r24, 0x64 ; 100
8b54: 90 e0 ldi r25, 0x00 ; 0
8b56: 90 93 bb 04 sts 0x04BB, r25
8b5a: 80 93 ba 04 sts 0x04BA, r24
8b5e: 0c 94 9e 3d jmp 0x7b3c ; 0x7b3c <MotorRegler+0xd28>
8b62: 80 91 9f 06 lds r24, 0x069F
8b66: 99 27 eor r25, r25
8b68: 87 fd sbrc r24, 7
8b6a: 90 95 com r25
8b6c: ac 01 movw r20, r24
8b6e: 48 9d mul r20, r8
8b70: c0 01 movw r24, r0
8b72: 49 9d mul r20, r9
8b74: 90 0d add r25, r0
8b76: 58 9d mul r21, r8
8b78: 90 0d add r25, r0
8b7a: 11 24 eor r1, r1
8b7c: c8 0e add r12, r24
8b7e: d9 1e adc r13, r25
8b80: d0 92 96 04 sts 0x0496, r13
8b84: c0 92 95 04 sts 0x0495, r12
8b88: 80 91 a0 06 lds r24, 0x06A0
8b8c: 99 27 eor r25, r25
8b8e: 87 fd sbrc r24, 7
8b90: 90 95 com r25
8b92: bc 01 movw r22, r24
8b94: 68 9d mul r22, r8
8b96: c0 01 movw r24, r0
8b98: 69 9d mul r22, r9
8b9a: 90 0d add r25, r0
8b9c: 78 9d mul r23, r8
8b9e: 90 0d add r25, r0
8ba0: 11 24 eor r1, r1
8ba2: 08 0f add r16, r24
8ba4: 19 1f adc r17, r25
8ba6: 10 93 98 04 sts 0x0498, r17
8baa: 00 93 97 04 sts 0x0497, r16
8bae: 20 91 a1 06 lds r18, 0x06A1
8bb2: 33 27 eor r19, r19
8bb4: 27 fd sbrc r18, 7
8bb6: 30 95 com r19
8bb8: 80 91 99 04 lds r24, 0x0499
8bbc: 90 91 9a 04 lds r25, 0x049A
8bc0: 82 0f add r24, r18
8bc2: 93 1f adc r25, r19
8bc4: 90 93 9a 04 sts 0x049A, r25
8bc8: 80 93 99 04 sts 0x0499, r24
8bcc: 20 91 e4 07 lds r18, 0x07E4
8bd0: 30 e0 ldi r19, 0x00 ; 0
8bd2: 80 91 a3 06 lds r24, 0x06A3
8bd6: 99 27 eor r25, r25
8bd8: 87 fd sbrc r24, 7
8bda: 90 95 com r25
8bdc: dc 01 movw r26, r24
8bde: 2a 9f mul r18, r26
8be0: c0 01 movw r24, r0
8be2: 2b 9f mul r18, r27
8be4: 90 0d add r25, r0
8be6: 3a 9f mul r19, r26
8be8: 90 0d add r25, r0
8bea: 11 24 eor r1, r1
8bec: 90 93 b2 03 sts 0x03B2, r25
8bf0: 80 93 b1 03 sts 0x03B1, r24
8bf4: 80 91 a2 06 lds r24, 0x06A2
8bf8: 90 e0 ldi r25, 0x00 ; 0
8bfa: 86 15 cp r24, r6
8bfc: 97 05 cpc r25, r7
8bfe: 14 f0 brlt .+4 ; 0x8c04 <MotorRegler+0x1df0>
8c00: 0c 94 61 3d jmp 0x7ac2 ; 0x7ac2 <MotorRegler+0xcae>
8c04: 90 93 9c 04 sts 0x049C, r25
8c08: 80 93 9b 04 sts 0x049B, r24
8c0c: 0c 94 61 3d jmp 0x7ac2 ; 0x7ac2 <MotorRegler+0xcae>
8c10: 10 92 9a 04 sts 0x049A, r1
8c14: 10 92 99 04 sts 0x0499, r1
8c18: 0c 94 2f 3d jmp 0x7a5e ; 0x7a5e <MotorRegler+0xc4a>
8c1c: f0 91 89 04 lds r31, 0x0489
8c20: fe a3 std Y+38, r31 ; 0x26
8c22: ff 23 and r31, r31
8c24: 11 f0 breq .+4 ; 0x8c2a <MotorRegler+0x1e16>
8c26: 0c 94 e4 38 jmp 0x71c8 ; 0x71c8 <MotorRegler+0x3b4>
8c2a: 20 91 07 08 lds r18, 0x0807
8c2e: 2c 8f std Y+28, r18 ; 0x1c
8c30: 22 23 and r18, r18
8c32: 11 f4 brne .+4 ; 0x8c38 <MotorRegler+0x1e24>
8c34: 0c 94 e4 38 jmp 0x71c8 ; 0x71c8 <MotorRegler+0x3b4>
8c38: 40 91 5b 08 lds r20, 0x085B
8c3c: 50 91 5c 08 lds r21, 0x085C
8c40: 60 91 5d 08 lds r22, 0x085D
8c44: 70 91 5e 08 lds r23, 0x085E
8c48: cb 01 movw r24, r22
8c4a: ba 01 movw r22, r20
8c4c: 20 e0 ldi r18, 0x00 ; 0
8c4e: 31 e0 ldi r19, 0x01 ; 1
8c50: 40 e0 ldi r20, 0x00 ; 0
8c52: 50 e0 ldi r21, 0x00 ; 0
8c54: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8c58: 28 a7 std Y+40, r18 ; 0x28
8c5a: 39 a7 std Y+41, r19 ; 0x29
8c5c: 4a a7 std Y+42, r20 ; 0x2a
8c5e: 5b a7 std Y+43, r21 ; 0x2b
8c60: 20 93 5b 08 sts 0x085B, r18
8c64: 30 93 5c 08 sts 0x085C, r19
8c68: 40 93 5d 08 sts 0x085D, r20
8c6c: 50 93 5e 08 sts 0x085E, r21
8c70: 20 90 62 08 lds r2, 0x0862
8c74: 30 90 63 08 lds r3, 0x0863
8c78: 40 90 64 08 lds r4, 0x0864
8c7c: 50 90 65 08 lds r5, 0x0865
8c80: c2 01 movw r24, r4
8c82: b1 01 movw r22, r2
8c84: 20 e0 ldi r18, 0x00 ; 0
8c86: 31 e0 ldi r19, 0x01 ; 1
8c88: 40 e0 ldi r20, 0x00 ; 0
8c8a: 50 e0 ldi r21, 0x00 ; 0
8c8c: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8c90: 19 01 movw r2, r18
8c92: 2a 01 movw r4, r20
8c94: 20 93 62 08 sts 0x0862, r18
8c98: 30 93 63 08 sts 0x0863, r19
8c9c: 40 93 64 08 sts 0x0864, r20
8ca0: 50 93 65 08 sts 0x0865, r21
8ca4: e0 90 eb 07 lds r14, 0x07EB
8ca8: ff 24 eor r15, r15
8caa: 00 e0 ldi r16, 0x00 ; 0
8cac: 10 e0 ldi r17, 0x00 ; 0
8cae: 20 91 55 04 lds r18, 0x0455
8cb2: 30 91 56 04 lds r19, 0x0456
8cb6: 40 91 57 04 lds r20, 0x0457
8cba: 50 91 58 04 lds r21, 0x0458
8cbe: c8 01 movw r24, r16
8cc0: b7 01 movw r22, r14
8cc2: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
8cc6: 20 e0 ldi r18, 0x00 ; 0
8cc8: 31 e0 ldi r19, 0x01 ; 1
8cca: 40 e0 ldi r20, 0x00 ; 0
8ccc: 50 e0 ldi r21, 0x00 ; 0
8cce: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8cd2: 59 01 movw r10, r18
8cd4: 6a 01 movw r12, r20
8cd6: 20 93 55 04 sts 0x0455, r18
8cda: 30 93 56 04 sts 0x0456, r19
8cde: 40 93 57 04 sts 0x0457, r20
8ce2: 50 93 58 04 sts 0x0458, r21
8ce6: 20 91 59 04 lds r18, 0x0459
8cea: 30 91 5a 04 lds r19, 0x045A
8cee: 40 91 5b 04 lds r20, 0x045B
8cf2: 50 91 5c 04 lds r21, 0x045C
8cf6: c8 01 movw r24, r16
8cf8: b7 01 movw r22, r14
8cfa: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
8cfe: 20 e0 ldi r18, 0x00 ; 0
8d00: 31 e0 ldi r19, 0x01 ; 1
8d02: 40 e0 ldi r20, 0x00 ; 0
8d04: 50 e0 ldi r21, 0x00 ; 0
8d06: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8d0a: 39 01 movw r6, r18
8d0c: 4a 01 movw r8, r20
8d0e: 20 93 59 04 sts 0x0459, r18
8d12: 30 93 5a 04 sts 0x045A, r19
8d16: 40 93 5b 04 sts 0x045B, r20
8d1a: 50 93 5c 04 sts 0x045C, r21
8d1e: 60 91 5d 04 lds r22, 0x045D
8d22: 70 91 5e 04 lds r23, 0x045E
8d26: 80 91 5f 04 lds r24, 0x045F
8d2a: 90 91 60 04 lds r25, 0x0460
8d2e: 20 e0 ldi r18, 0x00 ; 0
8d30: 31 e0 ldi r19, 0x01 ; 1
8d32: 40 e0 ldi r20, 0x00 ; 0
8d34: 50 e0 ldi r21, 0x00 ; 0
8d36: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8d3a: 20 93 5d 04 sts 0x045D, r18
8d3e: 30 93 5e 04 sts 0x045E, r19
8d42: 40 93 5f 04 sts 0x045F, r20
8d46: 50 93 60 04 sts 0x0460, r21
8d4a: e0 90 06 08 lds r14, 0x0806
8d4e: ff 24 eor r15, r15
8d50: 00 e0 ldi r16, 0x00 ; 0
8d52: 10 e0 ldi r17, 0x00 ; 0
8d54: 68 a5 ldd r22, Y+40 ; 0x28
8d56: 79 a5 ldd r23, Y+41 ; 0x29
8d58: 8a a5 ldd r24, Y+42 ; 0x2a
8d5a: 9b a5 ldd r25, Y+43 ; 0x2b
8d5c: 6a 19 sub r22, r10
8d5e: 7b 09 sbc r23, r11
8d60: 8c 09 sbc r24, r12
8d62: 9d 09 sbc r25, r13
8d64: a8 01 movw r20, r16
8d66: 97 01 movw r18, r14
8d68: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8d6c: 20 93 d7 04 sts 0x04D7, r18
8d70: 30 93 d8 04 sts 0x04D8, r19
8d74: 40 93 d9 04 sts 0x04D9, r20
8d78: 50 93 da 04 sts 0x04DA, r21
8d7c: ca 01 movw r24, r20
8d7e: b9 01 movw r22, r18
8d80: 20 e0 ldi r18, 0x00 ; 0
8d82: 31 e0 ldi r19, 0x01 ; 1
8d84: 40 e0 ldi r20, 0x00 ; 0
8d86: 50 e0 ldi r21, 0x00 ; 0
8d88: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8d8c: 69 01 movw r12, r18
8d8e: 30 93 a5 04 sts 0x04A5, r19
8d92: 20 93 a4 04 sts 0x04A4, r18
8d96: c2 01 movw r24, r4
8d98: b1 01 movw r22, r2
8d9a: 66 19 sub r22, r6
8d9c: 77 09 sbc r23, r7
8d9e: 88 09 sbc r24, r8
8da0: 99 09 sbc r25, r9
8da2: a8 01 movw r20, r16
8da4: 97 01 movw r18, r14
8da6: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8daa: ca 01 movw r24, r20
8dac: b9 01 movw r22, r18
8dae: 20 e0 ldi r18, 0x00 ; 0
8db0: 31 e0 ldi r19, 0x01 ; 1
8db2: 40 e0 ldi r20, 0x00 ; 0
8db4: 50 e0 ldi r21, 0x00 ; 0
8db6: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8dba: b9 01 movw r22, r18
8dbc: 30 93 a3 04 sts 0x04A3, r19
8dc0: 20 93 a2 04 sts 0x04A2, r18
8dc4: 80 91 ba 04 lds r24, 0x04BA
8dc8: 90 91 bb 04 lds r25, 0x04BB
8dcc: 81 34 cpi r24, 0x41 ; 65
8dce: 91 05 cpc r25, r1
8dd0: ac f4 brge .+42 ; 0x8dfc <MotorRegler+0x1fe8>
8dd2: 80 91 bc 04 lds r24, 0x04BC
8dd6: 90 91 bd 04 lds r25, 0x04BD
8dda: 81 34 cpi r24, 0x41 ; 65
8ddc: 91 05 cpc r25, r1
8dde: 74 f4 brge .+28 ; 0x8dfc <MotorRegler+0x1fe8>
8de0: e0 91 da 07 lds r30, 0x07DA
8de4: f0 e0 ldi r31, 0x00 ; 0
8de6: ee 0f add r30, r30
8de8: ff 1f adc r31, r31
8dea: eb 55 subi r30, 0x5B ; 91
8dec: f8 4f sbci r31, 0xF8 ; 248
8dee: 01 90 ld r0, Z+
8df0: f0 81 ld r31, Z
8df2: e0 2d mov r30, r0
8df4: f7 fd sbrc r31, 7
8df6: 17 c7 rjmp .+3630 ; 0x9c26 <MotorRegler+0x2e12>
8df8: 7a 97 sbiw r30, 0x1a ; 26
8dfa: 2c f0 brlt .+10 ; 0x8e06 <MotorRegler+0x1ff2>
8dfc: 80 91 e8 08 lds r24, 0x08E8
8e00: 8f 3f cpi r24, 0xFF ; 255
8e02: 09 f4 brne .+2 ; 0x8e06 <MotorRegler+0x1ff2>
8e04: c8 c6 rjmp .+3472 ; 0x9b96 <MotorRegler+0x2d82>
8e06: 60 91 4e 08 lds r22, 0x084E
8e0a: 70 91 4f 08 lds r23, 0x084F
8e0e: 80 91 50 08 lds r24, 0x0850
8e12: 90 91 51 08 lds r25, 0x0851
8e16: 20 e0 ldi r18, 0x00 ; 0
8e18: 31 e0 ldi r19, 0x01 ; 1
8e1a: 40 e0 ldi r20, 0x00 ; 0
8e1c: 50 e0 ldi r21, 0x00 ; 0
8e1e: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8e22: 20 93 4e 08 sts 0x084E, r18
8e26: 30 93 4f 08 sts 0x084F, r19
8e2a: 40 93 50 08 sts 0x0850, r20
8e2e: 50 93 51 08 sts 0x0851, r21
8e32: 60 91 3e 08 lds r22, 0x083E
8e36: 70 91 3f 08 lds r23, 0x083F
8e3a: 80 91 40 08 lds r24, 0x0840
8e3e: 90 91 41 08 lds r25, 0x0841
8e42: 20 e0 ldi r18, 0x00 ; 0
8e44: 31 e0 ldi r19, 0x01 ; 1
8e46: 40 e0 ldi r20, 0x00 ; 0
8e48: 50 e0 ldi r21, 0x00 ; 0
8e4a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
8e4e: 20 93 3e 08 sts 0x083E, r18
8e52: 30 93 3f 08 sts 0x083F, r19
8e56: 40 93 40 08 sts 0x0840, r20
8e5a: 50 93 41 08 sts 0x0841, r21
8e5e: e9 a0 ldd r14, Y+33 ; 0x21
8e60: fa a0 ldd r15, Y+34 ; 0x22
8e62: 0b a1 ldd r16, Y+35 ; 0x23
8e64: 1c a1 ldd r17, Y+36 ; 0x24
8e66: 69 81 ldd r22, Y+1 ; 0x01
8e68: 7a 81 ldd r23, Y+2 ; 0x02
8e6a: 8b 81 ldd r24, Y+3 ; 0x03
8e6c: 9c 81 ldd r25, Y+4 ; 0x04
8e6e: e6 1a sub r14, r22
8e70: f7 0a sbc r15, r23
8e72: 08 0b sbc r16, r24
8e74: 19 0b sbc r17, r25
8e76: e0 92 f8 04 sts 0x04F8, r14
8e7a: f0 92 f9 04 sts 0x04F9, r15
8e7e: 00 93 fa 04 sts 0x04FA, r16
8e82: 10 93 fb 04 sts 0x04FB, r17
8e86: ad 8c ldd r10, Y+29 ; 0x1d
8e88: be 8c ldd r11, Y+30 ; 0x1e
8e8a: cf 8c ldd r12, Y+31 ; 0x1f
8e8c: d8 a0 ldd r13, Y+32 ; 0x20
8e8e: 8d 81 ldd r24, Y+5 ; 0x05
8e90: 9e 81 ldd r25, Y+6 ; 0x06
8e92: af 81 ldd r26, Y+7 ; 0x07
8e94: b8 85 ldd r27, Y+8 ; 0x08
8e96: a8 1a sub r10, r24
8e98: b9 0a sbc r11, r25
8e9a: ca 0a sbc r12, r26
8e9c: db 0a sbc r13, r27
8e9e: a0 92 f4 04 sts 0x04F4, r10
8ea2: b0 92 f5 04 sts 0x04F5, r11
8ea6: c0 92 f6 04 sts 0x04F6, r12
8eaa: d0 92 f7 04 sts 0x04F7, r13
8eae: e0 92 f0 04 sts 0x04F0, r14
8eb2: f0 92 f1 04 sts 0x04F1, r15
8eb6: 00 93 f2 04 sts 0x04F2, r16
8eba: 10 93 f3 04 sts 0x04F3, r17
8ebe: a0 92 ec 04 sts 0x04EC, r10
8ec2: b0 92 ed 04 sts 0x04ED, r11
8ec6: c0 92 ee 04 sts 0x04EE, r12
8eca: d0 92 ef 04 sts 0x04EF, r13
8ece: 80 91 69 04 lds r24, 0x0469
8ed2: 90 91 6a 04 lds r25, 0x046A
8ed6: a0 91 6b 04 lds r26, 0x046B
8eda: b0 91 6c 04 lds r27, 0x046C
8ede: 8e 19 sub r24, r14
8ee0: 9f 09 sbc r25, r15
8ee2: a0 0b sbc r26, r16
8ee4: b1 0b sbc r27, r17
8ee6: 80 93 69 04 sts 0x0469, r24
8eea: 90 93 6a 04 sts 0x046A, r25
8eee: a0 93 6b 04 sts 0x046B, r26
8ef2: b0 93 6c 04 sts 0x046C, r27
8ef6: 80 91 71 04 lds r24, 0x0471
8efa: 90 91 72 04 lds r25, 0x0472
8efe: a0 91 73 04 lds r26, 0x0473
8f02: b0 91 74 04 lds r27, 0x0474
8f06: 8a 19 sub r24, r10
8f08: 9b 09 sbc r25, r11
8f0a: ac 09 sbc r26, r12
8f0c: bd 09 sbc r27, r13
8f0e: 80 93 71 04 sts 0x0471, r24
8f12: 90 93 72 04 sts 0x0472, r25
8f16: a0 93 73 04 sts 0x0473, r26
8f1a: b0 93 74 04 sts 0x0474, r27
8f1e: 20 91 8a 04 lds r18, 0x048A
8f22: 30 91 8b 04 lds r19, 0x048B
8f26: 21 38 cpi r18, 0x81 ; 129
8f28: 31 05 cpc r19, r1
8f2a: 94 f0 brlt .+36 ; 0x8f50 <MotorRegler+0x213c>
8f2c: 80 91 33 04 lds r24, 0x0433
8f30: 90 91 34 04 lds r25, 0x0434
8f34: 01 96 adiw r24, 0x01 ; 1
8f36: 90 93 34 04 sts 0x0434, r25
8f3a: 80 93 33 04 sts 0x0433, r24
8f3e: 80 91 66 08 lds r24, 0x0866
8f42: 90 91 67 08 lds r25, 0x0867
8f46: 01 96 adiw r24, 0x01 ; 1
8f48: 90 93 67 08 sts 0x0867, r25
8f4c: 80 93 66 08 sts 0x0866, r24
8f50: 20 58 subi r18, 0x80 ; 128
8f52: 3f 4f sbci r19, 0xFF ; 255
8f54: 94 f4 brge .+36 ; 0x8f7a <MotorRegler+0x2166>
8f56: 80 91 33 04 lds r24, 0x0433
8f5a: 90 91 34 04 lds r25, 0x0434
8f5e: 01 97 sbiw r24, 0x01 ; 1
8f60: 90 93 34 04 sts 0x0434, r25
8f64: 80 93 33 04 sts 0x0433, r24
8f68: 80 91 66 08 lds r24, 0x0866
8f6c: 90 91 67 08 lds r25, 0x0867
8f70: 01 97 sbiw r24, 0x01 ; 1
8f72: 90 93 67 08 sts 0x0867, r25
8f76: 80 93 66 08 sts 0x0866, r24
8f7a: 10 92 8b 04 sts 0x048B, r1
8f7e: 10 92 8a 04 sts 0x048A, r1
8f82: 81 e0 ldi r24, 0x01 ; 1
8f84: 90 e0 ldi r25, 0x00 ; 0
8f86: 90 93 ce 04 sts 0x04CE, r25
8f8a: 80 93 cd 04 sts 0x04CD, r24
8f8e: 80 91 c5 04 lds r24, 0x04C5
8f92: 90 91 c6 04 lds r25, 0x04C6
8f96: a0 91 c7 04 lds r26, 0x04C7
8f9a: b0 91 c8 04 lds r27, 0x04C8
8f9e: 28 a5 ldd r18, Y+40 ; 0x28
8fa0: 39 a5 ldd r19, Y+41 ; 0x29
8fa2: 4a a5 ldd r20, Y+42 ; 0x2a
8fa4: 5b a5 ldd r21, Y+43 ; 0x2b
8fa6: 82 1b sub r24, r18
8fa8: 93 0b sbc r25, r19
8faa: a4 0b sbc r26, r20
8fac: b5 0b sbc r27, r21
8fae: 81 5e subi r24, 0xE1 ; 225
8fb0: 91 4b sbci r25, 0xB1 ; 177
8fb2: af 4f sbci r26, 0xFF ; 255
8fb4: bf 4f sbci r27, 0xFF ; 255
8fb6: 8f 53 subi r24, 0x3F ; 63
8fb8: 9c 49 sbci r25, 0x9C ; 156
8fba: a0 40 sbci r26, 0x00 ; 0
8fbc: b0 40 sbci r27, 0x00 ; 0
8fbe: 08 f4 brcc .+2 ; 0x8fc2 <MotorRegler+0x21ae>
8fc0: 57 c4 rjmp .+2222 ; 0x9870 <MotorRegler+0x2a5c>
8fc2: 90 90 e9 08 lds r9, 0x08E9
8fc6: 48 e1 ldi r20, 0x18 ; 24
8fc8: 49 15 cp r20, r9
8fca: 0c f4 brge .+2 ; 0x8fce <MotorRegler+0x21ba>
8fcc: 53 c4 rjmp .+2214 ; 0x9874 <MotorRegler+0x2a60>
8fce: 10 92 ce 04 sts 0x04CE, r1
8fd2: 10 92 cd 04 sts 0x04CD, r1
8fd6: 88 ee ldi r24, 0xE8 ; 232
8fd8: 93 e0 ldi r25, 0x03 ; 3
8fda: 90 93 96 03 sts 0x0396, r25
8fde: 80 93 95 03 sts 0x0395, r24
8fe2: 9c 8d ldd r25, Y+28 ; 0x1c
8fe4: 69 2e mov r6, r25
8fe6: 77 24 eor r7, r7
8fe8: 80 91 cd 04 lds r24, 0x04CD
8fec: 90 91 ce 04 lds r25, 0x04CE
8ff0: 68 16 cp r6, r24
8ff2: 79 06 cpc r7, r25
8ff4: 24 f4 brge .+8 ; 0x8ffe <MotorRegler+0x21ea>
8ff6: 70 92 ce 04 sts 0x04CE, r7
8ffa: 60 92 cd 04 sts 0x04CD, r6
8ffe: 99 20 and r9, r9
9000: 79 f0 breq .+30 ; 0x9020 <MotorRegler+0x220c>
9002: 29 2d mov r18, r9
9004: 33 27 eor r19, r19
9006: 27 fd sbrc r18, 7
9008: 30 95 com r19
900a: 80 91 cd 04 lds r24, 0x04CD
900e: 90 91 ce 04 lds r25, 0x04CE
9012: 28 17 cp r18, r24
9014: 39 07 cpc r19, r25
9016: 24 f4 brge .+8 ; 0x9020 <MotorRegler+0x220c>
9018: 30 93 ce 04 sts 0x04CE, r19
901c: 20 93 cd 04 sts 0x04CD, r18
9020: a1 e0 ldi r26, 0x01 ; 1
9022: ea 16 cp r14, r26
9024: a4 e0 ldi r26, 0x04 ; 4
9026: fa 06 cpc r15, r26
9028: a0 e0 ldi r26, 0x00 ; 0
902a: 0a 07 cpc r16, r26
902c: a0 e0 ldi r26, 0x00 ; 0
902e: 1a 07 cpc r17, r26
9030: 74 f0 brlt .+28 ; 0x904e <MotorRegler+0x223a>
9032: 80 91 2f 04 lds r24, 0x042F
9036: 90 91 30 04 lds r25, 0x0430
903a: 20 91 cd 04 lds r18, 0x04CD
903e: 30 91 ce 04 lds r19, 0x04CE
9042: 82 0f add r24, r18
9044: 93 1f adc r25, r19
9046: 90 93 30 04 sts 0x0430, r25
904a: 80 93 2f 04 sts 0x042F, r24
904e: b0 e0 ldi r27, 0x00 ; 0
9050: eb 16 cp r14, r27
9052: bc ef ldi r27, 0xFC ; 252
9054: fb 06 cpc r15, r27
9056: bf ef ldi r27, 0xFF ; 255
9058: 0b 07 cpc r16, r27
905a: bf ef ldi r27, 0xFF ; 255
905c: 1b 07 cpc r17, r27
905e: 74 f4 brge .+28 ; 0x907c <MotorRegler+0x2268>
9060: 80 91 2f 04 lds r24, 0x042F
9064: 90 91 30 04 lds r25, 0x0430
9068: 20 91 cd 04 lds r18, 0x04CD
906c: 30 91 ce 04 lds r19, 0x04CE
9070: 82 1b sub r24, r18
9072: 93 0b sbc r25, r19
9074: 90 93 30 04 sts 0x0430, r25
9078: 80 93 2f 04 sts 0x042F, r24
907c: 81 e0 ldi r24, 0x01 ; 1
907e: 90 e0 ldi r25, 0x00 ; 0
9080: 90 93 ce 04 sts 0x04CE, r25
9084: 80 93 cd 04 sts 0x04CD, r24
9088: 10 92 d3 04 sts 0x04D3, r1
908c: 10 92 d4 04 sts 0x04D4, r1
9090: 10 92 d5 04 sts 0x04D5, r1
9094: 10 92 d6 04 sts 0x04D6, r1
9098: 80 91 c1 04 lds r24, 0x04C1
909c: 90 91 c2 04 lds r25, 0x04C2
90a0: a0 91 c3 04 lds r26, 0x04C3
90a4: b0 91 c4 04 lds r27, 0x04C4
90a8: 82 19 sub r24, r2
90aa: 93 09 sbc r25, r3
90ac: a4 09 sbc r26, r4
90ae: b5 09 sbc r27, r5
90b0: 81 5e subi r24, 0xE1 ; 225
90b2: 91 4b sbci r25, 0xB1 ; 177
90b4: af 4f sbci r26, 0xFF ; 255
90b6: bf 4f sbci r27, 0xFF ; 255
90b8: 8f 53 subi r24, 0x3F ; 63
90ba: 9c 49 sbci r25, 0x9C ; 156
90bc: a0 40 sbci r26, 0x00 ; 0
90be: b0 40 sbci r27, 0x00 ; 0
90c0: 08 f4 brcc .+2 ; 0x90c4 <MotorRegler+0x22b0>
90c2: 7c c3 rjmp .+1784 ; 0x97bc <MotorRegler+0x29a8>
90c4: f8 e1 ldi r31, 0x18 ; 24
90c6: f9 15 cp r31, r9
90c8: 0c f4 brge .+2 ; 0x90cc <MotorRegler+0x22b8>
90ca: 78 c3 rjmp .+1776 ; 0x97bc <MotorRegler+0x29a8>
90cc: 10 92 ce 04 sts 0x04CE, r1
90d0: 10 92 cd 04 sts 0x04CD, r1
90d4: 88 ee ldi r24, 0xE8 ; 232
90d6: 93 e0 ldi r25, 0x03 ; 3
90d8: 90 93 96 03 sts 0x0396, r25
90dc: 80 93 95 03 sts 0x0395, r24
90e0: 80 91 cd 04 lds r24, 0x04CD
90e4: 90 91 ce 04 lds r25, 0x04CE
90e8: 68 16 cp r6, r24
90ea: 79 06 cpc r7, r25
90ec: 24 f4 brge .+8 ; 0x90f6 <MotorRegler+0x22e2>
90ee: 70 92 ce 04 sts 0x04CE, r7
90f2: 60 92 cd 04 sts 0x04CD, r6
90f6: 99 20 and r9, r9
90f8: 79 f0 breq .+30 ; 0x9118 <MotorRegler+0x2304>
90fa: 29 2d mov r18, r9
90fc: 33 27 eor r19, r19
90fe: 27 fd sbrc r18, 7
9100: 30 95 com r19
9102: 80 91 cd 04 lds r24, 0x04CD
9106: 90 91 ce 04 lds r25, 0x04CE
910a: 28 17 cp r18, r24
910c: 39 07 cpc r19, r25
910e: 24 f4 brge .+8 ; 0x9118 <MotorRegler+0x2304>
9110: 30 93 ce 04 sts 0x04CE, r19
9114: 20 93 cd 04 sts 0x04CD, r18
9118: 71 e0 ldi r23, 0x01 ; 1
911a: a7 16 cp r10, r23
911c: 74 e0 ldi r23, 0x04 ; 4
911e: b7 06 cpc r11, r23
9120: 70 e0 ldi r23, 0x00 ; 0
9122: c7 06 cpc r12, r23
9124: 70 e0 ldi r23, 0x00 ; 0
9126: d7 06 cpc r13, r23
9128: 74 f0 brlt .+28 ; 0x9146 <MotorRegler+0x2332>
912a: 80 91 31 04 lds r24, 0x0431
912e: 90 91 32 04 lds r25, 0x0432
9132: 20 91 cd 04 lds r18, 0x04CD
9136: 30 91 ce 04 lds r19, 0x04CE
913a: 82 0f add r24, r18
913c: 93 1f adc r25, r19
913e: 90 93 32 04 sts 0x0432, r25
9142: 80 93 31 04 sts 0x0431, r24
9146: 80 e0 ldi r24, 0x00 ; 0
9148: a8 16 cp r10, r24
914a: 8c ef ldi r24, 0xFC ; 252
914c: b8 06 cpc r11, r24
914e: 8f ef ldi r24, 0xFF ; 255
9150: c8 06 cpc r12, r24
9152: 8f ef ldi r24, 0xFF ; 255
9154: d8 06 cpc r13, r24
9156: 14 f0 brlt .+4 ; 0x915c <MotorRegler+0x2348>
9158: 0c 94 03 39 jmp 0x7206 ; 0x7206 <MotorRegler+0x3f2>
915c: 80 91 31 04 lds r24, 0x0431
9160: 90 91 32 04 lds r25, 0x0432
9164: 20 91 cd 04 lds r18, 0x04CD
9168: 30 91 ce 04 lds r19, 0x04CE
916c: 82 1b sub r24, r18
916e: 93 0b sbc r25, r19
9170: 90 93 32 04 sts 0x0432, r25
9174: 80 93 31 04 sts 0x0431, r24
9178: 0c 94 03 39 jmp 0x7206 ; 0x7206 <MotorRegler+0x3f2>
917c: 97 01 movw r18, r14
917e: 0c 94 34 40 jmp 0x8068 ; 0x8068 <MotorRegler+0x1254>
9182: 68 01 movw r12, r16
9184: 0c 94 0e 3a jmp 0x741c ; 0x741c <MotorRegler+0x608>
9188: 60 e0 ldi r22, 0x00 ; 0
918a: 70 e0 ldi r23, 0x00 ; 0
918c: 00 e0 ldi r16, 0x00 ; 0
918e: 10 e0 ldi r17, 0x00 ; 0
9190: 0c 94 5a 3a jmp 0x74b4 ; 0x74b4 <MotorRegler+0x6a0>
9194: 80 91 a2 03 lds r24, 0x03A2
9198: 82 33 cpi r24, 0x32 ; 50
919a: 10 f4 brcc .+4 ; 0x91a0 <MotorRegler+0x238c>
919c: 0c 94 d8 3f jmp 0x7fb0 ; 0x7fb0 <MotorRegler+0x119c>
91a0: 81 e0 ldi r24, 0x01 ; 1
91a2: 80 93 88 04 sts 0x0488, r24
91a6: 88 ec ldi r24, 0xC8 ; 200
91a8: 80 93 b7 03 sts 0x03B7, r24
91ac: 20 91 9e 04 lds r18, 0x049E
91b0: 30 91 9f 04 lds r19, 0x049F
91b4: fd cb rjmp .-2054 ; 0x89b0 <MotorRegler+0x1b9c>
91b6: 4d 5f subi r20, 0xFD ; 253
91b8: 5f 4f sbci r21, 0xFF ; 255
91ba: 0c 94 a9 3c jmp 0x7952 ; 0x7952 <MotorRegler+0xb3e>
91be: 4d 5f subi r20, 0xFD ; 253
91c0: 5f 4f sbci r21, 0xFF ; 255
91c2: 0c 94 f3 3c jmp 0x79e6 ; 0x79e6 <MotorRegler+0xbd2>
91c6: 10 92 04 05 sts 0x0504, r1
91ca: 10 92 05 05 sts 0x0505, r1
91ce: 10 92 06 05 sts 0x0506, r1
91d2: 10 92 07 05 sts 0x0507, r1
91d6: 10 92 00 05 sts 0x0500, r1
91da: 10 92 01 05 sts 0x0501, r1
91de: 10 92 02 05 sts 0x0502, r1
91e2: 10 92 03 05 sts 0x0503, r1
91e6: 8a 3f cpi r24, 0xFA ; 250
91e8: 91 05 cpc r25, r1
91ea: 11 f0 breq .+4 ; 0x91f0 <MotorRegler+0x23dc>
91ec: 0c 94 66 3b jmp 0x76cc ; 0x76cc <MotorRegler+0x8b8>
91f0: 81 e0 ldi r24, 0x01 ; 1
91f2: 80 93 db 04 sts 0x04DB, r24
91f6: 10 92 fc 04 sts 0x04FC, r1
91fa: 10 92 fd 04 sts 0x04FD, r1
91fe: 10 92 fe 04 sts 0x04FE, r1
9202: 10 92 ff 04 sts 0x04FF, r1
9206: 10 92 75 04 sts 0x0475, r1
920a: 10 92 76 04 sts 0x0476, r1
920e: 10 92 77 04 sts 0x0477, r1
9212: 10 92 78 04 sts 0x0478, r1
9216: 0c 94 66 3b jmp 0x76cc ; 0x76cc <MotorRegler+0x8b8>
921a: a0 e0 ldi r26, 0x00 ; 0
921c: 10 92 ab 04 sts 0x04AB, r1
9220: 0c 94 3c 3e jmp 0x7c78 ; 0x7c78 <MotorRegler+0xe64>
9224: 10 92 aa 04 sts 0x04AA, r1
9228: 0c 94 5d 3e jmp 0x7cba ; 0x7cba <MotorRegler+0xea6>
922c: 10 92 a9 04 sts 0x04A9, r1
9230: 0c 94 1d 3e jmp 0x7c3a ; 0x7c3a <MotorRegler+0xe26>
9234: 88 e9 ldi r24, 0x98 ; 152
9236: 9a e3 ldi r25, 0x3A ; 58
9238: 90 93 e6 03 sts 0x03E6, r25
923c: 80 93 e5 03 sts 0x03E5, r24
9240: 80 e0 ldi r24, 0x00 ; 0
9242: 9c e0 ldi r25, 0x0C ; 12
9244: 90 93 0a 03 sts 0x030A, r25
9248: 80 93 09 03 sts 0x0309, r24
924c: 0c 94 4f 37 jmp 0x6e9e ; 0x6e9e <MotorRegler+0x8a>
9250: d0 94 com r13
9252: c1 94 neg r12
9254: d1 08 sbc r13, r1
9256: d3 94 inc r13
9258: 0c 94 09 3a jmp 0x7412 ; 0x7412 <MotorRegler+0x5fe>
925c: 10 95 com r17
925e: 01 95 neg r16
9260: 1f 4f sbci r17, 0xFF ; 255
9262: 0c 94 fa 39 jmp 0x73f4 ; 0x73f4 <MotorRegler+0x5e0>
9266: 88 27 eor r24, r24
9268: 99 27 eor r25, r25
926a: 88 19 sub r24, r8
926c: 99 09 sbc r25, r9
926e: 0c 94 2b 3a jmp 0x7456 ; 0x7456 <MotorRegler+0x642>
9272: 31 96 adiw r30, 0x01 ; 1
9274: 0c 94 29 40 jmp 0x8052 ; 0x8052 <MotorRegler+0x123e>
9278: c4 01 movw r24, r8
927a: b3 01 movw r22, r6
927c: 22 e0 ldi r18, 0x02 ; 2
927e: 30 e0 ldi r19, 0x00 ; 0
9280: 40 e0 ldi r20, 0x00 ; 0
9282: 50 e0 ldi r21, 0x00 ; 0
9284: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9288: 39 01 movw r6, r18
928a: 4a 01 movw r8, r20
928c: c6 01 movw r24, r12
928e: b5 01 movw r22, r10
9290: 22 e0 ldi r18, 0x02 ; 2
9292: 30 e0 ldi r19, 0x00 ; 0
9294: 40 e0 ldi r20, 0x00 ; 0
9296: 50 e0 ldi r21, 0x00 ; 0
9298: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
929c: 59 01 movw r10, r18
929e: 6a 01 movw r12, r20
92a0: 28 ca rjmp .-2992 ; 0x86f2 <MotorRegler+0x18de>
92a2: 10 92 9c 04 sts 0x049C, r1
92a6: 10 92 9b 04 sts 0x049B, r1
92aa: 0c 94 69 3d jmp 0x7ad2 ; 0x7ad2 <MotorRegler+0xcbe>
92ae: 90 95 com r25
92b0: 81 95 neg r24
92b2: 9f 4f sbci r25, 0xFF ; 255
92b4: 0c 94 84 3d jmp 0x7b08 ; 0x7b08 <MotorRegler+0xcf4>
92b8: 03 96 adiw r24, 0x03 ; 3
92ba: 0c 94 7c 3d jmp 0x7af8 ; 0x7af8 <MotorRegler+0xce4>
92be: 03 96 adiw r24, 0x03 ; 3
92c0: 95 95 asr r25
92c2: 87 95 ror r24
92c4: 95 95 asr r25
92c6: 87 95 ror r24
92c8: 97 fd sbrc r25, 7
92ca: 02 c0 rjmp .+4 ; 0x92d0 <MotorRegler+0x24bc>
92cc: 0c 94 b3 3d jmp 0x7b66 ; 0x7b66 <MotorRegler+0xd52>
92d0: 90 95 com r25
92d2: 81 95 neg r24
92d4: 9f 4f sbci r25, 0xFF ; 255
92d6: 0c 94 b3 3d jmp 0x7b66 ; 0x7b66 <MotorRegler+0xd52>
92da: 08 94 sec
92dc: e1 08 sbc r14, r1
92de: f1 08 sbc r15, r1
92e0: f0 92 96 03 sts 0x0396, r15
92e4: e0 92 95 03 sts 0x0395, r14
92e8: 0c 94 94 3e jmp 0x7d28 ; 0x7d28 <MotorRegler+0xf14>
92ec: 4b 2f mov r20, r27
92ee: 50 e0 ldi r21, 0x00 ; 0
92f0: 5b 87 std Y+11, r21 ; 0x0b
92f2: 4a 87 std Y+10, r20 ; 0x0a
92f4: 80 91 a6 04 lds r24, 0x04A6
92f8: 88 23 and r24, r24
92fa: 11 f4 brne .+4 ; 0x9300 <MotorRegler+0x24ec>
92fc: 0c 94 c7 37 jmp 0x6f8e ; 0x6f8e <MotorRegler+0x17a>
9300: 0c 94 b6 37 jmp 0x6f6c ; 0x6f6c <MotorRegler+0x158>
9304: 10 92 e8 04 sts 0x04E8, r1
9308: 0c 94 5a 3c jmp 0x78b4 ; 0x78b4 <MotorRegler+0xaa0>
930c: 10 92 e7 04 sts 0x04E7, r1
9310: 0c 94 9e 37 jmp 0x6f3c ; 0x6f3c <MotorRegler+0x128>
9314: 03 96 adiw r24, 0x03 ; 3
9316: a7 ca rjmp .-2738 ; 0x8866 <MotorRegler+0x1a52>
9318: 03 96 adiw r24, 0x03 ; 3
931a: 97 ca rjmp .-2770 ; 0x884a <MotorRegler+0x1a36>
931c: 03 96 adiw r24, 0x03 ; 3
931e: 0c 94 c0 3d jmp 0x7b80 ; 0x7b80 <MotorRegler+0xd6c>
9322: 90 95 com r25
9324: 81 95 neg r24
9326: 9f 4f sbci r25, 0xFF ; 255
9328: 0c 94 bc 3d jmp 0x7b78 ; 0x7b78 <MotorRegler+0xd64>
932c: 03 96 adiw r24, 0x03 ; 3
932e: 0c 94 91 3d jmp 0x7b22 ; 0x7b22 <MotorRegler+0xd0e>
9332: 90 95 com r25
9334: 81 95 neg r24
9336: 9f 4f sbci r25, 0xFF ; 255
9338: 0c 94 8d 3d jmp 0x7b1a ; 0x7b1a <MotorRegler+0xd06>
933c: 84 ef ldi r24, 0xF4 ; 244
933e: 91 e0 ldi r25, 0x01 ; 1
9340: 90 93 96 03 sts 0x0396, r25
9344: 80 93 95 03 sts 0x0395, r24
9348: 0c 94 94 3e jmp 0x7d28 ; 0x7d28 <MotorRegler+0xf14>
934c: 21 5e subi r18, 0xE1 ; 225
934e: 3f 4f sbci r19, 0xFF ; 255
9350: 0c 94 a6 3a jmp 0x754c ; 0x754c <MotorRegler+0x738>
9354: 69 5f subi r22, 0xF9 ; 249
9356: 7f 4f sbci r23, 0xFF ; 255
9358: 0c 94 7a 3a jmp 0x74f4 ; 0x74f4 <MotorRegler+0x6e0>
935c: 44 27 eor r20, r20
935e: 37 fd sbrc r19, 7
9360: 40 95 com r20
9362: 54 2f mov r21, r20
9364: 80 91 75 04 lds r24, 0x0475
9368: 90 91 76 04 lds r25, 0x0476
936c: a0 91 77 04 lds r26, 0x0477
9370: b0 91 78 04 lds r27, 0x0478
9374: 82 0f add r24, r18
9376: 93 1f adc r25, r19
9378: a4 1f adc r26, r20
937a: b5 1f adc r27, r21
937c: 80 93 75 04 sts 0x0475, r24
9380: 90 93 76 04 sts 0x0476, r25
9384: a0 93 77 04 sts 0x0477, r26
9388: b0 93 78 04 sts 0x0478, r27
938c: 0c 94 94 3e jmp 0x7d28 ; 0x7d28 <MotorRegler+0xf14>
9390: 80 81 ld r24, Z
9392: 91 81 ldd r25, Z+1 ; 0x01
9394: 85 5b subi r24, 0xB5 ; 181
9396: 9f 4f sbci r25, 0xFF ; 255
9398: 0c f0 brlt .+2 ; 0x939c <MotorRegler+0x2588>
939a: 05 c3 rjmp .+1546 ; 0x99a6 <MotorRegler+0x2b92>
939c: 80 91 e9 04 lds r24, 0x04E9
93a0: 8f 5f subi r24, 0xFF ; 255
93a2: 80 93 e9 04 sts 0x04E9, r24
93a6: 89 3c cpi r24, 0xC9 ; 201
93a8: 10 f4 brcc .+4 ; 0x93ae <MotorRegler+0x259a>
93aa: 0c 94 39 3c jmp 0x7872 ; 0x7872 <MotorRegler+0xa5e>
93ae: 4c 30 cpi r20, 0x0C ; 12
93b0: 08 f0 brcs .+2 ; 0x93b4 <MotorRegler+0x25a0>
93b2: 24 c4 rjmp .+2120 ; 0x9bfc <MotorRegler+0x2de8>
93b4: 29 98 cbi 0x05, 1 ; 5
93b6: 8f ef ldi r24, 0xFF ; 255
93b8: 04 e0 ldi r16, 0x04 ; 4
93ba: 10 e0 ldi r17, 0x00 ; 0
93bc: d8 01 movw r26, r16
93be: 08 2e mov r0, r24
93c0: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
93c4: 10 92 9d 04 sts 0x049D, r1
93c8: 10 92 e9 04 sts 0x04E9, r1
93cc: 10 92 bf 04 sts 0x04BF, r1
93d0: 10 92 be 04 sts 0x04BE, r1
93d4: 0e 94 62 32 call 0x64c4 ; 0x64c4 <SetNeutral>
93d8: 80 91 39 04 lds r24, 0x0439
93dc: 90 91 3a 04 lds r25, 0x043A
93e0: 97 fd sbrc r25, 7
93e2: 28 c4 rjmp .+2128 ; 0x9c34 <MotorRegler+0x2e20>
93e4: 89 2f mov r24, r25
93e6: 99 0f add r25, r25
93e8: 99 0b sbc r25, r25
93ea: d8 01 movw r26, r16
93ec: 08 2e mov r0, r24
93ee: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
93f2: 80 91 39 04 lds r24, 0x0439
93f6: 90 91 3a 04 lds r25, 0x043A
93fa: 60 e0 ldi r22, 0x00 ; 0
93fc: 71 e0 ldi r23, 0x01 ; 1
93fe: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
9402: 0f 5f subi r16, 0xFF ; 255
9404: 1f 4f sbci r17, 0xFF ; 255
9406: d8 01 movw r26, r16
9408: 08 2e mov r0, r24
940a: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
940e: 01 50 subi r16, 0x01 ; 1
9410: 10 40 sbci r17, 0x00 ; 0
9412: 20 91 3b 04 lds r18, 0x043B
9416: 30 91 3c 04 lds r19, 0x043C
941a: 37 fd sbrc r19, 7
941c: 08 c4 rjmp .+2064 ; 0x9c2e <MotorRegler+0x2e1a>
941e: 83 2f mov r24, r19
9420: 99 27 eor r25, r25
9422: 87 fd sbrc r24, 7
9424: 9a 95 dec r25
9426: 0e 5f subi r16, 0xFE ; 254
9428: 1f 4f sbci r17, 0xFF ; 255
942a: d8 01 movw r26, r16
942c: 08 2e mov r0, r24
942e: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
9432: 80 91 3b 04 lds r24, 0x043B
9436: 90 91 3c 04 lds r25, 0x043C
943a: 60 e0 ldi r22, 0x00 ; 0
943c: 71 e0 ldi r23, 0x01 ; 1
943e: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
9442: 0f 5f subi r16, 0xFF ; 255
9444: 1f 4f sbci r17, 0xFF ; 255
9446: d8 01 movw r26, r16
9448: 08 2e mov r0, r24
944a: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
944e: 03 50 subi r16, 0x03 ; 3
9450: 10 40 sbci r17, 0x00 ; 0
9452: 60 91 3f 04 lds r22, 0x043F
9456: 70 91 40 04 lds r23, 0x0440
945a: 80 91 41 04 lds r24, 0x0441
945e: 90 91 42 04 lds r25, 0x0442
9462: 0e 94 a9 54 call 0xa952 ; 0xa952 <__fixsfsi>
9466: 9b 01 movw r18, r22
9468: 77 fd sbrc r23, 7
946a: e7 c3 rjmp .+1998 ; 0x9c3a <MotorRegler+0x2e26>
946c: 83 2f mov r24, r19
946e: 99 27 eor r25, r25
9470: 87 fd sbrc r24, 7
9472: 9a 95 dec r25
9474: 0c 5f subi r16, 0xFC ; 252
9476: 1f 4f sbci r17, 0xFF ; 255
9478: d8 01 movw r26, r16
947a: 08 2e mov r0, r24
947c: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
9480: 60 91 3f 04 lds r22, 0x043F
9484: 70 91 40 04 lds r23, 0x0440
9488: 80 91 41 04 lds r24, 0x0441
948c: 90 91 42 04 lds r25, 0x0442
9490: 0e 94 a9 54 call 0xa952 ; 0xa952 <__fixsfsi>
9494: dc 01 movw r26, r24
9496: cb 01 movw r24, r22
9498: 60 e0 ldi r22, 0x00 ; 0
949a: 71 e0 ldi r23, 0x01 ; 1
949c: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
94a0: 0f 5f subi r16, 0xFF ; 255
94a2: 1f 4f sbci r17, 0xFF ; 255
94a4: d8 01 movw r26, r16
94a6: 08 2e mov r0, r24
94a8: 0e 94 2b 56 call 0xac56 ; 0xac56 <__eeprom_write_byte_1F2021>
94ac: 0e 94 bc 02 call 0x578 ; 0x578 <GetActiveParamSetNumber>
94b0: 0e 94 df 34 call 0x69be ; 0x69be <Piep>
94b4: 80 91 d9 07 lds r24, 0x07D9
94b8: a8 2f mov r26, r24
94ba: b0 e0 ldi r27, 0x00 ; 0
94bc: aa 0f add r26, r26
94be: bb 1f adc r27, r27
94c0: 0c 94 39 3c jmp 0x7872 ; 0x7872 <MotorRegler+0xa5e>
94c4: 88 ec ldi r24, 0xC8 ; 200
94c6: 90 e0 ldi r25, 0x00 ; 0
94c8: 90 93 e6 03 sts 0x03E6, r25
94cc: 80 93 e5 03 sts 0x03E5, r24
94d0: b1 01 movw r22, r2
94d2: 88 27 eor r24, r24
94d4: 77 fd sbrc r23, 7
94d6: 80 95 com r24
94d8: 98 2f mov r25, r24
94da: 2c 89 ldd r18, Y+20 ; 0x14
94dc: 3d 89 ldd r19, Y+21 ; 0x15
94de: 4e 89 ldd r20, Y+22 ; 0x16
94e0: 5f 89 ldd r21, Y+23 ; 0x17
94e2: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
94e6: 2b 01 movw r4, r22
94e8: 3c 01 movw r6, r24
94ea: 60 93 7e 08 sts 0x087E, r22
94ee: 70 93 7f 08 sts 0x087F, r23
94f2: 80 93 80 08 sts 0x0880, r24
94f6: 90 93 81 08 sts 0x0881, r25
94fa: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
94fe: 30 93 84 04 sts 0x0484, r19
9502: 20 93 83 04 sts 0x0483, r18
9506: 10 92 db 04 sts 0x04DB, r1
950a: 0c 94 75 3a jmp 0x74ea ; 0x74ea <MotorRegler+0x6d6>
950e: 88 ec ldi r24, 0xC8 ; 200
9510: 80 93 e8 04 sts 0x04E8, r24
9514: 81 e0 ldi r24, 0x01 ; 1
9516: 90 e0 ldi r25, 0x00 ; 0
9518: 90 93 bf 04 sts 0x04BF, r25
951c: 80 93 be 04 sts 0x04BE, r24
9520: 81 e0 ldi r24, 0x01 ; 1
9522: 80 93 9d 04 sts 0x049D, r24
9526: 10 92 fc 04 sts 0x04FC, r1
952a: 10 92 fd 04 sts 0x04FD, r1
952e: 10 92 fe 04 sts 0x04FE, r1
9532: 10 92 ff 04 sts 0x04FF, r1
9536: 10 92 75 04 sts 0x0475, r1
953a: 10 92 76 04 sts 0x0476, r1
953e: 10 92 77 04 sts 0x0477, r1
9542: 10 92 78 04 sts 0x0478, r1
9546: 10 92 79 04 sts 0x0479, r1
954a: 10 92 7a 04 sts 0x047A, r1
954e: 10 92 7b 04 sts 0x047B, r1
9552: 10 92 7c 04 sts 0x047C, r1
9556: e0 90 eb 07 lds r14, 0x07EB
955a: ff 24 eor r15, r15
955c: 00 e0 ldi r16, 0x00 ; 0
955e: 10 e0 ldi r17, 0x00 ; 0
9560: 60 91 72 08 lds r22, 0x0872
9564: 70 91 73 08 lds r23, 0x0873
9568: 88 27 eor r24, r24
956a: 77 fd sbrc r23, 7
956c: 80 95 com r24
956e: 98 2f mov r25, r24
9570: a8 01 movw r20, r16
9572: 97 01 movw r18, r14
9574: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
9578: 60 93 65 04 sts 0x0465, r22
957c: 70 93 66 04 sts 0x0466, r23
9580: 80 93 67 04 sts 0x0467, r24
9584: 90 93 68 04 sts 0x0468, r25
9588: 60 91 82 08 lds r22, 0x0882
958c: 70 91 83 08 lds r23, 0x0883
9590: 88 27 eor r24, r24
9592: 77 fd sbrc r23, 7
9594: 80 95 com r24
9596: 98 2f mov r25, r24
9598: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
959c: 60 93 6d 04 sts 0x046D, r22
95a0: 70 93 6e 04 sts 0x046E, r23
95a4: 80 93 6f 04 sts 0x046F, r24
95a8: 90 93 70 04 sts 0x0470, r25
95ac: 80 91 45 04 lds r24, 0x0445
95b0: 90 91 46 04 lds r25, 0x0446
95b4: a0 91 47 04 lds r26, 0x0447
95b8: b0 91 48 04 lds r27, 0x0448
95bc: 80 93 69 04 sts 0x0469, r24
95c0: 90 93 6a 04 sts 0x046A, r25
95c4: a0 93 6b 04 sts 0x046B, r26
95c8: b0 93 6c 04 sts 0x046C, r27
95cc: 80 91 4d 04 lds r24, 0x044D
95d0: 90 91 4e 04 lds r25, 0x044E
95d4: a0 91 4f 04 lds r26, 0x044F
95d8: b0 91 50 04 lds r27, 0x0450
95dc: 80 93 71 04 sts 0x0471, r24
95e0: 90 93 72 04 sts 0x0472, r25
95e4: a0 93 73 04 sts 0x0473, r26
95e8: b0 93 74 04 sts 0x0474, r27
95ec: 10 92 04 05 sts 0x0504, r1
95f0: 10 92 05 05 sts 0x0505, r1
95f4: 10 92 06 05 sts 0x0506, r1
95f8: 10 92 07 05 sts 0x0507, r1
95fc: 10 92 00 05 sts 0x0500, r1
9600: 10 92 01 05 sts 0x0501, r1
9604: 10 92 02 05 sts 0x0502, r1
9608: 10 92 03 05 sts 0x0503, r1
960c: 80 91 c0 04 lds r24, 0x04C0
9610: 88 60 ori r24, 0x08 ; 8
9612: 80 93 c0 04 sts 0x04C0, r24
9616: 0c 94 5a 3c jmp 0x78b4 ; 0x78b4 <MotorRegler+0xaa0>
961a: ad a5 ldd r26, Y+45 ; 0x2d
961c: be a5 ldd r27, Y+46 ; 0x2e
961e: b0 93 e6 04 sts 0x04E6, r27
9622: a0 93 e5 04 sts 0x04E5, r26
9626: 0c 94 ef 3f jmp 0x7fde ; 0x7fde <MotorRegler+0x11ca>
962a: e0 90 eb 07 lds r14, 0x07EB
962e: ff 24 eor r15, r15
9630: 00 e0 ldi r16, 0x00 ; 0
9632: 10 e0 ldi r17, 0x00 ; 0
9634: 69 81 ldd r22, Y+1 ; 0x01
9636: 7a 81 ldd r23, Y+2 ; 0x02
9638: 8b 81 ldd r24, Y+3 ; 0x03
963a: 9c 81 ldd r25, Y+4 ; 0x04
963c: a8 01 movw r20, r16
963e: 97 01 movw r18, r14
9640: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9644: 59 01 movw r10, r18
9646: 6a 01 movw r12, r20
9648: 80 91 72 08 lds r24, 0x0872
964c: 90 91 73 08 lds r25, 0x0873
9650: aa 27 eor r26, r26
9652: 97 fd sbrc r25, 7
9654: a0 95 com r26
9656: ba 2f mov r27, r26
9658: a8 1a sub r10, r24
965a: b9 0a sbc r11, r25
965c: ca 0a sbc r12, r26
965e: db 0a sbc r13, r27
9660: 6d 81 ldd r22, Y+5 ; 0x05
9662: 7e 81 ldd r23, Y+6 ; 0x06
9664: 8f 81 ldd r24, Y+7 ; 0x07
9666: 98 85 ldd r25, Y+8 ; 0x08
9668: a8 01 movw r20, r16
966a: 97 01 movw r18, r14
966c: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9670: 79 01 movw r14, r18
9672: 8a 01 movw r16, r20
9674: 80 91 82 08 lds r24, 0x0882
9678: 90 91 83 08 lds r25, 0x0883
967c: aa 27 eor r26, r26
967e: 97 fd sbrc r25, 7
9680: a0 95 com r26
9682: ba 2f mov r27, r26
9684: e8 1a sub r14, r24
9686: f9 0a sbc r15, r25
9688: 0a 0b sbc r16, r26
968a: 1b 0b sbc r17, r27
968c: c6 01 movw r24, r12
968e: b5 01 movw r22, r10
9690: 20 e1 ldi r18, 0x10 ; 16
9692: 30 e0 ldi r19, 0x00 ; 0
9694: 40 e0 ldi r20, 0x00 ; 0
9696: 50 e0 ldi r21, 0x00 ; 0
9698: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
969c: 39 01 movw r6, r18
969e: 4a 01 movw r8, r20
96a0: c8 01 movw r24, r16
96a2: b7 01 movw r22, r14
96a4: 20 e1 ldi r18, 0x10 ; 16
96a6: 30 e0 ldi r19, 0x00 ; 0
96a8: 40 e0 ldi r20, 0x00 ; 0
96aa: 50 e0 ldi r21, 0x00 ; 0
96ac: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
96b0: 59 01 movw r10, r18
96b2: 6a 01 movw r12, r20
96b4: 80 91 ba 04 lds r24, 0x04BA
96b8: 90 91 bb 04 lds r25, 0x04BB
96bc: 81 34 cpi r24, 0x41 ; 65
96be: 91 05 cpc r25, r1
96c0: 3c f4 brge .+14 ; 0x96d0 <MotorRegler+0x28bc>
96c2: 80 91 bc 04 lds r24, 0x04BC
96c6: 90 91 bd 04 lds r25, 0x04BD
96ca: 81 34 cpi r24, 0x41 ; 65
96cc: 91 05 cpc r25, r1
96ce: a4 f0 brlt .+40 ; 0x96f8 <MotorRegler+0x28e4>
96d0: c4 01 movw r24, r8
96d2: b3 01 movw r22, r6
96d4: 23 e0 ldi r18, 0x03 ; 3
96d6: 30 e0 ldi r19, 0x00 ; 0
96d8: 40 e0 ldi r20, 0x00 ; 0
96da: 50 e0 ldi r21, 0x00 ; 0
96dc: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
96e0: 39 01 movw r6, r18
96e2: 4a 01 movw r8, r20
96e4: c6 01 movw r24, r12
96e6: b5 01 movw r22, r10
96e8: 23 e0 ldi r18, 0x03 ; 3
96ea: 30 e0 ldi r19, 0x00 ; 0
96ec: 40 e0 ldi r20, 0x00 ; 0
96ee: 50 e0 ldi r21, 0x00 ; 0
96f0: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
96f4: 59 01 movw r10, r18
96f6: 6a 01 movw r12, r20
96f8: e0 91 da 07 lds r30, 0x07DA
96fc: f0 e0 ldi r31, 0x00 ; 0
96fe: ee 0f add r30, r30
9700: ff 1f adc r31, r31
9702: eb 55 subi r30, 0x5B ; 91
9704: f8 4f sbci r31, 0xF8 ; 248
9706: 01 90 ld r0, Z+
9708: f0 81 ld r31, Z
970a: e0 2d mov r30, r0
970c: f7 fd sbrc r31, 7
970e: 29 c2 rjmp .+1106 ; 0x9b62 <MotorRegler+0x2d4e>
9710: 7a 97 sbiw r30, 0x1a ; 26
9712: a4 f0 brlt .+40 ; 0x973c <MotorRegler+0x2928>
9714: c4 01 movw r24, r8
9716: b3 01 movw r22, r6
9718: 23 e0 ldi r18, 0x03 ; 3
971a: 30 e0 ldi r19, 0x00 ; 0
971c: 40 e0 ldi r20, 0x00 ; 0
971e: 50 e0 ldi r21, 0x00 ; 0
9720: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9724: 39 01 movw r6, r18
9726: 4a 01 movw r8, r20
9728: c6 01 movw r24, r12
972a: b5 01 movw r22, r10
972c: 23 e0 ldi r18, 0x03 ; 3
972e: 30 e0 ldi r19, 0x00 ; 0
9730: 40 e0 ldi r20, 0x00 ; 0
9732: 50 e0 ldi r21, 0x00 ; 0
9734: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9738: 59 01 movw r10, r18
973a: 6a 01 movw r12, r20
973c: 71 e2 ldi r23, 0x21 ; 33
973e: 67 16 cp r6, r23
9740: 71 04 cpc r7, r1
9742: 81 04 cpc r8, r1
9744: 91 04 cpc r9, r1
9746: 0c f4 brge .+2 ; 0x974a <MotorRegler+0x2936>
9748: 09 c1 rjmp .+530 ; 0x995c <MotorRegler+0x2b48>
974a: 80 e2 ldi r24, 0x20 ; 32
974c: 68 2e mov r6, r24
974e: 71 2c mov r7, r1
9750: 81 2c mov r8, r1
9752: 91 2c mov r9, r1
9754: 91 e2 ldi r25, 0x21 ; 33
9756: a9 16 cp r10, r25
9758: b1 04 cpc r11, r1
975a: c1 04 cpc r12, r1
975c: d1 04 cpc r13, r1
975e: 0c f4 brge .+2 ; 0x9762 <MotorRegler+0x294e>
9760: e8 c0 rjmp .+464 ; 0x9932 <MotorRegler+0x2b1e>
9762: 10 e2 ldi r17, 0x20 ; 32
9764: a1 2e mov r10, r17
9766: b1 2c mov r11, r1
9768: c1 2c mov r12, r1
976a: d1 2c mov r13, r1
976c: 18 c8 rjmp .-4048 ; 0x879e <MotorRegler+0x198a>
976e: 80 91 18 03 lds r24, 0x0318
9772: 90 91 19 03 lds r25, 0x0319
9776: 89 5e subi r24, 0xE9 ; 233
9778: 93 40 sbci r25, 0x03 ; 3
977a: 08 f4 brcc .+2 ; 0x977e <MotorRegler+0x296a>
977c: 08 c1 rjmp .+528 ; 0x998e <MotorRegler+0x2b7a>
977e: 90 91 0b 04 lds r25, 0x040B
9782: 9a 50 subi r25, 0x0A ; 10
9784: 90 93 0b 04 sts 0x040B, r25
9788: 80 91 90 07 lds r24, 0x0790
978c: 89 1b sub r24, r25
978e: 87 bd out 0x27, r24 ; 39
9790: 8c e2 ldi r24, 0x2C ; 44
9792: 91 e0 ldi r25, 0x01 ; 1
9794: 90 93 e6 03 sts 0x03E6, r25
9798: 80 93 e5 03 sts 0x03E5, r24
979c: 8a ef ldi r24, 0xFA ; 250
979e: 80 93 b7 03 sts 0x03B7, r24
97a2: 20 91 9e 04 lds r18, 0x049E
97a6: 30 91 9f 04 lds r19, 0x049F
97aa: 02 c9 rjmp .-3580 ; 0x89b0 <MotorRegler+0x1b9c>
97ac: 03 96 adiw r24, 0x03 ; 3
97ae: 23 c9 rjmp .-3514 ; 0x89f6 <MotorRegler+0x1be2>
97b0: 21 5f subi r18, 0xF1 ; 241
97b2: 3f 4f sbci r19, 0xFF ; 255
97b4: 75 c9 rjmp .-3350 ; 0x8aa0 <MotorRegler+0x1c8c>
97b6: 2f 5f subi r18, 0xFF ; 255
97b8: 3f 4f sbci r19, 0xFF ; 255
97ba: 5c c9 rjmp .-3400 ; 0x8a74 <MotorRegler+0x1c60>
97bc: 21 e0 ldi r18, 0x01 ; 1
97be: a2 16 cp r10, r18
97c0: 20 e1 ldi r18, 0x10 ; 16
97c2: b2 06 cpc r11, r18
97c4: 20 e0 ldi r18, 0x00 ; 0
97c6: c2 06 cpc r12, r18
97c8: 20 e0 ldi r18, 0x00 ; 0
97ca: d2 06 cpc r13, r18
97cc: 0c f4 brge .+2 ; 0x97d0 <MotorRegler+0x29bc>
97ce: 4d c1 rjmp .+666 ; 0x9a6a <MotorRegler+0x2c56>
97d0: 80 91 ca 04 lds r24, 0x04CA
97d4: 88 23 and r24, r24
97d6: 09 f4 brne .+2 ; 0x97da <MotorRegler+0x29c6>
97d8: 0d c2 rjmp .+1050 ; 0x9bf4 <MotorRegler+0x2de0>
97da: d6 01 movw r26, r12
97dc: c5 01 movw r24, r10
97de: 49 e0 ldi r20, 0x09 ; 9
97e0: b5 95 asr r27
97e2: a7 95 ror r26
97e4: 97 95 ror r25
97e6: 87 95 ror r24
97e8: 4a 95 dec r20
97ea: d1 f7 brne .-12 ; 0x97e0 <MotorRegler+0x29cc>
97ec: 01 96 adiw r24, 0x01 ; 1
97ee: 90 93 ce 04 sts 0x04CE, r25
97f2: 80 93 cd 04 sts 0x04CD, r24
97f6: d6 01 movw r26, r12
97f8: c5 01 movw r24, r10
97fa: 33 e0 ldi r19, 0x03 ; 3
97fc: b5 95 asr r27
97fe: a7 95 ror r26
9800: 97 95 ror r25
9802: 87 95 ror r24
9804: 3a 95 dec r19
9806: d1 f7 brne .-12 ; 0x97fc <MotorRegler+0x29e8>
9808: 80 93 d3 04 sts 0x04D3, r24
980c: 90 93 d4 04 sts 0x04D4, r25
9810: a0 93 d5 04 sts 0x04D5, r26
9814: b0 93 d6 04 sts 0x04D6, r27
9818: 89 58 subi r24, 0x89 ; 137
981a: 93 41 sbci r25, 0x13 ; 19
981c: a0 40 sbci r26, 0x00 ; 0
981e: b0 40 sbci r27, 0x00 ; 0
9820: 64 f0 brlt .+24 ; 0x983a <MotorRegler+0x2a26>
9822: 88 e8 ldi r24, 0x88 ; 136
9824: 93 e1 ldi r25, 0x13 ; 19
9826: a0 e0 ldi r26, 0x00 ; 0
9828: b0 e0 ldi r27, 0x00 ; 0
982a: 80 93 d3 04 sts 0x04D3, r24
982e: 90 93 d4 04 sts 0x04D4, r25
9832: a0 93 d5 04 sts 0x04D5, r26
9836: b0 93 d6 04 sts 0x04D6, r27
983a: 60 91 d3 04 lds r22, 0x04D3
983e: 70 91 d4 04 lds r23, 0x04D4
9842: 80 91 d5 04 lds r24, 0x04D5
9846: 90 91 d6 04 lds r25, 0x04D6
984a: 20 e0 ldi r18, 0x00 ; 0
984c: 31 e0 ldi r19, 0x01 ; 1
984e: 40 e0 ldi r20, 0x00 ; 0
9850: 50 e0 ldi r21, 0x00 ; 0
9852: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9856: 80 91 a2 04 lds r24, 0x04A2
985a: 90 91 a3 04 lds r25, 0x04A3
985e: 82 0f add r24, r18
9860: 93 1f adc r25, r19
9862: 90 93 a3 04 sts 0x04A3, r25
9866: 80 93 a2 04 sts 0x04A2, r24
986a: 10 92 c9 04 sts 0x04C9, r1
986e: 38 cc rjmp .-1936 ; 0x90e0 <MotorRegler+0x22cc>
9870: 90 90 e9 08 lds r9, 0x08E9
9874: 51 e0 ldi r21, 0x01 ; 1
9876: e5 16 cp r14, r21
9878: 50 e1 ldi r21, 0x10 ; 16
987a: f5 06 cpc r15, r21
987c: 50 e0 ldi r21, 0x00 ; 0
987e: 05 07 cpc r16, r21
9880: 50 e0 ldi r21, 0x00 ; 0
9882: 15 07 cpc r17, r21
9884: 0c f4 brge .+2 ; 0x9888 <MotorRegler+0x2a74>
9886: 93 c0 rjmp .+294 ; 0x99ae <MotorRegler+0x2b9a>
9888: 80 91 cc 04 lds r24, 0x04CC
988c: 88 23 and r24, r24
988e: 09 f4 brne .+2 ; 0x9892 <MotorRegler+0x2a7e>
9890: ad c1 rjmp .+858 ; 0x9bec <MotorRegler+0x2dd8>
9892: d8 01 movw r26, r16
9894: c7 01 movw r24, r14
9896: 79 e0 ldi r23, 0x09 ; 9
9898: b5 95 asr r27
989a: a7 95 ror r26
989c: 97 95 ror r25
989e: 87 95 ror r24
98a0: 7a 95 dec r23
98a2: d1 f7 brne .-12 ; 0x9898 <MotorRegler+0x2a84>
98a4: 01 96 adiw r24, 0x01 ; 1
98a6: 90 93 ce 04 sts 0x04CE, r25
98aa: 80 93 cd 04 sts 0x04CD, r24
98ae: d8 01 movw r26, r16
98b0: c7 01 movw r24, r14
98b2: 63 e0 ldi r22, 0x03 ; 3
98b4: b5 95 asr r27
98b6: a7 95 ror r26
98b8: 97 95 ror r25
98ba: 87 95 ror r24
98bc: 6a 95 dec r22
98be: d1 f7 brne .-12 ; 0x98b4 <MotorRegler+0x2aa0>
98c0: 80 93 d7 04 sts 0x04D7, r24
98c4: 90 93 d8 04 sts 0x04D8, r25
98c8: a0 93 d9 04 sts 0x04D9, r26
98cc: b0 93 da 04 sts 0x04DA, r27
98d0: 89 58 subi r24, 0x89 ; 137
98d2: 93 41 sbci r25, 0x13 ; 19
98d4: a0 40 sbci r26, 0x00 ; 0
98d6: b0 40 sbci r27, 0x00 ; 0
98d8: 64 f0 brlt .+24 ; 0x98f2 <MotorRegler+0x2ade>
98da: 88 e8 ldi r24, 0x88 ; 136
98dc: 93 e1 ldi r25, 0x13 ; 19
98de: a0 e0 ldi r26, 0x00 ; 0
98e0: b0 e0 ldi r27, 0x00 ; 0
98e2: 80 93 d7 04 sts 0x04D7, r24
98e6: 90 93 d8 04 sts 0x04D8, r25
98ea: a0 93 d9 04 sts 0x04D9, r26
98ee: b0 93 da 04 sts 0x04DA, r27
98f2: 60 91 d7 04 lds r22, 0x04D7
98f6: 70 91 d8 04 lds r23, 0x04D8
98fa: 80 91 d9 04 lds r24, 0x04D9
98fe: 90 91 da 04 lds r25, 0x04DA
9902: 20 e0 ldi r18, 0x00 ; 0
9904: 31 e0 ldi r19, 0x01 ; 1
9906: 40 e0 ldi r20, 0x00 ; 0
9908: 50 e0 ldi r21, 0x00 ; 0
990a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
990e: 80 91 a4 04 lds r24, 0x04A4
9912: 90 91 a5 04 lds r25, 0x04A5
9916: 82 0f add r24, r18
9918: 93 1f adc r25, r19
991a: 90 93 a5 04 sts 0x04A5, r25
991e: 80 93 a4 04 sts 0x04A4, r24
9922: 10 92 cb 04 sts 0x04CB, r1
9926: 5d cb rjmp .-2374 ; 0x8fe2 <MotorRegler+0x21ce>
9928: f0 95 com r31
992a: e1 95 neg r30
992c: ff 4f sbci r31, 0xFF ; 255
992e: 0c 94 87 43 jmp 0x870e ; 0x870e <MotorRegler+0x18fa>
9932: a0 ee ldi r26, 0xE0 ; 224
9934: aa 16 cp r10, r26
9936: af ef ldi r26, 0xFF ; 255
9938: ba 06 cpc r11, r26
993a: af ef ldi r26, 0xFF ; 255
993c: ca 06 cpc r12, r26
993e: af ef ldi r26, 0xFF ; 255
9940: da 06 cpc r13, r26
9942: 14 f0 brlt .+4 ; 0x9948 <MotorRegler+0x2b34>
9944: 0c 94 cf 43 jmp 0x879e ; 0x879e <MotorRegler+0x198a>
9948: b0 ee ldi r27, 0xE0 ; 224
994a: ab 2e mov r10, r27
994c: bf ef ldi r27, 0xFF ; 255
994e: bb 2e mov r11, r27
9950: bf ef ldi r27, 0xFF ; 255
9952: cb 2e mov r12, r27
9954: bf ef ldi r27, 0xFF ; 255
9956: db 2e mov r13, r27
9958: 0c 94 cf 43 jmp 0x879e ; 0x879e <MotorRegler+0x198a>
995c: 80 ee ldi r24, 0xE0 ; 224
995e: 68 16 cp r6, r24
9960: 8f ef ldi r24, 0xFF ; 255
9962: 78 06 cpc r7, r24
9964: 8f ef ldi r24, 0xFF ; 255
9966: 88 06 cpc r8, r24
9968: 8f ef ldi r24, 0xFF ; 255
996a: 98 06 cpc r9, r24
996c: 0c f0 brlt .+2 ; 0x9970 <MotorRegler+0x2b5c>
996e: f2 ce rjmp .-540 ; 0x9754 <MotorRegler+0x2940>
9970: 00 ee ldi r16, 0xE0 ; 224
9972: 60 2e mov r6, r16
9974: 0f ef ldi r16, 0xFF ; 255
9976: 70 2e mov r7, r16
9978: 0f ef ldi r16, 0xFF ; 255
997a: 80 2e mov r8, r16
997c: 0f ef ldi r16, 0xFF ; 255
997e: 90 2e mov r9, r16
9980: e9 ce rjmp .-558 ; 0x9754 <MotorRegler+0x2940>
9982: 87 e0 ldi r24, 0x07 ; 7
9984: 90 e0 ldi r25, 0x00 ; 0
9986: 68 0e add r6, r24
9988: 79 1e adc r7, r25
998a: 0c 94 ca 3a jmp 0x7594 ; 0x7594 <MotorRegler+0x780>
998e: 80 91 18 03 lds r24, 0x0318
9992: 90 91 19 03 lds r25, 0x0319
9996: 84 36 cpi r24, 0x64 ; 100
9998: 91 05 cpc r25, r1
999a: 08 f0 brcs .+2 ; 0x999e <MotorRegler+0x2b8a>
999c: e6 c0 rjmp .+460 ; 0x9b6a <MotorRegler+0x2d56>
999e: 90 91 0b 04 lds r25, 0x040B
99a2: 96 5f subi r25, 0xF6 ; 246
99a4: ef ce rjmp .-546 ; 0x9784 <MotorRegler+0x2970>
99a6: 10 92 e9 04 sts 0x04E9, r1
99aa: 0c 94 39 3c jmp 0x7872 ; 0x7872 <MotorRegler+0xa5e>
99ae: 10 92 cc 04 sts 0x04CC, r1
99b2: 70 e0 ldi r23, 0x00 ; 0
99b4: e7 16 cp r14, r23
99b6: 70 ef ldi r23, 0xF0 ; 240
99b8: f7 06 cpc r15, r23
99ba: 7f ef ldi r23, 0xFF ; 255
99bc: 07 07 cpc r16, r23
99be: 7f ef ldi r23, 0xFF ; 255
99c0: 17 07 cpc r17, r23
99c2: 0c f0 brlt .+2 ; 0x99c6 <MotorRegler+0x2bb2>
99c4: ae cf rjmp .-164 ; 0x9922 <MotorRegler+0x2b0e>
99c6: 80 91 cb 04 lds r24, 0x04CB
99ca: 88 23 and r24, r24
99cc: 09 f4 brne .+2 ; 0x99d0 <MotorRegler+0x2bbc>
99ce: 21 c1 rjmp .+578 ; 0x9c12 <MotorRegler+0x2dfe>
99d0: 88 27 eor r24, r24
99d2: 99 27 eor r25, r25
99d4: dc 01 movw r26, r24
99d6: 8e 19 sub r24, r14
99d8: 9f 09 sbc r25, r15
99da: a0 0b sbc r26, r16
99dc: b1 0b sbc r27, r17
99de: 59 e0 ldi r21, 0x09 ; 9
99e0: b5 95 asr r27
99e2: a7 95 ror r26
99e4: 97 95 ror r25
99e6: 87 95 ror r24
99e8: 5a 95 dec r21
99ea: d1 f7 brne .-12 ; 0x99e0 <MotorRegler+0x2bcc>
99ec: 01 96 adiw r24, 0x01 ; 1
99ee: 90 93 ce 04 sts 0x04CE, r25
99f2: 80 93 cd 04 sts 0x04CD, r24
99f6: c8 01 movw r24, r16
99f8: b7 01 movw r22, r14
99fa: 28 e0 ldi r18, 0x08 ; 8
99fc: 30 e0 ldi r19, 0x00 ; 0
99fe: 40 e0 ldi r20, 0x00 ; 0
9a00: 50 e0 ldi r21, 0x00 ; 0
9a02: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9a06: 20 93 d7 04 sts 0x04D7, r18
9a0a: 30 93 d8 04 sts 0x04D8, r19
9a0e: 40 93 d9 04 sts 0x04D9, r20
9a12: 50 93 da 04 sts 0x04DA, r21
9a16: 28 57 subi r18, 0x78 ; 120
9a18: 3c 4e sbci r19, 0xEC ; 236
9a1a: 4f 4f sbci r20, 0xFF ; 255
9a1c: 5f 4f sbci r21, 0xFF ; 255
9a1e: 64 f4 brge .+24 ; 0x9a38 <MotorRegler+0x2c24>
9a20: 88 e7 ldi r24, 0x78 ; 120
9a22: 9c ee ldi r25, 0xEC ; 236
9a24: af ef ldi r26, 0xFF ; 255
9a26: bf ef ldi r27, 0xFF ; 255
9a28: 80 93 d7 04 sts 0x04D7, r24
9a2c: 90 93 d8 04 sts 0x04D8, r25
9a30: a0 93 d9 04 sts 0x04D9, r26
9a34: b0 93 da 04 sts 0x04DA, r27
9a38: 60 91 d7 04 lds r22, 0x04D7
9a3c: 70 91 d8 04 lds r23, 0x04D8
9a40: 80 91 d9 04 lds r24, 0x04D9
9a44: 90 91 da 04 lds r25, 0x04DA
9a48: 20 e0 ldi r18, 0x00 ; 0
9a4a: 31 e0 ldi r19, 0x01 ; 1
9a4c: 40 e0 ldi r20, 0x00 ; 0
9a4e: 50 e0 ldi r21, 0x00 ; 0
9a50: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9a54: 80 91 a4 04 lds r24, 0x04A4
9a58: 90 91 a5 04 lds r25, 0x04A5
9a5c: 82 0f add r24, r18
9a5e: 93 1f adc r25, r19
9a60: 90 93 a5 04 sts 0x04A5, r25
9a64: 80 93 a4 04 sts 0x04A4, r24
9a68: bc ca rjmp .-2696 ; 0x8fe2 <MotorRegler+0x21ce>
9a6a: 10 92 ca 04 sts 0x04CA, r1
9a6e: 40 e0 ldi r20, 0x00 ; 0
9a70: a4 16 cp r10, r20
9a72: 40 ef ldi r20, 0xF0 ; 240
9a74: b4 06 cpc r11, r20
9a76: 4f ef ldi r20, 0xFF ; 255
9a78: c4 06 cpc r12, r20
9a7a: 4f ef ldi r20, 0xFF ; 255
9a7c: d4 06 cpc r13, r20
9a7e: 0c f0 brlt .+2 ; 0x9a82 <MotorRegler+0x2c6e>
9a80: f4 ce rjmp .-536 ; 0x986a <MotorRegler+0x2a56>
9a82: 80 91 c9 04 lds r24, 0x04C9
9a86: 88 23 and r24, r24
9a88: 09 f4 brne .+2 ; 0x9a8c <MotorRegler+0x2c78>
9a8a: bf c0 rjmp .+382 ; 0x9c0a <MotorRegler+0x2df6>
9a8c: 88 27 eor r24, r24
9a8e: 99 27 eor r25, r25
9a90: dc 01 movw r26, r24
9a92: 8a 19 sub r24, r10
9a94: 9b 09 sbc r25, r11
9a96: ac 09 sbc r26, r12
9a98: bd 09 sbc r27, r13
9a9a: 29 e0 ldi r18, 0x09 ; 9
9a9c: b5 95 asr r27
9a9e: a7 95 ror r26
9aa0: 97 95 ror r25
9aa2: 87 95 ror r24
9aa4: 2a 95 dec r18
9aa6: d1 f7 brne .-12 ; 0x9a9c <MotorRegler+0x2c88>
9aa8: 01 96 adiw r24, 0x01 ; 1
9aaa: 90 93 ce 04 sts 0x04CE, r25
9aae: 80 93 cd 04 sts 0x04CD, r24
9ab2: c6 01 movw r24, r12
9ab4: b5 01 movw r22, r10
9ab6: 28 e0 ldi r18, 0x08 ; 8
9ab8: 30 e0 ldi r19, 0x00 ; 0
9aba: 40 e0 ldi r20, 0x00 ; 0
9abc: 50 e0 ldi r21, 0x00 ; 0
9abe: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9ac2: 20 93 d3 04 sts 0x04D3, r18
9ac6: 30 93 d4 04 sts 0x04D4, r19
9aca: 40 93 d5 04 sts 0x04D5, r20
9ace: 50 93 d6 04 sts 0x04D6, r21
9ad2: 28 57 subi r18, 0x78 ; 120
9ad4: 3c 4e sbci r19, 0xEC ; 236
9ad6: 4f 4f sbci r20, 0xFF ; 255
9ad8: 5f 4f sbci r21, 0xFF ; 255
9ada: 64 f4 brge .+24 ; 0x9af4 <MotorRegler+0x2ce0>
9adc: 88 e7 ldi r24, 0x78 ; 120
9ade: 9c ee ldi r25, 0xEC ; 236
9ae0: af ef ldi r26, 0xFF ; 255
9ae2: bf ef ldi r27, 0xFF ; 255
9ae4: 80 93 d3 04 sts 0x04D3, r24
9ae8: 90 93 d4 04 sts 0x04D4, r25
9aec: a0 93 d5 04 sts 0x04D5, r26
9af0: b0 93 d6 04 sts 0x04D6, r27
9af4: 60 91 d3 04 lds r22, 0x04D3
9af8: 70 91 d4 04 lds r23, 0x04D4
9afc: 80 91 d5 04 lds r24, 0x04D5
9b00: 90 91 d6 04 lds r25, 0x04D6
9b04: 20 e0 ldi r18, 0x00 ; 0
9b06: 31 e0 ldi r19, 0x01 ; 1
9b08: 40 e0 ldi r20, 0x00 ; 0
9b0a: 50 e0 ldi r21, 0x00 ; 0
9b0c: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9b10: 80 91 a2 04 lds r24, 0x04A2
9b14: 90 91 a3 04 lds r25, 0x04A3
9b18: 82 0f add r24, r18
9b1a: 93 1f adc r25, r19
9b1c: 90 93 a3 04 sts 0x04A3, r25
9b20: 80 93 a2 04 sts 0x04A2, r24
9b24: dd ca rjmp .-2630 ; 0x90e0 <MotorRegler+0x22cc>
9b26: 0e 94 bc 02 call 0x578 ; 0x578 <GetActiveParamSetNumber>
9b2a: 4c e5 ldi r20, 0x5C ; 92
9b2c: 67 ed ldi r22, 0xD7 ; 215
9b2e: 77 e0 ldi r23, 0x07 ; 7
9b30: 0e 94 3a 03 call 0x674 ; 0x674 <ReadParameterSet>
9b34: 80 91 df 07 lds r24, 0x07DF
9b38: 80 ff sbrs r24, 0
9b3a: 10 c0 rjmp .+32 ; 0x9b5c <MotorRegler+0x2d48>
9b3c: 80 91 18 03 lds r24, 0x0318
9b40: 90 91 19 03 lds r25, 0x0319
9b44: 87 5b subi r24, 0xB7 ; 183
9b46: 93 40 sbci r25, 0x03 ; 3
9b48: 38 f4 brcc .+14 ; 0x9b58 <MotorRegler+0x2d44>
9b4a: 80 91 18 03 lds r24, 0x0318
9b4e: 90 91 19 03 lds r25, 0x0319
9b52: 8e 5e subi r24, 0xEE ; 238
9b54: 92 40 sbci r25, 0x02 ; 2
9b56: 10 f4 brcc .+4 ; 0x9b5c <MotorRegler+0x2d48>
9b58: 0e 94 fc 1a call 0x35f8 ; 0x35f8 <SucheLuftruckOffset>
9b5c: 0e 94 62 32 call 0x64c4 ; 0x64c4 <SetNeutral>
9b60: a5 cc rjmp .-1718 ; 0x94ac <MotorRegler+0x2698>
9b62: f0 95 com r31
9b64: e1 95 neg r30
9b66: ff 4f sbci r31, 0xFF ; 255
9b68: d3 cd rjmp .-1114 ; 0x9710 <MotorRegler+0x28fc>
9b6a: 20 91 9e 04 lds r18, 0x049E
9b6e: 30 91 9f 04 lds r19, 0x049F
9b72: 24 51 subi r18, 0x14 ; 20
9b74: 30 40 sbci r19, 0x00 ; 0
9b76: 30 93 a1 04 sts 0x04A1, r19
9b7a: 20 93 a0 04 sts 0x04A0, r18
9b7e: 2c 5e subi r18, 0xEC ; 236
9b80: 3f 4f sbci r19, 0xFF ; 255
9b82: 10 92 88 04 sts 0x0488, r1
9b86: 81 e0 ldi r24, 0x01 ; 1
9b88: 80 93 b7 03 sts 0x03B7, r24
9b8c: 0c 94 d8 44 jmp 0x89b0 ; 0x89b0 <MotorRegler+0x1b9c>
9b90: 41 e0 ldi r20, 0x01 ; 1
9b92: 0c 94 d5 3b jmp 0x77aa ; 0x77aa <MotorRegler+0x996>
9b96: 96 01 movw r18, r12
9b98: d7 fc sbrc r13, 7
9b9a: 42 c0 rjmp .+132 ; 0x9c20 <MotorRegler+0x2e0c>
9b9c: 35 95 asr r19
9b9e: 27 95 ror r18
9ba0: 30 93 a5 04 sts 0x04A5, r19
9ba4: 20 93 a4 04 sts 0x04A4, r18
9ba8: 9b 01 movw r18, r22
9baa: 77 fd sbrc r23, 7
9bac: 36 c0 rjmp .+108 ; 0x9c1a <MotorRegler+0x2e06>
9bae: 35 95 asr r19
9bb0: 27 95 ror r18
9bb2: 30 93 a3 04 sts 0x04A3, r19
9bb6: 20 93 a2 04 sts 0x04A2, r18
9bba: 25 c9 rjmp .-3510 ; 0x8e06 <MotorRegler+0x1ff2>
9bbc: 80 91 d8 07 lds r24, 0x07D8
9bc0: a8 2f mov r26, r24
9bc2: b0 e0 ldi r27, 0x00 ; 0
9bc4: aa 0f add r26, r26
9bc6: bb 1f adc r27, r27
9bc8: fd 01 movw r30, r26
9bca: eb 55 subi r30, 0x5B ; 91
9bcc: f8 4f sbci r31, 0xF8 ; 248
9bce: 01 90 ld r0, Z+
9bd0: f0 81 ld r31, Z
9bd2: e0 2d mov r30, r0
9bd4: f7 fd sbrc r31, 7
9bd6: 34 c0 rjmp .+104 ; 0x9c40 <MotorRegler+0x2e2c>
9bd8: e7 34 cpi r30, 0x47 ; 71
9bda: f1 05 cpc r31, r1
9bdc: 14 f4 brge .+4 ; 0x9be2 <MotorRegler+0x2dce>
9bde: 0c 94 10 3c jmp 0x7820 ; 0x7820 <MotorRegler+0xa0c>
9be2: 0c 94 b4 3b jmp 0x7768 ; 0x7768 <MotorRegler+0x954>
9be6: 29 9a sbi 0x05, 1 ; 5
9be8: 0c 94 96 3b jmp 0x772c ; 0x772c <MotorRegler+0x918>
9bec: 81 e0 ldi r24, 0x01 ; 1
9bee: 80 93 cc 04 sts 0x04CC, r24
9bf2: 97 ce rjmp .-722 ; 0x9922 <MotorRegler+0x2b0e>
9bf4: 81 e0 ldi r24, 0x01 ; 1
9bf6: 80 93 ca 04 sts 0x04CA, r24
9bfa: 37 ce rjmp .-914 ; 0x986a <MotorRegler+0x2a56>
9bfc: 29 9a sbi 0x05, 1 ; 5
9bfe: db cb rjmp .-2122 ; 0x93b6 <MotorRegler+0x25a2>
9c00: 90 95 com r25
9c02: 81 95 neg r24
9c04: 9f 4f sbci r25, 0xFF ; 255
9c06: 0c 94 18 3c jmp 0x7830 ; 0x7830 <MotorRegler+0xa1c>
9c0a: 81 e0 ldi r24, 0x01 ; 1
9c0c: 80 93 c9 04 sts 0x04C9, r24
9c10: 67 ca rjmp .-2866 ; 0x90e0 <MotorRegler+0x22cc>
9c12: 81 e0 ldi r24, 0x01 ; 1
9c14: 80 93 cb 04 sts 0x04CB, r24
9c18: e4 c9 rjmp .-3128 ; 0x8fe2 <MotorRegler+0x21ce>
9c1a: 2f 5f subi r18, 0xFF ; 255
9c1c: 3f 4f sbci r19, 0xFF ; 255
9c1e: c7 cf rjmp .-114 ; 0x9bae <MotorRegler+0x2d9a>
9c20: 2f 5f subi r18, 0xFF ; 255
9c22: 3f 4f sbci r19, 0xFF ; 255
9c24: bb cf rjmp .-138 ; 0x9b9c <MotorRegler+0x2d88>
9c26: f0 95 com r31
9c28: e1 95 neg r30
9c2a: ff 4f sbci r31, 0xFF ; 255
9c2c: e5 c8 rjmp .-3638 ; 0x8df8 <MotorRegler+0x1fe4>
9c2e: 21 50 subi r18, 0x01 ; 1
9c30: 3f 4f sbci r19, 0xFF ; 255
9c32: f5 cb rjmp .-2070 ; 0x941e <MotorRegler+0x260a>
9c34: 81 50 subi r24, 0x01 ; 1
9c36: 9f 4f sbci r25, 0xFF ; 255
9c38: d5 cb rjmp .-2134 ; 0x93e4 <MotorRegler+0x25d0>
9c3a: 21 50 subi r18, 0x01 ; 1
9c3c: 3f 4f sbci r19, 0xFF ; 255
9c3e: 16 cc rjmp .-2004 ; 0x946c <MotorRegler+0x2658>
9c40: f0 95 com r31
9c42: e1 95 neg r30
9c44: ff 4f sbci r31, 0xFF ; 255
9c46: c8 cf rjmp .-112 ; 0x9bd8 <MotorRegler+0x2dc4>
9c48: 60 92 69 08 sts 0x0869, r6
9c4c: ae 96 adiw r28, 0x2e ; 46
9c4e: 0f b6 in r0, 0x3f ; 63
9c50: f8 94 cli
9c52: de bf out 0x3e, r29 ; 62
9c54: 0f be out 0x3f, r0 ; 63
9c56: cd bf out 0x3d, r28 ; 61
9c58: df 91 pop r29
9c5a: cf 91 pop r28
9c5c: 1f 91 pop r17
9c5e: 0f 91 pop r16
9c60: ff 90 pop r15
9c62: ef 90 pop r14
9c64: df 90 pop r13
9c66: cf 90 pop r12
9c68: bf 90 pop r11
9c6a: af 90 pop r10
9c6c: 9f 90 pop r9
9c6e: 8f 90 pop r8
9c70: 7f 90 pop r7
9c72: 6f 90 pop r6
9c74: 5f 90 pop r5
9c76: 4f 90 pop r4
9c78: 3f 90 pop r3
9c7a: 2f 90 pop r2
9c7c: 08 95 ret
 
00009c7e <GPS_Neutral>:
9c7e: 80 91 28 05 lds r24, 0x0528
9c82: 90 91 29 05 lds r25, 0x0529
9c86: a0 91 2a 05 lds r26, 0x052A
9c8a: b0 91 2b 05 lds r27, 0x052B
9c8e: 80 93 30 05 sts 0x0530, r24
9c92: 90 93 31 05 sts 0x0531, r25
9c96: a0 93 32 05 sts 0x0532, r26
9c9a: b0 93 33 05 sts 0x0533, r27
9c9e: 80 91 2c 05 lds r24, 0x052C
9ca2: 90 91 2d 05 lds r25, 0x052D
9ca6: a0 91 2e 05 lds r26, 0x052E
9caa: b0 91 2f 05 lds r27, 0x052F
9cae: 80 93 34 05 sts 0x0534, r24
9cb2: 90 93 35 05 sts 0x0535, r25
9cb6: a0 93 36 05 sts 0x0536, r26
9cba: b0 93 37 05 sts 0x0537, r27
9cbe: 08 95 ret
 
00009cc0 <GPS_BerechneZielrichtung>:
9cc0: 10 92 21 05 sts 0x0521, r1
9cc4: 10 92 20 05 sts 0x0520, r1
9cc8: 10 92 23 05 sts 0x0523, r1
9ccc: 10 92 22 05 sts 0x0522, r1
9cd0: 08 95 ret
 
00009cd2 <SPI_MasterInit>:
9cd2: 84 b1 in r24, 0x04 ; 4
9cd4: 80 6a ori r24, 0xA0 ; 160
9cd6: 84 b9 out 0x04, r24 ; 4
9cd8: 3d 9a sbi 0x07, 5 ; 7
9cda: 82 e5 ldi r24, 0x52 ; 82
9cdc: 8c bd out 0x2c, r24 ; 44
9cde: 1d bc out 0x2d, r1 ; 45
9ce0: 45 9a sbi 0x08, 5 ; 8
9ce2: 81 e0 ldi r24, 0x01 ; 1
9ce4: 80 93 89 08 sts 0x0889, r24
9ce8: 8a ea ldi r24, 0xAA ; 170
9cea: 80 93 8d 08 sts 0x088D, r24
9cee: 83 e8 ldi r24, 0x83 ; 131
9cf0: 80 93 8e 08 sts 0x088E, r24
9cf4: 8a e0 ldi r24, 0x0A ; 10
9cf6: 80 93 8f 08 sts 0x088F, r24
9cfa: 10 92 91 08 sts 0x0891, r1
9cfe: 10 92 90 08 sts 0x0890, r1
9d02: 10 92 93 08 sts 0x0893, r1
9d06: 10 92 92 08 sts 0x0892, r1
9d0a: 10 92 af 08 sts 0x08AF, r1
9d0e: 10 92 b0 08 sts 0x08B0, r1
9d12: 88 e4 ldi r24, 0x48 ; 72
9d14: 80 93 b1 08 sts 0x08B1, r24
9d18: 8f e0 ldi r24, 0x0F ; 15
9d1a: 80 93 b2 08 sts 0x08B2, r24
9d1e: 85 e0 ldi r24, 0x05 ; 5
9d20: 80 93 b3 08 sts 0x08B3, r24
9d24: 08 95 ret
 
00009d26 <UpdateSPI_Buffer>:
9d26: ef 92 push r14
9d28: ff 92 push r15
9d2a: 0f 93 push r16
9d2c: 1f 93 push r17
9d2e: f8 94 cli
9d30: e0 90 eb 07 lds r14, 0x07EB
9d34: ff 24 eor r15, r15
9d36: ee 0c add r14, r14
9d38: ff 1c adc r15, r15
9d3a: ee 0c add r14, r14
9d3c: ff 1c adc r15, r15
9d3e: 00 27 eor r16, r16
9d40: f7 fc sbrc r15, 7
9d42: 00 95 com r16
9d44: 10 2f mov r17, r16
9d46: 60 91 45 04 lds r22, 0x0445
9d4a: 70 91 46 04 lds r23, 0x0446
9d4e: 80 91 47 04 lds r24, 0x0447
9d52: 90 91 48 04 lds r25, 0x0448
9d56: a8 01 movw r20, r16
9d58: 97 01 movw r18, r14
9d5a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9d5e: 30 93 91 08 sts 0x0891, r19
9d62: 20 93 90 08 sts 0x0890, r18
9d66: 60 91 4d 04 lds r22, 0x044D
9d6a: 70 91 4e 04 lds r23, 0x044E
9d6e: 80 91 4f 04 lds r24, 0x044F
9d72: 90 91 50 04 lds r25, 0x0450
9d76: a8 01 movw r20, r16
9d78: 97 01 movw r18, r14
9d7a: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9d7e: 30 93 93 08 sts 0x0893, r19
9d82: 20 93 92 08 sts 0x0892, r18
9d86: 60 91 7e 08 lds r22, 0x087E
9d8a: 70 91 7f 08 lds r23, 0x087F
9d8e: 80 91 80 08 lds r24, 0x0880
9d92: 90 91 81 08 lds r25, 0x0881
9d96: 2a e0 ldi r18, 0x0A ; 10
9d98: 30 e0 ldi r19, 0x00 ; 0
9d9a: 40 e0 ldi r20, 0x00 ; 0
9d9c: 50 e0 ldi r21, 0x00 ; 0
9d9e: 0e 94 94 55 call 0xab28 ; 0xab28 <__mulsi3>
9da2: 20 91 b3 03 lds r18, 0x03B3
9da6: 30 91 b4 03 lds r19, 0x03B4
9daa: 40 91 b5 03 lds r20, 0x03B5
9dae: 50 91 b6 03 lds r21, 0x03B6
9db2: 0e 94 08 56 call 0xac10 ; 0xac10 <__divmodsi4>
9db6: 30 93 99 08 sts 0x0899, r19
9dba: 20 93 98 08 sts 0x0898, r18
9dbe: e0 91 3d 04 lds r30, 0x043D
9dc2: f0 91 3e 04 lds r31, 0x043E
9dc6: 80 91 5f 08 lds r24, 0x085F
9dca: 90 91 60 08 lds r25, 0x0860
9dce: bf 01 movw r22, r30
9dd0: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
9dd4: cb 01 movw r24, r22
9dd6: 88 0f add r24, r24
9dd8: 99 1f adc r25, r25
9dda: 86 0f add r24, r22
9ddc: 97 1f adc r25, r23
9dde: 9c 01 movw r18, r24
9de0: 22 0f add r18, r18
9de2: 33 1f adc r19, r19
9de4: 96 fd sbrc r25, 6
9de6: 22 c1 rjmp .+580 ; 0xa02c <UpdateSPI_Buffer+0x306>
9de8: 35 95 asr r19
9dea: 27 95 ror r18
9dec: 35 95 asr r19
9dee: 27 95 ror r18
9df0: 30 93 95 08 sts 0x0895, r19
9df4: 20 93 94 08 sts 0x0894, r18
9df8: 80 91 7a 08 lds r24, 0x087A
9dfc: 90 91 7b 08 lds r25, 0x087B
9e00: bf 01 movw r22, r30
9e02: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
9e06: cb 01 movw r24, r22
9e08: 88 0f add r24, r24
9e0a: 99 1f adc r25, r25
9e0c: 86 0f add r24, r22
9e0e: 97 1f adc r25, r23
9e10: 9c 01 movw r18, r24
9e12: 22 0f add r18, r18
9e14: 33 1f adc r19, r19
9e16: 96 fd sbrc r25, 6
9e18: 06 c1 rjmp .+524 ; 0xa026 <UpdateSPI_Buffer+0x300>
9e1a: 35 95 asr r19
9e1c: 27 95 ror r18
9e1e: 35 95 asr r19
9e20: 27 95 ror r18
9e22: 30 93 97 08 sts 0x0897, r19
9e26: 20 93 96 08 sts 0x0896, r18
9e2a: 10 92 3e 04 sts 0x043E, r1
9e2e: 10 92 3d 04 sts 0x043D, r1
9e32: 10 92 60 08 sts 0x0860, r1
9e36: 10 92 5f 08 sts 0x085F, r1
9e3a: 10 92 7b 08 sts 0x087B, r1
9e3e: 10 92 7a 08 sts 0x087A, r1
9e42: 80 91 8f 08 lds r24, 0x088F
9e46: 8c 30 cpi r24, 0x0C ; 12
9e48: 09 f4 brne .+2 ; 0x9e4c <UpdateSPI_Buffer+0x126>
9e4a: 84 c1 rjmp .+776 ; 0xa154 <UpdateSPI_Buffer+0x42e>
9e4c: 8d 30 cpi r24, 0x0D ; 13
9e4e: 08 f4 brcc .+2 ; 0x9e52 <UpdateSPI_Buffer+0x12c>
9e50: 65 c0 rjmp .+202 ; 0x9f1c <UpdateSPI_Buffer+0x1f6>
9e52: 8d 30 cpi r24, 0x0D ; 13
9e54: 09 f4 brne .+2 ; 0x9e58 <UpdateSPI_Buffer+0x132>
9e56: 14 c1 rjmp .+552 ; 0xa080 <UpdateSPI_Buffer+0x35a>
9e58: 8e 30 cpi r24, 0x0E ; 14
9e5a: 09 f4 brne .+2 ; 0x9e5e <UpdateSPI_Buffer+0x138>
9e5c: fc c0 rjmp .+504 ; 0xa056 <UpdateSPI_Buffer+0x330>
9e5e: 78 94 sei
9e60: 80 91 af 08 lds r24, 0x08AF
9e64: 88 23 and r24, r24
9e66: 09 f4 brne .+2 ; 0x9e6a <UpdateSPI_Buffer+0x144>
9e68: d5 c0 rjmp .+426 ; 0xa014 <UpdateSPI_Buffer+0x2ee>
9e6a: 20 91 b5 08 lds r18, 0x08B5
9e6e: 30 91 b6 08 lds r19, 0x08B6
9e72: c9 01 movw r24, r18
9e74: 81 50 subi r24, 0x01 ; 1
9e76: 9e 4f sbci r25, 0xFE ; 254
9e78: 8f 5f subi r24, 0xFF ; 255
9e7a: 93 40 sbci r25, 0x03 ; 3
9e7c: 58 f4 brcc .+22 ; 0x9e94 <UpdateSPI_Buffer+0x16e>
9e7e: 40 91 b7 08 lds r20, 0x08B7
9e82: 50 91 b8 08 lds r21, 0x08B8
9e86: ca 01 movw r24, r20
9e88: 81 50 subi r24, 0x01 ; 1
9e8a: 9e 4f sbci r25, 0xFE ; 254
9e8c: 8f 5f subi r24, 0xFF ; 255
9e8e: 93 40 sbci r25, 0x03 ; 3
9e90: 08 f4 brcc .+2 ; 0x9e94 <UpdateSPI_Buffer+0x16e>
9e92: d4 c0 rjmp .+424 ; 0xa03c <UpdateSPI_Buffer+0x316>
9e94: 80 91 bb 08 lds r24, 0x08BB
9e98: 90 91 bc 08 lds r25, 0x08BC
9e9c: 21 e0 ldi r18, 0x01 ; 1
9e9e: 89 36 cpi r24, 0x69 ; 105
9ea0: 92 07 cpc r25, r18
9ea2: 24 f4 brge .+8 ; 0x9eac <UpdateSPI_Buffer+0x186>
9ea4: 90 93 82 04 sts 0x0482, r25
9ea8: 80 93 81 04 sts 0x0481, r24
9eac: 80 91 81 04 lds r24, 0x0481
9eb0: 90 91 82 04 lds r25, 0x0482
9eb4: 84 5e subi r24, 0xE4 ; 228
9eb6: 9d 4f sbci r25, 0xFD ; 253
9eb8: 20 91 83 04 lds r18, 0x0483
9ebc: 30 91 84 04 lds r19, 0x0484
9ec0: 82 1b sub r24, r18
9ec2: 93 0b sbc r25, r19
9ec4: 68 e6 ldi r22, 0x68 ; 104
9ec6: 71 e0 ldi r23, 0x01 ; 1
9ec8: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
9ecc: 84 5b subi r24, 0xB4 ; 180
9ece: 90 40 sbci r25, 0x00 ; 0
9ed0: 90 93 86 04 sts 0x0486, r25
9ed4: 80 93 85 04 sts 0x0485, r24
9ed8: 20 91 bf 08 lds r18, 0x08BF
9edc: 30 91 c0 08 lds r19, 0x08C0
9ee0: 80 91 e5 03 lds r24, 0x03E5
9ee4: 90 91 e6 03 lds r25, 0x03E6
9ee8: 82 17 cp r24, r18
9eea: 93 07 cpc r25, r19
9eec: 28 f4 brcc .+10 ; 0x9ef8 <UpdateSPI_Buffer+0x1d2>
9eee: 80 91 9a 06 lds r24, 0x069A
9ef2: 88 23 and r24, r24
9ef4: 09 f4 brne .+2 ; 0x9ef8 <UpdateSPI_Buffer+0x1d2>
9ef6: 9d c0 rjmp .+314 ; 0xa032 <UpdateSPI_Buffer+0x30c>
9ef8: 80 91 b4 08 lds r24, 0x08B4
9efc: 87 36 cpi r24, 0x67 ; 103
9efe: 09 f0 breq .+2 ; 0x9f02 <UpdateSPI_Buffer+0x1dc>
9f00: 4e c1 rjmp .+668 ; 0xa19e <UpdateSPI_Buffer+0x478>
9f02: 80 91 c1 08 lds r24, 0x08C1
9f06: 80 93 e8 08 sts 0x08E8, r24
9f0a: 80 91 c2 08 lds r24, 0x08C2
9f0e: 80 93 ea 08 sts 0x08EA, r24
9f12: 80 91 c3 08 lds r24, 0x08C3
9f16: 80 93 e9 08 sts 0x08E9, r24
9f1a: 41 c1 rjmp .+642 ; 0xa19e <UpdateSPI_Buffer+0x478>
9f1c: 8a 30 cpi r24, 0x0A ; 10
9f1e: 09 f4 brne .+2 ; 0x9f22 <UpdateSPI_Buffer+0x1fc>
9f20: e0 c0 rjmp .+448 ; 0xa0e2 <UpdateSPI_Buffer+0x3bc>
9f22: 8b 30 cpi r24, 0x0B ; 11
9f24: 09 f0 breq .+2 ; 0x9f28 <UpdateSPI_Buffer+0x202>
9f26: 9b cf rjmp .-202 ; 0x9e5e <UpdateSPI_Buffer+0x138>
9f28: e0 91 d9 07 lds r30, 0x07D9
9f2c: f0 e0 ldi r31, 0x00 ; 0
9f2e: ee 0f add r30, r30
9f30: ff 1f adc r31, r31
9f32: eb 55 subi r30, 0x5B ; 91
9f34: f8 4f sbci r31, 0xF8 ; 248
9f36: 01 90 ld r0, Z+
9f38: f0 81 ld r31, Z
9f3a: e0 2d mov r30, r0
9f3c: 2f ef ldi r18, 0xFF ; 255
9f3e: e1 38 cpi r30, 0x81 ; 129
9f40: f2 07 cpc r31, r18
9f42: 14 f4 brge .+4 ; 0x9f48 <UpdateSPI_Buffer+0x222>
9f44: e1 e8 ldi r30, 0x81 ; 129
9f46: ff ef ldi r31, 0xFF ; 255
9f48: e0 38 cpi r30, 0x80 ; 128
9f4a: f1 05 cpc r31, r1
9f4c: 14 f0 brlt .+4 ; 0x9f52 <UpdateSPI_Buffer+0x22c>
9f4e: ef e7 ldi r30, 0x7F ; 127
9f50: f0 e0 ldi r31, 0x00 ; 0
9f52: e0 93 a0 08 sts 0x08A0, r30
9f56: e0 91 da 07 lds r30, 0x07DA
9f5a: f0 e0 ldi r31, 0x00 ; 0
9f5c: ee 0f add r30, r30
9f5e: ff 1f adc r31, r31
9f60: eb 55 subi r30, 0x5B ; 91
9f62: f8 4f sbci r31, 0xF8 ; 248
9f64: 01 90 ld r0, Z+
9f66: f0 81 ld r31, Z
9f68: e0 2d mov r30, r0
9f6a: 4f ef ldi r20, 0xFF ; 255
9f6c: e1 38 cpi r30, 0x81 ; 129
9f6e: f4 07 cpc r31, r20
9f70: 14 f4 brge .+4 ; 0x9f76 <UpdateSPI_Buffer+0x250>
9f72: e1 e8 ldi r30, 0x81 ; 129
9f74: ff ef ldi r31, 0xFF ; 255
9f76: e0 38 cpi r30, 0x80 ; 128
9f78: f1 05 cpc r31, r1
9f7a: 14 f0 brlt .+4 ; 0x9f80 <UpdateSPI_Buffer+0x25a>
9f7c: ef e7 ldi r30, 0x7F ; 127
9f7e: f0 e0 ldi r31, 0x00 ; 0
9f80: e0 93 a1 08 sts 0x08A1, r30
9f84: e0 91 d8 07 lds r30, 0x07D8
9f88: f0 e0 ldi r31, 0x00 ; 0
9f8a: ee 0f add r30, r30
9f8c: ff 1f adc r31, r31
9f8e: eb 55 subi r30, 0x5B ; 91
9f90: f8 4f sbci r31, 0xF8 ; 248
9f92: 01 90 ld r0, Z+
9f94: f0 81 ld r31, Z
9f96: e0 2d mov r30, r0
9f98: 6f ef ldi r22, 0xFF ; 255
9f9a: e1 38 cpi r30, 0x81 ; 129
9f9c: f6 07 cpc r31, r22
9f9e: 14 f4 brge .+4 ; 0x9fa4 <UpdateSPI_Buffer+0x27e>
9fa0: e1 e8 ldi r30, 0x81 ; 129
9fa2: ff ef ldi r31, 0xFF ; 255
9fa4: e0 38 cpi r30, 0x80 ; 128
9fa6: f1 05 cpc r31, r1
9fa8: 14 f0 brlt .+4 ; 0x9fae <UpdateSPI_Buffer+0x288>
9faa: ef e7 ldi r30, 0x7F ; 127
9fac: f0 e0 ldi r31, 0x00 ; 0
9fae: e0 93 a2 08 sts 0x08A2, r30
9fb2: e0 91 d7 07 lds r30, 0x07D7
9fb6: f0 e0 ldi r31, 0x00 ; 0
9fb8: ee 0f add r30, r30
9fba: ff 1f adc r31, r31
9fbc: eb 55 subi r30, 0x5B ; 91
9fbe: f8 4f sbci r31, 0xF8 ; 248
9fc0: 01 90 ld r0, Z+
9fc2: f0 81 ld r31, Z
9fc4: e0 2d mov r30, r0
9fc6: 8f ef ldi r24, 0xFF ; 255
9fc8: e1 38 cpi r30, 0x81 ; 129
9fca: f8 07 cpc r31, r24
9fcc: 14 f4 brge .+4 ; 0x9fd2 <UpdateSPI_Buffer+0x2ac>
9fce: e1 e8 ldi r30, 0x81 ; 129
9fd0: ff ef ldi r31, 0xFF ; 255
9fd2: e0 38 cpi r30, 0x80 ; 128
9fd4: f1 05 cpc r31, r1
9fd6: 14 f0 brlt .+4 ; 0x9fdc <UpdateSPI_Buffer+0x2b6>
9fd8: ef e7 ldi r30, 0x7F ; 127
9fda: f0 e0 ldi r31, 0x00 ; 0
9fdc: e0 93 a3 08 sts 0x08A3, r30
9fe0: 80 91 8c 04 lds r24, 0x048C
9fe4: 80 93 a4 08 sts 0x08A4, r24
9fe8: 80 91 8e 04 lds r24, 0x048E
9fec: 80 93 a5 08 sts 0x08A5, r24
9ff0: 80 91 90 04 lds r24, 0x0490
9ff4: 80 93 a6 08 sts 0x08A6, r24
9ff8: 80 91 92 04 lds r24, 0x0492
9ffc: 80 93 a7 08 sts 0x08A7, r24
a000: 80 91 94 04 lds r24, 0x0494
a004: 80 93 a8 08 sts 0x08A8, r24
a008: 78 94 sei
a00a: 80 91 af 08 lds r24, 0x08AF
a00e: 88 23 and r24, r24
a010: 09 f0 breq .+2 ; 0xa014 <UpdateSPI_Buffer+0x2ee>
a012: 2b cf rjmp .-426 ; 0x9e6a <UpdateSPI_Buffer+0x144>
a014: 10 92 21 05 sts 0x0521, r1
a018: 10 92 20 05 sts 0x0520, r1
a01c: 10 92 23 05 sts 0x0523, r1
a020: 10 92 22 05 sts 0x0522, r1
a024: bc c0 rjmp .+376 ; 0xa19e <UpdateSPI_Buffer+0x478>
a026: 2d 5f subi r18, 0xFD ; 253
a028: 3f 4f sbci r19, 0xFF ; 255
a02a: f7 ce rjmp .-530 ; 0x9e1a <UpdateSPI_Buffer+0xf4>
a02c: 2d 5f subi r18, 0xFD ; 253
a02e: 3f 4f sbci r19, 0xFF ; 255
a030: db ce rjmp .-586 ; 0x9de8 <UpdateSPI_Buffer+0xc2>
a032: 30 93 e6 03 sts 0x03E6, r19
a036: 20 93 e5 03 sts 0x03E5, r18
a03a: 5e cf rjmp .-324 ; 0x9ef8 <UpdateSPI_Buffer+0x1d2>
a03c: 80 91 df 07 lds r24, 0x07DF
a040: 85 ff sbrs r24, 5
a042: 28 cf rjmp .-432 ; 0x9e94 <UpdateSPI_Buffer+0x16e>
a044: 30 93 21 05 sts 0x0521, r19
a048: 20 93 20 05 sts 0x0520, r18
a04c: 50 93 23 05 sts 0x0523, r21
a050: 40 93 22 05 sts 0x0522, r20
a054: 1f cf rjmp .-450 ; 0x9e94 <UpdateSPI_Buffer+0x16e>
a056: 80 91 b0 08 lds r24, 0x08B0
a05a: 80 93 a0 08 sts 0x08A0, r24
a05e: 80 91 b1 08 lds r24, 0x08B1
a062: 80 93 a1 08 sts 0x08A1, r24
a066: 80 91 b2 08 lds r24, 0x08B2
a06a: 80 93 a2 08 sts 0x08A2, r24
a06e: 80 91 b3 08 lds r24, 0x08B3
a072: 80 93 a3 08 sts 0x08A3, r24
a076: 80 91 00 01 lds r24, 0x0100
a07a: 80 93 a4 08 sts 0x08A4, r24
a07e: ef ce rjmp .-546 ; 0x9e5e <UpdateSPI_Buffer+0x138>
a080: 80 91 11 08 lds r24, 0x0811
a084: 80 93 a0 08 sts 0x08A0, r24
a088: 80 91 12 08 lds r24, 0x0812
a08c: 80 93 a1 08 sts 0x08A1, r24
a090: 80 91 13 08 lds r24, 0x0813
a094: 80 93 a2 08 sts 0x08A2, r24
a098: 80 91 14 08 lds r24, 0x0814
a09c: 80 93 a3 08 sts 0x08A3, r24
a0a0: 80 91 15 08 lds r24, 0x0815
a0a4: 80 93 a4 08 sts 0x08A4, r24
a0a8: 80 91 19 08 lds r24, 0x0819
a0ac: 80 93 a5 08 sts 0x08A5, r24
a0b0: 80 91 1a 08 lds r24, 0x081A
a0b4: 80 93 a6 08 sts 0x08A6, r24
a0b8: 80 91 1b 08 lds r24, 0x081B
a0bc: 80 93 a7 08 sts 0x08A7, r24
a0c0: 80 91 1e 08 lds r24, 0x081E
a0c4: 80 93 a8 08 sts 0x08A8, r24
a0c8: 80 91 1c 08 lds r24, 0x081C
a0cc: 80 93 a9 08 sts 0x08A9, r24
a0d0: 80 91 1d 08 lds r24, 0x081D
a0d4: 80 93 aa 08 sts 0x08AA, r24
a0d8: 80 91 1f 08 lds r24, 0x081F
a0dc: 80 93 ab 08 sts 0x08AB, r24
a0e0: be ce rjmp .-644 ; 0x9e5e <UpdateSPI_Buffer+0x138>
a0e2: 80 91 ac 04 lds r24, 0x04AC
a0e6: 80 93 a0 08 sts 0x08A0, r24
a0ea: 80 91 ad 04 lds r24, 0x04AD
a0ee: 80 93 a1 08 sts 0x08A1, r24
a0f2: 80 91 ae 04 lds r24, 0x04AE
a0f6: 80 93 a2 08 sts 0x08A2, r24
a0fa: 80 91 af 04 lds r24, 0x04AF
a0fe: 80 93 a3 08 sts 0x08A3, r24
a102: 80 91 b0 04 lds r24, 0x04B0
a106: 80 93 a4 08 sts 0x08A4, r24
a10a: 80 91 b1 04 lds r24, 0x04B1
a10e: 80 93 a5 08 sts 0x08A5, r24
a112: 80 91 b2 04 lds r24, 0x04B2
a116: 80 93 a6 08 sts 0x08A6, r24
a11a: 80 91 b3 04 lds r24, 0x04B3
a11e: 80 93 a7 08 sts 0x08A7, r24
a122: 80 91 c0 04 lds r24, 0x04C0
a126: 80 93 a8 08 sts 0x08A8, r24
a12a: 83 7f andi r24, 0xF3 ; 243
a12c: 80 93 c0 04 sts 0x04C0, r24
a130: 80 91 0e 03 lds r24, 0x030E
a134: 90 91 0f 03 lds r25, 0x030F
a138: 80 93 a9 08 sts 0x08A9, r24
a13c: 80 91 f0 07 lds r24, 0x07F0
a140: 80 93 aa 08 sts 0x08AA, r24
a144: a2 e0 ldi r26, 0x02 ; 2
a146: b0 e0 ldi r27, 0x00 ; 0
a148: 0e 94 23 56 call 0xac46 ; 0xac46 <__eeprom_read_byte_1F2021>
a14c: 80 2d mov r24, r0
a14e: 80 93 ab 08 sts 0x08AB, r24
a152: 85 ce rjmp .-758 ; 0x9e5e <UpdateSPI_Buffer+0x138>
a154: 80 91 9a 06 lds r24, 0x069A
a158: 86 30 cpi r24, 0x06 ; 6
a15a: f0 f0 brcs .+60 ; 0xa198 <UpdateSPI_Buffer+0x472>
a15c: 10 92 9a 06 sts 0x069A, r1
a160: 85 e0 ldi r24, 0x05 ; 5
a162: 80 93 a0 08 sts 0x08A0, r24
a166: 80 91 9e 04 lds r24, 0x049E
a16a: 90 91 9f 04 lds r25, 0x049F
a16e: 90 93 a3 08 sts 0x08A3, r25
a172: 80 93 a2 08 sts 0x08A2, r24
a176: 80 91 20 08 lds r24, 0x0820
a17a: 80 93 a1 08 sts 0x08A1, r24
a17e: 80 91 16 08 lds r24, 0x0816
a182: 80 93 a4 08 sts 0x08A4, r24
a186: 80 91 17 08 lds r24, 0x0817
a18a: 80 93 a5 08 sts 0x08A5, r24
a18e: 80 91 18 08 lds r24, 0x0818
a192: 80 93 a6 08 sts 0x08A6, r24
a196: 63 ce rjmp .-826 ; 0x9e5e <UpdateSPI_Buffer+0x138>
a198: 80 93 a0 08 sts 0x08A0, r24
a19c: e4 cf rjmp .-56 ; 0xa166 <UpdateSPI_Buffer+0x440>
a19e: 1f 91 pop r17
a1a0: 0f 91 pop r16
a1a2: ff 90 pop r15
a1a4: ef 90 pop r14
a1a6: 08 95 ret
 
0000a1a8 <SPI_StartTransmitPacket>:
a1a8: 80 91 89 08 lds r24, 0x0889
a1ac: 88 23 and r24, r24
a1ae: 09 f4 brne .+2 ; 0xa1b2 <SPI_StartTransmitPacket+0xa>
a1b0: 3b c0 rjmp .+118 ; 0xa228 <SPI_StartTransmitPacket+0x80>
a1b2: 45 98 cbi 0x08, 5 ; 8
a1b4: 8d e8 ldi r24, 0x8D ; 141
a1b6: 98 e0 ldi r25, 0x08 ; 8
a1b8: 90 93 8b 08 sts 0x088B, r25
a1bc: 80 93 8a 08 sts 0x088A, r24
a1c0: 90 91 38 05 lds r25, 0x0538
a1c4: e9 2f mov r30, r25
a1c6: f0 e0 ldi r31, 0x00 ; 0
a1c8: e8 54 subi r30, 0x48 ; 72
a1ca: fc 4f sbci r31, 0xFC ; 252
a1cc: 80 81 ld r24, Z
a1ce: 80 93 8f 08 sts 0x088F, r24
a1d2: 9f 5f subi r25, 0xFF ; 255
a1d4: 90 93 38 05 sts 0x0538, r25
a1d8: 96 30 cpi r25, 0x06 ; 6
a1da: 10 f0 brcs .+4 ; 0xa1e0 <SPI_StartTransmitPacket+0x38>
a1dc: 10 92 38 05 sts 0x0538, r1
a1e0: 10 92 89 08 sts 0x0889, r1
a1e4: 0e 94 93 4e call 0x9d26 ; 0x9d26 <UpdateSPI_Buffer>
a1e8: 81 e0 ldi r24, 0x01 ; 1
a1ea: 80 93 8c 08 sts 0x088C, r24
...
a21e: 80 91 8d 08 lds r24, 0x088D
a222: 80 93 ac 08 sts 0x08AC, r24
a226: 8e bd out 0x2e, r24 ; 46
a228: 08 95 ret
 
0000a22a <SPI_TransmitByte>:
a22a: 80 91 89 08 lds r24, 0x0889
a22e: 88 23 and r24, r24
a230: 11 f4 brne .+4 ; 0xa236 <SPI_TransmitByte+0xc>
a232: 0d b4 in r0, 0x2d ; 45
a234: 07 fe sbrs r0, 7
a236: 08 95 ret
a238: 84 e0 ldi r24, 0x04 ; 4
a23a: 80 93 e7 03 sts 0x03E7, r24
a23e: 45 9a sbi 0x08, 5 ; 8
a240: 9e b5 in r25, 0x2e ; 46
a242: 80 91 3a 05 lds r24, 0x053A
a246: 81 30 cpi r24, 0x01 ; 1
a248: 09 f4 brne .+2 ; 0xa24c <SPI_TransmitByte+0x22>
a24a: 3a c0 rjmp .+116 ; 0xa2c0 <SPI_TransmitByte+0x96>
a24c: 81 30 cpi r24, 0x01 ; 1
a24e: 08 f0 brcs .+2 ; 0xa252 <SPI_TransmitByte+0x28>
a250: 40 c0 rjmp .+128 ; 0xa2d2 <SPI_TransmitByte+0xa8>
a252: 10 92 ae 08 sts 0x08AE, r1
a256: 90 93 39 05 sts 0x0539, r25
a25a: 91 38 cpi r25, 0x81 ; 129
a25c: 09 f4 brne .+2 ; 0xa260 <SPI_TransmitByte+0x36>
a25e: 5e c0 rjmp .+188 ; 0xa31c <SPI_TransmitByte+0xf2>
a260: 20 91 8c 08 lds r18, 0x088C
a264: 20 32 cpi r18, 0x20 ; 32
a266: 08 f0 brcs .+2 ; 0xa26a <SPI_TransmitByte+0x40>
a268: 30 c0 rjmp .+96 ; 0xa2ca <SPI_TransmitByte+0xa0>
a26a: 45 98 cbi 0x08, 5 ; 8
...
a29c: e0 91 8a 08 lds r30, 0x088A
a2a0: f0 91 8b 08 lds r31, 0x088B
a2a4: e2 0f add r30, r18
a2a6: f1 1d adc r31, r1
a2a8: 80 81 ld r24, Z
a2aa: 8e bd out 0x2e, r24 ; 46
a2ac: 80 81 ld r24, Z
a2ae: 90 91 ac 08 lds r25, 0x08AC
a2b2: 89 0f add r24, r25
a2b4: 80 93 ac 08 sts 0x08AC, r24
a2b8: 2f 5f subi r18, 0xFF ; 255
a2ba: 20 93 8c 08 sts 0x088C, r18
a2be: 08 95 ret
a2c0: 95 35 cpi r25, 0x55 ; 85
a2c2: 19 f1 breq .+70 ; 0xa30a <SPI_TransmitByte+0xe0>
a2c4: 10 92 3a 05 sts 0x053A, r1
a2c8: cb cf rjmp .-106 ; 0xa260 <SPI_TransmitByte+0x36>
a2ca: 81 e0 ldi r24, 0x01 ; 1
a2cc: 80 93 89 08 sts 0x0889, r24
a2d0: f3 cf rjmp .-26 ; 0xa2b8 <SPI_TransmitByte+0x8e>
a2d2: 82 30 cpi r24, 0x02 ; 2
a2d4: 09 f0 breq .+2 ; 0xa2d8 <SPI_TransmitByte+0xae>
a2d6: c4 cf rjmp .-120 ; 0xa260 <SPI_TransmitByte+0x36>
a2d8: 80 91 ae 08 lds r24, 0x08AE
a2dc: e8 2f mov r30, r24
a2de: f0 e0 ldi r31, 0x00 ; 0
a2e0: e2 53 subi r30, 0x32 ; 50
a2e2: f7 4f sbci r31, 0xF7 ; 247
a2e4: 90 83 st Z, r25
a2e6: 8f 5f subi r24, 0xFF ; 255
a2e8: 80 93 ae 08 sts 0x08AE, r24
a2ec: 8a 31 cpi r24, 0x1A ; 26
a2ee: 38 f0 brcs .+14 ; 0xa2fe <SPI_TransmitByte+0xd4>
a2f0: 80 91 39 05 lds r24, 0x0539
a2f4: 98 17 cp r25, r24
a2f6: b1 f0 breq .+44 ; 0xa324 <SPI_TransmitByte+0xfa>
a2f8: 10 92 af 08 sts 0x08AF, r1
a2fc: e3 cf rjmp .-58 ; 0xa2c4 <SPI_TransmitByte+0x9a>
a2fe: 80 91 39 05 lds r24, 0x0539
a302: 89 0f add r24, r25
a304: 80 93 39 05 sts 0x0539, r24
a308: ab cf rjmp .-170 ; 0xa260 <SPI_TransmitByte+0x36>
a30a: 80 91 39 05 lds r24, 0x0539
a30e: 8b 5a subi r24, 0xAB ; 171
a310: 80 93 39 05 sts 0x0539, r24
a314: 82 e0 ldi r24, 0x02 ; 2
a316: 80 93 3a 05 sts 0x053A, r24
a31a: a2 cf rjmp .-188 ; 0xa260 <SPI_TransmitByte+0x36>
a31c: 81 e0 ldi r24, 0x01 ; 1
a31e: 80 93 3a 05 sts 0x053A, r24
a322: 9e cf rjmp .-196 ; 0xa260 <SPI_TransmitByte+0x36>
a324: a4 eb ldi r26, 0xB4 ; 180
a326: b8 e0 ldi r27, 0x08 ; 8
a328: ee ec ldi r30, 0xCE ; 206
a32a: f8 e0 ldi r31, 0x08 ; 8
a32c: 8a e1 ldi r24, 0x1A ; 26
a32e: 01 90 ld r0, Z+
a330: 0d 92 st X+, r0
a332: 81 50 subi r24, 0x01 ; 1
a334: e1 f7 brne .-8 ; 0xa32e <SPI_TransmitByte+0x104>
a336: 81 e0 ldi r24, 0x01 ; 1
a338: 80 93 af 08 sts 0x08AF, r24
a33c: c3 cf rjmp .-122 ; 0xa2c4 <SPI_TransmitByte+0x9a>
 
0000a33e <LED_Init>:
a33e: 87 b1 in r24, 0x07 ; 7
a340: 8c 60 ori r24, 0x0C ; 12
a342: 87 b9 out 0x07, r24 ; 7
a344: 42 98 cbi 0x08, 2 ; 8
a346: 43 98 cbi 0x08, 3 ; 8
a348: 10 92 3f 05 sts 0x053F, r1
a34c: 80 e8 ldi r24, 0x80 ; 128
a34e: 80 93 be 03 sts 0x03BE, r24
a352: 10 92 40 05 sts 0x0540, r1
a356: 80 93 bf 03 sts 0x03BF, r24
a35a: 08 95 ret
 
0000a35c <LED_Update>:
a35c: 80 91 41 05 lds r24, 0x0541
a360: 81 50 subi r24, 0x01 ; 1
a362: 80 93 41 05 sts 0x0541, r24
a366: 8f 3f cpi r24, 0xFF ; 255
a368: 09 f0 breq .+2 ; 0xa36c <LED_Update+0x10>
a36a: 08 95 ret
a36c: 84 e0 ldi r24, 0x04 ; 4
a36e: 80 93 41 05 sts 0x0541, r24
a372: 80 91 88 04 lds r24, 0x0488
a376: 88 23 and r24, r24
a378: b1 f1 breq .+108 ; 0xa3e6 <LED_Update+0x8a>
a37a: 80 91 3f 05 lds r24, 0x053F
a37e: 81 50 subi r24, 0x01 ; 1
a380: 80 93 3f 05 sts 0x053F, r24
a384: 8f 3f cpi r24, 0xFF ; 255
a386: 09 f4 brne .+2 ; 0xa38a <LED_Update+0x2e>
a388: 73 c0 rjmp .+230 ; 0xa470 <LED_Update+0x114>
a38a: 42 98 cbi 0x08, 2 ; 8
a38c: 80 91 10 08 lds r24, 0x0810
a390: 8b 3f cpi r24, 0xFB ; 251
a392: 68 f0 brcs .+26 ; 0xa3ae <LED_Update+0x52>
a394: 80 91 75 08 lds r24, 0x0875
a398: 87 3e cpi r24, 0xE7 ; 231
a39a: 08 f0 brcs .+2 ; 0xa39e <LED_Update+0x42>
a39c: 46 c0 rjmp .+140 ; 0xa42a <LED_Update+0xce>
a39e: 8a 30 cpi r24, 0x0A ; 10
a3a0: 30 f4 brcc .+12 ; 0xa3ae <LED_Update+0x52>
a3a2: 80 91 0f 08 lds r24, 0x080F
a3a6: 87 fd sbrc r24, 7
a3a8: 45 c0 rjmp .+138 ; 0xa434 <LED_Update+0xd8>
a3aa: 43 9a sbi 0x08, 3 ; 8
a3ac: 08 95 ret
a3ae: 80 91 40 05 lds r24, 0x0540
a3b2: 81 50 subi r24, 0x01 ; 1
a3b4: 80 93 40 05 sts 0x0540, r24
a3b8: 8f 3f cpi r24, 0xFF ; 255
a3ba: b9 f6 brne .-82 ; 0xa36a <LED_Update+0xe>
a3bc: 80 91 75 08 lds r24, 0x0875
a3c0: 81 50 subi r24, 0x01 ; 1
a3c2: 80 93 40 05 sts 0x0540, r24
a3c6: 80 91 bf 03 lds r24, 0x03BF
a3ca: 81 30 cpi r24, 0x01 ; 1
a3cc: 09 f4 brne .+2 ; 0xa3d0 <LED_Update+0x74>
a3ce: 68 c0 rjmp .+208 ; 0xa4a0 <LED_Update+0x144>
a3d0: 86 95 lsr r24
a3d2: 80 93 bf 03 sts 0x03BF, r24
a3d6: 80 91 bf 03 lds r24, 0x03BF
a3da: 90 91 0f 08 lds r25, 0x080F
a3de: 89 23 and r24, r25
a3e0: 21 f7 brne .-56 ; 0xa3aa <LED_Update+0x4e>
a3e2: 43 98 cbi 0x08, 3 ; 8
a3e4: 08 95 ret
a3e6: 80 91 42 08 lds r24, 0x0842
a3ea: 84 36 cpi r24, 0x64 ; 100
a3ec: 28 f1 brcs .+74 ; 0xa438 <LED_Update+0xdc>
a3ee: 87 39 cpi r24, 0x97 ; 151
a3f0: d0 f0 brcs .+52 ; 0xa426 <LED_Update+0xca>
a3f2: 80 91 3f 05 lds r24, 0x053F
a3f6: 81 50 subi r24, 0x01 ; 1
a3f8: 80 93 3f 05 sts 0x053F, r24
a3fc: 8f 3f cpi r24, 0xFF ; 255
a3fe: 29 f6 brne .-118 ; 0xa38a <LED_Update+0x2e>
a400: 80 91 61 08 lds r24, 0x0861
a404: 81 50 subi r24, 0x01 ; 1
a406: 80 93 3f 05 sts 0x053F, r24
a40a: 80 91 be 03 lds r24, 0x03BE
a40e: 81 30 cpi r24, 0x01 ; 1
a410: 09 f4 brne .+2 ; 0xa414 <LED_Update+0xb8>
a412: 4e c0 rjmp .+156 ; 0xa4b0 <LED_Update+0x154>
a414: 86 95 lsr r24
a416: 80 93 be 03 sts 0x03BE, r24
a41a: 80 91 be 03 lds r24, 0x03BE
a41e: 90 91 f7 07 lds r25, 0x07F7
a422: 89 23 and r24, r25
a424: 19 f1 breq .+70 ; 0xa46c <LED_Update+0x110>
a426: 42 9a sbi 0x08, 2 ; 8
a428: b0 cf rjmp .-160 ; 0xa38a <LED_Update+0x2e>
a42a: 80 91 0f 08 lds r24, 0x080F
a42e: 88 23 and r24, r24
a430: 0c f4 brge .+2 ; 0xa434 <LED_Update+0xd8>
a432: bb cf rjmp .-138 ; 0xa3aa <LED_Update+0x4e>
a434: 43 98 cbi 0x08, 3 ; 8
a436: 08 95 ret
a438: 80 91 3f 05 lds r24, 0x053F
a43c: 81 50 subi r24, 0x01 ; 1
a43e: 80 93 3f 05 sts 0x053F, r24
a442: 8f 3f cpi r24, 0xFF ; 255
a444: 09 f0 breq .+2 ; 0xa448 <LED_Update+0xec>
a446: a1 cf rjmp .-190 ; 0xa38a <LED_Update+0x2e>
a448: 80 91 61 08 lds r24, 0x0861
a44c: 81 50 subi r24, 0x01 ; 1
a44e: 80 93 3f 05 sts 0x053F, r24
a452: 80 91 be 03 lds r24, 0x03BE
a456: 81 30 cpi r24, 0x01 ; 1
a458: 39 f1 breq .+78 ; 0xa4a8 <LED_Update+0x14c>
a45a: 86 95 lsr r24
a45c: 80 93 be 03 sts 0x03BE, r24
a460: 80 91 be 03 lds r24, 0x03BE
a464: 90 91 f6 07 lds r25, 0x07F6
a468: 89 23 and r24, r25
a46a: e9 f6 brne .-70 ; 0xa426 <LED_Update+0xca>
a46c: 42 98 cbi 0x08, 2 ; 8
a46e: 8d cf rjmp .-230 ; 0xa38a <LED_Update+0x2e>
a470: 80 91 61 08 lds r24, 0x0861
a474: 81 50 subi r24, 0x01 ; 1
a476: 80 93 3f 05 sts 0x053F, r24
a47a: 80 91 be 03 lds r24, 0x03BE
a47e: 81 30 cpi r24, 0x01 ; 1
a480: 59 f0 breq .+22 ; 0xa498 <LED_Update+0x13c>
a482: 86 95 lsr r24
a484: 80 93 be 03 sts 0x03BE, r24
a488: 80 91 be 03 lds r24, 0x03BE
a48c: 90 91 f5 07 lds r25, 0x07F5
a490: 89 23 and r24, r25
a492: 61 f3 breq .-40 ; 0xa46c <LED_Update+0x110>
a494: 42 9a sbi 0x08, 2 ; 8
a496: 79 cf rjmp .-270 ; 0xa38a <LED_Update+0x2e>
a498: 80 e8 ldi r24, 0x80 ; 128
a49a: 80 93 be 03 sts 0x03BE, r24
a49e: f4 cf rjmp .-24 ; 0xa488 <LED_Update+0x12c>
a4a0: 80 e8 ldi r24, 0x80 ; 128
a4a2: 80 93 bf 03 sts 0x03BF, r24
a4a6: 97 cf rjmp .-210 ; 0xa3d6 <LED_Update+0x7a>
a4a8: 80 e8 ldi r24, 0x80 ; 128
a4aa: 80 93 be 03 sts 0x03BE, r24
a4ae: d8 cf rjmp .-80 ; 0xa460 <LED_Update+0x104>
a4b0: 80 e8 ldi r24, 0x80 ; 128
a4b2: 80 93 be 03 sts 0x03BE, r24
a4b6: b1 cf rjmp .-158 ; 0xa41a <LED_Update+0xbe>
 
0000a4b8 <Uart1Init>:
a4b8: 80 91 c9 00 lds r24, 0x00C9
a4bc: 8f 77 andi r24, 0x7F ; 127
a4be: 80 93 c9 00 sts 0x00C9, r24
a4c2: 80 91 c9 00 lds r24, 0x00C9
a4c6: 8f 7b andi r24, 0xBF ; 191
a4c8: 80 93 c9 00 sts 0x00C9, r24
a4cc: 80 91 c9 00 lds r24, 0x00C9
a4d0: 8f 7d andi r24, 0xDF ; 223
a4d2: 80 93 c9 00 sts 0x00C9, r24
a4d6: 5a 9a sbi 0x0b, 2 ; 11
a4d8: 52 98 cbi 0x0a, 2 ; 10
a4da: 10 92 cd 00 sts 0x00CD, r1
a4de: 84 e1 ldi r24, 0x14 ; 20
a4e0: 80 93 cc 00 sts 0x00CC, r24
a4e4: 80 91 c8 00 lds r24, 0x00C8
a4e8: 82 60 ori r24, 0x02 ; 2
a4ea: 80 93 c8 00 sts 0x00C8, r24
a4ee: 80 e1 ldi r24, 0x10 ; 16
a4f0: 80 93 c9 00 sts 0x00C9, r24
a4f4: 80 91 ca 00 lds r24, 0x00CA
a4f8: 8f 77 andi r24, 0x7F ; 127
a4fa: 80 93 ca 00 sts 0x00CA, r24
a4fe: 80 91 ca 00 lds r24, 0x00CA
a502: 8f 7b andi r24, 0xBF ; 191
a504: 80 93 ca 00 sts 0x00CA, r24
a508: 80 91 ca 00 lds r24, 0x00CA
a50c: 8f 7d andi r24, 0xDF ; 223
a50e: 80 93 ca 00 sts 0x00CA, r24
a512: 80 91 ca 00 lds r24, 0x00CA
a516: 8f 7e andi r24, 0xEF ; 239
a518: 80 93 ca 00 sts 0x00CA, r24
a51c: 80 91 ca 00 lds r24, 0x00CA
a520: 87 7f andi r24, 0xF7 ; 247
a522: 80 93 ca 00 sts 0x00CA, r24
a526: 80 91 c9 00 lds r24, 0x00C9
a52a: 8b 7f andi r24, 0xFB ; 251
a52c: 80 93 c9 00 sts 0x00C9, r24
a530: 80 91 ca 00 lds r24, 0x00CA
a534: 84 60 ori r24, 0x04 ; 4
a536: 80 93 ca 00 sts 0x00CA, r24
a53a: 80 91 ca 00 lds r24, 0x00CA
a53e: 82 60 ori r24, 0x02 ; 2
a540: 80 93 ca 00 sts 0x00CA, r24
a544: 80 91 c8 00 lds r24, 0x00C8
a548: 87 ff sbrs r24, 7
a54a: 06 c0 rjmp .+12 ; 0xa558 <Uart1Init+0xa0>
a54c: 80 91 ce 00 lds r24, 0x00CE
a550: 80 91 c8 00 lds r24, 0x00C8
a554: 87 fd sbrc r24, 7
a556: fa cf rjmp .-12 ; 0xa54c <Uart1Init+0x94>
a558: 80 91 c9 00 lds r24, 0x00C9
a55c: 80 68 ori r24, 0x80 ; 128
a55e: 80 93 c9 00 sts 0x00C9, r24
a562: 08 95 ret
 
0000a564 <__vector_28>:
a564: 1f 92 push r1
a566: 0f 92 push r0
a568: 0f b6 in r0, 0x3f ; 63
a56a: 0f 92 push r0
a56c: 11 24 eor r1, r1
a56e: 0f 93 push r16
a570: 1f 93 push r17
a572: 2f 93 push r18
a574: 3f 93 push r19
a576: 4f 93 push r20
a578: 5f 93 push r21
a57a: 6f 93 push r22
a57c: 7f 93 push r23
a57e: 8f 93 push r24
a580: 9f 93 push r25
a582: af 93 push r26
a584: bf 93 push r27
a586: cf 93 push r28
a588: df 93 push r29
a58a: ef 93 push r30
a58c: ff 93 push r31
a58e: 10 91 ce 00 lds r17, 0x00CE
a592: 80 91 c0 03 lds r24, 0x03C0
a596: 90 91 c1 03 lds r25, 0x03C1
a59a: 01 97 sbiw r24, 0x01 ; 1
a59c: 09 f4 brne .+2 ; 0xa5a0 <__vector_28+0x3c>
a59e: 4d c0 rjmp .+154 ; 0xa63a <__vector_28+0xd6>
a5a0: 80 91 42 05 lds r24, 0x0542
a5a4: 90 91 43 05 lds r25, 0x0543
a5a8: 0e 94 8e 12 call 0x251c ; 0x251c <CheckDelay>
a5ac: 20 91 4a 05 lds r18, 0x054A
a5b0: 30 91 4b 05 lds r19, 0x054B
a5b4: 21 15 cp r18, r1
a5b6: 31 05 cpc r19, r1
a5b8: 19 f1 breq .+70 ; 0xa600 <__vector_28+0x9c>
a5ba: 21 30 cpi r18, 0x01 ; 1
a5bc: 31 05 cpc r19, r1
a5be: 09 f4 brne .+2 ; 0xa5c2 <__vector_28+0x5e>
a5c0: ea c0 rjmp .+468 ; 0xa796 <__vector_28+0x232>
a5c2: 22 30 cpi r18, 0x02 ; 2
a5c4: 31 05 cpc r19, r1
a5c6: 09 f4 brne .+2 ; 0xa5ca <__vector_28+0x66>
a5c8: f9 c0 rjmp .+498 ; 0xa7bc <__vector_28+0x258>
a5ca: 23 30 cpi r18, 0x03 ; 3
a5cc: 31 05 cpc r19, r1
a5ce: 09 f4 brne .+2 ; 0xa5d2 <__vector_28+0x6e>
a5d0: 5d c0 rjmp .+186 ; 0xa68c <__vector_28+0x128>
a5d2: 81 e0 ldi r24, 0x01 ; 1
a5d4: 90 e0 ldi r25, 0x00 ; 0
a5d6: 90 93 c1 03 sts 0x03C1, r25
a5da: 80 93 c0 03 sts 0x03C0, r24
a5de: 10 92 49 05 sts 0x0549, r1
a5e2: 10 92 48 05 sts 0x0548, r1
a5e6: 10 92 45 05 sts 0x0545, r1
a5ea: 10 92 44 05 sts 0x0544, r1
a5ee: 87 e0 ldi r24, 0x07 ; 7
a5f0: 90 e0 ldi r25, 0x00 ; 0
a5f2: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
a5f6: 90 93 43 05 sts 0x0543, r25
a5fa: 80 93 42 05 sts 0x0542, r24
a5fe: 22 c1 rjmp .+580 ; 0xa844 <__vector_28+0x2e0>
a600: 88 23 and r24, r24
a602: a1 f5 brne .+104 ; 0xa66c <__vector_28+0x108>
a604: c0 91 48 05 lds r28, 0x0548
a608: d0 91 49 05 lds r29, 0x0549
a60c: 60 97 sbiw r28, 0x10 ; 16
a60e: 78 f3 brcs .-34 ; 0xa5ee <__vector_28+0x8a>
a610: 80 91 44 05 lds r24, 0x0544
a614: 90 91 45 05 lds r25, 0x0545
a618: 89 2b or r24, r25
a61a: 11 f4 brne .+4 ; 0xa620 <__vector_28+0xbc>
a61c: 10 92 79 03 sts 0x0379, r1
a620: 10 92 49 05 sts 0x0549, r1
a624: 10 92 48 05 sts 0x0548, r1
a628: 10 92 45 05 sts 0x0545, r1
a62c: 10 92 44 05 sts 0x0544, r1
a630: 10 92 4b 05 sts 0x054B, r1
a634: 10 92 4a 05 sts 0x054A, r1
a638: da cf rjmp .-76 ; 0xa5ee <__vector_28+0x8a>
a63a: 10 92 c1 03 sts 0x03C1, r1
a63e: 10 92 c0 03 sts 0x03C0, r1
a642: 87 e0 ldi r24, 0x07 ; 7
a644: 90 e0 ldi r25, 0x00 ; 0
a646: 0e 94 85 12 call 0x250a ; 0x250a <SetDelay>
a64a: 90 93 43 05 sts 0x0543, r25
a64e: 80 93 42 05 sts 0x0542, r24
a652: 10 92 49 05 sts 0x0549, r1
a656: 10 92 48 05 sts 0x0548, r1
a65a: 10 92 4b 05 sts 0x054B, r1
a65e: 10 92 4a 05 sts 0x054A, r1
a662: 10 92 47 05 sts 0x0547, r1
a666: 10 92 46 05 sts 0x0546, r1
a66a: ec c0 rjmp .+472 ; 0xa844 <__vector_28+0x2e0>
a66c: 81 e0 ldi r24, 0x01 ; 1
a66e: 90 e0 ldi r25, 0x00 ; 0
a670: 90 93 4b 05 sts 0x054B, r25
a674: 80 93 4a 05 sts 0x054A, r24
a678: c0 91 48 05 lds r28, 0x0548
a67c: d0 91 49 05 lds r29, 0x0549
a680: 21 96 adiw r28, 0x01 ; 1
a682: d0 93 49 05 sts 0x0549, r29
a686: c0 93 48 05 sts 0x0548, r28
a68a: c0 cf rjmp .-128 ; 0xa60c <__vector_28+0xa8>
a68c: 88 23 and r24, r24
a68e: 09 f0 breq .+2 ; 0xa692 <__vector_28+0x12e>
a690: a0 cf rjmp .-192 ; 0xa5d2 <__vector_28+0x6e>
a692: 82 e0 ldi r24, 0x02 ; 2
a694: 90 e0 ldi r25, 0x00 ; 0
a696: 90 93 4b 05 sts 0x054B, r25
a69a: 80 93 4a 05 sts 0x054A, r24
a69e: c0 91 48 05 lds r28, 0x0548
a6a2: d0 91 49 05 lds r29, 0x0549
a6a6: 21 96 adiw r28, 0x01 ; 1
a6a8: d0 93 49 05 sts 0x0549, r29
a6ac: c0 93 48 05 sts 0x0548, r28
a6b0: 20 91 46 05 lds r18, 0x0546
a6b4: 30 91 47 05 lds r19, 0x0547
a6b8: f9 01 movw r30, r18
a6ba: f6 95 lsr r31
a6bc: e7 95 ror r30
a6be: f6 95 lsr r31
a6c0: e7 95 ror r30
a6c2: ef 70 andi r30, 0x0F ; 15
a6c4: f0 70 andi r31, 0x00 ; 0
a6c6: 31 96 adiw r30, 0x01 ; 1
a6c8: eb 30 cpi r30, 0x0B ; 11
a6ca: f1 05 cpc r31, r1
a6cc: 08 f0 brcs .+2 ; 0xa6d0 <__vector_28+0x16c>
a6ce: 9e cf rjmp .-196 ; 0xa60c <__vector_28+0xa8>
a6d0: 81 2f mov r24, r17
a6d2: 90 e0 ldi r25, 0x00 ; 0
a6d4: 32 2f mov r19, r18
a6d6: 22 27 eor r18, r18
a6d8: 82 2b or r24, r18
a6da: 93 2b or r25, r19
a6dc: 93 70 andi r25, 0x03 ; 3
a6de: 80 50 subi r24, 0x00 ; 0
a6e0: 92 40 sbci r25, 0x02 ; 2
a6e2: 63 e0 ldi r22, 0x03 ; 3
a6e4: 70 e0 ldi r23, 0x00 ; 0
a6e6: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
a6ea: 8f 01 movw r16, r30
a6ec: 00 0f add r16, r16
a6ee: 11 1f adc r17, r17
a6f0: f8 01 movw r30, r16
a6f2: eb 55 subi r30, 0x5B ; 91
a6f4: f8 4f sbci r31, 0xF8 ; 248
a6f6: 80 81 ld r24, Z
a6f8: 91 81 ldd r25, Z+1 ; 0x01
a6fa: 9b 01 movw r18, r22
a6fc: 28 1b sub r18, r24
a6fe: 39 0b sbc r19, r25
a700: c9 01 movw r24, r18
a702: 37 fd sbrc r19, 7
a704: 9b c0 rjmp .+310 ; 0xa83c <__vector_28+0x2d8>
a706: 06 97 sbiw r24, 0x06 ; 6
a708: 54 f4 brge .+20 ; 0xa71e <__vector_28+0x1ba>
a70a: 80 91 94 04 lds r24, 0x0494
a70e: 88 3c cpi r24, 0xC8 ; 200
a710: 08 f0 brcs .+2 ; 0xa714 <__vector_28+0x1b0>
a712: 8d c0 rjmp .+282 ; 0xa82e <__vector_28+0x2ca>
a714: 80 91 94 04 lds r24, 0x0494
a718: 86 5f subi r24, 0xF6 ; 246
a71a: 80 93 94 04 sts 0x0494, r24
a71e: f8 01 movw r30, r16
a720: eb 55 subi r30, 0x5B ; 91
a722: f8 4f sbci r31, 0xF8 ; 248
a724: 80 81 ld r24, Z
a726: 91 81 ldd r25, Z+1 ; 0x01
a728: 9c 01 movw r18, r24
a72a: 22 0f add r18, r18
a72c: 33 1f adc r19, r19
a72e: 28 0f add r18, r24
a730: 39 1f adc r19, r25
a732: 26 0f add r18, r22
a734: 37 1f adc r19, r23
a736: 37 fd sbrc r19, 7
a738: 7e c0 rjmp .+252 ; 0xa836 <__vector_28+0x2d2>
a73a: 35 95 asr r19
a73c: 27 95 ror r18
a73e: 35 95 asr r19
a740: 27 95 ror r18
a742: cb 01 movw r24, r22
a744: 01 96 adiw r24, 0x01 ; 1
a746: 82 17 cp r24, r18
a748: 93 07 cpc r25, r19
a74a: 0c f0 brlt .+2 ; 0xa74e <__vector_28+0x1ea>
a74c: 67 c0 rjmp .+206 ; 0xa81c <__vector_28+0x2b8>
a74e: 21 50 subi r18, 0x01 ; 1
a750: 30 40 sbci r19, 0x00 ; 0
a752: 80 91 94 04 lds r24, 0x0494
a756: 84 3b cpi r24, 0xB4 ; 180
a758: 08 f4 brcc .+2 ; 0xa75c <__vector_28+0x1f8>
a75a: 5a c0 rjmp .+180 ; 0xa810 <__vector_28+0x2ac>
a75c: f8 01 movw r30, r16
a75e: eb 55 subi r30, 0x5B ; 91
a760: f8 4f sbci r31, 0xF8 ; 248
a762: 80 81 ld r24, Z
a764: 91 81 ldd r25, Z+1 ; 0x01
a766: a9 01 movw r20, r18
a768: 48 1b sub r20, r24
a76a: 59 0b sbc r21, r25
a76c: ca 01 movw r24, r20
a76e: 63 e0 ldi r22, 0x03 ; 3
a770: 70 e0 ldi r23, 0x00 ; 0
a772: 0e 94 d3 55 call 0xaba6 ; 0xaba6 <__divmodhi4>
a776: cb 01 movw r24, r22
a778: 88 0f add r24, r24
a77a: 99 1f adc r25, r25
a77c: 86 0f add r24, r22
a77e: 97 1f adc r25, r23
a780: f8 01 movw r30, r16
a782: e5 54 subi r30, 0x45 ; 69
a784: f8 4f sbci r31, 0xF8 ; 248
a786: 91 83 std Z+1, r25 ; 0x01
a788: 80 83 st Z, r24
a78a: 0b 55 subi r16, 0x5B ; 91
a78c: 18 4f sbci r17, 0xF8 ; 248
a78e: f8 01 movw r30, r16
a790: 31 83 std Z+1, r19 ; 0x01
a792: 20 83 st Z, r18
a794: 3b cf rjmp .-394 ; 0xa60c <__vector_28+0xa8>
a796: 88 23 and r24, r24
a798: 09 f0 breq .+2 ; 0xa79c <__vector_28+0x238>
a79a: 13 cf rjmp .-474 ; 0xa5c2 <__vector_28+0x5e>
a79c: 82 e0 ldi r24, 0x02 ; 2
a79e: 90 e0 ldi r25, 0x00 ; 0
a7a0: 90 93 4b 05 sts 0x054B, r25
a7a4: 80 93 4a 05 sts 0x054A, r24
a7a8: c0 91 48 05 lds r28, 0x0548
a7ac: d0 91 49 05 lds r29, 0x0549
a7b0: 21 96 adiw r28, 0x01 ; 1
a7b2: d0 93 49 05 sts 0x0549, r29
a7b6: c0 93 48 05 sts 0x0548, r28
a7ba: 28 cf rjmp .-432 ; 0xa60c <__vector_28+0xa8>
a7bc: 88 23 and r24, r24
a7be: 09 f0 breq .+2 ; 0xa7c2 <__vector_28+0x25e>
a7c0: 04 cf rjmp .-504 ; 0xa5ca <__vector_28+0x66>
a7c2: 81 2f mov r24, r17
a7c4: 90 e0 ldi r25, 0x00 ; 0
a7c6: 90 93 47 05 sts 0x0547, r25
a7ca: 80 93 46 05 sts 0x0546, r24
a7ce: 20 91 48 05 lds r18, 0x0548
a7d2: 30 91 49 05 lds r19, 0x0549
a7d6: 22 30 cpi r18, 0x02 ; 2
a7d8: 31 05 cpc r19, r1
a7da: 69 f0 breq .+26 ; 0xa7f6 <__vector_28+0x292>
a7dc: 83 e0 ldi r24, 0x03 ; 3
a7de: 90 e0 ldi r25, 0x00 ; 0
a7e0: 90 93 4b 05 sts 0x054B, r25
a7e4: 80 93 4a 05 sts 0x054A, r24
a7e8: e9 01 movw r28, r18
a7ea: 21 96 adiw r28, 0x01 ; 1
a7ec: d0 93 49 05 sts 0x0549, r29
a7f0: c0 93 48 05 sts 0x0548, r28
a7f4: 0b cf rjmp .-490 ; 0xa60c <__vector_28+0xa8>
a7f6: 10 92 45 05 sts 0x0545, r1
a7fa: 10 92 44 05 sts 0x0544, r1
a7fe: 17 ff sbrs r17, 7
a800: ed cf rjmp .-38 ; 0xa7dc <__vector_28+0x278>
a802: 81 e0 ldi r24, 0x01 ; 1
a804: 90 e0 ldi r25, 0x00 ; 0
a806: 90 93 45 05 sts 0x0545, r25
a80a: 80 93 44 05 sts 0x0544, r24
a80e: e6 cf rjmp .-52 ; 0xa7dc <__vector_28+0x278>
a810: f8 01 movw r30, r16
a812: e5 54 subi r30, 0x45 ; 69
a814: f8 4f sbci r31, 0xF8 ; 248
a816: 11 82 std Z+1, r1 ; 0x01
a818: 10 82 st Z, r1
a81a: b7 cf rjmp .-146 ; 0xa78a <__vector_28+0x226>
a81c: 61 50 subi r22, 0x01 ; 1
a81e: 70 40 sbci r23, 0x00 ; 0
a820: 26 17 cp r18, r22
a822: 37 07 cpc r19, r23
a824: 0c f0 brlt .+2 ; 0xa828 <__vector_28+0x2c4>
a826: 95 cf rjmp .-214 ; 0xa752 <__vector_28+0x1ee>
a828: 2f 5f subi r18, 0xFF ; 255
a82a: 3f 4f sbci r19, 0xFF ; 255
a82c: 92 cf rjmp .-220 ; 0xa752 <__vector_28+0x1ee>
a82e: 88 ec ldi r24, 0xC8 ; 200
a830: 80 93 94 04 sts 0x0494, r24
a834: 74 cf rjmp .-280 ; 0xa71e <__vector_28+0x1ba>
a836: 2d 5f subi r18, 0xFD ; 253
a838: 3f 4f sbci r19, 0xFF ; 255
a83a: 7f cf rjmp .-258 ; 0xa73a <__vector_28+0x1d6>
a83c: 90 95 com r25
a83e: 81 95 neg r24
a840: 9f 4f sbci r25, 0xFF ; 255
a842: 61 cf rjmp .-318 ; 0xa706 <__vector_28+0x1a2>
a844: ff 91 pop r31
a846: ef 91 pop r30
a848: df 91 pop r29
a84a: cf 91 pop r28
a84c: bf 91 pop r27
a84e: af 91 pop r26
a850: 9f 91 pop r25
a852: 8f 91 pop r24
a854: 7f 91 pop r23
a856: 6f 91 pop r22
a858: 5f 91 pop r21
a85a: 4f 91 pop r20
a85c: 3f 91 pop r19
a85e: 2f 91 pop r18
a860: 1f 91 pop r17
a862: 0f 91 pop r16
a864: 0f 90 pop r0
a866: 0f be out 0x3f, r0 ; 63
a868: 0f 90 pop r0
a86a: 1f 90 pop r1
a86c: 18 95 reti
 
0000a86e <memchr>:
a86e: fc 01 movw r30, r24
a870: 41 50 subi r20, 0x01 ; 1
a872: 50 40 sbci r21, 0x00 ; 0
a874: 30 f0 brcs .+12 ; 0xa882 <memchr+0x14>
a876: 01 90 ld r0, Z+
a878: 06 16 cp r0, r22
a87a: d1 f7 brne .-12 ; 0xa870 <memchr+0x2>
a87c: 31 97 sbiw r30, 0x01 ; 1
a87e: cf 01 movw r24, r30
a880: 08 95 ret
a882: 88 27 eor r24, r24
a884: 99 27 eor r25, r25
a886: 08 95 ret
 
0000a888 <__subsf3>:
a888: 50 58 subi r21, 0x80 ; 128
 
0000a88a <__addsf3>:
a88a: bb 27 eor r27, r27
a88c: aa 27 eor r26, r26
a88e: 0e d0 rcall .+28 ; 0xa8ac <__addsf3x>
a890: 11 c1 rjmp .+546 ; 0xaab4 <__fp_round>
a892: 02 d1 rcall .+516 ; 0xaa98 <__fp_pscA>
a894: 30 f0 brcs .+12 ; 0xa8a2 <__addsf3+0x18>
a896: 07 d1 rcall .+526 ; 0xaaa6 <__fp_pscB>
a898: 20 f0 brcs .+8 ; 0xa8a2 <__addsf3+0x18>
a89a: 31 f4 brne .+12 ; 0xa8a8 <__addsf3+0x1e>
a89c: 9f 3f cpi r25, 0xFF ; 255
a89e: 11 f4 brne .+4 ; 0xa8a4 <__addsf3+0x1a>
a8a0: 1e f4 brtc .+6 ; 0xa8a8 <__addsf3+0x1e>
a8a2: f7 c0 rjmp .+494 ; 0xaa92 <__fp_nan>
a8a4: 0e f4 brtc .+2 ; 0xa8a8 <__addsf3+0x1e>
a8a6: e0 95 com r30
a8a8: e7 fb bst r30, 7
a8aa: ed c0 rjmp .+474 ; 0xaa86 <__fp_inf>
 
0000a8ac <__addsf3x>:
a8ac: e9 2f mov r30, r25
a8ae: 13 d1 rcall .+550 ; 0xaad6 <__fp_split3>
a8b0: 80 f3 brcs .-32 ; 0xa892 <__addsf3+0x8>
a8b2: ba 17 cp r27, r26
a8b4: 62 07 cpc r22, r18
a8b6: 73 07 cpc r23, r19
a8b8: 84 07 cpc r24, r20
a8ba: 95 07 cpc r25, r21
a8bc: 18 f0 brcs .+6 ; 0xa8c4 <__addsf3x+0x18>
a8be: 71 f4 brne .+28 ; 0xa8dc <__addsf3x+0x30>
a8c0: 9e f5 brtc .+102 ; 0xa928 <__addsf3x+0x7c>
a8c2: 2b c1 rjmp .+598 ; 0xab1a <__fp_zero>
a8c4: 0e f4 brtc .+2 ; 0xa8c8 <__addsf3x+0x1c>
a8c6: e0 95 com r30
a8c8: 0b 2e mov r0, r27
a8ca: ba 2f mov r27, r26
a8cc: a0 2d mov r26, r0
a8ce: 0b 01 movw r0, r22
a8d0: b9 01 movw r22, r18
a8d2: 90 01 movw r18, r0
a8d4: 0c 01 movw r0, r24
a8d6: ca 01 movw r24, r20
a8d8: a0 01 movw r20, r0
a8da: 11 24 eor r1, r1
a8dc: ff 27 eor r31, r31
a8de: 59 1b sub r21, r25
a8e0: 99 f0 breq .+38 ; 0xa908 <__addsf3x+0x5c>
a8e2: 59 3f cpi r21, 0xF9 ; 249
a8e4: 50 f4 brcc .+20 ; 0xa8fa <__addsf3x+0x4e>
a8e6: 50 3e cpi r21, 0xE0 ; 224
a8e8: 68 f1 brcs .+90 ; 0xa944 <__addsf3x+0x98>
a8ea: 1a 16 cp r1, r26
a8ec: f0 40 sbci r31, 0x00 ; 0
a8ee: a2 2f mov r26, r18
a8f0: 23 2f mov r18, r19
a8f2: 34 2f mov r19, r20
a8f4: 44 27 eor r20, r20
a8f6: 58 5f subi r21, 0xF8 ; 248
a8f8: f3 cf rjmp .-26 ; 0xa8e0 <__addsf3x+0x34>
a8fa: 46 95 lsr r20
a8fc: 37 95 ror r19
a8fe: 27 95 ror r18
a900: a7 95 ror r26
a902: f0 40 sbci r31, 0x00 ; 0
a904: 53 95 inc r21
a906: c9 f7 brne .-14 ; 0xa8fa <__addsf3x+0x4e>
a908: 7e f4 brtc .+30 ; 0xa928 <__addsf3x+0x7c>
a90a: 1f 16 cp r1, r31
a90c: ba 0b sbc r27, r26
a90e: 62 0b sbc r22, r18
a910: 73 0b sbc r23, r19
a912: 84 0b sbc r24, r20
a914: ba f0 brmi .+46 ; 0xa944 <__addsf3x+0x98>
a916: 91 50 subi r25, 0x01 ; 1
a918: a1 f0 breq .+40 ; 0xa942 <__addsf3x+0x96>
a91a: ff 0f add r31, r31
a91c: bb 1f adc r27, r27
a91e: 66 1f adc r22, r22
a920: 77 1f adc r23, r23
a922: 88 1f adc r24, r24
a924: c2 f7 brpl .-16 ; 0xa916 <__addsf3x+0x6a>
a926: 0e c0 rjmp .+28 ; 0xa944 <__addsf3x+0x98>
a928: ba 0f add r27, r26
a92a: 62 1f adc r22, r18
a92c: 73 1f adc r23, r19
a92e: 84 1f adc r24, r20
a930: 48 f4 brcc .+18 ; 0xa944 <__addsf3x+0x98>
a932: 87 95 ror r24
a934: 77 95 ror r23
a936: 67 95 ror r22
a938: b7 95 ror r27
a93a: f7 95 ror r31
a93c: 9e 3f cpi r25, 0xFE ; 254
a93e: 08 f0 brcs .+2 ; 0xa942 <__addsf3x+0x96>
a940: b3 cf rjmp .-154 ; 0xa8a8 <__addsf3+0x1e>
a942: 93 95 inc r25
a944: 88 0f add r24, r24
a946: 08 f0 brcs .+2 ; 0xa94a <__addsf3x+0x9e>
a948: 99 27 eor r25, r25
a94a: ee 0f add r30, r30
a94c: 97 95 ror r25
a94e: 87 95 ror r24
a950: 08 95 ret
 
0000a952 <__fixsfsi>:
a952: 04 d0 rcall .+8 ; 0xa95c <__fixunssfsi>
a954: 68 94 set
a956: b1 11 cpse r27, r1
a958: e1 c0 rjmp .+450 ; 0xab1c <__fp_szero>
a95a: 08 95 ret
 
0000a95c <__fixunssfsi>:
a95c: c4 d0 rcall .+392 ; 0xaae6 <__fp_splitA>
a95e: 88 f0 brcs .+34 ; 0xa982 <__fixunssfsi+0x26>
a960: 9f 57 subi r25, 0x7F ; 127
a962: 90 f0 brcs .+36 ; 0xa988 <__fixunssfsi+0x2c>
a964: b9 2f mov r27, r25
a966: 99 27 eor r25, r25
a968: b7 51 subi r27, 0x17 ; 23
a96a: a0 f0 brcs .+40 ; 0xa994 <__fixunssfsi+0x38>
a96c: d1 f0 breq .+52 ; 0xa9a2 <__fixunssfsi+0x46>
a96e: 66 0f add r22, r22
a970: 77 1f adc r23, r23
a972: 88 1f adc r24, r24
a974: 99 1f adc r25, r25
a976: 1a f0 brmi .+6 ; 0xa97e <__fixunssfsi+0x22>
a978: ba 95 dec r27
a97a: c9 f7 brne .-14 ; 0xa96e <__fixunssfsi+0x12>
a97c: 12 c0 rjmp .+36 ; 0xa9a2 <__fixunssfsi+0x46>
a97e: b1 30 cpi r27, 0x01 ; 1
a980: 81 f0 breq .+32 ; 0xa9a2 <__fixunssfsi+0x46>
a982: cb d0 rcall .+406 ; 0xab1a <__fp_zero>
a984: b1 e0 ldi r27, 0x01 ; 1
a986: 08 95 ret
a988: c8 c0 rjmp .+400 ; 0xab1a <__fp_zero>
a98a: 67 2f mov r22, r23
a98c: 78 2f mov r23, r24
a98e: 88 27 eor r24, r24
a990: b8 5f subi r27, 0xF8 ; 248
a992: 39 f0 breq .+14 ; 0xa9a2 <__fixunssfsi+0x46>
a994: b9 3f cpi r27, 0xF9 ; 249
a996: cc f3 brlt .-14 ; 0xa98a <__fixunssfsi+0x2e>
a998: 86 95 lsr r24
a99a: 77 95 ror r23
a99c: 67 95 ror r22
a99e: b3 95 inc r27
a9a0: d9 f7 brne .-10 ; 0xa998 <__fixunssfsi+0x3c>
a9a2: 3e f4 brtc .+14 ; 0xa9b2 <__fixunssfsi+0x56>
a9a4: 90 95 com r25
a9a6: 80 95 com r24
a9a8: 70 95 com r23
a9aa: 61 95 neg r22
a9ac: 7f 4f sbci r23, 0xFF ; 255
a9ae: 8f 4f sbci r24, 0xFF ; 255
a9b0: 9f 4f sbci r25, 0xFF ; 255
a9b2: 08 95 ret
 
0000a9b4 <__floatunssisf>:
a9b4: e8 94 clt
a9b6: 09 c0 rjmp .+18 ; 0xa9ca <__floatsisf+0x12>
 
0000a9b8 <__floatsisf>:
a9b8: 97 fb bst r25, 7
a9ba: 3e f4 brtc .+14 ; 0xa9ca <__floatsisf+0x12>
a9bc: 90 95 com r25
a9be: 80 95 com r24
a9c0: 70 95 com r23
a9c2: 61 95 neg r22
a9c4: 7f 4f sbci r23, 0xFF ; 255
a9c6: 8f 4f sbci r24, 0xFF ; 255
a9c8: 9f 4f sbci r25, 0xFF ; 255
a9ca: 99 23 and r25, r25
a9cc: a9 f0 breq .+42 ; 0xa9f8 <__floatsisf+0x40>
a9ce: f9 2f mov r31, r25
a9d0: 96 e9 ldi r25, 0x96 ; 150
a9d2: bb 27 eor r27, r27
a9d4: 93 95 inc r25
a9d6: f6 95 lsr r31
a9d8: 87 95 ror r24
a9da: 77 95 ror r23
a9dc: 67 95 ror r22
a9de: b7 95 ror r27
a9e0: f1 11 cpse r31, r1
a9e2: f8 cf rjmp .-16 ; 0xa9d4 <__floatsisf+0x1c>
a9e4: fa f4 brpl .+62 ; 0xaa24 <__floatsisf+0x6c>
a9e6: bb 0f add r27, r27
a9e8: 11 f4 brne .+4 ; 0xa9ee <__floatsisf+0x36>
a9ea: 60 ff sbrs r22, 0
a9ec: 1b c0 rjmp .+54 ; 0xaa24 <__floatsisf+0x6c>
a9ee: 6f 5f subi r22, 0xFF ; 255
a9f0: 7f 4f sbci r23, 0xFF ; 255
a9f2: 8f 4f sbci r24, 0xFF ; 255
a9f4: 9f 4f sbci r25, 0xFF ; 255
a9f6: 16 c0 rjmp .+44 ; 0xaa24 <__floatsisf+0x6c>
a9f8: 88 23 and r24, r24
a9fa: 11 f0 breq .+4 ; 0xaa00 <__floatsisf+0x48>
a9fc: 96 e9 ldi r25, 0x96 ; 150
a9fe: 11 c0 rjmp .+34 ; 0xaa22 <__floatsisf+0x6a>
aa00: 77 23 and r23, r23
aa02: 21 f0 breq .+8 ; 0xaa0c <__floatsisf+0x54>
aa04: 9e e8 ldi r25, 0x8E ; 142
aa06: 87 2f mov r24, r23
aa08: 76 2f mov r23, r22
aa0a: 05 c0 rjmp .+10 ; 0xaa16 <__floatsisf+0x5e>
aa0c: 66 23 and r22, r22
aa0e: 71 f0 breq .+28 ; 0xaa2c <__floatsisf+0x74>
aa10: 96 e8 ldi r25, 0x86 ; 134
aa12: 86 2f mov r24, r22
aa14: 70 e0 ldi r23, 0x00 ; 0
aa16: 60 e0 ldi r22, 0x00 ; 0
aa18: 2a f0 brmi .+10 ; 0xaa24 <__floatsisf+0x6c>
aa1a: 9a 95 dec r25
aa1c: 66 0f add r22, r22
aa1e: 77 1f adc r23, r23
aa20: 88 1f adc r24, r24
aa22: da f7 brpl .-10 ; 0xaa1a <__floatsisf+0x62>
aa24: 88 0f add r24, r24
aa26: 96 95 lsr r25
aa28: 87 95 ror r24
aa2a: 97 f9 bld r25, 7
aa2c: 08 95 ret
 
0000aa2e <__cmpsf2>:
aa2e: 07 d0 rcall .+14 ; 0xaa3e <__gesf2+0x8>
aa30: 08 f4 brcc .+2 ; 0xaa34 <__cmpsf2+0x6>
aa32: 81 e0 ldi r24, 0x01 ; 1
aa34: 08 95 ret
 
0000aa36 <__gesf2>:
aa36: 03 d0 rcall .+6 ; 0xaa3e <__gesf2+0x8>
aa38: 08 f4 brcc .+2 ; 0xaa3c <__gesf2+0x6>
aa3a: 8f ef ldi r24, 0xFF ; 255
aa3c: 08 95 ret
aa3e: 99 0f add r25, r25
aa40: 00 08 sbc r0, r0
aa42: 55 0f add r21, r21
aa44: aa 0b sbc r26, r26
aa46: e0 e8 ldi r30, 0x80 ; 128
aa48: fe ef ldi r31, 0xFE ; 254
aa4a: 16 16 cp r1, r22
aa4c: 17 06 cpc r1, r23
aa4e: e8 07 cpc r30, r24
aa50: f9 07 cpc r31, r25
aa52: c0 f0 brcs .+48 ; 0xaa84 <__gesf2+0x4e>
aa54: 12 16 cp r1, r18
aa56: 13 06 cpc r1, r19
aa58: e4 07 cpc r30, r20
aa5a: f5 07 cpc r31, r21
aa5c: 98 f0 brcs .+38 ; 0xaa84 <__gesf2+0x4e>
aa5e: 62 1b sub r22, r18
aa60: 73 0b sbc r23, r19
aa62: 84 0b sbc r24, r20
aa64: 95 0b sbc r25, r21
aa66: 39 f4 brne .+14 ; 0xaa76 <__gesf2+0x40>
aa68: 0a 26 eor r0, r26
aa6a: 61 f0 breq .+24 ; 0xaa84 <__gesf2+0x4e>
aa6c: 23 2b or r18, r19
aa6e: 24 2b or r18, r20
aa70: 25 2b or r18, r21
aa72: 21 f4 brne .+8 ; 0xaa7c <__gesf2+0x46>
aa74: 08 95 ret
aa76: 0a 26 eor r0, r26
aa78: 09 f4 brne .+2 ; 0xaa7c <__gesf2+0x46>
aa7a: a1 40 sbci r26, 0x01 ; 1
aa7c: a6 95 lsr r26
aa7e: 8f ef ldi r24, 0xFF ; 255
aa80: 81 1d adc r24, r1
aa82: 81 1d adc r24, r1
aa84: 08 95 ret
 
0000aa86 <__fp_inf>:
aa86: 97 f9 bld r25, 7
aa88: 9f 67 ori r25, 0x7F ; 127
aa8a: 80 e8 ldi r24, 0x80 ; 128
aa8c: 70 e0 ldi r23, 0x00 ; 0
aa8e: 60 e0 ldi r22, 0x00 ; 0
aa90: 08 95 ret
 
0000aa92 <__fp_nan>:
aa92: 9f ef ldi r25, 0xFF ; 255
aa94: 80 ec ldi r24, 0xC0 ; 192
aa96: 08 95 ret
 
0000aa98 <__fp_pscA>:
aa98: 00 24 eor r0, r0
aa9a: 0a 94 dec r0
aa9c: 16 16 cp r1, r22
aa9e: 17 06 cpc r1, r23
aaa0: 18 06 cpc r1, r24
aaa2: 09 06 cpc r0, r25
aaa4: 08 95 ret
 
0000aaa6 <__fp_pscB>:
aaa6: 00 24 eor r0, r0
aaa8: 0a 94 dec r0
aaaa: 12 16 cp r1, r18
aaac: 13 06 cpc r1, r19
aaae: 14 06 cpc r1, r20
aab0: 05 06 cpc r0, r21
aab2: 08 95 ret
 
0000aab4 <__fp_round>:
aab4: 09 2e mov r0, r25
aab6: 03 94 inc r0
aab8: 00 0c add r0, r0
aaba: 11 f4 brne .+4 ; 0xaac0 <__fp_round+0xc>
aabc: 88 23 and r24, r24
aabe: 52 f0 brmi .+20 ; 0xaad4 <__fp_round+0x20>
aac0: bb 0f add r27, r27
aac2: 40 f4 brcc .+16 ; 0xaad4 <__fp_round+0x20>
aac4: bf 2b or r27, r31
aac6: 11 f4 brne .+4 ; 0xaacc <__fp_round+0x18>
aac8: 60 ff sbrs r22, 0
aaca: 04 c0 rjmp .+8 ; 0xaad4 <__fp_round+0x20>
aacc: 6f 5f subi r22, 0xFF ; 255
aace: 7f 4f sbci r23, 0xFF ; 255
aad0: 8f 4f sbci r24, 0xFF ; 255
aad2: 9f 4f sbci r25, 0xFF ; 255
aad4: 08 95 ret
 
0000aad6 <__fp_split3>:
aad6: 57 fd sbrc r21, 7
aad8: 90 58 subi r25, 0x80 ; 128
aada: 44 0f add r20, r20
aadc: 55 1f adc r21, r21
aade: 59 f0 breq .+22 ; 0xaaf6 <__fp_splitA+0x10>
aae0: 5f 3f cpi r21, 0xFF ; 255
aae2: 71 f0 breq .+28 ; 0xab00 <__fp_splitA+0x1a>
aae4: 47 95 ror r20
 
0000aae6 <__fp_splitA>:
aae6: 88 0f add r24, r24
aae8: 97 fb bst r25, 7
aaea: 99 1f adc r25, r25
aaec: 61 f0 breq .+24 ; 0xab06 <__fp_splitA+0x20>
aaee: 9f 3f cpi r25, 0xFF ; 255
aaf0: 79 f0 breq .+30 ; 0xab10 <__fp_splitA+0x2a>
aaf2: 87 95 ror r24
aaf4: 08 95 ret
aaf6: 12 16 cp r1, r18
aaf8: 13 06 cpc r1, r19
aafa: 14 06 cpc r1, r20
aafc: 55 1f adc r21, r21
aafe: f2 cf rjmp .-28 ; 0xaae4 <__fp_split3+0xe>
ab00: 46 95 lsr r20
ab02: f1 df rcall .-30 ; 0xaae6 <__fp_splitA>
ab04: 08 c0 rjmp .+16 ; 0xab16 <__fp_splitA+0x30>
ab06: 16 16 cp r1, r22
ab08: 17 06 cpc r1, r23
ab0a: 18 06 cpc r1, r24
ab0c: 99 1f adc r25, r25
ab0e: f1 cf rjmp .-30 ; 0xaaf2 <__fp_splitA+0xc>
ab10: 86 95 lsr r24
ab12: 71 05 cpc r23, r1
ab14: 61 05 cpc r22, r1
ab16: 08 94 sec
ab18: 08 95 ret
 
0000ab1a <__fp_zero>:
ab1a: e8 94 clt
 
0000ab1c <__fp_szero>:
ab1c: bb 27 eor r27, r27
ab1e: 66 27 eor r22, r22
ab20: 77 27 eor r23, r23
ab22: cb 01 movw r24, r22
ab24: 97 f9 bld r25, 7
ab26: 08 95 ret
 
0000ab28 <__mulsi3>:
ab28: 62 9f mul r22, r18
ab2a: d0 01 movw r26, r0
ab2c: 73 9f mul r23, r19
ab2e: f0 01 movw r30, r0
ab30: 82 9f mul r24, r18
ab32: e0 0d add r30, r0
ab34: f1 1d adc r31, r1
ab36: 64 9f mul r22, r20
ab38: e0 0d add r30, r0
ab3a: f1 1d adc r31, r1
ab3c: 92 9f mul r25, r18
ab3e: f0 0d add r31, r0
ab40: 83 9f mul r24, r19
ab42: f0 0d add r31, r0
ab44: 74 9f mul r23, r20
ab46: f0 0d add r31, r0
ab48: 65 9f mul r22, r21
ab4a: f0 0d add r31, r0
ab4c: 99 27 eor r25, r25
ab4e: 72 9f mul r23, r18
ab50: b0 0d add r27, r0
ab52: e1 1d adc r30, r1
ab54: f9 1f adc r31, r25
ab56: 63 9f mul r22, r19
ab58: b0 0d add r27, r0
ab5a: e1 1d adc r30, r1
ab5c: f9 1f adc r31, r25
ab5e: bd 01 movw r22, r26
ab60: cf 01 movw r24, r30
ab62: 11 24 eor r1, r1
ab64: 08 95 ret
 
0000ab66 <__udivmodqi4>:
ab66: 99 1b sub r25, r25
ab68: 79 e0 ldi r23, 0x09 ; 9
ab6a: 04 c0 rjmp .+8 ; 0xab74 <__udivmodqi4_ep>
 
0000ab6c <__udivmodqi4_loop>:
ab6c: 99 1f adc r25, r25
ab6e: 96 17 cp r25, r22
ab70: 08 f0 brcs .+2 ; 0xab74 <__udivmodqi4_ep>
ab72: 96 1b sub r25, r22
 
0000ab74 <__udivmodqi4_ep>:
ab74: 88 1f adc r24, r24
ab76: 7a 95 dec r23
ab78: c9 f7 brne .-14 ; 0xab6c <__udivmodqi4_loop>
ab7a: 80 95 com r24
ab7c: 08 95 ret
 
0000ab7e <__udivmodhi4>:
ab7e: aa 1b sub r26, r26
ab80: bb 1b sub r27, r27
ab82: 51 e1 ldi r21, 0x11 ; 17
ab84: 07 c0 rjmp .+14 ; 0xab94 <__udivmodhi4_ep>
 
0000ab86 <__udivmodhi4_loop>:
ab86: aa 1f adc r26, r26
ab88: bb 1f adc r27, r27
ab8a: a6 17 cp r26, r22
ab8c: b7 07 cpc r27, r23
ab8e: 10 f0 brcs .+4 ; 0xab94 <__udivmodhi4_ep>
ab90: a6 1b sub r26, r22
ab92: b7 0b sbc r27, r23
 
0000ab94 <__udivmodhi4_ep>:
ab94: 88 1f adc r24, r24
ab96: 99 1f adc r25, r25
ab98: 5a 95 dec r21
ab9a: a9 f7 brne .-22 ; 0xab86 <__udivmodhi4_loop>
ab9c: 80 95 com r24
ab9e: 90 95 com r25
aba0: bc 01 movw r22, r24
aba2: cd 01 movw r24, r26
aba4: 08 95 ret
 
0000aba6 <__divmodhi4>:
aba6: 97 fb bst r25, 7
aba8: 09 2e mov r0, r25
abaa: 07 26 eor r0, r23
abac: 0a d0 rcall .+20 ; 0xabc2 <__divmodhi4_neg1>
abae: 77 fd sbrc r23, 7
abb0: 04 d0 rcall .+8 ; 0xabba <__divmodhi4_neg2>
abb2: e5 df rcall .-54 ; 0xab7e <__udivmodhi4>
abb4: 06 d0 rcall .+12 ; 0xabc2 <__divmodhi4_neg1>
abb6: 00 20 and r0, r0
abb8: 1a f4 brpl .+6 ; 0xabc0 <__divmodhi4_exit>
 
0000abba <__divmodhi4_neg2>:
abba: 70 95 com r23
abbc: 61 95 neg r22
abbe: 7f 4f sbci r23, 0xFF ; 255
 
0000abc0 <__divmodhi4_exit>:
abc0: 08 95 ret
 
0000abc2 <__divmodhi4_neg1>:
abc2: f6 f7 brtc .-4 ; 0xabc0 <__divmodhi4_exit>
abc4: 90 95 com r25
abc6: 81 95 neg r24
abc8: 9f 4f sbci r25, 0xFF ; 255
abca: 08 95 ret
 
0000abcc <__udivmodsi4>:
abcc: a1 e2 ldi r26, 0x21 ; 33
abce: 1a 2e mov r1, r26
abd0: aa 1b sub r26, r26
abd2: bb 1b sub r27, r27
abd4: fd 01 movw r30, r26
abd6: 0d c0 rjmp .+26 ; 0xabf2 <__udivmodsi4_ep>
 
0000abd8 <__udivmodsi4_loop>:
abd8: aa 1f adc r26, r26
abda: bb 1f adc r27, r27
abdc: ee 1f adc r30, r30
abde: ff 1f adc r31, r31
abe0: a2 17 cp r26, r18
abe2: b3 07 cpc r27, r19
abe4: e4 07 cpc r30, r20
abe6: f5 07 cpc r31, r21
abe8: 20 f0 brcs .+8 ; 0xabf2 <__udivmodsi4_ep>
abea: a2 1b sub r26, r18
abec: b3 0b sbc r27, r19
abee: e4 0b sbc r30, r20
abf0: f5 0b sbc r31, r21
 
0000abf2 <__udivmodsi4_ep>:
abf2: 66 1f adc r22, r22
abf4: 77 1f adc r23, r23
abf6: 88 1f adc r24, r24
abf8: 99 1f adc r25, r25
abfa: 1a 94 dec r1
abfc: 69 f7 brne .-38 ; 0xabd8 <__udivmodsi4_loop>
abfe: 60 95 com r22
ac00: 70 95 com r23
ac02: 80 95 com r24
ac04: 90 95 com r25
ac06: 9b 01 movw r18, r22
ac08: ac 01 movw r20, r24
ac0a: bd 01 movw r22, r26
ac0c: cf 01 movw r24, r30
ac0e: 08 95 ret
 
0000ac10 <__divmodsi4>:
ac10: 97 fb bst r25, 7
ac12: 09 2e mov r0, r25
ac14: 05 26 eor r0, r21
ac16: 0e d0 rcall .+28 ; 0xac34 <__divmodsi4_neg1>
ac18: 57 fd sbrc r21, 7
ac1a: 04 d0 rcall .+8 ; 0xac24 <__divmodsi4_neg2>
ac1c: d7 df rcall .-82 ; 0xabcc <__udivmodsi4>
ac1e: 0a d0 rcall .+20 ; 0xac34 <__divmodsi4_neg1>
ac20: 00 1c adc r0, r0
ac22: 38 f4 brcc .+14 ; 0xac32 <__divmodsi4_exit>
 
0000ac24 <__divmodsi4_neg2>:
ac24: 50 95 com r21
ac26: 40 95 com r20
ac28: 30 95 com r19
ac2a: 21 95 neg r18
ac2c: 3f 4f sbci r19, 0xFF ; 255
ac2e: 4f 4f sbci r20, 0xFF ; 255
ac30: 5f 4f sbci r21, 0xFF ; 255
 
0000ac32 <__divmodsi4_exit>:
ac32: 08 95 ret
 
0000ac34 <__divmodsi4_neg1>:
ac34: f6 f7 brtc .-4 ; 0xac32 <__divmodsi4_exit>
ac36: 90 95 com r25
ac38: 80 95 com r24
ac3a: 70 95 com r23
ac3c: 61 95 neg r22
ac3e: 7f 4f sbci r23, 0xFF ; 255
ac40: 8f 4f sbci r24, 0xFF ; 255
ac42: 9f 4f sbci r25, 0xFF ; 255
ac44: 08 95 ret
 
0000ac46 <__eeprom_read_byte_1F2021>:
ac46: f9 99 sbic 0x1f, 1 ; 31
ac48: fe cf rjmp .-4 ; 0xac46 <__eeprom_read_byte_1F2021>
ac4a: b2 bd out 0x22, r27 ; 34
ac4c: a1 bd out 0x21, r26 ; 33
ac4e: f8 9a sbi 0x1f, 0 ; 31
ac50: 11 96 adiw r26, 0x01 ; 1
ac52: 00 b4 in r0, 0x20 ; 32
ac54: 08 95 ret
 
0000ac56 <__eeprom_write_byte_1F2021>:
ac56: f9 99 sbic 0x1f, 1 ; 31
ac58: fe cf rjmp .-4 ; 0xac56 <__eeprom_write_byte_1F2021>
ac5a: b2 bd out 0x22, r27 ; 34
ac5c: a1 bd out 0x21, r26 ; 33
ac5e: 00 bc out 0x20, r0 ; 32
ac60: 11 96 adiw r26, 0x01 ; 1
ac62: 0f b6 in r0, 0x3f ; 63
ac64: f8 94 cli
ac66: fa 9a sbi 0x1f, 2 ; 31
ac68: f9 9a sbi 0x1f, 1 ; 31
ac6a: 0f be out 0x3f, r0 ; 63
ac6c: 08 95 ret
 
0000ac6e <__eeprom_write_block_1F2021>:
ac6e: 01 90 ld r0, Z+
ac70: f2 df rcall .-28 ; 0xac56 <__eeprom_write_byte_1F2021>
ac72: 1a 94 dec r1
ac74: e1 f7 brne .-8 ; 0xac6e <__eeprom_write_block_1F2021>
ac76: 08 95 ret
 
0000ac78 <_exit>:
ac78: ff cf rjmp .-2 ; 0xac78 <_exit>
/branches/v0.72p kmpec/Flight-Ctrl_MEGA644_V0_72p.map
0,0 → 1,1803
Archive member included because of file (symbol)
 
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
analog.o (__subsf3)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o) (__addsf3x)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixsfsi.o)
analog.o (__fixsfsi)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixunssfsi.o)
fc.o (__fixunssfsi)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(floatsisf.o)
analog.o (__floatsisf)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
analog.o (__ltsf2)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_inf.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o) (__fp_inf)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_nan.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o) (__fp_nan)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscA.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o) (__fp_pscA)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscB.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o) (__fp_pscB)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_round.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o) (__fp_round)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_split3.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o) (__fp_split3)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_zero.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o) (__fp_zero)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_mulsi3.o)
uart.o (__mulsi3)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodqi4.o)
main.o (__udivmodqi4)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodhi4.o)
timer0.o (__udivmodhi4)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodhi4.o)
uart.o (__divmodhi4)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodsi4.o)
printf_P.o (__udivmodsi4)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodsi4.o)
uart.o (__divmodsi4)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o (exit)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
main.o (__do_copy_data)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
main.o (__do_clear_bss)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(memchr.o)
printf_P.o (memchr)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o)
main.o (__eeprom_read_byte_1F2021)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o)
main.o (__eeprom_write_byte_1F2021)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o)
main.o (__eeprom_write_block_1F2021)
 
Allocating common symbols
Common symbol size file
 
KopplungsteilNickRoll
0x2 fc.o
MesswertGierBias 0x2 fc.o
SPITransferCompleted
0x1 spi.o
KopplungsteilRollNick
0x2 fc.o
EE_Parameter 0x5d fc.o
DiffRoll 0x2 fc.o
MesswertRoll 0x2 fc.o
Motor_Vorne 0x1 fc.o
TrimNick 0x2 fc.o
Parameter_NaviGpsP 0x1 fc.o
ErsatzKompassInGrad
0x2 fc.o
MittelIntegralRoll2
0x4 fc.o
Parameter_NaviGpsModeControl
0x1 fc.o
TrimRoll 0x2 fc.o
Motor_Hinten 0x1 fc.o
SPI_TX_Buffer 0x2 spi.o
MesswertNick 0x2 fc.o
SPI_BufferIndex 0x1 spi.o
Aktuell_ay 0x2 analog.o
Motor8 0x1 fc.o
ToNaviCtrl 0x20 spi.o
Data3D 0xe uart.o
Parameter_NaviGpsI 0x1 fc.o
Timer3D 0x2 uart.o
SPI_ChkSum 0x1 spi.o
RohMesswertRoll 0x2 fc.o
MIN_GAS 0x1 fc.o
SendeBuffer 0x96 uart.o
Parameter_NaviGpsACC
0x1 fc.o
NMEABuffer 0x96 uart.o
MittelIntegralNick2
0x4 fc.o
Motor4 0x1 fc.o
Motor5 0x1 fc.o
Mittelwert_AccHoch 0x2 fc.o
Debug_Timer 0x2 uart.o
RohMesswertNick 0x2 fc.o
Motor2 0x1 fc.o
DiffNick 0x2 fc.o
MittelIntegralNick 0x4 fc.o
VersionInfo 0xa uart.o
SPI_RxBufferIndex 0x1 spi.o
NaviAccNick 0x2 fc.o
Parameter_J16Timing
0x1 fc.o
MittelIntegralRoll 0x4 fc.o
motor_rx 0x10 twimaster.o
AdNeutralGierBias 0x2 fc.o
SPI_RxDataValid 0x1 spi.o
SPI_VersionInfo 0x4 spi.o
PPM_in 0x16 rc.o
WinkelOut 0x8 uart.o
ExternControl 0xb uart.o
IntegralFaktor 0x1 fc.o
Motor_Rechts 0x1 fc.o
Aktuell_az 0x2 analog.o
FromNaviCtrl 0x1a spi.o
StartLuftdruck 0x2 analog.o
Motor7 0x1 fc.o
Kompass_Timer 0x2 uart.o
RxdBuffer 0x96 uart.o
Motor3 0x1 fc.o
Parameter_NaviOperatingRadius
0x1 fc.o
Motor6 0x1 fc.o
SPI_Buffer 0x1a spi.o
PrintZiel 0x1 printf_P.o
Aktuell_Nick 0x2 analog.o
messanzahl_Druck 0x1 analog.o
Motor_Links 0x1 fc.o
Aktuell_Roll 0x2 analog.o
Aktuell_ax 0x2 analog.o
Parameter_NaviWindCorrection
0x1 fc.o
s 0x1 fc.o
h 0x1 fc.o
Mittelwert_AccNick 0x2 fc.o
Parameter_NaviSpeedCompensation
0x1 fc.o
DebugOut 0x42 uart.o
DruckOffsetSetting 0x1 analog.o
FromNaviCtrl_Value 0x3 spi.o
Aktuell_Gier 0x2 analog.o
Parameter_J17Timing
0x1 fc.o
MAX_GAS 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
Motor1 0x1 fc.o
PPM_diff 0x16 rc.o
Parameter_ExternalControl
0x1 fc.o
Parameter_J17Bitmask
0x1 fc.o
tmpLuftdruck 0x2 analog.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
fuse 0x00820000 0x00000400 rw !x
lock 0x00830000 0x00000400 rw !x
signature 0x00840000 0x00000400 rw !x
*default* 0x00000000 0xffffffff
 
Linker script and memory map
 
Address of section .data set to 0x800100
LOAD c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
LOAD main.o
LOAD uart.o
LOAD printf_P.o
LOAD timer0.o
LOAD analog.o
LOAD menu.o
LOAD twimaster.o
LOAD rc.o
LOAD fc.o
LOAD GPS.o
LOAD spi.o
LOAD led.o
LOAD Spectrum.o
LOAD c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a
LOAD c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a
LOAD c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a
LOAD c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/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 0xac7a
*(.vectors)
.vectors 0x00000000 0x7c c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
0x00000000 __vectors
0x00000000 __vector_default
*(.vectors)
*(.progmem.gcc*)
.progmem.gcc_sw_table
0x0000007c 0x24 analog.o
.progmem.gcc_sw_table
0x000000a0 0x2e twimaster.o
*(.progmem*)
.progmem.data 0x000000ce 0x118 main.o
.progmem.data 0x000001e6 0x2 analog.o
.progmem.data 0x000001e8 0x33a menu.o
0x00000522 . = ALIGN (0x2)
0x00000522 __trampolines_start = .
*(.trampolines)
.trampolines 0x00000522 0x0 linker stubs
*(.trampolines*)
0x00000522 __trampolines_end = .
*(.jumptables)
*(.jumptables*)
*(.lowtext)
*(.lowtext*)
0x00000522 __ctors_start = .
*(.ctors)
0x00000522 __ctors_end = .
0x00000522 __dtors_start = .
*(.dtors)
0x00000522 __dtors_end = .
SORT(*)(.ctors)
SORT(*)(.dtors)
*(.init0)
.init0 0x00000522 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
0x00000522 __init
*(.init0)
*(.init1)
*(.init1)
*(.init2)
.init2 0x00000522 0xc c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
*(.init2)
*(.init3)
*(.init3)
*(.init4)
.init4 0x0000052e 0x16 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
0x0000052e __do_copy_data
.init4 0x00000544 0x10 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
0x00000544 __do_clear_bss
*(.init4)
*(.init5)
*(.init5)
*(.init6)
*(.init6)
*(.init7)
*(.init7)
*(.init8)
*(.init8)
*(.init9)
.init9 0x00000554 0x8 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
*(.init9)
*(.text)
.text 0x0000055c 0x4 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
0x0000055c __vector_1
0x0000055c __bad_interrupt
0x0000055c __vector_6
0x0000055c __vector_3
0x0000055c __vector_23
0x0000055c __vector_30
0x0000055c __vector_25
0x0000055c __vector_11
0x0000055c __vector_13
0x0000055c __vector_17
0x0000055c __vector_19
0x0000055c __vector_7
0x0000055c __vector_27
0x0000055c __vector_5
0x0000055c __vector_4
0x0000055c __vector_2
0x0000055c __vector_21
0x0000055c __vector_15
0x0000055c __vector_29
0x0000055c __vector_8
0x0000055c __vector_14
0x0000055c __vector_10
0x0000055c __vector_16
.text 0x00000560 0x7ac main.o
0x0000060c WriteParameterSet
0x0000059c CalMk3Mag
0x00000560 SetActiveParamSetNumber
0x00000674 ReadParameterSet
0x000006b2 main
0x00000578 GetActiveParamSetNumber
.text 0x00000d0c 0xfc8 uart.o
0x00000d0c __vector_22
0x000010c8 WriteProgramData
0x000010ca UART_Init
0x0000186a BearbeiteRxDaten
0x00000f5c AddCRC
0x00001348 DatenUebertragung
0x00000fe2 Decode64
0x0000113a SendOutData
0x00000d7c __vector_20
0x000010a2 uart_putchar
.text 0x00001cd4 0x68a printf_P.o
0x00001cd4 Putchar
0x00001d86 _printf_P
0x00001d06 PAD_0
0x00001d32 PRINTP
0x00001d5e PRINT
0x00001d1c PAD_SP
.text 0x0000235e 0x894 timer0.o
0x0000250a SetDelay
0x0000257c TIMER2_Init
0x000025cc Timer_Init
0x0000251c CheckDelay
0x00002534 Delay_ms
0x0000254e Delay_ms_Mess
0x000025fa __vector_9
0x0000235e __vector_18
.text 0x00002bf2 0xabe analog.o
0x00002bfe __vector_24
0x0000346a SucheGyroOffset
0x00002bf2 ADC_Init
0x000035f8 SucheLuftruckOffset
.text 0x000036b0 0xcaa menu.o
0x000036b0 LcdClear
0x000036c2 Menu
.text 0x0000435a 0x22a twimaster.o
0x00004366 i2c_start
0x0000438e i2c_reset
0x00004372 i2c_stop
0x0000435a i2c_init
0x000043c8 __vector_26
0x0000437a i2c_write_byte
.text 0x00004584 0x204 rc.o
0x000045ae __vector_12
0x00004584 rc_sum_init
.text 0x00004788 0x54f6 fc.o
0x00004788 DefaultStickMapping
0x000047ba MotorSmoothing
0x000069f6 DefaultKonstanten3
0x00006cb6 DefaultKonstanten1
0x00006140 SendMotorData
0x000047e6 Mittelwert
0x000069be Piep
0x000061e8 CalibrierMittelwert
0x000064c4 SetNeutral
0x00006b54 DefaultKonstanten2
0x000058fc ParameterZuordnung
0x00006e14 MotorRegler
.text 0x00009c7e 0x54 GPS.o
0x00009c7e GPS_Neutral
0x00009cc0 GPS_BerechneZielrichtung
.text 0x00009cd2 0x66c spi.o
0x00009d26 UpdateSPI_Buffer
0x0000a1a8 SPI_StartTransmitPacket
0x0000a22a SPI_TransmitByte
0x00009cd2 SPI_MasterInit
.text 0x0000a33e 0x17a led.o
0x0000a33e LED_Init
0x0000a35c LED_Update
.text 0x0000a4b8 0x3b6 Spectrum.o
0x0000a564 __vector_28
0x0000a4b8 Uart1Init
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixsfsi.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixunssfsi.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(floatsisf.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_inf.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_nan.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscA.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscB.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_round.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_split3.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_zero.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_mulsi3.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodqi4.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodhi4.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodhi4.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodsi4.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodsi4.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
.text 0x0000a86e 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
.text 0x0000a86e 0x1a c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(memchr.o)
0x0000a86e memchr
.text 0x0000a888 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o)
.text 0x0000a888 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o)
.text 0x0000a888 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o)
0x0000a888 . = ALIGN (0x2)
*(.text.*)
.text.fplib 0x0000a888 0xa c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
0x0000a888 __subsf3
0x0000a88a __addsf3
.text.fplib 0x0000a892 0xc0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
0x0000a8ac __addsf3x
.text.fplib 0x0000a952 0xa c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixsfsi.o)
0x0000a952 __fixsfsi
.text.fplib 0x0000a95c 0x58 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixunssfsi.o)
0x0000a95c __fixunssfsi
.text.fplib 0x0000a9b4 0x7a c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(floatsisf.o)
0x0000a9b8 __floatsisf
0x0000a9b4 __floatunssisf
.text.fplib 0x0000aa2e 0x58 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
0x0000aa2e __lesf2
0x0000aa2e __nesf2
0x0000aa36 __gtsf2
0x0000aa2e __eqsf2
0x0000aa2e __cmpsf2
0x0000aa2e __ltsf2
0x0000aa36 __gesf2
.text.fplib 0x0000aa86 0xc c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_inf.o)
0x0000aa86 __fp_inf
.text.fplib 0x0000aa92 0x6 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_nan.o)
0x0000aa92 __fp_nan
.text.fplib 0x0000aa98 0xe c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscA.o)
0x0000aa98 __fp_pscA
.text.fplib 0x0000aaa6 0xe c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscB.o)
0x0000aaa6 __fp_pscB
.text.fplib 0x0000aab4 0x22 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_round.o)
0x0000aab4 __fp_round
.text.fplib 0x0000aad6 0x44 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_split3.o)
0x0000aad6 __fp_split3
0x0000aae6 __fp_splitA
.text.fplib 0x0000ab1a 0xe c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_zero.o)
0x0000ab1a __fp_zero
0x0000ab1c __fp_szero
.text.libgcc 0x0000ab28 0x3e c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_mulsi3.o)
0x0000ab28 __mulsi3
.text.libgcc 0x0000ab66 0x18 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodqi4.o)
0x0000ab66 __udivmodqi4
.text.libgcc 0x0000ab7e 0x28 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodhi4.o)
0x0000ab7e __udivmodhi4
.text.libgcc 0x0000aba6 0x26 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodhi4.o)
0x0000aba6 __divmodhi4
0x0000aba6 _div
.text.libgcc 0x0000abcc 0x44 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodsi4.o)
0x0000abcc __udivmodsi4
.text.libgcc 0x0000ac10 0x36 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodsi4.o)
0x0000ac10 __divmodsi4
.text.libgcc 0x0000ac46 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
.text.libgcc 0x0000ac46 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
.text.libgcc 0x0000ac46 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
.text.eeprom 0x0000ac46 0x10 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o)
0x0000ac46 __eeprom_read_byte_1F2021
.text.eeprom 0x0000ac56 0x18 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o)
0x0000ac56 __eeprom_write_byte_1F2021
.text.eeprom 0x0000ac6e 0xa c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o)
0x0000ac6e __eeprom_write_block_1F2021
0x0000ac78 . = ALIGN (0x2)
*(.fini9)
.fini9 0x0000ac78 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
0x0000ac78 exit
0x0000ac78 _exit
*(.fini9)
*(.fini8)
*(.fini8)
*(.fini7)
*(.fini7)
*(.fini6)
*(.fini6)
*(.fini5)
*(.fini5)
*(.fini4)
*(.fini4)
*(.fini3)
*(.fini3)
*(.fini2)
*(.fini2)
*(.fini1)
*(.fini1)
*(.fini0)
.fini0 0x0000ac78 0x2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
*(.fini0)
0x0000ac7a _etext = .
 
.data 0x00800100 0x2c2 load address 0x0000ac7a
0x00800100 PROVIDE (__data_start, .)
*(.data)
.data 0x00800100 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
.data 0x00800100 0x3 main.o
0x00800100 PlatinenVersion
0x00800101 SendVersionToNavi
.data 0x00800103 0x206 uart.o
0x00800106 MeineSlaveAdresse
0x00800109 ANALOG_TEXT
0x00800105 PcZugriff
0x00800103 UebertragungAbgeschlossen
0x00800104 DebugTextAnforderung
0x00800107 DebugDataIntervall
.data 0x00800309 0x0 printf_P.o
.data 0x00800309 0x5 timer0.o
0x00800309 BeepMuster
.data 0x0080030e 0x10 analog.o
0x0080030e UBat
0x0080031a AnalogOffsetNick
0x0080031c AnalogOffsetGier
0x00800312 HiResRoll
0x0080031d AdReady
0x0080031b AnalogOffsetRoll
0x00800318 MessLuftdruck
0x00800314 Luftdruck
0x00800310 HiResNick
.data 0x0080031e 0x5b menu.o
0x0080031e Array
0x00800378 MaxMenue
0x00800328 DisplayBuff
.data 0x00800379 0x0 twimaster.o
.data 0x00800379 0x1 rc.o
0x00800379 NewPpmData
.data 0x0080037a 0x3e fc.o
0x008003af Parameter_CouplingYawCorrection
0x00800397 Umschlag180Nick
0x0080039f Ki
0x008003a1 Parameter_Luftdruck_D
0x008003b0 Parameter_DynamicStability
0x008003a5 Parameter_KompassWirkung
0x008003ab Parameter_ServoNickControl
0x008003a7 Parameter_Gyro_P
0x008003a6 Parameter_Gyro_D
0x008003a3 Parameter_Hoehe_P
0x008003ae Parameter_AchsKopplung2
0x008003b1 ExternHoehenValue
0x008003a4 Parameter_Hoehe_ACC_Wirkung
0x008003b3 GIER_GRAD_FAKTOR
0x008003ac Parameter_LoopGasLimit
0x008003ad Parameter_AchsKopplung1
0x00800393 I2CTimeout
0x008003a8 Parameter_Gyro_I
0x0080039b Umschlag180Roll
0x008003a2 Parameter_MaxHoehe
0x008003aa Parameter_I_Faktor
0x00800395 KompassSignalSchlecht
0x008003a9 Parameter_Gier_P
.data 0x008003b8 0x0 GPS.o
.data 0x008003b8 0x6 spi.o
0x008003b8 SPI_CommandSequence
.data 0x008003be 0x2 led.o
0x008003be J16Mask
0x008003bf J17Mask
.data 0x008003c0 0x2 Spectrum.o
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixsfsi.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixunssfsi.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(floatsisf.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_inf.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_nan.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscA.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscB.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_round.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_split3.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_zero.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_mulsi3.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodqi4.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodhi4.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodhi4.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodsi4.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodsi4.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(memchr.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o)
.data 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o)
*(.data*)
*(.rodata)
*(.rodata*)
*(.gnu.linkonce.d*)
0x008003c2 . = ALIGN (0x2)
0x008003c2 _edata = .
0x008003c2 PROVIDE (__data_end, .)
 
.bss 0x008003c2 0x529 load address 0x0000af3c
0x008003c2 PROVIDE (__bss_start, .)
*(.bss)
.bss 0x008003c2 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
.bss 0x008003c2 0x0 main.o
.bss 0x008003c2 0x1e uart.o
0x008003c9 SioTmp
0x008003d1 PC_DebugTimeout
0x008003c6 GetVersionAnforderung
0x008003cb NeueKoordinateEmpfangen
0x008003d6 Intervall3D
0x008003c5 DebugDataAnforderung
0x008003d2 MotorTest
0x008003ca NeuerDatensatzEmpfangen
0x008003c4 DebugDisplayAnforderung
0x008003cc CntCrcError
0x008003c7 GetPPMChannelAnforderung
0x008003c3 DebugDisplayAnforderung1
0x008003c8 DisplayLine
0x008003c2 GetExternalControl
0x008003ce pRxData
0x008003d0 RxDataLen
0x008003cd AnzahlEmpfangsBytes
.bss 0x008003e0 0x0 printf_P.o
.bss 0x008003e0 0x18 timer0.o
0x008003e7 SendSPI
0x008003e5 beeptime
0x008003eb ServoNickValue
0x008003e0 CountMilliseconds
0x008003e8 ServoActive
0x008003e3 cntKompass
0x008003e2 UpdateMotor
0x008003e9 ServoValue
0x008003ed ServoRollValue
.bss 0x008003f8 0x2b analog.o
0x0080040c HoeheD
0x0080040a messanzahl_AccHoch
0x0080040e ZaehlMessungen
0x0080040b ExpandBaro
0x00800411 GyroDefektR
0x00800400 AdWertRoll
0x00800406 AdWertAccNick
0x00800412 GyroDefektG
0x008003fe AdWertNick
0x008003fc AdWertGierFilter
0x00800402 AdWertGier
0x00800410 GyroDefektN
0x008003f8 AdWertNickFilter
0x00800404 AdWertAccRoll
0x008003fa AdWertRollFilter
0x00800408 AdWertAccHoch
.bss 0x00800423 0x5 menu.o
0x00800425 DispPtr
0x00800426 MenuePunkt
0x00800427 RemoteKeys
0x00800423 TestInt
.bss 0x00800428 0x3 twimaster.o
0x00800428 twi_state
0x0080042a motorread
0x00800429 motor
.bss 0x0080042b 0x4 rc.o
.bss 0x0080042f 0xf1 fc.o
0x00800479 Mess_Integral_Gier2
0x008004a2 LageKorrekturRoll
0x00800499 StickGier
0x008004ab Looping_Oben
0x00800469 Mess_IntegralNick2
0x00800449 IntegralNick2
0x00800494 SenderOkay
0x008004b0 Parameter_UserParam5
0x0080045d IntegralAccZ
0x00800461 Integral_Gier
0x00800495 StickNick
0x0080048e Poti2
0x0080049d MotorenEin
0x008004a6 Looping_Nick
0x00800455 IntegralAccNick
0x00800443 CosinusNickWinkel
0x0080049e HoehenWert
0x00800471 Mess_IntegralRoll2
0x008004b8 ExternStickGier
0x00800490 Poti3
0x008004aa Looping_Unten
0x008004bc MaxStickRoll
0x008004be modell_fliegt
0x008004ac Parameter_UserParam1
0x00800431 AdNeutralRoll
0x00800487 Notlandung
0x008004a8 Looping_Links
0x00800445 IntegralNick
0x0080047d Mess_Integral_Hoch
0x008004b2 Parameter_UserParam7
0x0080043d NaviCntAcc
0x00800489 TrichterFlug
0x00800439 NeutralAccX
0x00800475 Mess_Integral_Gier
0x008004a4 LageKorrekturNick
0x008004af Parameter_UserParam4
0x00800483 KompassStartwert
0x0080049b StickGas
0x008004a7 Looping_Roll
0x008004b4 ExternStickNick
0x008004ad Parameter_UserParam2
0x00800437 StartNeutralNick
0x00800481 KompassValue
0x00800459 IntegralAccRoll
0x00800485 KompassRichtung
0x0080046d Mess_IntegralRoll
0x00800497 StickRoll
0x0080042f AdNeutralNick
0x0080043b NeutralAccY
0x008004c0 MikroKopterFlags
0x0080043f NeutralAccZ
0x008004b1 Parameter_UserParam6
0x00800451 IntegralRoll2
0x008004ba MaxStickNick
0x0080048c Poti1
0x008004ae Parameter_UserParam3
0x00800433 AdNeutralGier
0x00800435 StartNeutralRoll
0x008004a9 Looping_Rechts
0x008004b6 ExternStickRoll
0x00800444 CosinusRollWinkel
0x00800488 HoehenReglerAktiv
0x008004a0 SollHoehe
0x008004b3 Parameter_UserParam8
0x0080048a GierGyroFehler
0x00800465 Mess_IntegralNick
0x00800492 Poti4
0x0080044d IntegralRoll
.bss 0x00800520 0x18 GPS.o
0x00800530 GpsZiel_X
0x00800526 GPS_Roll2
0x0080052c GpsAktuell_Y
0x00800520 GPS_Nick
0x00800524 GPS_Nick2
0x00800528 GpsAktuell_X
0x00800534 GpsZiel_Y
0x00800522 GPS_Roll
.bss 0x00800538 0x3 spi.o
0x00800538 SPI_CommandCounter
.bss 0x0080053b 0x7 led.o
0x0080053d LED2_Timing
0x0080053b LED1_Timing
0x00800540 J17Blinkcount
0x0080053f J16Blinkcount
.bss 0x00800542 0xa Spectrum.o
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixsfsi.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixunssfsi.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(floatsisf.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_inf.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_nan.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscA.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscB.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_round.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_split3.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_zero.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_mulsi3.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodqi4.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodhi4.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodhi4.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodsi4.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodsi4.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(memchr.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o)
.bss 0x0080054c 0x0 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o)
*(.bss*)
*(COMMON)
COMMON 0x0080054c 0x236 uart.o
0x0080054c Data3D
0x0080055a Timer3D
0x0080055c SendeBuffer
0x008005f2 NMEABuffer
0x00800688 Debug_Timer
0x0080068a VersionInfo
0x00800694 WinkelOut
0x0080069c ExternControl
0x008006a7 Kompass_Timer
0x008006a9 RxdBuffer
0x0080073f DebugOut
0x00800781 ConfirmFrame
COMMON 0x00800782 0x1 printf_P.o
0x00800782 PrintZiel
COMMON 0x00800783 0x12 analog.o
0x00800783 Aktuell_ay
0x00800785 Aktuell_az
0x00800787 StartLuftdruck
0x00800789 Aktuell_Nick
0x0080078b messanzahl_Druck
0x0080078c Aktuell_Roll
0x0080078e Aktuell_ax
0x00800790 DruckOffsetSetting
0x00800791 Aktuell_Gier
0x00800793 tmpLuftdruck
COMMON 0x00800795 0x10 twimaster.o
0x00800795 motor_rx
COMMON 0x008007a5 0x2c rc.o
0x008007a5 PPM_in
0x008007bb PPM_diff
COMMON 0x008007d1 0xb8 fc.o
0x008007d1 KopplungsteilNickRoll
0x008007d3 MesswertGierBias
0x008007d5 KopplungsteilRollNick
0x008007d7 EE_Parameter
0x00800834 DiffRoll
0x00800836 MesswertRoll
0x00800838 Motor_Vorne
0x00800839 TrimNick
0x0080083b Parameter_NaviGpsP
0x0080083c ErsatzKompassInGrad
0x0080083e MittelIntegralRoll2
0x00800842 Parameter_NaviGpsModeControl
0x00800843 TrimRoll
0x00800845 Motor_Hinten
0x00800846 MesswertNick
0x00800848 Motor8
0x00800849 Parameter_NaviGpsI
0x0080084a RohMesswertRoll
0x0080084c MIN_GAS
0x0080084d Parameter_NaviGpsACC
0x0080084e MittelIntegralNick2
0x00800852 Motor4
0x00800853 Motor5
0x00800854 Mittelwert_AccHoch
0x00800856 RohMesswertNick
0x00800858 Motor2
0x00800859 DiffNick
0x0080085b MittelIntegralNick
0x0080085f NaviAccNick
0x00800861 Parameter_J16Timing
0x00800862 MittelIntegralRoll
0x00800866 AdNeutralGierBias
0x00800868 IntegralFaktor
0x00800869 Motor_Rechts
0x0080086a Motor7
0x0080086b Motor3
0x0080086c Parameter_NaviOperatingRadius
0x0080086d Motor6
0x0080086e Motor_Links
0x0080086f Parameter_NaviWindCorrection
0x00800870 s
0x00800871 h
0x00800872 Mittelwert_AccNick
0x00800874 Parameter_NaviSpeedCompensation
0x00800875 Parameter_J17Timing
0x00800876 MAX_GAS
0x00800877 MesswertGier
0x00800879 Parameter_J16Bitmask
0x0080087a NaviAccRoll
0x0080087c GyroFaktor
0x0080087d m
0x0080087e ErsatzKompass
0x00800882 Mittelwert_AccRoll
0x00800884 Parameter_NaviGpsGain
0x00800885 Motor1
0x00800886 Parameter_ExternalControl
0x00800887 Parameter_J17Bitmask
0x00800888 Parameter_NaviGpsD
COMMON 0x00800889 0x62 spi.o
0x00800889 SPITransferCompleted
0x0080088a SPI_TX_Buffer
0x0080088c SPI_BufferIndex
0x0080088d ToNaviCtrl
0x008008ad SPI_ChkSum
0x008008ae SPI_RxBufferIndex
0x008008af SPI_RxDataValid
0x008008b0 SPI_VersionInfo
0x008008b4 FromNaviCtrl
0x008008ce SPI_Buffer
0x008008e8 FromNaviCtrl_Value
0x008008eb PROVIDE (__bss_end, .)
0x0000ac7a __data_load_start = LOADADDR (.data)
0x0000af3c __data_load_end = (__data_load_start + SIZEOF (.data))
 
.noinit 0x008008eb 0x0
0x008008eb PROVIDE (__noinit_start, .)
*(.noinit*)
0x008008eb PROVIDE (__noinit_end, .)
0x008008eb _end = .
0x008008eb PROVIDE (__heap_start, .)
 
.eeprom 0x00810000 0x800
*(.eeprom*)
.eeprom 0x00810000 0x800 main.o
0x00810000 EEPromArray
0x00810800 __eeprom_end = .
 
.fuse
*(.fuse)
*(.lfuse)
*(.hfuse)
*(.efuse)
 
.lock
*(.lock*)
 
.signature
*(.signature*)
 
.stab 0x00000000 0x378
*(.stab)
.stab 0x00000000 0x378 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
 
.stabstr 0x00000000 0x5f
*(.stabstr)
.stabstr 0x00000000 0x5f c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../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_72p.elf elf32-avr)
LOAD linker stubs
 
Cross Reference Table
 
Symbol File
ADC_Init analog.o
main.o
ANALOG_TEXT uart.o
AdNeutralGier fc.o
rc.o
menu.o
AdNeutralGierBias fc.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
AdWertAccNick analog.o
fc.o
menu.o
AdWertAccRoll analog.o
fc.o
menu.o
AdWertGier analog.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
Array menu.o
BearbeiteRxDaten uart.o
main.o
BeepMuster timer0.o
fc.o
main.o
CalMk3Mag main.o
CalibrierMittelwert fc.o
CheckDelay timer0.o
Spectrum.o
uart.o
main.o
CntCrcError uart.o
ConfirmFrame uart.o
CosinusNickWinkel fc.o
CosinusRollWinkel fc.o
CountMilliseconds timer0.o
Data3D uart.o
DatenUebertragung uart.o
main.o
DebugDataAnforderung uart.o
DebugDataIntervall uart.o
DebugDisplayAnforderung uart.o
DebugDisplayAnforderung1 uart.o
DebugOut fc.o
timer0.o
uart.o
main.o
DebugTextAnforderung uart.o
Debug_Timer uart.o
Decode64 uart.o
DefaultKonstanten1 fc.o
main.o
DefaultKonstanten2 fc.o
main.o
DefaultKonstanten3 fc.o
main.o
DefaultStickMapping fc.o
main.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
printf_P.o
DisplayBuff menu.o
printf_P.o
uart.o
DisplayLine uart.o
DruckOffsetSetting fc.o
menu.o
analog.o
EEPromArray main.o
spi.o
fc.o
analog.o
EE_Parameter led.o
spi.o
fc.o
menu.o
timer0.o
uart.o
main.o
ErsatzKompass 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
FromNaviCtrl spi.o
FromNaviCtrl_Value spi.o
fc.o
GIER_GRAD_FAKTOR fc.o
spi.o
uart.o
main.o
GPS_BerechneZielrichtung GPS.o
GPS_Neutral GPS.o
fc.o
GPS_Nick GPS.o
spi.o
fc.o
GPS_Nick2 GPS.o
fc.o
GPS_Roll GPS.o
spi.o
fc.o
GPS_Roll2 GPS.o
fc.o
GetActiveParamSetNumber main.o
fc.o
menu.o
uart.o
GetExternalControl uart.o
GetPPMChannelAnforderung uart.o
GetVersionAnforderung uart.o
GierGyroFehler fc.o
GpsAktuell_X GPS.o
GpsAktuell_Y GPS.o
GpsZiel_X GPS.o
GpsZiel_Y GPS.o
GyroDefektG analog.o
GyroDefektN analog.o
GyroDefektR analog.o
GyroFaktor fc.o
HiResNick analog.o
fc.o
HiResRoll analog.o
fc.o
HoeheD analog.o
fc.o
HoehenReglerAktiv fc.o
led.o
HoehenWert fc.o
spi.o
menu.o
analog.o
I2CTimeout fc.o
twimaster.o
main.o
IntegralAccNick fc.o
IntegralAccRoll fc.o
IntegralAccZ fc.o
IntegralFaktor fc.o
IntegralNick fc.o
spi.o
menu.o
timer0.o
uart.o
IntegralNick2 fc.o
IntegralRoll fc.o
spi.o
menu.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
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
main.o
LED_Update led.o
main.o
LageKorrekturNick fc.o
LageKorrekturRoll fc.o
LcdClear menu.o
main.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
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
Mess_Integral_Gier2 fc.o
Mess_Integral_Hoch fc.o
analog.o
MesswertGier fc.o
MesswertGierBias fc.o
MesswertNick fc.o
MesswertRoll fc.o
MikroKopterFlags fc.o
spi.o
MittelIntegralNick fc.o
MittelIntegralNick2 fc.o
MittelIntegralRoll fc.o
MittelIntegralRoll2 fc.o
Mittelwert fc.o
Mittelwert_AccHoch fc.o
menu.o
Mittelwert_AccNick fc.o
Mittelwert_AccRoll fc.o
Motor1 fc.o
Motor2 fc.o
Motor3 fc.o
Motor4 fc.o
Motor5 fc.o
Motor6 fc.o
Motor7 fc.o
Motor8 fc.o
MotorRegler fc.o
main.o
MotorSmoothing fc.o
MotorTest uart.o
fc.o
Motor_Hinten fc.o
twimaster.o
Motor_Links fc.o
twimaster.o
Motor_Rechts fc.o
twimaster.o
Motor_Vorne fc.o
twimaster.o
MotorenEin fc.o
main.o
NMEABuffer uart.o
NaviAccNick spi.o
fc.o
NaviAccRoll spi.o
fc.o
NaviCntAcc fc.o
spi.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
NewPpmData rc.o
Spectrum.o
fc.o
Notlandung fc.o
PAD_0 printf_P.o
PAD_SP printf_P.o
PC_DebugTimeout uart.o
PPM_diff Spectrum.o
fc.o
rc.o
PPM_in Spectrum.o
spi.o
fc.o
rc.o
menu.o
timer0.o
uart.o
main.o
PRINT printf_P.o
PRINTP printf_P.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_I fc.o
Parameter_Gyro_P fc.o
Parameter_Hoehe_ACC_Wirkung 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
analog.o
Parameter_MaxHoehe fc.o
Parameter_NaviGpsACC fc.o
Parameter_NaviGpsD fc.o
Parameter_NaviGpsGain fc.o
Parameter_NaviGpsI fc.o
Parameter_NaviGpsModeControl led.o
fc.o
Parameter_NaviGpsP fc.o
Parameter_NaviOperatingRadius fc.o
Parameter_NaviSpeedCompensation fc.o
Parameter_NaviWindCorrection fc.o
Parameter_ServoNickControl fc.o
menu.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
fc.o
main.o
Piep fc.o
uart.o
main.o
PlatinenVersion main.o
spi.o
fc.o
menu.o
analog.o
timer0.o
Poti1 fc.o
spi.o
menu.o
Poti2 fc.o
spi.o
menu.o
Poti3 fc.o
spi.o
menu.o
Poti4 fc.o
spi.o
menu.o
PrintZiel printf_P.o
Putchar printf_P.o
ReadParameterSet main.o
fc.o
uart.o
RemoteKeys menu.o
uart.o
RohMesswertNick fc.o
RohMesswertRoll fc.o
RxDataLen uart.o
RxdBuffer 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
SPI_VersionInfo spi.o
SendMotorData fc.o
main.o
SendOutData uart.o
SendSPI timer0.o
spi.o
main.o
SendVersionToNavi main.o
fc.o
SendeBuffer uart.o
SenderOkay fc.o
Spectrum.o
spi.o
rc.o
menu.o
timer0.o
main.o
ServoActive timer0.o
fc.o
ServoNickValue timer0.o
ServoRollValue timer0.o
ServoValue timer0.o
fc.o
menu.o
SetActiveParamSetNumber main.o
fc.o
uart.o
SetDelay timer0.o
Spectrum.o
uart.o
main.o
SetNeutral fc.o
main.o
SioTmp uart.o
SollHoehe fc.o
menu.o
StartLuftdruck fc.o
analog.o
StartNeutralNick fc.o
StartNeutralRoll 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
TIMER2_Init timer0.o
main.o
TestInt menu.o
Timer3D uart.o
Timer_Init timer0.o
main.o
ToNaviCtrl spi.o
TrichterFlug fc.o
TrimNick fc.o
TrimRoll fc.o
UART_Init uart.o
main.o
UBat analog.o
spi.o
fc.o
menu.o
main.o
Uart1Init Spectrum.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
VersionInfo uart.o
WinkelOut spi.o
fc.o
uart.o
main.o
WriteParameterSet main.o
uart.o
WriteProgramData uart.o
ZaehlMessungen analog.o
fc.o
__addsf3 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
fc.o
analog.o
__addsf3x c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
__bad_interrupt c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__bss_end c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
__bss_start c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
__cmpsf2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
__data_end c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
__data_load_start c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
__data_start c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
__divmodhi4 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodhi4.o)
Spectrum.o
spi.o
fc.o
rc.o
menu.o
timer0.o
uart.o
__divmodsi4 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodsi4.o)
spi.o
fc.o
menu.o
analog.o
timer0.o
uart.o
__do_clear_bss c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_clear_bss.o)
Spectrum.o
led.o
spi.o
GPS.o
fc.o
rc.o
twimaster.o
menu.o
analog.o
timer0.o
printf_P.o
uart.o
main.o
__do_copy_data c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_copy_data.o)
Spectrum.o
led.o
spi.o
GPS.o
fc.o
rc.o
twimaster.o
menu.o
analog.o
timer0.o
printf_P.o
uart.o
main.o
__eeprom_read_byte_1F2021 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_rb.1F2021.o)
spi.o
fc.o
analog.o
main.o
__eeprom_write_block_1F2021 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o)
main.o
__eeprom_write_byte_1F2021 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wb.1F2021.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(ee_wblk.1F2021.o)
fc.o
analog.o
main.o
__eqsf2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
__fixsfsi c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixsfsi.o)
fc.o
menu.o
analog.o
__fixunssfsi c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixunssfsi.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixsfsi.o)
fc.o
__floatsisf c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(floatsisf.o)
fc.o
analog.o
__floatunssisf c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(floatsisf.o)
__fp_inf c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_inf.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
__fp_nan c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_nan.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
__fp_pscA c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscA.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
__fp_pscB c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_pscB.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
__fp_round c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_round.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
__fp_split3 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_split3.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
__fp_splitA c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_split3.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixunssfsi.o)
__fp_szero c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_zero.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixsfsi.o)
__fp_zero c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_zero.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fixunssfsi.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3x.o)
__gesf2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
__gtsf2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
analog.o
__heap_end c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__init c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__lesf2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
__ltsf2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
analog.o
__mulsi3 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_mulsi3.o)
spi.o
fc.o
timer0.o
uart.o
__nesf2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(fp_cmp.o)
__stack c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__subsf3 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libm.a(addsf3.o)
fc.o
analog.o
__udivmodhi4 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodhi4.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodhi4.o)
analog.o
timer0.o
__udivmodqi4 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodqi4.o)
menu.o
main.o
__udivmodsi4 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_udivmodsi4.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodsi4.o)
printf_P.o
__vector_1 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_10 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_11 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_12 rc.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_13 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_14 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_15 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_16 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_17 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_18 timer0.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_19 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_2 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_20 uart.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_21 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_22 uart.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_23 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_24 analog.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_25 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_26 twimaster.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_27 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_28 Spectrum.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_29 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_3 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_30 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_4 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_5 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_6 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_7 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_8 c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_9 timer0.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vector_default c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
__vectors c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
_div c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_divmodhi4.o)
_exit c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
_printf_P printf_P.o
menu.o
analog.o
main.o
beeptime timer0.o
spi.o
fc.o
main.o
cntKompass timer0.o
exit c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/avr5\libgcc.a(_exit.o)
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
h fc.o
i2c_init twimaster.o
main.o
i2c_reset twimaster.o
main.o
i2c_start twimaster.o
fc.o
analog.o
i2c_stop twimaster.o
i2c_write_byte twimaster.o
m fc.o
main main.o
c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5/crtm644p.o
memchr c:/winavr-20071221/bin/../lib/gcc/avr/4.2.2/../../../../avr/lib/avr5\libc.a(memchr.o)
printf_P.o
messanzahl_AccHoch analog.o
messanzahl_Druck analog.o
modell_fliegt fc.o
analog.o
motor twimaster.o
fc.o
motor_rx twimaster.o
motorread twimaster.o
pRxData uart.o
rc_sum_init rc.o
main.o
s fc.o
tmpLuftdruck analog.o
twi_state twimaster.o
fc.o
analog.o
uart_putchar uart.o
printf_P.o
/branches/v0.72p kmpec/Flight-Ctrl_MEGA644_V0_72p.sym
0,0 → 1,650
00000000 W __heap_end
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 W __vector_default
00000000 T __vectors
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
000000ce t __c.2448
000000d2 t __c.2446
000000da t __c.2444
000000e6 t __c.2442
000000f4 t __c.2440
000000f9 t __c.2435
00000116 t __c.2433
00000131 t __c.2431
0000014a t __c.2425
00000182 t __c.2421
00000191 t __c.2419
000001b2 t __c.2416
000001e6 t __c.2396
000001e8 t __c.2493
000001f8 t __c.2491
00000208 t __c.2489
00000218 t __c.2487
00000228 t __c.2484
00000236 t __c.2482
00000244 t __c.2480
00000252 t __c.2478
0000025a t __c.2475
00000266 t __c.2473
00000272 t __c.2471
0000027e t __c.2469
0000028a t __c.2466
00000299 t __c.2464
000002a8 t __c.2462
000002b7 t __c.2460
000002c6 t __c.2457
000002d5 t __c.2455
000002e4 t __c.2452
000002f3 t __c.2450
00000302 t __c.2448
00000311 t __c.2446
0000031e t __c.2443
00000332 t __c.2441
00000346 t __c.2439
0000035a t __c.2437
00000369 t __c.2435
0000037b t __c.2433
0000038d t __c.2431
0000039c t __c.2429
000003ae t __c.2427
000003c0 t __c.2425
000003ce t __c.2422
000003de t __c.2420
000003ee t __c.2418
000003fe t __c.2416
0000040e t __c.2413
0000041e t __c.2411
0000042e t __c.2409
0000043e t __c.2407
0000044e t __c.2404
0000045d t __c.2402
0000046c t __c.2400
0000047b t __c.2398
00000485 t __c.2395
00000493 t __c.2393
0000049a t __c.2391
000004a9 t __c.2389
000004b8 t __c.2387
000004c7 t __c.2385
000004d6 t __c.2381
000004e6 t __c.2379
000004f3 t __c.2377
00000508 t __c.2375
00000518 t __c.2372
0000051d t __c.2370
00000522 T __ctors_end
00000522 T __ctors_start
00000522 T __dtors_end
00000522 T __dtors_start
00000522 W __init
00000522 T __trampolines_end
00000522 T __trampolines_start
0000052e T __do_copy_data
0000053a t .do_copy_data_loop
0000053e t .do_copy_data_start
00000544 T __do_clear_bss
0000054c t .do_clear_bss_loop
0000054e t .do_clear_bss_start
0000055c T __bad_interrupt
0000055c W __vector_1
0000055c W __vector_10
0000055c W __vector_11
0000055c W __vector_13
0000055c W __vector_14
0000055c W __vector_15
0000055c W __vector_16
0000055c W __vector_17
0000055c W __vector_19
0000055c W __vector_2
0000055c W __vector_21
0000055c W __vector_23
0000055c W __vector_25
0000055c W __vector_27
0000055c W __vector_29
0000055c W __vector_3
0000055c W __vector_30
0000055c W __vector_4
0000055c W __vector_5
0000055c W __vector_6
0000055c W __vector_7
0000055c W __vector_8
00000560 T SetActiveParamSetNumber
00000578 T GetActiveParamSetNumber
0000059c T CalMk3Mag
0000060c T WriteParameterSet
00000638 t .117_start
00000644 t .117_finished
00000674 T ReadParameterSet
000006a0 t .163_start
000006ac t .163_finished
000006b2 T main
00000d0c T __vector_22
00000d7c T __vector_20
00000f5c T AddCRC
00000fe2 T Decode64
000010a2 T uart_putchar
000010c8 T WriteProgramData
000010ca T UART_Init
000010ff W __stack
0000113a T SendOutData
00001348 T DatenUebertragung
0000186a T BearbeiteRxDaten
00001cd4 T Putchar
00001d06 T PAD_0
00001d1c T PAD_SP
00001d32 T PRINTP
00001d5e T PRINT
00001d86 T _printf_P
0000235e T __vector_18
0000250a T SetDelay
0000251c T CheckDelay
00002534 T Delay_ms
0000254e T Delay_ms_Mess
0000257c T TIMER2_Init
000025cc T Timer_Init
000025fa T __vector_9
00002bf2 T ADC_Init
00002bfe T __vector_24
0000346a T SucheGyroOffset
000035f8 T SucheLuftruckOffset
000036b0 T LcdClear
000036c2 T Menu
0000435a T i2c_init
00004366 T i2c_start
00004372 T i2c_stop
0000437a T i2c_write_byte
0000438e T i2c_reset
000043c8 T __vector_26
00004584 T rc_sum_init
000045ae T __vector_12
00004788 T DefaultStickMapping
000047ba T MotorSmoothing
000047e6 T Mittelwert
000058fc T ParameterZuordnung
00006140 T SendMotorData
000061e8 T CalibrierMittelwert
000064c4 T SetNeutral
000069be T Piep
000069f6 T DefaultKonstanten3
00006b54 T DefaultKonstanten2
00006cb6 T DefaultKonstanten1
00006e14 T MotorRegler
00009c7e T GPS_Neutral
00009cc0 T GPS_BerechneZielrichtung
00009cd2 T SPI_MasterInit
00009d26 T UpdateSPI_Buffer
0000a1a8 T SPI_StartTransmitPacket
0000a22a T SPI_TransmitByte
0000a33e T LED_Init
0000a35c T LED_Update
0000a4b8 T Uart1Init
0000a564 T __vector_28
0000a86e T memchr
0000a888 T __subsf3
0000a88a T __addsf3
0000a8ac T __addsf3x
0000a952 T __fixsfsi
0000a95c T __fixunssfsi
0000a9b4 T __floatunssisf
0000a9b8 T __floatsisf
0000aa2e T __cmpsf2
0000aa2e T __eqsf2
0000aa2e T __lesf2
0000aa2e T __ltsf2
0000aa2e T __nesf2
0000aa36 T __gesf2
0000aa36 T __gtsf2
0000aa86 T __fp_inf
0000aa92 T __fp_nan
0000aa98 T __fp_pscA
0000aaa6 T __fp_pscB
0000aab4 T __fp_round
0000aad6 T __fp_split3
0000aae6 T __fp_splitA
0000ab1a T __fp_zero
0000ab1c T __fp_szero
0000ab28 T __mulsi3
0000ab66 T __udivmodqi4
0000ab6c t __udivmodqi4_loop
0000ab74 t __udivmodqi4_ep
0000ab7e T __udivmodhi4
0000ab86 t __udivmodhi4_loop
0000ab94 t __udivmodhi4_ep
0000aba6 T __divmodhi4
0000aba6 T _div
0000abba t __divmodhi4_neg2
0000abc0 t __divmodhi4_exit
0000abc2 t __divmodhi4_neg1
0000abcc T __udivmodsi4
0000abd8 t __udivmodsi4_loop
0000abf2 t __udivmodsi4_ep
0000ac10 T __divmodsi4
0000ac24 t __divmodsi4_neg2
0000ac32 t __divmodsi4_exit
0000ac34 t __divmodsi4_neg1
0000ac46 T __eeprom_read_byte_1F2021
0000ac56 T __eeprom_write_byte_1F2021
0000ac6e T __eeprom_write_block_1F2021
0000ac78 t __stop_program
0000ac78 T _exit
0000ac78 W exit
0000ac7a A __data_load_start
0000ac7a T _etext
0000af3c A __data_load_end
00800100 D PlatinenVersion
00800100 D __data_start
00800101 D SendVersionToNavi
00800102 d stick.2399
00800103 D UebertragungAbgeschlossen
00800104 D DebugTextAnforderung
00800105 D PcZugriff
00800106 D MeineSlaveAdresse
00800107 D DebugDataIntervall
00800109 D ANALOG_TEXT
00800309 D BeepMuster
0080030b d ServoNickOffset.2524
0080030d d cnt_1ms.2377
0080030e D UBat
00800310 D HiResNick
00800312 D HiResRoll
00800314 D Luftdruck
00800318 D MessLuftdruck
0080031a D AnalogOffsetNick
0080031b D AnalogOffsetRoll
0080031c D AnalogOffsetGier
0080031d D AdReady
0080031e D Array
00800328 D DisplayBuff
00800378 D MaxMenue
00800379 D NewPpmData
00800393 D I2CTimeout
00800395 D KompassSignalSchlecht
00800397 D Umschlag180Nick
0080039b D Umschlag180Roll
0080039f D Ki
008003a1 D Parameter_Luftdruck_D
008003a2 D Parameter_MaxHoehe
008003a3 D Parameter_Hoehe_P
008003a4 D Parameter_Hoehe_ACC_Wirkung
008003a5 D Parameter_KompassWirkung
008003a6 D Parameter_Gyro_D
008003a7 D Parameter_Gyro_P
008003a8 D Parameter_Gyro_I
008003a9 D Parameter_Gier_P
008003aa D Parameter_I_Faktor
008003ab D Parameter_ServoNickControl
008003ac D Parameter_LoopGasLimit
008003ad D Parameter_AchsKopplung1
008003ae D Parameter_AchsKopplung2
008003af D Parameter_CouplingYawCorrection
008003b0 D Parameter_DynamicStability
008003b1 D ExternHoehenValue
008003b3 D GIER_GRAD_FAKTOR
008003b7 d delay.3112
008003b8 D SPI_CommandSequence
008003be D J16Mask
008003bf D J17Mask
008003c0 d ReSync.2413
008003c2 B GetExternalControl
008003c2 B __bss_start
008003c2 D __data_end
008003c2 D _edata
008003c3 B DebugDisplayAnforderung1
008003c4 B DebugDisplayAnforderung
008003c5 B DebugDataAnforderung
008003c6 B GetVersionAnforderung
008003c7 B GetPPMChannelAnforderung
008003c8 B DisplayLine
008003c9 B SioTmp
008003ca B NeuerDatensatzEmpfangen
008003cb B NeueKoordinateEmpfangen
008003cc B CntCrcError
008003cd B AnzahlEmpfangsBytes
008003ce B pRxData
008003d0 B RxDataLen
008003d1 B PC_DebugTimeout
008003d2 B MotorTest
008003d6 B Intervall3D
008003d8 b UartState.2411
008003d9 b buf_ptr.2410
008003da b crc2.2409
008003db b crc1.2408
008003dc b crc.2407
008003de b ptr.2394
008003e0 B CountMilliseconds
008003e2 B UpdateMotor
008003e3 B cntKompass
008003e5 B beeptime
008003e7 B SendSPI
008003e8 B ServoActive
008003e9 B ServoValue
008003eb B ServoNickValue
008003ed B ServoRollValue
008003ef b ServoIndex.2523
008003f0 b ServoFrameTime.2522
008003f2 b RemainingPulse.2521
008003f4 b PulseOutput.2520
008003f5 b cnt.2378
008003f6 b tim_main
008003f8 B AdWertNickFilter
008003fa B AdWertRollFilter
008003fc B AdWertGierFilter
008003fe B AdWertNick
00800400 B AdWertRoll
00800402 B AdWertGier
00800404 B AdWertAccRoll
00800406 B AdWertAccNick
00800408 B AdWertAccHoch
0080040a B messanzahl_AccHoch
0080040b B ExpandBaro
0080040c B HoeheD
0080040e B ZaehlMessungen
00800410 B GyroDefektN
00800411 B GyroDefektR
00800412 B GyroDefektG
00800413 b accx.2454
00800415 b accy.2453
00800417 b roll_filter.2452
00800419 b nick_filter.2451
0080041b b nick1.2450
0080041d b roll1.2449
0080041f b gier1.2448
00800421 b state.2447
00800422 b kanal.2446
00800423 B TestInt
00800425 B DispPtr
00800426 B MenuePunkt
00800427 B RemoteKeys
00800428 B twi_state
00800429 B motor
0080042a B motorread
0080042b b index.2370
0080042d b AltICR.2367
0080042f B AdNeutralNick
00800431 B AdNeutralRoll
00800433 B AdNeutralGier
00800435 B StartNeutralRoll
00800437 B StartNeutralNick
00800439 B NeutralAccX
0080043b B NeutralAccY
0080043d B NaviCntAcc
0080043f B NeutralAccZ
00800443 B CosinusNickWinkel
00800444 B CosinusRollWinkel
00800445 B IntegralNick
00800449 B IntegralNick2
0080044d B IntegralRoll
00800451 B IntegralRoll2
00800455 B IntegralAccNick
00800459 B IntegralAccRoll
0080045d B IntegralAccZ
00800461 B Integral_Gier
00800465 B Mess_IntegralNick
00800469 B Mess_IntegralNick2
0080046d B Mess_IntegralRoll
00800471 B Mess_IntegralRoll2
00800475 B Mess_Integral_Gier
00800479 B Mess_Integral_Gier2
0080047d B Mess_Integral_Hoch
00800481 B KompassValue
00800483 B KompassStartwert
00800485 B KompassRichtung
00800487 B Notlandung
00800488 B HoehenReglerAktiv
00800489 B TrichterFlug
0080048a B GierGyroFehler
0080048c B Poti1
0080048e B Poti2
00800490 B Poti3
00800492 B Poti4
00800494 B SenderOkay
00800495 B StickNick
00800497 B StickRoll
00800499 B StickGier
0080049b B StickGas
0080049d B MotorenEin
0080049e B HoehenWert
008004a0 B SollHoehe
008004a2 B LageKorrekturRoll
008004a4 B LageKorrekturNick
008004a6 B Looping_Nick
008004a7 B Looping_Roll
008004a8 B Looping_Links
008004a9 B Looping_Rechts
008004aa B Looping_Unten
008004ab B Looping_Oben
008004ac B Parameter_UserParam1
008004ad B Parameter_UserParam2
008004ae B Parameter_UserParam3
008004af B Parameter_UserParam4
008004b0 B Parameter_UserParam5
008004b1 B Parameter_UserParam6
008004b2 B Parameter_UserParam7
008004b3 B Parameter_UserParam8
008004b4 B ExternStickNick
008004b6 B ExternStickRoll
008004b8 B ExternStickGier
008004ba B MaxStickNick
008004bc B MaxStickRoll
008004be B modell_fliegt
008004c0 B MikroKopterFlags
008004c1 b MittelIntegralRoll_Alt.3105
008004c5 b MittelIntegralNick_Alt.3104
008004c9 b last_r_n.3103
008004ca b last_r_p.3102
008004cb b last_n_n.3101
008004cc b last_n_p.3100
008004cd b cnt.3099
008004cf b stick_roll.3096
008004d1 b stick_nick.3095
008004d3 b ausgleichRoll.3090
008004d7 b ausgleichNick.3089
008004db b NeueKompassRichtungMerken.3088
008004dc b TimerWerteausgabe.3087
008004dd b motorwert4.3082
008004df b motorwert3.3081
008004e1 b motorwert2.3080
008004e3 b motorwert1.3079
008004e5 b hoehenregler.3078
008004e7 b delay_ausschalten.3077
008004e8 b delay_einschalten.3076
008004e9 b delay_neutral.3075
008004ea b RcLostTimer.3074
008004ec b IntegralFehlerRoll.3073
008004f0 b IntegralFehlerNick.3072
008004f4 b tmp_long2.3071
008004f8 b tmp_long.3070
008004fc b sollGier.3069
00800500 b SummeRoll.3068
00800504 b SummeNick.3067
00800508 b d2Nick.2659
0080050a b d2Roll.2658
0080050c b oldRoll.2657
0080050e b oldNick.2656
00800510 b tmpl4.2655
00800514 b tmpl3.2654
00800518 b tmpl2.2653
0080051c b tmpl.2652
00800520 B GPS_Nick
00800522 B GPS_Roll
00800524 B GPS_Nick2
00800526 B GPS_Roll2
00800528 B GpsAktuell_X
0080052c B GpsAktuell_Y
00800530 B GpsZiel_X
00800534 B GpsZiel_Y
00800538 B SPI_CommandCounter
00800539 b rxchksum.2398
0080053a b SPI_RXState.2396
0080053b B LED1_Timing
0080053d B LED2_Timing
0080053f B J16Blinkcount
00800540 B J17Blinkcount
00800541 b delay.2372
00800542 b FrameTimer.2415
00800544 b Frame2.2414
00800546 b ByteHigh.2412
00800548 b FrameCnt.2411
0080054a b Sync.2410
0080054c B Data3D
0080055a B Timer3D
0080055c B SendeBuffer
008005f2 B NMEABuffer
00800688 B Debug_Timer
0080068a B VersionInfo
00800694 B WinkelOut
0080069c B ExternControl
008006a7 B Kompass_Timer
008006a9 B RxdBuffer
0080073f B DebugOut
00800781 B ConfirmFrame
00800782 B PrintZiel
00800783 B Aktuell_ay
00800785 B Aktuell_az
00800787 B StartLuftdruck
00800789 B Aktuell_Nick
0080078b B messanzahl_Druck
0080078c B Aktuell_Roll
0080078e B Aktuell_ax
00800790 B DruckOffsetSetting
00800791 B Aktuell_Gier
00800793 B tmpLuftdruck
00800795 B motor_rx
008007a5 B PPM_in
008007bb B PPM_diff
008007d1 B KopplungsteilNickRoll
008007d3 B MesswertGierBias
008007d5 B KopplungsteilRollNick
008007d7 B EE_Parameter
00800834 B DiffRoll
00800836 B MesswertRoll
00800838 B Motor_Vorne
00800839 B TrimNick
0080083b B Parameter_NaviGpsP
0080083c B ErsatzKompassInGrad
0080083e B MittelIntegralRoll2
00800842 B Parameter_NaviGpsModeControl
00800843 B TrimRoll
00800845 B Motor_Hinten
00800846 B MesswertNick
00800848 B Motor8
00800849 B Parameter_NaviGpsI
0080084a B RohMesswertRoll
0080084c B MIN_GAS
0080084d B Parameter_NaviGpsACC
0080084e B MittelIntegralNick2
00800852 B Motor4
00800853 B Motor5
00800854 B Mittelwert_AccHoch
00800856 B RohMesswertNick
00800858 B Motor2
00800859 B DiffNick
0080085b B MittelIntegralNick
0080085f B NaviAccNick
00800861 B Parameter_J16Timing
00800862 B MittelIntegralRoll
00800866 B AdNeutralGierBias
00800868 B IntegralFaktor
00800869 B Motor_Rechts
0080086a B Motor7
0080086b B Motor3
0080086c B Parameter_NaviOperatingRadius
0080086d B Motor6
0080086e B Motor_Links
0080086f B Parameter_NaviWindCorrection
00800870 B s
00800871 B h
00800872 B Mittelwert_AccNick
00800874 B Parameter_NaviSpeedCompensation
00800875 B Parameter_J17Timing
00800876 B MAX_GAS
00800877 B MesswertGier
00800879 B Parameter_J16Bitmask
0080087a B NaviAccRoll
0080087c B GyroFaktor
0080087d B m
0080087e B ErsatzKompass
00800882 B Mittelwert_AccRoll
00800884 B Parameter_NaviGpsGain
00800885 B Motor1
00800886 B Parameter_ExternalControl
00800887 B Parameter_J17Bitmask
00800888 B Parameter_NaviGpsD
00800889 B SPITransferCompleted
0080088a B SPI_TX_Buffer
0080088c B SPI_BufferIndex
0080088d B ToNaviCtrl
008008ad B SPI_ChkSum
008008ae B SPI_RxBufferIndex
008008af B SPI_RxDataValid
008008b0 B SPI_VersionInfo
008008b4 B FromNaviCtrl
008008ce B SPI_Buffer
008008e8 B FromNaviCtrl_Value
008008eb B __bss_end
008008eb B _end
00810000 D EEPromArray
00810800 D __eeprom_end
/branches/v0.72p kmpec/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/v0.72p kmpec/GPS.c
0,0 → 1,32
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Copyright (c) 04.2007 Holger Buss
// + 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/v0.72p kmpec/GPS.d
0,0 → 1,2
GPS.o GPS.d : GPS.c main.h old_macros.h _Settings.h printf_P.h timer0.h uart.h \
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/GPS.lst
0,0 → 1,100
1 .file "GPS.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global GPS_Neutral
12 GPS_Neutral:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 8091 0000 lds r24,GpsAktuell_X
16 0004 9091 0000 lds r25,(GpsAktuell_X)+1
17 0008 A091 0000 lds r26,(GpsAktuell_X)+2
18 000c B091 0000 lds r27,(GpsAktuell_X)+3
19 0010 8093 0000 sts GpsZiel_X,r24
20 0014 9093 0000 sts (GpsZiel_X)+1,r25
21 0018 A093 0000 sts (GpsZiel_X)+2,r26
22 001c B093 0000 sts (GpsZiel_X)+3,r27
23 0020 8091 0000 lds r24,GpsAktuell_Y
24 0024 9091 0000 lds r25,(GpsAktuell_Y)+1
25 0028 A091 0000 lds r26,(GpsAktuell_Y)+2
26 002c B091 0000 lds r27,(GpsAktuell_Y)+3
27 0030 8093 0000 sts GpsZiel_Y,r24
28 0034 9093 0000 sts (GpsZiel_Y)+1,r25
29 0038 A093 0000 sts (GpsZiel_Y)+2,r26
30 003c B093 0000 sts (GpsZiel_Y)+3,r27
31 /* epilogue: frame size=0 */
32 0040 0895 ret
33 /* epilogue end (size=1) */
34 /* function GPS_Neutral size 33 (32) */
36 .global GPS_BerechneZielrichtung
38 GPS_BerechneZielrichtung:
39 /* prologue: frame size=0 */
40 /* prologue end (size=0) */
41 0042 1092 0000 sts (GPS_Nick)+1,__zero_reg__
42 0046 1092 0000 sts GPS_Nick,__zero_reg__
43 004a 1092 0000 sts (GPS_Roll)+1,__zero_reg__
44 004e 1092 0000 sts GPS_Roll,__zero_reg__
45 /* epilogue: frame size=0 */
46 0052 0895 ret
47 /* epilogue end (size=1) */
48 /* function GPS_BerechneZielrichtung size 9 (8) */
50 .global GPS_Nick
51 .global GPS_Nick
52 .section .bss
55 GPS_Nick:
56 0000 0000 .skip 2,0
57 .global GPS_Roll
58 .global GPS_Roll
61 GPS_Roll:
62 0002 0000 .skip 2,0
63 .global GPS_Nick2
64 .global GPS_Nick2
67 GPS_Nick2:
68 0004 0000 .skip 2,0
69 .global GPS_Roll2
70 .global GPS_Roll2
73 GPS_Roll2:
74 0006 0000 .skip 2,0
75 .global GpsAktuell_X
76 .global GpsAktuell_X
79 GpsAktuell_X:
80 0008 0000 0000 .skip 4,0
81 .global GpsAktuell_Y
82 .global GpsAktuell_Y
85 GpsAktuell_Y:
86 000c 0000 0000 .skip 4,0
87 .global GpsZiel_X
88 .global GpsZiel_X
91 GpsZiel_X:
92 0010 0000 0000 .skip 4,0
93 .global GpsZiel_Y
94 .global GpsZiel_Y
97 GpsZiel_Y:
98 0014 0000 0000 .skip 4,0
99 /* File "GPS.c": code 42 = 0x002a ( 40), prologues 0, epilogues 2 */
DEFINED SYMBOLS
*ABS*:00000000 GPS.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:12 .text:00000000 GPS_Neutral
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:79 .bss:00000008 GpsAktuell_X
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:91 .bss:00000010 GpsZiel_X
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:85 .bss:0000000c GpsAktuell_Y
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:97 .bss:00000014 GpsZiel_Y
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:38 .text:00000042 GPS_BerechneZielrichtung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:55 .bss:00000000 GPS_Nick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:61 .bss:00000002 GPS_Roll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:67 .bss:00000004 GPS_Nick2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccoyNnXd.s:73 .bss:00000006 GPS_Roll2
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
/branches/v0.72p kmpec/License.txt
0,0 → 1,52
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Copyright (c) 04.2007 Holger Buss
// + Nur für den privaten Gebrauch
// + 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 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 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.
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
/branches/v0.72p kmpec/Settings.h
--- branches/v0.72p kmpec/Spectrum.c (nonexistent)
+++ branches/v0.72p kmpec/Spectrum.c (revision 1189)
@@ -0,0 +1,248 @@
+/*#######################################################################################
+Decodieren eines RC Summen Signals oder Spektrum Empfänger-Satellit
+#######################################################################################*/
+
+#include "Spectrum.h"
+#include "main.h"
+
+//############################################################################
+// zum Decodieren des Spektrum Satelliten wird USART1 benutzt.
+// USART1 initialisation from killagreg
+void Uart1Init(void)
+//############################################################################
+ {
+ // -- Start of USART1 initialisation for Spekturm seriell-mode
+ // USART1 Control and Status Register A, B, C and baud rate register
+ uint16_t ubrr = (uint16_t) ((uint32_t) SYSCLK/(8 * 115200) - 1);
+ // 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);
+ // 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
+ 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
+//
+// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+
+//############################################################################
+//Diese Routine startet und inizialisiert den USART1 für seriellen Spektrum satellite reciever
+SIGNAL(USART1_RX_vect)
+//############################################################################
+{
+static unsigned int Sync=0, FrameCnt=0, ByteHigh=0, ReSync=1, Frame2=0, FrameTimer;
+ unsigned int Channel, index;
+ signed int signal, tmp;
+ int bCheckDelay;
+ uint8_t c;
+
+ c = UDR1; // get data byte
+
+ if (ReSync == 1)
+ {
+ // wait for beginning of new frame
+ ReSync = 0;
+
+ FrameTimer = SetDelay(7); // minimum 7ms zwischen den frames
+ FrameCnt = 0;
+ Sync = 0;
+ ByteHigh = 0;
+ }
+ else
+ {
+ bCheckDelay = 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 ++;
+ }
+ else
+ {
+ // Zeichen kam vor Ablauf der 7ms Sync-Pause
+ // warten auf erstes Sync-Zeichen
+ }
+ }
+ else if((Sync == 1) && !bCheckDelay)
+ {
+ // zweites Sync-Character ignorieren, Bedeutung unbekannt
+ Sync = 2;
+ FrameCnt ++;
+ }
+ else if((Sync == 2) && !bCheckDelay)
+ {
+ // 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
+ Sync = 2;
+ FrameCnt ++;
+
+ index = (ByteHigh >> 2) & 0x0f;
+ index ++;
+ Channel = (ByteHigh << 8) | c;
+ signal = Channel & 0x3ff;
+ signal -= 0x200; // Offset, range 0x000..0x3ff?
+ signal = signal/3; // scaling to fit PPM resolution
+
+ if(index >= 0 && index <= 10)
+ {
+ // 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 >= 180) PPM_diff[index] = ((tmp - PPM_in[index]) / 3) * 3;
+ else PPM_diff[index] = 0;
+ PPM_in[index] = tmp;
+ }
+ }
+ else
+ {
+ // hier stimmt was nicht: neu synchronisieren
+ ReSync = 1;
+ FrameCnt = 0;
+ Frame2 = 0;
+ }
+
+ // 16 Bytes per frame
+ if(FrameCnt >= 16)
+ {
+ // Frame complete
+ if(Frame2 == 0)
+ {
+ // Null bedeutet: Neue Daten
+ // nur beim ersten Frame (CH 0-7) setzen
+ NewPpmData = 0;
+ }
+
+ // new frame next, nach fruehestens 7ms erwartet
+ FrameCnt = 0;
+ Frame2 = 0;
+ Sync = 0;
+ }
+ // Zeit bis zum nächsten Zeichen messen
+ FrameTimer = SetDelay(7);
+ }
+}
+
+
/branches/v0.72p kmpec/Spectrum.d
0,0 → 1,3
Spectrum.o Spectrum.d : Spectrum.c Spectrum.h main.h old_macros.h _Settings.h \
printf_P.h timer0.h uart.h analog.h twimaster.h menu.h rc.h fc.h gps.h \
spi.h led.h
/branches/v0.72p kmpec/Spectrum.h
0,0 → 1,8
/*#######################################################################################
Dekodieren eines Spectrum Signals
#######################################################################################*/
 
#ifndef _SPECTRUM_H
#define _SPECTRUM_H
void Uart1Init(void);
#endif //_RC_H
/branches/v0.72p kmpec/Spectrum.lst
0,0 → 1,450
1 .file "Spectrum.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global Uart1Init
12 Uart1Init:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 8091 C900 lds r24,201
16 0004 8F77 andi r24,lo8(127)
17 0006 8093 C900 sts 201,r24
18 000a 8091 C900 lds r24,201
19 000e 8F7B andi r24,lo8(-65)
20 0010 8093 C900 sts 201,r24
21 0014 8091 C900 lds r24,201
22 0018 8F7D andi r24,lo8(-33)
23 001a 8093 C900 sts 201,r24
24 001e 5A9A sbi 43-0x20,2
25 0020 5298 cbi 42-0x20,2
26 0022 1092 CD00 sts 205,__zero_reg__
27 0026 84E1 ldi r24,lo8(20)
28 0028 8093 CC00 sts 204,r24
29 002c 8091 C800 lds r24,200
30 0030 8260 ori r24,lo8(2)
31 0032 8093 C800 sts 200,r24
32 0036 80E1 ldi r24,lo8(16)
33 0038 8093 C900 sts 201,r24
34 003c 8091 CA00 lds r24,202
35 0040 8F77 andi r24,lo8(127)
36 0042 8093 CA00 sts 202,r24
37 0046 8091 CA00 lds r24,202
38 004a 8F7B andi r24,lo8(-65)
39 004c 8093 CA00 sts 202,r24
40 0050 8091 CA00 lds r24,202
41 0054 8F7D andi r24,lo8(-33)
42 0056 8093 CA00 sts 202,r24
43 005a 8091 CA00 lds r24,202
44 005e 8F7E andi r24,lo8(-17)
45 0060 8093 CA00 sts 202,r24
46 0064 8091 CA00 lds r24,202
47 0068 877F andi r24,lo8(-9)
48 006a 8093 CA00 sts 202,r24
49 006e 8091 C900 lds r24,201
50 0072 8B7F andi r24,lo8(-5)
51 0074 8093 C900 sts 201,r24
52 0078 8091 CA00 lds r24,202
53 007c 8460 ori r24,lo8(4)
54 007e 8093 CA00 sts 202,r24
55 0082 8091 CA00 lds r24,202
56 0086 8260 ori r24,lo8(2)
57 0088 8093 CA00 sts 202,r24
58 008c 8091 C800 lds r24,200
59 0090 87FF sbrs r24,7
60 0092 00C0 rjmp .L2
61 .L5:
62 0094 8091 CE00 lds r24,206
63 0098 8091 C800 lds r24,200
64 009c 87FD sbrc r24,7
65 009e 00C0 rjmp .L5
66 .L2:
67 00a0 8091 C900 lds r24,201
68 00a4 8068 ori r24,lo8(-128)
69 00a6 8093 C900 sts 201,r24
70 /* epilogue: frame size=0 */
71 00aa 0895 ret
72 /* epilogue end (size=1) */
73 /* function Uart1Init size 86 (85) */
75 .global __vector_28
77 __vector_28:
78 /* prologue: frame size=0 */
79 00ac 1F92 push __zero_reg__
80 00ae 0F92 push __tmp_reg__
81 00b0 0FB6 in __tmp_reg__,__SREG__
82 00b2 0F92 push __tmp_reg__
83 00b4 1124 clr __zero_reg__
84 00b6 0F93 push r16
85 00b8 1F93 push r17
86 00ba 2F93 push r18
87 00bc 3F93 push r19
88 00be 4F93 push r20
89 00c0 5F93 push r21
90 00c2 6F93 push r22
91 00c4 7F93 push r23
92 00c6 8F93 push r24
93 00c8 9F93 push r25
94 00ca AF93 push r26
95 00cc BF93 push r27
96 00ce CF93 push r28
97 00d0 DF93 push r29
98 00d2 EF93 push r30
99 00d4 FF93 push r31
100 /* prologue end (size=21) */
101 00d6 1091 CE00 lds r17,206
102 00da 8091 0000 lds r24,ReSync.2413
103 00de 9091 0000 lds r25,(ReSync.2413)+1
104 00e2 0197 sbiw r24,1
105 00e4 01F4 brne .+2
106 00e6 00C0 rjmp .L48
107 00e8 8091 0000 lds r24,FrameTimer.2415
108 00ec 9091 0000 lds r25,(FrameTimer.2415)+1
109 00f0 0E94 0000 call CheckDelay
110 00f4 2091 0000 lds r18,Sync.2410
111 00f8 3091 0000 lds r19,(Sync.2410)+1
112 00fc 2115 cp r18,__zero_reg__
113 00fe 3105 cpc r19,__zero_reg__
114 0100 01F0 breq .L49
115 0102 2130 cpi r18,1
116 0104 3105 cpc r19,__zero_reg__
117 0106 01F4 brne .+2
118 0108 00C0 rjmp .L50
119 .L16:
120 010a 2230 cpi r18,2
121 010c 3105 cpc r19,__zero_reg__
122 010e 01F4 brne .+2
123 0110 00C0 rjmp .L51
124 .L19:
125 0112 2330 cpi r18,3
126 0114 3105 cpc r19,__zero_reg__
127 0116 01F4 brne .+2
128 0118 00C0 rjmp .L52
129 .L25:
130 011a 81E0 ldi r24,lo8(1)
131 011c 90E0 ldi r25,hi8(1)
132 011e 9093 0000 sts (ReSync.2413)+1,r25
133 0122 8093 0000 sts ReSync.2413,r24
134 0126 1092 0000 sts (FrameCnt.2411)+1,__zero_reg__
135 012a 1092 0000 sts FrameCnt.2411,__zero_reg__
136 012e 1092 0000 sts (Frame2.2414)+1,__zero_reg__
137 0132 1092 0000 sts Frame2.2414,__zero_reg__
138 .L42:
139 0136 87E0 ldi r24,lo8(7)
140 0138 90E0 ldi r25,hi8(7)
141 013a 0E94 0000 call SetDelay
142 013e 9093 0000 sts (FrameTimer.2415)+1,r25
143 0142 8093 0000 sts FrameTimer.2415,r24
144 0146 00C0 rjmp .L46
145 .L49:
146 0148 8823 tst r24
147 014a 01F4 brne .L53
148 014c C091 0000 lds r28,FrameCnt.2411
149 0150 D091 0000 lds r29,(FrameCnt.2411)+1
150 .L14:
151 0154 6097 sbiw r28,16
152 0156 00F0 brlo .L42
153 0158 8091 0000 lds r24,Frame2.2414
154 015c 9091 0000 lds r25,(Frame2.2414)+1
155 0160 892B or r24,r25
156 0162 01F4 brne .L44
157 0164 1092 0000 sts NewPpmData,__zero_reg__
158 .L44:
159 0168 1092 0000 sts (FrameCnt.2411)+1,__zero_reg__
160 016c 1092 0000 sts FrameCnt.2411,__zero_reg__
161 0170 1092 0000 sts (Frame2.2414)+1,__zero_reg__
162 0174 1092 0000 sts Frame2.2414,__zero_reg__
163 0178 1092 0000 sts (Sync.2410)+1,__zero_reg__
164 017c 1092 0000 sts Sync.2410,__zero_reg__
165 0180 00C0 rjmp .L42
166 .L48:
167 0182 1092 0000 sts (ReSync.2413)+1,__zero_reg__
168 0186 1092 0000 sts ReSync.2413,__zero_reg__
169 018a 87E0 ldi r24,lo8(7)
170 018c 90E0 ldi r25,hi8(7)
171 018e 0E94 0000 call SetDelay
172 0192 9093 0000 sts (FrameTimer.2415)+1,r25
173 0196 8093 0000 sts FrameTimer.2415,r24
174 019a 1092 0000 sts (FrameCnt.2411)+1,__zero_reg__
175 019e 1092 0000 sts FrameCnt.2411,__zero_reg__
176 01a2 1092 0000 sts (Sync.2410)+1,__zero_reg__
177 01a6 1092 0000 sts Sync.2410,__zero_reg__
178 01aa 1092 0000 sts (ByteHigh.2412)+1,__zero_reg__
179 01ae 1092 0000 sts ByteHigh.2412,__zero_reg__
180 01b2 00C0 rjmp .L46
181 .L53:
182 01b4 81E0 ldi r24,lo8(1)
183 01b6 90E0 ldi r25,hi8(1)
184 01b8 9093 0000 sts (Sync.2410)+1,r25
185 01bc 8093 0000 sts Sync.2410,r24
186 01c0 C091 0000 lds r28,FrameCnt.2411
187 01c4 D091 0000 lds r29,(FrameCnt.2411)+1
188 01c8 2196 adiw r28,1
189 01ca D093 0000 sts (FrameCnt.2411)+1,r29
190 01ce C093 0000 sts FrameCnt.2411,r28
191 01d2 00C0 rjmp .L14
192 .L52:
193 01d4 8823 tst r24
194 01d6 01F0 breq .+2
195 01d8 00C0 rjmp .L25
196 01da 82E0 ldi r24,lo8(2)
197 01dc 90E0 ldi r25,hi8(2)
198 01de 9093 0000 sts (Sync.2410)+1,r25
199 01e2 8093 0000 sts Sync.2410,r24
200 01e6 C091 0000 lds r28,FrameCnt.2411
201 01ea D091 0000 lds r29,(FrameCnt.2411)+1
202 01ee 2196 adiw r28,1
203 01f0 D093 0000 sts (FrameCnt.2411)+1,r29
204 01f4 C093 0000 sts FrameCnt.2411,r28
205 01f8 2091 0000 lds r18,ByteHigh.2412
206 01fc 3091 0000 lds r19,(ByteHigh.2412)+1
207 0200 F901 movw r30,r18
208 0202 F695 lsr r31
209 0204 E795 ror r30
210 0206 F695 lsr r31
211 0208 E795 ror r30
212 020a EF70 andi r30,lo8(15)
213 020c F070 andi r31,hi8(15)
214 020e 3196 adiw r30,1
215 0210 EB30 cpi r30,11
216 0212 F105 cpc r31,__zero_reg__
217 0214 00F0 brlo .+2
218 0216 00C0 rjmp .L14
219 0218 812F mov r24,r17
220 021a 90E0 ldi r25,lo8(0)
221 021c 322F mov r19,r18
222 021e 2227 clr r18
223 0220 822B or r24,r18
224 0222 932B or r25,r19
225 0224 9370 andi r25,hi8(1023)
226 0226 8050 subi r24,lo8(-(-512))
227 0228 9240 sbci r25,hi8(-(-512))
228 022a 63E0 ldi r22,lo8(3)
229 022c 70E0 ldi r23,hi8(3)
230 022e 0E94 0000 call __divmodhi4
231 0232 8F01 movw r16,r30
232 0234 000F lsl r16
233 0236 111F rol r17
234 0238 F801 movw r30,r16
235 023a E050 subi r30,lo8(-(PPM_in))
236 023c F040 sbci r31,hi8(-(PPM_in))
237 023e 8081 ld r24,Z
238 0240 9181 ldd r25,Z+1
239 0242 9B01 movw r18,r22
240 0244 281B sub r18,r24
241 0246 390B sbc r19,r25
242 0248 C901 movw r24,r18
243 024a 37FD sbrc r19,7
244 024c 00C0 rjmp .L54
245 .L30:
246 024e 0697 sbiw r24,6
247 0250 04F4 brge .L29
248 0252 8091 0000 lds r24,SenderOkay
249 0256 883C cpi r24,lo8(-56)
250 0258 00F0 brlo .+2
251 025a 00C0 rjmp .L32
252 025c 8091 0000 lds r24,SenderOkay
253 0260 865F subi r24,lo8(-(10))
254 0262 8093 0000 sts SenderOkay,r24
255 .L29:
256 0266 F801 movw r30,r16
257 0268 E050 subi r30,lo8(-(PPM_in))
258 026a F040 sbci r31,hi8(-(PPM_in))
259 026c 8081 ld r24,Z
260 026e 9181 ldd r25,Z+1
261 0270 9C01 movw r18,r24
262 0272 220F lsl r18
263 0274 331F rol r19
264 0276 280F add r18,r24
265 0278 391F adc r19,r25
266 027a 260F add r18,r22
267 027c 371F adc r19,r23
268 027e 37FD sbrc r19,7
269 0280 00C0 rjmp .L55
270 .L34:
271 0282 3595 asr r19
272 0284 2795 ror r18
273 0286 3595 asr r19
274 0288 2795 ror r18
275 028a CB01 movw r24,r22
276 028c 0196 adiw r24,1
277 028e 8217 cp r24,r18
278 0290 9307 cpc r25,r19
279 0292 04F0 brlt .+2
280 0294 00C0 rjmp .L35
281 0296 2150 subi r18,lo8(-(-1))
282 0298 3040 sbci r19,hi8(-(-1))
283 .L37:
284 029a 8091 0000 lds r24,SenderOkay
285 029e 843B cpi r24,lo8(-76)
286 02a0 00F4 brsh .+2
287 02a2 00C0 rjmp .L39
288 02a4 F801 movw r30,r16
289 02a6 E050 subi r30,lo8(-(PPM_in))
290 02a8 F040 sbci r31,hi8(-(PPM_in))
291 02aa 8081 ld r24,Z
292 02ac 9181 ldd r25,Z+1
293 02ae A901 movw r20,r18
294 02b0 481B sub r20,r24
295 02b2 590B sbc r21,r25
296 02b4 CA01 movw r24,r20
297 02b6 63E0 ldi r22,lo8(3)
298 02b8 70E0 ldi r23,hi8(3)
299 02ba 0E94 0000 call __divmodhi4
300 02be CB01 movw r24,r22
301 02c0 880F lsl r24
302 02c2 991F rol r25
303 02c4 860F add r24,r22
304 02c6 971F adc r25,r23
305 02c8 F801 movw r30,r16
306 02ca E050 subi r30,lo8(-(PPM_diff))
307 02cc F040 sbci r31,hi8(-(PPM_diff))
308 02ce 9183 std Z+1,r25
309 02d0 8083 st Z,r24
310 .L41:
311 02d2 0050 subi r16,lo8(-(PPM_in))
312 02d4 1040 sbci r17,hi8(-(PPM_in))
313 02d6 F801 movw r30,r16
314 02d8 3183 std Z+1,r19
315 02da 2083 st Z,r18
316 02dc 00C0 rjmp .L14
317 .L50:
318 02de 8823 tst r24
319 02e0 01F0 breq .+2
320 02e2 00C0 rjmp .L16
321 02e4 82E0 ldi r24,lo8(2)
322 02e6 90E0 ldi r25,hi8(2)
323 02e8 9093 0000 sts (Sync.2410)+1,r25
324 02ec 8093 0000 sts Sync.2410,r24
325 02f0 C091 0000 lds r28,FrameCnt.2411
326 02f4 D091 0000 lds r29,(FrameCnt.2411)+1
327 02f8 2196 adiw r28,1
328 02fa D093 0000 sts (FrameCnt.2411)+1,r29
329 02fe C093 0000 sts FrameCnt.2411,r28
330 0302 00C0 rjmp .L14
331 .L51:
332 0304 8823 tst r24
333 0306 01F0 breq .+2
334 0308 00C0 rjmp .L19
335 030a 812F mov r24,r17
336 030c 90E0 ldi r25,lo8(0)
337 030e 9093 0000 sts (ByteHigh.2412)+1,r25
338 0312 8093 0000 sts ByteHigh.2412,r24
339 0316 2091 0000 lds r18,FrameCnt.2411
340 031a 3091 0000 lds r19,(FrameCnt.2411)+1
341 031e 2230 cpi r18,2
342 0320 3105 cpc r19,__zero_reg__
343 0322 01F0 breq .L56
344 .L22:
345 0324 83E0 ldi r24,lo8(3)
346 0326 90E0 ldi r25,hi8(3)
347 0328 9093 0000 sts (Sync.2410)+1,r25
348 032c 8093 0000 sts Sync.2410,r24
349 0330 E901 movw r28,r18
350 0332 2196 adiw r28,1
351 0334 D093 0000 sts (FrameCnt.2411)+1,r29
352 0338 C093 0000 sts FrameCnt.2411,r28
353 033c 00C0 rjmp .L14
354 .L56:
355 033e 1092 0000 sts (Frame2.2414)+1,__zero_reg__
356 0342 1092 0000 sts Frame2.2414,__zero_reg__
357 0346 17FF sbrs r17,7
358 0348 00C0 rjmp .L22
359 034a 81E0 ldi r24,lo8(1)
360 034c 90E0 ldi r25,hi8(1)
361 034e 9093 0000 sts (Frame2.2414)+1,r25
362 0352 8093 0000 sts Frame2.2414,r24
363 0356 00C0 rjmp .L22
364 .L39:
365 0358 F801 movw r30,r16
366 035a E050 subi r30,lo8(-(PPM_diff))
367 035c F040 sbci r31,hi8(-(PPM_diff))
368 035e 1182 std Z+1,__zero_reg__
369 0360 1082 st Z,__zero_reg__
370 0362 00C0 rjmp .L41
371 .L35:
372 0364 6150 subi r22,lo8(-(-1))
373 0366 7040 sbci r23,hi8(-(-1))
374 0368 2617 cp r18,r22
375 036a 3707 cpc r19,r23
376 036c 04F0 brlt .+2
377 036e 00C0 rjmp .L37
378 0370 2F5F subi r18,lo8(-(1))
379 0372 3F4F sbci r19,hi8(-(1))
380 0374 00C0 rjmp .L37
381 .L32:
382 0376 88EC ldi r24,lo8(-56)
383 0378 8093 0000 sts SenderOkay,r24
384 037c 00C0 rjmp .L29
385 .L55:
386 037e 2D5F subi r18,lo8(-(3))
387 0380 3F4F sbci r19,hi8(-(3))
388 0382 00C0 rjmp .L34
389 .L54:
390 0384 9095 com r25
391 0386 8195 neg r24
392 0388 9F4F sbci r25,lo8(-1)
393 038a 00C0 rjmp .L30
394 .L46:
395 /* epilogue: frame size=0 */
396 038c FF91 pop r31
397 038e EF91 pop r30
398 0390 DF91 pop r29
399 0392 CF91 pop r28
400 0394 BF91 pop r27
401 0396 AF91 pop r26
402 0398 9F91 pop r25
403 039a 8F91 pop r24
404 039c 7F91 pop r23
405 039e 6F91 pop r22
406 03a0 5F91 pop r21
407 03a2 4F91 pop r20
408 03a4 3F91 pop r19
409 03a6 2F91 pop r18
410 03a8 1F91 pop r17
411 03aa 0F91 pop r16
412 03ac 0F90 pop __tmp_reg__
413 03ae 0FBE out __SREG__,__tmp_reg__
414 03b0 0F90 pop __tmp_reg__
415 03b2 1F90 pop __zero_reg__
416 03b4 1895 reti
417 /* epilogue end (size=21) */
418 /* function __vector_28 size 393 (351) */
420 .lcomm FrameTimer.2415,2
421 .lcomm Frame2.2414,2
422 .data
425 ReSync.2413:
426 0000 0100 .word 1
427 .lcomm ByteHigh.2412,2
428 .lcomm FrameCnt.2411,2
429 .lcomm Sync.2410,2
430 /* File "Spectrum.c": code 479 = 0x01df ( 436), prologues 21, epilogues 22 */
DEFINED SYMBOLS
*ABS*:00000000 Spectrum.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:12 .text:00000000 Uart1Init
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:77 .text:000000ac __vector_28
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:425 .data:00000000 ReSync.2413
.bss:00000000 FrameTimer.2415
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:428 .bss:00000008 Sync.2410
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:427 .bss:00000006 FrameCnt.2411
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:420 .bss:00000002 Frame2.2414
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccAugVGG.s:421 .bss:00000004 ByteHigh.2412
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
CheckDelay
SetDelay
NewPpmData
__divmodhi4
PPM_in
SenderOkay
PPM_diff
/branches/v0.72p kmpec/_Settings.h
0,0 → 1,43
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Abstimmung
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#define ACC_AMPLIFY 6
#define FAKTOR_P 1
#define FAKTOR_I 0.0001
 
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Debug-Interface
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#define SIO_DEBUG 1 // Soll der Debugger aktiviert sein?
#define MIN_DEBUG_INTERVALL 250 // in diesem Intervall werden Degugdaten ohne Aufforderung gesendet
 
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Sender
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#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
// +++++++++++++++++++++++++++++++
// + Getestete Settings:
// +++++++++++++++++++++++++++++++
// Setting: Kamera
// Stick_P:3
// Stick_D:0
// Gyro_P: 175
// Gyro_I: 175
// Ki_Anteil: 10
// +++++++++++++++++++++++++++++++
// + Getestete Settings:
// +++++++++++++++++++++++++++++++
// Setting: Normal
// Stick_P:2
// Stick_D:8
// Gyro_P: 80
// Gyro_I: 150
// Ki_Anteil: 5
 
/branches/v0.72p kmpec/analog.c
0,0 → 1,457
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Copyright (c) 04.2007 Holger Buss
// + only for non-profit use
// + www.MikroKopter.com
// + see the File "License.txt" for further Informations
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
#include "main.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 int StartLuftdruck;
volatile unsigned int MessLuftdruck = 1023;
unsigned char DruckOffsetSetting;
signed char ExpandBaro = 0;
volatile int HoeheD = 0;
volatile char messanzahl_Druck;
volatile int tmpLuftdruck;
volatile unsigned int ZaehlMessungen = 0;
unsigned char AnalogOffsetNick = 115,AnalogOffsetRoll = 115,AnalogOffsetGier = 115;
unsigned char GyroDefektN = 0,GyroDefektR = 0,GyroDefektG = 0;
volatile unsigned char AdReady = 1;
//#######################################################################################
//
void ADC_Init(void)
//#######################################################################################
{
ADMUX = 0;//Referenz ist extern
ANALOG_ON;
}
 
void SucheLuftruckOffset(void)
{
unsigned int off;
off = eeprom_read_byte(&EEPromArray[EEPROM_ADR_LAST_OFFSET]);
if(off > 20) off -= 10;
OCR0A = off;
ExpandBaro = 0;
Delay_ms_Mess(100);
if(MessLuftdruck < 850) off = 0;
for(; off < 250;off++)
{
OCR0A = off;
Delay_ms_Mess(50);
printf(".");
if(MessLuftdruck < 850) break;
}
eeprom_write_byte(&EEPromArray[EEPROM_ADR_LAST_OFFSET], off);
DruckOffsetSetting = off;
Delay_ms_Mess(300);
}
 
void SucheGyroOffset(void)
{
unsigned char i, ready = 0;
GyroDefektN = 0; GyroDefektR = 0; GyroDefektG = 0;
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++;
twi_state = 8;
i2c_start();
if(AnalogOffsetNick < 10) { GyroDefektN = 1; AnalogOffsetNick = 10;}; if(AnalogOffsetNick > 245) { GyroDefektN = 1; AnalogOffsetNick = 245;};
if(AnalogOffsetRoll < 10) { GyroDefektR = 1; AnalogOffsetRoll = 10;}; if(AnalogOffsetRoll > 245) { GyroDefektR = 1; AnalogOffsetRoll = 245;};
if(AnalogOffsetGier < 10) { GyroDefektG = 1; AnalogOffsetGier = 10;}; if(AnalogOffsetGier > 245) { GyroDefektG = 1; AnalogOffsetGier = 245;};
while(twi_state);
messanzahl_Druck = 0;
ANALOG_ON;
while(messanzahl_Druck == 0);
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
*/
 
//#######################################################################################
//
SIGNAL(SIG_ADC)
//#######################################################################################
{
static unsigned char kanal=0,state = 0;
static signed int gier1, roll1, nick1, nick_filter, roll_filter;
static signed int accy, accx;
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)
{
NeutralAccZ += 0.02;
if(modell_fliegt < 500) NeutralAccZ += 0.1;
}
}
else if(AdWertAccHoch < -1)
{
if(NeutralAccZ > 550)
{
NeutralAccZ-= 0.02;
if(modell_fliegt < 500) NeutralAccZ -= 0.1;
}
}
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 8:" 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:
tmpLuftdruck += ADC;
if(++messanzahl_Druck >= 5)
{
tmpLuftdruck /= 2;
MessLuftdruck = ADC;
messanzahl_Druck = 0;
HoeheD = (31 * HoeheD + (int) Parameter_Luftdruck_D * (int)(255 * ExpandBaro + StartLuftdruck - tmpLuftdruck - HoehenWert))/32; // D-Anteil = neuerWert - AlterWert
Luftdruck = (tmpLuftdruck + 7 * Luftdruck + 4) / 8;
HoehenWert = 255 * ExpandBaro + StartLuftdruck - Luftdruck;
tmpLuftdruck /= 2;
}
kanal = AD_NICK;
break;
default:
kanal = 0; state = 0; kanal = AD_NICK;
break;
}
ADMUX = kanal;
if(state != 0) ANALOG_ON;
}
 
 
 
/*
//#######################################################################################
//
SIGNAL(SIG_ADC)
//#######################################################################################
{
static unsigned char kanal=0,state = 0;
static signed int gier1, roll1, nick1;
static signed long nick_filter, roll_filter;
static signed int accy, accx;
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_NICK;
break;
case 4:
nick1 += ADC;
kanal = AD_ROLL;
break;
case 5:
roll1 += ADC;
kanal = AD_ACC_Z;
break;
case 6:
AdWertAccHoch = (signed int) ADC - NeutralAccZ;
if(AdWertAccHoch > 1)
{
if(NeutralAccZ < 750)
{
NeutralAccZ += 0.02;
if(modell_fliegt < 500) NeutralAccZ += 0.1;
}
}
else if(AdWertAccHoch < -1)
{
if(NeutralAccZ > 550)
{
NeutralAccZ-= 0.02;
if(modell_fliegt < 500) NeutralAccZ -= 0.1;
}
}
messanzahl_AccHoch = 1;
Aktuell_az = ADC;
Mess_Integral_Hoch += AdWertAccHoch; // Integrieren
Mess_Integral_Hoch -= Mess_Integral_Hoch / 1024; // dämfen
kanal = AD_NICK;
break;
case 7:
nick1 += ADC;
kanal = AD_ROLL;
break;
case 8:
roll1 += ADC;
kanal = AD_ACC_X;
break;
case 9:
Aktuell_ax = ADC - NeutralAccX;
accx = Aktuell_ax;
kanal = AD_GIER;
break;
case 10:
gier1 += ADC;
kanal = AD_NICK;
break;
case 11:
nick1 += ADC;
kanal = AD_ROLL;
break;
case 12:
roll1 += ADC;
kanal = AD_UBAT;
break;
case 13:
UBat = (3 * UBat + ADC / 3) / 4;//(UBat + ((ADC * 39) / 256) + 19) / 2;
kanal = AD_ACC_Y;
break;
case 14:
Aktuell_ay = NeutralAccY - ADC;
accy += Aktuell_ay;
kanal = AD_NICK;
break;
case 15:
nick1 += ADC;
kanal = AD_ROLL;
break;
case 16:
roll1 += ADC;
kanal = AD_ACC_X;
break;
case 17:
Aktuell_ax = ADC - NeutralAccX;
accx += Aktuell_ax;
kanal = AD_NICK;
break;
case 18:
nick1 += ADC;
kanal = AD_ROLL;
break;
case 19:
roll1 += ADC;
kanal = AD_GIER;
break;
case 20:
gier1 += ADC;
kanal = AD_ACC_Y;
break;
case 21:
Aktuell_ay = NeutralAccY - ADC;
accy += Aktuell_ay;
kanal = AD_NICK;
break;
case 22:
nick1 += ADC;
kanal = AD_ROLL;
break;
case 23:
roll1 += ADC;
kanal = AD_DRUCK;
break;
case 24:
tmpLuftdruck += ADC;
if(++messanzahl_Druck >= 5)
{
MessLuftdruck = ADC;
messanzahl_Druck = 0;
HoeheD = (7 * HoeheD + (int) Parameter_Luftdruck_D * (int)(255 * ExpandBaro + StartLuftdruck - tmpLuftdruck - HoehenWert)) / 8; // D-Anteil = neuerWert - AlterWert
Luftdruck = (tmpLuftdruck + 3 * Luftdruck) / 4;
HoehenWert = 255 * ExpandBaro + StartLuftdruck - Luftdruck;
tmpLuftdruck = 0;
}
kanal = AD_NICK;
break;
case 25:
nick1 += ADC;
kanal = AD_ROLL;
break;
case 26:
roll1 += ADC;
kanal = AD_ACC_X;
break;
case 27:
Aktuell_ax = ADC - NeutralAccX;
accx += Aktuell_ax;
kanal = AD_GIER;
break;
case 28:
if(PlatinenVersion == 10) AdWertGier = (ADC + gier1 + 2) / 4;
else
if(PlatinenVersion == 20) AdWertGier = 2047 - (ADC + gier1 + 1) / 2;
else AdWertGier = (ADC + gier1 + 1) / 2;
kanal = AD_NICK;
break;
case 29:
nick1 += ADC;
kanal = AD_ROLL;
break;
case 30:
roll1 += ADC;
kanal = AD_ACC_Y;
break;
case 31:
Aktuell_ay = NeutralAccY - ADC;
AdWertAccRoll = (Aktuell_ay + accy);
kanal = AD_NICK;
break;
case 32:
AdWertNick = (ADC + nick1 + 3) / 5;
nick_filter = (long) (1 * (long) nick_filter + 4 * (long)(ADC + nick1) + 1) / 2;
if(PlatinenVersion == 10) { AdWertNick /= 2;nick_filter /=2;}
HiResNick = nick_filter - 20 * AdNeutralNick;
AdWertNickFilter = (long)(3L * (long)AdWertNickFilter + HiResNick + 2) / 4;
DebugOut.Analog[21] = AdWertNickFilter / 4;
kanal = AD_ROLL;
break;
case 33:
AdWertRoll = (ADC + roll1 + 3) / 5;
roll_filter = (long)(1 * (long)roll_filter + 4 * (long)(ADC + roll1) + 1) / 2;
if(PlatinenVersion == 10) { AdWertRoll /= 2;roll_filter /=2;}
HiResRoll = roll_filter - 20 * AdNeutralRoll;
AdWertRollFilter = (long)(3L * (long)AdWertRollFilter + HiResRoll + 2) / 4;
DebugOut.Analog[22] = AdWertRollFilter / 4;
kanal = AD_ACC_X;
break;
case 34:
Aktuell_ax = ADC - NeutralAccX;
AdWertAccNick = (Aktuell_ax + accx);
kanal = AD_NICK;
state = 0;
AdReady = 1;
ZaehlMessungen++;
break;
default:
kanal = 0;
state = 0;
break;
}
ADMUX = kanal;
if(state != 0) ANALOG_ON;
}
*/
/branches/v0.72p kmpec/analog.d
0,0 → 1,2
analog.o analog.d : analog.c main.h old_macros.h _Settings.h printf_P.h timer0.h \
uart.h analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/analog.h
0,0 → 1,45
#ifndef _ANALOG_H
#define _ANALOG_H
/*#######################################################################################
 
#######################################################################################*/
 
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 char messanzahl_Druck;
extern volatile unsigned int ZaehlMessungen;
extern unsigned char DruckOffsetSetting;
extern signed char ExpandBaro;
extern volatile int HoeheD;
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/v0.72p kmpec/analog.lst
0,0 → 1,1333
1 .file "analog.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global ADC_Init
12 ADC_Init:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 1092 7C00 sts 124,__zero_reg__
16 0004 8FEC ldi r24,lo8(-49)
17 0006 8093 7A00 sts 122,r24
18 /* epilogue: frame size=0 */
19 000a 0895 ret
20 /* epilogue end (size=1) */
21 /* function ADC_Init size 6 (5) */
23 .global __vector_24
25 __vector_24:
26 /* prologue: frame size=0 */
27 000c 1F92 push __zero_reg__
28 000e 0F92 push __tmp_reg__
29 0010 0FB6 in __tmp_reg__,__SREG__
30 0012 0F92 push __tmp_reg__
31 0014 1124 clr __zero_reg__
32 0016 DF92 push r13
33 0018 EF92 push r14
34 001a FF92 push r15
35 001c 0F93 push r16
36 001e 1F93 push r17
37 0020 2F93 push r18
38 0022 3F93 push r19
39 0024 4F93 push r20
40 0026 5F93 push r21
41 0028 6F93 push r22
42 002a 7F93 push r23
43 002c 8F93 push r24
44 002e 9F93 push r25
45 0030 AF93 push r26
46 0032 BF93 push r27
47 0034 CF93 push r28
48 0036 DF93 push r29
49 0038 EF93 push r30
50 003a FF93 push r31
51 /* prologue end (size=24) */
52 003c D090 0000 lds r13,state.2447
53 0040 8D2D mov r24,r13
54 0042 D394 inc r13
55 0044 D092 0000 sts state.2447,r13
56 0048 E82F mov r30,r24
57 004a F0E0 ldi r31,lo8(0)
58 004c E231 cpi r30,18
59 004e F105 cpc r31,__zero_reg__
60 0050 00F0 brlo .L61
61 0052 1092 0000 sts state.2447,__zero_reg__
62 0056 82E0 ldi r24,lo8(2)
63 0058 8093 0000 sts kanal.2446,r24
64 005c 8093 7C00 sts 124,r24
65 0060 00C0 rjmp .L59
66 .L61:
67 0062 E050 subi r30,lo8(-(gs(.L23)))
**** Warning:expression dangerous with linker stubs
68 0064 F040 sbci r31,hi8(-(gs(.L23)))
**** Warning:expression dangerous with linker stubs
69 0066 EE0F lsl r30
70 0068 FF1F rol r31
71 006a 0590 lpm __tmp_reg__,Z+
72 006c F491 lpm r31,Z
73 006e E02D mov r30,__tmp_reg__
74 0070 0994 ijmp
75 .data
76 .section .progmem.gcc_sw_table, "a", @progbits
77 .p2align 1
78 .L23:
79 .data
80 .section .progmem.gcc_sw_table, "a", @progbits
81 .p2align 1
82 0000 0000 .word gs(.L5)
83 0002 0000 .word gs(.L6)
84 0004 0000 .word gs(.L7)
85 0006 0000 .word gs(.L8)
86 0008 0000 .word gs(.L9)
87 000a 0000 .word gs(.L15)
88 000c 0000 .word gs(.L11)
89 000e 0000 .word gs(.L12)
90 0010 0000 .word gs(.L13)
91 0012 0000 .word gs(.L14)
92 0014 0000 .word gs(.L15)
93 0016 0000 .word gs(.L16)
94 0018 0000 .word gs(.L17)
95 001a 0000 .word gs(.L18)
96 001c 0000 .word gs(.L19)
97 001e 0000 .word gs(.L20)
98 0020 0000 .word gs(.L21)
99 0022 0000 .word gs(.L22)
100 .text
101 .L15:
102 0072 8091 7800 lds r24,120
103 0076 9091 7900 lds r25,(120)+1
104 007a 2091 0000 lds r18,nick1.2450
105 007e 3091 0000 lds r19,(nick1.2450)+1
106 0082 280F add r18,r24
107 0084 391F adc r19,r25
108 0086 3093 0000 sts (nick1.2450)+1,r19
109 008a 2093 0000 sts nick1.2450,r18
110 008e 81E0 ldi r24,lo8(1)
111 0090 8093 0000 sts kanal.2446,r24
112 .L24:
113 0094 8091 0000 lds r24,kanal.2446
114 0098 8093 7C00 sts 124,r24
115 009c DD20 tst r13
116 009e 01F4 brne .+2
117 00a0 00C0 rjmp .L59
118 00a2 8FEC ldi r24,lo8(-49)
119 00a4 8093 7A00 sts 122,r24
120 00a8 00C0 rjmp .L59
121 .L22:
122 00aa DD24 clr r13
123 00ac 1092 0000 sts state.2447,__zero_reg__
124 00b0 81E0 ldi r24,lo8(1)
125 00b2 8093 0000 sts AdReady,r24
126 00b6 8091 0000 lds r24,ZaehlMessungen
127 00ba 9091 0000 lds r25,(ZaehlMessungen)+1
128 00be 0196 adiw r24,1
129 00c0 9093 0000 sts (ZaehlMessungen)+1,r25
130 00c4 8093 0000 sts ZaehlMessungen,r24
131 .L14:
132 00c8 2091 7800 lds r18,120
133 00cc 3091 7900 lds r19,(120)+1
134 00d0 8091 0000 lds r24,tmpLuftdruck
135 00d4 9091 0000 lds r25,(tmpLuftdruck)+1
136 00d8 820F add r24,r18
137 00da 931F adc r25,r19
138 00dc 9093 0000 sts (tmpLuftdruck)+1,r25
139 00e0 8093 0000 sts tmpLuftdruck,r24
140 00e4 8091 0000 lds r24,messanzahl_Druck
141 00e8 8F5F subi r24,lo8(-(1))
142 00ea 8093 0000 sts messanzahl_Druck,r24
143 00ee 8091 0000 lds r24,messanzahl_Druck
144 00f2 8530 cpi r24,lo8(5)
145 00f4 00F4 brsh .+2
146 00f6 00C0 rjmp .L52
147 00f8 8091 0000 lds r24,tmpLuftdruck
148 00fc 9091 0000 lds r25,(tmpLuftdruck)+1
149 0100 97FD sbrc r25,7
150 0102 00C0 rjmp .L62
151 .L54:
152 0104 9595 asr r25
153 0106 8795 ror r24
154 0108 9093 0000 sts (tmpLuftdruck)+1,r25
155 010c 8093 0000 sts tmpLuftdruck,r24
156 0110 8091 7800 lds r24,120
157 0114 9091 7900 lds r25,(120)+1
158 0118 9093 0000 sts (MessLuftdruck)+1,r25
159 011c 8093 0000 sts MessLuftdruck,r24
160 0120 1092 0000 sts messanzahl_Druck,__zero_reg__
161 0124 6091 0000 lds r22,HoeheD
162 0128 7091 0000 lds r23,(HoeheD)+1
163 012c 8091 0000 lds r24,ExpandBaro
164 0130 9927 clr r25
165 0132 87FD sbrc r24,7
166 0134 9095 com r25
167 0136 D82F mov r29,r24
168 0138 CC27 clr r28
169 013a C81B sub r28,r24
170 013c D90B sbc r29,r25
171 013e 2091 0000 lds r18,StartLuftdruck
172 0142 3091 0000 lds r19,(StartLuftdruck)+1
173 0146 8091 0000 lds r24,tmpLuftdruck
174 014a 9091 0000 lds r25,(tmpLuftdruck)+1
175 014e 4091 0000 lds r20,HoehenWert
176 0152 5091 0000 lds r21,(HoehenWert)+1
177 0156 281B sub r18,r24
178 0158 390B sbc r19,r25
179 015a 241B sub r18,r20
180 015c 350B sbc r19,r21
181 015e 2C0F add r18,r28
182 0160 3D1F adc r19,r29
183 0162 8091 0000 lds r24,Parameter_Luftdruck_D
184 0166 90E0 ldi r25,lo8(0)
185 0168 A901 movw r20,r18
186 016a 489F mul r20,r24
187 016c 9001 movw r18,r0
188 016e 499F mul r20,r25
189 0170 300D add r19,r0
190 0172 589F mul r21,r24
191 0174 300D add r19,r0
192 0176 1124 clr r1
193 0178 8FE1 ldi r24,lo8(31)
194 017a 90E0 ldi r25,hi8(31)
195 017c AC01 movw r20,r24
196 017e 649F mul r22,r20
197 0180 C001 movw r24,r0
198 0182 659F mul r22,r21
199 0184 900D add r25,r0
200 0186 749F mul r23,r20
201 0188 900D add r25,r0
202 018a 1124 clr r1
203 018c 280F add r18,r24
204 018e 391F adc r19,r25
205 0190 37FD sbrc r19,7
206 0192 00C0 rjmp .L63
207 .L55:
208 0194 3595 asr r19
209 0196 2795 ror r18
210 0198 3595 asr r19
211 019a 2795 ror r18
212 019c 3595 asr r19
213 019e 2795 ror r18
214 01a0 3595 asr r19
215 01a2 2795 ror r18
216 01a4 3595 asr r19
217 01a6 2795 ror r18
218 01a8 3093 0000 sts (HoeheD)+1,r19
219 01ac 2093 0000 sts HoeheD,r18
220 01b0 6091 0000 lds r22,tmpLuftdruck
221 01b4 7091 0000 lds r23,(tmpLuftdruck)+1
222 01b8 E090 0000 lds r14,Luftdruck
223 01bc F090 0000 lds r15,(Luftdruck)+1
224 01c0 0091 0000 lds r16,(Luftdruck)+2
225 01c4 1091 0000 lds r17,(Luftdruck)+3
226 01c8 8827 clr r24
227 01ca 77FD sbrc r23,7
228 01cc 8095 com r24
229 01ce 982F mov r25,r24
230 01d0 A801 movw r20,r16
231 01d2 9701 movw r18,r14
232 01d4 220F lsl r18
233 01d6 331F rol r19
234 01d8 441F rol r20
235 01da 551F rol r21
236 01dc 220F lsl r18
237 01de 331F rol r19
238 01e0 441F rol r20
239 01e2 551F rol r21
240 01e4 220F lsl r18
241 01e6 331F rol r19
242 01e8 441F rol r20
243 01ea 551F rol r21
244 01ec 2E19 sub r18,r14
245 01ee 3F09 sbc r19,r15
246 01f0 400B sbc r20,r16
247 01f2 510B sbc r21,r17
248 01f4 620F add r22,r18
249 01f6 731F adc r23,r19
250 01f8 841F adc r24,r20
251 01fa 951F adc r25,r21
252 01fc 6C5F subi r22,lo8(-(4))
253 01fe 7F4F sbci r23,hi8(-(4))
254 0200 8F4F sbci r24,hlo8(-(4))
255 0202 9F4F sbci r25,hhi8(-(4))
256 0204 28E0 ldi r18,lo8(8)
257 0206 30E0 ldi r19,hi8(8)
258 0208 40E0 ldi r20,hlo8(8)
259 020a 50E0 ldi r21,hhi8(8)
260 020c 0E94 0000 call __divmodsi4
261 0210 2093 0000 sts Luftdruck,r18
262 0214 3093 0000 sts (Luftdruck)+1,r19
263 0218 4093 0000 sts (Luftdruck)+2,r20
264 021c 5093 0000 sts (Luftdruck)+3,r21
265 0220 2091 0000 lds r18,StartLuftdruck
266 0224 3091 0000 lds r19,(StartLuftdruck)+1
267 0228 8091 0000 lds r24,Luftdruck
268 022c 9091 0000 lds r25,(Luftdruck)+1
269 0230 A091 0000 lds r26,(Luftdruck)+2
270 0234 B091 0000 lds r27,(Luftdruck)+3
271 0238 C20F add r28,r18
272 023a D31F adc r29,r19
273 023c C81B sub r28,r24
274 023e D90B sbc r29,r25
275 0240 D093 0000 sts (HoehenWert)+1,r29
276 0244 C093 0000 sts HoehenWert,r28
277 0248 8091 0000 lds r24,tmpLuftdruck
278 024c 9091 0000 lds r25,(tmpLuftdruck)+1
279 0250 97FD sbrc r25,7
280 0252 00C0 rjmp .L64
281 .L56:
282 0254 9595 asr r25
283 0256 8795 ror r24
284 0258 9093 0000 sts (tmpLuftdruck)+1,r25
285 025c 8093 0000 sts tmpLuftdruck,r24
286 .L52:
287 0260 82E0 ldi r24,lo8(2)
288 0262 8093 0000 sts kanal.2446,r24
289 0266 00C0 rjmp .L24
290 .L13:
291 0268 6091 7800 lds r22,120
292 026c 7091 7900 lds r23,(120)+1
293 0270 E090 0000 lds r14,NeutralAccZ
294 0274 F090 0000 lds r15,(NeutralAccZ)+1
295 0278 0091 0000 lds r16,(NeutralAccZ)+2
296 027c 1091 0000 lds r17,(NeutralAccZ)+3
297 0280 8827 clr r24
298 0282 77FD sbrc r23,7
299 0284 8095 com r24
300 0286 982F mov r25,r24
301 0288 0E94 0000 call __floatsisf
302 028c A801 movw r20,r16
303 028e 9701 movw r18,r14
304 0290 0E94 0000 call __subsf3
305 0294 0E94 0000 call __fixsfsi
306 0298 7093 0000 sts (AdWertAccHoch)+1,r23
307 029c 6093 0000 sts AdWertAccHoch,r22
308 02a0 8091 0000 lds r24,AdWertAccHoch
309 02a4 9091 0000 lds r25,(AdWertAccHoch)+1
310 02a8 0297 sbiw r24,2
311 02aa 04F4 brge .+2
312 02ac 00C0 rjmp .L25
313 02ae 6091 0000 lds r22,NeutralAccZ
314 02b2 7091 0000 lds r23,(NeutralAccZ)+1
315 02b6 8091 0000 lds r24,(NeutralAccZ)+2
316 02ba 9091 0000 lds r25,(NeutralAccZ)+3
317 02be 20E0 ldi r18,lo8(0x443b8000)
318 02c0 30E8 ldi r19,hi8(0x443b8000)
319 02c2 4BE3 ldi r20,hlo8(0x443b8000)
320 02c4 54E4 ldi r21,hhi8(0x443b8000)
321 02c6 0E94 0000 call __ltsf2
322 02ca 8823 tst r24
323 02cc 04F4 brge .L27
324 02ce 6091 0000 lds r22,NeutralAccZ
325 02d2 7091 0000 lds r23,(NeutralAccZ)+1
326 02d6 8091 0000 lds r24,(NeutralAccZ)+2
327 02da 9091 0000 lds r25,(NeutralAccZ)+3
328 02de 2AE0 ldi r18,lo8(0x3ca3d70a)
329 02e0 37ED ldi r19,hi8(0x3ca3d70a)
330 02e2 43EA ldi r20,hlo8(0x3ca3d70a)
331 02e4 5CE3 ldi r21,hhi8(0x3ca3d70a)
332 02e6 0E94 0000 call __addsf3
333 02ea 6093 0000 sts NeutralAccZ,r22
334 02ee 7093 0000 sts (NeutralAccZ)+1,r23
335 02f2 8093 0000 sts (NeutralAccZ)+2,r24
336 02f6 9093 0000 sts (NeutralAccZ)+3,r25
337 02fa 8091 0000 lds r24,modell_fliegt
338 02fe 9091 0000 lds r25,(modell_fliegt)+1
339 0302 845F subi r24,lo8(500)
340 0304 9140 sbci r25,hi8(500)
341 0306 00F4 brsh .L27
342 0308 6091 0000 lds r22,NeutralAccZ
343 030c 7091 0000 lds r23,(NeutralAccZ)+1
344 0310 8091 0000 lds r24,(NeutralAccZ)+2
345 0314 9091 0000 lds r25,(NeutralAccZ)+3
346 0318 2DEC ldi r18,lo8(0x3dcccccd)
347 031a 3CEC ldi r19,hi8(0x3dcccccd)
348 031c 4CEC ldi r20,hlo8(0x3dcccccd)
349 031e 5DE3 ldi r21,hhi8(0x3dcccccd)
350 0320 0E94 0000 call __addsf3
351 0324 6093 0000 sts NeutralAccZ,r22
352 0328 7093 0000 sts (NeutralAccZ)+1,r23
353 032c 8093 0000 sts (NeutralAccZ)+2,r24
354 0330 9093 0000 sts (NeutralAccZ)+3,r25
355 .L27:
356 0334 81E0 ldi r24,lo8(1)
357 0336 8093 0000 sts messanzahl_AccHoch,r24
358 033a 8091 7800 lds r24,120
359 033e 9091 7900 lds r25,(120)+1
360 0342 9093 0000 sts (Aktuell_az)+1,r25
361 0346 8093 0000 sts Aktuell_az,r24
362 034a 8091 0000 lds r24,AdWertAccHoch
363 034e 9091 0000 lds r25,(AdWertAccHoch)+1
364 0352 2091 0000 lds r18,Mess_Integral_Hoch
365 0356 3091 0000 lds r19,(Mess_Integral_Hoch)+1
366 035a 4091 0000 lds r20,(Mess_Integral_Hoch)+2
367 035e 5091 0000 lds r21,(Mess_Integral_Hoch)+3
368 0362 AA27 clr r26
369 0364 97FD sbrc r25,7
370 0366 A095 com r26
371 0368 BA2F mov r27,r26
372 036a 820F add r24,r18
373 036c 931F adc r25,r19
374 036e A41F adc r26,r20
375 0370 B51F adc r27,r21
376 0372 8093 0000 sts Mess_Integral_Hoch,r24
377 0376 9093 0000 sts (Mess_Integral_Hoch)+1,r25
378 037a A093 0000 sts (Mess_Integral_Hoch)+2,r26
379 037e B093 0000 sts (Mess_Integral_Hoch)+3,r27
380 0382 E090 0000 lds r14,Mess_Integral_Hoch
381 0386 F090 0000 lds r15,(Mess_Integral_Hoch)+1
382 038a 0091 0000 lds r16,(Mess_Integral_Hoch)+2
383 038e 1091 0000 lds r17,(Mess_Integral_Hoch)+3
384 0392 6091 0000 lds r22,Mess_Integral_Hoch
385 0396 7091 0000 lds r23,(Mess_Integral_Hoch)+1
386 039a 8091 0000 lds r24,(Mess_Integral_Hoch)+2
387 039e 9091 0000 lds r25,(Mess_Integral_Hoch)+3
388 03a2 20E0 ldi r18,lo8(1024)
389 03a4 34E0 ldi r19,hi8(1024)
390 03a6 40E0 ldi r20,hlo8(1024)
391 03a8 50E0 ldi r21,hhi8(1024)
392 03aa 0E94 0000 call __divmodsi4
393 03ae E21A sub r14,r18
394 03b0 F30A sbc r15,r19
395 03b2 040B sbc r16,r20
396 03b4 150B sbc r17,r21
397 03b6 E092 0000 sts Mess_Integral_Hoch,r14
398 03ba F092 0000 sts (Mess_Integral_Hoch)+1,r15
399 03be 0093 0000 sts (Mess_Integral_Hoch)+2,r16
400 03c2 1093 0000 sts (Mess_Integral_Hoch)+3,r17
401 03c6 83E0 ldi r24,lo8(3)
402 03c8 8093 0000 sts kanal.2446,r24
403 03cc 00C0 rjmp .L24
404 .L11:
405 03ce 8091 7800 lds r24,120
406 03d2 9091 7900 lds r25,(120)+1
407 03d6 2091 0000 lds r18,roll1.2449
408 03da 3091 0000 lds r19,(roll1.2449)+1
409 03de 280F add r18,r24
410 03e0 391F adc r19,r25
411 03e2 3093 0000 sts (roll1.2449)+1,r19
412 03e6 2093 0000 sts roll1.2449,r18
413 03ea 84E0 ldi r24,lo8(4)
414 03ec 8093 0000 sts kanal.2446,r24
415 03f0 00C0 rjmp .L24
416 .L12:
417 03f2 4091 0000 lds r20,UBat
418 03f6 5091 0000 lds r21,(UBat)+1
419 03fa 8091 7800 lds r24,120
420 03fe 9091 7900 lds r25,(120)+1
421 0402 9A01 movw r18,r20
422 0404 220F lsl r18
423 0406 331F rol r19
424 0408 240F add r18,r20
425 040a 351F adc r19,r21
426 040c 63E0 ldi r22,lo8(3)
427 040e 70E0 ldi r23,hi8(3)
428 0410 0E94 0000 call __udivmodhi4
429 0414 260F add r18,r22
430 0416 371F adc r19,r23
431 0418 3695 lsr r19
432 041a 2795 ror r18
433 041c 3695 lsr r19
434 041e 2795 ror r18
435 0420 3093 0000 sts (UBat)+1,r19
436 0424 2093 0000 sts UBat,r18
437 0428 85E0 ldi r24,lo8(5)
438 042a 8093 0000 sts kanal.2446,r24
439 042e 00C0 rjmp .L24
440 .L7:
441 0430 8091 7800 lds r24,120
442 0434 9091 7900 lds r25,(120)+1
443 0438 9093 0000 sts (gier1.2448)+1,r25
444 043c 8093 0000 sts gier1.2448,r24
445 0440 86E0 ldi r24,lo8(6)
446 0442 8093 0000 sts kanal.2446,r24
447 0446 00C0 rjmp .L24
448 .L8:
449 0448 2091 7800 lds r18,120
450 044c 3091 7900 lds r19,(120)+1
451 0450 8091 0000 lds r24,NeutralAccY
452 0454 9091 0000 lds r25,(NeutralAccY)+1
453 0458 821B sub r24,r18
454 045a 930B sbc r25,r19
455 045c 9093 0000 sts (Aktuell_ay)+1,r25
456 0460 8093 0000 sts Aktuell_ay,r24
457 0464 8091 0000 lds r24,Aktuell_ay
458 0468 9091 0000 lds r25,(Aktuell_ay)+1
459 046c 9093 0000 sts (accy.2453)+1,r25
460 0470 8093 0000 sts accy.2453,r24
461 0474 87E0 ldi r24,lo8(7)
462 0476 8093 0000 sts kanal.2446,r24
463 047a 00C0 rjmp .L24
464 .L9:
465 047c 8091 7800 lds r24,120
466 0480 9091 7900 lds r25,(120)+1
467 0484 2091 0000 lds r18,NeutralAccX
468 0488 3091 0000 lds r19,(NeutralAccX)+1
469 048c 821B sub r24,r18
470 048e 930B sbc r25,r19
471 0490 9093 0000 sts (Aktuell_ax)+1,r25
472 0494 8093 0000 sts Aktuell_ax,r24
473 0498 8091 0000 lds r24,Aktuell_ax
474 049c 9091 0000 lds r25,(Aktuell_ax)+1
475 04a0 9093 0000 sts (accx.2454)+1,r25
476 04a4 8093 0000 sts accx.2454,r24
477 04a8 82E0 ldi r24,lo8(2)
478 04aa 8093 0000 sts kanal.2446,r24
479 04ae 00C0 rjmp .L24
480 .L16:
481 04b0 2091 7800 lds r18,120
482 04b4 3091 7900 lds r19,(120)+1
483 04b8 8091 0000 lds r24,roll1.2449
484 04bc 9091 0000 lds r25,(roll1.2449)+1
485 04c0 820F add r24,r18
486 04c2 931F adc r25,r19
487 04c4 9093 0000 sts (roll1.2449)+1,r25
488 04c8 8093 0000 sts roll1.2449,r24
489 04cc 1092 0000 sts kanal.2446,__zero_reg__
490 04d0 00C0 rjmp .L24
491 .L17:
492 04d2 8091 0000 lds r24,PlatinenVersion
493 04d6 8A30 cpi r24,lo8(10)
494 04d8 01F4 brne .+2
495 04da 00C0 rjmp .L65
496 04dc 8431 cpi r24,lo8(20)
497 04de 01F4 brne .+2
498 04e0 00C0 rjmp .L66
499 04e2 8091 7800 lds r24,120
500 04e6 9091 7900 lds r25,(120)+1
501 04ea 2091 0000 lds r18,gier1.2448
502 04ee 3091 0000 lds r19,(gier1.2448)+1
503 04f2 820F add r24,r18
504 04f4 931F adc r25,r19
505 04f6 9093 0000 sts (AdWertGier)+1,r25
506 04fa 8093 0000 sts AdWertGier,r24
507 .L37:
508 04fe 86E0 ldi r24,lo8(6)
509 0500 8093 0000 sts kanal.2446,r24
510 0504 00C0 rjmp .L24
511 .L18:
512 0506 2091 7800 lds r18,120
513 050a 3091 7900 lds r19,(120)+1
514 050e 8091 0000 lds r24,NeutralAccY
515 0512 9091 0000 lds r25,(NeutralAccY)+1
516 0516 821B sub r24,r18
517 0518 930B sbc r25,r19
518 051a 9093 0000 sts (Aktuell_ay)+1,r25
519 051e 8093 0000 sts Aktuell_ay,r24
520 0522 8091 0000 lds r24,Aktuell_ay
521 0526 9091 0000 lds r25,(Aktuell_ay)+1
522 052a 2091 0000 lds r18,accy.2453
523 052e 3091 0000 lds r19,(accy.2453)+1
524 0532 820F add r24,r18
525 0534 931F adc r25,r19
526 0536 9093 0000 sts (AdWertAccRoll)+1,r25
527 053a 8093 0000 sts AdWertAccRoll,r24
528 053e 87E0 ldi r24,lo8(7)
529 0540 8093 0000 sts kanal.2446,r24
530 0544 00C0 rjmp .L24
531 .L19:
532 0546 8091 7800 lds r24,120
533 054a 9091 7900 lds r25,(120)+1
534 054e 2091 0000 lds r18,NeutralAccX
535 0552 3091 0000 lds r19,(NeutralAccX)+1
536 0556 821B sub r24,r18
537 0558 930B sbc r25,r19
538 055a 9093 0000 sts (Aktuell_ax)+1,r25
539 055e 8093 0000 sts Aktuell_ax,r24
540 0562 8091 0000 lds r24,Aktuell_ax
541 0566 9091 0000 lds r25,(Aktuell_ax)+1
542 056a 2091 0000 lds r18,accx.2454
543 056e 3091 0000 lds r19,(accx.2454)+1
544 0572 820F add r24,r18
545 0574 931F adc r25,r19
546 0576 9093 0000 sts (AdWertAccNick)+1,r25
547 057a 8093 0000 sts AdWertAccNick,r24
548 057e 82E0 ldi r24,lo8(2)
549 0580 8093 0000 sts kanal.2446,r24
550 0584 00C0 rjmp .L24
551 .L20:
552 0586 2091 7800 lds r18,120
553 058a 3091 7900 lds r19,(120)+1
554 058e 8091 0000 lds r24,nick1.2450
555 0592 9091 0000 lds r25,(nick1.2450)+1
556 0596 280F add r18,r24
557 0598 391F adc r19,r25
558 059a 3093 0000 sts (nick1.2450)+1,r19
559 059e 2093 0000 sts nick1.2450,r18
560 05a2 8091 0000 lds r24,PlatinenVersion
561 05a6 8A30 cpi r24,lo8(10)
562 05a8 01F4 brne .+2
563 05aa 00C0 rjmp .L67
564 05ac 220F lsl r18
565 05ae 331F rol r19
566 05b0 220F lsl r18
567 05b2 331F rol r19
568 05b4 3093 0000 sts (nick1.2450)+1,r19
569 05b8 2093 0000 sts nick1.2450,r18
570 .L42:
571 05bc 2091 0000 lds r18,nick1.2450
572 05c0 3091 0000 lds r19,(nick1.2450)+1
573 05c4 C901 movw r24,r18
574 05c6 37FD sbrc r19,7
575 05c8 00C0 rjmp .L68
576 .L43:
577 05ca 9595 asr r25
578 05cc 8795 ror r24
579 05ce 9595 asr r25
580 05d0 8795 ror r24
581 05d2 9595 asr r25
582 05d4 8795 ror r24
583 05d6 9093 0000 sts (AdWertNick)+1,r25
584 05da 8093 0000 sts AdWertNick,r24
585 05de 8091 0000 lds r24,nick_filter.2451
586 05e2 9091 0000 lds r25,(nick_filter.2451)+1
587 05e6 820F add r24,r18
588 05e8 931F adc r25,r19
589 05ea 97FD sbrc r25,7
590 05ec 00C0 rjmp .L69
591 .L44:
592 05ee 9595 asr r25
593 05f0 8795 ror r24
594 05f2 9093 0000 sts (nick_filter.2451)+1,r25
595 05f6 8093 0000 sts nick_filter.2451,r24
596 05fa 2091 0000 lds r18,AdNeutralNick
597 05fe 3091 0000 lds r19,(AdNeutralNick)+1
598 0602 821B sub r24,r18
599 0604 930B sbc r25,r19
600 0606 9093 0000 sts (HiResNick)+1,r25
601 060a 8093 0000 sts HiResNick,r24
602 060e 8091 0000 lds r24,AdWertNickFilter
603 0612 9091 0000 lds r25,(AdWertNickFilter)+1
604 0616 2091 0000 lds r18,HiResNick
605 061a 3091 0000 lds r19,(HiResNick)+1
606 061e 280F add r18,r24
607 0620 391F adc r19,r25
608 0622 37FD sbrc r19,7
609 0624 00C0 rjmp .L70
610 .L45:
611 0626 3595 asr r19
612 0628 2795 ror r18
613 062a 3093 0000 sts (AdWertNickFilter)+1,r19
614 062e 2093 0000 sts AdWertNickFilter,r18
615 0632 81E0 ldi r24,lo8(1)
616 0634 8093 0000 sts kanal.2446,r24
617 0638 00C0 rjmp .L24
618 .L21:
619 063a 2091 7800 lds r18,120
620 063e 3091 7900 lds r19,(120)+1
621 0642 8091 0000 lds r24,roll1.2449
622 0646 9091 0000 lds r25,(roll1.2449)+1
623 064a 280F add r18,r24
624 064c 391F adc r19,r25
625 064e 3093 0000 sts (roll1.2449)+1,r19
626 0652 2093 0000 sts roll1.2449,r18
627 0656 8091 0000 lds r24,PlatinenVersion
628 065a 8A30 cpi r24,lo8(10)
629 065c 01F4 brne .+2
630 065e 00C0 rjmp .L71
631 0660 220F lsl r18
632 0662 331F rol r19
633 0664 220F lsl r18
634 0666 331F rol r19
635 0668 3093 0000 sts (roll1.2449)+1,r19
636 066c 2093 0000 sts roll1.2449,r18
637 .L48:
638 0670 2091 0000 lds r18,roll1.2449
639 0674 3091 0000 lds r19,(roll1.2449)+1
640 0678 C901 movw r24,r18
641 067a 37FD sbrc r19,7
642 067c 00C0 rjmp .L72
643 .L49:
644 067e 9595 asr r25
645 0680 8795 ror r24
646 0682 9595 asr r25
647 0684 8795 ror r24
648 0686 9595 asr r25
649 0688 8795 ror r24
650 068a 9093 0000 sts (AdWertRoll)+1,r25
651 068e 8093 0000 sts AdWertRoll,r24
652 0692 8091 0000 lds r24,roll_filter.2452
653 0696 9091 0000 lds r25,(roll_filter.2452)+1
654 069a 820F add r24,r18
655 069c 931F adc r25,r19
656 069e 97FD sbrc r25,7
657 06a0 00C0 rjmp .L73
658 .L50:
659 06a2 9595 asr r25
660 06a4 8795 ror r24
661 06a6 9093 0000 sts (roll_filter.2452)+1,r25
662 06aa 8093 0000 sts roll_filter.2452,r24
663 06ae 2091 0000 lds r18,AdNeutralRoll
664 06b2 3091 0000 lds r19,(AdNeutralRoll)+1
665 06b6 821B sub r24,r18
666 06b8 930B sbc r25,r19
667 06ba 9093 0000 sts (HiResRoll)+1,r25
668 06be 8093 0000 sts HiResRoll,r24
669 06c2 8091 0000 lds r24,AdWertRollFilter
670 06c6 9091 0000 lds r25,(AdWertRollFilter)+1
671 06ca 2091 0000 lds r18,HiResRoll
672 06ce 3091 0000 lds r19,(HiResRoll)+1
673 06d2 280F add r18,r24
674 06d4 391F adc r19,r25
675 06d6 37FD sbrc r19,7
676 06d8 00C0 rjmp .L74
677 .L51:
678 06da 3595 asr r19
679 06dc 2795 ror r18
680 06de 3093 0000 sts (AdWertRollFilter)+1,r19
681 06e2 2093 0000 sts AdWertRollFilter,r18
682 06e6 83E0 ldi r24,lo8(3)
683 06e8 8093 0000 sts kanal.2446,r24
684 06ec 00C0 rjmp .L24
685 .L5:
686 06ee 8091 7800 lds r24,120
687 06f2 9091 7900 lds r25,(120)+1
688 06f6 9093 0000 sts (nick1.2450)+1,r25
689 06fa 8093 0000 sts nick1.2450,r24
690 06fe 81E0 ldi r24,lo8(1)
691 0700 8093 0000 sts kanal.2446,r24
692 0704 00C0 rjmp .L24
693 .L6:
694 0706 8091 7800 lds r24,120
695 070a 9091 7900 lds r25,(120)+1
696 070e 9093 0000 sts (roll1.2449)+1,r25
697 0712 8093 0000 sts roll1.2449,r24
698 0716 1092 0000 sts kanal.2446,__zero_reg__
699 071a 00C0 rjmp .L24
700 .L65:
701 071c 8091 7800 lds r24,120
702 0720 9091 7900 lds r25,(120)+1
703 0724 0196 adiw r24,1
704 0726 2091 0000 lds r18,gier1.2448
705 072a 3091 0000 lds r19,(gier1.2448)+1
706 072e 820F add r24,r18
707 0730 931F adc r25,r19
708 0732 9695 lsr r25
709 0734 8795 ror r24
710 0736 9093 0000 sts (AdWertGier)+1,r25
711 073a 8093 0000 sts AdWertGier,r24
712 073e 00C0 rjmp .L37
713 .L71:
714 0740 220F lsl r18
715 0742 331F rol r19
716 0744 3093 0000 sts (roll1.2449)+1,r19
717 0748 2093 0000 sts roll1.2449,r18
718 074c 00C0 rjmp .L48
719 .L67:
720 074e 220F lsl r18
721 0750 331F rol r19
722 0752 3093 0000 sts (nick1.2450)+1,r19
723 0756 2093 0000 sts nick1.2450,r18
724 075a 00C0 rjmp .L42
725 .L64:
726 075c 0196 adiw r24,1
727 075e 00C0 rjmp .L56
728 .L63:
729 0760 215E subi r18,lo8(-(31))
730 0762 3F4F sbci r19,hi8(-(31))
731 0764 00C0 rjmp .L55
732 .L25:
733 0766 8091 0000 lds r24,AdWertAccHoch
734 076a 9091 0000 lds r25,(AdWertAccHoch)+1
735 076e 8F5F subi r24,lo8(-1)
736 0770 9F4F sbci r25,hi8(-1)
737 0772 04F0 brlt .+2
738 0774 00C0 rjmp .L27
739 0776 6091 0000 lds r22,NeutralAccZ
740 077a 7091 0000 lds r23,(NeutralAccZ)+1
741 077e 8091 0000 lds r24,(NeutralAccZ)+2
742 0782 9091 0000 lds r25,(NeutralAccZ)+3
743 0786 20E0 ldi r18,lo8(0x44098000)
744 0788 30E8 ldi r19,hi8(0x44098000)
745 078a 49E0 ldi r20,hlo8(0x44098000)
746 078c 54E4 ldi r21,hhi8(0x44098000)
747 078e 0E94 0000 call __gtsf2
748 0792 1816 cp __zero_reg__,r24
749 0794 04F0 brlt .+2
750 0796 00C0 rjmp .L27
751 0798 6091 0000 lds r22,NeutralAccZ
752 079c 7091 0000 lds r23,(NeutralAccZ)+1
753 07a0 8091 0000 lds r24,(NeutralAccZ)+2
754 07a4 9091 0000 lds r25,(NeutralAccZ)+3
755 07a8 2AE0 ldi r18,lo8(0x3ca3d70a)
756 07aa 37ED ldi r19,hi8(0x3ca3d70a)
757 07ac 43EA ldi r20,hlo8(0x3ca3d70a)
758 07ae 5CE3 ldi r21,hhi8(0x3ca3d70a)
759 07b0 0E94 0000 call __subsf3
760 07b4 6093 0000 sts NeutralAccZ,r22
761 07b8 7093 0000 sts (NeutralAccZ)+1,r23
762 07bc 8093 0000 sts (NeutralAccZ)+2,r24
763 07c0 9093 0000 sts (NeutralAccZ)+3,r25
764 07c4 8091 0000 lds r24,modell_fliegt
765 07c8 9091 0000 lds r25,(modell_fliegt)+1
766 07cc 845F subi r24,lo8(500)
767 07ce 9140 sbci r25,hi8(500)
768 07d0 00F0 brlo .+2
769 07d2 00C0 rjmp .L27
770 07d4 6091 0000 lds r22,NeutralAccZ
771 07d8 7091 0000 lds r23,(NeutralAccZ)+1
772 07dc 8091 0000 lds r24,(NeutralAccZ)+2
773 07e0 9091 0000 lds r25,(NeutralAccZ)+3
774 07e4 2DEC ldi r18,lo8(0x3dcccccd)
775 07e6 3CEC ldi r19,hi8(0x3dcccccd)
776 07e8 4CEC ldi r20,hlo8(0x3dcccccd)
777 07ea 5DE3 ldi r21,hhi8(0x3dcccccd)
778 07ec 0E94 0000 call __subsf3
779 07f0 6093 0000 sts NeutralAccZ,r22
780 07f4 7093 0000 sts (NeutralAccZ)+1,r23
781 07f8 8093 0000 sts (NeutralAccZ)+2,r24
782 07fc 9093 0000 sts (NeutralAccZ)+3,r25
783 0800 00C0 rjmp .L27
784 .L62:
785 0802 0196 adiw r24,1
786 0804 00C0 rjmp .L54
787 .L74:
788 0806 2F5F subi r18,lo8(-(1))
789 0808 3F4F sbci r19,hi8(-(1))
790 080a 00C0 rjmp .L51
791 .L73:
792 080c 0196 adiw r24,1
793 080e 00C0 rjmp .L50
794 .L72:
795 0810 0796 adiw r24,7
796 0812 00C0 rjmp .L49
797 .L70:
798 0814 2F5F subi r18,lo8(-(1))
799 0816 3F4F sbci r19,hi8(-(1))
800 0818 00C0 rjmp .L45
801 .L69:
802 081a 0196 adiw r24,1
803 081c 00C0 rjmp .L44
804 .L68:
805 081e 0796 adiw r24,7
806 0820 00C0 rjmp .L43
807 .L66:
808 0822 8091 7800 lds r24,120
809 0826 9091 7900 lds r25,(120)+1
810 082a 2FEF ldi r18,lo8(2047)
811 082c 37E0 ldi r19,hi8(2047)
812 082e 281B sub r18,r24
813 0830 390B sbc r19,r25
814 0832 8091 0000 lds r24,gier1.2448
815 0836 9091 0000 lds r25,(gier1.2448)+1
816 083a 281B sub r18,r24
817 083c 390B sbc r19,r25
818 083e 3093 0000 sts (AdWertGier)+1,r19
819 0842 2093 0000 sts AdWertGier,r18
820 0846 00C0 rjmp .L37
821 .L59:
822 /* epilogue: frame size=0 */
823 0848 FF91 pop r31
824 084a EF91 pop r30
825 084c DF91 pop r29
826 084e CF91 pop r28
827 0850 BF91 pop r27
828 0852 AF91 pop r26
829 0854 9F91 pop r25
830 0856 8F91 pop r24
831 0858 7F91 pop r23
832 085a 6F91 pop r22
833 085c 5F91 pop r21
834 085e 4F91 pop r20
835 0860 3F91 pop r19
836 0862 2F91 pop r18
837 0864 1F91 pop r17
838 0866 0F91 pop r16
839 0868 FF90 pop r15
840 086a EF90 pop r14
841 086c DF90 pop r13
842 086e 0F90 pop __tmp_reg__
843 0870 0FBE out __SREG__,__tmp_reg__
844 0872 0F90 pop __tmp_reg__
845 0874 1F90 pop __zero_reg__
846 0876 1895 reti
847 /* epilogue end (size=24) */
848 /* function __vector_24 size 1102 (1054) */
850 .global SucheGyroOffset
852 SucheGyroOffset:
853 /* prologue: frame size=0 */
854 0878 0F93 push r16
855 087a 1F93 push r17
856 /* prologue end (size=2) */
857 087c 1092 0000 sts GyroDefektN,__zero_reg__
858 0880 1092 0000 sts GyroDefektR,__zero_reg__
859 0884 1092 0000 sts GyroDefektG,__zero_reg__
860 0888 1CE8 ldi r17,lo8(-116)
861 088a 00E0 ldi r16,lo8(0)
862 .L76:
863 088c 0330 cpi r16,lo8(3)
864 088e 01F4 brne .+2
865 0890 00C0 rjmp .L121
866 .L77:
867 0892 8091 0000 lds r24,AdWertNick
868 0896 9091 0000 lds r25,(AdWertNick)+1
869 089a 8C5F subi r24,lo8(1020)
870 089c 9340 sbci r25,hi8(1020)
871 089e 04F0 brlt .+2
872 08a0 00C0 rjmp .L80
873 08a2 8091 0000 lds r24,AnalogOffsetNick
874 08a6 8150 subi r24,lo8(-(-1))
875 08a8 8093 0000 sts AnalogOffsetNick,r24
876 08ac 00E0 ldi r16,lo8(0)
877 .L82:
878 08ae 8091 0000 lds r24,AdWertRoll
879 08b2 9091 0000 lds r25,(AdWertRoll)+1
880 08b6 8C5F subi r24,lo8(1020)
881 08b8 9340 sbci r25,hi8(1020)
882 08ba 04F0 brlt .+2
883 08bc 00C0 rjmp .L85
884 08be 8091 0000 lds r24,AnalogOffsetRoll
885 08c2 8150 subi r24,lo8(-(-1))
886 08c4 8093 0000 sts AnalogOffsetRoll,r24
887 .L87:
888 08c8 8091 0000 lds r24,AdWertGier
889 08cc 9091 0000 lds r25,(AdWertGier)+1
890 08d0 8C5F subi r24,lo8(1020)
891 08d2 9340 sbci r25,hi8(1020)
892 08d4 04F0 brlt .+2
893 08d6 00C0 rjmp .L90
894 08d8 8091 0000 lds r24,AnalogOffsetGier
895 08dc 8150 subi r24,lo8(-(-1))
896 08de 8093 0000 sts AnalogOffsetGier,r24
897 .L92:
898 08e2 88E0 ldi r24,lo8(8)
899 08e4 8093 0000 sts twi_state,r24
900 08e8 0E94 0000 call i2c_start
901 08ec 8091 0000 lds r24,AnalogOffsetNick
902 08f0 8A30 cpi r24,lo8(10)
903 08f2 00F0 brlo .+2
904 08f4 00C0 rjmp .L95
905 08f6 81E0 ldi r24,lo8(1)
906 08f8 8093 0000 sts GyroDefektN,r24
907 08fc 8AE0 ldi r24,lo8(10)
908 08fe 8093 0000 sts AnalogOffsetNick,r24
909 .L97:
910 0902 8091 0000 lds r24,AnalogOffsetRoll
911 0906 8A30 cpi r24,lo8(10)
912 0908 00F4 brsh .L99
913 090a 81E0 ldi r24,lo8(1)
914 090c 8093 0000 sts GyroDefektR,r24
915 0910 8AE0 ldi r24,lo8(10)
916 0912 8093 0000 sts AnalogOffsetRoll,r24
917 .L101:
918 0916 8091 0000 lds r24,AnalogOffsetGier
919 091a 8A30 cpi r24,lo8(10)
920 091c 00F4 brsh .L103
921 091e 81E0 ldi r24,lo8(1)
922 0920 8093 0000 sts GyroDefektG,r24
923 0924 8AE0 ldi r24,lo8(10)
924 0926 8093 0000 sts AnalogOffsetGier,r24
925 .L114:
926 092a 8091 0000 lds r24,twi_state
927 092e 8823 tst r24
928 0930 01F4 brne .L114
929 0932 1092 0000 sts messanzahl_Druck,__zero_reg__
930 0936 8FEC ldi r24,lo8(-49)
931 0938 8093 7A00 sts 122,r24
932 .L108:
933 093c 8091 0000 lds r24,messanzahl_Druck
934 0940 8823 tst r24
935 0942 01F0 breq .L108
936 0944 1A30 cpi r17,lo8(10)
937 0946 00F4 brsh .+2
938 0948 00C0 rjmp .L122
939 .L110:
940 094a 1150 subi r17,lo8(-(-1))
941 094c 01F0 breq .+2
942 094e 00C0 rjmp .L76
943 0950 00C0 rjmp .L124
944 .L103:
945 0952 863F cpi r24,lo8(-10)
946 0954 00F0 brlo .L114
947 0956 81E0 ldi r24,lo8(1)
948 0958 8093 0000 sts GyroDefektG,r24
949 095c 85EF ldi r24,lo8(-11)
950 095e 8093 0000 sts AnalogOffsetGier,r24
951 0962 00C0 rjmp .L114
952 .L99:
953 0964 863F cpi r24,lo8(-10)
954 0966 00F0 brlo .L101
955 0968 81E0 ldi r24,lo8(1)
956 096a 8093 0000 sts GyroDefektR,r24
957 096e 85EF ldi r24,lo8(-11)
958 0970 8093 0000 sts AnalogOffsetRoll,r24
959 0974 00C0 rjmp .L101
960 .L95:
961 0976 863F cpi r24,lo8(-10)
962 0978 00F0 brlo .L97
963 097a 81E0 ldi r24,lo8(1)
964 097c 8093 0000 sts GyroDefektN,r24
965 0980 85EF ldi r24,lo8(-11)
966 0982 8093 0000 sts AnalogOffsetNick,r24
967 0986 00C0 rjmp .L97
968 .L90:
969 0988 8091 0000 lds r24,AdWertGier
970 098c 9091 0000 lds r25,(AdWertGier)+1
971 0990 8750 subi r24,lo8(1031)
972 0992 9440 sbci r25,hi8(1031)
973 0994 04F0 brlt .L93
974 0996 8091 0000 lds r24,AnalogOffsetGier
975 099a 8F5F subi r24,lo8(-(1))
976 099c 8093 0000 sts AnalogOffsetGier,r24
977 09a0 00C0 rjmp .L92
978 .L85:
979 09a2 8091 0000 lds r24,AdWertRoll
980 09a6 9091 0000 lds r25,(AdWertRoll)+1
981 09aa 8750 subi r24,lo8(1031)
982 09ac 9440 sbci r25,hi8(1031)
983 09ae 04F0 brlt .L88
984 09b0 8091 0000 lds r24,AnalogOffsetRoll
985 09b4 8F5F subi r24,lo8(-(1))
986 09b6 8093 0000 sts AnalogOffsetRoll,r24
987 09ba 00C0 rjmp .L87
988 .L80:
989 09bc 8091 0000 lds r24,AdWertNick
990 09c0 9091 0000 lds r25,(AdWertNick)+1
991 09c4 8750 subi r24,lo8(1031)
992 09c6 9440 sbci r25,hi8(1031)
993 09c8 04F4 brge .L83
994 09ca 01E0 ldi r16,lo8(1)
995 09cc 00C0 rjmp .L82
996 .L122:
997 09ce 8AE0 ldi r24,lo8(10)
998 09d0 90E0 ldi r25,hi8(10)
999 09d2 0E94 0000 call Delay_ms_Mess
1000 09d6 00C0 rjmp .L110
1001 .L121:
1002 09d8 1B30 cpi r17,lo8(11)
1003 09da 00F4 brsh .+2
1004 09dc 00C0 rjmp .L77
1005 09de 19E0 ldi r17,lo8(9)
1006 09e0 00C0 rjmp .L77
1007 .L88:
1008 09e2 0F5F subi r16,lo8(-(1))
1009 09e4 00C0 rjmp .L87
1010 .L93:
1011 09e6 0F5F subi r16,lo8(-(1))
1012 09e8 00C0 rjmp .L92
1013 .L83:
1014 09ea 8091 0000 lds r24,AnalogOffsetNick
1015 09ee 8F5F subi r24,lo8(-(1))
1016 09f0 8093 0000 sts AnalogOffsetNick,r24
1017 09f4 00E0 ldi r16,lo8(0)
1018 09f6 00C0 rjmp .L82
1019 .L124:
1020 09f8 86E4 ldi r24,lo8(70)
1021 09fa 90E0 ldi r25,hi8(70)
1022 09fc 0E94 0000 call Delay_ms_Mess
1023 /* epilogue: frame size=0 */
1024 0a00 1F91 pop r17
1025 0a02 0F91 pop r16
1026 0a04 0895 ret
1027 /* epilogue end (size=3) */
1028 /* function SucheGyroOffset size 206 (201) */
1030 .global SucheLuftruckOffset
1032 SucheLuftruckOffset:
1033 /* prologue: frame size=0 */
1034 0a06 CF92 push r12
1035 0a08 DF92 push r13
1036 0a0a EF92 push r14
1037 0a0c FF92 push r15
1038 0a0e 1F93 push r17
1039 0a10 CF93 push r28
1040 0a12 DF93 push r29
1041 /* prologue end (size=7) */
1042 0a14 F0E0 ldi r31,lo8(EEPromArray+3)
1043 0a16 EF2E mov r14,r31
1044 0a18 F0E0 ldi r31,hi8(EEPromArray+3)
1045 0a1a FF2E mov r15,r31
1046 0a1c D701 movw r26,r14
1047 /* #APP */
1048 0a1e 0E94 0000 call __eeprom_read_byte_1F2021
1049 0a22 802D mov r24,__tmp_reg__
1050 /* #NOAPP */
1051 0a24 C82F mov r28,r24
1052 0a26 D0E0 ldi r29,lo8(0)
1053 0a28 C531 cpi r28,21
1054 0a2a D105 cpc r29,__zero_reg__
1055 0a2c 00F0 brlo .L126
1056 0a2e 2A97 sbiw r28,10
1057 .L126:
1058 0a30 C7BD out 71-0x20,r28
1059 0a32 1092 0000 sts ExpandBaro,__zero_reg__
1060 0a36 84E6 ldi r24,lo8(100)
1061 0a38 90E0 ldi r25,hi8(100)
1062 0a3a 0E94 0000 call Delay_ms_Mess
1063 0a3e 8091 0000 lds r24,MessLuftdruck
1064 0a42 9091 0000 lds r25,(MessLuftdruck)+1
1065 0a46 8255 subi r24,lo8(850)
1066 0a48 9340 sbci r25,hi8(850)
1067 0a4a 00F4 brsh .L134
1068 0a4c C0E0 ldi r28,lo8(0)
1069 0a4e D0E0 ldi r29,hi8(0)
1070 0a50 E0E0 ldi r30,lo8(__c.2396)
1071 0a52 CE2E mov r12,r30
1072 0a54 E0E0 ldi r30,hi8(__c.2396)
1073 0a56 DE2E mov r13,r30
1074 0a58 00C0 rjmp .L135
1075 .L139:
1076 0a5a 2196 adiw r28,1
1077 0a5c CA3F cpi r28,250
1078 0a5e D105 cpc r29,__zero_reg__
1079 0a60 00F4 brsh .L138
1080 .L135:
1081 0a62 1C2F mov r17,r28
1082 0a64 C7BD out 71-0x20,r28
1083 0a66 82E3 ldi r24,lo8(50)
1084 0a68 90E0 ldi r25,hi8(50)
1085 0a6a 0E94 0000 call Delay_ms_Mess
1086 0a6e DF92 push r13
1087 0a70 CF92 push r12
1088 0a72 1F92 push __zero_reg__
1089 0a74 0E94 0000 call _printf_P
1090 0a78 8091 0000 lds r24,MessLuftdruck
1091 0a7c 9091 0000 lds r25,(MessLuftdruck)+1
1092 0a80 0F90 pop __tmp_reg__
1093 0a82 0F90 pop __tmp_reg__
1094 0a84 0F90 pop __tmp_reg__
1095 0a86 8255 subi r24,lo8(850)
1096 0a88 9340 sbci r25,hi8(850)
1097 0a8a 00F4 brsh .L139
1098 0a8c 00C0 rjmp .L130
1099 .L134:
1100 0a8e 70E0 ldi r23,lo8(__c.2396)
1101 0a90 C72E mov r12,r23
1102 0a92 70E0 ldi r23,hi8(__c.2396)
1103 0a94 D72E mov r13,r23
1104 0a96 00C0 rjmp .L135
1105 .L138:
1106 0a98 1C2F mov r17,r28
1107 .L130:
1108 0a9a D701 movw r26,r14
1109 /* #APP */
1110 0a9c 012E mov __tmp_reg__,r17
1111 0a9e 0E94 0000 call __eeprom_write_byte_1F2021
1112 /* #NOAPP */
1113 0aa2 1093 0000 sts DruckOffsetSetting,r17
1114 0aa6 8CE2 ldi r24,lo8(300)
1115 0aa8 91E0 ldi r25,hi8(300)
1116 0aaa 0E94 0000 call Delay_ms_Mess
1117 /* epilogue: frame size=0 */
1118 0aae DF91 pop r29
1119 0ab0 CF91 pop r28
1120 0ab2 1F91 pop r17
1121 0ab4 FF90 pop r15
1122 0ab6 EF90 pop r14
1123 0ab8 DF90 pop r13
1124 0aba CF90 pop r12
1125 0abc 0895 ret
1126 /* epilogue end (size=8) */
1127 /* function SucheLuftruckOffset size 96 (81) */
1129 .global UBat
1130 .data
1133 UBat:
1134 0000 6400 .word 100
1135 .global AdWertNickFilter
1136 .global AdWertNickFilter
1137 .section .bss
1140 AdWertNickFilter:
1141 0000 0000 .skip 2,0
1142 .global AdWertRollFilter
1143 .global AdWertRollFilter
1146 AdWertRollFilter:
1147 0002 0000 .skip 2,0
1148 .global AdWertGierFilter
1149 .global AdWertGierFilter
1152 AdWertGierFilter:
1153 0004 0000 .skip 2,0
1154 .global HiResNick
1155 .data
1158 HiResNick:
1159 0002 C409 .word 2500
1160 .global HiResRoll
1163 HiResRoll:
1164 0004 C409 .word 2500
1165 .global AdWertNick
1166 .global AdWertNick
1167 .section .bss
1170 AdWertNick:
1171 0006 0000 .skip 2,0
1172 .global AdWertRoll
1173 .global AdWertRoll
1176 AdWertRoll:
1177 0008 0000 .skip 2,0
1178 .global AdWertGier
1179 .global AdWertGier
1182 AdWertGier:
1183 000a 0000 .skip 2,0
1184 .global AdWertAccRoll
1185 .global AdWertAccRoll
1188 AdWertAccRoll:
1189 000c 0000 .skip 2,0
1190 .global AdWertAccNick
1191 .global AdWertAccNick
1194 AdWertAccNick:
1195 000e 0000 .skip 2,0
1196 .global AdWertAccHoch
1197 .global AdWertAccHoch
1200 AdWertAccHoch:
1201 0010 0000 .skip 2,0
1202 .global messanzahl_AccHoch
1203 .global messanzahl_AccHoch
1206 messanzahl_AccHoch:
1207 0012 00 .skip 1,0
1208 .global Luftdruck
1209 .data
1212 Luftdruck:
1213 0006 00 .byte 0
1214 0007 7D .byte 125
1215 0008 00 .byte 0
1216 0009 00 .byte 0
1217 .global MessLuftdruck
1220 MessLuftdruck:
1221 000a FF03 .word 1023
1222 .global ExpandBaro
1223 .global ExpandBaro
1224 .section .bss
1227 ExpandBaro:
1228 0013 00 .skip 1,0
1229 .global HoeheD
1230 .global HoeheD
1233 HoeheD:
1234 0014 0000 .skip 2,0
1235 .global ZaehlMessungen
1236 .global ZaehlMessungen
1239 ZaehlMessungen:
1240 0016 0000 .skip 2,0
1241 .global AnalogOffsetNick
1242 .data
1245 AnalogOffsetNick:
1246 000c 73 .byte 115
1247 .global AnalogOffsetRoll
1250 AnalogOffsetRoll:
1251 000d 73 .byte 115
1252 .global AnalogOffsetGier
1255 AnalogOffsetGier:
1256 000e 73 .byte 115
1257 .global GyroDefektN
1258 .global GyroDefektN
1259 .section .bss
1262 GyroDefektN:
1263 0018 00 .skip 1,0
1264 .global GyroDefektR
1265 .global GyroDefektR
1268 GyroDefektR:
1269 0019 00 .skip 1,0
1270 .global GyroDefektG
1271 .global GyroDefektG
1274 GyroDefektG:
1275 001a 00 .skip 1,0
1276 .global AdReady
1277 .data
1280 AdReady:
1281 000f 01 .byte 1
1282 .lcomm accx.2454,2
1283 .lcomm accy.2453,2
1284 .lcomm roll_filter.2452,2
1285 .lcomm nick_filter.2451,2
1286 .lcomm nick1.2450,2
1287 .lcomm roll1.2449,2
1288 .lcomm gier1.2448,2
1289 .lcomm state.2447,1
1290 .lcomm kanal.2446,1
1291 .section .progmem.data,"a",@progbits
1294 __c.2396:
1295 0000 2E00 .string "."
1296 .comm Aktuell_Nick,2,1
1297 .comm Aktuell_Roll,2,1
1298 .comm Aktuell_Gier,2,1
1299 .comm Aktuell_ax,2,1
1300 .comm Aktuell_ay,2,1
1301 .comm Aktuell_az,2,1
1302 .comm messanzahl_Druck,1,1
1303 .comm DruckOffsetSetting,1,1
1304 .comm StartLuftdruck,2,1
1305 .comm tmpLuftdruck,2,1
1306 /* File "analog.c": code 1410 = 0x0582 (1341), prologues 33, epilogues 36 */
DEFINED SYMBOLS
*ABS*:00000000 analog.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:12 .text:00000000 ADC_Init
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:25 .text:0000000c __vector_24
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1288 .bss:00000029 state.2447
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1289 .bss:0000002a kanal.2446
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1285 .bss:00000023 nick1.2450
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1280 .data:0000000f AdReady
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1239 .bss:00000016 ZaehlMessungen
*COM*:00000002 tmpLuftdruck
*COM*:00000001 messanzahl_Druck
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1220 .data:0000000a MessLuftdruck
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1233 .bss:00000014 HoeheD
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1227 .bss:00000013 ExpandBaro
*COM*:00000002 StartLuftdruck
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1212 .data:00000006 Luftdruck
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1200 .bss:00000010 AdWertAccHoch
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1206 .bss:00000012 messanzahl_AccHoch
*COM*:00000002 Aktuell_az
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1286 .bss:00000025 roll1.2449
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1133 .data:00000000 UBat
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1287 .bss:00000027 gier1.2448
*COM*:00000002 Aktuell_ay
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1282 .bss:0000001d accy.2453
*COM*:00000002 Aktuell_ax
.bss:0000001b accx.2454
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1182 .bss:0000000a AdWertGier
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1188 .bss:0000000c AdWertAccRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1194 .bss:0000000e AdWertAccNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1170 .bss:00000006 AdWertNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1284 .bss:00000021 nick_filter.2451
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1158 .data:00000002 HiResNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1140 .bss:00000000 AdWertNickFilter
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1176 .bss:00000008 AdWertRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1283 .bss:0000001f roll_filter.2452
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1163 .data:00000004 HiResRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1146 .bss:00000002 AdWertRollFilter
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:852 .text:00000878 SucheGyroOffset
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1262 .bss:00000018 GyroDefektN
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1268 .bss:00000019 GyroDefektR
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1274 .bss:0000001a GyroDefektG
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1245 .data:0000000c AnalogOffsetNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1250 .data:0000000d AnalogOffsetRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1255 .data:0000000e AnalogOffsetGier
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1032 .text:00000a06 SucheLuftruckOffset
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1294 .progmem.data:00000000 __c.2396
*COM*:00000001 DruckOffsetSetting
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccvfheVy.s:1152 .bss:00000004 AdWertGierFilter
*COM*:00000002 Aktuell_Nick
*COM*:00000002 Aktuell_Roll
*COM*:00000002 Aktuell_Gier
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
HoehenWert
Parameter_Luftdruck_D
__divmodsi4
NeutralAccZ
__floatsisf
__subsf3
__fixsfsi
__ltsf2
__addsf3
modell_fliegt
Mess_Integral_Hoch
__udivmodhi4
NeutralAccY
NeutralAccX
PlatinenVersion
AdNeutralNick
AdNeutralRoll
__gtsf2
twi_state
i2c_start
Delay_ms_Mess
EEPromArray
__eeprom_read_byte_1F2021
_printf_P
__eeprom_write_byte_1F2021
/branches/v0.72p kmpec/eeprom.c
0,0 → 1,236
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Konstanten
// + 0-250 -> normale Werte
// + 251 -> Poti1
// + 252 -> Poti2
// + 253 -> Poti3
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
void DefaultStickMapping(void)
{
EE_Parameter.Kanalbelegung[K_NICK] = 1;
EE_Parameter.Kanalbelegung[K_ROLL] = 2;
EE_Parameter.Kanalbelegung[K_GAS] = 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;
}
 
void DefaultKonstanten1(void)
{
EE_Parameter.GlobalConfig = CFG_ACHSENKOPPLUNG_AKTIV | CFG_KOMPASS_AKTIV | CFG_GPS_AKTIV;//CFG_HOEHEN_SCHALTER
EE_Parameter.Hoehe_MinGas = 30;
EE_Parameter.MaxHoehe = 251; // Wert : 0-250 251 -> Poti1
EE_Parameter.Hoehe_P = 10; // Wert : 0-32
EE_Parameter.Luftdruck_D = 30; // Wert : 0-250
EE_Parameter.Hoehe_ACC_Wirkung = 30; // Wert : 0-250
EE_Parameter.Hoehe_Verstaerkung = 4; // Wert : 0-50
EE_Parameter.Stick_P = 15; // Wert : 1-6
EE_Parameter.Stick_D = 30; // Wert : 0-64
EE_Parameter.Gier_P = 12; // Wert : 1-20
EE_Parameter.Gas_Min = 8; // Wert : 0-32
EE_Parameter.Gas_Max = 230; // Wert : 33-250
EE_Parameter.GyroAccFaktor = 30; // Wert : 1-64
EE_Parameter.KompassWirkung = 128; // Wert : 0-250
EE_Parameter.Gyro_P = 80; // Wert : 0-250
EE_Parameter.Gyro_I = 150; // Wert : 0-250
EE_Parameter.Gyro_D = 3; // Wert : 0-250
EE_Parameter.UnterspannungsWarnung = 94; // Wert : 0-250
EE_Parameter.NotGas = 35; // Wert : 0-250 // Gaswert bei Empangsverlust
EE_Parameter.NotGasZeit = 30; // Wert : 0-250 // Zeit bis auf NotGas geschaltet wird, wg. Rx-Problemen
EE_Parameter.UfoAusrichtung = 0; // X oder + Formation
EE_Parameter.I_Faktor = 32;
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 = 100; // Wert : 0-250 // Stellung des Servos
EE_Parameter.ServoNickComp = 40; // Wert : 0-250 // Einfluss Gyro/Servo
EE_Parameter.ServoNickCompInvert = 0; // Wert : 0-250 // Richtung Einfluss Gyro/Servo
EE_Parameter.ServoNickMin = 50; // Wert : 0-250 // Anschlag
EE_Parameter.ServoNickMax = 150; // Wert : 0-250 // Anschlag
EE_Parameter.ServoNickRefresh = 5;
EE_Parameter.LoopGasLimit = 50;
EE_Parameter.LoopThreshold = 90; // Wert: 0-250 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.AchsKopplung1 = 90;
EE_Parameter.AchsKopplung2 = 67;
EE_Parameter.CouplingYawCorrection = 0;
EE_Parameter.WinkelUmschlagNick = 85;
EE_Parameter.WinkelUmschlagRoll = 85;
EE_Parameter.GyroAccAbgleich = 16; // 1/k
EE_Parameter.Driftkomp = 32;
EE_Parameter.DynamicStability = 100;
EE_Parameter.J16Bitmask = 95;
EE_Parameter.J17Bitmask = 243;
EE_Parameter.J16Timing = 15;
EE_Parameter.J17Timing = 15;
EE_Parameter.NaviGpsModeControl = 253;
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 = 4;
memcpy(EE_Parameter.Name, "Sport\0", 12);
}
void DefaultKonstanten2(void)
{
EE_Parameter.GlobalConfig = CFG_ACHSENKOPPLUNG_AKTIV | CFG_KOMPASS_AKTIV | CFG_GPS_AKTIV;///*CFG_HOEHEN_SCHALTER |*/ CFG_KOMPASS_AKTIV;//0x01;
EE_Parameter.Hoehe_MinGas = 30;
EE_Parameter.MaxHoehe = 251; // Wert : 0-250 251 -> Poti1
EE_Parameter.Hoehe_P = 10; // Wert : 0-32
EE_Parameter.Luftdruck_D = 30; // Wert : 0-250
EE_Parameter.Hoehe_ACC_Wirkung = 30; // Wert : 0-250
EE_Parameter.Hoehe_Verstaerkung = 3; // Wert : 0-50
EE_Parameter.Stick_P = 12; // Wert : 1-6
EE_Parameter.Stick_D = 16; // Wert : 0-64
EE_Parameter.Gier_P = 6; // Wert : 1-20
EE_Parameter.Gas_Min = 8; // Wert : 0-32
EE_Parameter.Gas_Max = 230; // Wert : 33-250
EE_Parameter.GyroAccFaktor = 30; // Wert : 1-64
EE_Parameter.KompassWirkung = 128; // Wert : 0-250
EE_Parameter.Gyro_P = 80; // Wert : 0-250
EE_Parameter.Gyro_I = 120; // Wert : 0-250
EE_Parameter.Gyro_D = 3; // Wert : 0-250
EE_Parameter.UnterspannungsWarnung = 94; // Wert : 0-250
EE_Parameter.NotGas = 35; // Wert : 0-250 // Gaswert bei Empangsverlust
EE_Parameter.NotGasZeit = 30; // Wert : 0-250 // Zeit bis auf NotGas geschaltet wird, wg. Rx-Problemen
EE_Parameter.UfoAusrichtung = 0; // X oder + Formation
EE_Parameter.I_Faktor = 32;
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 = 100; // Wert : 0-250 // Stellung des Servos
EE_Parameter.ServoNickComp = 40; // Wert : 0-250 // Einfluss Gyro/Servo
EE_Parameter.ServoNickCompInvert = 0; // Wert : 0-250 // Richtung Einfluss Gyro/Servo
EE_Parameter.ServoNickMin = 50; // Wert : 0-250 // Anschlag
EE_Parameter.ServoNickMax = 150; // Wert : 0-250 // Anschlag
EE_Parameter.ServoNickRefresh = 5;
EE_Parameter.LoopGasLimit = 50;
EE_Parameter.LoopThreshold = 90; // Wert: 0-250 Schwelle für Stickausschlag
EE_Parameter.LoopHysterese = 50;
EE_Parameter.BitConfig = 0; // Bitcodiert: 0x01=oben, 0x02=unten, 0x04=links, 0x08=rechts
EE_Parameter.AchsKopplung1 = 90;
EE_Parameter.AchsKopplung2 = 67;
EE_Parameter.CouplingYawCorrection = 60;
EE_Parameter.WinkelUmschlagNick = 85;
EE_Parameter.WinkelUmschlagRoll = 85;
EE_Parameter.GyroAccAbgleich = 32; // 1/k
EE_Parameter.Driftkomp = 32;
EE_Parameter.DynamicStability = 75;
EE_Parameter.J16Bitmask = 95;
EE_Parameter.J17Bitmask = 243;
EE_Parameter.J16Timing = 20;
EE_Parameter.J17Timing = 20;
EE_Parameter.NaviGpsModeControl = 253;
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 = 4;
memcpy(EE_Parameter.Name, "Normal\0", 12);
}
 
void DefaultKonstanten3(void)
{
EE_Parameter.GlobalConfig = CFG_DREHRATEN_BEGRENZER | CFG_ACHSENKOPPLUNG_AKTIV | CFG_KOMPASS_AKTIV | CFG_GPS_AKTIV;///*CFG_HOEHEN_SCHALTER |*/ CFG_KOMPASS_AKTIV;//0x01;
EE_Parameter.Hoehe_MinGas = 30;
EE_Parameter.MaxHoehe = 251; // Wert : 0-250 251 -> Poti1
EE_Parameter.Hoehe_P = 10; // Wert : 0-32
EE_Parameter.Luftdruck_D = 30; // Wert : 0-250
EE_Parameter.Hoehe_ACC_Wirkung = 30; // Wert : 0-250
EE_Parameter.Hoehe_Verstaerkung = 3; // Wert : 0-50
EE_Parameter.Stick_P = 8; // Wert : 1-6
EE_Parameter.Stick_D = 16; // Wert : 0-64
EE_Parameter.Gier_P = 6; // Wert : 1-20
EE_Parameter.Gas_Min = 8; // Wert : 0-32
EE_Parameter.Gas_Max = 230; // Wert : 33-250
EE_Parameter.GyroAccFaktor = 30; // Wert : 1-64
EE_Parameter.KompassWirkung = 128; // Wert : 0-250
EE_Parameter.Gyro_P = 100; // Wert : 0-250
EE_Parameter.Gyro_I = 120; // Wert : 0-250
EE_Parameter.Gyro_D = 3; // Wert : 0-250
EE_Parameter.UnterspannungsWarnung = 94; // Wert : 0-250
EE_Parameter.NotGas = 35; // Wert : 0-250 // Gaswert bei Empangsverlust
EE_Parameter.NotGasZeit = 20; // Wert : 0-250 // Zeit bis auf NotGas geschaltet wird, wg. Rx-Problemen
EE_Parameter.UfoAusrichtung = 0; // X oder + Formation
EE_Parameter.I_Faktor = 16;
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 = 100; // Wert : 0-250 // Stellung des Servos
EE_Parameter.ServoNickComp = 40; // Wert : 0-250 // Einfluss Gyro/Servo
EE_Parameter.ServoNickCompInvert = 0; // Wert : 0-250 // Richtung Einfluss Gyro/Servo
EE_Parameter.ServoNickMin = 50; // Wert : 0-250 // Anschlag
EE_Parameter.ServoNickMax = 150; // Wert : 0-250 // Anschlag
EE_Parameter.ServoNickRefresh = 5;
EE_Parameter.LoopGasLimit = 50;
EE_Parameter.LoopThreshold = 90; // Wert: 0-250 Schwelle für Stickausschlag
EE_Parameter.LoopHysterese = 50;
EE_Parameter.BitConfig = 0; // Bitcodiert: 0x01=oben, 0x02=unten, 0x04=links, 0x08=rechts
EE_Parameter.AchsKopplung1 = 90;
EE_Parameter.AchsKopplung2 = 67;
EE_Parameter.CouplingYawCorrection = 70;
EE_Parameter.WinkelUmschlagNick = 85;
EE_Parameter.WinkelUmschlagRoll = 85;
EE_Parameter.GyroAccAbgleich = 32; // 1/k
EE_Parameter.Driftkomp = 32;
EE_Parameter.DynamicStability = 50;
EE_Parameter.J16Bitmask = 95;
EE_Parameter.J17Bitmask = 243;
EE_Parameter.J16Timing = 30;
EE_Parameter.J17Timing = 30;
EE_Parameter.NaviGpsModeControl = 253;
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 = 4;
memcpy(EE_Parameter.Name, "Beginner\0", 12);
}
/branches/v0.72p kmpec/fc.c
0,0 → 1,1544
/*#######################################################################################
Flight Control
#######################################################################################*/
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Copyright (c) 04.2007 Holger Buss
// + Nur für den privaten Gebrauch
// + 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.
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
#include "main.h"
#include "eeprom.c"
 
unsigned char h,m,s;
volatile unsigned int I2CTimeout = 100;
int MesswertNick,MesswertRoll,MesswertGier,MesswertGierBias, RohMesswertNick,RohMesswertRoll;
int TrimNick, TrimRoll;
int AdNeutralGierBias;
int AdNeutralNick = 0,AdNeutralRoll = 0,AdNeutralGier = 0,StartNeutralRoll = 0,StartNeutralNick = 0;
int Mittelwert_AccNick, Mittelwert_AccRoll,Mittelwert_AccHoch, NeutralAccX=0, NeutralAccY=0;
int NaviAccNick, NaviAccRoll,NaviCntAcc = 0;
volatile float NeutralAccZ = 0;
unsigned char CosinusNickWinkel = 0, CosinusRollWinkel = 0;
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;
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 Notlandung = 0;
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;
char IntegralFaktor;
int DiffNick,DiffRoll;
int Poti1 = 0, Poti2 = 0, Poti3 = 0, Poti4 = 0;
volatile unsigned char Motor_Vorne,Motor_Hinten,Motor_Rechts,Motor_Links;
volatile unsigned char Motor1, Motor2,Motor3,Motor4,Motor5,Motor6,Motor7,Motor8;
volatile unsigned char SenderOkay = 0;
int StickNick = 0,StickRoll = 0,StickGier = 0,StickGas = 0;
char MotorenEin = 0;
int HoehenWert = 0;
int SollHoehe = 0;
int LageKorrekturRoll = 0,LageKorrekturNick = 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_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_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_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;
struct mk_param_struct EE_Parameter;
signed int ExternStickNick = 0,ExternStickRoll = 0,ExternStickGier = 0, ExternHoehenValue = -20;
int MaxStickNick = 0,MaxStickRoll = 0;
unsigned int modell_fliegt = 0;
unsigned char MikroKopterFlags = 0;
long GIER_GRAD_FAKTOR = 1291;
signed int KopplungsteilNickRoll,KopplungsteilRollNick;
 
 
int MotorSmoothing(int neu, int alt)
{
int motor;
if(neu > alt) motor = (1*(int)alt + neu) / 2;
else motor = neu - (alt - neu)*1;
//if(Poti2 < 20) return(neu);
return(motor);
}
 
 
void Piep(unsigned char Anzahl)
{
while(Anzahl--)
{
if(MotorenEin) return; //auf keinen Fall im Flug!
beeptime = 100;
Delay_ms(250);
}
}
 
//############################################################################
// Nullwerte ermitteln
void SetNeutral(void)
//############################################################################
{
unsigned char i;
unsigned int gier_neutral=0, nick_neutral=0, roll_neutral=0;
ServoActive = 0; HEF4017R_ON;
NeutralAccX = 0;
NeutralAccY = 0;
NeutralAccZ = 0;
AdNeutralNick = 0;
AdNeutralRoll = 0;
AdNeutralGier = 0;
AdNeutralGierBias = 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);
AdNeutralGierBias = AdNeutralGier;
StartNeutralRoll = AdNeutralRoll;
StartNeutralNick = AdNeutralNick;
if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACC_NICK]) > 4)
{
NeutralAccY = abs(Mittelwert_AccRoll) / (2*ACC_AMPLIFY);
NeutralAccX = abs(Mittelwert_AccNick) / (2*ACC_AMPLIFY);
NeutralAccZ = Aktuell_az;
}
else
{
NeutralAccX = (int)eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACC_NICK]) * 256 + (int)eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACC_NICK+1]);
NeutralAccY = (int)eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACC_ROLL]) * 256 + (int)eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACC_ROLL+1]);
NeutralAccZ = (int)eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACC_Z]) * 256 + (int)eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACC_Z+1]);
}
 
MesswertNick = 0;
MesswertRoll = 0;
MesswertGier = 0;
Delay_ms_Mess(100);
Mittelwert_AccNick = ACC_AMPLIFY * (long)AdWertAccNick;
Mittelwert_AccRoll = ACC_AMPLIFY * (long)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;
HoeheD = 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();
MikroKopterFlags |= FLAG_CALIBRATE;
FromNaviCtrl_Value.Kalman_K = -1;
FromNaviCtrl_Value.Kalman_MaxDrift = 0;
FromNaviCtrl_Value.Kalman_MaxFusion = 32;
Poti1 = PPM_in[EE_Parameter.Kanalbelegung[K_POTI1]] + 110;
Poti2 = PPM_in[EE_Parameter.Kanalbelegung[K_POTI2]] + 110;
Poti3 = PPM_in[EE_Parameter.Kanalbelegung[K_POTI3]] + 110;
Poti4 = PPM_in[EE_Parameter.Kanalbelegung[K_POTI4]] + 110;
ServoActive = 1;
SenderOkay = 100;
}
 
//############################################################################
// 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;
 
MesswertGier = (signed int) AdNeutralGier - AdWertGier;
// MesswertGierBias = (signed int) AdNeutralGierBias - AdWertGier;
MesswertNick = (signed int) AdWertNickFilter / 8;
MesswertRoll = (signed int) AdWertRollFilter / 8;
RohMesswertNick = MesswertNick;
RohMesswertRoll = MesswertRoll;
//DebugOut.Analog[21] = MesswertNick;
//DebugOut.Analog[22] = MesswertRoll;
//DebugOut.Analog[22] = Mess_Integral_Gier;
//DebugOut.Analog[21] = MesswertNick;
//DebugOut.Analog[22] = MesswertRoll;
 
// Beschleunigungssensor ++++++++++++++++++++++++++++++++++++++++++++++++
Mittelwert_AccNick = ((long)Mittelwert_AccNick * 3 + ((ACC_AMPLIFY * (long)AdWertAccNick))) / 4L;
Mittelwert_AccRoll = ((long)Mittelwert_AccRoll * 3 + ((ACC_AMPLIFY * (long)AdWertAccRoll))) / 4L;
Mittelwert_AccHoch = ((long)Mittelwert_AccHoch * 3 + ((long)AdWertAccHoch)) / 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(labs(tmpl) > 128 || labs(tmpl2) > 128 /* || abs(KopplungsteilNickRoll) > 128 || abs(KopplungsteilRollNick) > 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;
MesswertNick += (d2Nick * (signed int) Parameter_Gyro_D) / 16;
d2Roll = HiResRoll - oldRoll;
oldRoll = (oldRoll + HiResRoll)/2;
if(d2Roll > D_LIMIT) d2Roll = D_LIMIT;
else if(d2Roll < -D_LIMIT) d2Roll = -D_LIMIT;
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);
}
 
if(Poti1 < PPM_in[EE_Parameter.Kanalbelegung[K_POTI1]] + 110) Poti1++; else if(Poti1 > PPM_in[EE_Parameter.Kanalbelegung[K_POTI1]] + 110 && Poti1) Poti1--;
if(Poti2 < PPM_in[EE_Parameter.Kanalbelegung[K_POTI2]] + 110) Poti2++; else if(Poti2 > PPM_in[EE_Parameter.Kanalbelegung[K_POTI2]] + 110 && Poti2) Poti2--;
if(Poti3 < PPM_in[EE_Parameter.Kanalbelegung[K_POTI3]] + 110) Poti3++; else if(Poti3 > PPM_in[EE_Parameter.Kanalbelegung[K_POTI3]] + 110 && Poti3) Poti3--;
if(Poti4 < PPM_in[EE_Parameter.Kanalbelegung[K_POTI4]] + 110) Poti4++; else if(Poti4 > PPM_in[EE_Parameter.Kanalbelegung[K_POTI4]] + 110 && Poti4) Poti4--;
if(Poti1 < 0) Poti1 = 0; else if(Poti1 > 255) Poti1 = 255;
if(Poti2 < 0) Poti2 = 0; else if(Poti2 > 255) Poti2 = 255;
if(Poti3 < 0) Poti3 = 0; else if(Poti3 > 255) Poti3 = 255;
if(Poti4 < 0) Poti4 = 0; else if(Poti4 > 255) Poti4 = 255;
}
 
//############################################################################
// Messwerte beim Ermitteln der Nullage
void CalibrierMittelwert(void)
//############################################################################
{
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 * (long)AdWertAccNick;
Mittelwert_AccRoll = ACC_AMPLIFY * (long)AdWertAccRoll;
Mittelwert_AccHoch = (long)AdWertAccHoch;
// ADC einschalten
ANALOG_ON;
if(Poti1 < PPM_in[EE_Parameter.Kanalbelegung[K_POTI1]] + 110) Poti1++; else if(Poti1 > PPM_in[EE_Parameter.Kanalbelegung[K_POTI1]] + 110 && Poti1) Poti1--;
if(Poti2 < PPM_in[EE_Parameter.Kanalbelegung[K_POTI2]] + 110) Poti2++; else if(Poti2 > PPM_in[EE_Parameter.Kanalbelegung[K_POTI2]] + 110 && Poti2) Poti2--;
if(Poti3 < PPM_in[EE_Parameter.Kanalbelegung[K_POTI3]] + 110) Poti3++; else if(Poti3 > PPM_in[EE_Parameter.Kanalbelegung[K_POTI3]] + 110 && Poti3) Poti3--;
if(Poti4 < PPM_in[EE_Parameter.Kanalbelegung[K_POTI4]] + 110) Poti4++; else if(Poti4 > PPM_in[EE_Parameter.Kanalbelegung[K_POTI4]] + 110 && Poti4) Poti4--;
if(Poti1 < 0) Poti1 = 0; else if(Poti1 > 255) Poti1 = 255;
if(Poti2 < 0) Poti2 = 0; else if(Poti2 > 255) Poti2 = 255;
if(Poti3 < 0) Poti3 = 0; else if(Poti3 > 255) Poti3 = 255;
if(Poti4 < 0) Poti4 = 0; else if(Poti4 > 255) Poti4 = 255;
 
Umschlag180Nick = (long) EE_Parameter.WinkelUmschlagNick * 2500L;
Umschlag180Roll = (long) EE_Parameter.WinkelUmschlagRoll * 2500L;
}
 
//############################################################################
// Senden der Motorwerte per I2C-Bus
void SendMotorData(void)
//############################################################################
{
if(!MotorenEin)
{
#ifndef QUADRO
Motor1 = 0;Motor2 = 0;Motor3 = 0;Motor4 = 0;Motor5 = 0;Motor6 = 0;Motor7 = 0;Motor8 = 0;
if(MotorTest[0]) {Motor1 = MotorTest[0]; Motor2 = MotorTest[0];}
if(MotorTest[3]) {Motor3 = MotorTest[3]; Motor4 = MotorTest[3];}
if(MotorTest[1]) {Motor5 = MotorTest[1]; Motor6 = MotorTest[1];}
if(MotorTest[2]) {Motor7 = MotorTest[2]; Motor8 = MotorTest[2];}
#else
Motor_Hinten = 0; Motor_Vorne = 0; Motor_Rechts = 0; Motor_Links = 0;
if(MotorTest[0]) Motor_Vorne = MotorTest[0];
if(MotorTest[1]) Motor_Hinten = MotorTest[1];
if(MotorTest[2]) Motor_Links = MotorTest[2];
if(MotorTest[3]) Motor_Rechts = MotorTest[3];
#endif
 
MikroKopterFlags &= ~(FLAG_MOTOR_RUN | FLAG_FLY);
} else MikroKopterFlags |= FLAG_MOTOR_RUN;
 
DebugOut.Analog[12] = Motor_Vorne;
DebugOut.Analog[13] = Motor_Hinten;
DebugOut.Analog[14] = Motor_Links;
DebugOut.Analog[15] = Motor_Rechts;
 
//Start I2C Interrupt Mode
twi_state = 0;
motor = 0;
i2c_start();
}
 
 
 
//############################################################################
// Trägt ggf. das Poti als Parameter ein
void ParameterZuordnung(void)
//############################################################################
{
#define CHK_POTI_MM(b,a,min,max) { if(a > 250) { if(a == 251) b = Poti1; else if(a == 252) b = Poti2; else if(a == 253) b = Poti3; else if(a == 254) b = Poti4;} else b = a; if(b <= min) b = min; else if(b >= max) b = max;}
#define CHK_POTI(b,a,min,max) { if(a > 250) { if(a == 251) b = Poti1; else if(a == 252) b = Poti2; else if(a == 253) b = Poti3; else if(a == 254) b = Poti4;} else b = a; }
CHK_POTI(Parameter_MaxHoehe,EE_Parameter.MaxHoehe,0,255);
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(Parameter_Hoehe_ACC_Wirkung,EE_Parameter.Hoehe_ACC_Wirkung,0,255);
CHK_POTI(Parameter_KompassWirkung,EE_Parameter.KompassWirkung,0,255);
CHK_POTI_MM(Parameter_Gyro_P,EE_Parameter.Gyro_P,10,255);
CHK_POTI(Parameter_Gyro_I,EE_Parameter.Gyro_I,0,255);
CHK_POTI(Parameter_Gyro_D,EE_Parameter.Gyro_D,0,255);
CHK_POTI(Parameter_I_Faktor,EE_Parameter.I_Faktor,0,255);
CHK_POTI(Parameter_UserParam1,EE_Parameter.UserParam1,0,255);
CHK_POTI(Parameter_UserParam2,EE_Parameter.UserParam2,0,255);
CHK_POTI(Parameter_UserParam3,EE_Parameter.UserParam3,0,255);
CHK_POTI(Parameter_UserParam4,EE_Parameter.UserParam4,0,255);
CHK_POTI(Parameter_UserParam5,EE_Parameter.UserParam5,0,255);
CHK_POTI(Parameter_UserParam6,EE_Parameter.UserParam6,0,255);
CHK_POTI(Parameter_UserParam7,EE_Parameter.UserParam7,0,255);
CHK_POTI(Parameter_UserParam8,EE_Parameter.UserParam8,0,255);
CHK_POTI(Parameter_ServoNickControl,EE_Parameter.ServoNickControl,0,255);
CHK_POTI(Parameter_LoopGasLimit,EE_Parameter.LoopGasLimit,0,255);
CHK_POTI(Parameter_AchsKopplung1, EE_Parameter.AchsKopplung1,0,255);
CHK_POTI(Parameter_AchsKopplung2, EE_Parameter.AchsKopplung2,0,255);
CHK_POTI(Parameter_CouplingYawCorrection,EE_Parameter.CouplingYawCorrection,0,255);
// CHK_POTI(Parameter_AchsGegenKopplung1,EE_Parameter.AchsGegenKopplung1,0,255);
CHK_POTI(Parameter_DynamicStability,EE_Parameter.DynamicStability,0,255);
CHK_POTI_MM(Parameter_J16Timing,EE_Parameter.J16Timing,1,255);
CHK_POTI_MM(Parameter_J17Timing,EE_Parameter.J17Timing,1,255);
CHK_POTI(Parameter_ExternalControl,EE_Parameter.ExternalControl,0,255);
Ki = 10300 / (Parameter_I_Faktor + 1);
MAX_GAS = EE_Parameter.Gas_Max;
MIN_GAS = EE_Parameter.Gas_Min;
}
 
 
 
//############################################################################
//
void MotorRegler(void)
//############################################################################
{
int motorwert,pd_ergebnis_nick,pd_ergebnis_roll,h,tmp_int;
int GierMischanteil,GasMischanteil;
static long SummeNick=0,SummeRoll=0;
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 int hoehenregler = 0;
static int motorwert1,motorwert2,motorwert3,motorwert4,motorwert5,motorwert6,motorwert7,motorwert8;
static char TimerWerteausgabe = 0;
static char NeueKompassRichtungMerken = 0;
static long ausgleichNick, ausgleichRoll;
int IntegralNickMalFaktor,IntegralRollMalFaktor;
Mittelwert();
 
GRN_ON;
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Gaswert ermitteln
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
GasMischanteil = StickGas;
if(GasMischanteil < MIN_GAS + 10) GasMischanteil = MIN_GAS + 10;
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Empfang schlecht
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(SenderOkay < 100)
{
if(!PcZugriff)
{
if(BeepMuster == 0xffff)
{
beeptime = 15000;
BeepMuster = 0x0c00;
}
}
if(RcLostTimer) RcLostTimer--;
else
{
MotorenEin = 0;
Notlandung = 0;
}
ROT_ON;
if(modell_fliegt > 1000) // wahrscheinlich in der Luft --> langsam absenken
{
GasMischanteil = EE_Parameter.NotGas;
Notlandung = 1;
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)
{
Notlandung = 0;
RcLostTimer = EE_Parameter.NotGasZeit * 50;
if(GasMischanteil > 40 && MotorenEin)
{
if(modell_fliegt < 0xffff) modell_fliegt++;
}
if((modell_fliegt < 256))
{
SummeNick = 0;
SummeRoll = 0;
if(modell_fliegt == 250)
{
NeueKompassRichtungMerken = 1;
sollGier = 0;
Mess_Integral_Gier = 0;
// Mess_Integral_Gier2 = 0;
}
} else MikroKopterFlags |= FLAG_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;
SetActiveParamSetNumber(setting); // aktiven Datensatz merken
}
// else
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]) < 30 && PPM_in[EE_Parameter.Kanalbelegung[K_NICK]] < -70)
{
WinkelOut.CalcState = 1;
beeptime = 1000;
}
else
{
ReadParameterSet(GetActiveParamSetNumber(), (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE);
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)) // Höhenregelung aktiviert?
{
if((MessLuftdruck > 950) || (MessLuftdruck < 750)) SucheLuftruckOffset();
}
SetNeutral();
Piep(GetActiveParamSetNumber());
}
}
}
else
if(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] < -75) // ACC Neutralwerte speichern
{
if(++delay_neutral > 200) // nicht sofort
{
GRN_OFF;
eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACC_NICK],0xff); // Werte löschen
MotorenEin = 0;
delay_neutral = 0;
modell_fliegt = 0;
SetNeutral();
eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACC_NICK],NeutralAccX / 256); // ACC-NeutralWerte speichern
eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACC_NICK+1],NeutralAccX % 256); // ACC-NeutralWerte speichern
eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACC_ROLL],NeutralAccY / 256);
eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACC_ROLL+1],NeutralAccY % 256);
eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACC_Z],(int)NeutralAccZ / 256);
eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACC_Z+1],(int)NeutralAccZ % 256);
Piep(GetActiveParamSetNumber());
}
}
else delay_neutral = 0;
}
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Gas ist unten
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] < 35-120)
{
// Starten
if(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] < -75)
{
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Einschalten
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(++delay_einschalten > 200)
{
delay_einschalten = 200;
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;
MikroKopterFlags |= FLAG_START;
}
}
else delay_einschalten = 0;
//Auf Neutralwerte setzen
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Auschalten
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(PPM_in[EE_Parameter.Kanalbelegung[K_GIER]] > 75)
{
if(++delay_ausschalten > 200) // nicht sofort
{
MotorenEin = 0;
delay_ausschalten = 200;
modell_fliegt = 0;
}
}
else delay_ausschalten = 0;
}
}
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// neue Werte von der Funke
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(!NewPpmData-- || Notlandung)
{
int tmp_int;
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;
StickNick = stick_nick - (GPS_Nick + GPS_Nick2);
 
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;
StickRoll = stick_roll - (GPS_Roll + GPS_Roll2);
 
StickGier = -PPM_in[EE_Parameter.Kanalbelegung[K_GIER]];
if(StickGier > 2) StickGier -= 2; else
if(StickGier < -2) StickGier += 2; else StickGier = 0;
 
StickGas = PPM_in[EE_Parameter.Kanalbelegung[K_GAS]] + 120;
 
/* if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_NICK]]) > MaxStickNick)
MaxStickNick = abs(PPM_in[EE_Parameter.Kanalbelegung[K_NICK]]); else MaxStickNick--;
if(abs(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]) > MaxStickRoll)
MaxStickRoll = abs(PPM_in[EE_Parameter.Kanalbelegung[K_ROLL]]); else MaxStickRoll--;
*/
// GyroFaktor = ((float)Parameter_Gyro_P + 10.0) / (256.0/STICK_GAIN);
GyroFaktor = (Parameter_Gyro_P + 10.0);
// IntegralFaktor = ((float) Parameter_Gyro_I) / (44000 / STICK_GAIN);
IntegralFaktor = Parameter_Gyro_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(GyroFaktor < 0) GyroFaktor = 0;
if(IntegralFaktor < 0) 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(Notlandung) {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(Notlandung)
{
StickGier = 0;
StickNick = 0;
StickRoll = 0;
GyroFaktor = 90;//(float) 100 / (256.0 / STICK_GAIN);
IntegralFaktor = 120;//(float) 120 / (44000 / STICK_GAIN);
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)
{
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;
}
 
//if(Poti2 > 20) { tmp_long = 0; tmp_long2 = 0;}
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//(Poti2/10)
// 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;
//DebugOut.Analog[25] = MittelIntegralRoll2 / 26;
 
IntegralFehlerNick = tmp_long;
IntegralFehlerRoll = tmp_long2;
Mess_IntegralNick2 -= IntegralFehlerNick;
Mess_IntegralRoll2 -= IntegralFehlerRoll;
 
// IntegralFehlerNick = (IntegralFehlerNick * 1 + tmp_long) / 2;
// IntegralFehlerRoll = (IntegralFehlerRoll * 1 + tmp_long2) / 2;
if(EE_Parameter.Driftkomp)
{
if(GierGyroFehler > ABGLEICH_ANZAHL/2) { AdNeutralGier++; AdNeutralGierBias++; }
if(GierGyroFehler <-ABGLEICH_ANZAHL/2) { AdNeutralGier--; AdNeutralGierBias--; }
}
//DebugOut.Analog[22] = MittelIntegralRoll / 26;
//DebugOut.Analog[24] = GierGyroFehler;
GierGyroFehler = 0;
 
 
/*DebugOut.Analog[17] = IntegralAccNick / 26;
DebugOut.Analog[18] = IntegralAccRoll / 26;
DebugOut.Analog[19] = IntegralFehlerNick;// / 26;
DebugOut.Analog[20] = IntegralFehlerRoll;// / 26;
*/
//DebugOut.Analog[21] = MittelIntegralNick / 26;
//MittelIntegralRoll = MittelIntegralRoll;
//DebugOut.Analog[28] = ausgleichNick;
/*
DebugOut.Analog[29] = ausgleichRoll;
DebugOut.Analog[30] = LageKorrekturRoll * 10;
*/
 
#define FEHLER_LIMIT (ABGLEICH_ANZAHL * 4)
#define FEHLER_LIMIT2 (ABGLEICH_ANZAHL * 16)
#define BEWEGUNGS_LIMIT 20000
// Nick +++++++++++++++++++++++++++++++++++++++++++++++++
cnt = 1;// + labs(IntegralFehlerNick) / 4096;
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(IntegralFehlerNick) / 4096;
 
ausgleichRoll = 0;
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(GasMischanteil < 35) { if(StickGier > 10) StickGier = 10; else if(StickGier < -10) StickGier = -10;};
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
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//DebugOut.Analog[16] = KompassSignalSchlecht;
 
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 + 1;
fehler = ((540 + KompassValue - (ErsatzKompass/GIER_GRAD_FAKTOR)) % 360) - 180;
if(abs(MesswertGier) > 128)
{
fehler = 0;
}
 
if(NeueKompassRichtungMerken)
{
// ErsatzKompass += (fehler * 32) / korrektur;
// fehler = 0;
// fehler /= 4;
// ErsatzKompass = KompassValue * GIER_GRAD_FAKTOR;
}
if(!KompassSignalSchlecht && w < 25)
{
GierGyroFehler += fehler;
if(NeueKompassRichtungMerken)
{
beeptime = 200;
// KompassStartwert = KompassValue;
ErsatzKompass = KompassValue * GIER_GRAD_FAKTOR;
KompassStartwert = (ErsatzKompass/GIER_GRAD_FAKTOR);
NeueKompassRichtungMerken = 0;
}
}
ErsatzKompass += (fehler * 8) / 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;
// r = KompassRichtung;
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
}
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Debugwerte zuordnen
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(!TimerWerteausgabe--)
{
TimerWerteausgabe = 24;
 
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] = MesswertGier;
DebugOut.Analog[5] = HoehenWert;
DebugOut.Analog[6] = (Mess_Integral_Hoch / 512);//Aktuell_az;
DebugOut.Analog[8] = KompassValue;
DebugOut.Analog[9] = UBat;
DebugOut.Analog[11] = ErsatzKompass / GIER_GRAD_FAKTOR;
DebugOut.Analog[10] = SenderOkay;
//DebugOut.Analog[16] = Mittelwert_AccHoch;
//DebugOut.Analog[17] = FromNaviCtrl_Value.Distance;
//DebugOut.Analog[18] = (int)FromNaviCtrl_Value.OsdBar;
DebugOut.Analog[19] = WinkelOut.CalcState;
DebugOut.Analog[20] = ServoValue;
// DebugOut.Analog[24] = MesswertNick/2;
// DebugOut.Analog[25] = MesswertRoll/2;
DebugOut.Analog[27] = (int)FromNaviCtrl_Value.Kalman_MaxDrift;
// DebugOut.Analog[28] = (int)FromNaviCtrl_Value.Kalman_MaxFusion;
// DebugOut.Analog[29] = (int)FromNaviCtrl_Value.Kalman_K;
DebugOut.Analog[30] = GPS_Nick;
DebugOut.Analog[31] = GPS_Roll;
 
 
// DebugOut.Analog[19] -= DebugOut.Analog[19]/128;
// if(DebugOut.Analog[19] > 0) DebugOut.Analog[19]--; else DebugOut.Analog[19]++;
 
/* DebugOut.Analog[16] = motor_rx[0];
DebugOut.Analog[17] = motor_rx[1];
DebugOut.Analog[18] = motor_rx[2];
DebugOut.Analog[19] = motor_rx[3];
DebugOut.Analog[20] = motor_rx[0] + motor_rx[1] + motor_rx[2] + motor_rx[3];
DebugOut.Analog[20] /= 14;
DebugOut.Analog[21] = motor_rx[4];
DebugOut.Analog[22] = motor_rx[5];
DebugOut.Analog[23] = motor_rx[6];
DebugOut.Analog[24] = motor_rx[7];
DebugOut.Analog[25] = motor_rx[4] + motor_rx[5] + motor_rx[6] + motor_rx[7];
*/
// DebugOut.Analog[9] = MesswertNick;
// DebugOut.Analog[9] = SollHoehe;
// DebugOut.Analog[10] = Mess_Integral_Gier / 128;
// DebugOut.Analog[11] = KompassStartwert;
// DebugOut.Analog[10] = Parameter_Gyro_I;
// DebugOut.Analog[10] = EE_Parameter.Gyro_I;
// DebugOut.Analog[9] = KompassRichtung;
// DebugOut.Analog[10] = GasMischanteil;
// DebugOut.Analog[3] = HoeheD * 32;
// DebugOut.Analog[4] = hoehenregler;
}
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// 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);
}
 
#ifndef QUADRO
MesswertGier = (long)(MesswertGier * 4 * (long)GyroFaktor) / (256L / STICK_GAIN) + (long)(Integral_Gier * IntegralFaktor) / (4 * (44000 / STICK_GAIN));
#else
MesswertGier = (long)(MesswertGier * 2 * (long)GyroFaktor) / (256L / STICK_GAIN) + (long)(Integral_Gier * IntegralFaktor) / (2 * (44000 / STICK_GAIN));
#endif
 
// Maximalwerte abfangen
// #define MAX_SENSOR (4096*STICK_GAIN)
#define MAX_SENSOR (4096*4)
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
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
GasMischanteil *= STICK_GAIN;
if((EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)) // Höhenregelung
{
int tmp_int;
static char delay = 100;
if(EE_Parameter.GlobalConfig & CFG_HOEHEN_SCHALTER) // Regler wird über Schalter gesteuert
{
if(((EE_Parameter.BitConfig & CFG_HIGHT_3SWITCH) && ((Parameter_MaxHoehe > 80) && (Parameter_MaxHoehe < 140))) ||
(!(EE_Parameter.BitConfig & CFG_HIGHT_3SWITCH) && (Parameter_MaxHoehe < 50)))
{
if(!delay--)
{
if(MessLuftdruck > 1000)
{
ExpandBaro -= 10;
OCR0A = DruckOffsetSetting - ExpandBaro;
beeptime = 300;
delay = 250;
}
else
if(MessLuftdruck < 100)
{
ExpandBaro += 10;
OCR0A = DruckOffsetSetting - ExpandBaro;
beeptime = 300;
delay = 250;
}
else
{
SollHoehe = HoehenWert - 20; // Parameter_MaxHoehe ist der PPM-Wert des Schalters
HoehenReglerAktiv = 0;
delay = 1;
}
}
}
else
{
HoehenReglerAktiv = 1;
delay = 200;
}
}
else
{
SollHoehe = ((int) ExternHoehenValue + (int) Parameter_MaxHoehe) * (int)EE_Parameter.Hoehe_Verstaerkung - 20;
HoehenReglerAktiv = 1;
}
 
if(Notlandung) SollHoehe = 0;
h = HoehenWert;
if((h > SollHoehe) && HoehenReglerAktiv) // zu hoch --> drosseln
{
h = ((h - SollHoehe) * (int) Parameter_Hoehe_P) / (16 / STICK_GAIN); // Differenz bestimmen --> P-Anteil
h = GasMischanteil - h; // vom Gas abziehen
// h -= (HoeheD * Parameter_Luftdruck_D)/(8/STICK_GAIN); // D-Anteil
h -= (HoeheD)/(8/STICK_GAIN); // D-Anteil
tmp_int = ((Mess_Integral_Hoch / 128) * (signed long) Parameter_Hoehe_ACC_Wirkung) / (128 / STICK_GAIN);
if(tmp_int > 70*STICK_GAIN) tmp_int = 70*STICK_GAIN;
else if(tmp_int < -(70*STICK_GAIN)) tmp_int = -(70*STICK_GAIN);
h -= tmp_int;
hoehenregler = (hoehenregler*15 + h) / 16;
if(hoehenregler < EE_Parameter.Hoehe_MinGas * STICK_GAIN) // nicht unter MIN
{
if(GasMischanteil >= EE_Parameter.Hoehe_MinGas * STICK_GAIN) hoehenregler = EE_Parameter.Hoehe_MinGas * STICK_GAIN;
if(GasMischanteil < EE_Parameter.Hoehe_MinGas * STICK_GAIN) hoehenregler = GasMischanteil;
}
if(hoehenregler > GasMischanteil) hoehenregler = GasMischanteil; // nicht mehr als Gas
GasMischanteil = hoehenregler;
}
}
if(GasMischanteil > (MAX_GAS - 20) * STICK_GAIN) GasMischanteil = (MAX_GAS - 20) * STICK_GAIN;
 
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Mischer und PI-Regler
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
DebugOut.Analog[7] = GasMischanteil;
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Gier-Anteil
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#define MUL_G 1.0
GierMischanteil = MesswertGier - sollGier * STICK_GAIN; // Regler für Gier
// GierMischanteil = 0;
#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);
pd_ergebnis_nick = DiffNick + SummeNick / Ki; // PI-Regler für Nick
// Motor Vorn
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);
pd_ergebnis_roll = DiffRoll + SummeRoll / Ki; // PI-Regler für Roll
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;
 
#ifdef QUADRO
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Quadro-Mischer
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
motorwert = GasMischanteil + pd_ergebnis_nick + GierMischanteil; // Mischer
motorwert1 = MotorSmoothing(motorwert,motorwert1);
motorwert = motorwert1 / STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor_Vorne = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick + GierMischanteil;
motorwert2 = MotorSmoothing(motorwert,motorwert2);
motorwert = motorwert2 / STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor_Hinten = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_roll - GierMischanteil;
motorwert3 = MotorSmoothing(motorwert,motorwert3);
motorwert = motorwert3 / STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor_Links = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_roll - GierMischanteil;
motorwert4 = MotorSmoothing(motorwert,motorwert4);
motorwert = motorwert4 / STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor_Rechts = motorwert;
// +++++++++++++++++++++++++++++++++++++++++++++++
#endif
#ifdef OCTO
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Octo-Mischer
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
motorwert = GasMischanteil + pd_ergebnis_nick + pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor1 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_nick - pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor2 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_nick - pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor3 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick - pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor4 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick - pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor5 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick + pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor6 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick + pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor7 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_nick + pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor8 = motorwert;
// +++++++++++++++++++++++++++++++++++++++++++++++
#endif
#ifdef OCTO2
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Octo-Mischer
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
motorwert = GasMischanteil + pd_ergebnis_nick + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor1 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_nick - pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor2 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor3 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick - pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor4 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor5 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick + pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor6 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor7 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_nick + pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor8 = motorwert;
// +++++++++++++++++++++++++++++++++++++++++++++++
#endif
#ifdef OCTO3
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Octo-Mischer
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
motorwert = GasMischanteil + pd_ergebnis_nick + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor1 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_nick - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor2 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor3 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor4 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor5 = motorwert;
 
motorwert = GasMischanteil - pd_ergebnis_nick - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor6 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_roll + GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor7 = motorwert;
 
motorwert = GasMischanteil + pd_ergebnis_roll - GierMischanteil;
motorwert /= STICK_GAIN; CHECK_MIN_MAX(motorwert,MIN_GAS,MAX_GAS);
Motor8 = motorwert;
// +++++++++++++++++++++++++++++++++++++++++++++++
#endif
 
/*
if(Poti1 > 20) Motor1 = 0;
if(Poti1 > 90) Motor6 = 0;
if(Poti1 > 140) Motor2 = 0;
//if(Poti1 > 200) Motor7 = 0;
*/
}
/branches/v0.72p kmpec/fc.d
0,0 → 1,2
fc.o fc.d : fc.c main.h old_macros.h _Settings.h printf_P.h timer0.h uart.h \
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h eeprom.c
/branches/v0.72p kmpec/fc.h
0,0 → 1,190
/*#######################################################################################
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 FLAG_MOTOR_RUN 1
#define FLAG_FLY 2
#define FLAG_CALIBRATE 4
#define FLAG_START 8
 
#define CHECK_MIN_MAX(wert,min,max) {if(wert < min) wert = min; else if(wert > max) wert = max;}
 
extern unsigned char MikroKopterFlags;
extern volatile unsigned int I2CTimeout;
extern unsigned char Sekunde,Minute;
 
extern long IntegralNick,IntegralNick2;
extern long IntegralRoll,IntegralRoll2;
//extern int IntegralNick,IntegralNick2;
//extern int IntegralRoll,IntegralRoll2;
 
extern long Mess_IntegralNick,Mess_IntegralNick2;
extern long Mess_IntegralRoll,Mess_IntegralRoll2;
extern long IntegralAccNick,IntegralAccRoll;
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 int TrimNick, TrimRoll;
extern long ErsatzKompass;
extern int ErsatzKompassInGrad; // Kompasswert in Grad
extern int HoehenWert;
extern int SollHoehe;
extern int MesswertNick,MesswertRoll,MesswertGier;
extern int AdNeutralNick,AdNeutralRoll,AdNeutralGier, Mittelwert_AccNick, Mittelwert_AccRoll;
extern int NeutralAccX, NeutralAccY,Mittelwert_AccHoch;
extern volatile float 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;
void MotorRegler(void);
void SendMotorData(void);
void CalibrierMittelwert(void);
void Mittelwert(void);
void SetNeutral(void);
void Piep(unsigned char Anzahl);
extern void DefaultKonstanten(void);
void DefaultKonstanten1(void);
void DefaultKonstanten2(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 Motor_Vorne,Motor_Hinten,Motor_Rechts,Motor_Links, Count;
extern volatile unsigned char Motor1, Motor2,Motor3,Motor4,Motor5,Motor6,Motor7,Motor8;
extern volatile unsigned char SenderOkay;
extern int StickNick,StickRoll,StickGier;
extern char MotorenEin;
extern void DefaultKonstanten1(void);
extern void DefaultKonstanten2(void);
 
extern unsigned char HoehenReglerAktiv; //kmpec - für Output
 
 
#define STRUCT_PARAM_LAENGE 92
struct mk_param_struct
{
unsigned char Kanalbelegung[8]; // 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 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 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 UfoAusrichtung; // X oder + Formation
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
unsigned char ServoNickRefresh; //
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
//---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
//------------------------------------------------
unsigned char BitConfig; // (war Loop-Cfg) Bitcodiert: 0x01=oben, 0x02=unten, 0x04=links, 0x08=rechts / wird getrennt behandelt
unsigned char ServoNickCompInvert; // Wert : 0-250 0 oder 1 // WICHTIG!!! am Ende lassen
unsigned char Reserved[4];
char Name[12];
};
 
extern struct mk_param_struct EE_Parameter;
 
extern unsigned char HoehenReglerAktiv; //kmpec - für Output
 
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_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 unsigned char Parameter_NaviGpsModeControl; // Parameters for the Naviboard
/*
extern unsigned char Parameter_NaviGpsGain;
extern unsigned char Parameter_NaviGpsP;
extern unsigned char Parameter_NaviGpsI;
extern unsigned char Parameter_NaviGpsD;
extern unsigned char Parameter_NaviGpsACC;
extern unsigned char Parameter_NaviOperatingRadius;
extern unsigned char Parameter_NaviWindCorrection;
extern unsigned char Parameter_NaviSpeedCompensation;
*/
#endif //_FC_H
 
/branches/v0.72p kmpec/fc.lst
0,0 → 1,9596
1 .file "fc.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global DefaultStickMapping
12 DefaultStickMapping:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 81E0 ldi r24,lo8(1)
16 0002 8093 0000 sts EE_Parameter,r24
17 0006 82E0 ldi r24,lo8(2)
18 0008 8093 0000 sts EE_Parameter+1,r24
19 000c 83E0 ldi r24,lo8(3)
20 000e 8093 0000 sts EE_Parameter+2,r24
21 0012 84E0 ldi r24,lo8(4)
22 0014 8093 0000 sts EE_Parameter+3,r24
23 0018 85E0 ldi r24,lo8(5)
24 001a 8093 0000 sts EE_Parameter+4,r24
25 001e 86E0 ldi r24,lo8(6)
26 0020 8093 0000 sts EE_Parameter+5,r24
27 0024 87E0 ldi r24,lo8(7)
28 0026 8093 0000 sts EE_Parameter+6,r24
29 002a 88E0 ldi r24,lo8(8)
30 002c 8093 0000 sts EE_Parameter+7,r24
31 /* epilogue: frame size=0 */
32 0030 0895 ret
33 /* epilogue end (size=1) */
34 /* function DefaultStickMapping size 25 (24) */
36 .global MotorSmoothing
38 MotorSmoothing:
39 /* prologue: frame size=0 */
40 /* prologue end (size=0) */
41 0032 6817 cp r22,r24
42 0034 7907 cpc r23,r25
43 0036 04F4 brge .L4
44 0038 680F add r22,r24
45 003a 791F adc r23,r25
46 003c 77FD sbrc r23,7
47 003e 00C0 rjmp .L10
48 0040 CB01 movw r24,r22
49 0042 9595 asr r25
50 0044 8795 ror r24
51 0046 0895 ret
52 .L4:
53 0048 681B sub r22,r24
54 004a 790B sbc r23,r25
55 004c 861B sub r24,r22
56 004e 970B sbc r25,r23
57 0050 0895 ret
58 .L10:
59 0052 6F5F subi r22,lo8(-(1))
60 0054 7F4F sbci r23,hi8(-(1))
61 0056 CB01 movw r24,r22
62 0058 9595 asr r25
63 005a 8795 ror r24
64 005c 0895 ret
65 /* epilogue: frame size=0 */
66 /* epilogue: noreturn */
67 /* epilogue end (size=0) */
68 /* function MotorSmoothing size 22 (22) */
70 .global Mittelwert
72 Mittelwert:
73 /* prologue: frame size=27 */
74 005e 2F92 push r2
75 0060 3F92 push r3
76 0062 4F92 push r4
77 0064 5F92 push r5
78 0066 6F92 push r6
79 0068 7F92 push r7
80 006a 8F92 push r8
81 006c 9F92 push r9
82 006e AF92 push r10
83 0070 BF92 push r11
84 0072 CF92 push r12
85 0074 DF92 push r13
86 0076 EF92 push r14
87 0078 FF92 push r15
88 007a 0F93 push r16
89 007c 1F93 push r17
90 007e CF93 push r28
91 0080 DF93 push r29
92 0082 CDB7 in r28,__SP_L__
93 0084 DEB7 in r29,__SP_H__
94 0086 6B97 sbiw r28,27
95 0088 0FB6 in __tmp_reg__,__SREG__
96 008a F894 cli
97 008c DEBF out __SP_H__,r29
98 008e 0FBE out __SREG__,__tmp_reg__
99 0090 CDBF out __SP_L__,r28
100 /* prologue end (size=26) */
101 0092 8091 0000 lds r24,AdWertGier
102 0096 9091 0000 lds r25,(AdWertGier)+1
103 009a 4090 0000 lds r4,AdNeutralGier
104 009e 5090 0000 lds r5,(AdNeutralGier)+1
105 00a2 481A sub r4,r24
106 00a4 590A sbc r5,r25
107 00a6 5092 0000 sts (MesswertGier)+1,r5
108 00aa 4092 0000 sts MesswertGier,r4
109 00ae 2091 0000 lds r18,AdWertNickFilter
110 00b2 3091 0000 lds r19,(AdWertNickFilter)+1
111 00b6 37FF sbrs r19,7
112 00b8 00C0 rjmp .+4
113 00ba 0C94 0000 jmp .L146
114 .L12:
115 00be 3595 asr r19
116 00c0 2795 ror r18
117 00c2 3595 asr r19
118 00c4 2795 ror r18
119 00c6 3595 asr r19
120 00c8 2795 ror r18
121 00ca 3B8F std Y+27,r19
122 00cc 2A8F std Y+26,r18
123 00ce 2091 0000 lds r18,AdWertRollFilter
124 00d2 3091 0000 lds r19,(AdWertRollFilter)+1
125 00d6 37FD sbrc r19,7
126 00d8 00C0 rjmp .L147
127 .L13:
128 00da 3595 asr r19
129 00dc 2795 ror r18
130 00de 3595 asr r19
131 00e0 2795 ror r18
132 00e2 3595 asr r19
133 00e4 2795 ror r18
134 00e6 3C8B std Y+20,r19
135 00e8 2B8B std Y+19,r18
136 00ea 2A8D ldd r18,Y+26
137 00ec 3B8D ldd r19,Y+27
138 00ee 3093 0000 sts (RohMesswertNick)+1,r19
139 00f2 2093 0000 sts RohMesswertNick,r18
140 00f6 8B89 ldd r24,Y+19
141 00f8 9C89 ldd r25,Y+20
142 00fa 9093 0000 sts (RohMesswertRoll)+1,r25
143 00fe 8093 0000 sts RohMesswertRoll,r24
144 0102 6091 0000 lds r22,AdWertAccNick
145 0106 7091 0000 lds r23,(AdWertAccNick)+1
146 010a 8827 clr r24
147 010c 77FD sbrc r23,7
148 010e 8095 com r24
149 0110 982F mov r25,r24
150 0112 26E0 ldi r18,lo8(6)
151 0114 30E0 ldi r19,hi8(6)
152 0116 40E0 ldi r20,hlo8(6)
153 0118 50E0 ldi r21,hhi8(6)
154 011a 0E94 0000 call __mulsi3
155 011e 7B01 movw r14,r22
156 0120 8C01 movw r16,r24
157 0122 2091 0000 lds r18,Mittelwert_AccNick
158 0126 3091 0000 lds r19,(Mittelwert_AccNick)+1
159 012a 4427 clr r20
160 012c 37FD sbrc r19,7
161 012e 4095 com r20
162 0130 542F mov r21,r20
163 0132 CA01 movw r24,r20
164 0134 B901 movw r22,r18
165 0136 660F lsl r22
166 0138 771F rol r23
167 013a 881F rol r24
168 013c 991F rol r25
169 013e 620F add r22,r18
170 0140 731F adc r23,r19
171 0142 841F adc r24,r20
172 0144 951F adc r25,r21
173 0146 6E0D add r22,r14
174 0148 7F1D adc r23,r15
175 014a 801F adc r24,r16
176 014c 911F adc r25,r17
177 014e 24E0 ldi r18,lo8(4)
178 0150 30E0 ldi r19,hi8(4)
179 0152 40E0 ldi r20,hlo8(4)
180 0154 50E0 ldi r21,hhi8(4)
181 0156 0E94 0000 call __divmodsi4
182 015a 3093 0000 sts (Mittelwert_AccNick)+1,r19
183 015e 2093 0000 sts Mittelwert_AccNick,r18
184 0162 6091 0000 lds r22,AdWertAccRoll
185 0166 7091 0000 lds r23,(AdWertAccRoll)+1
186 016a 8827 clr r24
187 016c 77FD sbrc r23,7
188 016e 8095 com r24
189 0170 982F mov r25,r24
190 0172 26E0 ldi r18,lo8(6)
191 0174 30E0 ldi r19,hi8(6)
192 0176 40E0 ldi r20,hlo8(6)
193 0178 50E0 ldi r21,hhi8(6)
194 017a 0E94 0000 call __mulsi3
195 017e 7B01 movw r14,r22
196 0180 8C01 movw r16,r24
197 0182 2091 0000 lds r18,Mittelwert_AccRoll
198 0186 3091 0000 lds r19,(Mittelwert_AccRoll)+1
199 018a 4427 clr r20
200 018c 37FD sbrc r19,7
201 018e 4095 com r20
202 0190 542F mov r21,r20
203 0192 CA01 movw r24,r20
204 0194 B901 movw r22,r18
205 0196 660F lsl r22
206 0198 771F rol r23
207 019a 881F rol r24
208 019c 991F rol r25
209 019e 620F add r22,r18
210 01a0 731F adc r23,r19
211 01a2 841F adc r24,r20
212 01a4 951F adc r25,r21
213 01a6 6E0D add r22,r14
214 01a8 7F1D adc r23,r15
215 01aa 801F adc r24,r16
216 01ac 911F adc r25,r17
217 01ae 24E0 ldi r18,lo8(4)
218 01b0 30E0 ldi r19,hi8(4)
219 01b2 40E0 ldi r20,hlo8(4)
220 01b4 50E0 ldi r21,hhi8(4)
221 01b6 0E94 0000 call __divmodsi4
222 01ba 3093 0000 sts (Mittelwert_AccRoll)+1,r19
223 01be 2093 0000 sts Mittelwert_AccRoll,r18
224 01c2 E090 0000 lds r14,AdWertAccHoch
225 01c6 F090 0000 lds r15,(AdWertAccHoch)+1
226 01ca 2091 0000 lds r18,Mittelwert_AccHoch
227 01ce 3091 0000 lds r19,(Mittelwert_AccHoch)+1
228 01d2 4427 clr r20
229 01d4 37FD sbrc r19,7
230 01d6 4095 com r20
231 01d8 542F mov r21,r20
232 01da CA01 movw r24,r20
233 01dc B901 movw r22,r18
234 01de 660F lsl r22
235 01e0 771F rol r23
236 01e2 881F rol r24
237 01e4 991F rol r25
238 01e6 620F add r22,r18
239 01e8 731F adc r23,r19
240 01ea 841F adc r24,r20
241 01ec 951F adc r25,r21
242 01ee 0027 clr r16
243 01f0 F7FC sbrc r15,7
244 01f2 0095 com r16
245 01f4 102F mov r17,r16
246 01f6 6E0D add r22,r14
247 01f8 7F1D adc r23,r15
248 01fa 801F adc r24,r16
249 01fc 911F adc r25,r17
250 01fe 24E0 ldi r18,lo8(4)
251 0200 30E0 ldi r19,hi8(4)
252 0202 40E0 ldi r20,hlo8(4)
253 0204 50E0 ldi r21,hhi8(4)
254 0206 0E94 0000 call __divmodsi4
255 020a 3093 0000 sts (Mittelwert_AccHoch)+1,r19
256 020e 2093 0000 sts Mittelwert_AccHoch,r18
257 0212 2091 0000 lds r18,AdWertAccNick
258 0216 3091 0000 lds r19,(AdWertAccNick)+1
259 021a C901 movw r24,r18
260 021c 880F lsl r24
261 021e 991F rol r25
262 0220 820F add r24,r18
263 0222 931F adc r25,r19
264 0224 880F lsl r24
265 0226 991F rol r25
266 0228 AA27 clr r26
267 022a 97FD sbrc r25,7
268 022c A095 com r26
269 022e BA2F mov r27,r26
270 0230 2091 0000 lds r18,IntegralAccNick
271 0234 3091 0000 lds r19,(IntegralAccNick)+1
272 0238 4091 0000 lds r20,(IntegralAccNick)+2
273 023c 5091 0000 lds r21,(IntegralAccNick)+3
274 0240 280F add r18,r24
275 0242 391F adc r19,r25
276 0244 4A1F adc r20,r26
277 0246 5B1F adc r21,r27
278 0248 2093 0000 sts IntegralAccNick,r18
279 024c 3093 0000 sts (IntegralAccNick)+1,r19
280 0250 4093 0000 sts (IntegralAccNick)+2,r20
281 0254 5093 0000 sts (IntegralAccNick)+3,r21
282 0258 2091 0000 lds r18,AdWertAccRoll
283 025c 3091 0000 lds r19,(AdWertAccRoll)+1
284 0260 C901 movw r24,r18
285 0262 880F lsl r24
286 0264 991F rol r25
287 0266 820F add r24,r18
288 0268 931F adc r25,r19
289 026a 880F lsl r24
290 026c 991F rol r25
291 026e AA27 clr r26
292 0270 97FD sbrc r25,7
293 0272 A095 com r26
294 0274 BA2F mov r27,r26
295 0276 2091 0000 lds r18,IntegralAccRoll
296 027a 3091 0000 lds r19,(IntegralAccRoll)+1
297 027e 4091 0000 lds r20,(IntegralAccRoll)+2
298 0282 5091 0000 lds r21,(IntegralAccRoll)+3
299 0286 280F add r18,r24
300 0288 391F adc r19,r25
301 028a 4A1F adc r20,r26
302 028c 5B1F adc r21,r27
303 028e 2093 0000 sts IntegralAccRoll,r18
304 0292 3093 0000 sts (IntegralAccRoll)+1,r19
305 0296 4093 0000 sts (IntegralAccRoll)+2,r20
306 029a 5093 0000 sts (IntegralAccRoll)+3,r21
307 029e 2091 0000 lds r18,AdWertAccNick
308 02a2 3091 0000 lds r19,(AdWertAccNick)+1
309 02a6 8091 0000 lds r24,NaviAccNick
310 02aa 9091 0000 lds r25,(NaviAccNick)+1
311 02ae 820F add r24,r18
312 02b0 931F adc r25,r19
313 02b2 9093 0000 sts (NaviAccNick)+1,r25
314 02b6 8093 0000 sts NaviAccNick,r24
315 02ba 2091 0000 lds r18,AdWertAccRoll
316 02be 3091 0000 lds r19,(AdWertAccRoll)+1
317 02c2 8091 0000 lds r24,NaviAccRoll
318 02c6 9091 0000 lds r25,(NaviAccRoll)+1
319 02ca 820F add r24,r18
320 02cc 931F adc r25,r19
321 02ce 9093 0000 sts (NaviAccRoll)+1,r25
322 02d2 8093 0000 sts NaviAccRoll,r24
323 02d6 8091 0000 lds r24,NaviCntAcc
324 02da 9091 0000 lds r25,(NaviCntAcc)+1
325 02de 0196 adiw r24,1
326 02e0 9093 0000 sts (NaviCntAcc)+1,r25
327 02e4 8093 0000 sts NaviCntAcc,r24
328 02e8 E090 0000 lds r14,Aktuell_az
329 02ec F090 0000 lds r15,(Aktuell_az)+1
330 02f0 A090 0000 lds r10,NeutralAccZ
331 02f4 B090 0000 lds r11,(NeutralAccZ)+1
332 02f8 C090 0000 lds r12,(NeutralAccZ)+2
333 02fc D090 0000 lds r13,(NeutralAccZ)+3
334 0300 6091 0000 lds r22,IntegralAccZ
335 0304 7091 0000 lds r23,(IntegralAccZ)+1
336 0308 8091 0000 lds r24,(IntegralAccZ)+2
337 030c 9091 0000 lds r25,(IntegralAccZ)+3
338 0310 0E94 0000 call __floatsisf
339 0314 3B01 movw r6,r22
340 0316 4C01 movw r8,r24
341 0318 0027 clr r16
342 031a F7FC sbrc r15,7
343 031c 0095 com r16
344 031e 102F mov r17,r16
345 0320 C801 movw r24,r16
346 0322 B701 movw r22,r14
347 0324 0E94 0000 call __floatsisf
348 0328 A601 movw r20,r12
349 032a 9501 movw r18,r10
350 032c 0E94 0000 call __subsf3
351 0330 9B01 movw r18,r22
352 0332 AC01 movw r20,r24
353 0334 C401 movw r24,r8
354 0336 B301 movw r22,r6
355 0338 0E94 0000 call __addsf3
356 033c 0E94 0000 call __fixsfsi
357 0340 6093 0000 sts IntegralAccZ,r22
358 0344 7093 0000 sts (IntegralAccZ)+1,r23
359 0348 8093 0000 sts (IntegralAccZ)+2,r24
360 034c 9093 0000 sts (IntegralAccZ)+3,r25
361 0350 8FEC ldi r24,lo8(-49)
362 0352 8093 7A00 sts 122,r24
363 0356 1092 0000 sts AdReady,__zero_reg__
364 035a 8091 0000 lds r24,Mess_IntegralRoll
365 035e 9091 0000 lds r25,(Mess_IntegralRoll)+1
366 0362 A091 0000 lds r26,(Mess_IntegralRoll)+2
367 0366 B091 0000 lds r27,(Mess_IntegralRoll)+3
368 036a 8F87 std Y+15,r24
369 036c 988B std Y+16,r25
370 036e A98B std Y+17,r26
371 0370 BA8B std Y+18,r27
372 0372 8091 0000 lds r24,Mess_IntegralNick
373 0376 9091 0000 lds r25,(Mess_IntegralNick)+1
374 037a A091 0000 lds r26,(Mess_IntegralNick)+2
375 037e B091 0000 lds r27,(Mess_IntegralNick)+3
376 0382 8B87 std Y+11,r24
377 0384 9C87 std Y+12,r25
378 0386 AD87 std Y+13,r26
379 0388 BE87 std Y+14,r27
380 038a 3201 movw r6,r4
381 038c 8824 clr r8
382 038e 77FC sbrc r7,7
383 0390 8094 com r8
384 0392 982C mov r9,r8
385 0394 8091 0000 lds r24,Mess_Integral_Gier
386 0398 9091 0000 lds r25,(Mess_Integral_Gier)+1
387 039c A091 0000 lds r26,(Mess_Integral_Gier)+2
388 03a0 B091 0000 lds r27,(Mess_Integral_Gier)+3
389 03a4 860D add r24,r6
390 03a6 971D adc r25,r7
391 03a8 A81D adc r26,r8
392 03aa B91D adc r27,r9
393 03ac 8E8B std Y+22,r24
394 03ae 9F8B std Y+23,r25
395 03b0 A88F std Y+24,r26
396 03b2 B98F std Y+25,r27
397 03b4 8093 0000 sts Mess_Integral_Gier,r24
398 03b8 9093 0000 sts (Mess_Integral_Gier)+1,r25
399 03bc A093 0000 sts (Mess_Integral_Gier)+2,r26
400 03c0 B093 0000 sts (Mess_Integral_Gier)+3,r27
401 03c4 2090 0000 lds r2,ErsatzKompass
402 03c8 3090 0000 lds r3,(ErsatzKompass)+1
403 03cc 4090 0000 lds r4,(ErsatzKompass)+2
404 03d0 5090 0000 lds r5,(ErsatzKompass)+3
405 03d4 260C add r2,r6
406 03d6 371C adc r3,r7
407 03d8 481C adc r4,r8
408 03da 591C adc r5,r9
409 03dc 2092 0000 sts ErsatzKompass,r2
410 03e0 3092 0000 sts (ErsatzKompass)+1,r3
411 03e4 4092 0000 sts (ErsatzKompass)+2,r4
412 03e8 5092 0000 sts (ErsatzKompass)+3,r5
413 03ec 9091 0000 lds r25,Looping_Nick
414 03f0 9A87 std Y+10,r25
415 03f2 9923 tst r25
416 03f4 01F4 brne .L14
417 03f6 8091 0000 lds r24,Looping_Roll
418 03fa 8823 tst r24
419 03fc 01F4 brne .+2
420 03fe 00C0 rjmp .L148
421 .L14:
422 0400 A091 0000 lds r26,EE_Parameter+8
423 0404 A983 std Y+1,r26
424 .L18:
425 0406 1092 0000 sts (KopplungsteilRollNick)+1,__zero_reg__
426 040a 1092 0000 sts KopplungsteilRollNick,__zero_reg__
427 040e 1092 0000 sts (KopplungsteilNickRoll)+1,__zero_reg__
428 0412 1092 0000 sts KopplungsteilNickRoll,__zero_reg__
429 0416 1092 0000 sts tmpl2.2653,__zero_reg__
430 041a 1092 0000 sts (tmpl2.2653)+1,__zero_reg__
431 041e 1092 0000 sts (tmpl2.2653)+2,__zero_reg__
432 0422 1092 0000 sts (tmpl2.2653)+3,__zero_reg__
433 0426 1092 0000 sts tmpl.2652,__zero_reg__
434 042a 1092 0000 sts (tmpl.2652)+1,__zero_reg__
435 042e 1092 0000 sts (tmpl.2652)+2,__zero_reg__
436 0432 1092 0000 sts (tmpl.2652)+3,__zero_reg__
437 0436 B091 0000 lds r27,Parameter_CouplingYawCorrection
438 043a BD8B std Y+21,r27
439 .L29:
440 043c E090 0000 lds r14,tmpl.2652
441 0440 F090 0000 lds r15,(tmpl.2652)+1
442 0444 0091 0000 lds r16,(tmpl.2652)+2
443 0448 1091 0000 lds r17,(tmpl.2652)+3
444 044c A090 0000 lds r10,tmpl2.2653
445 0450 B090 0000 lds r11,(tmpl2.2653)+1
446 0454 C090 0000 lds r12,(tmpl2.2653)+2
447 0458 D090 0000 lds r13,(tmpl2.2653)+3
448 045c C601 movw r24,r12
449 045e B501 movw r22,r10
450 0460 24E6 ldi r18,lo8(100)
451 0462 30E0 ldi r19,hi8(100)
452 0464 40E0 ldi r20,hlo8(100)
453 0466 50E0 ldi r21,hhi8(100)
454 0468 0E94 0000 call __divmodsi4
455 046c 4701 movw r8,r14
456 046e 821A sub r8,r18
457 0470 930A sbc r9,r19
458 0472 9092 0000 sts (TrimRoll)+1,r9
459 0476 8092 0000 sts TrimRoll,r8
460 047a C801 movw r24,r16
461 047c B701 movw r22,r14
462 047e 24E6 ldi r18,lo8(100)
463 0480 30E0 ldi r19,hi8(100)
464 0482 40E0 ldi r20,hlo8(100)
465 0484 50E0 ldi r21,hhi8(100)
466 0486 0E94 0000 call __divmodsi4
467 048a 3901 movw r6,r18
468 048c 6A18 sub r6,r10
469 048e 7B08 sbc r7,r11
470 0490 7092 0000 sts (TrimNick)+1,r7
471 0494 6092 0000 sts TrimNick,r6
472 0498 6091 0000 lds r22,GIER_GRAD_FAKTOR
473 049c 7091 0000 lds r23,(GIER_GRAD_FAKTOR)+1
474 04a0 8091 0000 lds r24,(GIER_GRAD_FAKTOR)+2
475 04a4 9091 0000 lds r25,(GIER_GRAD_FAKTOR)+3
476 04a8 28E6 ldi r18,lo8(360)
477 04aa 31E0 ldi r19,hi8(360)
478 04ac 40E0 ldi r20,hlo8(360)
479 04ae 50E0 ldi r21,hhi8(360)
480 04b0 0E94 0000 call __mulsi3
481 04b4 2616 cp r2,r22
482 04b6 3706 cpc r3,r23
483 04b8 4806 cpc r4,r24
484 04ba 5906 cpc r5,r25
485 04bc 04F0 brlt .L31
486 04be 261A sub r2,r22
487 04c0 370A sbc r3,r23
488 04c2 480A sbc r4,r24
489 04c4 590A sbc r5,r25
490 04c6 2092 0000 sts ErsatzKompass,r2
491 04ca 3092 0000 sts (ErsatzKompass)+1,r3
492 04ce 4092 0000 sts (ErsatzKompass)+2,r4
493 04d2 5092 0000 sts (ErsatzKompass)+3,r5
494 .L31:
495 04d6 57FC sbrc r5,7
496 04d8 00C0 rjmp .L149
497 .L33:
498 04da 6B89 ldd r22,Y+19
499 04dc 7C89 ldd r23,Y+20
500 04de 680D add r22,r8
501 04e0 791D adc r23,r9
502 04e2 9B01 movw r18,r22
503 04e4 4427 clr r20
504 04e6 37FD sbrc r19,7
505 04e8 4095 com r20
506 04ea 542F mov r21,r20
507 04ec 8091 0000 lds r24,Mess_IntegralRoll2
508 04f0 9091 0000 lds r25,(Mess_IntegralRoll2)+1
509 04f4 A091 0000 lds r26,(Mess_IntegralRoll2)+2
510 04f8 B091 0000 lds r27,(Mess_IntegralRoll2)+3
511 04fc 820F add r24,r18
512 04fe 931F adc r25,r19
513 0500 A41F adc r26,r20
514 0502 B51F adc r27,r21
515 0504 8093 0000 sts Mess_IntegralRoll2,r24
516 0508 9093 0000 sts (Mess_IntegralRoll2)+1,r25
517 050c A093 0000 sts (Mess_IntegralRoll2)+2,r26
518 0510 B093 0000 sts (Mess_IntegralRoll2)+3,r27
519 0514 8091 0000 lds r24,LageKorrekturRoll
520 0518 9091 0000 lds r25,(LageKorrekturRoll)+1
521 051c 681B sub r22,r24
522 051e 790B sbc r23,r25
523 0520 7B01 movw r14,r22
524 0522 0027 clr r16
525 0524 F7FC sbrc r15,7
526 0526 0095 com r16
527 0528 102F mov r17,r16
528 052a 8F85 ldd r24,Y+15
529 052c 9889 ldd r25,Y+16
530 052e A989 ldd r26,Y+17
531 0530 BA89 ldd r27,Y+18
532 0532 E80E add r14,r24
533 0534 F91E adc r15,r25
534 0536 0A1F adc r16,r26
535 0538 1B1F adc r17,r27
536 053a E092 0000 sts Mess_IntegralRoll,r14
537 053e F092 0000 sts (Mess_IntegralRoll)+1,r15
538 0542 0093 0000 sts (Mess_IntegralRoll)+2,r16
539 0546 1093 0000 sts (Mess_IntegralRoll)+3,r17
540 054a 2091 0000 lds r18,Umschlag180Roll
541 054e 3091 0000 lds r19,(Umschlag180Roll)+1
542 0552 4091 0000 lds r20,(Umschlag180Roll)+2
543 0556 5091 0000 lds r21,(Umschlag180Roll)+3
544 055a 2E15 cp r18,r14
545 055c 3F05 cpc r19,r15
546 055e 4007 cpc r20,r16
547 0560 5107 cpc r21,r17
548 0562 04F4 brge .L35
549 0564 78EA ldi r23,lo8(25000)
550 0566 E72E mov r14,r23
551 0568 71E6 ldi r23,hi8(25000)
552 056a F72E mov r15,r23
553 056c 012D mov r16,__zero_reg__
554 056e 112D mov r17,__zero_reg__
555 0570 E21A sub r14,r18
556 0572 F30A sbc r15,r19
557 0574 040B sbc r16,r20
558 0576 150B sbc r17,r21
559 0578 E092 0000 sts Mess_IntegralRoll,r14
560 057c F092 0000 sts (Mess_IntegralRoll)+1,r15
561 0580 0093 0000 sts (Mess_IntegralRoll)+2,r16
562 0584 1093 0000 sts (Mess_IntegralRoll)+3,r17
563 0588 E092 0000 sts Mess_IntegralRoll2,r14
564 058c F092 0000 sts (Mess_IntegralRoll2)+1,r15
565 0590 0093 0000 sts (Mess_IntegralRoll2)+2,r16
566 0594 1093 0000 sts (Mess_IntegralRoll2)+3,r17
567 .L35:
568 0598 8827 clr r24
569 059a 9927 clr r25
570 059c DC01 movw r26,r24
571 059e 821B sub r24,r18
572 05a0 930B sbc r25,r19
573 05a2 A40B sbc r26,r20
574 05a4 B50B sbc r27,r21
575 05a6 E090 0000 lds r14,Mess_IntegralRoll
576 05aa F090 0000 lds r15,(Mess_IntegralRoll)+1
577 05ae 0091 0000 lds r16,(Mess_IntegralRoll)+2
578 05b2 1091 0000 lds r17,(Mess_IntegralRoll)+3
579 05b6 E816 cp r14,r24
580 05b8 F906 cpc r15,r25
581 05ba 0A07 cpc r16,r26
582 05bc 1B07 cpc r17,r27
583 05be 04F4 brge .L37
584 05c0 68E5 ldi r22,lo8(-25000)
585 05c2 E62E mov r14,r22
586 05c4 6EE9 ldi r22,hi8(-25000)
587 05c6 F62E mov r15,r22
588 05c8 6FEF ldi r22,hlo8(-25000)
589 05ca 062F mov r16,r22
590 05cc 6FEF ldi r22,hhi8(-25000)
591 05ce 162F mov r17,r22
592 05d0 E20E add r14,r18
593 05d2 F31E adc r15,r19
594 05d4 041F adc r16,r20
595 05d6 151F adc r17,r21
596 05d8 E092 0000 sts Mess_IntegralRoll,r14
597 05dc F092 0000 sts (Mess_IntegralRoll)+1,r15
598 05e0 0093 0000 sts (Mess_IntegralRoll)+2,r16
599 05e4 1093 0000 sts (Mess_IntegralRoll)+3,r17
600 05e8 E092 0000 sts Mess_IntegralRoll2,r14
601 05ec F092 0000 sts (Mess_IntegralRoll2)+1,r15
602 05f0 0093 0000 sts (Mess_IntegralRoll2)+2,r16
603 05f4 1093 0000 sts (Mess_IntegralRoll2)+3,r17
604 .L37:
605 05f8 6A8D ldd r22,Y+26
606 05fa 7B8D ldd r23,Y+27
607 05fc 660D add r22,r6
608 05fe 771D adc r23,r7
609 0600 9B01 movw r18,r22
610 0602 4427 clr r20
611 0604 37FD sbrc r19,7
612 0606 4095 com r20
613 0608 542F mov r21,r20
614 060a 8091 0000 lds r24,Mess_IntegralNick2
615 060e 9091 0000 lds r25,(Mess_IntegralNick2)+1
616 0612 A091 0000 lds r26,(Mess_IntegralNick2)+2
617 0616 B091 0000 lds r27,(Mess_IntegralNick2)+3
618 061a 820F add r24,r18
619 061c 931F adc r25,r19
620 061e A41F adc r26,r20
621 0620 B51F adc r27,r21
622 0622 8093 0000 sts Mess_IntegralNick2,r24
623 0626 9093 0000 sts (Mess_IntegralNick2)+1,r25
624 062a A093 0000 sts (Mess_IntegralNick2)+2,r26
625 062e B093 0000 sts (Mess_IntegralNick2)+3,r27
626 0632 8091 0000 lds r24,LageKorrekturNick
627 0636 9091 0000 lds r25,(LageKorrekturNick)+1
628 063a 681B sub r22,r24
629 063c 790B sbc r23,r25
630 063e 9B01 movw r18,r22
631 0640 4427 clr r20
632 0642 37FD sbrc r19,7
633 0644 4095 com r20
634 0646 542F mov r21,r20
635 0648 8B85 ldd r24,Y+11
636 064a 9C85 ldd r25,Y+12
637 064c AD85 ldd r26,Y+13
638 064e BE85 ldd r27,Y+14
639 0650 280F add r18,r24
640 0652 391F adc r19,r25
641 0654 4A1F adc r20,r26
642 0656 5B1F adc r21,r27
643 0658 2093 0000 sts Mess_IntegralNick,r18
644 065c 3093 0000 sts (Mess_IntegralNick)+1,r19
645 0660 4093 0000 sts (Mess_IntegralNick)+2,r20
646 0664 5093 0000 sts (Mess_IntegralNick)+3,r21
647 0668 A090 0000 lds r10,Umschlag180Nick
648 066c B090 0000 lds r11,(Umschlag180Nick)+1
649 0670 C090 0000 lds r12,(Umschlag180Nick)+2
650 0674 D090 0000 lds r13,(Umschlag180Nick)+3
651 0678 A216 cp r10,r18
652 067a B306 cpc r11,r19
653 067c C406 cpc r12,r20
654 067e D506 cpc r13,r21
655 0680 04F4 brge .L39
656 0682 28EA ldi r18,lo8(25000)
657 0684 31E6 ldi r19,hi8(25000)
658 0686 40E0 ldi r20,hlo8(25000)
659 0688 50E0 ldi r21,hhi8(25000)
660 068a 2A19 sub r18,r10
661 068c 3B09 sbc r19,r11
662 068e 4C09 sbc r20,r12
663 0690 5D09 sbc r21,r13
664 0692 2093 0000 sts Mess_IntegralNick,r18
665 0696 3093 0000 sts (Mess_IntegralNick)+1,r19
666 069a 4093 0000 sts (Mess_IntegralNick)+2,r20
667 069e 5093 0000 sts (Mess_IntegralNick)+3,r21
668 06a2 2093 0000 sts Mess_IntegralNick2,r18
669 06a6 3093 0000 sts (Mess_IntegralNick2)+1,r19
670 06aa 4093 0000 sts (Mess_IntegralNick2)+2,r20
671 06ae 5093 0000 sts (Mess_IntegralNick2)+3,r21
672 .L39:
673 06b2 8827 clr r24
674 06b4 9927 clr r25
675 06b6 DC01 movw r26,r24
676 06b8 8A19 sub r24,r10
677 06ba 9B09 sbc r25,r11
678 06bc AC09 sbc r26,r12
679 06be BD09 sbc r27,r13
680 06c0 2091 0000 lds r18,Mess_IntegralNick
681 06c4 3091 0000 lds r19,(Mess_IntegralNick)+1
682 06c8 4091 0000 lds r20,(Mess_IntegralNick)+2
683 06cc 5091 0000 lds r21,(Mess_IntegralNick)+3
684 06d0 2817 cp r18,r24
685 06d2 3907 cpc r19,r25
686 06d4 4A07 cpc r20,r26
687 06d6 5B07 cpc r21,r27
688 06d8 04F4 brge .L41
689 06da A601 movw r20,r12
690 06dc 9501 movw r18,r10
691 06de 285A subi r18,lo8(-(-25000))
692 06e0 3146 sbci r19,hi8(-(-25000))
693 06e2 4040 sbci r20,hlo8(-(-25000))
694 06e4 5040 sbci r21,hhi8(-(-25000))
695 06e6 2093 0000 sts Mess_IntegralNick,r18
696 06ea 3093 0000 sts (Mess_IntegralNick)+1,r19
697 06ee 4093 0000 sts (Mess_IntegralNick)+2,r20
698 06f2 5093 0000 sts (Mess_IntegralNick)+3,r21
699 06f6 2093 0000 sts Mess_IntegralNick2,r18
700 06fa 3093 0000 sts (Mess_IntegralNick2)+1,r19
701 06fe 4093 0000 sts (Mess_IntegralNick2)+2,r20
702 0702 5093 0000 sts (Mess_IntegralNick2)+3,r21
703 .L41:
704 0706 8E89 ldd r24,Y+22
705 0708 9F89 ldd r25,Y+23
706 070a A88D ldd r26,Y+24
707 070c B98D ldd r27,Y+25
708 070e 8093 0000 sts Integral_Gier,r24
709 0712 9093 0000 sts (Integral_Gier)+1,r25
710 0716 A093 0000 sts (Integral_Gier)+2,r26
711 071a B093 0000 sts (Integral_Gier)+3,r27
712 071e 2093 0000 sts IntegralNick,r18
713 0722 3093 0000 sts (IntegralNick)+1,r19
714 0726 4093 0000 sts (IntegralNick)+2,r20
715 072a 5093 0000 sts (IntegralNick)+3,r21
716 072e E092 0000 sts IntegralRoll,r14
717 0732 F092 0000 sts (IntegralRoll)+1,r15
718 0736 0093 0000 sts (IntegralRoll)+2,r16
719 073a 1093 0000 sts (IntegralRoll)+3,r17
720 073e 8091 0000 lds r24,Mess_IntegralNick2
721 0742 9091 0000 lds r25,(Mess_IntegralNick2)+1
722 0746 A091 0000 lds r26,(Mess_IntegralNick2)+2
723 074a B091 0000 lds r27,(Mess_IntegralNick2)+3
724 074e 8093 0000 sts IntegralNick2,r24
725 0752 9093 0000 sts (IntegralNick2)+1,r25
726 0756 A093 0000 sts (IntegralNick2)+2,r26
727 075a B093 0000 sts (IntegralNick2)+3,r27
728 075e 8091 0000 lds r24,Mess_IntegralRoll2
729 0762 9091 0000 lds r25,(Mess_IntegralRoll2)+1
730 0766 A091 0000 lds r26,(Mess_IntegralRoll2)+2
731 076a B091 0000 lds r27,(Mess_IntegralRoll2)+3
732 076e 8093 0000 sts IntegralRoll2,r24
733 0772 9093 0000 sts (IntegralRoll2)+1,r25
734 0776 A093 0000 sts (IntegralRoll2)+2,r26
735 077a B093 0000 sts (IntegralRoll2)+3,r27
736 077e 8091 0000 lds r24,HiResNick
737 0782 9091 0000 lds r25,(HiResNick)+1
738 0786 97FD sbrc r25,7
739 0788 00C0 rjmp .L150
740 .L43:
741 078a 9595 asr r25
742 078c 8795 ror r24
743 078e 9595 asr r25
744 0790 8795 ror r24
745 0792 9595 asr r25
746 0794 8795 ror r24
747 0796 9093 0000 sts (MesswertNick)+1,r25
748 079a 8093 0000 sts MesswertNick,r24
749 079e 8091 0000 lds r24,HiResRoll
750 07a2 9091 0000 lds r25,(HiResRoll)+1
751 07a6 97FD sbrc r25,7
752 07a8 00C0 rjmp .L151
753 .L44:
754 07aa 9595 asr r25
755 07ac 8795 ror r24
756 07ae 9595 asr r25
757 07b0 8795 ror r24
758 07b2 9595 asr r25
759 07b4 8795 ror r24
760 07b6 9093 0000 sts (MesswertRoll)+1,r25
761 07ba 8093 0000 sts MesswertRoll,r24
762 07be 8091 0000 lds r24,AdWertNick
763 07c2 9091 0000 lds r25,(AdWertNick)+1
764 07c6 0F97 sbiw r24,15
765 07c8 04F4 brge .L45
766 07ca 88E1 ldi r24,lo8(-1000)
767 07cc 9CEF ldi r25,hi8(-1000)
768 07ce 9093 0000 sts (MesswertNick)+1,r25
769 07d2 8093 0000 sts MesswertNick,r24
770 .L45:
771 07d6 8091 0000 lds r24,AdWertNick
772 07da 9091 0000 lds r25,(AdWertNick)+1
773 07de 0797 sbiw r24,7
774 07e0 04F4 brge .L47
775 07e2 80E3 ldi r24,lo8(-2000)
776 07e4 98EF ldi r25,hi8(-2000)
777 07e6 9093 0000 sts (MesswertNick)+1,r25
778 07ea 8093 0000 sts MesswertNick,r24
779 .L47:
780 07ee 2091 0000 lds r18,PlatinenVersion
781 07f2 2A30 cpi r18,lo8(10)
782 07f4 01F4 brne .+2
783 07f6 00C0 rjmp .L152
784 07f8 8091 0000 lds r24,AdWertNick
785 07fc 9091 0000 lds r25,(AdWertNick)+1
786 0800 815D subi r24,lo8(2001)
787 0802 9740 sbci r25,hi8(2001)
788 0804 04F0 brlt .L55
789 0806 88EE ldi r24,lo8(1000)
790 0808 93E0 ldi r25,hi8(1000)
791 080a 9093 0000 sts (MesswertNick)+1,r25
792 080e 8093 0000 sts MesswertNick,r24
793 .L55:
794 0812 8091 0000 lds r24,AdWertNick
795 0816 9091 0000 lds r25,(AdWertNick)+1
796 081a 805E subi r24,lo8(2016)
797 081c 9740 sbci r25,hi8(2016)
798 081e 04F0 brlt .+2
799 0820 00C0 rjmp .L144
800 .L53:
801 0822 8091 0000 lds r24,AdWertRoll
802 0826 9091 0000 lds r25,(AdWertRoll)+1
803 082a 0F97 sbiw r24,15
804 082c 04F4 brge .L58
805 082e 88E1 ldi r24,lo8(-1000)
806 0830 9CEF ldi r25,hi8(-1000)
807 0832 9093 0000 sts (MesswertRoll)+1,r25
808 0836 8093 0000 sts MesswertRoll,r24
809 .L58:
810 083a 8091 0000 lds r24,AdWertRoll
811 083e 9091 0000 lds r25,(AdWertRoll)+1
812 0842 0797 sbiw r24,7
813 0844 04F4 brge .L60
814 0846 80E3 ldi r24,lo8(-2000)
815 0848 98EF ldi r25,hi8(-2000)
816 084a 9093 0000 sts (MesswertRoll)+1,r25
817 084e 8093 0000 sts MesswertRoll,r24
818 .L60:
819 0852 2A30 cpi r18,lo8(10)
820 0854 01F4 brne .+2
821 0856 00C0 rjmp .L153
822 0858 8091 0000 lds r24,AdWertRoll
823 085c 9091 0000 lds r25,(AdWertRoll)+1
824 0860 815D subi r24,lo8(2001)
825 0862 9740 sbci r25,hi8(2001)
826 0864 04F0 brlt .L68
827 0866 88EE ldi r24,lo8(1000)
828 0868 93E0 ldi r25,hi8(1000)
829 086a 9093 0000 sts (MesswertRoll)+1,r25
830 086e 8093 0000 sts MesswertRoll,r24
831 .L68:
832 0872 8091 0000 lds r24,AdWertRoll
833 0876 9091 0000 lds r25,(AdWertRoll)+1
834 087a 805E subi r24,lo8(2016)
835 087c 9740 sbci r25,hi8(2016)
836 087e 04F0 brlt .+2
837 0880 00C0 rjmp .L145
838 .L66:
839 0882 6091 0000 lds r22,Parameter_Gyro_D
840 0886 6623 tst r22
841 0888 01F4 brne .+2
842 088a 00C0 rjmp .L71
843 088c 4091 0000 lds r20,HiResNick
844 0890 5091 0000 lds r21,(HiResNick)+1
845 0894 8091 0000 lds r24,oldNick.2656
846 0898 9091 0000 lds r25,(oldNick.2656)+1
847 089c 481B sub r20,r24
848 089e 590B sbc r21,r25
849 08a0 5093 0000 sts (d2Nick.2659)+1,r21
850 08a4 4093 0000 sts d2Nick.2659,r20
851 08a8 2091 0000 lds r18,HiResNick
852 08ac 3091 0000 lds r19,(HiResNick)+1
853 08b0 280F add r18,r24
854 08b2 391F adc r19,r25
855 08b4 37FD sbrc r19,7
856 08b6 00C0 rjmp .L154
857 .L73:
858 08b8 3595 asr r19
859 08ba 2795 ror r18
860 08bc 3093 0000 sts (oldNick.2656)+1,r19
861 08c0 2093 0000 sts oldNick.2656,r18
862 08c4 4138 cpi r20,129
863 08c6 5105 cpc r21,__zero_reg__
864 08c8 04F4 brge .+2
865 08ca 00C0 rjmp .L74
866 08cc 80E8 ldi r24,lo8(128)
867 08ce 90E0 ldi r25,hi8(128)
868 08d0 9093 0000 sts (d2Nick.2659)+1,r25
869 08d4 8093 0000 sts d2Nick.2659,r24
870 .L76:
871 08d8 E62F mov r30,r22
872 08da F0E0 ldi r31,lo8(0)
873 08dc 8091 0000 lds r24,d2Nick.2659
874 08e0 9091 0000 lds r25,(d2Nick.2659)+1
875 08e4 E89F mul r30,r24
876 08e6 B001 movw r22,r0
877 08e8 E99F mul r30,r25
878 08ea 700D add r23,r0
879 08ec F89F mul r31,r24
880 08ee 700D add r23,r0
881 08f0 1124 clr r1
882 08f2 9B01 movw r18,r22
883 08f4 77FD sbrc r23,7
884 08f6 00C0 rjmp .L155
885 .L78:
886 08f8 3595 asr r19
887 08fa 2795 ror r18
888 08fc 3595 asr r19
889 08fe 2795 ror r18
890 0900 3595 asr r19
891 0902 2795 ror r18
892 0904 3595 asr r19
893 0906 2795 ror r18
894 0908 8091 0000 lds r24,MesswertNick
895 090c 9091 0000 lds r25,(MesswertNick)+1
896 0910 820F add r24,r18
897 0912 931F adc r25,r19
898 0914 9093 0000 sts (MesswertNick)+1,r25
899 0918 8093 0000 sts MesswertNick,r24
900 091c 4091 0000 lds r20,HiResRoll
901 0920 5091 0000 lds r21,(HiResRoll)+1
902 0924 8091 0000 lds r24,oldRoll.2657
903 0928 9091 0000 lds r25,(oldRoll.2657)+1
904 092c 481B sub r20,r24
905 092e 590B sbc r21,r25
906 0930 5093 0000 sts (d2Roll.2658)+1,r21
907 0934 4093 0000 sts d2Roll.2658,r20
908 0938 2091 0000 lds r18,HiResRoll
909 093c 3091 0000 lds r19,(HiResRoll)+1
910 0940 280F add r18,r24
911 0942 391F adc r19,r25
912 0944 37FD sbrc r19,7
913 0946 00C0 rjmp .L156
914 .L79:
915 0948 3595 asr r19
916 094a 2795 ror r18
917 094c 3093 0000 sts (oldRoll.2657)+1,r19
918 0950 2093 0000 sts oldRoll.2657,r18
919 0954 4138 cpi r20,129
920 0956 5105 cpc r21,__zero_reg__
921 0958 04F4 brge .+2
922 095a 00C0 rjmp .L80
923 095c 80E8 ldi r24,lo8(128)
924 095e 90E0 ldi r25,hi8(128)
925 0960 9093 0000 sts (d2Roll.2658)+1,r25
926 0964 8093 0000 sts d2Roll.2658,r24
927 .L82:
928 0968 8091 0000 lds r24,d2Roll.2658
929 096c 9091 0000 lds r25,(d2Roll.2658)+1
930 0970 E89F mul r30,r24
931 0972 A001 movw r20,r0
932 0974 E99F mul r30,r25
933 0976 500D add r21,r0
934 0978 F89F mul r31,r24
935 097a 500D add r21,r0
936 097c 1124 clr r1
937 097e 9A01 movw r18,r20
938 0980 57FD sbrc r21,7
939 0982 00C0 rjmp .L157
940 .L84:
941 0984 3595 asr r19
942 0986 2795 ror r18
943 0988 3595 asr r19
944 098a 2795 ror r18
945 098c 3595 asr r19
946 098e 2795 ror r18
947 0990 3595 asr r19
948 0992 2795 ror r18
949 0994 8091 0000 lds r24,MesswertRoll
950 0998 9091 0000 lds r25,(MesswertRoll)+1
951 099c 820F add r24,r18
952 099e 931F adc r25,r19
953 09a0 9093 0000 sts (MesswertRoll)+1,r25
954 09a4 8093 0000 sts MesswertRoll,r24
955 09a8 8091 0000 lds r24,HiResNick
956 09ac 9091 0000 lds r25,(HiResNick)+1
957 09b0 680F add r22,r24
958 09b2 791F adc r23,r25
959 09b4 7093 0000 sts (HiResNick)+1,r23
960 09b8 6093 0000 sts HiResNick,r22
961 09bc 8091 0000 lds r24,HiResRoll
962 09c0 9091 0000 lds r25,(HiResRoll)+1
963 09c4 480F add r20,r24
964 09c6 591F adc r21,r25
965 09c8 5093 0000 sts (HiResRoll)+1,r21
966 09cc 4093 0000 sts HiResRoll,r20
967 .L71:
968 09d0 8B89 ldd r24,Y+19
969 09d2 9C89 ldd r25,Y+20
970 09d4 1816 cp __zero_reg__,r24
971 09d6 1906 cpc __zero_reg__,r25
972 09d8 04F0 brlt .+2
973 09da 00C0 rjmp .L85
974 09dc 9D89 ldd r25,Y+21
975 09de E92E mov r14,r25
976 09e0 FF24 clr r15
977 09e2 00E0 ldi r16,lo8(0)
978 09e4 10E0 ldi r17,hi8(0)
979 09e6 6091 0000 lds r22,KopplungsteilNickRoll
980 09ea 7091 0000 lds r23,(KopplungsteilNickRoll)+1
981 09ee 77FD sbrc r23,7
982 09f0 00C0 rjmp .L158
983 .L87:
984 09f2 8827 clr r24
985 09f4 77FD sbrc r23,7
986 09f6 8095 com r24
987 09f8 982F mov r25,r24
988 09fa A801 movw r20,r16
989 09fc 9701 movw r18,r14
990 09fe 0E94 0000 call __mulsi3
991 0a02 20E4 ldi r18,lo8(64)
992 0a04 30E0 ldi r19,hi8(64)
993 0a06 40E0 ldi r20,hlo8(64)
994 0a08 50E0 ldi r21,hhi8(64)
995 0a0a 0E94 0000 call __divmodsi4
996 0a0e 820E add r8,r18
997 0a10 931E adc r9,r19
998 0a12 9092 0000 sts (TrimRoll)+1,r9
999 0a16 8092 0000 sts TrimRoll,r8
1000 0a1a EA8D ldd r30,Y+26
1001 0a1c FB8D ldd r31,Y+27
1002 0a1e 1E16 cp __zero_reg__,r30
1003 0a20 1F06 cpc __zero_reg__,r31
1004 0a22 04F0 brlt .+2
1005 0a24 00C0 rjmp .L90
1006 .L171:
1007 0a26 2091 0000 lds r18,KopplungsteilRollNick
1008 0a2a 3091 0000 lds r19,(KopplungsteilRollNick)+1
1009 0a2e 37FD sbrc r19,7
1010 0a30 00C0 rjmp .L159
1011 .L92:
1012 0a32 4427 clr r20
1013 0a34 37FD sbrc r19,7
1014 0a36 4095 com r20
1015 0a38 542F mov r21,r20
1016 0a3a C801 movw r24,r16
1017 0a3c B701 movw r22,r14
1018 0a3e 0E94 0000 call __mulsi3
1019 0a42 20E4 ldi r18,lo8(64)
1020 0a44 30E0 ldi r19,hi8(64)
1021 0a46 40E0 ldi r20,hlo8(64)
1022 0a48 50E0 ldi r21,hhi8(64)
1023 0a4a 0E94 0000 call __divmodsi4
1024 0a4e 620E add r6,r18
1025 0a50 731E adc r7,r19
1026 0a52 7092 0000 sts (TrimNick)+1,r7
1027 0a56 6092 0000 sts TrimNick,r6
1028 0a5a F981 ldd r31,Y+1
1029 0a5c F7FD sbrc r31,7
1030 0a5e 00C0 rjmp .L160
1031 .L95:
1032 0a60 8091 0000 lds r24,EE_Parameter+4
1033 0a64 E82F mov r30,r24
1034 0a66 F0E0 ldi r31,lo8(0)
1035 0a68 EE0F lsl r30
1036 0a6a FF1F rol r31
1037 0a6c E050 subi r30,lo8(-(PPM_in))
1038 0a6e F040 sbci r31,hi8(-(PPM_in))
1039 0a70 8081 ld r24,Z
1040 0a72 9181 ldd r25,Z+1
1041 0a74 A091 0000 lds r26,Poti1
1042 0a78 B091 0000 lds r27,(Poti1)+1
1043 0a7c 8259 subi r24,lo8(-(110))
1044 0a7e 9F4F sbci r25,hi8(-(110))
1045 0a80 A817 cp r26,r24
1046 0a82 B907 cpc r27,r25
1047 0a84 04F0 brlt .+2
1048 0a86 00C0 rjmp .L106
1049 0a88 1196 adiw r26,1
1050 0a8a B093 0000 sts (Poti1)+1,r27
1051 0a8e A093 0000 sts Poti1,r26
1052 .L108:
1053 0a92 8091 0000 lds r24,EE_Parameter+5
1054 0a96 E82F mov r30,r24
1055 0a98 F0E0 ldi r31,lo8(0)
1056 0a9a EE0F lsl r30
1057 0a9c FF1F rol r31
1058 0a9e E050 subi r30,lo8(-(PPM_in))
1059 0aa0 F040 sbci r31,hi8(-(PPM_in))
1060 0aa2 8081 ld r24,Z
1061 0aa4 9181 ldd r25,Z+1
1062 0aa6 6091 0000 lds r22,Poti2
1063 0aaa 7091 0000 lds r23,(Poti2)+1
1064 0aae 8259 subi r24,lo8(-(110))
1065 0ab0 9F4F sbci r25,hi8(-(110))
1066 0ab2 6817 cp r22,r24
1067 0ab4 7907 cpc r23,r25
1068 0ab6 04F0 brlt .+2
1069 0ab8 00C0 rjmp .L111
1070 0aba 6F5F subi r22,lo8(-(1))
1071 0abc 7F4F sbci r23,hi8(-(1))
1072 0abe 7093 0000 sts (Poti2)+1,r23
1073 0ac2 6093 0000 sts Poti2,r22
1074 .L113:
1075 0ac6 8091 0000 lds r24,EE_Parameter+6
1076 0aca E82F mov r30,r24
1077 0acc F0E0 ldi r31,lo8(0)
1078 0ace EE0F lsl r30
1079 0ad0 FF1F rol r31
1080 0ad2 E050 subi r30,lo8(-(PPM_in))
1081 0ad4 F040 sbci r31,hi8(-(PPM_in))
1082 0ad6 8081 ld r24,Z
1083 0ad8 9181 ldd r25,Z+1
1084 0ada 4091 0000 lds r20,Poti3
1085 0ade 5091 0000 lds r21,(Poti3)+1
1086 0ae2 8259 subi r24,lo8(-(110))
1087 0ae4 9F4F sbci r25,hi8(-(110))
1088 0ae6 4817 cp r20,r24
1089 0ae8 5907 cpc r21,r25
1090 0aea 04F0 brlt .+2
1091 0aec 00C0 rjmp .L116
1092 0aee 4F5F subi r20,lo8(-(1))
1093 0af0 5F4F sbci r21,hi8(-(1))
1094 0af2 5093 0000 sts (Poti3)+1,r21
1095 0af6 4093 0000 sts Poti3,r20
1096 .L118:
1097 0afa 8091 0000 lds r24,EE_Parameter+7
1098 0afe E82F mov r30,r24
1099 0b00 F0E0 ldi r31,lo8(0)
1100 0b02 EE0F lsl r30
1101 0b04 FF1F rol r31
1102 0b06 E050 subi r30,lo8(-(PPM_in))
1103 0b08 F040 sbci r31,hi8(-(PPM_in))
1104 0b0a 8081 ld r24,Z
1105 0b0c 9181 ldd r25,Z+1
1106 0b0e 2091 0000 lds r18,Poti4
1107 0b12 3091 0000 lds r19,(Poti4)+1
1108 0b16 8259 subi r24,lo8(-(110))
1109 0b18 9F4F sbci r25,hi8(-(110))
1110 0b1a 2817 cp r18,r24
1111 0b1c 3907 cpc r19,r25
1112 0b1e 04F0 brlt .+2
1113 0b20 00C0 rjmp .L121
1114 0b22 2F5F subi r18,lo8(-(1))
1115 0b24 3F4F sbci r19,hi8(-(1))
1116 0b26 3093 0000 sts (Poti4)+1,r19
1117 0b2a 2093 0000 sts Poti4,r18
1118 .L123:
1119 0b2e B7FD sbrc r27,7
1120 0b30 00C0 rjmp .L161
1121 .L126:
1122 0b32 AF3F cpi r26,255
1123 0b34 B105 cpc r27,__zero_reg__
1124 0b36 01F0 breq .+4
1125 0b38 04F0 brlt .+2
1126 0b3a 00C0 rjmp .L162
1127 .L128:
1128 0b3c 77FD sbrc r23,7
1129 0b3e 00C0 rjmp .L163
1130 .L130:
1131 0b40 6F3F cpi r22,255
1132 0b42 7105 cpc r23,__zero_reg__
1133 0b44 01F0 breq .+4
1134 0b46 04F0 brlt .+2
1135 0b48 00C0 rjmp .L164
1136 .L132:
1137 0b4a 57FD sbrc r21,7
1138 0b4c 00C0 rjmp .L165
1139 .L134:
1140 0b4e 4F3F cpi r20,255
1141 0b50 5105 cpc r21,__zero_reg__
1142 0b52 01F0 breq .+4
1143 0b54 04F0 brlt .+2
1144 0b56 00C0 rjmp .L166
1145 .L136:
1146 0b58 37FD sbrc r19,7
1147 0b5a 00C0 rjmp .L167
1148 .L138:
1149 0b5c 2F3F cpi r18,255
1150 0b5e 3105 cpc r19,__zero_reg__
1151 0b60 01F0 breq .+2
1152 0b62 04F4 brge .+2
1153 0b64 00C0 rjmp .L142
1154 0b66 8FEF ldi r24,lo8(255)
1155 0b68 90E0 ldi r25,hi8(255)
1156 0b6a 9093 0000 sts (Poti4)+1,r25
1157 0b6e 8093 0000 sts Poti4,r24
1158 0b72 00C0 rjmp .L142
1159 .L153:
1160 0b74 8091 0000 lds r24,AdWertRoll
1161 0b78 9091 0000 lds r25,(AdWertRoll)+1
1162 0b7c 835F subi r24,lo8(1011)
1163 0b7e 9340 sbci r25,hi8(1011)
1164 0b80 04F0 brlt .L64
1165 0b82 88EE ldi r24,lo8(1000)
1166 0b84 93E0 ldi r25,hi8(1000)
1167 0b86 9093 0000 sts (MesswertRoll)+1,r25
1168 0b8a 8093 0000 sts MesswertRoll,r24
1169 .L64:
1170 0b8e 8091 0000 lds r24,AdWertRoll
1171 0b92 9091 0000 lds r25,(AdWertRoll)+1
1172 0b96 8A5F subi r24,lo8(1018)
1173 0b98 9340 sbci r25,hi8(1018)
1174 0b9a 04F4 brge .+2
1175 0b9c 00C0 rjmp .L66
1176 .L145:
1177 0b9e 80ED ldi r24,lo8(2000)
1178 0ba0 97E0 ldi r25,hi8(2000)
1179 0ba2 9093 0000 sts (MesswertRoll)+1,r25
1180 0ba6 8093 0000 sts MesswertRoll,r24
1181 0baa 00C0 rjmp .L66
1182 .L152:
1183 0bac 8091 0000 lds r24,AdWertNick
1184 0bb0 9091 0000 lds r25,(AdWertNick)+1
1185 0bb4 835F subi r24,lo8(1011)
1186 0bb6 9340 sbci r25,hi8(1011)
1187 0bb8 04F0 brlt .L51
1188 0bba 88EE ldi r24,lo8(1000)
1189 0bbc 93E0 ldi r25,hi8(1000)
1190 0bbe 9093 0000 sts (MesswertNick)+1,r25
1191 0bc2 8093 0000 sts MesswertNick,r24
1192 .L51:
1193 0bc6 8091 0000 lds r24,AdWertNick
1194 0bca 9091 0000 lds r25,(AdWertNick)+1
1195 0bce 8A5F subi r24,lo8(1018)
1196 0bd0 9340 sbci r25,hi8(1018)
1197 0bd2 04F4 brge .+2
1198 0bd4 00C0 rjmp .L53
1199 .L144:
1200 0bd6 80ED ldi r24,lo8(2000)
1201 0bd8 97E0 ldi r25,hi8(2000)
1202 0bda 9093 0000 sts (MesswertNick)+1,r25
1203 0bde 8093 0000 sts MesswertNick,r24
1204 0be2 00C0 rjmp .L53
1205 .L121:
1206 0be4 8081 ld r24,Z
1207 0be6 9181 ldd r25,Z+1
1208 0be8 8259 subi r24,lo8(-(110))
1209 0bea 9F4F sbci r25,hi8(-(110))
1210 0bec 8217 cp r24,r18
1211 0bee 9307 cpc r25,r19
1212 0bf0 04F0 brlt .+2
1213 0bf2 00C0 rjmp .L123
1214 0bf4 2115 cp r18,__zero_reg__
1215 0bf6 3105 cpc r19,__zero_reg__
1216 0bf8 01F4 brne .+2
1217 0bfa 00C0 rjmp .L123
1218 0bfc 2150 subi r18,lo8(-(-1))
1219 0bfe 3040 sbci r19,hi8(-(-1))
1220 0c00 3093 0000 sts (Poti4)+1,r19
1221 0c04 2093 0000 sts Poti4,r18
1222 0c08 B7FF sbrs r27,7
1223 0c0a 00C0 rjmp .L126
1224 .L161:
1225 0c0c 1092 0000 sts (Poti1)+1,__zero_reg__
1226 0c10 1092 0000 sts Poti1,__zero_reg__
1227 0c14 77FF sbrs r23,7
1228 0c16 00C0 rjmp .L130
1229 .L163:
1230 0c18 1092 0000 sts (Poti2)+1,__zero_reg__
1231 0c1c 1092 0000 sts Poti2,__zero_reg__
1232 0c20 57FF sbrs r21,7
1233 0c22 00C0 rjmp .L134
1234 .L165:
1235 0c24 1092 0000 sts (Poti3)+1,__zero_reg__
1236 0c28 1092 0000 sts Poti3,__zero_reg__
1237 0c2c 37FF sbrs r19,7
1238 0c2e 00C0 rjmp .L138
1239 .L167:
1240 0c30 1092 0000 sts (Poti4)+1,__zero_reg__
1241 0c34 1092 0000 sts Poti4,__zero_reg__
1242 0c38 00C0 rjmp .L142
1243 .L116:
1244 0c3a 8081 ld r24,Z
1245 0c3c 9181 ldd r25,Z+1
1246 0c3e 8259 subi r24,lo8(-(110))
1247 0c40 9F4F sbci r25,hi8(-(110))
1248 0c42 8417 cp r24,r20
1249 0c44 9507 cpc r25,r21
1250 0c46 04F0 brlt .+2
1251 0c48 00C0 rjmp .L118
1252 0c4a 4115 cp r20,__zero_reg__
1253 0c4c 5105 cpc r21,__zero_reg__
1254 0c4e 01F4 brne .+2
1255 0c50 00C0 rjmp .L118
1256 0c52 4150 subi r20,lo8(-(-1))
1257 0c54 5040 sbci r21,hi8(-(-1))
1258 0c56 5093 0000 sts (Poti3)+1,r21
1259 0c5a 4093 0000 sts Poti3,r20
1260 0c5e 00C0 rjmp .L118
1261 .L111:
1262 0c60 8081 ld r24,Z
1263 0c62 9181 ldd r25,Z+1
1264 0c64 8259 subi r24,lo8(-(110))
1265 0c66 9F4F sbci r25,hi8(-(110))
1266 0c68 8617 cp r24,r22
1267 0c6a 9707 cpc r25,r23
1268 0c6c 04F0 brlt .+2
1269 0c6e 00C0 rjmp .L113
1270 0c70 6115 cp r22,__zero_reg__
1271 0c72 7105 cpc r23,__zero_reg__
1272 0c74 01F4 brne .+2
1273 0c76 00C0 rjmp .L113
1274 0c78 6150 subi r22,lo8(-(-1))
1275 0c7a 7040 sbci r23,hi8(-(-1))
1276 0c7c 7093 0000 sts (Poti2)+1,r23
1277 0c80 6093 0000 sts Poti2,r22
1278 0c84 00C0 rjmp .L113
1279 .L106:
1280 0c86 8081 ld r24,Z
1281 0c88 9181 ldd r25,Z+1
1282 0c8a 8259 subi r24,lo8(-(110))
1283 0c8c 9F4F sbci r25,hi8(-(110))
1284 0c8e 8A17 cp r24,r26
1285 0c90 9B07 cpc r25,r27
1286 0c92 04F0 brlt .+2
1287 0c94 00C0 rjmp .L108
1288 0c96 1097 sbiw r26,0
1289 0c98 01F4 brne .+2
1290 0c9a 00C0 rjmp .L108
1291 0c9c 1197 sbiw r26,1
1292 0c9e B093 0000 sts (Poti1)+1,r27
1293 0ca2 A093 0000 sts Poti1,r26
1294 0ca6 00C0 rjmp .L108
1295 .L166:
1296 0ca8 8FEF ldi r24,lo8(255)
1297 0caa 90E0 ldi r25,hi8(255)
1298 0cac 9093 0000 sts (Poti3)+1,r25
1299 0cb0 8093 0000 sts Poti3,r24
1300 0cb4 00C0 rjmp .L136
1301 .L164:
1302 0cb6 8FEF ldi r24,lo8(255)
1303 0cb8 90E0 ldi r25,hi8(255)
1304 0cba 9093 0000 sts (Poti2)+1,r25
1305 0cbe 8093 0000 sts Poti2,r24
1306 0cc2 00C0 rjmp .L132
1307 .L162:
1308 0cc4 8FEF ldi r24,lo8(255)
1309 0cc6 90E0 ldi r25,hi8(255)
1310 0cc8 9093 0000 sts (Poti1)+1,r25
1311 0ccc 8093 0000 sts Poti1,r24
1312 0cd0 00C0 rjmp .L128
1313 .L74:
1314 0cd2 4058 subi r20,lo8(-128)
1315 0cd4 5F4F sbci r21,hi8(-128)
1316 0cd6 04F0 brlt .+2
1317 0cd8 00C0 rjmp .L76
1318 0cda 80E8 ldi r24,lo8(-128)
1319 0cdc 9FEF ldi r25,hi8(-128)
1320 0cde 9093 0000 sts (d2Nick.2659)+1,r25
1321 0ce2 8093 0000 sts d2Nick.2659,r24
1322 0ce6 00C0 rjmp .L76
1323 .L148:
1324 0ce8 B091 0000 lds r27,EE_Parameter+8
1325 0cec B983 std Y+1,r27
1326 0cee B6FF sbrs r27,6
1327 0cf0 00C0 rjmp .L18
1328 0cf2 2F85 ldd r18,Y+15
1329 0cf4 3889 ldd r19,Y+16
1330 0cf6 4989 ldd r20,Y+17
1331 0cf8 5A89 ldd r21,Y+18
1332 0cfa 283B cpi r18,lo8(-93000)
1333 0cfc E4E9 ldi r30,hi8(-93000)
1334 0cfe 3E07 cpc r19,r30
1335 0d00 EEEF ldi r30,hlo8(-93000)
1336 0d02 4E07 cpc r20,r30
1337 0d04 EFEF ldi r30,hhi8(-93000)
1338 0d06 5E07 cpc r21,r30
1339 0d08 04F4 brge .L20
1340 0d0a 28EB ldi r18,lo8(-93000)
1341 0d0c 34E9 ldi r19,hi8(-93000)
1342 0d0e 4EEF ldi r20,hlo8(-93000)
1343 0d10 5FEF ldi r21,hhi8(-93000)
1344 .L20:
1345 0d12 2A83 std Y+2,r18
1346 0d14 3B83 std Y+3,r19
1347 0d16 4C83 std Y+4,r20
1348 0d18 5D83 std Y+5,r21
1349 0d1a 2954 subi r18,lo8(93001)
1350 0d1c 3B46 sbci r19,hi8(93001)
1351 0d1e 4140 sbci r20,hlo8(93001)
1352 0d20 5040 sbci r21,hhi8(93001)
1353 0d22 04F0 brlt .L21
1354 0d24 88E4 ldi r24,lo8(93000)
1355 0d26 9BE6 ldi r25,hi8(93000)
1356 0d28 A1E0 ldi r26,hlo8(93000)
1357 0d2a B0E0 ldi r27,hhi8(93000)
1358 0d2c 8A83 std Y+2,r24
1359 0d2e 9B83 std Y+3,r25
1360 0d30 AC83 std Y+4,r26
1361 0d32 BD83 std Y+5,r27
1362 .L21:
1363 0d34 2B85 ldd r18,Y+11
1364 0d36 3C85 ldd r19,Y+12
1365 0d38 4D85 ldd r20,Y+13
1366 0d3a 5E85 ldd r21,Y+14
1367 0d3c 283B cpi r18,lo8(-93000)
1368 0d3e 94E9 ldi r25,hi8(-93000)
1369 0d40 3907 cpc r19,r25
1370 0d42 9EEF ldi r25,hlo8(-93000)
1371 0d44 4907 cpc r20,r25
1372 0d46 9FEF ldi r25,hhi8(-93000)
1373 0d48 5907 cpc r21,r25
1374 0d4a 04F4 brge .L22
1375 0d4c 28EB ldi r18,lo8(-93000)
1376 0d4e 34E9 ldi r19,hi8(-93000)
1377 0d50 4EEF ldi r20,hlo8(-93000)
1378 0d52 5FEF ldi r21,hhi8(-93000)
1379 .L22:
1380 0d54 2E83 std Y+6,r18
1381 0d56 3F83 std Y+7,r19
1382 0d58 4887 std Y+8,r20
1383 0d5a 5987 std Y+9,r21
1384 0d5c 2954 subi r18,lo8(93001)
1385 0d5e 3B46 sbci r19,hi8(93001)
1386 0d60 4140 sbci r20,hlo8(93001)
1387 0d62 5040 sbci r21,hhi8(93001)
1388 0d64 04F0 brlt .L23
1389 0d66 88E4 ldi r24,lo8(93000)
1390 0d68 9BE6 ldi r25,hi8(93000)
1391 0d6a A1E0 ldi r26,hlo8(93000)
1392 0d6c B0E0 ldi r27,hhi8(93000)
1393 0d6e 8E83 std Y+6,r24
1394 0d70 9F83 std Y+7,r25
1395 0d72 A887 std Y+8,r26
1396 0d74 B987 std Y+9,r27
1397 .L23:
1398 0d76 A090 0000 lds r10,Parameter_AchsKopplung2
1399 0d7a BB24 clr r11
1400 0d7c CC24 clr r12
1401 0d7e DD24 clr r13
1402 0d80 AB89 ldd r26,Y+19
1403 0d82 BC89 ldd r27,Y+20
1404 0d84 9D01 movw r18,r26
1405 0d86 4427 clr r20
1406 0d88 37FD sbrc r19,7
1407 0d8a 4095 com r20
1408 0d8c 542F mov r21,r20
1409 0d8e 6E81 ldd r22,Y+6
1410 0d90 7F81 ldd r23,Y+7
1411 0d92 8885 ldd r24,Y+8
1412 0d94 9985 ldd r25,Y+9
1413 0d96 0E94 0000 call __mulsi3
1414 0d9a 20E0 ldi r18,lo8(2048)
1415 0d9c 38E0 ldi r19,hi8(2048)
1416 0d9e 40E0 ldi r20,hlo8(2048)
1417 0da0 50E0 ldi r21,hhi8(2048)
1418 0da2 0E94 0000 call __divmodsi4
1419 0da6 CA01 movw r24,r20
1420 0da8 B901 movw r22,r18
1421 0daa A601 movw r20,r12
1422 0dac 9501 movw r18,r10
1423 0dae 0E94 0000 call __mulsi3
1424 0db2 20E0 ldi r18,lo8(4096)
1425 0db4 30E1 ldi r19,hi8(4096)
1426 0db6 40E0 ldi r20,hlo8(4096)
1427 0db8 50E0 ldi r21,hhi8(4096)
1428 0dba 0E94 0000 call __divmodsi4
1429 0dbe 7901 movw r14,r18
1430 0dc0 8A01 movw r16,r20
1431 0dc2 2093 0000 sts tmpl3.2654,r18
1432 0dc6 3093 0000 sts (tmpl3.2654)+1,r19
1433 0dca 4093 0000 sts (tmpl3.2654)+2,r20
1434 0dce 5093 0000 sts (tmpl3.2654)+3,r21
1435 0dd2 EA8D ldd r30,Y+26
1436 0dd4 FB8D ldd r31,Y+27
1437 0dd6 9F01 movw r18,r30
1438 0dd8 4427 clr r20
1439 0dda 37FD sbrc r19,7
1440 0ddc 4095 com r20
1441 0dde 542F mov r21,r20
1442 0de0 6A81 ldd r22,Y+2
1443 0de2 7B81 ldd r23,Y+3
1444 0de4 8C81 ldd r24,Y+4
1445 0de6 9D81 ldd r25,Y+5
1446 0de8 0E94 0000 call __mulsi3
1447 0dec 20E0 ldi r18,lo8(2048)
1448 0dee 38E0 ldi r19,hi8(2048)
1449 0df0 40E0 ldi r20,hlo8(2048)
1450 0df2 50E0 ldi r21,hhi8(2048)
1451 0df4 0E94 0000 call __divmodsi4
1452 0df8 CA01 movw r24,r20
1453 0dfa B901 movw r22,r18
1454 0dfc A601 movw r20,r12
1455 0dfe 9501 movw r18,r10
1456 0e00 0E94 0000 call __mulsi3
1457 0e04 20E0 ldi r18,lo8(4096)
1458 0e06 30E1 ldi r19,hi8(4096)
1459 0e08 40E0 ldi r20,hlo8(4096)
1460 0e0a 50E0 ldi r21,hhi8(4096)
1461 0e0c 0E94 0000 call __divmodsi4
1462 0e10 F092 0000 sts (KopplungsteilNickRoll)+1,r15
1463 0e14 E092 0000 sts KopplungsteilNickRoll,r14
1464 0e18 3093 0000 sts (KopplungsteilRollNick)+1,r19
1465 0e1c 2093 0000 sts KopplungsteilRollNick,r18
1466 0e20 2E19 sub r18,r14
1467 0e22 3F09 sbc r19,r15
1468 0e24 400B sbc r20,r16
1469 0e26 510B sbc r21,r17
1470 0e28 7901 movw r14,r18
1471 0e2a 8A01 movw r16,r20
1472 0e2c 2093 0000 sts tmpl4.2655,r18
1473 0e30 3093 0000 sts (tmpl4.2655)+1,r19
1474 0e34 4093 0000 sts (tmpl4.2655)+2,r20
1475 0e38 5093 0000 sts (tmpl4.2655)+3,r21
1476 0e3c 220E add r2,r18
1477 0e3e 331E adc r3,r19
1478 0e40 441E adc r4,r20
1479 0e42 551E adc r5,r21
1480 0e44 2092 0000 sts ErsatzKompass,r2
1481 0e48 3092 0000 sts (ErsatzKompass)+1,r3
1482 0e4c 4092 0000 sts (ErsatzKompass)+2,r4
1483 0e50 5092 0000 sts (ErsatzKompass)+3,r5
1484 0e54 F091 0000 lds r31,Parameter_CouplingYawCorrection
1485 0e58 FD8B std Y+21,r31
1486 0e5a FF23 tst r31
1487 0e5c 01F4 brne .L24
1488 0e5e CA01 movw r24,r20
1489 0e60 B901 movw r22,r18
1490 0e62 22E0 ldi r18,lo8(2)
1491 0e64 30E0 ldi r19,hi8(2)
1492 0e66 40E0 ldi r20,hlo8(2)
1493 0e68 50E0 ldi r21,hhi8(2)
1494 0e6a 0E94 0000 call __divmodsi4
1495 0e6e 8E89 ldd r24,Y+22
1496 0e70 9F89 ldd r25,Y+23
1497 0e72 A88D ldd r26,Y+24
1498 0e74 B98D ldd r27,Y+25
1499 0e76 821B sub r24,r18
1500 0e78 930B sbc r25,r19
1501 0e7a A40B sbc r26,r20
1502 0e7c B50B sbc r27,r21
1503 0e7e 8E8B std Y+22,r24
1504 0e80 9F8B std Y+23,r25
1505 0e82 A88F std Y+24,r26
1506 0e84 B98F std Y+25,r27
1507 0e86 8093 0000 sts Mess_Integral_Gier,r24
1508 0e8a 9093 0000 sts (Mess_Integral_Gier)+1,r25
1509 0e8e A093 0000 sts (Mess_Integral_Gier)+2,r26
1510 0e92 B093 0000 sts (Mess_Integral_Gier)+3,r27
1511 .L24:
1512 0e96 6E0C add r6,r14
1513 0e98 7F1C adc r7,r15
1514 0e9a 801E adc r8,r16
1515 0e9c 911E adc r9,r17
1516 0e9e E090 0000 lds r14,Parameter_AchsKopplung1
1517 0ea2 FF24 clr r15
1518 0ea4 00E0 ldi r16,lo8(0)
1519 0ea6 10E0 ldi r17,hi8(0)
1520 0ea8 C401 movw r24,r8
1521 0eaa B301 movw r22,r6
1522 0eac 2E81 ldd r18,Y+6
1523 0eae 3F81 ldd r19,Y+7
1524 0eb0 4885 ldd r20,Y+8
1525 0eb2 5985 ldd r21,Y+9
1526 0eb4 0E94 0000 call __mulsi3
1527 0eb8 20E0 ldi r18,lo8(2048)
1528 0eba 38E0 ldi r19,hi8(2048)
1529 0ebc 40E0 ldi r20,hlo8(2048)
1530 0ebe 50E0 ldi r21,hhi8(2048)
1531 0ec0 0E94 0000 call __divmodsi4
1532 0ec4 CA01 movw r24,r20
1533 0ec6 B901 movw r22,r18
1534 0ec8 A801 movw r20,r16
1535 0eca 9701 movw r18,r14
1536 0ecc 0E94 0000 call __mulsi3
1537 0ed0 20E0 ldi r18,lo8(4096)
1538 0ed2 30E1 ldi r19,hi8(4096)
1539 0ed4 40E0 ldi r20,hlo8(4096)
1540 0ed6 50E0 ldi r21,hhi8(4096)
1541 0ed8 0E94 0000 call __divmodsi4
1542 0edc 5901 movw r10,r18
1543 0ede 6A01 movw r12,r20
1544 0ee0 2093 0000 sts tmpl.2652,r18
1545 0ee4 3093 0000 sts (tmpl.2652)+1,r19
1546 0ee8 4093 0000 sts (tmpl.2652)+2,r20
1547 0eec 5093 0000 sts (tmpl.2652)+3,r21
1548 0ef0 C401 movw r24,r8
1549 0ef2 B301 movw r22,r6
1550 0ef4 2A81 ldd r18,Y+2
1551 0ef6 3B81 ldd r19,Y+3
1552 0ef8 4C81 ldd r20,Y+4
1553 0efa 5D81 ldd r21,Y+5
1554 0efc 0E94 0000 call __mulsi3
1555 0f00 20E0 ldi r18,lo8(2048)
1556 0f02 38E0 ldi r19,hi8(2048)
1557 0f04 40E0 ldi r20,hlo8(2048)
1558 0f06 50E0 ldi r21,hhi8(2048)
1559 0f08 0E94 0000 call __divmodsi4
1560 0f0c CA01 movw r24,r20
1561 0f0e B901 movw r22,r18
1562 0f10 A801 movw r20,r16
1563 0f12 9701 movw r18,r14
1564 0f14 0E94 0000 call __mulsi3
1565 0f18 20E0 ldi r18,lo8(4096)
1566 0f1a 30E1 ldi r19,hi8(4096)
1567 0f1c 40E0 ldi r20,hlo8(4096)
1568 0f1e 50E0 ldi r21,hhi8(4096)
1569 0f20 0E94 0000 call __divmodsi4
1570 0f24 2093 0000 sts tmpl2.2653,r18
1571 0f28 3093 0000 sts (tmpl2.2653)+1,r19
1572 0f2c 4093 0000 sts (tmpl2.2653)+2,r20
1573 0f30 5093 0000 sts (tmpl2.2653)+3,r21
1574 0f34 D7FC sbrc r13,7
1575 0f36 00C0 rjmp .L168
1576 .L27:
1577 0f38 91E8 ldi r25,lo8(129)
1578 0f3a A916 cp r10,r25
1579 0f3c B104 cpc r11,__zero_reg__
1580 0f3e C104 cpc r12,__zero_reg__
1581 0f40 D104 cpc r13,__zero_reg__
1582 0f42 04F4 brge .L26
1583 0f44 57FD sbrc r21,7
1584 0f46 00C0 rjmp .L169
1585 .L30:
1586 0f48 2138 cpi r18,lo8(129)
1587 0f4a 3105 cpc r19,__zero_reg__
1588 0f4c 4105 cpc r20,__zero_reg__
1589 0f4e 5105 cpc r21,__zero_reg__
1590 0f50 04F4 brge .+2
1591 0f52 00C0 rjmp .L29
1592 .L26:
1593 0f54 81E0 ldi r24,lo8(1)
1594 0f56 8093 0000 sts TrichterFlug,r24
1595 0f5a 2090 0000 lds r2,ErsatzKompass
1596 0f5e 3090 0000 lds r3,(ErsatzKompass)+1
1597 0f62 4090 0000 lds r4,(ErsatzKompass)+2
1598 0f66 5090 0000 lds r5,(ErsatzKompass)+3
1599 0f6a 00C0 rjmp .L29
1600 .L80:
1601 0f6c 4058 subi r20,lo8(-128)
1602 0f6e 5F4F sbci r21,hi8(-128)
1603 0f70 04F0 brlt .+2
1604 0f72 00C0 rjmp .L82
1605 0f74 80E8 ldi r24,lo8(-128)
1606 0f76 9FEF ldi r25,hi8(-128)
1607 0f78 9093 0000 sts (d2Roll.2658)+1,r25
1608 0f7c 8093 0000 sts d2Roll.2658,r24
1609 0f80 00C0 rjmp .L82
1610 .L150:
1611 0f82 0796 adiw r24,7
1612 0f84 00C0 rjmp .L43
1613 .L149:
1614 0f86 260E add r2,r22
1615 0f88 371E adc r3,r23
1616 0f8a 481E adc r4,r24
1617 0f8c 591E adc r5,r25
1618 0f8e 2092 0000 sts ErsatzKompass,r2
1619 0f92 3092 0000 sts (ErsatzKompass)+1,r3
1620 0f96 4092 0000 sts (ErsatzKompass)+2,r4
1621 0f9a 5092 0000 sts (ErsatzKompass)+3,r5
1622 0f9e 00C0 rjmp .L33
1623 .L85:
1624 0fa0 AD89 ldd r26,Y+21
1625 0fa2 EA2E mov r14,r26
1626 0fa4 FF24 clr r15
1627 0fa6 00E0 ldi r16,lo8(0)
1628 0fa8 10E0 ldi r17,hi8(0)
1629 0faa 6091 0000 lds r22,KopplungsteilNickRoll
1630 0fae 7091 0000 lds r23,(KopplungsteilNickRoll)+1
1631 0fb2 77FD sbrc r23,7
1632 0fb4 00C0 rjmp .L170
1633 .L89:
1634 0fb6 8827 clr r24
1635 0fb8 77FD sbrc r23,7
1636 0fba 8095 com r24
1637 0fbc 982F mov r25,r24
1638 0fbe A801 movw r20,r16
1639 0fc0 9701 movw r18,r14
1640 0fc2 0E94 0000 call __mulsi3
1641 0fc6 20E4 ldi r18,lo8(64)
1642 0fc8 30E0 ldi r19,hi8(64)
1643 0fca 40E0 ldi r20,hlo8(64)
1644 0fcc 50E0 ldi r21,hhi8(64)
1645 0fce 0E94 0000 call __divmodsi4
1646 0fd2 821A sub r8,r18
1647 0fd4 930A sbc r9,r19
1648 0fd6 9092 0000 sts (TrimRoll)+1,r9
1649 0fda 8092 0000 sts TrimRoll,r8
1650 0fde EA8D ldd r30,Y+26
1651 0fe0 FB8D ldd r31,Y+27
1652 0fe2 1E16 cp __zero_reg__,r30
1653 0fe4 1F06 cpc __zero_reg__,r31
1654 0fe6 04F4 brge .+2
1655 0fe8 00C0 rjmp .L171
1656 .L90:
1657 0fea 2091 0000 lds r18,KopplungsteilRollNick
1658 0fee 3091 0000 lds r19,(KopplungsteilRollNick)+1
1659 0ff2 37FD sbrc r19,7
1660 0ff4 00C0 rjmp .L172
1661 .L94:
1662 0ff6 4427 clr r20
1663 0ff8 37FD sbrc r19,7
1664 0ffa 4095 com r20
1665 0ffc 542F mov r21,r20
1666 0ffe C801 movw r24,r16
1667 1000 B701 movw r22,r14
1668 1002 0E94 0000 call __mulsi3
1669 1006 20E4 ldi r18,lo8(64)
1670 1008 30E0 ldi r19,hi8(64)
1671 100a 40E0 ldi r20,hlo8(64)
1672 100c 50E0 ldi r21,hhi8(64)
1673 100e 0E94 0000 call __divmodsi4
1674 1012 621A sub r6,r18
1675 1014 730A sbc r7,r19
1676 1016 7092 0000 sts (TrimNick)+1,r7
1677 101a 6092 0000 sts TrimNick,r6
1678 101e F981 ldd r31,Y+1
1679 1020 F7FF sbrs r31,7
1680 1022 00C0 rjmp .L95
1681 .L160:
1682 1024 2A85 ldd r18,Y+10
1683 1026 2223 tst r18
1684 1028 01F0 breq .+2
1685 102a 00C0 rjmp .L95
1686 102c 8091 0000 lds r24,Looping_Roll
1687 1030 8823 tst r24
1688 1032 01F0 breq .+2
1689 1034 00C0 rjmp .L95
1690 1036 8A8D ldd r24,Y+26
1691 1038 9B8D ldd r25,Y+27
1692 103a 8150 subi r24,lo8(257)
1693 103c 9140 sbci r25,hi8(257)
1694 103e 04F0 brlt .+2
1695 1040 00C0 rjmp .L173
1696 1042 2A8D ldd r18,Y+26
1697 1044 3B8D ldd r19,Y+27
1698 1046 6FEF ldi r22,hi8(-256)
1699 1048 2030 cpi r18,lo8(-256)
1700 104a 3607 cpc r19,r22
1701 104c 04F4 brge .L101
1702 104e 8091 0000 lds r24,MesswertNick
1703 1052 9091 0000 lds r25,(MesswertNick)+1
1704 1056 8050 subi r24,lo8(-(256))
1705 1058 9F4F sbci r25,hi8(-(256))
1706 105a 820F add r24,r18
1707 105c 931F adc r25,r19
1708 105e 9093 0000 sts (MesswertNick)+1,r25
1709 1062 8093 0000 sts MesswertNick,r24
1710 .L101:
1711 1066 8B89 ldd r24,Y+19
1712 1068 9C89 ldd r25,Y+20
1713 106a 8150 subi r24,lo8(257)
1714 106c 9140 sbci r25,hi8(257)
1715 106e 04F4 brge .+2
1716 1070 00C0 rjmp .L103
1717 1072 8091 0000 lds r24,MesswertRoll
1718 1076 9091 0000 lds r25,(MesswertRoll)+1
1719 107a 8050 subi r24,lo8(-(-256))
1720 107c 9140 sbci r25,hi8(-(-256))
1721 107e EB89 ldd r30,Y+19
1722 1080 FC89 ldd r31,Y+20
1723 1082 8E0F add r24,r30
1724 1084 9F1F adc r25,r31
1725 1086 9093 0000 sts (MesswertRoll)+1,r25
1726 108a 8093 0000 sts MesswertRoll,r24
1727 108e 00C0 rjmp .L95
1728 .L151:
1729 1090 0796 adiw r24,7
1730 1092 00C0 rjmp .L44
1731 .L147:
1732 1094 295F subi r18,lo8(-(7))
1733 1096 3F4F sbci r19,hi8(-(7))
1734 1098 00C0 rjmp .L13
1735 .L146:
1736 109a 295F subi r18,lo8(-(7))
1737 109c 3F4F sbci r19,hi8(-(7))
1738 109e 0C94 0000 jmp .L12
1739 .L154:
1740 10a2 2F5F subi r18,lo8(-(1))
1741 10a4 3F4F sbci r19,hi8(-(1))
1742 10a6 00C0 rjmp .L73
1743 .L159:
1744 10a8 3095 com r19
1745 10aa 2195 neg r18
1746 10ac 3F4F sbci r19,lo8(-1)
1747 10ae 00C0 rjmp .L92
1748 .L158:
1749 10b0 7095 com r23
1750 10b2 6195 neg r22
1751 10b4 7F4F sbci r23,lo8(-1)
1752 10b6 00C0 rjmp .L87
1753 .L155:
1754 10b8 215F subi r18,lo8(-(15))
1755 10ba 3F4F sbci r19,hi8(-(15))
1756 10bc 00C0 rjmp .L78
1757 .L157:
1758 10be 215F subi r18,lo8(-(15))
1759 10c0 3F4F sbci r19,hi8(-(15))
1760 10c2 00C0 rjmp .L84
1761 .L156:
1762 10c4 2F5F subi r18,lo8(-(1))
1763 10c6 3F4F sbci r19,hi8(-(1))
1764 10c8 00C0 rjmp .L79
1765 .L170:
1766 10ca 7095 com r23
1767 10cc 6195 neg r22
1768 10ce 7F4F sbci r23,lo8(-1)
1769 10d0 00C0 rjmp .L89
1770 .L172:
1771 10d2 3095 com r19
1772 10d4 2195 neg r18
1773 10d6 3F4F sbci r19,lo8(-1)
1774 10d8 00C0 rjmp .L94
1775 .L173:
1776 10da 8091 0000 lds r24,MesswertNick
1777 10de 9091 0000 lds r25,(MesswertNick)+1
1778 10e2 8050 subi r24,lo8(-(-256))
1779 10e4 9140 sbci r25,hi8(-(-256))
1780 10e6 EA8D ldd r30,Y+26
1781 10e8 FB8D ldd r31,Y+27
1782 10ea 8E0F add r24,r30
1783 10ec 9F1F adc r25,r31
1784 10ee 9093 0000 sts (MesswertNick)+1,r25
1785 10f2 8093 0000 sts MesswertNick,r24
1786 10f6 00C0 rjmp .L101
1787 .L169:
1788 10f8 5095 com r21
1789 10fa 4095 com r20
1790 10fc 3095 com r19
1791 10fe 2195 neg r18
1792 1100 3F4F sbci r19,lo8(-1)
1793 1102 4F4F sbci r20,lo8(-1)
1794 1104 5F4F sbci r21,lo8(-1)
1795 1106 00C0 rjmp .L30
1796 .L168:
1797 1108 D094 com r13
1798 110a C094 com r12
1799 110c B094 com r11
1800 110e A094 com r10
1801 1110 A11C adc r10,__zero_reg__
1802 1112 B11C adc r11,__zero_reg__
1803 1114 C11C adc r12,__zero_reg__
1804 1116 D11C adc r13,__zero_reg__
1805 1118 00C0 rjmp .L27
1806 .L103:
1807 111a 2B89 ldd r18,Y+19
1808 111c 3C89 ldd r19,Y+20
1809 111e 6FEF ldi r22,hi8(-256)
1810 1120 2030 cpi r18,lo8(-256)
1811 1122 3607 cpc r19,r22
1812 1124 04F0 brlt .+2
1813 1126 00C0 rjmp .L95
1814 1128 8091 0000 lds r24,MesswertRoll
1815 112c 9091 0000 lds r25,(MesswertRoll)+1
1816 1130 8050 subi r24,lo8(-(256))
1817 1132 9F4F sbci r25,hi8(-(256))
1818 1134 820F add r24,r18
1819 1136 931F adc r25,r19
1820 1138 9093 0000 sts (MesswertRoll)+1,r25
1821 113c 8093 0000 sts MesswertRoll,r24
1822 1140 00C0 rjmp .L95
1823 .L142:
1824 /* epilogue: frame size=27 */
1825 1142 6B96 adiw r28,27
1826 1144 0FB6 in __tmp_reg__,__SREG__
1827 1146 F894 cli
1828 1148 DEBF out __SP_H__,r29
1829 114a 0FBE out __SREG__,__tmp_reg__
1830 114c CDBF out __SP_L__,r28
1831 114e DF91 pop r29
1832 1150 CF91 pop r28
1833 1152 1F91 pop r17
1834 1154 0F91 pop r16
1835 1156 FF90 pop r15
1836 1158 EF90 pop r14
1837 115a DF90 pop r13
1838 115c CF90 pop r12
1839 115e BF90 pop r11
1840 1160 AF90 pop r10
1841 1162 9F90 pop r9
1842 1164 8F90 pop r8
1843 1166 7F90 pop r7
1844 1168 6F90 pop r6
1845 116a 5F90 pop r5
1846 116c 4F90 pop r4
1847 116e 3F90 pop r3
1848 1170 2F90 pop r2
1849 1172 0895 ret
1850 /* epilogue end (size=25) */
1851 /* function Mittelwert size 2210 (2159) */
1853 .global ParameterZuordnung
1855 ParameterZuordnung:
1856 /* prologue: frame size=0 */
1857 /* prologue end (size=0) */
1858 1174 8091 0000 lds r24,EE_Parameter+11
1859 1178 8B3F cpi r24,lo8(-5)
1860 117a 00F0 brlo .L175
1861 117c 8B3F cpi r24,lo8(-5)
1862 117e 01F4 brne .+2
1863 1180 00C0 rjmp .L456
1864 1182 8C3F cpi r24,lo8(-4)
1865 1184 01F4 brne .+2
1866 1186 00C0 rjmp .L457
1867 1188 8D3F cpi r24,lo8(-3)
1868 118a 01F4 brne .+2
1869 118c 00C0 rjmp .L458
1870 118e 8E3F cpi r24,lo8(-2)
1871 1190 01F4 brne .L179
1872 1192 8091 0000 lds r24,Poti4
1873 1196 8093 0000 sts Parameter_MaxHoehe,r24
1874 119a 00C0 rjmp .L179
1875 .L175:
1876 119c 8093 0000 sts Parameter_MaxHoehe,r24
1877 .L179:
1878 11a0 8091 0000 lds r24,EE_Parameter+10
1879 11a4 8B3F cpi r24,lo8(-5)
1880 11a6 00F0 brlo .L185
1881 11a8 8B3F cpi r24,lo8(-5)
1882 11aa 01F4 brne .+2
1883 11ac 00C0 rjmp .L459
1884 11ae 8C3F cpi r24,lo8(-4)
1885 11b0 01F4 brne .+2
1886 11b2 00C0 rjmp .L460
1887 11b4 8D3F cpi r24,lo8(-3)
1888 11b6 01F4 brne .+2
1889 11b8 00C0 rjmp .L461
1890 11ba 8E3F cpi r24,lo8(-2)
1891 11bc 01F4 brne .L189
1892 11be 8091 0000 lds r24,Poti4
1893 11c2 8093 0000 sts Parameter_Luftdruck_D,r24
1894 11c6 00C0 rjmp .L189
1895 .L185:
1896 11c8 8093 0000 sts Parameter_Luftdruck_D,r24
1897 .L189:
1898 11cc 8091 0000 lds r24,Parameter_Luftdruck_D
1899 11d0 8823 tst r24
1900 11d2 01F4 brne .L195
1901 11d4 1092 0000 sts Parameter_Luftdruck_D,__zero_reg__
1902 .L197:
1903 11d8 8091 0000 lds r24,EE_Parameter+12
1904 11dc 8B3F cpi r24,lo8(-5)
1905 11de 00F0 brlo .L199
1906 .L465:
1907 11e0 8B3F cpi r24,lo8(-5)
1908 11e2 01F4 brne .+2
1909 11e4 00C0 rjmp .L462
1910 11e6 8C3F cpi r24,lo8(-4)
1911 11e8 01F4 brne .+2
1912 11ea 00C0 rjmp .L463
1913 11ec 8D3F cpi r24,lo8(-3)
1914 11ee 01F4 brne .+2
1915 11f0 00C0 rjmp .L464
1916 11f2 8E3F cpi r24,lo8(-2)
1917 11f4 01F4 brne .L203
1918 11f6 8091 0000 lds r24,Poti4
1919 11fa 8093 0000 sts Parameter_Hoehe_P,r24
1920 11fe 00C0 rjmp .L203
1921 .L195:
1922 1200 8436 cpi r24,lo8(100)
1923 1202 00F0 brlo .L197
1924 1204 84E6 ldi r24,lo8(100)
1925 1206 8093 0000 sts Parameter_Luftdruck_D,r24
1926 120a 8091 0000 lds r24,EE_Parameter+12
1927 120e 8B3F cpi r24,lo8(-5)
1928 1210 00F4 brsh .L465
1929 .L199:
1930 1212 8093 0000 sts Parameter_Hoehe_P,r24
1931 .L203:
1932 1216 8091 0000 lds r24,Parameter_Hoehe_P
1933 121a 8823 tst r24
1934 121c 01F4 brne .L209
1935 121e 1092 0000 sts Parameter_Hoehe_P,__zero_reg__
1936 .L211:
1937 1222 8091 0000 lds r24,EE_Parameter+14
1938 1226 8B3F cpi r24,lo8(-5)
1939 1228 00F0 brlo .L213
1940 .L469:
1941 122a 8B3F cpi r24,lo8(-5)
1942 122c 01F4 brne .+2
1943 122e 00C0 rjmp .L466
1944 1230 8C3F cpi r24,lo8(-4)
1945 1232 01F4 brne .+2
1946 1234 00C0 rjmp .L467
1947 1236 8D3F cpi r24,lo8(-3)
1948 1238 01F4 brne .+2
1949 123a 00C0 rjmp .L468
1950 123c 8E3F cpi r24,lo8(-2)
1951 123e 01F4 brne .L217
1952 1240 8091 0000 lds r24,Poti4
1953 1244 8093 0000 sts Parameter_Hoehe_ACC_Wirkung,r24
1954 1248 00C0 rjmp .L217
1955 .L209:
1956 124a 8436 cpi r24,lo8(100)
1957 124c 00F0 brlo .L211
1958 124e 84E6 ldi r24,lo8(100)
1959 1250 8093 0000 sts Parameter_Hoehe_P,r24
1960 1254 8091 0000 lds r24,EE_Parameter+14
1961 1258 8B3F cpi r24,lo8(-5)
1962 125a 00F4 brsh .L469
1963 .L213:
1964 125c 8093 0000 sts Parameter_Hoehe_ACC_Wirkung,r24
1965 .L217:
1966 1260 8091 0000 lds r24,EE_Parameter+21
1967 1264 8B3F cpi r24,lo8(-5)
1968 1266 00F0 brlo .L223
1969 1268 8B3F cpi r24,lo8(-5)
1970 126a 01F4 brne .+2
1971 126c 00C0 rjmp .L470
1972 126e 8C3F cpi r24,lo8(-4)
1973 1270 01F4 brne .+2
1974 1272 00C0 rjmp .L471
1975 1274 8D3F cpi r24,lo8(-3)
1976 1276 01F4 brne .+2
1977 1278 00C0 rjmp .L472
1978 127a 8E3F cpi r24,lo8(-2)
1979 127c 01F4 brne .L227
1980 127e 8091 0000 lds r24,Poti4
1981 1282 8093 0000 sts Parameter_KompassWirkung,r24
1982 1286 00C0 rjmp .L227
1983 .L223:
1984 1288 8093 0000 sts Parameter_KompassWirkung,r24
1985 .L227:
1986 128c 8091 0000 lds r24,EE_Parameter+22
1987 1290 8B3F cpi r24,lo8(-5)
1988 1292 00F0 brlo .L233
1989 1294 8B3F cpi r24,lo8(-5)
1990 1296 01F4 brne .+2
1991 1298 00C0 rjmp .L473
1992 129a 8C3F cpi r24,lo8(-4)
1993 129c 01F4 brne .+2
1994 129e 00C0 rjmp .L474
1995 12a0 8D3F cpi r24,lo8(-3)
1996 12a2 01F4 brne .+2
1997 12a4 00C0 rjmp .L475
1998 12a6 8E3F cpi r24,lo8(-2)
1999 12a8 01F4 brne .L237
2000 12aa 8091 0000 lds r24,Poti4
2001 12ae 8093 0000 sts Parameter_Gyro_P,r24
2002 12b2 00C0 rjmp .L237
2003 .L233:
2004 12b4 8093 0000 sts Parameter_Gyro_P,r24
2005 .L237:
2006 12b8 8091 0000 lds r24,Parameter_Gyro_P
2007 12bc 8B30 cpi r24,lo8(11)
2008 12be 00F4 brsh .L243
2009 12c0 8AE0 ldi r24,lo8(10)
2010 12c2 8093 0000 sts Parameter_Gyro_P,r24
2011 .L245:
2012 12c6 8091 0000 lds r24,EE_Parameter+23
2013 12ca 8B3F cpi r24,lo8(-5)
2014 12cc 00F0 brlo .L247
2015 .L479:
2016 12ce 8B3F cpi r24,lo8(-5)
2017 12d0 01F4 brne .+2
2018 12d2 00C0 rjmp .L476
2019 12d4 8C3F cpi r24,lo8(-4)
2020 12d6 01F4 brne .+2
2021 12d8 00C0 rjmp .L477
2022 12da 8D3F cpi r24,lo8(-3)
2023 12dc 01F4 brne .+2
2024 12de 00C0 rjmp .L478
2025 12e0 8E3F cpi r24,lo8(-2)
2026 12e2 01F4 brne .L251
2027 12e4 8091 0000 lds r24,Poti4
2028 12e8 8093 0000 sts Parameter_Gyro_I,r24
2029 12ec 00C0 rjmp .L251
2030 .L243:
2031 12ee 8F3F cpi r24,lo8(-1)
2032 12f0 01F4 brne .L245
2033 12f2 8093 0000 sts Parameter_Gyro_P,r24
2034 12f6 8091 0000 lds r24,EE_Parameter+23
2035 12fa 8B3F cpi r24,lo8(-5)
2036 12fc 00F4 brsh .L479
2037 .L247:
2038 12fe 8093 0000 sts Parameter_Gyro_I,r24
2039 .L251:
2040 1302 8091 0000 lds r24,EE_Parameter+24
2041 1306 8B3F cpi r24,lo8(-5)
2042 1308 00F0 brlo .L257
2043 130a 8B3F cpi r24,lo8(-5)
2044 130c 01F4 brne .+2
2045 130e 00C0 rjmp .L480
2046 1310 8C3F cpi r24,lo8(-4)
2047 1312 01F4 brne .+2
2048 1314 00C0 rjmp .L481
2049 1316 8D3F cpi r24,lo8(-3)
2050 1318 01F4 brne .+2
2051 131a 00C0 rjmp .L482
2052 131c 8E3F cpi r24,lo8(-2)
2053 131e 01F4 brne .L261
2054 1320 8091 0000 lds r24,Poti4
2055 1324 8093 0000 sts Parameter_Gyro_D,r24
2056 1328 00C0 rjmp .L261
2057 .L257:
2058 132a 8093 0000 sts Parameter_Gyro_D,r24
2059 .L261:
2060 132e 8091 0000 lds r24,EE_Parameter+29
2061 1332 8B3F cpi r24,lo8(-5)
2062 1334 00F0 brlo .L267
2063 1336 8B3F cpi r24,lo8(-5)
2064 1338 01F4 brne .+2
2065 133a 00C0 rjmp .L483
2066 133c 8C3F cpi r24,lo8(-4)
2067 133e 01F4 brne .+2
2068 1340 00C0 rjmp .L484
2069 1342 8D3F cpi r24,lo8(-3)
2070 1344 01F4 brne .+2
2071 1346 00C0 rjmp .L485
2072 1348 8E3F cpi r24,lo8(-2)
2073 134a 01F4 brne .L271
2074 134c 8091 0000 lds r24,Poti4
2075 1350 8093 0000 sts Parameter_I_Faktor,r24
2076 1354 00C0 rjmp .L271
2077 .L267:
2078 1356 8093 0000 sts Parameter_I_Faktor,r24
2079 .L271:
2080 135a 8091 0000 lds r24,EE_Parameter+30
2081 135e 8B3F cpi r24,lo8(-5)
2082 1360 00F0 brlo .L277
2083 1362 8B3F cpi r24,lo8(-5)
2084 1364 01F4 brne .+2
2085 1366 00C0 rjmp .L486
2086 1368 8C3F cpi r24,lo8(-4)
2087 136a 01F4 brne .+2
2088 136c 00C0 rjmp .L487
2089 136e 8D3F cpi r24,lo8(-3)
2090 1370 01F4 brne .+2
2091 1372 00C0 rjmp .L488
2092 1374 8E3F cpi r24,lo8(-2)
2093 1376 01F4 brne .L281
2094 1378 8091 0000 lds r24,Poti4
2095 137c 8093 0000 sts Parameter_UserParam1,r24
2096 1380 00C0 rjmp .L281
2097 .L277:
2098 1382 8093 0000 sts Parameter_UserParam1,r24
2099 .L281:
2100 1386 8091 0000 lds r24,EE_Parameter+31
2101 138a 8B3F cpi r24,lo8(-5)
2102 138c 00F0 brlo .L287
2103 138e 8B3F cpi r24,lo8(-5)
2104 1390 01F4 brne .+2
2105 1392 00C0 rjmp .L489
2106 1394 8C3F cpi r24,lo8(-4)
2107 1396 01F4 brne .+2
2108 1398 00C0 rjmp .L490
2109 139a 8D3F cpi r24,lo8(-3)
2110 139c 01F4 brne .+2
2111 139e 00C0 rjmp .L491
2112 13a0 8E3F cpi r24,lo8(-2)
2113 13a2 01F4 brne .L291
2114 13a4 8091 0000 lds r24,Poti4
2115 13a8 8093 0000 sts Parameter_UserParam2,r24
2116 13ac 00C0 rjmp .L291
2117 .L287:
2118 13ae 8093 0000 sts Parameter_UserParam2,r24
2119 .L291:
2120 13b2 8091 0000 lds r24,EE_Parameter+32
2121 13b6 8B3F cpi r24,lo8(-5)
2122 13b8 00F0 brlo .L297
2123 13ba 8B3F cpi r24,lo8(-5)
2124 13bc 01F4 brne .+2
2125 13be 00C0 rjmp .L492
2126 13c0 8C3F cpi r24,lo8(-4)
2127 13c2 01F4 brne .+2
2128 13c4 00C0 rjmp .L493
2129 13c6 8D3F cpi r24,lo8(-3)
2130 13c8 01F4 brne .+2
2131 13ca 00C0 rjmp .L494
2132 13cc 8E3F cpi r24,lo8(-2)
2133 13ce 01F4 brne .L301
2134 13d0 8091 0000 lds r24,Poti4
2135 13d4 8093 0000 sts Parameter_UserParam3,r24
2136 13d8 00C0 rjmp .L301
2137 .L297:
2138 13da 8093 0000 sts Parameter_UserParam3,r24
2139 .L301:
2140 13de 8091 0000 lds r24,EE_Parameter+33
2141 13e2 8B3F cpi r24,lo8(-5)
2142 13e4 00F0 brlo .L307
2143 13e6 8B3F cpi r24,lo8(-5)
2144 13e8 01F4 brne .+2
2145 13ea 00C0 rjmp .L495
2146 13ec 8C3F cpi r24,lo8(-4)
2147 13ee 01F4 brne .+2
2148 13f0 00C0 rjmp .L496
2149 13f2 8D3F cpi r24,lo8(-3)
2150 13f4 01F4 brne .+2
2151 13f6 00C0 rjmp .L497
2152 13f8 8E3F cpi r24,lo8(-2)
2153 13fa 01F4 brne .L311
2154 13fc 8091 0000 lds r24,Poti4
2155 1400 8093 0000 sts Parameter_UserParam4,r24
2156 1404 00C0 rjmp .L311
2157 .L307:
2158 1406 8093 0000 sts Parameter_UserParam4,r24
2159 .L311:
2160 140a 8091 0000 lds r24,EE_Parameter+50
2161 140e 8B3F cpi r24,lo8(-5)
2162 1410 00F0 brlo .L317
2163 1412 8B3F cpi r24,lo8(-5)
2164 1414 01F4 brne .+2
2165 1416 00C0 rjmp .L498
2166 1418 8C3F cpi r24,lo8(-4)
2167 141a 01F4 brne .+2
2168 141c 00C0 rjmp .L499
2169 141e 8D3F cpi r24,lo8(-3)
2170 1420 01F4 brne .+2
2171 1422 00C0 rjmp .L500
2172 1424 8E3F cpi r24,lo8(-2)
2173 1426 01F4 brne .L321
2174 1428 8091 0000 lds r24,Poti4
2175 142c 8093 0000 sts Parameter_UserParam5,r24
2176 1430 00C0 rjmp .L321
2177 .L317:
2178 1432 8093 0000 sts Parameter_UserParam5,r24
2179 .L321:
2180 1436 8091 0000 lds r24,EE_Parameter+51
2181 143a 8B3F cpi r24,lo8(-5)
2182 143c 00F0 brlo .L327
2183 143e 8B3F cpi r24,lo8(-5)
2184 1440 01F4 brne .+2
2185 1442 00C0 rjmp .L501
2186 1444 8C3F cpi r24,lo8(-4)
2187 1446 01F4 brne .+2
2188 1448 00C0 rjmp .L502
2189 144a 8D3F cpi r24,lo8(-3)
2190 144c 01F4 brne .+2
2191 144e 00C0 rjmp .L503
2192 1450 8E3F cpi r24,lo8(-2)
2193 1452 01F4 brne .L331
2194 1454 8091 0000 lds r24,Poti4
2195 1458 8093 0000 sts Parameter_UserParam6,r24
2196 145c 00C0 rjmp .L331
2197 .L327:
2198 145e 8093 0000 sts Parameter_UserParam6,r24
2199 .L331:
2200 1462 8091 0000 lds r24,EE_Parameter+52
2201 1466 8B3F cpi r24,lo8(-5)
2202 1468 00F0 brlo .L337
2203 146a 8B3F cpi r24,lo8(-5)
2204 146c 01F4 brne .+2
2205 146e 00C0 rjmp .L504
2206 1470 8C3F cpi r24,lo8(-4)
2207 1472 01F4 brne .+2
2208 1474 00C0 rjmp .L505
2209 1476 8D3F cpi r24,lo8(-3)
2210 1478 01F4 brne .+2
2211 147a 00C0 rjmp .L506
2212 147c 8E3F cpi r24,lo8(-2)
2213 147e 01F4 brne .L341
2214 1480 8091 0000 lds r24,Poti4
2215 1484 8093 0000 sts Parameter_UserParam7,r24
2216 1488 00C0 rjmp .L341
2217 .L337:
2218 148a 8093 0000 sts Parameter_UserParam7,r24
2219 .L341:
2220 148e 8091 0000 lds r24,EE_Parameter+53
2221 1492 8B3F cpi r24,lo8(-5)
2222 1494 00F0 brlo .L347
2223 1496 8B3F cpi r24,lo8(-5)
2224 1498 01F4 brne .+2
2225 149a 00C0 rjmp .L507
2226 149c 8C3F cpi r24,lo8(-4)
2227 149e 01F4 brne .+2
2228 14a0 00C0 rjmp .L508
2229 14a2 8D3F cpi r24,lo8(-3)
2230 14a4 01F4 brne .+2
2231 14a6 00C0 rjmp .L509
2232 14a8 8E3F cpi r24,lo8(-2)
2233 14aa 01F4 brne .L351
2234 14ac 8091 0000 lds r24,Poti4
2235 14b0 8093 0000 sts Parameter_UserParam8,r24
2236 14b4 00C0 rjmp .L351
2237 .L347:
2238 14b6 8093 0000 sts Parameter_UserParam8,r24
2239 .L351:
2240 14ba 8091 0000 lds r24,EE_Parameter+34
2241 14be 8B3F cpi r24,lo8(-5)
2242 14c0 00F0 brlo .L357
2243 14c2 8B3F cpi r24,lo8(-5)
2244 14c4 01F4 brne .+2
2245 14c6 00C0 rjmp .L510
2246 14c8 8C3F cpi r24,lo8(-4)
2247 14ca 01F4 brne .+2
2248 14cc 00C0 rjmp .L511
2249 14ce 8D3F cpi r24,lo8(-3)
2250 14d0 01F4 brne .+2
2251 14d2 00C0 rjmp .L512
2252 14d4 8E3F cpi r24,lo8(-2)
2253 14d6 01F4 brne .L361
2254 14d8 8091 0000 lds r24,Poti4
2255 14dc 8093 0000 sts Parameter_ServoNickControl,r24
2256 14e0 00C0 rjmp .L361
2257 .L357:
2258 14e2 8093 0000 sts Parameter_ServoNickControl,r24
2259 .L361:
2260 14e6 8091 0000 lds r24,EE_Parameter+39
2261 14ea 8B3F cpi r24,lo8(-5)
2262 14ec 00F0 brlo .L367
2263 14ee 8B3F cpi r24,lo8(-5)
2264 14f0 01F4 brne .+2
2265 14f2 00C0 rjmp .L513
2266 14f4 8C3F cpi r24,lo8(-4)
2267 14f6 01F4 brne .+2
2268 14f8 00C0 rjmp .L514
2269 14fa 8D3F cpi r24,lo8(-3)
2270 14fc 01F4 brne .+2
2271 14fe 00C0 rjmp .L515
2272 1500 8E3F cpi r24,lo8(-2)
2273 1502 01F4 brne .L371
2274 1504 8091 0000 lds r24,Poti4
2275 1508 8093 0000 sts Parameter_LoopGasLimit,r24
2276 150c 00C0 rjmp .L371
2277 .L367:
2278 150e 8093 0000 sts Parameter_LoopGasLimit,r24
2279 .L371:
2280 1512 8091 0000 lds r24,EE_Parameter+42
2281 1516 8B3F cpi r24,lo8(-5)
2282 1518 00F0 brlo .L377
2283 151a 8B3F cpi r24,lo8(-5)
2284 151c 01F4 brne .+2
2285 151e 00C0 rjmp .L516
2286 1520 8C3F cpi r24,lo8(-4)
2287 1522 01F4 brne .+2
2288 1524 00C0 rjmp .L517
2289 1526 8D3F cpi r24,lo8(-3)
2290 1528 01F4 brne .+2
2291 152a 00C0 rjmp .L518
2292 152c 8E3F cpi r24,lo8(-2)
2293 152e 01F4 brne .L381
2294 1530 8091 0000 lds r24,Poti4
2295 1534 8093 0000 sts Parameter_AchsKopplung1,r24
2296 1538 00C0 rjmp .L381
2297 .L377:
2298 153a 8093 0000 sts Parameter_AchsKopplung1,r24
2299 .L381:
2300 153e 8091 0000 lds r24,EE_Parameter+43
2301 1542 8B3F cpi r24,lo8(-5)
2302 1544 00F0 brlo .L387
2303 1546 8B3F cpi r24,lo8(-5)
2304 1548 01F4 brne .+2
2305 154a 00C0 rjmp .L519
2306 154c 8C3F cpi r24,lo8(-4)
2307 154e 01F4 brne .+2
2308 1550 00C0 rjmp .L520
2309 1552 8D3F cpi r24,lo8(-3)
2310 1554 01F4 brne .+2
2311 1556 00C0 rjmp .L521
2312 1558 8E3F cpi r24,lo8(-2)
2313 155a 01F4 brne .L391
2314 155c 8091 0000 lds r24,Poti4
2315 1560 8093 0000 sts Parameter_AchsKopplung2,r24
2316 1564 00C0 rjmp .L391
2317 .L387:
2318 1566 8093 0000 sts Parameter_AchsKopplung2,r24
2319 .L391:
2320 156a 8091 0000 lds r24,EE_Parameter+44
2321 156e 8B3F cpi r24,lo8(-5)
2322 1570 00F0 brlo .L397
2323 1572 8B3F cpi r24,lo8(-5)
2324 1574 01F4 brne .+2
2325 1576 00C0 rjmp .L522
2326 1578 8C3F cpi r24,lo8(-4)
2327 157a 01F4 brne .+2
2328 157c 00C0 rjmp .L523
2329 157e 8D3F cpi r24,lo8(-3)
2330 1580 01F4 brne .+2
2331 1582 00C0 rjmp .L524
2332 1584 8E3F cpi r24,lo8(-2)
2333 1586 01F4 brne .L401
2334 1588 8091 0000 lds r24,Poti4
2335 158c 8093 0000 sts Parameter_CouplingYawCorrection,r24
2336 1590 00C0 rjmp .L401
2337 .L397:
2338 1592 8093 0000 sts Parameter_CouplingYawCorrection,r24
2339 .L401:
2340 1596 8091 0000 lds r24,EE_Parameter+49
2341 159a 8B3F cpi r24,lo8(-5)
2342 159c 00F0 brlo .L407
2343 159e 8B3F cpi r24,lo8(-5)
2344 15a0 01F4 brne .+2
2345 15a2 00C0 rjmp .L525
2346 15a4 8C3F cpi r24,lo8(-4)
2347 15a6 01F4 brne .+2
2348 15a8 00C0 rjmp .L526
2349 15aa 8D3F cpi r24,lo8(-3)
2350 15ac 01F4 brne .+2
2351 15ae 00C0 rjmp .L527
2352 15b0 8E3F cpi r24,lo8(-2)
2353 15b2 01F4 brne .L411
2354 15b4 8091 0000 lds r24,Poti4
2355 15b8 8093 0000 sts Parameter_DynamicStability,r24
2356 15bc 00C0 rjmp .L411
2357 .L407:
2358 15be 8093 0000 sts Parameter_DynamicStability,r24
2359 .L411:
2360 15c2 8091 0000 lds r24,EE_Parameter+55
2361 15c6 8B3F cpi r24,lo8(-5)
2362 15c8 00F0 brlo .L417
2363 15ca 8B3F cpi r24,lo8(-5)
2364 15cc 01F4 brne .+2
2365 15ce 00C0 rjmp .L528
2366 15d0 8C3F cpi r24,lo8(-4)
2367 15d2 01F4 brne .+2
2368 15d4 00C0 rjmp .L529
2369 15d6 8D3F cpi r24,lo8(-3)
2370 15d8 01F4 brne .+2
2371 15da 00C0 rjmp .L530
2372 15dc 8E3F cpi r24,lo8(-2)
2373 15de 01F4 brne .L421
2374 15e0 8091 0000 lds r24,Poti4
2375 15e4 8093 0000 sts Parameter_J16Timing,r24
2376 15e8 00C0 rjmp .L421
2377 .L417:
2378 15ea 8093 0000 sts Parameter_J16Timing,r24
2379 .L421:
2380 15ee 8091 0000 lds r24,Parameter_J16Timing
2381 15f2 8230 cpi r24,lo8(2)
2382 15f4 00F4 brsh .+2
2383 15f6 00C0 rjmp .L531
2384 15f8 8F3F cpi r24,lo8(-1)
2385 15fa 01F0 breq .L532
2386 .L429:
2387 15fc 8091 0000 lds r24,EE_Parameter+57
2388 1600 8B3F cpi r24,lo8(-5)
2389 1602 00F0 brlo .L431
2390 1604 8B3F cpi r24,lo8(-5)
2391 1606 01F4 brne .+2
2392 1608 00C0 rjmp .L533
2393 160a 8C3F cpi r24,lo8(-4)
2394 160c 01F4 brne .+2
2395 160e 00C0 rjmp .L534
2396 1610 8D3F cpi r24,lo8(-3)
2397 1612 01F4 brne .+2
2398 1614 00C0 rjmp .L535
2399 1616 8E3F cpi r24,lo8(-2)
2400 1618 01F4 brne .L435
2401 161a 8091 0000 lds r24,Poti4
2402 161e 8093 0000 sts Parameter_J17Timing,r24
2403 1622 00C0 rjmp .L435
2404 .L431:
2405 1624 8093 0000 sts Parameter_J17Timing,r24
2406 .L435:
2407 1628 8091 0000 lds r24,Parameter_J17Timing
2408 162c 8230 cpi r24,lo8(2)
2409 162e 00F0 brlo .L536
2410 1630 8F3F cpi r24,lo8(-1)
2411 1632 01F0 breq .L537
2412 .L443:
2413 1634 8091 0000 lds r24,EE_Parameter+74
2414 1638 8B3F cpi r24,lo8(-5)
2415 163a 00F0 brlo .L445
2416 163c 8B3F cpi r24,lo8(-5)
2417 163e 01F4 brne .+2
2418 1640 00C0 rjmp .L538
2419 1642 8C3F cpi r24,lo8(-4)
2420 1644 01F4 brne .+2
2421 1646 00C0 rjmp .L539
2422 1648 8D3F cpi r24,lo8(-3)
2423 164a 01F4 brne .+2
2424 164c 00C0 rjmp .L540
2425 164e 8E3F cpi r24,lo8(-2)
2426 1650 01F0 breq .+2
2427 1652 00C0 rjmp .L449
2428 1654 8091 0000 lds r24,Poti4
2429 1658 8093 0000 sts Parameter_ExternalControl,r24
2430 165c 00C0 rjmp .L449
2431 .L445:
2432 165e 8093 0000 sts Parameter_ExternalControl,r24
2433 1662 00C0 rjmp .L449
2434 .L537:
2435 1664 8093 0000 sts Parameter_J17Timing,r24
2436 1668 00C0 rjmp .L443
2437 .L532:
2438 166a 8093 0000 sts Parameter_J16Timing,r24
2439 166e 00C0 rjmp .L429
2440 .L536:
2441 1670 81E0 ldi r24,lo8(1)
2442 1672 8093 0000 sts Parameter_J17Timing,r24
2443 1676 00C0 rjmp .L443
2444 .L531:
2445 1678 81E0 ldi r24,lo8(1)
2446 167a 8093 0000 sts Parameter_J16Timing,r24
2447 167e 00C0 rjmp .L429
2448 .L501:
2449 1680 8091 0000 lds r24,Poti1
2450 1684 8093 0000 sts Parameter_UserParam6,r24
2451 1688 00C0 rjmp .L331
2452 .L504:
2453 168a 8091 0000 lds r24,Poti1
2454 168e 8093 0000 sts Parameter_UserParam7,r24
2455 1692 00C0 rjmp .L341
2456 .L507:
2457 1694 8091 0000 lds r24,Poti1
2458 1698 8093 0000 sts Parameter_UserParam8,r24
2459 169c 00C0 rjmp .L351
2460 .L510:
2461 169e 8091 0000 lds r24,Poti1
2462 16a2 8093 0000 sts Parameter_ServoNickControl,r24
2463 16a6 00C0 rjmp .L361
2464 .L513:
2465 16a8 8091 0000 lds r24,Poti1
2466 16ac 8093 0000 sts Parameter_LoopGasLimit,r24
2467 16b0 00C0 rjmp .L371
2468 .L516:
2469 16b2 8091 0000 lds r24,Poti1
2470 16b6 8093 0000 sts Parameter_AchsKopplung1,r24
2471 16ba 00C0 rjmp .L381
2472 .L519:
2473 16bc 8091 0000 lds r24,Poti1
2474 16c0 8093 0000 sts Parameter_AchsKopplung2,r24
2475 16c4 00C0 rjmp .L391
2476 .L522:
2477 16c6 8091 0000 lds r24,Poti1
2478 16ca 8093 0000 sts Parameter_CouplingYawCorrection,r24
2479 16ce 00C0 rjmp .L401
2480 .L489:
2481 16d0 8091 0000 lds r24,Poti1
2482 16d4 8093 0000 sts Parameter_UserParam2,r24
2483 16d8 00C0 rjmp .L291
2484 .L492:
2485 16da 8091 0000 lds r24,Poti1
2486 16de 8093 0000 sts Parameter_UserParam3,r24
2487 16e2 00C0 rjmp .L301
2488 .L495:
2489 16e4 8091 0000 lds r24,Poti1
2490 16e8 8093 0000 sts Parameter_UserParam4,r24
2491 16ec 00C0 rjmp .L311
2492 .L498:
2493 16ee 8091 0000 lds r24,Poti1
2494 16f2 8093 0000 sts Parameter_UserParam5,r24
2495 16f6 00C0 rjmp .L321
2496 .L480:
2497 16f8 8091 0000 lds r24,Poti1
2498 16fc 8093 0000 sts Parameter_Gyro_D,r24
2499 1700 00C0 rjmp .L261
2500 .L483:
2501 1702 8091 0000 lds r24,Poti1
2502 1706 8093 0000 sts Parameter_I_Faktor,r24
2503 170a 00C0 rjmp .L271
2504 .L486:
2505 170c 8091 0000 lds r24,Poti1
2506 1710 8093 0000 sts Parameter_UserParam1,r24
2507 1714 00C0 rjmp .L281
2508 .L525:
2509 1716 8091 0000 lds r24,Poti1
2510 171a 8093 0000 sts Parameter_DynamicStability,r24
2511 171e 00C0 rjmp .L411
2512 .L528:
2513 1720 8091 0000 lds r24,Poti1
2514 1724 8093 0000 sts Parameter_J16Timing,r24
2515 1728 00C0 rjmp .L421
2516 .L533:
2517 172a 8091 0000 lds r24,Poti1
2518 172e 8093 0000 sts Parameter_J17Timing,r24
2519 1732 00C0 rjmp .L435
2520 .L538:
2521 1734 8091 0000 lds r24,Poti1
2522 1738 8093 0000 sts Parameter_ExternalControl,r24
2523 173c 00C0 rjmp .L449
2524 .L459:
2525 173e 8091 0000 lds r24,Poti1
2526 1742 8093 0000 sts Parameter_Luftdruck_D,r24
2527 1746 00C0 rjmp .L189
2528 .L462:
2529 1748 8091 0000 lds r24,Poti1
2530 174c 8093 0000 sts Parameter_Hoehe_P,r24
2531 1750 00C0 rjmp .L203
2532 .L466:
2533 1752 8091 0000 lds r24,Poti1
2534 1756 8093 0000 sts Parameter_Hoehe_ACC_Wirkung,r24
2535 175a 00C0 rjmp .L217
2536 .L456:
2537 175c 8091 0000 lds r24,Poti1
2538 1760 8093 0000 sts Parameter_MaxHoehe,r24
2539 1764 00C0 rjmp .L179
2540 .L473:
2541 1766 8091 0000 lds r24,Poti1
2542 176a 8093 0000 sts Parameter_Gyro_P,r24
2543 176e 00C0 rjmp .L237
2544 .L476:
2545 1770 8091 0000 lds r24,Poti1
2546 1774 8093 0000 sts Parameter_Gyro_I,r24
2547 1778 00C0 rjmp .L251
2548 .L470:
2549 177a 8091 0000 lds r24,Poti1
2550 177e 8093 0000 sts Parameter_KompassWirkung,r24
2551 1782 00C0 rjmp .L227
2552 .L535:
2553 1784 8091 0000 lds r24,Poti3
2554 1788 8093 0000 sts Parameter_J17Timing,r24
2555 178c 00C0 rjmp .L435
2556 .L540:
2557 178e 8091 0000 lds r24,Poti3
2558 1792 8093 0000 sts Parameter_ExternalControl,r24
2559 1796 00C0 rjmp .L449
2560 .L482:
2561 1798 8091 0000 lds r24,Poti3
2562 179c 8093 0000 sts Parameter_Gyro_D,r24
2563 17a0 00C0 rjmp .L261
2564 .L472:
2565 17a2 8091 0000 lds r24,Poti3
2566 17a6 8093 0000 sts Parameter_KompassWirkung,r24
2567 17aa 00C0 rjmp .L227
2568 .L475:
2569 17ac 8091 0000 lds r24,Poti3
2570 17b0 8093 0000 sts Parameter_Gyro_P,r24
2571 17b4 00C0 rjmp .L237
2572 .L478:
2573 17b6 8091 0000 lds r24,Poti3
2574 17ba 8093 0000 sts Parameter_Gyro_I,r24
2575 17be 00C0 rjmp .L251
2576 .L461:
2577 17c0 8091 0000 lds r24,Poti3
2578 17c4 8093 0000 sts Parameter_Luftdruck_D,r24
2579 17c8 00C0 rjmp .L189
2580 .L464:
2581 17ca 8091 0000 lds r24,Poti3
2582 17ce 8093 0000 sts Parameter_Hoehe_P,r24
2583 17d2 00C0 rjmp .L203
2584 .L468:
2585 17d4 8091 0000 lds r24,Poti3
2586 17d8 8093 0000 sts Parameter_Hoehe_ACC_Wirkung,r24
2587 17dc 00C0 rjmp .L217
2588 .L458:
2589 17de 8091 0000 lds r24,Poti3
2590 17e2 8093 0000 sts Parameter_MaxHoehe,r24
2591 17e6 00C0 rjmp .L179
2592 .L530:
2593 17e8 8091 0000 lds r24,Poti3
2594 17ec 8093 0000 sts Parameter_J16Timing,r24
2595 17f0 00C0 rjmp .L421
2596 .L521:
2597 17f2 8091 0000 lds r24,Poti3
2598 17f6 8093 0000 sts Parameter_AchsKopplung2,r24
2599 17fa 00C0 rjmp .L391
2600 .L524:
2601 17fc 8091 0000 lds r24,Poti3
2602 1800 8093 0000 sts Parameter_CouplingYawCorrection,r24
2603 1804 00C0 rjmp .L401
2604 .L527:
2605 1806 8091 0000 lds r24,Poti3
2606 180a 8093 0000 sts Parameter_DynamicStability,r24
2607 180e 00C0 rjmp .L411
2608 .L512:
2609 1810 8091 0000 lds r24,Poti3
2610 1814 8093 0000 sts Parameter_ServoNickControl,r24
2611 1818 00C0 rjmp .L361
2612 .L515:
2613 181a 8091 0000 lds r24,Poti3
2614 181e 8093 0000 sts Parameter_LoopGasLimit,r24
2615 1822 00C0 rjmp .L371
2616 .L518:
2617 1824 8091 0000 lds r24,Poti3
2618 1828 8093 0000 sts Parameter_AchsKopplung1,r24
2619 182c 00C0 rjmp .L381
2620 .L509:
2621 182e 8091 0000 lds r24,Poti3
2622 1832 8093 0000 sts Parameter_UserParam8,r24
2623 1836 00C0 rjmp .L351
2624 .L488:
2625 1838 8091 0000 lds r24,Poti3
2626 183c 8093 0000 sts Parameter_UserParam1,r24
2627 1840 00C0 rjmp .L281
2628 .L491:
2629 1842 8091 0000 lds r24,Poti3
2630 1846 8093 0000 sts Parameter_UserParam2,r24
2631 184a 00C0 rjmp .L291
2632 .L494:
2633 184c 8091 0000 lds r24,Poti3
2634 1850 8093 0000 sts Parameter_UserParam3,r24
2635 1854 00C0 rjmp .L301
2636 .L485:
2637 1856 8091 0000 lds r24,Poti3
2638 185a 8093 0000 sts Parameter_I_Faktor,r24
2639 185e 00C0 rjmp .L271
2640 .L506:
2641 1860 8091 0000 lds r24,Poti3
2642 1864 8093 0000 sts Parameter_UserParam7,r24
2643 1868 00C0 rjmp .L341
2644 .L497:
2645 186a 8091 0000 lds r24,Poti3
2646 186e 8093 0000 sts Parameter_UserParam4,r24
2647 1872 00C0 rjmp .L311
2648 .L500:
2649 1874 8091 0000 lds r24,Poti3
2650 1878 8093 0000 sts Parameter_UserParam5,r24
2651 187c 00C0 rjmp .L321
2652 .L503:
2653 187e 8091 0000 lds r24,Poti3
2654 1882 8093 0000 sts Parameter_UserParam6,r24
2655 1886 00C0 rjmp .L331
2656 .L499:
2657 1888 8091 0000 lds r24,Poti2
2658 188c 8093 0000 sts Parameter_UserParam5,r24
2659 1890 00C0 rjmp .L321
2660 .L502:
2661 1892 8091 0000 lds r24,Poti2
2662 1896 8093 0000 sts Parameter_UserParam6,r24
2663 189a 00C0 rjmp .L331
2664 .L487:
2665 189c 8091 0000 lds r24,Poti2
2666 18a0 8093 0000 sts Parameter_UserParam1,r24
2667 18a4 00C0 rjmp .L281
2668 .L490:
2669 18a6 8091 0000 lds r24,Poti2
2670 18aa 8093 0000 sts Parameter_UserParam2,r24
2671 18ae 00C0 rjmp .L291
2672 .L517:
2673 18b0 8091 0000 lds r24,Poti2
2674 18b4 8093 0000 sts Parameter_AchsKopplung1,r24
2675 18b8 00C0 rjmp .L381
2676 .L508:
2677 18ba 8091 0000 lds r24,Poti2
2678 18be 8093 0000 sts Parameter_UserParam8,r24
2679 18c2 00C0 rjmp .L351
2680 .L505:
2681 18c4 8091 0000 lds r24,Poti2
2682 18c8 8093 0000 sts Parameter_UserParam7,r24
2683 18cc 00C0 rjmp .L341
2684 .L496:
2685 18ce 8091 0000 lds r24,Poti2
2686 18d2 8093 0000 sts Parameter_UserParam4,r24
2687 18d6 00C0 rjmp .L311
2688 .L493:
2689 18d8 8091 0000 lds r24,Poti2
2690 18dc 8093 0000 sts Parameter_UserParam3,r24
2691 18e0 00C0 rjmp .L301
2692 .L484:
2693 18e2 8091 0000 lds r24,Poti2
2694 18e6 8093 0000 sts Parameter_I_Faktor,r24
2695 18ea 00C0 rjmp .L271
2696 .L529:
2697 18ec 8091 0000 lds r24,Poti2
2698 18f0 8093 0000 sts Parameter_J16Timing,r24
2699 18f4 00C0 rjmp .L421
2700 .L520:
2701 18f6 8091 0000 lds r24,Poti2
2702 18fa 8093 0000 sts Parameter_AchsKopplung2,r24
2703 18fe 00C0 rjmp .L391
2704 .L467:
2705 1900 8091 0000 lds r24,Poti2
2706 1904 8093 0000 sts Parameter_Hoehe_ACC_Wirkung,r24
2707 1908 00C0 rjmp .L217
2708 .L457:
2709 190a 8091 0000 lds r24,Poti2
2710 190e 8093 0000 sts Parameter_MaxHoehe,r24
2711 1912 00C0 rjmp .L179
2712 .L511:
2713 1914 8091 0000 lds r24,Poti2
2714 1918 8093 0000 sts Parameter_ServoNickControl,r24
2715 191c 00C0 rjmp .L361
2716 .L514:
2717 191e 8091 0000 lds r24,Poti2
2718 1922 8093 0000 sts Parameter_LoopGasLimit,r24
2719 1926 00C0 rjmp .L371
2720 .L523:
2721 1928 8091 0000 lds r24,Poti2
2722 192c 8093 0000 sts Parameter_CouplingYawCorrection,r24
2723 1930 00C0 rjmp .L401
2724 .L526:
2725 1932 8091 0000 lds r24,Poti2
2726 1936 8093 0000 sts Parameter_DynamicStability,r24
2727 193a 00C0 rjmp .L411
2728 .L481:
2729 193c 8091 0000 lds r24,Poti2
2730 1940 8093 0000 sts Parameter_Gyro_D,r24
2731 1944 00C0 rjmp .L261
2732 .L471:
2733 1946 8091 0000 lds r24,Poti2
2734 194a 8093 0000 sts Parameter_KompassWirkung,r24
2735 194e 00C0 rjmp .L227
2736 .L534:
2737 1950 8091 0000 lds r24,Poti2
2738 1954 8093 0000 sts Parameter_J17Timing,r24
2739 1958 00C0 rjmp .L435
2740 .L539:
2741 195a 8091 0000 lds r24,Poti2
2742 195e 8093 0000 sts Parameter_ExternalControl,r24
2743 1962 00C0 rjmp .L449
2744 .L460:
2745 1964 8091 0000 lds r24,Poti2
2746 1968 8093 0000 sts Parameter_Luftdruck_D,r24
2747 196c 00C0 rjmp .L189
2748 .L463:
2749 196e 8091 0000 lds r24,Poti2
2750 1972 8093 0000 sts Parameter_Hoehe_P,r24
2751 1976 00C0 rjmp .L203
2752 .L474:
2753 1978 8091 0000 lds r24,Poti2
2754 197c 8093 0000 sts Parameter_Gyro_P,r24
2755 1980 00C0 rjmp .L237
2756 .L477:
2757 1982 8091 0000 lds r24,Poti2
2758 1986 8093 0000 sts Parameter_Gyro_I,r24
2759 198a 00C0 rjmp .L251
2760 .L449:
2761 198c 6091 0000 lds r22,Parameter_I_Faktor
2762 1990 70E0 ldi r23,lo8(0)
2763 1992 6F5F subi r22,lo8(-(1))
2764 1994 7F4F sbci r23,hi8(-(1))
2765 1996 8CE3 ldi r24,lo8(10300)
2766 1998 98E2 ldi r25,hi8(10300)
2767 199a 0E94 0000 call __divmodhi4
2768 199e 7093 0000 sts (Ki)+1,r23
2769 19a2 6093 0000 sts Ki,r22
2770 19a6 8091 0000 lds r24,EE_Parameter+19
2771 19aa 8093 0000 sts MAX_GAS,r24
2772 19ae 8091 0000 lds r24,EE_Parameter+18
2773 19b2 8093 0000 sts MIN_GAS,r24
2774 /* epilogue: frame size=0 */
2775 19b6 0895 ret
2776 /* epilogue end (size=1) */
2777 /* function ParameterZuordnung size 1058 (1057) */
2779 .global SendMotorData
2781 SendMotorData:
2782 /* prologue: frame size=0 */
2783 /* prologue end (size=0) */
2784 19b8 8091 0000 lds r24,MotorenEin
2785 19bc 8823 tst r24
2786 19be 01F4 brne .L542
2787 19c0 1092 0000 sts Motor_Hinten,__zero_reg__
2788 19c4 1092 0000 sts Motor_Vorne,__zero_reg__
2789 19c8 1092 0000 sts Motor_Rechts,__zero_reg__
2790 19cc 1092 0000 sts Motor_Links,__zero_reg__
2791 19d0 8091 0000 lds r24,MotorTest
2792 19d4 8823 tst r24
2793 19d6 01F0 breq .L544
2794 19d8 8093 0000 sts Motor_Vorne,r24
2795 .L544:
2796 19dc 8091 0000 lds r24,MotorTest+1
2797 19e0 8823 tst r24
2798 19e2 01F0 breq .L546
2799 19e4 8093 0000 sts Motor_Hinten,r24
2800 .L546:
2801 19e8 8091 0000 lds r24,MotorTest+2
2802 19ec 8823 tst r24
2803 19ee 01F0 breq .L548
2804 19f0 8093 0000 sts Motor_Links,r24
2805 .L548:
2806 19f4 8091 0000 lds r24,MotorTest+3
2807 19f8 8823 tst r24
2808 19fa 01F4 brne .L554
2809 .L550:
2810 19fc 8091 0000 lds r24,MikroKopterFlags
2811 1a00 8C7F andi r24,lo8(-4)
2812 1a02 8093 0000 sts MikroKopterFlags,r24
2813 1a06 00C0 rjmp .L552
2814 .L542:
2815 1a08 8091 0000 lds r24,MikroKopterFlags
2816 1a0c 8160 ori r24,lo8(1)
2817 1a0e 8093 0000 sts MikroKopterFlags,r24
2818 1a12 00C0 rjmp .L552
2819 .L554:
2820 1a14 8093 0000 sts Motor_Rechts,r24
2821 1a18 00C0 rjmp .L550
2822 .L552:
2823 1a1a 8091 0000 lds r24,Motor_Vorne
2824 1a1e 90E0 ldi r25,lo8(0)
2825 1a20 9093 0000 sts (DebugOut+26)+1,r25
2826 1a24 8093 0000 sts DebugOut+26,r24
2827 1a28 8091 0000 lds r24,Motor_Hinten
2828 1a2c 90E0 ldi r25,lo8(0)
2829 1a2e 9093 0000 sts (DebugOut+28)+1,r25
2830 1a32 8093 0000 sts DebugOut+28,r24
2831 1a36 8091 0000 lds r24,Motor_Links
2832 1a3a 90E0 ldi r25,lo8(0)
2833 1a3c 9093 0000 sts (DebugOut+30)+1,r25
2834 1a40 8093 0000 sts DebugOut+30,r24
2835 1a44 8091 0000 lds r24,Motor_Rechts
2836 1a48 90E0 ldi r25,lo8(0)
2837 1a4a 9093 0000 sts (DebugOut+32)+1,r25
2838 1a4e 8093 0000 sts DebugOut+32,r24
2839 1a52 1092 0000 sts twi_state,__zero_reg__
2840 1a56 1092 0000 sts motor,__zero_reg__
2841 1a5a 0E94 0000 call i2c_start
2842 /* epilogue: frame size=0 */
2843 1a5e 0895 ret
2844 /* epilogue end (size=1) */
2845 /* function SendMotorData size 84 (83) */
2847 .global CalibrierMittelwert
2849 CalibrierMittelwert:
2850 /* prologue: frame size=0 */
2851 /* prologue end (size=0) */
2852 1a60 8091 0000 lds r24,PlatinenVersion
2853 1a64 8D30 cpi r24,lo8(13)
2854 1a66 01F4 brne .+2
2855 1a68 00C0 rjmp .L595
2856 .L556:
2857 1a6a 1092 7A00 sts 122,__zero_reg__
2858 1a6e 8091 0000 lds r24,AdWertNick
2859 1a72 9091 0000 lds r25,(AdWertNick)+1
2860 1a76 9093 0000 sts (MesswertNick)+1,r25
2861 1a7a 8093 0000 sts MesswertNick,r24
2862 1a7e 8091 0000 lds r24,AdWertRoll
2863 1a82 9091 0000 lds r25,(AdWertRoll)+1
2864 1a86 9093 0000 sts (MesswertRoll)+1,r25
2865 1a8a 8093 0000 sts MesswertRoll,r24
2866 1a8e 8091 0000 lds r24,AdWertGier
2867 1a92 9091 0000 lds r25,(AdWertGier)+1
2868 1a96 9093 0000 sts (MesswertGier)+1,r25
2869 1a9a 8093 0000 sts MesswertGier,r24
2870 1a9e 6091 0000 lds r22,AdWertAccNick
2871 1aa2 7091 0000 lds r23,(AdWertAccNick)+1
2872 1aa6 8827 clr r24
2873 1aa8 77FD sbrc r23,7
2874 1aaa 8095 com r24
2875 1aac 982F mov r25,r24
2876 1aae 26E0 ldi r18,lo8(6)
2877 1ab0 30E0 ldi r19,hi8(6)
2878 1ab2 40E0 ldi r20,hlo8(6)
2879 1ab4 50E0 ldi r21,hhi8(6)
2880 1ab6 0E94 0000 call __mulsi3
2881 1aba 7093 0000 sts (Mittelwert_AccNick)+1,r23
2882 1abe 6093 0000 sts Mittelwert_AccNick,r22
2883 1ac2 6091 0000 lds r22,AdWertAccRoll
2884 1ac6 7091 0000 lds r23,(AdWertAccRoll)+1
2885 1aca 8827 clr r24
2886 1acc 77FD sbrc r23,7
2887 1ace 8095 com r24
2888 1ad0 982F mov r25,r24
2889 1ad2 0E94 0000 call __mulsi3
2890 1ad6 7093 0000 sts (Mittelwert_AccRoll)+1,r23
2891 1ada 6093 0000 sts Mittelwert_AccRoll,r22
2892 1ade 8091 0000 lds r24,AdWertAccHoch
2893 1ae2 9091 0000 lds r25,(AdWertAccHoch)+1
2894 1ae6 9093 0000 sts (Mittelwert_AccHoch)+1,r25
2895 1aea 8093 0000 sts Mittelwert_AccHoch,r24
2896 1aee 8FEC ldi r24,lo8(-49)
2897 1af0 8093 7A00 sts 122,r24
2898 1af4 8091 0000 lds r24,EE_Parameter+4
2899 1af8 E82F mov r30,r24
2900 1afa F0E0 ldi r31,lo8(0)
2901 1afc EE0F lsl r30
2902 1afe FF1F rol r31
2903 1b00 E050 subi r30,lo8(-(PPM_in))
2904 1b02 F040 sbci r31,hi8(-(PPM_in))
2905 1b04 8081 ld r24,Z
2906 1b06 9181 ldd r25,Z+1
2907 1b08 A091 0000 lds r26,Poti1
2908 1b0c B091 0000 lds r27,(Poti1)+1
2909 1b10 8259 subi r24,lo8(-(110))
2910 1b12 9F4F sbci r25,hi8(-(110))
2911 1b14 A817 cp r26,r24
2912 1b16 B907 cpc r27,r25
2913 1b18 04F0 brlt .+2
2914 1b1a 00C0 rjmp .L558
2915 1b1c 1196 adiw r26,1
2916 1b1e B093 0000 sts (Poti1)+1,r27
2917 1b22 A093 0000 sts Poti1,r26
2918 .L560:
2919 1b26 8091 0000 lds r24,EE_Parameter+5
2920 1b2a E82F mov r30,r24
2921 1b2c F0E0 ldi r31,lo8(0)
2922 1b2e EE0F lsl r30
2923 1b30 FF1F rol r31
2924 1b32 E050 subi r30,lo8(-(PPM_in))
2925 1b34 F040 sbci r31,hi8(-(PPM_in))
2926 1b36 8081 ld r24,Z
2927 1b38 9181 ldd r25,Z+1
2928 1b3a 6091 0000 lds r22,Poti2
2929 1b3e 7091 0000 lds r23,(Poti2)+1
2930 1b42 8259 subi r24,lo8(-(110))
2931 1b44 9F4F sbci r25,hi8(-(110))
2932 1b46 6817 cp r22,r24
2933 1b48 7907 cpc r23,r25
2934 1b4a 04F0 brlt .+2
2935 1b4c 00C0 rjmp .L563
2936 1b4e 6F5F subi r22,lo8(-(1))
2937 1b50 7F4F sbci r23,hi8(-(1))
2938 1b52 7093 0000 sts (Poti2)+1,r23
2939 1b56 6093 0000 sts Poti2,r22
2940 .L565:
2941 1b5a 8091 0000 lds r24,EE_Parameter+6
2942 1b5e E82F mov r30,r24
2943 1b60 F0E0 ldi r31,lo8(0)
2944 1b62 EE0F lsl r30
2945 1b64 FF1F rol r31
2946 1b66 E050 subi r30,lo8(-(PPM_in))
2947 1b68 F040 sbci r31,hi8(-(PPM_in))
2948 1b6a 8081 ld r24,Z
2949 1b6c 9181 ldd r25,Z+1
2950 1b6e 4091 0000 lds r20,Poti3
2951 1b72 5091 0000 lds r21,(Poti3)+1
2952 1b76 8259 subi r24,lo8(-(110))
2953 1b78 9F4F sbci r25,hi8(-(110))
2954 1b7a 4817 cp r20,r24
2955 1b7c 5907 cpc r21,r25
2956 1b7e 04F0 brlt .+2
2957 1b80 00C0 rjmp .L568
2958 1b82 4F5F subi r20,lo8(-(1))
2959 1b84 5F4F sbci r21,hi8(-(1))
2960 1b86 5093 0000 sts (Poti3)+1,r21
2961 1b8a 4093 0000 sts Poti3,r20
2962 .L570:
2963 1b8e 8091 0000 lds r24,EE_Parameter+7
2964 1b92 E82F mov r30,r24
2965 1b94 F0E0 ldi r31,lo8(0)
2966 1b96 EE0F lsl r30
2967 1b98 FF1F rol r31
2968 1b9a E050 subi r30,lo8(-(PPM_in))
2969 1b9c F040 sbci r31,hi8(-(PPM_in))
2970 1b9e 8081 ld r24,Z
2971 1ba0 9181 ldd r25,Z+1
2972 1ba2 2091 0000 lds r18,Poti4
2973 1ba6 3091 0000 lds r19,(Poti4)+1
2974 1baa 8259 subi r24,lo8(-(110))
2975 1bac 9F4F sbci r25,hi8(-(110))
2976 1bae 2817 cp r18,r24
2977 1bb0 3907 cpc r19,r25
2978 1bb2 04F4 brge .L573
2979 1bb4 2F5F subi r18,lo8(-(1))
2980 1bb6 3F4F sbci r19,hi8(-(1))
2981 1bb8 3093 0000 sts (Poti4)+1,r19
2982 1bbc 2093 0000 sts Poti4,r18
2983 .L575:
2984 1bc0 B7FD sbrc r27,7
2985 1bc2 00C0 rjmp .L596
2986 .L578:
2987 1bc4 AF3F cpi r26,255
2988 1bc6 B105 cpc r27,__zero_reg__
2989 1bc8 01F0 breq .+4
2990 1bca 04F0 brlt .+2
2991 1bcc 00C0 rjmp .L597
2992 .L580:
2993 1bce 77FD sbrc r23,7
2994 1bd0 00C0 rjmp .L598
2995 .L582:
2996 1bd2 6F3F cpi r22,255
2997 1bd4 7105 cpc r23,__zero_reg__
2998 1bd6 01F0 breq .+4
2999 1bd8 04F0 brlt .+2
3000 1bda 00C0 rjmp .L599
3001 .L584:
3002 1bdc 57FD sbrc r21,7
3003 1bde 00C0 rjmp .L600
3004 .L586:
3005 1be0 4F3F cpi r20,255
3006 1be2 5105 cpc r21,__zero_reg__
3007 1be4 01F0 breq .+4
3008 1be6 04F0 brlt .+2
3009 1be8 00C0 rjmp .L601
3010 .L588:
3011 1bea 37FD sbrc r19,7
3012 1bec 00C0 rjmp .L602
3013 .L590:
3014 1bee 2F3F cpi r18,255
3015 1bf0 3105 cpc r19,__zero_reg__
3016 1bf2 01F0 breq .+2
3017 1bf4 04F4 brge .+2
3018 1bf6 00C0 rjmp .L592
3019 1bf8 8FEF ldi r24,lo8(255)
3020 1bfa 90E0 ldi r25,hi8(255)
3021 1bfc 9093 0000 sts (Poti4)+1,r25
3022 1c00 8093 0000 sts Poti4,r24
3023 1c04 00C0 rjmp .L592
3024 .L573:
3025 1c06 8081 ld r24,Z
3026 1c08 9181 ldd r25,Z+1
3027 1c0a 8259 subi r24,lo8(-(110))
3028 1c0c 9F4F sbci r25,hi8(-(110))
3029 1c0e 8217 cp r24,r18
3030 1c10 9307 cpc r25,r19
3031 1c12 04F4 brge .L575
3032 1c14 2115 cp r18,__zero_reg__
3033 1c16 3105 cpc r19,__zero_reg__
3034 1c18 01F0 breq .L575
3035 1c1a 2150 subi r18,lo8(-(-1))
3036 1c1c 3040 sbci r19,hi8(-(-1))
3037 1c1e 3093 0000 sts (Poti4)+1,r19
3038 1c22 2093 0000 sts Poti4,r18
3039 1c26 B7FF sbrs r27,7
3040 1c28 00C0 rjmp .L578
3041 .L596:
3042 1c2a 1092 0000 sts (Poti1)+1,__zero_reg__
3043 1c2e 1092 0000 sts Poti1,__zero_reg__
3044 1c32 77FF sbrs r23,7
3045 1c34 00C0 rjmp .L582
3046 .L598:
3047 1c36 1092 0000 sts (Poti2)+1,__zero_reg__
3048 1c3a 1092 0000 sts Poti2,__zero_reg__
3049 1c3e 57FF sbrs r21,7
3050 1c40 00C0 rjmp .L586
3051 .L600:
3052 1c42 1092 0000 sts (Poti3)+1,__zero_reg__
3053 1c46 1092 0000 sts Poti3,__zero_reg__
3054 1c4a 37FF sbrs r19,7
3055 1c4c 00C0 rjmp .L590
3056 .L602:
3057 1c4e 1092 0000 sts (Poti4)+1,__zero_reg__
3058 1c52 1092 0000 sts Poti4,__zero_reg__
3059 1c56 00C0 rjmp .L592
3060 .L568:
3061 1c58 8081 ld r24,Z
3062 1c5a 9181 ldd r25,Z+1
3063 1c5c 8259 subi r24,lo8(-(110))
3064 1c5e 9F4F sbci r25,hi8(-(110))
3065 1c60 8417 cp r24,r20
3066 1c62 9507 cpc r25,r21
3067 1c64 04F0 brlt .+2
3068 1c66 00C0 rjmp .L570
3069 1c68 4115 cp r20,__zero_reg__
3070 1c6a 5105 cpc r21,__zero_reg__
3071 1c6c 01F4 brne .+2
3072 1c6e 00C0 rjmp .L570
3073 1c70 4150 subi r20,lo8(-(-1))
3074 1c72 5040 sbci r21,hi8(-(-1))
3075 1c74 5093 0000 sts (Poti3)+1,r21
3076 1c78 4093 0000 sts Poti3,r20
3077 1c7c 00C0 rjmp .L570
3078 .L563:
3079 1c7e 8081 ld r24,Z
3080 1c80 9181 ldd r25,Z+1
3081 1c82 8259 subi r24,lo8(-(110))
3082 1c84 9F4F sbci r25,hi8(-(110))
3083 1c86 8617 cp r24,r22
3084 1c88 9707 cpc r25,r23
3085 1c8a 04F0 brlt .+2
3086 1c8c 00C0 rjmp .L565
3087 1c8e 6115 cp r22,__zero_reg__
3088 1c90 7105 cpc r23,__zero_reg__
3089 1c92 01F4 brne .+2
3090 1c94 00C0 rjmp .L565
3091 1c96 6150 subi r22,lo8(-(-1))
3092 1c98 7040 sbci r23,hi8(-(-1))
3093 1c9a 7093 0000 sts (Poti2)+1,r23
3094 1c9e 6093 0000 sts Poti2,r22
3095 1ca2 00C0 rjmp .L565
3096 .L558:
3097 1ca4 8081 ld r24,Z
3098 1ca6 9181 ldd r25,Z+1
3099 1ca8 8259 subi r24,lo8(-(110))
3100 1caa 9F4F sbci r25,hi8(-(110))
3101 1cac 8A17 cp r24,r26
3102 1cae 9B07 cpc r25,r27
3103 1cb0 04F0 brlt .+2
3104 1cb2 00C0 rjmp .L560
3105 1cb4 1097 sbiw r26,0
3106 1cb6 01F4 brne .+2
3107 1cb8 00C0 rjmp .L560
3108 1cba 1197 sbiw r26,1
3109 1cbc B093 0000 sts (Poti1)+1,r27
3110 1cc0 A093 0000 sts Poti1,r26
3111 1cc4 00C0 rjmp .L560
3112 .L601:
3113 1cc6 8FEF ldi r24,lo8(255)
3114 1cc8 90E0 ldi r25,hi8(255)
3115 1cca 9093 0000 sts (Poti3)+1,r25
3116 1cce 8093 0000 sts Poti3,r24
3117 1cd2 00C0 rjmp .L588
3118 .L599:
3119 1cd4 8FEF ldi r24,lo8(255)
3120 1cd6 90E0 ldi r25,hi8(255)
3121 1cd8 9093 0000 sts (Poti2)+1,r25
3122 1cdc 8093 0000 sts Poti2,r24
3123 1ce0 00C0 rjmp .L584
3124 .L597:
3125 1ce2 8FEF ldi r24,lo8(255)
3126 1ce4 90E0 ldi r25,hi8(255)
3127 1ce6 9093 0000 sts (Poti1)+1,r25
3128 1cea 8093 0000 sts Poti1,r24
3129 1cee 00C0 rjmp .L580
3130 .L595:
3131 1cf0 0E94 0000 call SucheGyroOffset
3132 1cf4 00C0 rjmp .L556
3133 .L592:
3134 1cf6 6091 0000 lds r22,EE_Parameter+45
3135 1cfa 70E0 ldi r23,lo8(0)
3136 1cfc 80E0 ldi r24,lo8(0)
3137 1cfe 90E0 ldi r25,hi8(0)
3138 1d00 24EC ldi r18,lo8(2500)
3139 1d02 39E0 ldi r19,hi8(2500)
3140 1d04 40E0 ldi r20,hlo8(2500)
3141 1d06 50E0 ldi r21,hhi8(2500)
3142 1d08 0E94 0000 call __mulsi3
3143 1d0c 6093 0000 sts Umschlag180Nick,r22
3144 1d10 7093 0000 sts (Umschlag180Nick)+1,r23
3145 1d14 8093 0000 sts (Umschlag180Nick)+2,r24
3146 1d18 9093 0000 sts (Umschlag180Nick)+3,r25
3147 1d1c 6091 0000 lds r22,EE_Parameter+46
3148 1d20 70E0 ldi r23,lo8(0)
3149 1d22 80E0 ldi r24,lo8(0)
3150 1d24 90E0 ldi r25,hi8(0)
3151 1d26 0E94 0000 call __mulsi3
3152 1d2a 6093 0000 sts Umschlag180Roll,r22
3153 1d2e 7093 0000 sts (Umschlag180Roll)+1,r23
3154 1d32 8093 0000 sts (Umschlag180Roll)+2,r24
3155 1d36 9093 0000 sts (Umschlag180Roll)+3,r25
3156 /* epilogue: frame size=0 */
3157 1d3a 0895 ret
3158 /* epilogue end (size=1) */
3159 /* function CalibrierMittelwert size 366 (365) */
3161 .global SetNeutral
3163 SetNeutral:
3164 /* prologue: frame size=0 */
3165 1d3c 6F92 push r6
3166 1d3e 7F92 push r7
3167 1d40 8F92 push r8
3168 1d42 9F92 push r9
3169 1d44 AF92 push r10
3170 1d46 BF92 push r11
3171 1d48 CF92 push r12
3172 1d4a DF92 push r13
3173 1d4c EF92 push r14
3174 1d4e FF92 push r15
3175 1d50 0F93 push r16
3176 1d52 1F93 push r17
3177 1d54 CF93 push r28
3178 1d56 DF93 push r29
3179 /* prologue end (size=14) */
3180 1d58 1092 0000 sts ServoActive,__zero_reg__
3181 1d5c 469A sbi 40-0x20,6
3182 1d5e 1092 0000 sts (NeutralAccX)+1,__zero_reg__
3183 1d62 1092 0000 sts NeutralAccX,__zero_reg__
3184 1d66 1092 0000 sts (NeutralAccY)+1,__zero_reg__
3185 1d6a 1092 0000 sts NeutralAccY,__zero_reg__
3186 1d6e 80E0 ldi r24,lo8(0x0)
3187 1d70 90E0 ldi r25,hi8(0x0)
3188 1d72 A0E0 ldi r26,hlo8(0x0)
3189 1d74 B0E0 ldi r27,hhi8(0x0)
3190 1d76 8093 0000 sts NeutralAccZ,r24
3191 1d7a 9093 0000 sts (NeutralAccZ)+1,r25
3192 1d7e A093 0000 sts (NeutralAccZ)+2,r26
3193 1d82 B093 0000 sts (NeutralAccZ)+3,r27
3194 1d86 1092 0000 sts (AdNeutralNick)+1,__zero_reg__
3195 1d8a 1092 0000 sts AdNeutralNick,__zero_reg__
3196 1d8e 1092 0000 sts (AdNeutralRoll)+1,__zero_reg__
3197 1d92 1092 0000 sts AdNeutralRoll,__zero_reg__
3198 1d96 1092 0000 sts (AdNeutralGier)+1,__zero_reg__
3199 1d9a 1092 0000 sts AdNeutralGier,__zero_reg__
3200 1d9e 1092 0000 sts (AdNeutralGierBias)+1,__zero_reg__
3201 1da2 1092 0000 sts AdNeutralGierBias,__zero_reg__
3202 1da6 1092 0000 sts Parameter_AchsKopplung1,__zero_reg__
3203 1daa 1092 0000 sts Parameter_AchsKopplung2,__zero_reg__
3204 1dae 1092 0000 sts ExpandBaro,__zero_reg__
3205 1db2 0E94 0000 call CalibrierMittelwert
3206 1db6 84E6 ldi r24,lo8(100)
3207 1db8 90E0 ldi r25,hi8(100)
3208 1dba 0E94 0000 call Delay_ms_Mess
3209 1dbe 0E94 0000 call CalibrierMittelwert
3210 1dc2 8091 0000 lds r24,EE_Parameter+8
3211 1dc6 80FF sbrs r24,0
3212 1dc8 00C0 rjmp .L604
3213 1dca 8091 0000 lds r24,MessLuftdruck
3214 1dce 9091 0000 lds r25,(MessLuftdruck)+1
3215 1dd2 875B subi r24,lo8(951)
3216 1dd4 9340 sbci r25,hi8(951)
3217 1dd6 00F0 brlo .+2
3218 1dd8 00C0 rjmp .L606
3219 1dda 8091 0000 lds r24,MessLuftdruck
3220 1dde 9091 0000 lds r25,(MessLuftdruck)+1
3221 1de2 8E5E subi r24,lo8(750)
3222 1de4 9240 sbci r25,hi8(750)
3223 1de6 00F4 brsh .+2
3224 1de8 00C0 rjmp .L606
3225 .L604:
3226 1dea EE24 clr r14
3227 1dec CC24 clr r12
3228 1dee DD24 clr r13
3229 1df0 C0E0 ldi r28,lo8(0)
3230 1df2 D0E0 ldi r29,hi8(0)
3231 1df4 00E0 ldi r16,lo8(0)
3232 1df6 10E0 ldi r17,hi8(0)
3233 .L608:
3234 1df8 8AE0 ldi r24,lo8(10)
3235 1dfa 90E0 ldi r25,hi8(10)
3236 1dfc 0E94 0000 call Delay_ms_Mess
3237 1e00 8091 0000 lds r24,AdWertGier
3238 1e04 9091 0000 lds r25,(AdWertGier)+1
3239 1e08 C80E add r12,r24
3240 1e0a D91E adc r13,r25
3241 1e0c 8091 0000 lds r24,AdWertNick
3242 1e10 9091 0000 lds r25,(AdWertNick)+1
3243 1e14 C80F add r28,r24
3244 1e16 D91F adc r29,r25
3245 1e18 8091 0000 lds r24,AdWertRoll
3246 1e1c 9091 0000 lds r25,(AdWertRoll)+1
3247 1e20 080F add r16,r24
3248 1e22 191F adc r17,r25
3249 1e24 E394 inc r14
3250 1e26 80E2 ldi r24,lo8(32)
3251 1e28 E816 cp r14,r24
3252 1e2a 01F4 brne .L608
3253 1e2c AE01 movw r20,r28
3254 1e2e 405F subi r20,lo8(-(16))
3255 1e30 5F4F sbci r21,hi8(-(16))
3256 1e32 5695 lsr r21
3257 1e34 4795 ror r20
3258 1e36 5695 lsr r21
3259 1e38 4795 ror r20
3260 1e3a 5093 0000 sts (AdNeutralNick)+1,r21
3261 1e3e 4093 0000 sts AdNeutralNick,r20
3262 1e42 9801 movw r18,r16
3263 1e44 205F subi r18,lo8(-(16))
3264 1e46 3F4F sbci r19,hi8(-(16))
3265 1e48 3695 lsr r19
3266 1e4a 2795 ror r18
3267 1e4c 3695 lsr r19
3268 1e4e 2795 ror r18
3269 1e50 3093 0000 sts (AdNeutralRoll)+1,r19
3270 1e54 2093 0000 sts AdNeutralRoll,r18
3271 1e58 C601 movw r24,r12
3272 1e5a 4096 adiw r24,16
3273 1e5c 9695 lsr r25
3274 1e5e 8795 ror r24
3275 1e60 9295 swap r25
3276 1e62 8295 swap r24
3277 1e64 8F70 andi r24,0x0f
3278 1e66 8927 eor r24,r25
3279 1e68 9F70 andi r25,0x0f
3280 1e6a 8927 eor r24,r25
3281 1e6c 9093 0000 sts (AdNeutralGier)+1,r25
3282 1e70 8093 0000 sts AdNeutralGier,r24
3283 1e74 9093 0000 sts (AdNeutralGierBias)+1,r25
3284 1e78 8093 0000 sts AdNeutralGierBias,r24
3285 1e7c 3093 0000 sts (StartNeutralRoll)+1,r19
3286 1e80 2093 0000 sts StartNeutralRoll,r18
3287 1e84 5093 0000 sts (StartNeutralNick)+1,r21
3288 1e88 4093 0000 sts StartNeutralNick,r20
3289 1e8c 40E0 ldi r20,lo8(EEPromArray+4)
3290 1e8e 50E0 ldi r21,hi8(EEPromArray+4)
3291 1e90 DA01 movw r26,r20
3292 /* #APP */
3293 1e92 0E94 0000 call __eeprom_read_byte_1F2021
3294 1e96 802D mov r24,__tmp_reg__
3295 /* #NOAPP */
3296 1e98 8530 cpi r24,lo8(5)
3297 1e9a 00F0 brlo .L610
3298 1e9c 8091 0000 lds r24,Mittelwert_AccRoll
3299 1ea0 9091 0000 lds r25,(Mittelwert_AccRoll)+1
3300 1ea4 97FD sbrc r25,7
3301 1ea6 00C0 rjmp .L618
3302 .L612:
3303 1ea8 6CE0 ldi r22,lo8(12)
3304 1eaa 70E0 ldi r23,hi8(12)
3305 1eac 0E94 0000 call __divmodhi4
3306 1eb0 7093 0000 sts (NeutralAccY)+1,r23
3307 1eb4 6093 0000 sts NeutralAccY,r22
3308 1eb8 8091 0000 lds r24,Mittelwert_AccNick
3309 1ebc 9091 0000 lds r25,(Mittelwert_AccNick)+1
3310 1ec0 97FD sbrc r25,7
3311 1ec2 00C0 rjmp .L619
3312 .L613:
3313 1ec4 6CE0 ldi r22,lo8(12)
3314 1ec6 70E0 ldi r23,hi8(12)
3315 1ec8 0E94 0000 call __divmodhi4
3316 1ecc 7093 0000 sts (NeutralAccX)+1,r23
3317 1ed0 6093 0000 sts NeutralAccX,r22
3318 1ed4 6091 0000 lds r22,Aktuell_az
3319 1ed8 7091 0000 lds r23,(Aktuell_az)+1
3320 1edc 8827 clr r24
3321 1ede 77FD sbrc r23,7
3322 1ee0 8095 com r24
3323 1ee2 982F mov r25,r24
3324 1ee4 0E94 0000 call __floatsisf
3325 1ee8 6093 0000 sts NeutralAccZ,r22
3326 1eec 7093 0000 sts (NeutralAccZ)+1,r23
3327 1ef0 8093 0000 sts (NeutralAccZ)+2,r24
3328 1ef4 9093 0000 sts (NeutralAccZ)+3,r25
3329 1ef8 00C0 rjmp .L614
3330 .L610:
3331 1efa DA01 movw r26,r20
3332 /* #APP */
3333 1efc 0E94 0000 call __eeprom_read_byte_1F2021
3334 1f00 802D mov r24,__tmp_reg__
3335 /* #NOAPP */
3336 1f02 4F5F subi r20,lo8(-(1))
3337 1f04 5F4F sbci r21,hi8(-(1))
3338 1f06 DA01 movw r26,r20
3339 /* #APP */
3340 1f08 0E94 0000 call __eeprom_read_byte_1F2021
3341 1f0c 202D mov r18,__tmp_reg__
3342 /* #NOAPP */
3343 1f0e 90E0 ldi r25,lo8(0)
3344 1f10 982F mov r25,r24
3345 1f12 8827 clr r24
3346 1f14 820F add r24,r18
3347 1f16 911D adc r25,__zero_reg__
3348 1f18 9093 0000 sts (NeutralAccX)+1,r25
3349 1f1c 8093 0000 sts NeutralAccX,r24
3350 1f20 4F5F subi r20,lo8(-(1))
3351 1f22 5F4F sbci r21,hi8(-(1))
3352 1f24 DA01 movw r26,r20
3353 /* #APP */
3354 1f26 0E94 0000 call __eeprom_read_byte_1F2021
3355 1f2a 802D mov r24,__tmp_reg__
3356 /* #NOAPP */
3357 1f2c 4F5F subi r20,lo8(-(1))
3358 1f2e 5F4F sbci r21,hi8(-(1))
3359 1f30 DA01 movw r26,r20
3360 /* #APP */
3361 1f32 0E94 0000 call __eeprom_read_byte_1F2021
3362 1f36 202D mov r18,__tmp_reg__
3363 /* #NOAPP */
3364 1f38 90E0 ldi r25,lo8(0)
3365 1f3a 982F mov r25,r24
3366 1f3c 8827 clr r24
3367 1f3e 820F add r24,r18
3368 1f40 911D adc r25,__zero_reg__
3369 1f42 9093 0000 sts (NeutralAccY)+1,r25
3370 1f46 8093 0000 sts NeutralAccY,r24
3371 1f4a 4F5F subi r20,lo8(-(1))
3372 1f4c 5F4F sbci r21,hi8(-(1))
3373 1f4e DA01 movw r26,r20
3374 /* #APP */
3375 1f50 0E94 0000 call __eeprom_read_byte_1F2021
3376 1f54 602D mov r22,__tmp_reg__
3377 /* #NOAPP */
3378 1f56 4F5F subi r20,lo8(-(1))
3379 1f58 5F4F sbci r21,hi8(-(1))
3380 1f5a DA01 movw r26,r20
3381 /* #APP */
3382 1f5c 0E94 0000 call __eeprom_read_byte_1F2021
3383 1f60 202D mov r18,__tmp_reg__
3384 /* #NOAPP */
3385 1f62 70E0 ldi r23,lo8(0)
3386 1f64 762F mov r23,r22
3387 1f66 6627 clr r22
3388 1f68 620F add r22,r18
3389 1f6a 711D adc r23,__zero_reg__
3390 1f6c 8827 clr r24
3391 1f6e 77FD sbrc r23,7
3392 1f70 8095 com r24
3393 1f72 982F mov r25,r24
3394 1f74 0E94 0000 call __floatsisf
3395 1f78 6093 0000 sts NeutralAccZ,r22
3396 1f7c 7093 0000 sts (NeutralAccZ)+1,r23
3397 1f80 8093 0000 sts (NeutralAccZ)+2,r24
3398 1f84 9093 0000 sts (NeutralAccZ)+3,r25
3399 1f88 00C0 rjmp .L614
3400 .L606:
3401 1f8a 0E94 0000 call SucheLuftruckOffset
3402 1f8e 00C0 rjmp .L604
3403 .L619:
3404 1f90 9095 com r25
3405 1f92 8195 neg r24
3406 1f94 9F4F sbci r25,lo8(-1)
3407 1f96 00C0 rjmp .L613
3408 .L618:
3409 1f98 9095 com r25
3410 1f9a 8195 neg r24
3411 1f9c 9F4F sbci r25,lo8(-1)
3412 1f9e 00C0 rjmp .L612
3413 .L614:
3414 1fa0 1092 0000 sts (MesswertNick)+1,__zero_reg__
3415 1fa4 1092 0000 sts MesswertNick,__zero_reg__
3416 1fa8 1092 0000 sts (MesswertRoll)+1,__zero_reg__
3417 1fac 1092 0000 sts MesswertRoll,__zero_reg__
3418 1fb0 1092 0000 sts (MesswertGier)+1,__zero_reg__
3419 1fb4 1092 0000 sts MesswertGier,__zero_reg__
3420 1fb8 84E6 ldi r24,lo8(100)
3421 1fba 90E0 ldi r25,hi8(100)
3422 1fbc 0E94 0000 call Delay_ms_Mess
3423 1fc0 6091 0000 lds r22,AdWertAccNick
3424 1fc4 7091 0000 lds r23,(AdWertAccNick)+1
3425 1fc8 8827 clr r24
3426 1fca 77FD sbrc r23,7
3427 1fcc 8095 com r24
3428 1fce 982F mov r25,r24
3429 1fd0 26E0 ldi r18,lo8(6)
3430 1fd2 30E0 ldi r19,hi8(6)
3431 1fd4 40E0 ldi r20,hlo8(6)
3432 1fd6 50E0 ldi r21,hhi8(6)
3433 1fd8 0E94 0000 call __mulsi3
3434 1fdc 3B01 movw r6,r22
3435 1fde 4C01 movw r8,r24
3436 1fe0 7093 0000 sts (Mittelwert_AccNick)+1,r23
3437 1fe4 6093 0000 sts Mittelwert_AccNick,r22
3438 1fe8 6091 0000 lds r22,AdWertAccRoll
3439 1fec 7091 0000 lds r23,(AdWertAccRoll)+1
3440 1ff0 8827 clr r24
3441 1ff2 77FD sbrc r23,7
3442 1ff4 8095 com r24
3443 1ff6 982F mov r25,r24
3444 1ff8 0E94 0000 call __mulsi3
3445 1ffc 5B01 movw r10,r22
3446 1ffe 6C01 movw r12,r24
3447 2000 7093 0000 sts (Mittelwert_AccRoll)+1,r23
3448 2004 6093 0000 sts Mittelwert_AccRoll,r22
3449 2008 E090 0000 lds r14,EE_Parameter+20
3450 200c FF24 clr r15
3451 200e 00E0 ldi r16,lo8(0)
3452 2010 10E0 ldi r17,hi8(0)
3453 2012 8824 clr r8
3454 2014 77FC sbrc r7,7
3455 2016 8094 com r8
3456 2018 982C mov r9,r8
3457 201a C401 movw r24,r8
3458 201c B301 movw r22,r6
3459 201e A801 movw r20,r16
3460 2020 9701 movw r18,r14
3461 2022 0E94 0000 call __mulsi3
3462 2026 3B01 movw r6,r22
3463 2028 4C01 movw r8,r24
3464 202a 6093 0000 sts IntegralNick,r22
3465 202e 7093 0000 sts (IntegralNick)+1,r23
3466 2032 8093 0000 sts (IntegralNick)+2,r24
3467 2036 9093 0000 sts (IntegralNick)+3,r25
3468 203a CC24 clr r12
3469 203c B7FC sbrc r11,7
3470 203e C094 com r12
3471 2040 DC2C mov r13,r12
3472 2042 C601 movw r24,r12
3473 2044 B501 movw r22,r10
3474 2046 0E94 0000 call __mulsi3
3475 204a 6093 0000 sts IntegralRoll,r22
3476 204e 7093 0000 sts (IntegralRoll)+1,r23
3477 2052 8093 0000 sts (IntegralRoll)+2,r24
3478 2056 9093 0000 sts (IntegralRoll)+3,r25
3479 205a 6092 0000 sts Mess_IntegralNick2,r6
3480 205e 7092 0000 sts (Mess_IntegralNick2)+1,r7
3481 2062 8092 0000 sts (Mess_IntegralNick2)+2,r8
3482 2066 9092 0000 sts (Mess_IntegralNick2)+3,r9
3483 206a 6093 0000 sts Mess_IntegralRoll2,r22
3484 206e 7093 0000 sts (Mess_IntegralRoll2)+1,r23
3485 2072 8093 0000 sts (Mess_IntegralRoll2)+2,r24
3486 2076 9093 0000 sts (Mess_IntegralRoll2)+3,r25
3487 207a 1092 0000 sts Mess_Integral_Gier,__zero_reg__
3488 207e 1092 0000 sts (Mess_Integral_Gier)+1,__zero_reg__
3489 2082 1092 0000 sts (Mess_Integral_Gier)+2,__zero_reg__
3490 2086 1092 0000 sts (Mess_Integral_Gier)+3,__zero_reg__
3491 208a 8091 0000 lds r24,Luftdruck
3492 208e 9091 0000 lds r25,(Luftdruck)+1
3493 2092 A091 0000 lds r26,(Luftdruck)+2
3494 2096 B091 0000 lds r27,(Luftdruck)+3
3495 209a 9093 0000 sts (StartLuftdruck)+1,r25
3496 209e 8093 0000 sts StartLuftdruck,r24
3497 20a2 1092 0000 sts (HoeheD)+1,__zero_reg__
3498 20a6 1092 0000 sts HoeheD,__zero_reg__
3499 20aa 1092 0000 sts Mess_Integral_Hoch,__zero_reg__
3500 20ae 1092 0000 sts (Mess_Integral_Hoch)+1,__zero_reg__
3501 20b2 1092 0000 sts (Mess_Integral_Hoch)+2,__zero_reg__
3502 20b6 1092 0000 sts (Mess_Integral_Hoch)+3,__zero_reg__
3503 20ba 8091 0000 lds r24,KompassValue
3504 20be 9091 0000 lds r25,(KompassValue)+1
3505 20c2 9093 0000 sts (KompassStartwert)+1,r25
3506 20c6 8093 0000 sts KompassStartwert,r24
3507 20ca 0E94 0000 call GPS_Neutral
3508 20ce 82E3 ldi r24,lo8(50)
3509 20d0 90E0 ldi r25,hi8(50)
3510 20d2 9093 0000 sts (beeptime)+1,r25
3511 20d6 8093 0000 sts beeptime,r24
3512 20da 6091 0000 lds r22,EE_Parameter+45
3513 20de 70E0 ldi r23,lo8(0)
3514 20e0 80E0 ldi r24,lo8(0)
3515 20e2 90E0 ldi r25,hi8(0)
3516 20e4 24EC ldi r18,lo8(2500)
3517 20e6 39E0 ldi r19,hi8(2500)
3518 20e8 40E0 ldi r20,hlo8(2500)
3519 20ea 50E0 ldi r21,hhi8(2500)
3520 20ec 0E94 0000 call __mulsi3
3521 20f0 6856 subi r22,lo8(-(15000))
3522 20f2 754C sbci r23,hi8(-(15000))
3523 20f4 8F4F sbci r24,hlo8(-(15000))
3524 20f6 9F4F sbci r25,hhi8(-(15000))
3525 20f8 6093 0000 sts Umschlag180Nick,r22
3526 20fc 7093 0000 sts (Umschlag180Nick)+1,r23
3527 2100 8093 0000 sts (Umschlag180Nick)+2,r24
3528 2104 9093 0000 sts (Umschlag180Nick)+3,r25
3529 2108 6091 0000 lds r22,EE_Parameter+46
3530 210c 70E0 ldi r23,lo8(0)
3531 210e 80E0 ldi r24,lo8(0)
3532 2110 90E0 ldi r25,hi8(0)
3533 2112 0E94 0000 call __mulsi3
3534 2116 6856 subi r22,lo8(-(15000))
3535 2118 754C sbci r23,hi8(-(15000))
3536 211a 8F4F sbci r24,hlo8(-(15000))
3537 211c 9F4F sbci r25,hhi8(-(15000))
3538 211e 6093 0000 sts Umschlag180Roll,r22
3539 2122 7093 0000 sts (Umschlag180Roll)+1,r23
3540 2126 8093 0000 sts (Umschlag180Roll)+2,r24
3541 212a 9093 0000 sts (Umschlag180Roll)+3,r25
3542 212e 1092 0000 sts (ExternHoehenValue)+1,__zero_reg__
3543 2132 1092 0000 sts ExternHoehenValue,__zero_reg__
3544 2136 6091 0000 lds r22,KompassValue
3545 213a 7091 0000 lds r23,(KompassValue)+1
3546 213e 8827 clr r24
3547 2140 77FD sbrc r23,7
3548 2142 8095 com r24
3549 2144 982F mov r25,r24
3550 2146 2091 0000 lds r18,GIER_GRAD_FAKTOR
3551 214a 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1
3552 214e 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2
3553 2152 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3
3554 2156 0E94 0000 call __mulsi3
3555 215a 6093 0000 sts ErsatzKompass,r22
3556 215e 7093 0000 sts (ErsatzKompass)+1,r23
3557 2162 8093 0000 sts (ErsatzKompass)+2,r24
3558 2166 9093 0000 sts (ErsatzKompass)+3,r25
3559 216a 1092 0000 sts (GierGyroFehler)+1,__zero_reg__
3560 216e 1092 0000 sts GierGyroFehler,__zero_reg__
3561 2172 11E0 ldi r17,lo8(1)
3562 2174 1093 0000 sts SendVersionToNavi,r17
3563 2178 0E94 0000 call LED_Init
3564 217c 8091 0000 lds r24,MikroKopterFlags
3565 2180 8460 ori r24,lo8(4)
3566 2182 8093 0000 sts MikroKopterFlags,r24
3567 2186 8FEF ldi r24,lo8(-1)
3568 2188 8093 0000 sts FromNaviCtrl_Value,r24
3569 218c 1092 0000 sts FromNaviCtrl_Value+1,__zero_reg__
3570 2190 80E2 ldi r24,lo8(32)
3571 2192 8093 0000 sts FromNaviCtrl_Value+2,r24
3572 2196 E091 0000 lds r30,EE_Parameter+4
3573 219a F0E0 ldi r31,lo8(0)
3574 219c EE0F lsl r30
3575 219e FF1F rol r31
3576 21a0 E050 subi r30,lo8(-(PPM_in))
3577 21a2 F040 sbci r31,hi8(-(PPM_in))
3578 21a4 8081 ld r24,Z
3579 21a6 9181 ldd r25,Z+1
3580 21a8 8259 subi r24,lo8(-(110))
3581 21aa 9F4F sbci r25,hi8(-(110))
3582 21ac 9093 0000 sts (Poti1)+1,r25
3583 21b0 8093 0000 sts Poti1,r24
3584 21b4 E091 0000 lds r30,EE_Parameter+5
3585 21b8 F0E0 ldi r31,lo8(0)
3586 21ba EE0F lsl r30
3587 21bc FF1F rol r31
3588 21be E050 subi r30,lo8(-(PPM_in))
3589 21c0 F040 sbci r31,hi8(-(PPM_in))
3590 21c2 8081 ld r24,Z
3591 21c4 9181 ldd r25,Z+1
3592 21c6 8259 subi r24,lo8(-(110))
3593 21c8 9F4F sbci r25,hi8(-(110))
3594 21ca 9093 0000 sts (Poti2)+1,r25
3595 21ce 8093 0000 sts Poti2,r24
3596 21d2 E091 0000 lds r30,EE_Parameter+6
3597 21d6 F0E0 ldi r31,lo8(0)
3598 21d8 EE0F lsl r30
3599 21da FF1F rol r31
3600 21dc E050 subi r30,lo8(-(PPM_in))
3601 21de F040 sbci r31,hi8(-(PPM_in))
3602 21e0 8081 ld r24,Z
3603 21e2 9181 ldd r25,Z+1
3604 21e4 8259 subi r24,lo8(-(110))
3605 21e6 9F4F sbci r25,hi8(-(110))
3606 21e8 9093 0000 sts (Poti3)+1,r25
3607 21ec 8093 0000 sts Poti3,r24
3608 21f0 E091 0000 lds r30,EE_Parameter+7
3609 21f4 F0E0 ldi r31,lo8(0)
3610 21f6 EE0F lsl r30
3611 21f8 FF1F rol r31
3612 21fa E050 subi r30,lo8(-(PPM_in))
3613 21fc F040 sbci r31,hi8(-(PPM_in))
3614 21fe 8081 ld r24,Z
3615 2200 9181 ldd r25,Z+1
3616 2202 8259 subi r24,lo8(-(110))
3617 2204 9F4F sbci r25,hi8(-(110))
3618 2206 9093 0000 sts (Poti4)+1,r25
3619 220a 8093 0000 sts Poti4,r24
3620 220e 1093 0000 sts ServoActive,r17
3621 2212 84E6 ldi r24,lo8(100)
3622 2214 8093 0000 sts SenderOkay,r24
3623 /* epilogue: frame size=0 */
3624 2218 DF91 pop r29
3625 221a CF91 pop r28
3626 221c 1F91 pop r17
3627 221e 0F91 pop r16
3628 2220 FF90 pop r15
3629 2222 EF90 pop r14
3630 2224 DF90 pop r13
3631 2226 CF90 pop r12
3632 2228 BF90 pop r11
3633 222a AF90 pop r10
3634 222c 9F90 pop r9
3635 222e 8F90 pop r8
3636 2230 7F90 pop r7
3637 2232 6F90 pop r6
3638 2234 0895 ret
3639 /* epilogue end (size=15) */
3640 /* function SetNeutral size 646 (617) */
3642 .global Piep
3644 Piep:
3645 /* prologue: frame size=0 */
3646 2236 1F93 push r17
3647 /* prologue end (size=1) */
3648 2238 182F mov r17,r24
3649 223a 1150 subi r17,lo8(-(-1))
3650 223c 1F3F cpi r17,lo8(-1)
3651 223e 01F0 breq .L625
3652 2240 8091 0000 lds r24,MotorenEin
3653 2244 8823 tst r24
3654 2246 01F0 breq .L626
3655 2248 00C0 rjmp .L625
3656 .L624:
3657 224a 8091 0000 lds r24,MotorenEin
3658 224e 8823 tst r24
3659 2250 01F4 brne .L625
3660 .L626:
3661 2252 84E6 ldi r24,lo8(100)
3662 2254 90E0 ldi r25,hi8(100)
3663 2256 9093 0000 sts (beeptime)+1,r25
3664 225a 8093 0000 sts beeptime,r24
3665 225e 8AEF ldi r24,lo8(250)
3666 2260 90E0 ldi r25,hi8(250)
3667 2262 0E94 0000 call Delay_ms
3668 2266 1150 subi r17,1
3669 2268 00F4 brcc .L624
3670 .L625:
3671 /* epilogue: frame size=0 */
3672 226a 1F91 pop r17
3673 226c 0895 ret
3674 /* epilogue end (size=2) */
3675 /* function Piep size 29 (26) */
3677 .data
3678 .LC0:
3679 0000 4265 6769 .string "Beginner"
3679 6E6E 6572
3679 00
3680 0009 00 .string ""
3681 .text
3682 .global DefaultKonstanten3
3684 DefaultKonstanten3:
3685 /* prologue: frame size=0 */
3686 /* prologue end (size=0) */
3687 226e 88EE ldi r24,lo8(-24)
3688 2270 8093 0000 sts EE_Parameter+8,r24
3689 2274 3EE1 ldi r19,lo8(30)
3690 2276 3093 0000 sts EE_Parameter+9,r19
3691 227a 8BEF ldi r24,lo8(-5)
3692 227c 8093 0000 sts EE_Parameter+11,r24
3693 2280 8AE0 ldi r24,lo8(10)
3694 2282 8093 0000 sts EE_Parameter+12,r24
3695 2286 3093 0000 sts EE_Parameter+10,r19
3696 228a 3093 0000 sts EE_Parameter+14,r19
3697 228e 93E0 ldi r25,lo8(3)
3698 2290 9093 0000 sts EE_Parameter+13,r25
3699 2294 58E0 ldi r21,lo8(8)
3700 2296 5093 0000 sts EE_Parameter+15,r21
3701 229a 20E1 ldi r18,lo8(16)
3702 229c 2093 0000 sts EE_Parameter+16,r18
3703 22a0 66E0 ldi r22,lo8(6)
3704 22a2 6093 0000 sts EE_Parameter+17,r22
3705 22a6 5093 0000 sts EE_Parameter+18,r21
3706 22aa 86EE ldi r24,lo8(-26)
3707 22ac 8093 0000 sts EE_Parameter+19,r24
3708 22b0 3093 0000 sts EE_Parameter+20,r19
3709 22b4 80E8 ldi r24,lo8(-128)
3710 22b6 8093 0000 sts EE_Parameter+21,r24
3711 22ba 44E6 ldi r20,lo8(100)
3712 22bc 4093 0000 sts EE_Parameter+22,r20
3713 22c0 88E7 ldi r24,lo8(120)
3714 22c2 8093 0000 sts EE_Parameter+23,r24
3715 22c6 9093 0000 sts EE_Parameter+24,r25
3716 22ca 8EE5 ldi r24,lo8(94)
3717 22cc 8093 0000 sts EE_Parameter+25,r24
3718 22d0 83E2 ldi r24,lo8(35)
3719 22d2 8093 0000 sts EE_Parameter+26,r24
3720 22d6 84E1 ldi r24,lo8(20)
3721 22d8 8093 0000 sts EE_Parameter+27,r24
3722 22dc 1092 0000 sts EE_Parameter+28,__zero_reg__
3723 22e0 2093 0000 sts EE_Parameter+29,r18
3724 22e4 1092 0000 sts EE_Parameter+30,__zero_reg__
3725 22e8 1092 0000 sts EE_Parameter+31,__zero_reg__
3726 22ec 1092 0000 sts EE_Parameter+32,__zero_reg__
3727 22f0 1092 0000 sts EE_Parameter+33,__zero_reg__
3728 22f4 1092 0000 sts EE_Parameter+50,__zero_reg__
3729 22f8 1092 0000 sts EE_Parameter+51,__zero_reg__
3730 22fc 1092 0000 sts EE_Parameter+52,__zero_reg__
3731 2300 1092 0000 sts EE_Parameter+53,__zero_reg__
3732 2304 4093 0000 sts EE_Parameter+34,r20
3733 2308 88E2 ldi r24,lo8(40)
3734 230a 8093 0000 sts EE_Parameter+35,r24
3735 230e 1092 0000 sts EE_Parameter+76,__zero_reg__
3736 2312 92E3 ldi r25,lo8(50)
3737 2314 9093 0000 sts EE_Parameter+36,r25
3738 2318 86E9 ldi r24,lo8(-106)
3739 231a 8093 0000 sts EE_Parameter+37,r24
3740 231e 85E0 ldi r24,lo8(5)
3741 2320 8093 0000 sts EE_Parameter+38,r24
3742 2324 9093 0000 sts EE_Parameter+39,r25
3743 2328 2AE5 ldi r18,lo8(90)
3744 232a 2093 0000 sts EE_Parameter+40,r18
3745 232e 9093 0000 sts EE_Parameter+41,r25
3746 2332 1092 0000 sts EE_Parameter+75,__zero_reg__
3747 2336 2093 0000 sts EE_Parameter+42,r18
3748 233a 83E4 ldi r24,lo8(67)
3749 233c 8093 0000 sts EE_Parameter+43,r24
3750 2340 86E4 ldi r24,lo8(70)
3751 2342 8093 0000 sts EE_Parameter+44,r24
3752 2346 85E5 ldi r24,lo8(85)
3753 2348 8093 0000 sts EE_Parameter+45,r24
3754 234c 8093 0000 sts EE_Parameter+46,r24
3755 2350 80E2 ldi r24,lo8(32)
3756 2352 8093 0000 sts EE_Parameter+47,r24
3757 2356 8093 0000 sts EE_Parameter+48,r24
3758 235a 9093 0000 sts EE_Parameter+49,r25
3759 235e 8FE5 ldi r24,lo8(95)
3760 2360 8093 0000 sts EE_Parameter+54,r24
3761 2364 83EF ldi r24,lo8(-13)
3762 2366 8093 0000 sts EE_Parameter+56,r24
3763 236a 3093 0000 sts EE_Parameter+55,r19
3764 236e 3093 0000 sts EE_Parameter+57,r19
3765 2372 8DEF ldi r24,lo8(-3)
3766 2374 8093 0000 sts EE_Parameter+58,r24
3767 2378 4093 0000 sts EE_Parameter+59,r20
3768 237c 2093 0000 sts EE_Parameter+60,r18
3769 2380 2093 0000 sts EE_Parameter+61,r18
3770 2384 2093 0000 sts EE_Parameter+62,r18
3771 2388 8BE4 ldi r24,lo8(75)
3772 238a 8093 0000 sts EE_Parameter+63,r24
3773 238e 8093 0000 sts EE_Parameter+64,r24
3774 2392 8093 0000 sts EE_Parameter+65,r24
3775 2396 1092 0000 sts EE_Parameter+66,__zero_reg__
3776 239a 6093 0000 sts EE_Parameter+67,r22
3777 239e 5093 0000 sts EE_Parameter+68,r21
3778 23a2 2093 0000 sts EE_Parameter+69,r18
3779 23a6 3093 0000 sts EE_Parameter+70,r19
3780 23aa 4093 0000 sts EE_Parameter+71,r20
3781 23ae 4093 0000 sts EE_Parameter+72,r20
3782 23b2 84E0 ldi r24,lo8(4)
3783 23b4 8093 0000 sts EE_Parameter+73,r24
3784 23b8 A0E0 ldi r26,lo8(EE_Parameter+81)
3785 23ba B0E0 ldi r27,hi8(EE_Parameter+81)
3786 23bc E0E0 ldi r30,lo8(.LC0)
3787 23be F0E0 ldi r31,hi8(.LC0)
3788 23c0 8CE0 ldi r24,lo8(12)
3789 .L628:
3790 23c2 0190 ld r0,Z+
3791 23c4 0D92 st X+,r0
3792 23c6 8150 subi r24,lo8(-(-1))
3793 23c8 01F4 brne .L628
3794 /* epilogue: frame size=0 */
3795 23ca 0895 ret
3796 /* epilogue end (size=1) */
3797 /* function DefaultKonstanten3 size 176 (175) */
3799 .data
3800 .LC1:
3801 000a 4E6F 726D .string "Normal"
3801 616C 00
3802 0011 00 .string ""
3803 .text
3804 .global DefaultKonstanten2
3806 DefaultKonstanten2:
3807 /* prologue: frame size=0 */
3808 /* prologue end (size=0) */
3809 23cc 88E6 ldi r24,lo8(104)
3810 23ce 8093 0000 sts EE_Parameter+8,r24
3811 23d2 5EE1 ldi r21,lo8(30)
3812 23d4 5093 0000 sts EE_Parameter+9,r21
3813 23d8 8BEF ldi r24,lo8(-5)
3814 23da 8093 0000 sts EE_Parameter+11,r24
3815 23de 8AE0 ldi r24,lo8(10)
3816 23e0 8093 0000 sts EE_Parameter+12,r24
3817 23e4 5093 0000 sts EE_Parameter+10,r21
3818 23e8 5093 0000 sts EE_Parameter+14,r21
3819 23ec 93E0 ldi r25,lo8(3)
3820 23ee 9093 0000 sts EE_Parameter+13,r25
3821 23f2 8CE0 ldi r24,lo8(12)
3822 23f4 8093 0000 sts EE_Parameter+15,r24
3823 23f8 80E1 ldi r24,lo8(16)
3824 23fa 8093 0000 sts EE_Parameter+16,r24
3825 23fe 76E0 ldi r23,lo8(6)
3826 2400 7093 0000 sts EE_Parameter+17,r23
3827 2404 68E0 ldi r22,lo8(8)
3828 2406 6093 0000 sts EE_Parameter+18,r22
3829 240a 86EE ldi r24,lo8(-26)
3830 240c 8093 0000 sts EE_Parameter+19,r24
3831 2410 5093 0000 sts EE_Parameter+20,r21
3832 2414 80E8 ldi r24,lo8(-128)
3833 2416 8093 0000 sts EE_Parameter+21,r24
3834 241a 80E5 ldi r24,lo8(80)
3835 241c 8093 0000 sts EE_Parameter+22,r24
3836 2420 88E7 ldi r24,lo8(120)
3837 2422 8093 0000 sts EE_Parameter+23,r24
3838 2426 9093 0000 sts EE_Parameter+24,r25
3839 242a 8EE5 ldi r24,lo8(94)
3840 242c 8093 0000 sts EE_Parameter+25,r24
3841 2430 83E2 ldi r24,lo8(35)
3842 2432 8093 0000 sts EE_Parameter+26,r24
3843 2436 5093 0000 sts EE_Parameter+27,r21
3844 243a 1092 0000 sts EE_Parameter+28,__zero_reg__
3845 243e 30E2 ldi r19,lo8(32)
3846 2440 3093 0000 sts EE_Parameter+29,r19
3847 2444 1092 0000 sts EE_Parameter+30,__zero_reg__
3848 2448 1092 0000 sts EE_Parameter+31,__zero_reg__
3849 244c 1092 0000 sts EE_Parameter+32,__zero_reg__
3850 2450 1092 0000 sts EE_Parameter+33,__zero_reg__
3851 2454 1092 0000 sts EE_Parameter+50,__zero_reg__
3852 2458 1092 0000 sts EE_Parameter+51,__zero_reg__
3853 245c 1092 0000 sts EE_Parameter+52,__zero_reg__
3854 2460 1092 0000 sts EE_Parameter+53,__zero_reg__
3855 2464 44E6 ldi r20,lo8(100)
3856 2466 4093 0000 sts EE_Parameter+34,r20
3857 246a 88E2 ldi r24,lo8(40)
3858 246c 8093 0000 sts EE_Parameter+35,r24
3859 2470 1092 0000 sts EE_Parameter+76,__zero_reg__
3860 2474 92E3 ldi r25,lo8(50)
3861 2476 9093 0000 sts EE_Parameter+36,r25
3862 247a 86E9 ldi r24,lo8(-106)
3863 247c 8093 0000 sts EE_Parameter+37,r24
3864 2480 85E0 ldi r24,lo8(5)
3865 2482 8093 0000 sts EE_Parameter+38,r24
3866 2486 9093 0000 sts EE_Parameter+39,r25
3867 248a 2AE5 ldi r18,lo8(90)
3868 248c 2093 0000 sts EE_Parameter+40,r18
3869 2490 9093 0000 sts EE_Parameter+41,r25
3870 2494 1092 0000 sts EE_Parameter+75,__zero_reg__
3871 2498 2093 0000 sts EE_Parameter+42,r18
3872 249c 83E4 ldi r24,lo8(67)
3873 249e 8093 0000 sts EE_Parameter+43,r24
3874 24a2 8CE3 ldi r24,lo8(60)
3875 24a4 8093 0000 sts EE_Parameter+44,r24
3876 24a8 85E5 ldi r24,lo8(85)
3877 24aa 8093 0000 sts EE_Parameter+45,r24
3878 24ae 8093 0000 sts EE_Parameter+46,r24
3879 24b2 3093 0000 sts EE_Parameter+47,r19
3880 24b6 3093 0000 sts EE_Parameter+48,r19
3881 24ba 9BE4 ldi r25,lo8(75)
3882 24bc 9093 0000 sts EE_Parameter+49,r25
3883 24c0 8FE5 ldi r24,lo8(95)
3884 24c2 8093 0000 sts EE_Parameter+54,r24
3885 24c6 83EF ldi r24,lo8(-13)
3886 24c8 8093 0000 sts EE_Parameter+56,r24
3887 24cc 84E1 ldi r24,lo8(20)
3888 24ce 8093 0000 sts EE_Parameter+55,r24
3889 24d2 8093 0000 sts EE_Parameter+57,r24
3890 24d6 8DEF ldi r24,lo8(-3)
3891 24d8 8093 0000 sts EE_Parameter+58,r24
3892 24dc 4093 0000 sts EE_Parameter+59,r20
3893 24e0 2093 0000 sts EE_Parameter+60,r18
3894 24e4 2093 0000 sts EE_Parameter+61,r18
3895 24e8 2093 0000 sts EE_Parameter+62,r18
3896 24ec 9093 0000 sts EE_Parameter+63,r25
3897 24f0 9093 0000 sts EE_Parameter+64,r25
3898 24f4 9093 0000 sts EE_Parameter+65,r25
3899 24f8 1092 0000 sts EE_Parameter+66,__zero_reg__
3900 24fc 7093 0000 sts EE_Parameter+67,r23
3901 2500 6093 0000 sts EE_Parameter+68,r22
3902 2504 2093 0000 sts EE_Parameter+69,r18
3903 2508 5093 0000 sts EE_Parameter+70,r21
3904 250c 4093 0000 sts EE_Parameter+71,r20
3905 2510 4093 0000 sts EE_Parameter+72,r20
3906 2514 84E0 ldi r24,lo8(4)
3907 2516 8093 0000 sts EE_Parameter+73,r24
3908 251a A0E0 ldi r26,lo8(EE_Parameter+81)
3909 251c B0E0 ldi r27,hi8(EE_Parameter+81)
3910 251e E0E0 ldi r30,lo8(.LC1)
3911 2520 F0E0 ldi r31,hi8(.LC1)
3912 2522 8CE0 ldi r24,lo8(12)
3913 .L633:
3914 2524 0190 ld r0,Z+
3915 2526 0D92 st X+,r0
3916 2528 8150 subi r24,lo8(-(-1))
3917 252a 01F4 brne .L633
3918 /* epilogue: frame size=0 */
3919 252c 0895 ret
3920 /* epilogue end (size=1) */
3921 /* function DefaultKonstanten2 size 178 (177) */
3923 .data
3924 .LC2:
3925 0012 5370 6F72 .string "Sport"
3925 7400
3926 0018 00 .string ""
3927 .text
3928 .global DefaultKonstanten1
3930 DefaultKonstanten1:
3931 /* prologue: frame size=0 */
3932 /* prologue end (size=0) */
3933 252e 88E6 ldi r24,lo8(104)
3934 2530 8093 0000 sts EE_Parameter+8,r24
3935 2534 3EE1 ldi r19,lo8(30)
3936 2536 3093 0000 sts EE_Parameter+9,r19
3937 253a 8BEF ldi r24,lo8(-5)
3938 253c 8093 0000 sts EE_Parameter+11,r24
3939 2540 8AE0 ldi r24,lo8(10)
3940 2542 8093 0000 sts EE_Parameter+12,r24
3941 2546 3093 0000 sts EE_Parameter+10,r19
3942 254a 3093 0000 sts EE_Parameter+14,r19
3943 254e E4E0 ldi r30,lo8(4)
3944 2550 E093 0000 sts EE_Parameter+13,r30
3945 2554 5FE0 ldi r21,lo8(15)
3946 2556 5093 0000 sts EE_Parameter+15,r21
3947 255a 3093 0000 sts EE_Parameter+16,r19
3948 255e 8CE0 ldi r24,lo8(12)
3949 2560 8093 0000 sts EE_Parameter+17,r24
3950 2564 78E0 ldi r23,lo8(8)
3951 2566 7093 0000 sts EE_Parameter+18,r23
3952 256a 86EE ldi r24,lo8(-26)
3953 256c 8093 0000 sts EE_Parameter+19,r24
3954 2570 3093 0000 sts EE_Parameter+20,r19
3955 2574 80E8 ldi r24,lo8(-128)
3956 2576 8093 0000 sts EE_Parameter+21,r24
3957 257a 80E5 ldi r24,lo8(80)
3958 257c 8093 0000 sts EE_Parameter+22,r24
3959 2580 26E9 ldi r18,lo8(-106)
3960 2582 2093 0000 sts EE_Parameter+23,r18
3961 2586 83E0 ldi r24,lo8(3)
3962 2588 8093 0000 sts EE_Parameter+24,r24
3963 258c 8EE5 ldi r24,lo8(94)
3964 258e 8093 0000 sts EE_Parameter+25,r24
3965 2592 83E2 ldi r24,lo8(35)
3966 2594 8093 0000 sts EE_Parameter+26,r24
3967 2598 3093 0000 sts EE_Parameter+27,r19
3968 259c 1092 0000 sts EE_Parameter+28,__zero_reg__
3969 25a0 60E2 ldi r22,lo8(32)
3970 25a2 6093 0000 sts EE_Parameter+29,r22
3971 25a6 1092 0000 sts EE_Parameter+30,__zero_reg__
3972 25aa 1092 0000 sts EE_Parameter+31,__zero_reg__
3973 25ae 1092 0000 sts EE_Parameter+32,__zero_reg__
3974 25b2 1092 0000 sts EE_Parameter+33,__zero_reg__
3975 25b6 1092 0000 sts EE_Parameter+50,__zero_reg__
3976 25ba 1092 0000 sts EE_Parameter+51,__zero_reg__
3977 25be 1092 0000 sts EE_Parameter+52,__zero_reg__
3978 25c2 1092 0000 sts EE_Parameter+53,__zero_reg__
3979 25c6 44E6 ldi r20,lo8(100)
3980 25c8 4093 0000 sts EE_Parameter+34,r20
3981 25cc 88E2 ldi r24,lo8(40)
3982 25ce 8093 0000 sts EE_Parameter+35,r24
3983 25d2 1092 0000 sts EE_Parameter+76,__zero_reg__
3984 25d6 92E3 ldi r25,lo8(50)
3985 25d8 9093 0000 sts EE_Parameter+36,r25
3986 25dc 2093 0000 sts EE_Parameter+37,r18
3987 25e0 85E0 ldi r24,lo8(5)
3988 25e2 8093 0000 sts EE_Parameter+38,r24
3989 25e6 9093 0000 sts EE_Parameter+39,r25
3990 25ea 2AE5 ldi r18,lo8(90)
3991 25ec 2093 0000 sts EE_Parameter+40,r18
3992 25f0 9093 0000 sts EE_Parameter+41,r25
3993 25f4 1092 0000 sts EE_Parameter+75,__zero_reg__
3994 25f8 2093 0000 sts EE_Parameter+42,r18
3995 25fc 83E4 ldi r24,lo8(67)
3996 25fe 8093 0000 sts EE_Parameter+43,r24
3997 2602 1092 0000 sts EE_Parameter+44,__zero_reg__
3998 2606 85E5 ldi r24,lo8(85)
3999 2608 8093 0000 sts EE_Parameter+45,r24
4000 260c 8093 0000 sts EE_Parameter+46,r24
4001 2610 80E1 ldi r24,lo8(16)
4002 2612 8093 0000 sts EE_Parameter+47,r24
4003 2616 6093 0000 sts EE_Parameter+48,r22
4004 261a 4093 0000 sts EE_Parameter+49,r20
4005 261e 8FE5 ldi r24,lo8(95)
4006 2620 8093 0000 sts EE_Parameter+54,r24
4007 2624 83EF ldi r24,lo8(-13)
4008 2626 8093 0000 sts EE_Parameter+56,r24
4009 262a 5093 0000 sts EE_Parameter+55,r21
4010 262e 5093 0000 sts EE_Parameter+57,r21
4011 2632 8DEF ldi r24,lo8(-3)
4012 2634 8093 0000 sts EE_Parameter+58,r24
4013 2638 4093 0000 sts EE_Parameter+59,r20
4014 263c 2093 0000 sts EE_Parameter+60,r18
4015 2640 2093 0000 sts EE_Parameter+61,r18
4016 2644 2093 0000 sts EE_Parameter+62,r18
4017 2648 8BE4 ldi r24,lo8(75)
4018 264a 8093 0000 sts EE_Parameter+63,r24
4019 264e 8093 0000 sts EE_Parameter+64,r24
4020 2652 8093 0000 sts EE_Parameter+65,r24
4021 2656 1092 0000 sts EE_Parameter+66,__zero_reg__
4022 265a 86E0 ldi r24,lo8(6)
4023 265c 8093 0000 sts EE_Parameter+67,r24
4024 2660 7093 0000 sts EE_Parameter+68,r23
4025 2664 2093 0000 sts EE_Parameter+69,r18
4026 2668 3093 0000 sts EE_Parameter+70,r19
4027 266c 4093 0000 sts EE_Parameter+71,r20
4028 2670 4093 0000 sts EE_Parameter+72,r20
4029 2674 E093 0000 sts EE_Parameter+73,r30
4030 2678 A0E0 ldi r26,lo8(EE_Parameter+81)
4031 267a B0E0 ldi r27,hi8(EE_Parameter+81)
4032 267c E0E0 ldi r30,lo8(.LC2)
4033 267e F0E0 ldi r31,hi8(.LC2)
4034 2680 8CE0 ldi r24,lo8(12)
4035 .L638:
4036 2682 0190 ld r0,Z+
4037 2684 0D92 st X+,r0
4038 2686 8150 subi r24,lo8(-(-1))
4039 2688 01F4 brne .L638
4040 /* epilogue: frame size=0 */
4041 268a 0895 ret
4042 /* epilogue end (size=1) */
4043 /* function DefaultKonstanten1 size 176 (175) */
4045 .global MotorRegler
4047 MotorRegler:
4048 /* prologue: frame size=46 */
4049 268c 2F92 push r2
4050 268e 3F92 push r3
4051 2690 4F92 push r4
4052 2692 5F92 push r5
4053 2694 6F92 push r6
4054 2696 7F92 push r7
4055 2698 8F92 push r8
4056 269a 9F92 push r9
4057 269c AF92 push r10
4058 269e BF92 push r11
4059 26a0 CF92 push r12
4060 26a2 DF92 push r13
4061 26a4 EF92 push r14
4062 26a6 FF92 push r15
4063 26a8 0F93 push r16
4064 26aa 1F93 push r17
4065 26ac CF93 push r28
4066 26ae DF93 push r29
4067 26b0 CDB7 in r28,__SP_L__
4068 26b2 DEB7 in r29,__SP_H__
4069 26b4 AE97 sbiw r28,46
4070 26b6 0FB6 in __tmp_reg__,__SREG__
4071 26b8 F894 cli
4072 26ba DEBF out __SP_H__,r29
4073 26bc 0FBE out __SREG__,__tmp_reg__
4074 26be CDBF out __SP_L__,r28
4075 /* prologue end (size=26) */
4076 26c0 0E94 0000 call Mittelwert
4077 26c4 4091 0000 lds r20,PlatinenVersion
4078 26c8 4C30 cpi r20,lo8(12)
4079 26ca 00F0 brlo .+2
4080 26cc 00C0 rjmp .L643
4081 26ce 299A sbi 37-0x20,1
4082 .L645:
4083 26d0 2091 0000 lds r18,StickGas
4084 26d4 3091 0000 lds r19,(StickGas)+1
4085 26d8 8091 0000 lds r24,MIN_GAS
4086 26dc 682F mov r22,r24
4087 26de 70E0 ldi r23,lo8(0)
4088 26e0 665F subi r22,lo8(-(10))
4089 26e2 7F4F sbci r23,hi8(-(10))
4090 26e4 798B std Y+17,r23
4091 26e6 688B std Y+16,r22
4092 26e8 6217 cp r22,r18
4093 26ea 7307 cpc r23,r19
4094 26ec 04F4 brge .L646
4095 26ee 398B std Y+17,r19
4096 26f0 288B std Y+16,r18
4097 .L646:
4098 26f2 8091 0000 lds r24,SenderOkay
4099 26f6 8436 cpi r24,lo8(100)
4100 26f8 00F0 brlo .+2
4101 26fa 00C0 rjmp .L647
4102 26fc 8091 0000 lds r24,PcZugriff
4103 2700 8823 tst r24
4104 2702 01F4 brne .L649
4105 2704 8091 0000 lds r24,BeepMuster
4106 2708 9091 0000 lds r25,(BeepMuster)+1
4107 270c 8F5F subi r24,lo8(-1)
4108 270e 9F4F sbci r25,hi8(-1)
4109 2710 01F4 brne .+4
4110 2712 0C94 0000 jmp .L1055
4111 .L649:
4112 2716 8091 0000 lds r24,RcLostTimer.3074
4113 271a 9091 0000 lds r25,(RcLostTimer.3074)+1
4114 271e 0097 sbiw r24,0
4115 2720 01F4 brne .+2
4116 2722 00C0 rjmp .L652
4117 2724 0197 sbiw r24,1
4118 2726 9093 0000 sts (RcLostTimer.3074)+1,r25
4119 272a 8093 0000 sts RcLostTimer.3074,r24
4120 272e 4A30 cpi r20,lo8(10)
4121 2730 01F4 brne .+2
4122 2732 00C0 rjmp .L655
4123 .L1094:
4124 2734 4431 cpi r20,lo8(20)
4125 2736 01F4 brne .+2
4126 2738 00C0 rjmp .L655
4127 273a 2898 cbi 37-0x20,0
4128 .L658:
4129 273c 8091 0000 lds r24,modell_fliegt
4130 2740 9091 0000 lds r25,(modell_fliegt)+1
4131 2744 895E subi r24,lo8(1001)
4132 2746 9340 sbci r25,hi8(1001)
4133 2748 00F4 brsh .+4
4134 274a 0C94 0000 jmp .L659
4135 274e 8091 0000 lds r24,EE_Parameter+26
4136 2752 E82F mov r30,r24
4137 2754 F0E0 ldi r31,lo8(0)
4138 2756 F98B std Y+17,r31
4139 2758 E88B std Y+16,r30
4140 275a F1E0 ldi r31,lo8(1)
4141 275c F093 0000 sts Notlandung,r31
4142 2760 A091 0000 lds r26,EE_Parameter
4143 2764 B0E0 ldi r27,lo8(0)
4144 2766 AA0F lsl r26
4145 2768 BB1F rol r27
4146 276a FD01 movw r30,r26
4147 276c E050 subi r30,lo8(-(PPM_diff))
4148 276e F040 sbci r31,hi8(-(PPM_diff))
4149 2770 1182 std Z+1,__zero_reg__
4150 2772 1082 st Z,__zero_reg__
4151 2774 E091 0000 lds r30,EE_Parameter+1
4152 2778 2E2F mov r18,r30
4153 277a 30E0 ldi r19,lo8(0)
4154 277c 220F lsl r18
4155 277e 331F rol r19
4156 2780 C901 movw r24,r18
4157 2782 8050 subi r24,lo8(-(PPM_diff))
4158 2784 9040 sbci r25,hi8(-(PPM_diff))
4159 2786 FC01 movw r30,r24
4160 2788 1182 std Z+1,__zero_reg__
4161 278a 1082 st Z,__zero_reg__
4162 278c A050 subi r26,lo8(-(PPM_in))
4163 278e B040 sbci r27,hi8(-(PPM_in))
4164 2790 1196 adiw r26,1
4165 2792 1C92 st X,__zero_reg__
4166 2794 1E92 st -X,__zero_reg__
4167 2796 2050 subi r18,lo8(-(PPM_in))
4168 2798 3040 sbci r19,hi8(-(PPM_in))
4169 279a D901 movw r26,r18
4170 279c 1196 adiw r26,1
4171 279e 1C92 st X,__zero_reg__
4172 27a0 1E92 st -X,__zero_reg__
4173 27a2 E091 0000 lds r30,EE_Parameter+3
4174 27a6 F0E0 ldi r31,lo8(0)
4175 27a8 EE0F lsl r30
4176 27aa FF1F rol r31
4177 27ac E050 subi r30,lo8(-(PPM_in))
4178 27ae F040 sbci r31,hi8(-(PPM_in))
4179 27b0 1182 std Z+1,__zero_reg__
4180 27b2 1082 st Z,__zero_reg__
4181 .L661:
4182 27b4 8091 0000 lds r24,NewPpmData
4183 27b8 8150 subi r24,lo8(-(-1))
4184 27ba 8093 0000 sts NewPpmData,r24
4185 27be 8091 0000 lds r24,NewPpmData
4186 27c2 8F3F cpi r24,lo8(-1)
4187 27c4 01F4 brne .+2
4188 27c6 00C0 rjmp .L725
4189 27c8 B091 0000 lds r27,Notlandung
4190 27cc BFA3 std Y+39,r27
4191 27ce BB23 tst r27
4192 27d0 01F0 breq .+2
4193 27d2 00C0 rjmp .L725
4194 27d4 B091 0000 lds r27,EE_Parameter+8
4195 .L727:
4196 27d8 2091 0000 lds r18,Looping_Roll
4197 27dc 2223 tst r18
4198 27de 01F4 brne .+4
4199 27e0 0C94 0000 jmp .L1056
4200 .L791:
4201 27e4 8091 0000 lds r24,EE_Parameter+39
4202 27e8 90E0 ldi r25,lo8(0)
4203 27ea 6889 ldd r22,Y+16
4204 27ec 7989 ldd r23,Y+17
4205 27ee 8617 cp r24,r22
4206 27f0 9707 cpc r25,r23
4207 27f2 04F4 brge .L794
4208 27f4 998B std Y+17,r25
4209 27f6 888B std Y+16,r24
4210 .L794:
4211 27f8 71E0 ldi r23,lo8(1)
4212 27fa 7093 0000 sts TrichterFlug,r23
4213 27fe 8B2F mov r24,r27
4214 2800 90E0 ldi r25,lo8(0)
4215 2802 9B87 std Y+11,r25
4216 2804 8A87 std Y+10,r24
4217 .L793:
4218 2806 9FA1 ldd r25,Y+39
4219 2808 9923 tst r25
4220 280a 01F0 breq .L795
4221 280c 1092 0000 sts (StickGier)+1,__zero_reg__
4222 2810 1092 0000 sts StickGier,__zero_reg__
4223 2814 1092 0000 sts (StickNick)+1,__zero_reg__
4224 2818 1092 0000 sts StickNick,__zero_reg__
4225 281c 1092 0000 sts (StickRoll)+1,__zero_reg__
4226 2820 1092 0000 sts StickRoll,__zero_reg__
4227 2824 8AE5 ldi r24,lo8(90)
4228 2826 8093 0000 sts GyroFaktor,r24
4229 282a A8E7 ldi r26,lo8(120)
4230 282c A093 0000 sts IntegralFaktor,r26
4231 2830 1092 0000 sts Looping_Roll,__zero_reg__
4232 2834 1092 0000 sts Looping_Nick,__zero_reg__
4233 .L795:
4234 2838 2091 0000 lds r18,IntegralNick
4235 283c 3091 0000 lds r19,(IntegralNick)+1
4236 2840 4091 0000 lds r20,(IntegralNick)+2
4237 2844 5091 0000 lds r21,(IntegralNick)+3
4238 2848 2983 std Y+1,r18
4239 284a 3A83 std Y+2,r19
4240 284c 4B83 std Y+3,r20
4241 284e 5C83 std Y+4,r21
4242 2850 4091 0000 lds r20,MittelIntegralNick
4243 2854 5091 0000 lds r21,(MittelIntegralNick)+1
4244 2858 6091 0000 lds r22,(MittelIntegralNick)+2
4245 285c 7091 0000 lds r23,(MittelIntegralNick)+3
4246 2860 48A7 std Y+40,r20
4247 2862 59A7 std Y+41,r21
4248 2864 6AA7 std Y+42,r22
4249 2866 7BA7 std Y+43,r23
4250 2868 8981 ldd r24,Y+1
4251 286a 9A81 ldd r25,Y+2
4252 286c AB81 ldd r26,Y+3
4253 286e BC81 ldd r27,Y+4
4254 2870 480F add r20,r24
4255 2872 591F adc r21,r25
4256 2874 6A1F adc r22,r26
4257 2876 7B1F adc r23,r27
4258 2878 4093 0000 sts MittelIntegralNick,r20
4259 287c 5093 0000 sts (MittelIntegralNick)+1,r21
4260 2880 6093 0000 sts (MittelIntegralNick)+2,r22
4261 2884 7093 0000 sts (MittelIntegralNick)+3,r23
4262 2888 2091 0000 lds r18,IntegralRoll
4263 288c 3091 0000 lds r19,(IntegralRoll)+1
4264 2890 4091 0000 lds r20,(IntegralRoll)+2
4265 2894 5091 0000 lds r21,(IntegralRoll)+3
4266 2898 2D83 std Y+5,r18
4267 289a 3E83 std Y+6,r19
4268 289c 4F83 std Y+7,r20
4269 289e 5887 std Y+8,r21
4270 28a0 2090 0000 lds r2,MittelIntegralRoll
4271 28a4 3090 0000 lds r3,(MittelIntegralRoll)+1
4272 28a8 4090 0000 lds r4,(MittelIntegralRoll)+2
4273 28ac 5090 0000 lds r5,(MittelIntegralRoll)+3
4274 28b0 220E add r2,r18
4275 28b2 331E adc r3,r19
4276 28b4 441E adc r4,r20
4277 28b6 551E adc r5,r21
4278 28b8 2092 0000 sts MittelIntegralRoll,r2
4279 28bc 3092 0000 sts (MittelIntegralRoll)+1,r3
4280 28c0 4092 0000 sts (MittelIntegralRoll)+2,r4
4281 28c4 5092 0000 sts (MittelIntegralRoll)+3,r5
4282 28c8 4091 0000 lds r20,IntegralNick2
4283 28cc 5091 0000 lds r21,(IntegralNick2)+1
4284 28d0 6091 0000 lds r22,(IntegralNick2)+2
4285 28d4 7091 0000 lds r23,(IntegralNick2)+3
4286 28d8 49A3 std Y+33,r20
4287 28da 5AA3 std Y+34,r21
4288 28dc 6BA3 std Y+35,r22
4289 28de 7CA3 std Y+36,r23
4290 28e0 8091 0000 lds r24,MittelIntegralNick2
4291 28e4 9091 0000 lds r25,(MittelIntegralNick2)+1
4292 28e8 A091 0000 lds r26,(MittelIntegralNick2)+2
4293 28ec B091 0000 lds r27,(MittelIntegralNick2)+3
4294 28f0 840F add r24,r20
4295 28f2 951F adc r25,r21
4296 28f4 A61F adc r26,r22
4297 28f6 B71F adc r27,r23
4298 28f8 8093 0000 sts MittelIntegralNick2,r24
4299 28fc 9093 0000 sts (MittelIntegralNick2)+1,r25
4300 2900 A093 0000 sts (MittelIntegralNick2)+2,r26
4301 2904 B093 0000 sts (MittelIntegralNick2)+3,r27
4302 2908 6091 0000 lds r22,IntegralRoll2
4303 290c 7091 0000 lds r23,(IntegralRoll2)+1
4304 2910 8091 0000 lds r24,(IntegralRoll2)+2
4305 2914 9091 0000 lds r25,(IntegralRoll2)+3
4306 2918 6D8F std Y+29,r22
4307 291a 7E8F std Y+30,r23
4308 291c 8F8F std Y+31,r24
4309 291e 98A3 std Y+32,r25
4310 2920 8091 0000 lds r24,MittelIntegralRoll2
4311 2924 9091 0000 lds r25,(MittelIntegralRoll2)+1
4312 2928 A091 0000 lds r26,(MittelIntegralRoll2)+2
4313 292c B091 0000 lds r27,(MittelIntegralRoll2)+3
4314 2930 2D8D ldd r18,Y+29
4315 2932 3E8D ldd r19,Y+30
4316 2934 4F8D ldd r20,Y+31
4317 2936 58A1 ldd r21,Y+32
4318 2938 820F add r24,r18
4319 293a 931F adc r25,r19
4320 293c A41F adc r26,r20
4321 293e B51F adc r27,r21
4322 2940 8093 0000 sts MittelIntegralRoll2,r24
4323 2944 9093 0000 sts (MittelIntegralRoll2)+1,r25
4324 2948 A093 0000 sts (MittelIntegralRoll2)+2,r26
4325 294c B093 0000 sts (MittelIntegralRoll2)+3,r27
4326 2950 3091 0000 lds r19,Looping_Nick
4327 2954 3987 std Y+9,r19
4328 2956 3323 tst r19
4329 2958 01F4 brne .+4
4330 295a 0C94 0000 jmp .L1057
4331 295e 1092 0000 sts IntegralAccNick,__zero_reg__
4332 2962 1092 0000 sts (IntegralAccNick)+1,__zero_reg__
4333 2966 1092 0000 sts (IntegralAccNick)+2,__zero_reg__
4334 296a 1092 0000 sts (IntegralAccNick)+3,__zero_reg__
4335 296e 1092 0000 sts IntegralAccRoll,__zero_reg__
4336 2972 1092 0000 sts (IntegralAccRoll)+1,__zero_reg__
4337 2976 1092 0000 sts (IntegralAccRoll)+2,__zero_reg__
4338 297a 1092 0000 sts (IntegralAccRoll)+3,__zero_reg__
4339 297e 1092 0000 sts MittelIntegralNick,__zero_reg__
4340 2982 1092 0000 sts (MittelIntegralNick)+1,__zero_reg__
4341 2986 1092 0000 sts (MittelIntegralNick)+2,__zero_reg__
4342 298a 1092 0000 sts (MittelIntegralNick)+3,__zero_reg__
4343 298e 1092 0000 sts MittelIntegralRoll,__zero_reg__
4344 2992 1092 0000 sts (MittelIntegralRoll)+1,__zero_reg__
4345 2996 1092 0000 sts (MittelIntegralRoll)+2,__zero_reg__
4346 299a 1092 0000 sts (MittelIntegralRoll)+3,__zero_reg__
4347 299e 1092 0000 sts MittelIntegralNick2,__zero_reg__
4348 29a2 1092 0000 sts (MittelIntegralNick2)+1,__zero_reg__
4349 29a6 1092 0000 sts (MittelIntegralNick2)+2,__zero_reg__
4350 29aa 1092 0000 sts (MittelIntegralNick2)+3,__zero_reg__
4351 29ae 1092 0000 sts MittelIntegralRoll2,__zero_reg__
4352 29b2 1092 0000 sts (MittelIntegralRoll2)+1,__zero_reg__
4353 29b6 1092 0000 sts (MittelIntegralRoll2)+2,__zero_reg__
4354 29ba 1092 0000 sts (MittelIntegralRoll2)+3,__zero_reg__
4355 29be 8091 0000 lds r24,Mess_IntegralNick
4356 29c2 9091 0000 lds r25,(Mess_IntegralNick)+1
4357 29c6 A091 0000 lds r26,(Mess_IntegralNick)+2
4358 29ca B091 0000 lds r27,(Mess_IntegralNick)+3
4359 29ce 8093 0000 sts Mess_IntegralNick2,r24
4360 29d2 9093 0000 sts (Mess_IntegralNick2)+1,r25
4361 29d6 A093 0000 sts (Mess_IntegralNick2)+2,r26
4362 29da B093 0000 sts (Mess_IntegralNick2)+3,r27
4363 29de 8091 0000 lds r24,Mess_IntegralRoll
4364 29e2 9091 0000 lds r25,(Mess_IntegralRoll)+1
4365 29e6 A091 0000 lds r26,(Mess_IntegralRoll)+2
4366 29ea B091 0000 lds r27,(Mess_IntegralRoll)+3
4367 29ee 8093 0000 sts Mess_IntegralRoll2,r24
4368 29f2 9093 0000 sts (Mess_IntegralRoll2)+1,r25
4369 29f6 A093 0000 sts (Mess_IntegralRoll2)+2,r26
4370 29fa B093 0000 sts (Mess_IntegralRoll2)+3,r27
4371 29fe 1092 0000 sts (ZaehlMessungen)+1,__zero_reg__
4372 2a02 1092 0000 sts ZaehlMessungen,__zero_reg__
4373 2a06 1092 0000 sts (LageKorrekturNick)+1,__zero_reg__
4374 2a0a 1092 0000 sts LageKorrekturNick,__zero_reg__
4375 2a0e 1092 0000 sts (LageKorrekturRoll)+1,__zero_reg__
4376 2a12 1092 0000 sts LageKorrekturRoll,__zero_reg__
4377 2a16 5091 0000 lds r21,Looping_Roll
4378 2a1a 5CA7 std Y+44,r21
4379 .L801:
4380 2a1c 8091 0000 lds r24,ZaehlMessungen
4381 2a20 9091 0000 lds r25,(ZaehlMessungen)+1
4382 2a24 8F3F cpi r24,255
4383 2a26 9105 cpc r25,__zero_reg__
4384 2a28 01F0 breq .+2
4385 2a2a 00F4 brsh .+4
4386 2a2c 0C94 0000 jmp .L1046
4387 2a30 B985 ldd r27,Y+9
4388 2a32 BB23 tst r27
4389 2a34 01F4 brne .L831
4390 2a36 ECA5 ldd r30,Y+44
4391 2a38 EE23 tst r30
4392 2a3a 01F4 brne .+4
4393 2a3c 0C94 0000 jmp .L1058
4394 .L831:
4395 2a40 1092 0000 sts (LageKorrekturRoll)+1,__zero_reg__
4396 2a44 1092 0000 sts LageKorrekturRoll,__zero_reg__
4397 2a48 1092 0000 sts (LageKorrekturNick)+1,__zero_reg__
4398 2a4c 1092 0000 sts LageKorrekturNick,__zero_reg__
4399 2a50 1EA2 std Y+38,__zero_reg__
4400 2a52 1092 0000 sts TrichterFlug,__zero_reg__
4401 2a56 2091 0000 lds r18,MittelIntegralNick
4402 2a5a 3091 0000 lds r19,(MittelIntegralNick)+1
4403 2a5e 4091 0000 lds r20,(MittelIntegralNick)+2
4404 2a62 5091 0000 lds r21,(MittelIntegralNick)+3
4405 2a66 28A7 std Y+40,r18
4406 2a68 39A7 std Y+41,r19
4407 2a6a 4AA7 std Y+42,r20
4408 2a6c 5BA7 std Y+43,r21
4409 2a6e 2090 0000 lds r2,MittelIntegralRoll
4410 2a72 3090 0000 lds r3,(MittelIntegralRoll)+1
4411 2a76 4090 0000 lds r4,(MittelIntegralRoll)+2
4412 2a7a 5090 0000 lds r5,(MittelIntegralRoll)+3
4413 .L896:
4414 2a7e 3091 0000 lds r19,IntegralFaktor
4415 2a82 3DA3 std Y+37,r19
4416 2a84 3323 tst r19
4417 2a86 01F4 brne .L898
4418 2a88 1092 0000 sts (LageKorrekturRoll)+1,__zero_reg__
4419 2a8c 1092 0000 sts LageKorrekturRoll,__zero_reg__
4420 2a90 1092 0000 sts (LageKorrekturNick)+1,__zero_reg__
4421 2a94 1092 0000 sts LageKorrekturNick,__zero_reg__
4422 .L898:
4423 2a98 48A5 ldd r20,Y+40
4424 2a9a 59A5 ldd r21,Y+41
4425 2a9c 6AA5 ldd r22,Y+42
4426 2a9e 7BA5 ldd r23,Y+43
4427 2aa0 4093 0000 sts MittelIntegralNick_Alt.3104,r20
4428 2aa4 5093 0000 sts (MittelIntegralNick_Alt.3104)+1,r21
4429 2aa8 6093 0000 sts (MittelIntegralNick_Alt.3104)+2,r22
4430 2aac 7093 0000 sts (MittelIntegralNick_Alt.3104)+3,r23
4431 2ab0 2092 0000 sts MittelIntegralRoll_Alt.3105,r2
4432 2ab4 3092 0000 sts (MittelIntegralRoll_Alt.3105)+1,r3
4433 2ab8 4092 0000 sts (MittelIntegralRoll_Alt.3105)+2,r4
4434 2abc 5092 0000 sts (MittelIntegralRoll_Alt.3105)+3,r5
4435 2ac0 1092 0000 sts IntegralAccNick,__zero_reg__
4436 2ac4 1092 0000 sts (IntegralAccNick)+1,__zero_reg__
4437 2ac8 1092 0000 sts (IntegralAccNick)+2,__zero_reg__
4438 2acc 1092 0000 sts (IntegralAccNick)+3,__zero_reg__
4439 2ad0 1092 0000 sts IntegralAccRoll,__zero_reg__
4440 2ad4 1092 0000 sts (IntegralAccRoll)+1,__zero_reg__
4441 2ad8 1092 0000 sts (IntegralAccRoll)+2,__zero_reg__
4442 2adc 1092 0000 sts (IntegralAccRoll)+3,__zero_reg__
4443 2ae0 1092 0000 sts IntegralAccZ,__zero_reg__
4444 2ae4 1092 0000 sts (IntegralAccZ)+1,__zero_reg__
4445 2ae8 1092 0000 sts (IntegralAccZ)+2,__zero_reg__
4446 2aec 1092 0000 sts (IntegralAccZ)+3,__zero_reg__
4447 2af0 1092 0000 sts MittelIntegralNick,__zero_reg__
4448 2af4 1092 0000 sts (MittelIntegralNick)+1,__zero_reg__
4449 2af8 1092 0000 sts (MittelIntegralNick)+2,__zero_reg__
4450 2afc 1092 0000 sts (MittelIntegralNick)+3,__zero_reg__
4451 2b00 1092 0000 sts MittelIntegralRoll,__zero_reg__
4452 2b04 1092 0000 sts (MittelIntegralRoll)+1,__zero_reg__
4453 2b08 1092 0000 sts (MittelIntegralRoll)+2,__zero_reg__
4454 2b0c 1092 0000 sts (MittelIntegralRoll)+3,__zero_reg__
4455 2b10 1092 0000 sts MittelIntegralNick2,__zero_reg__
4456 2b14 1092 0000 sts (MittelIntegralNick2)+1,__zero_reg__
4457 2b18 1092 0000 sts (MittelIntegralNick2)+2,__zero_reg__
4458 2b1c 1092 0000 sts (MittelIntegralNick2)+3,__zero_reg__
4459 2b20 1092 0000 sts MittelIntegralRoll2,__zero_reg__
4460 2b24 1092 0000 sts (MittelIntegralRoll2)+1,__zero_reg__
4461 2b28 1092 0000 sts (MittelIntegralRoll2)+2,__zero_reg__
4462 2b2c 1092 0000 sts (MittelIntegralRoll2)+3,__zero_reg__
4463 2b30 1092 0000 sts (ZaehlMessungen)+1,__zero_reg__
4464 2b34 1092 0000 sts ZaehlMessungen,__zero_reg__
4465 2b38 E090 0000 lds r14,StickGier
4466 2b3c F090 0000 lds r15,(StickGier)+1
4467 2b40 6701 movw r12,r14
4468 2b42 F7FE sbrs r15,7
4469 2b44 00C0 rjmp .+4
4470 2b46 0C94 0000 jmp .L1059
4471 .L900:
4472 2b4a 70E1 ldi r23,lo8(16)
4473 2b4c C716 cp r12,r23
4474 2b4e D104 cpc r13,__zero_reg__
4475 2b50 04F0 brlt .L901
4476 2b52 88EE ldi r24,lo8(1000)
4477 2b54 93E0 ldi r25,hi8(1000)
4478 2b56 9093 0000 sts (KompassSignalSchlecht)+1,r25
4479 2b5a 8093 0000 sts KompassSignalSchlecht,r24
4480 2b5e 8A85 ldd r24,Y+10
4481 2b60 84FD sbrc r24,4
4482 2b62 00C0 rjmp .L901
4483 2b64 81E0 ldi r24,lo8(1)
4484 2b66 8093 0000 sts NeueKompassRichtungMerken.3088,r24
4485 .L901:
4486 2b6a 0091 0000 lds r16,EE_Parameter+17
4487 2b6e B701 movw r22,r14
4488 2b70 8827 clr r24
4489 2b72 77FD sbrc r23,7
4490 2b74 8095 com r24
4491 2b76 982F mov r25,r24
4492 2b78 202F mov r18,r16
4493 2b7a 30E0 ldi r19,lo8(0)
4494 2b7c 40E0 ldi r20,lo8(0)
4495 2b7e 50E0 ldi r21,hi8(0)
4496 2b80 0E94 0000 call __mulsi3
4497 2b84 9601 movw r18,r12
4498 2b86 4427 clr r20
4499 2b88 37FD sbrc r19,7
4500 2b8a 4095 com r20
4501 2b8c 542F mov r21,r20
4502 2b8e 0E94 0000 call __mulsi3
4503 2b92 20E0 ldi r18,lo8(512)
4504 2b94 32E0 ldi r19,hi8(512)
4505 2b96 40E0 ldi r20,hlo8(512)
4506 2b98 50E0 ldi r21,hhi8(512)
4507 2b9a 0E94 0000 call __divmodsi4
4508 2b9e 10E0 ldi r17,lo8(0)
4509 2ba0 0E9D mul r16,r14
4510 2ba2 B001 movw r22,r0
4511 2ba4 0F9D mul r16,r15
4512 2ba6 700D add r23,r0
4513 2ba8 1E9D mul r17,r14
4514 2baa 700D add r23,r0
4515 2bac 1124 clr r1
4516 2bae 77FF sbrs r23,7
4517 2bb0 00C0 rjmp .+4
4518 2bb2 0C94 0000 jmp .L1060
4519 .L904:
4520 2bb6 7595 asr r23
4521 2bb8 6795 ror r22
4522 2bba 7595 asr r23
4523 2bbc 6795 ror r22
4524 2bbe 260F add r18,r22
4525 2bc0 371F adc r19,r23
4526 2bc2 A901 movw r20,r18
4527 2bc4 6627 clr r22
4528 2bc6 57FD sbrc r21,7
4529 2bc8 6095 com r22
4530 2bca 762F mov r23,r22
4531 2bcc 488F std Y+24,r20
4532 2bce 598F std Y+25,r21
4533 2bd0 6A8F std Y+26,r22
4534 2bd2 7B8F std Y+27,r23
4535 2bd4 4093 0000 sts sollGier.3069,r20
4536 2bd8 5093 0000 sts (sollGier.3069)+1,r21
4537 2bdc 6093 0000 sts (sollGier.3069)+2,r22
4538 2be0 7093 0000 sts (sollGier.3069)+3,r23
4539 2be4 8091 0000 lds r24,Mess_Integral_Gier
4540 2be8 9091 0000 lds r25,(Mess_Integral_Gier)+1
4541 2bec A091 0000 lds r26,(Mess_Integral_Gier)+2
4542 2bf0 B091 0000 lds r27,(Mess_Integral_Gier)+3
4543 2bf4 841B sub r24,r20
4544 2bf6 950B sbc r25,r21
4545 2bf8 A60B sbc r26,r22
4546 2bfa B70B sbc r27,r23
4547 2bfc 8093 0000 sts Mess_Integral_Gier,r24
4548 2c00 9093 0000 sts (Mess_Integral_Gier)+1,r25
4549 2c04 A093 0000 sts (Mess_Integral_Gier)+2,r26
4550 2c08 B093 0000 sts (Mess_Integral_Gier)+3,r27
4551 2c0c 8135 cpi r24,lo8(50001)
4552 2c0e 53EC ldi r21,hi8(50001)
4553 2c10 9507 cpc r25,r21
4554 2c12 50E0 ldi r21,hlo8(50001)
4555 2c14 A507 cpc r26,r21
4556 2c16 50E0 ldi r21,hhi8(50001)
4557 2c18 B507 cpc r27,r21
4558 2c1a 04F4 brge .+4
4559 2c1c 0C94 0000 jmp .L905
4560 2c20 80E5 ldi r24,lo8(50000)
4561 2c22 93EC ldi r25,hi8(50000)
4562 2c24 A0E0 ldi r26,hlo8(50000)
4563 2c26 B0E0 ldi r27,hhi8(50000)
4564 2c28 8093 0000 sts Mess_Integral_Gier,r24
4565 2c2c 9093 0000 sts (Mess_Integral_Gier)+1,r25
4566 2c30 A093 0000 sts (Mess_Integral_Gier)+2,r26
4567 2c34 B093 0000 sts (Mess_Integral_Gier)+3,r27
4568 .L907:
4569 2c38 2090 0000 lds r2,KompassValue
4570 2c3c 3090 0000 lds r3,(KompassValue)+1
4571 2c40 2114 cp r2,__zero_reg__
4572 2c42 3104 cpc r3,__zero_reg__
4573 2c44 01F4 brne .+2
4574 2c46 00C0 rjmp .L1049
4575 2c48 7A85 ldd r23,Y+10
4576 2c4a 73FF sbrs r23,3
4577 2c4c 00C0 rjmp .L1049
4578 2c4e 6981 ldd r22,Y+1
4579 2c50 7A81 ldd r23,Y+2
4580 2c52 8B81 ldd r24,Y+3
4581 2c54 9C81 ldd r25,Y+4
4582 2c56 20E0 ldi r18,lo8(512)
4583 2c58 32E0 ldi r19,hi8(512)
4584 2c5a 40E0 ldi r20,hlo8(512)
4585 2c5c 50E0 ldi r21,hhi8(512)
4586 2c5e 0E94 0000 call __divmodsi4
4587 2c62 8901 movw r16,r18
4588 2c64 37FF sbrs r19,7
4589 2c66 00C0 rjmp .+4
4590 2c68 0C94 0000 jmp .L1061
4591 .L912:
4592 2c6c 6D81 ldd r22,Y+5
4593 2c6e 7E81 ldd r23,Y+6
4594 2c70 8F81 ldd r24,Y+7
4595 2c72 9885 ldd r25,Y+8
4596 2c74 20E0 ldi r18,lo8(512)
4597 2c76 32E0 ldi r19,hi8(512)
4598 2c78 40E0 ldi r20,hlo8(512)
4599 2c7a 50E0 ldi r21,hhi8(512)
4600 2c7c 0E94 0000 call __divmodsi4
4601 2c80 6901 movw r12,r18
4602 2c82 37FF sbrs r19,7
4603 2c84 00C0 rjmp .+4
4604 2c86 0C94 0000 jmp .L1062
4605 .L913:
4606 2c8a C016 cp r12,r16
4607 2c8c D106 cpc r13,r17
4608 2c8e 04F4 brge .+4
4609 2c90 0C94 0000 jmp .L1063
4610 .L914:
4611 2c94 4090 0000 lds r4,ErsatzKompass
4612 2c98 5090 0000 lds r5,(ErsatzKompass)+1
4613 2c9c 6090 0000 lds r6,(ErsatzKompass)+2
4614 2ca0 7090 0000 lds r7,(ErsatzKompass)+3
4615 2ca4 8091 0000 lds r24,GIER_GRAD_FAKTOR
4616 2ca8 9091 0000 lds r25,(GIER_GRAD_FAKTOR)+1
4617 2cac A091 0000 lds r26,(GIER_GRAD_FAKTOR)+2
4618 2cb0 B091 0000 lds r27,(GIER_GRAD_FAKTOR)+3
4619 2cb4 8C8B std Y+20,r24
4620 2cb6 9D8B std Y+21,r25
4621 2cb8 AE8B std Y+22,r26
4622 2cba BF8B std Y+23,r27
4623 2cbc 8090 0000 lds r8,MesswertGier
4624 2cc0 9090 0000 lds r9,(MesswertGier)+1
4625 2cc4 C401 movw r24,r8
4626 2cc6 97FE sbrs r9,7
4627 2cc8 00C0 rjmp .+4
4628 2cca 0C94 0000 jmp .L1064
4629 .L916:
4630 2cce 8138 cpi r24,129
4631 2cd0 9105 cpc r25,__zero_reg__
4632 2cd2 04F0 brlt .+4
4633 2cd4 0C94 0000 jmp .L1065
4634 2cd8 ACE1 ldi r26,lo8(540)
4635 2cda B2E0 ldi r27,hi8(540)
4636 2cdc 2A0E add r2,r26
4637 2cde 3B1E adc r3,r27
4638 2ce0 7101 movw r14,r2
4639 2ce2 0027 clr r16
4640 2ce4 F7FC sbrc r15,7
4641 2ce6 0095 com r16
4642 2ce8 102F mov r17,r16
4643 2cea E4EE ldi r30,lo8(-540)
4644 2cec FDEF ldi r31,hi8(-540)
4645 2cee 2E0E add r2,r30
4646 2cf0 3F1E adc r3,r31
4647 2cf2 C301 movw r24,r6
4648 2cf4 B201 movw r22,r4
4649 2cf6 2C89 ldd r18,Y+20
4650 2cf8 3D89 ldd r19,Y+21
4651 2cfa 4E89 ldd r20,Y+22
4652 2cfc 5F89 ldd r21,Y+23
4653 2cfe 0E94 0000 call __divmodsi4
4654 2d02 E21A sub r14,r18
4655 2d04 F30A sbc r15,r19
4656 2d06 040B sbc r16,r20
4657 2d08 150B sbc r17,r21
4658 2d0a C801 movw r24,r16
4659 2d0c B701 movw r22,r14
4660 2d0e 28E6 ldi r18,lo8(360)
4661 2d10 31E0 ldi r19,hi8(360)
4662 2d12 40E0 ldi r20,hlo8(360)
4663 2d14 50E0 ldi r21,hhi8(360)
4664 2d16 0E94 0000 call __divmodsi4
4665 2d1a 645B subi r22,lo8(-(-180))
4666 2d1c 7040 sbci r23,hi8(-(-180))
4667 2d1e 8B01 movw r16,r22
4668 2d20 000F lsl r16
4669 2d22 111F rol r17
4670 2d24 000F lsl r16
4671 2d26 111F rol r17
4672 2d28 000F lsl r16
4673 2d2a 111F rol r17
4674 .L918:
4675 2d2c 2091 0000 lds r18,NeueKompassRichtungMerken.3088
4676 2d30 E090 0000 lds r14,KompassSignalSchlecht
4677 2d34 F090 0000 lds r15,(KompassSignalSchlecht)+1
4678 2d38 E114 cp r14,__zero_reg__
4679 2d3a F104 cpc r15,__zero_reg__
4680 2d3c 01F4 brne .L919
4681 2d3e F9E1 ldi r31,lo8(25)
4682 2d40 CF16 cp r12,r31
4683 2d42 D104 cpc r13,__zero_reg__
4684 2d44 04F4 brge .L919
4685 2d46 8091 0000 lds r24,GierGyroFehler
4686 2d4a 9091 0000 lds r25,(GierGyroFehler)+1
4687 2d4e 860F add r24,r22
4688 2d50 971F adc r25,r23
4689 2d52 9093 0000 sts (GierGyroFehler)+1,r25
4690 2d56 8093 0000 sts GierGyroFehler,r24
4691 2d5a 2223 tst r18
4692 2d5c 01F0 breq .+4
4693 2d5e 0C94 0000 jmp .L1066
4694 .L919:
4695 2d62 B601 movw r22,r12
4696 2d64 D7FE sbrs r13,7
4697 2d66 00C0 rjmp .+4
4698 2d68 0C94 0000 jmp .L1067
4699 .L923:
4700 2d6c 7595 asr r23
4701 2d6e 6795 ror r22
4702 2d70 7595 asr r23
4703 2d72 6795 ror r22
4704 2d74 7595 asr r23
4705 2d76 6795 ror r22
4706 2d78 6F5F subi r22,lo8(-(1))
4707 2d7a 7F4F sbci r23,hi8(-(1))
4708 2d7c C801 movw r24,r16
4709 2d7e 0E94 0000 call __divmodhi4
4710 2d82 9B01 movw r18,r22
4711 2d84 A901 movw r20,r18
4712 2d86 6627 clr r22
4713 2d88 57FD sbrc r21,7
4714 2d8a 6095 com r22
4715 2d8c 762F mov r23,r22
4716 2d8e 440D add r20,r4
4717 2d90 551D adc r21,r5
4718 2d92 661D adc r22,r6
4719 2d94 771D adc r23,r7
4720 2d96 4093 0000 sts ErsatzKompass,r20
4721 2d9a 5093 0000 sts (ErsatzKompass)+1,r21
4722 2d9e 6093 0000 sts (ErsatzKompass)+2,r22
4723 2da2 7093 0000 sts (ErsatzKompass)+3,r23
4724 2da6 8091 0000 lds r24,Parameter_KompassWirkung
4725 2daa A82E mov r10,r24
4726 2dac BB24 clr r11
4727 2dae CA9C mul r12,r10
4728 2db0 9001 movw r18,r0
4729 2db2 CB9C mul r12,r11
4730 2db4 300D add r19,r0
4731 2db6 DA9C mul r13,r10
4732 2db8 300D add r19,r0
4733 2dba 1124 clr r1
4734 2dbc 37FF sbrs r19,7
4735 2dbe 00C0 rjmp .+4
4736 2dc0 0C94 0000 jmp .L1068
4737 .L924:
4738 2dc4 3595 asr r19
4739 2dc6 2795 ror r18
4740 2dc8 3595 asr r19
4741 2dca 2795 ror r18
4742 2dcc 3595 asr r19
4743 2dce 2795 ror r18
4744 2dd0 3595 asr r19
4745 2dd2 2795 ror r18
4746 2dd4 3595 asr r19
4747 2dd6 2795 ror r18
4748 2dd8 6501 movw r12,r10
4749 2dda C21A sub r12,r18
4750 2ddc D30A sbc r13,r19
4751 2dde D7FE sbrs r13,7
4752 2de0 00C0 rjmp .+4
4753 2de2 0C94 0000 jmp .L925
4754 2de6 E114 cp r14,__zero_reg__
4755 2de8 F104 cpc r15,__zero_reg__
4756 2dea 01F0 breq .+4
4757 2dec 0C94 0000 jmp .L927
4758 2df0 6090 0000 lds r6,MaxStickRoll
4759 2df4 7090 0000 lds r7,(MaxStickRoll)+1
4760 2df8 8091 0000 lds r24,MaxStickNick
4761 2dfc 9091 0000 lds r25,(MaxStickNick)+1
4762 2e00 680E add r6,r24
4763 2e02 791E adc r7,r25
4764 2e04 77FE sbrs r7,7
4765 2e06 00C0 rjmp .+4
4766 2e08 0C94 0000 jmp .L1069
4767 .L929:
4768 2e0c 7594 asr r7
4769 2e0e 6794 ror r6
4770 2e10 7594 asr r7
4771 2e12 6794 ror r6
4772 2e14 7594 asr r7
4773 2e16 6794 ror r6
4774 2e18 A0E4 ldi r26,lo8(64)
4775 2e1a B0E0 ldi r27,hi8(64)
4776 2e1c 6A0E add r6,r26
4777 2e1e 7B1E adc r7,r27
4778 2e20 8091 0000 lds r24,KompassStartwert
4779 2e24 9091 0000 lds r25,(KompassStartwert)+1
4780 2e28 AA27 clr r26
4781 2e2a 97FD sbrc r25,7
4782 2e2c A095 com r26
4783 2e2e BA2F mov r27,r26
4784 2e30 ECE1 ldi r30,lo8(540)
4785 2e32 EE2E mov r14,r30
4786 2e34 E2E0 ldi r30,hi8(540)
4787 2e36 FE2E mov r15,r30
4788 2e38 012D mov r16,__zero_reg__
4789 2e3a 112D mov r17,__zero_reg__
4790 2e3c E81A sub r14,r24
4791 2e3e F90A sbc r15,r25
4792 2e40 0A0B sbc r16,r26
4793 2e42 1B0B sbc r17,r27
4794 2e44 CB01 movw r24,r22
4795 2e46 BA01 movw r22,r20
4796 2e48 2C89 ldd r18,Y+20
4797 2e4a 3D89 ldd r19,Y+21
4798 2e4c 4E89 ldd r20,Y+22
4799 2e4e 5F89 ldd r21,Y+23
4800 2e50 0E94 0000 call __divmodsi4
4801 2e54 E20E add r14,r18
4802 2e56 F31E adc r15,r19
4803 2e58 041F adc r16,r20
4804 2e5a 151F adc r17,r21
4805 2e5c C801 movw r24,r16
4806 2e5e B701 movw r22,r14
4807 2e60 28E6 ldi r18,lo8(360)
4808 2e62 31E0 ldi r19,hi8(360)
4809 2e64 40E0 ldi r20,hlo8(360)
4810 2e66 50E0 ldi r21,hhi8(360)
4811 2e68 0E94 0000 call __divmodsi4
4812 2e6c 645B subi r22,lo8(-(-180))
4813 2e6e 7040 sbci r23,hi8(-(-180))
4814 2e70 6C9D mul r22,r12
4815 2e72 C001 movw r24,r0
4816 2e74 6D9D mul r22,r13
4817 2e76 900D add r25,r0
4818 2e78 7C9D mul r23,r12
4819 2e7a 900D add r25,r0
4820 2e7c 1124 clr r1
4821 2e7e B301 movw r22,r6
4822 2e80 0E94 0000 call __divmodhi4
4823 2e84 9501 movw r18,r10
4824 2e86 220F lsl r18
4825 2e88 331F rol r19
4826 2e8a 2A0D add r18,r10
4827 2e8c 3B1D adc r19,r11
4828 2e8e 2617 cp r18,r22
4829 2e90 3707 cpc r19,r23
4830 2e92 04F4 brge .+4
4831 2e94 0C94 0000 jmp .L930
4832 2e98 3095 com r19
4833 2e9a 2195 neg r18
4834 2e9c 3F4F sbci r19,lo8(-1)
4835 2e9e 6217 cp r22,r18
4836 2ea0 7307 cpc r23,r19
4837 2ea2 04F4 brge .L932
4838 2ea4 B901 movw r22,r18
4839 .L932:
4840 2ea6 9B01 movw r18,r22
4841 2ea8 4427 clr r20
4842 2eaa 37FD sbrc r19,7
4843 2eac 4095 com r20
4844 2eae 542F mov r21,r20
4845 2eb0 8091 0000 lds r24,Mess_Integral_Gier
4846 2eb4 9091 0000 lds r25,(Mess_Integral_Gier)+1
4847 2eb8 A091 0000 lds r26,(Mess_Integral_Gier)+2
4848 2ebc B091 0000 lds r27,(Mess_Integral_Gier)+3
4849 2ec0 820F add r24,r18
4850 2ec2 931F adc r25,r19
4851 2ec4 A41F adc r26,r20
4852 2ec6 B51F adc r27,r21
4853 2ec8 8093 0000 sts Mess_Integral_Gier,r24
4854 2ecc 9093 0000 sts (Mess_Integral_Gier)+1,r25
4855 2ed0 A093 0000 sts (Mess_Integral_Gier)+2,r26
4856 2ed4 B093 0000 sts (Mess_Integral_Gier)+3,r27
4857 2ed8 00C0 rjmp .L909
4858 .L647:
4859 2eda 8091 0000 lds r24,SenderOkay
4860 2ede 8D38 cpi r24,lo8(-115)
4861 2ee0 00F4 brsh .+2
4862 2ee2 00C0 rjmp .L661
4863 2ee4 1092 0000 sts Notlandung,__zero_reg__
4864 2ee8 8091 0000 lds r24,EE_Parameter+27
4865 2eec 22E3 ldi r18,lo8(50)
4866 2eee 829F mul r24,r18
4867 2ef0 C001 movw r24,r0
4868 2ef2 1124 clr r1
4869 2ef4 9093 0000 sts (RcLostTimer.3074)+1,r25
4870 2ef8 8093 0000 sts RcLostTimer.3074,r24
4871 2efc E889 ldd r30,Y+16
4872 2efe F989 ldd r31,Y+17
4873 2f00 B997 sbiw r30,41
4874 2f02 04F0 brlt .L663
4875 2f04 8091 0000 lds r24,MotorenEin
4876 2f08 8823 tst r24
4877 2f0a 01F0 breq .L663
4878 2f0c 8091 0000 lds r24,modell_fliegt
4879 2f10 9091 0000 lds r25,(modell_fliegt)+1
4880 2f14 FFEF ldi r31,hi8(-1)
4881 2f16 8F3F cpi r24,lo8(-1)
4882 2f18 9F07 cpc r25,r31
4883 2f1a 01F0 breq .L666
4884 2f1c 0196 adiw r24,1
4885 2f1e 9093 0000 sts (modell_fliegt)+1,r25
4886 2f22 8093 0000 sts modell_fliegt,r24
4887 .L663:
4888 2f26 8091 0000 lds r24,modell_fliegt
4889 2f2a 9091 0000 lds r25,(modell_fliegt)+1
4890 2f2e 8F3F cpi r24,255
4891 2f30 9105 cpc r25,__zero_reg__
4892 2f32 01F0 breq .+2
4893 2f34 00F4 brsh .+4
4894 2f36 0C94 0000 jmp .L1070
4895 .L666:
4896 2f3a 8091 0000 lds r24,MikroKopterFlags
4897 2f3e 8260 ori r24,lo8(2)
4898 2f40 8093 0000 sts MikroKopterFlags,r24
4899 .L669:
4900 2f44 8091 0000 lds r24,EE_Parameter+2
4901 2f48 A82F mov r26,r24
4902 2f4a B0E0 ldi r27,lo8(0)
4903 2f4c AA0F lsl r26
4904 2f4e BB1F rol r27
4905 2f50 FD01 movw r30,r26
4906 2f52 E050 subi r30,lo8(-(PPM_in))
4907 2f54 F040 sbci r31,hi8(-(PPM_in))
4908 2f56 8081 ld r24,Z
4909 2f58 9181 ldd r25,Z+1
4910 2f5a 8135 cpi r24,81
4911 2f5c 9105 cpc r25,__zero_reg__
4912 2f5e 04F4 brge .+2
4913 2f60 00C0 rjmp .L671
4914 2f62 8091 0000 lds r24,MotorenEin
4915 2f66 8823 tst r24
4916 2f68 01F0 breq .+2
4917 2f6a 00C0 rjmp .L671
4918 2f6c 8091 0000 lds r24,EE_Parameter+3
4919 2f70 E82F mov r30,r24
4920 2f72 F0E0 ldi r31,lo8(0)
4921 2f74 EE0F lsl r30
4922 2f76 FF1F rol r31
4923 2f78 E050 subi r30,lo8(-(PPM_in))
4924 2f7a F040 sbci r31,hi8(-(PPM_in))
4925 2f7c 8081 ld r24,Z
4926 2f7e 9181 ldd r25,Z+1
4927 2f80 8C34 cpi r24,76
4928 2f82 9105 cpc r25,__zero_reg__
4929 2f84 04F4 brge .+4
4930 2f86 0C94 0000 jmp .L674
4931 2f8a 8091 0000 lds r24,delay_neutral.3075
4932 2f8e 8F5F subi r24,lo8(-(1))
4933 2f90 8093 0000 sts delay_neutral.3075,r24
4934 2f94 893C cpi r24,lo8(-55)
4935 2f96 00F4 brsh .+2
4936 2f98 00C0 rjmp .L671
4937 2f9a 4C30 cpi r20,lo8(12)
4938 2f9c 00F0 brlo .+4
4939 2f9e 0C94 0000 jmp .L677
4940 2fa2 2998 cbi 37-0x20,1
4941 .L679:
4942 2fa4 1092 0000 sts MotorenEin,__zero_reg__
4943 2fa8 1092 0000 sts delay_neutral.3075,__zero_reg__
4944 2fac 1092 0000 sts (modell_fliegt)+1,__zero_reg__
4945 2fb0 1092 0000 sts modell_fliegt,__zero_reg__
4946 2fb4 8091 0000 lds r24,EE_Parameter
4947 2fb8 282F mov r18,r24
4948 2fba 30E0 ldi r19,lo8(0)
4949 2fbc 220F lsl r18
4950 2fbe 331F rol r19
4951 2fc0 F901 movw r30,r18
4952 2fc2 E050 subi r30,lo8(-(PPM_in))
4953 2fc4 F040 sbci r31,hi8(-(PPM_in))
4954 2fc6 8081 ld r24,Z
4955 2fc8 9181 ldd r25,Z+1
4956 2fca 8734 cpi r24,71
4957 2fcc 9105 cpc r25,__zero_reg__
4958 2fce 04F4 brge .+4
4959 2fd0 0C94 0000 jmp .L680
4960 2fd4 8091 0000 lds r24,EE_Parameter+1
4961 2fd8 A82F mov r26,r24
4962 2fda B0E0 ldi r27,lo8(0)
4963 2fdc AA0F lsl r26
4964 2fde BB1F rol r27
4965 .L682:
4966 2fe0 AD01 movw r20,r26
4967 2fe2 4050 subi r20,lo8(-(PPM_in))
4968 2fe4 5040 sbci r21,hi8(-(PPM_in))
4969 2fe6 FA01 movw r30,r20
4970 2fe8 8081 ld r24,Z
4971 2fea 9181 ldd r25,Z+1
4972 2fec 8734 cpi r24,71
4973 2fee 9105 cpc r25,__zero_reg__
4974 2ff0 04F0 brlt .L685
4975 2ff2 F901 movw r30,r18
4976 2ff4 E050 subi r30,lo8(-(PPM_in))
4977 2ff6 F040 sbci r31,hi8(-(PPM_in))
4978 2ff8 8081 ld r24,Z
4979 2ffa 9181 ldd r25,Z+1
4980 .L685:
4981 2ffc FA01 movw r30,r20
4982 2ffe 8081 ld r24,Z
4983 3000 9181 ldd r25,Z+1
4984 3002 8734 cpi r24,71
4985 3004 9105 cpc r25,__zero_reg__
4986 3006 04F4 brge .+4
4987 3008 0C94 0000 jmp .L687
4988 300c F901 movw r30,r18
4989 300e E050 subi r30,lo8(-(PPM_in))
4990 3010 F040 sbci r31,hi8(-(PPM_in))
4991 3012 8081 ld r24,Z
4992 3014 9181 ldd r25,Z+1
4993 3016 8734 cpi r24,71
4994 3018 9105 cpc r25,__zero_reg__
4995 301a 04F4 brge .+4
4996 301c 0C94 0000 jmp .L687
4997 3020 42E0 ldi r20,lo8(2)
4998 .L690:
4999 3022 FD01 movw r30,r26
5000 3024 E050 subi r30,lo8(-(PPM_in))
5001 3026 F040 sbci r31,hi8(-(PPM_in))
5002 3028 8081 ld r24,Z
5003 302a 9181 ldd r25,Z+1
5004 302c 8634 cpi r24,70
5005 302e 9105 cpc r25,__zero_reg__
5006 3030 04F4 brge .L691
5007 3032 F901 movw r30,r18
5008 3034 E050 subi r30,lo8(-(PPM_in))
5009 3036 F040 sbci r31,hi8(-(PPM_in))
5010 3038 8081 ld r24,Z
5011 303a 9181 ldd r25,Z+1
5012 303c 8734 cpi r24,71
5013 303e 9105 cpc r25,__zero_reg__
5014 3040 04F0 brlt .L691
5015 3042 43E0 ldi r20,lo8(3)
5016 .L691:
5017 3044 FD01 movw r30,r26
5018 3046 E050 subi r30,lo8(-(PPM_in))
5019 3048 F040 sbci r31,hi8(-(PPM_in))
5020 304a 8081 ld r24,Z
5021 304c 9181 ldd r25,Z+1
5022 304e 8A5B subi r24,lo8(-70)
5023 3050 9F4F sbci r25,hi8(-70)
5024 3052 04F4 brge .L694
5025 3054 F901 movw r30,r18
5026 3056 E050 subi r30,lo8(-(PPM_in))
5027 3058 F040 sbci r31,hi8(-(PPM_in))
5028 305a 8081 ld r24,Z
5029 305c 9181 ldd r25,Z+1
5030 305e 8734 cpi r24,71
5031 3060 9105 cpc r25,__zero_reg__
5032 3062 04F0 brlt .L694
5033 3064 44E0 ldi r20,lo8(4)
5034 .L694:
5035 3066 A050 subi r26,lo8(-(PPM_in))
5036 3068 B040 sbci r27,hi8(-(PPM_in))
5037 306a 8D91 ld r24,X+
5038 306c 9C91 ld r25,X
5039 306e 8A5B subi r24,lo8(-70)
5040 3070 9F4F sbci r25,hi8(-70)
5041 3072 04F4 brge .L697
5042 3074 2050 subi r18,lo8(-(PPM_in))
5043 3076 3040 sbci r19,hi8(-(PPM_in))
5044 3078 D901 movw r26,r18
5045 307a 8D91 ld r24,X+
5046 307c 9C91 ld r25,X
5047 307e 8634 cpi r24,70
5048 3080 9105 cpc r25,__zero_reg__
5049 3082 04F4 brge .L697
5050 3084 45E0 ldi r20,lo8(5)
5051 .L697:
5052 3086 842F mov r24,r20
5053 3088 0E94 0000 call SetActiveParamSetNumber
5054 308c 8091 0000 lds r24,EE_Parameter+1
5055 3090 A82F mov r26,r24
5056 3092 B0E0 ldi r27,lo8(0)
5057 3094 AA0F lsl r26
5058 3096 BB1F rol r27
5059 .L683:
5060 3098 A050 subi r26,lo8(-(PPM_in))
5061 309a B040 sbci r27,hi8(-(PPM_in))
5062 309c 8D91 ld r24,X+
5063 309e 9C91 ld r25,X
5064 30a0 97FF sbrs r25,7
5065 30a2 00C0 rjmp .+4
5066 30a4 0C94 0000 jmp .L1071
5067 .L701:
5068 30a8 4E97 sbiw r24,30
5069 30aa 04F0 brlt .+4
5070 30ac 0C94 0000 jmp .L700
5071 30b0 E091 0000 lds r30,EE_Parameter
5072 30b4 F0E0 ldi r31,lo8(0)
5073 30b6 EE0F lsl r30
5074 30b8 FF1F rol r31
5075 30ba E050 subi r30,lo8(-(PPM_in))
5076 30bc F040 sbci r31,hi8(-(PPM_in))
5077 30be 8081 ld r24,Z
5078 30c0 9181 ldd r25,Z+1
5079 30c2 8A5B subi r24,lo8(-70)
5080 30c4 9F4F sbci r25,hi8(-70)
5081 30c6 04F0 brlt .+4
5082 30c8 0C94 0000 jmp .L700
5083 30cc 81E0 ldi r24,lo8(1)
5084 30ce 8093 0000 sts WinkelOut+6,r24
5085 30d2 88EE ldi r24,lo8(1000)
5086 30d4 93E0 ldi r25,hi8(1000)
5087 30d6 9093 0000 sts (beeptime)+1,r25
5088 30da 8093 0000 sts beeptime,r24
5089 30de 8091 0000 lds r24,EE_Parameter+2
5090 30e2 A82F mov r26,r24
5091 30e4 B0E0 ldi r27,lo8(0)
5092 30e6 AA0F lsl r26
5093 30e8 BB1F rol r27
5094 .L671:
5095 30ea A050 subi r26,lo8(-(PPM_in))
5096 30ec B040 sbci r27,hi8(-(PPM_in))
5097 30ee 8D91 ld r24,X+
5098 30f0 9C91 ld r25,X
5099 30f2 8B5A subi r24,lo8(-85)
5100 30f4 9F4F sbci r25,hi8(-85)
5101 30f6 04F0 brlt .+2
5102 30f8 00C0 rjmp .L661
5103 30fa 8091 0000 lds r24,EE_Parameter+3
5104 30fe C82E mov r12,r24
5105 3100 DD24 clr r13
5106 3102 CC0C lsl r12
5107 3104 DD1C rol r13
5108 3106 F601 movw r30,r12
5109 3108 E050 subi r30,lo8(-(PPM_in))
5110 310a F040 sbci r31,hi8(-(PPM_in))
5111 310c 8081 ld r24,Z
5112 310e 9181 ldd r25,Z+1
5113 3110 855B subi r24,lo8(-75)
5114 3112 9F4F sbci r25,hi8(-75)
5115 3114 04F0 brlt .+4
5116 3116 0C94 0000 jmp .L718
5117 311a 8091 0000 lds r24,delay_einschalten.3076
5118 311e 8F5F subi r24,lo8(-(1))
5119 3120 8093 0000 sts delay_einschalten.3076,r24
5120 3124 893C cpi r24,lo8(-55)
5121 3126 00F0 brlo .+4
5122 3128 0C94 0000 jmp .L1072
5123 .L720:
5124 312c 60E0 ldi r22,lo8(PPM_in)
5125 312e 70E0 ldi r23,hi8(PPM_in)
5126 3130 C60E add r12,r22
5127 3132 D71E adc r13,r23
5128 3134 D601 movw r26,r12
5129 3136 8D91 ld r24,X+
5130 3138 9C91 ld r25,X
5131 313a 8C34 cpi r24,76
5132 313c 9105 cpc r25,__zero_reg__
5133 313e 04F4 brge .+4
5134 3140 0C94 0000 jmp .L722
5135 3144 8091 0000 lds r24,delay_ausschalten.3077
5136 3148 8F5F subi r24,lo8(-(1))
5137 314a 8093 0000 sts delay_ausschalten.3077,r24
5138 314e 893C cpi r24,lo8(-55)
5139 3150 00F4 brsh .+2
5140 3152 00C0 rjmp .L661
5141 3154 1092 0000 sts MotorenEin,__zero_reg__
5142 3158 88EC ldi r24,lo8(-56)
5143 315a 8093 0000 sts delay_ausschalten.3077,r24
5144 315e 1092 0000 sts (modell_fliegt)+1,__zero_reg__
5145 3162 1092 0000 sts modell_fliegt,__zero_reg__
5146 3166 00C0 rjmp .L661
5147 .L725:
5148 3168 0E94 0000 call ParameterZuordnung
5149 316c 8091 0000 lds r24,EE_Parameter
5150 3170 A82E mov r10,r24
5151 3172 BB24 clr r11
5152 3174 AA0C lsl r10
5153 3176 BB1C rol r11
5154 3178 F501 movw r30,r10
5155 317a E050 subi r30,lo8(-(PPM_in))
5156 317c F040 sbci r31,hi8(-(PPM_in))
5157 317e 2081 ld r18,Z
5158 3180 3181 ldd r19,Z+1
5159 3182 8091 0000 lds r24,EE_Parameter+15
5160 3186 882E mov r8,r24
5161 3188 9924 clr r9
5162 318a F501 movw r30,r10
5163 318c E050 subi r30,lo8(-(PPM_diff))
5164 318e F040 sbci r31,hi8(-(PPM_diff))
5165 3190 0190 ld __tmp_reg__,Z+
5166 3192 F081 ld r31,Z
5167 3194 E02D mov r30,__tmp_reg__
5168 3196 8091 0000 lds r24,EE_Parameter+16
5169 319a 682F mov r22,r24
5170 319c 70E0 ldi r23,lo8(0)
5171 319e 289D mul r18,r8
5172 31a0 A001 movw r20,r0
5173 31a2 299D mul r18,r9
5174 31a4 500D add r21,r0
5175 31a6 389D mul r19,r8
5176 31a8 500D add r21,r0
5177 31aa 1124 clr r1
5178 31ac 2091 0000 lds r18,stick_nick.3095
5179 31b0 3091 0000 lds r19,(stick_nick.3095)+1
5180 31b4 C901 movw r24,r18
5181 31b6 880F lsl r24
5182 31b8 991F rol r25
5183 31ba 820F add r24,r18
5184 31bc 931F adc r25,r19
5185 31be 480F add r20,r24
5186 31c0 591F adc r21,r25
5187 31c2 57FF sbrs r21,7
5188 31c4 00C0 rjmp .+4
5189 31c6 0C94 0000 jmp .L1073
5190 .L728:
5191 31ca 9A01 movw r18,r20
5192 31cc 3595 asr r19
5193 31ce 2795 ror r18
5194 31d0 3595 asr r19
5195 31d2 2795 ror r18
5196 31d4 E69F mul r30,r22
5197 31d6 C001 movw r24,r0
5198 31d8 E79F mul r30,r23
5199 31da 900D add r25,r0
5200 31dc F69F mul r31,r22
5201 31de 900D add r25,r0
5202 31e0 1124 clr r1
5203 31e2 280F add r18,r24
5204 31e4 391F adc r19,r25
5205 31e6 3093 0000 sts (stick_nick.3095)+1,r19
5206 31ea 2093 0000 sts stick_nick.3095,r18
5207 31ee 8091 0000 lds r24,GPS_Nick2
5208 31f2 9091 0000 lds r25,(GPS_Nick2)+1
5209 31f6 4091 0000 lds r20,GPS_Nick
5210 31fa 5091 0000 lds r21,(GPS_Nick)+1
5211 31fe 6901 movw r12,r18
5212 3200 C81A sub r12,r24
5213 3202 D90A sbc r13,r25
5214 3204 C41A sub r12,r20
5215 3206 D50A sbc r13,r21
5216 3208 D092 0000 sts (StickNick)+1,r13
5217 320c C092 0000 sts StickNick,r12
5218 3210 8091 0000 lds r24,EE_Parameter+1
5219 3214 E82E mov r14,r24
5220 3216 FF24 clr r15
5221 3218 EE0C lsl r14
5222 321a FF1C rol r15
5223 321c F701 movw r30,r14
5224 321e E050 subi r30,lo8(-(PPM_in))
5225 3220 F040 sbci r31,hi8(-(PPM_in))
5226 3222 8081 ld r24,Z
5227 3224 9181 ldd r25,Z+1
5228 3226 F701 movw r30,r14
5229 3228 E050 subi r30,lo8(-(PPM_diff))
5230 322a F040 sbci r31,hi8(-(PPM_diff))
5231 322c 0190 ld __tmp_reg__,Z+
5232 322e F081 ld r31,Z
5233 3230 E02D mov r30,__tmp_reg__
5234 3232 889D mul r24,r8
5235 3234 A001 movw r20,r0
5236 3236 899D mul r24,r9
5237 3238 500D add r21,r0
5238 323a 989D mul r25,r8
5239 323c 500D add r21,r0
5240 323e 1124 clr r1
5241 3240 2091 0000 lds r18,stick_roll.3096
5242 3244 3091 0000 lds r19,(stick_roll.3096)+1
5243 3248 C901 movw r24,r18
5244 324a 880F lsl r24
5245 324c 991F rol r25
5246 324e 820F add r24,r18
5247 3250 931F adc r25,r19
5248 3252 480F add r20,r24
5249 3254 591F adc r21,r25
5250 3256 57FF sbrs r21,7
5251 3258 00C0 rjmp .+4
5252 325a 0C94 0000 jmp .L1074
5253 .L729:
5254 325e 9A01 movw r18,r20
5255 3260 3595 asr r19
5256 3262 2795 ror r18
5257 3264 3595 asr r19
5258 3266 2795 ror r18
5259 3268 E69F mul r30,r22
5260 326a C001 movw r24,r0
5261 326c E79F mul r30,r23
5262 326e 900D add r25,r0
5263 3270 F69F mul r31,r22
5264 3272 900D add r25,r0
5265 3274 1124 clr r1
5266 3276 280F add r18,r24
5267 3278 391F adc r19,r25
5268 327a 3093 0000 sts (stick_roll.3096)+1,r19
5269 327e 2093 0000 sts stick_roll.3096,r18
5270 3282 8091 0000 lds r24,GPS_Roll2
5271 3286 9091 0000 lds r25,(GPS_Roll2)+1
5272 328a 4091 0000 lds r20,GPS_Roll
5273 328e 5091 0000 lds r21,(GPS_Roll)+1
5274 3292 8901 movw r16,r18
5275 3294 081B sub r16,r24
5276 3296 190B sbc r17,r25
5277 3298 041B sub r16,r20
5278 329a 150B sbc r17,r21
5279 329c 1093 0000 sts (StickRoll)+1,r17
5280 32a0 0093 0000 sts StickRoll,r16
5281 32a4 E091 0000 lds r30,EE_Parameter+3
5282 32a8 F0E0 ldi r31,lo8(0)
5283 32aa EE0F lsl r30
5284 32ac FF1F rol r31
5285 32ae E050 subi r30,lo8(-(PPM_in))
5286 32b0 F040 sbci r31,hi8(-(PPM_in))
5287 32b2 8081 ld r24,Z
5288 32b4 9181 ldd r25,Z+1
5289 32b6 9095 com r25
5290 32b8 8195 neg r24
5291 32ba 9F4F sbci r25,lo8(-1)
5292 32bc 9093 0000 sts (StickGier)+1,r25
5293 32c0 8093 0000 sts StickGier,r24
5294 32c4 8330 cpi r24,3
5295 32c6 9105 cpc r25,__zero_reg__
5296 32c8 04F4 brge .+2
5297 32ca 00C0 rjmp .L730
5298 32cc 0297 sbiw r24,2
5299 32ce 9093 0000 sts (StickGier)+1,r25
5300 32d2 8093 0000 sts StickGier,r24
5301 .L732:
5302 32d6 E091 0000 lds r30,EE_Parameter+2
5303 32da F0E0 ldi r31,lo8(0)
5304 32dc EE0F lsl r30
5305 32de FF1F rol r31
5306 32e0 E050 subi r30,lo8(-(PPM_in))
5307 32e2 F040 sbci r31,hi8(-(PPM_in))
5308 32e4 6080 ld r6,Z
5309 32e6 7180 ldd r7,Z+1
5310 32e8 28E7 ldi r18,lo8(120)
5311 32ea 30E0 ldi r19,hi8(120)
5312 32ec 620E add r6,r18
5313 32ee 731E adc r7,r19
5314 32f0 7092 0000 sts (StickGas)+1,r7
5315 32f4 6092 0000 sts StickGas,r6
5316 32f8 6091 0000 lds r22,Parameter_Gyro_P
5317 32fc 70E0 ldi r23,lo8(0)
5318 32fe 8827 clr r24
5319 3300 77FD sbrc r23,7
5320 3302 8095 com r24
5321 3304 982F mov r25,r24
5322 3306 0E94 0000 call __floatsisf
5323 330a 20E0 ldi r18,lo8(0x41200000)
5324 330c 30E0 ldi r19,hi8(0x41200000)
5325 330e 40E2 ldi r20,hlo8(0x41200000)
5326 3310 51E4 ldi r21,hhi8(0x41200000)
5327 3312 0E94 0000 call __addsf3
5328 3316 0E94 0000 call __fixunssfsi
5329 331a 6093 0000 sts GyroFaktor,r22
5330 331e 3091 0000 lds r19,Parameter_Gyro_I
5331 3322 3093 0000 sts IntegralFaktor,r19
5332 3326 8091 0000 lds r24,ExternControl+10
5333 332a 80FF sbrs r24,0
5334 332c 00C0 rjmp .L735
5335 332e 8091 0000 lds r24,Parameter_ExternalControl
5336 3332 8138 cpi r24,lo8(-127)
5337 3334 00F0 brlo .+4
5338 3336 0C94 0000 jmp .L1075
5339 .L735:
5340 333a 8091 0000 lds r24,StickGas
5341 333e 9091 0000 lds r25,(StickGas)+1
5342 3342 97FF sbrs r25,7
5343 3344 00C0 rjmp .+4
5344 3346 0C94 0000 jmp .L1076
5345 .L739:
5346 334a B091 0000 lds r27,EE_Parameter+8
5347 334e B2FF sbrs r27,2
5348 3350 00C0 rjmp .L741
5349 3352 1092 0000 sts IntegralFaktor,__zero_reg__
5350 .L741:
5351 3356 2091 0000 lds r18,StickNick
5352 335a 3091 0000 lds r19,(StickNick)+1
5353 335e 4091 0000 lds r20,MaxStickNick
5354 3362 5091 0000 lds r21,(MaxStickNick)+1
5355 3366 C901 movw r24,r18
5356 3368 37FF sbrs r19,7
5357 336a 00C0 rjmp .+4
5358 336c 0C94 0000 jmp .L1077
5359 .L744:
5360 3370 9595 asr r25
5361 3372 8795 ror r24
5362 3374 9595 asr r25
5363 3376 8795 ror r24
5364 3378 97FF sbrs r25,7
5365 337a 00C0 rjmp .+4
5366 337c 0C94 0000 jmp .L1078
5367 .L745:
5368 3380 4817 cp r20,r24
5369 3382 5907 cpc r21,r25
5370 3384 04F0 brlt .+2
5371 3386 00C0 rjmp .L743
5372 3388 C901 movw r24,r18
5373 338a 37FF sbrs r19,7
5374 338c 00C0 rjmp .+4
5375 338e 0C94 0000 jmp .L1079
5376 .L747:
5377 3392 97FF sbrs r25,7
5378 3394 00C0 rjmp .+4
5379 3396 0C94 0000 jmp .L1080
5380 .L748:
5381 339a 9595 asr r25
5382 339c 8795 ror r24
5383 339e 9595 asr r25
5384 33a0 8795 ror r24
5385 33a2 9093 0000 sts (MaxStickNick)+1,r25
5386 33a6 8093 0000 sts MaxStickNick,r24
5387 33aa 8536 cpi r24,101
5388 33ac 9105 cpc r25,__zero_reg__
5389 33ae 04F0 brlt .+4
5390 33b0 0C94 0000 jmp .L1081
5391 .L749:
5392 33b4 2091 0000 lds r18,StickRoll
5393 33b8 3091 0000 lds r19,(StickRoll)+1
5394 33bc 4091 0000 lds r20,MaxStickRoll
5395 33c0 5091 0000 lds r21,(MaxStickRoll)+1
5396 33c4 C901 movw r24,r18
5397 33c6 37FF sbrs r19,7
5398 33c8 00C0 rjmp .+4
5399 33ca 0C94 0000 jmp .L1082
5400 33ce 9595 asr r25
5401 33d0 8795 ror r24
5402 33d2 9595 asr r25
5403 33d4 8795 ror r24
5404 33d6 97FF sbrs r25,7
5405 33d8 00C0 rjmp .+4
5406 33da 0C94 0000 jmp .L1083
5407 .L753:
5408 33de 4817 cp r20,r24
5409 33e0 5907 cpc r21,r25
5410 33e2 04F0 brlt .+2
5411 33e4 00C0 rjmp .L751
5412 33e6 C901 movw r24,r18
5413 33e8 37FF sbrs r19,7
5414 33ea 00C0 rjmp .+4
5415 33ec 0C94 0000 jmp .L1084
5416 .L755:
5417 33f0 97FF sbrs r25,7
5418 33f2 00C0 rjmp .+4
5419 33f4 0C94 0000 jmp .L1085
5420 .L756:
5421 33f8 9595 asr r25
5422 33fa 8795 ror r24
5423 33fc 9595 asr r25
5424 33fe 8795 ror r24
5425 3400 9093 0000 sts (MaxStickRoll)+1,r25
5426 3404 8093 0000 sts MaxStickRoll,r24
5427 3408 8536 cpi r24,101
5428 340a 9105 cpc r25,__zero_reg__
5429 340c 04F0 brlt .+2
5430 340e 00C0 rjmp .L1086
5431 .L757:
5432 3410 E091 0000 lds r30,Notlandung
5433 3414 EFA3 std Y+39,r30
5434 3416 EE23 tst r30
5435 3418 01F0 breq .L759
5436 341a 1092 0000 sts (MaxStickNick)+1,__zero_reg__
5437 341e 1092 0000 sts MaxStickNick,__zero_reg__
5438 3422 1092 0000 sts (MaxStickRoll)+1,__zero_reg__
5439 3426 1092 0000 sts MaxStickRoll,__zero_reg__
5440 .L759:
5441 342a F701 movw r30,r14
5442 342c E050 subi r30,lo8(-(PPM_in))
5443 342e F040 sbci r31,hi8(-(PPM_in))
5444 3430 2081 ld r18,Z
5445 3432 3181 ldd r19,Z+1
5446 3434 8091 0000 lds r24,EE_Parameter+40
5447 3438 482F mov r20,r24
5448 343a 50E0 ldi r21,lo8(0)
5449 343c 4217 cp r20,r18
5450 343e 5307 cpc r21,r19
5451 3440 04F4 brge .L761
5452 3442 8091 0000 lds r24,EE_Parameter+75
5453 3446 82FD sbrc r24,2
5454 3448 00C0 rjmp .L1087
5455 .L761:
5456 344a F701 movw r30,r14
5457 344c E050 subi r30,lo8(-(PPM_in))
5458 344e F040 sbci r31,hi8(-(PPM_in))
5459 3450 2081 ld r18,Z
5460 3452 3181 ldd r19,Z+1
5461 3454 8091 0000 lds r24,EE_Parameter+41
5462 3458 BA01 movw r22,r20
5463 345a 681B sub r22,r24
5464 345c 7109 sbc r23,__zero_reg__
5465 345e 2617 cp r18,r22
5466 3460 3707 cpc r19,r23
5467 3462 04F4 brge .L764
5468 3464 1092 0000 sts Looping_Links,__zero_reg__
5469 .L764:
5470 3468 F701 movw r30,r14
5471 346a E050 subi r30,lo8(-(PPM_in))
5472 346c F040 sbci r31,hi8(-(PPM_in))
5473 346e 8081 ld r24,Z
5474 3470 9181 ldd r25,Z+1
5475 3472 6627 clr r22
5476 3474 7727 clr r23
5477 3476 641B sub r22,r20
5478 3478 750B sbc r23,r21
5479 347a 8617 cp r24,r22
5480 347c 9707 cpc r25,r23
5481 347e 04F4 brge .L766
5482 3480 8091 0000 lds r24,EE_Parameter+75
5483 3484 83FD sbrc r24,3
5484 3486 00C0 rjmp .L1088
5485 .L766:
5486 3488 8091 0000 lds r24,Looping_Rechts
5487 348c 8823 tst r24
5488 348e 01F0 breq .L769
5489 3490 80E0 ldi r24,lo8(PPM_in)
5490 3492 90E0 ldi r25,hi8(PPM_in)
5491 3494 E80E add r14,r24
5492 3496 F91E adc r15,r25
5493 3498 F701 movw r30,r14
5494 349a 2081 ld r18,Z
5495 349c 3181 ldd r19,Z+1
5496 349e 8091 0000 lds r24,EE_Parameter+41
5497 34a2 90E0 ldi r25,lo8(0)
5498 34a4 841B sub r24,r20
5499 34a6 950B sbc r25,r21
5500 34a8 8217 cp r24,r18
5501 34aa 9307 cpc r25,r19
5502 34ac 04F4 brge .+4
5503 34ae 0C94 0000 jmp .L1089
5504 .L769:
5505 34b2 F501 movw r30,r10
5506 34b4 E050 subi r30,lo8(-(PPM_in))
5507 34b6 F040 sbci r31,hi8(-(PPM_in))
5508 34b8 8081 ld r24,Z
5509 34ba 9181 ldd r25,Z+1
5510 34bc 4817 cp r20,r24
5511 34be 5907 cpc r21,r25
5512 34c0 04F4 brge .L772
5513 34c2 8091 0000 lds r24,EE_Parameter+75
5514 34c6 80FD sbrc r24,0
5515 34c8 00C0 rjmp .L1090
5516 .L772:
5517 34ca A091 0000 lds r26,Looping_Oben
5518 34ce AA23 tst r26
5519 34d0 01F0 breq .L775
5520 34d2 F501 movw r30,r10
5521 34d4 E050 subi r30,lo8(-(PPM_in))
5522 34d6 F040 sbci r31,hi8(-(PPM_in))
5523 34d8 2081 ld r18,Z
5524 34da 3181 ldd r19,Z+1
5525 34dc 8091 0000 lds r24,EE_Parameter+41
5526 34e0 FA01 movw r30,r20
5527 34e2 E81B sub r30,r24
5528 34e4 F109 sbc r31,__zero_reg__
5529 34e6 2E17 cp r18,r30
5530 34e8 3F07 cpc r19,r31
5531 34ea 04F4 brge .+4
5532 34ec 0C94 0000 jmp .L1091
5533 .L775:
5534 34f0 F501 movw r30,r10
5535 34f2 E050 subi r30,lo8(-(PPM_in))
5536 34f4 F040 sbci r31,hi8(-(PPM_in))
5537 34f6 8081 ld r24,Z
5538 34f8 9181 ldd r25,Z+1
5539 34fa 8617 cp r24,r22
5540 34fc 9707 cpc r25,r23
5541 34fe 04F4 brge .L778
5542 3500 8091 0000 lds r24,EE_Parameter+75
5543 3504 81FD sbrc r24,1
5544 3506 00C0 rjmp .L1092
5545 .L778:
5546 3508 8091 0000 lds r24,Looping_Unten
5547 350c 8823 tst r24
5548 350e 01F0 breq .L781
5549 3510 20E0 ldi r18,lo8(PPM_in)
5550 3512 30E0 ldi r19,hi8(PPM_in)
5551 3514 A20E add r10,r18
5552 3516 B31E adc r11,r19
5553 3518 F501 movw r30,r10
5554 351a 2081 ld r18,Z
5555 351c 3181 ldd r19,Z+1
5556 351e 8091 0000 lds r24,EE_Parameter+41
5557 3522 90E0 ldi r25,lo8(0)
5558 3524 841B sub r24,r20
5559 3526 950B sbc r25,r21
5560 3528 8217 cp r24,r18
5561 352a 9307 cpc r25,r19
5562 352c 04F4 brge .+4
5563 352e 0C94 0000 jmp .L1093
5564 .L781:
5565 3532 8091 0000 lds r24,Looping_Links
5566 3536 8823 tst r24
5567 3538 01F4 brne .L784
5568 353a 8091 0000 lds r24,Looping_Rechts
5569 353e 8823 tst r24
5570 3540 01F4 brne .+2
5571 3542 00C0 rjmp .L786
5572 .L784:
5573 3544 F1E0 ldi r31,lo8(1)
5574 3546 F093 0000 sts Looping_Roll,r31
5575 .L787:
5576 354a AA23 tst r26
5577 354c 01F4 brne .L788
5578 354e 8091 0000 lds r24,Looping_Unten
5579 3552 8823 tst r24
5580 3554 01F4 brne .+2
5581 3556 00C0 rjmp .L790
5582 .L788:
5583 3558 81E0 ldi r24,lo8(1)
5584 355a 8093 0000 sts Looping_Nick,r24
5585 355e 1092 0000 sts Looping_Roll,__zero_reg__
5586 3562 1092 0000 sts Looping_Links,__zero_reg__
5587 3566 1092 0000 sts Looping_Rechts,__zero_reg__
5588 356a 00C0 rjmp .L791
5589 .L643:
5590 356c 2998 cbi 37-0x20,1
5591 356e 00C0 rjmp .L645
5592 .L730:
5593 3570 EFEF ldi r30,hi8(-2)
5594 3572 8E3F cpi r24,lo8(-2)
5595 3574 9E07 cpc r25,r30
5596 3576 04F0 brlt .+2
5597 3578 00C0 rjmp .L733
5598 357a 0296 adiw r24,2
5599 357c 9093 0000 sts (StickGier)+1,r25
5600 3580 8093 0000 sts StickGier,r24
5601 3584 00C0 rjmp .L732
5602 .L652:
5603 3586 1092 0000 sts MotorenEin,__zero_reg__
5604 358a 1092 0000 sts Notlandung,__zero_reg__
5605 358e 4A30 cpi r20,lo8(10)
5606 3590 01F0 breq .+2
5607 3592 00C0 rjmp .L1094
5608 .L655:
5609 3594 289A sbi 37-0x20,0
5610 3596 00C0 rjmp .L658
5611 .L1049:
5612 3598 8090 0000 lds r8,MesswertGier
5613 359c 9090 0000 lds r9,(MesswertGier)+1
5614 .L909:
5615 35a0 8091 0000 lds r24,TimerWerteausgabe.3087
5616 35a4 8150 subi r24,lo8(-(-1))
5617 35a6 8093 0000 sts TimerWerteausgabe.3087,r24
5618 35aa 8F3F cpi r24,lo8(-1)
5619 35ac 01F4 brne .+2
5620 35ae 00C0 rjmp .L1095
5621 .L933:
5622 35b0 BEA1 ldd r27,Y+38
5623 35b2 BB23 tst r27
5624 35b4 01F0 breq .L937
5625 35b6 1092 0000 sts SummeRoll.3068,__zero_reg__
5626 35ba 1092 0000 sts (SummeRoll.3068)+1,__zero_reg__
5627 35be 1092 0000 sts (SummeRoll.3068)+2,__zero_reg__
5628 35c2 1092 0000 sts (SummeRoll.3068)+3,__zero_reg__
5629 35c6 1092 0000 sts SummeNick.3067,__zero_reg__
5630 35ca 1092 0000 sts (SummeNick.3067)+1,__zero_reg__
5631 35ce 1092 0000 sts (SummeNick.3067)+2,__zero_reg__
5632 35d2 1092 0000 sts (SummeNick.3067)+3,__zero_reg__
5633 .L937:
5634 35d6 E985 ldd r30,Y+9
5635 35d8 EE23 tst r30
5636 35da 01F4 brne .+2
5637 35dc 00C0 rjmp .L939
5638 35de 1F86 std Y+15,__zero_reg__
5639 35e0 1E86 std Y+14,__zero_reg__
5640 35e2 4424 clr r4
5641 35e4 5524 clr r5
5642 .L941:
5643 35e6 2CA5 ldd r18,Y+44
5644 35e8 2223 tst r18
5645 35ea 01F4 brne .+2
5646 35ec 00C0 rjmp .L942
5647 35ee 1D86 std Y+13,__zero_reg__
5648 35f0 1C86 std Y+12,__zero_reg__
5649 35f2 2224 clr r2
5650 35f4 3324 clr r3
5651 .L944:
5652 35f6 8091 0000 lds r24,TrimNick
5653 35fa 9091 0000 lds r25,(TrimNick)+1
5654 35fe 893C cpi r24,201
5655 3600 9105 cpc r25,__zero_reg__
5656 3602 04F4 brge .+2
5657 3604 00C0 rjmp .L945
5658 3606 88EC ldi r24,lo8(200)
5659 3608 90E0 ldi r25,hi8(200)
5660 360a 9093 0000 sts (TrimNick)+1,r25
5661 360e 8093 0000 sts TrimNick,r24
5662 .L947:
5663 3612 6091 0000 lds r22,TrimRoll
5664 3616 7091 0000 lds r23,(TrimRoll)+1
5665 361a 7EA7 std Y+46,r23
5666 361c 6DA7 std Y+45,r22
5667 361e 693C cpi r22,201
5668 3620 7105 cpc r23,__zero_reg__
5669 3622 04F4 brge .+2
5670 3624 00C0 rjmp .L949
5671 3626 A8EC ldi r26,lo8(200)
5672 3628 B0E0 ldi r27,hi8(200)
5673 362a BEA7 std Y+46,r27
5674 362c ADA7 std Y+45,r26
5675 362e B093 0000 sts (TrimRoll)+1,r27
5676 3632 A093 0000 sts TrimRoll,r26
5677 .L951:
5678 3636 A090 0000 lds r10,GyroFaktor
5679 363a BB24 clr r11
5680 363c CC24 clr r12
5681 363e DD24 clr r13
5682 3640 7C01 movw r14,r24
5683 3642 0027 clr r16
5684 3644 F7FC sbrc r15,7
5685 3646 0095 com r16
5686 3648 102F mov r17,r16
5687 364a EE0C lsl r14
5688 364c FF1C rol r15
5689 364e 001F rol r16
5690 3650 111F rol r17
5691 3652 EE0C lsl r14
5692 3654 FF1C rol r15
5693 3656 001F rol r16
5694 3658 111F rol r17
5695 365a EE0C lsl r14
5696 365c FF1C rol r15
5697 365e 001F rol r16
5698 3660 111F rol r17
5699 3662 EE0C lsl r14
5700 3664 FF1C rol r15
5701 3666 001F rol r16
5702 3668 111F rol r17
5703 366a EE0C lsl r14
5704 366c FF1C rol r15
5705 366e 001F rol r16
5706 3670 111F rol r17
5707 3672 EE0C lsl r14
5708 3674 FF1C rol r15
5709 3676 001F rol r16
5710 3678 111F rol r17
5711 367a EE0C lsl r14
5712 367c FF1C rol r15
5713 367e 001F rol r16
5714 3680 111F rol r17
5715 3682 6090 0000 lds r6,MesswertNick
5716 3686 7090 0000 lds r7,(MesswertNick)+1
5717 368a 9301 movw r18,r6
5718 368c 4427 clr r20
5719 368e 37FD sbrc r19,7
5720 3690 4095 com r20
5721 3692 542F mov r21,r20
5722 3694 C601 movw r24,r12
5723 3696 B501 movw r22,r10
5724 3698 0E94 0000 call __mulsi3
5725 369c E60E add r14,r22
5726 369e F71E adc r15,r23
5727 36a0 081F adc r16,r24
5728 36a2 191F adc r17,r25
5729 36a4 C801 movw r24,r16
5730 36a6 B701 movw r22,r14
5731 36a8 20E4 ldi r18,lo8(64)
5732 36aa 30E0 ldi r19,hi8(64)
5733 36ac 40E0 ldi r20,hlo8(64)
5734 36ae 50E0 ldi r21,hhi8(64)
5735 36b0 0E94 0000 call __divmodsi4
5736 36b4 3201 movw r6,r4
5737 36b6 620E add r6,r18
5738 36b8 731E adc r7,r19
5739 36ba 7092 0000 sts (MesswertNick)+1,r7
5740 36be 6092 0000 sts MesswertNick,r6
5741 36c2 6DA5 ldd r22,Y+45
5742 36c4 7EA5 ldd r23,Y+46
5743 36c6 7B01 movw r14,r22
5744 36c8 0027 clr r16
5745 36ca F7FC sbrc r15,7
5746 36cc 0095 com r16
5747 36ce 102F mov r17,r16
5748 36d0 EE0C lsl r14
5749 36d2 FF1C rol r15
5750 36d4 001F rol r16
5751 36d6 111F rol r17
5752 36d8 EE0C lsl r14
5753 36da FF1C rol r15
5754 36dc 001F rol r16
5755 36de 111F rol r17
5756 36e0 EE0C lsl r14
5757 36e2 FF1C rol r15
5758 36e4 001F rol r16
5759 36e6 111F rol r17
5760 36e8 EE0C lsl r14
5761 36ea FF1C rol r15
5762 36ec 001F rol r16
5763 36ee 111F rol r17
5764 36f0 EE0C lsl r14
5765 36f2 FF1C rol r15
5766 36f4 001F rol r16
5767 36f6 111F rol r17
5768 36f8 EE0C lsl r14
5769 36fa FF1C rol r15
5770 36fc 001F rol r16
5771 36fe 111F rol r17
5772 3700 EE0C lsl r14
5773 3702 FF1C rol r15
5774 3704 001F rol r16
5775 3706 111F rol r17
5776 3708 4090 0000 lds r4,MesswertRoll
5777 370c 5090 0000 lds r5,(MesswertRoll)+1
5778 3710 B201 movw r22,r4
5779 3712 8827 clr r24
5780 3714 77FD sbrc r23,7
5781 3716 8095 com r24
5782 3718 982F mov r25,r24
5783 371a A601 movw r20,r12
5784 371c 9501 movw r18,r10
5785 371e 0E94 0000 call __mulsi3
5786 3722 E60E add r14,r22
5787 3724 F71E adc r15,r23
5788 3726 081F adc r16,r24
5789 3728 191F adc r17,r25
5790 372a C801 movw r24,r16
5791 372c B701 movw r22,r14
5792 372e 20E4 ldi r18,lo8(64)
5793 3730 30E0 ldi r19,hi8(64)
5794 3732 40E0 ldi r20,hlo8(64)
5795 3734 50E0 ldi r21,hhi8(64)
5796 3736 0E94 0000 call __divmodsi4
5797 373a 2101 movw r4,r2
5798 373c 420E add r4,r18
5799 373e 531E adc r5,r19
5800 3740 5092 0000 sts (MesswertRoll)+1,r5
5801 3744 4092 0000 sts MesswertRoll,r4
5802 3748 880C lsl r8
5803 374a 991C rol r9
5804 374c B401 movw r22,r8
5805 374e 8827 clr r24
5806 3750 77FD sbrc r23,7
5807 3752 8095 com r24
5808 3754 982F mov r25,r24
5809 3756 A601 movw r20,r12
5810 3758 9501 movw r18,r10
5811 375a 0E94 0000 call __mulsi3
5812 375e 20E4 ldi r18,lo8(64)
5813 3760 30E0 ldi r19,hi8(64)
5814 3762 40E0 ldi r20,hlo8(64)
5815 3764 50E0 ldi r21,hhi8(64)
5816 3766 0E94 0000 call __divmodsi4
5817 376a 7901 movw r14,r18
5818 376c 8A01 movw r16,r20
5819 376e ADA1 ldd r26,Y+37
5820 3770 6A2F mov r22,r26
5821 3772 70E0 ldi r23,lo8(0)
5822 3774 80E0 ldi r24,lo8(0)
5823 3776 90E0 ldi r25,hi8(0)
5824 3778 2091 0000 lds r18,Integral_Gier
5825 377c 3091 0000 lds r19,(Integral_Gier)+1
5826 3780 4091 0000 lds r20,(Integral_Gier)+2
5827 3784 5091 0000 lds r21,(Integral_Gier)+3
5828 3788 0E94 0000 call __mulsi3
5829 378c 20EF ldi r18,lo8(22000)
5830 378e 35E5 ldi r19,hi8(22000)
5831 3790 40E0 ldi r20,hlo8(22000)
5832 3792 50E0 ldi r21,hhi8(22000)
5833 3794 0E94 0000 call __divmodsi4
5834 3798 4701 movw r8,r14
5835 379a 820E add r8,r18
5836 379c 931E adc r9,r19
5837 379e 9092 0000 sts (MesswertGier)+1,r9
5838 37a2 8092 0000 sts MesswertGier,r8
5839 37a6 B1E0 ldi r27,lo8(16385)
5840 37a8 6B16 cp r6,r27
5841 37aa B0E4 ldi r27,hi8(16385)
5842 37ac 7B06 cpc r7,r27
5843 37ae 04F4 brge .+2
5844 37b0 00C0 rjmp .L953
5845 37b2 612C mov r6,__zero_reg__
5846 37b4 40E4 ldi r20,hi8(16384)
5847 37b6 742E mov r7,r20
5848 37b8 7092 0000 sts (MesswertNick)+1,r7
5849 37bc 6092 0000 sts MesswertNick,r6
5850 .L955:
5851 37c0 F1E0 ldi r31,lo8(16385)
5852 37c2 4F16 cp r4,r31
5853 37c4 F0E4 ldi r31,hi8(16385)
5854 37c6 5F06 cpc r5,r31
5855 37c8 04F4 brge .+2
5856 37ca 00C0 rjmp .L957
5857 37cc 412C mov r4,__zero_reg__
5858 37ce 20E4 ldi r18,hi8(16384)
5859 37d0 522E mov r5,r18
5860 37d2 5092 0000 sts (MesswertRoll)+1,r5
5861 37d6 4092 0000 sts MesswertRoll,r4
5862 .L959:
5863 37da 31E0 ldi r19,lo8(16385)
5864 37dc 8316 cp r8,r19
5865 37de 30E4 ldi r19,hi8(16385)
5866 37e0 9306 cpc r9,r19
5867 37e2 04F4 brge .+2
5868 37e4 00C0 rjmp .L961
5869 37e6 812C mov r8,__zero_reg__
5870 37e8 80E4 ldi r24,hi8(16384)
5871 37ea 982E mov r9,r24
5872 37ec 9092 0000 sts (MesswertGier)+1,r9
5873 37f0 8092 0000 sts MesswertGier,r8
5874 .L963:
5875 37f4 6889 ldd r22,Y+16
5876 37f6 7989 ldd r23,Y+17
5877 37f8 660F lsl r22
5878 37fa 771F rol r23
5879 37fc 660F lsl r22
5880 37fe 771F rol r23
5881 3800 7EA7 std Y+46,r23
5882 3802 6DA7 std Y+45,r22
5883 3804 7A85 ldd r23,Y+10
5884 3806 70FF sbrs r23,0
5885 3808 00C0 rjmp .L965
5886 380a 71FF sbrs r23,1
5887 380c 00C0 rjmp .L967
5888 380e 8091 0000 lds r24,EE_Parameter+75
5889 3812 84FD sbrc r24,4
5890 3814 00C0 rjmp .+4
5891 3816 0C94 0000 jmp .L969
5892 381a 8091 0000 lds r24,Parameter_MaxHoehe
5893 381e 8155 subi r24,lo8(-(-81))
5894 3820 8B33 cpi r24,lo8(59)
5895 3822 00F0 brlo .+4
5896 3824 0C94 0000 jmp .L972
5897 .L971:
5898 3828 8091 0000 lds r24,delay.3112
5899 382c 8150 subi r24,lo8(-(-1))
5900 382e 8093 0000 sts delay.3112,r24
5901 3832 8F3F cpi r24,lo8(-1)
5902 3834 01F4 brne .+4
5903 3836 0C94 0000 jmp .L1096
5904 383a 2091 0000 lds r18,HoehenWert
5905 383e 3091 0000 lds r19,(HoehenWert)+1
5906 3842 00C0 rjmp .L973
5907 .L988:
5908 3844 EDA5 ldd r30,Y+45
5909 3846 FEA5 ldd r31,Y+46
5910 3848 E217 cp r30,r18
5911 384a F307 cpc r31,r19
5912 384c 04F4 brge .L992
5913 384e F093 0000 sts (hoehenregler.3078)+1,r31
5914 3852 E093 0000 sts hoehenregler.3078,r30
5915 .L992:
5916 3856 2091 0000 lds r18,hoehenregler.3078
5917 385a 3091 0000 lds r19,(hoehenregler.3078)+1
5918 385e 3EA7 std Y+46,r19
5919 3860 2DA7 std Y+45,r18
5920 .L965:
5921 3862 8091 0000 lds r24,MAX_GAS
5922 3866 282E mov r2,r24
5923 3868 3324 clr r3
5924 386a A101 movw r20,r2
5925 386c 440F lsl r20
5926 386e 551F rol r21
5927 3870 440F lsl r20
5928 3872 551F rol r21
5929 3874 CA01 movw r24,r20
5930 3876 8055 subi r24,lo8(-(-80))
5931 3878 9040 sbci r25,hi8(-(-80))
5932 387a 0DA5 ldd r16,Y+45
5933 387c 1EA5 ldd r17,Y+46
5934 387e 8017 cp r24,r16
5935 3880 9107 cpc r25,r17
5936 3882 04F4 brge .L994
5937 3884 8C01 movw r16,r24
5938 .L994:
5939 3886 1093 0000 sts (DebugOut+16)+1,r17
5940 388a 0093 0000 sts DebugOut+16,r16
5941 388e 688D ldd r22,Y+24
5942 3890 798D ldd r23,Y+25
5943 3892 8A8D ldd r24,Y+26
5944 3894 9B8D ldd r25,Y+27
5945 3896 660F lsl r22
5946 3898 771F rol r23
5947 389a 881F rol r24
5948 389c 991F rol r25
5949 389e 660F lsl r22
5950 38a0 771F rol r23
5951 38a2 881F rol r24
5952 38a4 991F rol r25
5953 38a6 7401 movw r14,r8
5954 38a8 E61A sub r14,r22
5955 38aa F70A sbc r15,r23
5956 38ac 013A cpi r16,161
5957 38ae 1105 cpc r17,__zero_reg__
5958 38b0 04F4 brge .+2
5959 38b2 00C0 rjmp .L995
5960 38b4 9801 movw r18,r16
5961 38b6 3595 asr r19
5962 38b8 2795 ror r18
5963 38ba 2E15 cp r18,r14
5964 38bc 3F05 cpc r19,r15
5965 38be 04F0 brlt .L997
5966 38c0 F801 movw r30,r16
5967 38c2 17FF sbrs r17,7
5968 38c4 00C0 rjmp .+4
5969 38c6 0C94 0000 jmp .L1097
5970 .L999:
5971 38ca F595 asr r31
5972 38cc E795 ror r30
5973 38ce 2227 clr r18
5974 38d0 3327 clr r19
5975 38d2 2E1B sub r18,r30
5976 38d4 3F0B sbc r19,r31
5977 38d6 2E15 cp r18,r14
5978 38d8 3F05 cpc r19,r15
5979 38da 04F4 brge .+4
5980 38dc 0C94 0000 jmp .L1098
5981 .L997:
5982 38e0 CA01 movw r24,r20
5983 38e2 801B sub r24,r16
5984 38e4 910B sbc r25,r17
5985 38e6 8217 cp r24,r18
5986 38e8 9307 cpc r25,r19
5987 38ea 04F4 brge .L1003
5988 38ec 9C01 movw r18,r24
5989 .L1003:
5990 38ee C801 movw r24,r16
5991 38f0 841B sub r24,r20
5992 38f2 950B sbc r25,r21
5993 38f4 5901 movw r10,r18
5994 38f6 2817 cp r18,r24
5995 38f8 3907 cpc r19,r25
5996 38fa 04F4 brge .L1004
5997 38fc 5C01 movw r10,r24
5998 .L1004:
5999 38fe 8091 0000 lds r24,StickNick
6000 3902 9091 0000 lds r25,(StickNick)+1
6001 3906 6301 movw r12,r6
6002 3908 C81A sub r12,r24
6003 390a D90A sbc r13,r25
6004 390c D092 0000 sts (DiffNick)+1,r13
6005 3910 C092 0000 sts DiffNick,r12
6006 3914 ADA1 ldd r26,Y+37
6007 3916 AA23 tst r26
6008 3918 01F4 brne .+2
6009 391a 00C0 rjmp .L1005
6010 391c EE85 ldd r30,Y+14
6011 391e FF85 ldd r31,Y+15
6012 3920 E81B sub r30,r24
6013 3922 F90B sbc r31,r25
6014 3924 CF01 movw r24,r30
6015 3926 AA27 clr r26
6016 3928 97FD sbrc r25,7
6017 392a A095 com r26
6018 392c BA2F mov r27,r26
6019 392e 2091 0000 lds r18,SummeNick.3067
6020 3932 3091 0000 lds r19,(SummeNick.3067)+1
6021 3936 4091 0000 lds r20,(SummeNick.3067)+2
6022 393a 5091 0000 lds r21,(SummeNick.3067)+3
6023 393e 280F add r18,r24
6024 3940 391F adc r19,r25
6025 3942 4A1F adc r20,r26
6026 3944 5B1F adc r21,r27
6027 3946 2093 0000 sts SummeNick.3067,r18
6028 394a 3093 0000 sts (SummeNick.3067)+1,r19
6029 394e 4093 0000 sts (SummeNick.3067)+2,r20
6030 3952 5093 0000 sts (SummeNick.3067)+3,r21
6031 .L1007:
6032 3956 2130 cpi r18,lo8(64001)
6033 3958 FAEF ldi r31,hi8(64001)
6034 395a 3F07 cpc r19,r31
6035 395c F0E0 ldi r31,hlo8(64001)
6036 395e 4F07 cpc r20,r31
6037 3960 F0E0 ldi r31,hhi8(64001)
6038 3962 5F07 cpc r21,r31
6039 3964 04F4 brge .+2
6040 3966 00C0 rjmp .L1008
6041 3968 20E0 ldi r18,lo8(64000)
6042 396a 3AEF ldi r19,hi8(64000)
6043 396c 40E0 ldi r20,hlo8(64000)
6044 396e 50E0 ldi r21,hhi8(64000)
6045 3970 2093 0000 sts SummeNick.3067,r18
6046 3974 3093 0000 sts (SummeNick.3067)+1,r19
6047 3978 4093 0000 sts (SummeNick.3067)+2,r20
6048 397c 5093 0000 sts (SummeNick.3067)+3,r21
6049 .L1010:
6050 3980 8091 0000 lds r24,Ki
6051 3984 9091 0000 lds r25,(Ki)+1
6052 3988 3C01 movw r6,r24
6053 398a 8824 clr r8
6054 398c 77FC sbrc r7,7
6055 398e 8094 com r8
6056 3990 982C mov r9,r8
6057 3992 CA01 movw r24,r20
6058 3994 B901 movw r22,r18
6059 3996 A401 movw r20,r8
6060 3998 9301 movw r18,r6
6061 399a 0E94 0000 call __divmodsi4
6062 399e C20E add r12,r18
6063 39a0 D31E adc r13,r19
6064 39a2 B501 movw r22,r10
6065 39a4 B7FC sbrc r11,7
6066 39a6 00C0 rjmp .L1099
6067 .L1012:
6068 39a8 77FD sbrc r23,7
6069 39aa 00C0 rjmp .L1100
6070 .L1013:
6071 39ac 7595 asr r23
6072 39ae 6795 ror r22
6073 39b0 600F add r22,r16
6074 39b2 711F adc r23,r17
6075 39b4 8827 clr r24
6076 39b6 77FD sbrc r23,7
6077 39b8 8095 com r24
6078 39ba 982F mov r25,r24
6079 39bc 2091 0000 lds r18,Parameter_DynamicStability
6080 39c0 30E0 ldi r19,lo8(0)
6081 39c2 40E0 ldi r20,lo8(0)
6082 39c4 50E0 ldi r21,hi8(0)
6083 39c6 0E94 0000 call __mulsi3
6084 39ca 20E4 ldi r18,lo8(64)
6085 39cc 30E0 ldi r19,hi8(64)
6086 39ce 40E0 ldi r20,hlo8(64)
6087 39d0 50E0 ldi r21,hhi8(64)
6088 39d2 0E94 0000 call __divmodsi4
6089 39d6 7901 movw r14,r18
6090 39d8 C216 cp r12,r18
6091 39da D306 cpc r13,r19
6092 39dc 04F4 brge .L1014
6093 39de 9601 movw r18,r12
6094 .L1014:
6095 39e0 CC24 clr r12
6096 39e2 DD24 clr r13
6097 39e4 CE18 sub r12,r14
6098 39e6 DF08 sbc r13,r15
6099 39e8 DB8A std Y+19,r13
6100 39ea CA8A std Y+18,r12
6101 39ec C216 cp r12,r18
6102 39ee D306 cpc r13,r19
6103 39f0 04F4 brge .L1015
6104 39f2 6901 movw r12,r18
6105 .L1015:
6106 39f4 8091 0000 lds r24,StickRoll
6107 39f8 9091 0000 lds r25,(StickRoll)+1
6108 39fc 481A sub r4,r24
6109 39fe 590A sbc r5,r25
6110 3a00 5092 0000 sts (DiffRoll)+1,r5
6111 3a04 4092 0000 sts DiffRoll,r4
6112 3a08 7DA1 ldd r23,Y+37
6113 3a0a 7723 tst r23
6114 3a0c 01F4 brne .+2
6115 3a0e 00C0 rjmp .L1016
6116 3a10 AC85 ldd r26,Y+12
6117 3a12 BD85 ldd r27,Y+13
6118 3a14 A81B sub r26,r24
6119 3a16 B90B sbc r27,r25
6120 3a18 FD01 movw r30,r26
6121 3a1a CF01 movw r24,r30
6122 3a1c AA27 clr r26
6123 3a1e 97FD sbrc r25,7
6124 3a20 A095 com r26
6125 3a22 BA2F mov r27,r26
6126 3a24 2091 0000 lds r18,SummeRoll.3068
6127 3a28 3091 0000 lds r19,(SummeRoll.3068)+1
6128 3a2c 4091 0000 lds r20,(SummeRoll.3068)+2
6129 3a30 5091 0000 lds r21,(SummeRoll.3068)+3
6130 3a34 280F add r18,r24
6131 3a36 391F adc r19,r25
6132 3a38 4A1F adc r20,r26
6133 3a3a 5B1F adc r21,r27
6134 3a3c 2093 0000 sts SummeRoll.3068,r18
6135 3a40 3093 0000 sts (SummeRoll.3068)+1,r19
6136 3a44 4093 0000 sts (SummeRoll.3068)+2,r20
6137 3a48 5093 0000 sts (SummeRoll.3068)+3,r21
6138 .L1018:
6139 3a4c 2130 cpi r18,lo8(64001)
6140 3a4e FAEF ldi r31,hi8(64001)
6141 3a50 3F07 cpc r19,r31
6142 3a52 F0E0 ldi r31,hlo8(64001)
6143 3a54 4F07 cpc r20,r31
6144 3a56 F0E0 ldi r31,hhi8(64001)
6145 3a58 5F07 cpc r21,r31
6146 3a5a 04F4 brge .+2
6147 3a5c 00C0 rjmp .L1019
6148 3a5e 20E0 ldi r18,lo8(64000)
6149 3a60 3AEF ldi r19,hi8(64000)
6150 3a62 40E0 ldi r20,hlo8(64000)
6151 3a64 50E0 ldi r21,hhi8(64000)
6152 3a66 2093 0000 sts SummeRoll.3068,r18
6153 3a6a 3093 0000 sts (SummeRoll.3068)+1,r19
6154 3a6e 4093 0000 sts (SummeRoll.3068)+2,r20
6155 3a72 5093 0000 sts (SummeRoll.3068)+3,r21
6156 .L1021:
6157 3a76 CA01 movw r24,r20
6158 3a78 B901 movw r22,r18
6159 3a7a A401 movw r20,r8
6160 3a7c 9301 movw r18,r6
6161 3a7e 0E94 0000 call __divmodsi4
6162 3a82 B201 movw r22,r4
6163 3a84 620F add r22,r18
6164 3a86 731F adc r23,r19
6165 3a88 9701 movw r18,r14
6166 3a8a 6E15 cp r22,r14
6167 3a8c 7F05 cpc r23,r15
6168 3a8e 04F4 brge .L1023
6169 3a90 9B01 movw r18,r22
6170 .L1023:
6171 3a92 7901 movw r14,r18
6172 3a94 8A89 ldd r24,Y+18
6173 3a96 9B89 ldd r25,Y+19
6174 3a98 2817 cp r18,r24
6175 3a9a 3907 cpc r19,r25
6176 3a9c 04F4 brge .L1024
6177 3a9e 7C01 movw r14,r24
6178 .L1024:
6179 3aa0 4501 movw r8,r10
6180 3aa2 800E add r8,r16
6181 3aa4 911E adc r9,r17
6182 3aa6 6091 0000 lds r22,motorwert1.3079
6183 3aaa 7091 0000 lds r23,(motorwert1.3079)+1
6184 3aae C601 movw r24,r12
6185 3ab0 880D add r24,r8
6186 3ab2 991D adc r25,r9
6187 3ab4 0E94 0000 call MotorSmoothing
6188 3ab8 9093 0000 sts (motorwert1.3079)+1,r25
6189 3abc 8093 0000 sts motorwert1.3079,r24
6190 3ac0 97FD sbrc r25,7
6191 3ac2 00C0 rjmp .L1101
6192 .L1025:
6193 3ac4 9C01 movw r18,r24
6194 3ac6 3595 asr r19
6195 3ac8 2795 ror r18
6196 3aca 3595 asr r19
6197 3acc 2795 ror r18
6198 3ace 8091 0000 lds r24,MIN_GAS
6199 3ad2 682E mov r6,r24
6200 3ad4 7724 clr r7
6201 3ad6 2615 cp r18,r6
6202 3ad8 3705 cpc r19,r7
6203 3ada 04F0 brlt .+2
6204 3adc 00C0 rjmp .L1026
6205 3ade C301 movw r24,r6
6206 .L1028:
6207 3ae0 8093 0000 sts Motor_Vorne,r24
6208 3ae4 6091 0000 lds r22,motorwert2.3080
6209 3ae8 7091 0000 lds r23,(motorwert2.3080)+1
6210 3aec C401 movw r24,r8
6211 3aee 8C19 sub r24,r12
6212 3af0 9D09 sbc r25,r13
6213 3af2 0E94 0000 call MotorSmoothing
6214 3af6 9093 0000 sts (motorwert2.3080)+1,r25
6215 3afa 8093 0000 sts motorwert2.3080,r24
6216 3afe 97FD sbrc r25,7
6217 3b00 00C0 rjmp .L1102
6218 .L1030:
6219 3b02 9595 asr r25
6220 3b04 8795 ror r24
6221 3b06 9595 asr r25
6222 3b08 8795 ror r24
6223 3b0a 8615 cp r24,r6
6224 3b0c 9705 cpc r25,r7
6225 3b0e 04F0 brlt .+2
6226 3b10 00C0 rjmp .L1031
6227 3b12 C301 movw r24,r6
6228 .L1033:
6229 3b14 8093 0000 sts Motor_Hinten,r24
6230 3b18 6091 0000 lds r22,motorwert3.3081
6231 3b1c 7091 0000 lds r23,(motorwert3.3081)+1
6232 3b20 C801 movw r24,r16
6233 3b22 8A19 sub r24,r10
6234 3b24 9B09 sbc r25,r11
6235 3b26 8E0D add r24,r14
6236 3b28 9F1D adc r25,r15
6237 3b2a 0E94 0000 call MotorSmoothing
6238 3b2e 9093 0000 sts (motorwert3.3081)+1,r25
6239 3b32 8093 0000 sts motorwert3.3081,r24
6240 3b36 97FD sbrc r25,7
6241 3b38 00C0 rjmp .L1103
6242 .L1035:
6243 3b3a 9595 asr r25
6244 3b3c 8795 ror r24
6245 3b3e 9595 asr r25
6246 3b40 8795 ror r24
6247 3b42 8615 cp r24,r6
6248 3b44 9705 cpc r25,r7
6249 3b46 04F4 brge .L1036
6250 3b48 C301 movw r24,r6
6251 .L1038:
6252 3b4a 8093 0000 sts Motor_Links,r24
6253 3b4e 6091 0000 lds r22,motorwert4.3082
6254 3b52 7091 0000 lds r23,(motorwert4.3082)+1
6255 3b56 0E19 sub r16,r14
6256 3b58 1F09 sbc r17,r15
6257 3b5a C801 movw r24,r16
6258 3b5c 8A19 sub r24,r10
6259 3b5e 9B09 sbc r25,r11
6260 3b60 0E94 0000 call MotorSmoothing
6261 3b64 9093 0000 sts (motorwert4.3082)+1,r25
6262 3b68 8093 0000 sts motorwert4.3082,r24
6263 3b6c 97FD sbrc r25,7
6264 3b6e 00C0 rjmp .L1104
6265 .L1040:
6266 3b70 9595 asr r25
6267 3b72 8795 ror r24
6268 3b74 9595 asr r25
6269 3b76 8795 ror r24
6270 3b78 8615 cp r24,r6
6271 3b7a 9705 cpc r25,r7
6272 3b7c 04F4 brge .+4
6273 3b7e 0C94 0000 jmp .L1041
6274 3b82 3C01 movw r6,r24
6275 3b84 2816 cp r2,r24
6276 3b86 3906 cpc r3,r25
6277 3b88 04F0 brlt .+4
6278 3b8a 0C94 0000 jmp .L1041
6279 3b8e 3101 movw r6,r2
6280 3b90 0C94 0000 jmp .L1041
6281 .L1036:
6282 3b94 2816 cp r2,r24
6283 3b96 3906 cpc r3,r25
6284 3b98 04F4 brge .L1038
6285 3b9a C101 movw r24,r2
6286 3b9c 00C0 rjmp .L1038
6287 .L1031:
6288 3b9e 2816 cp r2,r24
6289 3ba0 3906 cpc r3,r25
6290 3ba2 04F0 brlt .+2
6291 3ba4 00C0 rjmp .L1033
6292 3ba6 C101 movw r24,r2
6293 3ba8 00C0 rjmp .L1033
6294 .L1026:
6295 3baa C901 movw r24,r18
6296 3bac 2216 cp r2,r18
6297 3bae 3306 cpc r3,r19
6298 3bb0 04F0 brlt .+2
6299 3bb2 00C0 rjmp .L1028
6300 3bb4 C101 movw r24,r2
6301 3bb6 00C0 rjmp .L1028
6302 .L1019:
6303 3bb8 2030 cpi r18,lo8(-64000)
6304 3bba 66E0 ldi r22,hi8(-64000)
6305 3bbc 3607 cpc r19,r22
6306 3bbe 6FEF ldi r22,hlo8(-64000)
6307 3bc0 4607 cpc r20,r22
6308 3bc2 6FEF ldi r22,hhi8(-64000)
6309 3bc4 5607 cpc r21,r22
6310 3bc6 04F0 brlt .+2
6311 3bc8 00C0 rjmp .L1021
6312 3bca 20E0 ldi r18,lo8(-64000)
6313 3bcc 36E0 ldi r19,hi8(-64000)
6314 3bce 4FEF ldi r20,hlo8(-64000)
6315 3bd0 5FEF ldi r21,hhi8(-64000)
6316 3bd2 2093 0000 sts SummeRoll.3068,r18
6317 3bd6 3093 0000 sts (SummeRoll.3068)+1,r19
6318 3bda 4093 0000 sts (SummeRoll.3068)+2,r20
6319 3bde 5093 0000 sts (SummeRoll.3068)+3,r21
6320 3be2 00C0 rjmp .L1021
6321 .L1016:
6322 3be4 C201 movw r24,r4
6323 3be6 AA27 clr r26
6324 3be8 97FD sbrc r25,7
6325 3bea A095 com r26
6326 3bec BA2F mov r27,r26
6327 3bee 2091 0000 lds r18,SummeRoll.3068
6328 3bf2 3091 0000 lds r19,(SummeRoll.3068)+1
6329 3bf6 4091 0000 lds r20,(SummeRoll.3068)+2
6330 3bfa 5091 0000 lds r21,(SummeRoll.3068)+3
6331 3bfe 280F add r18,r24
6332 3c00 391F adc r19,r25
6333 3c02 4A1F adc r20,r26
6334 3c04 5B1F adc r21,r27
6335 3c06 2093 0000 sts SummeRoll.3068,r18
6336 3c0a 3093 0000 sts (SummeRoll.3068)+1,r19
6337 3c0e 4093 0000 sts (SummeRoll.3068)+2,r20
6338 3c12 5093 0000 sts (SummeRoll.3068)+3,r21
6339 3c16 00C0 rjmp .L1018
6340 .L1008:
6341 3c18 2030 cpi r18,lo8(-64000)
6342 3c1a 66E0 ldi r22,hi8(-64000)
6343 3c1c 3607 cpc r19,r22
6344 3c1e 6FEF ldi r22,hlo8(-64000)
6345 3c20 4607 cpc r20,r22
6346 3c22 6FEF ldi r22,hhi8(-64000)
6347 3c24 5607 cpc r21,r22
6348 3c26 04F0 brlt .+2
6349 3c28 00C0 rjmp .L1010
6350 3c2a 20E0 ldi r18,lo8(-64000)
6351 3c2c 36E0 ldi r19,hi8(-64000)
6352 3c2e 4FEF ldi r20,hlo8(-64000)
6353 3c30 5FEF ldi r21,hhi8(-64000)
6354 3c32 2093 0000 sts SummeNick.3067,r18
6355 3c36 3093 0000 sts (SummeNick.3067)+1,r19
6356 3c3a 4093 0000 sts (SummeNick.3067)+2,r20
6357 3c3e 5093 0000 sts (SummeNick.3067)+3,r21
6358 3c42 00C0 rjmp .L1010
6359 .L1005:
6360 3c44 C601 movw r24,r12
6361 3c46 AA27 clr r26
6362 3c48 97FD sbrc r25,7
6363 3c4a A095 com r26
6364 3c4c BA2F mov r27,r26
6365 3c4e 2091 0000 lds r18,SummeNick.3067
6366 3c52 3091 0000 lds r19,(SummeNick.3067)+1
6367 3c56 4091 0000 lds r20,(SummeNick.3067)+2
6368 3c5a 5091 0000 lds r21,(SummeNick.3067)+3
6369 3c5e 280F add r18,r24
6370 3c60 391F adc r19,r25
6371 3c62 4A1F adc r20,r26
6372 3c64 5B1F adc r21,r27
6373 3c66 2093 0000 sts SummeNick.3067,r18
6374 3c6a 3093 0000 sts (SummeNick.3067)+1,r19
6375 3c6e 4093 0000 sts (SummeNick.3067)+2,r20
6376 3c72 5093 0000 sts (SummeNick.3067)+3,r21
6377 3c76 00C0 rjmp .L1007
6378 .L995:
6379 3c78 9701 movw r18,r14
6380 3c7a 7FEF ldi r23,hi8(-80)
6381 3c7c 203B cpi r18,lo8(-80)
6382 3c7e 3707 cpc r19,r23
6383 3c80 04F4 brge .L1001
6384 3c82 20EB ldi r18,lo8(-80)
6385 3c84 3FEF ldi r19,hi8(-80)
6386 .L1001:
6387 3c86 2135 cpi r18,81
6388 3c88 3105 cpc r19,__zero_reg__
6389 3c8a 04F4 brge .+2
6390 3c8c 00C0 rjmp .L997
6391 3c8e 20E5 ldi r18,lo8(80)
6392 3c90 30E0 ldi r19,hi8(80)
6393 3c92 00C0 rjmp .L997
6394 .L961:
6395 3c94 40E0 ldi r20,lo8(-16384)
6396 3c96 8416 cp r8,r20
6397 3c98 40EC ldi r20,hi8(-16384)
6398 3c9a 9406 cpc r9,r20
6399 3c9c 04F0 brlt .+2
6400 3c9e 00C0 rjmp .L963
6401 3ca0 812C mov r8,__zero_reg__
6402 3ca2 00EC ldi r16,hi8(-16384)
6403 3ca4 902E mov r9,r16
6404 3ca6 9092 0000 sts (MesswertGier)+1,r9
6405 3caa 8092 0000 sts MesswertGier,r8
6406 3cae 00C0 rjmp .L963
6407 .L957:
6408 3cb0 20E0 ldi r18,lo8(-16384)
6409 3cb2 4216 cp r4,r18
6410 3cb4 20EC ldi r18,hi8(-16384)
6411 3cb6 5206 cpc r5,r18
6412 3cb8 04F0 brlt .+2
6413 3cba 00C0 rjmp .L959
6414 3cbc 412C mov r4,__zero_reg__
6415 3cbe 90EC ldi r25,hi8(-16384)
6416 3cc0 592E mov r5,r25
6417 3cc2 5092 0000 sts (MesswertRoll)+1,r5
6418 3cc6 4092 0000 sts MesswertRoll,r4
6419 3cca 00C0 rjmp .L959
6420 .L953:
6421 3ccc E0E0 ldi r30,lo8(-16384)
6422 3cce 6E16 cp r6,r30
6423 3cd0 E0EC ldi r30,hi8(-16384)
6424 3cd2 7E06 cpc r7,r30
6425 3cd4 04F0 brlt .+2
6426 3cd6 00C0 rjmp .L955
6427 3cd8 612C mov r6,__zero_reg__
6428 3cda 30EC ldi r19,hi8(-16384)
6429 3cdc 732E mov r7,r19
6430 3cde 7092 0000 sts (MesswertNick)+1,r7
6431 3ce2 6092 0000 sts MesswertNick,r6
6432 3ce6 00C0 rjmp .L955
6433 .L949:
6434 3ce8 EDA5 ldd r30,Y+45
6435 3cea FEA5 ldd r31,Y+46
6436 3cec E853 subi r30,lo8(-200)
6437 3cee FF4F sbci r31,hi8(-200)
6438 3cf0 04F0 brlt .+2
6439 3cf2 00C0 rjmp .L951
6440 3cf4 48E3 ldi r20,lo8(-200)
6441 3cf6 5FEF ldi r21,hi8(-200)
6442 3cf8 5EA7 std Y+46,r21
6443 3cfa 4DA7 std Y+45,r20
6444 3cfc 5093 0000 sts (TrimRoll)+1,r21
6445 3d00 4093 0000 sts TrimRoll,r20
6446 3d04 00C0 rjmp .L951
6447 .L945:
6448 3d06 4FEF ldi r20,hi8(-200)
6449 3d08 8833 cpi r24,lo8(-200)
6450 3d0a 9407 cpc r25,r20
6451 3d0c 04F0 brlt .+2
6452 3d0e 00C0 rjmp .L947
6453 3d10 88E3 ldi r24,lo8(-200)
6454 3d12 9FEF ldi r25,hi8(-200)
6455 3d14 9093 0000 sts (TrimNick)+1,r25
6456 3d18 8093 0000 sts TrimNick,r24
6457 3d1c 00C0 rjmp .L947
6458 .L942:
6459 3d1e 3DA1 ldd r19,Y+37
6460 3d20 632F mov r22,r19
6461 3d22 70E0 ldi r23,lo8(0)
6462 3d24 80E0 ldi r24,lo8(0)
6463 3d26 90E0 ldi r25,hi8(0)
6464 3d28 2D81 ldd r18,Y+5
6465 3d2a 3E81 ldd r19,Y+6
6466 3d2c 4F81 ldd r20,Y+7
6467 3d2e 5885 ldd r21,Y+8
6468 3d30 0E94 0000 call __mulsi3
6469 3d34 28EF ldi r18,lo8(11000)
6470 3d36 3AE2 ldi r19,hi8(11000)
6471 3d38 40E0 ldi r20,hlo8(11000)
6472 3d3a 50E0 ldi r21,hhi8(11000)
6473 3d3c 0E94 0000 call __divmodsi4
6474 3d40 3D87 std Y+13,r19
6475 3d42 2C87 std Y+12,r18
6476 3d44 1901 movw r2,r18
6477 3d46 00C0 rjmp .L944
6478 .L939:
6479 3d48 FDA1 ldd r31,Y+37
6480 3d4a 6F2F mov r22,r31
6481 3d4c 70E0 ldi r23,lo8(0)
6482 3d4e 80E0 ldi r24,lo8(0)
6483 3d50 90E0 ldi r25,hi8(0)
6484 3d52 2981 ldd r18,Y+1
6485 3d54 3A81 ldd r19,Y+2
6486 3d56 4B81 ldd r20,Y+3
6487 3d58 5C81 ldd r21,Y+4
6488 3d5a 0E94 0000 call __mulsi3
6489 3d5e 28EF ldi r18,lo8(11000)
6490 3d60 3AE2 ldi r19,hi8(11000)
6491 3d62 40E0 ldi r20,hlo8(11000)
6492 3d64 50E0 ldi r21,hhi8(11000)
6493 3d66 0E94 0000 call __divmodsi4
6494 3d6a 3F87 std Y+15,r19
6495 3d6c 2E87 std Y+14,r18
6496 3d6e 2901 movw r4,r18
6497 3d70 00C0 rjmp .L941
6498 .L905:
6499 3d72 805B subi r24,lo8(-50000)
6500 3d74 9C43 sbci r25,hi8(-50000)
6501 3d76 AF4F sbci r26,hlo8(-50000)
6502 3d78 BF4F sbci r27,hhi8(-50000)
6503 3d7a 04F0 brlt .+4
6504 3d7c 0C94 0000 jmp .L907
6505 3d80 80EB ldi r24,lo8(-50000)
6506 3d82 9CE3 ldi r25,hi8(-50000)
6507 3d84 AFEF ldi r26,hlo8(-50000)
6508 3d86 BFEF ldi r27,hhi8(-50000)
6509 3d88 8093 0000 sts Mess_Integral_Gier,r24
6510 3d8c 9093 0000 sts (Mess_Integral_Gier)+1,r25
6511 3d90 A093 0000 sts (Mess_Integral_Gier)+2,r26
6512 3d94 B093 0000 sts (Mess_Integral_Gier)+3,r27
6513 3d98 0C94 0000 jmp .L907
6514 .L1046:
6515 3d9c 5091 0000 lds r21,TrichterFlug
6516 3da0 5EA3 std Y+38,r21
6517 3da2 6091 0000 lds r22,IntegralFaktor
6518 3da6 6DA3 std Y+37,r22
6519 3da8 E090 0000 lds r14,StickGier
6520 3dac F090 0000 lds r15,(StickGier)+1
6521 3db0 6701 movw r12,r14
6522 3db2 F7FC sbrc r15,7
6523 3db4 00C0 rjmp .+4
6524 3db6 0C94 0000 jmp .L900
6525 .L1059:
6526 3dba CC24 clr r12
6527 3dbc DD24 clr r13
6528 3dbe CE18 sub r12,r14
6529 3dc0 DF08 sbc r13,r15
6530 3dc2 0C94 0000 jmp .L900
6531 .L1057:
6532 3dc6 4091 0000 lds r20,Looping_Roll
6533 3dca 4CA7 std Y+44,r20
6534 3dcc 4423 tst r20
6535 3dce 01F4 brne .+2
6536 3dd0 00C0 rjmp .L1105
6537 3dd2 1092 0000 sts IntegralAccNick,__zero_reg__
6538 3dd6 1092 0000 sts (IntegralAccNick)+1,__zero_reg__
6539 3dda 1092 0000 sts (IntegralAccNick)+2,__zero_reg__
6540 3dde 1092 0000 sts (IntegralAccNick)+3,__zero_reg__
6541 3de2 1092 0000 sts IntegralAccRoll,__zero_reg__
6542 3de6 1092 0000 sts (IntegralAccRoll)+1,__zero_reg__
6543 3dea 1092 0000 sts (IntegralAccRoll)+2,__zero_reg__
6544 3dee 1092 0000 sts (IntegralAccRoll)+3,__zero_reg__
6545 3df2 1092 0000 sts MittelIntegralNick,__zero_reg__
6546 3df6 1092 0000 sts (MittelIntegralNick)+1,__zero_reg__
6547 3dfa 1092 0000 sts (MittelIntegralNick)+2,__zero_reg__
6548 3dfe 1092 0000 sts (MittelIntegralNick)+3,__zero_reg__
6549 3e02 1092 0000 sts MittelIntegralRoll,__zero_reg__
6550 3e06 1092 0000 sts (MittelIntegralRoll)+1,__zero_reg__
6551 3e0a 1092 0000 sts (MittelIntegralRoll)+2,__zero_reg__
6552 3e0e 1092 0000 sts (MittelIntegralRoll)+3,__zero_reg__
6553 3e12 1092 0000 sts MittelIntegralNick2,__zero_reg__
6554 3e16 1092 0000 sts (MittelIntegralNick2)+1,__zero_reg__
6555 3e1a 1092 0000 sts (MittelIntegralNick2)+2,__zero_reg__
6556 3e1e 1092 0000 sts (MittelIntegralNick2)+3,__zero_reg__
6557 3e22 1092 0000 sts MittelIntegralRoll2,__zero_reg__
6558 3e26 1092 0000 sts (MittelIntegralRoll2)+1,__zero_reg__
6559 3e2a 1092 0000 sts (MittelIntegralRoll2)+2,__zero_reg__
6560 3e2e 1092 0000 sts (MittelIntegralRoll2)+3,__zero_reg__
6561 3e32 8091 0000 lds r24,Mess_IntegralNick
6562 3e36 9091 0000 lds r25,(Mess_IntegralNick)+1
6563 3e3a A091 0000 lds r26,(Mess_IntegralNick)+2
6564 3e3e B091 0000 lds r27,(Mess_IntegralNick)+3
6565 3e42 8093 0000 sts Mess_IntegralNick2,r24
6566 3e46 9093 0000 sts (Mess_IntegralNick2)+1,r25
6567 3e4a A093 0000 sts (Mess_IntegralNick2)+2,r26
6568 3e4e B093 0000 sts (Mess_IntegralNick2)+3,r27
6569 3e52 8091 0000 lds r24,Mess_IntegralRoll
6570 3e56 9091 0000 lds r25,(Mess_IntegralRoll)+1
6571 3e5a A091 0000 lds r26,(Mess_IntegralRoll)+2
6572 3e5e B091 0000 lds r27,(Mess_IntegralRoll)+3
6573 3e62 8093 0000 sts Mess_IntegralRoll2,r24
6574 3e66 9093 0000 sts (Mess_IntegralRoll2)+1,r25
6575 3e6a A093 0000 sts (Mess_IntegralRoll2)+2,r26
6576 3e6e B093 0000 sts (Mess_IntegralRoll2)+3,r27
6577 3e72 1092 0000 sts (ZaehlMessungen)+1,__zero_reg__
6578 3e76 1092 0000 sts ZaehlMessungen,__zero_reg__
6579 3e7a 1092 0000 sts (LageKorrekturNick)+1,__zero_reg__
6580 3e7e 1092 0000 sts LageKorrekturNick,__zero_reg__
6581 3e82 1092 0000 sts (LageKorrekturRoll)+1,__zero_reg__
6582 3e86 1092 0000 sts LageKorrekturRoll,__zero_reg__
6583 3e8a 0C94 0000 jmp .L801
6584 .L1105:
6585 3e8e 8091 0000 lds r24,Aktuell_az
6586 3e92 9091 0000 lds r25,(Aktuell_az)+1
6587 3e96 8150 subi r24,lo8(513)
6588 3e98 9240 sbci r25,hi8(513)
6589 3e9a 04F4 brge .+4
6590 3e9c 0C94 0000 jmp .L801
6591 3ea0 8091 0000 lds r24,FromNaviCtrl_Value
6592 3ea4 8F3F cpi r24,lo8(-1)
6593 3ea6 01F4 brne .+4
6594 3ea8 0C94 0000 jmp .L803
6595 3eac E090 0000 lds r14,EE_Parameter+20
6596 3eb0 FF24 clr r15
6597 3eb2 00E0 ldi r16,lo8(0)
6598 3eb4 10E0 ldi r17,hi8(0)
6599 3eb6 A82E mov r10,r24
6600 3eb8 BB24 clr r11
6601 3eba A7FC sbrc r10,7
6602 3ebc B094 com r11
6603 3ebe CB2C mov r12,r11
6604 3ec0 DB2C mov r13,r11
6605 3ec2 6981 ldd r22,Y+1
6606 3ec4 7A81 ldd r23,Y+2
6607 3ec6 8B81 ldd r24,Y+3
6608 3ec8 9C81 ldd r25,Y+4
6609 3eca A801 movw r20,r16
6610 3ecc 9701 movw r18,r14
6611 3ece 0E94 0000 call __divmodsi4
6612 3ed2 8091 0000 lds r24,Mittelwert_AccNick
6613 3ed6 9091 0000 lds r25,(Mittelwert_AccNick)+1
6614 3eda AA27 clr r26
6615 3edc 97FD sbrc r25,7
6616 3ede A095 com r26
6617 3ee0 BA2F mov r27,r26
6618 3ee2 281B sub r18,r24
6619 3ee4 390B sbc r19,r25
6620 3ee6 4A0B sbc r20,r26
6621 3ee8 5B0B sbc r21,r27
6622 3eea CA01 movw r24,r20
6623 3eec B901 movw r22,r18
6624 3eee A601 movw r20,r12
6625 3ef0 9501 movw r18,r10
6626 3ef2 0E94 0000 call __mulsi3
6627 3ef6 20E0 ldi r18,lo8(512)
6628 3ef8 32E0 ldi r19,hi8(512)
6629 3efa 40E0 ldi r20,hlo8(512)
6630 3efc 50E0 ldi r21,hhi8(512)
6631 3efe 0E94 0000 call __divmodsi4
6632 3f02 3901 movw r6,r18
6633 3f04 4A01 movw r8,r20
6634 3f06 6D81 ldd r22,Y+5
6635 3f08 7E81 ldd r23,Y+6
6636 3f0a 8F81 ldd r24,Y+7
6637 3f0c 9885 ldd r25,Y+8
6638 3f0e A801 movw r20,r16
6639 3f10 9701 movw r18,r14
6640 3f12 0E94 0000 call __divmodsi4
6641 3f16 8091 0000 lds r24,Mittelwert_AccRoll
6642 3f1a 9091 0000 lds r25,(Mittelwert_AccRoll)+1
6643 3f1e AA27 clr r26
6644 3f20 97FD sbrc r25,7
6645 3f22 A095 com r26
6646 3f24 BA2F mov r27,r26
6647 3f26 281B sub r18,r24
6648 3f28 390B sbc r19,r25
6649 3f2a 4A0B sbc r20,r26
6650 3f2c 5B0B sbc r21,r27
6651 3f2e CA01 movw r24,r20
6652 3f30 B901 movw r22,r18
6653 3f32 A601 movw r20,r12
6654 3f34 9501 movw r18,r10
6655 3f36 0E94 0000 call __mulsi3
6656 3f3a 20E0 ldi r18,lo8(512)
6657 3f3c 32E0 ldi r19,hi8(512)
6658 3f3e 40E0 ldi r20,hlo8(512)
6659 3f40 50E0 ldi r21,hhi8(512)
6660 3f42 0E94 0000 call __divmodsi4
6661 3f46 5901 movw r10,r18
6662 3f48 6A01 movw r12,r20
6663 3f4a 8091 0000 lds r24,MaxStickNick
6664 3f4e 9091 0000 lds r25,(MaxStickNick)+1
6665 3f52 8134 cpi r24,65
6666 3f54 9105 cpc r25,__zero_reg__
6667 3f56 04F0 brlt .+2
6668 3f58 00C0 rjmp .L805
6669 3f5a 8091 0000 lds r24,MaxStickRoll
6670 3f5e 9091 0000 lds r25,(MaxStickRoll)+1
6671 3f62 8134 cpi r24,65
6672 3f64 9105 cpc r25,__zero_reg__
6673 3f66 04F0 brlt .+2
6674 3f68 00C0 rjmp .L805
6675 .L807:
6676 3f6a E091 0000 lds r30,EE_Parameter+3
6677 3f6e F0E0 ldi r31,lo8(0)
6678 3f70 EE0F lsl r30
6679 3f72 FF1F rol r31
6680 3f74 E050 subi r30,lo8(-(PPM_in))
6681 3f76 F040 sbci r31,hi8(-(PPM_in))
6682 3f78 0190 ld __tmp_reg__,Z+
6683 3f7a F081 ld r31,Z
6684 3f7c E02D mov r30,__tmp_reg__
6685 3f7e F7FF sbrs r31,7
6686 3f80 00C0 rjmp .+4
6687 3f82 0C94 0000 jmp .L1106
6688 .L809:
6689 3f86 7A97 sbiw r30,26
6690 3f88 04F0 brlt .L808
6691 3f8a C401 movw r24,r8
6692 3f8c B301 movw r22,r6
6693 3f8e 23E0 ldi r18,lo8(3)
6694 3f90 30E0 ldi r19,hi8(3)
6695 3f92 40E0 ldi r20,hlo8(3)
6696 3f94 50E0 ldi r21,hhi8(3)
6697 3f96 0E94 0000 call __divmodsi4
6698 3f9a 3901 movw r6,r18
6699 3f9c 4A01 movw r8,r20
6700 3f9e C601 movw r24,r12
6701 3fa0 B501 movw r22,r10
6702 3fa2 23E0 ldi r18,lo8(3)
6703 3fa4 30E0 ldi r19,hi8(3)
6704 3fa6 40E0 ldi r20,hlo8(3)
6705 3fa8 50E0 ldi r21,hhi8(3)
6706 3faa 0E94 0000 call __divmodsi4
6707 3fae 5901 movw r10,r18
6708 3fb0 6A01 movw r12,r20
6709 .L808:
6710 3fb2 8091 0000 lds r24,FromNaviCtrl_Value+2
6711 3fb6 E82E mov r14,r24
6712 3fb8 FF24 clr r15
6713 3fba E7FC sbrc r14,7
6714 3fbc F094 com r15
6715 3fbe 0F2D mov r16,r15
6716 3fc0 1F2D mov r17,r15
6717 3fc2 A401 movw r20,r8
6718 3fc4 9301 movw r18,r6
6719 3fc6 E614 cp r14,r6
6720 3fc8 F704 cpc r15,r7
6721 3fca 0805 cpc r16,r8
6722 3fcc 1905 cpc r17,r9
6723 3fce 04F4 brge .L811
6724 3fd0 A801 movw r20,r16
6725 3fd2 9701 movw r18,r14
6726 .L811:
6727 3fd4 9927 clr r25
6728 3fd6 87FD sbrc r24,7
6729 3fd8 9095 com r25
6730 3fda 9095 com r25
6731 3fdc 8195 neg r24
6732 3fde 9F4F sbci r25,lo8(-1)
6733 3fe0 AA27 clr r26
6734 3fe2 97FD sbrc r25,7
6735 3fe4 A095 com r26
6736 3fe6 BA2F mov r27,r26
6737 3fe8 3901 movw r6,r18
6738 3fea 4A01 movw r8,r20
6739 3fec 2817 cp r18,r24
6740 3fee 3907 cpc r19,r25
6741 3ff0 4A07 cpc r20,r26
6742 3ff2 5B07 cpc r21,r27
6743 3ff4 04F4 brge .L812
6744 3ff6 3C01 movw r6,r24
6745 3ff8 4D01 movw r8,r26
6746 .L812:
6747 3ffa EA14 cp r14,r10
6748 3ffc FB04 cpc r15,r11
6749 3ffe 0C05 cpc r16,r12
6750 4000 1D05 cpc r17,r13
6751 4002 04F4 brge .L813
6752 4004 5701 movw r10,r14
6753 4006 6801 movw r12,r16
6754 .L813:
6755 4008 A816 cp r10,r24
6756 400a B906 cpc r11,r25
6757 400c CA06 cpc r12,r26
6758 400e DB06 cpc r13,r27
6759 4010 04F4 brge .L814
6760 4012 5C01 movw r10,r24
6761 4014 6D01 movw r12,r26
6762 .L814:
6763 4016 8091 0000 lds r24,Mess_IntegralNick
6764 401a 9091 0000 lds r25,(Mess_IntegralNick)+1
6765 401e A091 0000 lds r26,(Mess_IntegralNick)+2
6766 4022 B091 0000 lds r27,(Mess_IntegralNick)+3
6767 4026 8619 sub r24,r6
6768 4028 9709 sbc r25,r7
6769 402a A809 sbc r26,r8
6770 402c B909 sbc r27,r9
6771 402e 8093 0000 sts Mess_IntegralNick,r24
6772 4032 9093 0000 sts (Mess_IntegralNick)+1,r25
6773 4036 A093 0000 sts (Mess_IntegralNick)+2,r26
6774 403a B093 0000 sts (Mess_IntegralNick)+3,r27
6775 403e 8091 0000 lds r24,Mess_IntegralRoll
6776 4042 9091 0000 lds r25,(Mess_IntegralRoll)+1
6777 4046 A091 0000 lds r26,(Mess_IntegralRoll)+2
6778 404a B091 0000 lds r27,(Mess_IntegralRoll)+3
6779 404e 8A19 sub r24,r10
6780 4050 9B09 sbc r25,r11
6781 4052 AC09 sbc r26,r12
6782 4054 BD09 sbc r27,r13
6783 4056 8093 0000 sts Mess_IntegralRoll,r24
6784 405a 9093 0000 sts (Mess_IntegralRoll)+1,r25
6785 405e A093 0000 sts (Mess_IntegralRoll)+2,r26
6786 4062 B093 0000 sts (Mess_IntegralRoll)+3,r27
6787 4066 0C94 0000 jmp .L801
6788 .L1095:
6789 406a 88E1 ldi r24,lo8(24)
6790 406c 8093 0000 sts TimerWerteausgabe.3087,r24
6791 4070 E090 0000 lds r14,EE_Parameter+20
6792 4074 FF24 clr r15
6793 4076 EE0C lsl r14
6794 4078 FF1C rol r15
6795 407a EE0C lsl r14
6796 407c FF1C rol r15
6797 407e 0027 clr r16
6798 4080 F7FC sbrc r15,7
6799 4082 0095 com r16
6800 4084 102F mov r17,r16
6801 4086 6981 ldd r22,Y+1
6802 4088 7A81 ldd r23,Y+2
6803 408a 8B81 ldd r24,Y+3
6804 408c 9C81 ldd r25,Y+4
6805 408e A801 movw r20,r16
6806 4090 9701 movw r18,r14
6807 4092 0E94 0000 call __divmodsi4
6808 4096 3093 0000 sts (DebugOut+2)+1,r19
6809 409a 2093 0000 sts DebugOut+2,r18
6810 409e 6D81 ldd r22,Y+5
6811 40a0 7E81 ldd r23,Y+6
6812 40a2 8F81 ldd r24,Y+7
6813 40a4 9885 ldd r25,Y+8
6814 40a6 A801 movw r20,r16
6815 40a8 9701 movw r18,r14
6816 40aa 0E94 0000 call __divmodsi4
6817 40ae 3093 0000 sts (DebugOut+4)+1,r19
6818 40b2 2093 0000 sts DebugOut+4,r18
6819 40b6 8091 0000 lds r24,Mittelwert_AccNick
6820 40ba 9091 0000 lds r25,(Mittelwert_AccNick)+1
6821 40be 97FD sbrc r25,7
6822 40c0 00C0 rjmp .L1107
6823 .L935:
6824 40c2 9595 asr r25
6825 40c4 8795 ror r24
6826 40c6 9595 asr r25
6827 40c8 8795 ror r24
6828 40ca 9093 0000 sts (DebugOut+6)+1,r25
6829 40ce 8093 0000 sts DebugOut+6,r24
6830 40d2 8091 0000 lds r24,Mittelwert_AccRoll
6831 40d6 9091 0000 lds r25,(Mittelwert_AccRoll)+1
6832 40da 97FD sbrc r25,7
6833 40dc 00C0 rjmp .L1108
6834 .L936:
6835 40de 9595 asr r25
6836 40e0 8795 ror r24
6837 40e2 9595 asr r25
6838 40e4 8795 ror r24
6839 40e6 9093 0000 sts (DebugOut+8)+1,r25
6840 40ea 8093 0000 sts DebugOut+8,r24
6841 40ee 9092 0000 sts (DebugOut+10)+1,r9
6842 40f2 8092 0000 sts DebugOut+10,r8
6843 40f6 2091 0000 lds r18,HoehenWert
6844 40fa 3091 0000 lds r19,(HoehenWert)+1
6845 40fe 3093 0000 sts (DebugOut+12)+1,r19
6846 4102 2093 0000 sts DebugOut+12,r18
6847 4106 6091 0000 lds r22,Mess_Integral_Hoch
6848 410a 7091 0000 lds r23,(Mess_Integral_Hoch)+1
6849 410e 8091 0000 lds r24,(Mess_Integral_Hoch)+2
6850 4112 9091 0000 lds r25,(Mess_Integral_Hoch)+3
6851 4116 20E0 ldi r18,lo8(512)
6852 4118 32E0 ldi r19,hi8(512)
6853 411a 40E0 ldi r20,hlo8(512)
6854 411c 50E0 ldi r21,hhi8(512)
6855 411e 0E94 0000 call __divmodsi4
6856 4122 3093 0000 sts (DebugOut+14)+1,r19
6857 4126 2093 0000 sts DebugOut+14,r18
6858 412a 3092 0000 sts (DebugOut+18)+1,r3
6859 412e 2092 0000 sts DebugOut+18,r2
6860 4132 8091 0000 lds r24,UBat
6861 4136 9091 0000 lds r25,(UBat)+1
6862 413a 9093 0000 sts (DebugOut+20)+1,r25
6863 413e 8093 0000 sts DebugOut+20,r24
6864 4142 6091 0000 lds r22,ErsatzKompass
6865 4146 7091 0000 lds r23,(ErsatzKompass)+1
6866 414a 8091 0000 lds r24,(ErsatzKompass)+2
6867 414e 9091 0000 lds r25,(ErsatzKompass)+3
6868 4152 2091 0000 lds r18,GIER_GRAD_FAKTOR
6869 4156 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1
6870 415a 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2
6871 415e 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3
6872 4162 0E94 0000 call __divmodsi4
6873 4166 3093 0000 sts (DebugOut+24)+1,r19
6874 416a 2093 0000 sts DebugOut+24,r18
6875 416e 8091 0000 lds r24,SenderOkay
6876 4172 90E0 ldi r25,lo8(0)
6877 4174 9093 0000 sts (DebugOut+22)+1,r25
6878 4178 8093 0000 sts DebugOut+22,r24
6879 417c 8091 0000 lds r24,WinkelOut+6
6880 4180 90E0 ldi r25,lo8(0)
6881 4182 9093 0000 sts (DebugOut+40)+1,r25
6882 4186 8093 0000 sts DebugOut+40,r24
6883 418a 8091 0000 lds r24,ServoValue
6884 418e 9091 0000 lds r25,(ServoValue)+1
6885 4192 9093 0000 sts (DebugOut+42)+1,r25
6886 4196 8093 0000 sts DebugOut+42,r24
6887 419a 8091 0000 lds r24,FromNaviCtrl_Value+1
6888 419e 9927 clr r25
6889 41a0 87FD sbrc r24,7
6890 41a2 9095 com r25
6891 41a4 9093 0000 sts (DebugOut+56)+1,r25
6892 41a8 8093 0000 sts DebugOut+56,r24
6893 41ac 8091 0000 lds r24,GPS_Nick
6894 41b0 9091 0000 lds r25,(GPS_Nick)+1
6895 41b4 9093 0000 sts (DebugOut+62)+1,r25
6896 41b8 8093 0000 sts DebugOut+62,r24
6897 41bc 8091 0000 lds r24,GPS_Roll
6898 41c0 9091 0000 lds r25,(GPS_Roll)+1
6899 41c4 9093 0000 sts (DebugOut+64)+1,r25
6900 41c8 8093 0000 sts DebugOut+64,r24
6901 41cc 00C0 rjmp .L933
6902 .L751:
6903 41ce 4150 subi r20,lo8(-(-1))
6904 41d0 5040 sbci r21,hi8(-(-1))
6905 41d2 5093 0000 sts (MaxStickRoll)+1,r21
6906 41d6 4093 0000 sts MaxStickRoll,r20
6907 41da 00C0 rjmp .L757
6908 .L743:
6909 41dc 4150 subi r20,lo8(-(-1))
6910 41de 5040 sbci r21,hi8(-(-1))
6911 41e0 5093 0000 sts (MaxStickNick)+1,r21
6912 41e4 4093 0000 sts MaxStickNick,r20
6913 41e8 00C0 rjmp .L749
6914 .L967:
6915 41ea 8091 0000 lds r24,Parameter_MaxHoehe
6916 41ee 2091 0000 lds r18,ExternHoehenValue
6917 41f2 3091 0000 lds r19,(ExternHoehenValue)+1
6918 41f6 280F add r18,r24
6919 41f8 311D adc r19,__zero_reg__
6920 41fa 8091 0000 lds r24,EE_Parameter+13
6921 41fe 90E0 ldi r25,lo8(0)
6922 4200 FC01 movw r30,r24
6923 4202 2E9F mul r18,r30
6924 4204 C001 movw r24,r0
6925 4206 2F9F mul r18,r31
6926 4208 900D add r25,r0
6927 420a 3E9F mul r19,r30
6928 420c 900D add r25,r0
6929 420e 1124 clr r1
6930 4210 4497 sbiw r24,20
6931 4212 9093 0000 sts (SollHoehe)+1,r25
6932 4216 8093 0000 sts SollHoehe,r24
6933 421a 81E0 ldi r24,lo8(1)
6934 421c 8093 0000 sts HoehenReglerAktiv,r24
6935 4220 2091 0000 lds r18,HoehenWert
6936 4224 3091 0000 lds r19,(HoehenWert)+1
6937 .L973:
6938 4228 FFA1 ldd r31,Y+39
6939 422a FF23 tst r31
6940 422c 01F0 breq .L979
6941 422e 1092 0000 sts (SollHoehe)+1,__zero_reg__
6942 4232 1092 0000 sts SollHoehe,__zero_reg__
6943 .L979:
6944 4236 4091 0000 lds r20,SollHoehe
6945 423a 5091 0000 lds r21,(SollHoehe)+1
6946 423e 4217 cp r20,r18
6947 4240 5307 cpc r21,r19
6948 4242 04F0 brlt .+2
6949 4244 00C0 rjmp .L965
6950 4246 8091 0000 lds r24,HoehenReglerAktiv
6951 424a 8823 tst r24
6952 424c 01F4 brne .+2
6953 424e 00C0 rjmp .L965
6954 4250 8091 0000 lds r24,Parameter_Hoehe_P
6955 4254 90E0 ldi r25,lo8(0)
6956 4256 241B sub r18,r20
6957 4258 350B sbc r19,r21
6958 425a AC01 movw r20,r24
6959 425c 429F mul r20,r18
6960 425e C001 movw r24,r0
6961 4260 439F mul r20,r19
6962 4262 900D add r25,r0
6963 4264 529F mul r21,r18
6964 4266 900D add r25,r0
6965 4268 1124 clr r1
6966 426a 97FD sbrc r25,7
6967 426c 00C0 rjmp .L1109
6968 .L983:
6969 426e 5C01 movw r10,r24
6970 4270 B594 asr r11
6971 4272 A794 ror r10
6972 4274 B594 asr r11
6973 4276 A794 ror r10
6974 4278 C090 0000 lds r12,HoeheD
6975 427c D090 0000 lds r13,(HoeheD)+1
6976 4280 6091 0000 lds r22,Mess_Integral_Hoch
6977 4284 7091 0000 lds r23,(Mess_Integral_Hoch)+1
6978 4288 8091 0000 lds r24,(Mess_Integral_Hoch)+2
6979 428c 9091 0000 lds r25,(Mess_Integral_Hoch)+3
6980 4290 E090 0000 lds r14,Parameter_Hoehe_ACC_Wirkung
6981 4294 FF24 clr r15
6982 4296 00E0 ldi r16,lo8(0)
6983 4298 10E0 ldi r17,hi8(0)
6984 429a 20E8 ldi r18,lo8(128)
6985 429c 30E0 ldi r19,hi8(128)
6986 429e 40E0 ldi r20,hlo8(128)
6987 42a0 50E0 ldi r21,hhi8(128)
6988 42a2 0E94 0000 call __divmodsi4
6989 42a6 C801 movw r24,r16
6990 42a8 B701 movw r22,r14
6991 42aa 0E94 0000 call __mulsi3
6992 42ae 20E2 ldi r18,lo8(32)
6993 42b0 30E0 ldi r19,hi8(32)
6994 42b2 40E0 ldi r20,hlo8(32)
6995 42b4 50E0 ldi r21,hhi8(32)
6996 42b6 0E94 0000 call __divmodsi4
6997 42ba A901 movw r20,r18
6998 42bc 285E subi r18,lo8(-280)
6999 42be 3E4F sbci r19,hi8(-280)
7000 42c0 04F4 brge .L984
7001 42c2 48EE ldi r20,lo8(-280)
7002 42c4 5EEF ldi r21,hi8(-280)
7003 .L984:
7004 42c6 2091 0000 lds r18,hoehenregler.3078
7005 42ca 3091 0000 lds r19,(hoehenregler.3078)+1
7006 42ce C901 movw r24,r18
7007 42d0 880F lsl r24
7008 42d2 991F rol r25
7009 42d4 820F add r24,r18
7010 42d6 931F adc r25,r19
7011 42d8 BC01 movw r22,r24
7012 42da 660F lsl r22
7013 42dc 771F rol r23
7014 42de 660F lsl r22
7015 42e0 771F rol r23
7016 42e2 680F add r22,r24
7017 42e4 791F adc r23,r25
7018 42e6 9601 movw r18,r12
7019 42e8 D7FC sbrc r13,7
7020 42ea 00C0 rjmp .L1110
7021 .L985:
7022 42ec 3595 asr r19
7023 42ee 2795 ror r18
7024 42f0 CB01 movw r24,r22
7025 42f2 821B sub r24,r18
7026 42f4 930B sbc r25,r19
7027 42f6 9A01 movw r18,r20
7028 42f8 4951 subi r20,lo8(281)
7029 42fa 5140 sbci r21,hi8(281)
7030 42fc 04F0 brlt .L986
7031 42fe 28E1 ldi r18,lo8(280)
7032 4300 31E0 ldi r19,hi8(280)
7033 .L986:
7034 4302 821B sub r24,r18
7035 4304 930B sbc r25,r19
7036 4306 9C01 movw r18,r24
7037 4308 8DA5 ldd r24,Y+45
7038 430a 9EA5 ldd r25,Y+46
7039 430c 8A19 sub r24,r10
7040 430e 9B09 sbc r25,r11
7041 4310 280F add r18,r24
7042 4312 391F adc r19,r25
7043 4314 37FD sbrc r19,7
7044 4316 00C0 rjmp .L1111
7045 .L987:
7046 4318 3595 asr r19
7047 431a 2795 ror r18
7048 431c 3595 asr r19
7049 431e 2795 ror r18
7050 4320 3595 asr r19
7051 4322 2795 ror r18
7052 4324 3595 asr r19
7053 4326 2795 ror r18
7054 4328 3093 0000 sts (hoehenregler.3078)+1,r19
7055 432c 2093 0000 sts hoehenregler.3078,r18
7056 4330 8091 0000 lds r24,EE_Parameter+9
7057 4334 682F mov r22,r24
7058 4336 70E0 ldi r23,lo8(0)
7059 4338 660F lsl r22
7060 433a 771F rol r23
7061 433c 660F lsl r22
7062 433e 771F rol r23
7063 4340 2617 cp r18,r22
7064 4342 3707 cpc r19,r23
7065 4344 04F0 brlt .+2
7066 4346 00C0 rjmp .L988
7067 4348 8DA5 ldd r24,Y+45
7068 434a 9EA5 ldd r25,Y+46
7069 434c 8617 cp r24,r22
7070 434e 9707 cpc r25,r23
7071 4350 04F4 brge .+2
7072 4352 00C0 rjmp .L990
7073 4354 7093 0000 sts (hoehenregler.3078)+1,r23
7074 4358 6093 0000 sts hoehenregler.3078,r22
7075 435c 00C0 rjmp .L992
7076 .L659:
7077 435e 1092 0000 sts MotorenEin,__zero_reg__
7078 4362 0C94 0000 jmp .L661
7079 .L1060:
7080 4366 6D5F subi r22,lo8(-(3))
7081 4368 7F4F sbci r23,hi8(-(3))
7082 436a 0C94 0000 jmp .L904
7083 .L1100:
7084 436e 6F5F subi r22,lo8(-(1))
7085 4370 7F4F sbci r23,hi8(-(1))
7086 4372 00C0 rjmp .L1013
7087 .L1099:
7088 4374 6627 clr r22
7089 4376 7727 clr r23
7090 4378 6A19 sub r22,r10
7091 437a 7B09 sbc r23,r11
7092 437c 00C0 rjmp .L1012
7093 .L1102:
7094 437e 0396 adiw r24,3
7095 4380 00C0 rjmp .L1030
7096 .L1101:
7097 4382 0396 adiw r24,3
7098 4384 00C0 rjmp .L1025
7099 .L1104:
7100 4386 0396 adiw r24,3
7101 4388 00C0 rjmp .L1040
7102 .L1103:
7103 438a 0396 adiw r24,3
7104 438c 00C0 rjmp .L1035
7105 .L790:
7106 438e 1092 0000 sts Looping_Nick,__zero_reg__
7107 4392 0C94 0000 jmp .L727
7108 .L786:
7109 4396 1092 0000 sts Looping_Roll,__zero_reg__
7110 439a 00C0 rjmp .L787
7111 .L1092:
7112 439c 81E0 ldi r24,lo8(1)
7113 439e 8093 0000 sts Looping_Unten,r24
7114 43a2 00C0 rjmp .L781
7115 .L1090:
7116 43a4 A1E0 ldi r26,lo8(1)
7117 43a6 A093 0000 sts Looping_Oben,r26
7118 43aa 00C0 rjmp .L775
7119 .L1088:
7120 43ac 81E0 ldi r24,lo8(1)
7121 43ae 8093 0000 sts Looping_Rechts,r24
7122 43b2 00C0 rjmp .L769
7123 .L1087:
7124 43b4 81E0 ldi r24,lo8(1)
7125 43b6 8093 0000 sts Looping_Links,r24
7126 43ba 00C0 rjmp .L764
7127 .L1086:
7128 43bc 84E6 ldi r24,lo8(100)
7129 43be 90E0 ldi r25,hi8(100)
7130 43c0 9093 0000 sts (MaxStickRoll)+1,r25
7131 43c4 8093 0000 sts MaxStickRoll,r24
7132 43c8 00C0 rjmp .L757
7133 .L1081:
7134 43ca 84E6 ldi r24,lo8(100)
7135 43cc 90E0 ldi r25,hi8(100)
7136 43ce 9093 0000 sts (MaxStickNick)+1,r25
7137 43d2 8093 0000 sts MaxStickNick,r24
7138 43d6 0C94 0000 jmp .L749
7139 .L1075:
7140 43da 8091 0000 lds r24,ExternControl+3
7141 43de 9927 clr r25
7142 43e0 87FD sbrc r24,7
7143 43e2 9095 com r25
7144 43e4 AC01 movw r20,r24
7145 43e6 489D mul r20,r8
7146 43e8 C001 movw r24,r0
7147 43ea 499D mul r20,r9
7148 43ec 900D add r25,r0
7149 43ee 589D mul r21,r8
7150 43f0 900D add r25,r0
7151 43f2 1124 clr r1
7152 43f4 C80E add r12,r24
7153 43f6 D91E adc r13,r25
7154 43f8 D092 0000 sts (StickNick)+1,r13
7155 43fc C092 0000 sts StickNick,r12
7156 4400 8091 0000 lds r24,ExternControl+4
7157 4404 9927 clr r25
7158 4406 87FD sbrc r24,7
7159 4408 9095 com r25
7160 440a BC01 movw r22,r24
7161 440c 689D mul r22,r8
7162 440e C001 movw r24,r0
7163 4410 699D mul r22,r9
7164 4412 900D add r25,r0
7165 4414 789D mul r23,r8
7166 4416 900D add r25,r0
7167 4418 1124 clr r1
7168 441a 080F add r16,r24
7169 441c 191F adc r17,r25
7170 441e 1093 0000 sts (StickRoll)+1,r17
7171 4422 0093 0000 sts StickRoll,r16
7172 4426 2091 0000 lds r18,ExternControl+5
7173 442a 3327 clr r19
7174 442c 27FD sbrc r18,7
7175 442e 3095 com r19
7176 4430 8091 0000 lds r24,StickGier
7177 4434 9091 0000 lds r25,(StickGier)+1
7178 4438 820F add r24,r18
7179 443a 931F adc r25,r19
7180 443c 9093 0000 sts (StickGier)+1,r25
7181 4440 8093 0000 sts StickGier,r24
7182 4444 2091 0000 lds r18,EE_Parameter+13
7183 4448 30E0 ldi r19,lo8(0)
7184 444a 8091 0000 lds r24,ExternControl+7
7185 444e 9927 clr r25
7186 4450 87FD sbrc r24,7
7187 4452 9095 com r25
7188 4454 DC01 movw r26,r24
7189 4456 2A9F mul r18,r26
7190 4458 C001 movw r24,r0
7191 445a 2B9F mul r18,r27
7192 445c 900D add r25,r0
7193 445e 3A9F mul r19,r26
7194 4460 900D add r25,r0
7195 4462 1124 clr r1
7196 4464 9093 0000 sts (ExternHoehenValue)+1,r25
7197 4468 8093 0000 sts ExternHoehenValue,r24
7198 446c 8091 0000 lds r24,ExternControl+6
7199 4470 90E0 ldi r25,lo8(0)
7200 4472 8615 cp r24,r6
7201 4474 9705 cpc r25,r7
7202 4476 04F0 brlt .+4
7203 4478 0C94 0000 jmp .L735
7204 447c 9093 0000 sts (StickGas)+1,r25
7205 4480 8093 0000 sts StickGas,r24
7206 4484 0C94 0000 jmp .L735
7207 .L733:
7208 4488 1092 0000 sts (StickGier)+1,__zero_reg__
7209 448c 1092 0000 sts StickGier,__zero_reg__
7210 4490 0C94 0000 jmp .L732
7211 .L1058:
7212 4494 F091 0000 lds r31,TrichterFlug
7213 4498 FEA3 std Y+38,r31
7214 449a FF23 tst r31
7215 449c 01F0 breq .+4
7216 449e 0C94 0000 jmp .L831
7217 44a2 2091 0000 lds r18,EE_Parameter+48
7218 44a6 2C8F std Y+28,r18
7219 44a8 2223 tst r18
7220 44aa 01F4 brne .+4
7221 44ac 0C94 0000 jmp .L831
7222 44b0 4091 0000 lds r20,MittelIntegralNick
7223 44b4 5091 0000 lds r21,(MittelIntegralNick)+1
7224 44b8 6091 0000 lds r22,(MittelIntegralNick)+2
7225 44bc 7091 0000 lds r23,(MittelIntegralNick)+3
7226 44c0 CB01 movw r24,r22
7227 44c2 BA01 movw r22,r20
7228 44c4 20E0 ldi r18,lo8(256)
7229 44c6 31E0 ldi r19,hi8(256)
7230 44c8 40E0 ldi r20,hlo8(256)
7231 44ca 50E0 ldi r21,hhi8(256)
7232 44cc 0E94 0000 call __divmodsi4
7233 44d0 28A7 std Y+40,r18
7234 44d2 39A7 std Y+41,r19
7235 44d4 4AA7 std Y+42,r20
7236 44d6 5BA7 std Y+43,r21
7237 44d8 2093 0000 sts MittelIntegralNick,r18
7238 44dc 3093 0000 sts (MittelIntegralNick)+1,r19
7239 44e0 4093 0000 sts (MittelIntegralNick)+2,r20
7240 44e4 5093 0000 sts (MittelIntegralNick)+3,r21
7241 44e8 2090 0000 lds r2,MittelIntegralRoll
7242 44ec 3090 0000 lds r3,(MittelIntegralRoll)+1
7243 44f0 4090 0000 lds r4,(MittelIntegralRoll)+2
7244 44f4 5090 0000 lds r5,(MittelIntegralRoll)+3
7245 44f8 C201 movw r24,r4
7246 44fa B101 movw r22,r2
7247 44fc 20E0 ldi r18,lo8(256)
7248 44fe 31E0 ldi r19,hi8(256)
7249 4500 40E0 ldi r20,hlo8(256)
7250 4502 50E0 ldi r21,hhi8(256)
7251 4504 0E94 0000 call __divmodsi4
7252 4508 1901 movw r2,r18
7253 450a 2A01 movw r4,r20
7254 450c 2093 0000 sts MittelIntegralRoll,r18
7255 4510 3093 0000 sts (MittelIntegralRoll)+1,r19
7256 4514 4093 0000 sts (MittelIntegralRoll)+2,r20
7257 4518 5093 0000 sts (MittelIntegralRoll)+3,r21
7258 451c E090 0000 lds r14,EE_Parameter+20
7259 4520 FF24 clr r15
7260 4522 00E0 ldi r16,lo8(0)
7261 4524 10E0 ldi r17,hi8(0)
7262 4526 2091 0000 lds r18,IntegralAccNick
7263 452a 3091 0000 lds r19,(IntegralAccNick)+1
7264 452e 4091 0000 lds r20,(IntegralAccNick)+2
7265 4532 5091 0000 lds r21,(IntegralAccNick)+3
7266 4536 C801 movw r24,r16
7267 4538 B701 movw r22,r14
7268 453a 0E94 0000 call __mulsi3
7269 453e 20E0 ldi r18,lo8(256)
7270 4540 31E0 ldi r19,hi8(256)
7271 4542 40E0 ldi r20,hlo8(256)
7272 4544 50E0 ldi r21,hhi8(256)
7273 4546 0E94 0000 call __divmodsi4
7274 454a 5901 movw r10,r18
7275 454c 6A01 movw r12,r20
7276 454e 2093 0000 sts IntegralAccNick,r18
7277 4552 3093 0000 sts (IntegralAccNick)+1,r19
7278 4556 4093 0000 sts (IntegralAccNick)+2,r20
7279 455a 5093 0000 sts (IntegralAccNick)+3,r21
7280 455e 2091 0000 lds r18,IntegralAccRoll
7281 4562 3091 0000 lds r19,(IntegralAccRoll)+1
7282 4566 4091 0000 lds r20,(IntegralAccRoll)+2
7283 456a 5091 0000 lds r21,(IntegralAccRoll)+3
7284 456e C801 movw r24,r16
7285 4570 B701 movw r22,r14
7286 4572 0E94 0000 call __mulsi3
7287 4576 20E0 ldi r18,lo8(256)
7288 4578 31E0 ldi r19,hi8(256)
7289 457a 40E0 ldi r20,hlo8(256)
7290 457c 50E0 ldi r21,hhi8(256)
7291 457e 0E94 0000 call __divmodsi4
7292 4582 3901 movw r6,r18
7293 4584 4A01 movw r8,r20
7294 4586 2093 0000 sts IntegralAccRoll,r18
7295 458a 3093 0000 sts (IntegralAccRoll)+1,r19
7296 458e 4093 0000 sts (IntegralAccRoll)+2,r20
7297 4592 5093 0000 sts (IntegralAccRoll)+3,r21
7298 4596 6091 0000 lds r22,IntegralAccZ
7299 459a 7091 0000 lds r23,(IntegralAccZ)+1
7300 459e 8091 0000 lds r24,(IntegralAccZ)+2
7301 45a2 9091 0000 lds r25,(IntegralAccZ)+3
7302 45a6 20E0 ldi r18,lo8(256)
7303 45a8 31E0 ldi r19,hi8(256)
7304 45aa 40E0 ldi r20,hlo8(256)
7305 45ac 50E0 ldi r21,hhi8(256)
7306 45ae 0E94 0000 call __divmodsi4
7307 45b2 2093 0000 sts IntegralAccZ,r18
7308 45b6 3093 0000 sts (IntegralAccZ)+1,r19
7309 45ba 4093 0000 sts (IntegralAccZ)+2,r20
7310 45be 5093 0000 sts (IntegralAccZ)+3,r21
7311 45c2 E090 0000 lds r14,EE_Parameter+47
7312 45c6 FF24 clr r15
7313 45c8 00E0 ldi r16,lo8(0)
7314 45ca 10E0 ldi r17,hi8(0)
7315 45cc 68A5 ldd r22,Y+40
7316 45ce 79A5 ldd r23,Y+41
7317 45d0 8AA5 ldd r24,Y+42
7318 45d2 9BA5 ldd r25,Y+43
7319 45d4 6A19 sub r22,r10
7320 45d6 7B09 sbc r23,r11
7321 45d8 8C09 sbc r24,r12
7322 45da 9D09 sbc r25,r13
7323 45dc A801 movw r20,r16
7324 45de 9701 movw r18,r14
7325 45e0 0E94 0000 call __divmodsi4
7326 45e4 2093 0000 sts ausgleichNick.3089,r18
7327 45e8 3093 0000 sts (ausgleichNick.3089)+1,r19
7328 45ec 4093 0000 sts (ausgleichNick.3089)+2,r20
7329 45f0 5093 0000 sts (ausgleichNick.3089)+3,r21
7330 45f4 CA01 movw r24,r20
7331 45f6 B901 movw r22,r18
7332 45f8 20E0 ldi r18,lo8(256)
7333 45fa 31E0 ldi r19,hi8(256)
7334 45fc 40E0 ldi r20,hlo8(256)
7335 45fe 50E0 ldi r21,hhi8(256)
7336 4600 0E94 0000 call __divmodsi4
7337 4604 6901 movw r12,r18
7338 4606 3093 0000 sts (LageKorrekturNick)+1,r19
7339 460a 2093 0000 sts LageKorrekturNick,r18
7340 460e C201 movw r24,r4
7341 4610 B101 movw r22,r2
7342 4612 6619 sub r22,r6
7343 4614 7709 sbc r23,r7
7344 4616 8809 sbc r24,r8
7345 4618 9909 sbc r25,r9
7346 461a A801 movw r20,r16
7347 461c 9701 movw r18,r14
7348 461e 0E94 0000 call __divmodsi4
7349 4622 CA01 movw r24,r20
7350 4624 B901 movw r22,r18
7351 4626 20E0 ldi r18,lo8(256)
7352 4628 31E0 ldi r19,hi8(256)
7353 462a 40E0 ldi r20,hlo8(256)
7354 462c 50E0 ldi r21,hhi8(256)
7355 462e 0E94 0000 call __divmodsi4
7356 4632 B901 movw r22,r18
7357 4634 3093 0000 sts (LageKorrekturRoll)+1,r19
7358 4638 2093 0000 sts LageKorrekturRoll,r18
7359 463c 8091 0000 lds r24,MaxStickNick
7360 4640 9091 0000 lds r25,(MaxStickNick)+1
7361 4644 8134 cpi r24,65
7362 4646 9105 cpc r25,__zero_reg__
7363 4648 04F4 brge .L836
7364 464a 8091 0000 lds r24,MaxStickRoll
7365 464e 9091 0000 lds r25,(MaxStickRoll)+1
7366 4652 8134 cpi r24,65
7367 4654 9105 cpc r25,__zero_reg__
7368 4656 04F4 brge .L836
7369 4658 E091 0000 lds r30,EE_Parameter+3
7370 465c F0E0 ldi r31,lo8(0)
7371 465e EE0F lsl r30
7372 4660 FF1F rol r31
7373 4662 E050 subi r30,lo8(-(PPM_in))
7374 4664 F040 sbci r31,hi8(-(PPM_in))
7375 4666 0190 ld __tmp_reg__,Z+
7376 4668 F081 ld r31,Z
7377 466a E02D mov r30,__tmp_reg__
7378 466c F7FD sbrc r31,7
7379 466e 00C0 rjmp .L1112
7380 .L840:
7381 4670 7A97 sbiw r30,26
7382 4672 04F0 brlt .L839
7383 .L836:
7384 4674 8091 0000 lds r24,FromNaviCtrl_Value
7385 4678 8F3F cpi r24,lo8(-1)
7386 467a 01F4 brne .+2
7387 467c 00C0 rjmp .L1113
7388 .L839:
7389 467e 6091 0000 lds r22,MittelIntegralNick2
7390 4682 7091 0000 lds r23,(MittelIntegralNick2)+1
7391 4686 8091 0000 lds r24,(MittelIntegralNick2)+2
7392 468a 9091 0000 lds r25,(MittelIntegralNick2)+3
7393 468e 20E0 ldi r18,lo8(256)
7394 4690 31E0 ldi r19,hi8(256)
7395 4692 40E0 ldi r20,hlo8(256)
7396 4694 50E0 ldi r21,hhi8(256)
7397 4696 0E94 0000 call __divmodsi4
7398 469a 2093 0000 sts MittelIntegralNick2,r18
7399 469e 3093 0000 sts (MittelIntegralNick2)+1,r19
7400 46a2 4093 0000 sts (MittelIntegralNick2)+2,r20
7401 46a6 5093 0000 sts (MittelIntegralNick2)+3,r21
7402 46aa 6091 0000 lds r22,MittelIntegralRoll2
7403 46ae 7091 0000 lds r23,(MittelIntegralRoll2)+1
7404 46b2 8091 0000 lds r24,(MittelIntegralRoll2)+2
7405 46b6 9091 0000 lds r25,(MittelIntegralRoll2)+3
7406 46ba 20E0 ldi r18,lo8(256)
7407 46bc 31E0 ldi r19,hi8(256)
7408 46be 40E0 ldi r20,hlo8(256)
7409 46c0 50E0 ldi r21,hhi8(256)
7410 46c2 0E94 0000 call __divmodsi4
7411 46c6 2093 0000 sts MittelIntegralRoll2,r18
7412 46ca 3093 0000 sts (MittelIntegralRoll2)+1,r19
7413 46ce 4093 0000 sts (MittelIntegralRoll2)+2,r20
7414 46d2 5093 0000 sts (MittelIntegralRoll2)+3,r21
7415 46d6 E9A0 ldd r14,Y+33
7416 46d8 FAA0 ldd r15,Y+34
7417 46da 0BA1 ldd r16,Y+35
7418 46dc 1CA1 ldd r17,Y+36
7419 46de 6981 ldd r22,Y+1
7420 46e0 7A81 ldd r23,Y+2
7421 46e2 8B81 ldd r24,Y+3
7422 46e4 9C81 ldd r25,Y+4
7423 46e6 E61A sub r14,r22
7424 46e8 F70A sbc r15,r23
7425 46ea 080B sbc r16,r24
7426 46ec 190B sbc r17,r25
7427 46ee E092 0000 sts tmp_long.3070,r14
7428 46f2 F092 0000 sts (tmp_long.3070)+1,r15
7429 46f6 0093 0000 sts (tmp_long.3070)+2,r16
7430 46fa 1093 0000 sts (tmp_long.3070)+3,r17
7431 46fe AD8C ldd r10,Y+29
7432 4700 BE8C ldd r11,Y+30
7433 4702 CF8C ldd r12,Y+31
7434 4704 D8A0 ldd r13,Y+32
7435 4706 8D81 ldd r24,Y+5
7436 4708 9E81 ldd r25,Y+6
7437 470a AF81 ldd r26,Y+7
7438 470c B885 ldd r27,Y+8
7439 470e A81A sub r10,r24
7440 4710 B90A sbc r11,r25
7441 4712 CA0A sbc r12,r26
7442 4714 DB0A sbc r13,r27
7443 4716 A092 0000 sts tmp_long2.3071,r10
7444 471a B092 0000 sts (tmp_long2.3071)+1,r11
7445 471e C092 0000 sts (tmp_long2.3071)+2,r12
7446 4722 D092 0000 sts (tmp_long2.3071)+3,r13
7447 4726 E092 0000 sts IntegralFehlerNick.3072,r14
7448 472a F092 0000 sts (IntegralFehlerNick.3072)+1,r15
7449 472e 0093 0000 sts (IntegralFehlerNick.3072)+2,r16
7450 4732 1093 0000 sts (IntegralFehlerNick.3072)+3,r17
7451 4736 A092 0000 sts IntegralFehlerRoll.3073,r10
7452 473a B092 0000 sts (IntegralFehlerRoll.3073)+1,r11
7453 473e C092 0000 sts (IntegralFehlerRoll.3073)+2,r12
7454 4742 D092 0000 sts (IntegralFehlerRoll.3073)+3,r13
7455 4746 8091 0000 lds r24,Mess_IntegralNick2
7456 474a 9091 0000 lds r25,(Mess_IntegralNick2)+1
7457 474e A091 0000 lds r26,(Mess_IntegralNick2)+2
7458 4752 B091 0000 lds r27,(Mess_IntegralNick2)+3
7459 4756 8E19 sub r24,r14
7460 4758 9F09 sbc r25,r15
7461 475a A00B sbc r26,r16
7462 475c B10B sbc r27,r17
7463 475e 8093 0000 sts Mess_IntegralNick2,r24
7464 4762 9093 0000 sts (Mess_IntegralNick2)+1,r25
7465 4766 A093 0000 sts (Mess_IntegralNick2)+2,r26
7466 476a B093 0000 sts (Mess_IntegralNick2)+3,r27
7467 476e 8091 0000 lds r24,Mess_IntegralRoll2
7468 4772 9091 0000 lds r25,(Mess_IntegralRoll2)+1
7469 4776 A091 0000 lds r26,(Mess_IntegralRoll2)+2
7470 477a B091 0000 lds r27,(Mess_IntegralRoll2)+3
7471 477e 8A19 sub r24,r10
7472 4780 9B09 sbc r25,r11
7473 4782 AC09 sbc r26,r12
7474 4784 BD09 sbc r27,r13
7475 4786 8093 0000 sts Mess_IntegralRoll2,r24
7476 478a 9093 0000 sts (Mess_IntegralRoll2)+1,r25
7477 478e A093 0000 sts (Mess_IntegralRoll2)+2,r26
7478 4792 B093 0000 sts (Mess_IntegralRoll2)+3,r27
7479 4796 2091 0000 lds r18,GierGyroFehler
7480 479a 3091 0000 lds r19,(GierGyroFehler)+1
7481 479e 2138 cpi r18,129
7482 47a0 3105 cpc r19,__zero_reg__
7483 47a2 04F0 brlt .L844
7484 47a4 8091 0000 lds r24,AdNeutralGier
7485 47a8 9091 0000 lds r25,(AdNeutralGier)+1
7486 47ac 0196 adiw r24,1
7487 47ae 9093 0000 sts (AdNeutralGier)+1,r25
7488 47b2 8093 0000 sts AdNeutralGier,r24
7489 47b6 8091 0000 lds r24,AdNeutralGierBias
7490 47ba 9091 0000 lds r25,(AdNeutralGierBias)+1
7491 47be 0196 adiw r24,1
7492 47c0 9093 0000 sts (AdNeutralGierBias)+1,r25
7493 47c4 8093 0000 sts AdNeutralGierBias,r24
7494 .L844:
7495 47c8 2058 subi r18,lo8(-128)
7496 47ca 3F4F sbci r19,hi8(-128)
7497 47cc 04F4 brge .L846
7498 47ce 8091 0000 lds r24,AdNeutralGier
7499 47d2 9091 0000 lds r25,(AdNeutralGier)+1
7500 47d6 0197 sbiw r24,1
7501 47d8 9093 0000 sts (AdNeutralGier)+1,r25
7502 47dc 8093 0000 sts AdNeutralGier,r24
7503 47e0 8091 0000 lds r24,AdNeutralGierBias
7504 47e4 9091 0000 lds r25,(AdNeutralGierBias)+1
7505 47e8 0197 sbiw r24,1
7506 47ea 9093 0000 sts (AdNeutralGierBias)+1,r25
7507 47ee 8093 0000 sts AdNeutralGierBias,r24
7508 .L846:
7509 47f2 1092 0000 sts (GierGyroFehler)+1,__zero_reg__
7510 47f6 1092 0000 sts GierGyroFehler,__zero_reg__
7511 47fa 81E0 ldi r24,lo8(1)
7512 47fc 90E0 ldi r25,hi8(1)
7513 47fe 9093 0000 sts (cnt.3099)+1,r25
7514 4802 8093 0000 sts cnt.3099,r24
7515 4806 8091 0000 lds r24,MittelIntegralNick_Alt.3104
7516 480a 9091 0000 lds r25,(MittelIntegralNick_Alt.3104)+1
7517 480e A091 0000 lds r26,(MittelIntegralNick_Alt.3104)+2
7518 4812 B091 0000 lds r27,(MittelIntegralNick_Alt.3104)+3
7519 4816 28A5 ldd r18,Y+40
7520 4818 39A5 ldd r19,Y+41
7521 481a 4AA5 ldd r20,Y+42
7522 481c 5BA5 ldd r21,Y+43
7523 481e 821B sub r24,r18
7524 4820 930B sbc r25,r19
7525 4822 A40B sbc r26,r20
7526 4824 B50B sbc r27,r21
7527 4826 815E subi r24,lo8(-(19999))
7528 4828 914B sbci r25,hi8(-(19999))
7529 482a AF4F sbci r26,hlo8(-(19999))
7530 482c BF4F sbci r27,hhi8(-(19999))
7531 482e 8F53 subi r24,lo8(39999)
7532 4830 9C49 sbci r25,hi8(39999)
7533 4832 A040 sbci r26,hlo8(39999)
7534 4834 B040 sbci r27,hhi8(39999)
7535 4836 00F4 brsh .+2
7536 4838 00C0 rjmp .L1047
7537 483a 9090 0000 lds r9,FromNaviCtrl_Value+1
7538 483e 48E1 ldi r20,lo8(24)
7539 4840 4915 cp r20,r9
7540 4842 04F4 brge .+2
7541 4844 00C0 rjmp .L848
7542 4846 1092 0000 sts (cnt.3099)+1,__zero_reg__
7543 484a 1092 0000 sts cnt.3099,__zero_reg__
7544 484e 88EE ldi r24,lo8(1000)
7545 4850 93E0 ldi r25,hi8(1000)
7546 4852 9093 0000 sts (KompassSignalSchlecht)+1,r25
7547 4856 8093 0000 sts KompassSignalSchlecht,r24
7548 .L863:
7549 485a 9C8D ldd r25,Y+28
7550 485c 692E mov r6,r25
7551 485e 7724 clr r7
7552 4860 8091 0000 lds r24,cnt.3099
7553 4864 9091 0000 lds r25,(cnt.3099)+1
7554 4868 6816 cp r6,r24
7555 486a 7906 cpc r7,r25
7556 486c 04F4 brge .L864
7557 486e 7092 0000 sts (cnt.3099)+1,r7
7558 4872 6092 0000 sts cnt.3099,r6
7559 .L864:
7560 4876 9920 tst r9
7561 4878 01F0 breq .L866
7562 487a 292D mov r18,r9
7563 487c 3327 clr r19
7564 487e 27FD sbrc r18,7
7565 4880 3095 com r19
7566 4882 8091 0000 lds r24,cnt.3099
7567 4886 9091 0000 lds r25,(cnt.3099)+1
7568 488a 2817 cp r18,r24
7569 488c 3907 cpc r19,r25
7570 488e 04F4 brge .L866
7571 4890 3093 0000 sts (cnt.3099)+1,r19
7572 4894 2093 0000 sts cnt.3099,r18
7573 .L866:
7574 4898 A1E0 ldi r26,lo8(1025)
7575 489a EA16 cp r14,r26
7576 489c A4E0 ldi r26,hi8(1025)
7577 489e FA06 cpc r15,r26
7578 48a0 A0E0 ldi r26,hlo8(1025)
7579 48a2 0A07 cpc r16,r26
7580 48a4 A0E0 ldi r26,hhi8(1025)
7581 48a6 1A07 cpc r17,r26
7582 48a8 04F0 brlt .L869
7583 48aa 8091 0000 lds r24,AdNeutralNick
7584 48ae 9091 0000 lds r25,(AdNeutralNick)+1
7585 48b2 2091 0000 lds r18,cnt.3099
7586 48b6 3091 0000 lds r19,(cnt.3099)+1
7587 48ba 820F add r24,r18
7588 48bc 931F adc r25,r19
7589 48be 9093 0000 sts (AdNeutralNick)+1,r25
7590 48c2 8093 0000 sts AdNeutralNick,r24
7591 .L869:
7592 48c6 B0E0 ldi r27,lo8(-1024)
7593 48c8 EB16 cp r14,r27
7594 48ca BCEF ldi r27,hi8(-1024)
7595 48cc FB06 cpc r15,r27
7596 48ce BFEF ldi r27,hlo8(-1024)
7597 48d0 0B07 cpc r16,r27
7598 48d2 BFEF ldi r27,hhi8(-1024)
7599 48d4 1B07 cpc r17,r27
7600 48d6 04F4 brge .L871
7601 48d8 8091 0000 lds r24,AdNeutralNick
7602 48dc 9091 0000 lds r25,(AdNeutralNick)+1
7603 48e0 2091 0000 lds r18,cnt.3099
7604 48e4 3091 0000 lds r19,(cnt.3099)+1
7605 48e8 821B sub r24,r18
7606 48ea 930B sbc r25,r19
7607 48ec 9093 0000 sts (AdNeutralNick)+1,r25
7608 48f0 8093 0000 sts AdNeutralNick,r24
7609 .L871:
7610 48f4 81E0 ldi r24,lo8(1)
7611 48f6 90E0 ldi r25,hi8(1)
7612 48f8 9093 0000 sts (cnt.3099)+1,r25
7613 48fc 8093 0000 sts cnt.3099,r24
7614 4900 1092 0000 sts ausgleichRoll.3090,__zero_reg__
7615 4904 1092 0000 sts (ausgleichRoll.3090)+1,__zero_reg__
7616 4908 1092 0000 sts (ausgleichRoll.3090)+2,__zero_reg__
7617 490c 1092 0000 sts (ausgleichRoll.3090)+3,__zero_reg__
7618 4910 8091 0000 lds r24,MittelIntegralRoll_Alt.3105
7619 4914 9091 0000 lds r25,(MittelIntegralRoll_Alt.3105)+1
7620 4918 A091 0000 lds r26,(MittelIntegralRoll_Alt.3105)+2
7621 491c B091 0000 lds r27,(MittelIntegralRoll_Alt.3105)+3
7622 4920 8219 sub r24,r2
7623 4922 9309 sbc r25,r3
7624 4924 A409 sbc r26,r4
7625 4926 B509 sbc r27,r5
7626 4928 815E subi r24,lo8(-(19999))
7627 492a 914B sbci r25,hi8(-(19999))
7628 492c AF4F sbci r26,hlo8(-(19999))
7629 492e BF4F sbci r27,hhi8(-(19999))
7630 4930 8F53 subi r24,lo8(39999)
7631 4932 9C49 sbci r25,hi8(39999)
7632 4934 A040 sbci r26,hlo8(39999)
7633 4936 B040 sbci r27,hhi8(39999)
7634 4938 00F4 brsh .+2
7635 493a 00C0 rjmp .L873
7636 493c F8E1 ldi r31,lo8(24)
7637 493e F915 cp r31,r9
7638 4940 04F4 brge .+2
7639 4942 00C0 rjmp .L873
7640 4944 1092 0000 sts (cnt.3099)+1,__zero_reg__
7641 4948 1092 0000 sts cnt.3099,__zero_reg__
7642 494c 88EE ldi r24,lo8(1000)
7643 494e 93E0 ldi r25,hi8(1000)
7644 4950 9093 0000 sts (KompassSignalSchlecht)+1,r25
7645 4954 8093 0000 sts KompassSignalSchlecht,r24
7646 .L888:
7647 4958 8091 0000 lds r24,cnt.3099
7648 495c 9091 0000 lds r25,(cnt.3099)+1
7649 4960 6816 cp r6,r24
7650 4962 7906 cpc r7,r25
7651 4964 04F4 brge .L889
7652 4966 7092 0000 sts (cnt.3099)+1,r7
7653 496a 6092 0000 sts cnt.3099,r6
7654 .L889:
7655 496e 9920 tst r9
7656 4970 01F0 breq .L891
7657 4972 292D mov r18,r9
7658 4974 3327 clr r19
7659 4976 27FD sbrc r18,7
7660 4978 3095 com r19
7661 497a 8091 0000 lds r24,cnt.3099
7662 497e 9091 0000 lds r25,(cnt.3099)+1
7663 4982 2817 cp r18,r24
7664 4984 3907 cpc r19,r25
7665 4986 04F4 brge .L891
7666 4988 3093 0000 sts (cnt.3099)+1,r19
7667 498c 2093 0000 sts cnt.3099,r18
7668 .L891:
7669 4990 71E0 ldi r23,lo8(1025)
7670 4992 A716 cp r10,r23
7671 4994 74E0 ldi r23,hi8(1025)
7672 4996 B706 cpc r11,r23
7673 4998 70E0 ldi r23,hlo8(1025)
7674 499a C706 cpc r12,r23
7675 499c 70E0 ldi r23,hhi8(1025)
7676 499e D706 cpc r13,r23
7677 49a0 04F0 brlt .L894
7678 49a2 8091 0000 lds r24,AdNeutralRoll
7679 49a6 9091 0000 lds r25,(AdNeutralRoll)+1
7680 49aa 2091 0000 lds r18,cnt.3099
7681 49ae 3091 0000 lds r19,(cnt.3099)+1
7682 49b2 820F add r24,r18
7683 49b4 931F adc r25,r19
7684 49b6 9093 0000 sts (AdNeutralRoll)+1,r25
7685 49ba 8093 0000 sts AdNeutralRoll,r24
7686 .L894:
7687 49be 80E0 ldi r24,lo8(-1024)
7688 49c0 A816 cp r10,r24
7689 49c2 8CEF ldi r24,hi8(-1024)
7690 49c4 B806 cpc r11,r24
7691 49c6 8FEF ldi r24,hlo8(-1024)
7692 49c8 C806 cpc r12,r24
7693 49ca 8FEF ldi r24,hhi8(-1024)
7694 49cc D806 cpc r13,r24
7695 49ce 04F0 brlt .+4
7696 49d0 0C94 0000 jmp .L896
7697 49d4 8091 0000 lds r24,AdNeutralRoll
7698 49d8 9091 0000 lds r25,(AdNeutralRoll)+1
7699 49dc 2091 0000 lds r18,cnt.3099
7700 49e0 3091 0000 lds r19,(cnt.3099)+1
7701 49e4 821B sub r24,r18
7702 49e6 930B sbc r25,r19
7703 49e8 9093 0000 sts (AdNeutralRoll)+1,r25
7704 49ec 8093 0000 sts AdNeutralRoll,r24
7705 49f0 0C94 0000 jmp .L896
7706 .L1098:
7707 49f4 9701 movw r18,r14
7708 49f6 0C94 0000 jmp .L997
7709 .L1063:
7710 49fa 6801 movw r12,r16
7711 49fc 0C94 0000 jmp .L914
7712 .L1065:
7713 4a00 60E0 ldi r22,lo8(0)
7714 4a02 70E0 ldi r23,hi8(0)
7715 4a04 00E0 ldi r16,lo8(0)
7716 4a06 10E0 ldi r17,hi8(0)
7717 4a08 0C94 0000 jmp .L918
7718 .L969:
7719 4a0c 8091 0000 lds r24,Parameter_MaxHoehe
7720 4a10 8233 cpi r24,lo8(50)
7721 4a12 00F4 brsh .+4
7722 4a14 0C94 0000 jmp .L971
7723 .L972:
7724 4a18 81E0 ldi r24,lo8(1)
7725 4a1a 8093 0000 sts HoehenReglerAktiv,r24
7726 4a1e 88EC ldi r24,lo8(-56)
7727 4a20 8093 0000 sts delay.3112,r24
7728 4a24 2091 0000 lds r18,HoehenWert
7729 4a28 3091 0000 lds r19,(HoehenWert)+1
7730 4a2c 00C0 rjmp .L973
7731 .L1073:
7732 4a2e 4D5F subi r20,lo8(-(3))
7733 4a30 5F4F sbci r21,hi8(-(3))
7734 4a32 0C94 0000 jmp .L728
7735 .L1074:
7736 4a36 4D5F subi r20,lo8(-(3))
7737 4a38 5F4F sbci r21,hi8(-(3))
7738 4a3a 0C94 0000 jmp .L729
7739 .L1070:
7740 4a3e 1092 0000 sts SummeNick.3067,__zero_reg__
7741 4a42 1092 0000 sts (SummeNick.3067)+1,__zero_reg__
7742 4a46 1092 0000 sts (SummeNick.3067)+2,__zero_reg__
7743 4a4a 1092 0000 sts (SummeNick.3067)+3,__zero_reg__
7744 4a4e 1092 0000 sts SummeRoll.3068,__zero_reg__
7745 4a52 1092 0000 sts (SummeRoll.3068)+1,__zero_reg__
7746 4a56 1092 0000 sts (SummeRoll.3068)+2,__zero_reg__
7747 4a5a 1092 0000 sts (SummeRoll.3068)+3,__zero_reg__
7748 4a5e 8A3F cpi r24,250
7749 4a60 9105 cpc r25,__zero_reg__
7750 4a62 01F0 breq .+4
7751 4a64 0C94 0000 jmp .L669
7752 4a68 81E0 ldi r24,lo8(1)
7753 4a6a 8093 0000 sts NeueKompassRichtungMerken.3088,r24
7754 4a6e 1092 0000 sts sollGier.3069,__zero_reg__
7755 4a72 1092 0000 sts (sollGier.3069)+1,__zero_reg__
7756 4a76 1092 0000 sts (sollGier.3069)+2,__zero_reg__
7757 4a7a 1092 0000 sts (sollGier.3069)+3,__zero_reg__
7758 4a7e 1092 0000 sts Mess_Integral_Gier,__zero_reg__
7759 4a82 1092 0000 sts (Mess_Integral_Gier)+1,__zero_reg__
7760 4a86 1092 0000 sts (Mess_Integral_Gier)+2,__zero_reg__
7761 4a8a 1092 0000 sts (Mess_Integral_Gier)+3,__zero_reg__
7762 4a8e 0C94 0000 jmp .L669
7763 .L1091:
7764 4a92 A0E0 ldi r26,lo8(0)
7765 4a94 1092 0000 sts Looping_Oben,__zero_reg__
7766 4a98 0C94 0000 jmp .L775
7767 .L1093:
7768 4a9c 1092 0000 sts Looping_Unten,__zero_reg__
7769 4aa0 0C94 0000 jmp .L781
7770 .L1089:
7771 4aa4 1092 0000 sts Looping_Rechts,__zero_reg__
7772 4aa8 0C94 0000 jmp .L769
7773 .L1055:
7774 4aac 88E9 ldi r24,lo8(15000)
7775 4aae 9AE3 ldi r25,hi8(15000)
7776 4ab0 9093 0000 sts (beeptime)+1,r25
7777 4ab4 8093 0000 sts beeptime,r24
7778 4ab8 80E0 ldi r24,lo8(3072)
7779 4aba 9CE0 ldi r25,hi8(3072)
7780 4abc 9093 0000 sts (BeepMuster)+1,r25
7781 4ac0 8093 0000 sts BeepMuster,r24
7782 4ac4 0C94 0000 jmp .L649
7783 .L1062:
7784 4ac8 D094 com r13
7785 4aca C194 neg r12
7786 4acc D108 sbc r13,__zero_reg__
7787 4ace D394 inc r13
7788 4ad0 0C94 0000 jmp .L913
7789 .L1061:
7790 4ad4 1095 com r17
7791 4ad6 0195 neg r16
7792 4ad8 1F4F sbci r17,lo8(-1)
7793 4ada 0C94 0000 jmp .L912
7794 .L1064:
7795 4ade 8827 clr r24
7796 4ae0 9927 clr r25
7797 4ae2 8819 sub r24,r8
7798 4ae4 9909 sbc r25,r9
7799 4ae6 0C94 0000 jmp .L916
7800 .L1097:
7801 4aea 3196 adiw r30,1
7802 4aec 0C94 0000 jmp .L999
7803 .L805:
7804 4af0 C401 movw r24,r8
7805 4af2 B301 movw r22,r6
7806 4af4 22E0 ldi r18,lo8(2)
7807 4af6 30E0 ldi r19,hi8(2)
7808 4af8 40E0 ldi r20,hlo8(2)
7809 4afa 50E0 ldi r21,hhi8(2)
7810 4afc 0E94 0000 call __divmodsi4
7811 4b00 3901 movw r6,r18
7812 4b02 4A01 movw r8,r20
7813 4b04 C601 movw r24,r12
7814 4b06 B501 movw r22,r10
7815 4b08 22E0 ldi r18,lo8(2)
7816 4b0a 30E0 ldi r19,hi8(2)
7817 4b0c 40E0 ldi r20,hlo8(2)
7818 4b0e 50E0 ldi r21,hhi8(2)
7819 4b10 0E94 0000 call __divmodsi4
7820 4b14 5901 movw r10,r18
7821 4b16 6A01 movw r12,r20
7822 4b18 00C0 rjmp .L807
7823 .L1076:
7824 4b1a 1092 0000 sts (StickGas)+1,__zero_reg__
7825 4b1e 1092 0000 sts StickGas,__zero_reg__
7826 4b22 0C94 0000 jmp .L739
7827 .L1078:
7828 4b26 9095 com r25
7829 4b28 8195 neg r24
7830 4b2a 9F4F sbci r25,lo8(-1)
7831 4b2c 0C94 0000 jmp .L745
7832 .L1077:
7833 4b30 0396 adiw r24,3
7834 4b32 0C94 0000 jmp .L744
7835 .L1082:
7836 4b36 0396 adiw r24,3
7837 4b38 9595 asr r25
7838 4b3a 8795 ror r24
7839 4b3c 9595 asr r25
7840 4b3e 8795 ror r24
7841 4b40 97FD sbrc r25,7
7842 4b42 00C0 rjmp .+4
7843 4b44 0C94 0000 jmp .L753
7844 .L1083:
7845 4b48 9095 com r25
7846 4b4a 8195 neg r24
7847 4b4c 9F4F sbci r25,lo8(-1)
7848 4b4e 0C94 0000 jmp .L753
7849 .L927:
7850 4b52 0894 sec
7851 4b54 E108 sbc r14,__zero_reg__
7852 4b56 F108 sbc r15,__zero_reg__
7853 4b58 F092 0000 sts (KompassSignalSchlecht)+1,r15
7854 4b5c E092 0000 sts KompassSignalSchlecht,r14
7855 4b60 0C94 0000 jmp .L909
7856 .L1056:
7857 4b64 4B2F mov r20,r27
7858 4b66 50E0 ldi r21,lo8(0)
7859 4b68 5B87 std Y+11,r21
7860 4b6a 4A87 std Y+10,r20
7861 4b6c 8091 0000 lds r24,Looping_Nick
7862 4b70 8823 tst r24
7863 4b72 01F4 brne .+4
7864 4b74 0C94 0000 jmp .L793
7865 4b78 0C94 0000 jmp .L791
7866 .L718:
7867 4b7c 1092 0000 sts delay_einschalten.3076,__zero_reg__
7868 4b80 0C94 0000 jmp .L720
7869 .L722:
7870 4b84 1092 0000 sts delay_ausschalten.3077,__zero_reg__
7871 4b88 0C94 0000 jmp .L661
7872 .L1108:
7873 4b8c 0396 adiw r24,3
7874 4b8e 00C0 rjmp .L936
7875 .L1107:
7876 4b90 0396 adiw r24,3
7877 4b92 00C0 rjmp .L935
7878 .L1085:
7879 4b94 0396 adiw r24,3
7880 4b96 0C94 0000 jmp .L756
7881 .L1084:
7882 4b9a 9095 com r25
7883 4b9c 8195 neg r24
7884 4b9e 9F4F sbci r25,lo8(-1)
7885 4ba0 0C94 0000 jmp .L755
7886 .L1080:
7887 4ba4 0396 adiw r24,3
7888 4ba6 0C94 0000 jmp .L748
7889 .L1079:
7890 4baa 9095 com r25
7891 4bac 8195 neg r24
7892 4bae 9F4F sbci r25,lo8(-1)
7893 4bb0 0C94 0000 jmp .L747
7894 .L925:
7895 4bb4 84EF ldi r24,lo8(500)
7896 4bb6 91E0 ldi r25,hi8(500)
7897 4bb8 9093 0000 sts (KompassSignalSchlecht)+1,r25
7898 4bbc 8093 0000 sts KompassSignalSchlecht,r24
7899 4bc0 0C94 0000 jmp .L909
7900 .L1068:
7901 4bc4 215E subi r18,lo8(-(31))
7902 4bc6 3F4F sbci r19,hi8(-(31))
7903 4bc8 0C94 0000 jmp .L924
7904 .L1067:
7905 4bcc 695F subi r22,lo8(-(7))
7906 4bce 7F4F sbci r23,hi8(-(7))
7907 4bd0 0C94 0000 jmp .L923
7908 .L930:
7909 4bd4 4427 clr r20
7910 4bd6 37FD sbrc r19,7
7911 4bd8 4095 com r20
7912 4bda 542F mov r21,r20
7913 4bdc 8091 0000 lds r24,Mess_Integral_Gier
7914 4be0 9091 0000 lds r25,(Mess_Integral_Gier)+1
7915 4be4 A091 0000 lds r26,(Mess_Integral_Gier)+2
7916 4be8 B091 0000 lds r27,(Mess_Integral_Gier)+3
7917 4bec 820F add r24,r18
7918 4bee 931F adc r25,r19
7919 4bf0 A41F adc r26,r20
7920 4bf2 B51F adc r27,r21
7921 4bf4 8093 0000 sts Mess_Integral_Gier,r24
7922 4bf8 9093 0000 sts (Mess_Integral_Gier)+1,r25
7923 4bfc A093 0000 sts (Mess_Integral_Gier)+2,r26
7924 4c00 B093 0000 sts (Mess_Integral_Gier)+3,r27
7925 4c04 0C94 0000 jmp .L909
7926 .L674:
7927 4c08 8081 ld r24,Z
7928 4c0a 9181 ldd r25,Z+1
7929 4c0c 855B subi r24,lo8(-75)
7930 4c0e 9F4F sbci r25,hi8(-75)
7931 4c10 04F0 brlt .+2
7932 4c12 00C0 rjmp .L708
7933 4c14 8091 0000 lds r24,delay_neutral.3075
7934 4c18 8F5F subi r24,lo8(-(1))
7935 4c1a 8093 0000 sts delay_neutral.3075,r24
7936 4c1e 893C cpi r24,lo8(-55)
7937 4c20 00F4 brsh .+4
7938 4c22 0C94 0000 jmp .L671
7939 4c26 4C30 cpi r20,lo8(12)
7940 4c28 00F0 brlo .+2
7941 4c2a 00C0 rjmp .L711
7942 4c2c 2998 cbi 37-0x20,1
7943 .L713:
7944 4c2e 8FEF ldi r24,lo8(-1)
7945 4c30 00E0 ldi r16,lo8(EEPromArray+4)
7946 4c32 10E0 ldi r17,hi8(EEPromArray+4)
7947 4c34 D801 movw r26,r16
7948 /* #APP */
7949 4c36 082E mov __tmp_reg__,r24
7950 4c38 0E94 0000 call __eeprom_write_byte_1F2021
7951 /* #NOAPP */
7952 4c3c 1092 0000 sts MotorenEin,__zero_reg__
7953 4c40 1092 0000 sts delay_neutral.3075,__zero_reg__
7954 4c44 1092 0000 sts (modell_fliegt)+1,__zero_reg__
7955 4c48 1092 0000 sts modell_fliegt,__zero_reg__
7956 4c4c 0E94 0000 call SetNeutral
7957 4c50 8091 0000 lds r24,NeutralAccX
7958 4c54 9091 0000 lds r25,(NeutralAccX)+1
7959 4c58 97FD sbrc r25,7
7960 4c5a 00C0 rjmp .L1114
7961 .L714:
7962 4c5c 892F mov r24,r25
7963 4c5e 990F lsl r25
7964 4c60 990B sbc r25,r25
7965 4c62 D801 movw r26,r16
7966 /* #APP */
7967 4c64 082E mov __tmp_reg__,r24
7968 4c66 0E94 0000 call __eeprom_write_byte_1F2021
7969 /* #NOAPP */
7970 4c6a 8091 0000 lds r24,NeutralAccX
7971 4c6e 9091 0000 lds r25,(NeutralAccX)+1
7972 4c72 60E0 ldi r22,lo8(256)
7973 4c74 71E0 ldi r23,hi8(256)
7974 4c76 0E94 0000 call __divmodhi4
7975 4c7a 0F5F subi r16,lo8(-(1))
7976 4c7c 1F4F sbci r17,hi8(-(1))
7977 4c7e D801 movw r26,r16
7978 /* #APP */
7979 4c80 082E mov __tmp_reg__,r24
7980 4c82 0E94 0000 call __eeprom_write_byte_1F2021
7981 /* #NOAPP */
7982 4c86 0150 subi r16,lo8(-(-1))
7983 4c88 1040 sbci r17,hi8(-(-1))
7984 4c8a 2091 0000 lds r18,NeutralAccY
7985 4c8e 3091 0000 lds r19,(NeutralAccY)+1
7986 4c92 37FD sbrc r19,7
7987 4c94 00C0 rjmp .L1115
7988 .L715:
7989 4c96 832F mov r24,r19
7990 4c98 9927 clr r25
7991 4c9a 87FD sbrc r24,7
7992 4c9c 9A95 dec r25
7993 4c9e 0E5F subi r16,lo8(-(2))
7994 4ca0 1F4F sbci r17,hi8(-(2))
7995 4ca2 D801 movw r26,r16
7996 /* #APP */
7997 4ca4 082E mov __tmp_reg__,r24
7998 4ca6 0E94 0000 call __eeprom_write_byte_1F2021
7999 /* #NOAPP */
8000 4caa 8091 0000 lds r24,NeutralAccY
8001 4cae 9091 0000 lds r25,(NeutralAccY)+1
8002 4cb2 60E0 ldi r22,lo8(256)
8003 4cb4 71E0 ldi r23,hi8(256)
8004 4cb6 0E94 0000 call __divmodhi4
8005 4cba 0F5F subi r16,lo8(-(1))
8006 4cbc 1F4F sbci r17,hi8(-(1))
8007 4cbe D801 movw r26,r16
8008 /* #APP */
8009 4cc0 082E mov __tmp_reg__,r24
8010 4cc2 0E94 0000 call __eeprom_write_byte_1F2021
8011 /* #NOAPP */
8012 4cc6 0350 subi r16,lo8(-(-3))
8013 4cc8 1040 sbci r17,hi8(-(-3))
8014 4cca 6091 0000 lds r22,NeutralAccZ
8015 4cce 7091 0000 lds r23,(NeutralAccZ)+1
8016 4cd2 8091 0000 lds r24,(NeutralAccZ)+2
8017 4cd6 9091 0000 lds r25,(NeutralAccZ)+3
8018 4cda 0E94 0000 call __fixsfsi
8019 4cde 9B01 movw r18,r22
8020 4ce0 77FD sbrc r23,7
8021 4ce2 00C0 rjmp .L1116
8022 .L716:
8023 4ce4 832F mov r24,r19
8024 4ce6 9927 clr r25
8025 4ce8 87FD sbrc r24,7
8026 4cea 9A95 dec r25
8027 4cec 0C5F subi r16,lo8(-(4))
8028 4cee 1F4F sbci r17,hi8(-(4))
8029 4cf0 D801 movw r26,r16
8030 /* #APP */
8031 4cf2 082E mov __tmp_reg__,r24
8032 4cf4 0E94 0000 call __eeprom_write_byte_1F2021
8033 /* #NOAPP */
8034 4cf8 6091 0000 lds r22,NeutralAccZ
8035 4cfc 7091 0000 lds r23,(NeutralAccZ)+1
8036 4d00 8091 0000 lds r24,(NeutralAccZ)+2
8037 4d04 9091 0000 lds r25,(NeutralAccZ)+3
8038 4d08 0E94 0000 call __fixsfsi
8039 4d0c DC01 movw r26,r24
8040 4d0e CB01 movw r24,r22
8041 4d10 60E0 ldi r22,lo8(256)
8042 4d12 71E0 ldi r23,hi8(256)
8043 4d14 0E94 0000 call __divmodhi4
8044 4d18 0F5F subi r16,lo8(-(1))
8045 4d1a 1F4F sbci r17,hi8(-(1))
8046 4d1c D801 movw r26,r16
8047 /* #APP */
8048 4d1e 082E mov __tmp_reg__,r24
8049 4d20 0E94 0000 call __eeprom_write_byte_1F2021
8050 /* #NOAPP */
8051 .L1053:
8052 4d24 0E94 0000 call GetActiveParamSetNumber
8053 4d28 0E94 0000 call Piep
8054 4d2c 8091 0000 lds r24,EE_Parameter+2
8055 4d30 A82F mov r26,r24
8056 4d32 B0E0 ldi r27,lo8(0)
8057 4d34 AA0F lsl r26
8058 4d36 BB1F rol r27
8059 4d38 0C94 0000 jmp .L671
8060 .L1066:
8061 4d3c 88EC ldi r24,lo8(200)
8062 4d3e 90E0 ldi r25,hi8(200)
8063 4d40 9093 0000 sts (beeptime)+1,r25
8064 4d44 8093 0000 sts beeptime,r24
8065 4d48 B101 movw r22,r2
8066 4d4a 8827 clr r24
8067 4d4c 77FD sbrc r23,7
8068 4d4e 8095 com r24
8069 4d50 982F mov r25,r24
8070 4d52 2C89 ldd r18,Y+20
8071 4d54 3D89 ldd r19,Y+21
8072 4d56 4E89 ldd r20,Y+22
8073 4d58 5F89 ldd r21,Y+23
8074 4d5a 0E94 0000 call __mulsi3
8075 4d5e 2B01 movw r4,r22
8076 4d60 3C01 movw r6,r24
8077 4d62 6093 0000 sts ErsatzKompass,r22
8078 4d66 7093 0000 sts (ErsatzKompass)+1,r23
8079 4d6a 8093 0000 sts (ErsatzKompass)+2,r24
8080 4d6e 9093 0000 sts (ErsatzKompass)+3,r25
8081 4d72 0E94 0000 call __divmodsi4
8082 4d76 3093 0000 sts (KompassStartwert)+1,r19
8083 4d7a 2093 0000 sts KompassStartwert,r18
8084 4d7e 1092 0000 sts NeueKompassRichtungMerken.3088,__zero_reg__
8085 4d82 0C94 0000 jmp .L919
8086 .L1072:
8087 4d86 88EC ldi r24,lo8(-56)
8088 4d88 8093 0000 sts delay_einschalten.3076,r24
8089 4d8c 81E0 ldi r24,lo8(1)
8090 4d8e 90E0 ldi r25,hi8(1)
8091 4d90 9093 0000 sts (modell_fliegt)+1,r25
8092 4d94 8093 0000 sts modell_fliegt,r24
8093 4d98 81E0 ldi r24,lo8(1)
8094 4d9a 8093 0000 sts MotorenEin,r24
8095 4d9e 1092 0000 sts sollGier.3069,__zero_reg__
8096 4da2 1092 0000 sts (sollGier.3069)+1,__zero_reg__
8097 4da6 1092 0000 sts (sollGier.3069)+2,__zero_reg__
8098 4daa 1092 0000 sts (sollGier.3069)+3,__zero_reg__
8099 4dae 1092 0000 sts Mess_Integral_Gier,__zero_reg__
8100 4db2 1092 0000 sts (Mess_Integral_Gier)+1,__zero_reg__
8101 4db6 1092 0000 sts (Mess_Integral_Gier)+2,__zero_reg__
8102 4dba 1092 0000 sts (Mess_Integral_Gier)+3,__zero_reg__
8103 4dbe 1092 0000 sts Mess_Integral_Gier2,__zero_reg__
8104 4dc2 1092 0000 sts (Mess_Integral_Gier2)+1,__zero_reg__
8105 4dc6 1092 0000 sts (Mess_Integral_Gier2)+2,__zero_reg__
8106 4dca 1092 0000 sts (Mess_Integral_Gier2)+3,__zero_reg__
8107 4dce E090 0000 lds r14,EE_Parameter+20
8108 4dd2 FF24 clr r15
8109 4dd4 00E0 ldi r16,lo8(0)
8110 4dd6 10E0 ldi r17,hi8(0)
8111 4dd8 6091 0000 lds r22,Mittelwert_AccNick
8112 4ddc 7091 0000 lds r23,(Mittelwert_AccNick)+1
8113 4de0 8827 clr r24
8114 4de2 77FD sbrc r23,7
8115 4de4 8095 com r24
8116 4de6 982F mov r25,r24
8117 4de8 A801 movw r20,r16
8118 4dea 9701 movw r18,r14
8119 4dec 0E94 0000 call __mulsi3
8120 4df0 6093 0000 sts Mess_IntegralNick,r22
8121 4df4 7093 0000 sts (Mess_IntegralNick)+1,r23
8122 4df8 8093 0000 sts (Mess_IntegralNick)+2,r24
8123 4dfc 9093 0000 sts (Mess_IntegralNick)+3,r25
8124 4e00 6091 0000 lds r22,Mittelwert_AccRoll
8125 4e04 7091 0000 lds r23,(Mittelwert_AccRoll)+1
8126 4e08 8827 clr r24
8127 4e0a 77FD sbrc r23,7
8128 4e0c 8095 com r24
8129 4e0e 982F mov r25,r24
8130 4e10 0E94 0000 call __mulsi3
8131 4e14 6093 0000 sts Mess_IntegralRoll,r22
8132 4e18 7093 0000 sts (Mess_IntegralRoll)+1,r23
8133 4e1c 8093 0000 sts (Mess_IntegralRoll)+2,r24
8134 4e20 9093 0000 sts (Mess_IntegralRoll)+3,r25
8135 4e24 8091 0000 lds r24,IntegralNick
8136 4e28 9091 0000 lds r25,(IntegralNick)+1
8137 4e2c A091 0000 lds r26,(IntegralNick)+2
8138 4e30 B091 0000 lds r27,(IntegralNick)+3
8139 4e34 8093 0000 sts Mess_IntegralNick2,r24
8140 4e38 9093 0000 sts (Mess_IntegralNick2)+1,r25
8141 4e3c A093 0000 sts (Mess_IntegralNick2)+2,r26
8142 4e40 B093 0000 sts (Mess_IntegralNick2)+3,r27
8143 4e44 8091 0000 lds r24,IntegralRoll
8144 4e48 9091 0000 lds r25,(IntegralRoll)+1
8145 4e4c A091 0000 lds r26,(IntegralRoll)+2
8146 4e50 B091 0000 lds r27,(IntegralRoll)+3
8147 4e54 8093 0000 sts Mess_IntegralRoll2,r24
8148 4e58 9093 0000 sts (Mess_IntegralRoll2)+1,r25
8149 4e5c A093 0000 sts (Mess_IntegralRoll2)+2,r26
8150 4e60 B093 0000 sts (Mess_IntegralRoll2)+3,r27
8151 4e64 1092 0000 sts SummeNick.3067,__zero_reg__
8152 4e68 1092 0000 sts (SummeNick.3067)+1,__zero_reg__
8153 4e6c 1092 0000 sts (SummeNick.3067)+2,__zero_reg__
8154 4e70 1092 0000 sts (SummeNick.3067)+3,__zero_reg__
8155 4e74 1092 0000 sts SummeRoll.3068,__zero_reg__
8156 4e78 1092 0000 sts (SummeRoll.3068)+1,__zero_reg__
8157 4e7c 1092 0000 sts (SummeRoll.3068)+2,__zero_reg__
8158 4e80 1092 0000 sts (SummeRoll.3068)+3,__zero_reg__
8159 4e84 8091 0000 lds r24,MikroKopterFlags
8160 4e88 8860 ori r24,lo8(8)
8161 4e8a 8093 0000 sts MikroKopterFlags,r24
8162 4e8e 0C94 0000 jmp .L720
8163 .L990:
8164 4e92 ADA5 ldd r26,Y+45
8165 4e94 BEA5 ldd r27,Y+46
8166 4e96 B093 0000 sts (hoehenregler.3078)+1,r27
8167 4e9a A093 0000 sts hoehenregler.3078,r26
8168 4e9e 0C94 0000 jmp .L992
8169 .L803:
8170 4ea2 E090 0000 lds r14,EE_Parameter+20
8171 4ea6 FF24 clr r15
8172 4ea8 00E0 ldi r16,lo8(0)
8173 4eaa 10E0 ldi r17,hi8(0)
8174 4eac 6981 ldd r22,Y+1
8175 4eae 7A81 ldd r23,Y+2
8176 4eb0 8B81 ldd r24,Y+3
8177 4eb2 9C81 ldd r25,Y+4
8178 4eb4 A801 movw r20,r16
8179 4eb6 9701 movw r18,r14
8180 4eb8 0E94 0000 call __divmodsi4
8181 4ebc 5901 movw r10,r18
8182 4ebe 6A01 movw r12,r20
8183 4ec0 8091 0000 lds r24,Mittelwert_AccNick
8184 4ec4 9091 0000 lds r25,(Mittelwert_AccNick)+1
8185 4ec8 AA27 clr r26
8186 4eca 97FD sbrc r25,7
8187 4ecc A095 com r26
8188 4ece BA2F mov r27,r26
8189 4ed0 A81A sub r10,r24
8190 4ed2 B90A sbc r11,r25
8191 4ed4 CA0A sbc r12,r26
8192 4ed6 DB0A sbc r13,r27
8193 4ed8 6D81 ldd r22,Y+5
8194 4eda 7E81 ldd r23,Y+6
8195 4edc 8F81 ldd r24,Y+7
8196 4ede 9885 ldd r25,Y+8
8197 4ee0 A801 movw r20,r16
8198 4ee2 9701 movw r18,r14
8199 4ee4 0E94 0000 call __divmodsi4
8200 4ee8 7901 movw r14,r18
8201 4eea 8A01 movw r16,r20
8202 4eec 8091 0000 lds r24,Mittelwert_AccRoll
8203 4ef0 9091 0000 lds r25,(Mittelwert_AccRoll)+1
8204 4ef4 AA27 clr r26
8205 4ef6 97FD sbrc r25,7
8206 4ef8 A095 com r26
8207 4efa BA2F mov r27,r26
8208 4efc E81A sub r14,r24
8209 4efe F90A sbc r15,r25
8210 4f00 0A0B sbc r16,r26
8211 4f02 1B0B sbc r17,r27
8212 4f04 C601 movw r24,r12
8213 4f06 B501 movw r22,r10
8214 4f08 20E1 ldi r18,lo8(16)
8215 4f0a 30E0 ldi r19,hi8(16)
8216 4f0c 40E0 ldi r20,hlo8(16)
8217 4f0e 50E0 ldi r21,hhi8(16)
8218 4f10 0E94 0000 call __divmodsi4
8219 4f14 3901 movw r6,r18
8220 4f16 4A01 movw r8,r20
8221 4f18 C801 movw r24,r16
8222 4f1a B701 movw r22,r14
8223 4f1c 20E1 ldi r18,lo8(16)
8224 4f1e 30E0 ldi r19,hi8(16)
8225 4f20 40E0 ldi r20,hlo8(16)
8226 4f22 50E0 ldi r21,hhi8(16)
8227 4f24 0E94 0000 call __divmodsi4
8228 4f28 5901 movw r10,r18
8229 4f2a 6A01 movw r12,r20
8230 4f2c 8091 0000 lds r24,MaxStickNick
8231 4f30 9091 0000 lds r25,(MaxStickNick)+1
8232 4f34 8134 cpi r24,65
8233 4f36 9105 cpc r25,__zero_reg__
8234 4f38 04F4 brge .L816
8235 4f3a 8091 0000 lds r24,MaxStickRoll
8236 4f3e 9091 0000 lds r25,(MaxStickRoll)+1
8237 4f42 8134 cpi r24,65
8238 4f44 9105 cpc r25,__zero_reg__
8239 4f46 04F0 brlt .L818
8240 .L816:
8241 4f48 C401 movw r24,r8
8242 4f4a B301 movw r22,r6
8243 4f4c 23E0 ldi r18,lo8(3)
8244 4f4e 30E0 ldi r19,hi8(3)
8245 4f50 40E0 ldi r20,hlo8(3)
8246 4f52 50E0 ldi r21,hhi8(3)
8247 4f54 0E94 0000 call __divmodsi4
8248 4f58 3901 movw r6,r18
8249 4f5a 4A01 movw r8,r20
8250 4f5c C601 movw r24,r12
8251 4f5e B501 movw r22,r10
8252 4f60 23E0 ldi r18,lo8(3)
8253 4f62 30E0 ldi r19,hi8(3)
8254 4f64 40E0 ldi r20,hlo8(3)
8255 4f66 50E0 ldi r21,hhi8(3)
8256 4f68 0E94 0000 call __divmodsi4
8257 4f6c 5901 movw r10,r18
8258 4f6e 6A01 movw r12,r20
8259 .L818:
8260 4f70 E091 0000 lds r30,EE_Parameter+3
8261 4f74 F0E0 ldi r31,lo8(0)
8262 4f76 EE0F lsl r30
8263 4f78 FF1F rol r31
8264 4f7a E050 subi r30,lo8(-(PPM_in))
8265 4f7c F040 sbci r31,hi8(-(PPM_in))
8266 4f7e 0190 ld __tmp_reg__,Z+
8267 4f80 F081 ld r31,Z
8268 4f82 E02D mov r30,__tmp_reg__
8269 4f84 F7FD sbrc r31,7
8270 4f86 00C0 rjmp .L1117
8271 .L820:
8272 4f88 7A97 sbiw r30,26
8273 4f8a 04F0 brlt .L819
8274 4f8c C401 movw r24,r8
8275 4f8e B301 movw r22,r6
8276 4f90 23E0 ldi r18,lo8(3)
8277 4f92 30E0 ldi r19,hi8(3)
8278 4f94 40E0 ldi r20,hlo8(3)
8279 4f96 50E0 ldi r21,hhi8(3)
8280 4f98 0E94 0000 call __divmodsi4
8281 4f9c 3901 movw r6,r18
8282 4f9e 4A01 movw r8,r20
8283 4fa0 C601 movw r24,r12
8284 4fa2 B501 movw r22,r10
8285 4fa4 23E0 ldi r18,lo8(3)
8286 4fa6 30E0 ldi r19,hi8(3)
8287 4fa8 40E0 ldi r20,hlo8(3)
8288 4faa 50E0 ldi r21,hhi8(3)
8289 4fac 0E94 0000 call __divmodsi4
8290 4fb0 5901 movw r10,r18
8291 4fb2 6A01 movw r12,r20
8292 .L819:
8293 4fb4 71E2 ldi r23,lo8(33)
8294 4fb6 6716 cp r6,r23
8295 4fb8 7104 cpc r7,__zero_reg__
8296 4fba 8104 cpc r8,__zero_reg__
8297 4fbc 9104 cpc r9,__zero_reg__
8298 4fbe 04F4 brge .+2
8299 4fc0 00C0 rjmp .L822
8300 4fc2 80E2 ldi r24,lo8(32)
8301 4fc4 682E mov r6,r24
8302 4fc6 712C mov r7,__zero_reg__
8303 4fc8 812C mov r8,__zero_reg__
8304 4fca 912C mov r9,__zero_reg__
8305 .L824:
8306 4fcc 91E2 ldi r25,lo8(33)
8307 4fce A916 cp r10,r25
8308 4fd0 B104 cpc r11,__zero_reg__
8309 4fd2 C104 cpc r12,__zero_reg__
8310 4fd4 D104 cpc r13,__zero_reg__
8311 4fd6 04F4 brge .+2
8312 4fd8 00C0 rjmp .L826
8313 4fda 10E2 ldi r17,lo8(32)
8314 4fdc A12E mov r10,r17
8315 4fde B12C mov r11,__zero_reg__
8316 4fe0 C12C mov r12,__zero_reg__
8317 4fe2 D12C mov r13,__zero_reg__
8318 4fe4 00C0 rjmp .L814
8319 .L1096:
8320 4fe6 8091 0000 lds r24,MessLuftdruck
8321 4fea 9091 0000 lds r25,(MessLuftdruck)+1
8322 4fee 895E subi r24,lo8(1001)
8323 4ff0 9340 sbci r25,hi8(1001)
8324 4ff2 00F4 brsh .+2
8325 4ff4 00C0 rjmp .L975
8326 4ff6 9091 0000 lds r25,ExpandBaro
8327 4ffa 9A50 subi r25,lo8(-(-10))
8328 .L1054:
8329 4ffc 9093 0000 sts ExpandBaro,r25
8330 5000 8091 0000 lds r24,DruckOffsetSetting
8331 5004 891B sub r24,r25
8332 5006 87BD out 71-0x20,r24
8333 5008 8CE2 ldi r24,lo8(300)
8334 500a 91E0 ldi r25,hi8(300)
8335 500c 9093 0000 sts (beeptime)+1,r25
8336 5010 8093 0000 sts beeptime,r24
8337 5014 8AEF ldi r24,lo8(-6)
8338 5016 8093 0000 sts delay.3112,r24
8339 501a 2091 0000 lds r18,HoehenWert
8340 501e 3091 0000 lds r19,(HoehenWert)+1
8341 5022 00C0 rjmp .L973
8342 .L1109:
8343 5024 0396 adiw r24,3
8344 5026 00C0 rjmp .L983
8345 .L1111:
8346 5028 215F subi r18,lo8(-(15))
8347 502a 3F4F sbci r19,hi8(-(15))
8348 502c 00C0 rjmp .L987
8349 .L1110:
8350 502e 2F5F subi r18,lo8(-(1))
8351 5030 3F4F sbci r19,hi8(-(1))
8352 5032 00C0 rjmp .L985
8353 .L873:
8354 5034 21E0 ldi r18,lo8(4097)
8355 5036 A216 cp r10,r18
8356 5038 20E1 ldi r18,hi8(4097)
8357 503a B206 cpc r11,r18
8358 503c 20E0 ldi r18,hlo8(4097)
8359 503e C206 cpc r12,r18
8360 5040 20E0 ldi r18,hhi8(4097)
8361 5042 D206 cpc r13,r18
8362 5044 04F4 brge .+2
8363 5046 00C0 rjmp .L876
8364 5048 8091 0000 lds r24,last_r_p.3102
8365 504c 8823 tst r24
8366 504e 01F4 brne .+2
8367 5050 00C0 rjmp .L878
8368 5052 D601 movw r26,r12
8369 5054 C501 movw r24,r10
8370 5056 49E0 ldi r20,9
8371 5058 B595 1: asr r27
8372 505a A795 ror r26
8373 505c 9795 ror r25
8374 505e 8795 ror r24
8375 5060 4A95 dec r20
8376 5062 01F4 brne 1b
8377 5064 0196 adiw r24,1
8378 5066 9093 0000 sts (cnt.3099)+1,r25
8379 506a 8093 0000 sts cnt.3099,r24
8380 506e D601 movw r26,r12
8381 5070 C501 movw r24,r10
8382 5072 33E0 ldi r19,3
8383 5074 B595 1: asr r27
8384 5076 A795 ror r26
8385 5078 9795 ror r25
8386 507a 8795 ror r24
8387 507c 3A95 dec r19
8388 507e 01F4 brne 1b
8389 5080 8093 0000 sts ausgleichRoll.3090,r24
8390 5084 9093 0000 sts (ausgleichRoll.3090)+1,r25
8391 5088 A093 0000 sts (ausgleichRoll.3090)+2,r26
8392 508c B093 0000 sts (ausgleichRoll.3090)+3,r27
8393 5090 8958 subi r24,lo8(5001)
8394 5092 9341 sbci r25,hi8(5001)
8395 5094 A040 sbci r26,hlo8(5001)
8396 5096 B040 sbci r27,hhi8(5001)
8397 5098 04F0 brlt .L880
8398 509a 88E8 ldi r24,lo8(5000)
8399 509c 93E1 ldi r25,hi8(5000)
8400 509e A0E0 ldi r26,hlo8(5000)
8401 50a0 B0E0 ldi r27,hhi8(5000)
8402 50a2 8093 0000 sts ausgleichRoll.3090,r24
8403 50a6 9093 0000 sts (ausgleichRoll.3090)+1,r25
8404 50aa A093 0000 sts (ausgleichRoll.3090)+2,r26
8405 50ae B093 0000 sts (ausgleichRoll.3090)+3,r27
8406 .L880:
8407 50b2 6091 0000 lds r22,ausgleichRoll.3090
8408 50b6 7091 0000 lds r23,(ausgleichRoll.3090)+1
8409 50ba 8091 0000 lds r24,(ausgleichRoll.3090)+2
8410 50be 9091 0000 lds r25,(ausgleichRoll.3090)+3
8411 50c2 20E0 ldi r18,lo8(256)
8412 50c4 31E0 ldi r19,hi8(256)
8413 50c6 40E0 ldi r20,hlo8(256)
8414 50c8 50E0 ldi r21,hhi8(256)
8415 50ca 0E94 0000 call __divmodsi4
8416 50ce 8091 0000 lds r24,LageKorrekturRoll
8417 50d2 9091 0000 lds r25,(LageKorrekturRoll)+1
8418 50d6 820F add r24,r18
8419 50d8 931F adc r25,r19
8420 50da 9093 0000 sts (LageKorrekturRoll)+1,r25
8421 50de 8093 0000 sts LageKorrekturRoll,r24
8422 .L882:
8423 50e2 1092 0000 sts last_r_n.3103,__zero_reg__
8424 50e6 00C0 rjmp .L888
8425 .L1047:
8426 50e8 9090 0000 lds r9,FromNaviCtrl_Value+1
8427 .L848:
8428 50ec 51E0 ldi r21,lo8(4097)
8429 50ee E516 cp r14,r21
8430 50f0 50E1 ldi r21,hi8(4097)
8431 50f2 F506 cpc r15,r21
8432 50f4 50E0 ldi r21,hlo8(4097)
8433 50f6 0507 cpc r16,r21
8434 50f8 50E0 ldi r21,hhi8(4097)
8435 50fa 1507 cpc r17,r21
8436 50fc 04F4 brge .+2
8437 50fe 00C0 rjmp .L851
8438 5100 8091 0000 lds r24,last_n_p.3100
8439 5104 8823 tst r24
8440 5106 01F4 brne .+2
8441 5108 00C0 rjmp .L853
8442 510a D801 movw r26,r16
8443 510c C701 movw r24,r14
8444 510e 79E0 ldi r23,9
8445 5110 B595 1: asr r27
8446 5112 A795 ror r26
8447 5114 9795 ror r25
8448 5116 8795 ror r24
8449 5118 7A95 dec r23
8450 511a 01F4 brne 1b
8451 511c 0196 adiw r24,1
8452 511e 9093 0000 sts (cnt.3099)+1,r25
8453 5122 8093 0000 sts cnt.3099,r24
8454 5126 D801 movw r26,r16
8455 5128 C701 movw r24,r14
8456 512a 63E0 ldi r22,3
8457 512c B595 1: asr r27
8458 512e A795 ror r26
8459 5130 9795 ror r25
8460 5132 8795 ror r24
8461 5134 6A95 dec r22
8462 5136 01F4 brne 1b
8463 5138 8093 0000 sts ausgleichNick.3089,r24
8464 513c 9093 0000 sts (ausgleichNick.3089)+1,r25
8465 5140 A093 0000 sts (ausgleichNick.3089)+2,r26
8466 5144 B093 0000 sts (ausgleichNick.3089)+3,r27
8467 5148 8958 subi r24,lo8(5001)
8468 514a 9341 sbci r25,hi8(5001)
8469 514c A040 sbci r26,hlo8(5001)
8470 514e B040 sbci r27,hhi8(5001)
8471 5150 04F0 brlt .L855
8472 5152 88E8 ldi r24,lo8(5000)
8473 5154 93E1 ldi r25,hi8(5000)
8474 5156 A0E0 ldi r26,hlo8(5000)
8475 5158 B0E0 ldi r27,hhi8(5000)
8476 515a 8093 0000 sts ausgleichNick.3089,r24
8477 515e 9093 0000 sts (ausgleichNick.3089)+1,r25
8478 5162 A093 0000 sts (ausgleichNick.3089)+2,r26
8479 5166 B093 0000 sts (ausgleichNick.3089)+3,r27
8480 .L855:
8481 516a 6091 0000 lds r22,ausgleichNick.3089
8482 516e 7091 0000 lds r23,(ausgleichNick.3089)+1
8483 5172 8091 0000 lds r24,(ausgleichNick.3089)+2
8484 5176 9091 0000 lds r25,(ausgleichNick.3089)+3
8485 517a 20E0 ldi r18,lo8(256)
8486 517c 31E0 ldi r19,hi8(256)
8487 517e 40E0 ldi r20,hlo8(256)
8488 5180 50E0 ldi r21,hhi8(256)
8489 5182 0E94 0000 call __divmodsi4
8490 5186 8091 0000 lds r24,LageKorrekturNick
8491 518a 9091 0000 lds r25,(LageKorrekturNick)+1
8492 518e 820F add r24,r18
8493 5190 931F adc r25,r19
8494 5192 9093 0000 sts (LageKorrekturNick)+1,r25
8495 5196 8093 0000 sts LageKorrekturNick,r24
8496 .L857:
8497 519a 1092 0000 sts last_n_n.3101,__zero_reg__
8498 519e 00C0 rjmp .L863
8499 .L1106:
8500 51a0 F095 com r31
8501 51a2 E195 neg r30
8502 51a4 FF4F sbci r31,lo8(-1)
8503 51a6 0C94 0000 jmp .L809
8504 .L826:
8505 51aa A0EE ldi r26,lo8(-32)
8506 51ac AA16 cp r10,r26
8507 51ae AFEF ldi r26,hi8(-32)
8508 51b0 BA06 cpc r11,r26
8509 51b2 AFEF ldi r26,hlo8(-32)
8510 51b4 CA06 cpc r12,r26
8511 51b6 AFEF ldi r26,hhi8(-32)
8512 51b8 DA06 cpc r13,r26
8513 51ba 04F0 brlt .+4
8514 51bc 0C94 0000 jmp .L814
8515 51c0 B0EE ldi r27,lo8(-32)
8516 51c2 AB2E mov r10,r27
8517 51c4 BFEF ldi r27,hi8(-32)
8518 51c6 BB2E mov r11,r27
8519 51c8 BFEF ldi r27,hlo8(-32)
8520 51ca CB2E mov r12,r27
8521 51cc BFEF ldi r27,hhi8(-32)
8522 51ce DB2E mov r13,r27
8523 51d0 0C94 0000 jmp .L814
8524 .L822:
8525 51d4 80EE ldi r24,lo8(-32)
8526 51d6 6816 cp r6,r24
8527 51d8 8FEF ldi r24,hi8(-32)
8528 51da 7806 cpc r7,r24
8529 51dc 8FEF ldi r24,hlo8(-32)
8530 51de 8806 cpc r8,r24
8531 51e0 8FEF ldi r24,hhi8(-32)
8532 51e2 9806 cpc r9,r24
8533 51e4 04F0 brlt .+2
8534 51e6 00C0 rjmp .L824
8535 51e8 00EE ldi r16,lo8(-32)
8536 51ea 602E mov r6,r16
8537 51ec 0FEF ldi r16,hi8(-32)
8538 51ee 702E mov r7,r16
8539 51f0 0FEF ldi r16,hlo8(-32)
8540 51f2 802E mov r8,r16
8541 51f4 0FEF ldi r16,hhi8(-32)
8542 51f6 902E mov r9,r16
8543 51f8 00C0 rjmp .L824
8544 .L1069:
8545 51fa 87E0 ldi r24,lo8(7)
8546 51fc 90E0 ldi r25,hi8(7)
8547 51fe 680E add r6,r24
8548 5200 791E adc r7,r25
8549 5202 0C94 0000 jmp .L929
8550 .L975:
8551 5206 8091 0000 lds r24,MessLuftdruck
8552 520a 9091 0000 lds r25,(MessLuftdruck)+1
8553 520e 8436 cpi r24,100
8554 5210 9105 cpc r25,__zero_reg__
8555 5212 00F0 brlo .+2
8556 5214 00C0 rjmp .L977
8557 5216 9091 0000 lds r25,ExpandBaro
8558 521a 965F subi r25,lo8(-(10))
8559 521c 00C0 rjmp .L1054
8560 .L708:
8561 521e 1092 0000 sts delay_neutral.3075,__zero_reg__
8562 5222 0C94 0000 jmp .L671
8563 .L851:
8564 5226 1092 0000 sts last_n_p.3100,__zero_reg__
8565 522a 70E0 ldi r23,lo8(-4096)
8566 522c E716 cp r14,r23
8567 522e 70EF ldi r23,hi8(-4096)
8568 5230 F706 cpc r15,r23
8569 5232 7FEF ldi r23,hlo8(-4096)
8570 5234 0707 cpc r16,r23
8571 5236 7FEF ldi r23,hhi8(-4096)
8572 5238 1707 cpc r17,r23
8573 523a 04F0 brlt .+2
8574 523c 00C0 rjmp .L857
8575 523e 8091 0000 lds r24,last_n_n.3101
8576 5242 8823 tst r24
8577 5244 01F4 brne .+2
8578 5246 00C0 rjmp .L859
8579 5248 8827 clr r24
8580 524a 9927 clr r25
8581 524c DC01 movw r26,r24
8582 524e 8E19 sub r24,r14
8583 5250 9F09 sbc r25,r15
8584 5252 A00B sbc r26,r16
8585 5254 B10B sbc r27,r17
8586 5256 59E0 ldi r21,9
8587 5258 B595 1: asr r27
8588 525a A795 ror r26
8589 525c 9795 ror r25
8590 525e 8795 ror r24
8591 5260 5A95 dec r21
8592 5262 01F4 brne 1b
8593 5264 0196 adiw r24,1
8594 5266 9093 0000 sts (cnt.3099)+1,r25
8595 526a 8093 0000 sts cnt.3099,r24
8596 526e C801 movw r24,r16
8597 5270 B701 movw r22,r14
8598 5272 28E0 ldi r18,lo8(8)
8599 5274 30E0 ldi r19,hi8(8)
8600 5276 40E0 ldi r20,hlo8(8)
8601 5278 50E0 ldi r21,hhi8(8)
8602 527a 0E94 0000 call __divmodsi4
8603 527e 2093 0000 sts ausgleichNick.3089,r18
8604 5282 3093 0000 sts (ausgleichNick.3089)+1,r19
8605 5286 4093 0000 sts (ausgleichNick.3089)+2,r20
8606 528a 5093 0000 sts (ausgleichNick.3089)+3,r21
8607 528e 2857 subi r18,lo8(-5000)
8608 5290 3C4E sbci r19,hi8(-5000)
8609 5292 4F4F sbci r20,hlo8(-5000)
8610 5294 5F4F sbci r21,hhi8(-5000)
8611 5296 04F4 brge .L861
8612 5298 88E7 ldi r24,lo8(-5000)
8613 529a 9CEE ldi r25,hi8(-5000)
8614 529c AFEF ldi r26,hlo8(-5000)
8615 529e BFEF ldi r27,hhi8(-5000)
8616 52a0 8093 0000 sts ausgleichNick.3089,r24
8617 52a4 9093 0000 sts (ausgleichNick.3089)+1,r25
8618 52a8 A093 0000 sts (ausgleichNick.3089)+2,r26
8619 52ac B093 0000 sts (ausgleichNick.3089)+3,r27
8620 .L861:
8621 52b0 6091 0000 lds r22,ausgleichNick.3089
8622 52b4 7091 0000 lds r23,(ausgleichNick.3089)+1
8623 52b8 8091 0000 lds r24,(ausgleichNick.3089)+2
8624 52bc 9091 0000 lds r25,(ausgleichNick.3089)+3
8625 52c0 20E0 ldi r18,lo8(256)
8626 52c2 31E0 ldi r19,hi8(256)
8627 52c4 40E0 ldi r20,hlo8(256)
8628 52c6 50E0 ldi r21,hhi8(256)
8629 52c8 0E94 0000 call __divmodsi4
8630 52cc 8091 0000 lds r24,LageKorrekturNick
8631 52d0 9091 0000 lds r25,(LageKorrekturNick)+1
8632 52d4 820F add r24,r18
8633 52d6 931F adc r25,r19
8634 52d8 9093 0000 sts (LageKorrekturNick)+1,r25
8635 52dc 8093 0000 sts LageKorrekturNick,r24
8636 52e0 00C0 rjmp .L863
8637 .L876:
8638 52e2 1092 0000 sts last_r_p.3102,__zero_reg__
8639 52e6 40E0 ldi r20,lo8(-4096)
8640 52e8 A416 cp r10,r20
8641 52ea 40EF ldi r20,hi8(-4096)
8642 52ec B406 cpc r11,r20
8643 52ee 4FEF ldi r20,hlo8(-4096)
8644 52f0 C406 cpc r12,r20
8645 52f2 4FEF ldi r20,hhi8(-4096)
8646 52f4 D406 cpc r13,r20
8647 52f6 04F0 brlt .+2
8648 52f8 00C0 rjmp .L882
8649 52fa 8091 0000 lds r24,last_r_n.3103
8650 52fe 8823 tst r24
8651 5300 01F4 brne .+2
8652 5302 00C0 rjmp .L884
8653 5304 8827 clr r24
8654 5306 9927 clr r25
8655 5308 DC01 movw r26,r24
8656 530a 8A19 sub r24,r10
8657 530c 9B09 sbc r25,r11
8658 530e AC09 sbc r26,r12
8659 5310 BD09 sbc r27,r13
8660 5312 29E0 ldi r18,9
8661 5314 B595 1: asr r27
8662 5316 A795 ror r26
8663 5318 9795 ror r25
8664 531a 8795 ror r24
8665 531c 2A95 dec r18
8666 531e 01F4 brne 1b
8667 5320 0196 adiw r24,1
8668 5322 9093 0000 sts (cnt.3099)+1,r25
8669 5326 8093 0000 sts cnt.3099,r24
8670 532a C601 movw r24,r12
8671 532c B501 movw r22,r10
8672 532e 28E0 ldi r18,lo8(8)
8673 5330 30E0 ldi r19,hi8(8)
8674 5332 40E0 ldi r20,hlo8(8)
8675 5334 50E0 ldi r21,hhi8(8)
8676 5336 0E94 0000 call __divmodsi4
8677 533a 2093 0000 sts ausgleichRoll.3090,r18
8678 533e 3093 0000 sts (ausgleichRoll.3090)+1,r19
8679 5342 4093 0000 sts (ausgleichRoll.3090)+2,r20
8680 5346 5093 0000 sts (ausgleichRoll.3090)+3,r21
8681 534a 2857 subi r18,lo8(-5000)
8682 534c 3C4E sbci r19,hi8(-5000)
8683 534e 4F4F sbci r20,hlo8(-5000)
8684 5350 5F4F sbci r21,hhi8(-5000)
8685 5352 04F4 brge .L886
8686 5354 88E7 ldi r24,lo8(-5000)
8687 5356 9CEE ldi r25,hi8(-5000)
8688 5358 AFEF ldi r26,hlo8(-5000)
8689 535a BFEF ldi r27,hhi8(-5000)
8690 535c 8093 0000 sts ausgleichRoll.3090,r24
8691 5360 9093 0000 sts (ausgleichRoll.3090)+1,r25
8692 5364 A093 0000 sts (ausgleichRoll.3090)+2,r26
8693 5368 B093 0000 sts (ausgleichRoll.3090)+3,r27
8694 .L886:
8695 536c 6091 0000 lds r22,ausgleichRoll.3090
8696 5370 7091 0000 lds r23,(ausgleichRoll.3090)+1
8697 5374 8091 0000 lds r24,(ausgleichRoll.3090)+2
8698 5378 9091 0000 lds r25,(ausgleichRoll.3090)+3
8699 537c 20E0 ldi r18,lo8(256)
8700 537e 31E0 ldi r19,hi8(256)
8701 5380 40E0 ldi r20,hlo8(256)
8702 5382 50E0 ldi r21,hhi8(256)
8703 5384 0E94 0000 call __divmodsi4
8704 5388 8091 0000 lds r24,LageKorrekturRoll
8705 538c 9091 0000 lds r25,(LageKorrekturRoll)+1
8706 5390 820F add r24,r18
8707 5392 931F adc r25,r19
8708 5394 9093 0000 sts (LageKorrekturRoll)+1,r25
8709 5398 8093 0000 sts LageKorrekturRoll,r24
8710 539c 00C0 rjmp .L888
8711 .L700:
8712 539e 0E94 0000 call GetActiveParamSetNumber
8713 53a2 4CE5 ldi r20,lo8(92)
8714 53a4 60E0 ldi r22,lo8(EE_Parameter)
8715 53a6 70E0 ldi r23,hi8(EE_Parameter)
8716 53a8 0E94 0000 call ReadParameterSet
8717 53ac 8091 0000 lds r24,EE_Parameter+8
8718 53b0 80FF sbrs r24,0
8719 53b2 00C0 rjmp .L704
8720 53b4 8091 0000 lds r24,MessLuftdruck
8721 53b8 9091 0000 lds r25,(MessLuftdruck)+1
8722 53bc 875B subi r24,lo8(951)
8723 53be 9340 sbci r25,hi8(951)
8724 53c0 00F4 brsh .L706
8725 53c2 8091 0000 lds r24,MessLuftdruck
8726 53c6 9091 0000 lds r25,(MessLuftdruck)+1
8727 53ca 8E5E subi r24,lo8(750)
8728 53cc 9240 sbci r25,hi8(750)
8729 53ce 00F4 brsh .L704
8730 .L706:
8731 53d0 0E94 0000 call SucheLuftruckOffset
8732 .L704:
8733 53d4 0E94 0000 call SetNeutral
8734 53d8 00C0 rjmp .L1053
8735 .L1117:
8736 53da F095 com r31
8737 53dc E195 neg r30
8738 53de FF4F sbci r31,lo8(-1)
8739 53e0 00C0 rjmp .L820
8740 .L977:
8741 53e2 2091 0000 lds r18,HoehenWert
8742 53e6 3091 0000 lds r19,(HoehenWert)+1
8743 53ea 2451 subi r18,lo8(-(-20))
8744 53ec 3040 sbci r19,hi8(-(-20))
8745 53ee 3093 0000 sts (SollHoehe)+1,r19
8746 53f2 2093 0000 sts SollHoehe,r18
8747 53f6 2C5E subi r18,lo8(-(20))
8748 53f8 3F4F sbci r19,hi8(-(20))
8749 53fa 1092 0000 sts HoehenReglerAktiv,__zero_reg__
8750 53fe 81E0 ldi r24,lo8(1)
8751 5400 8093 0000 sts delay.3112,r24
8752 5404 0C94 0000 jmp .L973
8753 .L687:
8754 5408 41E0 ldi r20,lo8(1)
8755 540a 0C94 0000 jmp .L690
8756 .L1113:
8757 540e 9601 movw r18,r12
8758 5410 D7FC sbrc r13,7
8759 5412 00C0 rjmp .L1118
8760 .L842:
8761 5414 3595 asr r19
8762 5416 2795 ror r18
8763 5418 3093 0000 sts (LageKorrekturNick)+1,r19
8764 541c 2093 0000 sts LageKorrekturNick,r18
8765 5420 9B01 movw r18,r22
8766 5422 77FD sbrc r23,7
8767 5424 00C0 rjmp .L1119
8768 .L843:
8769 5426 3595 asr r19
8770 5428 2795 ror r18
8771 542a 3093 0000 sts (LageKorrekturRoll)+1,r19
8772 542e 2093 0000 sts LageKorrekturRoll,r18
8773 5432 00C0 rjmp .L839
8774 .L680:
8775 5434 8091 0000 lds r24,EE_Parameter+1
8776 5438 A82F mov r26,r24
8777 543a B0E0 ldi r27,lo8(0)
8778 543c AA0F lsl r26
8779 543e BB1F rol r27
8780 5440 FD01 movw r30,r26
8781 5442 E050 subi r30,lo8(-(PPM_in))
8782 5444 F040 sbci r31,hi8(-(PPM_in))
8783 5446 0190 ld __tmp_reg__,Z+
8784 5448 F081 ld r31,Z
8785 544a E02D mov r30,__tmp_reg__
8786 544c F7FD sbrc r31,7
8787 544e 00C0 rjmp .L1120
8788 .L684:
8789 5450 E734 cpi r30,71
8790 5452 F105 cpc r31,__zero_reg__
8791 5454 04F4 brge .+4
8792 5456 0C94 0000 jmp .L683
8793 545a 0C94 0000 jmp .L682
8794 .L677:
8795 545e 299A sbi 37-0x20,1
8796 5460 0C94 0000 jmp .L679
8797 .L853:
8798 5464 81E0 ldi r24,lo8(1)
8799 5466 8093 0000 sts last_n_p.3100,r24
8800 546a 00C0 rjmp .L857
8801 .L878:
8802 546c 81E0 ldi r24,lo8(1)
8803 546e 8093 0000 sts last_r_p.3102,r24
8804 5472 00C0 rjmp .L882
8805 .L711:
8806 5474 299A sbi 37-0x20,1
8807 5476 00C0 rjmp .L713
8808 .L1071:
8809 5478 9095 com r25
8810 547a 8195 neg r24
8811 547c 9F4F sbci r25,lo8(-1)
8812 547e 0C94 0000 jmp .L701
8813 .L884:
8814 5482 81E0 ldi r24,lo8(1)
8815 5484 8093 0000 sts last_r_n.3103,r24
8816 5488 00C0 rjmp .L888
8817 .L859:
8818 548a 81E0 ldi r24,lo8(1)
8819 548c 8093 0000 sts last_n_n.3101,r24
8820 5490 00C0 rjmp .L863
8821 .L1119:
8822 5492 2F5F subi r18,lo8(-(1))
8823 5494 3F4F sbci r19,hi8(-(1))
8824 5496 00C0 rjmp .L843
8825 .L1118:
8826 5498 2F5F subi r18,lo8(-(1))
8827 549a 3F4F sbci r19,hi8(-(1))
8828 549c 00C0 rjmp .L842
8829 .L1112:
8830 549e F095 com r31
8831 54a0 E195 neg r30
8832 54a2 FF4F sbci r31,lo8(-1)
8833 54a4 00C0 rjmp .L840
8834 .L1115:
8835 54a6 2150 subi r18,lo8(-(255))
8836 54a8 3F4F sbci r19,hi8(-(255))
8837 54aa 00C0 rjmp .L715
8838 .L1114:
8839 54ac 8150 subi r24,lo8(-(255))
8840 54ae 9F4F sbci r25,hi8(-(255))
8841 54b0 00C0 rjmp .L714
8842 .L1116:
8843 54b2 2150 subi r18,lo8(-(255))
8844 54b4 3F4F sbci r19,hi8(-(255))
8845 54b6 00C0 rjmp .L716
8846 .L1120:
8847 54b8 F095 com r31
8848 54ba E195 neg r30
8849 54bc FF4F sbci r31,lo8(-1)
8850 54be 00C0 rjmp .L684
8851 .L1041:
8852 54c0 6092 0000 sts Motor_Rechts,r6
8853 /* epilogue: frame size=46 */
8854 54c4 AE96 adiw r28,46
8855 54c6 0FB6 in __tmp_reg__,__SREG__
8856 54c8 F894 cli
8857 54ca DEBF out __SP_H__,r29
8858 54cc 0FBE out __SREG__,__tmp_reg__
8859 54ce CDBF out __SP_L__,r28
8860 54d0 DF91 pop r29
8861 54d2 CF91 pop r28
8862 54d4 1F91 pop r17
8863 54d6 0F91 pop r16
8864 54d8 FF90 pop r15
8865 54da EF90 pop r14
8866 54dc DF90 pop r13
8867 54de CF90 pop r12
8868 54e0 BF90 pop r11
8869 54e2 AF90 pop r10
8870 54e4 9F90 pop r9
8871 54e6 8F90 pop r8
8872 54e8 7F90 pop r7
8873 54ea 6F90 pop r6
8874 54ec 5F90 pop r5
8875 54ee 4F90 pop r4
8876 54f0 3F90 pop r3
8877 54f2 2F90 pop r2
8878 54f4 0895 ret
8879 /* epilogue end (size=25) */
8880 /* function MotorRegler size 5990 (5939) */
8882 .global I2CTimeout
8883 .data
8886 I2CTimeout:
8887 0019 6400 .word 100
8888 .global AdNeutralNick
8889 .global AdNeutralNick
8890 .section .bss
8893 AdNeutralNick:
8894 0000 0000 .skip 2,0
8895 .global AdNeutralRoll
8896 .global AdNeutralRoll
8899 AdNeutralRoll:
8900 0002 0000 .skip 2,0
8901 .global AdNeutralGier
8902 .global AdNeutralGier
8905 AdNeutralGier:
8906 0004 0000 .skip 2,0
8907 .global StartNeutralRoll
8908 .global StartNeutralRoll
8911 StartNeutralRoll:
8912 0006 0000 .skip 2,0
8913 .global StartNeutralNick
8914 .global StartNeutralNick
8917 StartNeutralNick:
8918 0008 0000 .skip 2,0
8919 .global NeutralAccX
8920 .global NeutralAccX
8923 NeutralAccX:
8924 000a 0000 .skip 2,0
8925 .global NeutralAccY
8926 .global NeutralAccY
8929 NeutralAccY:
8930 000c 0000 .skip 2,0
8931 .global NaviCntAcc
8932 .global NaviCntAcc
8935 NaviCntAcc:
8936 000e 0000 .skip 2,0
8937 .global NeutralAccZ
8938 .global NeutralAccZ
8941 NeutralAccZ:
8942 0010 0000 0000 .skip 4,0
8943 .global CosinusNickWinkel
8944 .global CosinusNickWinkel
8947 CosinusNickWinkel:
8948 0014 00 .skip 1,0
8949 .global CosinusRollWinkel
8950 .global CosinusRollWinkel
8953 CosinusRollWinkel:
8954 0015 00 .skip 1,0
8955 .global IntegralNick
8956 .global IntegralNick
8959 IntegralNick:
8960 0016 0000 0000 .skip 4,0
8961 .global IntegralNick2
8962 .global IntegralNick2
8965 IntegralNick2:
8966 001a 0000 0000 .skip 4,0
8967 .global IntegralRoll
8968 .global IntegralRoll
8971 IntegralRoll:
8972 001e 0000 0000 .skip 4,0
8973 .global IntegralRoll2
8974 .global IntegralRoll2
8977 IntegralRoll2:
8978 0022 0000 0000 .skip 4,0
8979 .global IntegralAccNick
8980 .global IntegralAccNick
8983 IntegralAccNick:
8984 0026 0000 0000 .skip 4,0
8985 .global IntegralAccRoll
8986 .global IntegralAccRoll
8989 IntegralAccRoll:
8990 002a 0000 0000 .skip 4,0
8991 .global IntegralAccZ
8992 .global IntegralAccZ
8995 IntegralAccZ:
8996 002e 0000 0000 .skip 4,0
8997 .global Integral_Gier
8998 .global Integral_Gier
9001 Integral_Gier:
9002 0032 0000 0000 .skip 4,0
9003 .global Mess_IntegralNick
9004 .global Mess_IntegralNick
9007 Mess_IntegralNick:
9008 0036 0000 0000 .skip 4,0
9009 .global Mess_IntegralNick2
9010 .global Mess_IntegralNick2
9013 Mess_IntegralNick2:
9014 003a 0000 0000 .skip 4,0
9015 .global Mess_IntegralRoll
9016 .global Mess_IntegralRoll
9019 Mess_IntegralRoll:
9020 003e 0000 0000 .skip 4,0
9021 .global Mess_IntegralRoll2
9022 .global Mess_IntegralRoll2
9025 Mess_IntegralRoll2:
9026 0042 0000 0000 .skip 4,0
9027 .global Mess_Integral_Gier
9028 .global Mess_Integral_Gier
9031 Mess_Integral_Gier:
9032 0046 0000 0000 .skip 4,0
9033 .global Mess_Integral_Gier2
9034 .global Mess_Integral_Gier2
9037 Mess_Integral_Gier2:
9038 004a 0000 0000 .skip 4,0
9039 .global Mess_Integral_Hoch
9040 .global Mess_Integral_Hoch
9043 Mess_Integral_Hoch:
9044 004e 0000 0000 .skip 4,0
9045 .global KompassValue
9046 .global KompassValue
9049 KompassValue:
9050 0052 0000 .skip 2,0
9051 .global KompassStartwert
9052 .global KompassStartwert
9055 KompassStartwert:
9056 0054 0000 .skip 2,0
9057 .global KompassRichtung
9058 .global KompassRichtung
9061 KompassRichtung:
9062 0056 0000 .skip 2,0
9063 .global KompassSignalSchlecht
9064 .data
9067 KompassSignalSchlecht:
9068 001b F401 .word 500
9069 .global Notlandung
9070 .global Notlandung
9071 .section .bss
9074 Notlandung:
9075 0058 00 .skip 1,0
9076 .global HoehenReglerAktiv
9077 .global HoehenReglerAktiv
9080 HoehenReglerAktiv:
9081 0059 00 .skip 1,0
9082 .global TrichterFlug
9083 .global TrichterFlug
9086 TrichterFlug:
9087 005a 00 .skip 1,0
9088 .global Umschlag180Nick
9089 .data
9092 Umschlag180Nick:
9093 001d 90 .byte -112
9094 001e D0 .byte -48
9095 001f 03 .byte 3
9096 0020 00 .byte 0
9097 .global Umschlag180Roll
9100 Umschlag180Roll:
9101 0021 90 .byte -112
9102 0022 D0 .byte -48
9103 0023 03 .byte 3
9104 0024 00 .byte 0
9105 .global GierGyroFehler
9106 .global GierGyroFehler
9107 .section .bss
9110 GierGyroFehler:
9111 005b 0000 .skip 2,0
9112 .global Poti1
9113 .global Poti1
9116 Poti1:
9117 005d 0000 .skip 2,0
9118 .global Poti2
9119 .global Poti2
9122 Poti2:
9123 005f 0000 .skip 2,0
9124 .global Poti3
9125 .global Poti3
9128 Poti3:
9129 0061 0000 .skip 2,0
9130 .global Poti4
9131 .global Poti4
9134 Poti4:
9135 0063 0000 .skip 2,0
9136 .global SenderOkay
9137 .global SenderOkay
9140 SenderOkay:
9141 0065 00 .skip 1,0
9142 .global StickNick
9143 .global StickNick
9146 StickNick:
9147 0066 0000 .skip 2,0
9148 .global StickRoll
9149 .global StickRoll
9152 StickRoll:
9153 0068 0000 .skip 2,0
9154 .global StickGier
9155 .global StickGier
9158 StickGier:
9159 006a 0000 .skip 2,0
9160 .global StickGas
9161 .global StickGas
9164 StickGas:
9165 006c 0000 .skip 2,0
9166 .global MotorenEin
9167 .global MotorenEin
9170 MotorenEin:
9171 006e 00 .skip 1,0
9172 .global HoehenWert
9173 .global HoehenWert
9176 HoehenWert:
9177 006f 0000 .skip 2,0
9178 .global SollHoehe
9179 .global SollHoehe
9182 SollHoehe:
9183 0071 0000 .skip 2,0
9184 .global LageKorrekturRoll
9185 .global LageKorrekturRoll
9188 LageKorrekturRoll:
9189 0073 0000 .skip 2,0
9190 .global LageKorrekturNick
9191 .global LageKorrekturNick
9194 LageKorrekturNick:
9195 0075 0000 .skip 2,0
9196 .global Ki
9197 .data
9200 Ki:
9201 0025 3801 .word 312
9202 .global Looping_Nick
9203 .global Looping_Nick
9204 .section .bss
9207 Looping_Nick:
9208 0077 00 .skip 1,0
9209 .global Looping_Roll
9210 .global Looping_Roll
9213 Looping_Roll:
9214 0078 00 .skip 1,0
9215 .global Looping_Links
9216 .global Looping_Links
9219 Looping_Links:
9220 0079 00 .skip 1,0
9221 .global Looping_Rechts
9222 .global Looping_Rechts
9225 Looping_Rechts:
9226 007a 00 .skip 1,0
9227 .global Looping_Unten
9228 .global Looping_Unten
9231 Looping_Unten:
9232 007b 00 .skip 1,0
9233 .global Looping_Oben
9234 .global Looping_Oben
9237 Looping_Oben:
9238 007c 00 .skip 1,0
9239 .global Parameter_Luftdruck_D
9240 .data
9243 Parameter_Luftdruck_D:
9244 0027 30 .byte 48
9245 .global Parameter_MaxHoehe
9248 Parameter_MaxHoehe:
9249 0028 FB .byte -5
9250 .global Parameter_Hoehe_P
9253 Parameter_Hoehe_P:
9254 0029 10 .byte 16
9255 .global Parameter_Hoehe_ACC_Wirkung
9258 Parameter_Hoehe_ACC_Wirkung:
9259 002a 3A .byte 58
9260 .global Parameter_KompassWirkung
9263 Parameter_KompassWirkung:
9264 002b 40 .byte 64
9265 .global Parameter_Gyro_D
9268 Parameter_Gyro_D:
9269 002c 08 .byte 8
9270 .global Parameter_Gyro_P
9273 Parameter_Gyro_P:
9274 002d 96 .byte -106
9275 .global Parameter_Gyro_I
9278 Parameter_Gyro_I:
9279 002e 96 .byte -106
9280 .global Parameter_Gier_P
9283 Parameter_Gier_P:
9284 002f 02 .byte 2
9285 .global Parameter_I_Faktor
9288 Parameter_I_Faktor:
9289 0030 0A .byte 10
9290 .global Parameter_UserParam1
9291 .global Parameter_UserParam1
9292 .section .bss
9295 Parameter_UserParam1:
9296 007d 00 .skip 1,0
9297 .global Parameter_UserParam2
9298 .global Parameter_UserParam2
9301 Parameter_UserParam2:
9302 007e 00 .skip 1,0
9303 .global Parameter_UserParam3
9304 .global Parameter_UserParam3
9307 Parameter_UserParam3:
9308 007f 00 .skip 1,0
9309 .global Parameter_UserParam4
9310 .global Parameter_UserParam4
9313 Parameter_UserParam4:
9314 0080 00 .skip 1,0
9315 .global Parameter_UserParam5
9316 .global Parameter_UserParam5
9319 Parameter_UserParam5:
9320 0081 00 .skip 1,0
9321 .global Parameter_UserParam6
9322 .global Parameter_UserParam6
9325 Parameter_UserParam6:
9326 0082 00 .skip 1,0
9327 .global Parameter_UserParam7
9328 .global Parameter_UserParam7
9331 Parameter_UserParam7:
9332 0083 00 .skip 1,0
9333 .global Parameter_UserParam8
9334 .global Parameter_UserParam8
9337 Parameter_UserParam8:
9338 0084 00 .skip 1,0
9339 .global Parameter_ServoNickControl
9340 .data
9343 Parameter_ServoNickControl:
9344 0031 64 .byte 100
9345 .global Parameter_LoopGasLimit
9348 Parameter_LoopGasLimit:
9349 0032 46 .byte 70
9350 .global Parameter_AchsKopplung1
9353 Parameter_AchsKopplung1:
9354 0033 5A .byte 90
9355 .global Parameter_AchsKopplung2
9358 Parameter_AchsKopplung2:
9359 0034 41 .byte 65
9360 .global Parameter_CouplingYawCorrection
9363 Parameter_CouplingYawCorrection:
9364 0035 40 .byte 64
9365 .global Parameter_DynamicStability
9368 Parameter_DynamicStability:
9369 0036 64 .byte 100
9370 .global ExternStickNick
9371 .global ExternStickNick
9372 .section .bss
9375 ExternStickNick:
9376 0085 0000 .skip 2,0
9377 .global ExternStickRoll
9378 .global ExternStickRoll
9381 ExternStickRoll:
9382 0087 0000 .skip 2,0
9383 .global ExternStickGier
9384 .global ExternStickGier
9387 ExternStickGier:
9388 0089 0000 .skip 2,0
9389 .global ExternHoehenValue
9390 .data
9393 ExternHoehenValue:
9394 0037 ECFF .word -20
9395 .global MaxStickNick
9396 .global MaxStickNick
9397 .section .bss
9400 MaxStickNick:
9401 008b 0000 .skip 2,0
9402 .global MaxStickRoll
9403 .global MaxStickRoll
9406 MaxStickRoll:
9407 008d 0000 .skip 2,0
9408 .global modell_fliegt
9409 .global modell_fliegt
9412 modell_fliegt:
9413 008f 0000 .skip 2,0
9414 .global MikroKopterFlags
9415 .global MikroKopterFlags
9418 MikroKopterFlags:
9419 0091 00 .skip 1,0
9420 .global GIER_GRAD_FAKTOR
9421 .data
9424 GIER_GRAD_FAKTOR:
9425 0039 0B .byte 11
9426 003a 05 .byte 5
9427 003b 00 .byte 0
9428 003c 00 .byte 0
9431 delay.3112:
9432 003d 64 .byte 100
9433 .lcomm MittelIntegralRoll_Alt.3105,4
9434 .lcomm MittelIntegralNick_Alt.3104,4
9435 .lcomm last_r_n.3103,1
9436 .lcomm last_r_p.3102,1
9437 .lcomm last_n_n.3101,1
9438 .lcomm last_n_p.3100,1
9439 .lcomm cnt.3099,2
9440 .lcomm stick_roll.3096,2
9441 .lcomm stick_nick.3095,2
9442 .lcomm ausgleichRoll.3090,4
9443 .lcomm ausgleichNick.3089,4
9444 .lcomm NeueKompassRichtungMerken.3088,1
9445 .lcomm TimerWerteausgabe.3087,1
9446 .lcomm motorwert4.3082,2
9447 .lcomm motorwert3.3081,2
9448 .lcomm motorwert2.3080,2
9449 .lcomm motorwert1.3079,2
9450 .lcomm hoehenregler.3078,2
9451 .lcomm delay_ausschalten.3077,1
9452 .lcomm delay_einschalten.3076,1
9453 .lcomm delay_neutral.3075,1
9454 .lcomm RcLostTimer.3074,2
9455 .lcomm IntegralFehlerRoll.3073,4
9456 .lcomm IntegralFehlerNick.3072,4
9457 .lcomm tmp_long2.3071,4
9458 .lcomm tmp_long.3070,4
9459 .lcomm sollGier.3069,4
9460 .lcomm SummeRoll.3068,4
9461 .lcomm SummeNick.3067,4
9462 .lcomm d2Nick.2659,2
9463 .lcomm d2Roll.2658,2
9464 .lcomm oldRoll.2657,2
9465 .lcomm oldNick.2656,2
9466 .lcomm tmpl4.2655,4
9467 .lcomm tmpl3.2654,4
9468 .lcomm tmpl2.2653,4
9469 .lcomm tmpl.2652,4
9470 .comm TrimNick,2,1
9471 .comm TrimRoll,2,1
9472 .comm ErsatzKompass,4,1
9473 .comm ErsatzKompassInGrad,2,1
9474 .comm MesswertNick,2,1
9475 .comm MesswertRoll,2,1
9476 .comm MesswertGier,2,1
9477 .comm Mittelwert_AccNick,2,1
9478 .comm Mittelwert_AccRoll,2,1
9479 .comm Mittelwert_AccHoch,2,1
9480 .comm NaviAccNick,2,1
9481 .comm NaviAccRoll,2,1
9482 .comm h,1,1
9483 .comm m,1,1
9484 .comm s,1,1
9485 .comm DiffNick,2,1
9486 .comm DiffRoll,2,1
9487 .comm Motor_Vorne,1,1
9488 .comm Motor_Hinten,1,1
9489 .comm Motor_Rechts,1,1
9490 .comm Motor_Links,1,1
9491 .comm Motor1,1,1
9492 .comm Motor2,1,1
9493 .comm Motor3,1,1
9494 .comm Motor4,1,1
9495 .comm Motor5,1,1
9496 .comm Motor6,1,1
9497 .comm Motor7,1,1
9498 .comm Motor8,1,1
9499 .comm EE_Parameter,93,1
9500 .comm Parameter_J16Bitmask,1,1
9501 .comm Parameter_J16Timing,1,1
9502 .comm Parameter_J17Bitmask,1,1
9503 .comm Parameter_J17Timing,1,1
9504 .comm Parameter_NaviGpsModeControl,1,1
9505 .comm MesswertGierBias,2,1
9506 .comm RohMesswertNick,2,1
9507 .comm RohMesswertRoll,2,1
9508 .comm AdNeutralGierBias,2,1
9509 .comm MittelIntegralNick,4,1
9510 .comm MittelIntegralRoll,4,1
9511 .comm MittelIntegralNick2,4,1
9512 .comm MittelIntegralRoll2,4,1
9513 .comm MAX_GAS,1,1
9514 .comm MIN_GAS,1,1
9515 .comm GyroFaktor,1,1
9516 .comm IntegralFaktor,1,1
9517 .comm Parameter_NaviGpsGain,1,1
9518 .comm Parameter_NaviGpsP,1,1
9519 .comm Parameter_NaviGpsI,1,1
9520 .comm Parameter_NaviGpsD,1,1
9521 .comm Parameter_NaviGpsACC,1,1
9522 .comm Parameter_NaviOperatingRadius,1,1
9523 .comm Parameter_NaviWindCorrection,1,1
9524 .comm Parameter_NaviSpeedCompensation,1,1
9525 .comm Parameter_ExternalControl,1,1
9526 .comm KopplungsteilNickRoll,2,1
9527 .comm KopplungsteilRollNick,2,1
9528 /* File "fc.c": code 10960 = 0x2ad0 (10819), prologues 67, epilogues 74 */
DEFINED SYMBOLS
*ABS*:00000000 fc.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:12 .text:00000000 DefaultStickMapping
*COM*:0000005d EE_Parameter
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:38 .text:00000032 MotorSmoothing
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:72 .text:0000005e Mittelwert
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8905 .bss:00000004 AdNeutralGier
*COM*:00000002 MesswertGier
*COM*:00000002 RohMesswertNick
*COM*:00000002 RohMesswertRoll
*COM*:00000002 Mittelwert_AccNick
*COM*:00000002 Mittelwert_AccRoll
*COM*:00000002 Mittelwert_AccHoch
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8983 .bss:00000026 IntegralAccNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8989 .bss:0000002a IntegralAccRoll
*COM*:00000002 NaviAccNick
*COM*:00000002 NaviAccRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8935 .bss:0000000e NaviCntAcc
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8941 .bss:00000010 NeutralAccZ
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8995 .bss:0000002e IntegralAccZ
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9019 .bss:0000003e Mess_IntegralRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9007 .bss:00000036 Mess_IntegralNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9031 .bss:00000046 Mess_Integral_Gier
*COM*:00000004 ErsatzKompass
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9207 .bss:00000077 Looping_Nick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9213 .bss:00000078 Looping_Roll
*COM*:00000002 KopplungsteilRollNick
*COM*:00000002 KopplungsteilNickRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9467 .bss:000000e9 tmpl2.2653
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9468 .bss:000000ed tmpl.2652
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9363 .data:00000035 Parameter_CouplingYawCorrection
*COM*:00000002 TrimRoll
*COM*:00000002 TrimNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9424 .data:00000039 GIER_GRAD_FAKTOR
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9025 .bss:00000042 Mess_IntegralRoll2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9188 .bss:00000073 LageKorrekturRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9100 .data:00000021 Umschlag180Roll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9013 .bss:0000003a Mess_IntegralNick2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9194 .bss:00000075 LageKorrekturNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9092 .data:0000001d Umschlag180Nick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9001 .bss:00000032 Integral_Gier
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8959 .bss:00000016 IntegralNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8971 .bss:0000001e IntegralRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8965 .bss:0000001a IntegralNick2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8977 .bss:00000022 IntegralRoll2
*COM*:00000002 MesswertNick
*COM*:00000002 MesswertRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9268 .data:0000002c Parameter_Gyro_D
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9464 .bss:000000df oldNick.2656
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9461 .bss:000000d9 d2Nick.2659
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9463 .bss:000000dd oldRoll.2657
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9462 .bss:000000db d2Roll.2658
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9116 .bss:0000005d Poti1
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9122 .bss:0000005f Poti2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9128 .bss:00000061 Poti3
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9134 .bss:00000063 Poti4
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9358 .data:00000034 Parameter_AchsKopplung2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9466 .bss:000000e5 tmpl3.2654
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9465 .bss:000000e1 tmpl4.2655
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9353 .data:00000033 Parameter_AchsKopplung1
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9086 .bss:0000005a TrichterFlug
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:1855 .text:00001174 ParameterZuordnung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9248 .data:00000028 Parameter_MaxHoehe
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9243 .data:00000027 Parameter_Luftdruck_D
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9253 .data:00000029 Parameter_Hoehe_P
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9258 .data:0000002a Parameter_Hoehe_ACC_Wirkung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9263 .data:0000002b Parameter_KompassWirkung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9273 .data:0000002d Parameter_Gyro_P
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9278 .data:0000002e Parameter_Gyro_I
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9288 .data:00000030 Parameter_I_Faktor
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9295 .bss:0000007d Parameter_UserParam1
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9301 .bss:0000007e Parameter_UserParam2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9307 .bss:0000007f Parameter_UserParam3
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9313 .bss:00000080 Parameter_UserParam4
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9319 .bss:00000081 Parameter_UserParam5
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9325 .bss:00000082 Parameter_UserParam6
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9331 .bss:00000083 Parameter_UserParam7
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9337 .bss:00000084 Parameter_UserParam8
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9343 .data:00000031 Parameter_ServoNickControl
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9348 .data:00000032 Parameter_LoopGasLimit
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9368 .data:00000036 Parameter_DynamicStability
*COM*:00000001 Parameter_J16Timing
*COM*:00000001 Parameter_J17Timing
*COM*:00000001 Parameter_ExternalControl
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9200 .data:00000025 Ki
*COM*:00000001 MAX_GAS
*COM*:00000001 MIN_GAS
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:2781 .text:000019b8 SendMotorData
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9170 .bss:0000006e MotorenEin
*COM*:00000001 Motor_Hinten
*COM*:00000001 Motor_Vorne
*COM*:00000001 Motor_Rechts
*COM*:00000001 Motor_Links
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9418 .bss:00000091 MikroKopterFlags
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:2849 .text:00001a60 CalibrierMittelwert
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:3163 .text:00001d3c SetNeutral
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8923 .bss:0000000a NeutralAccX
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8929 .bss:0000000c NeutralAccY
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8893 .bss:00000000 AdNeutralNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8899 .bss:00000002 AdNeutralRoll
*COM*:00000002 AdNeutralGierBias
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8911 .bss:00000006 StartNeutralRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8917 .bss:00000008 StartNeutralNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9043 .bss:0000004e Mess_Integral_Hoch
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9049 .bss:00000052 KompassValue
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9055 .bss:00000054 KompassStartwert
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9393 .data:00000037 ExternHoehenValue
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9110 .bss:0000005b GierGyroFehler
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9140 .bss:00000065 SenderOkay
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:3644 .text:00002236 Piep
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:3684 .text:0000226e DefaultKonstanten3
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:3806 .text:000023cc DefaultKonstanten2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:3930 .text:0000252e DefaultKonstanten1
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:4047 .text:0000268c MotorRegler
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9164 .bss:0000006c StickGas
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9453 .bss:000000bb RcLostTimer.3074
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9412 .bss:0000008f modell_fliegt
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9074 .bss:00000058 Notlandung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9158 .bss:0000006a StickGier
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9146 .bss:00000066 StickNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9152 .bss:00000068 StickRoll
*COM*:00000001 GyroFaktor
*COM*:00000001 IntegralFaktor
*COM*:00000004 MittelIntegralNick
*COM*:00000004 MittelIntegralRoll
*COM*:00000004 MittelIntegralNick2
*COM*:00000004 MittelIntegralRoll2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9433 .bss:00000096 MittelIntegralNick_Alt.3104
.bss:00000092 MittelIntegralRoll_Alt.3105
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9067 .data:0000001b KompassSignalSchlecht
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9443 .bss:000000ac NeueKompassRichtungMerken.3088
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9458 .bss:000000cd sollGier.3069
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9406 .bss:0000008d MaxStickRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9400 .bss:0000008b MaxStickNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9452 .bss:000000ba delay_neutral.3075
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9451 .bss:000000b9 delay_einschalten.3076
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9450 .bss:000000b8 delay_ausschalten.3077
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9440 .bss:000000a2 stick_nick.3095
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9439 .bss:000000a0 stick_roll.3096
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9219 .bss:00000079 Looping_Links
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9225 .bss:0000007a Looping_Rechts
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9237 .bss:0000007c Looping_Oben
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9231 .bss:0000007b Looping_Unten
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9444 .bss:000000ad TimerWerteausgabe.3087
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9459 .bss:000000d1 SummeRoll.3068
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9460 .bss:000000d5 SummeNick.3067
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9431 .data:0000003d delay.3112
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9176 .bss:0000006f HoehenWert
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9449 .bss:000000b6 hoehenregler.3078
*COM*:00000002 DiffNick
*COM*:00000002 DiffRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9448 .bss:000000b4 motorwert1.3079
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9447 .bss:000000b2 motorwert2.3080
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9446 .bss:000000b0 motorwert3.3081
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9445 .bss:000000ae motorwert4.3082
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9182 .bss:00000071 SollHoehe
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9080 .bss:00000059 HoehenReglerAktiv
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9442 .bss:000000a8 ausgleichNick.3089
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9457 .bss:000000c9 tmp_long.3070
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9456 .bss:000000c5 tmp_long2.3071
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9455 .bss:000000c1 IntegralFehlerNick.3072
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9454 .bss:000000bd IntegralFehlerRoll.3073
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9438 .bss:0000009e cnt.3099
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9441 .bss:000000a4 ausgleichRoll.3090
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9037 .bss:0000004a Mess_Integral_Gier2
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9435 .bss:0000009b last_r_p.3102
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9434 .bss:0000009a last_r_n.3103
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9437 .bss:0000009d last_n_p.3100
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9436 .bss:0000009c last_n_n.3101
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8886 .data:00000019 I2CTimeout
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8947 .bss:00000014 CosinusNickWinkel
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:8953 .bss:00000015 CosinusRollWinkel
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9061 .bss:00000056 KompassRichtung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9283 .data:0000002f Parameter_Gier_P
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9375 .bss:00000085 ExternStickNick
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9381 .bss:00000087 ExternStickRoll
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccmyRWWq.s:9387 .bss:00000089 ExternStickGier
*COM*:00000002 ErsatzKompassInGrad
*COM*:00000001 h
*COM*:00000001 m
*COM*:00000001 s
*COM*:00000001 Motor1
*COM*:00000001 Motor2
*COM*:00000001 Motor3
*COM*:00000001 Motor4
*COM*:00000001 Motor5
*COM*:00000001 Motor6
*COM*:00000001 Motor7
*COM*:00000001 Motor8
*COM*:00000001 Parameter_J16Bitmask
*COM*:00000001 Parameter_J17Bitmask
*COM*:00000001 Parameter_NaviGpsModeControl
*COM*:00000002 MesswertGierBias
*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
AdWertGier
AdWertNickFilter
AdWertRollFilter
AdWertAccNick
__mulsi3
__divmodsi4
AdWertAccRoll
AdWertAccHoch
Aktuell_az
__floatsisf
__subsf3
__addsf3
__fixsfsi
AdReady
HiResNick
HiResRoll
AdWertNick
PlatinenVersion
AdWertRoll
PPM_in
__divmodhi4
MotorTest
DebugOut
twi_state
motor
i2c_start
SucheGyroOffset
ServoActive
ExpandBaro
Delay_ms_Mess
MessLuftdruck
EEPromArray
__eeprom_read_byte_1F2021
SucheLuftruckOffset
Luftdruck
StartLuftdruck
HoeheD
GPS_Neutral
beeptime
SendVersionToNavi
LED_Init
FromNaviCtrl_Value
Delay_ms
PcZugriff
BeepMuster
PPM_diff
NewPpmData
ZaehlMessungen
SetActiveParamSetNumber
WinkelOut
GPS_Nick2
GPS_Nick
GPS_Roll2
GPS_Roll
__fixunssfsi
ExternControl
UBat
ServoValue
__eeprom_write_byte_1F2021
GetActiveParamSetNumber
DruckOffsetSetting
ReadParameterSet
/branches/v0.72p kmpec/flight.pnproj
0,0 → 1,0
<Project name="Flight-Ctrl"><File path="uart.h"></File><File path="main.c"></File><File path="main.h"></File><File path="makefile"></File><File path="uart.c"></File><File path="printf_P.h"></File><File path="printf_P.c"></File><File path="timer0.c"></File><File path="timer0.h"></File><File path="old_macros.h"></File><File path="twimaster.c"></File><File path="version.txt"></File><File path="twimaster.h"></File><File path="rc.c"></File><File path="rc.h"></File><File path="fc.h"></File><File path="menu.h"></File><File path="menu.c"></File><File path="_Settings.h"></File><File path="analog.c"></File><File path="analog.h"></File><File path="GPS.c"></File><File path="gps.h"></File><File path="License.txt"></File><File path="eeprom.c"></File><File path="spi.h"></File><File path="spi.c"></File><File path="led.h"></File><File path="led.c"></File><File path="fc.c"></File><File path="Spectrum.c"></File><File path="Spectrum.h"></File></Project>
/branches/v0.72p kmpec/flight.pnps
0,0 → 1,0
<pd><ViewState><e p="Flight-Ctrl" x="true"></e></ViewState></pd>
/branches/v0.72p kmpec/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/v0.72p kmpec/led.c
0,0 → 1,85
#include <inttypes.h>
#include "main.h"
//#include "fc.c"
 
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;
if(!delay--) // 10ms Intervall
{
delay = 4;
//wenn Höhe halten an -> UserParameter 1
if(HoehenReglerAktiv > 0 )
{
if(!J16Blinkcount--)
{
J16Blinkcount = Parameter_J16Timing-1;
if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2;
if(J16Mask & EE_Parameter.UserParam1) J16_ON; else J16_OFF;
}
}
//Wenn AID oder Pos.Hold an -> UserParameter2
else
if(Parameter_NaviGpsModeControl < 100 )
{
if(!J16Blinkcount--)
{
J16Blinkcount = Parameter_J16Timing-1;
if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2;
if(J16Mask & EE_Parameter.UserParam2) J16_ON; else J16_OFF;
}
}
else
//wenn Coming Home an -> UserPArameter 3
if(Parameter_NaviGpsModeControl > 150 )
{
if(!J16Blinkcount--)
{
J16Blinkcount = Parameter_J16Timing-1;
if(J16Mask == 1) J16Mask = 128; else J16Mask /= 2;
if(J16Mask & EE_Parameter.UserParam3) J16_ON; else J16_OFF;
}
}
else
{
J16_ON;
}
J16_OFF;
if((EE_Parameter.J17Timing > 250) && (Parameter_J17Timing > 230)) {if(EE_Parameter.J17Bitmask & 128) J17_ON; else J17_OFF;}
else
if((EE_Parameter.J17Timing > 250) && (Parameter_J17Timing < 10)) {if(EE_Parameter.J17Bitmask & 128) J17_OFF; else J17_ON;}
else
if(!J17Blinkcount--)
{
J17Blinkcount = Parameter_J17Timing-1;
if(J17Mask == 1) J17Mask = 128; else J17Mask /= 2;
if(J17Mask & EE_Parameter.J17Bitmask) J17_ON; else J17_OFF;
}
}
}
/branches/v0.72p kmpec/led.d
0,0 → 1,2
led.o led.d : led.c main.h old_macros.h _Settings.h printf_P.h timer0.h uart.h \
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/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/v0.72p kmpec/led.lst
0,0 → 1,237
1 .file "led.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global LED_Init
12 LED_Init:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 87B1 in r24,39-0x20
16 0002 8C60 ori r24,lo8(12)
17 0004 87B9 out 39-0x20,r24
18 0006 4298 cbi 40-0x20,2
19 0008 4398 cbi 40-0x20,3
20 000a 1092 0000 sts J16Blinkcount,__zero_reg__
21 000e 80E8 ldi r24,lo8(-128)
22 0010 8093 0000 sts J16Mask,r24
23 0014 1092 0000 sts J17Blinkcount,__zero_reg__
24 0018 8093 0000 sts J17Mask,r24
25 /* epilogue: frame size=0 */
26 001c 0895 ret
27 /* epilogue end (size=1) */
28 /* function LED_Init size 15 (14) */
30 .global LED_Update
32 LED_Update:
33 /* prologue: frame size=0 */
34 /* prologue end (size=0) */
35 001e 8091 0000 lds r24,delay.2372
36 0022 8150 subi r24,lo8(-(-1))
37 0024 8093 0000 sts delay.2372,r24
38 0028 8F3F cpi r24,lo8(-1)
39 002a 01F0 breq .L51
40 .L46:
41 002c 0895 ret
42 .L51:
43 002e 84E0 ldi r24,lo8(4)
44 0030 8093 0000 sts delay.2372,r24
45 0034 8091 0000 lds r24,HoehenReglerAktiv
46 0038 8823 tst r24
47 003a 01F0 breq .L6
48 003c 8091 0000 lds r24,J16Blinkcount
49 0040 8150 subi r24,lo8(-(-1))
50 0042 8093 0000 sts J16Blinkcount,r24
51 0046 8F3F cpi r24,lo8(-1)
52 0048 01F4 brne .+2
53 004a 00C0 rjmp .L52
54 .L8:
55 004c 4298 cbi 40-0x20,2
56 004e 8091 0000 lds r24,EE_Parameter+57
57 0052 8B3F cpi r24,lo8(-5)
58 0054 00F0 brlo .L31
59 0056 8091 0000 lds r24,Parameter_J17Timing
60 005a 873E cpi r24,lo8(-25)
61 005c 00F0 brlo .+2
62 005e 00C0 rjmp .L53
63 0060 8A30 cpi r24,lo8(10)
64 0062 00F4 brsh .L31
65 0064 8091 0000 lds r24,EE_Parameter+56
66 0068 87FD sbrc r24,7
67 006a 00C0 rjmp .L48
68 .L47:
69 006c 439A sbi 40-0x20,3
70 006e 0895 ret
71 .L31:
72 0070 8091 0000 lds r24,J17Blinkcount
73 0074 8150 subi r24,lo8(-(-1))
74 0076 8093 0000 sts J17Blinkcount,r24
75 007a 8F3F cpi r24,lo8(-1)
76 007c 01F4 brne .L46
77 007e 8091 0000 lds r24,Parameter_J17Timing
78 0082 8150 subi r24,lo8(-(-1))
79 0084 8093 0000 sts J17Blinkcount,r24
80 0088 8091 0000 lds r24,J17Mask
81 008c 8130 cpi r24,lo8(1)
82 008e 01F4 brne .+2
83 0090 00C0 rjmp .L54
84 0092 8695 lsr r24
85 0094 8093 0000 sts J17Mask,r24
86 .L43:
87 0098 8091 0000 lds r24,J17Mask
88 009c 9091 0000 lds r25,EE_Parameter+56
89 00a0 8923 and r24,r25
90 00a2 01F4 brne .L47
91 00a4 4398 cbi 40-0x20,3
92 00a6 0895 ret
93 .L6:
94 00a8 8091 0000 lds r24,Parameter_NaviGpsModeControl
95 00ac 8436 cpi r24,lo8(100)
96 00ae 00F0 brlo .L55
97 00b0 8739 cpi r24,lo8(-105)
98 00b2 00F0 brlo .L23
99 00b4 8091 0000 lds r24,J16Blinkcount
100 00b8 8150 subi r24,lo8(-(-1))
101 00ba 8093 0000 sts J16Blinkcount,r24
102 00be 8F3F cpi r24,lo8(-1)
103 00c0 01F4 brne .L8
104 00c2 8091 0000 lds r24,Parameter_J16Timing
105 00c6 8150 subi r24,lo8(-(-1))
106 00c8 8093 0000 sts J16Blinkcount,r24
107 00cc 8091 0000 lds r24,J16Mask
108 00d0 8130 cpi r24,lo8(1)
109 00d2 01F4 brne .+2
110 00d4 00C0 rjmp .L56
111 00d6 8695 lsr r24
112 00d8 8093 0000 sts J16Mask,r24
113 .L28:
114 00dc 8091 0000 lds r24,J16Mask
115 00e0 9091 0000 lds r25,EE_Parameter+32
116 00e4 8923 and r24,r25
117 00e6 01F0 breq .L29
118 .L23:
119 00e8 429A sbi 40-0x20,2
120 00ea 00C0 rjmp .L8
121 .L53:
122 00ec 8091 0000 lds r24,EE_Parameter+56
123 00f0 8823 tst r24
124 00f2 04F4 brge .+2
125 00f4 00C0 rjmp .L47
126 .L48:
127 00f6 4398 cbi 40-0x20,3
128 00f8 0895 ret
129 .L55:
130 00fa 8091 0000 lds r24,J16Blinkcount
131 00fe 8150 subi r24,lo8(-(-1))
132 0100 8093 0000 sts J16Blinkcount,r24
133 0104 8F3F cpi r24,lo8(-1)
134 0106 01F0 breq .+2
135 0108 00C0 rjmp .L8
136 010a 8091 0000 lds r24,Parameter_J16Timing
137 010e 8150 subi r24,lo8(-(-1))
138 0110 8093 0000 sts J16Blinkcount,r24
139 0114 8091 0000 lds r24,J16Mask
140 0118 8130 cpi r24,lo8(1)
141 011a 01F0 breq .L57
142 011c 8695 lsr r24
143 011e 8093 0000 sts J16Mask,r24
144 .L20:
145 0122 8091 0000 lds r24,J16Mask
146 0126 9091 0000 lds r25,EE_Parameter+31
147 012a 8923 and r24,r25
148 012c 01F4 brne .L23
149 .L29:
150 012e 4298 cbi 40-0x20,2
151 0130 00C0 rjmp .L8
152 .L52:
153 0132 8091 0000 lds r24,Parameter_J16Timing
154 0136 8150 subi r24,lo8(-(-1))
155 0138 8093 0000 sts J16Blinkcount,r24
156 013c 8091 0000 lds r24,J16Mask
157 0140 8130 cpi r24,lo8(1)
158 0142 01F0 breq .L58
159 0144 8695 lsr r24
160 0146 8093 0000 sts J16Mask,r24
161 .L12:
162 014a 8091 0000 lds r24,J16Mask
163 014e 9091 0000 lds r25,EE_Parameter+30
164 0152 8923 and r24,r25
165 0154 01F0 breq .L29
166 0156 429A sbi 40-0x20,2
167 0158 00C0 rjmp .L8
168 .L58:
169 015a 80E8 ldi r24,lo8(-128)
170 015c 8093 0000 sts J16Mask,r24
171 0160 00C0 rjmp .L12
172 .L54:
173 0162 80E8 ldi r24,lo8(-128)
174 0164 8093 0000 sts J17Mask,r24
175 0168 00C0 rjmp .L43
176 .L57:
177 016a 80E8 ldi r24,lo8(-128)
178 016c 8093 0000 sts J16Mask,r24
179 0170 00C0 rjmp .L20
180 .L56:
181 0172 80E8 ldi r24,lo8(-128)
182 0174 8093 0000 sts J16Mask,r24
183 0178 00C0 rjmp .L28
184 /* epilogue: frame size=0 */
185 /* epilogue: noreturn */
186 /* epilogue end (size=0) */
187 /* function LED_Update size 179 (179) */
189 .global LED1_Timing
190 .global LED1_Timing
191 .section .bss
194 LED1_Timing:
195 0000 0000 .skip 2,0
196 .global LED2_Timing
197 .global LED2_Timing
200 LED2_Timing:
201 0002 0000 .skip 2,0
202 .global J16Blinkcount
203 .global J16Blinkcount
206 J16Blinkcount:
207 0004 00 .skip 1,0
208 .global J16Mask
209 .data
212 J16Mask:
213 0000 01 .byte 1
214 .global J17Blinkcount
215 .global J17Blinkcount
216 .section .bss
219 J17Blinkcount:
220 0005 00 .skip 1,0
221 .global J17Mask
222 .data
225 J17Mask:
226 0001 01 .byte 1
227 .lcomm delay.2372,1
228 /* File "led.c": code 194 = 0x00c2 ( 193), prologues 0, epilogues 1 */
DEFINED SYMBOLS
*ABS*:00000000 led.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:12 .text:00000000 LED_Init
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:206 .bss:00000004 J16Blinkcount
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:212 .data:00000000 J16Mask
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:219 .bss:00000005 J17Blinkcount
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:225 .data:00000001 J17Mask
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:32 .text:0000001e LED_Update
.bss:00000006 delay.2372
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:194 .bss:00000000 LED1_Timing
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccajheVy.s:200 .bss:00000002 LED2_Timing
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
HoehenReglerAktiv
EE_Parameter
Parameter_J17Timing
Parameter_NaviGpsModeControl
Parameter_J16Timing
/branches/v0.72p kmpec/main.c
0,0 → 1,310
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Copyright (c) 04.2007 Holger Buss
// + Nur für den privaten Gebrauch
// + 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 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 "main.h"
 
unsigned char EEPromArray[E2END+1] EEMEM;
unsigned char PlatinenVersion = 10;
unsigned char SendVersionToNavi = 1;
// -- Parametersatz aus EEPROM lesen ---
// number [1..5]
void ReadParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
{
if((number > 5)||(number < 1)) number = 3;
eeprom_read_block(buffer, &EEPromArray[EEPROM_ADR_PARAM_BEGIN + length * (number - 1)], length);
LED_Init();
}
 
// -- Parametersatz ins EEPROM schreiben ---
// number [1..5]
void WriteParameterSet(unsigned char number, unsigned char *buffer, unsigned char length)
{
if(number > 5) number = 5;
if(number < 1) return;
eeprom_write_block(buffer, &EEPromArray[EEPROM_ADR_PARAM_BEGIN + length * (number - 1)], length);
eeprom_write_byte(&EEPromArray[EEPROM_ADR_PARAM_LENGTH], length); // Länge der Datensätze merken
eeprom_write_block(buffer, &EEPromArray[EEPROM_ADR_CHANNELS], 8); // 8 Kanäle merken
SetActiveParamSetNumber(number);
LED_Init();
}
 
unsigned char GetActiveParamSetNumber(void)
{
unsigned char set;
set = eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACTIVE_SET]);
if((set > 5) || (set < 1))
{
set = 3;
SetActiveParamSetNumber(set); // diesen Parametersatz als aktuell merken
}
return(set);
}
 
 
void SetActiveParamSetNumber(unsigned char number)
{
if(number > 5) number = 5;
if(number < 1) return;
eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACTIVE_SET], number); // diesen Parametersatz als aktuell merken
}
 
 
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);
}
DebugOut.Analog[19] = WinkelOut.CalcState;
}
 
//############################################################################
//Hauptprogramm
int main (void)
//############################################################################
{
unsigned int timer;
DDRB = 0x00;
PORTB = 0x00;
for(timer = 0; timer < 1000; timer++); // verzögern
if(PINB & 0x01)
{
if(PINB & 0x02) PlatinenVersion = 13;
else PlatinenVersion = 11;
}
else
{
if(PINB & 0x02) PlatinenVersion = 20;
else PlatinenVersion = 10;
}
 
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
DDRD |=0x80; // J7 -> Servo signal
PORTD = 0x47; // LED
HEF4017R_ON;
MCUSR &=~(1<<WDRF);
WDTCSR |= (1<<WDCE)|(1<<WDE);
WDTCSR = 0;
 
beeptime = 2000;
 
StickGier = 0; PPM_in[K_GAS] = 0;StickRoll = 0; StickNick = 0;
if(PlatinenVersion >= 20) GIER_GRAD_FAKTOR = 1160; 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();
SPI_MasterInit();
 
sei();
 
printf("\n\rFlightControl\n\rHardware:%d.%d\n\rSoftware:V%d.%d%c ",PlatinenVersion/10,PlatinenVersion%10, VERSION_MAJOR, VERSION_MINOR,VERSION_PATCH + 'a');
if(UCSR1A == 0x20 && UCSR1C == 0x06) // initial Values for 644P
{
Uart1Init();
}
printf("\n\r==============================");
GRN_ON;
ReadParameterSet(3, (unsigned char *) &EE_Parameter.Kanalbelegung[0], 9); // read only the first bytes
 
if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_VALID]) != EE_DATENREVISION)
{
DefaultKonstanten1();
printf("\n\rInit. EEPROM");
for (unsigned char i=1;i<6;i++)
{
if(i==2) DefaultKonstanten2(); // Kamera
if(i==3) DefaultKonstanten3(); // Beginner
if(i>3) DefaultKonstanten2(); // Kamera
if(PlatinenVersion >= 20)
{
EE_Parameter.Gyro_D = 5;
EE_Parameter.Driftkomp = 0;
EE_Parameter.GyroAccFaktor = 27;
EE_Parameter.WinkelUmschlagNick = 78;
EE_Parameter.WinkelUmschlagRoll = 78;
}
// valid Stick-Settings?
if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS]) < 12 && eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+1]) < 12 && eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+2]) < 12 && eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+3]) < 12)
{
EE_Parameter.Kanalbelegung[0] = eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+0]);
EE_Parameter.Kanalbelegung[1] = eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+1]);
EE_Parameter.Kanalbelegung[2] = eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+2]);
EE_Parameter.Kanalbelegung[3] = eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+3]);
EE_Parameter.Kanalbelegung[4] = eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+4]);
EE_Parameter.Kanalbelegung[5] = eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+5]);
EE_Parameter.Kanalbelegung[6] = eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+6]);
EE_Parameter.Kanalbelegung[7] = eeprom_read_byte(&EEPromArray[EEPROM_ADR_CHANNELS+7]);
if(i==1) printf(": Generating Default-Parameter using old Stick Settings");
} else DefaultStickMapping();
WriteParameterSet(i, (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE);
}
SetActiveParamSetNumber(3); // default-Setting
eeprom_write_byte(&EEPromArray[EEPROM_ADR_VALID], EE_DATENREVISION);
}
 
if(eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACC_NICK]) > 4)
{
printf("\n\rACC nicht abgeglichen!");
}
 
ReadParameterSet(GetActiveParamSetNumber(), (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE);
printf("\n\rBenutze Parametersatz %d", GetActiveParamSetNumber());
 
 
if(EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)
{
printf("\n\rAbgleich Luftdrucksensor..");
timer = SetDelay(1000);
SucheLuftruckOffset();
while (!CheckDelay(timer));
printf("OK\n\r");
}
 
SetNeutral();
 
ROT_OFF;
 
beeptime = 2000;
ExternControl.Digital[0] = 0x55;
 
 
printf("\n\rSteuerung: ");
if (EE_Parameter.GlobalConfig & CFG_HEADING_HOLD) printf("HeadingHold");
else printf("Neutral");
 
printf("\n\n\r");
 
LcdClear();
I2CTimeout = 5000;
WinkelOut.Orientation = 1;
while (1)
{
if(UpdateMotor && AdReady) // ReglerIntervall
{
UpdateMotor=0;
//J3High;
if(WinkelOut.CalcState) CalMk3Mag();
else MotorRegler();
//J3Low;
SendMotorData();
ROT_OFF;
if(PcZugriff) PcZugriff--;
else
{
ExternControl.Config = 0;
ExternStickNick = 0;
ExternStickRoll = 0;
ExternStickGier = 0;
}
if(SenderOkay) SenderOkay--;
if(!I2CTimeout)
{
I2CTimeout = 5;
i2c_reset();
if((BeepMuster == 0xffff) && MotorenEin)
{
beeptime = 10000;
BeepMuster = 0x0080;
}
}
else
{
I2CTimeout--;
ROT_OFF;
}
if(SIO_DEBUG && (!UpdateMotor || !MotorenEin))
{
DatenUebertragung();
BearbeiteRxDaten();
}
else BearbeiteRxDaten();
if(CheckDelay(timer))
{
if(UBat < EE_Parameter.UnterspannungsWarnung)
{
if(BeepMuster == 0xffff)
{
beeptime = 6000;
BeepMuster = 0x0300;
}
}
SPI_StartTransmitPacket();
 
SendSPI = 4;
timer = SetDelay(20);
}
LED_Update();
}
if(!SendSPI) { SPI_TransmitByte(); }
}
return (1);
}
 
/branches/v0.72p kmpec/main.d
0,0 → 1,2
main.o main.d : main.c main.h old_macros.h _Settings.h printf_P.h timer0.h uart.h \
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/main.h
0,0 → 1,160
#ifndef _MAIN_H
#define _MAIN_H
 
#define QUADRO
//#define OCTO // 2 Arms in Front
//#define OCTO2 // 1 Arm in front
//#define OCTO3 // 1 Arm with two Motors in front or Coax
 
//+++++++++++
// Quadro:
// 1
// 4 3
// 2
//+++++++++++
// Reverse Props on 1 2
 
//+++++++++++
// Octo:
// 1 2
// 8 3
// 7 4
// 6 5
//+++++++++++
 
//+++++++++++
// Octo2:
// 1
// 8 2
// 7 3
// 6 4
// 5
//+++++++++++
 
//+++++++++++
// Octo3:
// 1
// 2
// 8 7 3 4
// 5
// 6
//+++++++++++
// Reverse Props on octo: 1 3 5 7
 
 
//Hier die Quarz Frequenz einstellen
#if defined (__AVR_ATmega32__)
#define SYSCLK 20000000L //Quarz Frequenz in Hz
#endif
 
#if defined (__AVR_ATmega644__)
#define SYSCLK 20000000L //Quarz Frequenz in Hz
#endif
 
#if defined (__AVR_ATmega644P__)
#define SYSCLK 20000000L //Quarz Frequenz in Hz
#endif
 
// 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 F_CPU SYSCLK
//#ifndef F_CPU
//#error ################## F_CPU nicht definiert oder ungültig #############
//#endif
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#define EE_DATENREVISION 74 // wird angepasst, wenn sich die EEPROM-Daten geändert haben
 
#define EEPROM_ADR_VALID 1
#define EEPROM_ADR_ACTIVE_SET 2
#define EEPROM_ADR_LAST_OFFSET 3
 
#define EEPROM_ADR_ACC_NICK 4
#define EEPROM_ADR_ACC_ROLL 6
#define EEPROM_ADR_ACC_Z 8
 
#define EEPROM_ADR_CHANNELS 80
 
#define EEPROM_ADR_PARAM_LENGTH 98
#define EEPROM_ADR_PARAM_BEGIN 100
 
#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_HIGHT_3SWITCH 0x10
 
#define J3High PORTD |= 0x20
#define J3Low PORTD &= ~0x20
#define J4High PORTD |= 0x10
#define J4Low PORTD &= ~0x10
#define J5High PORTD |= 0x08
#define J5Low PORTD &= ~0x08
 
 
//#define SYSCLK
//extern unsigned long SYSCLK;
extern volatile unsigned char SenderOkay;
extern unsigned char CosinusNickWinkel, CosinusRollWinkel;
extern unsigned char PlatinenVersion;
extern unsigned char SendVersionToNavi;
void ReadParameterSet (unsigned char number, unsigned char *buffer, unsigned char length);
void WriteParameterSet(unsigned char number, unsigned char *buffer, unsigned char length);
extern unsigned char GetActiveParamSetNumber(void);
void SetActiveParamSetNumber(unsigned char number);
extern unsigned char EEPromArray[];
 
#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 "_Settings.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"
 
#ifndef EEMEM
#define EEMEM __attribute__ ((section (".eeprom")))
#endif
 
#define DEBUG_DISPLAY_INTERVALL 123 // in ms
 
 
#define DELAY_US(x) ((unsigned int)( (x) * 1e-6 * F_CPU ))
 
#endif //_MAIN_H
 
 
 
 
 
 
/branches/v0.72p kmpec/main.lst
0,0 → 1,1127
1 .file "main.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global SetActiveParamSetNumber
12 SetActiveParamSetNumber:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 8630 cpi r24,lo8(6)
16 0002 00F0 brlo .L2
17 0004 85E0 ldi r24,lo8(5)
18 .L4:
19 0006 A0E0 ldi r26,lo8(EEPromArray+2)
20 0008 B0E0 ldi r27,hi8(EEPromArray+2)
21 /* #APP */
22 000a 082E mov __tmp_reg__,r24
23 000c 0E94 0000 call __eeprom_write_byte_1F2021
24 /* #NOAPP */
25 0010 0895 ret
26 .L2:
27 0012 8823 tst r24
28 0014 01F4 brne .L4
29 0016 0895 ret
30 /* epilogue: frame size=0 */
31 /* epilogue: noreturn */
32 /* epilogue end (size=0) */
33 /* function SetActiveParamSetNumber size 13 (13) */
35 .global GetActiveParamSetNumber
37 GetActiveParamSetNumber:
38 /* prologue: frame size=0 */
39 /* prologue end (size=0) */
40 0018 A0E0 ldi r26,lo8(EEPromArray+2)
41 001a B0E0 ldi r27,hi8(EEPromArray+2)
42 /* #APP */
43 001c 0E94 0000 call __eeprom_read_byte_1F2021
44 0020 902D mov r25,__tmp_reg__
45 /* #NOAPP */
46 0022 892F mov r24,r25
47 0024 8150 subi r24,lo8(-(-1))
48 0026 8530 cpi r24,lo8(5)
49 0028 00F4 brsh .L10
50 002a 892F mov r24,r25
51 002c 90E0 ldi r25,lo8(0)
52 002e 0895 ret
53 .L10:
54 0030 83E0 ldi r24,lo8(3)
55 0032 0E94 0000 call SetActiveParamSetNumber
56 0036 83E0 ldi r24,lo8(3)
57 0038 90E0 ldi r25,hi8(3)
58 003a 0895 ret
59 /* epilogue: frame size=0 */
60 /* epilogue: noreturn */
61 /* epilogue end (size=0) */
62 /* function GetActiveParamSetNumber size 19 (19) */
64 .global CalMk3Mag
66 CalMk3Mag:
67 /* prologue: frame size=0 */
68 /* prologue end (size=0) */
69 003c 8091 0000 lds r24,EE_Parameter
70 0040 E82F mov r30,r24
71 0042 F0E0 ldi r31,lo8(0)
72 0044 EE0F lsl r30
73 0046 FF1F rol r31
74 0048 E050 subi r30,lo8(-(PPM_in))
75 004a F040 sbci r31,hi8(-(PPM_in))
76 004c 8081 ld r24,Z
77 004e 9181 ldd r25,Z+1
78 0050 8D5E subi r24,lo8(-19)
79 0052 9F4F sbci r25,hi8(-19)
80 0054 04F0 brlt .L15
81 0056 1092 0000 sts stick.2399,__zero_reg__
82 .L15:
83 005a 8081 ld r24,Z
84 005c 9181 ldd r25,Z+1
85 005e 8A5B subi r24,lo8(-70)
86 0060 9F4F sbci r25,hi8(-70)
87 0062 04F4 brge .L24
88 0064 8091 0000 lds r24,stick.2399
89 0068 8823 tst r24
90 006a 01F4 brne .L24
91 006c 81E0 ldi r24,lo8(1)
92 006e 8093 0000 sts stick.2399,r24
93 0072 2091 0000 lds r18,WinkelOut+6
94 0076 2F5F subi r18,lo8(-(1))
95 0078 2093 0000 sts WinkelOut+6,r18
96 007c 2530 cpi r18,lo8(5)
97 007e 00F0 brlo .L20
98 0080 88EE ldi r24,lo8(1000)
99 0082 93E0 ldi r25,hi8(1000)
100 0084 9093 0000 sts (beeptime)+1,r25
101 0088 8093 0000 sts beeptime,r24
102 008c 00C0 rjmp .L17
103 .L24:
104 008e 2091 0000 lds r18,WinkelOut+6
105 0092 00C0 rjmp .L17
106 .L20:
107 0094 822F mov r24,r18
108 0096 0E94 0000 call Piep
109 009a 2091 0000 lds r18,WinkelOut+6
110 .L17:
111 009e 822F mov r24,r18
112 00a0 90E0 ldi r25,lo8(0)
113 00a2 9093 0000 sts (DebugOut+40)+1,r25
114 00a6 8093 0000 sts DebugOut+40,r24
115 /* epilogue: frame size=0 */
116 00aa 0895 ret
117 /* epilogue end (size=1) */
118 /* function CalMk3Mag size 58 (57) */
120 .global WriteParameterSet
122 WriteParameterSet:
123 /* prologue: frame size=0 */
124 /* prologue end (size=0) */
125 00ac 582F mov r21,r24
126 00ae 9B01 movw r18,r22
127 00b0 8630 cpi r24,lo8(6)
128 00b2 00F4 brsh .L32
129 00b4 8823 tst r24
130 00b6 01F0 breq .L31
131 00b8 A82F mov r26,r24
132 00ba B0E0 ldi r27,lo8(0)
133 00bc 1197 sbiw r26,1
134 .L28:
135 00be 842F mov r24,r20
136 00c0 90E0 ldi r25,lo8(0)
137 00c2 BD01 movw r22,r26
138 00c4 689F mul r22,r24
139 00c6 D001 movw r26,r0
140 00c8 699F mul r22,r25
141 00ca B00D add r27,r0
142 00cc 789F mul r23,r24
143 00ce B00D add r27,r0
144 00d0 1124 clr r1
145 00d2 A050 subi r26,lo8(-(EEPromArray+100))
146 00d4 B040 sbci r27,hi8(-(EEPromArray+100))
147 00d6 F901 movw r30,r18
148 /* #APP */
149 .117_start:
150 00d8 0197 sbiw r24,1
151 00da 04F0 brlt .117_finished
152 00dc 0190 ld __tmp_reg__,z+
153 00de 0E94 0000 call __eeprom_write_byte_1F2021
154 00e2 00C0 rjmp .117_start
155 .117_finished:
156 /* #NOAPP */
157 00e4 60E0 ldi r22,lo8(EEPromArray+98)
158 00e6 70E0 ldi r23,hi8(EEPromArray+98)
159 00e8 DB01 movw r26,r22
160 /* #APP */
161 00ea 042E mov __tmp_reg__,r20
162 00ec 0E94 0000 call __eeprom_write_byte_1F2021
163 /* #NOAPP */
164 00f0 88E0 ldi r24,lo8(8)
165 00f2 6251 subi r22,lo8(-(-18))
166 00f4 7040 sbci r23,hi8(-(-18))
167 00f6 DB01 movw r26,r22
168 00f8 F901 movw r30,r18
169 /* #APP */
170 00fa 182E mov __zero_reg__,r24
171 00fc 0E94 0000 call __eeprom_write_block_1F2021
172 /* #NOAPP */
173 0100 852F mov r24,r21
174 0102 0E94 0000 call SetActiveParamSetNumber
175 0106 0E94 0000 call LED_Init
176 .L31:
177 010a 0895 ret
178 .L32:
179 010c 55E0 ldi r21,lo8(5)
180 010e A4E0 ldi r26,lo8(4)
181 0110 B0E0 ldi r27,hi8(4)
182 0112 00C0 rjmp .L28
183 /* epilogue: frame size=0 */
184 /* epilogue: noreturn */
185 /* epilogue end (size=0) */
186 /* function WriteParameterSet size 62 (62) */
188 .global ReadParameterSet
190 ReadParameterSet:
191 /* prologue: frame size=0 */
192 /* prologue end (size=0) */
193 0114 A82F mov r26,r24
194 0116 FB01 movw r30,r22
195 0118 8150 subi r24,lo8(-(-1))
196 011a 8530 cpi r24,lo8(5)
197 011c 00F0 brlo .L34
198 011e A2E0 ldi r26,lo8(2)
199 0120 B0E0 ldi r27,hi8(2)
200 0122 00C0 rjmp .L36
201 .L34:
202 0124 B0E0 ldi r27,lo8(0)
203 0126 1197 sbiw r26,1
204 .L36:
205 0128 842F mov r24,r20
206 012a 90E0 ldi r25,lo8(0)
207 012c 9D01 movw r18,r26
208 012e 289F mul r18,r24
209 0130 D001 movw r26,r0
210 0132 299F mul r18,r25
211 0134 B00D add r27,r0
212 0136 389F mul r19,r24
213 0138 B00D add r27,r0
214 013a 1124 clr r1
215 013c A050 subi r26,lo8(-(EEPromArray+100))
216 013e B040 sbci r27,hi8(-(EEPromArray+100))
217 /* #APP */
218 .163_start:
219 0140 0197 sbiw r24,1
220 0142 04F0 brlt .163_finished
221 0144 0E94 0000 call __eeprom_read_byte_1F2021
222 0148 0192 st z+,__tmp_reg__
223 014a 00C0 rjmp .163_start
224 .163_finished:
225 /* #NOAPP */
226 014c 0E94 0000 call LED_Init
227 /* epilogue: frame size=0 */
228 0150 0895 ret
229 /* epilogue end (size=1) */
230 /* function ReadParameterSet size 39 (38) */
232 .global main
234 main:
235 /* prologue: frame size=2 */
236 0152 2F92 push r2
237 0154 3F92 push r3
238 0156 4F92 push r4
239 0158 5F92 push r5
240 015a 6F92 push r6
241 015c 7F92 push r7
242 015e 8F92 push r8
243 0160 9F92 push r9
244 0162 AF92 push r10
245 0164 BF92 push r11
246 0166 CF92 push r12
247 0168 DF92 push r13
248 016a EF92 push r14
249 016c FF92 push r15
250 016e 0F93 push r16
251 0170 1F93 push r17
252 0172 CF93 push r28
253 0174 DF93 push r29
254 0176 CDB7 in r28,__SP_L__
255 0178 DEB7 in r29,__SP_H__
256 017a 2297 sbiw r28,2
257 017c 0FB6 in __tmp_reg__,__SREG__
258 017e F894 cli
259 0180 DEBF out __SP_H__,r29
260 0182 0FBE out __SREG__,__tmp_reg__
261 0184 CDBF out __SP_L__,r28
262 /* prologue end (size=26) */
263 0186 14B8 out 36-0x20,__zero_reg__
264 0188 15B8 out 37-0x20,__zero_reg__
265 018a 189B sbis 35-0x20,0
266 018c 00C0 rjmp .L39
267 018e 199B sbis 35-0x20,1
268 0190 00C0 rjmp .L41
269 0192 8DE0 ldi r24,lo8(13)
270 0194 8093 0000 sts PlatinenVersion,r24
271 .L43:
272 0198 81E8 ldi r24,lo8(-127)
273 019a 87B9 out 39-0x20,r24
274 019c 3E9A sbi 39-0x20,6
275 019e 8FEF ldi r24,lo8(-1)
276 01a0 88B9 out 40-0x20,r24
277 01a2 8BE1 ldi r24,lo8(27)
278 01a4 84B9 out 36-0x20,r24
279 01a6 81E0 ldi r24,lo8(1)
280 01a8 85B9 out 37-0x20,r24
281 01aa 8EE3 ldi r24,lo8(62)
282 01ac 8AB9 out 42-0x20,r24
283 01ae 579A sbi 42-0x20,7
284 01b0 87E4 ldi r24,lo8(71)
285 01b2 8BB9 out 43-0x20,r24
286 01b4 469A sbi 40-0x20,6
287 01b6 84B7 in r24,84-0x20
288 01b8 877F andi r24,lo8(-9)
289 01ba 84BF out 84-0x20,r24
290 01bc 8091 6000 lds r24,96
291 01c0 8861 ori r24,lo8(24)
292 01c2 8093 6000 sts 96,r24
293 01c6 1092 6000 sts 96,__zero_reg__
294 01ca 80ED ldi r24,lo8(2000)
295 01cc 97E0 ldi r25,hi8(2000)
296 01ce 9093 0000 sts (beeptime)+1,r25
297 01d2 8093 0000 sts beeptime,r24
298 01d6 1092 0000 sts (StickGier)+1,__zero_reg__
299 01da 1092 0000 sts StickGier,__zero_reg__
300 01de 1092 0000 sts (PPM_in+4)+1,__zero_reg__
301 01e2 1092 0000 sts PPM_in+4,__zero_reg__
302 01e6 1092 0000 sts (StickRoll)+1,__zero_reg__
303 01ea 1092 0000 sts StickRoll,__zero_reg__
304 01ee 1092 0000 sts (StickNick)+1,__zero_reg__
305 01f2 1092 0000 sts StickNick,__zero_reg__
306 01f6 2091 0000 lds r18,PlatinenVersion
307 01fa 2431 cpi r18,lo8(20)
308 01fc 00F4 brsh .+2
309 01fe 00C0 rjmp .L46
310 0200 88E8 ldi r24,lo8(1160)
311 0202 94E0 ldi r25,hi8(1160)
312 0204 A0E0 ldi r26,hlo8(1160)
313 0206 B0E0 ldi r27,hhi8(1160)
314 0208 8093 0000 sts GIER_GRAD_FAKTOR,r24
315 020c 9093 0000 sts (GIER_GRAD_FAKTOR)+1,r25
316 0210 A093 0000 sts (GIER_GRAD_FAKTOR)+2,r26
317 0214 B093 0000 sts (GIER_GRAD_FAKTOR)+3,r27
318 .L48:
319 0218 2A30 cpi r18,lo8(10)
320 021a 01F4 brne .+2
321 021c 00C0 rjmp .L49
322 021e 2431 cpi r18,lo8(20)
323 0220 01F4 brne .+2
324 0222 00C0 rjmp .L49
325 0224 289A sbi 37-0x20,0
326 .L52:
327 0226 0E94 0000 call Timer_Init
328 022a 0E94 0000 call TIMER2_Init
329 022e 0E94 0000 call UART_Init
330 0232 0E94 0000 call rc_sum_init
331 0236 0E94 0000 call ADC_Init
332 023a 0E94 0000 call i2c_init
333 023e 0E94 0000 call SPI_MasterInit
334 /* #APP */
335 0242 7894 sei
336 /* #NOAPP */
337 0244 2091 0000 lds r18,PlatinenVersion
338 0248 822F mov r24,r18
339 024a 6AE0 ldi r22,lo8(10)
340 024c 0E94 0000 call __udivmodqi4
341 0250 492F mov r20,r25
342 0252 50E0 ldi r21,lo8(0)
343 0254 822F mov r24,r18
344 0256 0E94 0000 call __udivmodqi4
345 025a 90E0 ldi r25,lo8(0)
346 025c 20E7 ldi r18,lo8(112)
347 025e 30E0 ldi r19,hi8(112)
348 0260 3F93 push r19
349 0262 2F93 push r18
350 0264 28E4 ldi r18,lo8(72)
351 0266 30E0 ldi r19,hi8(72)
352 0268 3F93 push r19
353 026a 2F93 push r18
354 026c 1F92 push __zero_reg__
355 026e 1F92 push __zero_reg__
356 0270 5F93 push r21
357 0272 4F93 push r20
358 0274 9F93 push r25
359 0276 8F93 push r24
360 0278 80E0 ldi r24,lo8(__c.2416)
361 027a 90E0 ldi r25,hi8(__c.2416)
362 027c 9F93 push r25
363 027e 8F93 push r24
364 0280 1F92 push __zero_reg__
365 0282 0E94 0000 call _printf_P
366 0286 8091 C800 lds r24,200
367 028a 2DB7 in r18,__SP_L__
368 028c 3EB7 in r19,__SP_H__
369 028e 235F subi r18,lo8(-(13))
370 0290 3F4F sbci r19,hi8(-(13))
371 0292 0FB6 in __tmp_reg__,__SREG__
372 0294 F894 cli
373 0296 3EBF out __SP_H__,r19
374 0298 0FBE out __SREG__,__tmp_reg__
375 029a 2DBF out __SP_L__,r18
376 029c 8032 cpi r24,lo8(32)
377 029e 01F4 brne .+2
378 02a0 00C0 rjmp .L136
379 .L53:
380 02a2 80E0 ldi r24,lo8(__c.2419)
381 02a4 90E0 ldi r25,hi8(__c.2419)
382 02a6 9F93 push r25
383 02a8 8F93 push r24
384 02aa 1F92 push __zero_reg__
385 02ac 0E94 0000 call _printf_P
386 02b0 0F90 pop __tmp_reg__
387 02b2 0F90 pop __tmp_reg__
388 02b4 0F90 pop __tmp_reg__
389 02b6 8091 0000 lds r24,PlatinenVersion
390 02ba 8C30 cpi r24,lo8(12)
391 02bc 00F0 brlo .+2
392 02be 00C0 rjmp .L56
393 02c0 299A sbi 37-0x20,1
394 .L58:
395 02c2 49E0 ldi r20,lo8(9)
396 02c4 60E0 ldi r22,lo8(EE_Parameter)
397 02c6 70E0 ldi r23,hi8(EE_Parameter)
398 02c8 83E0 ldi r24,lo8(3)
399 02ca 0E94 0000 call ReadParameterSet
400 02ce 70E0 ldi r23,lo8(EEPromArray+1)
401 02d0 C72E mov r12,r23
402 02d2 70E0 ldi r23,hi8(EEPromArray+1)
403 02d4 D72E mov r13,r23
404 02d6 D601 movw r26,r12
405 /* #APP */
406 02d8 0E94 0000 call __eeprom_read_byte_1F2021
407 02dc 802D mov r24,__tmp_reg__
408 /* #NOAPP */
409 02de 8A34 cpi r24,lo8(74)
410 02e0 01F4 brne .+2
411 02e2 00C0 rjmp .L59
412 02e4 0E94 0000 call DefaultKonstanten1
413 02e8 80E0 ldi r24,lo8(__c.2421)
414 02ea 90E0 ldi r25,hi8(__c.2421)
415 02ec 9F93 push r25
416 02ee 8F93 push r24
417 02f0 1F92 push __zero_reg__
418 02f2 0E94 0000 call _printf_P
419 02f6 1A82 std Y+2,__zero_reg__
420 02f8 1982 std Y+1,__zero_reg__
421 02fa 0F90 pop __tmp_reg__
422 02fc 0F90 pop __tmp_reg__
423 02fe 0F90 pop __tmp_reg__
424 0300 60E0 ldi r22,lo8(EEPromArray+80)
425 0302 A62E mov r10,r22
426 0304 60E0 ldi r22,hi8(EEPromArray+80)
427 0306 B62E mov r11,r22
428 0308 50E0 ldi r21,lo8(EEPromArray+81)
429 030a 852E mov r8,r21
430 030c 50E0 ldi r21,hi8(EEPromArray+81)
431 030e 952E mov r9,r21
432 0310 40E0 ldi r20,lo8(EEPromArray+82)
433 0312 642E mov r6,r20
434 0314 40E0 ldi r20,hi8(EEPromArray+82)
435 0316 742E mov r7,r20
436 0318 30E0 ldi r19,lo8(EEPromArray+83)
437 031a 432E mov r4,r19
438 031c 30E0 ldi r19,hi8(EEPromArray+83)
439 031e 532E mov r5,r19
440 0320 20E0 ldi r18,lo8(EEPromArray+84)
441 0322 222E mov r2,r18
442 0324 20E0 ldi r18,hi8(EEPromArray+84)
443 0326 322E mov r3,r18
444 0328 90E0 ldi r25,lo8(EEPromArray+87)
445 032a E92E mov r14,r25
446 032c 90E0 ldi r25,hi8(EEPromArray+87)
447 032e F92E mov r15,r25
448 .L61:
449 0330 0981 ldd r16,Y+1
450 0332 102F mov r17,r16
451 0334 1F5F subi r17,lo8(-(1))
452 0336 1230 cpi r17,lo8(2)
453 0338 01F4 brne .+2
454 033a 00C0 rjmp .L134
455 033c 1330 cpi r17,lo8(3)
456 033e 01F4 brne .+2
457 0340 00C0 rjmp .L137
458 0342 1430 cpi r17,lo8(4)
459 0344 00F0 brlo .+2
460 0346 00C0 rjmp .L134
461 .L65:
462 0348 8091 0000 lds r24,PlatinenVersion
463 034c 8431 cpi r24,lo8(20)
464 034e 00F0 brlo .L69
465 0350 85E0 ldi r24,lo8(5)
466 0352 8093 0000 sts EE_Parameter+24,r24
467 0356 1092 0000 sts EE_Parameter+48,__zero_reg__
468 035a 8BE1 ldi r24,lo8(27)
469 035c 8093 0000 sts EE_Parameter+20,r24
470 0360 8EE4 ldi r24,lo8(78)
471 0362 8093 0000 sts EE_Parameter+45,r24
472 0366 8093 0000 sts EE_Parameter+46,r24
473 .L69:
474 036a D501 movw r26,r10
475 /* #APP */
476 036c 0E94 0000 call __eeprom_read_byte_1F2021
477 0370 802D mov r24,__tmp_reg__
478 /* #NOAPP */
479 0372 8C30 cpi r24,lo8(12)
480 0374 00F0 brlo .+2
481 0376 00C0 rjmp .L71
482 0378 D401 movw r26,r8
483 /* #APP */
484 037a 0E94 0000 call __eeprom_read_byte_1F2021
485 037e 802D mov r24,__tmp_reg__
486 /* #NOAPP */
487 0380 8C30 cpi r24,lo8(12)
488 0382 00F0 brlo .+2
489 0384 00C0 rjmp .L71
490 0386 D301 movw r26,r6
491 /* #APP */
492 0388 0E94 0000 call __eeprom_read_byte_1F2021
493 038c 802D mov r24,__tmp_reg__
494 /* #NOAPP */
495 038e 8C30 cpi r24,lo8(12)
496 0390 00F0 brlo .+2
497 0392 00C0 rjmp .L71
498 0394 D201 movw r26,r4
499 /* #APP */
500 0396 0E94 0000 call __eeprom_read_byte_1F2021
501 039a 802D mov r24,__tmp_reg__
502 /* #NOAPP */
503 039c 8C30 cpi r24,lo8(12)
504 039e 00F0 brlo .+2
505 03a0 00C0 rjmp .L71
506 03a2 A0E0 ldi r26,lo8(EEPromArray+80)
507 03a4 B0E0 ldi r27,hi8(EEPromArray+80)
508 /* #APP */
509 03a6 0E94 0000 call __eeprom_read_byte_1F2021
510 03aa 802D mov r24,__tmp_reg__
511 /* #NOAPP */
512 03ac 8093 0000 sts EE_Parameter,r24
513 03b0 A0E0 ldi r26,lo8(EEPromArray+81)
514 03b2 B0E0 ldi r27,hi8(EEPromArray+81)
515 /* #APP */
516 03b4 0E94 0000 call __eeprom_read_byte_1F2021
517 03b8 802D mov r24,__tmp_reg__
518 /* #NOAPP */
519 03ba 8093 0000 sts EE_Parameter+1,r24
520 03be A0E0 ldi r26,lo8(EEPromArray+82)
521 03c0 B0E0 ldi r27,hi8(EEPromArray+82)
522 /* #APP */
523 03c2 0E94 0000 call __eeprom_read_byte_1F2021
524 03c6 802D mov r24,__tmp_reg__
525 /* #NOAPP */
526 03c8 8093 0000 sts EE_Parameter+2,r24
527 03cc A0E0 ldi r26,lo8(EEPromArray+83)
528 03ce B0E0 ldi r27,hi8(EEPromArray+83)
529 /* #APP */
530 03d0 0E94 0000 call __eeprom_read_byte_1F2021
531 03d4 802D mov r24,__tmp_reg__
532 /* #NOAPP */
533 03d6 8093 0000 sts EE_Parameter+3,r24
534 03da D101 movw r26,r2
535 /* #APP */
536 03dc 0E94 0000 call __eeprom_read_byte_1F2021
537 03e0 802D mov r24,__tmp_reg__
538 /* #NOAPP */
539 03e2 8093 0000 sts EE_Parameter+4,r24
540 03e6 A0E0 ldi r26,lo8(EEPromArray+85)
541 03e8 B0E0 ldi r27,hi8(EEPromArray+85)
542 /* #APP */
543 03ea 0E94 0000 call __eeprom_read_byte_1F2021
544 03ee 802D mov r24,__tmp_reg__
545 /* #NOAPP */
546 03f0 8093 0000 sts EE_Parameter+5,r24
547 03f4 A0E0 ldi r26,lo8(EEPromArray+86)
548 03f6 B0E0 ldi r27,hi8(EEPromArray+86)
549 /* #APP */
550 03f8 0E94 0000 call __eeprom_read_byte_1F2021
551 03fc 802D mov r24,__tmp_reg__
552 /* #NOAPP */
553 03fe 8093 0000 sts EE_Parameter+6,r24
554 0402 D701 movw r26,r14
555 /* #APP */
556 0404 0E94 0000 call __eeprom_read_byte_1F2021
557 0408 802D mov r24,__tmp_reg__
558 /* #NOAPP */
559 040a 8093 0000 sts EE_Parameter+7,r24
560 040e 1130 cpi r17,lo8(1)
561 0410 01F4 brne .+2
562 0412 00C0 rjmp .L138
563 .L76:
564 0414 4CE5 ldi r20,lo8(92)
565 0416 60E0 ldi r22,lo8(EE_Parameter)
566 0418 70E0 ldi r23,hi8(EE_Parameter)
567 041a 812F mov r24,r17
568 041c 0E94 0000 call WriteParameterSet
569 0420 0E5F subi r16,lo8(-(2))
570 0422 0630 cpi r16,lo8(6)
571 0424 00F4 brsh .L139
572 .L62:
573 0426 8981 ldd r24,Y+1
574 0428 9A81 ldd r25,Y+2
575 042a 0196 adiw r24,1
576 042c 9A83 std Y+2,r25
577 042e 8983 std Y+1,r24
578 0430 00C0 rjmp .L61
579 .L71:
580 0432 0E94 0000 call DefaultStickMapping
581 0436 00C0 rjmp .L76
582 .L139:
583 0438 83E0 ldi r24,lo8(3)
584 043a 0E94 0000 call SetActiveParamSetNumber
585 043e 8AE4 ldi r24,lo8(74)
586 0440 D601 movw r26,r12
587 /* #APP */
588 0442 082E mov __tmp_reg__,r24
589 0444 0E94 0000 call __eeprom_write_byte_1F2021
590 /* #NOAPP */
591 .L59:
592 0448 A0E0 ldi r26,lo8(EEPromArray+4)
593 044a B0E0 ldi r27,hi8(EEPromArray+4)
594 /* #APP */
595 044c 0E94 0000 call __eeprom_read_byte_1F2021
596 0450 802D mov r24,__tmp_reg__
597 /* #NOAPP */
598 0452 8530 cpi r24,lo8(5)
599 0454 00F0 brlo .+2
600 0456 00C0 rjmp .L140
601 .L79:
602 0458 0E94 0000 call GetActiveParamSetNumber
603 045c 4CE5 ldi r20,lo8(92)
604 045e 60E0 ldi r22,lo8(EE_Parameter)
605 0460 70E0 ldi r23,hi8(EE_Parameter)
606 0462 0E94 0000 call ReadParameterSet
607 0466 0E94 0000 call GetActiveParamSetNumber
608 046a 90E0 ldi r25,lo8(0)
609 046c 9F93 push r25
610 046e 8F93 push r24
611 0470 80E0 ldi r24,lo8(__c.2433)
612 0472 90E0 ldi r25,hi8(__c.2433)
613 0474 9F93 push r25
614 0476 8F93 push r24
615 0478 1F92 push __zero_reg__
616 047a 0E94 0000 call _printf_P
617 047e 8091 0000 lds r24,EE_Parameter+8
618 0482 0F90 pop __tmp_reg__
619 0484 0F90 pop __tmp_reg__
620 0486 0F90 pop __tmp_reg__
621 0488 0F90 pop __tmp_reg__
622 048a 0F90 pop __tmp_reg__
623 048c 80FD sbrc r24,0
624 048e 00C0 rjmp .L81
625 0490 08EE ldi r16,lo8(1000)
626 0492 13E0 ldi r17,hi8(1000)
627 .L83:
628 0494 0E94 0000 call SetNeutral
629 0498 8091 0000 lds r24,PlatinenVersion
630 049c 8A30 cpi r24,lo8(10)
631 049e 01F4 brne .+2
632 04a0 00C0 rjmp .L86
633 04a2 8431 cpi r24,lo8(20)
634 04a4 01F4 brne .+2
635 04a6 00C0 rjmp .L86
636 04a8 289A sbi 37-0x20,0
637 .L89:
638 04aa 80ED ldi r24,lo8(2000)
639 04ac 97E0 ldi r25,hi8(2000)
640 04ae 9093 0000 sts (beeptime)+1,r25
641 04b2 8093 0000 sts beeptime,r24
642 04b6 85E5 ldi r24,lo8(85)
643 04b8 8093 0000 sts ExternControl,r24
644 04bc 80E0 ldi r24,lo8(__c.2442)
645 04be 90E0 ldi r25,hi8(__c.2442)
646 04c0 9F93 push r25
647 04c2 8F93 push r24
648 04c4 1F92 push __zero_reg__
649 04c6 0E94 0000 call _printf_P
650 04ca 8091 0000 lds r24,EE_Parameter+8
651 04ce 0F90 pop __tmp_reg__
652 04d0 0F90 pop __tmp_reg__
653 04d2 0F90 pop __tmp_reg__
654 04d4 82FF sbrs r24,2
655 04d6 00C0 rjmp .L90
656 04d8 80E0 ldi r24,lo8(__c.2444)
657 04da 90E0 ldi r25,hi8(__c.2444)
658 04dc 9F93 push r25
659 04de 8F93 push r24
660 04e0 1F92 push __zero_reg__
661 04e2 0E94 0000 call _printf_P
662 04e6 0F90 pop __tmp_reg__
663 04e8 0F90 pop __tmp_reg__
664 04ea 0F90 pop __tmp_reg__
665 .L92:
666 04ec 80E0 ldi r24,lo8(__c.2448)
667 04ee 90E0 ldi r25,hi8(__c.2448)
668 04f0 9F93 push r25
669 04f2 8F93 push r24
670 04f4 1F92 push __zero_reg__
671 04f6 0E94 0000 call _printf_P
672 04fa 0E94 0000 call LcdClear
673 04fe 88E8 ldi r24,lo8(5000)
674 0500 93E1 ldi r25,hi8(5000)
675 0502 9093 0000 sts (I2CTimeout)+1,r25
676 0506 8093 0000 sts I2CTimeout,r24
677 050a 81E0 ldi r24,lo8(1)
678 050c 8093 0000 sts WinkelOut+7,r24
679 0510 0F90 pop __tmp_reg__
680 0512 0F90 pop __tmp_reg__
681 0514 0F90 pop __tmp_reg__
682 .L135:
683 0516 8091 0000 lds r24,UpdateMotor
684 051a 8823 tst r24
685 051c 01F4 brne .+2
686 051e 00C0 rjmp .L94
687 .L143:
688 0520 8091 0000 lds r24,AdReady
689 0524 8823 tst r24
690 0526 01F4 brne .+2
691 0528 00C0 rjmp .L94
692 052a 1092 0000 sts UpdateMotor,__zero_reg__
693 052e 8091 0000 lds r24,WinkelOut+6
694 0532 8823 tst r24
695 0534 01F4 brne .+2
696 0536 00C0 rjmp .L97
697 0538 0E94 0000 call CalMk3Mag
698 053c 0E94 0000 call SendMotorData
699 0540 2091 0000 lds r18,PlatinenVersion
700 0544 2A30 cpi r18,lo8(10)
701 0546 01F4 brne .+2
702 0548 00C0 rjmp .L100
703 .L144:
704 054a 2431 cpi r18,lo8(20)
705 054c 01F4 brne .+2
706 054e 00C0 rjmp .L100
707 0550 289A sbi 37-0x20,0
708 0552 8091 0000 lds r24,PcZugriff
709 0556 8823 tst r24
710 0558 01F4 brne .+2
711 055a 00C0 rjmp .L104
712 .L145:
713 055c 8150 subi r24,lo8(-(-1))
714 055e 8093 0000 sts PcZugriff,r24
715 .L106:
716 0562 8091 0000 lds r24,SenderOkay
717 0566 8823 tst r24
718 0568 01F0 breq .L107
719 056a 8091 0000 lds r24,SenderOkay
720 056e 8150 subi r24,lo8(-(-1))
721 0570 8093 0000 sts SenderOkay,r24
722 .L107:
723 0574 8091 0000 lds r24,I2CTimeout
724 0578 9091 0000 lds r25,(I2CTimeout)+1
725 057c 892B or r24,r25
726 057e 01F4 brne .+2
727 0580 00C0 rjmp .L141
728 0582 8091 0000 lds r24,I2CTimeout
729 0586 9091 0000 lds r25,(I2CTimeout)+1
730 058a 0197 sbiw r24,1
731 058c 9093 0000 sts (I2CTimeout)+1,r25
732 0590 8093 0000 sts I2CTimeout,r24
733 0594 2A30 cpi r18,lo8(10)
734 0596 01F4 brne .+2
735 0598 00C0 rjmp .L114
736 059a 2431 cpi r18,lo8(20)
737 059c 01F4 brne .+2
738 059e 00C0 rjmp .L114
739 05a0 289A sbi 37-0x20,0
740 .L111:
741 05a2 8091 0000 lds r24,UpdateMotor
742 05a6 8823 tst r24
743 05a8 01F0 breq .L117
744 05aa 8091 0000 lds r24,MotorenEin
745 05ae 8823 tst r24
746 05b0 01F0 breq .+2
747 05b2 00C0 rjmp .L119
748 .L117:
749 05b4 0E94 0000 call DatenUebertragung
750 05b8 0E94 0000 call BearbeiteRxDaten
751 .L120:
752 05bc C801 movw r24,r16
753 05be 0E94 0000 call CheckDelay
754 05c2 8823 tst r24
755 05c4 01F0 breq .L121
756 05c6 2091 0000 lds r18,UBat
757 05ca 3091 0000 lds r19,(UBat)+1
758 05ce 8091 0000 lds r24,EE_Parameter+25
759 05d2 90E0 ldi r25,lo8(0)
760 05d4 2817 cp r18,r24
761 05d6 3907 cpc r19,r25
762 05d8 04F4 brge .L123
763 05da 8091 0000 lds r24,BeepMuster
764 05de 9091 0000 lds r25,(BeepMuster)+1
765 05e2 8F5F subi r24,lo8(-1)
766 05e4 9F4F sbci r25,hi8(-1)
767 05e6 01F4 brne .+2
768 05e8 00C0 rjmp .L142
769 .L123:
770 05ea 0E94 0000 call SPI_StartTransmitPacket
771 05ee 84E0 ldi r24,lo8(4)
772 05f0 8093 0000 sts SendSPI,r24
773 05f4 84E1 ldi r24,lo8(20)
774 05f6 90E0 ldi r25,hi8(20)
775 05f8 0E94 0000 call SetDelay
776 05fc 8C01 movw r16,r24
777 .L121:
778 05fe 0E94 0000 call LED_Update
779 .L94:
780 0602 8091 0000 lds r24,SendSPI
781 0606 8823 tst r24
782 0608 01F0 breq .+2
783 060a 00C0 rjmp .L135
784 060c 0E94 0000 call SPI_TransmitByte
785 0610 8091 0000 lds r24,UpdateMotor
786 0614 8823 tst r24
787 0616 01F0 breq .L94
788 0618 00C0 rjmp .L143
789 .L97:
790 061a 0E94 0000 call MotorRegler
791 061e 0E94 0000 call SendMotorData
792 0622 2091 0000 lds r18,PlatinenVersion
793 0626 2A30 cpi r18,lo8(10)
794 0628 01F0 breq .+2
795 062a 00C0 rjmp .L144
796 .L100:
797 062c 2898 cbi 37-0x20,0
798 062e 8091 0000 lds r24,PcZugriff
799 0632 8823 tst r24
800 0634 01F0 breq .+2
801 0636 00C0 rjmp .L145
802 .L104:
803 0638 1092 0000 sts ExternControl+10,__zero_reg__
804 063c 1092 0000 sts (ExternStickNick)+1,__zero_reg__
805 0640 1092 0000 sts ExternStickNick,__zero_reg__
806 0644 1092 0000 sts (ExternStickRoll)+1,__zero_reg__
807 0648 1092 0000 sts ExternStickRoll,__zero_reg__
808 064c 1092 0000 sts (ExternStickGier)+1,__zero_reg__
809 0650 1092 0000 sts ExternStickGier,__zero_reg__
810 0654 00C0 rjmp .L106
811 .L114:
812 0656 2898 cbi 37-0x20,0
813 0658 00C0 rjmp .L111
814 .L141:
815 065a 85E0 ldi r24,lo8(5)
816 065c 90E0 ldi r25,hi8(5)
817 065e 9093 0000 sts (I2CTimeout)+1,r25
818 0662 8093 0000 sts I2CTimeout,r24
819 0666 0E94 0000 call i2c_reset
820 066a 8091 0000 lds r24,BeepMuster
821 066e 9091 0000 lds r25,(BeepMuster)+1
822 0672 8F5F subi r24,lo8(-1)
823 0674 9F4F sbci r25,hi8(-1)
824 0676 01F0 breq .+2
825 0678 00C0 rjmp .L111
826 067a 8091 0000 lds r24,MotorenEin
827 067e 8823 tst r24
828 0680 01F4 brne .+2
829 0682 00C0 rjmp .L111
830 0684 80E1 ldi r24,lo8(10000)
831 0686 97E2 ldi r25,hi8(10000)
832 0688 9093 0000 sts (beeptime)+1,r25
833 068c 8093 0000 sts beeptime,r24
834 0690 80E8 ldi r24,lo8(128)
835 0692 90E0 ldi r25,hi8(128)
836 0694 9093 0000 sts (BeepMuster)+1,r25
837 0698 8093 0000 sts BeepMuster,r24
838 069c 00C0 rjmp .L111
839 .L119:
840 069e 0E94 0000 call BearbeiteRxDaten
841 06a2 00C0 rjmp .L120
842 .L142:
843 06a4 80E7 ldi r24,lo8(6000)
844 06a6 97E1 ldi r25,hi8(6000)
845 06a8 9093 0000 sts (beeptime)+1,r25
846 06ac 8093 0000 sts beeptime,r24
847 06b0 80E0 ldi r24,lo8(768)
848 06b2 93E0 ldi r25,hi8(768)
849 06b4 9093 0000 sts (BeepMuster)+1,r25
850 06b8 8093 0000 sts BeepMuster,r24
851 06bc 00C0 rjmp .L123
852 .L134:
853 06be 0E94 0000 call DefaultKonstanten2
854 06c2 00C0 rjmp .L65
855 .L90:
856 06c4 80E0 ldi r24,lo8(__c.2446)
857 06c6 90E0 ldi r25,hi8(__c.2446)
858 06c8 9F93 push r25
859 06ca 8F93 push r24
860 06cc 1F92 push __zero_reg__
861 06ce 0E94 0000 call _printf_P
862 06d2 0F90 pop __tmp_reg__
863 06d4 0F90 pop __tmp_reg__
864 06d6 0F90 pop __tmp_reg__
865 06d8 00C0 rjmp .L92
866 .L86:
867 06da 2898 cbi 37-0x20,0
868 06dc 00C0 rjmp .L89
869 .L56:
870 06de 2998 cbi 37-0x20,1
871 06e0 00C0 rjmp .L58
872 .L136:
873 06e2 8091 CA00 lds r24,202
874 06e6 8630 cpi r24,lo8(6)
875 06e8 01F0 breq .+2
876 06ea 00C0 rjmp .L53
877 06ec 0E94 0000 call Uart1Init
878 06f0 00C0 rjmp .L53
879 .L81:
880 06f2 80E0 ldi r24,lo8(__c.2435)
881 06f4 90E0 ldi r25,hi8(__c.2435)
882 06f6 9F93 push r25
883 06f8 8F93 push r24
884 06fa 1F92 push __zero_reg__
885 06fc 0E94 0000 call _printf_P
886 0700 88EE ldi r24,lo8(1000)
887 0702 93E0 ldi r25,hi8(1000)
888 0704 0E94 0000 call SetDelay
889 0708 8C01 movw r16,r24
890 070a 0E94 0000 call SucheLuftruckOffset
891 070e 0F90 pop __tmp_reg__
892 0710 0F90 pop __tmp_reg__
893 0712 0F90 pop __tmp_reg__
894 .L84:
895 0714 C801 movw r24,r16
896 0716 0E94 0000 call CheckDelay
897 071a 8823 tst r24
898 071c 01F0 breq .L84
899 071e 80E0 ldi r24,lo8(__c.2440)
900 0720 90E0 ldi r25,hi8(__c.2440)
901 0722 9F93 push r25
902 0724 8F93 push r24
903 0726 1F92 push __zero_reg__
904 0728 0E94 0000 call _printf_P
905 072c 0F90 pop __tmp_reg__
906 072e 0F90 pop __tmp_reg__
907 0730 0F90 pop __tmp_reg__
908 0732 00C0 rjmp .L83
909 .L49:
910 0734 2898 cbi 37-0x20,0
911 0736 00C0 rjmp .L52
912 .L137:
913 0738 0E94 0000 call DefaultKonstanten3
914 073c 00C0 rjmp .L65
915 .L138:
916 073e E0E0 ldi r30,lo8(__c.2425)
917 0740 F0E0 ldi r31,hi8(__c.2425)
918 0742 FF93 push r31
919 0744 EF93 push r30
920 0746 1F92 push __zero_reg__
921 0748 0E94 0000 call _printf_P
922 074c 4CE5 ldi r20,lo8(92)
923 074e 60E0 ldi r22,lo8(EE_Parameter)
924 0750 70E0 ldi r23,hi8(EE_Parameter)
925 0752 81E0 ldi r24,lo8(1)
926 0754 0E94 0000 call WriteParameterSet
927 0758 0F90 pop __tmp_reg__
928 075a 0F90 pop __tmp_reg__
929 075c 0F90 pop __tmp_reg__
930 075e 00C0 rjmp .L62
931 .L140:
932 0760 80E0 ldi r24,lo8(__c.2431)
933 0762 90E0 ldi r25,hi8(__c.2431)
934 0764 9F93 push r25
935 0766 8F93 push r24
936 0768 1F92 push __zero_reg__
937 076a 0E94 0000 call _printf_P
938 076e 0F90 pop __tmp_reg__
939 0770 0F90 pop __tmp_reg__
940 0772 0F90 pop __tmp_reg__
941 0774 00C0 rjmp .L79
942 .L41:
943 0776 8BE0 ldi r24,lo8(11)
944 0778 8093 0000 sts PlatinenVersion,r24
945 077c 00C0 rjmp .L43
946 .L39:
947 077e 199B sbis 35-0x20,1
948 0780 00C0 rjmp .L44
949 0782 84E1 ldi r24,lo8(20)
950 0784 8093 0000 sts PlatinenVersion,r24
951 0788 00C0 rjmp .L43
952 .L46:
953 078a 8BE0 ldi r24,lo8(1291)
954 078c 95E0 ldi r25,hi8(1291)
955 078e A0E0 ldi r26,hlo8(1291)
956 0790 B0E0 ldi r27,hhi8(1291)
957 0792 8093 0000 sts GIER_GRAD_FAKTOR,r24
958 0796 9093 0000 sts (GIER_GRAD_FAKTOR)+1,r25
959 079a A093 0000 sts (GIER_GRAD_FAKTOR)+2,r26
960 079e B093 0000 sts (GIER_GRAD_FAKTOR)+3,r27
961 07a2 00C0 rjmp .L48
962 .L44:
963 07a4 8AE0 ldi r24,lo8(10)
964 07a6 8093 0000 sts PlatinenVersion,r24
965 07aa 00C0 rjmp .L43
966 /* epilogue: frame size=2 */
967 /* epilogue: noreturn */
968 /* epilogue end (size=0) */
969 /* function main size 831 (805) */
971 .global PlatinenVersion
972 .data
975 PlatinenVersion:
976 0000 0A .byte 10
977 .global SendVersionToNavi
980 SendVersionToNavi:
981 0001 01 .byte 1
982 .section .progmem.data,"a",@progbits
985 __c.2448:
986 0000 0A0A 0D00 .string "\n\n\r"
989 __c.2446:
990 0004 4E65 7574 .string "Neutral"
990 7261 6C00
993 __c.2444:
994 000c 4865 6164 .string "HeadingHold"
994 696E 6748
994 6F6C 6400
997 __c.2442:
998 0018 0A0D 5374 .string "\n\rSteuerung: "
998 6575 6572
998 756E 673A
998 2000
1001 __c.2440:
1002 0026 4F4B 0A0D .string "OK\n\r"
1002 00
1005 __c.2435:
1006 002b 0A0D 4162 .string "\n\rAbgleich Luftdrucksensor.."
1006 676C 6569
1006 6368 204C
1006 7566 7464
1006 7275 636B
1009 __c.2433:
1010 0048 0A0D 4265 .string "\n\rBenutze Parametersatz %d"
1010 6E75 747A
1010 6520 5061
1010 7261 6D65
1010 7465 7273
1013 __c.2431:
1014 0063 0A0D 4143 .string "\n\rACC nicht abgeglichen!"
1014 4320 6E69
1014 6368 7420
1014 6162 6765
1014 676C 6963
1017 __c.2425:
1018 007c 3A20 4765 .string ": Generating Default-Parameter using old Stick Settings"
1018 6E65 7261
1018 7469 6E67
1018 2044 6566
1018 6175 6C74
1021 __c.2421:
1022 00b4 0A0D 496E .string "\n\rInit. EEPROM"
1022 6974 2E20
1022 4545 5052
1022 4F4D 00
1025 __c.2419:
1026 00c3 0A0D 3D3D .string "\n\r=============================="
1026 3D3D 3D3D
1026 3D3D 3D3D
1026 3D3D 3D3D
1026 3D3D 3D3D
1029 __c.2416:
1030 00e4 0A0D 466C .string "\n\rFlightControl\n\rHardware:%d.%d\n\rSoftware:V%d.%d%c "
1030 6967 6874
1030 436F 6E74
1030 726F 6C0A
1030 0D48 6172
1031 .data
1034 stick.2399:
1035 0002 01 .byte 1
1036 .global EEPromArray
1037 .section .eeprom,"aw",@progbits
1040 EEPromArray:
1041 0000 0000 0000 .skip 2048,0
1041 0000 0000
1041 0000 0000
1041 0000 0000
1041 0000 0000
1042 /* File "main.c": code 1022 = 0x03fe ( 994), prologues 26, epilogues 2 */
DEFINED SYMBOLS
*ABS*:00000000 main.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:12 .text:00000000 SetActiveParamSetNumber
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1040 .eeprom:00000000 EEPromArray
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:37 .text:00000018 GetActiveParamSetNumber
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:66 .text:0000003c CalMk3Mag
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1034 .data:00000002 stick.2399
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:122 .text:000000ac WriteParameterSet
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:149 .text:000000d8 .117_start
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:155 .text:000000e4 .117_finished
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:190 .text:00000114 ReadParameterSet
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:218 .text:00000140 .163_start
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:224 .text:0000014c .163_finished
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:234 .text:00000152 main
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:975 .data:00000000 PlatinenVersion
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1029 .progmem.data:000000e4 __c.2416
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1025 .progmem.data:000000c3 __c.2419
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1021 .progmem.data:000000b4 __c.2421
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1009 .progmem.data:00000048 __c.2433
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:997 .progmem.data:00000018 __c.2442
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:993 .progmem.data:0000000c __c.2444
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:985 .progmem.data:00000000 __c.2448
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:989 .progmem.data:00000004 __c.2446
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1005 .progmem.data:0000002b __c.2435
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1001 .progmem.data:00000026 __c.2440
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1017 .progmem.data:0000007c __c.2425
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:1013 .progmem.data:00000063 __c.2431
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccRl0yRh.s:980 .data:00000001 SendVersionToNavi
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__eeprom_write_byte_1F2021
__eeprom_read_byte_1F2021
EE_Parameter
PPM_in
WinkelOut
beeptime
Piep
DebugOut
__eeprom_write_block_1F2021
LED_Init
StickGier
StickRoll
StickNick
GIER_GRAD_FAKTOR
Timer_Init
TIMER2_Init
UART_Init
rc_sum_init
ADC_Init
i2c_init
SPI_MasterInit
__udivmodqi4
_printf_P
DefaultKonstanten1
DefaultStickMapping
SetNeutral
ExternControl
LcdClear
I2CTimeout
UpdateMotor
AdReady
SendMotorData
PcZugriff
SenderOkay
MotorenEin
DatenUebertragung
BearbeiteRxDaten
CheckDelay
UBat
BeepMuster
SPI_StartTransmitPacket
SendSPI
SetDelay
LED_Update
SPI_TransmitByte
MotorRegler
ExternStickNick
ExternStickRoll
ExternStickGier
i2c_reset
DefaultKonstanten2
Uart1Init
SucheLuftruckOffset
DefaultKonstanten3
/branches/v0.72p kmpec/makefile
0,0 → 1,449
#--------------------------------------------------------------------
# MCU name
MCU = atmega644p
F_CPU = 20000000
#-------------------------------------------------------------------
VERSION_MAJOR = 0
VERSION_MINOR = 72
VERSION_PATCH = 15
 
VERSION_SERIAL_MAJOR = 10 # Serial Protocol
VERSION_SERIAL_MINOR = 0 # Serial Protocol
NC_SPI_COMPATIBLE = 5 # Navi-Kompatibilität
#-------------------------------------------------------------------
 
ifeq ($(MCU), atmega32)
# FUSE_SETTINGS= -u -U lfuse:w:0xff:m -U hfuse:w:0xcf:m
 
HEX_NAME = MEGA32
endif
 
ifeq ($(MCU), atmega644)
FUSE_SETTINGS = -u -U lfuse:w:0xff:m -U hfuse:w:0xdf:m
#FUSE_SETTINGS = -U lfuse:w:0xff:m -U hfuse:w:0xdf:m
# -u bei neuen Controllern wieder einspielen
HEX_NAME = MEGA644
endif
 
ifeq ($(MCU), atmega644p)
FUSE_SETTINGS = -u -U lfuse:w:0xff:m -U hfuse:w:0xdf:m
HEX_NAME = MEGA644
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
endif
ifeq ($(VERSION_PATCH), 1)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)b
endif
ifeq ($(VERSION_PATCH), 2)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)c
endif
ifeq ($(VERSION_PATCH), 3)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)d
endif
ifeq ($(VERSION_PATCH), 4)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)e
endif
ifeq ($(VERSION_PATCH), 5)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)f
endif
ifeq ($(VERSION_PATCH), 6)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)g
endif
ifeq ($(VERSION_PATCH), 7)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)h
endif
ifeq ($(VERSION_PATCH), 8)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)i
endif
ifeq ($(VERSION_PATCH), 9)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)j
endif
ifeq ($(VERSION_PATCH), 10)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)k
endif
ifeq ($(VERSION_PATCH), 11)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)L
endif
ifeq ($(VERSION_PATCH), 12)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)m
endif
ifeq ($(VERSION_PATCH), 13)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)n
endif
ifeq ($(VERSION_PATCH), 14)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)o
endif
ifeq ($(VERSION_PATCH), 15)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)p
endif
ifeq ($(VERSION_PATCH), 16)
TARGET = Flight-Ctrl_$(HEX_NAME)_V$(VERSION_MAJOR)_$(VERSION_MINOR)q
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 = 2
 
##########################################################################################################
# List C source files here. (C dependencies are automatically generated.)
SRC = main.c uart.c printf_P.c timer0.c analog.c menu.c
SRC += twimaster.c rc.c fc.c GPS.c spi.c led.c Spectrum.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 =
 
 
 
# 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
 
CFLAGS += -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 += -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) -A $(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 $(TARGET).eep \
$(TARGET).lss $(TARGET).sym 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.
# Display size of file.
sizebefore:
@if [ -f $(TARGET).elf ]; then echo Size before:; $(ELFSIZE); $(HEXSIZE); echo; fi
sizeafter:
@if [ -f $(TARGET).elf ]; then echo Size after:; $(ELFSIZE); $(HEXSIZE); 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) $(TARGET).hex
$(REMOVE) $(TARGET).eep
$(REMOVE) $(TARGET).obj
$(REMOVE) $(TARGET).cof
$(REMOVE) $(TARGET).elf
$(REMOVE) $(TARGET).map
$(REMOVE) $(TARGET).obj
$(REMOVE) $(TARGET).a90
$(REMOVE) $(TARGET).sym
$(REMOVE) $(TARGET).lnk
$(REMOVE) $(TARGET).lss
$(REMOVE) $(OBJ)
$(REMOVE) $(LST)
$(REMOVE) $(SRC:.c=.s)
$(REMOVE) $(SRC:.c=.d)
 
 
# 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/v0.72p kmpec/menu.c
0,0 → 1,154
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Copyright (c) 04.2007 Holger Buss
// + only for non-profit use
// + www.MikroKopter.com
// + see the File "License.txt" for further Informations
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#include "main.h"
 
unsigned int TestInt = 0;
#define ARRAYGROESSE 10
unsigned char Array[ARRAYGROESSE] = {1,2,3,4,5,6,7,8,9,10};
char DisplayBuff[80] = "Hallo Welt";
unsigned char DispPtr = 0;
 
unsigned char MaxMenue = 11;
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(void)
{
 
if(MenuePunkt > MaxMenue) MenuePunkt = MaxMenue;
 
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 +");
#ifndef QUADRO
LCD_printfxy(0,1,"HWV%d.%d SW%d.%d%c OCTO",PlatinenVersion/10,PlatinenVersion%10, VERSION_MAJOR, VERSION_MINOR, VERSION_PATCH +'a');
#else
LCD_printfxy(0,1,"HW:V%d.%d SW:%d.%d%c",PlatinenVersion/10,PlatinenVersion%10, VERSION_MAJOR, VERSION_MINOR, VERSION_PATCH +'a');
#endif
LCD_printfxy(0,2,"Setting: %d ",GetActiveParamSetNumber());
LCD_printfxy(0,3,"(c) Holger Buss");
// if(RemoteTasten & KEY3) TestInt--;
// if(RemoteTasten & KEY4) TestInt++;
break;
case 1:
if(EE_Parameter.GlobalConfig & CFG_HOEHENREGELUNG)
{
LCD_printfxy(0,0,"Hoehe: %5i",HoehenWert);
LCD_printfxy(0,1,"SollHoehe: %5i",SollHoehe);
LCD_printfxy(0,2,"Luftdruck: %5i",MessLuftdruck);
LCD_printfxy(0,3,"Off : %5i",DruckOffsetSetting);
}
else
{
LCD_printfxy(0,1,"Keine ");
LCD_printfxy(0,2,"Höhenregelung");
}
 
break;
case 2:
LCD_printfxy(0,0,"akt. Lage");
LCD_printfxy(0,1,"Nick: %5i",IntegralNick/1024);
LCD_printfxy(0,2,"Roll: %5i",IntegralRoll/1024);
LCD_printfxy(0,3,"Kompass: %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]],PPM_in[EE_Parameter.Kanalbelegung[K_GIER]]);
LCD_printfxy(0,2,"P1:%4i P2:%4i ",PPM_in[EE_Parameter.Kanalbelegung[K_POTI1]],PPM_in[EE_Parameter.Kanalbelegung[K_POTI2]]);
LCD_printfxy(0,3,"P3:%4i P4:%4i ",PPM_in[EE_Parameter.Kanalbelegung[K_POTI3]],PPM_in[EE_Parameter.Kanalbelegung[K_POTI4]]);
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,"Gier %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,"Gier %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,"Hoch %4i (%3i)",Mittelwert_AccHoch/*accumulate_AccHoch / messanzahl_AccHoch*/,(int)NeutralAccZ);
break;
case 7:
LCD_printfxy(0,1,"Spannung: %5i",UBat);
LCD_printfxy(0,2,"Empf.Pegel:%5i",SenderOkay);
break;
case 8:
LCD_printfxy(0,0,"Kompass ");
LCD_printfxy(0,1,"Richtung: %5i",KompassRichtung);
LCD_printfxy(0,2,"Messwert: %5i",KompassValue);
LCD_printfxy(0,3,"Start: %5i",KompassStartwert);
break;
case 9:
LCD_printfxy(0,0,"Poti1: %3i",Poti1);
LCD_printfxy(0,1,"Poti2: %3i",Poti2);
LCD_printfxy(0,2,"Poti3: %3i",Poti3);
LCD_printfxy(0,3,"Poti4: %3i",Poti4);
break;
case 10:
LCD_printfxy(0,0,"Servo " );
LCD_printfxy(0,1,"Setpoint %3i",Parameter_ServoNickControl);
LCD_printfxy(0,2,"Stellung: %3i",ServoValue);
LCD_printfxy(0,3,"Range:%3i-%3i",EE_Parameter.ServoNickMin,EE_Parameter.ServoNickMax);
break;
case 11:
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;
default: MaxMenue = MenuePunkt - 1;
MenuePunkt = 0;
break;
}
RemoteKeys = 0;
}
/branches/v0.72p kmpec/menu.d
0,0 → 1,2
menu.o menu.d : menu.c main.h old_macros.h _Settings.h printf_P.h timer0.h uart.h \
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/menu.h
0,0 → 1,9
extern void Menu(void);
extern void LcdClear(void);
extern char DisplayBuff[80];
extern unsigned char DispPtr;
 
extern unsigned char MaxMenue;
extern unsigned char MenuePunkt;
extern unsigned char RemoteKeys;
 
/branches/v0.72p kmpec/menu.lst
0,0 → 1,1877
1 .file "menu.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global LcdClear
12 LcdClear:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 E0E0 ldi r30,lo8(DisplayBuff)
16 0002 F0E0 ldi r31,hi8(DisplayBuff)
17 .L2:
18 0004 80E2 ldi r24,lo8(32)
19 0006 8193 st Z+,r24
20 0008 80E0 ldi r24,hi8(DisplayBuff+80)
21 000a E030 cpi r30,lo8(DisplayBuff+80)
22 000c F807 cpc r31,r24
23 000e 01F4 brne .L2
24 /* epilogue: frame size=0 */
25 0010 0895 ret
26 /* epilogue end (size=1) */
27 /* function LcdClear size 9 (8) */
29 .global Menu
31 Menu:
32 /* prologue: frame size=0 */
33 0012 1F93 push r17
34 /* prologue end (size=1) */
35 0014 4091 0000 lds r20,MaxMenue
36 0018 8091 0000 lds r24,MenuePunkt
37 001c 4817 cp r20,r24
38 001e 00F4 brsh .L9
39 0020 4093 0000 sts MenuePunkt,r20
40 .L9:
41 0024 8091 0000 lds r24,RemoteKeys
42 0028 282F mov r18,r24
43 002a 30E0 ldi r19,lo8(0)
44 002c C901 movw r24,r18
45 002e 8170 andi r24,lo8(1)
46 0030 9070 andi r25,hi8(1)
47 0032 582F mov r21,r24
48 0034 8823 tst r24
49 0036 01F0 breq .L11
50 0038 8091 0000 lds r24,MenuePunkt
51 003c 8823 tst r24
52 003e 01F4 brne .+2
53 0040 00C0 rjmp .L13
54 0042 8150 subi r24,lo8(-(-1))
55 0044 8093 0000 sts MenuePunkt,r24
56 .L11:
57 0048 B901 movw r22,r18
58 004a 6270 andi r22,lo8(2)
59 004c 7070 andi r23,hi8(2)
60 004e 21FF sbrs r18,1
61 0050 00C0 rjmp .L15
62 0052 8091 0000 lds r24,MenuePunkt
63 0056 4817 cp r20,r24
64 0058 01F4 brne .+2
65 005a 00C0 rjmp .L66
66 005c 8F5F subi r24,lo8(-(1))
67 005e 8093 0000 sts MenuePunkt,r24
68 .L15:
69 0062 5523 tst r21
70 0064 01F0 breq .L19
71 0066 672B or r22,r23
72 0068 01F0 breq .+2
73 006a 00C0 rjmp .L67
74 .L19:
75 006c 0E94 0000 call LcdClear
76 0070 9091 0000 lds r25,MenuePunkt
77 0074 9A30 cpi r25,lo8(10)
78 0076 00F4 brsh .L22
79 0078 81E1 ldi r24,lo8(17)
80 007a 8093 0000 sts DispPtr,r24
81 007e 892F mov r24,r25
82 0080 90E0 ldi r25,lo8(0)
83 0082 9F93 push r25
84 0084 8F93 push r24
85 0086 80E0 ldi r24,lo8(__c.2370)
86 0088 90E0 ldi r25,hi8(__c.2370)
87 .L65:
88 008a 9F93 push r25
89 008c 8F93 push r24
90 008e 81E0 ldi r24,lo8(1)
91 0090 8F93 push r24
92 0092 0E94 0000 call _printf_P
93 0096 0F90 pop __tmp_reg__
94 0098 0F90 pop __tmp_reg__
95 009a 0F90 pop __tmp_reg__
96 009c 0F90 pop __tmp_reg__
97 009e 0F90 pop __tmp_reg__
98 00a0 1091 0000 lds r17,MenuePunkt
99 00a4 1530 cpi r17,lo8(5)
100 00a6 01F4 brne .+2
101 00a8 00C0 rjmp .L31
102 00aa 1630 cpi r17,lo8(6)
103 00ac 00F0 brlo .L68
104 00ae 1830 cpi r17,lo8(8)
105 00b0 01F4 brne .+2
106 00b2 00C0 rjmp .L34
107 00b4 1930 cpi r17,lo8(9)
108 00b6 00F0 brlo .+2
109 00b8 00C0 rjmp .L40
110 00ba 1630 cpi r17,lo8(6)
111 00bc 01F4 brne .+2
112 00be 00C0 rjmp .L32
113 00c0 1730 cpi r17,lo8(7)
114 00c2 01F4 brne .+2
115 00c4 00C0 rjmp .L69
116 .L25:
117 00c6 1150 subi r17,lo8(-(-1))
118 00c8 1093 0000 sts MaxMenue,r17
119 00cc 1092 0000 sts MenuePunkt,__zero_reg__
120 00d0 00C0 rjmp .L41
121 .L22:
122 00d2 80E1 ldi r24,lo8(16)
123 00d4 8093 0000 sts DispPtr,r24
124 00d8 892F mov r24,r25
125 00da 90E0 ldi r25,lo8(0)
126 00dc 9F93 push r25
127 00de 8F93 push r24
128 00e0 80E0 ldi r24,lo8(__c.2372)
129 00e2 90E0 ldi r25,hi8(__c.2372)
130 00e4 00C0 rjmp .L65
131 .L68:
132 00e6 1230 cpi r17,lo8(2)
133 00e8 01F4 brne .+2
134 00ea 00C0 rjmp .L28
135 00ec 1330 cpi r17,lo8(3)
136 00ee 00F4 brsh .+2
137 00f0 00C0 rjmp .L70
138 00f2 1330 cpi r17,lo8(3)
139 00f4 01F4 brne .+2
140 00f6 00C0 rjmp .L29
141 00f8 1430 cpi r17,lo8(4)
142 00fa 01F4 brne .L25
143 00fc 1092 0000 sts DispPtr,__zero_reg__
144 0100 E091 0000 lds r30,EE_Parameter+1
145 0104 F0E0 ldi r31,lo8(0)
146 0106 EE0F lsl r30
147 0108 FF1F rol r31
148 010a E050 subi r30,lo8(-(PPM_in))
149 010c F040 sbci r31,hi8(-(PPM_in))
150 010e 2081 ld r18,Z
151 0110 3181 ldd r19,Z+1
152 0112 E091 0000 lds r30,EE_Parameter
153 0116 F0E0 ldi r31,lo8(0)
154 0118 EE0F lsl r30
155 011a FF1F rol r31
156 011c E050 subi r30,lo8(-(PPM_in))
157 011e F040 sbci r31,hi8(-(PPM_in))
158 0120 8081 ld r24,Z
159 0122 9181 ldd r25,Z+1
160 0124 3F93 push r19
161 0126 2F93 push r18
162 0128 9F93 push r25
163 012a 8F93 push r24
164 012c 80E0 ldi r24,lo8(__c.2416)
165 012e 90E0 ldi r25,hi8(__c.2416)
166 0130 9F93 push r25
167 0132 8F93 push r24
168 0134 11E0 ldi r17,lo8(1)
169 0136 1F93 push r17
170 0138 0E94 0000 call _printf_P
171 013c 84E1 ldi r24,lo8(20)
172 013e 8093 0000 sts DispPtr,r24
173 0142 E091 0000 lds r30,EE_Parameter+3
174 0146 F0E0 ldi r31,lo8(0)
175 0148 EE0F lsl r30
176 014a FF1F rol r31
177 014c E050 subi r30,lo8(-(PPM_in))
178 014e F040 sbci r31,hi8(-(PPM_in))
179 0150 2081 ld r18,Z
180 0152 3181 ldd r19,Z+1
181 0154 E091 0000 lds r30,EE_Parameter+2
182 0158 F0E0 ldi r31,lo8(0)
183 015a EE0F lsl r30
184 015c FF1F rol r31
185 015e E050 subi r30,lo8(-(PPM_in))
186 0160 F040 sbci r31,hi8(-(PPM_in))
187 0162 8081 ld r24,Z
188 0164 9181 ldd r25,Z+1
189 0166 3F93 push r19
190 0168 2F93 push r18
191 016a 9F93 push r25
192 016c 8F93 push r24
193 016e 80E0 ldi r24,lo8(__c.2418)
194 0170 90E0 ldi r25,hi8(__c.2418)
195 0172 9F93 push r25
196 0174 8F93 push r24
197 0176 1F93 push r17
198 0178 0E94 0000 call _printf_P
199 017c 88E2 ldi r24,lo8(40)
200 017e 8093 0000 sts DispPtr,r24
201 0182 E091 0000 lds r30,EE_Parameter+5
202 0186 F0E0 ldi r31,lo8(0)
203 0188 EE0F lsl r30
204 018a FF1F rol r31
205 018c E050 subi r30,lo8(-(PPM_in))
206 018e F040 sbci r31,hi8(-(PPM_in))
207 0190 2081 ld r18,Z
208 0192 3181 ldd r19,Z+1
209 0194 E091 0000 lds r30,EE_Parameter+4
210 0198 F0E0 ldi r31,lo8(0)
211 019a EE0F lsl r30
212 019c FF1F rol r31
213 019e E050 subi r30,lo8(-(PPM_in))
214 01a0 F040 sbci r31,hi8(-(PPM_in))
215 01a2 8081 ld r24,Z
216 01a4 9181 ldd r25,Z+1
217 01a6 3F93 push r19
218 01a8 2F93 push r18
219 01aa 9F93 push r25
220 01ac 8F93 push r24
221 01ae 80E0 ldi r24,lo8(__c.2420)
222 01b0 90E0 ldi r25,hi8(__c.2420)
223 01b2 9F93 push r25
224 01b4 8F93 push r24
225 01b6 1F93 push r17
226 01b8 0E94 0000 call _printf_P
227 01bc 8CE3 ldi r24,lo8(60)
228 01be 8093 0000 sts DispPtr,r24
229 01c2 E091 0000 lds r30,EE_Parameter+7
230 01c6 F0E0 ldi r31,lo8(0)
231 01c8 EE0F lsl r30
232 01ca FF1F rol r31
233 01cc E050 subi r30,lo8(-(PPM_in))
234 01ce F040 sbci r31,hi8(-(PPM_in))
235 01d0 2081 ld r18,Z
236 01d2 3181 ldd r19,Z+1
237 01d4 E091 0000 lds r30,EE_Parameter+6
238 01d8 F0E0 ldi r31,lo8(0)
239 01da EE0F lsl r30
240 01dc FF1F rol r31
241 01de E050 subi r30,lo8(-(PPM_in))
242 01e0 F040 sbci r31,hi8(-(PPM_in))
243 01e2 8081 ld r24,Z
244 01e4 9181 ldd r25,Z+1
245 01e6 3F93 push r19
246 01e8 2F93 push r18
247 01ea 9F93 push r25
248 01ec 8F93 push r24
249 01ee 80E0 ldi r24,lo8(__c.2422)
250 01f0 90E0 ldi r25,hi8(__c.2422)
251 01f2 9F93 push r25
252 01f4 8F93 push r24
253 01f6 1F93 push r17
254 01f8 0E94 0000 call _printf_P
255 01fc 4DB7 in r20,__SP_L__
256 01fe 5EB7 in r21,__SP_H__
257 0200 445E subi r20,lo8(-(28))
258 0202 5F4F sbci r21,hi8(-(28))
259 0204 0FB6 in __tmp_reg__,__SREG__
260 0206 F894 cli
261 0208 5EBF out __SP_H__,r21
262 020a 0FBE out __SREG__,__tmp_reg__
263 020c 4DBF out __SP_L__,r20
264 020e 00C0 rjmp .L41
265 .L67:
266 0210 1092 0000 sts MenuePunkt,__zero_reg__
267 0214 00C0 rjmp .L19
268 .L13:
269 0216 4093 0000 sts MenuePunkt,r20
270 021a 00C0 rjmp .L11
271 .L66:
272 021c 1092 0000 sts MenuePunkt,__zero_reg__
273 0220 00C0 rjmp .L15
274 .L40:
275 0222 1A30 cpi r17,lo8(10)
276 0224 01F4 brne .+2
277 0226 00C0 rjmp .L36
278 0228 1A30 cpi r17,lo8(10)
279 022a 00F4 brsh .+2
280 022c 00C0 rjmp .L35
281 022e 1B30 cpi r17,lo8(11)
282 0230 01F0 breq .+2
283 0232 00C0 rjmp .L25
284 0234 1092 0000 sts DispPtr,__zero_reg__
285 0238 80E0 ldi r24,lo8(__c.2487)
286 023a 90E0 ldi r25,hi8(__c.2487)
287 023c 9F93 push r25
288 023e 8F93 push r24
289 0240 11E0 ldi r17,lo8(1)
290 0242 1F93 push r17
291 0244 0E94 0000 call _printf_P
292 0248 84E1 ldi r24,lo8(20)
293 024a 8093 0000 sts DispPtr,r24
294 024e 2091 0000 lds r18,ExternControl+4
295 0252 3327 clr r19
296 0254 27FD sbrc r18,7
297 0256 3095 com r19
298 0258 8091 0000 lds r24,ExternControl+3
299 025c 9927 clr r25
300 025e 87FD sbrc r24,7
301 0260 9095 com r25
302 0262 3F93 push r19
303 0264 2F93 push r18
304 0266 9F93 push r25
305 0268 8F93 push r24
306 026a 80E0 ldi r24,lo8(__c.2489)
307 026c 90E0 ldi r25,hi8(__c.2489)
308 026e 9F93 push r25
309 0270 8F93 push r24
310 0272 1F93 push r17
311 0274 0E94 0000 call _printf_P
312 0278 88E2 ldi r24,lo8(40)
313 027a 8093 0000 sts DispPtr,r24
314 027e 2091 0000 lds r18,ExternControl+5
315 0282 3327 clr r19
316 0284 27FD sbrc r18,7
317 0286 3095 com r19
318 0288 8091 0000 lds r24,ExternControl+6
319 028c 90E0 ldi r25,lo8(0)
320 028e 3F93 push r19
321 0290 2F93 push r18
322 0292 9F93 push r25
323 0294 8F93 push r24
324 0296 80E0 ldi r24,lo8(__c.2491)
325 0298 90E0 ldi r25,hi8(__c.2491)
326 029a 9F93 push r25
327 029c 8F93 push r24
328 029e 1F93 push r17
329 02a0 0E94 0000 call _printf_P
330 02a4 8CE3 ldi r24,lo8(60)
331 02a6 8093 0000 sts DispPtr,r24
332 02aa 2091 0000 lds r18,ExternControl+10
333 02ae 30E0 ldi r19,lo8(0)
334 02b0 8091 0000 lds r24,ExternControl+7
335 02b4 9927 clr r25
336 02b6 87FD sbrc r24,7
337 02b8 9095 com r25
338 02ba 3F93 push r19
339 02bc 2F93 push r18
340 02be 9F93 push r25
341 02c0 8F93 push r24
342 02c2 80E0 ldi r24,lo8(__c.2493)
343 02c4 90E0 ldi r25,hi8(__c.2493)
344 02c6 9F93 push r25
345 02c8 8F93 push r24
346 02ca 1F93 push r17
347 02cc 0E94 0000 call _printf_P
348 02d0 6DB7 in r22,__SP_L__
349 02d2 7EB7 in r23,__SP_H__
350 02d4 685E subi r22,lo8(-(24))
351 02d6 7F4F sbci r23,hi8(-(24))
352 02d8 0FB6 in __tmp_reg__,__SREG__
353 02da F894 cli
354 02dc 7EBF out __SP_H__,r23
355 02de 0FBE out __SREG__,__tmp_reg__
356 02e0 6DBF out __SP_L__,r22
357 02e2 00C0 rjmp .L41
358 .L70:
359 02e4 1123 tst r17
360 02e6 01F4 brne .+2
361 02e8 00C0 rjmp .L26
362 02ea 1130 cpi r17,lo8(1)
363 02ec 01F0 breq .+2
364 02ee 00C0 rjmp .L25
365 02f0 8091 0000 lds r24,EE_Parameter+8
366 02f4 80FF sbrs r24,0
367 02f6 00C0 rjmp .L42
368 02f8 1092 0000 sts DispPtr,__zero_reg__
369 02fc 8091 0000 lds r24,HoehenWert
370 0300 9091 0000 lds r25,(HoehenWert)+1
371 0304 9F93 push r25
372 0306 8F93 push r24
373 0308 80E0 ldi r24,lo8(__c.2385)
374 030a 90E0 ldi r25,hi8(__c.2385)
375 030c 9F93 push r25
376 030e 8F93 push r24
377 0310 1F93 push r17
378 0312 0E94 0000 call _printf_P
379 0316 84E1 ldi r24,lo8(20)
380 0318 8093 0000 sts DispPtr,r24
381 031c 8091 0000 lds r24,SollHoehe
382 0320 9091 0000 lds r25,(SollHoehe)+1
383 0324 9F93 push r25
384 0326 8F93 push r24
385 0328 80E0 ldi r24,lo8(__c.2387)
386 032a 90E0 ldi r25,hi8(__c.2387)
387 032c 9F93 push r25
388 032e 8F93 push r24
389 0330 1F93 push r17
390 0332 0E94 0000 call _printf_P
391 0336 88E2 ldi r24,lo8(40)
392 0338 8093 0000 sts DispPtr,r24
393 033c 8091 0000 lds r24,MessLuftdruck
394 0340 9091 0000 lds r25,(MessLuftdruck)+1
395 0344 9F93 push r25
396 0346 8F93 push r24
397 0348 80E0 ldi r24,lo8(__c.2389)
398 034a 90E0 ldi r25,hi8(__c.2389)
399 034c 9F93 push r25
400 034e 8F93 push r24
401 0350 1F93 push r17
402 0352 0E94 0000 call _printf_P
403 0356 8CE3 ldi r24,lo8(60)
404 0358 8093 0000 sts DispPtr,r24
405 035c 8091 0000 lds r24,DruckOffsetSetting
406 0360 90E0 ldi r25,lo8(0)
407 0362 9F93 push r25
408 0364 8F93 push r24
409 0366 80E0 ldi r24,lo8(__c.2391)
410 0368 90E0 ldi r25,hi8(__c.2391)
411 036a 9F93 push r25
412 036c 8F93 push r24
413 036e 1F93 push r17
414 0370 0E94 0000 call _printf_P
415 0374 4DB7 in r20,__SP_L__
416 0376 5EB7 in r21,__SP_H__
417 0378 4C5E subi r20,lo8(-(20))
418 037a 5F4F sbci r21,hi8(-(20))
419 037c 0FB6 in __tmp_reg__,__SREG__
420 037e F894 cli
421 0380 5EBF out __SP_H__,r21
422 0382 0FBE out __SREG__,__tmp_reg__
423 0384 4DBF out __SP_L__,r20
424 0386 00C0 rjmp .L41
425 .L35:
426 0388 1092 0000 sts DispPtr,__zero_reg__
427 038c 8091 0000 lds r24,Poti1
428 0390 9091 0000 lds r25,(Poti1)+1
429 0394 9F93 push r25
430 0396 8F93 push r24
431 0398 80E0 ldi r24,lo8(__c.2469)
432 039a 90E0 ldi r25,hi8(__c.2469)
433 039c 9F93 push r25
434 039e 8F93 push r24
435 03a0 11E0 ldi r17,lo8(1)
436 03a2 1F93 push r17
437 03a4 0E94 0000 call _printf_P
438 03a8 84E1 ldi r24,lo8(20)
439 03aa 8093 0000 sts DispPtr,r24
440 03ae 8091 0000 lds r24,Poti2
441 03b2 9091 0000 lds r25,(Poti2)+1
442 03b6 9F93 push r25
443 03b8 8F93 push r24
444 03ba 80E0 ldi r24,lo8(__c.2471)
445 03bc 90E0 ldi r25,hi8(__c.2471)
446 03be 9F93 push r25
447 03c0 8F93 push r24
448 03c2 1F93 push r17
449 03c4 0E94 0000 call _printf_P
450 03c8 88E2 ldi r24,lo8(40)
451 03ca 8093 0000 sts DispPtr,r24
452 03ce 8091 0000 lds r24,Poti3
453 03d2 9091 0000 lds r25,(Poti3)+1
454 03d6 9F93 push r25
455 03d8 8F93 push r24
456 03da 80E0 ldi r24,lo8(__c.2473)
457 03dc 90E0 ldi r25,hi8(__c.2473)
458 03de 9F93 push r25
459 03e0 8F93 push r24
460 03e2 1F93 push r17
461 03e4 0E94 0000 call _printf_P
462 03e8 8CE3 ldi r24,lo8(60)
463 03ea 8093 0000 sts DispPtr,r24
464 03ee 8091 0000 lds r24,Poti4
465 03f2 9091 0000 lds r25,(Poti4)+1
466 03f6 9F93 push r25
467 03f8 8F93 push r24
468 03fa 80E0 ldi r24,lo8(__c.2475)
469 03fc 90E0 ldi r25,hi8(__c.2475)
470 03fe 9F93 push r25
471 0400 8F93 push r24
472 0402 1F93 push r17
473 0404 0E94 0000 call _printf_P
474 0408 2DB7 in r18,__SP_L__
475 040a 3EB7 in r19,__SP_H__
476 040c 2C5E subi r18,lo8(-(20))
477 040e 3F4F sbci r19,hi8(-(20))
478 0410 0FB6 in __tmp_reg__,__SREG__
479 0412 F894 cli
480 0414 3EBF out __SP_H__,r19
481 0416 0FBE out __SREG__,__tmp_reg__
482 0418 2DBF out __SP_L__,r18
483 041a 00C0 rjmp .L41
484 .L29:
485 041c 1092 0000 sts DispPtr,__zero_reg__
486 0420 8091 0000 lds r24,PPM_in+4
487 0424 9091 0000 lds r25,(PPM_in+4)+1
488 0428 2091 0000 lds r18,PPM_in+2
489 042c 3091 0000 lds r19,(PPM_in+2)+1
490 0430 9F93 push r25
491 0432 8F93 push r24
492 0434 3F93 push r19
493 0436 2F93 push r18
494 0438 80E0 ldi r24,lo8(__c.2407)
495 043a 90E0 ldi r25,hi8(__c.2407)
496 043c 9F93 push r25
497 043e 8F93 push r24
498 0440 11E0 ldi r17,lo8(1)
499 0442 1F93 push r17
500 0444 0E94 0000 call _printf_P
501 0448 84E1 ldi r24,lo8(20)
502 044a 8093 0000 sts DispPtr,r24
503 044e 8091 0000 lds r24,PPM_in+8
504 0452 9091 0000 lds r25,(PPM_in+8)+1
505 0456 2091 0000 lds r18,PPM_in+6
506 045a 3091 0000 lds r19,(PPM_in+6)+1
507 045e 9F93 push r25
508 0460 8F93 push r24
509 0462 3F93 push r19
510 0464 2F93 push r18
511 0466 80E0 ldi r24,lo8(__c.2409)
512 0468 90E0 ldi r25,hi8(__c.2409)
513 046a 9F93 push r25
514 046c 8F93 push r24
515 046e 1F93 push r17
516 0470 0E94 0000 call _printf_P
517 0474 88E2 ldi r24,lo8(40)
518 0476 8093 0000 sts DispPtr,r24
519 047a 8091 0000 lds r24,PPM_in+12
520 047e 9091 0000 lds r25,(PPM_in+12)+1
521 0482 2091 0000 lds r18,PPM_in+10
522 0486 3091 0000 lds r19,(PPM_in+10)+1
523 048a 9F93 push r25
524 048c 8F93 push r24
525 048e 3F93 push r19
526 0490 2F93 push r18
527 0492 80E0 ldi r24,lo8(__c.2411)
528 0494 90E0 ldi r25,hi8(__c.2411)
529 0496 9F93 push r25
530 0498 8F93 push r24
531 049a 1F93 push r17
532 049c 0E94 0000 call _printf_P
533 04a0 8CE3 ldi r24,lo8(60)
534 04a2 8093 0000 sts DispPtr,r24
535 04a6 8091 0000 lds r24,PPM_in+16
536 04aa 9091 0000 lds r25,(PPM_in+16)+1
537 04ae 2091 0000 lds r18,PPM_in+14
538 04b2 3091 0000 lds r19,(PPM_in+14)+1
539 04b6 9F93 push r25
540 04b8 8F93 push r24
541 04ba 3F93 push r19
542 04bc 2F93 push r18
543 04be 80E0 ldi r24,lo8(__c.2413)
544 04c0 90E0 ldi r25,hi8(__c.2413)
545 04c2 9F93 push r25
546 04c4 8F93 push r24
547 04c6 1F93 push r17
548 04c8 0E94 0000 call _printf_P
549 04cc 2DB7 in r18,__SP_L__
550 04ce 3EB7 in r19,__SP_H__
551 04d0 245E subi r18,lo8(-(28))
552 04d2 3F4F sbci r19,hi8(-(28))
553 04d4 0FB6 in __tmp_reg__,__SREG__
554 04d6 F894 cli
555 04d8 3EBF out __SP_H__,r19
556 04da 0FBE out __SREG__,__tmp_reg__
557 04dc 2DBF out __SP_L__,r18
558 04de 00C0 rjmp .L41
559 .L26:
560 04e0 1092 0000 sts DispPtr,__zero_reg__
561 04e4 80E0 ldi r24,lo8(__c.2375)
562 04e6 90E0 ldi r25,hi8(__c.2375)
563 04e8 9F93 push r25
564 04ea 8F93 push r24
565 04ec 11E0 ldi r17,lo8(1)
566 04ee 1F93 push r17
567 04f0 0E94 0000 call _printf_P
568 04f4 84E1 ldi r24,lo8(20)
569 04f6 8093 0000 sts DispPtr,r24
570 04fa 2091 0000 lds r18,PlatinenVersion
571 04fe 822F mov r24,r18
572 0500 6AE0 ldi r22,lo8(10)
573 0502 0E94 0000 call __udivmodqi4
574 0506 492F mov r20,r25
575 0508 50E0 ldi r21,lo8(0)
576 050a 822F mov r24,r18
577 050c 0E94 0000 call __udivmodqi4
578 0510 90E0 ldi r25,lo8(0)
579 0512 20E7 ldi r18,lo8(112)
580 0514 30E0 ldi r19,hi8(112)
581 0516 3F93 push r19
582 0518 2F93 push r18
583 051a 28E4 ldi r18,lo8(72)
584 051c 30E0 ldi r19,hi8(72)
585 051e 3F93 push r19
586 0520 2F93 push r18
587 0522 1F92 push __zero_reg__
588 0524 1F92 push __zero_reg__
589 0526 5F93 push r21
590 0528 4F93 push r20
591 052a 9F93 push r25
592 052c 8F93 push r24
593 052e 80E0 ldi r24,lo8(__c.2377)
594 0530 90E0 ldi r25,hi8(__c.2377)
595 0532 9F93 push r25
596 0534 8F93 push r24
597 0536 1F93 push r17
598 0538 0E94 0000 call _printf_P
599 053c 88E2 ldi r24,lo8(40)
600 053e 8093 0000 sts DispPtr,r24
601 0542 0E94 0000 call GetActiveParamSetNumber
602 0546 90E0 ldi r25,lo8(0)
603 0548 9F93 push r25
604 054a 8F93 push r24
605 054c 80E0 ldi r24,lo8(__c.2379)
606 054e 90E0 ldi r25,hi8(__c.2379)
607 0550 9F93 push r25
608 0552 8F93 push r24
609 0554 1F93 push r17
610 0556 0E94 0000 call _printf_P
611 055a 8CE3 ldi r24,lo8(60)
612 055c 8093 0000 sts DispPtr,r24
613 0560 80E0 ldi r24,lo8(__c.2381)
614 0562 90E0 ldi r25,hi8(__c.2381)
615 0564 9F93 push r25
616 0566 8F93 push r24
617 0568 1F93 push r17
618 056a 0E94 0000 call _printf_P
619 056e 2DB7 in r18,__SP_L__
620 0570 3EB7 in r19,__SP_H__
621 0572 285E subi r18,lo8(-(24))
622 0574 3F4F sbci r19,hi8(-(24))
623 0576 0FB6 in __tmp_reg__,__SREG__
624 0578 F894 cli
625 057a 3EBF out __SP_H__,r19
626 057c 0FBE out __SREG__,__tmp_reg__
627 057e 2DBF out __SP_L__,r18
628 0580 00C0 rjmp .L41
629 .L69:
630 0582 84E1 ldi r24,lo8(20)
631 0584 8093 0000 sts DispPtr,r24
632 0588 8091 0000 lds r24,UBat
633 058c 9091 0000 lds r25,(UBat)+1
634 0590 9F93 push r25
635 0592 8F93 push r24
636 0594 80E0 ldi r24,lo8(__c.2455)
637 0596 90E0 ldi r25,hi8(__c.2455)
638 0598 9F93 push r25
639 059a 8F93 push r24
640 059c 11E0 ldi r17,lo8(1)
641 059e 1F93 push r17
642 05a0 0E94 0000 call _printf_P
643 05a4 88E2 ldi r24,lo8(40)
644 05a6 8093 0000 sts DispPtr,r24
645 05aa 8091 0000 lds r24,SenderOkay
646 05ae 90E0 ldi r25,lo8(0)
647 05b0 9F93 push r25
648 05b2 8F93 push r24
649 05b4 80E0 ldi r24,lo8(__c.2457)
650 05b6 90E0 ldi r25,hi8(__c.2457)
651 05b8 9F93 push r25
652 05ba 8F93 push r24
653 05bc 1F93 push r17
654 05be 0E94 0000 call _printf_P
655 05c2 6DB7 in r22,__SP_L__
656 05c4 7EB7 in r23,__SP_H__
657 05c6 665F subi r22,lo8(-(10))
658 05c8 7F4F sbci r23,hi8(-(10))
659 05ca 0FB6 in __tmp_reg__,__SREG__
660 05cc F894 cli
661 05ce 7EBF out __SP_H__,r23
662 05d0 0FBE out __SREG__,__tmp_reg__
663 05d2 6DBF out __SP_L__,r22
664 05d4 00C0 rjmp .L41
665 .L32:
666 05d6 1092 0000 sts DispPtr,__zero_reg__
667 05da 80E0 ldi r24,lo8(__c.2446)
668 05dc 90E0 ldi r25,hi8(__c.2446)
669 05de 9F93 push r25
670 05e0 8F93 push r24
671 05e2 11E0 ldi r17,lo8(1)
672 05e4 1F93 push r17
673 05e6 0E94 0000 call _printf_P
674 05ea 84E1 ldi r24,lo8(20)
675 05ec 8093 0000 sts DispPtr,r24
676 05f0 8091 0000 lds r24,NeutralAccX
677 05f4 9091 0000 lds r25,(NeutralAccX)+1
678 05f8 2091 0000 lds r18,AdWertAccNick
679 05fc 3091 0000 lds r19,(AdWertAccNick)+1
680 0600 9F93 push r25
681 0602 8F93 push r24
682 0604 3F93 push r19
683 0606 2F93 push r18
684 0608 80E0 ldi r24,lo8(__c.2448)
685 060a 90E0 ldi r25,hi8(__c.2448)
686 060c 9F93 push r25
687 060e 8F93 push r24
688 0610 1F93 push r17
689 0612 0E94 0000 call _printf_P
690 0616 88E2 ldi r24,lo8(40)
691 0618 8093 0000 sts DispPtr,r24
692 061c 8091 0000 lds r24,NeutralAccY
693 0620 9091 0000 lds r25,(NeutralAccY)+1
694 0624 2091 0000 lds r18,AdWertAccRoll
695 0628 3091 0000 lds r19,(AdWertAccRoll)+1
696 062c 9F93 push r25
697 062e 8F93 push r24
698 0630 3F93 push r19
699 0632 2F93 push r18
700 0634 80E0 ldi r24,lo8(__c.2450)
701 0636 90E0 ldi r25,hi8(__c.2450)
702 0638 9F93 push r25
703 063a 8F93 push r24
704 063c 1F93 push r17
705 063e 0E94 0000 call _printf_P
706 0642 8CE3 ldi r24,lo8(60)
707 0644 8093 0000 sts DispPtr,r24
708 0648 6091 0000 lds r22,NeutralAccZ
709 064c 7091 0000 lds r23,(NeutralAccZ)+1
710 0650 8091 0000 lds r24,(NeutralAccZ)+2
711 0654 9091 0000 lds r25,(NeutralAccZ)+3
712 0658 0E94 0000 call __fixsfsi
713 065c 2091 0000 lds r18,Mittelwert_AccHoch
714 0660 3091 0000 lds r19,(Mittelwert_AccHoch)+1
715 0664 7F93 push r23
716 0666 6F93 push r22
717 0668 3F93 push r19
718 066a 2F93 push r18
719 066c 80E0 ldi r24,lo8(__c.2452)
720 066e 90E0 ldi r25,hi8(__c.2452)
721 0670 9F93 push r25
722 0672 8F93 push r24
723 0674 1F93 push r17
724 0676 0E94 0000 call _printf_P
725 067a 4DB7 in r20,__SP_L__
726 067c 5EB7 in r21,__SP_H__
727 067e 485E subi r20,lo8(-(24))
728 0680 5F4F sbci r21,hi8(-(24))
729 0682 0FB6 in __tmp_reg__,__SREG__
730 0684 F894 cli
731 0686 5EBF out __SP_H__,r21
732 0688 0FBE out __SREG__,__tmp_reg__
733 068a 4DBF out __SP_L__,r20
734 068c 00C0 rjmp .L41
735 .L34:
736 068e 1092 0000 sts DispPtr,__zero_reg__
737 0692 80E0 ldi r24,lo8(__c.2460)
738 0694 90E0 ldi r25,hi8(__c.2460)
739 0696 9F93 push r25
740 0698 8F93 push r24
741 069a 11E0 ldi r17,lo8(1)
742 069c 1F93 push r17
743 069e 0E94 0000 call _printf_P
744 06a2 84E1 ldi r24,lo8(20)
745 06a4 8093 0000 sts DispPtr,r24
746 06a8 8091 0000 lds r24,KompassRichtung
747 06ac 9091 0000 lds r25,(KompassRichtung)+1
748 06b0 9F93 push r25
749 06b2 8F93 push r24
750 06b4 80E0 ldi r24,lo8(__c.2462)
751 06b6 90E0 ldi r25,hi8(__c.2462)
752 06b8 9F93 push r25
753 06ba 8F93 push r24
754 06bc 1F93 push r17
755 06be 0E94 0000 call _printf_P
756 06c2 88E2 ldi r24,lo8(40)
757 06c4 8093 0000 sts DispPtr,r24
758 06c8 8091 0000 lds r24,KompassValue
759 06cc 9091 0000 lds r25,(KompassValue)+1
760 06d0 9F93 push r25
761 06d2 8F93 push r24
762 06d4 80E0 ldi r24,lo8(__c.2464)
763 06d6 90E0 ldi r25,hi8(__c.2464)
764 06d8 9F93 push r25
765 06da 8F93 push r24
766 06dc 1F93 push r17
767 06de 0E94 0000 call _printf_P
768 06e2 8CE3 ldi r24,lo8(60)
769 06e4 8093 0000 sts DispPtr,r24
770 06e8 8091 0000 lds r24,KompassStartwert
771 06ec 9091 0000 lds r25,(KompassStartwert)+1
772 06f0 9F93 push r25
773 06f2 8F93 push r24
774 06f4 80E0 ldi r24,lo8(__c.2466)
775 06f6 90E0 ldi r25,hi8(__c.2466)
776 06f8 9F93 push r25
777 06fa 8F93 push r24
778 06fc 1F93 push r17
779 06fe 0E94 0000 call _printf_P
780 0702 8DB7 in r24,__SP_L__
781 0704 9EB7 in r25,__SP_H__
782 0706 4296 adiw r24,18
783 0708 0FB6 in __tmp_reg__,__SREG__
784 070a F894 cli
785 070c 9EBF out __SP_H__,r25
786 070e 0FBE out __SREG__,__tmp_reg__
787 0710 8DBF out __SP_L__,r24
788 0712 00C0 rjmp .L41
789 .L36:
790 0714 1092 0000 sts DispPtr,__zero_reg__
791 0718 80E0 ldi r24,lo8(__c.2478)
792 071a 90E0 ldi r25,hi8(__c.2478)
793 071c 9F93 push r25
794 071e 8F93 push r24
795 0720 11E0 ldi r17,lo8(1)
796 0722 1F93 push r17
797 0724 0E94 0000 call _printf_P
798 0728 84E1 ldi r24,lo8(20)
799 072a 8093 0000 sts DispPtr,r24
800 072e 8091 0000 lds r24,Parameter_ServoNickControl
801 0732 90E0 ldi r25,lo8(0)
802 0734 9F93 push r25
803 0736 8F93 push r24
804 0738 80E0 ldi r24,lo8(__c.2480)
805 073a 90E0 ldi r25,hi8(__c.2480)
806 073c 9F93 push r25
807 073e 8F93 push r24
808 0740 1F93 push r17
809 0742 0E94 0000 call _printf_P
810 0746 88E2 ldi r24,lo8(40)
811 0748 8093 0000 sts DispPtr,r24
812 074c 8091 0000 lds r24,ServoValue
813 0750 9091 0000 lds r25,(ServoValue)+1
814 0754 9F93 push r25
815 0756 8F93 push r24
816 0758 80E0 ldi r24,lo8(__c.2482)
817 075a 90E0 ldi r25,hi8(__c.2482)
818 075c 9F93 push r25
819 075e 8F93 push r24
820 0760 1F93 push r17
821 0762 0E94 0000 call _printf_P
822 0766 8CE3 ldi r24,lo8(60)
823 0768 8093 0000 sts DispPtr,r24
824 076c 2091 0000 lds r18,EE_Parameter+37
825 0770 30E0 ldi r19,lo8(0)
826 0772 8091 0000 lds r24,EE_Parameter+36
827 0776 90E0 ldi r25,lo8(0)
828 0778 3F93 push r19
829 077a 2F93 push r18
830 077c 9F93 push r25
831 077e 8F93 push r24
832 0780 80E0 ldi r24,lo8(__c.2484)
833 0782 90E0 ldi r25,hi8(__c.2484)
834 0784 9F93 push r25
835 0786 8F93 push r24
836 0788 1F93 push r17
837 078a 0E94 0000 call _printf_P
838 078e 4DB7 in r20,__SP_L__
839 0790 5EB7 in r21,__SP_H__
840 0792 4C5E subi r20,lo8(-(20))
841 0794 5F4F sbci r21,hi8(-(20))
842 0796 0FB6 in __tmp_reg__,__SREG__
843 0798 F894 cli
844 079a 5EBF out __SP_H__,r21
845 079c 0FBE out __SREG__,__tmp_reg__
846 079e 4DBF out __SP_L__,r20
847 07a0 00C0 rjmp .L41
848 .L28:
849 07a2 1092 0000 sts DispPtr,__zero_reg__
850 07a6 80E0 ldi r24,lo8(__c.2398)
851 07a8 90E0 ldi r25,hi8(__c.2398)
852 07aa 9F93 push r25
853 07ac 8F93 push r24
854 07ae 11E0 ldi r17,lo8(1)
855 07b0 1F93 push r17
856 07b2 0E94 0000 call _printf_P
857 07b6 84E1 ldi r24,lo8(20)
858 07b8 8093 0000 sts DispPtr,r24
859 07bc 6091 0000 lds r22,IntegralNick
860 07c0 7091 0000 lds r23,(IntegralNick)+1
861 07c4 8091 0000 lds r24,(IntegralNick)+2
862 07c8 9091 0000 lds r25,(IntegralNick)+3
863 07cc 20E0 ldi r18,lo8(1024)
864 07ce 34E0 ldi r19,hi8(1024)
865 07d0 40E0 ldi r20,hlo8(1024)
866 07d2 50E0 ldi r21,hhi8(1024)
867 07d4 0E94 0000 call __divmodsi4
868 07d8 5F93 push r21
869 07da 4F93 push r20
870 07dc 3F93 push r19
871 07de 2F93 push r18
872 07e0 80E0 ldi r24,lo8(__c.2400)
873 07e2 90E0 ldi r25,hi8(__c.2400)
874 07e4 9F93 push r25
875 07e6 8F93 push r24
876 07e8 1F93 push r17
877 07ea 0E94 0000 call _printf_P
878 07ee 88E2 ldi r24,lo8(40)
879 07f0 8093 0000 sts DispPtr,r24
880 07f4 6091 0000 lds r22,IntegralRoll
881 07f8 7091 0000 lds r23,(IntegralRoll)+1
882 07fc 8091 0000 lds r24,(IntegralRoll)+2
883 0800 9091 0000 lds r25,(IntegralRoll)+3
884 0804 20E0 ldi r18,lo8(1024)
885 0806 34E0 ldi r19,hi8(1024)
886 0808 40E0 ldi r20,hlo8(1024)
887 080a 50E0 ldi r21,hhi8(1024)
888 080c 0E94 0000 call __divmodsi4
889 0810 5F93 push r21
890 0812 4F93 push r20
891 0814 3F93 push r19
892 0816 2F93 push r18
893 0818 80E0 ldi r24,lo8(__c.2402)
894 081a 90E0 ldi r25,hi8(__c.2402)
895 081c 9F93 push r25
896 081e 8F93 push r24
897 0820 1F93 push r17
898 0822 0E94 0000 call _printf_P
899 0826 8CE3 ldi r24,lo8(60)
900 0828 8093 0000 sts DispPtr,r24
901 082c 8091 0000 lds r24,KompassValue
902 0830 9091 0000 lds r25,(KompassValue)+1
903 0834 9F93 push r25
904 0836 8F93 push r24
905 0838 80E0 ldi r24,lo8(__c.2404)
906 083a 90E0 ldi r25,hi8(__c.2404)
907 083c 9F93 push r25
908 083e 8F93 push r24
909 0840 1F93 push r17
910 0842 0E94 0000 call _printf_P
911 0846 8DB7 in r24,__SP_L__
912 0848 9EB7 in r25,__SP_H__
913 084a 4696 adiw r24,22
914 084c 0FB6 in __tmp_reg__,__SREG__
915 084e F894 cli
916 0850 9EBF out __SP_H__,r25
917 0852 0FBE out __SREG__,__tmp_reg__
918 0854 8DBF out __SP_L__,r24
919 0856 00C0 rjmp .L41
920 .L31:
921 0858 1092 0000 sts DispPtr,__zero_reg__
922 085c 80E0 ldi r24,lo8(__c.2425)
923 085e 90E0 ldi r25,hi8(__c.2425)
924 0860 9F93 push r25
925 0862 8F93 push r24
926 0864 11E0 ldi r17,lo8(1)
927 0866 1F93 push r17
928 0868 0E94 0000 call _printf_P
929 086c 8091 0000 lds r24,PlatinenVersion
930 0870 0F90 pop __tmp_reg__
931 0872 0F90 pop __tmp_reg__
932 0874 0F90 pop __tmp_reg__
933 0876 8A30 cpi r24,lo8(10)
934 0878 01F4 brne .+2
935 087a 00C0 rjmp .L71
936 087c 8B30 cpi r24,lo8(11)
937 087e 01F4 brne .+2
938 0880 00C0 rjmp .L48
939 0882 8431 cpi r24,lo8(20)
940 0884 01F4 brne .+2
941 0886 00C0 rjmp .L48
942 0888 8D30 cpi r24,lo8(13)
943 088a 01F0 breq .+2
944 088c 00C0 rjmp .L41
945 088e 84E1 ldi r24,lo8(20)
946 0890 8093 0000 sts DispPtr,r24
947 0894 8091 0000 lds r24,AnalogOffsetNick
948 0898 90E0 ldi r25,lo8(0)
949 089a 2091 0000 lds r18,AdNeutralNick
950 089e 3091 0000 lds r19,(AdNeutralNick)+1
951 08a2 A901 movw r20,r18
952 08a4 37FD sbrc r19,7
953 08a6 00C0 rjmp .L72
954 .L59:
955 08a8 BA01 movw r22,r20
956 08aa 7595 asr r23
957 08ac 6795 ror r22
958 08ae 7595 asr r23
959 08b0 6795 ror r22
960 08b2 7595 asr r23
961 08b4 6795 ror r22
962 08b6 7595 asr r23
963 08b8 6795 ror r22
964 08ba 4091 0000 lds r20,AdWertNick
965 08be 5091 0000 lds r21,(AdWertNick)+1
966 08c2 37FD sbrc r19,7
967 08c4 00C0 rjmp .L73
968 .L60:
969 08c6 3595 asr r19
970 08c8 2795 ror r18
971 08ca 3595 asr r19
972 08cc 2795 ror r18
973 08ce 3595 asr r19
974 08d0 2795 ror r18
975 08d2 421B sub r20,r18
976 08d4 530B sbc r21,r19
977 08d6 9F93 push r25
978 08d8 8F93 push r24
979 08da 7F93 push r23
980 08dc 6F93 push r22
981 08de 5F93 push r21
982 08e0 4F93 push r20
983 08e2 80E0 ldi r24,lo8(__c.2439)
984 08e4 90E0 ldi r25,hi8(__c.2439)
985 08e6 9F93 push r25
986 08e8 8F93 push r24
987 08ea 1F93 push r17
988 08ec 0E94 0000 call _printf_P
989 08f0 88E2 ldi r24,lo8(40)
990 08f2 8093 0000 sts DispPtr,r24
991 08f6 8091 0000 lds r24,AnalogOffsetRoll
992 08fa 90E0 ldi r25,lo8(0)
993 08fc 2091 0000 lds r18,AdNeutralRoll
994 0900 3091 0000 lds r19,(AdNeutralRoll)+1
995 0904 A901 movw r20,r18
996 0906 6DB7 in r22,__SP_L__
997 0908 7EB7 in r23,__SP_H__
998 090a 675F subi r22,lo8(-(9))
999 090c 7F4F sbci r23,hi8(-(9))
1000 090e 0FB6 in __tmp_reg__,__SREG__
1001 0910 F894 cli
1002 0912 7EBF out __SP_H__,r23
1003 0914 0FBE out __SREG__,__tmp_reg__
1004 0916 6DBF out __SP_L__,r22
1005 0918 37FD sbrc r19,7
1006 091a 00C0 rjmp .L74
1007 .L61:
1008 091c BA01 movw r22,r20
1009 091e 7595 asr r23
1010 0920 6795 ror r22
1011 0922 7595 asr r23
1012 0924 6795 ror r22
1013 0926 7595 asr r23
1014 0928 6795 ror r22
1015 092a 7595 asr r23
1016 092c 6795 ror r22
1017 092e 4091 0000 lds r20,AdWertRoll
1018 0932 5091 0000 lds r21,(AdWertRoll)+1
1019 0936 37FD sbrc r19,7
1020 0938 00C0 rjmp .L75
1021 .L62:
1022 093a 3595 asr r19
1023 093c 2795 ror r18
1024 093e 3595 asr r19
1025 0940 2795 ror r18
1026 0942 3595 asr r19
1027 0944 2795 ror r18
1028 0946 421B sub r20,r18
1029 0948 530B sbc r21,r19
1030 094a 9F93 push r25
1031 094c 8F93 push r24
1032 094e 7F93 push r23
1033 0950 6F93 push r22
1034 0952 5F93 push r21
1035 0954 4F93 push r20
1036 0956 80E0 ldi r24,lo8(__c.2441)
1037 0958 90E0 ldi r25,hi8(__c.2441)
1038 095a 9F93 push r25
1039 095c 8F93 push r24
1040 095e 1F93 push r17
1041 0960 0E94 0000 call _printf_P
1042 0964 8CE3 ldi r24,lo8(60)
1043 0966 8093 0000 sts DispPtr,r24
1044 096a 8091 0000 lds r24,AnalogOffsetGier
1045 096e 682F mov r22,r24
1046 0970 70E0 ldi r23,lo8(0)
1047 0972 2091 0000 lds r18,AdNeutralGier
1048 0976 3091 0000 lds r19,(AdNeutralGier)+1
1049 097a A901 movw r20,r18
1050 097c 8DB7 in r24,__SP_L__
1051 097e 9EB7 in r25,__SP_H__
1052 0980 0996 adiw r24,9
1053 0982 0FB6 in __tmp_reg__,__SREG__
1054 0984 F894 cli
1055 0986 9EBF out __SP_H__,r25
1056 0988 0FBE out __SREG__,__tmp_reg__
1057 098a 8DBF out __SP_L__,r24
1058 098c 37FD sbrc r19,7
1059 098e 00C0 rjmp .L76
1060 .L63:
1061 0990 5595 asr r21
1062 0992 4795 ror r20
1063 0994 8091 0000 lds r24,AdWertGier
1064 0998 9091 0000 lds r25,(AdWertGier)+1
1065 099c 281B sub r18,r24
1066 099e 390B sbc r19,r25
1067 09a0 7F93 push r23
1068 09a2 6F93 push r22
1069 09a4 5F93 push r21
1070 09a6 4F93 push r20
1071 09a8 3F93 push r19
1072 09aa 2F93 push r18
1073 09ac 80E0 ldi r24,lo8(__c.2443)
1074 09ae 90E0 ldi r25,hi8(__c.2443)
1075 09b0 9F93 push r25
1076 09b2 8F93 push r24
1077 09b4 1F93 push r17
1078 09b6 0E94 0000 call _printf_P
1079 09ba 2DB7 in r18,__SP_L__
1080 09bc 3EB7 in r19,__SP_H__
1081 09be 275F subi r18,lo8(-(9))
1082 09c0 3F4F sbci r19,hi8(-(9))
1083 09c2 0FB6 in __tmp_reg__,__SREG__
1084 09c4 F894 cli
1085 09c6 3EBF out __SP_H__,r19
1086 09c8 0FBE out __SREG__,__tmp_reg__
1087 09ca 2DBF out __SP_L__,r18
1088 09cc 00C0 rjmp .L41
1089 .L42:
1090 09ce 84E1 ldi r24,lo8(20)
1091 09d0 8093 0000 sts DispPtr,r24
1092 09d4 80E0 ldi r24,lo8(__c.2393)
1093 09d6 90E0 ldi r25,hi8(__c.2393)
1094 09d8 9F93 push r25
1095 09da 8F93 push r24
1096 09dc 1F93 push r17
1097 09de 0E94 0000 call _printf_P
1098 09e2 88E2 ldi r24,lo8(40)
1099 09e4 8093 0000 sts DispPtr,r24
1100 09e8 80E0 ldi r24,lo8(__c.2395)
1101 09ea 90E0 ldi r25,hi8(__c.2395)
1102 09ec 9F93 push r25
1103 09ee 8F93 push r24
1104 09f0 1F93 push r17
1105 09f2 0E94 0000 call _printf_P
1106 09f6 6DB7 in r22,__SP_L__
1107 09f8 7EB7 in r23,__SP_H__
1108 09fa 6A5F subi r22,lo8(-(6))
1109 09fc 7F4F sbci r23,hi8(-(6))
1110 09fe 0FB6 in __tmp_reg__,__SREG__
1111 0a00 F894 cli
1112 0a02 7EBF out __SP_H__,r23
1113 0a04 0FBE out __SREG__,__tmp_reg__
1114 0a06 6DBF out __SP_L__,r22
1115 0a08 00C0 rjmp .L41
1116 .L48:
1117 0a0a 84E1 ldi r24,lo8(20)
1118 0a0c 8093 0000 sts DispPtr,r24
1119 0a10 E091 0000 lds r30,AdNeutralNick
1120 0a14 F091 0000 lds r31,(AdNeutralNick)+1
1121 0a18 CF01 movw r24,r30
1122 0a1a 60E1 ldi r22,lo8(16)
1123 0a1c 70E0 ldi r23,hi8(16)
1124 0a1e 0E94 0000 call __divmodhi4
1125 0a22 97FD sbrc r25,7
1126 0a24 00C0 rjmp .L77
1127 .L51:
1128 0a26 BC01 movw r22,r24
1129 0a28 7595 asr r23
1130 0a2a 6795 ror r22
1131 0a2c 9F01 movw r18,r30
1132 0a2e F7FD sbrc r31,7
1133 0a30 00C0 rjmp .L78
1134 .L52:
1135 0a32 A901 movw r20,r18
1136 0a34 5595 asr r21
1137 0a36 4795 ror r20
1138 0a38 5595 asr r21
1139 0a3a 4795 ror r20
1140 0a3c 5595 asr r21
1141 0a3e 4795 ror r20
1142 0a40 5595 asr r21
1143 0a42 4795 ror r20
1144 0a44 2091 0000 lds r18,AdWertNick
1145 0a48 3091 0000 lds r19,(AdWertNick)+1
1146 0a4c CF01 movw r24,r30
1147 0a4e F7FD sbrc r31,7
1148 0a50 00C0 rjmp .L79
1149 .L53:
1150 0a52 9595 asr r25
1151 0a54 8795 ror r24
1152 0a56 9595 asr r25
1153 0a58 8795 ror r24
1154 0a5a 9595 asr r25
1155 0a5c 8795 ror r24
1156 0a5e 281B sub r18,r24
1157 0a60 390B sbc r19,r25
1158 0a62 7F93 push r23
1159 0a64 6F93 push r22
1160 0a66 5F93 push r21
1161 0a68 4F93 push r20
1162 0a6a 3F93 push r19
1163 0a6c 2F93 push r18
1164 0a6e 80E0 ldi r24,lo8(__c.2433)
1165 0a70 90E0 ldi r25,hi8(__c.2433)
1166 0a72 9F93 push r25
1167 0a74 8F93 push r24
1168 0a76 1F93 push r17
1169 0a78 0E94 0000 call _printf_P
1170 0a7c 88E2 ldi r24,lo8(40)
1171 0a7e 8093 0000 sts DispPtr,r24
1172 0a82 E091 0000 lds r30,AdNeutralRoll
1173 0a86 F091 0000 lds r31,(AdNeutralRoll)+1
1174 0a8a CF01 movw r24,r30
1175 0a8c 60E1 ldi r22,lo8(16)
1176 0a8e 70E0 ldi r23,hi8(16)
1177 0a90 0E94 0000 call __divmodhi4
1178 0a94 2DB7 in r18,__SP_L__
1179 0a96 3EB7 in r19,__SP_H__
1180 0a98 275F subi r18,lo8(-(9))
1181 0a9a 3F4F sbci r19,hi8(-(9))
1182 0a9c 0FB6 in __tmp_reg__,__SREG__
1183 0a9e F894 cli
1184 0aa0 3EBF out __SP_H__,r19
1185 0aa2 0FBE out __SREG__,__tmp_reg__
1186 0aa4 2DBF out __SP_L__,r18
1187 0aa6 97FD sbrc r25,7
1188 0aa8 00C0 rjmp .L80
1189 .L54:
1190 0aaa BC01 movw r22,r24
1191 0aac 7595 asr r23
1192 0aae 6795 ror r22
1193 0ab0 9F01 movw r18,r30
1194 0ab2 F7FD sbrc r31,7
1195 0ab4 00C0 rjmp .L81
1196 .L55:
1197 0ab6 A901 movw r20,r18
1198 0ab8 5595 asr r21
1199 0aba 4795 ror r20
1200 0abc 5595 asr r21
1201 0abe 4795 ror r20
1202 0ac0 5595 asr r21
1203 0ac2 4795 ror r20
1204 0ac4 5595 asr r21
1205 0ac6 4795 ror r20
1206 0ac8 2091 0000 lds r18,AdWertRoll
1207 0acc 3091 0000 lds r19,(AdWertRoll)+1
1208 0ad0 CF01 movw r24,r30
1209 0ad2 F7FD sbrc r31,7
1210 0ad4 00C0 rjmp .L82
1211 .L56:
1212 0ad6 9595 asr r25
1213 0ad8 8795 ror r24
1214 0ada 9595 asr r25
1215 0adc 8795 ror r24
1216 0ade 9595 asr r25
1217 0ae0 8795 ror r24
1218 0ae2 281B sub r18,r24
1219 0ae4 390B sbc r19,r25
1220 0ae6 7F93 push r23
1221 0ae8 6F93 push r22
1222 0aea 5F93 push r21
1223 0aec 4F93 push r20
1224 0aee 3F93 push r19
1225 0af0 2F93 push r18
1226 0af2 80E0 ldi r24,lo8(__c.2435)
1227 0af4 90E0 ldi r25,hi8(__c.2435)
1228 0af6 9F93 push r25
1229 0af8 8F93 push r24
1230 0afa 1F93 push r17
1231 0afc 0E94 0000 call _printf_P
1232 0b00 8CE3 ldi r24,lo8(60)
1233 0b02 8093 0000 sts DispPtr,r24
1234 0b06 2091 0000 lds r18,AdNeutralGier
1235 0b0a 3091 0000 lds r19,(AdNeutralGier)+1
1236 0b0e A901 movw r20,r18
1237 0b10 6DB7 in r22,__SP_L__
1238 0b12 7EB7 in r23,__SP_H__
1239 0b14 675F subi r22,lo8(-(9))
1240 0b16 7F4F sbci r23,hi8(-(9))
1241 0b18 0FB6 in __tmp_reg__,__SREG__
1242 0b1a F894 cli
1243 0b1c 7EBF out __SP_H__,r23
1244 0b1e 0FBE out __SREG__,__tmp_reg__
1245 0b20 6DBF out __SP_L__,r22
1246 0b22 37FD sbrc r19,7
1247 0b24 00C0 rjmp .L83
1248 .L57:
1249 0b26 5595 asr r21
1250 0b28 4795 ror r20
1251 0b2a 8091 0000 lds r24,AdWertGier
1252 0b2e 9091 0000 lds r25,(AdWertGier)+1
1253 0b32 281B sub r18,r24
1254 0b34 390B sbc r19,r25
1255 0b36 5F93 push r21
1256 0b38 4F93 push r20
1257 0b3a 3F93 push r19
1258 0b3c 2F93 push r18
1259 0b3e 80E0 ldi r24,lo8(__c.2437)
1260 0b40 90E0 ldi r25,hi8(__c.2437)
1261 0b42 9F93 push r25
1262 0b44 8F93 push r24
1263 0b46 1F93 push r17
1264 0b48 0E94 0000 call _printf_P
1265 0b4c 8DB7 in r24,__SP_L__
1266 0b4e 9EB7 in r25,__SP_H__
1267 0b50 0796 adiw r24,7
1268 0b52 0FB6 in __tmp_reg__,__SREG__
1269 0b54 F894 cli
1270 0b56 9EBF out __SP_H__,r25
1271 0b58 0FBE out __SREG__,__tmp_reg__
1272 0b5a 8DBF out __SP_L__,r24
1273 0b5c 00C0 rjmp .L41
1274 .L71:
1275 0b5e 84E1 ldi r24,lo8(20)
1276 0b60 8093 0000 sts DispPtr,r24
1277 0b64 2091 0000 lds r18,AdNeutralNick
1278 0b68 3091 0000 lds r19,(AdNeutralNick)+1
1279 0b6c C901 movw r24,r18
1280 0b6e 68E0 ldi r22,lo8(8)
1281 0b70 70E0 ldi r23,hi8(8)
1282 0b72 0E94 0000 call __divmodhi4
1283 0b76 AC01 movw r20,r24
1284 0b78 37FD sbrc r19,7
1285 0b7a 00C0 rjmp .L84
1286 .L46:
1287 0b7c 3595 asr r19
1288 0b7e 2795 ror r18
1289 0b80 3595 asr r19
1290 0b82 2795 ror r18
1291 0b84 3595 asr r19
1292 0b86 2795 ror r18
1293 0b88 8091 0000 lds r24,AdWertNick
1294 0b8c 9091 0000 lds r25,(AdWertNick)+1
1295 0b90 821B sub r24,r18
1296 0b92 930B sbc r25,r19
1297 0b94 5F93 push r21
1298 0b96 4F93 push r20
1299 0b98 3F93 push r19
1300 0b9a 2F93 push r18
1301 0b9c 9F93 push r25
1302 0b9e 8F93 push r24
1303 0ba0 80E0 ldi r24,lo8(__c.2427)
1304 0ba2 90E0 ldi r25,hi8(__c.2427)
1305 0ba4 9F93 push r25
1306 0ba6 8F93 push r24
1307 0ba8 1F93 push r17
1308 0baa 0E94 0000 call _printf_P
1309 0bae 88E2 ldi r24,lo8(40)
1310 0bb0 8093 0000 sts DispPtr,r24
1311 0bb4 2091 0000 lds r18,AdNeutralRoll
1312 0bb8 3091 0000 lds r19,(AdNeutralRoll)+1
1313 0bbc C901 movw r24,r18
1314 0bbe 68E0 ldi r22,lo8(8)
1315 0bc0 70E0 ldi r23,hi8(8)
1316 0bc2 0E94 0000 call __divmodhi4
1317 0bc6 AC01 movw r20,r24
1318 0bc8 6DB7 in r22,__SP_L__
1319 0bca 7EB7 in r23,__SP_H__
1320 0bcc 675F subi r22,lo8(-(9))
1321 0bce 7F4F sbci r23,hi8(-(9))
1322 0bd0 0FB6 in __tmp_reg__,__SREG__
1323 0bd2 F894 cli
1324 0bd4 7EBF out __SP_H__,r23
1325 0bd6 0FBE out __SREG__,__tmp_reg__
1326 0bd8 6DBF out __SP_L__,r22
1327 0bda 37FD sbrc r19,7
1328 0bdc 00C0 rjmp .L85
1329 .L47:
1330 0bde 3595 asr r19
1331 0be0 2795 ror r18
1332 0be2 3595 asr r19
1333 0be4 2795 ror r18
1334 0be6 3595 asr r19
1335 0be8 2795 ror r18
1336 0bea 8091 0000 lds r24,AdWertRoll
1337 0bee 9091 0000 lds r25,(AdWertRoll)+1
1338 0bf2 821B sub r24,r18
1339 0bf4 930B sbc r25,r19
1340 0bf6 5F93 push r21
1341 0bf8 4F93 push r20
1342 0bfa 3F93 push r19
1343 0bfc 2F93 push r18
1344 0bfe 9F93 push r25
1345 0c00 8F93 push r24
1346 0c02 80E0 ldi r24,lo8(__c.2429)
1347 0c04 90E0 ldi r25,hi8(__c.2429)
1348 0c06 9F93 push r25
1349 0c08 8F93 push r24
1350 0c0a 1F93 push r17
1351 0c0c 0E94 0000 call _printf_P
1352 0c10 8CE3 ldi r24,lo8(60)
1353 0c12 8093 0000 sts DispPtr,r24
1354 0c16 2091 0000 lds r18,AdNeutralGier
1355 0c1a 3091 0000 lds r19,(AdNeutralGier)+1
1356 0c1e 8091 0000 lds r24,AdWertGier
1357 0c22 9091 0000 lds r25,(AdWertGier)+1
1358 0c26 A901 movw r20,r18
1359 0c28 481B sub r20,r24
1360 0c2a 590B sbc r21,r25
1361 0c2c 3F93 push r19
1362 0c2e 2F93 push r18
1363 0c30 5F93 push r21
1364 0c32 4F93 push r20
1365 0c34 80E0 ldi r24,lo8(__c.2431)
1366 0c36 90E0 ldi r25,hi8(__c.2431)
1367 0c38 9F93 push r25
1368 0c3a 8F93 push r24
1369 0c3c 1F93 push r17
1370 0c3e 0E94 0000 call _printf_P
1371 0c42 6DB7 in r22,__SP_L__
1372 0c44 7EB7 in r23,__SP_H__
1373 0c46 605F subi r22,lo8(-(16))
1374 0c48 7F4F sbci r23,hi8(-(16))
1375 0c4a 0FB6 in __tmp_reg__,__SREG__
1376 0c4c F894 cli
1377 0c4e 7EBF out __SP_H__,r23
1378 0c50 0FBE out __SREG__,__tmp_reg__
1379 0c52 6DBF out __SP_L__,r22
1380 0c54 00C0 rjmp .L41
1381 .L83:
1382 0c56 4F5F subi r20,lo8(-(1))
1383 0c58 5F4F sbci r21,hi8(-(1))
1384 0c5a 00C0 rjmp .L57
1385 .L82:
1386 0c5c 0796 adiw r24,7
1387 0c5e 00C0 rjmp .L56
1388 .L81:
1389 0c60 215F subi r18,lo8(-(15))
1390 0c62 3F4F sbci r19,hi8(-(15))
1391 0c64 00C0 rjmp .L55
1392 .L80:
1393 0c66 0196 adiw r24,1
1394 0c68 00C0 rjmp .L54
1395 .L79:
1396 0c6a 0796 adiw r24,7
1397 0c6c 00C0 rjmp .L53
1398 .L78:
1399 0c6e 215F subi r18,lo8(-(15))
1400 0c70 3F4F sbci r19,hi8(-(15))
1401 0c72 00C0 rjmp .L52
1402 .L77:
1403 0c74 0196 adiw r24,1
1404 0c76 00C0 rjmp .L51
1405 .L85:
1406 0c78 295F subi r18,lo8(-(7))
1407 0c7a 3F4F sbci r19,hi8(-(7))
1408 0c7c 00C0 rjmp .L47
1409 .L84:
1410 0c7e 295F subi r18,lo8(-(7))
1411 0c80 3F4F sbci r19,hi8(-(7))
1412 0c82 00C0 rjmp .L46
1413 .L76:
1414 0c84 4F5F subi r20,lo8(-(1))
1415 0c86 5F4F sbci r21,hi8(-(1))
1416 0c88 00C0 rjmp .L63
1417 .L75:
1418 0c8a 295F subi r18,lo8(-(7))
1419 0c8c 3F4F sbci r19,hi8(-(7))
1420 0c8e 00C0 rjmp .L62
1421 .L74:
1422 0c90 415F subi r20,lo8(-(15))
1423 0c92 5F4F sbci r21,hi8(-(15))
1424 0c94 00C0 rjmp .L61
1425 .L73:
1426 0c96 295F subi r18,lo8(-(7))
1427 0c98 3F4F sbci r19,hi8(-(7))
1428 0c9a 00C0 rjmp .L60
1429 .L72:
1430 0c9c 415F subi r20,lo8(-(15))
1431 0c9e 5F4F sbci r21,hi8(-(15))
1432 0ca0 00C0 rjmp .L59
1433 .L41:
1434 0ca2 1092 0000 sts RemoteKeys,__zero_reg__
1435 /* epilogue: frame size=0 */
1436 0ca6 1F91 pop r17
1437 0ca8 0895 ret
1438 /* epilogue end (size=2) */
1439 /* function Menu size 1612 (1609) */
1441 .global TestInt
1442 .global TestInt
1443 .section .bss
1446 TestInt:
1447 0000 0000 .skip 2,0
1448 .global Array
1449 .data
1452 Array:
1453 0000 01 .byte 1
1454 0001 02 .byte 2
1455 0002 03 .byte 3
1456 0003 04 .byte 4
1457 0004 05 .byte 5
1458 0005 06 .byte 6
1459 0006 07 .byte 7
1460 0007 08 .byte 8
1461 0008 09 .byte 9
1462 0009 0A .byte 10
1463 .global DisplayBuff
1466 DisplayBuff:
1467 000a 4861 6C6C .string "Hallo Welt"
1467 6F20 5765
1467 6C74 00
1468 0015 0000 0000 .skip 69,0
1468 0000 0000
1468 0000 0000
1468 0000 0000
1468 0000 0000
1469 .global DispPtr
1470 .global DispPtr
1471 .section .bss
1474 DispPtr:
1475 0002 00 .skip 1,0
1476 .global MaxMenue
1477 .data
1480 MaxMenue:
1481 005a 0B .byte 11
1482 .global MenuePunkt
1483 .global MenuePunkt
1484 .section .bss
1487 MenuePunkt:
1488 0003 00 .skip 1,0
1489 .global RemoteKeys
1490 .global RemoteKeys
1493 RemoteKeys:
1494 0004 00 .skip 1,0
1495 .section .progmem.data,"a",@progbits
1498 __c.2493:
1499 0000 4869 3A25 .string "Hi:%4i Cf:%4i "
1499 3469 2020
1499 4366 3A25
1499 3469 2000
1502 __c.2491:
1503 0010 4773 3A25 .string "Gs:%4i Gi:%4i "
1503 3469 2020
1503 4769 3A25
1503 3469 2000
1506 __c.2489:
1507 0020 4E69 3A25 .string "Ni:%4i Ro:%4i "
1507 3469 2020
1507 526F 3A25
1507 3469 2000
1510 __c.2487:
1511 0030 4578 7465 .string "ExternControl "
1511 726E 436F
1511 6E74 726F
1511 6C20 2000
1514 __c.2484:
1515 0040 5261 6E67 .string "Range:%3i-%3i"
1515 653A 2533
1515 692D 2533
1515 6900
1518 __c.2482:
1519 004e 5374 656C .string "Stellung: %3i"
1519 6C75 6E67
1519 3A20 2533
1519 6900
1522 __c.2480:
1523 005c 5365 7470 .string "Setpoint %3i"
1523 6F69 6E74
1523 2020 2533
1523 6900
1526 __c.2478:
1527 006a 5365 7276 .string "Servo "
1527 6F20 2000
1530 __c.2475:
1531 0072 506F 7469 .string "Poti4: %3i"
1531 343A 2020
1531 2533 6900
1534 __c.2473:
1535 007e 506F 7469 .string "Poti3: %3i"
1535 333A 2020
1535 2533 6900
1538 __c.2471:
1539 008a 506F 7469 .string "Poti2: %3i"
1539 323A 2020
1539 2533 6900
1542 __c.2469:
1543 0096 506F 7469 .string "Poti1: %3i"
1543 313A 2020
1543 2533 6900
1546 __c.2466:
1547 00a2 5374 6172 .string "Start: %5i"
1547 743A 2020
1547 2020 2025
1547 3569 00
1550 __c.2464:
1551 00b1 4D65 7373 .string "Messwert: %5i"
1551 7765 7274
1551 3A20 2025
1551 3569 00
1554 __c.2462:
1555 00c0 5269 6368 .string "Richtung: %5i"
1555 7475 6E67
1555 3A20 2025
1555 3569 00
1558 __c.2460:
1559 00cf 4B6F 6D70 .string "Kompass "
1559 6173 7320
1559 2020 2020
1559 2020 00
1562 __c.2457:
1563 00de 456D 7066 .string "Empf.Pegel:%5i"
1563 2E50 6567
1563 656C 3A25
1563 3569 00
1566 __c.2455:
1567 00ed 5370 616E .string "Spannung: %5i"
1567 6E75 6E67
1567 3A20 2025
1567 3569 00
1570 __c.2452:
1571 00fc 486F 6368 .string "Hoch %4i (%3i)"
1571 2025 3469
1571 2028 2533
1571 6929 00
1574 __c.2450:
1575 010b 526F 6C6C .string "Roll %4i (%3i)"
1575 2025 3469
1575 2028 2533
1575 6929 00
1578 __c.2448:
1579 011a 4E69 636B .string "Nick %4i (%3i)"
1579 2025 3469
1579 2028 2533
1579 6929 00
1582 __c.2446:
1583 0129 4143 4320 .string "ACC - Sensor"
1583 2D20 5365
1583 6E73 6F72
1583 00
1586 __c.2443:
1587 0136 4769 6572 .string "Gier %4i (%3i)(%3i)"
1587 2025 3469
1587 2028 2533
1587 6929 2825
1587 3369 2900
1590 __c.2441:
1591 014a 526F 6C6C .string "Roll %4i (%3i)(%3i)"
1591 2025 3469
1591 2028 2533
1591 6929 2825
1591 3369 2900
1594 __c.2439:
1595 015e 4E69 636B .string "Nick %4i (%3i)(%3i)"
1595 2025 3469
1595 2028 2533
1595 6929 2825
1595 3369 2900
1598 __c.2437:
1599 0172 4769 6572 .string "Gier %4i (%3i)"
1599 2025 3469
1599 2028 2533
1599 6929 00
1602 __c.2435:
1603 0181 526F 6C6C .string "Roll %4i (%3i.%x)"
1603 2025 3469
1603 2028 2533
1603 692E 2578
1603 2900
1606 __c.2433:
1607 0193 4E69 636B .string "Nick %4i (%3i.%x)"
1607 2025 3469
1607 2028 2533
1607 692E 2578
1607 2900
1610 __c.2431:
1611 01a5 4769 6572 .string "Gier %4i (%3i)"
1611 2025 3469
1611 2028 2533
1611 6929 00
1614 __c.2429:
1615 01b4 526F 6C6C .string "Roll %4i (%3i.%i)"
1615 2025 3469
1615 2028 2533
1615 692E 2569
1615 2900
1618 __c.2427:
1619 01c6 4E69 636B .string "Nick %4i (%3i.%i)"
1619 2025 3469
1619 2028 2533
1619 692E 2569
1619 2900
1622 __c.2425:
1623 01d8 4779 726F .string "Gyro - Sensor"
1623 202D 2053
1623 656E 736F
1623 7200
1626 __c.2422:
1627 01e6 5033 3A25 .string "P3:%4i P4:%4i "
1627 3469 2020
1627 5034 3A25
1627 3469 2000
1630 __c.2420:
1631 01f6 5031 3A25 .string "P1:%4i P2:%4i "
1631 3469 2020
1631 5032 3A25
1631 3469 2000
1634 __c.2418:
1635 0206 4773 3A25 .string "Gs:%4i Gi:%4i "
1635 3469 2020
1635 4769 3A25
1635 3469 2000
1638 __c.2416:
1639 0216 4E69 3A25 .string "Ni:%4i Ro:%4i "
1639 3469 2020
1639 526F 3A25
1639 3469 2000
1642 __c.2413:
1643 0226 4B37 3A25 .string "K7:%4i K8:%4i "
1643 3469 2020
1643 4B38 3A25
1643 3469 2000
1646 __c.2411:
1647 0236 4B35 3A25 .string "K5:%4i K6:%4i "
1647 3469 2020
1647 4B36 3A25
1647 3469 2000
1650 __c.2409:
1651 0246 4B33 3A25 .string "K3:%4i K4:%4i "
1651 3469 2020
1651 4B34 3A25
1651 3469 2000
1654 __c.2407:
1655 0256 4B31 3A25 .string "K1:%4i K2:%4i "
1655 3469 2020
1655 4B32 3A25
1655 3469 2000
1658 __c.2404:
1659 0266 4B6F 6D70 .string "Kompass: %5i"
1659 6173 733A
1659 2020 2025
1659 3569 00
1662 __c.2402:
1663 0275 526F 6C6C .string "Roll: %5i"
1663 3A20 2020
1663 2020 2025
1663 3569 00
1666 __c.2400:
1667 0284 4E69 636B .string "Nick: %5i"
1667 3A20 2020
1667 2020 2025
1667 3569 00
1670 __c.2398:
1671 0293 616B 742E .string "akt. Lage"
1671 204C 6167
1671 6500
1674 __c.2395:
1675 029d 48F6 6865 .string "H\366henregelung"
1675 6E72 6567
1675 656C 756E
1675 6700
1678 __c.2393:
1679 02ab 4B65 696E .string "Keine "
1679 6520 00
1682 __c.2391:
1683 02b2 4F66 6620 .string "Off : %5i"
1683 2020 2020
1683 203A 2025
1683 3569 00
1686 __c.2389:
1687 02c1 4C75 6674 .string "Luftdruck: %5i"
1687 6472 7563
1687 6B3A 2025
1687 3569 00
1690 __c.2387:
1691 02d0 536F 6C6C .string "SollHoehe: %5i"
1691 486F 6568
1691 653A 2025
1691 3569 00
1694 __c.2385:
1695 02df 486F 6568 .string "Hoehe: %5i"
1695 653A 2020
1695 2020 2025
1695 3569 00
1698 __c.2381:
1699 02ee 2863 2920 .string "(c) Holger Buss"
1699 486F 6C67
1699 6572 2042
1699 7573 7300
1702 __c.2379:
1703 02fe 5365 7474 .string "Setting: %d "
1703 696E 673A
1703 2025 6420
1703 00
1706 __c.2377:
1707 030b 4857 3A56 .string "HW:V%d.%d SW:%d.%d%c"
1707 2564 2E25
1707 6420 5357
1707 3A25 642E
1707 2564 2563
1710 __c.2375:
1711 0320 2B20 4D69 .string "+ MikroKopter +"
1711 6B72 6F4B
1711 6F70 7465
1711 7220 2B00
1714 __c.2372:
1715 0330 5B25 695D .string "[%i]"
1715 00
1718 __c.2370:
1719 0335 5B25 695D .string "[%i]"
1719 00
1720 /* File "menu.c": code 1621 = 0x0655 (1617), prologues 1, epilogues 3 */
DEFINED SYMBOLS
*ABS*:00000000 menu.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:12 .text:00000000 LcdClear
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1466 .data:0000000a DisplayBuff
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:31 .text:00000012 Menu
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1480 .data:0000005a MaxMenue
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1487 .bss:00000003 MenuePunkt
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1493 .bss:00000004 RemoteKeys
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1474 .bss:00000002 DispPtr
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1718 .progmem.data:00000335 __c.2370
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1714 .progmem.data:00000330 __c.2372
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1638 .progmem.data:00000216 __c.2416
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1634 .progmem.data:00000206 __c.2418
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1630 .progmem.data:000001f6 __c.2420
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1626 .progmem.data:000001e6 __c.2422
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1510 .progmem.data:00000030 __c.2487
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1506 .progmem.data:00000020 __c.2489
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1502 .progmem.data:00000010 __c.2491
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1498 .progmem.data:00000000 __c.2493
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1694 .progmem.data:000002df __c.2385
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1690 .progmem.data:000002d0 __c.2387
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1686 .progmem.data:000002c1 __c.2389
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1682 .progmem.data:000002b2 __c.2391
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1542 .progmem.data:00000096 __c.2469
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1538 .progmem.data:0000008a __c.2471
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1534 .progmem.data:0000007e __c.2473
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1530 .progmem.data:00000072 __c.2475
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1654 .progmem.data:00000256 __c.2407
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1650 .progmem.data:00000246 __c.2409
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1646 .progmem.data:00000236 __c.2411
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1642 .progmem.data:00000226 __c.2413
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1710 .progmem.data:00000320 __c.2375
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1706 .progmem.data:0000030b __c.2377
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1702 .progmem.data:000002fe __c.2379
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1698 .progmem.data:000002ee __c.2381
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1566 .progmem.data:000000ed __c.2455
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1562 .progmem.data:000000de __c.2457
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1582 .progmem.data:00000129 __c.2446
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1578 .progmem.data:0000011a __c.2448
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1574 .progmem.data:0000010b __c.2450
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1570 .progmem.data:000000fc __c.2452
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1558 .progmem.data:000000cf __c.2460
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1554 .progmem.data:000000c0 __c.2462
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1550 .progmem.data:000000b1 __c.2464
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1546 .progmem.data:000000a2 __c.2466
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1526 .progmem.data:0000006a __c.2478
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1522 .progmem.data:0000005c __c.2480
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1518 .progmem.data:0000004e __c.2482
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1514 .progmem.data:00000040 __c.2484
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1670 .progmem.data:00000293 __c.2398
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1666 .progmem.data:00000284 __c.2400
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1662 .progmem.data:00000275 __c.2402
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1658 .progmem.data:00000266 __c.2404
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1622 .progmem.data:000001d8 __c.2425
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1594 .progmem.data:0000015e __c.2439
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1590 .progmem.data:0000014a __c.2441
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1586 .progmem.data:00000136 __c.2443
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1678 .progmem.data:000002ab __c.2393
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1674 .progmem.data:0000029d __c.2395
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1606 .progmem.data:00000193 __c.2433
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1602 .progmem.data:00000181 __c.2435
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1598 .progmem.data:00000172 __c.2437
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1618 .progmem.data:000001c6 __c.2427
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1614 .progmem.data:000001b4 __c.2429
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1610 .progmem.data:000001a5 __c.2431
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1446 .bss:00000000 TestInt
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cctcM5uM.s:1452 .data:00000000 Array
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
_printf_P
EE_Parameter
PPM_in
ExternControl
HoehenWert
SollHoehe
MessLuftdruck
DruckOffsetSetting
Poti1
Poti2
Poti3
Poti4
PlatinenVersion
__udivmodqi4
GetActiveParamSetNumber
UBat
SenderOkay
NeutralAccX
AdWertAccNick
NeutralAccY
AdWertAccRoll
NeutralAccZ
__fixsfsi
Mittelwert_AccHoch
KompassRichtung
KompassValue
KompassStartwert
Parameter_ServoNickControl
ServoValue
IntegralNick
__divmodsi4
IntegralRoll
AnalogOffsetNick
AdNeutralNick
AdWertNick
AnalogOffsetRoll
AdNeutralRoll
AdWertRoll
AnalogOffsetGier
AdNeutralGier
AdWertGier
__divmodhi4
/branches/v0.72p kmpec/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/v0.72p kmpec/printf_P.c
0,0 → 1,480
// 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.
*/
 
/******************************************************************************
This file is a patched version of printf called _printf_P
It is made to work with avr-gcc for Atmel AVR MCUs.
There are some differences from standard printf:
1. There is no floating point support (with fp the code is about 8K!)
2. Return type is void
3. Format string must be in program memory (by using macro printf this is
done automaticaly)
4. %n is not implemented (just remove the comment around it if you need it)
5. If LIGHTPRINTF is defined, the code is about 550 bytes smaller and the
folowing specifiers are disabled :
space # * . - + p s o O
6. A function void uart_sendchar(char c) is used for output. The UART must
be initialized before using printf.
 
Alexander Popov
sasho@vip.orbitel.bg
******************************************************************************/
 
/*
* Actual printf innards.
*
* This code is large and complicated...
*/
 
#include <string.h>
#ifdef __STDC__
#include <stdarg.h>
#else
#include <varargs.h>
#endif
 
#include "main.h"
 
 
//#define LIGHTPRINTF
char PrintZiel;
 
 
char Putchar(char zeichen)
{
if(PrintZiel == OUT_LCD) { DisplayBuff[DispPtr++] = zeichen; return(1);}
else return(uart_putchar(zeichen));
}
 
 
void PRINT(const char * ptr, unsigned int len)
{
for(;len;len--) Putchar(*ptr++);
}
void PRINTP(const char * ptr, unsigned int len)
{
for(;len;len--) Putchar(pgm_read_byte(ptr++));
}
 
void PAD_SP(signed char howmany)
{
for(;howmany>0;howmany--) Putchar(' ');
}
 
void PAD_0(signed char howmany)
{
for(;howmany>0;howmany--) Putchar('0');
}
 
#define BUF 40
 
/*
* Macros for converting digits to letters and vice versa
*/
#define to_digit(c) ((c) - '0')
#define is_digit(c) ((c)<='9' && (c)>='0')
#define to_char(n) ((n) + '0')
 
/*
* Flags used during conversion.
*/
#define LONGINT 0x01 /* long integer */
#define LONGDBL 0x02 /* long double; unimplemented */
#define SHORTINT 0x04 /* short integer */
#define ALT 0x08 /* alternate form */
#define LADJUST 0x10 /* left adjustment */
#define ZEROPAD 0x20 /* zero (as opposed to blank) pad */
#define HEXPREFIX 0x40 /* add 0x or 0X prefix */
 
void _printf_P (char ziel,char const *fmt0, ...) /* Works with string from FLASH */
{
va_list ap;
register const char *fmt; /* format string */
register char ch; /* character from fmt */
register int n; /* handy integer (short term usage) */
register char *cp; /* handy char pointer (short term usage) */
const char *fmark; /* for remembering a place in fmt */
register unsigned char flags; /* flags as above */
signed char width; /* width from format (%8d), or 0 */
signed char prec; /* precision from format (%.3d), or -1 */
char sign; /* sign prefix (' ', '+', '-', or \0) */
unsigned long _ulong=0; /* integer arguments %[diouxX] */
#define OCT 8
#define DEC 10
#define HEX 16
unsigned char base; /* base for [diouxX] conversion */
signed char dprec; /* a copy of prec if [diouxX], 0 otherwise */
signed char dpad; /* extra 0 padding needed for integers */
signed char fieldsz; /* field size expanded by sign, dpad etc */
/* The initialization of 'size' is to suppress a warning that
'size' might be used unitialized. It seems gcc can't
quite grok this spaghetti code ... */
signed char size = 0; /* size of converted field or string */
char buf[BUF]; /* space for %c, %[diouxX], %[eEfgG] */
char ox[2]; /* space for 0x hex-prefix */
 
PrintZiel = ziel; // bestimmt, LCD oder UART
va_start(ap, fmt0);
fmt = fmt0;
 
/*
* Scan the format for conversions (`%' character).
*/
for (;;) {
for (fmark = fmt; (ch = pgm_read_byte(fmt)) != '\0' && ch != '%'; fmt++)
/* void */;
if ((n = fmt - fmark) != 0) {
PRINTP(fmark, n);
}
if (ch == '\0')
goto done;
fmt++; /* skip over '%' */
 
flags = 0;
dprec = 0;
width = 0;
prec = -1;
sign = '\0';
 
rflag: ch = PRG_RDB(fmt++);
reswitch:
#ifdef LIGHTPRINTF
if (ch=='o' || ch=='u' || (ch|0x20)=='x') {
#else
if (ch=='u' || (ch|0x20)=='x') {
#endif
if (flags&LONGINT) {
_ulong=va_arg(ap, unsigned long);
} else {
register unsigned int _d;
_d=va_arg(ap, unsigned int);
_ulong = flags&SHORTINT ? (unsigned long)(unsigned short)_d : (unsigned long)_d;
}
}
#ifndef LIGHTPRINTF
if(ch==' ') {
/*
* ``If the space and + flags both appear, the space
* flag will be ignored.''
* -- ANSI X3J11
*/
if (!sign)
sign = ' ';
goto rflag;
} else if (ch=='#') {
flags |= ALT;
goto rflag;
} else if (ch=='*'||ch=='-') {
if (ch=='*') {
/*
* ``A negative field width argument is taken as a
* - flag followed by a positive field width.''
* -- ANSI X3J11
* They don't exclude field widths read from args.
*/
if ((width = va_arg(ap, int)) >= 0)
goto rflag;
width = -width;
}
flags |= LADJUST;
flags &= ~ZEROPAD; /* '-' disables '0' */
goto rflag;
} else if (ch=='+') {
sign = '+';
goto rflag;
} else if (ch=='.') {
if ((ch = PRG_RDB(fmt++)) == '*') {
n = va_arg(ap, int);
prec = n < 0 ? -1 : n;
goto rflag;
}
n = 0;
while (is_digit(ch)) {
n = n*10 + to_digit(ch);
ch = PRG_RDB(fmt++);
}
prec = n < 0 ? -1 : n;
goto reswitch;
} else
#endif /* LIGHTPRINTF */
if (ch=='0') {
/*
* ``Note that 0 is taken as a flag, not as the
* beginning of a field width.''
* -- ANSI X3J11
*/
if (!(flags & LADJUST))
flags |= ZEROPAD; /* '-' disables '0' */
goto rflag;
} else if (ch>='1' && ch<='9') {
n = 0;
do {
n = 10 * n + to_digit(ch);
ch = PRG_RDB(fmt++);
} while (is_digit(ch));
width = n;
goto reswitch;
} else if (ch=='h') {
flags |= SHORTINT;
goto rflag;
} else if (ch=='l') {
flags |= LONGINT;
goto rflag;
} else if (ch=='c') {
*(cp = buf) = va_arg(ap, int);
size = 1;
sign = '\0';
} else if (ch=='D'||ch=='d'||ch=='i') {
if(ch=='D')
flags |= LONGINT;
if (flags&LONGINT) {
_ulong=va_arg(ap, long);
} else {
register int _d;
_d=va_arg(ap, int);
_ulong = flags&SHORTINT ? (long)(short)_d : (long)_d;
}
if ((long)_ulong < 0) {
_ulong = -_ulong;
sign = '-';
}
base = DEC;
goto number;
} else
/*
if (ch=='n') {
if (flags & LONGINT)
*va_arg(ap, long *) = ret;
else if (flags & SHORTINT)
*va_arg(ap, short *) = ret;
else
*va_arg(ap, int *) = ret;
continue; // no output
} else
*/
#ifndef LIGHTPRINTF
if (ch=='O'||ch=='o') {
if (ch=='O')
flags |= LONGINT;
base = OCT;
goto nosign;
} else if (ch=='p') {
/*
* ``The argument shall be a pointer to void. The
* value of the pointer is converted to a sequence
* of printable characters, in an implementation-
* defined manner.''
* -- ANSI X3J11
*/
/* NOSTRICT */
_ulong = (unsigned int)va_arg(ap, void *);
base = HEX;
flags |= HEXPREFIX;
ch = 'x';
goto nosign;
} else if (ch=='s') { // print a string from RAM
if ((cp = va_arg(ap, char *)) == NULL) {
cp=buf;
cp[0] = '(';
cp[1] = 'n';
cp[2] = 'u';
cp[4] = cp[3] = 'l';
cp[5] = ')';
cp[6] = '\0';
}
if (prec >= 0) {
/*
* can't use strlen; can only look for the
* NUL in the first `prec' characters, and
* strlen() will go further.
*/
char *p = (char*)memchr(cp, 0, prec);
 
if (p != NULL) {
size = p - cp;
if (size > prec)
size = prec;
} else
size = prec;
} else
size = strlen(cp);
sign = '\0';
} else
#endif /* LIGHTPRINTF */
if(ch=='U'||ch=='u') {
if (ch=='U')
flags |= LONGINT;
base = DEC;
goto nosign;
} else if (ch=='X'||ch=='x') {
base = HEX;
/* leading 0x/X only if non-zero */
if (flags & ALT && _ulong != 0)
flags |= HEXPREFIX;
 
/* unsigned conversions */
nosign: sign = '\0';
/*
* ``... diouXx conversions ... if a precision is
* specified, the 0 flag will be ignored.''
* -- ANSI X3J11
*/
number: if ((dprec = prec) >= 0)
flags &= ~ZEROPAD;
 
/*
* ``The result of converting a zero value with an
* explicit precision of zero is no characters.''
* -- ANSI X3J11
*/
cp = buf + BUF;
if (_ulong != 0 || prec != 0) {
register unsigned char _d,notlastdigit;
do {
notlastdigit=(_ulong>=base);
_d = _ulong % base;
 
if (_d<10) {
_d+='0';
} else {
_d+='a'-10;
if (ch=='X') _d&=~0x20;
}
*--cp=_d;
_ulong /= base;
} while (notlastdigit);
#ifndef LIGHTPRINTF
// handle octal leading 0
if (base==OCT && flags & ALT && *cp != '0')
*--cp = '0';
#endif
}
 
size = buf + BUF - cp;
} else { //default
/* "%?" prints ?, unless ? is NUL */
if (ch == '\0')
goto done;
/* pretend it was %c with argument ch */
cp = buf;
*cp = ch;
size = 1;
sign = '\0';
}
 
/*
* All reasonable formats wind up here. At this point,
* `cp' points to a string which (if not flags&LADJUST)
* should be padded out to `width' places. If
* flags&ZEROPAD, it should first be prefixed by any
* sign or other prefix; otherwise, it should be blank
* padded before the prefix is emitted. After any
* left-hand padding and prefixing, emit zeroes
* required by a decimal [diouxX] precision, then print
* the string proper, then emit zeroes required by any
* leftover floating precision; finally, if LADJUST,
* pad with blanks.
*/
 
/*
* compute actual size, so we know how much to pad.
*/
fieldsz = size;
 
dpad = dprec - size;
if (dpad < 0)
dpad = 0;
 
if (sign)
fieldsz++;
else if (flags & HEXPREFIX)
fieldsz += 2;
fieldsz += dpad;
 
/* right-adjusting blank padding */
if ((flags & (LADJUST|ZEROPAD)) == 0)
PAD_SP(width - fieldsz);
 
/* prefix */
if (sign) {
PRINT(&sign, 1);
} else if (flags & HEXPREFIX) {
ox[0] = '0';
ox[1] = ch;
PRINT(ox, 2);
}
 
/* right-adjusting zero padding */
if ((flags & (LADJUST|ZEROPAD)) == ZEROPAD)
PAD_0(width - fieldsz);
 
/* leading zeroes from decimal precision */
PAD_0(dpad);
 
/* the string or number proper */
PRINT(cp, size);
 
/* left-adjusting padding (always blank) */
if (flags & LADJUST)
PAD_SP(width - fieldsz);
}
done:
va_end(ap);
}
/branches/v0.72p kmpec/printf_P.d
0,0 → 1,2
printf_P.o printf_P.d : printf_P.c main.h old_macros.h _Settings.h printf_P.h \
timer0.h uart.h analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/printf_P.h
0,0 → 1,19
#ifndef _PRINTF_P_H_
#define _PRINTF_P_H_
 
#include <avr/pgmspace.h>
 
#define OUT_V24 0
#define OUT_LCD 1
 
 
void _printf_P (char, char const *fmt0, ...);
extern char PrintZiel;
 
 
#define printf_P(format, args...) _printf_P(OUT_V24,format , ## args)
#define printf(format, args...) _printf_P(OUT_V24,PSTR(format) , ## args)
#define LCD_printfxy(x,y,format, args...) { DispPtr = y * 20 + x; _printf_P(OUT_LCD,PSTR(format) , ## args);}
#define LCD_printf(format, args...) { _printf_P(OUT_LCD,PSTR(format) , ## args);}
 
#endif
/branches/v0.72p kmpec/printf_P.lst
0,0 → 1,1002
1 .file "printf_P.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global Putchar
12 Putchar:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 982F mov r25,r24
16 0002 8091 0000 lds r24,PrintZiel
17 0006 8130 cpi r24,lo8(1)
18 0008 01F0 breq .L7
19 000a 892F mov r24,r25
20 000c 0E94 0000 call uart_putchar
21 0010 282F mov r18,r24
22 0012 30E0 ldi r19,lo8(0)
23 0014 00C0 rjmp .L4
24 .L7:
25 0016 8091 0000 lds r24,DispPtr
26 001a E82F mov r30,r24
27 001c F0E0 ldi r31,lo8(0)
28 001e E050 subi r30,lo8(-(DisplayBuff))
29 0020 F040 sbci r31,hi8(-(DisplayBuff))
30 0022 9083 st Z,r25
31 0024 8F5F subi r24,lo8(-(1))
32 0026 8093 0000 sts DispPtr,r24
33 002a 21E0 ldi r18,lo8(1)
34 002c 30E0 ldi r19,hi8(1)
35 .L4:
36 002e C901 movw r24,r18
37 /* epilogue: frame size=0 */
38 0030 0895 ret
39 /* epilogue end (size=1) */
40 /* function Putchar size 25 (24) */
42 .global PAD_0
44 PAD_0:
45 /* prologue: frame size=0 */
46 0032 1F93 push r17
47 /* prologue end (size=1) */
48 0034 182F mov r17,r24
49 0036 1816 cp __zero_reg__,r24
50 0038 04F4 brge .L11
51 .L12:
52 003a 80E3 ldi r24,lo8(48)
53 003c 0E94 0000 call Putchar
54 0040 1150 subi r17,lo8(-(-1))
55 0042 01F4 brne .L12
56 .L11:
57 /* epilogue: frame size=0 */
58 0044 1F91 pop r17
59 0046 0895 ret
60 /* epilogue end (size=2) */
61 /* function PAD_0 size 12 (9) */
63 .global PAD_SP
65 PAD_SP:
66 /* prologue: frame size=0 */
67 0048 1F93 push r17
68 /* prologue end (size=1) */
69 004a 182F mov r17,r24
70 004c 1816 cp __zero_reg__,r24
71 004e 04F4 brge .L17
72 .L18:
73 0050 80E2 ldi r24,lo8(32)
74 0052 0E94 0000 call Putchar
75 0056 1150 subi r17,lo8(-(-1))
76 0058 01F4 brne .L18
77 .L17:
78 /* epilogue: frame size=0 */
79 005a 1F91 pop r17
80 005c 0895 ret
81 /* epilogue end (size=2) */
82 /* function PAD_SP size 12 (9) */
84 .global PRINTP
86 PRINTP:
87 /* prologue: frame size=0 */
88 005e 0F93 push r16
89 0060 1F93 push r17
90 0062 CF93 push r28
91 0064 DF93 push r29
92 /* prologue end (size=4) */
93 0066 8C01 movw r16,r24
94 0068 EB01 movw r28,r22
95 006a 672B or r22,r23
96 006c 01F0 breq .L23
97 .L24:
98 006e F801 movw r30,r16
99 0070 0F5F subi r16,lo8(-(1))
100 0072 1F4F sbci r17,hi8(-(1))
101 /* #APP */
102 0074 E491 lpm r30, Z
103
104 /* #NOAPP */
105 0076 8E2F mov r24,r30
106 0078 0E94 0000 call Putchar
107 007c 2197 sbiw r28,1
108 007e 01F4 brne .L24
109 .L23:
110 /* epilogue: frame size=0 */
111 0080 DF91 pop r29
112 0082 CF91 pop r28
113 0084 1F91 pop r17
114 0086 0F91 pop r16
115 0088 0895 ret
116 /* epilogue end (size=5) */
117 /* function PRINTP size 26 (17) */
119 .global PRINT
121 PRINT:
122 /* prologue: frame size=0 */
123 008a 0F93 push r16
124 008c 1F93 push r17
125 008e CF93 push r28
126 0090 DF93 push r29
127 /* prologue end (size=4) */
128 0092 8C01 movw r16,r24
129 0094 EB01 movw r28,r22
130 0096 672B or r22,r23
131 0098 01F0 breq .L29
132 .L30:
133 009a F801 movw r30,r16
134 009c 8191 ld r24,Z+
135 009e 8F01 movw r16,r30
136 00a0 0E94 0000 call Putchar
137 00a4 2197 sbiw r28,1
138 00a6 01F4 brne .L30
139 .L29:
140 /* epilogue: frame size=0 */
141 00a8 DF91 pop r29
142 00aa CF91 pop r28
143 00ac 1F91 pop r17
144 00ae 0F91 pop r16
145 00b0 0895 ret
146 /* epilogue end (size=5) */
147 /* function PRINT size 21 (12) */
149 .global _printf_P
151 _printf_P:
152 /* prologue: frame size=53 */
153 00b2 2F92 push r2
154 00b4 3F92 push r3
155 00b6 4F92 push r4
156 00b8 5F92 push r5
157 00ba 6F92 push r6
158 00bc 7F92 push r7
159 00be 8F92 push r8
160 00c0 9F92 push r9
161 00c2 AF92 push r10
162 00c4 BF92 push r11
163 00c6 CF92 push r12
164 00c8 DF92 push r13
165 00ca EF92 push r14
166 00cc FF92 push r15
167 00ce 0F93 push r16
168 00d0 1F93 push r17
169 00d2 CF93 push r28
170 00d4 DF93 push r29
171 00d6 CDB7 in r28,__SP_L__
172 00d8 DEB7 in r29,__SP_H__
173 00da E597 sbiw r28,53
174 00dc 0FB6 in __tmp_reg__,__SREG__
175 00de F894 cli
176 00e0 DEBF out __SP_H__,r29
177 00e2 0FBE out __SREG__,__tmp_reg__
178 00e4 CDBF out __SP_L__,r28
179 /* prologue end (size=26) */
180 00e6 2B96 adiw r28,74-63
181 00e8 8FAD ldd r24,Y+63
182 00ea 2B97 sbiw r28,74-63
183 00ec 8093 0000 sts PrintZiel,r24
184 00f0 CE01 movw r24,r28
185 00f2 835B subi r24,lo8(-(77))
186 00f4 9F4F sbci r25,hi8(-(77))
187 00f6 9B83 std Y+3,r25
188 00f8 8A83 std Y+2,r24
189 00fa 2D96 adiw r28,75-62
190 00fc 0EAD ldd r16,Y+62
191 00fe 1FAD ldd r17,Y+63
192 0100 2D97 sbiw r28,75-62
193 0102 1EA6 std Y+46,__zero_reg__
194 0104 1FA6 std Y+47,__zero_reg__
195 0106 18AA std Y+48,__zero_reg__
196 0108 19AA std Y+49,__zero_reg__
197 .L184:
198 010a F801 movw r30,r16
199 /* #APP */
200 010c 8491 lpm r24, Z
201
202 /* #NOAPP */
203 010e 8823 tst r24
204 0110 01F4 brne .+2
205 0112 00C0 rjmp .L165
206 0114 8532 cpi r24,lo8(37)
207 0116 01F4 brne .+2
208 0118 00C0 rjmp .L187
209 011a 6801 movw r12,r16
210 011c 00C0 rjmp .L39
211 .L188:
212 011e F5E2 ldi r31,lo8(37)
213 0120 FF16 cp r15,r31
214 0122 01F0 breq .L40
215 .L39:
216 0124 0894 sec
217 0126 C11C adc r12,__zero_reg__
218 0128 D11C adc r13,__zero_reg__
219 012a F601 movw r30,r12
220 /* #APP */
221 012c F490 lpm r15, Z
222
223 /* #NOAPP */
224 012e FF20 tst r15
225 0130 01F4 brne .L188
226 .L40:
227 0132 B601 movw r22,r12
228 0134 601B sub r22,r16
229 0136 710B sbc r23,r17
230 0138 01F0 breq .L42
231 013a C801 movw r24,r16
232 013c 0E94 0000 call PRINTP
233 .L42:
234 0140 FF20 tst r15
235 0142 01F4 brne .+2
236 0144 00C0 rjmp .L165
237 .L38:
238 0146 8601 movw r16,r12
239 0148 0F5F subi r16,lo8(-(1))
240 014a 1F4F sbci r17,hi8(-(1))
241 014c 1982 std Y+1,__zero_reg__
242 014e AA81 ldd r26,Y+2
243 0150 BB81 ldd r27,Y+3
244 0152 8EA4 ldd r8,Y+46
245 0154 9FA4 ldd r9,Y+47
246 0156 A8A8 ldd r10,Y+48
247 0158 B9A8 ldd r11,Y+49
248 015a 3324 clr r3
249 015c 2224 clr r2
250 015e 8FEF ldi r24,lo8(-1)
251 0160 8BAB std Y+51,r24
252 .L185:
253 0162 F801 movw r30,r16
254 0164 0F5F subi r16,lo8(-(1))
255 0166 1F4F sbci r17,hi8(-(1))
256 /* #APP */
257 0168 F490 lpm r15, Z
258
259 /* #NOAPP */
260 016a C32C mov r12,r3
261 016c DD24 clr r13
262 016e 91E0 ldi r25,lo8(1)
263 0170 C922 and r12,r25
264 0172 DD24 clr r13
265 .L186:
266 0174 E5E7 ldi r30,lo8(117)
267 0176 FE16 cp r15,r30
268 0178 01F4 brne .+2
269 017a 00C0 rjmp .L46
270 .L193:
271 017c 8F2D mov r24,r15
272 017e 8062 ori r24,lo8(32)
273 0180 8837 cpi r24,lo8(120)
274 0182 01F4 brne .+2
275 0184 00C0 rjmp .L46
276 .L48:
277 0186 F0E2 ldi r31,lo8(32)
278 0188 FF16 cp r15,r31
279 018a 01F4 brne .+2
280 018c 00C0 rjmp .L189
281 .L51:
282 018e 83E2 ldi r24,lo8(35)
283 0190 F816 cp r15,r24
284 0192 01F4 brne .+2
285 0194 00C0 rjmp .L190
286 0196 EAE2 ldi r30,lo8(42)
287 0198 FE16 cp r15,r30
288 019a 01F4 brne .+2
289 019c 00C0 rjmp .L56
290 019e FDE2 ldi r31,lo8(45)
291 01a0 FF16 cp r15,r31
292 01a2 01F4 brne .+2
293 01a4 00C0 rjmp .L58
294 01a6 EBE2 ldi r30,lo8(43)
295 01a8 FE16 cp r15,r30
296 01aa 01F4 brne .+2
297 01ac 00C0 rjmp .L182
298 01ae FEE2 ldi r31,lo8(46)
299 01b0 FF16 cp r15,r31
300 01b2 01F0 breq .L191
301 01b4 80E3 ldi r24,lo8(48)
302 01b6 F816 cp r15,r24
303 01b8 01F4 brne .+2
304 01ba 00C0 rjmp .L192
305 01bc 8F2D mov r24,r15
306 01be 8153 subi r24,lo8(-(-49))
307 01c0 8930 cpi r24,lo8(9)
308 01c2 00F0 brlo .+2
309 01c4 00C0 rjmp .L76
310 01c6 20E0 ldi r18,lo8(0)
311 01c8 30E0 ldi r19,hi8(0)
312 .L78:
313 01ca C901 movw r24,r18
314 01cc 880F lsl r24
315 01ce 991F rol r25
316 01d0 880F lsl r24
317 01d2 991F rol r25
318 01d4 880F lsl r24
319 01d6 991F rol r25
320 01d8 220F lsl r18
321 01da 331F rol r19
322 01dc 280F add r18,r24
323 01de 391F adc r19,r25
324 01e0 2F0D add r18,r15
325 01e2 311D adc r19,__zero_reg__
326 01e4 2053 subi r18,lo8(-(-48))
327 01e6 3040 sbci r19,hi8(-(-48))
328 01e8 F801 movw r30,r16
329 01ea 0F5F subi r16,lo8(-(1))
330 01ec 1F4F sbci r17,hi8(-(1))
331 /* #APP */
332 01ee F490 lpm r15, Z
333
334 /* #NOAPP */
335 01f0 8F2D mov r24,r15
336 01f2 8053 subi r24,lo8(-(-48))
337 01f4 8A30 cpi r24,lo8(10)
338 01f6 00F0 brlo .L78
339 01f8 222E mov r2,r18
340 01fa E5E7 ldi r30,lo8(117)
341 01fc FE16 cp r15,r30
342 01fe 01F0 breq .+2
343 0200 00C0 rjmp .L193
344 .L46:
345 0202 C114 cp r12,__zero_reg__
346 0204 D104 cpc r13,__zero_reg__
347 0206 01F4 brne .+2
348 0208 00C0 rjmp .L49
349 020a 8D90 ld r8,X+
350 020c 9D90 ld r9,X+
351 020e AD90 ld r10,X+
352 0210 BC90 ld r11,X
353 0212 1397 sbiw r26,3
354 0214 1496 adiw r26,4
355 0216 F0E2 ldi r31,lo8(32)
356 0218 FF16 cp r15,r31
357 021a 01F0 breq .+2
358 021c 00C0 rjmp .L51
359 .L189:
360 021e 8981 ldd r24,Y+1
361 0220 8823 tst r24
362 0222 01F0 breq .+2
363 0224 00C0 rjmp .L185
364 .L182:
365 0226 F982 std Y+1,r15
366 0228 00C0 rjmp .L185
367 .L191:
368 022a F801 movw r30,r16
369 022c 0F5F subi r16,lo8(-(1))
370 022e 1F4F sbci r17,hi8(-(1))
371 /* #APP */
372 0230 9491 lpm r25, Z
373
374 /* #NOAPP */
375 0232 9A32 cpi r25,lo8(42)
376 0234 01F4 brne .+2
377 0236 00C0 rjmp .L65
378 0238 892F mov r24,r25
379 023a 8053 subi r24,lo8(-(-48))
380 023c 8A30 cpi r24,lo8(10)
381 023e 00F4 brsh .L194
382 0240 492F mov r20,r25
383 0242 20E0 ldi r18,lo8(0)
384 0244 30E0 ldi r19,hi8(0)
385 .L70:
386 0246 C901 movw r24,r18
387 0248 880F lsl r24
388 024a 991F rol r25
389 024c 880F lsl r24
390 024e 991F rol r25
391 0250 880F lsl r24
392 0252 991F rol r25
393 0254 220F lsl r18
394 0256 331F rol r19
395 0258 280F add r18,r24
396 025a 391F adc r19,r25
397 025c 240F add r18,r20
398 025e 311D adc r19,__zero_reg__
399 0260 2053 subi r18,lo8(-(-48))
400 0262 3040 sbci r19,hi8(-(-48))
401 0264 F801 movw r30,r16
402 0266 0F5F subi r16,lo8(-(1))
403 0268 1F4F sbci r17,hi8(-(1))
404 /* #APP */
405 026a 6491 lpm r22, Z
406
407 /* #NOAPP */
408 026c 462F mov r20,r22
409 026e 862F mov r24,r22
410 0270 8053 subi r24,lo8(-(-48))
411 0272 8A30 cpi r24,lo8(10)
412 0274 00F0 brlo .L70
413 0276 A901 movw r20,r18
414 0278 37FD sbrc r19,7
415 027a 00C0 rjmp .L195
416 .L72:
417 027c 4BAB std Y+51,r20
418 027e F62E mov r15,r22
419 0280 00C0 rjmp .L186
420 .L49:
421 0282 8D91 ld r24,X+
422 0284 9C91 ld r25,X
423 0286 1197 sbiw r26,1
424 0288 4C01 movw r8,r24
425 028a AA24 clr r10
426 028c BB24 clr r11
427 028e 1296 adiw r26,2
428 0290 00C0 rjmp .L48
429 .L195:
430 0292 4FEF ldi r20,lo8(-1)
431 0294 5FEF ldi r21,hi8(-1)
432 0296 00C0 rjmp .L72
433 .L194:
434 0298 F92E mov r15,r25
435 029a 1BAA std Y+51,__zero_reg__
436 029c 00C0 rjmp .L186
437 .L56:
438 029e FD01 movw r30,r26
439 02a0 1296 adiw r26,2
440 02a2 2080 ld r2,Z
441 02a4 27FE sbrs r2,7
442 02a6 00C0 rjmp .L185
443 02a8 2194 neg r2
444 .L58:
445 02aa 80E1 ldi r24,lo8(16)
446 02ac 382A or r3,r24
447 02ae 9FED ldi r25,lo8(-33)
448 02b0 3922 and r3,r25
449 02b2 00C0 rjmp .L185
450 .L190:
451 02b4 98E0 ldi r25,lo8(8)
452 02b6 392A or r3,r25
453 02b8 00C0 rjmp .L185
454 .L192:
455 02ba 34FC sbrc r3,4
456 02bc 00C0 rjmp .L185
457 02be 90E2 ldi r25,lo8(32)
458 02c0 392A or r3,r25
459 02c2 00C0 rjmp .L185
460 .L76:
461 02c4 E8E6 ldi r30,lo8(104)
462 02c6 FE16 cp r15,r30
463 02c8 01F0 breq .L196
464 02ca 8CE6 ldi r24,lo8(108)
465 02cc F816 cp r15,r24
466 02ce 01F4 brne .L82
467 02d0 91E0 ldi r25,lo8(1)
468 02d2 392A or r3,r25
469 02d4 00C0 rjmp .L185
470 .L65:
471 02d6 CD01 movw r24,r26
472 02d8 0296 adiw r24,2
473 02da 4D91 ld r20,X+
474 02dc 5C91 ld r21,X
475 02de 57FD sbrc r21,7
476 02e0 00C0 rjmp .L197
477 .L69:
478 02e2 4BAB std Y+51,r20
479 02e4 DC01 movw r26,r24
480 02e6 00C0 rjmp .L185
481 .L196:
482 02e8 F4E0 ldi r31,lo8(4)
483 02ea 3F2A or r3,r31
484 02ec 00C0 rjmp .L185
485 .L82:
486 02ee BB83 std Y+3,r27
487 02f0 AA83 std Y+2,r26
488 02f2 E3E6 ldi r30,lo8(99)
489 02f4 FE16 cp r15,r30
490 02f6 01F4 brne .+2
491 02f8 00C0 rjmp .L198
492 02fa F4E4 ldi r31,lo8(68)
493 02fc FF16 cp r15,r31
494 02fe 01F4 brne .+2
495 0300 00C0 rjmp .L87
496 0302 84E6 ldi r24,lo8(100)
497 0304 F816 cp r15,r24
498 0306 01F4 brne .+2
499 0308 00C0 rjmp .L89
500 030a 99E6 ldi r25,lo8(105)
501 030c F916 cp r15,r25
502 030e 01F4 brne .+2
503 0310 00C0 rjmp .L89
504 0312 9FE4 ldi r25,lo8(79)
505 0314 F916 cp r15,r25
506 0316 01F4 brne .+2
507 0318 00C0 rjmp .L98
508 031a EFE6 ldi r30,lo8(111)
509 031c FE16 cp r15,r30
510 031e 01F4 brne .+2
511 0320 00C0 rjmp .L199
512 0322 E0E7 ldi r30,lo8(112)
513 0324 FE16 cp r15,r30
514 0326 01F4 brne .+2
515 0328 00C0 rjmp .L200
516 032a 93E7 ldi r25,lo8(115)
517 032c F916 cp r15,r25
518 032e 01F4 brne .+2
519 0330 00C0 rjmp .L201
520 0332 85E5 ldi r24,lo8(85)
521 0334 F816 cp r15,r24
522 0336 01F4 brne .+2
523 0338 00C0 rjmp .L116
524 033a 95E7 ldi r25,lo8(117)
525 033c F916 cp r15,r25
526 033e 01F4 brne .+2
527 0340 00C0 rjmp .L202
528 0342 98E5 ldi r25,lo8(88)
529 0344 F916 cp r15,r25
530 0346 01F4 brne .+2
531 0348 00C0 rjmp .L120
532 034a E8E7 ldi r30,lo8(120)
533 034c FE16 cp r15,r30
534 034e 01F4 brne .+2
535 0350 00C0 rjmp .L120
536 0352 FF20 tst r15
537 0354 01F4 brne .+2
538 0356 00C0 rjmp .L165
539 0358 FE82 std Y+6,r15
540 035a 1982 std Y+1,__zero_reg__
541 .L34:
542 .L86:
543 035c 632C mov r6,r3
544 035e 7724 clr r7
545 0360 8EA6 std Y+46,r8
546 0362 9FA6 std Y+47,r9
547 0364 A8AA std Y+48,r10
548 0366 B9AA std Y+49,r11
549 0368 EE24 clr r14
550 036a 36E0 ldi r19,lo8(6)
551 036c C32E mov r12,r19
552 036e D12C mov r13,__zero_reg__
553 0370 CC0E add r12,r28
554 0372 DD1E adc r13,r29
555 0374 81E0 ldi r24,lo8(1)
556 0376 E1E0 ldi r30,lo8(1)
557 0378 90E0 ldi r25,lo8(0)
558 037a 21E0 ldi r18,lo8(1)
559 037c A22E mov r10,r18
560 037e B12C mov r11,__zero_reg__
561 .L150:
562 0380 2981 ldd r18,Y+1
563 0382 2223 tst r18
564 0384 01F4 brne .+2
565 0386 00C0 rjmp .L151
566 0388 8F5F subi r24,lo8(-(1))
567 .L153:
568 038a 582E mov r5,r24
569 038c 590E add r5,r25
570 038e 40E3 ldi r20,lo8(48)
571 0390 842E mov r8,r20
572 0392 912C mov r9,__zero_reg__
573 0394 8620 and r8,r6
574 0396 9720 and r9,r7
575 0398 8114 cp r8,__zero_reg__
576 039a 9104 cpc r9,__zero_reg__
577 039c 01F4 brne .+2
578 039e 00C0 rjmp .L203
579 .L156:
580 03a0 2223 tst r18
581 03a2 01F0 breq .+2
582 03a4 00C0 rjmp .L204
583 03a6 66FC sbrc r6,6
584 03a8 00C0 rjmp .L205
585 .L160:
586 03aa F0E2 ldi r31,lo8(32)
587 03ac 8F16 cp r8,r31
588 03ae 9104 cpc r9,__zero_reg__
589 03b0 01F4 brne .+2
590 03b2 00C0 rjmp .L206
591 .L162:
592 03b4 8E2D mov r24,r14
593 03b6 0E94 0000 call PAD_0
594 03ba B501 movw r22,r10
595 03bc C601 movw r24,r12
596 03be 0E94 0000 call PRINT
597 03c2 64FE sbrs r6,4
598 03c4 00C0 rjmp .L184
599 03c6 822D mov r24,r2
600 03c8 8519 sub r24,r5
601 03ca 0E94 0000 call PAD_SP
602 03ce 00C0 rjmp .L184
603 .L197:
604 03d0 4FEF ldi r20,lo8(-1)
605 03d2 5FEF ldi r21,hi8(-1)
606 03d4 00C0 rjmp .L69
607 .L87:
608 03d6 E1E0 ldi r30,lo8(1)
609 03d8 3E2A or r3,r30
610 .L89:
611 03da 30FE sbrs r3,0
612 03dc 00C0 rjmp .L92
613 03de 1496 adiw r26,4
614 03e0 BB83 std Y+3,r27
615 03e2 AA83 std Y+2,r26
616 03e4 BE90 ld r11,-X
617 03e6 AE90 ld r10,-X
618 03e8 9E90 ld r9,-X
619 03ea 8E90 ld r8,-X
620 .L94:
621 03ec B7FC sbrc r11,7
622 03ee 00C0 rjmp .L95
623 03f0 FAE0 ldi r31,lo8(10)
624 03f2 FAAB std Y+50,r31
625 .L97:
626 03f4 EBA9 ldd r30,Y+51
627 03f6 E7FD sbrc r30,7
628 03f8 00C0 rjmp .L126
629 03fa FFED ldi r31,lo8(-33)
630 03fc 3F22 and r3,r31
631 .L126:
632 03fe 8114 cp r8,__zero_reg__
633 0400 9104 cpc r9,__zero_reg__
634 0402 A104 cpc r10,__zero_reg__
635 0404 B104 cpc r11,__zero_reg__
636 0406 01F0 breq .L128
637 0408 8AA9 ldd r24,Y+50
638 040a 482E mov r4,r24
639 040c 5524 clr r5
640 040e 6624 clr r6
641 0410 7724 clr r7
642 .L130:
643 0412 EEE2 ldi r30,lo8(46)
644 0414 CE2E mov r12,r30
645 0416 D12C mov r13,__zero_reg__
646 0418 CC0E add r12,r28
647 041a DD1E adc r13,r29
648 041c DDAA std Y+53,r13
649 041e CCAA std Y+52,r12
650 0420 00C0 rjmp .L134
651 .L207:
652 0422 70E3 ldi r23,lo8(48)
653 0424 E72E mov r14,r23
654 0426 E60E add r14,r22
655 .L137:
656 0428 F601 movw r30,r12
657 042a E292 st -Z,r14
658 042c 6F01 movw r12,r30
659 042e C501 movw r24,r10
660 0430 B401 movw r22,r8
661 0432 A301 movw r20,r6
662 0434 9201 movw r18,r4
663 0436 0E94 0000 call __udivmodsi4
664 043a 2EA7 std Y+46,r18
665 043c 3FA7 std Y+47,r19
666 043e 48AB std Y+48,r20
667 0440 59AB std Y+49,r21
668 0442 8414 cp r8,r4
669 0444 9504 cpc r9,r5
670 0446 A604 cpc r10,r6
671 0448 B704 cpc r11,r7
672 044a 00F0 brlo .L139
673 044c 4901 movw r8,r18
674 044e 5A01 movw r10,r20
675 .L134:
676 0450 C501 movw r24,r10
677 0452 B401 movw r22,r8
678 0454 A301 movw r20,r6
679 0456 9201 movw r18,r4
680 0458 0E94 0000 call __udivmodsi4
681 045c 6A30 cpi r22,lo8(10)
682 045e 00F0 brlo .L207
683 0460 57E5 ldi r21,lo8(87)
684 0462 E52E mov r14,r21
685 0464 E60E add r14,r22
686 0466 F8E5 ldi r31,lo8(88)
687 0468 FF16 cp r15,r31
688 046a 01F4 brne .L137
689 046c 8FED ldi r24,lo8(-33)
690 046e E822 and r14,r24
691 0470 00C0 rjmp .L137
692 .L128:
693 0472 9BA9 ldd r25,Y+51
694 0474 9923 tst r25
695 0476 01F4 brne .L131
696 0478 632C mov r6,r3
697 047a 7724 clr r7
698 047c 1EA6 std Y+46,__zero_reg__
699 047e 1FA6 std Y+47,__zero_reg__
700 0480 18AA std Y+48,__zero_reg__
701 0482 19AA std Y+49,__zero_reg__
702 0484 FEE2 ldi r31,lo8(46)
703 0486 CF2E mov r12,r31
704 0488 D12C mov r13,__zero_reg__
705 048a CC0E add r12,r28
706 048c DD1E adc r13,r29
707 048e 80E0 ldi r24,lo8(0)
708 0490 E0E0 ldi r30,lo8(0)
709 .L133:
710 0492 4BA9 ldd r20,Y+51
711 .L115:
712 0494 E42E mov r14,r20
713 0496 EE1A sub r14,r30
714 0498 E7FC sbrc r14,7
715 049a 00C0 rjmp .L208
716 049c 9E2D mov r25,r14
717 049e A82E mov r10,r24
718 04a0 BB24 clr r11
719 04a2 A7FC sbrc r10,7
720 04a4 B094 com r11
721 04a6 00C0 rjmp .L150
722 .L131:
723 04a8 EAA9 ldd r30,Y+50
724 04aa 4E2E mov r4,r30
725 04ac 5524 clr r5
726 04ae 6624 clr r6
727 04b0 7724 clr r7
728 04b2 00C0 rjmp .L130
729 .L139:
730 04b4 FAA9 ldd r31,Y+50
731 04b6 F830 cpi r31,lo8(8)
732 04b8 01F4 brne .+2
733 04ba 00C0 rjmp .L141
734 04bc ECA9 ldd r30,Y+52
735 04be EC19 sub r30,r12
736 04c0 8E2F mov r24,r30
737 04c2 632C mov r6,r3
738 04c4 7724 clr r7
739 04c6 00C0 rjmp .L133
740 .L151:
741 04c8 66FE sbrs r6,6
742 04ca 00C0 rjmp .L153
743 04cc 8E2F mov r24,r30
744 04ce 8E5F subi r24,lo8(-(2))
745 04d0 00C0 rjmp .L153
746 .L208:
747 04d2 A82E mov r10,r24
748 04d4 BB24 clr r11
749 04d6 A7FC sbrc r10,7
750 04d8 B094 com r11
751 04da EE24 clr r14
752 04dc 90E0 ldi r25,lo8(0)
753 04de 00C0 rjmp .L150
754 .L95:
755 04e0 B094 com r11
756 04e2 A094 com r10
757 04e4 9094 com r9
758 04e6 8094 com r8
759 04e8 811C adc r8,__zero_reg__
760 04ea 911C adc r9,__zero_reg__
761 04ec A11C adc r10,__zero_reg__
762 04ee B11C adc r11,__zero_reg__
763 04f0 2DE2 ldi r18,lo8(45)
764 04f2 2983 std Y+1,r18
765 04f4 8AE0 ldi r24,lo8(10)
766 04f6 8AAB std Y+50,r24
767 04f8 00C0 rjmp .L97
768 .L92:
769 04fa 1296 adiw r26,2
770 04fc BB83 std Y+3,r27
771 04fe AA83 std Y+2,r26
772 0500 9E91 ld r25,-X
773 0502 8E91 ld r24,-X
774 0504 4C01 movw r8,r24
775 0506 AA24 clr r10
776 0508 97FC sbrc r9,7
777 050a A094 com r10
778 050c BA2C mov r11,r10
779 050e 00C0 rjmp .L94
780 .L198:
781 0510 1296 adiw r26,2
782 0512 BB83 std Y+3,r27
783 0514 AA83 std Y+2,r26
784 0516 1297 sbiw r26,2
785 0518 8C91 ld r24,X
786 051a 8E83 std Y+6,r24
787 051c 1982 std Y+1,__zero_reg__
788 051e 00C0 rjmp .L86
789 .L199:
790 0520 F8E0 ldi r31,lo8(8)
791 0522 FAAB std Y+50,r31
792 .L102:
793 0524 1982 std Y+1,__zero_reg__
794 0526 00C0 rjmp .L97
795 .L98:
796 0528 81E0 ldi r24,lo8(1)
797 052a 382A or r3,r24
798 052c 98E0 ldi r25,lo8(8)
799 052e 9AAB std Y+50,r25
800 0530 00C0 rjmp .L102
801 .L206:
802 0532 822D mov r24,r2
803 0534 8519 sub r24,r5
804 0536 0E94 0000 call PAD_0
805 053a 00C0 rjmp .L162
806 .L205:
807 053c 80E3 ldi r24,lo8(48)
808 053e 8C83 std Y+4,r24
809 0540 FD82 std Y+5,r15
810 0542 62E0 ldi r22,lo8(2)
811 0544 70E0 ldi r23,hi8(2)
812 0546 CE01 movw r24,r28
813 0548 0496 adiw r24,4
814 054a 0E94 0000 call PRINT
815 054e 00C0 rjmp .L160
816 .L187:
817 0550 6801 movw r12,r16
818 0552 00C0 rjmp .L38
819 .L202:
820 0554 EAE0 ldi r30,lo8(10)
821 0556 EAAB std Y+50,r30
822 0558 00C0 rjmp .L102
823 .L116:
824 055a F1E0 ldi r31,lo8(1)
825 055c 3F2A or r3,r31
826 055e 8AE0 ldi r24,lo8(10)
827 0560 8AAB std Y+50,r24
828 0562 00C0 rjmp .L102
829 .L201:
830 0564 1296 adiw r26,2
831 0566 BB83 std Y+3,r27
832 0568 AA83 std Y+2,r26
833 056a DE90 ld r13,-X
834 056c CE90 ld r12,-X
835 056e C114 cp r12,__zero_reg__
836 0570 D104 cpc r13,__zero_reg__
837 0572 01F4 brne .L107
838 0574 88E2 ldi r24,lo8(40)
839 0576 8E83 std Y+6,r24
840 0578 8EE6 ldi r24,lo8(110)
841 057a 8F83 std Y+7,r24
842 057c 85E7 ldi r24,lo8(117)
843 057e 8887 std Y+8,r24
844 0580 8CE6 ldi r24,lo8(108)
845 0582 8987 std Y+9,r24
846 0584 8A87 std Y+10,r24
847 0586 89E2 ldi r24,lo8(41)
848 0588 8B87 std Y+11,r24
849 058a 1C86 std Y+12,__zero_reg__
850 058c A6E0 ldi r26,lo8(6)
851 058e CA2E mov r12,r26
852 0590 D12C mov r13,__zero_reg__
853 0592 CC0E add r12,r28
854 0594 DD1E adc r13,r29
855 .L107:
856 0596 EBA9 ldd r30,Y+51
857 0598 E7FD sbrc r30,7
858 059a 00C0 rjmp .L109
859 059c 4E2F mov r20,r30
860 059e 5527 clr r21
861 05a0 47FD sbrc r20,7
862 05a2 5095 com r21
863 05a4 60E0 ldi r22,lo8(0)
864 05a6 70E0 ldi r23,hi8(0)
865 05a8 C601 movw r24,r12
866 05aa 0E94 0000 call memchr
867 05ae 0097 sbiw r24,0
868 05b0 01F0 breq .L209
869 05b2 8C19 sub r24,r12
870 05b4 FBA9 ldd r31,Y+51
871 05b6 F817 cp r31,r24
872 05b8 04F4 brge .L113
873 05ba 8F2F mov r24,r31
874 .L113:
875 05bc 1982 std Y+1,__zero_reg__
876 05be E82F mov r30,r24
877 05c0 632C mov r6,r3
878 05c2 7724 clr r7
879 05c4 8EA6 std Y+46,r8
880 05c6 9FA6 std Y+47,r9
881 05c8 A8AA std Y+48,r10
882 05ca B9AA std Y+49,r11
883 05cc 40E0 ldi r20,lo8(0)
884 05ce 00C0 rjmp .L115
885 .L209:
886 05d0 8BA9 ldd r24,Y+51
887 05d2 00C0 rjmp .L113
888 .L109:
889 05d4 F601 movw r30,r12
890 05d6 0190 ld __tmp_reg__,Z+
891 05d8 0020 tst __tmp_reg__
892 05da 01F4 brne .-6
893 05dc 3197 sbiw r30,1
894 05de 8E2F mov r24,r30
895 05e0 8C19 sub r24,r12
896 05e2 00C0 rjmp .L113
897 .L200:
898 05e4 1296 adiw r26,2
899 05e6 BB83 std Y+3,r27
900 05e8 AA83 std Y+2,r26
901 05ea 9E91 ld r25,-X
902 05ec 8E91 ld r24,-X
903 05ee 4C01 movw r8,r24
904 05f0 AA24 clr r10
905 05f2 BB24 clr r11
906 05f4 F0E4 ldi r31,lo8(64)
907 05f6 3F2A or r3,r31
908 05f8 B8E7 ldi r27,lo8(120)
909 05fa FB2E mov r15,r27
910 05fc 80E1 ldi r24,lo8(16)
911 05fe 8AAB std Y+50,r24
912 0600 00C0 rjmp .L102
913 .L204:
914 0602 61E0 ldi r22,lo8(1)
915 0604 70E0 ldi r23,hi8(1)
916 0606 CE01 movw r24,r28
917 0608 0196 adiw r24,1
918 060a 0E94 0000 call PRINT
919 060e 00C0 rjmp .L160
920 .L203:
921 0610 822D mov r24,r2
922 0612 8519 sub r24,r5
923 0614 0E94 0000 call PAD_SP
924 0618 2981 ldd r18,Y+1
925 061a 00C0 rjmp .L156
926 .L120:
927 061c 33FE sbrs r3,3
928 061e 00C0 rjmp .L123
929 0620 8114 cp r8,__zero_reg__
930 0622 9104 cpc r9,__zero_reg__
931 0624 A104 cpc r10,__zero_reg__
932 0626 B104 cpc r11,__zero_reg__
933 0628 01F0 breq .L123
934 062a F0E4 ldi r31,lo8(64)
935 062c 3F2A or r3,r31
936 062e 80E1 ldi r24,lo8(16)
937 0630 8AAB std Y+50,r24
938 0632 00C0 rjmp .L102
939 .L141:
940 0634 632C mov r6,r3
941 0636 7724 clr r7
942 0638 33FE sbrs r3,3
943 063a 00C0 rjmp .L183
944 063c 80E3 ldi r24,lo8(48)
945 063e E816 cp r14,r24
946 0640 01F0 breq .L183
947 0642 80E3 ldi r24,lo8(48)
948 0644 F601 movw r30,r12
949 0646 8293 st -Z,r24
950 0648 6F01 movw r12,r30
951 .L183:
952 064a ECA9 ldd r30,Y+52
953 064c EC19 sub r30,r12
954 064e 8E2F mov r24,r30
955 0650 00C0 rjmp .L133
956 .L123:
957 0652 90E1 ldi r25,lo8(16)
958 0654 9AAB std Y+50,r25
959 0656 00C0 rjmp .L102
960 .L165:
961 /* epilogue: frame size=53 */
962 0658 E596 adiw r28,53
963 065a 0FB6 in __tmp_reg__,__SREG__
964 065c F894 cli
965 065e DEBF out __SP_H__,r29
966 0660 0FBE out __SREG__,__tmp_reg__
967 0662 CDBF out __SP_L__,r28
968 0664 DF91 pop r29
969 0666 CF91 pop r28
970 0668 1F91 pop r17
971 066a 0F91 pop r16
972 066c FF90 pop r15
973 066e EF90 pop r14
974 0670 DF90 pop r13
975 0672 CF90 pop r12
976 0674 BF90 pop r11
977 0676 AF90 pop r10
978 0678 9F90 pop r9
979 067a 8F90 pop r8
980 067c 7F90 pop r7
981 067e 6F90 pop r6
982 0680 5F90 pop r5
983 0682 4F90 pop r4
984 0684 3F90 pop r3
985 0686 2F90 pop r2
986 0688 0895 ret
987 /* epilogue end (size=25) */
988 /* function _printf_P size 767 (716) */
990 .comm PrintZiel,1,1
991 /* File "printf_P.c": code 863 = 0x035f ( 787), prologues 36, epilogues 40 */
DEFINED SYMBOLS
*ABS*:00000000 printf_P.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:12 .text:00000000 Putchar
*COM*:00000001 PrintZiel
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:44 .text:00000032 PAD_0
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:65 .text:00000048 PAD_SP
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:86 .text:0000005e PRINTP
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:121 .text:0000008a PRINT
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccUYX4v5.s:151 .text:000000b2 _printf_P
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
uart_putchar
DispPtr
DisplayBuff
__udivmodsi4
memchr
/branches/v0.72p kmpec/rc.c
0,0 → 1,122
/*#######################################################################################
Decodieren eines RC Summen Signals
#######################################################################################*/
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Copyright (c) 04.2007 Holger Buss
// + only for non-profit use
// + www.MikroKopter.com
// + see the File "License.txt" for further Informations
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 
#include "rc.h"
#include "main.h"
 
volatile int PPM_in[11];
volatile int PPM_diff[11]; // das diffenzierte Stick-Signal
volatile unsigned char NewPpmData = 1;
 
//############################################################################
//zum decodieren des PPM-Signals wird Timer1 mit seiner Input
//Capture Funktion benutzt:
void rc_sum_init (void)
//############################################################################
{
TCCR1B=(1<<CS11)|(1<<CS10)|(1<<ICES1)|(1<<ICNC1);//|(1 << WGM12); //timer1 prescale 64
// TCCR1B=(1<<CS11)|(0<<CS10)|(1<<ICES1)|(1<<ICNC1); //timer1 prescale 64
TIMSK1 |= _BV(ICIE1);
AdNeutralGier = 0;
AdNeutralRoll = 0;
AdNeutralNick = 0;
return;
}
 
//############################################################################
//Diese Routine startet und inizialisiert den Timer für RC
SIGNAL(SIG_INPUT_CAPTURE1)
//############################################################################
 
{
static unsigned int AltICR=0;
signed int signal = 0,tmp;
static int index;
signal = (unsigned int) ICR1 - AltICR;
AltICR = ICR1;
//Syncronisationspause?
if((signal > 1100) && (signal < 8000))
{
if(index >= 4) NewPpmData = 0; // Null bedeutet: Neue Daten
index = 1;
}
else
{
if(index < 10)
{
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(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
}
}
}
 
/*
//############################################################################
//Diese Routine startet und inizialisiert den Timer für RC
SIGNAL(SIG_INPUT_CAPTURE1)
//############################################################################
 
{
static unsigned int AltICR=0;
signed int signal = 0,tmp;
static int index;
signal = (unsigned int) ICR1 - AltICR;
DebugOut.Analog[16] = signal;
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 < 10)
{
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++;
if(index == 5) J3High; else J3Low; // Servosignal an J3 anlegen
if(index == 2) J4High; else J4Low; // Servosignal an J4 anlegen
if(index == 7) J5High; else J5Low; // Servosignal an J5 anlegen
}
}
}
*/
 
 
 
/branches/v0.72p kmpec/rc.d
0,0 → 1,2
rc.o rc.d : rc.c rc.h main.h old_macros.h _Settings.h printf_P.h timer0.h \
uart.h analog.h twimaster.h menu.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/rc.h
0,0 → 1,30
/*#######################################################################################
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[11];
extern volatile int PPM_diff[11]; // das diffenzierte Stick-Signal
extern volatile unsigned char NewPpmData;
 
#endif //_RC_H
/branches/v0.72p kmpec/rc.lst
0,0 → 1,301
1 .file "rc.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global rc_sum_init
12 rc_sum_init:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 83EC ldi r24,lo8(-61)
16 0002 8093 8100 sts 129,r24
17 0006 EFE6 ldi r30,lo8(111)
18 0008 F0E0 ldi r31,hi8(111)
19 000a 8081 ld r24,Z
20 000c 8062 ori r24,lo8(32)
21 000e 8083 st Z,r24
22 0010 1092 0000 sts (AdNeutralGier)+1,__zero_reg__
23 0014 1092 0000 sts AdNeutralGier,__zero_reg__
24 0018 1092 0000 sts (AdNeutralRoll)+1,__zero_reg__
25 001c 1092 0000 sts AdNeutralRoll,__zero_reg__
26 0020 1092 0000 sts (AdNeutralNick)+1,__zero_reg__
27 0024 1092 0000 sts AdNeutralNick,__zero_reg__
28 /* epilogue: frame size=0 */
29 0028 0895 ret
30 /* epilogue end (size=1) */
31 /* function rc_sum_init size 21 (20) */
33 .global __vector_12
35 __vector_12:
36 /* prologue: frame size=0 */
37 002a 1F92 push __zero_reg__
38 002c 0F92 push __tmp_reg__
39 002e 0FB6 in __tmp_reg__,__SREG__
40 0030 0F92 push __tmp_reg__
41 0032 1124 clr __zero_reg__
42 0034 0F93 push r16
43 0036 1F93 push r17
44 0038 2F93 push r18
45 003a 3F93 push r19
46 003c 4F93 push r20
47 003e 5F93 push r21
48 0040 6F93 push r22
49 0042 7F93 push r23
50 0044 8F93 push r24
51 0046 9F93 push r25
52 0048 AF93 push r26
53 004a BF93 push r27
54 004c CF93 push r28
55 004e DF93 push r29
56 0050 EF93 push r30
57 0052 FF93 push r31
58 /* prologue end (size=21) */
59 0054 2091 8600 lds r18,134
60 0058 3091 8700 lds r19,(134)+1
61 005c 8091 0000 lds r24,AltICR.2367
62 0060 9091 0000 lds r25,(AltICR.2367)+1
63 0064 281B sub r18,r24
64 0066 390B sbc r19,r25
65 0068 8091 8600 lds r24,134
66 006c 9091 8700 lds r25,(134)+1
67 0070 9093 0000 sts (AltICR.2367)+1,r25
68 0074 8093 0000 sts AltICR.2367,r24
69 0078 C901 movw r24,r18
70 007a 8D54 subi r24,lo8(-(-1101))
71 007c 9440 sbci r25,hi8(-(-1101))
72 007e 835F subi r24,lo8(6899)
73 0080 9A41 sbci r25,hi8(6899)
74 0082 00F4 brsh .L4
75 0084 8091 0000 lds r24,index.2370
76 0088 9091 0000 lds r25,(index.2370)+1
77 008c 0497 sbiw r24,4
78 008e 04F0 brlt .+2
79 0090 00C0 rjmp .L33
80 .L6:
81 0092 81E0 ldi r24,lo8(1)
82 0094 90E0 ldi r25,hi8(1)
83 0096 9093 0000 sts (index.2370)+1,r25
84 009a 8093 0000 sts index.2370,r24
85 009e 00C0 rjmp .L31
86 .L4:
87 00a0 0091 0000 lds r16,index.2370
88 00a4 1091 0000 lds r17,(index.2370)+1
89 00a8 0A30 cpi r16,10
90 00aa 1105 cpc r17,__zero_reg__
91 00ac 04F0 brlt .+2
92 00ae 00C0 rjmp .L31
93 00b0 C901 movw r24,r18
94 00b2 8B5F subi r24,lo8(-(-251))
95 00b4 9040 sbci r25,hi8(-(-251))
96 00b6 845B subi r24,lo8(436)
97 00b8 9140 sbci r25,hi8(436)
98 00ba 00F0 brlo .+2
99 00bc 00C0 rjmp .L10
100 00be A901 movw r20,r18
101 00c0 425D subi r20,lo8(-(-466))
102 00c2 5140 sbci r21,hi8(-(-466))
103 00c4 E801 movw r28,r16
104 00c6 CC0F lsl r28
105 00c8 DD1F rol r29
106 00ca FE01 movw r30,r28
107 00cc E050 subi r30,lo8(-(PPM_in))
108 00ce F040 sbci r31,hi8(-(PPM_in))
109 00d0 8081 ld r24,Z
110 00d2 9181 ldd r25,Z+1
111 00d4 9A01 movw r18,r20
112 00d6 281B sub r18,r24
113 00d8 390B sbc r19,r25
114 00da C901 movw r24,r18
115 00dc 37FD sbrc r19,7
116 00de 00C0 rjmp .L34
117 .L13:
118 00e0 0697 sbiw r24,6
119 00e2 04F4 brge .L12
120 00e4 8091 0000 lds r24,SenderOkay
121 00e8 883C cpi r24,lo8(-56)
122 00ea 00F0 brlo .+2
123 00ec 00C0 rjmp .L15
124 00ee 8091 0000 lds r24,SenderOkay
125 00f2 865F subi r24,lo8(-(10))
126 00f4 8093 0000 sts SenderOkay,r24
127 .L12:
128 00f8 FE01 movw r30,r28
129 00fa E050 subi r30,lo8(-(PPM_in))
130 00fc F040 sbci r31,hi8(-(PPM_in))
131 00fe 8081 ld r24,Z
132 0100 9181 ldd r25,Z+1
133 0102 9C01 movw r18,r24
134 0104 220F lsl r18
135 0106 331F rol r19
136 0108 280F add r18,r24
137 010a 391F adc r19,r25
138 010c 240F add r18,r20
139 010e 351F adc r19,r21
140 0110 37FD sbrc r19,7
141 0112 00C0 rjmp .L35
142 .L17:
143 0114 3595 asr r19
144 0116 2795 ror r18
145 0118 3595 asr r19
146 011a 2795 ror r18
147 011c CA01 movw r24,r20
148 011e 0196 adiw r24,1
149 0120 8217 cp r24,r18
150 0122 9307 cpc r25,r19
151 0124 04F0 brlt .+2
152 0126 00C0 rjmp .L18
153 0128 2150 subi r18,lo8(-(-1))
154 012a 3040 sbci r19,hi8(-(-1))
155 .L20:
156 012c 8091 0000 lds r24,SenderOkay
157 0130 833C cpi r24,lo8(-61)
158 0132 00F0 brlo .L22
159 0134 FE01 movw r30,r28
160 0136 E050 subi r30,lo8(-(PPM_in))
161 0138 F040 sbci r31,hi8(-(PPM_in))
162 013a 8081 ld r24,Z
163 013c 9181 ldd r25,Z+1
164 013e A901 movw r20,r18
165 0140 481B sub r20,r24
166 0142 590B sbc r21,r25
167 0144 CA01 movw r24,r20
168 0146 63E0 ldi r22,lo8(3)
169 0148 70E0 ldi r23,hi8(3)
170 014a 0E94 0000 call __divmodhi4
171 014e CB01 movw r24,r22
172 0150 880F lsl r24
173 0152 991F rol r25
174 0154 860F add r24,r22
175 0156 971F adc r25,r23
176 0158 FE01 movw r30,r28
177 015a E050 subi r30,lo8(-(PPM_diff))
178 015c F040 sbci r31,hi8(-(PPM_diff))
179 015e 9183 std Z+1,r25
180 0160 8083 st Z,r24
181 .L24:
182 0162 C050 subi r28,lo8(-(PPM_in))
183 0164 D040 sbci r29,hi8(-(PPM_in))
184 0166 3983 std Y+1,r19
185 0168 2883 st Y,r18
186 .L10:
187 016a C801 movw r24,r16
188 016c 0196 adiw r24,1
189 016e 9093 0000 sts (index.2370)+1,r25
190 0172 8093 0000 sts index.2370,r24
191 0176 8530 cpi r24,5
192 0178 9105 cpc r25,__zero_reg__
193 017a 01F0 breq .L36
194 017c 5D98 cbi 43-0x20,5
195 017e 8630 cpi r24,6
196 0180 9105 cpc r25,__zero_reg__
197 0182 01F0 breq .L37
198 0184 5C98 cbi 43-0x20,4
199 0186 0797 sbiw r24,7
200 0188 01F0 breq .L38
201 018a 5B98 cbi 43-0x20,3
202 018c 00C0 rjmp .L31
203 .L33:
204 018e 1092 0000 sts NewPpmData,__zero_reg__
205 0192 00C0 rjmp .L6
206 .L38:
207 0194 5B9A sbi 43-0x20,3
208 0196 00C0 rjmp .L31
209 .L37:
210 0198 5C9A sbi 43-0x20,4
211 019a 5B98 cbi 43-0x20,3
212 019c 00C0 rjmp .L31
213 .L36:
214 019e 5D9A sbi 43-0x20,5
215 01a0 5C98 cbi 43-0x20,4
216 01a2 5B98 cbi 43-0x20,3
217 01a4 00C0 rjmp .L31
218 .L22:
219 01a6 FE01 movw r30,r28
220 01a8 E050 subi r30,lo8(-(PPM_diff))
221 01aa F040 sbci r31,hi8(-(PPM_diff))
222 01ac 1182 std Z+1,__zero_reg__
223 01ae 1082 st Z,__zero_reg__
224 01b0 00C0 rjmp .L24
225 .L18:
226 01b2 4150 subi r20,lo8(-(-1))
227 01b4 5040 sbci r21,hi8(-(-1))
228 01b6 2417 cp r18,r20
229 01b8 3507 cpc r19,r21
230 01ba 04F0 brlt .+2
231 01bc 00C0 rjmp .L20
232 01be 2F5F subi r18,lo8(-(1))
233 01c0 3F4F sbci r19,hi8(-(1))
234 01c2 00C0 rjmp .L20
235 .L15:
236 01c4 88EC ldi r24,lo8(-56)
237 01c6 8093 0000 sts SenderOkay,r24
238 01ca 00C0 rjmp .L12
239 .L35:
240 01cc 2D5F subi r18,lo8(-(3))
241 01ce 3F4F sbci r19,hi8(-(3))
242 01d0 00C0 rjmp .L17
243 .L34:
244 01d2 9095 com r25
245 01d4 8195 neg r24
246 01d6 9F4F sbci r25,lo8(-1)
247 01d8 00C0 rjmp .L13
248 .L31:
249 /* epilogue: frame size=0 */
250 01da FF91 pop r31
251 01dc EF91 pop r30
252 01de DF91 pop r29
253 01e0 CF91 pop r28
254 01e2 BF91 pop r27
255 01e4 AF91 pop r26
256 01e6 9F91 pop r25
257 01e8 8F91 pop r24
258 01ea 7F91 pop r23
259 01ec 6F91 pop r22
260 01ee 5F91 pop r21
261 01f0 4F91 pop r20
262 01f2 3F91 pop r19
263 01f4 2F91 pop r18
264 01f6 1F91 pop r17
265 01f8 0F91 pop r16
266 01fa 0F90 pop __tmp_reg__
267 01fc 0FBE out __SREG__,__tmp_reg__
268 01fe 0F90 pop __tmp_reg__
269 0200 1F90 pop __zero_reg__
270 0202 1895 reti
271 /* epilogue end (size=21) */
272 /* function __vector_12 size 242 (200) */
274 .global NewPpmData
275 .data
278 NewPpmData:
279 0000 01 .byte 1
280 .lcomm index.2370,2
281 .lcomm AltICR.2367,2
282 .comm PPM_in,22,1
283 .comm PPM_diff,22,1
284 /* File "rc.c": code 263 = 0x0107 ( 220), prologues 21, epilogues 22 */
DEFINED SYMBOLS
*ABS*:00000000 rc.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:12 .text:00000000 rc_sum_init
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:35 .text:0000002a __vector_12
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:280 .bss:00000002 AltICR.2367
.bss:00000000 index.2370
*COM*:00000016 PPM_in
*COM*:00000016 PPM_diff
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccOoR8fk.s:278 .data:00000000 NewPpmData
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
AdNeutralGier
AdNeutralRoll
AdNeutralNick
SenderOkay
__divmodhi4
/branches/v0.72p kmpec/spi.c
0,0 → 1,280
// ######################## SPI - FlightCtrl ###################
#include "main.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 SPI_VersionInfo;
 
unsigned char SPI_BufferIndex;
unsigned char SPI_RxBufferIndex;
 
volatile unsigned char SPI_Buffer[sizeof(FromNaviCtrl)];
unsigned char *SPI_TX_Buffer;
 
unsigned char SPITransferCompleted, SPI_ChkSum;
unsigned char SPI_RxDataValid;
 
unsigned char SPI_CommandSequence[] = { SPI_CMD_USER, SPI_CMD_STICK, SPI_CMD_PARAMETER1, SPI_CMD_STICK, SPI_CMD_MISC, SPI_CMD_VERSION };
unsigned char SPI_CommandCounter = 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_CMD_USER;
ToNaviCtrl.IntegralNick = 0;
ToNaviCtrl.IntegralRoll = 0;
SPI_RxDataValid = 0;
 
SPI_VersionInfo.Major = VERSION_MAJOR;
SPI_VersionInfo.Minor = VERSION_MINOR;
SPI_VersionInfo.Patch = VERSION_PATCH;
SPI_VersionInfo.Compatible = NC_SPI_COMPATIBLE;
}
 
//------------------------------------------------------
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;
//DebugOut.Analog[17]++;
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;
//DebugOut.Analog[18]++;
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)
{
static unsigned char i =0;
signed int tmp;
cli();
 
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.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_CMD_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] = (unsigned char) MikroKopterFlags;
MikroKopterFlags &= ~(FLAG_CALIBRATE | FLAG_START);
ToNaviCtrl.Param.Byte[9] = (unsigned char) UBat;
ToNaviCtrl.Param.Byte[10] =(unsigned char) EE_Parameter.UnterspannungsWarnung;
ToNaviCtrl.Param.Byte[11] =(unsigned char) eeprom_read_byte(&EEPromArray[EEPROM_ADR_ACTIVE_SET]);
break;
case SPI_CMD_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_CMD_STICK:
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;
ToNaviCtrl.Param.Byte[3] = (char) tmp;
ToNaviCtrl.Param.Byte[4] = (unsigned char) Poti1;
ToNaviCtrl.Param.Byte[5] = (unsigned char) Poti2;
ToNaviCtrl.Param.Byte[6] = (unsigned char) Poti3;
ToNaviCtrl.Param.Byte[7] = (unsigned char) Poti4;
ToNaviCtrl.Param.Byte[8] = (unsigned char) SenderOkay;
break;
case SPI_CMD_MISC:
if(WinkelOut.CalcState > 5)
{
WinkelOut.CalcState = 0;
ToNaviCtrl.Param.Byte[0] = 5;
}
else ToNaviCtrl.Param.Byte[0] = WinkelOut.CalcState;
ToNaviCtrl.Param.Int[1] = HoehenWert;
ToNaviCtrl.Param.Byte[1] = EE_Parameter.NaviPH_LoginTime;
ToNaviCtrl.Param.Byte[4] = EE_Parameter.NaviGpsPLimit;
ToNaviCtrl.Param.Byte[5] = EE_Parameter.NaviGpsILimit;
ToNaviCtrl.Param.Byte[6] = EE_Parameter.NaviGpsDLimit;
break;
 
case SPI_CMD_VERSION:
ToNaviCtrl.Param.Byte[0] = SPI_VersionInfo.Major;
ToNaviCtrl.Param.Byte[1] = SPI_VersionInfo.Minor;
ToNaviCtrl.Param.Byte[2] = SPI_VersionInfo.Patch;
ToNaviCtrl.Param.Byte[3] = SPI_VersionInfo.Compatible;
ToNaviCtrl.Param.Byte[4] = PlatinenVersion;
break;
}
 
sei();
 
if (SPI_RxDataValid)
{
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_KALMAN:
FromNaviCtrl_Value.Kalman_K = FromNaviCtrl.Param.Byte[0];
FromNaviCtrl_Value.Kalman_MaxFusion = FromNaviCtrl.Param.Byte[1];
FromNaviCtrl_Value.Kalman_MaxDrift = FromNaviCtrl.Param.Byte[2];
break;
 
default:
break;
}
}
else
{
// KompassValue = 0;
// KompassRichtung = 0;
 
GPS_Nick = 0;
GPS_Roll = 0;
}
}
 
#endif
 
 
/branches/v0.72p kmpec/spi.d
0,0 → 1,2
spi.o spi.d : spi.c main.h old_macros.h _Settings.h printf_P.h timer0.h uart.h \
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/spi.h
0,0 → 1,139
// ######################## SPI - FlightCtrl ###################
#ifndef _SPI_H
#define _SPI_H
 
#include <util/delay.h>
 
#define USE_SPI_COMMUNICATION
 
#define SPI_PROTOCOL_COMP 1
 
//-----------------------------------------
#define DDR_SPI DDRB
#define DD_SS PB4
#define DD_SCK PB7
#define DD_MOSI PB5
#define DD_MISO PB6
 
// 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 SLAVE_SELECT_DDR_PORT DDRC
#define SLAVE_SELECT_PORT PORTC
#define SPI_SLAVE_SELECT PC5
 
 
#define SPI_CMD_USER 10
#define SPI_CMD_STICK 11
#define SPI_CMD_MISC 12
#define SPI_CMD_PARAMETER1 13
#define SPI_CMD_VERSION 14
 
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
{ char Byte[12];
int Int[6];
long Long[3];
float Float[3];
} Param;
unsigned char Chksum;
};
 
#define SPI_KALMAN 103
 
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
{ char Byte[12];
int Int[6];
long Long[3];
float Float[3];
} Param;
unsigned char Chksum;
};
 
struct str_FromNaviCtrl_Value
{
signed char Kalman_K;
signed char Kalman_MaxDrift;
signed char Kalman_MaxFusion;
};
 
struct str_SPI_VersionInfo
{
unsigned char Major;
unsigned char Minor;
unsigned char Patch;
unsigned char Compatible;
};
 
#ifdef USE_SPI_COMMUNICATION
 
extern struct str_FromNaviCtrl_Value FromNaviCtrl_Value;
extern struct str_ToNaviCtrl ToNaviCtrl;
extern struct str_FromNaviCtrl FromNaviCtrl;
extern unsigned char SPI_CommandCounter;
 
//#define SPI_CMD_VALUE 0x03
 
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/v0.72p kmpec/spi.lst
0,0 → 1,784
1 .file "spi.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global SPI_MasterInit
12 SPI_MasterInit:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 84B1 in r24,36-0x20
16 0002 806A ori r24,lo8(-96)
17 0004 84B9 out 36-0x20,r24
18 0006 3D9A sbi 39-0x20,5
19 0008 82E5 ldi r24,lo8(82)
20 000a 8CBD out 76-0x20,r24
21 000c 1DBC out 77-0x20,__zero_reg__
22 000e 459A sbi 40-0x20,5
23 0010 81E0 ldi r24,lo8(1)
24 0012 8093 0000 sts SPITransferCompleted,r24
25 0016 8AEA ldi r24,lo8(-86)
26 0018 8093 0000 sts ToNaviCtrl,r24
27 001c 83E8 ldi r24,lo8(-125)
28 001e 8093 0000 sts ToNaviCtrl+1,r24
29 0022 8AE0 ldi r24,lo8(10)
30 0024 8093 0000 sts ToNaviCtrl+2,r24
31 0028 1092 0000 sts (ToNaviCtrl+3)+1,__zero_reg__
32 002c 1092 0000 sts ToNaviCtrl+3,__zero_reg__
33 0030 1092 0000 sts (ToNaviCtrl+5)+1,__zero_reg__
34 0034 1092 0000 sts ToNaviCtrl+5,__zero_reg__
35 0038 1092 0000 sts SPI_RxDataValid,__zero_reg__
36 003c 1092 0000 sts SPI_VersionInfo,__zero_reg__
37 0040 88E4 ldi r24,lo8(72)
38 0042 8093 0000 sts SPI_VersionInfo+1,r24
39 0046 8FE0 ldi r24,lo8(15)
40 0048 8093 0000 sts SPI_VersionInfo+2,r24
41 004c 85E0 ldi r24,lo8(5)
42 004e 8093 0000 sts SPI_VersionInfo+3,r24
43 /* epilogue: frame size=0 */
44 0052 0895 ret
45 /* epilogue end (size=1) */
46 /* function SPI_MasterInit size 42 (41) */
48 .global UpdateSPI_Buffer
50 UpdateSPI_Buffer:
51 /* prologue: frame size=0 */
52 0054 EF92 push r14
53 0056 FF92 push r15
54 0058 0F93 push r16
55 005a 1F93 push r17
56 /* prologue end (size=4) */
57 /* #APP */
58 005c F894 cli
59 /* #NOAPP */
60 005e E090 0000 lds r14,EE_Parameter+20
61 0062 FF24 clr r15
62 0064 EE0C lsl r14
63 0066 FF1C rol r15
64 0068 EE0C lsl r14
65 006a FF1C rol r15
66 006c 0027 clr r16
67 006e F7FC sbrc r15,7
68 0070 0095 com r16
69 0072 102F mov r17,r16
70 0074 6091 0000 lds r22,IntegralNick
71 0078 7091 0000 lds r23,(IntegralNick)+1
72 007c 8091 0000 lds r24,(IntegralNick)+2
73 0080 9091 0000 lds r25,(IntegralNick)+3
74 0084 A801 movw r20,r16
75 0086 9701 movw r18,r14
76 0088 0E94 0000 call __divmodsi4
77 008c 3093 0000 sts (ToNaviCtrl+3)+1,r19
78 0090 2093 0000 sts ToNaviCtrl+3,r18
79 0094 6091 0000 lds r22,IntegralRoll
80 0098 7091 0000 lds r23,(IntegralRoll)+1
81 009c 8091 0000 lds r24,(IntegralRoll)+2
82 00a0 9091 0000 lds r25,(IntegralRoll)+3
83 00a4 A801 movw r20,r16
84 00a6 9701 movw r18,r14
85 00a8 0E94 0000 call __divmodsi4
86 00ac 3093 0000 sts (ToNaviCtrl+5)+1,r19
87 00b0 2093 0000 sts ToNaviCtrl+5,r18
88 00b4 6091 0000 lds r22,ErsatzKompass
89 00b8 7091 0000 lds r23,(ErsatzKompass)+1
90 00bc 8091 0000 lds r24,(ErsatzKompass)+2
91 00c0 9091 0000 lds r25,(ErsatzKompass)+3
92 00c4 2AE0 ldi r18,lo8(10)
93 00c6 30E0 ldi r19,hi8(10)
94 00c8 40E0 ldi r20,hlo8(10)
95 00ca 50E0 ldi r21,hhi8(10)
96 00cc 0E94 0000 call __mulsi3
97 00d0 2091 0000 lds r18,GIER_GRAD_FAKTOR
98 00d4 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1
99 00d8 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2
100 00dc 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3
101 00e0 0E94 0000 call __divmodsi4
102 00e4 3093 0000 sts (ToNaviCtrl+11)+1,r19
103 00e8 2093 0000 sts ToNaviCtrl+11,r18
104 00ec E091 0000 lds r30,NaviCntAcc
105 00f0 F091 0000 lds r31,(NaviCntAcc)+1
106 00f4 8091 0000 lds r24,NaviAccNick
107 00f8 9091 0000 lds r25,(NaviAccNick)+1
108 00fc BF01 movw r22,r30
109 00fe 0E94 0000 call __divmodhi4
110 0102 CB01 movw r24,r22
111 0104 880F lsl r24
112 0106 991F rol r25
113 0108 860F add r24,r22
114 010a 971F adc r25,r23
115 010c 9C01 movw r18,r24
116 010e 220F lsl r18
117 0110 331F rol r19
118 0112 96FD sbrc r25,6
119 0114 00C0 rjmp .L39
120 .L4:
121 0116 3595 asr r19
122 0118 2795 ror r18
123 011a 3595 asr r19
124 011c 2795 ror r18
125 011e 3093 0000 sts (ToNaviCtrl+7)+1,r19
126 0122 2093 0000 sts ToNaviCtrl+7,r18
127 0126 8091 0000 lds r24,NaviAccRoll
128 012a 9091 0000 lds r25,(NaviAccRoll)+1
129 012e BF01 movw r22,r30
130 0130 0E94 0000 call __divmodhi4
131 0134 CB01 movw r24,r22
132 0136 880F lsl r24
133 0138 991F rol r25
134 013a 860F add r24,r22
135 013c 971F adc r25,r23
136 013e 9C01 movw r18,r24
137 0140 220F lsl r18
138 0142 331F rol r19
139 0144 96FD sbrc r25,6
140 0146 00C0 rjmp .L40
141 .L5:
142 0148 3595 asr r19
143 014a 2795 ror r18
144 014c 3595 asr r19
145 014e 2795 ror r18
146 0150 3093 0000 sts (ToNaviCtrl+9)+1,r19
147 0154 2093 0000 sts ToNaviCtrl+9,r18
148 0158 1092 0000 sts (NaviCntAcc)+1,__zero_reg__
149 015c 1092 0000 sts NaviCntAcc,__zero_reg__
150 0160 1092 0000 sts (NaviAccNick)+1,__zero_reg__
151 0164 1092 0000 sts NaviAccNick,__zero_reg__
152 0168 1092 0000 sts (NaviAccRoll)+1,__zero_reg__
153 016c 1092 0000 sts NaviAccRoll,__zero_reg__
154 0170 8091 0000 lds r24,ToNaviCtrl+2
155 0174 8C30 cpi r24,lo8(12)
156 0176 01F4 brne .+2
157 0178 00C0 rjmp .L9
158 017a 8D30 cpi r24,lo8(13)
159 017c 00F4 brsh .+2
160 017e 00C0 rjmp .L41
161 0180 8D30 cpi r24,lo8(13)
162 0182 01F4 brne .+2
163 0184 00C0 rjmp .L10
164 0186 8E30 cpi r24,lo8(14)
165 0188 01F4 brne .+2
166 018a 00C0 rjmp .L42
167 .L6:
168 /* #APP */
169 018c 7894 sei
170 /* #NOAPP */
171 018e 8091 0000 lds r24,SPI_RxDataValid
172 0192 8823 tst r24
173 0194 01F4 brne .+2
174 0196 00C0 rjmp .L24
175 .L45:
176 0198 2091 0000 lds r18,FromNaviCtrl+1
177 019c 3091 0000 lds r19,(FromNaviCtrl+1)+1
178 01a0 C901 movw r24,r18
179 01a2 8150 subi r24,lo8(-(511))
180 01a4 9E4F sbci r25,hi8(-(511))
181 01a6 8F5F subi r24,lo8(1023)
182 01a8 9340 sbci r25,hi8(1023)
183 01aa 00F4 brsh .L26
184 01ac 4091 0000 lds r20,FromNaviCtrl+3
185 01b0 5091 0000 lds r21,(FromNaviCtrl+3)+1
186 01b4 CA01 movw r24,r20
187 01b6 8150 subi r24,lo8(-(511))
188 01b8 9E4F sbci r25,hi8(-(511))
189 01ba 8F5F subi r24,lo8(1023)
190 01bc 9340 sbci r25,hi8(1023)
191 01be 00F4 brsh .+2
192 01c0 00C0 rjmp .L43
193 .L26:
194 01c2 8091 0000 lds r24,FromNaviCtrl+7
195 01c6 9091 0000 lds r25,(FromNaviCtrl+7)+1
196 01ca 21E0 ldi r18,hi8(361)
197 01cc 8936 cpi r24,lo8(361)
198 01ce 9207 cpc r25,r18
199 01d0 04F4 brge .L30
200 01d2 9093 0000 sts (KompassValue)+1,r25
201 01d6 8093 0000 sts KompassValue,r24
202 .L30:
203 01da 8091 0000 lds r24,KompassValue
204 01de 9091 0000 lds r25,(KompassValue)+1
205 01e2 845E subi r24,lo8(-(540))
206 01e4 9D4F sbci r25,hi8(-(540))
207 01e6 2091 0000 lds r18,KompassStartwert
208 01ea 3091 0000 lds r19,(KompassStartwert)+1
209 01ee 821B sub r24,r18
210 01f0 930B sbc r25,r19
211 01f2 68E6 ldi r22,lo8(360)
212 01f4 71E0 ldi r23,hi8(360)
213 01f6 0E94 0000 call __divmodhi4
214 01fa 845B subi r24,lo8(-(-180))
215 01fc 9040 sbci r25,hi8(-(-180))
216 01fe 9093 0000 sts (KompassRichtung)+1,r25
217 0202 8093 0000 sts KompassRichtung,r24
218 0206 2091 0000 lds r18,FromNaviCtrl+11
219 020a 3091 0000 lds r19,(FromNaviCtrl+11)+1
220 020e 8091 0000 lds r24,beeptime
221 0212 9091 0000 lds r25,(beeptime)+1
222 0216 8217 cp r24,r18
223 0218 9307 cpc r25,r19
224 021a 00F4 brsh .L32
225 021c 8091 0000 lds r24,WinkelOut+6
226 0220 8823 tst r24
227 0222 01F4 brne .+2
228 0224 00C0 rjmp .L44
229 .L32:
230 0226 8091 0000 lds r24,FromNaviCtrl
231 022a 8736 cpi r24,lo8(103)
232 022c 01F0 breq .+2
233 022e 00C0 rjmp .L37
234 0230 8091 0000 lds r24,FromNaviCtrl+13
235 0234 8093 0000 sts FromNaviCtrl_Value,r24
236 0238 8091 0000 lds r24,FromNaviCtrl+14
237 023c 8093 0000 sts FromNaviCtrl_Value+2,r24
238 0240 8091 0000 lds r24,FromNaviCtrl+15
239 0244 8093 0000 sts FromNaviCtrl_Value+1,r24
240 0248 00C0 rjmp .L37
241 .L41:
242 024a 8A30 cpi r24,lo8(10)
243 024c 01F4 brne .+2
244 024e 00C0 rjmp .L7
245 0250 8B30 cpi r24,lo8(11)
246 0252 01F0 breq .+2
247 0254 00C0 rjmp .L6
248 0256 E091 0000 lds r30,EE_Parameter+2
249 025a F0E0 ldi r31,lo8(0)
250 025c EE0F lsl r30
251 025e FF1F rol r31
252 0260 E050 subi r30,lo8(-(PPM_in))
253 0262 F040 sbci r31,hi8(-(PPM_in))
254 0264 0190 ld __tmp_reg__,Z+
255 0266 F081 ld r31,Z
256 0268 E02D mov r30,__tmp_reg__
257 026a 2FEF ldi r18,hi8(-127)
258 026c E138 cpi r30,lo8(-127)
259 026e F207 cpc r31,r18
260 0270 04F4 brge .L13
261 0272 E1E8 ldi r30,lo8(-127)
262 0274 FFEF ldi r31,hi8(-127)
263 .L13:
264 0276 E038 cpi r30,128
265 0278 F105 cpc r31,__zero_reg__
266 027a 04F0 brlt .L14
267 027c EFE7 ldi r30,lo8(127)
268 027e F0E0 ldi r31,hi8(127)
269 .L14:
270 0280 E093 0000 sts ToNaviCtrl+19,r30
271 0284 E091 0000 lds r30,EE_Parameter+3
272 0288 F0E0 ldi r31,lo8(0)
273 028a EE0F lsl r30
274 028c FF1F rol r31
275 028e E050 subi r30,lo8(-(PPM_in))
276 0290 F040 sbci r31,hi8(-(PPM_in))
277 0292 0190 ld __tmp_reg__,Z+
278 0294 F081 ld r31,Z
279 0296 E02D mov r30,__tmp_reg__
280 0298 4FEF ldi r20,hi8(-127)
281 029a E138 cpi r30,lo8(-127)
282 029c F407 cpc r31,r20
283 029e 04F4 brge .L15
284 02a0 E1E8 ldi r30,lo8(-127)
285 02a2 FFEF ldi r31,hi8(-127)
286 .L15:
287 02a4 E038 cpi r30,128
288 02a6 F105 cpc r31,__zero_reg__
289 02a8 04F0 brlt .L16
290 02aa EFE7 ldi r30,lo8(127)
291 02ac F0E0 ldi r31,hi8(127)
292 .L16:
293 02ae E093 0000 sts ToNaviCtrl+20,r30
294 02b2 E091 0000 lds r30,EE_Parameter+1
295 02b6 F0E0 ldi r31,lo8(0)
296 02b8 EE0F lsl r30
297 02ba FF1F rol r31
298 02bc E050 subi r30,lo8(-(PPM_in))
299 02be F040 sbci r31,hi8(-(PPM_in))
300 02c0 0190 ld __tmp_reg__,Z+
301 02c2 F081 ld r31,Z
302 02c4 E02D mov r30,__tmp_reg__
303 02c6 6FEF ldi r22,hi8(-127)
304 02c8 E138 cpi r30,lo8(-127)
305 02ca F607 cpc r31,r22
306 02cc 04F4 brge .L17
307 02ce E1E8 ldi r30,lo8(-127)
308 02d0 FFEF ldi r31,hi8(-127)
309 .L17:
310 02d2 E038 cpi r30,128
311 02d4 F105 cpc r31,__zero_reg__
312 02d6 04F0 brlt .L18
313 02d8 EFE7 ldi r30,lo8(127)
314 02da F0E0 ldi r31,hi8(127)
315 .L18:
316 02dc E093 0000 sts ToNaviCtrl+21,r30
317 02e0 E091 0000 lds r30,EE_Parameter
318 02e4 F0E0 ldi r31,lo8(0)
319 02e6 EE0F lsl r30
320 02e8 FF1F rol r31
321 02ea E050 subi r30,lo8(-(PPM_in))
322 02ec F040 sbci r31,hi8(-(PPM_in))
323 02ee 0190 ld __tmp_reg__,Z+
324 02f0 F081 ld r31,Z
325 02f2 E02D mov r30,__tmp_reg__
326 02f4 8FEF ldi r24,hi8(-127)
327 02f6 E138 cpi r30,lo8(-127)
328 02f8 F807 cpc r31,r24
329 02fa 04F4 brge .L19
330 02fc E1E8 ldi r30,lo8(-127)
331 02fe FFEF ldi r31,hi8(-127)
332 .L19:
333 0300 E038 cpi r30,128
334 0302 F105 cpc r31,__zero_reg__
335 0304 04F0 brlt .L20
336 0306 EFE7 ldi r30,lo8(127)
337 0308 F0E0 ldi r31,hi8(127)
338 .L20:
339 030a E093 0000 sts ToNaviCtrl+22,r30
340 030e 8091 0000 lds r24,Poti1
341 0312 8093 0000 sts ToNaviCtrl+23,r24
342 0316 8091 0000 lds r24,Poti2
343 031a 8093 0000 sts ToNaviCtrl+24,r24
344 031e 8091 0000 lds r24,Poti3
345 0322 8093 0000 sts ToNaviCtrl+25,r24
346 0326 8091 0000 lds r24,Poti4
347 032a 8093 0000 sts ToNaviCtrl+26,r24
348 032e 8091 0000 lds r24,SenderOkay
349 0332 8093 0000 sts ToNaviCtrl+27,r24
350 /* #APP */
351 0336 7894 sei
352 /* #NOAPP */
353 0338 8091 0000 lds r24,SPI_RxDataValid
354 033c 8823 tst r24
355 033e 01F0 breq .+2
356 0340 00C0 rjmp .L45
357 .L24:
358 0342 1092 0000 sts (GPS_Nick)+1,__zero_reg__
359 0346 1092 0000 sts GPS_Nick,__zero_reg__
360 034a 1092 0000 sts (GPS_Roll)+1,__zero_reg__
361 034e 1092 0000 sts GPS_Roll,__zero_reg__
362 0352 00C0 rjmp .L37
363 .L40:
364 0354 2D5F subi r18,lo8(-(3))
365 0356 3F4F sbci r19,hi8(-(3))
366 0358 00C0 rjmp .L5
367 .L39:
368 035a 2D5F subi r18,lo8(-(3))
369 035c 3F4F sbci r19,hi8(-(3))
370 035e 00C0 rjmp .L4
371 .L44:
372 0360 3093 0000 sts (beeptime)+1,r19
373 0364 2093 0000 sts beeptime,r18
374 0368 00C0 rjmp .L32
375 .L43:
376 036a 8091 0000 lds r24,EE_Parameter+8
377 036e 85FF sbrs r24,5
378 0370 00C0 rjmp .L26
379 0372 3093 0000 sts (GPS_Nick)+1,r19
380 0376 2093 0000 sts GPS_Nick,r18
381 037a 5093 0000 sts (GPS_Roll)+1,r21
382 037e 4093 0000 sts GPS_Roll,r20
383 0382 00C0 rjmp .L26
384 .L42:
385 0384 8091 0000 lds r24,SPI_VersionInfo
386 0388 8093 0000 sts ToNaviCtrl+19,r24
387 038c 8091 0000 lds r24,SPI_VersionInfo+1
388 0390 8093 0000 sts ToNaviCtrl+20,r24
389 0394 8091 0000 lds r24,SPI_VersionInfo+2
390 0398 8093 0000 sts ToNaviCtrl+21,r24
391 039c 8091 0000 lds r24,SPI_VersionInfo+3
392 03a0 8093 0000 sts ToNaviCtrl+22,r24
393 03a4 8091 0000 lds r24,PlatinenVersion
394 03a8 8093 0000 sts ToNaviCtrl+23,r24
395 03ac 00C0 rjmp .L6
396 .L10:
397 03ae 8091 0000 lds r24,EE_Parameter+58
398 03b2 8093 0000 sts ToNaviCtrl+19,r24
399 03b6 8091 0000 lds r24,EE_Parameter+59
400 03ba 8093 0000 sts ToNaviCtrl+20,r24
401 03be 8091 0000 lds r24,EE_Parameter+60
402 03c2 8093 0000 sts ToNaviCtrl+21,r24
403 03c6 8091 0000 lds r24,EE_Parameter+61
404 03ca 8093 0000 sts ToNaviCtrl+22,r24
405 03ce 8091 0000 lds r24,EE_Parameter+62
406 03d2 8093 0000 sts ToNaviCtrl+23,r24
407 03d6 8091 0000 lds r24,EE_Parameter+66
408 03da 8093 0000 sts ToNaviCtrl+24,r24
409 03de 8091 0000 lds r24,EE_Parameter+67
410 03e2 8093 0000 sts ToNaviCtrl+25,r24
411 03e6 8091 0000 lds r24,EE_Parameter+68
412 03ea 8093 0000 sts ToNaviCtrl+26,r24
413 03ee 8091 0000 lds r24,EE_Parameter+71
414 03f2 8093 0000 sts ToNaviCtrl+27,r24
415 03f6 8091 0000 lds r24,EE_Parameter+69
416 03fa 8093 0000 sts ToNaviCtrl+28,r24
417 03fe 8091 0000 lds r24,EE_Parameter+70
418 0402 8093 0000 sts ToNaviCtrl+29,r24
419 0406 8091 0000 lds r24,EE_Parameter+72
420 040a 8093 0000 sts ToNaviCtrl+30,r24
421 040e 00C0 rjmp .L6
422 .L7:
423 0410 8091 0000 lds r24,Parameter_UserParam1
424 0414 8093 0000 sts ToNaviCtrl+19,r24
425 0418 8091 0000 lds r24,Parameter_UserParam2
426 041c 8093 0000 sts ToNaviCtrl+20,r24
427 0420 8091 0000 lds r24,Parameter_UserParam3
428 0424 8093 0000 sts ToNaviCtrl+21,r24
429 0428 8091 0000 lds r24,Parameter_UserParam4
430 042c 8093 0000 sts ToNaviCtrl+22,r24
431 0430 8091 0000 lds r24,Parameter_UserParam5
432 0434 8093 0000 sts ToNaviCtrl+23,r24
433 0438 8091 0000 lds r24,Parameter_UserParam6
434 043c 8093 0000 sts ToNaviCtrl+24,r24
435 0440 8091 0000 lds r24,Parameter_UserParam7
436 0444 8093 0000 sts ToNaviCtrl+25,r24
437 0448 8091 0000 lds r24,Parameter_UserParam8
438 044c 8093 0000 sts ToNaviCtrl+26,r24
439 0450 8091 0000 lds r24,MikroKopterFlags
440 0454 8093 0000 sts ToNaviCtrl+27,r24
441 0458 837F andi r24,lo8(-13)
442 045a 8093 0000 sts MikroKopterFlags,r24
443 045e 8091 0000 lds r24,UBat
444 0462 9091 0000 lds r25,(UBat)+1
445 0466 8093 0000 sts ToNaviCtrl+28,r24
446 046a 8091 0000 lds r24,EE_Parameter+25
447 046e 8093 0000 sts ToNaviCtrl+29,r24
448 0472 A0E0 ldi r26,lo8(EEPromArray+2)
449 0474 B0E0 ldi r27,hi8(EEPromArray+2)
450 /* #APP */
451 0476 0E94 0000 call __eeprom_read_byte_1F2021
452 047a 802D mov r24,__tmp_reg__
453 /* #NOAPP */
454 047c 8093 0000 sts ToNaviCtrl+30,r24
455 0480 00C0 rjmp .L6
456 .L9:
457 0482 8091 0000 lds r24,WinkelOut+6
458 0486 8630 cpi r24,lo8(6)
459 0488 00F0 brlo .L21
460 048a 1092 0000 sts WinkelOut+6,__zero_reg__
461 048e 85E0 ldi r24,lo8(5)
462 0490 8093 0000 sts ToNaviCtrl+19,r24
463 .L23:
464 0494 8091 0000 lds r24,HoehenWert
465 0498 9091 0000 lds r25,(HoehenWert)+1
466 049c 9093 0000 sts (ToNaviCtrl+21)+1,r25
467 04a0 8093 0000 sts ToNaviCtrl+21,r24
468 04a4 8091 0000 lds r24,EE_Parameter+73
469 04a8 8093 0000 sts ToNaviCtrl+20,r24
470 04ac 8091 0000 lds r24,EE_Parameter+63
471 04b0 8093 0000 sts ToNaviCtrl+23,r24
472 04b4 8091 0000 lds r24,EE_Parameter+64
473 04b8 8093 0000 sts ToNaviCtrl+24,r24
474 04bc 8091 0000 lds r24,EE_Parameter+65
475 04c0 8093 0000 sts ToNaviCtrl+25,r24
476 04c4 00C0 rjmp .L6
477 .L21:
478 04c6 8093 0000 sts ToNaviCtrl+19,r24
479 04ca 00C0 rjmp .L23
480 .L37:
481 /* epilogue: frame size=0 */
482 04cc 1F91 pop r17
483 04ce 0F91 pop r16
484 04d0 FF90 pop r15
485 04d2 EF90 pop r14
486 04d4 0895 ret
487 /* epilogue end (size=5) */
488 /* function UpdateSPI_Buffer size 583 (574) */
490 .global SPI_StartTransmitPacket
492 SPI_StartTransmitPacket:
493 /* prologue: frame size=0 */
494 /* prologue end (size=0) */
495 04d6 8091 0000 lds r24,SPITransferCompleted
496 04da 8823 tst r24
497 04dc 01F4 brne .+2
498 04de 00C0 rjmp .L51
499 04e0 4598 cbi 40-0x20,5
500 04e2 80E0 ldi r24,lo8(ToNaviCtrl)
501 04e4 90E0 ldi r25,hi8(ToNaviCtrl)
502 04e6 9093 0000 sts (SPI_TX_Buffer)+1,r25
503 04ea 8093 0000 sts SPI_TX_Buffer,r24
504 04ee 9091 0000 lds r25,SPI_CommandCounter
505 04f2 E92F mov r30,r25
506 04f4 F0E0 ldi r31,lo8(0)
507 04f6 E050 subi r30,lo8(-(SPI_CommandSequence))
508 04f8 F040 sbci r31,hi8(-(SPI_CommandSequence))
509 04fa 8081 ld r24,Z
510 04fc 8093 0000 sts ToNaviCtrl+2,r24
511 0500 9F5F subi r25,lo8(-(1))
512 0502 9093 0000 sts SPI_CommandCounter,r25
513 0506 9630 cpi r25,lo8(6)
514 0508 00F0 brlo .L49
515 050a 1092 0000 sts SPI_CommandCounter,__zero_reg__
516 .L49:
517 050e 1092 0000 sts SPITransferCompleted,__zero_reg__
518 0512 0E94 0000 call UpdateSPI_Buffer
519 0516 81E0 ldi r24,lo8(1)
520 0518 8093 0000 sts SPI_BufferIndex,r24
521 /* #APP */
522 051c 0000 nop
523 051e 0000 nop
524 0520 0000 nop
525 0522 0000 nop
526 0524 0000 nop
527 0526 0000 nop
528 0528 0000 nop
529 052a 0000 nop
530 052c 0000 nop
531 052e 0000 nop
532 0530 0000 nop
533 0532 0000 nop
534 0534 0000 nop
535 0536 0000 nop
536 0538 0000 nop
537 053a 0000 nop
538 053c 0000 nop
539 053e 0000 nop
540 0540 0000 nop
541 0542 0000 nop
542 0544 0000 nop
543 0546 0000 nop
544 0548 0000 nop
545 054a 0000 nop
546 /* #NOAPP */
547 054c 8091 0000 lds r24,ToNaviCtrl
548 0550 8093 0000 sts ToNaviCtrl+31,r24
549 0554 8EBD out 78-0x20,r24
550 .L51:
551 0556 0895 ret
552 /* epilogue: frame size=0 */
553 /* epilogue: noreturn */
554 /* epilogue end (size=0) */
555 /* function SPI_StartTransmitPacket size 89 (89) */
557 .global SPI_TransmitByte
559 SPI_TransmitByte:
560 /* prologue: frame size=0 */
561 /* prologue end (size=0) */
562 0558 8091 0000 lds r24,SPITransferCompleted
563 055c 8823 tst r24
564 055e 01F4 brne .L72
565 0560 0DB4 in __tmp_reg__,77-0x20
566 0562 07FE sbrs __tmp_reg__,7
567 .L72:
568 0564 0895 ret
569 .L75:
570 0566 84E0 ldi r24,lo8(4)
571 0568 8093 0000 sts SendSPI,r24
572 056c 459A sbi 40-0x20,5
573 056e 9EB5 in r25,78-0x20
574 0570 8091 0000 lds r24,SPI_RXState.2396
575 0574 8130 cpi r24,lo8(1)
576 0576 01F4 brne .+2
577 0578 00C0 rjmp .L58
578 057a 8130 cpi r24,lo8(1)
579 057c 00F0 brlo .+2
580 057e 00C0 rjmp .L76
581 0580 1092 0000 sts SPI_RxBufferIndex,__zero_reg__
582 0584 9093 0000 sts rxchksum.2398,r25
583 0588 9138 cpi r25,lo8(-127)
584 058a 01F4 brne .+2
585 058c 00C0 rjmp .L77
586 .L56:
587 058e 2091 0000 lds r18,SPI_BufferIndex
588 0592 2032 cpi r18,lo8(32)
589 0594 00F0 brlo .+2
590 0596 00C0 rjmp .L69
591 0598 4598 cbi 40-0x20,5
592 /* #APP */
593 059a 0000 nop
594 059c 0000 nop
595 059e 0000 nop
596 05a0 0000 nop
597 05a2 0000 nop
598 05a4 0000 nop
599 05a6 0000 nop
600 05a8 0000 nop
601 05aa 0000 nop
602 05ac 0000 nop
603 05ae 0000 nop
604 05b0 0000 nop
605 05b2 0000 nop
606 05b4 0000 nop
607 05b6 0000 nop
608 05b8 0000 nop
609 05ba 0000 nop
610 05bc 0000 nop
611 05be 0000 nop
612 05c0 0000 nop
613 05c2 0000 nop
614 05c4 0000 nop
615 05c6 0000 nop
616 05c8 0000 nop
617 /* #NOAPP */
618 05ca E091 0000 lds r30,SPI_TX_Buffer
619 05ce F091 0000 lds r31,(SPI_TX_Buffer)+1
620 05d2 E20F add r30,r18
621 05d4 F11D adc r31,__zero_reg__
622 05d6 8081 ld r24,Z
623 05d8 8EBD out 78-0x20,r24
624 05da 8081 ld r24,Z
625 05dc 9091 0000 lds r25,ToNaviCtrl+31
626 05e0 890F add r24,r25
627 05e2 8093 0000 sts ToNaviCtrl+31,r24
628 .L71:
629 05e6 2F5F subi r18,lo8(-(1))
630 05e8 2093 0000 sts SPI_BufferIndex,r18
631 05ec 0895 ret
632 .L58:
633 05ee 9535 cpi r25,lo8(85)
634 05f0 01F0 breq .L78
635 .L68:
636 05f2 1092 0000 sts SPI_RXState.2396,__zero_reg__
637 05f6 00C0 rjmp .L56
638 .L69:
639 05f8 81E0 ldi r24,lo8(1)
640 05fa 8093 0000 sts SPITransferCompleted,r24
641 05fe 00C0 rjmp .L71
642 .L76:
643 0600 8230 cpi r24,lo8(2)
644 0602 01F0 breq .+2
645 0604 00C0 rjmp .L56
646 0606 8091 0000 lds r24,SPI_RxBufferIndex
647 060a E82F mov r30,r24
648 060c F0E0 ldi r31,lo8(0)
649 060e E050 subi r30,lo8(-(SPI_Buffer))
650 0610 F040 sbci r31,hi8(-(SPI_Buffer))
651 0612 9083 st Z,r25
652 0614 8F5F subi r24,lo8(-(1))
653 0616 8093 0000 sts SPI_RxBufferIndex,r24
654 061a 8A31 cpi r24,lo8(26)
655 061c 00F0 brlo .L63
656 061e 8091 0000 lds r24,rxchksum.2398
657 0622 9817 cp r25,r24
658 0624 01F0 breq .L79
659 0626 1092 0000 sts SPI_RxDataValid,__zero_reg__
660 062a 00C0 rjmp .L68
661 .L63:
662 062c 8091 0000 lds r24,rxchksum.2398
663 0630 890F add r24,r25
664 0632 8093 0000 sts rxchksum.2398,r24
665 0636 00C0 rjmp .L56
666 .L78:
667 0638 8091 0000 lds r24,rxchksum.2398
668 063c 8B5A subi r24,lo8(-(85))
669 063e 8093 0000 sts rxchksum.2398,r24
670 0642 82E0 ldi r24,lo8(2)
671 0644 8093 0000 sts SPI_RXState.2396,r24
672 0648 00C0 rjmp .L56
673 .L77:
674 064a 81E0 ldi r24,lo8(1)
675 064c 8093 0000 sts SPI_RXState.2396,r24
676 0650 00C0 rjmp .L56
677 .L79:
678 0652 A0E0 ldi r26,lo8(FromNaviCtrl)
679 0654 B0E0 ldi r27,hi8(FromNaviCtrl)
680 0656 E0E0 ldi r30,lo8(SPI_Buffer)
681 0658 F0E0 ldi r31,hi8(SPI_Buffer)
682 065a 8AE1 ldi r24,lo8(26)
683 .L67:
684 065c 0190 ld r0,Z+
685 065e 0D92 st X+,r0
686 0660 8150 subi r24,lo8(-(-1))
687 0662 01F4 brne .L67
688 0664 81E0 ldi r24,lo8(1)
689 0666 8093 0000 sts SPI_RxDataValid,r24
690 066a 00C0 rjmp .L68
691 /* epilogue: frame size=0 */
692 /* epilogue: noreturn */
693 /* epilogue end (size=0) */
694 /* function SPI_TransmitByte size 164 (164) */
696 .global SPI_CommandSequence
697 .data
700 SPI_CommandSequence:
701 0000 0A .byte 10
702 0001 0B .byte 11
703 0002 0D .byte 13
704 0003 0B .byte 11
705 0004 0C .byte 12
706 0005 0E .byte 14
707 .global SPI_CommandCounter
708 .global SPI_CommandCounter
709 .section .bss
712 SPI_CommandCounter:
713 0000 00 .skip 1,0
714 .lcomm rxchksum.2398,1
715 .lcomm SPI_RXState.2396,1
716 .comm FromNaviCtrl_Value,3,1
717 .comm ToNaviCtrl,32,1
718 .comm FromNaviCtrl,26,1
719 .comm SPI_VersionInfo,4,1
720 .comm SPI_BufferIndex,1,1
721 .comm SPI_RxBufferIndex,1,1
722 .comm SPI_Buffer,26,1
723 .comm SPI_TX_Buffer,2,1
724 .comm SPITransferCompleted,1,1
725 .comm SPI_ChkSum,1,1
726 .comm SPI_RxDataValid,1,1
727 /* File "spi.c": code 878 = 0x036e ( 868), prologues 4, epilogues 6 */
DEFINED SYMBOLS
*ABS*:00000000 spi.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:12 .text:00000000 SPI_MasterInit
*COM*:00000001 SPITransferCompleted
*COM*:00000020 ToNaviCtrl
*COM*:00000001 SPI_RxDataValid
*COM*:00000004 SPI_VersionInfo
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:50 .text:00000054 UpdateSPI_Buffer
*COM*:0000001a FromNaviCtrl
*COM*:00000003 FromNaviCtrl_Value
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:492 .text:000004d6 SPI_StartTransmitPacket
*COM*:00000002 SPI_TX_Buffer
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:712 .bss:00000000 SPI_CommandCounter
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:700 .data:00000000 SPI_CommandSequence
*COM*:00000001 SPI_BufferIndex
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:559 .text:00000558 SPI_TransmitByte
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccuv0Mvj.s:714 .bss:00000002 SPI_RXState.2396
*COM*:00000001 SPI_RxBufferIndex
.bss:00000001 rxchksum.2398
*COM*:0000001a SPI_Buffer
*COM*:00000001 SPI_ChkSum
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
EE_Parameter
IntegralNick
__divmodsi4
IntegralRoll
ErsatzKompass
__mulsi3
GIER_GRAD_FAKTOR
NaviCntAcc
NaviAccNick
__divmodhi4
NaviAccRoll
KompassValue
KompassStartwert
KompassRichtung
beeptime
WinkelOut
PPM_in
Poti1
Poti2
Poti3
Poti4
SenderOkay
GPS_Nick
GPS_Roll
PlatinenVersion
Parameter_UserParam1
Parameter_UserParam2
Parameter_UserParam3
Parameter_UserParam4
Parameter_UserParam5
Parameter_UserParam6
Parameter_UserParam7
Parameter_UserParam8
MikroKopterFlags
UBat
EEPromArray
__eeprom_read_byte_1F2021
HoehenWert
SendSPI
/branches/v0.72p kmpec/timer0.c
0,0 → 1,379
#include "main.h"
 
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;
 
unsigned int BeepMuster = 0xffff;
int ServoValue = 0;
 
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
};
 
 
SIGNAL (SIG_OVERFLOW0) // 8kHz
{
static unsigned char cnt_1ms = 1,cnt = 0;
unsigned char pieper_ein = 0;
// TCNT0 -= 250;//TIMER_RELOAD_VALUE;
if(SendSPI) SendSPI--;
if(!cnt--)
{
cnt = 9;
cnt_1ms++;
cnt_1ms %= 2;
if(!cnt_1ms) UpdateMotor = 1;
CountMilliseconds++;
}
 
if(beeptime > 1)
{
beeptime--;
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(EE_Parameter.GlobalConfig & CFG_KOMPASS_AKTIV)
{
if(PINC & 0x10)
{
cntKompass++;
}
else
{
if((cntKompass) && (cntKompass < 362))
{
cntKompass += cntKompass / 41;
if(cntKompass > 10) KompassValue = cntKompass - 10; else KompassValue = 0;
}
// if(cntKompass < 10) cntKompass = 10;
// KompassValue = (unsigned long)((unsigned long)(cntKompass-10)*720L + 1L) / 703L;
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();
 
// set PD7 as output of the PWM for nick servo
DDRD |= (1<<DDD7);
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 = 120;
TCNT0 = (unsigned char)-TIMER_RELOAD_VALUE; // reload
//OCR1 = 0x00;
 
TIMSK0 |= _BV(TOIE0);
}
 
 
/*****************************************************/
/* Control Servo Position */
/*****************************************************/
 
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 (14063
#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 RemainingPulse = 0;
static uint16_t ServoFrameTime = 0;
static uint8_t ServoIndex = 0;
 
#define MULTIPLYER 4
static int16_t ServoNickOffset = (255 / 2) * MULTIPLYER; // initial value near center positon
 
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
 
ServoNickOffset = (ServoNickOffset * 3 + (int16_t)Parameter_ServoNickControl * MULTIPLYER) / 4; // lowpass offset
ServoNickValue = ServoNickOffset; // offset (Range from 0 to 255 * 3 = 765)
if(EE_Parameter.ServoNickCompInvert & 0x01)
{ // inverting movement of servo
ServoNickValue += (int16_t)( ( (int32_t)EE_Parameter.ServoNickComp * MULTIPLYER * (IntegralNick / 128L ) ) / (256L) );
}
else
{ // non inverting movement of servo
ServoNickValue -= (int16_t)( ( (int32_t)EE_Parameter.ServoNickComp * MULTIPLYER * (IntegralNick / 128L ) ) / (256L) );
}
// 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;
}
 
RemainingPulse += ServoNickValue - (256 / 2) * MULTIPLYER; // shift ServoNickValue to center position
 
ServoNickValue /= MULTIPLYER;
DebugOut.Analog[20] = ServoNickValue;
 
// 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;
}
// 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
ServoNickOffset = (ServoNickOffset * 3 + (int16_t)Parameter_ServoNickControl * MULTIPLYER) / 4; // lowpass offset
ServoNickValue = ServoNickOffset; // offset (Range from 0 to 255 * 3 = 765)
if(EE_Parameter.ServoNickCompInvert & 0x01)
{ // inverting movement of servo
ServoNickValue += (int16_t)( ( (int32_t)EE_Parameter.ServoNickComp * MULTIPLYER * (IntegralNick / 128L ) ) / (256L) );
}
else
{ // non inverting movement of servo
ServoNickValue -= (int16_t)( ( (int32_t)EE_Parameter.ServoNickComp * MULTIPLYER * (IntegralNick / 128L ) ) / (256L) );
}
// 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;
}
RemainingPulse += ServoNickValue - (256 / 2) * MULTIPLYER; // shift ServoNickValue to center position
ServoNickValue /= MULTIPLYER;
DebugOut.Analog[20] = ServoNickValue;
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 > 180) HEF4017R_OFF; // disable HEF4017 reset
ServoIndex++; // change to next servo channel
if(ServoIndex > EE_Parameter.ServoNickRefresh) 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/v0.72p kmpec/timer0.d
0,0 → 1,2
timer0.o timer0.d : timer0.c main.h old_macros.h _Settings.h printf_P.h timer0.h \
uart.h analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/timer0.h
0,0 → 1,19
 
#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 Delay_ms(unsigned int);
void Delay_ms_Mess(unsigned int);
unsigned int SetDelay (unsigned int t);
char CheckDelay (unsigned int t);
 
extern volatile unsigned int CountMilliseconds;
extern volatile unsigned char UpdateMotor;
extern volatile unsigned int beeptime;
extern volatile unsigned int cntKompass;
extern int ServoValue;
extern unsigned int BeepMuster;
extern volatile unsigned char SendSPI, ServoActive;
/branches/v0.72p kmpec/timer0.lst
0,0 → 1,1062
1 .file "timer0.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global __vector_18
12 __vector_18:
13 /* prologue: frame size=0 */
14 0000 1F92 push __zero_reg__
15 0002 0F92 push __tmp_reg__
16 0004 0FB6 in __tmp_reg__,__SREG__
17 0006 0F92 push __tmp_reg__
18 0008 1124 clr __zero_reg__
19 000a 2F93 push r18
20 000c 3F93 push r19
21 000e 5F93 push r21
22 0010 6F93 push r22
23 0012 7F93 push r23
24 0014 8F93 push r24
25 0016 9F93 push r25
26 0018 AF93 push r26
27 001a BF93 push r27
28 /* prologue end (size=14) */
29 001c 8091 0000 lds r24,SendSPI
30 0020 8823 tst r24
31 0022 01F0 breq .L2
32 0024 8091 0000 lds r24,SendSPI
33 0028 8150 subi r24,lo8(-(-1))
34 002a 8093 0000 sts SendSPI,r24
35 .L2:
36 002e 8091 0000 lds r24,cnt.2378
37 0032 8150 subi r24,lo8(-(-1))
38 0034 8093 0000 sts cnt.2378,r24
39 0038 8F3F cpi r24,lo8(-1)
40 003a 01F4 brne .+2
41 003c 00C0 rjmp .L30
42 .L4:
43 003e 8091 0000 lds r24,beeptime
44 0042 9091 0000 lds r25,(beeptime)+1
45 0046 0297 sbiw r24,2
46 0048 00F0 brlo .L8
47 004a 8091 0000 lds r24,beeptime
48 004e 9091 0000 lds r25,(beeptime)+1
49 0052 0197 sbiw r24,1
50 0054 9093 0000 sts (beeptime)+1,r25
51 0058 8093 0000 sts beeptime,r24
52 005c 8091 0000 lds r24,beeptime
53 0060 9091 0000 lds r25,(beeptime)+1
54 0064 2091 0000 lds r18,BeepMuster
55 0068 3091 0000 lds r19,(BeepMuster)+1
56 006c 8223 and r24,r18
57 006e 9323 and r25,r19
58 0070 892B or r24,r25
59 0072 01F0 breq .L11
60 0074 8091 0000 lds r24,PlatinenVersion
61 0078 8A30 cpi r24,lo8(10)
62 007a 01F4 brne .+2
63 007c 00C0 rjmp .L31
64 007e 479A sbi 40-0x20,7
65 0080 00C0 rjmp .L15
66 .L8:
67 0082 8FEF ldi r24,lo8(-1)
68 0084 9FEF ldi r25,hi8(-1)
69 0086 9093 0000 sts (BeepMuster)+1,r25
70 008a 8093 0000 sts BeepMuster,r24
71 .L11:
72 008e 8091 0000 lds r24,PlatinenVersion
73 0092 8A30 cpi r24,lo8(10)
74 0094 01F4 brne .+2
75 0096 00C0 rjmp .L32
76 0098 4798 cbi 40-0x20,7
77 .L15:
78 009a 8091 0000 lds r24,EE_Parameter+8
79 009e 83FF sbrs r24,3
80 00a0 00C0 rjmp .L26
81 00a2 349B sbis 38-0x20,4
82 00a4 00C0 rjmp .L19
83 00a6 8091 0000 lds r24,cntKompass
84 00aa 9091 0000 lds r25,(cntKompass)+1
85 00ae 0196 adiw r24,1
86 00b0 9093 0000 sts (cntKompass)+1,r25
87 00b4 8093 0000 sts cntKompass,r24
88 00b8 00C0 rjmp .L26
89 .L19:
90 00ba 8091 0000 lds r24,cntKompass
91 00be 9091 0000 lds r25,(cntKompass)+1
92 00c2 892B or r24,r25
93 00c4 01F0 breq .L21
94 00c6 8091 0000 lds r24,cntKompass
95 00ca 9091 0000 lds r25,(cntKompass)+1
96 00ce 8A56 subi r24,lo8(362)
97 00d0 9140 sbci r25,hi8(362)
98 00d2 00F4 brsh .L21
99 00d4 8091 0000 lds r24,cntKompass
100 00d8 9091 0000 lds r25,(cntKompass)+1
101 00dc 2091 0000 lds r18,cntKompass
102 00e0 3091 0000 lds r19,(cntKompass)+1
103 00e4 69E2 ldi r22,lo8(41)
104 00e6 70E0 ldi r23,hi8(41)
105 00e8 0E94 0000 call __udivmodhi4
106 00ec 260F add r18,r22
107 00ee 371F adc r19,r23
108 00f0 3093 0000 sts (cntKompass)+1,r19
109 00f4 2093 0000 sts cntKompass,r18
110 00f8 8091 0000 lds r24,cntKompass
111 00fc 9091 0000 lds r25,(cntKompass)+1
112 0100 0B97 sbiw r24,11
113 0102 00F4 brsh .+2
114 0104 00C0 rjmp .L24
115 0106 8091 0000 lds r24,cntKompass
116 010a 9091 0000 lds r25,(cntKompass)+1
117 010e 0A97 sbiw r24,10
118 0110 9093 0000 sts (KompassValue)+1,r25
119 0114 8093 0000 sts KompassValue,r24
120 .L21:
121 0118 8091 0000 lds r24,KompassValue
122 011c 9091 0000 lds r25,(KompassValue)+1
123 0120 845E subi r24,lo8(-(540))
124 0122 9D4F sbci r25,hi8(-(540))
125 0124 2091 0000 lds r18,KompassStartwert
126 0128 3091 0000 lds r19,(KompassStartwert)+1
127 012c 821B sub r24,r18
128 012e 930B sbc r25,r19
129 0130 68E6 ldi r22,lo8(360)
130 0132 71E0 ldi r23,hi8(360)
131 0134 0E94 0000 call __divmodhi4
132 0138 845B subi r24,lo8(-(-180))
133 013a 9040 sbci r25,hi8(-(-180))
134 013c 9093 0000 sts (KompassRichtung)+1,r25
135 0140 8093 0000 sts KompassRichtung,r24
136 0144 1092 0000 sts (cntKompass)+1,__zero_reg__
137 0148 1092 0000 sts cntKompass,__zero_reg__
138 014c 00C0 rjmp .L26
139 .L30:
140 014e 89E0 ldi r24,lo8(9)
141 0150 8093 0000 sts cnt.2378,r24
142 0154 8091 0000 lds r24,cnt_1ms.2377
143 0158 8F5F subi r24,lo8(-(1))
144 015a 8170 andi r24,lo8(1)
145 015c 8093 0000 sts cnt_1ms.2377,r24
146 0160 8823 tst r24
147 0162 01F4 brne .L6
148 0164 81E0 ldi r24,lo8(1)
149 0166 8093 0000 sts UpdateMotor,r24
150 .L6:
151 016a 8091 0000 lds r24,CountMilliseconds
152 016e 9091 0000 lds r25,(CountMilliseconds)+1
153 0172 0196 adiw r24,1
154 0174 9093 0000 sts (CountMilliseconds)+1,r25
155 0178 8093 0000 sts CountMilliseconds,r24
156 017c 00C0 rjmp .L4
157 .L32:
158 017e 5A98 cbi 43-0x20,2
159 0180 00C0 rjmp .L15
160 .L31:
161 0182 5A9A sbi 43-0x20,2
162 0184 00C0 rjmp .L15
163 .L24:
164 0186 1092 0000 sts (KompassValue)+1,__zero_reg__
165 018a 1092 0000 sts KompassValue,__zero_reg__
166 018e 00C0 rjmp .L21
167 .L26:
168 /* epilogue: frame size=0 */
169 0190 BF91 pop r27
170 0192 AF91 pop r26
171 0194 9F91 pop r25
172 0196 8F91 pop r24
173 0198 7F91 pop r23
174 019a 6F91 pop r22
175 019c 5F91 pop r21
176 019e 3F91 pop r19
177 01a0 2F91 pop r18
178 01a2 0F90 pop __tmp_reg__
179 01a4 0FBE out __SREG__,__tmp_reg__
180 01a6 0F90 pop __tmp_reg__
181 01a8 1F90 pop __zero_reg__
182 01aa 1895 reti
183 /* epilogue end (size=14) */
184 /* function __vector_18 size 217 (189) */
186 .global SetDelay
188 SetDelay:
189 /* prologue: frame size=0 */
190 /* prologue end (size=0) */
191 01ac 2091 0000 lds r18,CountMilliseconds
192 01b0 3091 0000 lds r19,(CountMilliseconds)+1
193 01b4 2F5F subi r18,lo8(-(1))
194 01b6 3F4F sbci r19,hi8(-(1))
195 01b8 820F add r24,r18
196 01ba 931F adc r25,r19
197 /* epilogue: frame size=0 */
198 01bc 0895 ret
199 /* epilogue end (size=1) */
200 /* function SetDelay size 9 (8) */
202 .global CheckDelay
204 CheckDelay:
205 /* prologue: frame size=0 */
206 /* prologue end (size=0) */
207 01be 2091 0000 lds r18,CountMilliseconds
208 01c2 3091 0000 lds r19,(CountMilliseconds)+1
209 01c6 821B sub r24,r18
210 01c8 930B sbc r25,r19
211 01ca 892F mov r24,r25
212 01cc 9927 clr r25
213 01ce 8695 lsr r24
214 01d0 8074 andi r24,lo8(64)
215 01d2 90E0 ldi r25,lo8(0)
216 /* epilogue: frame size=0 */
217 01d4 0895 ret
218 /* epilogue end (size=1) */
219 /* function CheckDelay size 12 (11) */
221 .global Delay_ms
223 Delay_ms:
224 /* prologue: frame size=0 */
225 01d6 CF93 push r28
226 01d8 DF93 push r29
227 /* prologue end (size=2) */
228 01da 0E94 0000 call SetDelay
229 01de EC01 movw r28,r24
230 .L38:
231 01e0 CE01 movw r24,r28
232 01e2 0E94 0000 call CheckDelay
233 01e6 8823 tst r24
234 01e8 01F0 breq .L38
235 /* epilogue: frame size=0 */
236 01ea DF91 pop r29
237 01ec CF91 pop r28
238 01ee 0895 ret
239 /* epilogue end (size=3) */
240 /* function Delay_ms size 13 (8) */
242 .global Delay_ms_Mess
244 Delay_ms_Mess:
245 /* prologue: frame size=0 */
246 01f0 CF93 push r28
247 01f2 DF93 push r29
248 /* prologue end (size=2) */
249 01f4 0E94 0000 call SetDelay
250 01f8 EC01 movw r28,r24
251 01fa 00C0 rjmp .L52
252 .L45:
253 01fc 8091 0000 lds r24,AdReady
254 0200 8823 tst r24
255 0202 01F0 breq .L52
256 0204 1092 0000 sts AdReady,__zero_reg__
257 0208 8FEC ldi r24,lo8(-49)
258 020a 8093 7A00 sts 122,r24
259 .L52:
260 020e CE01 movw r24,r28
261 0210 0E94 0000 call CheckDelay
262 0214 8823 tst r24
263 0216 01F0 breq .L45
264 /* epilogue: frame size=0 */
265 0218 DF91 pop r29
266 021a CF91 pop r28
267 021c 0895 ret
268 /* epilogue end (size=3) */
269 /* function Delay_ms_Mess size 23 (18) */
271 .global TIMER2_Init
273 TIMER2_Init:
274 /* prologue: frame size=0 */
275 /* prologue end (size=0) */
276 021e 9FB7 in r25,95-0x20
277 /* #APP */
278 0220 F894 cli
279 /* #NOAPP */
280 0222 579A sbi 42-0x20,7
281 0224 5F98 cbi 43-0x20,7
282 0226 3E9A sbi 39-0x20,6
283 0228 469A sbi 40-0x20,6
284 022a A0EB ldi r26,lo8(176)
285 022c B0E0 ldi r27,hi8(176)
286 022e 8C91 ld r24,X
287 0230 8F70 andi r24,lo8(15)
288 0232 8C93 st X,r24
289 0234 8C91 ld r24,X
290 0236 8360 ori r24,lo8(3)
291 0238 8C93 st X,r24
292 023a E1EB ldi r30,lo8(177)
293 023c F0E0 ldi r31,hi8(177)
294 023e 8081 ld r24,Z
295 0240 8B73 andi r24,lo8(59)
296 0242 8083 st Z,r24
297 0244 8081 ld r24,Z
298 0246 8B60 ori r24,lo8(11)
299 0248 8083 st Z,r24
300 024a 1092 B200 sts 178,__zero_reg__
301 024e 8FEF ldi r24,lo8(-1)
302 0250 8093 B300 sts 179,r24
303 0254 8C91 ld r24,X
304 0256 8068 ori r24,lo8(-128)
305 0258 8C93 st X,r24
306 025a E0E7 ldi r30,lo8(112)
307 025c F0E0 ldi r31,hi8(112)
308 025e 8081 ld r24,Z
309 0260 8A7F andi r24,lo8(-6)
310 0262 8083 st Z,r24
311 0264 8081 ld r24,Z
312 0266 8260 ori r24,lo8(2)
313 0268 8083 st Z,r24
314 026a 9FBF out 95-0x20,r25
315 /* epilogue: frame size=0 */
316 026c 0895 ret
317 /* epilogue end (size=1) */
318 /* function TIMER2_Init size 41 (40) */
320 .global Timer_Init
322 Timer_Init:
323 /* prologue: frame size=0 */
324 /* prologue end (size=0) */
325 026e 8AE0 ldi r24,lo8(10)
326 0270 90E0 ldi r25,hi8(10)
327 0272 0E94 0000 call SetDelay
328 0276 9093 0000 sts (tim_main)+1,r25
329 027a 8093 0000 sts tim_main,r24
330 027e 82E0 ldi r24,lo8(2)
331 0280 85BD out 69-0x20,r24
332 0282 83EA ldi r24,lo8(-93)
333 0284 84BD out 68-0x20,r24
334 0286 17BC out 71-0x20,__zero_reg__
335 0288 88E7 ldi r24,lo8(120)
336 028a 88BD out 72-0x20,r24
337 028c 86E0 ldi r24,lo8(6)
338 028e 86BD out 70-0x20,r24
339 0290 EEE6 ldi r30,lo8(110)
340 0292 F0E0 ldi r31,hi8(110)
341 0294 8081 ld r24,Z
342 0296 8160 ori r24,lo8(1)
343 0298 8083 st Z,r24
344 /* epilogue: frame size=0 */
345 029a 0895 ret
346 /* epilogue end (size=1) */
347 /* function Timer_Init size 23 (22) */
349 .global __vector_9
351 __vector_9:
352 /* prologue: frame size=0 */
353 029c 1F92 push __zero_reg__
354 029e 0F92 push __tmp_reg__
355 02a0 0FB6 in __tmp_reg__,__SREG__
356 02a2 0F92 push __tmp_reg__
357 02a4 1124 clr __zero_reg__
358 02a6 CF92 push r12
359 02a8 DF92 push r13
360 02aa EF92 push r14
361 02ac FF92 push r15
362 02ae 0F93 push r16
363 02b0 1F93 push r17
364 02b2 2F93 push r18
365 02b4 3F93 push r19
366 02b6 4F93 push r20
367 02b8 5F93 push r21
368 02ba 6F93 push r22
369 02bc 7F93 push r23
370 02be 8F93 push r24
371 02c0 9F93 push r25
372 02c2 AF93 push r26
373 02c4 BF93 push r27
374 02c6 EF93 push r30
375 02c8 FF93 push r31
376 /* prologue end (size=23) */
377 02ca 8091 0000 lds r24,PlatinenVersion
378 02ce 8431 cpi r24,lo8(20)
379 02d0 00F4 brsh .L58
380 02d2 8091 0000 lds r24,PulseOutput.2520
381 02d6 8823 tst r24
382 02d8 01F4 brne .+2
383 02da 00C0 rjmp .L117
384 .L113:
385 02dc 2091 0000 lds r18,RemainingPulse.2521
386 02e0 3091 0000 lds r19,(RemainingPulse.2521)+1
387 .L60:
388 02e4 41E0 ldi r20,hi8(383)
389 02e6 2F37 cpi r18,lo8(383)
390 02e8 3407 cpc r19,r20
391 02ea 00F0 brlo .L104
392 02ec 8FEF ldi r24,lo8(-1)
393 02ee 8093 B300 sts 179,r24
394 02f2 2F5F subi r18,lo8(-(-255))
395 02f4 3040 sbci r19,hi8(-(-255))
396 02f6 3093 0000 sts (RemainingPulse.2521)+1,r19
397 02fa 2093 0000 sts RemainingPulse.2521,r18
398 02fe 00C0 rjmp .L111
399 .L58:
400 0300 8091 0000 lds r24,PulseOutput.2520
401 0304 8823 tst r24
402 0306 01F4 brne .L113
403 0308 8091 B000 lds r24,176
404 030c 86FF sbrs r24,6
405 030e 00C0 rjmp .L79
406 0310 8091 B000 lds r24,176
407 0314 8F7B andi r24,lo8(-65)
408 0316 8093 B000 sts 176,r24
409 031a E091 0000 lds r30,ServoIndex.2523
410 031e EE23 tst r30
411 0320 01F0 breq .+2
412 0322 00C0 rjmp .L81
413 0324 8091 0000 lds r24,EE_Parameter+38
414 0328 90E0 ldi r25,lo8(0)
415 032a 2DED ldi r18,lo8(1757)
416 032c 36E0 ldi r19,hi8(1757)
417 032e A901 movw r20,r18
418 0330 849F mul r24,r20
419 0332 9001 movw r18,r0
420 0334 859F mul r24,r21
421 0336 300D add r19,r0
422 0338 949F mul r25,r20
423 033a 300D add r19,r0
424 033c 1124 clr r1
425 033e 8091 0000 lds r24,ServoFrameTime.2522
426 0342 9091 0000 lds r25,(ServoFrameTime.2522)+1
427 0346 281B sub r18,r24
428 0348 390B sbc r19,r25
429 034a 3093 0000 sts (RemainingPulse.2521)+1,r19
430 034e 2093 0000 sts RemainingPulse.2521,r18
431 0352 1092 0000 sts (ServoFrameTime.2522)+1,__zero_reg__
432 0356 1092 0000 sts ServoFrameTime.2522,__zero_reg__
433 035a 469A sbi 40-0x20,6
434 035c 00C0 rjmp .L83
435 .L104:
436 035e 2F3F cpi r18,255
437 0360 3105 cpc r19,__zero_reg__
438 0362 01F0 breq .L107
439 0364 00F0 brlo .L107
440 0366 51E0 ldi r21,hi8(382)
441 0368 2E37 cpi r18,lo8(382)
442 036a 3507 cpc r19,r21
443 036c 01F4 brne .+2
444 036e 00C0 rjmp .L109
445 0370 80E8 ldi r24,lo8(-128)
446 0372 8093 B300 sts 179,r24
447 0376 2058 subi r18,lo8(-(-128))
448 0378 3040 sbci r19,hi8(-(-128))
449 037a 3093 0000 sts (RemainingPulse.2521)+1,r19
450 037e 2093 0000 sts RemainingPulse.2521,r18
451 0382 00C0 rjmp .L111
452 .L107:
453 0384 2093 B300 sts 179,r18
454 0388 1092 0000 sts (RemainingPulse.2521)+1,__zero_reg__
455 038c 1092 0000 sts RemainingPulse.2521,__zero_reg__
456 0390 1092 0000 sts PulseOutput.2520,__zero_reg__
457 0394 00C0 rjmp .L111
458 .L117:
459 0396 8091 B000 lds r24,176
460 039a 86FF sbrs r24,6
461 039c 00C0 rjmp .L62
462 039e 8091 B000 lds r24,176
463 03a2 8F7B andi r24,lo8(-65)
464 03a4 8093 B000 sts 176,r24
465 03a8 8091 0000 lds r24,Parameter_ServoNickControl
466 03ac 482F mov r20,r24
467 03ae 50E0 ldi r21,lo8(0)
468 03b0 440F lsl r20
469 03b2 551F rol r21
470 03b4 440F lsl r20
471 03b6 551F rol r21
472 03b8 2091 0000 lds r18,ServoNickOffset.2524
473 03bc 3091 0000 lds r19,(ServoNickOffset.2524)+1
474 03c0 C901 movw r24,r18
475 03c2 880F lsl r24
476 03c4 991F rol r25
477 03c6 820F add r24,r18
478 03c8 931F adc r25,r19
479 03ca 480F add r20,r24
480 03cc 591F adc r21,r25
481 03ce 57FD sbrc r21,7
482 03d0 00C0 rjmp .L118
483 .L64:
484 03d2 CA01 movw r24,r20
485 03d4 9595 asr r25
486 03d6 8795 ror r24
487 03d8 9595 asr r25
488 03da 8795 ror r24
489 03dc 9093 0000 sts (ServoNickOffset.2524)+1,r25
490 03e0 8093 0000 sts ServoNickOffset.2524,r24
491 03e4 9093 0000 sts (ServoNickValue)+1,r25
492 03e8 8093 0000 sts ServoNickValue,r24
493 03ec 8091 0000 lds r24,EE_Parameter+76
494 03f0 80FF sbrs r24,0
495 03f2 00C0 rjmp .L65
496 03f4 C090 0000 lds r12,ServoNickValue
497 03f8 D090 0000 lds r13,(ServoNickValue)+1
498 03fc E090 0000 lds r14,EE_Parameter+35
499 0400 FF24 clr r15
500 0402 00E0 ldi r16,lo8(0)
501 0404 10E0 ldi r17,hi8(0)
502 0406 6091 0000 lds r22,IntegralNick
503 040a 7091 0000 lds r23,(IntegralNick)+1
504 040e 8091 0000 lds r24,(IntegralNick)+2
505 0412 9091 0000 lds r25,(IntegralNick)+3
506 0416 20E8 ldi r18,lo8(128)
507 0418 30E0 ldi r19,hi8(128)
508 041a 40E0 ldi r20,hlo8(128)
509 041c 50E0 ldi r21,hhi8(128)
510 041e 0E94 0000 call __divmodsi4
511 0422 C801 movw r24,r16
512 0424 B701 movw r22,r14
513 0426 0E94 0000 call __mulsi3
514 042a 660F lsl r22
515 042c 771F rol r23
516 042e 881F rol r24
517 0430 991F rol r25
518 0432 660F lsl r22
519 0434 771F rol r23
520 0436 881F rol r24
521 0438 991F rol r25
522 043a 20E0 ldi r18,lo8(256)
523 043c 31E0 ldi r19,hi8(256)
524 043e 40E0 ldi r20,hlo8(256)
525 0440 50E0 ldi r21,hhi8(256)
526 0442 0E94 0000 call __divmodsi4
527 0446 C20E add r12,r18
528 0448 D31E adc r13,r19
529 044a D092 0000 sts (ServoNickValue)+1,r13
530 044e C092 0000 sts ServoNickValue,r12
531 .L67:
532 0452 8091 0000 lds r24,EE_Parameter+36
533 0456 282F mov r18,r24
534 0458 30E0 ldi r19,lo8(0)
535 045a 220F lsl r18
536 045c 331F rol r19
537 045e 220F lsl r18
538 0460 331F rol r19
539 0462 8091 0000 lds r24,ServoNickValue
540 0466 9091 0000 lds r25,(ServoNickValue)+1
541 046a 8217 cp r24,r18
542 046c 9307 cpc r25,r19
543 046e 04F4 brge .+2
544 0470 00C0 rjmp .L115
545 0472 8091 0000 lds r24,EE_Parameter+37
546 0476 282F mov r18,r24
547 0478 30E0 ldi r19,lo8(0)
548 047a 220F lsl r18
549 047c 331F rol r19
550 047e 220F lsl r18
551 0480 331F rol r19
552 0482 8091 0000 lds r24,ServoNickValue
553 0486 9091 0000 lds r25,(ServoNickValue)+1
554 048a 2817 cp r18,r24
555 048c 3907 cpc r19,r25
556 048e 04F4 brge .+2
557 0490 00C0 rjmp .L115
558 .L70:
559 0492 2091 0000 lds r18,ServoNickValue
560 0496 3091 0000 lds r19,(ServoNickValue)+1
561 049a 2755 subi r18,lo8(-(425))
562 049c 3E4F sbci r19,hi8(-(425))
563 049e 3093 0000 sts (RemainingPulse.2521)+1,r19
564 04a2 2093 0000 sts RemainingPulse.2521,r18
565 04a6 8091 0000 lds r24,ServoNickValue
566 04aa 9091 0000 lds r25,(ServoNickValue)+1
567 04ae 97FD sbrc r25,7
568 04b0 00C0 rjmp .L119
569 .L72:
570 04b2 9595 asr r25
571 04b4 8795 ror r24
572 04b6 9595 asr r25
573 04b8 8795 ror r24
574 04ba 9093 0000 sts (ServoNickValue)+1,r25
575 04be 8093 0000 sts ServoNickValue,r24
576 04c2 8091 0000 lds r24,ServoNickValue
577 04c6 9091 0000 lds r25,(ServoNickValue)+1
578 04ca 9093 0000 sts (DebugOut+42)+1,r25
579 04ce 8093 0000 sts DebugOut+42,r24
580 04d2 45E0 ldi r20,hi8(1501)
581 04d4 2D3D cpi r18,lo8(1501)
582 04d6 3407 cpc r19,r20
583 04d8 00F4 brsh .+2
584 04da 00C0 rjmp .L73
585 04dc 2CED ldi r18,lo8(1500)
586 04de 35E0 ldi r19,hi8(1500)
587 04e0 3093 0000 sts (RemainingPulse.2521)+1,r19
588 04e4 2093 0000 sts RemainingPulse.2521,r18
589 .L75:
590 04e8 2091 0000 lds r18,RemainingPulse.2521
591 04ec 3091 0000 lds r19,(RemainingPulse.2521)+1
592 04f0 3093 0000 sts (ServoFrameTime.2522)+1,r19
593 04f4 2093 0000 sts ServoFrameTime.2522,r18
594 04f8 00C0 rjmp .L83
595 .L62:
596 04fa 8091 B000 lds r24,176
597 04fe 8064 ori r24,lo8(64)
598 0500 8093 B000 sts 176,r24
599 0504 8091 0000 lds r24,EE_Parameter+38
600 0508 90E0 ldi r25,lo8(0)
601 050a 2DED ldi r18,lo8(1757)
602 050c 36E0 ldi r19,hi8(1757)
603 050e A901 movw r20,r18
604 0510 849F mul r24,r20
605 0512 9001 movw r18,r0
606 0514 859F mul r24,r21
607 0516 300D add r19,r0
608 0518 949F mul r25,r20
609 051a 300D add r19,r0
610 051c 1124 clr r1
611 051e 8091 0000 lds r24,ServoFrameTime.2522
612 0522 9091 0000 lds r25,(ServoFrameTime.2522)+1
613 0526 281B sub r18,r24
614 0528 390B sbc r19,r25
615 052a 3093 0000 sts (RemainingPulse.2521)+1,r19
616 052e 2093 0000 sts RemainingPulse.2521,r18
617 .L83:
618 0532 81E0 ldi r24,lo8(1)
619 0534 8093 0000 sts PulseOutput.2520,r24
620 0538 00C0 rjmp .L60
621 .L79:
622 053a 8091 B000 lds r24,176
623 053e 8064 ori r24,lo8(64)
624 0540 8093 B000 sts 176,r24
625 0544 2CEB ldi r18,lo8(188)
626 0546 30E0 ldi r19,hi8(188)
627 0548 3093 0000 sts (RemainingPulse.2521)+1,r19
628 054c 2093 0000 sts RemainingPulse.2521,r18
629 0550 8091 0000 lds r24,ServoFrameTime.2522
630 0554 9091 0000 lds r25,(ServoFrameTime.2522)+1
631 0558 8454 subi r24,lo8(-(188))
632 055a 9F4F sbci r25,hi8(-(188))
633 055c 9093 0000 sts (ServoFrameTime.2522)+1,r25
634 0560 8093 0000 sts ServoFrameTime.2522,r24
635 0564 8091 0000 lds r24,ServoActive
636 0568 8823 tst r24
637 056a 01F0 breq .L100
638 056c 8091 0000 lds r24,SenderOkay
639 0570 853B cpi r24,lo8(-75)
640 0572 00F0 brlo .+2
641 0574 00C0 rjmp .L120
642 .L100:
643 0576 8091 0000 lds r24,ServoIndex.2523
644 057a 8F5F subi r24,lo8(-(1))
645 057c 8093 0000 sts ServoIndex.2523,r24
646 0580 9091 0000 lds r25,EE_Parameter+38
647 0584 9817 cp r25,r24
648 0586 00F0 brlo .+2
649 0588 00C0 rjmp .L114
650 058a 1092 0000 sts ServoIndex.2523,__zero_reg__
651 058e 2091 0000 lds r18,RemainingPulse.2521
652 0592 3091 0000 lds r19,(RemainingPulse.2521)+1
653 0596 00C0 rjmp .L83
654 .L109:
655 0598 8FEF ldi r24,lo8(-1)
656 059a 8093 B300 sts 179,r24
657 059e 2FE7 ldi r18,lo8(127)
658 05a0 30E0 ldi r19,hi8(127)
659 05a2 3093 0000 sts (RemainingPulse.2521)+1,r19
660 05a6 2093 0000 sts RemainingPulse.2521,r18
661 05aa 00C0 rjmp .L111
662 .L115:
663 05ac 3093 0000 sts (ServoNickValue)+1,r19
664 05b0 2093 0000 sts ServoNickValue,r18
665 05b4 00C0 rjmp .L70
666 .L81:
667 05b6 29EA ldi r18,lo8(937)
668 05b8 33E0 ldi r19,hi8(937)
669 05ba 3093 0000 sts (RemainingPulse.2521)+1,r19
670 05be 2093 0000 sts RemainingPulse.2521,r18
671 05c2 E130 cpi r30,lo8(1)
672 05c4 01F4 brne .+2
673 05c6 00C0 rjmp .L121
674 05c8 F0E0 ldi r31,lo8(0)
675 05ca EE0F lsl r30
676 05cc FF1F rol r31
677 05ce E050 subi r30,lo8(-(PPM_in))
678 05d0 F040 sbci r31,hi8(-(PPM_in))
679 05d2 8081 ld r24,Z
680 05d4 9181 ldd r25,Z+1
681 05d6 880F lsl r24
682 05d8 991F rol r25
683 05da 8755 subi r24,lo8(-(937))
684 05dc 9C4F sbci r25,hi8(-(937))
685 05de 9093 0000 sts (RemainingPulse.2521)+1,r25
686 05e2 8093 0000 sts RemainingPulse.2521,r24
687 .L95:
688 05e6 2091 0000 lds r18,RemainingPulse.2521
689 05ea 3091 0000 lds r19,(RemainingPulse.2521)+1
690 05ee 55E0 ldi r21,hi8(1501)
691 05f0 2D3D cpi r18,lo8(1501)
692 05f2 3507 cpc r19,r21
693 05f4 00F4 brsh .+2
694 05f6 00C0 rjmp .L96
695 05f8 2CED ldi r18,lo8(1500)
696 05fa 35E0 ldi r19,hi8(1500)
697 05fc 3093 0000 sts (RemainingPulse.2521)+1,r19
698 0600 2093 0000 sts RemainingPulse.2521,r18
699 .L98:
700 0604 2C5B subi r18,lo8(-(-188))
701 0606 3040 sbci r19,hi8(-(-188))
702 0608 3093 0000 sts (RemainingPulse.2521)+1,r19
703 060c 2093 0000 sts RemainingPulse.2521,r18
704 0610 8091 0000 lds r24,ServoFrameTime.2522
705 0614 9091 0000 lds r25,(ServoFrameTime.2522)+1
706 0618 820F add r24,r18
707 061a 931F adc r25,r19
708 061c 9093 0000 sts (ServoFrameTime.2522)+1,r25
709 0620 8093 0000 sts ServoFrameTime.2522,r24
710 0624 00C0 rjmp .L83
711 .L73:
712 0626 2757 subi r18,lo8(375)
713 0628 3140 sbci r19,hi8(375)
714 062a 00F0 brlo .+2
715 062c 00C0 rjmp .L75
716 062e 27E7 ldi r18,lo8(375)
717 0630 31E0 ldi r19,hi8(375)
718 0632 3093 0000 sts (RemainingPulse.2521)+1,r19
719 0636 2093 0000 sts RemainingPulse.2521,r18
720 063a 00C0 rjmp .L75
721 .L65:
722 063c C090 0000 lds r12,ServoNickValue
723 0640 D090 0000 lds r13,(ServoNickValue)+1
724 0644 E090 0000 lds r14,EE_Parameter+35
725 0648 FF24 clr r15
726 064a 00E0 ldi r16,lo8(0)
727 064c 10E0 ldi r17,hi8(0)
728 064e 6091 0000 lds r22,IntegralNick
729 0652 7091 0000 lds r23,(IntegralNick)+1
730 0656 8091 0000 lds r24,(IntegralNick)+2
731 065a 9091 0000 lds r25,(IntegralNick)+3
732 065e 20E8 ldi r18,lo8(128)
733 0660 30E0 ldi r19,hi8(128)
734 0662 40E0 ldi r20,hlo8(128)
735 0664 50E0 ldi r21,hhi8(128)
736 0666 0E94 0000 call __divmodsi4
737 066a C801 movw r24,r16
738 066c B701 movw r22,r14
739 066e 0E94 0000 call __mulsi3
740 0672 660F lsl r22
741 0674 771F rol r23
742 0676 881F rol r24
743 0678 991F rol r25
744 067a 660F lsl r22
745 067c 771F rol r23
746 067e 881F rol r24
747 0680 991F rol r25
748 0682 20E0 ldi r18,lo8(256)
749 0684 31E0 ldi r19,hi8(256)
750 0686 40E0 ldi r20,hlo8(256)
751 0688 50E0 ldi r21,hhi8(256)
752 068a 0E94 0000 call __divmodsi4
753 068e C21A sub r12,r18
754 0690 D30A sbc r13,r19
755 0692 D092 0000 sts (ServoNickValue)+1,r13
756 0696 C092 0000 sts ServoNickValue,r12
757 069a 00C0 rjmp .L67
758 .L114:
759 069c 2091 0000 lds r18,RemainingPulse.2521
760 06a0 3091 0000 lds r19,(RemainingPulse.2521)+1
761 06a4 00C0 rjmp .L83
762 .L120:
763 06a6 4698 cbi 40-0x20,6
764 06a8 00C0 rjmp .L100
765 .L121:
766 06aa 8091 0000 lds r24,Parameter_ServoNickControl
767 06ae 482F mov r20,r24
768 06b0 50E0 ldi r21,lo8(0)
769 06b2 440F lsl r20
770 06b4 551F rol r21
771 06b6 440F lsl r20
772 06b8 551F rol r21
773 06ba 2091 0000 lds r18,ServoNickOffset.2524
774 06be 3091 0000 lds r19,(ServoNickOffset.2524)+1
775 06c2 C901 movw r24,r18
776 06c4 880F lsl r24
777 06c6 991F rol r25
778 06c8 820F add r24,r18
779 06ca 931F adc r25,r19
780 06cc 480F add r20,r24
781 06ce 591F adc r21,r25
782 06d0 57FD sbrc r21,7
783 06d2 00C0 rjmp .L122
784 .L86:
785 06d4 CA01 movw r24,r20
786 06d6 9595 asr r25
787 06d8 8795 ror r24
788 06da 9595 asr r25
789 06dc 8795 ror r24
790 06de 9093 0000 sts (ServoNickOffset.2524)+1,r25
791 06e2 8093 0000 sts ServoNickOffset.2524,r24
792 06e6 9093 0000 sts (ServoNickValue)+1,r25
793 06ea 8093 0000 sts ServoNickValue,r24
794 06ee 8091 0000 lds r24,EE_Parameter+76
795 06f2 80FF sbrs r24,0
796 06f4 00C0 rjmp .L87
797 06f6 C090 0000 lds r12,ServoNickValue
798 06fa D090 0000 lds r13,(ServoNickValue)+1
799 06fe E090 0000 lds r14,EE_Parameter+35
800 0702 FF24 clr r15
801 0704 00E0 ldi r16,lo8(0)
802 0706 10E0 ldi r17,hi8(0)
803 0708 6091 0000 lds r22,IntegralNick
804 070c 7091 0000 lds r23,(IntegralNick)+1
805 0710 8091 0000 lds r24,(IntegralNick)+2
806 0714 9091 0000 lds r25,(IntegralNick)+3
807 0718 20E8 ldi r18,lo8(128)
808 071a 30E0 ldi r19,hi8(128)
809 071c 40E0 ldi r20,hlo8(128)
810 071e 50E0 ldi r21,hhi8(128)
811 0720 0E94 0000 call __divmodsi4
812 0724 C801 movw r24,r16
813 0726 B701 movw r22,r14
814 0728 0E94 0000 call __mulsi3
815 072c 660F lsl r22
816 072e 771F rol r23
817 0730 881F rol r24
818 0732 991F rol r25
819 0734 660F lsl r22
820 0736 771F rol r23
821 0738 881F rol r24
822 073a 991F rol r25
823 073c 20E0 ldi r18,lo8(256)
824 073e 31E0 ldi r19,hi8(256)
825 0740 40E0 ldi r20,hlo8(256)
826 0742 50E0 ldi r21,hhi8(256)
827 0744 0E94 0000 call __divmodsi4
828 0748 C20E add r12,r18
829 074a D31E adc r13,r19
830 074c D092 0000 sts (ServoNickValue)+1,r13
831 0750 C092 0000 sts ServoNickValue,r12
832 .L89:
833 0754 8091 0000 lds r24,EE_Parameter+36
834 0758 282F mov r18,r24
835 075a 30E0 ldi r19,lo8(0)
836 075c 220F lsl r18
837 075e 331F rol r19
838 0760 220F lsl r18
839 0762 331F rol r19
840 0764 8091 0000 lds r24,ServoNickValue
841 0768 9091 0000 lds r25,(ServoNickValue)+1
842 076c 8217 cp r24,r18
843 076e 9307 cpc r25,r19
844 0770 04F0 brlt .L116
845 0772 8091 0000 lds r24,EE_Parameter+37
846 0776 282F mov r18,r24
847 0778 30E0 ldi r19,lo8(0)
848 077a 220F lsl r18
849 077c 331F rol r19
850 077e 220F lsl r18
851 0780 331F rol r19
852 0782 8091 0000 lds r24,ServoNickValue
853 0786 9091 0000 lds r25,(ServoNickValue)+1
854 078a 2817 cp r18,r24
855 078c 3907 cpc r19,r25
856 078e 04F4 brge .L92
857 .L116:
858 0790 3093 0000 sts (ServoNickValue)+1,r19
859 0794 2093 0000 sts ServoNickValue,r18
860 .L92:
861 0798 8091 0000 lds r24,ServoNickValue
862 079c 9091 0000 lds r25,(ServoNickValue)+1
863 07a0 8755 subi r24,lo8(-(425))
864 07a2 9E4F sbci r25,hi8(-(425))
865 07a4 9093 0000 sts (RemainingPulse.2521)+1,r25
866 07a8 8093 0000 sts RemainingPulse.2521,r24
867 07ac 8091 0000 lds r24,ServoNickValue
868 07b0 9091 0000 lds r25,(ServoNickValue)+1
869 07b4 97FD sbrc r25,7
870 07b6 00C0 rjmp .L123
871 .L94:
872 07b8 9595 asr r25
873 07ba 8795 ror r24
874 07bc 9595 asr r25
875 07be 8795 ror r24
876 07c0 9093 0000 sts (ServoNickValue)+1,r25
877 07c4 8093 0000 sts ServoNickValue,r24
878 07c8 8091 0000 lds r24,ServoNickValue
879 07cc 9091 0000 lds r25,(ServoNickValue)+1
880 07d0 9093 0000 sts (DebugOut+42)+1,r25
881 07d4 8093 0000 sts DebugOut+42,r24
882 07d8 00C0 rjmp .L95
883 .L96:
884 07da 81E0 ldi r24,hi8(375)
885 07dc 2737 cpi r18,lo8(375)
886 07de 3807 cpc r19,r24
887 07e0 00F0 brlo .+2
888 07e2 00C0 rjmp .L98
889 07e4 27E7 ldi r18,lo8(375)
890 07e6 31E0 ldi r19,hi8(375)
891 07e8 3093 0000 sts (RemainingPulse.2521)+1,r19
892 07ec 2093 0000 sts RemainingPulse.2521,r18
893 07f0 00C0 rjmp .L98
894 .L118:
895 07f2 4D5F subi r20,lo8(-(3))
896 07f4 5F4F sbci r21,hi8(-(3))
897 07f6 00C0 rjmp .L64
898 .L119:
899 07f8 0396 adiw r24,3
900 07fa 00C0 rjmp .L72
901 .L87:
902 07fc C090 0000 lds r12,ServoNickValue
903 0800 D090 0000 lds r13,(ServoNickValue)+1
904 0804 E090 0000 lds r14,EE_Parameter+35
905 0808 FF24 clr r15
906 080a 00E0 ldi r16,lo8(0)
907 080c 10E0 ldi r17,hi8(0)
908 080e 6091 0000 lds r22,IntegralNick
909 0812 7091 0000 lds r23,(IntegralNick)+1
910 0816 8091 0000 lds r24,(IntegralNick)+2
911 081a 9091 0000 lds r25,(IntegralNick)+3
912 081e 20E8 ldi r18,lo8(128)
913 0820 30E0 ldi r19,hi8(128)
914 0822 40E0 ldi r20,hlo8(128)
915 0824 50E0 ldi r21,hhi8(128)
916 0826 0E94 0000 call __divmodsi4
917 082a C801 movw r24,r16
918 082c B701 movw r22,r14
919 082e 0E94 0000 call __mulsi3
920 0832 660F lsl r22
921 0834 771F rol r23
922 0836 881F rol r24
923 0838 991F rol r25
924 083a 660F lsl r22
925 083c 771F rol r23
926 083e 881F rol r24
927 0840 991F rol r25
928 0842 20E0 ldi r18,lo8(256)
929 0844 31E0 ldi r19,hi8(256)
930 0846 40E0 ldi r20,hlo8(256)
931 0848 50E0 ldi r21,hhi8(256)
932 084a 0E94 0000 call __divmodsi4
933 084e C21A sub r12,r18
934 0850 D30A sbc r13,r19
935 0852 D092 0000 sts (ServoNickValue)+1,r13
936 0856 C092 0000 sts ServoNickValue,r12
937 085a 00C0 rjmp .L89
938 .L123:
939 085c 0396 adiw r24,3
940 085e 00C0 rjmp .L94
941 .L122:
942 0860 4D5F subi r20,lo8(-(3))
943 0862 5F4F sbci r21,hi8(-(3))
944 0864 00C0 rjmp .L86
945 .L111:
946 /* epilogue: frame size=0 */
947 0866 FF91 pop r31
948 0868 EF91 pop r30
949 086a BF91 pop r27
950 086c AF91 pop r26
951 086e 9F91 pop r25
952 0870 8F91 pop r24
953 0872 7F91 pop r23
954 0874 6F91 pop r22
955 0876 5F91 pop r21
956 0878 4F91 pop r20
957 087a 3F91 pop r19
958 087c 2F91 pop r18
959 087e 1F91 pop r17
960 0880 0F91 pop r16
961 0882 FF90 pop r15
962 0884 EF90 pop r14
963 0886 DF90 pop r13
964 0888 CF90 pop r12
965 088a 0F90 pop __tmp_reg__
966 088c 0FBE out __SREG__,__tmp_reg__
967 088e 0F90 pop __tmp_reg__
968 0890 1F90 pop __zero_reg__
969 0892 1895 reti
970 /* epilogue end (size=23) */
971 /* function __vector_9 size 765 (719) */
973 .global CountMilliseconds
974 .global CountMilliseconds
975 .section .bss
978 CountMilliseconds:
979 0000 0000 .skip 2,0
980 .global UpdateMotor
981 .global UpdateMotor
984 UpdateMotor:
985 0002 00 .skip 1,0
986 .global cntKompass
987 .global cntKompass
990 cntKompass:
991 0003 0000 .skip 2,0
992 .global beeptime
993 .global beeptime
996 beeptime:
997 0005 0000 .skip 2,0
998 .global SendSPI
999 .global SendSPI
1002 SendSPI:
1003 0007 00 .skip 1,0
1004 .global ServoActive
1005 .global ServoActive
1008 ServoActive:
1009 0008 00 .skip 1,0
1010 .global BeepMuster
1011 .data
1014 BeepMuster:
1015 0000 FFFF .word -1
1016 .global ServoValue
1017 .global ServoValue
1018 .section .bss
1021 ServoValue:
1022 0009 0000 .skip 2,0
1023 .global ServoNickValue
1024 .global ServoNickValue
1027 ServoNickValue:
1028 000b 0000 .skip 2,0
1029 .global ServoRollValue
1030 .global ServoRollValue
1033 ServoRollValue:
1034 000d 0000 .skip 2,0
1035 .data
1038 ServoNickOffset.2524:
1039 0002 FC01 .word 508
1040 .lcomm ServoIndex.2523,1
1041 .lcomm ServoFrameTime.2522,2
1042 .lcomm RemainingPulse.2521,2
1043 .lcomm PulseOutput.2520,1
1044 .lcomm cnt.2378,1
1047 cnt_1ms.2377:
1048 0004 01 .byte 1
1049 .lcomm tim_main,2
1050 /* File "timer0.c": code 1103 = 0x044f (1015), prologues 41, epilogues 47 */
DEFINED SYMBOLS
*ABS*:00000000 timer0.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:12 .text:00000000 __vector_18
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1002 .bss:00000007 SendSPI
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1043 .bss:00000015 cnt.2378
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:996 .bss:00000005 beeptime
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1014 .data:00000000 BeepMuster
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:990 .bss:00000003 cntKompass
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1047 .data:00000004 cnt_1ms.2377
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:984 .bss:00000002 UpdateMotor
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:978 .bss:00000000 CountMilliseconds
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:188 .text:000001ac SetDelay
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:204 .text:000001be CheckDelay
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:223 .text:000001d6 Delay_ms
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:244 .text:000001f0 Delay_ms_Mess
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:273 .text:0000021e TIMER2_Init
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:322 .text:0000026e Timer_Init
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1044 .bss:00000016 tim_main
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:351 .text:0000029c __vector_9
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1042 .bss:00000014 PulseOutput.2520
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1041 .bss:00000012 RemainingPulse.2521
.bss:0000000f ServoIndex.2523
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1040 .bss:00000010 ServoFrameTime.2522
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1038 .data:00000002 ServoNickOffset.2524
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1027 .bss:0000000b ServoNickValue
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1008 .bss:00000008 ServoActive
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1021 .bss:00000009 ServoValue
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccXb1Mvj.s:1033 .bss:0000000d ServoRollValue
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
PlatinenVersion
EE_Parameter
__udivmodhi4
KompassValue
KompassStartwert
__divmodhi4
KompassRichtung
AdReady
Parameter_ServoNickControl
IntegralNick
__divmodsi4
__mulsi3
DebugOut
SenderOkay
PPM_in
/branches/v0.72p kmpec/twimaster.c
0,0 → 1,376
/*############################################################################
############################################################################*/
 
#include "main.h"
 
volatile unsigned char twi_state = 0;
unsigned char motor = 0;
unsigned char motorread = 0;
unsigned char motor_rx[16];
 
//############################################################################
//Initzialisieren der I2C (TWI) Schnittstelle
void i2c_init(void)
//############################################################################
{
TWSR = 0;
TWBR = ((SYSCLK/SCL_CLOCK)-16)/2;
}
 
//############################################################################
//Start I2C
char i2c_start(void)
//############################################################################
{
TWCR = (1<<TWSTA) | (1<<TWEN) | (1<<TWINT) | (1<<TWIE);
return(0);
}
 
//############################################################################
void i2c_stop(void)
//############################################################################
{
TWCR = (1<<TWEN) | (1<<TWSTO) | (1<<TWINT);
}
 
void i2c_reset(void)
//############################################################################
{
i2c_stop();
twi_state = 0;
motor = TWDR;
motor = 0;
TWCR = 0x80;
TWAMR = 0;
TWAR = 0;
TWDR = 0;
TWSR = 0;
TWBR = 0;
i2c_init();
i2c_start();
i2c_write_byte(0);
}
 
//############################################################################
char i2c_write_byte(char byte)
//############################################################################
{
TWSR = 0x00;
TWDR = byte;
TWCR = (1<<TWINT) | (1<<TWEN) | (1<<TWIE);
return(0);
}
 
#ifndef QUADRO
//############################################################################
SIGNAL (TWI_vect)
//############################################################################
{
switch (twi_state++)
{
case 0:
i2c_write_byte(0x52+(motor*2));
break;
case 1:
switch(motor++)
{
case 0:
i2c_write_byte(Motor1);
break;
case 1:
i2c_write_byte(Motor2);
break;
case 2:
i2c_write_byte(Motor3);
break;
case 3:
i2c_write_byte(Motor4);
break;
case 4:
i2c_write_byte(Motor5);
break;
case 5:
i2c_write_byte(Motor6);
break;
case 6:
i2c_write_byte(Motor7);
break;
case 7:
i2c_write_byte(Motor8);
break;
}
break;
case 2:
i2c_stop();
if (motor<8) twi_state = 0;
else motor = 0;
i2c_start();
break;
//Liest Daten von Motor
case 3:
i2c_write_byte(0x53+(motorread*2));
break;
case 4:
switch(motorread)
{
case 0:
i2c_write_byte(Motor1);
break;
case 1:
i2c_write_byte(Motor2);
break;
case 2:
i2c_write_byte(Motor3);
break;
case 3:
i2c_write_byte(Motor4);
break;
case 4:
i2c_write_byte(Motor5);
break;
case 5:
i2c_write_byte(Motor6);
break;
case 6:
i2c_write_byte(Motor7);
break;
case 7:
i2c_write_byte(Motor8);
break;
}
break;
case 5: //1 Byte vom Motor lesen
motor_rx[motorread] = TWDR;
 
case 6:
switch(motorread)
{
case 0:
i2c_write_byte(Motor1);
break;
case 1:
i2c_write_byte(Motor2);
break;
case 2:
i2c_write_byte(Motor3);
break;
case 3:
i2c_write_byte(Motor4);
break;
case 4:
i2c_write_byte(Motor5);
break;
case 5:
i2c_write_byte(Motor6);
break;
case 6:
i2c_write_byte(Motor7);
break;
case 7:
i2c_write_byte(Motor8);
break;
}
break;
case 7: //2 Byte vom Motor lesen
motor_rx[motorread+8] = TWDR;
motorread++;
if (motorread>7) motorread=0;
i2c_stop();
I2CTimeout = 10;
twi_state = 0;
break;
case 8: // Gyro-Offset
i2c_write_byte(0x98); // Address of the DAC
break;
case 9:
i2c_write_byte(0x10); // Update Channel A
break;
case 10:
i2c_write_byte(AnalogOffsetNick); // Value
break;
case 11:
i2c_write_byte(0x80); // Value
break;
case 12:
i2c_stop();
I2CTimeout = 10;
i2c_start();
break;
case 13:
i2c_write_byte(0x98); // Address of the DAC
break;
case 14:
i2c_write_byte(0x12); // Update Channel B
break;
case 15:
i2c_write_byte(AnalogOffsetRoll); // Value
break;
case 16:
i2c_write_byte(0x80); // Value
break;
case 17:
i2c_stop();
I2CTimeout = 10;
i2c_start();
break;
case 18:
i2c_write_byte(0x98); // Address of the DAC
break;
case 19:
i2c_write_byte(0x14); // Update Channel C
break;
case 20:
i2c_write_byte(AnalogOffsetGier); // Value
break;
case 21:
i2c_write_byte(0x80); // Value
break;
case 22:
i2c_stop();
I2CTimeout = 10;
twi_state = 0;
break;
}
TWCR |= 0x80;
}
#else
//############################################################################
SIGNAL (TWI_vect)
//############################################################################
{
switch (twi_state++)
{
case 0:
i2c_write_byte(0x52+(motor*2));
break;
case 1:
switch(motor++)
{
case 0:
i2c_write_byte(Motor_Vorne);
break;
case 1:
i2c_write_byte(Motor_Hinten);
break;
case 2:
i2c_write_byte(Motor_Rechts);
break;
case 3:
i2c_write_byte(Motor_Links);
break;
}
break;
case 2:
i2c_stop();
if (motor<4) twi_state = 0;
else motor = 0;
i2c_start();
break;
//Liest Daten von Motor
case 3:
i2c_write_byte(0x53+(motorread*2));
break;
case 4:
switch(motorread)
{
case 0:
i2c_write_byte(Motor_Vorne);
break;
case 1:
i2c_write_byte(Motor_Hinten);
break;
case 2:
i2c_write_byte(Motor_Rechts);
break;
case 3:
i2c_write_byte(Motor_Links);
break;
}
break;
case 5: //1 Byte vom Motor lesen
motor_rx[motorread] = TWDR;
 
case 6:
switch(motorread)
{
case 0:
i2c_write_byte(Motor_Vorne);
break;
case 1:
i2c_write_byte(Motor_Hinten);
break;
case 2:
i2c_write_byte(Motor_Rechts);
break;
case 3:
i2c_write_byte(Motor_Links);
break;
}
break;
case 7: //2 Byte vom Motor lesen
motor_rx[motorread+4] = TWDR;
motorread++;
if (motorread>3) motorread=0;
i2c_stop();
I2CTimeout = 10;
twi_state = 0;
break;
case 8: // Gyro-Offset
i2c_write_byte(0x98); // Address of the DAC
break;
case 9:
i2c_write_byte(0x10); // Update Channel A
break;
case 10:
i2c_write_byte(AnalogOffsetNick); // Value
break;
case 11:
i2c_write_byte(0x80); // Value
break;
case 12:
i2c_stop();
I2CTimeout = 10;
i2c_start();
break;
case 13:
i2c_write_byte(0x98); // Address of the DAC
break;
case 14:
i2c_write_byte(0x12); // Update Channel B
break;
case 15:
i2c_write_byte(AnalogOffsetRoll); // Value
break;
case 16:
i2c_write_byte(0x80); // Value
break;
case 17:
i2c_stop();
I2CTimeout = 10;
i2c_start();
break;
case 18:
i2c_write_byte(0x98); // Address of the DAC
break;
case 19:
i2c_write_byte(0x14); // Update Channel C
break;
case 20:
i2c_write_byte(AnalogOffsetGier); // Value
break;
case 21:
i2c_write_byte(0x80); // Value
break;
case 22:
i2c_stop();
I2CTimeout = 10;
twi_state = 0;
break;
}
TWCR |= 0x80;
}
#endif
/branches/v0.72p kmpec/twimaster.d
0,0 → 1,2
twimaster.o twimaster.d : twimaster.c main.h old_macros.h _Settings.h printf_P.h \
timer0.h uart.h analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/twimaster.h
0,0 → 1,33
/*############################################################################
############################################################################*/
 
#ifndef _I2C_MASTER_H
#define _I2C_MASTER_H
 
//############################################################################
 
// I2C Konstanten
#define SCL_CLOCK 200000L
#define I2C_TIMEOUT 30000
#define I2C_START 0x08
#define I2C_REPEATED_START 0x10
#define I2C_TX_SLA_ACK 0x18
#define I2C_TX_DATA_ACK 0x28
#define I2C_RX_SLA_ACK 0x40
#define I2C_RX_DATA_ACK 0x50
 
//############################################################################
 
extern volatile unsigned char twi_state;
extern unsigned char motor;
extern unsigned char motorread;
extern unsigned char motor_rx[16];
 
void i2c_reset(void);
extern void i2c_init (void); // I2C initialisieren
extern char i2c_start (void); // Start I2C
extern void i2c_stop (void); // Stop I2C
extern char i2c_write_byte (char byte); // 1 Byte schreiben
extern void i2c_reset(void);
 
#endif
/branches/v0.72p kmpec/twimaster.lst
0,0 → 1,365
1 .file "twimaster.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global i2c_init
12 i2c_init:
13 /* prologue: frame size=0 */
14 /* prologue end (size=0) */
15 0000 1092 B900 sts 185,__zero_reg__
16 0004 8AE2 ldi r24,lo8(42)
17 0006 8093 B800 sts 184,r24
18 /* epilogue: frame size=0 */
19 000a 0895 ret
20 /* epilogue end (size=1) */
21 /* function i2c_init size 6 (5) */
23 .global i2c_start
25 i2c_start:
26 /* prologue: frame size=0 */
27 /* prologue end (size=0) */
28 000c 85EA ldi r24,lo8(-91)
29 000e 8093 BC00 sts 188,r24
30 0012 80E0 ldi r24,lo8(0)
31 0014 90E0 ldi r25,hi8(0)
32 /* epilogue: frame size=0 */
33 0016 0895 ret
34 /* epilogue end (size=1) */
35 /* function i2c_start size 6 (5) */
37 .global i2c_stop
39 i2c_stop:
40 /* prologue: frame size=0 */
41 /* prologue end (size=0) */
42 0018 84E9 ldi r24,lo8(-108)
43 001a 8093 BC00 sts 188,r24
44 /* epilogue: frame size=0 */
45 001e 0895 ret
46 /* epilogue end (size=1) */
47 /* function i2c_stop size 4 (3) */
49 .global i2c_write_byte
51 i2c_write_byte:
52 /* prologue: frame size=0 */
53 /* prologue end (size=0) */
54 0020 1092 B900 sts 185,__zero_reg__
55 0024 8093 BB00 sts 187,r24
56 0028 85E8 ldi r24,lo8(-123)
57 002a 8093 BC00 sts 188,r24
58 002e 80E0 ldi r24,lo8(0)
59 0030 90E0 ldi r25,hi8(0)
60 /* epilogue: frame size=0 */
61 0032 0895 ret
62 /* epilogue end (size=1) */
63 /* function i2c_write_byte size 10 (9) */
65 .global i2c_reset
67 i2c_reset:
68 /* prologue: frame size=0 */
69 /* prologue end (size=0) */
70 0034 0E94 0000 call i2c_stop
71 0038 1092 0000 sts twi_state,__zero_reg__
72 003c EBEB ldi r30,lo8(187)
73 003e F0E0 ldi r31,hi8(187)
74 0040 8081 ld r24,Z
75 0042 1092 0000 sts motor,__zero_reg__
76 0046 80E8 ldi r24,lo8(-128)
77 0048 8093 BC00 sts 188,r24
78 004c 1092 BD00 sts 189,__zero_reg__
79 0050 1092 BA00 sts 186,__zero_reg__
80 0054 1082 st Z,__zero_reg__
81 0056 1092 B900 sts 185,__zero_reg__
82 005a 1092 B800 sts 184,__zero_reg__
83 005e 0E94 0000 call i2c_init
84 0062 0E94 0000 call i2c_start
85 0066 80E0 ldi r24,lo8(0)
86 0068 0E94 0000 call i2c_write_byte
87 /* epilogue: frame size=0 */
88 006c 0895 ret
89 /* epilogue end (size=1) */
90 /* function i2c_reset size 29 (28) */
92 .global __vector_26
94 __vector_26:
95 /* prologue: frame size=0 */
96 006e 1F92 push __zero_reg__
97 0070 0F92 push __tmp_reg__
98 0072 0FB6 in __tmp_reg__,__SREG__
99 0074 0F92 push __tmp_reg__
100 0076 1124 clr __zero_reg__
101 0078 2F93 push r18
102 007a 3F93 push r19
103 007c 4F93 push r20
104 007e 5F93 push r21
105 0080 6F93 push r22
106 0082 7F93 push r23
107 0084 8F93 push r24
108 0086 9F93 push r25
109 0088 AF93 push r26
110 008a BF93 push r27
111 008c EF93 push r30
112 008e FF93 push r31
113 /* prologue end (size=17) */
114 0090 8091 0000 lds r24,twi_state
115 0094 8F5F subi r24,lo8(-(1))
116 0096 8093 0000 sts twi_state,r24
117 009a 8150 subi r24,lo8(-(-1))
118 009c E82F mov r30,r24
119 009e F0E0 ldi r31,lo8(0)
120 00a0 E731 cpi r30,23
121 00a2 F105 cpc r31,__zero_reg__
122 00a4 00F0 brlo .+2
123 00a6 00C0 rjmp .L12
124 00a8 E050 subi r30,lo8(-(gs(.L36)))
**** Warning:expression dangerous with linker stubs
125 00aa F040 sbci r31,hi8(-(gs(.L36)))
**** Warning:expression dangerous with linker stubs
126 00ac EE0F lsl r30
127 00ae FF1F rol r31
128 00b0 0590 lpm __tmp_reg__,Z+
129 00b2 F491 lpm r31,Z
130 00b4 E02D mov r30,__tmp_reg__
131 00b6 0994 ijmp
132 .data
133 .section .progmem.gcc_sw_table, "a", @progbits
134 .p2align 1
135 .L36:
136 .data
137 .section .progmem.gcc_sw_table, "a", @progbits
138 .p2align 1
139 0000 0000 .word gs(.L13)
140 0002 0000 .word gs(.L14)
141 0004 0000 .word gs(.L15)
142 0006 0000 .word gs(.L16)
143 0008 0000 .word gs(.L17)
144 000a 0000 .word gs(.L18)
145 000c 0000 .word gs(.L55)
146 000e 0000 .word gs(.L20)
147 0010 0000 .word gs(.L31)
148 0012 0000 .word gs(.L22)
149 0014 0000 .word gs(.L23)
150 0016 0000 .word gs(.L34)
151 0018 0000 .word gs(.L30)
152 001a 0000 .word gs(.L31)
153 001c 0000 .word gs(.L27)
154 001e 0000 .word gs(.L28)
155 0020 0000 .word gs(.L34)
156 0022 0000 .word gs(.L30)
157 0024 0000 .word gs(.L31)
158 0026 0000 .word gs(.L32)
159 0028 0000 .word gs(.L33)
160 002a 0000 .word gs(.L34)
161 002c 0000 .word gs(.L35)
162 .text
163 .L18:
164 00b8 8091 BB00 lds r24,187
165 00bc 9091 0000 lds r25,motorread
166 00c0 E92F mov r30,r25
167 00c2 F0E0 ldi r31,lo8(0)
168 00c4 E050 subi r30,lo8(-(motor_rx))
169 00c6 F040 sbci r31,hi8(-(motor_rx))
170 00c8 8083 st Z,r24
171 .L19:
172 00ca 9130 cpi r25,lo8(1)
173 00cc 01F4 brne .+2
174 00ce 00C0 rjmp .L49
175 00d0 9130 cpi r25,lo8(1)
176 00d2 00F4 brsh .+2
177 00d4 00C0 rjmp .L48
178 00d6 9230 cpi r25,lo8(2)
179 00d8 01F4 brne .+2
180 00da 00C0 rjmp .L50
181 00dc 9330 cpi r25,lo8(3)
182 00de 01F0 breq .+2
183 00e0 00C0 rjmp .L12
184 .L51:
185 00e2 8091 0000 lds r24,Motor_Links
186 00e6 0E94 0000 call i2c_write_byte
187 00ea 00C0 rjmp .L12
188 .L31:
189 00ec 88E9 ldi r24,lo8(-104)
190 00ee 0E94 0000 call i2c_write_byte
191 00f2 00C0 rjmp .L12
192 .L34:
193 00f4 80E8 ldi r24,lo8(-128)
194 00f6 0E94 0000 call i2c_write_byte
195 00fa 00C0 rjmp .L12
196 .L30:
197 00fc 0E94 0000 call i2c_stop
198 0100 8AE0 ldi r24,lo8(10)
199 0102 90E0 ldi r25,hi8(10)
200 0104 9093 0000 sts (I2CTimeout)+1,r25
201 0108 8093 0000 sts I2CTimeout,r24
202 .L62:
203 010c 0E94 0000 call i2c_start
204 0110 00C0 rjmp .L12
205 .L20:
206 0112 9091 0000 lds r25,motorread
207 0116 8091 BB00 lds r24,187
208 011a E92F mov r30,r25
209 011c F0E0 ldi r31,lo8(0)
210 011e E050 subi r30,lo8(-(motor_rx))
211 0120 F040 sbci r31,hi8(-(motor_rx))
212 0122 8483 std Z+4,r24
213 0124 9F5F subi r25,lo8(-(1))
214 0126 9093 0000 sts motorread,r25
215 012a 9430 cpi r25,lo8(4)
216 012c 00F0 brlo .L35
217 012e 1092 0000 sts motorread,__zero_reg__
218 .L35:
219 0132 0E94 0000 call i2c_stop
220 0136 8AE0 ldi r24,lo8(10)
221 0138 90E0 ldi r25,hi8(10)
222 013a 9093 0000 sts (I2CTimeout)+1,r25
223 013e 8093 0000 sts I2CTimeout,r24
224 0142 1092 0000 sts twi_state,__zero_reg__
225 0146 00C0 rjmp .L12
226 .L15:
227 0148 0E94 0000 call i2c_stop
228 014c 8091 0000 lds r24,motor
229 0150 8430 cpi r24,lo8(4)
230 0152 00F0 brlo .+2
231 0154 00C0 rjmp .L41
232 0156 1092 0000 sts twi_state,__zero_reg__
233 015a 00C0 rjmp .L62
234 .L33:
235 015c 8091 0000 lds r24,AnalogOffsetGier
236 0160 0E94 0000 call i2c_write_byte
237 0164 00C0 rjmp .L12
238 .L23:
239 0166 8091 0000 lds r24,AnalogOffsetNick
240 016a 0E94 0000 call i2c_write_byte
241 016e 00C0 rjmp .L12
242 .L13:
243 0170 8091 0000 lds r24,motor
244 0174 880F lsl r24
245 0176 8E5A subi r24,lo8(-(82))
246 0178 0E94 0000 call i2c_write_byte
247 017c 00C0 rjmp .L12
248 .L22:
249 017e 80E1 ldi r24,lo8(16)
250 0180 0E94 0000 call i2c_write_byte
251 0184 00C0 rjmp .L12
252 .L17:
253 0186 8091 0000 lds r24,motorread
254 018a 8130 cpi r24,lo8(1)
255 018c 01F0 breq .L49
256 .L61:
257 018e 8130 cpi r24,lo8(1)
258 0190 00F0 brlo .L48
259 0192 8230 cpi r24,lo8(2)
260 0194 01F0 breq .L50
261 0196 8330 cpi r24,lo8(3)
262 0198 01F4 brne .L12
263 019a 00C0 rjmp .L51
264 .L14:
265 019c 8091 0000 lds r24,motor
266 01a0 8F5F subi r24,lo8(-(1))
267 01a2 8093 0000 sts motor,r24
268 01a6 8150 subi r24,lo8(-(-1))
269 01a8 8130 cpi r24,lo8(1)
270 01aa 01F4 brne .L61
271 .L49:
272 01ac 8091 0000 lds r24,Motor_Hinten
273 01b0 0E94 0000 call i2c_write_byte
274 01b4 00C0 rjmp .L12
275 .L32:
276 01b6 84E1 ldi r24,lo8(20)
277 01b8 0E94 0000 call i2c_write_byte
278 01bc 00C0 rjmp .L12
279 .L28:
280 01be 8091 0000 lds r24,AnalogOffsetRoll
281 01c2 0E94 0000 call i2c_write_byte
282 01c6 00C0 rjmp .L12
283 .L27:
284 01c8 82E1 ldi r24,lo8(18)
285 01ca 0E94 0000 call i2c_write_byte
286 01ce 00C0 rjmp .L12
287 .L16:
288 01d0 8091 0000 lds r24,motorread
289 01d4 880F lsl r24
290 01d6 8D5A subi r24,lo8(-(83))
291 01d8 0E94 0000 call i2c_write_byte
292 01dc 00C0 rjmp .L12
293 .L55:
294 01de 9091 0000 lds r25,motorread
295 01e2 00C0 rjmp .L19
296 .L48:
297 01e4 8091 0000 lds r24,Motor_Vorne
298 01e8 0E94 0000 call i2c_write_byte
299 01ec 00C0 rjmp .L12
300 .L50:
301 01ee 8091 0000 lds r24,Motor_Rechts
302 01f2 0E94 0000 call i2c_write_byte
303 01f6 00C0 rjmp .L12
304 .L41:
305 01f8 1092 0000 sts motor,__zero_reg__
306 01fc 00C0 rjmp .L62
307 .L12:
308 01fe 8091 BC00 lds r24,188
309 0202 8068 ori r24,lo8(-128)
310 0204 8093 BC00 sts 188,r24
311 /* epilogue: frame size=0 */
312 0208 FF91 pop r31
313 020a EF91 pop r30
314 020c BF91 pop r27
315 020e AF91 pop r26
316 0210 9F91 pop r25
317 0212 8F91 pop r24
318 0214 7F91 pop r23
319 0216 6F91 pop r22
320 0218 5F91 pop r21
321 021a 4F91 pop r20
322 021c 3F91 pop r19
323 021e 2F91 pop r18
324 0220 0F90 pop __tmp_reg__
325 0222 0FBE out __SREG__,__tmp_reg__
326 0224 0F90 pop __tmp_reg__
327 0226 1F90 pop __zero_reg__
328 0228 1895 reti
329 /* epilogue end (size=17) */
330 /* function __vector_26 size 245 (211) */
332 .global twi_state
333 .global twi_state
334 .section .bss
337 twi_state:
338 0000 00 .skip 1,0
339 .global motor
340 .global motor
343 motor:
344 0001 00 .skip 1,0
345 .global motorread
346 .global motorread
349 motorread:
350 0002 00 .skip 1,0
351 .comm motor_rx,16,1
352 /* File "twimaster.c": code 300 = 0x012c ( 261), prologues 17, epilogues 22 */
DEFINED SYMBOLS
*ABS*:00000000 twimaster.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:12 .text:00000000 i2c_init
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:25 .text:0000000c i2c_start
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:39 .text:00000018 i2c_stop
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:51 .text:00000020 i2c_write_byte
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:67 .text:00000034 i2c_reset
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:337 .bss:00000000 twi_state
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:343 .bss:00000001 motor
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:94 .text:0000006e __vector_26
C:\DOKUME~1\DPeters\LOKALE~1\Temp/ccactjaa.s:349 .bss:00000002 motorread
*COM*:00000010 motor_rx
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
Motor_Links
I2CTimeout
AnalogOffsetGier
AnalogOffsetNick
Motor_Hinten
AnalogOffsetRoll
Motor_Vorne
Motor_Rechts
/branches/v0.72p kmpec/uart.c
0,0 → 1,543
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// + Copyright (c) 04.2007 Holger Buss
// + only for non-profit use
// + www.MikroKopter.com
// + see the File "License.txt" for further Informations
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#include <stdarg.h>
#include <string.h>
#include "main.h"
#include "uart.h"
 
 
#define FC_ADDRESS 1
#define NC_ADDRESS 2
#define MK3MAG_ADDRESS 3
 
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 SendeBuffer[MAX_SENDE_BUFF];
unsigned volatile char RxdBuffer[MAX_EMPFANGS_BUFF];
unsigned volatile char NMEABuffer[MAX_EMPFANGS_BUFF];
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 char *pRxData = 0;
unsigned char RxDataLen = 0;
unsigned volatile char PC_DebugTimeout = 0;
 
unsigned char DebugTextAnforderung = 255;
unsigned char PcZugriff = 100;
unsigned char MotorTest[4] = {0,0,0,0};
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 Debug_Timer,Kompass_Timer,Timer3D;
unsigned int DebugDataIntervall = 200, Intervall3D = 0;
 
const unsigned char ANALOG_TEXT[32][16] =
{
//1234567890123456
"AngleNick ", //0
"AngleRoll ",
"AccNick ",
"AccRoll ",
"GyroGier ",
"Hight Value ", //5
"AccZ ",
"Gas ",
"Compass Value ",
"Voltage ",
"Empfang ", //10
"Gyro Kompass ",
"Motor Front ",
"Motor Rear ",
"Motor Left ",
"Motor Right ", //15
" ",
" ",
" ",
"MK3Mag CalState ",
"Servo ", //20
" ",
" ",
" ",
" ",
" ", //25
" ",
"Kalman_MaxDrift ",
" ",
" ",
"GPS_Nick ", //30
"GPS_Roll "
};
 
 
 
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++ Sende-Part der Datenübertragung
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SIGNAL(INT_VEC_TX)
{
static unsigned int ptr = 0;
unsigned char tmp_tx;
if(!UebertragungAbgeschlossen)
{
ptr++; // die [0] wurde schon gesendet
tmp_tx = SendeBuffer[ptr];
if((tmp_tx == '\r') || (ptr == MAX_SENDE_BUFF))
{
ptr = 0;
UebertragungAbgeschlossen = 1;
}
UDR = tmp_tx;
}
else ptr = 0;
}
 
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++ Empfangs-Part der Datenübertragung, incl. CRC-Auswertung
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SIGNAL(INT_VEC_RX)
{
static unsigned int crc;
static unsigned char crc1,crc2,buf_ptr;
static unsigned char UartState = 0;
unsigned char CrcOkay = 0;
 
SioTmp = UDR;
if(buf_ptr >= MAX_EMPFANGS_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') wdt_enable(WDTO_250MS); // Reset-Commando
}
}
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 += SendeBuffer[i];
}
tmpCRC %= 4096;
SendeBuffer[i++] = '=' + tmpCRC / 64;
SendeBuffer[i++] = '=' + tmpCRC % 64;
SendeBuffer[i++] = '\r';
UebertragungAbgeschlossen = 0;
UDR = SendeBuffer[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;
 
SendeBuffer[pt++] = '#'; // Startzeichen
SendeBuffer[pt++] = 'a' + address; // Adresse (a=0; b=1,...)
SendeBuffer[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;
SendeBuffer[pt++] = '=' + (a >> 2);
SendeBuffer[pt++] = '=' + (((a & 0x03) << 4) | ((b & 0xf0) >> 4));
SendeBuffer[pt++] = '=' + (((b & 0x0f) << 2) | ((c & 0xc0) >> 6));
SendeBuffer[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
memcpy(&MotorTest[0], (unsigned char *)pRxData, sizeof(MotorTest));
//while(!UebertragungAbgeschlossen);
//SendOutData('T', MeineSlaveAdresse, 0);
PcZugriff = 255;
break;
 
case 'p': // get PPM Channels
GetPPMChannelAnforderung = 1;
break;
 
case 'q':// "Get"-Anforderung für Settings
// Bei Get werden die vom PC einstellbaren Werte vom PC zurückgelesen
if(pRxData[0] == 0xFF)
{
pRxData[0] = GetActiveParamSetNumber();
}
// limit settings range
if(pRxData[0] < 1) pRxData[0] = 1; // limit to 5
else if(pRxData[0] > 5) pRxData[0] = 5; // limit to 5
// load requested parameter set
ReadParameterSet(pRxData[0], (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE);
 
while(!UebertragungAbgeschlossen);
tempchar1 = pRxData[0];
tempchar2 = EE_DATENREVISION;
SendOutData('Q', FC_ADDRESS, 3, &tempchar1, sizeof(tempchar1), &tempchar2, sizeof(tempchar2), (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE);
break;
 
case 's': // Parametersatz speichern
if((1 <= pRxData[0]) && (pRxData[0] <= 5) && (pRxData[1] == EE_DATENREVISION)) // check for setting to be in range
{
memcpy((unsigned char *) &EE_Parameter.Kanalbelegung[0], (unsigned char *)&pRxData[2], STRUCT_PARAM_LAENGE);
WriteParameterSet(pRxData[0], (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE);
Umschlag180Nick = (long) EE_Parameter.WinkelUmschlagNick * 2500L;
Umschlag180Roll = (long) EE_Parameter.WinkelUmschlagRoll * 2500L;
SetActiveParamSetNumber(pRxData[0]);
tempchar1 = GetActiveParamSetNumber();
Piep(tempchar1);
}
else
{
tempchar1 = 0; // mark in response an invlid setting
}
while(!UebertragungAbgeschlossen);
SendOutData('S', FC_ADDRESS, 1, &tempchar1, sizeof(tempchar1));
break;
 
} // case FC_ADDRESS:
 
default: // any Slave Address
 
switch(RxdBuffer[2])
{
// 't' comand placed here only for compatibility to BL
case 't':// Motortest
memcpy(&MotorTest[0], (unsigned char *)pRxData, sizeof(MotorTest));
while(!UebertragungAbgeschlossen);
SendOutData('T', MeineSlaveAdresse, 0);
PcZugriff = 255;
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;
break;
case 'd': // Poll the debug data
DebugDataIntervall = pRxData[0] * 10;
if(DebugDataIntervall > 0) DebugDataAnforderung = 1;
break;
 
case 'h':// x-1 Displayzeilen
PcZugriff = 255;
RemoteKeys |= pRxData[0];
if(RemoteKeys) DisplayLine = 0;
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;
}
break; // default:
}
NeuerDatensatzEmpfangen = 0;
pRxData = 0;
RxDataLen = 0;
}
 
//############################################################################
//Routine für die Serielle Ausgabe
int uart_putchar (char c)
//############################################################################
{
if (c == '\n')
uart_putchar('\r');
//Warten solange bis Zeichen gesendet wurde
loop_until_bit_is_set(USR, UDRE);
//Ausgabe des Zeichens
UDR = c;
 
return (0);
}
 
// --------------------------------------------------------------------------
void WriteProgramData(unsigned int pos, unsigned char wert)
{
//if (ProgramLocation == IN_RAM) Buffer[pos] = wert;
// else eeprom_write_byte(&EE_Buffer[pos], wert);
// Buffer[pos] = wert;
}
 
//############################################################################
//INstallation der Seriellen Schnittstelle
void UART_Init (void)
//############################################################################
{
//Enable TXEN im Register UCR TX-Data Enable & RX Enable
 
UCR=(1 << TXEN) | (1 << RXEN);
// UART Double Speed (U2X)
USR |= (1<<U2X);
// RX-Interrupt Freigabe
UCSRB |= (1<<RXCIE);
// TX-Interrupt Freigabe
UCSRB |= (1<<TXCIE);
 
//Teiler wird gesetzt
UBRR=(SYSCLK / (BAUD_RATE * 8L) - 1);
//UBRR = 33;
//öffnet einen Kanal für printf (STDOUT)
//fdevopen (uart_putchar, 0);
//sbi(PORTD,4);
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(DebugDisplayAnforderung && UebertragungAbgeschlossen)
{
Menu();
SendOutData('H', FC_ADDRESS, 2, &DisplayLine, sizeof(DisplayLine), &DisplayBuff[DisplayLine * 20], 20);
DisplayLine++;
if(DisplayLine >= 4) DisplayLine = 0;
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;
}
 
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('w', 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)
{
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);
SendOutData('C', FC_ADDRESS, 1, (unsigned char *) &Data3D,sizeof(Data3D));
Timer3D = SetDelay(Intervall3D);
}
if(DebugTextAnforderung != 255) // Texte für die Analogdaten
{
SendOutData('A', FC_ADDRESS, 2, (unsigned char *)&DebugTextAnforderung, sizeof(DebugTextAnforderung),(unsigned char *) ANALOG_TEXT[DebugTextAnforderung], 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;
}
 
}
 
/branches/v0.72p kmpec/uart.d
0,0 → 1,2
uart.o uart.d : uart.c main.h old_macros.h _Settings.h printf_P.h timer0.h uart.h \
analog.h twimaster.h menu.h rc.h fc.h gps.h spi.h led.h
/branches/v0.72p kmpec/uart.h
0,0 → 1,135
#ifndef _UART_H
#define _UART_H
 
#define MAX_SENDE_BUFF 150
#define MAX_EMPFANGS_BUFF 150
 
void BearbeiteRxDaten(void);
 
extern unsigned char DebugGetAnforderung;
extern unsigned volatile char SendeBuffer[MAX_SENDE_BUFF];
extern unsigned volatile char RxdBuffer[MAX_EMPFANGS_BUFF];
extern unsigned volatile char UebertragungAbgeschlossen;
extern unsigned volatile char PC_DebugTimeout;
extern unsigned volatile char NeueKoordinateEmpfangen;
extern unsigned char MeineSlaveAdresse;
extern unsigned char PcZugriff;
extern unsigned char RemotePollDisplayLine;
extern int Debug_Timer,Kompass_Timer;
extern void UART_Init (void);
extern int uart_putchar (char c);
extern void boot_program_page (uint32_t page, uint8_t *buf);
extern void DatenUebertragung(void);
extern void DecodeNMEA(void);
extern void BearbeiteRxDaten(void);
extern unsigned char MotorTest[4];
struct str_DebugOut
{
unsigned char Digital[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 reserve[8];
};
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;
 
struct str_VersionInfo
{
unsigned char SWMajor;
unsigned char SWMinor;
unsigned char ProtoMajor;
unsigned char ProtoMinor;
unsigned char SWPatch;
unsigned char Reserved[5];
};
extern struct str_VersionInfo VersionInfo;
 
//Die Baud_Rate der Seriellen Schnittstelle ist 9600 Baud
//#define BAUD_RATE 9600 //Baud Rate für die Serielle Schnittstelle
//#define BAUD_RATE 14400 //Baud Rate für die Serielle Schnittstelle
//#define BAUD_RATE 28800 //Baud Rate für die Serielle Schnittstelle
//#define BAUD_RATE 38400 //Baud Rate für die Serielle Schnittstelle
#define BAUD_RATE 57600 //Baud Rate für die Serielle Schnittstelle
 
//Anpassen der seriellen Schnittstellen Register wenn ein ATMega128 benutzt wird
#if defined (__AVR_ATmega128__)
# define USR UCSR0A
# define UCR UCSR0B
# define UDR UDR0
# define UBRR UBRR0L
# define EICR EICRB
#endif
 
#if defined (__AVR_ATmega32__)
# define USR UCSRA
# define UCR UCSRB
# define UBRR UBRRL
# define EICR EICRB
# define INT_VEC_RX SIG_UART_RECV
# define INT_VEC_TX SIG_UART_TRANS
#endif
 
#if defined (__AVR_ATmega644__)
# define USR UCSR0A
# define UCR UCSR0B
# define UDR UDR0
# define UBRR UBRR0L
# define EICR EICR0B
# define TXEN TXEN0
# define RXEN RXEN0
# define RXCIE RXCIE0
# define TXCIE TXCIE0
# define U2X U2X0
# define UCSRB UCSR0B
# define UDRE UDRE0
# define INT_VEC_RX SIG_USART_RECV
# define INT_VEC_TX SIG_USART_TRANS
#endif
 
#if defined (__AVR_ATmega644P__)
# define USR UCSR0A
# define UCR UCSR0B
# define UDR UDR0
# define UBRR UBRR0L
# define EICR EICR0B
# define TXEN TXEN0
# define RXEN RXEN0
# define RXCIE RXCIE0
# define TXCIE TXCIE0
# define U2X U2X0
# define UCSRB UCSR0B
# define UDRE UDRE0
# define INT_VEC_RX SIG_USART_RECV
# define INT_VEC_TX SIG_USART_TRANS
#endif
 
#endif //_UART_H
/branches/v0.72p kmpec/uart.lst
0,0 → 1,2196
1 .file "uart.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __tmp_reg__ = 0
6 __zero_reg__ = 1
7 .global __do_copy_data
8 .global __do_clear_bss
9 .text
10 .global __vector_22
12 __vector_22:
13 /* prologue: frame size=0 */
14 0000 1F92 push __zero_reg__
15 0002 0F92 push __tmp_reg__
16 0004 0FB6 in __tmp_reg__,__SREG__
17 0006 0F92 push __tmp_reg__
18 0008 1124 clr __zero_reg__
19 000a 8F93 push r24
20 000c 9F93 push r25
21 000e EF93 push r30
22 0010 FF93 push r31
23 /* prologue end (size=9) */
24 0012 8091 0000 lds r24,UebertragungAbgeschlossen
25 0016 8823 tst r24
26 0018 01F4 brne .L2
27 001a 8091 0000 lds r24,ptr.2394
28 001e 9091 0000 lds r25,(ptr.2394)+1
29 0022 0196 adiw r24,1
30 0024 9093 0000 sts (ptr.2394)+1,r25
31 0028 8093 0000 sts ptr.2394,r24
32 002c FC01 movw r30,r24
33 002e E050 subi r30,lo8(-(SendeBuffer))
34 0030 F040 sbci r31,hi8(-(SendeBuffer))
35 0032 E081 ld r30,Z
36 0034 ED30 cpi r30,lo8(13)
37 0036 01F0 breq .L4
38 0038 8639 cpi r24,150
39 003a 9105 cpc r25,__zero_reg__
40 003c 01F0 breq .L4
41 .L6:
42 003e E093 C600 sts 198,r30
43 0042 00C0 rjmp .L8
44 .L2:
45 0044 1092 0000 sts (ptr.2394)+1,__zero_reg__
46 0048 1092 0000 sts ptr.2394,__zero_reg__
47 004c 00C0 rjmp .L8
48 .L4:
49 004e 1092 0000 sts (ptr.2394)+1,__zero_reg__
50 0052 1092 0000 sts ptr.2394,__zero_reg__
51 0056 81E0 ldi r24,lo8(1)
52 0058 8093 0000 sts UebertragungAbgeschlossen,r24
53 005c 00C0 rjmp .L6
54 .L8:
55 /* epilogue: frame size=0 */
56 005e FF91 pop r31
57 0060 EF91 pop r30
58 0062 9F91 pop r25
59 0064 8F91 pop r24
60 0066 0F90 pop __tmp_reg__
61 0068 0FBE out __SREG__,__tmp_reg__
62 006a 0F90 pop __tmp_reg__
63 006c 1F90 pop __zero_reg__
64 006e 1895 reti
65 /* epilogue end (size=9) */
66 /* function __vector_22 size 56 (38) */
68 .global __vector_20
70 __vector_20:
71 /* prologue: frame size=0 */
72 0070 1F92 push __zero_reg__
73 0072 0F92 push __tmp_reg__
74 0074 0FB6 in __tmp_reg__,__SREG__
75 0076 0F92 push __tmp_reg__
76 0078 1124 clr __zero_reg__
77 007a 2F93 push r18
78 007c 3F93 push r19
79 007e 4F93 push r20
80 0080 8F93 push r24
81 0082 9F93 push r25
82 0084 AF93 push r26
83 0086 BF93 push r27
84 0088 CF93 push r28
85 008a DF93 push r29
86 008c EF93 push r30
87 008e FF93 push r31
88 /* prologue end (size=16) */
89 0090 8091 C600 lds r24,198
90 0094 8093 0000 sts SioTmp,r24
91 0098 4091 0000 lds r20,buf_ptr.2410
92 009c 4639 cpi r20,lo8(-106)
93 009e 00F0 brlo .L11
94 00a0 1092 0000 sts UartState.2411,__zero_reg__
95 .L11:
96 00a4 8091 0000 lds r24,SioTmp
97 00a8 8D30 cpi r24,lo8(13)
98 00aa 01F0 breq .L37
99 00ac 8091 0000 lds r24,UartState.2411
100 .L13:
101 00b0 8130 cpi r24,lo8(1)
102 00b2 01F4 brne .+2
103 00b4 00C0 rjmp .L26
104 00b6 8130 cpi r24,lo8(1)
105 00b8 00F0 brlo .L25
106 00ba 8230 cpi r24,lo8(2)
107 00bc 01F4 brne .+2
108 00be 00C0 rjmp .L38
109 00c0 1092 0000 sts UartState.2411,__zero_reg__
110 00c4 00C0 rjmp .L34
111 .L25:
112 00c6 8091 0000 lds r24,SioTmp
113 00ca 8332 cpi r24,lo8(35)
114 00cc 01F4 brne .+2
115 00ce 00C0 rjmp .L39
116 .L28:
117 00d0 8091 0000 lds r24,SioTmp
118 00d4 8093 0000 sts RxdBuffer,r24
119 00d8 81E0 ldi r24,lo8(1)
120 00da 8093 0000 sts buf_ptr.2410,r24
121 00de 8091 0000 lds r24,SioTmp
122 00e2 90E0 ldi r25,lo8(0)
123 00e4 9093 0000 sts (crc.2407)+1,r25
124 00e8 8093 0000 sts crc.2407,r24
125 00ec 00C0 rjmp .L34
126 .L37:
127 00ee 8091 0000 lds r24,UartState.2411
128 00f2 8230 cpi r24,lo8(2)
129 00f4 01F4 brne .L13
130 00f6 1092 0000 sts UartState.2411,__zero_reg__
131 00fa A42F mov r26,r20
132 00fc B0E0 ldi r27,lo8(0)
133 00fe FD01 movw r30,r26
134 0100 E050 subi r30,lo8(-(RxdBuffer-2))
135 0102 F040 sbci r31,hi8(-(RxdBuffer-2))
136 0104 3081 ld r19,Z
137 0106 ED01 movw r28,r26
138 0108 C050 subi r28,lo8(-(RxdBuffer-1))
139 010a D040 sbci r29,hi8(-(RxdBuffer-1))
140 010c 2881 ld r18,Y
141 010e 8091 0000 lds r24,crc.2407
142 0112 9091 0000 lds r25,(crc.2407)+1
143 0116 831B sub r24,r19
144 0118 9109 sbc r25,__zero_reg__
145 011a 821B sub r24,r18
146 011c 9109 sbc r25,__zero_reg__
147 011e 9F70 andi r25,hi8(4095)
148 0120 9093 0000 sts (crc.2407)+1,r25
149 0124 8093 0000 sts crc.2407,r24
150 0128 9C01 movw r18,r24
151 012a 0024 clr __tmp_reg__
152 012c 220F lsl r18
153 012e 331F rol r19
154 0130 001C rol __tmp_reg__
155 0132 220F lsl r18
156 0134 331F rol r19
157 0136 001C rol __tmp_reg__
158 0138 232F mov r18,r19
159 013a 302D mov r19,__tmp_reg__
160 013c 235C subi r18,lo8(-(61))
161 013e 2093 0000 sts crc1.2408,r18
162 0142 982F mov r25,r24
163 0144 9F73 andi r25,lo8(63)
164 0146 935C subi r25,lo8(-(61))
165 0148 9093 0000 sts crc2.2409,r25
166 014c 8081 ld r24,Z
167 014e 2817 cp r18,r24
168 0150 01F4 brne .+2
169 0152 00C0 rjmp .L40
170 .L16:
171 0154 8091 0000 lds r24,CntCrcError
172 0158 8F5F subi r24,lo8(-(1))
173 015a 8093 0000 sts CntCrcError,r24
174 015e 90E0 ldi r25,lo8(0)
175 .L19:
176 0160 8091 0000 lds r24,NeuerDatensatzEmpfangen
177 0164 8823 tst r24
178 0166 01F0 breq .+2
179 0168 00C0 rjmp .L34
180 016a 9923 tst r25
181 016c 01F4 brne .+2
182 016e 00C0 rjmp .L34
183 0170 81E0 ldi r24,lo8(1)
184 0172 8093 0000 sts NeuerDatensatzEmpfangen,r24
185 0176 4F5F subi r20,lo8(-(1))
186 0178 4093 0000 sts AnzahlEmpfangsBytes,r20
187 017c A050 subi r26,lo8(-(RxdBuffer))
188 017e B040 sbci r27,hi8(-(RxdBuffer))
189 0180 8DE0 ldi r24,lo8(13)
190 0182 8C93 st X,r24
191 0184 8091 0000 lds r24,RxdBuffer+2
192 0188 8235 cpi r24,lo8(82)
193 018a 01F0 breq .+2
194 018c 00C0 rjmp .L34
195 018e 88E1 ldi r24,lo8(24)
196 0190 90E0 ldi r25,hi8(24)
197 0192 2CE0 ldi r18,lo8(12)
198 /* #APP */
199 0194 0FB6 in __tmp_reg__,__SREG__
200 0196 F894 cli
201 0198 A895 wdr
202 019a 8093 6000 sts 96,r24
203 019e 0FBE out __SREG__,__tmp_reg__
204 01a0 2093 6000 sts 96,r18
205 /* #NOAPP */
206 01a4 00C0 rjmp .L34
207 .L38:
208 01a6 E42F mov r30,r20
209 01a8 F0E0 ldi r31,lo8(0)
210 01aa 8091 0000 lds r24,SioTmp
211 01ae E050 subi r30,lo8(-(RxdBuffer))
212 01b0 F040 sbci r31,hi8(-(RxdBuffer))
213 01b2 8083 st Z,r24
214 01b4 4639 cpi r20,lo8(-106)
215 01b6 00F0 brlo .L41
216 01b8 1092 0000 sts UartState.2411,__zero_reg__
217 .L33:
218 01bc 2091 0000 lds r18,SioTmp
219 01c0 8091 0000 lds r24,crc.2407
220 01c4 9091 0000 lds r25,(crc.2407)+1
221 01c8 820F add r24,r18
222 01ca 911D adc r25,__zero_reg__
223 01cc 9093 0000 sts (crc.2407)+1,r25
224 01d0 8093 0000 sts crc.2407,r24
225 01d4 00C0 rjmp .L34
226 .L26:
227 01d6 82E0 ldi r24,lo8(2)
228 01d8 8093 0000 sts UartState.2411,r24
229 01dc E42F mov r30,r20
230 01de F0E0 ldi r31,lo8(0)
231 01e0 8091 0000 lds r24,SioTmp
232 01e4 E050 subi r30,lo8(-(RxdBuffer))
233 01e6 F040 sbci r31,hi8(-(RxdBuffer))
234 01e8 8083 st Z,r24
235 01ea 4F5F subi r20,lo8(-(1))
236 01ec 4093 0000 sts buf_ptr.2410,r20
237 01f0 2091 0000 lds r18,SioTmp
238 01f4 8091 0000 lds r24,crc.2407
239 01f8 9091 0000 lds r25,(crc.2407)+1
240 01fc 820F add r24,r18
241 01fe 911D adc r25,__zero_reg__
242 0200 9093 0000 sts (crc.2407)+1,r25
243 0204 8093 0000 sts crc.2407,r24
244 0208 00C0 rjmp .L34
245 .L41:
246 020a 4F5F subi r20,lo8(-(1))
247 020c 4093 0000 sts buf_ptr.2410,r20
248 0210 00C0 rjmp .L33
249 .L39:
250 0212 8091 0000 lds r24,NeuerDatensatzEmpfangen
251 0216 8823 tst r24
252 0218 01F0 breq .+2
253 021a 00C0 rjmp .L28
254 021c 81E0 ldi r24,lo8(1)
255 021e 8093 0000 sts UartState.2411,r24
256 0222 00C0 rjmp .L28
257 .L40:
258 0224 8881 ld r24,Y
259 0226 9817 cp r25,r24
260 0228 01F0 breq .+2
261 022a 00C0 rjmp .L16
262 022c 91E0 ldi r25,lo8(1)
263 022e 00C0 rjmp .L19
264 .L34:
265 /* epilogue: frame size=0 */
266 0230 FF91 pop r31
267 0232 EF91 pop r30
268 0234 DF91 pop r29
269 0236 CF91 pop r28
270 0238 BF91 pop r27
271 023a AF91 pop r26
272 023c 9F91 pop r25
273 023e 8F91 pop r24
274 0240 4F91 pop r20
275 0242 3F91 pop r19
276 0244 2F91 pop r18
277 0246 0F90 pop __tmp_reg__
278 0248 0FBE out __SREG__,__tmp_reg__
279 024a 0F90 pop __tmp_reg__
280 024c 1F90 pop __zero_reg__
281 024e 1895 reti
282 /* epilogue end (size=16) */
283 /* function __vector_20 size 245 (213) */
285 .global AddCRC
287 AddCRC:
288 /* prologue: frame size=0 */
289 0250 CF93 push r28
290 0252 DF93 push r29
291 /* prologue end (size=2) */
292 0254 BC01 movw r22,r24
293 0256 892B or r24,r25
294 0258 01F0 breq .L51
295 025a 20E0 ldi r18,lo8(0)
296 025c 30E0 ldi r19,hi8(0)
297 025e 40E0 ldi r20,lo8(0)
298 0260 50E0 ldi r21,hi8(0)
299 .L46:
300 0262 FA01 movw r30,r20
301 0264 E050 subi r30,lo8(-(SendeBuffer))
302 0266 F040 sbci r31,hi8(-(SendeBuffer))
303 0268 8081 ld r24,Z
304 026a 280F add r18,r24
305 026c 311D adc r19,__zero_reg__
306 026e 4F5F subi r20,lo8(-(1))
307 0270 5F4F sbci r21,hi8(-(1))
308 0272 4617 cp r20,r22
309 0274 5707 cpc r21,r23
310 0276 01F4 brne .L46
311 0278 3F70 andi r19,hi8(4095)
312 027a C901 movw r24,r18
313 027c 0024 clr __tmp_reg__
314 027e 880F lsl r24
315 0280 991F rol r25
316 0282 001C rol __tmp_reg__
317 0284 880F lsl r24
318 0286 991F rol r25
319 0288 001C rol __tmp_reg__
320 028a 892F mov r24,r25
321 028c 902D mov r25,__tmp_reg__
322 028e 835C subi r24,lo8(-(61))
323 0290 DB01 movw r26,r22
324 0292 1196 adiw r26,1
325 0294 2F73 andi r18,lo8(63)
326 0296 235C subi r18,lo8(-(61))
327 0298 ED01 movw r28,r26
328 029a 2196 adiw r28,1
329 029c FB01 movw r30,r22
330 029e 00C0 rjmp .L45
331 .L51:
332 02a0 E0E0 ldi r30,lo8(0)
333 02a2 F0E0 ldi r31,hi8(0)
334 02a4 8DE3 ldi r24,lo8(61)
335 02a6 A1E0 ldi r26,lo8(1)
336 02a8 B0E0 ldi r27,hi8(1)
337 02aa 2DE3 ldi r18,lo8(61)
338 02ac C2E0 ldi r28,lo8(2)
339 02ae D0E0 ldi r29,hi8(2)
340 .L45:
341 02b0 E050 subi r30,lo8(-(SendeBuffer))
342 02b2 F040 sbci r31,hi8(-(SendeBuffer))
343 02b4 8083 st Z,r24
344 02b6 A050 subi r26,lo8(-(SendeBuffer))
345 02b8 B040 sbci r27,hi8(-(SendeBuffer))
346 02ba 2C93 st X,r18
347 02bc C050 subi r28,lo8(-(SendeBuffer))
348 02be D040 sbci r29,hi8(-(SendeBuffer))
349 02c0 8DE0 ldi r24,lo8(13)
350 02c2 8883 st Y,r24
351 02c4 1092 0000 sts UebertragungAbgeschlossen,__zero_reg__
352 02c8 8091 0000 lds r24,SendeBuffer
353 02cc 8093 C600 sts 198,r24
354 /* epilogue: frame size=0 */
355 02d0 DF91 pop r29
356 02d2 CF91 pop r28
357 02d4 0895 ret
358 /* epilogue end (size=3) */
359 /* function AddCRC size 68 (63) */
361 .global Decode64
363 Decode64:
364 /* prologue: frame size=0 */
365 /* prologue end (size=0) */
366 02d6 4091 0000 lds r20,AnzahlEmpfangsBytes
367 02da 4650 subi r20,lo8(-(-6))
368 02dc 01F4 brne .+2
369 02de 00C0 rjmp .L69
370 02e0 33E0 ldi r19,lo8(3)
371 02e2 63E0 ldi r22,lo8(3)
372 02e4 00C0 rjmp .L56
373 .L70:
374 02e6 282F mov r18,r24
375 02e8 2D53 subi r18,lo8(-(-61))
376 02ea E62F mov r30,r22
377 02ec F0E0 ldi r31,lo8(0)
378 02ee 822F mov r24,r18
379 02f0 8295 swap r24
380 02f2 8F70 andi r24,lo8(15)
381 02f4 9D53 subi r25,lo8(-(-61))
382 02f6 990F lsl r25
383 02f8 990F lsl r25
384 02fa 982B or r25,r24
385 02fc E050 subi r30,lo8(-(RxdBuffer))
386 02fe F040 sbci r31,hi8(-(RxdBuffer))
387 0300 9083 st Z,r25
388 0302 E62F mov r30,r22
389 0304 EF5F subi r30,lo8(-(1))
390 0306 4130 cpi r20,lo8(1)
391 0308 01F0 breq .L68
392 030a 972F mov r25,r23
393 030c 9D53 subi r25,lo8(-(-61))
394 030e F0E0 ldi r31,lo8(0)
395 0310 2295 swap r18
396 0312 207F andi r18,lo8(-16)
397 0314 892F mov r24,r25
398 0316 8695 lsr r24
399 0318 8695 lsr r24
400 031a 282B or r18,r24
401 031c E050 subi r30,lo8(-(RxdBuffer))
402 031e F040 sbci r31,hi8(-(RxdBuffer))
403 0320 2083 st Z,r18
404 0322 E62F mov r30,r22
405 0324 EE5F subi r30,lo8(-(2))
406 0326 4350 subi r20,lo8(-(-3))
407 0328 4F3F cpi r20,lo8(-1)
408 032a 01F0 breq .L68
409 032c F0E0 ldi r31,lo8(0)
410 032e 9295 swap r25
411 0330 990F lsl r25
412 0332 990F lsl r25
413 0334 907C andi r25,lo8(-64)
414 0336 5D53 subi r21,lo8(-(-61))
415 0338 952B or r25,r21
416 033a E050 subi r30,lo8(-(RxdBuffer))
417 033c F040 sbci r31,hi8(-(RxdBuffer))
418 033e 9083 st Z,r25
419 0340 6D5F subi r22,lo8(-(3))
420 0342 4423 tst r20
421 0344 01F0 breq .L67
422 .L56:
423 0346 E32F mov r30,r19
424 0348 F0E0 ldi r31,lo8(0)
425 034a E050 subi r30,lo8(-(RxdBuffer))
426 034c F040 sbci r31,hi8(-(RxdBuffer))
427 034e 9081 ld r25,Z
428 0350 3F5F subi r19,lo8(-(1))
429 0352 E32F mov r30,r19
430 0354 F0E0 ldi r31,lo8(0)
431 0356 E050 subi r30,lo8(-(RxdBuffer))
432 0358 F040 sbci r31,hi8(-(RxdBuffer))
433 035a 8081 ld r24,Z
434 035c 3F5F subi r19,lo8(-(1))
435 035e E32F mov r30,r19
436 0360 F0E0 ldi r31,lo8(0)
437 0362 E050 subi r30,lo8(-(RxdBuffer))
438 0364 F040 sbci r31,hi8(-(RxdBuffer))
439 0366 7081 ld r23,Z
440 0368 3F5F subi r19,lo8(-(1))
441 036a E32F mov r30,r19
442 036c F0E0 ldi r31,lo8(0)
443 036e E050 subi r30,lo8(-(RxdBuffer))
444 0370 F040 sbci r31,hi8(-(RxdBuffer))
445 0372 5081 ld r21,Z
446 0374 3F5F subi r19,lo8(-(1))
447 0376 4423 tst r20
448 0378 01F0 breq .+2
449 037a 00C0 rjmp .L70
450 .L67:
451 037c E62F mov r30,r22
452 .L68:
453 037e E350 subi r30,lo8(-(-3))
454 0380 00C0 rjmp .L55
455 .L69:
456 0382 E0E0 ldi r30,lo8(0)
457 .L55:
458 0384 80E0 ldi r24,lo8(RxdBuffer+3)
459 0386 90E0 ldi r25,hi8(RxdBuffer+3)
460 0388 9093 0000 sts (pRxData)+1,r25
461 038c 8093 0000 sts pRxData,r24
462 0390 E093 0000 sts RxDataLen,r30
463 /* epilogue: frame size=0 */
464 0394 0895 ret
465 /* epilogue end (size=1) */
466 /* function Decode64 size 97 (96) */
468 .global uart_putchar
470 uart_putchar:
471 /* prologue: frame size=0 */
472 0396 1F93 push r17
473 /* prologue end (size=1) */
474 0398 182F mov r17,r24
475 039a 8A30 cpi r24,lo8(10)
476 039c 01F0 breq .L79
477 .L76:
478 039e 8091 C000 lds r24,192
479 03a2 85FF sbrs r24,5
480 03a4 00C0 rjmp .L76
481 03a6 00C0 rjmp .L81
482 .L79:
483 03a8 8DE0 ldi r24,lo8(13)
484 03aa 0E94 0000 call uart_putchar
485 03ae 00C0 rjmp .L76
486 .L81:
487 03b0 1093 C600 sts 198,r17
488 03b4 80E0 ldi r24,lo8(0)
489 03b6 90E0 ldi r25,hi8(0)
490 /* epilogue: frame size=0 */
491 03b8 1F91 pop r17
492 03ba 0895 ret
493 /* epilogue end (size=2) */
494 /* function uart_putchar size 19 (16) */
496 .global WriteProgramData
498 WriteProgramData:
499 /* prologue: frame size=0 */
500 /* prologue end (size=0) */
501 /* epilogue: frame size=0 */
502 03bc 0895 ret
503 /* epilogue end (size=1) */
504 /* function WriteProgramData size 1 (0) */
506 .global UART_Init
508 UART_Init:
509 /* prologue: frame size=0 */
510 /* prologue end (size=0) */
511 03be E1EC ldi r30,lo8(193)
512 03c0 F0E0 ldi r31,hi8(193)
513 03c2 88E1 ldi r24,lo8(24)
514 03c4 8083 st Z,r24
515 03c6 A0EC ldi r26,lo8(192)
516 03c8 B0E0 ldi r27,hi8(192)
517 03ca 8C91 ld r24,X
518 03cc 8260 ori r24,lo8(2)
519 03ce 8C93 st X,r24
520 03d0 8081 ld r24,Z
521 03d2 8068 ori r24,lo8(-128)
522 03d4 8083 st Z,r24
523 03d6 8081 ld r24,Z
524 03d8 8064 ori r24,lo8(64)
525 03da 8083 st Z,r24
526 03dc 8AE2 ldi r24,lo8(42)
527 03de 8093 C400 sts 196,r24
528 03e2 8091 0000 lds r24,DebugDataIntervall
529 03e6 9091 0000 lds r25,(DebugDataIntervall)+1
530 03ea 0E94 0000 call SetDelay
531 03ee 9093 0000 sts (Debug_Timer)+1,r25
532 03f2 8093 0000 sts Debug_Timer,r24
533 03f6 8CED ldi r24,lo8(220)
534 03f8 90E0 ldi r25,hi8(220)
535 03fa 0E94 0000 call SetDelay
536 03fe 9093 0000 sts (Kompass_Timer)+1,r25
537 0402 8093 0000 sts Kompass_Timer,r24
538 0406 1092 0000 sts VersionInfo,__zero_reg__
539 040a 88E4 ldi r24,lo8(72)
540 040c 8093 0000 sts VersionInfo+1,r24
541 0410 8FE0 ldi r24,lo8(15)
542 0412 8093 0000 sts VersionInfo+4,r24
543 0416 8AE0 ldi r24,lo8(10)
544 0418 8093 0000 sts VersionInfo+2,r24
545 041c 1092 0000 sts VersionInfo+3,__zero_reg__
546 0420 1092 0000 sts (pRxData)+1,__zero_reg__
547 0424 1092 0000 sts pRxData,__zero_reg__
548 0428 1092 0000 sts RxDataLen,__zero_reg__
549 /* epilogue: frame size=0 */
550 042c 0895 ret
551 /* epilogue end (size=1) */
552 /* function UART_Init size 56 (55) */
554 .global SendOutData
556 SendOutData:
557 /* prologue: frame size=2 */
558 042e EF92 push r14
559 0430 FF92 push r15
560 0432 0F93 push r16
561 0434 1F93 push r17
562 0436 CF93 push r28
563 0438 DF93 push r29
564 043a CDB7 in r28,__SP_L__
565 043c DEB7 in r29,__SP_H__
566 043e 2297 sbiw r28,2
567 0440 0FB6 in __tmp_reg__,__SREG__
568 0442 F894 cli
569 0444 DEBF out __SP_H__,r29
570 0446 0FBE out __SREG__,__tmp_reg__
571 0448 CDBF out __SP_L__,r28
572 /* prologue end (size=14) */
573 044a 9C85 ldd r25,Y+12
574 044c 4D85 ldd r20,Y+13
575 044e 83E2 ldi r24,lo8(35)
576 0450 8093 0000 sts SendeBuffer,r24
577 0454 9F59 subi r25,lo8(-(97))
578 0456 9093 0000 sts SendeBuffer+1,r25
579 045a 8B85 ldd r24,Y+11
580 045c 8093 0000 sts SendeBuffer+2,r24
581 0460 CE01 movw r24,r28
582 0462 0E96 adiw r24,14
583 0464 9A83 std Y+2,r25
584 0466 8983 std Y+1,r24
585 0468 4423 tst r20
586 046a 01F4 brne .L114
587 .L87:
588 046c 63E0 ldi r22,lo8(3)
589 046e 70E0 ldi r23,hi8(3)
590 0470 00C0 rjmp .L110
591 .L114:
592 0472 0E85 ldd r16,Y+14
593 0474 1F85 ldd r17,Y+15
594 0476 CE01 movw r24,r28
595 0478 4296 adiw r24,18
596 047a 9A83 std Y+2,r25
597 047c 8983 std Y+1,r24
598 047e 2889 ldd r18,Y+16
599 0480 3989 ldd r19,Y+17
600 0482 2115 cp r18,__zero_reg__
601 0484 3105 cpc r19,__zero_reg__
602 0486 01F0 breq .L87
603 0488 F42E mov r15,r20
604 048a FA94 dec r15
605 048c 63E0 ldi r22,lo8(3)
606 048e 70E0 ldi r23,hi8(3)
607 0490 A0E0 ldi r26,lo8(0)
608 0492 00C0 rjmp .L90
609 .L115:
610 0494 EA2F mov r30,r26
611 0496 F0E0 ldi r31,lo8(0)
612 0498 AF5F subi r26,lo8(-(1))
613 049a C901 movw r24,r18
614 .L93:
615 049c E00F add r30,r16
616 049e F11F adc r31,r17
617 04a0 4081 ld r20,Z
618 04a2 9C01 movw r18,r24
619 04a4 2150 subi r18,lo8(-(-1))
620 04a6 3040 sbci r19,hi8(-(-1))
621 04a8 01F4 brne .+2
622 04aa 00C0 rjmp .L98
623 04ac EA2F mov r30,r26
624 04ae F0E0 ldi r31,lo8(0)
625 04b0 AF5F subi r26,lo8(-(1))
626 .L100:
627 04b2 E00F add r30,r16
628 04b4 F11F adc r31,r17
629 04b6 B081 ld r27,Z
630 04b8 2150 subi r18,lo8(-(-1))
631 04ba 3040 sbci r19,hi8(-(-1))
632 04bc 01F0 breq .+2
633 04be 00C0 rjmp .L113
634 04c0 FF20 tst r15
635 04c2 01F4 brne .+2
636 04c4 00C0 rjmp .L113
637 04c6 E981 ldd r30,Y+1
638 04c8 FA81 ldd r31,Y+2
639 04ca 0081 ld r16,Z
640 04cc 1181 ldd r17,Z+1
641 04ce 3496 adiw r30,4
642 04d0 FA83 std Y+2,r31
643 04d2 E983 std Y+1,r30
644 04d4 3497 sbiw r30,4
645 04d6 2281 ldd r18,Z+2
646 04d8 3381 ldd r19,Z+3
647 04da FA94 dec r15
648 04dc 842F mov r24,r20
649 04de 90E0 ldi r25,lo8(0)
650 04e0 4295 swap r20
651 04e2 4F70 andi r20,lo8(15)
652 04e4 8F70 andi r24,lo8(15)
653 04e6 9070 andi r25,hi8(15)
654 04e8 5B2F mov r21,r27
655 04ea 5295 swap r21
656 04ec 5695 lsr r21
657 04ee 5695 lsr r21
658 04f0 5370 andi r21,lo8(3)
659 04f2 880F lsl r24
660 04f4 991F rol r25
661 04f6 880F lsl r24
662 04f8 991F rol r25
663 04fa 582B or r21,r24
664 04fc 535C subi r21,lo8(-(61))
665 04fe BF73 andi r27,lo8(63)
666 0500 B35C subi r27,lo8(-(61))
667 0502 A0E0 ldi r26,lo8(0)
668 .L103:
669 0504 8E2D mov r24,r14
670 0506 8695 lsr r24
671 0508 8695 lsr r24
672 050a 835C subi r24,lo8(-(61))
673 050c FB01 movw r30,r22
674 050e E050 subi r30,lo8(-(SendeBuffer))
675 0510 F040 sbci r31,hi8(-(SendeBuffer))
676 0512 8083 st Z,r24
677 0514 8E2D mov r24,r14
678 0516 90E0 ldi r25,lo8(0)
679 0518 8370 andi r24,lo8(3)
680 051a 9070 andi r25,hi8(3)
681 051c 8295 swap r24
682 051e 9295 swap r25
683 0520 907F andi r25,0xf0
684 0522 9827 eor r25,r24
685 0524 807F andi r24,0xf0
686 0526 9827 eor r25,r24
687 0528 482B or r20,r24
688 052a 435C subi r20,lo8(-(61))
689 052c FB01 movw r30,r22
690 052e E050 subi r30,lo8(-(SendeBuffer+1))
691 0530 F040 sbci r31,hi8(-(SendeBuffer+1))
692 0532 4083 st Z,r20
693 0534 FB01 movw r30,r22
694 0536 E050 subi r30,lo8(-(SendeBuffer+2))
695 0538 F040 sbci r31,hi8(-(SendeBuffer+2))
696 053a 5083 st Z,r21
697 053c FB01 movw r30,r22
698 053e E050 subi r30,lo8(-(SendeBuffer+3))
699 0540 F040 sbci r31,hi8(-(SendeBuffer+3))
700 0542 B083 st Z,r27
701 0544 6C5F subi r22,lo8(-(4))
702 0546 7F4F sbci r23,hi8(-(4))
703 0548 2115 cp r18,__zero_reg__
704 054a 3105 cpc r19,__zero_reg__
705 054c 01F4 brne .+2
706 054e 00C0 rjmp .L110
707 .L90:
708 0550 F801 movw r30,r16
709 0552 EA0F add r30,r26
710 0554 F11D adc r31,__zero_reg__
711 0556 E080 ld r14,Z
712 0558 AF5F subi r26,lo8(-(1))
713 055a 2150 subi r18,lo8(-(-1))
714 055c 3040 sbci r19,hi8(-(-1))
715 055e 01F0 breq .+2
716 0560 00C0 rjmp .L115
717 0562 FF20 tst r15
718 0564 01F0 breq .L94
719 0566 E981 ldd r30,Y+1
720 0568 FA81 ldd r31,Y+2
721 056a 0081 ld r16,Z
722 056c 1181 ldd r17,Z+1
723 056e 3496 adiw r30,4
724 0570 FA83 std Y+2,r31
725 0572 E983 std Y+1,r30
726 0574 3497 sbiw r30,4
727 0576 8281 ldd r24,Z+2
728 0578 9381 ldd r25,Z+3
729 057a FA94 dec r15
730 057c 0097 sbiw r24,0
731 057e 01F0 breq .L96
732 0580 E0E0 ldi r30,lo8(0)
733 0582 F0E0 ldi r31,hi8(0)
734 0584 A1E0 ldi r26,lo8(1)
735 0586 00C0 rjmp .L93
736 .L96:
737 0588 A0E0 ldi r26,lo8(0)
738 .L94:
739 058a 40E0 ldi r20,lo8(0)
740 058c 5DE3 ldi r21,lo8(61)
741 058e BDE3 ldi r27,lo8(61)
742 0590 00C0 rjmp .L103
743 .L98:
744 0592 FF20 tst r15
745 0594 01F4 brne .L101
746 0596 842F mov r24,r20
747 0598 90E0 ldi r25,lo8(0)
748 059a 4295 swap r20
749 059c 4F70 andi r20,lo8(15)
750 059e 8F70 andi r24,lo8(15)
751 05a0 9070 andi r25,hi8(15)
752 05a2 880F lsl r24
753 05a4 991F rol r25
754 05a6 880F lsl r24
755 05a8 991F rol r25
756 05aa 582F mov r21,r24
757 05ac 535C subi r21,lo8(-(61))
758 05ae BDE3 ldi r27,lo8(61)
759 05b0 00C0 rjmp .L103
760 .L113:
761 05b2 842F mov r24,r20
762 05b4 90E0 ldi r25,lo8(0)
763 05b6 4295 swap r20
764 05b8 4F70 andi r20,lo8(15)
765 05ba 8F70 andi r24,lo8(15)
766 05bc 9070 andi r25,hi8(15)
767 05be 5B2F mov r21,r27
768 05c0 5295 swap r21
769 05c2 5695 lsr r21
770 05c4 5695 lsr r21
771 05c6 5370 andi r21,lo8(3)
772 05c8 880F lsl r24
773 05ca 991F rol r25
774 05cc 880F lsl r24
775 05ce 991F rol r25
776 05d0 582B or r21,r24
777 05d2 535C subi r21,lo8(-(61))
778 05d4 BF73 andi r27,lo8(63)
779 05d6 B35C subi r27,lo8(-(61))
780 05d8 00C0 rjmp .L103
781 .L101:
782 05da E981 ldd r30,Y+1
783 05dc FA81 ldd r31,Y+2
784 05de 0081 ld r16,Z
785 05e0 1181 ldd r17,Z+1
786 05e2 3496 adiw r30,4
787 05e4 FA83 std Y+2,r31
788 05e6 E983 std Y+1,r30
789 05e8 3497 sbiw r30,4
790 05ea 2281 ldd r18,Z+2
791 05ec 3381 ldd r19,Z+3
792 05ee FA94 dec r15
793 05f0 2115 cp r18,__zero_reg__
794 05f2 3105 cpc r19,__zero_reg__
795 05f4 01F4 brne .L104
796 05f6 842F mov r24,r20
797 05f8 90E0 ldi r25,lo8(0)
798 05fa 4295 swap r20
799 05fc 4F70 andi r20,lo8(15)
800 05fe 8F70 andi r24,lo8(15)
801 0600 9070 andi r25,hi8(15)
802 0602 880F lsl r24
803 0604 991F rol r25
804 0606 880F lsl r24
805 0608 991F rol r25
806 060a 582F mov r21,r24
807 060c 535C subi r21,lo8(-(61))
808 060e A0E0 ldi r26,lo8(0)
809 0610 BDE3 ldi r27,lo8(61)
810 0612 00C0 rjmp .L103
811 .L104:
812 0614 E0E0 ldi r30,lo8(0)
813 0616 F0E0 ldi r31,hi8(0)
814 0618 A1E0 ldi r26,lo8(1)
815 061a 00C0 rjmp .L100
816 .L110:
817 061c CB01 movw r24,r22
818 061e 0E94 0000 call AddCRC
819 /* epilogue: frame size=2 */
820 0622 2296 adiw r28,2
821 0624 0FB6 in __tmp_reg__,__SREG__
822 0626 F894 cli
823 0628 DEBF out __SP_H__,r29
824 062a 0FBE out __SREG__,__tmp_reg__
825 062c CDBF out __SP_L__,r28
826 062e DF91 pop r29
827 0630 CF91 pop r28
828 0632 1F91 pop r17
829 0634 0F91 pop r16
830 0636 FF90 pop r15
831 0638 EF90 pop r14
832 063a 0895 ret
833 /* epilogue end (size=13) */
834 /* function SendOutData size 269 (242) */
836 .global DatenUebertragung
838 DatenUebertragung:
839 /* prologue: frame size=0 */
840 063c EF92 push r14
841 063e FF92 push r15
842 0640 0F93 push r16
843 0642 1F93 push r17
844 /* prologue end (size=4) */
845 0644 8091 0000 lds r24,UebertragungAbgeschlossen
846 0648 8823 tst r24
847 064a 01F4 brne .+2
848 064c 00C0 rjmp .L155
849 064e 8091 0000 lds r24,DebugDisplayAnforderung
850 0652 8823 tst r24
851 0654 01F0 breq .L119
852 0656 8091 0000 lds r24,UebertragungAbgeschlossen
853 065a 8823 tst r24
854 065c 01F0 breq .+2
855 065e 00C0 rjmp .L157
856 .L119:
857 0660 8091 0000 lds r24,DebugDisplayAnforderung1
858 0664 8823 tst r24
859 0666 01F0 breq .L124
860 .L166:
861 0668 8091 0000 lds r24,UebertragungAbgeschlossen
862 066c 8823 tst r24
863 066e 01F0 breq .+2
864 0670 00C0 rjmp .L158
865 .L124:
866 0672 8091 0000 lds r24,GetVersionAnforderung
867 0676 8823 tst r24
868 0678 01F0 breq .L127
869 .L167:
870 067a 8091 0000 lds r24,UebertragungAbgeschlossen
871 067e 8823 tst r24
872 0680 01F0 breq .+2
873 0682 00C0 rjmp .L159
874 .L127:
875 0684 8091 0000 lds r24,GetExternalControl
876 0688 8823 tst r24
877 068a 01F0 breq .L130
878 .L168:
879 068c 8091 0000 lds r24,UebertragungAbgeschlossen
880 0690 8823 tst r24
881 0692 01F0 breq .+2
882 0694 00C0 rjmp .L160
883 .L130:
884 0696 8091 0000 lds r24,Kompass_Timer
885 069a 9091 0000 lds r25,(Kompass_Timer)+1
886 069e 0E94 0000 call CheckDelay
887 06a2 8823 tst r24
888 06a4 01F0 breq .L133
889 .L169:
890 06a6 8091 0000 lds r24,UebertragungAbgeschlossen
891 06aa 8823 tst r24
892 06ac 01F0 breq .+2
893 06ae 00C0 rjmp .L161
894 .L133:
895 06b0 8091 0000 lds r24,DebugDataIntervall
896 06b4 9091 0000 lds r25,(DebugDataIntervall)+1
897 06b8 892B or r24,r25
898 06ba 01F0 breq .+2
899 06bc 00C0 rjmp .L162
900 .L138:
901 06be 8091 0000 lds r24,DebugDataAnforderung
902 06c2 8823 tst r24
903 06c4 01F0 breq .L141
904 06c6 8091 0000 lds r24,UebertragungAbgeschlossen
905 06ca 8823 tst r24
906 06cc 01F0 breq .+2
907 06ce 00C0 rjmp .L163
908 .L141:
909 06d0 8091 0000 lds r24,Intervall3D
910 06d4 9091 0000 lds r25,(Intervall3D)+1
911 06d8 892B or r24,r25
912 06da 01F0 breq .+2
913 06dc 00C0 rjmp .L164
914 .L144:
915 06de 8091 0000 lds r24,DebugTextAnforderung
916 06e2 8F3F cpi r24,lo8(-1)
917 06e4 01F0 breq .L148
918 06e6 90E0 ldi r25,lo8(0)
919 06e8 8295 swap r24
920 06ea 9295 swap r25
921 06ec 907F andi r25,0xf0
922 06ee 9827 eor r25,r24
923 06f0 807F andi r24,0xf0
924 06f2 9827 eor r25,r24
925 06f4 8050 subi r24,lo8(-(ANALOG_TEXT))
926 06f6 9040 sbci r25,hi8(-(ANALOG_TEXT))
927 06f8 20E1 ldi r18,lo8(16)
928 06fa 30E0 ldi r19,hi8(16)
929 06fc 3F93 push r19
930 06fe 2F93 push r18
931 0700 9F93 push r25
932 0702 8F93 push r24
933 0704 81E0 ldi r24,lo8(1)
934 0706 90E0 ldi r25,hi8(1)
935 0708 9F93 push r25
936 070a 8F93 push r24
937 070c 80E0 ldi r24,lo8(DebugTextAnforderung)
938 070e 90E0 ldi r25,hi8(DebugTextAnforderung)
939 0710 9F93 push r25
940 0712 8F93 push r24
941 0714 82E0 ldi r24,lo8(2)
942 0716 8F93 push r24
943 0718 81E0 ldi r24,lo8(1)
944 071a 8F93 push r24
945 071c 81E4 ldi r24,lo8(65)
946 071e 8F93 push r24
947 0720 0E94 0000 call SendOutData
948 0724 8FEF ldi r24,lo8(-1)
949 0726 8093 0000 sts DebugTextAnforderung,r24
950 072a 2DB7 in r18,__SP_L__
951 072c 3EB7 in r19,__SP_H__
952 072e 255F subi r18,lo8(-(11))
953 0730 3F4F sbci r19,hi8(-(11))
954 0732 0FB6 in __tmp_reg__,__SREG__
955 0734 F894 cli
956 0736 3EBF out __SP_H__,r19
957 0738 0FBE out __SREG__,__tmp_reg__
958 073a 2DBF out __SP_L__,r18
959 .L148:
960 073c 8091 0000 lds r24,ConfirmFrame
961 0740 8823 tst r24
962 0742 01F0 breq .L150
963 0744 8091 0000 lds r24,UebertragungAbgeschlossen
964 0748 8823 tst r24
965 074a 01F0 breq .+2
966 074c 00C0 rjmp .L165
967 .L150:
968 074e 8091 0000 lds r24,GetPPMChannelAnforderung
969 0752 8823 tst r24
970 0754 01F4 brne .+2
971 0756 00C0 rjmp .L155
972 .L170:
973 0758 8091 0000 lds r24,UebertragungAbgeschlossen
974 075c 8823 tst r24
975 075e 01F4 brne .+2
976 0760 00C0 rjmp .L155
977 0762 86E1 ldi r24,lo8(22)
978 0764 90E0 ldi r25,hi8(22)
979 0766 9F93 push r25
980 0768 8F93 push r24
981 076a 80E0 ldi r24,lo8(PPM_in)
982 076c 90E0 ldi r25,hi8(PPM_in)
983 076e 9F93 push r25
984 0770 8F93 push r24
985 0772 81E0 ldi r24,lo8(1)
986 0774 8F93 push r24
987 0776 8F93 push r24
988 0778 80E5 ldi r24,lo8(80)
989 077a 8F93 push r24
990 077c 0E94 0000 call SendOutData
991 0780 1092 0000 sts GetPPMChannelAnforderung,__zero_reg__
992 0784 2DB7 in r18,__SP_L__
993 0786 3EB7 in r19,__SP_H__
994 0788 295F subi r18,lo8(-(7))
995 078a 3F4F sbci r19,hi8(-(7))
996 078c 0FB6 in __tmp_reg__,__SREG__
997 078e F894 cli
998 0790 3EBF out __SP_H__,r19
999 0792 0FBE out __SREG__,__tmp_reg__
1000 0794 2DBF out __SP_L__,r18
1001 0796 00C0 rjmp .L155
1002 .L162:
1003 0798 8091 0000 lds r24,Debug_Timer
1004 079c 9091 0000 lds r25,(Debug_Timer)+1
1005 07a0 0E94 0000 call CheckDelay
1006 07a4 8823 tst r24
1007 07a6 01F4 brne .+2
1008 07a8 00C0 rjmp .L138
1009 07aa 8091 0000 lds r24,UebertragungAbgeschlossen
1010 07ae 8823 tst r24
1011 07b0 01F4 brne .+2
1012 07b2 00C0 rjmp .L141
1013 07b4 00C0 rjmp .L163
1014 .L164:
1015 07b6 8091 0000 lds r24,Timer3D
1016 07ba 9091 0000 lds r25,(Timer3D)+1
1017 07be 0E94 0000 call CheckDelay
1018 07c2 8823 tst r24
1019 07c4 01F4 brne .+2
1020 07c6 00C0 rjmp .L144
1021 07c8 8091 0000 lds r24,UebertragungAbgeschlossen
1022 07cc 8823 tst r24
1023 07ce 01F4 brne .+2
1024 07d0 00C0 rjmp .L144
1025 07d2 E090 0000 lds r14,EE_Parameter+20
1026 07d6 FF24 clr r15
1027 07d8 EE0C lsl r14
1028 07da FF1C rol r15
1029 07dc EE0C lsl r14
1030 07de FF1C rol r15
1031 07e0 0027 clr r16
1032 07e2 F7FC sbrc r15,7
1033 07e4 0095 com r16
1034 07e6 102F mov r17,r16
1035 07e8 6091 0000 lds r22,IntegralNick
1036 07ec 7091 0000 lds r23,(IntegralNick)+1
1037 07f0 8091 0000 lds r24,(IntegralNick)+2
1038 07f4 9091 0000 lds r25,(IntegralNick)+3
1039 07f8 A801 movw r20,r16
1040 07fa 9701 movw r18,r14
1041 07fc 0E94 0000 call __divmodsi4
1042 0800 3093 0000 sts (Data3D)+1,r19
1043 0804 2093 0000 sts Data3D,r18
1044 0808 6091 0000 lds r22,IntegralRoll
1045 080c 7091 0000 lds r23,(IntegralRoll)+1
1046 0810 8091 0000 lds r24,(IntegralRoll)+2
1047 0814 9091 0000 lds r25,(IntegralRoll)+3
1048 0818 A801 movw r20,r16
1049 081a 9701 movw r18,r14
1050 081c 0E94 0000 call __divmodsi4
1051 0820 3093 0000 sts (Data3D+2)+1,r19
1052 0824 2093 0000 sts Data3D+2,r18
1053 0828 6091 0000 lds r22,ErsatzKompass
1054 082c 7091 0000 lds r23,(ErsatzKompass)+1
1055 0830 8091 0000 lds r24,(ErsatzKompass)+2
1056 0834 9091 0000 lds r25,(ErsatzKompass)+3
1057 0838 2AE0 ldi r18,lo8(10)
1058 083a 30E0 ldi r19,hi8(10)
1059 083c 40E0 ldi r20,hlo8(10)
1060 083e 50E0 ldi r21,hhi8(10)
1061 0840 0E94 0000 call __mulsi3
1062 0844 2091 0000 lds r18,GIER_GRAD_FAKTOR
1063 0848 3091 0000 lds r19,(GIER_GRAD_FAKTOR)+1
1064 084c 4091 0000 lds r20,(GIER_GRAD_FAKTOR)+2
1065 0850 5091 0000 lds r21,(GIER_GRAD_FAKTOR)+3
1066 0854 0E94 0000 call __divmodsi4
1067 0858 3093 0000 sts (Data3D+4)+1,r19
1068 085c 2093 0000 sts Data3D+4,r18
1069 0860 8EE0 ldi r24,lo8(14)
1070 0862 90E0 ldi r25,hi8(14)
1071 0864 9F93 push r25
1072 0866 8F93 push r24
1073 0868 80E0 ldi r24,lo8(Data3D)
1074 086a 90E0 ldi r25,hi8(Data3D)
1075 086c 9F93 push r25
1076 086e 8F93 push r24
1077 0870 81E0 ldi r24,lo8(1)
1078 0872 8F93 push r24
1079 0874 8F93 push r24
1080 0876 83E4 ldi r24,lo8(67)
1081 0878 8F93 push r24
1082 087a 0E94 0000 call SendOutData
1083 087e 8091 0000 lds r24,Intervall3D
1084 0882 9091 0000 lds r25,(Intervall3D)+1
1085 0886 0E94 0000 call SetDelay
1086 088a 9093 0000 sts (Timer3D)+1,r25
1087 088e 8093 0000 sts Timer3D,r24
1088 0892 8DB7 in r24,__SP_L__
1089 0894 9EB7 in r25,__SP_H__
1090 0896 0796 adiw r24,7
1091 0898 0FB6 in __tmp_reg__,__SREG__
1092 089a F894 cli
1093 089c 9EBF out __SP_H__,r25
1094 089e 0FBE out __SREG__,__tmp_reg__
1095 08a0 8DBF out __SP_L__,r24
1096 08a2 00C0 rjmp .L144
1097 .L163:
1098 08a4 82E4 ldi r24,lo8(66)
1099 08a6 90E0 ldi r25,hi8(66)
1100 08a8 9F93 push r25
1101 08aa 8F93 push r24
1102 08ac 80E0 ldi r24,lo8(DebugOut)
1103 08ae 90E0 ldi r25,hi8(DebugOut)
1104 08b0 9F93 push r25
1105 08b2 8F93 push r24
1106 08b4 81E0 ldi r24,lo8(1)
1107 08b6 8F93 push r24
1108 08b8 8F93 push r24
1109 08ba 84E4 ldi r24,lo8(68)
1110 08bc 8F93 push r24
1111 08be 0E94 0000 call SendOutData
1112 08c2 1092 0000 sts DebugDataAnforderung,__zero_reg__
1113 08c6 8091 0000 lds r24,DebugDataIntervall
1114 08ca 9091 0000 lds r25,(DebugDataIntervall)+1
1115 08ce 2DB7 in r18,__SP_L__
1116 08d0 3EB7 in r19,__SP_H__
1117 08d2 295F subi r18,lo8(-(7))
1118 08d4 3F4F sbci r19,hi8(-(7))
1119 08d6 0FB6 in __tmp_reg__,__SREG__
1120 08d8 F894 cli
1121 08da 3EBF out __SP_H__,r19
1122 08dc 0FBE out __SREG__,__tmp_reg__
1123 08de 2DBF out __SP_L__,r18
1124 08e0 0097 sbiw r24,0
1125 08e2 01F4 brne .+2
1126 08e4 00C0 rjmp .L141
1127 08e6 0E94 0000 call SetDelay
1128 08ea 9093 0000 sts (Debug_Timer)+1,r25
1129 08ee 8093 0000 sts Debug_Timer,r24
1130 08f2 00C0 rjmp .L141
1131 .L157:
1132 08f4 0E94 0000 call Menu
1133 08f8 8091 0000 lds r24,DisplayLine
1134 08fc 24E1 ldi r18,lo8(20)
1135 08fe 829F mul r24,r18
1136 0900 C001 movw r24,r0
1137 0902 1124 clr r1
1138 0904 8050 subi r24,lo8(-(DisplayBuff))
1139 0906 9040 sbci r25,hi8(-(DisplayBuff))
1140 0908 24E1 ldi r18,lo8(20)
1141 090a 30E0 ldi r19,hi8(20)
1142 090c 3F93 push r19
1143 090e 2F93 push r18
1144 0910 9F93 push r25
1145 0912 8F93 push r24
1146 0914 81E0 ldi r24,lo8(1)
1147 0916 90E0 ldi r25,hi8(1)
1148 0918 9F93 push r25
1149 091a 8F93 push r24
1150 091c 80E0 ldi r24,lo8(DisplayLine)
1151 091e 90E0 ldi r25,hi8(DisplayLine)
1152 0920 9F93 push r25
1153 0922 8F93 push r24
1154 0924 82E0 ldi r24,lo8(2)
1155 0926 8F93 push r24
1156 0928 81E0 ldi r24,lo8(1)
1157 092a 8F93 push r24
1158 092c 88E4 ldi r24,lo8(72)
1159 092e 8F93 push r24
1160 0930 0E94 0000 call SendOutData
1161 0934 8091 0000 lds r24,DisplayLine
1162 0938 8F5F subi r24,lo8(-(1))
1163 093a 8093 0000 sts DisplayLine,r24
1164 093e 2DB7 in r18,__SP_L__
1165 0940 3EB7 in r19,__SP_H__
1166 0942 255F subi r18,lo8(-(11))
1167 0944 3F4F sbci r19,hi8(-(11))
1168 0946 0FB6 in __tmp_reg__,__SREG__
1169 0948 F894 cli
1170 094a 3EBF out __SP_H__,r19
1171 094c 0FBE out __SREG__,__tmp_reg__
1172 094e 2DBF out __SP_L__,r18
1173 0950 8430 cpi r24,lo8(4)
1174 0952 00F0 brlo .L122
1175 0954 1092 0000 sts DisplayLine,__zero_reg__
1176 .L122:
1177 0958 1092 0000 sts DebugDisplayAnforderung,__zero_reg__
1178 095c 8091 0000 lds r24,DebugDisplayAnforderung1
1179 0960 8823 tst r24
1180 0962 01F4 brne .+2
1181 0964 00C0 rjmp .L124
1182 0966 00C0 rjmp .L166
1183 .L158:
1184 0968 0E94 0000 call Menu
1185 096c 80E5 ldi r24,lo8(80)
1186 096e 90E0 ldi r25,hi8(80)
1187 0970 9F93 push r25
1188 0972 8F93 push r24
1189 0974 80E0 ldi r24,lo8(DisplayBuff)
1190 0976 90E0 ldi r25,hi8(DisplayBuff)
1191 0978 9F93 push r25
1192 097a 8F93 push r24
1193 097c 21E0 ldi r18,lo8(1)
1194 097e 30E0 ldi r19,hi8(1)
1195 0980 3F93 push r19
1196 0982 2F93 push r18
1197 0984 80E0 ldi r24,lo8(MaxMenue)
1198 0986 90E0 ldi r25,hi8(MaxMenue)
1199 0988 9F93 push r25
1200 098a 8F93 push r24
1201 098c 3F93 push r19
1202 098e 2F93 push r18
1203 0990 80E0 ldi r24,lo8(MenuePunkt)
1204 0992 90E0 ldi r25,hi8(MenuePunkt)
1205 0994 9F93 push r25
1206 0996 8F93 push r24
1207 0998 83E0 ldi r24,lo8(3)
1208 099a 8F93 push r24
1209 099c 81E0 ldi r24,lo8(1)
1210 099e 8F93 push r24
1211 09a0 8CE4 ldi r24,lo8(76)
1212 09a2 8F93 push r24
1213 09a4 0E94 0000 call SendOutData
1214 09a8 1092 0000 sts DebugDisplayAnforderung1,__zero_reg__
1215 09ac 8DB7 in r24,__SP_L__
1216 09ae 9EB7 in r25,__SP_H__
1217 09b0 0F96 adiw r24,15
1218 09b2 0FB6 in __tmp_reg__,__SREG__
1219 09b4 F894 cli
1220 09b6 9EBF out __SP_H__,r25
1221 09b8 0FBE out __SREG__,__tmp_reg__
1222 09ba 8DBF out __SP_L__,r24
1223 09bc 8091 0000 lds r24,GetVersionAnforderung
1224 09c0 8823 tst r24
1225 09c2 01F4 brne .+2
1226 09c4 00C0 rjmp .L127
1227 09c6 00C0 rjmp .L167
1228 .L159:
1229 09c8 8AE0 ldi r24,lo8(10)
1230 09ca 90E0 ldi r25,hi8(10)
1231 09cc 9F93 push r25
1232 09ce 8F93 push r24
1233 09d0 80E0 ldi r24,lo8(VersionInfo)
1234 09d2 90E0 ldi r25,hi8(VersionInfo)
1235 09d4 9F93 push r25
1236 09d6 8F93 push r24
1237 09d8 81E0 ldi r24,lo8(1)
1238 09da 8F93 push r24
1239 09dc 8F93 push r24
1240 09de 86E5 ldi r24,lo8(86)
1241 09e0 8F93 push r24
1242 09e2 0E94 0000 call SendOutData
1243 09e6 1092 0000 sts GetVersionAnforderung,__zero_reg__
1244 09ea 2DB7 in r18,__SP_L__
1245 09ec 3EB7 in r19,__SP_H__
1246 09ee 295F subi r18,lo8(-(7))
1247 09f0 3F4F sbci r19,hi8(-(7))
1248 09f2 0FB6 in __tmp_reg__,__SREG__
1249 09f4 F894 cli
1250 09f6 3EBF out __SP_H__,r19
1251 09f8 0FBE out __SREG__,__tmp_reg__
1252 09fa 2DBF out __SP_L__,r18
1253 09fc 8091 0000 lds r24,GetExternalControl
1254 0a00 8823 tst r24
1255 0a02 01F4 brne .+2
1256 0a04 00C0 rjmp .L130
1257 0a06 00C0 rjmp .L168
1258 .L160:
1259 0a08 2091 0000 lds r18,MeineSlaveAdresse
1260 0a0c 8BE0 ldi r24,lo8(11)
1261 0a0e 90E0 ldi r25,hi8(11)
1262 0a10 9F93 push r25
1263 0a12 8F93 push r24
1264 0a14 80E0 ldi r24,lo8(ExternControl)
1265 0a16 90E0 ldi r25,hi8(ExternControl)
1266 0a18 9F93 push r25
1267 0a1a 8F93 push r24
1268 0a1c 81E0 ldi r24,lo8(1)
1269 0a1e 8F93 push r24
1270 0a20 2F93 push r18
1271 0a22 87E4 ldi r24,lo8(71)
1272 0a24 8F93 push r24
1273 0a26 0E94 0000 call SendOutData
1274 0a2a 1092 0000 sts GetExternalControl,__zero_reg__
1275 0a2e 8DB7 in r24,__SP_L__
1276 0a30 9EB7 in r25,__SP_H__
1277 0a32 0796 adiw r24,7
1278 0a34 0FB6 in __tmp_reg__,__SREG__
1279 0a36 F894 cli
1280 0a38 9EBF out __SP_H__,r25
1281 0a3a 0FBE out __SREG__,__tmp_reg__
1282 0a3c 8DBF out __SP_L__,r24
1283 0a3e 8091 0000 lds r24,Kompass_Timer
1284 0a42 9091 0000 lds r25,(Kompass_Timer)+1
1285 0a46 0E94 0000 call CheckDelay
1286 0a4a 8823 tst r24
1287 0a4c 01F4 brne .+2
1288 0a4e 00C0 rjmp .L133
1289 0a50 00C0 rjmp .L169
1290 .L161:
1291 0a52 E090 0000 lds r14,EE_Parameter+20
1292 0a56 FF24 clr r15
1293 0a58 EE0C lsl r14
1294 0a5a FF1C rol r15
1295 0a5c EE0C lsl r14
1296 0a5e FF1C rol r15
1297 0a60 0027 clr r16
1298 0a62 F7FC sbrc r15,7
1299 0a64 0095 com r16
1300 0a66 102F mov r17,r16
1301 0a68 6091 0000 lds r22,IntegralNick
1302 0a6c 7091 0000 lds r23,(IntegralNick)+1
1303 0a70 8091 0000 lds r24,(IntegralNick)+2
1304 0a74 9091 0000 lds r25,(IntegralNick)+3
1305 0a78 A801 movw r20,r16
1306 0a7a 9701 movw r18,r14
1307 0a7c 0E94 0000 call __divmodsi4
1308 0a80 3093 0000 sts (WinkelOut)+1,r19
1309 0a84 2093 0000 sts WinkelOut,r18
1310 0a88 6091 0000 lds r22,IntegralRoll
1311 0a8c 7091 0000 lds r23,(IntegralRoll)+1
1312 0a90 8091 0000 lds r24,(IntegralRoll)+2
1313 0a94 9091 0000 lds r25,(IntegralRoll)+3
1314 0a98 A801 movw r20,r16
1315 0a9a 9701 movw r18,r14
1316 0a9c 0E94 0000 call __divmodsi4
1317 0aa0 3093 0000 sts (WinkelOut+2)+1,r19
1318 0aa4 2093 0000 sts WinkelOut+2,r18
1319 0aa8 8091 0000 lds r24,Parameter_UserParam1
1320 0aac 8093 0000 sts WinkelOut+4,r24
1321 0ab0 8091 0000 lds r24,Parameter_UserParam2
1322 0ab4 8093 0000 sts WinkelOut+5,r24
1323 0ab8 88E0 ldi r24,lo8(8)
1324 0aba 90E0 ldi r25,hi8(8)
1325 0abc 9F93 push r25
1326 0abe 8F93 push r24
1327 0ac0 80E0 ldi r24,lo8(WinkelOut)
1328 0ac2 90E0 ldi r25,hi8(WinkelOut)
1329 0ac4 9F93 push r25
1330 0ac6 8F93 push r24
1331 0ac8 81E0 ldi r24,lo8(1)
1332 0aca 8F93 push r24
1333 0acc 83E0 ldi r24,lo8(3)
1334 0ace 8F93 push r24
1335 0ad0 87E7 ldi r24,lo8(119)
1336 0ad2 8F93 push r24
1337 0ad4 0E94 0000 call SendOutData
1338 0ad8 2DB7 in r18,__SP_L__
1339 0ada 3EB7 in r19,__SP_H__
1340 0adc 295F subi r18,lo8(-(7))
1341 0ade 3F4F sbci r19,hi8(-(7))
1342 0ae0 0FB6 in __tmp_reg__,__SREG__
1343 0ae2 F894 cli
1344 0ae4 3EBF out __SP_H__,r19
1345 0ae6 0FBE out __SREG__,__tmp_reg__
1346 0ae8 2DBF out __SP_L__,r18
1347 0aea 8091 0000 lds r24,WinkelOut+6
1348 0aee 8530 cpi r24,lo8(5)
1349 0af0 00F0 brlo .L136
1350 0af2 86E0 ldi r24,lo8(6)
1351 0af4 8093 0000 sts WinkelOut+6,r24
1352 .L136:
1353 0af8 83E6 ldi r24,lo8(99)
1354 0afa 90E0 ldi r25,hi8(99)
1355 0afc 0E94 0000 call SetDelay
1356 0b00 9093 0000 sts (Kompass_Timer)+1,r25
1357 0b04 8093 0000 sts Kompass_Timer,r24
1358 0b08 8091 0000 lds r24,DebugDataIntervall
1359 0b0c 9091 0000 lds r25,(DebugDataIntervall)+1
1360 0b10 892B or r24,r25
1361 0b12 01F4 brne .+2
1362 0b14 00C0 rjmp .L138
1363 0b16 00C0 rjmp .L162
1364 .L165:
1365 0b18 81E0 ldi r24,lo8(1)
1366 0b1a 90E0 ldi r25,hi8(1)
1367 0b1c 9F93 push r25
1368 0b1e 8F93 push r24
1369 0b20 80E0 ldi r24,lo8(ConfirmFrame)
1370 0b22 90E0 ldi r25,hi8(ConfirmFrame)
1371 0b24 9F93 push r25
1372 0b26 8F93 push r24
1373 0b28 81E0 ldi r24,lo8(1)
1374 0b2a 8F93 push r24
1375 0b2c 8F93 push r24
1376 0b2e 82E4 ldi r24,lo8(66)
1377 0b30 8F93 push r24
1378 0b32 0E94 0000 call SendOutData
1379 0b36 1092 0000 sts ConfirmFrame,__zero_reg__
1380 0b3a 8DB7 in r24,__SP_L__
1381 0b3c 9EB7 in r25,__SP_H__
1382 0b3e 0796 adiw r24,7
1383 0b40 0FB6 in __tmp_reg__,__SREG__
1384 0b42 F894 cli
1385 0b44 9EBF out __SP_H__,r25
1386 0b46 0FBE out __SREG__,__tmp_reg__
1387 0b48 8DBF out __SP_L__,r24
1388 0b4a 8091 0000 lds r24,GetPPMChannelAnforderung
1389 0b4e 8823 tst r24
1390 0b50 01F0 breq .+2
1391 0b52 00C0 rjmp .L170
1392 .L155:
1393 /* epilogue: frame size=0 */
1394 0b54 1F91 pop r17
1395 0b56 0F91 pop r16
1396 0b58 FF90 pop r15
1397 0b5a EF90 pop r14
1398 0b5c 0895 ret
1399 /* epilogue end (size=5) */
1400 /* function DatenUebertragung size 657 (648) */
1402 .global BearbeiteRxDaten
1404 BearbeiteRxDaten:
1405 /* prologue: frame size=2 */
1406 0b5e EF92 push r14
1407 0b60 FF92 push r15
1408 0b62 0F93 push r16
1409 0b64 1F93 push r17
1410 0b66 CF93 push r28
1411 0b68 DF93 push r29
1412 0b6a CDB7 in r28,__SP_L__
1413 0b6c DEB7 in r29,__SP_H__
1414 0b6e 2297 sbiw r28,2
1415 0b70 0FB6 in __tmp_reg__,__SREG__
1416 0b72 F894 cli
1417 0b74 DEBF out __SP_H__,r29
1418 0b76 0FBE out __SREG__,__tmp_reg__
1419 0b78 CDBF out __SP_L__,r28
1420 /* prologue end (size=14) */
1421 0b7a 8091 0000 lds r24,NeuerDatensatzEmpfangen
1422 0b7e 8823 tst r24
1423 0b80 01F4 brne .+2
1424 0b82 00C0 rjmp .L221
1425 0b84 0E94 0000 call Decode64
1426 0b88 8091 0000 lds r24,RxdBuffer+1
1427 0b8c 8236 cpi r24,lo8(98)
1428 0b8e 01F0 breq .L235
1429 .L174:
1430 0b90 8091 0000 lds r24,RxdBuffer+2
1431 0b94 8436 cpi r24,lo8(100)
1432 0b96 01F4 brne .+2
1433 0b98 00C0 rjmp .L201
1434 0b9a 8536 cpi r24,lo8(101)
1435 0b9c 00F0 brlo .L236
1436 0b9e 8C36 cpi r24,lo8(108)
1437 0ba0 01F4 brne .+2
1438 0ba2 00C0 rjmp .L204
1439 0ba4 8D36 cpi r24,lo8(109)
1440 0ba6 00F0 brlo .+2
1441 0ba8 00C0 rjmp .L209
1442 0baa 8736 cpi r24,lo8(103)
1443 0bac 01F4 brne .+2
1444 0bae 00C0 rjmp .L202
1445 0bb0 8836 cpi r24,lo8(104)
1446 0bb2 01F4 brne .L196
1447 0bb4 8FEF ldi r24,lo8(-1)
1448 0bb6 8093 0000 sts PcZugriff,r24
1449 0bba 8091 0000 lds r24,RemoteKeys
1450 0bbe E091 0000 lds r30,pRxData
1451 0bc2 F091 0000 lds r31,(pRxData)+1
1452 0bc6 9081 ld r25,Z
1453 0bc8 892B or r24,r25
1454 0bca 8093 0000 sts RemoteKeys,r24
1455 0bce 8823 tst r24
1456 0bd0 01F0 breq .L219
1457 0bd2 1092 0000 sts DisplayLine,__zero_reg__
1458 .L219:
1459 0bd6 81E0 ldi r24,lo8(1)
1460 0bd8 8093 0000 sts DebugDisplayAnforderung,r24
1461 .L196:
1462 0bdc 1092 0000 sts NeuerDatensatzEmpfangen,__zero_reg__
1463 0be0 1092 0000 sts (pRxData)+1,__zero_reg__
1464 0be4 1092 0000 sts pRxData,__zero_reg__
1465 0be8 1092 0000 sts RxDataLen,__zero_reg__
1466 0bec 00C0 rjmp .L221
1467 .L235:
1468 0bee 8091 0000 lds r24,RxdBuffer+2
1469 0bf2 8137 cpi r24,lo8(113)
1470 0bf4 01F4 brne .+2
1471 0bf6 00C0 rjmp .L178
1472 0bf8 8237 cpi r24,lo8(114)
1473 0bfa 00F4 brsh .L181
1474 0bfc 8B34 cpi r24,lo8(75)
1475 0bfe 01F4 brne .+2
1476 0c00 00C0 rjmp .L176
1477 0c02 8037 cpi r24,lo8(112)
1478 0c04 01F4 brne .L174
1479 0c06 81E0 ldi r24,lo8(1)
1480 0c08 8093 0000 sts GetPPMChannelAnforderung,r24
1481 0c0c 00C0 rjmp .L174
1482 .L236:
1483 0c0e 8136 cpi r24,lo8(97)
1484 0c10 01F4 brne .+2
1485 0c12 00C0 rjmp .L198
1486 0c14 8236 cpi r24,lo8(98)
1487 0c16 00F0 brlo .+2
1488 0c18 00C0 rjmp .L208
1489 0c1a 8B34 cpi r24,lo8(75)
1490 0c1c 01F4 brne .L196
1491 0c1e E091 0000 lds r30,pRxData
1492 0c22 F091 0000 lds r31,(pRxData)+1
1493 0c26 8081 ld r24,Z
1494 0c28 9181 ldd r25,Z+1
1495 0c2a 9093 0000 sts (KompassValue)+1,r25
1496 0c2e 8093 0000 sts KompassValue,r24
1497 0c32 845E subi r24,lo8(-(540))
1498 0c34 9D4F sbci r25,hi8(-(540))
1499 0c36 2091 0000 lds r18,KompassStartwert
1500 0c3a 3091 0000 lds r19,(KompassStartwert)+1
1501 0c3e 821B sub r24,r18
1502 0c40 930B sbc r25,r19
1503 0c42 68E6 ldi r22,lo8(360)
1504 0c44 71E0 ldi r23,hi8(360)
1505 0c46 0E94 0000 call __divmodhi4
1506 0c4a 845B subi r24,lo8(-(-180))
1507 0c4c 9040 sbci r25,hi8(-(-180))
1508 0c4e 9093 0000 sts (KompassRichtung)+1,r25
1509 0c52 8093 0000 sts KompassRichtung,r24
1510 0c56 00C0 rjmp .L196
1511 .L181:
1512 0c58 8337 cpi r24,lo8(115)
1513 0c5a 01F4 brne .+2
1514 0c5c 00C0 rjmp .L179
1515 0c5e 8437 cpi r24,lo8(116)
1516 0c60 01F0 breq .+2
1517 0c62 00C0 rjmp .L174
1518 0c64 0091 0000 lds r16,pRxData
1519 0c68 1091 0000 lds r17,(pRxData)+1
1520 0c6c F801 movw r30,r16
1521 0c6e 8081 ld r24,Z
1522 0c70 9181 ldd r25,Z+1
1523 0c72 A281 ldd r26,Z+2
1524 0c74 B381 ldd r27,Z+3
1525 0c76 8093 0000 sts MotorTest,r24
1526 0c7a 9093 0000 sts (MotorTest)+1,r25
1527 0c7e A093 0000 sts (MotorTest)+2,r26
1528 0c82 B093 0000 sts (MotorTest)+3,r27
1529 0c86 8FEF ldi r24,lo8(-1)
1530 0c88 8093 0000 sts PcZugriff,r24
1531 0c8c 00C0 rjmp .L174
1532 .L209:
1533 0c8e 8437 cpi r24,lo8(116)
1534 0c90 01F4 brne .+2
1535 0c92 00C0 rjmp .L205
1536 0c94 8637 cpi r24,lo8(118)
1537 0c96 01F0 breq .+2
1538 0c98 00C0 rjmp .L196
1539 0c9a 81E0 ldi r24,lo8(1)
1540 0c9c 8093 0000 sts GetVersionAnforderung,r24
1541 0ca0 00C0 rjmp .L196
1542 .L208:
1543 0ca2 8236 cpi r24,lo8(98)
1544 0ca4 01F4 brne .+2
1545 0ca6 00C0 rjmp .L199
1546 0ca8 8336 cpi r24,lo8(99)
1547 0caa 01F0 breq .+2
1548 0cac 00C0 rjmp .L196
1549 0cae 8091 0000 lds r24,Intervall3D
1550 0cb2 9091 0000 lds r25,(Intervall3D)+1
1551 0cb6 892B or r24,r25
1552 0cb8 01F0 breq .+2
1553 0cba 00C0 rjmp .L222
1554 0cbc 0091 0000 lds r16,pRxData
1555 0cc0 1091 0000 lds r17,(pRxData)+1
1556 0cc4 F801 movw r30,r16
1557 0cc6 9081 ld r25,Z
1558 0cc8 9923 tst r25
1559 0cca 01F0 breq .+2
1560 0ccc 00C0 rjmp .L237
1561 .L215:
1562 0cce F801 movw r30,r16
1563 0cd0 8081 ld r24,Z
1564 0cd2 2AE0 ldi r18,lo8(10)
1565 0cd4 829F mul r24,r18
1566 0cd6 C001 movw r24,r0
1567 0cd8 1124 clr r1
1568 0cda 9093 0000 sts (Intervall3D)+1,r25
1569 0cde 8093 0000 sts Intervall3D,r24
1570 0ce2 00C0 rjmp .L196
1571 .L178:
1572 0ce4 0091 0000 lds r16,pRxData
1573 0ce8 1091 0000 lds r17,(pRxData)+1
1574 0cec F801 movw r30,r16
1575 0cee 8081 ld r24,Z
1576 0cf0 8F3F cpi r24,lo8(-1)
1577 0cf2 01F4 brne .+2
1578 0cf4 00C0 rjmp .L238
1579 .L182:
1580 0cf6 F801 movw r30,r16
1581 0cf8 8081 ld r24,Z
1582 0cfa 8823 tst r24
1583 0cfc 01F0 breq .+2
1584 0cfe 00C0 rjmp .L184
1585 0d00 81E0 ldi r24,lo8(1)
1586 0d02 8083 st Z,r24
1587 0d04 0091 0000 lds r16,pRxData
1588 0d08 1091 0000 lds r17,(pRxData)+1
1589 .L186:
1590 0d0c 90E0 ldi r25,lo8(EE_Parameter)
1591 0d0e E92E mov r14,r25
1592 0d10 90E0 ldi r25,hi8(EE_Parameter)
1593 0d12 F92E mov r15,r25
1594 0d14 4CE5 ldi r20,lo8(92)
1595 0d16 B701 movw r22,r14
1596 0d18 F801 movw r30,r16
1597 0d1a 8081 ld r24,Z
1598 0d1c 0E94 0000 call ReadParameterSet
1599 .L188:
1600 0d20 8091 0000 lds r24,UebertragungAbgeschlossen
1601 0d24 8823 tst r24
1602 0d26 01F0 breq .L188
1603 0d28 E091 0000 lds r30,pRxData
1604 0d2c F091 0000 lds r31,(pRxData)+1
1605 0d30 8081 ld r24,Z
1606 0d32 8983 std Y+1,r24
1607 0d34 8AE4 ldi r24,lo8(74)
1608 0d36 8A83 std Y+2,r24
1609 0d38 8CE5 ldi r24,lo8(92)
1610 0d3a 90E0 ldi r25,hi8(92)
1611 0d3c 9F93 push r25
1612 0d3e 8F93 push r24
1613 0d40 FF92 push r15
1614 0d42 EF92 push r14
1615 0d44 21E0 ldi r18,lo8(1)
1616 0d46 30E0 ldi r19,hi8(1)
1617 0d48 3F93 push r19
1618 0d4a 2F93 push r18
1619 0d4c CE01 movw r24,r28
1620 0d4e 0296 adiw r24,2
1621 0d50 9F93 push r25
1622 0d52 8F93 push r24
1623 0d54 3F93 push r19
1624 0d56 2F93 push r18
1625 0d58 CE01 movw r24,r28
1626 0d5a 0196 adiw r24,1
1627 0d5c 9F93 push r25
1628 0d5e 8F93 push r24
1629 0d60 83E0 ldi r24,lo8(3)
1630 0d62 8F93 push r24
1631 0d64 81E0 ldi r24,lo8(1)
1632 0d66 8F93 push r24
1633 0d68 81E5 ldi r24,lo8(81)
1634 0d6a 8F93 push r24
1635 0d6c 0E94 0000 call SendOutData
1636 0d70 8DB7 in r24,__SP_L__
1637 0d72 9EB7 in r25,__SP_H__
1638 0d74 0F96 adiw r24,15
1639 0d76 0FB6 in __tmp_reg__,__SREG__
1640 0d78 F894 cli
1641 0d7a 9EBF out __SP_H__,r25
1642 0d7c 0FBE out __SREG__,__tmp_reg__
1643 0d7e 8DBF out __SP_L__,r24
1644 0d80 00C0 rjmp .L174
1645 .L202:
1646 0d82 81E0 ldi r24,lo8(1)
1647 0d84 8093 0000 sts GetExternalControl,r24
1648 0d88 00C0 rjmp .L196
1649 .L199:
1650 0d8a A0E0 ldi r26,lo8(ExternControl)
1651 0d8c B0E0 ldi r27,hi8(ExternControl)
1652 0d8e E091 0000 lds r30,pRxData
1653 0d92 F091 0000 lds r31,(pRxData)+1
1654 0d96 8BE0 ldi r24,lo8(11)
1655 .L214:
1656 0d98 0190 ld r0,Z+
1657 0d9a 0D92 st X+,r0
1658 0d9c 8150 subi r24,lo8(-(-1))
1659 0d9e 01F4 brne .L214
1660 0da0 8091 0000 lds r24,ExternControl+9
1661 0da4 8093 0000 sts ConfirmFrame,r24
1662 .L234:
1663 0da8 8FEF ldi r24,lo8(-1)
1664 0daa 8093 0000 sts PcZugriff,r24
1665 0dae 00C0 rjmp .L196
1666 .L205:
1667 0db0 E091 0000 lds r30,pRxData
1668 0db4 F091 0000 lds r31,(pRxData)+1
1669 0db8 8081 ld r24,Z
1670 0dba 9181 ldd r25,Z+1
1671 0dbc A281 ldd r26,Z+2
1672 0dbe B381 ldd r27,Z+3
1673 0dc0 8093 0000 sts MotorTest,r24
1674 0dc4 9093 0000 sts (MotorTest)+1,r25
1675 0dc8 A093 0000 sts (MotorTest)+2,r26
1676 0dcc B093 0000 sts (MotorTest)+3,r27
1677 .L210:
1678 0dd0 8091 0000 lds r24,UebertragungAbgeschlossen
1679 0dd4 8823 tst r24
1680 0dd6 01F0 breq .L210
1681 0dd8 8091 0000 lds r24,MeineSlaveAdresse
1682 0ddc 1F92 push __zero_reg__
1683 0dde 8F93 push r24
1684 0de0 84E5 ldi r24,lo8(84)
1685 0de2 8F93 push r24
1686 0de4 0E94 0000 call SendOutData
1687 0de8 8FEF ldi r24,lo8(-1)
1688 0dea 8093 0000 sts PcZugriff,r24
1689 0dee 0F90 pop __tmp_reg__
1690 0df0 0F90 pop __tmp_reg__
1691 0df2 0F90 pop __tmp_reg__
1692 0df4 00C0 rjmp .L196
1693 .L204:
1694 0df6 8FEF ldi r24,lo8(-1)
1695 0df8 8093 0000 sts PcZugriff,r24
1696 0dfc E091 0000 lds r30,pRxData
1697 0e00 F091 0000 lds r31,(pRxData)+1
1698 0e04 8081 ld r24,Z
1699 0e06 8093 0000 sts MenuePunkt,r24
1700 0e0a 81E0 ldi r24,lo8(1)
1701 0e0c 8093 0000 sts DebugDisplayAnforderung1,r24
1702 0e10 00C0 rjmp .L196
1703 .L198:
1704 0e12 E091 0000 lds r30,pRxData
1705 0e16 F091 0000 lds r31,(pRxData)+1
1706 0e1a 8081 ld r24,Z
1707 0e1c 8093 0000 sts DebugTextAnforderung,r24
1708 0e20 8032 cpi r24,lo8(32)
1709 0e22 00F0 brlo .L234
1710 0e24 8FE1 ldi r24,lo8(31)
1711 0e26 8093 0000 sts DebugTextAnforderung,r24
1712 0e2a 00C0 rjmp .L234
1713 .L201:
1714 0e2c E091 0000 lds r30,pRxData
1715 0e30 F091 0000 lds r31,(pRxData)+1
1716 0e34 8081 ld r24,Z
1717 0e36 2AE0 ldi r18,lo8(10)
1718 0e38 829F mul r24,r18
1719 0e3a C001 movw r24,r0
1720 0e3c 1124 clr r1
1721 0e3e 9093 0000 sts (DebugDataIntervall)+1,r25
1722 0e42 8093 0000 sts DebugDataIntervall,r24
1723 0e46 892B or r24,r25
1724 0e48 01F4 brne .+2
1725 0e4a 00C0 rjmp .L196
1726 0e4c 81E0 ldi r24,lo8(1)
1727 0e4e 8093 0000 sts DebugDataAnforderung,r24
1728 0e52 00C0 rjmp .L196
1729 .L176:
1730 0e54 0091 0000 lds r16,pRxData
1731 0e58 1091 0000 lds r17,(pRxData)+1
1732 0e5c F801 movw r30,r16
1733 0e5e 8081 ld r24,Z
1734 0e60 9181 ldd r25,Z+1
1735 0e62 9093 0000 sts (KompassValue)+1,r25
1736 0e66 8093 0000 sts KompassValue,r24
1737 0e6a 845E subi r24,lo8(-(540))
1738 0e6c 9D4F sbci r25,hi8(-(540))
1739 0e6e 2091 0000 lds r18,KompassStartwert
1740 0e72 3091 0000 lds r19,(KompassStartwert)+1
1741 0e76 821B sub r24,r18
1742 0e78 930B sbc r25,r19
1743 0e7a 68E6 ldi r22,lo8(360)
1744 0e7c 71E0 ldi r23,hi8(360)
1745 0e7e 0E94 0000 call __divmodhi4
1746 0e82 845B subi r24,lo8(-(-180))
1747 0e84 9040 sbci r25,hi8(-(-180))
1748 0e86 9093 0000 sts (KompassRichtung)+1,r25
1749 0e8a 8093 0000 sts KompassRichtung,r24
1750 0e8e 00C0 rjmp .L174
1751 .L179:
1752 0e90 0091 0000 lds r16,pRxData
1753 0e94 1091 0000 lds r17,(pRxData)+1
1754 0e98 F801 movw r30,r16
1755 0e9a 8081 ld r24,Z
1756 0e9c 8150 subi r24,lo8(-(-1))
1757 0e9e 8530 cpi r24,lo8(5)
1758 0ea0 00F4 brsh .L190
1759 0ea2 8181 ldd r24,Z+1
1760 0ea4 8A34 cpi r24,lo8(74)
1761 0ea6 01F0 breq .L239
1762 .L190:
1763 0ea8 1982 std Y+1,__zero_reg__
1764 .L223:
1765 0eaa 8091 0000 lds r24,UebertragungAbgeschlossen
1766 0eae 8823 tst r24
1767 0eb0 01F0 breq .L223
1768 0eb2 81E0 ldi r24,lo8(1)
1769 0eb4 90E0 ldi r25,hi8(1)
1770 0eb6 9F93 push r25
1771 0eb8 8F93 push r24
1772 0eba CE01 movw r24,r28
1773 0ebc 0196 adiw r24,1
1774 0ebe 9F93 push r25
1775 0ec0 8F93 push r24
1776 0ec2 81E0 ldi r24,lo8(1)
1777 0ec4 8F93 push r24
1778 0ec6 8F93 push r24
1779 0ec8 83E5 ldi r24,lo8(83)
1780 0eca 8F93 push r24
1781 0ecc 0E94 0000 call SendOutData
1782 0ed0 8DB7 in r24,__SP_L__
1783 0ed2 9EB7 in r25,__SP_H__
1784 0ed4 0796 adiw r24,7
1785 0ed6 0FB6 in __tmp_reg__,__SREG__
1786 0ed8 F894 cli
1787 0eda 9EBF out __SP_H__,r25
1788 0edc 0FBE out __SREG__,__tmp_reg__
1789 0ede 8DBF out __SP_L__,r24
1790 0ee0 00C0 rjmp .L174
1791 .L239:
1792 0ee2 A0E0 ldi r26,lo8(EE_Parameter)
1793 0ee4 B0E0 ldi r27,hi8(EE_Parameter)
1794 0ee6 3296 adiw r30,2
1795 0ee8 8CE5 ldi r24,lo8(92)
1796 .L193:
1797 0eea 0190 ld r0,Z+
1798 0eec 0D92 st X+,r0
1799 0eee 8150 subi r24,lo8(-(-1))
1800 0ef0 01F4 brne .L193
1801 0ef2 4CE5 ldi r20,lo8(92)
1802 0ef4 60E0 ldi r22,lo8(EE_Parameter)
1803 0ef6 70E0 ldi r23,hi8(EE_Parameter)
1804 0ef8 F801 movw r30,r16
1805 0efa 8081 ld r24,Z
1806 0efc 0E94 0000 call WriteParameterSet
1807 0f00 6091 0000 lds r22,EE_Parameter+45
1808 0f04 70E0 ldi r23,lo8(0)
1809 0f06 80E0 ldi r24,lo8(0)
1810 0f08 90E0 ldi r25,hi8(0)
1811 0f0a 24EC ldi r18,lo8(2500)
1812 0f0c 39E0 ldi r19,hi8(2500)
1813 0f0e 40E0 ldi r20,hlo8(2500)
1814 0f10 50E0 ldi r21,hhi8(2500)
1815 0f12 0E94 0000 call __mulsi3
1816 0f16 6093 0000 sts Umschlag180Nick,r22
1817 0f1a 7093 0000 sts (Umschlag180Nick)+1,r23
1818 0f1e 8093 0000 sts (Umschlag180Nick)+2,r24
1819 0f22 9093 0000 sts (Umschlag180Nick)+3,r25
1820 0f26 6091 0000 lds r22,EE_Parameter+46
1821 0f2a 70E0 ldi r23,lo8(0)
1822 0f2c 80E0 ldi r24,lo8(0)
1823 0f2e 90E0 ldi r25,hi8(0)
1824 0f30 0E94 0000 call __mulsi3
1825 0f34 6093 0000 sts Umschlag180Roll,r22
1826 0f38 7093 0000 sts (Umschlag180Roll)+1,r23
1827 0f3c 8093 0000 sts (Umschlag180Roll)+2,r24
1828 0f40 9093 0000 sts (Umschlag180Roll)+3,r25
1829 0f44 E091 0000 lds r30,pRxData
1830 0f48 F091 0000 lds r31,(pRxData)+1
1831 0f4c 8081 ld r24,Z
1832 0f4e 0E94 0000 call SetActiveParamSetNumber
1833 0f52 0E94 0000 call GetActiveParamSetNumber
1834 0f56 8983 std Y+1,r24
1835 0f58 0E94 0000 call Piep
1836 0f5c 00C0 rjmp .L223
1837 .L222:
1838 0f5e 0091 0000 lds r16,pRxData
1839 0f62 1091 0000 lds r17,(pRxData)+1
1840 0f66 00C0 rjmp .L215
1841 .L184:
1842 0f68 8630 cpi r24,lo8(6)
1843 0f6a 00F4 brsh .+2
1844 0f6c 00C0 rjmp .L186
1845 0f6e 85E0 ldi r24,lo8(5)
1846 0f70 F801 movw r30,r16
1847 0f72 8083 st Z,r24
1848 0f74 0091 0000 lds r16,pRxData
1849 0f78 1091 0000 lds r17,(pRxData)+1
1850 0f7c 00C0 rjmp .L186
1851 .L237:
1852 0f7e 8AE0 ldi r24,lo8(10)
1853 0f80 989F mul r25,r24
1854 0f82 C001 movw r24,r0
1855 0f84 1124 clr r1
1856 0f86 0E94 0000 call SetDelay
1857 0f8a 9093 0000 sts (Timer3D)+1,r25
1858 0f8e 8093 0000 sts Timer3D,r24
1859 0f92 0091 0000 lds r16,pRxData
1860 0f96 1091 0000 lds r17,(pRxData)+1
1861 0f9a 00C0 rjmp .L215
1862 .L238:
1863 0f9c 0E94 0000 call GetActiveParamSetNumber
1864 0fa0 F801 movw r30,r16
1865 0fa2 8083 st Z,r24
1866 0fa4 0091 0000 lds r16,pRxData
1867 0fa8 1091 0000 lds r17,(pRxData)+1
1868 0fac 00C0 rjmp .L182
1869 .L221:
1870 /* epilogue: frame size=2 */
1871 0fae 2296 adiw r28,2
1872 0fb0 0FB6 in __tmp_reg__,__SREG__
1873 0fb2 F894 cli
1874 0fb4 DEBF out __SP_H__,r29
1875 0fb6 0FBE out __SREG__,__tmp_reg__
1876 0fb8 CDBF out __SP_L__,r28
1877 0fba DF91 pop r29
1878 0fbc CF91 pop r28
1879 0fbe 1F91 pop r17
1880 0fc0 0F91 pop r16
1881 0fc2 FF90 pop r15
1882 0fc4 EF90 pop r14
1883 0fc6 0895 ret
1884 /* epilogue end (size=13) */
1885 /* function BearbeiteRxDaten size 567 (540) */
1887 .global GetExternalControl
1888 .global GetExternalControl
1889 .section .bss
1892 GetExternalControl:
1893 0000 00 .skip 1,0
1894 .global DebugDisplayAnforderung1
1895 .global DebugDisplayAnforderung1
1898 DebugDisplayAnforderung1:
1899 0001 00 .skip 1,0
1900 .global DebugDisplayAnforderung
1901 .global DebugDisplayAnforderung
1904 DebugDisplayAnforderung:
1905 0002 00 .skip 1,0
1906 .global DebugDataAnforderung
1907 .global DebugDataAnforderung
1910 DebugDataAnforderung:
1911 0003 00 .skip 1,0
1912 .global GetVersionAnforderung
1913 .global GetVersionAnforderung
1916 GetVersionAnforderung:
1917 0004 00 .skip 1,0
1918 .global GetPPMChannelAnforderung
1919 .global GetPPMChannelAnforderung
1922 GetPPMChannelAnforderung:
1923 0005 00 .skip 1,0
1924 .global DisplayLine
1925 .global DisplayLine
1928 DisplayLine:
1929 0006 00 .skip 1,0
1930 .global SioTmp
1931 .global SioTmp
1934 SioTmp:
1935 0007 00 .skip 1,0
1936 .global NeuerDatensatzEmpfangen
1937 .global NeuerDatensatzEmpfangen
1940 NeuerDatensatzEmpfangen:
1941 0008 00 .skip 1,0
1942 .global NeueKoordinateEmpfangen
1943 .global NeueKoordinateEmpfangen
1946 NeueKoordinateEmpfangen:
1947 0009 00 .skip 1,0
1948 .global UebertragungAbgeschlossen
1949 .data
1952 UebertragungAbgeschlossen:
1953 0000 01 .byte 1
1954 .global CntCrcError
1955 .global CntCrcError
1956 .section .bss
1959 CntCrcError:
1960 000a 00 .skip 1,0
1961 .global AnzahlEmpfangsBytes
1962 .global AnzahlEmpfangsBytes
1965 AnzahlEmpfangsBytes:
1966 000b 00 .skip 1,0
1967 .global pRxData
1968 .global pRxData
1971 pRxData:
1972 000c 0000 .skip 2,0
1973 .global RxDataLen
1974 .global RxDataLen
1977 RxDataLen:
1978 000e 00 .skip 1,0
1979 .global PC_DebugTimeout
1980 .global PC_DebugTimeout
1983 PC_DebugTimeout:
1984 000f 00 .skip 1,0
1985 .global DebugTextAnforderung
1986 .data
1989 DebugTextAnforderung:
1990 0001 FF .byte -1
1991 .global PcZugriff
1994 PcZugriff:
1995 0002 64 .byte 100
1996 .global MotorTest
1997 .global MotorTest
1998 .section .bss
2001 MotorTest:
2002 0010 0000 0000 .skip 4,0
2003 .global MeineSlaveAdresse
2004 .data
2007 MeineSlaveAdresse:
2008 0003 01 .byte 1
2009 .global DebugDataIntervall
2012 DebugDataIntervall:
2013 0004 C800 .word 200
2014 .global Intervall3D
2015 .global Intervall3D
2016 .section .bss
2019 Intervall3D:
2020 0014 0000 .skip 2,0
2021 .global ANALOG_TEXT
2022 .data
2025 ANALOG_TEXT:
2026 0006 416E 676C .ascii "AngleNick "
2026 654E 6963
2026 6B20 2020
2026 2020 2020
2027 0016 416E 676C .ascii "AngleRoll "
2027 6552 6F6C
2027 6C20 2020
2027 2020 2020
2028 0026 4163 634E .ascii "AccNick "
2028 6963 6B20
2028 2020 2020
2028 2020 2020
2029 0036 4163 6352 .ascii "AccRoll "
2029 6F6C 6C20
2029 2020 2020
2029 2020 2020
2030 0046 4779 726F .ascii "GyroGier "
2030 4769 6572
2030 2020 2020
2030 2020 2020
2031 0056 4869 6768 .ascii "Hight Value "
2031 7420 5661
2031 6C75 6520
2031 2020 2020
2032 0066 4163 635A .ascii "AccZ "
2032 2020 2020
2032 2020 2020
2032 2020 2020
2033 0076 4761 7320 .ascii "Gas "
2033 2020 2020
2033 2020 2020
2033 2020 2020
2034 0086 436F 6D70 .ascii "Compass Value "
2034 6173 7320
2034 5661 6C75
2034 6520 2020
2035 0096 566F 6C74 .ascii "Voltage "
2035 6167 6520
2035 2020 2020
2035 2020 2020
2036 00a6 456D 7066 .ascii "Empfang "
2036 616E 6720
2036 2020 2020
2036 2020 2020
2037 00b6 4779 726F .ascii "Gyro Kompass "
2037 204B 6F6D
2037 7061 7373
2037 2020 2020
2038 00c6 4D6F 746F .ascii "Motor Front "
2038 7220 4672
2038 6F6E 7420
2038 2020 2020
2039 00d6 4D6F 746F .ascii "Motor Rear "
2039 7220 5265
2039 6172 2020
2039 2020 2020
2040 00e6 4D6F 746F .ascii "Motor Left "
2040 7220 4C65
2040 6674 2020
2040 2020 2020
2041 00f6 4D6F 746F .ascii "Motor Right "
2041 7220 5269
2041 6768 7420
2041 2020 2020
2042 0106 2020 2020 .ascii " "
2042 2020 2020
2042 2020 2020
2042 2020 2020
2043 0116 2020 2020 .ascii " "
2043 2020 2020
2043 2020 2020
2043 2020 2020
2044 0126 2020 2020 .ascii " "
2044 2020 2020
2044 2020 2020
2044 2020 2020
2045 0136 4D4B 334D .ascii "MK3Mag CalState "
2045 6167 2043
2045 616C 5374
2045 6174 6520
2046 0146 5365 7276 .ascii "Servo "
2046 6F20 2020
2046 2020 2020
2046 2020 2020
2047 0156 2020 2020 .ascii " "
2047 2020 2020
2047 2020 2020
2047 2020 2020
2048 0166 2020 2020 .ascii " "
2048 2020 2020
2048 2020 2020
2048 2020 2020
2049 0176 2020 2020 .ascii " "
2049 2020 2020
2049 2020 2020
2049 2020 2020
2050 0186 2020 2020 .ascii " "
2050 2020 2020
2050 2020 2020
2050 2020 2020
2051 0196 2020 2020 .ascii " "
2051 2020 2020
2051 2020 2020
2051 2020 2020
2052 01a6 2020 2020 .ascii " "
2052 2020 2020
2052 2020 2020
2052 2020 2020
2053 01b6 4B61 6C6D .ascii "Kalman_MaxDrift "
2053 616E 5F4D
2053 6178 4472
2053 6966 7420
2054 01c6 2020 2020 .ascii " "
2054 2020 2020
2054 2020 2020
2054 2020 2020
2055 01d6 2020 2020 .ascii " "
2055 2020 2020
2055 2020 2020
2055 2020 2020
2056 01e6 4750 535F .ascii "GPS_Nick "
2056 4E69 636B
2056 2020 2020
2056 2020 2020
2057 01f6 4750 535F .ascii "GPS_Roll "
2057 526F 6C6C
2057 2020 2020
2057 2020 2020
2058 .lcomm UartState.2411,1
2059 .lcomm buf_ptr.2410,1
2060 .lcomm crc2.2409,1
2061 .lcomm crc1.2408,1
2062 .lcomm crc.2407,2
2063 .lcomm ptr.2394,2
2064 .comm SendeBuffer,150,1
2065 .comm RxdBuffer,150,1
2066 .comm Debug_Timer,2,1
2067 .comm Kompass_Timer,2,1
2068 .comm DebugOut,66,1
2069 .comm WinkelOut,8,1
2070 .comm Data3D,14,1
2071 .comm ExternControl,11,1
2072 .comm VersionInfo,10,1
2073 .comm NMEABuffer,150,1
2074 .comm ConfirmFrame,1,1
2075 .comm Timer3D,2,1
2076 /* File "uart.c": code 2035 = 0x07f3 (1911), prologues 60, epilogues 64 */
DEFINED SYMBOLS
*ABS*:00000000 uart.c
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2 *ABS*:0000003f __SREG__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:3 *ABS*:0000003e __SP_H__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:4 *ABS*:0000003d __SP_L__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:5 *ABS*:00000000 __tmp_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:6 *ABS*:00000001 __zero_reg__
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:12 .text:00000000 __vector_22
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1952 .data:00000000 UebertragungAbgeschlossen
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2062 .bss:0000001c ptr.2394
*COM*:00000096 SendeBuffer
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:70 .text:00000070 __vector_20
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1934 .bss:00000007 SioTmp
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2058 .bss:00000017 buf_ptr.2410
.bss:00000016 UartState.2411
*COM*:00000096 RxdBuffer
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2061 .bss:0000001a crc.2407
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2060 .bss:00000019 crc1.2408
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2059 .bss:00000018 crc2.2409
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1959 .bss:0000000a CntCrcError
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1940 .bss:00000008 NeuerDatensatzEmpfangen
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1965 .bss:0000000b AnzahlEmpfangsBytes
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:287 .text:00000250 AddCRC
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:363 .text:000002d6 Decode64
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1971 .bss:0000000c pRxData
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1977 .bss:0000000e RxDataLen
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:470 .text:00000396 uart_putchar
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:498 .text:000003bc WriteProgramData
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:508 .text:000003be UART_Init
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2012 .data:00000004 DebugDataIntervall
*COM*:00000002 Debug_Timer
*COM*:00000002 Kompass_Timer
*COM*:0000000a VersionInfo
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:556 .text:0000042e SendOutData
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:838 .text:0000063c DatenUebertragung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1904 .bss:00000002 DebugDisplayAnforderung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1898 .bss:00000001 DebugDisplayAnforderung1
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1916 .bss:00000004 GetVersionAnforderung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1892 .bss:00000000 GetExternalControl
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1910 .bss:00000003 DebugDataAnforderung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2019 .bss:00000014 Intervall3D
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1989 .data:00000001 DebugTextAnforderung
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2025 .data:00000006 ANALOG_TEXT
*COM*:00000001 ConfirmFrame
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1922 .bss:00000005 GetPPMChannelAnforderung
*COM*:00000002 Timer3D
*COM*:0000000e Data3D
*COM*:00000042 DebugOut
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1928 .bss:00000006 DisplayLine
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2007 .data:00000003 MeineSlaveAdresse
*COM*:0000000b ExternControl
*COM*:00000008 WinkelOut
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1404 .text:00000b5e BearbeiteRxDaten
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1994 .data:00000002 PcZugriff
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:2001 .bss:00000010 MotorTest
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1946 .bss:00000009 NeueKoordinateEmpfangen
C:\DOKUME~1\DPeters\LOKALE~1\Temp/cc8RanbA.s:1983 .bss:0000000f PC_DebugTimeout
*COM*:00000096 NMEABuffer
 
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
SetDelay
CheckDelay
PPM_in
EE_Parameter
IntegralNick
__divmodsi4
IntegralRoll
ErsatzKompass
__mulsi3
GIER_GRAD_FAKTOR
Menu
DisplayBuff
MaxMenue
MenuePunkt
Parameter_UserParam1
Parameter_UserParam2
RemoteKeys
KompassValue
KompassStartwert
__divmodhi4
KompassRichtung
ReadParameterSet
WriteParameterSet
Umschlag180Nick
Umschlag180Roll
SetActiveParamSetNumber
GetActiveParamSetNumber
Piep
/branches/v0.72p kmpec/version.txt
0,0 → 1,239
 
-------
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