Bootloaders
This commit is contained in:
parent
bf629cf7b1
commit
1fd335b702
12 changed files with 3077 additions and 0 deletions
|
@ -0,0 +1,139 @@
|
|||
:020000021000EC
|
||||
:10F000004BC0000077C0000075C0000073C0000056
|
||||
:10F0100071C000006FC000006DC000006BC0000038
|
||||
:10F0200069C0000067C0000028C2000063C0000083
|
||||
:10F0300061C000005FC000005DC000005BC0000058
|
||||
:10F0400059C0000057C0000055C0000053C0000068
|
||||
:10F0500051C000004FC000004DC000004BC0000078
|
||||
:10F0600049C0000047C0000045C0000043C0000088
|
||||
:10F0700041C000003FC000003DC000003BC0000098
|
||||
:10F0800039C0000037C0000035C0000033C00000A8
|
||||
:10F0900031C000002FC0000011241FBECFEFD0E20E
|
||||
:10F0A000DEBFCDBF04B603FE0EC080915401909127
|
||||
:10F0B000550182349C4D39F410925501109254013F
|
||||
:10F0C000E0E0F0E0099511E0A0E0B1E0E8E2F8EF5F
|
||||
:10F0D00001E00BBF02C007900D92AA34B107D9F727
|
||||
:10F0E00021E0AAE4B1E001C01D92A435B207E1F726
|
||||
:10F0F00002D098C385CF84B7877F84BF88E10FB6DD
|
||||
:10F10000F89480936000109260000FBE81E085BF8C
|
||||
:10F1100082E085BF97D1789480910001882311F017
|
||||
:10F1200066D3FACF8091E00081608093E00082E4B2
|
||||
:10F130009CED90935501809354012CE088E190E080
|
||||
:10F140000FB6F894A895809360000FBE20936000DE
|
||||
:10F15000FFCF42E361EC81E002C1CF92DF92EF92F8
|
||||
:10F16000FF921F93CF93DF9380914C018F77813271
|
||||
:10F1700009F075C080914D01893009F070C080910F
|
||||
:10F18000E800877F8093E8008091E80082FFFCCF51
|
||||
:10F190009091F1008091F100492F582F60E070E0CC
|
||||
:10F1A000B62FA52F942F88274F3F5F4F19F4109249
|
||||
:10F1B00000013EC023E0FC01A0935B0020935700B8
|
||||
:10F1C000E89507B600FCFDCF20E030E011E040916B
|
||||
:10F1D000F2005091F300452B09F437C05091F10033
|
||||
:10F1E0004091F100C52FD42FA901440F551F6C0188
|
||||
:10F1F0007D01C40ED51EE11CF11C0E01F601E0924A
|
||||
:10F200005B0010935700E89511242F5F3F4F203883
|
||||
:10F210003105E9F625E0FC01A0935B00209357003F
|
||||
:10F22000E89507B600FCFDCF81E180935700E89593
|
||||
:10F230008091E8008B778093E800DF91CF911F9158
|
||||
:10F24000FF90EF90DF90CF909EC04091E8004B7709
|
||||
:10F250004093E8004091E80042FFFCCFBFCFDF9130
|
||||
:10F26000CF911F91FF90EF90DF90CF900895913054
|
||||
:10F2700049F0923061F0913279F489E090E023E135
|
||||
:10F2800031E00EC082E190E023E231E009C082E289
|
||||
:10F2900090E021E031E004C085E190E025E331E039
|
||||
:10F2A000FA01318320830895209152013091530156
|
||||
:10F2B0002617370748F06115710539F42091E800E9
|
||||
:10F2C0002E772093E80001C0B901FC0120E0611510
|
||||
:10F2D000710591F18EB38823E1F18530E1F18091E0
|
||||
:10F2E000E80083FD3AC08091E80082FF06C080916B
|
||||
:10F2F000E80082FF24C080E008958091E80080FF4C
|
||||
:10F30000E6CF8091F2009091F3006115710551F004
|
||||
:10F310008830910538F421912093F10061507109F2
|
||||
:10F320000196F3CF21E0089709F020E08091E800F2
|
||||
:10F330008E778093E800CBCF2111CCCFD8CF8EB37E
|
||||
:10F34000882339F0853039F08091E80083FFCFCFF2
|
||||
:10F3500004C082E0089583E0089581E008958F70ED
|
||||
:10F360008093E900EBEEF0E0808181608083EDEE38
|
||||
:10F37000F0E010826093EC0040838091EE00881FE3
|
||||
:10F380008827881F089580914C0187FD05C08091D2
|
||||
:10F39000E80080FF0DC010C08091E80082FD04C02D
|
||||
:10F3A0008EB38111F9CF08958091E8008B7707C063
|
||||
:10F3B0008EB38111ECCF08958091E8008E77809311
|
||||
:10F3C000E80008950F931F93CF93DF9349D050D057
|
||||
:10F3D000C8EDD0E088818F778883888180688883B2
|
||||
:10F3E00088818F7D8883E7EDF0E08081806880836D
|
||||
:10F3F00019BC1EBA10924A0100EE10E0F80180819B
|
||||
:10F400008B7F808388818160888342E060E080E038
|
||||
:10F41000A6DFE1EEF0E080818E7F8083E2EEF0E017
|
||||
:10F42000808181608083808188608083F801808111
|
||||
:10F430008E7F8083888180618883DF91CF911F9147
|
||||
:10F440000F910895E8EDF0E080818F7E8083E7EDF5
|
||||
:10F45000F0E080818160808381E080934B01B2CFB6
|
||||
:10F46000E8EDF0E080818C7F80831092E2000895C7
|
||||
:10F470001092DA001092E10008951F920F920FB6D9
|
||||
:10F480000F9211240BB60F922F933F934F935F93DC
|
||||
:10F490006F937F938F939F93AF93BF93EF93FF935C
|
||||
:10F4A0008091DA0080FF1BC08091D80080FF17C0D8
|
||||
:10F4B0008091DA008E7F8093DA008091D90080FFFE
|
||||
:10F4C0000BC084E189BD86E189BD09B400FEFDCF92
|
||||
:10F4D00081E08EBB8BD103C019BC1EBA87D180914D
|
||||
:10F4E000E10080FF17C08091E20080FF13C080918F
|
||||
:10F4F000E2008E7F8093E2008091E2008061809341
|
||||
:10F50000E2008091D80080628093D80019BC85E029
|
||||
:10F510008EBB6CD18091E10084FF2EC08091E2000F
|
||||
:10F5200084FF2AC084E189BD86E189BD09B400FE5B
|
||||
:10F53000FDCF8091D8008F7D8093D8008091E1002D
|
||||
:10F540008F7E8093E1008091E2008F7E8093E200C5
|
||||
:10F550008091E20081608093E20080914A018823DB
|
||||
:10F5600011F084E007C08091E30087FF02C083E0D0
|
||||
:10F5700001C081E08EBB3AD18091E10083FF21C0C0
|
||||
:10F580008091E20083FF1DC08091E100877F80931E
|
||||
:10F59000E10082E08EBB10924A018091E1008E7FF3
|
||||
:10F5A0008093E1008091E2008E7F8093E200809161
|
||||
:10F5B000E20080618093E20042E060E080E0CFDE24
|
||||
:10F5C00015D1FF91EF91BF91AF919F918F917F9155
|
||||
:10F5D0006F915F914F913F912F910F900BBE0F90C4
|
||||
:10F5E0000FBE0F901F9018951F93CF93DF9300D0FD
|
||||
:10F5F000CDB7DEB7ECE4F1E08091F100819381E0DA
|
||||
:10F60000E435F807C9F7A9DD8091E80083FFDAC087
|
||||
:10F6100090914C0180914D01853009F465C030F422
|
||||
:10F62000813059F168F0833041F1CCC0883009F461
|
||||
:10F630009CC0893009F4ABC0863009F0C3C075C0E6
|
||||
:10F64000903881F0923809F0BDC0809150018F70E0
|
||||
:10F650008093E9009091EB0095FB992790F9109227
|
||||
:10F66000E90001C090E08091E800877F8093E80086
|
||||
:10F670009093F1001092F10083C0292F2D7F09F0A3
|
||||
:10F68000A1C0923009F09EC090914E01911126C008
|
||||
:10F69000209150012F7009F495C02093E9009091BA
|
||||
:10F6A000EB0090FF1BC0833021F48091EB0080625F
|
||||
:10F6B00013C08091EB0080618093EB0081E090E0CB
|
||||
:10F6C000022E01C0880F0A94EAF78093EA00109294
|
||||
:10F6D000EA008091EB0088608093EB001092E900D3
|
||||
:10F6E0008091E800877F4FC091116CC010914E014E
|
||||
:10F6F0001F778091E3008078812B8093E3008091D5
|
||||
:10F70000E800877F8093E8003EDE8091E80080FF7C
|
||||
:10F71000FCCF8091E30080688093E300112311F017
|
||||
:10F7200083E001C082E08EBB4DC09058923008F05B
|
||||
:10F7300049C0AE014F5F5F4F6091500180914E0113
|
||||
:10F7400090914F0194DD009709F43CC02091E800AE
|
||||
:10F75000277F2093E800BC0189819A81A5DD8091F3
|
||||
:10F76000E8008B778093E8002DC0903859F58091A0
|
||||
:10F77000E800877F8093E80080914A018093F10040
|
||||
:10F780008091E8008E778093E800FDDD1BC0911129
|
||||
:10F7900019C090914E019230A8F48091E800877FC3
|
||||
:10F7A0008093E80090934A01EEDD80914A01811137
|
||||
:10F7B00004C08091E30087FF02C084E001C081E0C3
|
||||
:10F7C0008EBBC7DC8091E80083FF0AC08091E8000F
|
||||
:10F7D000877F8093E8008091EB0080628093EB004C
|
||||
:10F7E0000F900F90DF91CF911F9108950895CF93BF
|
||||
:10F7F0008EB38823A9F08091E9008F709091EC007E
|
||||
:10F8000090FF02C090E801C090E0C92FC82B109271
|
||||
:10F81000E9008091E80083FDE7DECF70C093E90046
|
||||
:08F82000CF910895F894FFCF89
|
||||
:10F8280001090222000101008032090400000103DD
|
||||
:10F8380000000009211101000122150007058103BC
|
||||
:10F848004000051201100100000008EB03672001C9
|
||||
:10F85800000000000106DCFF09FBA10109021500F8
|
||||
:0AF8680025FF75089602019102C009
|
||||
:040000031000F000F9
|
||||
:00000001FF
|
|
@ -0,0 +1,247 @@
|
|||
:020000021000EC
|
||||
:10F000004BC0000066C0000064C0000062C0000089
|
||||
:10F0100060C000005EC000005CC000005AC000007C
|
||||
:10F0200058C0000056C00000ACC4000052C0000030
|
||||
:10F0300050C000004EC000004CC000004AC000009C
|
||||
:10F0400048C0000046C0000044C0000042C00000AC
|
||||
:10F0500040C000003EC000003CC000003AC00000BC
|
||||
:10F0600038C0000036C0000034C0000032C00000CC
|
||||
:10F0700030C000002EC000002CC000002AC00000DC
|
||||
:10F0800028C0000026C0000024C0000022C00000EC
|
||||
:10F0900020C000001EC0000011241FBECFEFD0E230
|
||||
:10F0A000DEBFCDBF11E0A0E0B1E0E4EAFEEF01E099
|
||||
:10F0B0000BBF02C007900D92AC38B107D9F711E031
|
||||
:10F0C000ACE8B1E001C01D92AD39B107E1F72FD333
|
||||
:10F0D000E7C696CF84E08093E9000DC08091E800F8
|
||||
:10F0E0008B778093E80003C08EB3882359F080911A
|
||||
:10F0F000E80082FFF9CF8091E80085FFEFCF809193
|
||||
:10F10000F100089580E0089593E09093E9009091D4
|
||||
:10F11000E80095FD0DC09091E8009E779093E8007F
|
||||
:10F1200003C09EB3992331F09091E80090FFF9CF8E
|
||||
:10F130008093F100089584B7877F84BF88E10FB67C
|
||||
:10F14000F89480936000109260000FBE90E080E819
|
||||
:10F150000FB6F89480936100909361000FBE81E038
|
||||
:10F1600085BF82E085BFF7C382E061EC42E079D3DE
|
||||
:10F1700083E061E842E175D384E060E842E171C375
|
||||
:10F18000809196018032B1F0813239F580919501FC
|
||||
:10F19000813A19F58091E800877F8093E80088E044
|
||||
:10F1A00091E067E070E0BAD58091E8008B778093BA
|
||||
:10F1B000E800089580919501813279F48091E8000A
|
||||
:10F1C000877F8093E80088E091E067E070E001D6F7
|
||||
:10F1D0008091E8008E778093E80008952F923F9207
|
||||
:10F1E0005F926F927F928F929F92AF92BF92CF92D7
|
||||
:10F1F000DF92EF92FF920F931F93DF93CF930F92C3
|
||||
:10F20000CDB7DEB784E08093E9008091E80082FF0B
|
||||
:10F210007BC210928C015EDF182F8C3409F421C25E
|
||||
:10F22000803509F41EC2843529F0853429F4109202
|
||||
:10F230000F0117C24FDF15C2843711F484E448C0B0
|
||||
:10F24000813611F489E536C28134F1F443DF382F79
|
||||
:10F25000330F20E079010027F7FC0095102FE09292
|
||||
:10F260008F01F0929001009391011093920132DF8F
|
||||
:10F2700090E0880F991FAA2797FDA095BA2F8E2995
|
||||
:10F280009F29A02BB12BE5C1803711F483E512C271
|
||||
:10F29000833559F400E011E0D8018D918D0134DF00
|
||||
:10F2A000B1E007301B07C1F706C2863521F481E3C0
|
||||
:10F2B0002BDF80E3FFC1833731F482E825DF87E964
|
||||
:10F2C00023DF8EE1F7C1823631F489E51DDF81E06D
|
||||
:10F2D0001BDF80E0EFC1853621F580E090E0DC01A6
|
||||
:10F2E00033E025E0FC01A0935B0030935700E895E4
|
||||
:10F2F00007B600FCFDCFFC01A0935B0020935700F4
|
||||
:10F30000E89507B600FCFDCF8F5F9E4FAF4FBF4F14
|
||||
:10F310008F3EE0EF9E07E1E0AE07E0E0BE0711F7A9
|
||||
:10F32000A0C18C3651F4D6DE809599E0E1E0F0E0A2
|
||||
:10F33000082E90935700E89594C1823719F4E1E0C4
|
||||
:10F34000F0E00EC0863419F4E0E0F0E009C08E343D
|
||||
:10F3500019F4E3E0F0E004C0813539F4E2E0F0E0D4
|
||||
:10F3600089E0809357008491A5C18334A1F4E09093
|
||||
:10F370008F01F09090010091910110919201AADE0D
|
||||
:10F3800090E021E00C01F70100935B00209357000F
|
||||
:10F39000E895112466C18336E1F4E0908F01F09086
|
||||
:10F3A0009001009191011091920181E090E0A0E024
|
||||
:10F3B000B0E0E82AF92A0A2B1B2B8CDE90E021E032
|
||||
:10F3C0000C01F70100935B0020935700E89511248E
|
||||
:10F3D00035C18D3699F480918F0190919001A09163
|
||||
:10F3E0009101B091920125E0FC01A0935B00209374
|
||||
:10F3F0005700E89507B600FCFDCF33C1823419F001
|
||||
:10F40000873609F0F7C066DEE82E64DE082F62DE7C
|
||||
:10F41000982E8554823008F04CC13E2D20E0202EDD
|
||||
:10F420003324222A332A173609F058C081E1809309
|
||||
:10F430005700E89510E001E04CC020918F01309119
|
||||
:10F4400090014091910150919201992D963419F5B6
|
||||
:10F45000812F90E0A0E0B0E0822B932BA42BB52B62
|
||||
:10F46000ABBFFC01879150DE112399F080918F0191
|
||||
:10F4700090919001A0919101B09192010296A11DED
|
||||
:10F48000B11D80938F0190939001A0939101B0934F
|
||||
:10F49000920110271BC0DA01C901B695A79597956F
|
||||
:10F4A0008795E8D431DE80918F0190919001A091F1
|
||||
:10F4B0009101B09192010296A11DB11D80938F011F
|
||||
:10F4C00090939001A0939101B09392010894210828
|
||||
:10F4D00031082114310409F0B0CFEDC0A0908F01A4
|
||||
:10F4E000B0909001C0909101D0909201A92DA634C6
|
||||
:10F4F00009F069C083E0F501C0925B00809357007A
|
||||
:10F50000E89507B600FCFDCF5EC0B92DB63491F585
|
||||
:10F51000222361F1E0908F01F09090010091910120
|
||||
:10F5200010919201D7DD782E6624282D30E026290F
|
||||
:10F5300037290901F70100935B0050925700E895C5
|
||||
:10F54000112480918F0190919001A0919101B0912F
|
||||
:10F5500092010296A11DB11D80938F01909390019D
|
||||
:10F56000A0939101B093920120E029C0B3DD882ED1
|
||||
:10F5700021E025C0E0908F01F09090010091910171
|
||||
:10F580001091920116950795F794E7942983A2DDCF
|
||||
:10F59000682FC70177D480918F0190919001A0913D
|
||||
:10F5A0009101B09192010296A11DB11D80938F012E
|
||||
:10F5B00090939001A0939101B093920129810894B6
|
||||
:10F5C0002108310804C0882420E0552453942114D4
|
||||
:10F5D000310409F09ACFE92DE63409F042C085E004
|
||||
:10F5E000F501C0925B0080935700E89507B600FCD8
|
||||
:10F5F000FDCF37C0823581F480918F0190919001C9
|
||||
:10F60000A0919101B0919201ABBFFC0107911691BD
|
||||
:10F61000812F7ADD802F4EC0843429F5E0908F0150
|
||||
:10F62000F09090010091910110919201169507952B
|
||||
:10F63000F794E7944FDD682FC70124D480918F01A0
|
||||
:10F6400090919001A0919101B09192010296A11D1B
|
||||
:10F65000B11D80938F0190939001A0939101B0937D
|
||||
:10F6600092018DE027C0843611F580918F01909131
|
||||
:10F670009001A0919101B0919201B695A7959795AF
|
||||
:10F680008795F8D341DD80918F0190919001A091F1
|
||||
:10F690009101B09192010296A11DB11D80938F013D
|
||||
:10F6A00090939001A0939101B093920104C08B318B
|
||||
:10F6B00011F08FE329DD83E08093E9009091E80069
|
||||
:10F6C0008091E8008E778093E80095FF04C010C019
|
||||
:10F6D0008EB38823C9F08091E80080FFF9CF809134
|
||||
:10F6E000E8008E778093E80003C08EB3882361F032
|
||||
:10F6F0008091E80080FFF9CF84E08093E900809159
|
||||
:10F70000E8008B778093E8000F90CF91DF911F91F5
|
||||
:10F710000F91FF90EF90DF90CF90BF90AF909F90B0
|
||||
:10F720008F907F906F905F903F902F900895EF9211
|
||||
:10F73000FF920F931F93DF93CF930F92CDB7DEB756
|
||||
:10F7400084B714BE9091600098619093600010920D
|
||||
:10F75000600010928C0190E0FC01E270F07081FD7D
|
||||
:10F760000BC0859194912FEF8F3F920729F0E09184
|
||||
:10F770008D01F0918E010995209A289A6F9A779AB7
|
||||
:10F780006D9A759A3B9A439AD6DC6F9A779A7894D9
|
||||
:10F7900081E010E000E0E0E0F0E0E590F49025C0CA
|
||||
:10F7A00089831CDD55D30F5F8981002311F4180F65
|
||||
:10F7B000779A011709F477981F3F59F0112351F4F4
|
||||
:10F7C000813041F080918C018F5F80938C0181E0CA
|
||||
:10F7D00001C08FEF90918C01923338F09FEFE916C2
|
||||
:10F7E0009FEFF90611F010920F0190910F019923EC
|
||||
:10F7F000B9F68091E00081608093E0002CE088E120
|
||||
:10F8000090E00FB6F894A895809360000FBE209307
|
||||
:10F810006000FFCF923049F0933061F09130C1F039
|
||||
:10F8200020E030E080E090E017C02EE330E082E29C
|
||||
:10F8300091E012C0882331F42091600130E080E62D
|
||||
:10F8400091E00AC02091640130E084E691E004C0B8
|
||||
:10F8500022E130E080E191E0FA0191838083C901E7
|
||||
:10F8600008958093E900EBEEF0E080818160808371
|
||||
:10F87000EDEEF0E010826093EC0040838091EE00AA
|
||||
:10F88000881F8827881F08958091950187FF11C0E0
|
||||
:10F8900003C08EB38823B1F08091E80082FFF9CFD6
|
||||
:10F8A0008091E8008B778093E80008958EB38823D9
|
||||
:10F8B00049F08091E80080FFF9CF8091E8008E77D1
|
||||
:10F8C0008093E800089550D057D08091D800982FA9
|
||||
:10F8D0009F779093D80080688093D80084E189BD99
|
||||
:10F8E00089B5826089BD09B400FEFDCF8091D80042
|
||||
:10F8F0008F7D8093D8008091D70080688093D70057
|
||||
:10F900001EBA109293018091E0008B7F8093E000FB
|
||||
:10F910008091D80081608093D80080E060E042E070
|
||||
:10F92000A0DF8091E1008E7F8093E1008091E20072
|
||||
:10F9300081608093E2008091E20088608093E20021
|
||||
:10F940008091E0008E7F8093E0008091D8008061FC
|
||||
:10F950008093D8000895E7EDF0E080818160808396
|
||||
:10F9600081E080939401AFCFE8EDF0E080818C7F5F
|
||||
:10F9700080831092E20008951092DA001092E10064
|
||||
:10F9800008951F920F920FB60F920BB60F9211248B
|
||||
:10F990002F933F934F935F936F937F938F939F9397
|
||||
:10F9A000AF93BF93EF93FF938091DA0080FF13C072
|
||||
:10F9B0008091D80080FF0FC08091DA008E7F809305
|
||||
:10F9C000DA008091D90080FF04C081E08EBBA5D110
|
||||
:10F9D00002C01EBAA2D18091E10080FF1CC08091BC
|
||||
:10F9E000E20080FF18C08091E1008E7F8093E100EB
|
||||
:10F9F0008091E2008E7F8093E2008091E20080613E
|
||||
:10FA00008093E2008091D80080628093D80019BC76
|
||||
:10FA100085E08EBB82D18091E10084FF2DC0809172
|
||||
:10FA2000E20084FF29C084E189BD89B5826089BD77
|
||||
:10FA300009B400FEFDCF8091D8008F7D8093D8005F
|
||||
:10FA40008091E1008F7E8093E1008091E2008F7EC3
|
||||
:10FA50008093E2008091E20081608093E2008091D7
|
||||
:10FA60009301882321F48091E30087FF02C084E0A2
|
||||
:10FA700001C081E08EBB51D18091E10083FF21C0A4
|
||||
:10FA80008091E20083FF1DC08091E100877F809319
|
||||
:10FA9000E10082E08EBB109293018091E1008E7FA5
|
||||
:10FAA0008093E1008091E2008E7F8093E20080915C
|
||||
:10FAB000E20080618093E20080E060E042E0D1DE1D
|
||||
:10FAC0002CD18091E10082FF0AC08091E20082FF88
|
||||
:10FAD00006C08091E1008B7F8093E1001ED1FF91F1
|
||||
:10FAE000EF91BF91AF919F918F917F916F915F91B6
|
||||
:10FAF0004F913F912F910F900BBE0F900FBE0F9023
|
||||
:10FB00001F9018950F931F93DF93CF9300D0CDB71D
|
||||
:10FB1000DEB7E5E9F1E08091F100819381E0ED3914
|
||||
:10FB2000F807C9F78091950190919601953009F4F5
|
||||
:10FB30006BC0963040F4913061F1913070F09330A9
|
||||
:10FB400009F0D5C026C0983009F4A3C0993009F453
|
||||
:10FB5000B2C0963009F0CBC07CC0803809F4C8C070
|
||||
:10FB6000823809F0C4C08091990187708093E900C0
|
||||
:10FB70009091EB001092E9008091E800877F8093DC
|
||||
:10FB8000E80081E095FF80E08093F1001092F100A1
|
||||
:10FB90008BC0882319F0823009F0A9C08F718230A0
|
||||
:10FBA00009F0A6C080919701882341F52091990121
|
||||
:10FBB000277009F49DC02093E9008091EB0080FF3D
|
||||
:10FBC0001DC080919601833021F48091EB0080620A
|
||||
:10FBD00013C08091EB0080618093EB0081E090E0A6
|
||||
:10FBE00002C0880F991F2A95E2F78093EA001092CD
|
||||
:10FBF000EA008091EB0088608093EB001092E900AE
|
||||
:10FC00008091E800877F53C0882309F070C010916D
|
||||
:10FC100097011F770FB7F8948091E800877F809352
|
||||
:10FC2000E80032DE8091E80080FFFCCF112311F064
|
||||
:10FC300083E001C082E08EBB8091E3008078812B5D
|
||||
:10FC40008093E3008091E30080688093E3000FBF1E
|
||||
:10FC50004FC08058823008F04AC08091970190913F
|
||||
:10FC6000980160919901AE014F5F5F4FD3DDBC01F8
|
||||
:10FC7000009709F43DC08091E800877F8093E800F9
|
||||
:10FC800089819A814BD08091E8008B778093E8003E
|
||||
:10FC90002FC0803861F58091E800877F8093E8006D
|
||||
:10FCA000809193018093F1008091E8008E7780939A
|
||||
:10FCB000E800EADD1DC08823D1F4909197019230CD
|
||||
:10FCC000B8F48091E800877F8093E80090939301D7
|
||||
:10FCD000DBDD80919301882321F48091E30087FF8D
|
||||
:10FCE00002C084E001C081E08EBB3EDA01C048DA88
|
||||
:10FCF0008091E80083FF0AC08091EB0080628093CE
|
||||
:10FD0000EB008091E800877F8093E8000F900F90D0
|
||||
:10FD1000CF91DF911F910F9108950895282F392FCA
|
||||
:10FD2000F90180919B0190919C018617970718F427
|
||||
:10FD3000BC0120E035C061157105D9F78091E8005C
|
||||
:10FD40008E778093E800F5CF8EB38823F1F185306C
|
||||
:10FD5000C1F18091E80083FD36C08091E80082FD0A
|
||||
:10FD60002AC08091E80080FF1BC08091F200909132
|
||||
:10FD7000F30006C021912093F1006150704001967C
|
||||
:10FD80006115710519F088309105A0F321E08830E4
|
||||
:10FD9000910509F020E08091E8008E778093E800DB
|
||||
:10FDA0006115710589F6222379F605C08EB3882383
|
||||
:10FDB00061F0853061F08091E80082FFF7CF80E04C
|
||||
:10FDC000089583E0089581E0089582E0089583E036
|
||||
:10FDD00008956115710529F51FC02EB32223A1F1E5
|
||||
:10FDE000253071F12091E80023FD2CC02091E8001E
|
||||
:10FDF00022FFF3CFE82FF92F07C08091F100819304
|
||||
:10FE0000CF016150704041F0CF012091F20030915C
|
||||
:10FE1000F3002115310589F72091E8002B77209315
|
||||
:10FE2000E80061157105C9F605C08EB3882361F03D
|
||||
:10FE3000853061F08091E80080FFF7CF80E0089581
|
||||
:10FE400083E0089581E0089582E0089583E00895B5
|
||||
:10FE50001F938EB3882361F01091E9001770109200
|
||||
:10FE6000E9008091E80083FF01C04CDE1093E900B7
|
||||
:10FE70001F910895F999FECF92BD81BDF89A9927F7
|
||||
:10FE800080B50895262FF999FECF1FBA92BD81BD86
|
||||
:10FE900020BD0FB6F894FA9AF99A0FBE019608950C
|
||||
:04FEA000F894FFCF04
|
||||
:10FEA4004C55464143444300000000000000080153
|
||||
:10FEB40012011001020000089A2301000100000150
|
||||
:10FEC400000109023E000201008032090400000121
|
||||
:10FED4000202010005240010010424020405240682
|
||||
:10FEE40000010705820308000209040100020A0058
|
||||
:10FEF400000007050402100000070583021000003B
|
||||
:10FF04000403090426034100560052002000430064
|
||||
:10FF140044004300200042006F006F0074006C0036
|
||||
:0CFF24006F0061006400650072000000C6
|
||||
:040000031000F000F9
|
||||
:00000001FF
|
|
@ -0,0 +1,249 @@
|
|||
:020000021000EC
|
||||
:10F000004BC0000066C0000064C0000062C0000089
|
||||
:10F0100060C000005EC000005CC000005AC000007C
|
||||
:10F0200058C0000056C00000B9C4000052C0000023
|
||||
:10F0300050C000004EC000004CC000004AC000009C
|
||||
:10F0400048C0000046C0000044C0000042C00000AC
|
||||
:10F0500041C000003EC000003CC000003AC00000BB
|
||||
:10F0600038C0000036C0000034C0000032C00000CC
|
||||
:10F0700030C000002EC000002CC000002AC00000DC
|
||||
:10F0800028C0000026C0000024C0000022C00000EC
|
||||
:10F0900020C000001EC0000011241FBECFEFD0E230
|
||||
:10F0A000DEBFCDBF11E0A0E0B1E0EEEAFEEF01E08F
|
||||
:10F0B0000BBF02C007900D92AC38B107D9F711E031
|
||||
:10F0C000ACE8B1E001C01D92AA39B107E1F778D0F0
|
||||
:10F0D000ECC696CF1F920F920FB60F9211240F908D
|
||||
:10F0E0000FBE0F901F90189584E08093E9000DC02B
|
||||
:10F0F0008091E8008B778093E80003C08EB388236B
|
||||
:10F1000051F08091E80082FFF9CF8091E80085FFFF
|
||||
:10F11000EFCF8091F1000895982F83E08093E9006C
|
||||
:10F120008091E80085FD0DC08091E8008E77809386
|
||||
:10F13000E80003C08EB3882331F08091E80080FF9F
|
||||
:10F14000F9CF9093F100089590919201892F8F77D4
|
||||
:10F15000813249F5809193018032A1F0813219F515
|
||||
:10F16000913A09F58091E800877F8093E80088E074
|
||||
:10F1700091E067E070E0C7D48091E8008B778093DE
|
||||
:10F18000E8000895913279F48091E800877F8093B8
|
||||
:10F19000E80088E091E067E070E011D58091E80038
|
||||
:10F1A0008E778093E800089582E061EC42E06AD3B4
|
||||
:10F1B00083E061E842E166D384E060E842E162C353
|
||||
:10F1C0002F923F924F925F926F927F928F929F9277
|
||||
:10F1D000AF92BF92CF92DF92EF92FF920F931F9365
|
||||
:10F1E000DF93CF9300D000D0CDB7DEB784B7877F51
|
||||
:10F1F00084BF88E10FB6F89480936000109260009D
|
||||
:10F200000FBE80E090E020E80FB6F89420936100F4
|
||||
:10F21000809361000FBE11E015BF82E085BFA8D3C7
|
||||
:10F2200010936F0083E080938100789479E0672EDB
|
||||
:10F230008FC224E02093E9008091E80082FF87C21A
|
||||
:10F2400053DF182F853419F410920F0103C0843551
|
||||
:10F2500019F44ADF8DE051C28C34E1F38035D1F3EB
|
||||
:10F26000843711F484E49AC0813611F489E545C2EB
|
||||
:10F270008134F1F439DF382E330C22247101002758
|
||||
:10F28000F7FC0095102FE0928C01F0928D01009315
|
||||
:10F290008E0110938F0128DF90E0880F991FAA2715
|
||||
:10F2A00097FDA095BA2F8E299F29A02BB12BF6C1CF
|
||||
:10F2B000803711F483E521C2833559F400E011E071
|
||||
:10F2C000D8018D918D0128DFB1E007301B07C1F710
|
||||
:10F2D00015C2863521F481E31FDF80E30EC2833738
|
||||
:10F2E00031F482E819DF87E917DF8EE106C285363F
|
||||
:10F2F00029F580E090E0A0E0B0E023E0FC01A093DD
|
||||
:10F300005B0020935700E89507B600FCFDCF35E081
|
||||
:10F31000FC01A0935B0030935700E89507B600FC12
|
||||
:10F32000FDCF80509F4FAF4FBF4F803060EF9607AB
|
||||
:10F3300061E0A60760E0B60701F78CCF8C3649F490
|
||||
:10F34000D3DE8095E1E0F0E0082E60925700E8956A
|
||||
:10F3500081CF823731F4E1E0F0E060925700849190
|
||||
:10F36000CCC1863431F4E0E0F0E060925700849143
|
||||
:10F37000C4C18E3431F4E3E0F0E060925700849130
|
||||
:10F38000BCC1813531F4E2E0F0E060925700849135
|
||||
:10F39000B4C1823631F489E5BFDE81E0BDDE80E0B4
|
||||
:10F3A000ACC1823419F0873609F0F5C09DDE082F14
|
||||
:10F3B0009BDEF82E99DE882E8554823008F09CC1A1
|
||||
:10F3C0000A8319822F2D30E089819A81282B392BCD
|
||||
:10F3D0003C832B83173609F055C091E19093570079
|
||||
:10F3E000E895DD2449C0E0908C01F0908D010091FA
|
||||
:10F3F0008E0110918F01A6E48A1609F58D2D90E0FB
|
||||
:10F40000A0E0B0E08E299F29A02BB12BABBFFC015F
|
||||
:10F41000879182DEDD2081F082E090E0A0E0B0E024
|
||||
:10F42000E80EF91E0A1F1B1FE0928C01F0928D015D
|
||||
:10F4300000938E0110938F0191E0D92618C0D80156
|
||||
:10F44000C701B695A7959795879519D565DE82E092
|
||||
:10F4500090E0A0E0B0E0E80EF91E0A1F1B1FE0924A
|
||||
:10F460008C01F0928D0100938E0110938F01AB817E
|
||||
:10F47000BC811197BC83AB83EB81FC81EF2B09F03E
|
||||
:10F48000B2CF3CC1A0908C01B0908D01C0908E0194
|
||||
:10F49000D0908F01F6E48F1609F067C023E0F501E4
|
||||
:10F4A000C0925B0020935700E89507B600FCFDCFA3
|
||||
:10F4B0005CC036E4831681F5992049F1E0908C0117
|
||||
:10F4C000F0908D0100918E0110918F010DDE582E6C
|
||||
:10F4D0004424872D90E08429952961E00C01F701EF
|
||||
:10F4E00000935B0060935700E895112482E090E060
|
||||
:10F4F000A0E0B0E0E80EF91E0A1F1B1FE0928C018D
|
||||
:10F50000F0928D0100938E0110938F0102C0ECDD0B
|
||||
:10F51000782E91E0992623C0E0908C01F0908D0127
|
||||
:10F5200000918E0110918F0116950795F794E7943D
|
||||
:10F53000DBDD682FC701ABD480918C0190918D01E8
|
||||
:10F54000A0918E01B0918F010296A11DB11D8093F3
|
||||
:10F550008C0190938D01A0938E01B0938F01AB81AC
|
||||
:10F56000BC811197BC83AB8302C077249924EB81C3
|
||||
:10F57000FC81EF2B09F09DCFF6E48F1609F06ACEDF
|
||||
:10F5800025E0F501C0925B0020935700E89507B68F
|
||||
:10F5900000FCFDCF5FCE8334A1F4E0908C01F090AD
|
||||
:10F5A0008D0100918E0110918F019EDD90E031E080
|
||||
:10F5B0000C01F70100935B0030935700E89511248C
|
||||
:10F5C00049CE833639F5E0908C01F0908D010091A1
|
||||
:10F5D0008E0110918F0188DDA8019701216090E0D4
|
||||
:10F5E00061E00C01F90140935B0060935700E895DE
|
||||
:10F5F000112482E090E0A0E0B0E0E80EF91E0A1FBE
|
||||
:10F600001B1FE0928C01F0928D0100938E011093EC
|
||||
:10F610008F0120CE8D3699F480918C0190918D01CF
|
||||
:10F62000A0918E01B0918F0125E0FC01A0935B00B9
|
||||
:10F6300020935700E89507B600FCFDCF0BCE82352E
|
||||
:10F6400081F4E0908C01F0908D0100918E01109179
|
||||
:10F650008F010BBFF701E790F6908F2D5DDD8E2DAA
|
||||
:10F660004CC0843421F5E0908C01F0908D01009124
|
||||
:10F670008E0110918F0116950795F794E79434DD6C
|
||||
:10F68000682FC70104D480918C0190918D01A091C5
|
||||
:10F690008E01B0918F010296A11DB11D80938C0146
|
||||
:10F6A00090938D01A0938E01B0938F01D3CD8436BA
|
||||
:10F6B00009F5E0908C01F0908D0100918E01109180
|
||||
:10F6C0008F01D801C701B695A79597958795D7D390
|
||||
:10F6D00023DD82E090E0A0E0B0E0E80EF91E0A1F12
|
||||
:10F6E0001B1FE0928C01F0928D0100938E0110930C
|
||||
:10F6F0008F0104C08B3111F08FE30EDD93E0909306
|
||||
:10F70000E9009091E8008091E8008E778093E8000E
|
||||
:10F7100095FF04C010C08EB38823C9F08091E80023
|
||||
:10F7200080FFF9CF8091E8008E778093E80003C0D6
|
||||
:10F730008EB3882361F08091E80080FFF9CFA4E0C8
|
||||
:10F74000A093E9008091E8008B778093E80085D34F
|
||||
:10F7500080910F01882309F06CCD8091E0008160D9
|
||||
:10F760008093E0002CE088E190E00FB6F894A89533
|
||||
:10F77000809360000FBE20936000FFCF9B01AC011F
|
||||
:10F7800007B600FCFDCFF999FECF83E0F901409365
|
||||
:10F790005B0080935700E89581E180935700E895DE
|
||||
:10F7A00008959B01AC0107B600FCFDCFF999FECF8F
|
||||
:10F7B00085E0F90140935B0080935700E89581E173
|
||||
:10F7C00080935700E89508950F931F938B019C0138
|
||||
:10F7D00007B600FCFDCFF999FECF81E00A01F801E0
|
||||
:10F7E00020935B0080935700E89511241F910F919F
|
||||
:10F7F000089521E2FC01209357002491822F08955F
|
||||
:10F8000029E0FC01209357002491822F0895E1E024
|
||||
:10F81000F0E089E08093570084910895982F07B60F
|
||||
:10F8200000FCFDCFF999FECF909589E0E1E0F0E092
|
||||
:10F83000092E80935700E8950895FA01923071F0EF
|
||||
:10F84000933089F0913029F480E191E022E130E0B9
|
||||
:10F8500015C080E090E020E030E010C082E291E04E
|
||||
:10F860002EE330E00BC0882329F480E691E024E009
|
||||
:10F8700030E004C084E691E026E230E091838083AA
|
||||
:10F88000C90108958093E9008091EB008160809325
|
||||
:10F89000EB001092ED006093EC004093ED0080913E
|
||||
:10F8A000EE00881F8827881F089580919201882381
|
||||
:10F8B0008CF403C08EB38823B1F08091E80082FFFE
|
||||
:10F8C000F9CF8091E8008B778093E80008958EB39C
|
||||
:10F8D000882349F08091E80080FFF9CF8091E8000B
|
||||
:10F8E0008E778093E8000895EF92FF920F931F9315
|
||||
:10F8F00048D04FD008ED10E0F80180818F778083E9
|
||||
:10F9000080818068808380818F7D8083E7EDF0E057
|
||||
:10F9100080818068808319BC1EBA1092900180EEAD
|
||||
:10F92000E82EF12CF70180818B7F8083F8018081A4
|
||||
:10F930008160808380E060E042E0A4DFE1EEF0E0FF
|
||||
:10F9400080818E7F8083E2EEF0E080818160808321
|
||||
:10F95000808188608083F70180818E7F8083F801B9
|
||||
:10F960008081806180831F910F91FF90EF900895B7
|
||||
:10F97000E7EDF0E080818160808381E080939101F8
|
||||
:10F98000B3CFE8EDF0E080818C7F80831092E200BD
|
||||
:10F9900008951092DA001092E10008951F920F92DC
|
||||
:10F9A0000FB60F920BB60F9211242F933F934F93E4
|
||||
:10F9B0005F936F937F938F939F93AF93BF93EF93D7
|
||||
:10F9C000FF938091DA0080FF1BC08091D80080FFF8
|
||||
:10F9D00017C08091DA008E7F8093DA008091D90081
|
||||
:10F9E00080FF0BC084E189BD86E189BD09B400FEBA
|
||||
:10F9F000FDCF81E08EBB30D203C019BC1EBA2CD221
|
||||
:10FA00008091E10080FF17C08091E20080FF13C069
|
||||
:10FA10008091E2008E7F8093E2008091E20080611D
|
||||
:10FA20008093E2008091D80080628093D80019BC56
|
||||
:10FA300085E08EBB11D28091E10084FF2CC08091C3
|
||||
:10FA4000E20084FF28C084E189BD86E189BD09B454
|
||||
:10FA500000FEFDCF8091D8008F7D8093D8008091EB
|
||||
:10FA6000E1008F7E8093E1008091E2008F7E8093A1
|
||||
:10FA7000E2008091E20081608093E2008091900139
|
||||
:10FA8000882331F48091E30087FD02C081E001C04A
|
||||
:10FA900084E08EBBE1D18091E10083FF21C08091A1
|
||||
:10FAA000E20083FF1DC08091E100877F8093E10029
|
||||
:10FAB00082E08EBB109290018091E1008E7F809356
|
||||
:10FAC000E1008091E2008E7F8093E2008091E2006D
|
||||
:10FAD00080618093E20080E060E042E0D3DEBCD150
|
||||
:10FAE000FF91EF91BF91AF919F918F917F916F9116
|
||||
:10FAF0005F914F913F912F910F900BBE0F900FBED2
|
||||
:10FB00000F901F9018959C01409198015091990178
|
||||
:10FB10004617570718F4F90190E03CC061157105CC
|
||||
:10FB200011F0AB01F8CF8091E8008E778093E80068
|
||||
:10FB300040E050E0F0CF8EB38823E9F18530E9F161
|
||||
:10FB40008091E80083FF02C081E008958091E80081
|
||||
:10FB500082FD2BC08091E80080FF1CC02091F20044
|
||||
:10FB60003091F30007C081918093F10041505040E3
|
||||
:10FB70002F5F3F4F4115510519F02830310598F39B
|
||||
:10FB800090E02830310509F491E08091E8008E770B
|
||||
:10FB90008093E8004115510571F6992361F605C07F
|
||||
:10FBA0008EB3882341F0853041F08091E80082FFD8
|
||||
:10FBB000F7CF80E0089582E0089583E008959C01E6
|
||||
:10FBC0006115710529F48091E8008B778093E80036
|
||||
:10FBD000F90121C08EB3882369F1853069F18091E4
|
||||
:10FBE000E80083FF02C081E008958091E80082FF71
|
||||
:10FBF000F1CF06C08091F10081936150704031F0E7
|
||||
:10FC00008091F2009091F300892BA1F78091E80098
|
||||
:10FC10008B778093E80061157105E1F605C08EB31E
|
||||
:10FC2000882341F0853041F08091E80080FFF7CFD4
|
||||
:10FC300080E0089582E0089583E008950F931F9374
|
||||
:10FC4000DF93CF9300D0CDB7DEB7E2E9F1E080914A
|
||||
:10FC5000F100819381E0EA39F807C9F775DA8091FC
|
||||
:10FC6000E80083FFE4C08091920190919301953068
|
||||
:10FC700009F46DC0963040F4913081F1913070F00C
|
||||
:10FC8000933009F0D4C02AC0983009F4A3C0993049
|
||||
:10FC900009F4B2C0963009F0CAC07CC0803809F4BB
|
||||
:10FCA000C6C0823809F0C3C0809196018F708093DE
|
||||
:10FCB000E9008091EB001092E9002091E800277F95
|
||||
:10FCC0002093E80090E025E0969587952A95E1F746
|
||||
:10FCD00081708093F1001092F10087C0882319F0A1
|
||||
:10FCE000823009F0A4C08F71823009F0A0C08091E9
|
||||
:10FCF0009401882331F5209196012F7009F497C063
|
||||
:10FD00002093E9008091EB0080FF1BC0933021F429
|
||||
:10FD10008091EB00806213C08091EB008061809342
|
||||
:10FD2000EB0081E090E002C0880F991F2A95E2F76E
|
||||
:10FD30008093EA001092EA008091EB008860809343
|
||||
:10FD4000EB001092E9008091E800877F51C0882382
|
||||
:10FD500009F06DC0109194011F770FB7F89480914E
|
||||
:10FD6000E800877F8093E800A0DD8091E80080FFB5
|
||||
:10FD7000FCCF8091E3008078812B8093E300806842
|
||||
:10FD80008093E300112311F482E001C083E08EBB75
|
||||
:10FD90000FBF4DC08058823008F049C08091940157
|
||||
:10FDA0009091950160919601AE014F5F5F4F45DDE7
|
||||
:10FDB000BC01009709F43BC08091E800877F8093E5
|
||||
:10FDC000E80089819A819FDE8091E8008B7780939B
|
||||
:10FDD000E8002DC0803859F58091E800877F809336
|
||||
:10FDE000E800809190018093F1008091E8008E7787
|
||||
:10FDF0008093E8005ADD1BC08823C9F490919401D8
|
||||
:10FE00009230A8F48091E800877F8093E800909377
|
||||
:10FE100090014BDD80919001882331F48091E300C3
|
||||
:10FE200087FD02C081E001C084E08EBBBDD9809116
|
||||
:10FE3000E80083FF0AC08091EB0080628093EB00B2
|
||||
:10FE40008091E800877F8093E8000F900F90CF911A
|
||||
:10FE5000DF911F910F91089508951F938EB388230A
|
||||
:10FE600061F01091E9001092E9008091E80083FFB1
|
||||
:10FE700001C0E4DE1F701093E9001F910895F99905
|
||||
:10FE8000FECF92BD81BDF89A992780B50895262F9F
|
||||
:10FE9000F999FECF1FBA92BD81BD20BD0FB6F8946F
|
||||
:0EFEA000FA9AF99A0FBE01960895F894FFCFD2
|
||||
:10FEAE004C55464143444300000000000000080149
|
||||
:10FEBE001201100102000008EB034A2000010001AC
|
||||
:10FECE00000109023E000201008032090400000117
|
||||
:10FEDE000202010005240010010424020605240676
|
||||
:10FEEE000001070582030800FF09040100020A0051
|
||||
:10FEFE00000007050402100001070583021000012F
|
||||
:10FF0E00040309042603410056005200200043005A
|
||||
:10FF1E0044004300200042006F006F0074006C002C
|
||||
:0CFF2E006F0061006400650072000000BC
|
||||
:10FFE000CDCBDFCBF1CB05CC0BCC11CC17CC0000AB
|
||||
:10FFF0000000000000000000000000000000FBDC2A
|
||||
:040000031000F000F9
|
||||
:00000001FF
|
|
@ -0,0 +1,139 @@
|
|||
:020000021000EC
|
||||
:10F000004BC0000077C0000075C0000073C0000056
|
||||
:10F0100071C000006FC000006DC000006BC0000038
|
||||
:10F0200069C0000067C0000028C2000063C0000083
|
||||
:10F0300061C000005FC000005DC000005BC0000058
|
||||
:10F0400059C0000057C0000055C0000053C0000068
|
||||
:10F0500051C000004FC000004DC000004BC0000078
|
||||
:10F0600049C0000047C0000045C0000043C0000088
|
||||
:10F0700041C000003FC000003DC000003BC0000098
|
||||
:10F0800039C0000037C0000035C0000033C00000A8
|
||||
:10F0900031C000002FC0000011241FBECFEFD0E20E
|
||||
:10F0A000DEBFCDBF04B603FE0EC080915401909127
|
||||
:10F0B000550182349C4D39F410925501109254013F
|
||||
:10F0C000E0E0F0E0099511E0A0E0B1E0E8E2F8EF5F
|
||||
:10F0D00001E00BBF02C007900D92AA34B107D9F727
|
||||
:10F0E00021E0AAE4B1E001C01D92A435B207E1F726
|
||||
:10F0F00002D098C385CF84B7877F84BF88E10FB6DD
|
||||
:10F10000F89480936000109260000FBE81E085BF8C
|
||||
:10F1100082E085BF97D1789480910001882311F017
|
||||
:10F1200066D3FACF8091E00081608093E00082E4B2
|
||||
:10F130009CED90935501809354012CE088E190E080
|
||||
:10F140000FB6F894A895809360000FBE20936000DE
|
||||
:10F15000FFCF42E361EC81E002C1CF92DF92EF92F8
|
||||
:10F16000FF921F93CF93DF9380914C018F77813271
|
||||
:10F1700009F075C080914D01893009F070C080910F
|
||||
:10F18000E800877F8093E8008091E80082FFFCCF51
|
||||
:10F190009091F1008091F100492F582F60E070E0CC
|
||||
:10F1A000B62FA52F942F88274F3F5F4F19F4109249
|
||||
:10F1B00000013EC023E0FC01A0935B0020935700B8
|
||||
:10F1C000E89507B600FCFDCF20E030E011E040916B
|
||||
:10F1D000F2005091F300452B09F437C05091F10033
|
||||
:10F1E0004091F100C52FD42FA901440F551F6C0188
|
||||
:10F1F0007D01C40ED51EE11CF11C0E01F601E0924A
|
||||
:10F200005B0010935700E89511242F5F3F4F203883
|
||||
:10F210003105E9F625E0FC01A0935B00209357003F
|
||||
:10F22000E89507B600FCFDCF81E180935700E89593
|
||||
:10F230008091E8008B778093E800DF91CF911F9158
|
||||
:10F24000FF90EF90DF90CF909EC04091E8004B7709
|
||||
:10F250004093E8004091E80042FFFCCFBFCFDF9130
|
||||
:10F26000CF911F91FF90EF90DF90CF900895913054
|
||||
:10F2700049F0923061F0913279F489E090E023E135
|
||||
:10F2800031E00EC082E190E023E231E009C082E289
|
||||
:10F2900090E021E031E004C085E190E025E331E039
|
||||
:10F2A000FA01318320830895209152013091530156
|
||||
:10F2B0002617370748F06115710539F42091E800E9
|
||||
:10F2C0002E772093E80001C0B901FC0120E0611510
|
||||
:10F2D000710591F18EB38823E1F18530E1F18091E0
|
||||
:10F2E000E80083FD3AC08091E80082FF06C080916B
|
||||
:10F2F000E80082FF24C080E008958091E80080FF4C
|
||||
:10F30000E6CF8091F2009091F3006115710551F004
|
||||
:10F310008830910538F421912093F10061507109F2
|
||||
:10F320000196F3CF21E0089709F020E08091E800F2
|
||||
:10F330008E778093E800CBCF2111CCCFD8CF8EB37E
|
||||
:10F34000882339F0853039F08091E80083FFCFCFF2
|
||||
:10F3500004C082E0089583E0089581E008958F70ED
|
||||
:10F360008093E900EBEEF0E0808181608083EDEE38
|
||||
:10F37000F0E010826093EC0040838091EE00881FE3
|
||||
:10F380008827881F089580914C0187FD05C08091D2
|
||||
:10F39000E80080FF0DC010C08091E80082FD04C02D
|
||||
:10F3A0008EB38111F9CF08958091E8008B7707C063
|
||||
:10F3B0008EB38111ECCF08958091E8008E77809311
|
||||
:10F3C000E80008950F931F93CF93DF9349D050D057
|
||||
:10F3D000C8EDD0E088818F778883888180688883B2
|
||||
:10F3E00088818F7D8883E7EDF0E08081806880836D
|
||||
:10F3F00019BC1EBA10924A0100EE10E0F80180819B
|
||||
:10F400008B7F808388818160888342E060E080E038
|
||||
:10F41000A6DFE1EEF0E080818E7F8083E2EEF0E017
|
||||
:10F42000808181608083808188608083F801808111
|
||||
:10F430008E7F8083888180618883DF91CF911F9147
|
||||
:10F440000F910895E8EDF0E080818F7E8083E7EDF5
|
||||
:10F45000F0E080818160808381E080934B01B2CFB6
|
||||
:10F46000E8EDF0E080818C7F80831092E2000895C7
|
||||
:10F470001092DA001092E10008951F920F920FB6D9
|
||||
:10F480000F9211240BB60F922F933F934F935F93DC
|
||||
:10F490006F937F938F939F93AF93BF93EF93FF935C
|
||||
:10F4A0008091DA0080FF1BC08091D80080FF17C0D8
|
||||
:10F4B0008091DA008E7F8093DA008091D90080FFFE
|
||||
:10F4C0000BC084E189BD86E189BD09B400FEFDCF92
|
||||
:10F4D00081E08EBB8BD103C019BC1EBA87D180914D
|
||||
:10F4E000E10080FF17C08091E20080FF13C080918F
|
||||
:10F4F000E2008E7F8093E2008091E2008061809341
|
||||
:10F50000E2008091D80080628093D80019BC85E029
|
||||
:10F510008EBB6CD18091E10084FF2EC08091E2000F
|
||||
:10F5200084FF2AC084E189BD86E189BD09B400FE5B
|
||||
:10F53000FDCF8091D8008F7D8093D8008091E1002D
|
||||
:10F540008F7E8093E1008091E2008F7E8093E200C5
|
||||
:10F550008091E20081608093E20080914A018823DB
|
||||
:10F5600011F084E007C08091E30087FF02C083E0D0
|
||||
:10F5700001C081E08EBB3AD18091E10083FF21C0C0
|
||||
:10F580008091E20083FF1DC08091E100877F80931E
|
||||
:10F59000E10082E08EBB10924A018091E1008E7FF3
|
||||
:10F5A0008093E1008091E2008E7F8093E200809161
|
||||
:10F5B000E20080618093E20042E060E080E0CFDE24
|
||||
:10F5C00015D1FF91EF91BF91AF919F918F917F9155
|
||||
:10F5D0006F915F914F913F912F910F900BBE0F90C4
|
||||
:10F5E0000FBE0F901F9018951F93CF93DF9300D0FD
|
||||
:10F5F000CDB7DEB7ECE4F1E08091F100819381E0DA
|
||||
:10F60000E435F807C9F7A9DD8091E80083FFDAC087
|
||||
:10F6100090914C0180914D01853009F465C030F422
|
||||
:10F62000813059F168F0833041F1CCC0883009F461
|
||||
:10F630009CC0893009F4ABC0863009F0C3C075C0E6
|
||||
:10F64000903881F0923809F0BDC0809150018F70E0
|
||||
:10F650008093E9009091EB0095FB992790F9109227
|
||||
:10F66000E90001C090E08091E800877F8093E80086
|
||||
:10F670009093F1001092F10083C0292F2D7F09F0A3
|
||||
:10F68000A1C0923009F09EC090914E01911126C008
|
||||
:10F69000209150012F7009F495C02093E9009091BA
|
||||
:10F6A000EB0090FF1BC0833021F48091EB0080625F
|
||||
:10F6B00013C08091EB0080618093EB0081E090E0CB
|
||||
:10F6C000022E01C0880F0A94EAF78093EA00109294
|
||||
:10F6D000EA008091EB0088608093EB001092E900D3
|
||||
:10F6E0008091E800877F4FC091116CC010914E014E
|
||||
:10F6F0001F778091E3008078812B8093E3008091D5
|
||||
:10F70000E800877F8093E8003EDE8091E80080FF7C
|
||||
:10F71000FCCF8091E30080688093E300112311F017
|
||||
:10F7200083E001C082E08EBB4DC09058923008F05B
|
||||
:10F7300049C0AE014F5F5F4F6091500180914E0113
|
||||
:10F7400090914F0194DD009709F43CC02091E800AE
|
||||
:10F75000277F2093E800BC0189819A81A5DD8091F3
|
||||
:10F76000E8008B778093E8002DC0903859F58091A0
|
||||
:10F77000E800877F8093E80080914A018093F10040
|
||||
:10F780008091E8008E778093E800FDDD1BC0911129
|
||||
:10F7900019C090914E019230A8F48091E800877FC3
|
||||
:10F7A0008093E80090934A01EEDD80914A01811137
|
||||
:10F7B00004C08091E30087FF02C084E001C081E0C3
|
||||
:10F7C0008EBBC7DC8091E80083FF0AC08091E8000F
|
||||
:10F7D000877F8093E8008091EB0080628093EB004C
|
||||
:10F7E0000F900F90DF91CF911F9108950895CF93BF
|
||||
:10F7F0008EB38823A9F08091E9008F709091EC007E
|
||||
:10F8000090FF02C090E801C090E0C92FC82B109271
|
||||
:10F81000E9008091E80083FDE7DECF70C093E90046
|
||||
:08F82000CF910895F894FFCF89
|
||||
:10F8280001090222000101008032090400000103DD
|
||||
:10F8380000000009211101000122150007058103BC
|
||||
:10F848004000051201100100000008EB03672001C9
|
||||
:10F85800000000000106DCFF09FBA10109021500F8
|
||||
:0AF8680025FF75089602019102C009
|
||||
:040000031000F000F9
|
||||
:00000001FF
|
|
@ -0,0 +1,239 @@
|
|||
:020000021000EC
|
||||
:10F000004BC0000064C0000062C0000060C000008F
|
||||
:10F010005EC000005CC000005AC0000058C0000084
|
||||
:10F0200056C0000054C000006FC4000050C0000073
|
||||
:10F030004EC000004CC000004AC0000048C00000A4
|
||||
:10F0400046C0000044C0000042C0000040C00000B4
|
||||
:10F050003EC000003CC000003AC0000038C00000C4
|
||||
:10F0600036C0000034C0000032C0000030C00000D4
|
||||
:10F070002EC000002CC000002AC0000028C00000E4
|
||||
:10F0800026C0000024C0000022C0000020C00000F4
|
||||
:10F090001EC000001CC0000011241FBECFEFD0E135
|
||||
:10F0A000DEBFCDBF11E0A0E0B1E0E2E2FEEF02C0C2
|
||||
:10F0B00005900D92AC38B107D9F711E0ACE8B1E09A
|
||||
:10F0C00001C01D92AD39B107E1F7FCD2A8C698CFB7
|
||||
:10F0D00084E08093E9000DC08091E8008B778093F5
|
||||
:10F0E000E80003C08EB3882359F08091E80082FFC6
|
||||
:10F0F000F9CF8091E80085FFEFCF8091F10008956E
|
||||
:10F1000080E0089593E09093E9009091E80095FDE8
|
||||
:10F110000DC09091E8009E779093E80003C09EB3E5
|
||||
:10F12000992331F09091E80090FFF9CF8093F1009E
|
||||
:10F13000089584B7877F84BF88E10FB6F8948093E1
|
||||
:10F140006000109260000FBE90E080E80FB6F89467
|
||||
:10F1500080936100909361000FBE81E085BF82E0E3
|
||||
:10F1600085BFBCC382E061EC42E03ED383E061E84E
|
||||
:10F1700042E13AD384E060E842E136C380919601EF
|
||||
:10F180008032B1F0813239F580919501813A19F5DB
|
||||
:10F190008091E800877F8093E80088E091E067E055
|
||||
:10F1A00070E07BD58091E8008B778093E80008952C
|
||||
:10F1B00080919501813279F48091E800877F809376
|
||||
:10F1C000E80088E091E067E070E0C2D58091E80057
|
||||
:10F1D0008E778093E80008952F923F924F925F922E
|
||||
:10F1E0006F927F929F92AF92BF92CF92DF92EF92F7
|
||||
:10F1F000FF920F931F93DF93CF930F92CDB7DEB79C
|
||||
:10F2000084E08093E9008091E80082FF48C2109278
|
||||
:10F210008C015EDF182F8C3409F4EEC1803509F4BF
|
||||
:10F22000EBC1843529F0853429F410920F01E4C133
|
||||
:10F230004FDFE2C1843711F484E448C0813611F411
|
||||
:10F2400089E503C28134F1F443DF382F330F20E026
|
||||
:10F2500079010027F7FC0095102FE0928F01F092C2
|
||||
:10F260009001009391011093920132DF90E0880F9A
|
||||
:10F27000991FAA2797FDA095BA2F8E299F29A02B09
|
||||
:10F28000B12BB2C1803711F483E5DFC1833559F466
|
||||
:10F2900000E011E0F80181918F0134DFF1E00730E7
|
||||
:10F2A0001F07C1F7D3C1863521F481E32BDF80E34B
|
||||
:10F2B000CCC1833731F482E825DF86E923DF8EE194
|
||||
:10F2C000C4C1823631F489E51DDF81E01BDF80E0B7
|
||||
:10F2D000BCC18536F9F480E090E0DC0133E025E044
|
||||
:10F2E000FC0130935700E89507B600FCFDCF209352
|
||||
:10F2F0005700E89507B600FCFDCF8F5F9E4FAF4FDC
|
||||
:10F30000BF4F8F3E40EF940741E0A40740E0B407B1
|
||||
:10F3100039F772C18C3651F4DBDE809599E0E1E07B
|
||||
:10F32000F0E0082E90935700E89566C1823719F4F3
|
||||
:10F33000E1E0F0E00EC0863419F4E0E0F0E009C04E
|
||||
:10F340008E3419F4E3E0F0E004C0813539F4E2E0F2
|
||||
:10F35000F0E089E080935700849177C1833471F4A1
|
||||
:10F3600000918F0110919001B3DE90E021E0F8014F
|
||||
:10F370000C0120935700E89511243EC1833679F49F
|
||||
:10F3800000918F01109190010160A2DE90E021E0D8
|
||||
:10F39000F8010C0120935700E89511241AC18D360D
|
||||
:10F3A00061F4E0918F01F091900185E08093570026
|
||||
:10F3B000E89507B600FCFDCF1FC1823419F08736EF
|
||||
:10F3C00009F0E9C085DEE82E83DE082F81DEB82E45
|
||||
:10F3D0008554823008F038C13E2D20E0202E3324A1
|
||||
:10F3E000222A332A173609F054C081E1809357004E
|
||||
:10F3F000E89510E001E048C0FB2DF63409F5E12F57
|
||||
:10F40000F0E080918F0190919001E82BF92B84918D
|
||||
:10F4100079DE112399F080918F0190919001A09154
|
||||
:10F420009101B09192010296A11DB11D80938F01AF
|
||||
:10F4300090939001A0939101B0939201102721C065
|
||||
:10F4400080918F0190919001A0919101B0919201D2
|
||||
:10F45000B695A79597958795CCD454DE80918F016A
|
||||
:10F4600090919001A0919101B09192010296A11DFD
|
||||
:10F47000B11D80938F0190939001A0939101B0935F
|
||||
:10F4800092010894210831082114310409F0B4CF05
|
||||
:10F49000DDC040908F01509090016090910170907C
|
||||
:10F4A00092012B2D263409F061C083E0F201809394
|
||||
:10F4B0005700E89507B600FCFDCF58C0FB2DF63489
|
||||
:10F4C00061F5222331F1E0908F01F090900100DE90
|
||||
:10F4D000D82ECC248A2D90E08C299D29F7010C018F
|
||||
:10F4E00090925700E895112480918F01909190019E
|
||||
:10F4F000A0919101B09192010296A11DB11D80933E
|
||||
:10F500008F0190939001A0939101B093920120E01C
|
||||
:10F5100029C0DEDDA82E21E025C0E0908F01F0900B
|
||||
:10F520009001009191011091920116950795F79421
|
||||
:10F53000E7942983CDDD682FC70163D480918F01C3
|
||||
:10F5400090919001A0919101B09192010296A11D1C
|
||||
:10F55000B11D80938F0190939001A0939101B0937E
|
||||
:10F560009201298108942108310804C0AA2420E0CE
|
||||
:10F57000992493942114310409F0A0CFFB2DF63483
|
||||
:10F5800009F03AC085E0F20180935700E89507B68C
|
||||
:10F5900000FCFDCF31C0823551F4E0918F01F09134
|
||||
:10F5A000900105911491812FADDD802F4EC08434E0
|
||||
:10F5B00029F5E0908F01F090900100919101109158
|
||||
:10F5C000920116950795F794E79482DD682FC7019D
|
||||
:10F5D00018D480918F0190919001A0919101B091E8
|
||||
:10F5E00092010296A11DB11D80938F01909390010D
|
||||
:10F5F000A0939101B09392018DE027C0843611F55C
|
||||
:10F6000080918F0190919001A0919101B091920110
|
||||
:10F61000B695A79597958795ECD374DD80918F016A
|
||||
:10F6200090919001A0919101B09192010296A11D3B
|
||||
:10F63000B11D80938F0190939001A0939101B0939D
|
||||
:10F64000920104C08B3111F08FE35CDD83E0809385
|
||||
:10F65000E9009091E8008091E8008E778093E800BF
|
||||
:10F6600095FF04C010C08EB38823C9F08091E800D4
|
||||
:10F6700080FFF9CF8091E8008E778093E80003C087
|
||||
:10F680008EB3882361F08091E80080FFF9CF84E099
|
||||
:10F690008093E9008091E8008B778093E8000F90D9
|
||||
:10F6A000CF91DF911F910F91FF90EF90DF90CF905E
|
||||
:10F6B000BF90AF909F907F906F905F904F903F90E2
|
||||
:10F6C0002F900895EF92FF920F931F93DF93CF93A4
|
||||
:10F6D0000F92CDB7DEB784B714BE909160009861E9
|
||||
:10F6E000909360001092600010928C0190E0FC01F9
|
||||
:10F6F000E270F07081FD0BC0859194912FEF8F3FE8
|
||||
:10F70000920729F0E0918D01F0918E01099511DDAC
|
||||
:10F710006F9A779A789481E010E000E0E0E0F0E002
|
||||
:10F72000E590F49025C0898357DD51D30F5F89811F
|
||||
:10F73000002311F4180F779A011709F477981F3FE7
|
||||
:10F7400059F0112351F4813041F080918C018F5F89
|
||||
:10F7500080938C0181E001C08FEF90918C019530F6
|
||||
:10F7600038F09FEFE9169FEFF90611F010920F01A4
|
||||
:10F7700090910F019923B9F68091E0008160809308
|
||||
:10F78000E0002CE088E190E00FB6F894A895809313
|
||||
:10F7900060000FBE20936000FFCF923049F093309D
|
||||
:10F7A00061F09130C1F020E030E080E090E017C0DF
|
||||
:10F7B0002EE330E082E291E012C0882331F4209100
|
||||
:10F7C000600130E080E691E00AC02091640130E001
|
||||
:10F7D00084E691E004C022E130E080E191E0FA01AA
|
||||
:10F7E00091838083C90108958093E900EBEEF0E0F6
|
||||
:10F7F000808181608083EDEEF0E010826093EC0008
|
||||
:10F8000040838091EE00881F8827881F089580918B
|
||||
:10F81000950187FF11C003C08EB38823B1F080919A
|
||||
:10F82000E80082FFF9CF8091E8008B778093E800B1
|
||||
:10F8300008958EB3882349F08091E80080FFF9CFC6
|
||||
:10F840008091E8008E778093E800089550D057D0DB
|
||||
:10F850008091D800982F9F779093D80080688093EC
|
||||
:10F86000D80088E189BD89B5826089BD09B400FEF0
|
||||
:10F87000FDCF8091D8008F7D8093D8008091D700F4
|
||||
:10F8800080688093D7001EBA109293018091E000A7
|
||||
:10F890008B7F8093E0008091D80081608093D800B6
|
||||
:10F8A00080E060E042E0A0DF8091E1008E7F809305
|
||||
:10F8B000E1008091E20081608093E2008091E200AB
|
||||
:10F8C00088608093E2008091E0008E7F8093E0006A
|
||||
:10F8D0008091D80080618093D8000895E7EDF0E032
|
||||
:10F8E00080818160808381E080939401AFCFE8EDD7
|
||||
:10F8F000F0E080818C7F80831092E2000895109266
|
||||
:10F90000DA001092E10008951F920F920FB60F9245
|
||||
:10F9100011242F933F934F935F936F937F938F9314
|
||||
:10F920009F93AF93BF93EF93FF938091DA0080FF93
|
||||
:10F9300013C08091D80080FF0FC08091DA008E7FC5
|
||||
:10F940008093DA008091D90080FF04C081E08EBBF3
|
||||
:10F95000A3D102C01EBAA0D18091E10080FF1CC0DB
|
||||
:10F960008091E20080FF18C08091E1008E7F80933B
|
||||
:10F97000E1008091E2008E7F8093E2008091E200BE
|
||||
:10F9800080618093E2008091D80080628093D800EB
|
||||
:10F9900019BC85E08EBB80D18091E10084FF2DC031
|
||||
:10F9A0008091E20084FF29C088E189BD89B5826029
|
||||
:10F9B00089BD09B400FEFDCF8091D8008F7D809372
|
||||
:10F9C000D8008091E1008F7E8093E1008091E20079
|
||||
:10F9D0008F7E8093E2008091E20081608093E2005C
|
||||
:10F9E00080919301882321F48091E30087FF02C076
|
||||
:10F9F00084E001C081E08EBB4FD18091E10083FFA4
|
||||
:10FA000021C08091E20083FF1DC08091E100877FCB
|
||||
:10FA10008093E10082E08EBB109293018091E1001F
|
||||
:10FA20008E7F8093E1008091E2008E7F8093E200E0
|
||||
:10FA30008091E20080618093E20080E060E042E03B
|
||||
:10FA4000D3DE2AD18091E10082FF0AC08091E200DA
|
||||
:10FA500082FF06C08091E1008B7F8093E1001CD182
|
||||
:10FA6000FF91EF91BF91AF919F918F917F916F9196
|
||||
:10FA70005F914F913F912F910F900FBE0F901F906C
|
||||
:10FA800018950F931F93DF93CF9300D0CDB7DEB7B8
|
||||
:10FA9000E5E9F1E08091F100819381E0ED39F8072B
|
||||
:10FAA000C9F78091950190919601953009F46BC04A
|
||||
:10FAB000963040F4913061F1913070F0933009F05C
|
||||
:10FAC000D5C026C0983009F4A3C0993009F4B2C05B
|
||||
:10FAD000963009F0CBC07CC0803809F4C8C08238A9
|
||||
:10FAE00009F0C4C08091990187708093E9009091DA
|
||||
:10FAF000EB001092E9008091E800877F8093E80096
|
||||
:10FB000081E095FF80E08093F1001092F1008BC0BE
|
||||
:10FB1000882319F0823009F0A9C08F71823009F072
|
||||
:10FB2000A6C080919701882341F520919901277003
|
||||
:10FB300009F49DC02093E9008091EB0080FF1DC077
|
||||
:10FB400080919601833021F48091EB00806213C094
|
||||
:10FB50008091EB0080618093EB0081E090E002C037
|
||||
:10FB6000880F991F2A95E2F78093EA001092EA0025
|
||||
:10FB70008091EB0088608093EB001092E900809107
|
||||
:10FB8000E800877F53C0882309F070C01091970167
|
||||
:10FB90001F770FB7F8948091E800877F8093E80083
|
||||
:10FBA00036DE8091E80080FFFCCF112311F083E066
|
||||
:10FBB00001C082E08EBB8091E3008078812B80932E
|
||||
:10FBC000E3008091E30080688093E3000FBF4FC0A3
|
||||
:10FBD0008058823008F04AC0809197019091980136
|
||||
:10FBE00060919901AE014F5F5F4FD7DDBC01009777
|
||||
:10FBF00009F43DC08091E800877F8093E800898107
|
||||
:10FC00009A814BD08091E8008B778093E8002FC0D9
|
||||
:10FC1000803861F58091E800877F8093E8008091CB
|
||||
:10FC200093018093F1008091E8008E778093E80043
|
||||
:10FC3000EEDD1DC08823D1F4909197019230B8F485
|
||||
:10FC40008091E800877F8093E80090939301DFDD47
|
||||
:10FC500080919301882321F48091E30087FF02C003
|
||||
:10FC600084E001C081E08EBB7DDA01C087DA80913B
|
||||
:10FC7000E80083FF0AC08091EB0080628093EB0074
|
||||
:10FC80008091E800877F8093E8000F900F90CF91DC
|
||||
:10FC9000DF911F910F9108950895282F392FF901B1
|
||||
:10FCA00080919B0190919C018617970718F4BC01E5
|
||||
:10FCB00020E035C061157105D9F78091E8008E7795
|
||||
:10FCC0008093E800F5CF8EB38823F1F18530C1F140
|
||||
:10FCD0008091E80083FD36C08091E80082FD2AC053
|
||||
:10FCE0008091E80080FF1BC08091F2009091F300AA
|
||||
:10FCF00006C021912093F10061507040019661157A
|
||||
:10FD0000710519F088309105A0F321E08830910544
|
||||
:10FD100009F020E08091E8008E778093E80061157B
|
||||
:10FD2000710589F6222379F605C08EB3882361F028
|
||||
:10FD3000853061F08091E80082FFF7CF80E0089580
|
||||
:10FD400083E0089581E0089582E0089583E00895B6
|
||||
:10FD50006115710529F51FC02EB32223A1F12530AD
|
||||
:10FD600071F12091E80023FD2CC02091E80022FFD2
|
||||
:10FD7000F3CFE82FF92F07C08091F1008193CF01D5
|
||||
:10FD80006150704041F0CF012091F2003091F300BA
|
||||
:10FD90002115310589F72091E8002B772093E800A1
|
||||
:10FDA00061157105C9F605C08EB3882361F08530F1
|
||||
:10FDB00061F08091E80080FFF7CF80E0089583E054
|
||||
:10FDC000089581E0089582E0089583E008951F93E7
|
||||
:10FDD0008EB3882361F01091E90017701092E9004A
|
||||
:10FDE0008091E80083FF01C04CDE1093E9001F9171
|
||||
:10FDF0000895F999FECF92BD81BDF89A992780B5F3
|
||||
:10FE00000895262FF999FECF1FBA92BD81BD20BD5E
|
||||
:10FE10000FB6F894FA9AF99A0FBE01960895F894DD
|
||||
:02FE2000FFCF12
|
||||
:10FE22004C554641434443000000000000000801D5
|
||||
:10FE320012011001020000089A23010001000001D2
|
||||
:10FE4200000109023E0002010080320904000001A3
|
||||
:10FE52000202010005240010010424020405240604
|
||||
:10FE620000010705820308000209040100020A00DA
|
||||
:10FE720000000705040210000007058302100000BD
|
||||
:10FE820004030904260341005600520020004300E7
|
||||
:10FE920044004300200042006F006F0074006C00B9
|
||||
:0CFEA2006F006100640065007200000049
|
||||
:040000031000F000F9
|
||||
:00000001FF
|
|
@ -0,0 +1,247 @@
|
|||
:020000021000EC
|
||||
:10F000004BC0000066C0000064C0000062C0000089
|
||||
:10F0100060C000005EC000005CC000005AC000007C
|
||||
:10F0200058C0000056C00000ACC4000052C0000030
|
||||
:10F0300050C000004EC000004CC000004AC000009C
|
||||
:10F0400048C0000046C0000044C0000042C00000AC
|
||||
:10F0500040C000003EC000003CC000003AC00000BC
|
||||
:10F0600038C0000036C0000034C0000032C00000CC
|
||||
:10F0700030C000002EC000002CC000002AC00000DC
|
||||
:10F0800028C0000026C0000024C0000022C00000EC
|
||||
:10F0900020C000001EC0000011241FBECFEFD0E230
|
||||
:10F0A000DEBFCDBF11E0A0E0B1E0E4EAFEEF01E099
|
||||
:10F0B0000BBF02C007900D92AC38B107D9F711E031
|
||||
:10F0C000ACE8B1E001C01D92AD39B107E1F72FD333
|
||||
:10F0D000E7C696CF84E08093E9000DC08091E800F8
|
||||
:10F0E0008B778093E80003C08EB3882359F080911A
|
||||
:10F0F000E80082FFF9CF8091E80085FFEFCF809193
|
||||
:10F10000F100089580E0089593E09093E9009091D4
|
||||
:10F11000E80095FD0DC09091E8009E779093E8007F
|
||||
:10F1200003C09EB3992331F09091E80090FFF9CF8E
|
||||
:10F130008093F100089584B7877F84BF88E10FB67C
|
||||
:10F14000F89480936000109260000FBE90E080E819
|
||||
:10F150000FB6F89480936100909361000FBE81E038
|
||||
:10F1600085BF82E085BFF7C382E061EC42E079D3DE
|
||||
:10F1700083E061E842E175D384E060E842E171C375
|
||||
:10F18000809196018032B1F0813239F580919501FC
|
||||
:10F19000813A19F58091E800877F8093E80088E044
|
||||
:10F1A00091E067E070E0BAD58091E8008B778093BA
|
||||
:10F1B000E800089580919501813279F48091E8000A
|
||||
:10F1C000877F8093E80088E091E067E070E001D6F7
|
||||
:10F1D0008091E8008E778093E80008952F923F9207
|
||||
:10F1E0005F926F927F928F929F92AF92BF92CF92D7
|
||||
:10F1F000DF92EF92FF920F931F93DF93CF930F92C3
|
||||
:10F20000CDB7DEB784E08093E9008091E80082FF0B
|
||||
:10F210007BC210928C015EDF182F8C3409F421C25E
|
||||
:10F22000803509F41EC2843529F0853429F4109202
|
||||
:10F230000F0117C24FDF15C2843711F484E448C0B0
|
||||
:10F24000813611F489E536C28134F1F443DF382F79
|
||||
:10F25000330F20E079010027F7FC0095102FE09292
|
||||
:10F260008F01F0929001009391011093920132DF8F
|
||||
:10F2700090E0880F991FAA2797FDA095BA2F8E2995
|
||||
:10F280009F29A02BB12BE5C1803711F483E512C271
|
||||
:10F29000833559F400E011E0D8018D918D0134DF00
|
||||
:10F2A000B1E007301B07C1F706C2863521F481E3C0
|
||||
:10F2B0002BDF80E3FFC1833731F482E825DF87E964
|
||||
:10F2C00023DF8EE1F7C1823631F489E51DDF81E06D
|
||||
:10F2D0001BDF80E0EFC1853621F580E090E0DC01A6
|
||||
:10F2E00033E025E0FC01A0935B0030935700E895E4
|
||||
:10F2F00007B600FCFDCFFC01A0935B0020935700F4
|
||||
:10F30000E89507B600FCFDCF8F5F9E4FAF4FBF4F14
|
||||
:10F310008F3EE0EF9E07E1E0AE07E0E0BE0711F7A9
|
||||
:10F32000A0C18C3651F4D6DE809599E0E1E0F0E0A2
|
||||
:10F33000082E90935700E89594C1823719F4E1E0C4
|
||||
:10F34000F0E00EC0863419F4E0E0F0E009C08E343D
|
||||
:10F3500019F4E3E0F0E004C0813539F4E2E0F0E0D4
|
||||
:10F3600089E0809357008491A5C18334A1F4E09093
|
||||
:10F370008F01F09090010091910110919201AADE0D
|
||||
:10F3800090E021E00C01F70100935B00209357000F
|
||||
:10F39000E895112466C18336E1F4E0908F01F09086
|
||||
:10F3A0009001009191011091920181E090E0A0E024
|
||||
:10F3B000B0E0E82AF92A0A2B1B2B8CDE90E021E032
|
||||
:10F3C0000C01F70100935B0020935700E89511248E
|
||||
:10F3D00035C18D3699F480918F0190919001A09163
|
||||
:10F3E0009101B091920125E0FC01A0935B00209374
|
||||
:10F3F0005700E89507B600FCFDCF33C1823419F001
|
||||
:10F40000873609F0F7C066DEE82E64DE082F62DE7C
|
||||
:10F41000982E8554823008F04CC13E2D20E0202EDD
|
||||
:10F420003324222A332A173609F058C081E1809309
|
||||
:10F430005700E89510E001E04CC020918F01309119
|
||||
:10F4400090014091910150919201992D963419F5B6
|
||||
:10F45000812F90E0A0E0B0E0822B932BA42BB52B62
|
||||
:10F46000ABBFFC01879150DE112399F080918F0191
|
||||
:10F4700090919001A0919101B09192010296A11DED
|
||||
:10F48000B11D80938F0190939001A0939101B0934F
|
||||
:10F49000920110271BC0DA01C901B695A79597956F
|
||||
:10F4A0008795E8D431DE80918F0190919001A091F1
|
||||
:10F4B0009101B09192010296A11DB11D80938F011F
|
||||
:10F4C00090939001A0939101B09392010894210828
|
||||
:10F4D00031082114310409F0B0CFEDC0A0908F01A4
|
||||
:10F4E000B0909001C0909101D0909201A92DA634C6
|
||||
:10F4F00009F069C083E0F501C0925B00809357007A
|
||||
:10F50000E89507B600FCFDCF5EC0B92DB63491F585
|
||||
:10F51000222361F1E0908F01F09090010091910120
|
||||
:10F5200010919201D7DD782E6624282D30E026290F
|
||||
:10F5300037290901F70100935B0050925700E895C5
|
||||
:10F54000112480918F0190919001A0919101B0912F
|
||||
:10F5500092010296A11DB11D80938F01909390019D
|
||||
:10F56000A0939101B093920120E029C0B3DD882ED1
|
||||
:10F5700021E025C0E0908F01F09090010091910171
|
||||
:10F580001091920116950795F794E7942983A2DDCF
|
||||
:10F59000682FC70177D480918F0190919001A0913D
|
||||
:10F5A0009101B09192010296A11DB11D80938F012E
|
||||
:10F5B00090939001A0939101B093920129810894B6
|
||||
:10F5C0002108310804C0882420E0552453942114D4
|
||||
:10F5D000310409F09ACFE92DE63409F042C085E004
|
||||
:10F5E000F501C0925B0080935700E89507B600FCD8
|
||||
:10F5F000FDCF37C0823581F480918F0190919001C9
|
||||
:10F60000A0919101B0919201ABBFFC0107911691BD
|
||||
:10F61000812F7ADD802F4EC0843429F5E0908F0150
|
||||
:10F62000F09090010091910110919201169507952B
|
||||
:10F63000F794E7944FDD682FC70124D480918F01A0
|
||||
:10F6400090919001A0919101B09192010296A11D1B
|
||||
:10F65000B11D80938F0190939001A0939101B0937D
|
||||
:10F6600092018DE027C0843611F580918F01909131
|
||||
:10F670009001A0919101B0919201B695A7959795AF
|
||||
:10F680008795F8D341DD80918F0190919001A091F1
|
||||
:10F690009101B09192010296A11DB11D80938F013D
|
||||
:10F6A00090939001A0939101B093920104C08B318B
|
||||
:10F6B00011F08FE329DD83E08093E9009091E80069
|
||||
:10F6C0008091E8008E778093E80095FF04C010C019
|
||||
:10F6D0008EB38823C9F08091E80080FFF9CF809134
|
||||
:10F6E000E8008E778093E80003C08EB3882361F032
|
||||
:10F6F0008091E80080FFF9CF84E08093E900809159
|
||||
:10F70000E8008B778093E8000F90CF91DF911F91F5
|
||||
:10F710000F91FF90EF90DF90CF90BF90AF909F90B0
|
||||
:10F720008F907F906F905F903F902F900895EF9211
|
||||
:10F73000FF920F931F93DF93CF930F92CDB7DEB756
|
||||
:10F7400084B714BE9091600098619093600010920D
|
||||
:10F75000600010928C0190E0FC01E270F07081FD7D
|
||||
:10F760000BC0859194912FEF8F3F920729F0E09184
|
||||
:10F770008D01F0918E010995209A289A6F9A779AB7
|
||||
:10F780006D9A759A3B9A439AD6DC6F9A779A7894D9
|
||||
:10F7900081E010E000E0E0E0F0E0E590F49025C0CA
|
||||
:10F7A00089831CDD55D30F5F8981002311F4180F65
|
||||
:10F7B000779A011709F477981F3F59F0112351F4F4
|
||||
:10F7C000813041F080918C018F5F80938C0181E0CA
|
||||
:10F7D00001C08FEF90918C01923338F09FEFE916C2
|
||||
:10F7E0009FEFF90611F010920F0190910F019923EC
|
||||
:10F7F000B9F68091E00081608093E0002CE088E120
|
||||
:10F8000090E00FB6F894A895809360000FBE209307
|
||||
:10F810006000FFCF923049F0933061F09130C1F039
|
||||
:10F8200020E030E080E090E017C02EE330E082E29C
|
||||
:10F8300091E012C0882331F42091600130E080E62D
|
||||
:10F8400091E00AC02091640130E084E691E004C0B8
|
||||
:10F8500022E130E080E191E0FA0191838083C901E7
|
||||
:10F8600008958093E900EBEEF0E080818160808371
|
||||
:10F87000EDEEF0E010826093EC0040838091EE00AA
|
||||
:10F88000881F8827881F08958091950187FF11C0E0
|
||||
:10F8900003C08EB38823B1F08091E80082FFF9CFD6
|
||||
:10F8A0008091E8008B778093E80008958EB38823D9
|
||||
:10F8B00049F08091E80080FFF9CF8091E8008E77D1
|
||||
:10F8C0008093E800089550D057D08091D800982FA9
|
||||
:10F8D0009F779093D80080688093D80084E189BD99
|
||||
:10F8E00089B5826089BD09B400FEFDCF8091D80042
|
||||
:10F8F0008F7D8093D8008091D70080688093D70057
|
||||
:10F900001EBA109293018091E0008B7F8093E000FB
|
||||
:10F910008091D80081608093D80080E060E042E070
|
||||
:10F92000A0DF8091E1008E7F8093E1008091E20072
|
||||
:10F9300081608093E2008091E20088608093E20021
|
||||
:10F940008091E0008E7F8093E0008091D8008061FC
|
||||
:10F950008093D8000895E7EDF0E080818160808396
|
||||
:10F9600081E080939401AFCFE8EDF0E080818C7F5F
|
||||
:10F9700080831092E20008951092DA001092E10064
|
||||
:10F9800008951F920F920FB60F920BB60F9211248B
|
||||
:10F990002F933F934F935F936F937F938F939F9397
|
||||
:10F9A000AF93BF93EF93FF938091DA0080FF13C072
|
||||
:10F9B0008091D80080FF0FC08091DA008E7F809305
|
||||
:10F9C000DA008091D90080FF04C081E08EBBA5D110
|
||||
:10F9D00002C01EBAA2D18091E10080FF1CC08091BC
|
||||
:10F9E000E20080FF18C08091E1008E7F8093E100EB
|
||||
:10F9F0008091E2008E7F8093E2008091E20080613E
|
||||
:10FA00008093E2008091D80080628093D80019BC76
|
||||
:10FA100085E08EBB82D18091E10084FF2DC0809172
|
||||
:10FA2000E20084FF29C084E189BD89B5826089BD77
|
||||
:10FA300009B400FEFDCF8091D8008F7D8093D8005F
|
||||
:10FA40008091E1008F7E8093E1008091E2008F7EC3
|
||||
:10FA50008093E2008091E20081608093E2008091D7
|
||||
:10FA60009301882321F48091E30087FF02C084E0A2
|
||||
:10FA700001C081E08EBB51D18091E10083FF21C0A4
|
||||
:10FA80008091E20083FF1DC08091E100877F809319
|
||||
:10FA9000E10082E08EBB109293018091E1008E7FA5
|
||||
:10FAA0008093E1008091E2008E7F8093E20080915C
|
||||
:10FAB000E20080618093E20080E060E042E0D1DE1D
|
||||
:10FAC0002CD18091E10082FF0AC08091E20082FF88
|
||||
:10FAD00006C08091E1008B7F8093E1001ED1FF91F1
|
||||
:10FAE000EF91BF91AF919F918F917F916F915F91B6
|
||||
:10FAF0004F913F912F910F900BBE0F900FBE0F9023
|
||||
:10FB00001F9018950F931F93DF93CF9300D0CDB71D
|
||||
:10FB1000DEB7E5E9F1E08091F100819381E0ED3914
|
||||
:10FB2000F807C9F78091950190919601953009F4F5
|
||||
:10FB30006BC0963040F4913061F1913070F09330A9
|
||||
:10FB400009F0D5C026C0983009F4A3C0993009F453
|
||||
:10FB5000B2C0963009F0CBC07CC0803809F4C8C070
|
||||
:10FB6000823809F0C4C08091990187708093E900C0
|
||||
:10FB70009091EB001092E9008091E800877F8093DC
|
||||
:10FB8000E80081E095FF80E08093F1001092F100A1
|
||||
:10FB90008BC0882319F0823009F0A9C08F718230A0
|
||||
:10FBA00009F0A6C080919701882341F52091990121
|
||||
:10FBB000277009F49DC02093E9008091EB0080FF3D
|
||||
:10FBC0001DC080919601833021F48091EB0080620A
|
||||
:10FBD00013C08091EB0080618093EB0081E090E0A6
|
||||
:10FBE00002C0880F991F2A95E2F78093EA001092CD
|
||||
:10FBF000EA008091EB0088608093EB001092E900AE
|
||||
:10FC00008091E800877F53C0882309F070C010916D
|
||||
:10FC100097011F770FB7F8948091E800877F809352
|
||||
:10FC2000E80032DE8091E80080FFFCCF112311F064
|
||||
:10FC300083E001C082E08EBB8091E3008078812B5D
|
||||
:10FC40008093E3008091E30080688093E3000FBF1E
|
||||
:10FC50004FC08058823008F04AC08091970190913F
|
||||
:10FC6000980160919901AE014F5F5F4FD3DDBC01F8
|
||||
:10FC7000009709F43DC08091E800877F8093E800F9
|
||||
:10FC800089819A814BD08091E8008B778093E8003E
|
||||
:10FC90002FC0803861F58091E800877F8093E8006D
|
||||
:10FCA000809193018093F1008091E8008E7780939A
|
||||
:10FCB000E800EADD1DC08823D1F4909197019230CD
|
||||
:10FCC000B8F48091E800877F8093E80090939301D7
|
||||
:10FCD000DBDD80919301882321F48091E30087FF8D
|
||||
:10FCE00002C084E001C081E08EBB3EDA01C048DA88
|
||||
:10FCF0008091E80083FF0AC08091EB0080628093CE
|
||||
:10FD0000EB008091E800877F8093E8000F900F90D0
|
||||
:10FD1000CF91DF911F910F9108950895282F392FCA
|
||||
:10FD2000F90180919B0190919C018617970718F427
|
||||
:10FD3000BC0120E035C061157105D9F78091E8005C
|
||||
:10FD40008E778093E800F5CF8EB38823F1F185306C
|
||||
:10FD5000C1F18091E80083FD36C08091E80082FD0A
|
||||
:10FD60002AC08091E80080FF1BC08091F200909132
|
||||
:10FD7000F30006C021912093F1006150704001967C
|
||||
:10FD80006115710519F088309105A0F321E08830E4
|
||||
:10FD9000910509F020E08091E8008E778093E800DB
|
||||
:10FDA0006115710589F6222379F605C08EB3882383
|
||||
:10FDB00061F0853061F08091E80082FFF7CF80E04C
|
||||
:10FDC000089583E0089581E0089582E0089583E036
|
||||
:10FDD00008956115710529F51FC02EB32223A1F1E5
|
||||
:10FDE000253071F12091E80023FD2CC02091E8001E
|
||||
:10FDF00022FFF3CFE82FF92F07C08091F100819304
|
||||
:10FE0000CF016150704041F0CF012091F20030915C
|
||||
:10FE1000F3002115310589F72091E8002B77209315
|
||||
:10FE2000E80061157105C9F605C08EB3882361F03D
|
||||
:10FE3000853061F08091E80080FFF7CF80E0089581
|
||||
:10FE400083E0089581E0089582E0089583E00895B5
|
||||
:10FE50001F938EB3882361F01091E9001770109200
|
||||
:10FE6000E9008091E80083FF01C04CDE1093E900B7
|
||||
:10FE70001F910895F999FECF92BD81BDF89A9927F7
|
||||
:10FE800080B50895262FF999FECF1FBA92BD81BD86
|
||||
:10FE900020BD0FB6F894FA9AF99A0FBE019608950C
|
||||
:04FEA000F894FFCF04
|
||||
:10FEA4004C55464143444300000000000000080153
|
||||
:10FEB40012011001020000089A2301000100000150
|
||||
:10FEC400000109023E000201008032090400000121
|
||||
:10FED4000202010005240010010424020405240682
|
||||
:10FEE40000010705820308000209040100020A0058
|
||||
:10FEF400000007050402100000070583021000003B
|
||||
:10FF04000403090426034100560052002000430064
|
||||
:10FF140044004300200042006F006F0074006C0036
|
||||
:0CFF24006F0061006400650072000000C6
|
||||
:040000031000F000F9
|
||||
:00000001FF
|
|
@ -0,0 +1,1071 @@
|
|||
/**********************************************************/
|
||||
/* Serial Bootloader for Atmel megaAVR Controllers */
|
||||
/* */
|
||||
/* tested with ATmega8, ATmega128 and ATmega168 */
|
||||
/* should work with other mega's, see code for details */
|
||||
/* */
|
||||
/* ATmegaBOOT.c */
|
||||
/* */
|
||||
/* */
|
||||
/* 20090308: integrated Mega changes into main bootloader */
|
||||
/* source by D. Mellis */
|
||||
/* 20080930: hacked for Arduino Mega (with the 1280 */
|
||||
/* processor, backwards compatible) */
|
||||
/* by D. Cuartielles */
|
||||
/* 20070626: hacked for Arduino Diecimila (which auto- */
|
||||
/* resets when a USB connection is made to it) */
|
||||
/* by D. Mellis */
|
||||
/* 20060802: hacked for Arduino by D. Cuartielles */
|
||||
/* based on a previous hack by D. Mellis */
|
||||
/* and D. Cuartielles */
|
||||
/* */
|
||||
/* Monitor and debug functions were added to the original */
|
||||
/* code by Dr. Erik Lins, chip45.com. (See below) */
|
||||
/* */
|
||||
/* Thanks to Karl Pitrich for fixing a bootloader pin */
|
||||
/* problem and more informative LED blinking! */
|
||||
/* */
|
||||
/* For the latest version see: */
|
||||
/* http://www.chip45.com/ */
|
||||
/* */
|
||||
/* ------------------------------------------------------ */
|
||||
/* */
|
||||
/* based on stk500boot.c */
|
||||
/* Copyright (c) 2003, Jason P. Kyle */
|
||||
/* All rights reserved. */
|
||||
/* see avr1.org for original file and information */
|
||||
/* */
|
||||
/* This program 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 of the License, or */
|
||||
/* (at your option) any later version. */
|
||||
/* */
|
||||
/* This program 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 program; if not, write */
|
||||
/* to the Free Software Foundation, Inc., */
|
||||
/* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
||||
/* */
|
||||
/* Licence can be viewed at */
|
||||
/* http://www.fsf.org/licenses/gpl.txt */
|
||||
/* */
|
||||
/* Target = Atmel AVR m128,m64,m32,m16,m8,m162,m163,m169, */
|
||||
/* m8515,m8535. ATmega161 has a very small boot block so */
|
||||
/* isn't supported. */
|
||||
/* */
|
||||
/* Tested with m168 */
|
||||
/**********************************************************/
|
||||
|
||||
/* $Id$ */
|
||||
|
||||
|
||||
/* some includes */
|
||||
#include <inttypes.h>
|
||||
#include <avr/io.h>
|
||||
#include <avr/pgmspace.h>
|
||||
#include <avr/interrupt.h>
|
||||
#include <avr/wdt.h>
|
||||
#include <util/delay.h>
|
||||
|
||||
/* the current avr-libc eeprom functions do not support the ATmega168 */
|
||||
/* own eeprom write/read functions are used instead */
|
||||
#if !defined(__AVR_ATmega168__) || !defined(__AVR_ATmega328P__)
|
||||
#include <avr/eeprom.h>
|
||||
#endif
|
||||
|
||||
/* Use the F_CPU defined in Makefile */
|
||||
|
||||
/* 20060803: hacked by DojoCorp */
|
||||
/* 20070626: hacked by David A. Mellis to decrease waiting time for auto-reset */
|
||||
/* set the waiting time for the bootloader */
|
||||
/* get this from the Makefile instead */
|
||||
/* #define MAX_TIME_COUNT (F_CPU>>4) */
|
||||
|
||||
/* 20070707: hacked by David A. Mellis - after this many errors give up and launch application */
|
||||
#define MAX_ERROR_COUNT 5
|
||||
|
||||
/* set the UART baud rate */
|
||||
/* 20060803: hacked by DojoCorp */
|
||||
//#define BAUD_RATE 115200
|
||||
#ifndef BAUD_RATE
|
||||
#define BAUD_RATE 19200
|
||||
#endif
|
||||
|
||||
|
||||
/* SW_MAJOR and MINOR needs to be updated from time to time to avoid warning message from AVR Studio */
|
||||
/* never allow AVR Studio to do an update !!!! */
|
||||
#define HW_VER 0x02
|
||||
#define SW_MAJOR 0x01
|
||||
#define SW_MINOR 0x10
|
||||
|
||||
|
||||
/* Adjust to suit whatever pin your hardware uses to enter the bootloader */
|
||||
/* ATmega128 has two UARTS so two pins are used to enter bootloader and select UART */
|
||||
/* ATmega1280 has four UARTS, but for Arduino Mega, we will only use RXD0 to get code */
|
||||
/* BL0... means UART0, BL1... means UART1 */
|
||||
#ifdef __AVR_ATmega128__
|
||||
#define BL_DDR DDRF
|
||||
#define BL_PORT PORTF
|
||||
#define BL_PIN PINF
|
||||
#define BL0 PINF7
|
||||
#define BL1 PINF6
|
||||
#elif defined __AVR_ATmega1280__
|
||||
/* we just don't do anything for the MEGA and enter bootloader on reset anyway*/
|
||||
#elif defined __AVR_ATmega1284P_ || defined __AVR_ATmega644P__
|
||||
|
||||
#else
|
||||
/* other ATmegas have only one UART, so only one pin is defined to enter bootloader */
|
||||
#define BL_DDR DDRD
|
||||
#define BL_PORT PORTD
|
||||
#define BL_PIN PIND
|
||||
#define BL PIND6
|
||||
#endif
|
||||
|
||||
|
||||
/* onboard LED is used to indicate, that the bootloader was entered (3x flashing) */
|
||||
/* if monitor functions are included, LED goes on after monitor was entered */
|
||||
#if defined __AVR_ATmega128__ || defined __AVR_ATmega1280__
|
||||
/* Onboard LED is connected to pin PB7 (e.g. Crumb128, PROBOmega128, Savvy128, Arduino Mega) */
|
||||
#define LED_DDR DDRB
|
||||
#define LED_PORT PORTB
|
||||
#define LED_PIN PINB
|
||||
#define LED PINB7
|
||||
#elif defined __AVR_ATmega1284P__ || defined __AVR_ATmega644P__
|
||||
#define LED_DDR DDRB
|
||||
#define LED_PORT PORTB
|
||||
#define LED_PIN PINB
|
||||
#define LED PINB0
|
||||
#else
|
||||
/* Onboard LED is connected to pin PB5 in Arduino NG, Diecimila, and Duomilanuove */
|
||||
/* other boards like e.g. Crumb8, Crumb168 are using PB2 */
|
||||
#define LED_DDR DDRB
|
||||
#define LED_PORT PORTB
|
||||
#define LED_PIN PINB
|
||||
#define LED PINB5
|
||||
#endif
|
||||
|
||||
|
||||
/* monitor functions will only be compiled when using ATmega128, due to bootblock size constraints */
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__)
|
||||
#define MONITOR 1
|
||||
#endif
|
||||
|
||||
|
||||
/* define various device id's */
|
||||
/* manufacturer byte is always the same */
|
||||
#define SIG1 0x1E // Yep, Atmel is the only manufacturer of AVR micros. Single source :(
|
||||
|
||||
#if defined __AVR_ATmega1280__
|
||||
#define SIG2 0x97
|
||||
#define SIG3 0x03
|
||||
#define PAGE_SIZE 0x80U //128 words
|
||||
|
||||
#elif defined __AVR_ATmega1284P__
|
||||
#define SIG2 0x97
|
||||
#define SIG3 0x05
|
||||
#define PAGE_SIZE 0x080U //128 words
|
||||
|
||||
#elif defined __AVR_ATmega1281__
|
||||
#define SIG2 0x97
|
||||
#define SIG3 0x04
|
||||
#define PAGE_SIZE 0x80U //128 words
|
||||
|
||||
#elif defined __AVR_ATmega644P__
|
||||
#define SIG2 0x96
|
||||
#define SIG3 0x0A
|
||||
#define PAGE_SIZE 0x080U //128 words
|
||||
|
||||
#elif defined __AVR_ATmega128__
|
||||
#define SIG2 0x97
|
||||
#define SIG3 0x02
|
||||
#define PAGE_SIZE 0x80U //128 words
|
||||
|
||||
#elif defined __AVR_ATmega64__
|
||||
#define SIG2 0x96
|
||||
#define SIG3 0x02
|
||||
#define PAGE_SIZE 0x80U //128 words
|
||||
|
||||
#elif defined __AVR_ATmega32__
|
||||
#define SIG2 0x95
|
||||
#define SIG3 0x02
|
||||
#define PAGE_SIZE 0x40U //64 words
|
||||
|
||||
#elif defined __AVR_ATmega16__
|
||||
#define SIG2 0x94
|
||||
#define SIG3 0x03
|
||||
#define PAGE_SIZE 0x40U //64 words
|
||||
|
||||
#elif defined __AVR_ATmega8__
|
||||
#define SIG2 0x93
|
||||
#define SIG3 0x07
|
||||
#define PAGE_SIZE 0x20U //32 words
|
||||
|
||||
#elif defined __AVR_ATmega88__
|
||||
#define SIG2 0x93
|
||||
#define SIG3 0x0a
|
||||
#define PAGE_SIZE 0x20U //32 words
|
||||
|
||||
#elif defined __AVR_ATmega168__
|
||||
#define SIG2 0x94
|
||||
#define SIG3 0x06
|
||||
#define PAGE_SIZE 0x40U //64 words
|
||||
|
||||
#elif defined __AVR_ATmega328P__
|
||||
#define SIG2 0x95
|
||||
#define SIG3 0x0F
|
||||
#define PAGE_SIZE 0x40U //64 words
|
||||
|
||||
#elif defined __AVR_ATmega162__
|
||||
#define SIG2 0x94
|
||||
#define SIG3 0x04
|
||||
#define PAGE_SIZE 0x40U //64 words
|
||||
|
||||
#elif defined __AVR_ATmega163__
|
||||
#define SIG2 0x94
|
||||
#define SIG3 0x02
|
||||
#define PAGE_SIZE 0x40U //64 words
|
||||
|
||||
#elif defined __AVR_ATmega169__
|
||||
#define SIG2 0x94
|
||||
#define SIG3 0x05
|
||||
#define PAGE_SIZE 0x40U //64 words
|
||||
|
||||
#elif defined __AVR_ATmega8515__
|
||||
#define SIG2 0x93
|
||||
#define SIG3 0x06
|
||||
#define PAGE_SIZE 0x20U //32 words
|
||||
|
||||
#elif defined __AVR_ATmega8535__
|
||||
#define SIG2 0x93
|
||||
#define SIG3 0x08
|
||||
#define PAGE_SIZE 0x20U //32 words
|
||||
#endif
|
||||
|
||||
|
||||
/* function prototypes */
|
||||
void putch(char);
|
||||
char getch(void);
|
||||
void getNch(uint8_t);
|
||||
void byte_response(uint8_t);
|
||||
void nothing_response(void);
|
||||
char gethex(void);
|
||||
void puthex(char);
|
||||
void flash_led(uint8_t);
|
||||
|
||||
/* some variables */
|
||||
union address_union {
|
||||
uint16_t word;
|
||||
uint8_t byte[2];
|
||||
} address;
|
||||
|
||||
union length_union {
|
||||
uint16_t word;
|
||||
uint8_t byte[2];
|
||||
} length;
|
||||
|
||||
struct flags_struct {
|
||||
unsigned eeprom : 1;
|
||||
unsigned rampz : 1;
|
||||
} flags;
|
||||
|
||||
uint8_t buff[256];
|
||||
uint8_t address_high;
|
||||
|
||||
uint8_t pagesz=0x80;
|
||||
|
||||
uint8_t i;
|
||||
uint8_t bootuart = 0;
|
||||
|
||||
uint8_t error_count = 0;
|
||||
|
||||
void (*app_start)(void) = 0x0000;
|
||||
|
||||
|
||||
/* main program starts here */
|
||||
int main(void)
|
||||
{
|
||||
uint8_t ch,ch2;
|
||||
uint16_t w;
|
||||
|
||||
#ifdef WATCHDOG_MODS
|
||||
ch = MCUSR;
|
||||
MCUSR = 0;
|
||||
|
||||
WDTCSR |= _BV(WDCE) | _BV(WDE);
|
||||
WDTCSR = 0;
|
||||
|
||||
// Check if the WDT was used to reset, in which case we dont bootload and skip straight to the code. woot.
|
||||
if (! (ch & _BV(EXTRF))) // if it's a not an external reset...
|
||||
app_start(); // skip bootloader
|
||||
#else
|
||||
asm volatile("nop\n\t");
|
||||
#endif
|
||||
|
||||
/* set pin direction for bootloader pin and enable pullup */
|
||||
/* for ATmega128, two pins need to be initialized */
|
||||
#ifdef __AVR_ATmega128__
|
||||
BL_DDR &= ~_BV(BL0);
|
||||
BL_DDR &= ~_BV(BL1);
|
||||
BL_PORT |= _BV(BL0);
|
||||
BL_PORT |= _BV(BL1);
|
||||
#else
|
||||
/* We run the bootloader regardless of the state of this pin. Thus, don't
|
||||
put it in a different state than the other pins. --DAM, 070709
|
||||
This also applies to Arduino Mega -- DC, 080930
|
||||
BL_DDR &= ~_BV(BL);
|
||||
BL_PORT |= _BV(BL);
|
||||
*/
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __AVR_ATmega128__
|
||||
/* check which UART should be used for booting */
|
||||
if(bit_is_clear(BL_PIN, BL0)) {
|
||||
bootuart = 1;
|
||||
}
|
||||
else if(bit_is_clear(BL_PIN, BL1)) {
|
||||
bootuart = 2;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined __AVR_ATmega1280__ || defined __AVR_ATmega1284P__ || defined __AVR_ATmega644P__
|
||||
/* the mega1280 chip has four serial ports ... we could eventually use any of them, or not? */
|
||||
/* however, we don't wanna confuse people, to avoid making a mess, we will stick to RXD0, TXD0 */
|
||||
bootuart = 1;
|
||||
#endif
|
||||
|
||||
/* check if flash is programmed already, if not start bootloader anyway */
|
||||
if(pgm_read_byte_near(0x0000) != 0xFF) {
|
||||
|
||||
#ifdef __AVR_ATmega128__
|
||||
/* no UART was selected, start application */
|
||||
if(!bootuart) {
|
||||
app_start();
|
||||
}
|
||||
#else
|
||||
/* check if bootloader pin is set low */
|
||||
/* we don't start this part neither for the m8, nor m168 */
|
||||
//if(bit_is_set(BL_PIN, BL)) {
|
||||
// app_start();
|
||||
// }
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifdef __AVR_ATmega128__
|
||||
/* no bootuart was selected, default to uart 0 */
|
||||
if(!bootuart) {
|
||||
bootuart = 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/* initialize UART(s) depending on CPU defined */
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__)
|
||||
if(bootuart == 1) {
|
||||
UBRR0L = (uint8_t)(F_CPU/(BAUD_RATE*16L)-1);
|
||||
UBRR0H = (F_CPU/(BAUD_RATE*16L)-1) >> 8;
|
||||
UCSR0A = 0x00;
|
||||
UCSR0C = 0x06;
|
||||
UCSR0B = _BV(TXEN0)|_BV(RXEN0);
|
||||
}
|
||||
if(bootuart == 2) {
|
||||
UBRR1L = (uint8_t)(F_CPU/(BAUD_RATE*16L)-1);
|
||||
UBRR1H = (F_CPU/(BAUD_RATE*16L)-1) >> 8;
|
||||
UCSR1A = 0x00;
|
||||
UCSR1C = 0x06;
|
||||
UCSR1B = _BV(TXEN1)|_BV(RXEN1);
|
||||
}
|
||||
#elif defined __AVR_ATmega163__
|
||||
UBRR = (uint8_t)(F_CPU/(BAUD_RATE*16L)-1);
|
||||
UBRRHI = (F_CPU/(BAUD_RATE*16L)-1) >> 8;
|
||||
UCSRA = 0x00;
|
||||
UCSRB = _BV(TXEN)|_BV(RXEN);
|
||||
#elif defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
|
||||
|
||||
#ifdef DOUBLE_SPEED
|
||||
UCSR0A = (1<<U2X0); //Double speed mode USART0
|
||||
UBRR0L = (uint8_t)(F_CPU/(BAUD_RATE*8L)-1);
|
||||
UBRR0H = (F_CPU/(BAUD_RATE*8L)-1) >> 8;
|
||||
#else
|
||||
UBRR0L = (uint8_t)(F_CPU/(BAUD_RATE*16L)-1);
|
||||
UBRR0H = (F_CPU/(BAUD_RATE*16L)-1) >> 8;
|
||||
#endif
|
||||
|
||||
UCSR0B = (1<<RXEN0) | (1<<TXEN0);
|
||||
UCSR0C = (1<<UCSZ00) | (1<<UCSZ01);
|
||||
|
||||
/* Enable internal pull-up resistor on pin D0 (RX), in order
|
||||
to supress line noise that prevents the bootloader from
|
||||
timing out (DAM: 20070509) */
|
||||
DDRD &= ~_BV(PIND0);
|
||||
PORTD |= _BV(PIND0);
|
||||
#elif defined __AVR_ATmega8__
|
||||
/* m8 */
|
||||
UBRRH = (((F_CPU/BAUD_RATE)/16)-1)>>8; // set baud rate
|
||||
UBRRL = (((F_CPU/BAUD_RATE)/16)-1);
|
||||
UCSRB = (1<<RXEN)|(1<<TXEN); // enable Rx & Tx
|
||||
UCSRC = (1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0); // config USART; 8N1
|
||||
#else
|
||||
/* m16,m32,m169,m8515,m8535 */
|
||||
UBRRL = (uint8_t)(F_CPU/(BAUD_RATE*16L)-1);
|
||||
UBRRH = (F_CPU/(BAUD_RATE*16L)-1) >> 8;
|
||||
UCSRA = 0x00;
|
||||
UCSRC = 0x06;
|
||||
UCSRB = _BV(TXEN)|_BV(RXEN);
|
||||
#endif
|
||||
|
||||
#if defined __AVR_ATmega1280__
|
||||
/* Enable internal pull-up resistor on pin D0 (RX), in order
|
||||
to supress line noise that prevents the bootloader from
|
||||
timing out (DAM: 20070509) */
|
||||
/* feature added to the Arduino Mega --DC: 080930 */
|
||||
DDRE &= ~_BV(PINE0);
|
||||
PORTE |= _BV(PINE0);
|
||||
#endif
|
||||
|
||||
|
||||
/* set LED pin as output */
|
||||
LED_DDR |= _BV(LED);
|
||||
|
||||
|
||||
/* flash onboard LED to signal entering of bootloader */
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__)
|
||||
// 4x for UART0, 5x for UART1
|
||||
flash_led(NUM_LED_FLASHES + bootuart);
|
||||
#else
|
||||
flash_led(NUM_LED_FLASHES);
|
||||
#endif
|
||||
|
||||
/* 20050803: by DojoCorp, this is one of the parts provoking the
|
||||
system to stop listening, cancelled from the original */
|
||||
//putch('\0');
|
||||
|
||||
/* forever loop */
|
||||
for (;;) {
|
||||
|
||||
/* get character from UART */
|
||||
ch = getch();
|
||||
|
||||
/* A bunch of if...else if... gives smaller code than switch...case ! */
|
||||
|
||||
/* Hello is anyone home ? */
|
||||
if(ch=='0') {
|
||||
nothing_response();
|
||||
}
|
||||
|
||||
|
||||
/* Request programmer ID */
|
||||
/* Not using PROGMEM string due to boot block in m128 being beyond 64kB boundry */
|
||||
/* Would need to selectively manipulate RAMPZ, and it's only 9 characters anyway so who cares. */
|
||||
else if(ch=='1') {
|
||||
if (getch() == ' ') {
|
||||
putch(0x14);
|
||||
putch('A');
|
||||
putch('V');
|
||||
putch('R');
|
||||
putch(' ');
|
||||
putch('I');
|
||||
putch('S');
|
||||
putch('P');
|
||||
putch(0x10);
|
||||
} else {
|
||||
if (++error_count == MAX_ERROR_COUNT)
|
||||
app_start();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* AVR ISP/STK500 board commands DON'T CARE so default nothing_response */
|
||||
else if(ch=='@') {
|
||||
ch2 = getch();
|
||||
if (ch2>0x85) getch();
|
||||
nothing_response();
|
||||
}
|
||||
|
||||
|
||||
/* AVR ISP/STK500 board requests */
|
||||
else if(ch=='A') {
|
||||
ch2 = getch();
|
||||
if(ch2==0x80) byte_response(HW_VER); // Hardware version
|
||||
else if(ch2==0x81) byte_response(SW_MAJOR); // Software major version
|
||||
else if(ch2==0x82) byte_response(SW_MINOR); // Software minor version
|
||||
else if(ch2==0x98) byte_response(0x03); // Unknown but seems to be required by avr studio 3.56
|
||||
else byte_response(0x00); // Covers various unnecessary responses we don't care about
|
||||
}
|
||||
|
||||
|
||||
/* Device Parameters DON'T CARE, DEVICE IS FIXED */
|
||||
else if(ch=='B') {
|
||||
getNch(20);
|
||||
nothing_response();
|
||||
}
|
||||
|
||||
|
||||
/* Parallel programming stuff DON'T CARE */
|
||||
else if(ch=='E') {
|
||||
getNch(5);
|
||||
nothing_response();
|
||||
}
|
||||
|
||||
|
||||
/* P: Enter programming mode */
|
||||
/* R: Erase device, don't care as we will erase one page at a time anyway. */
|
||||
else if(ch=='P' || ch=='R') {
|
||||
nothing_response();
|
||||
}
|
||||
|
||||
|
||||
/* Leave programming mode */
|
||||
else if(ch=='Q') {
|
||||
nothing_response();
|
||||
#ifdef WATCHDOG_MODS
|
||||
// autoreset via watchdog (sneaky!)
|
||||
WDTCSR = _BV(WDE);
|
||||
while (1); // 16 ms
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
/* Set address, little endian. EEPROM in bytes, FLASH in words */
|
||||
/* Perhaps extra address bytes may be added in future to support > 128kB FLASH. */
|
||||
/* This might explain why little endian was used here, big endian used everywhere else. */
|
||||
else if(ch=='U') {
|
||||
address.byte[0] = getch();
|
||||
address.byte[1] = getch();
|
||||
nothing_response();
|
||||
}
|
||||
|
||||
|
||||
/* Universal SPI programming command, disabled. Would be used for fuses and lock bits. */
|
||||
else if(ch=='V') {
|
||||
if (getch() == 0x30) {
|
||||
getch();
|
||||
ch = getch();
|
||||
getch();
|
||||
if (ch == 0) {
|
||||
byte_response(SIG1);
|
||||
} else if (ch == 1) {
|
||||
byte_response(SIG2);
|
||||
} else {
|
||||
byte_response(SIG3);
|
||||
}
|
||||
} else {
|
||||
getNch(3);
|
||||
byte_response(0x00);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Write memory, length is big endian and is in bytes */
|
||||
else if(ch=='d') {
|
||||
length.byte[1] = getch();
|
||||
length.byte[0] = getch();
|
||||
flags.eeprom = 0;
|
||||
if (getch() == 'E') flags.eeprom = 1;
|
||||
for (w=0;w<length.word;w++) {
|
||||
buff[w] = getch(); // Store data in buffer, can't keep up with serial data stream whilst programming pages
|
||||
}
|
||||
if (getch() == ' ') {
|
||||
if (flags.eeprom) { //Write to EEPROM one byte at a time
|
||||
address.word <<= 1;
|
||||
for(w=0;w<length.word;w++) {
|
||||
#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
|
||||
while(EECR & (1<<EEPE));
|
||||
EEAR = (uint16_t)(void *)address.word;
|
||||
EEDR = buff[w];
|
||||
EECR |= (1<<EEMPE);
|
||||
EECR |= (1<<EEPE);
|
||||
#else
|
||||
eeprom_write_byte((void *)address.word,buff[w]);
|
||||
#endif
|
||||
address.word++;
|
||||
}
|
||||
}
|
||||
else { //Write to FLASH one page at a time
|
||||
if (address.byte[1]>127) address_high = 0x01; //Only possible with m128, m256 will need 3rd address byte. FIXME
|
||||
else address_high = 0x00;
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1281__) || defined(__AVR_ATmega1284P__)
|
||||
RAMPZ = address_high;
|
||||
#endif
|
||||
address.word = address.word << 1; //address * 2 -> byte location
|
||||
/* if ((length.byte[0] & 0x01) == 0x01) length.word++; //Even up an odd number of bytes */
|
||||
if ((length.byte[0] & 0x01)) length.word++; //Even up an odd number of bytes
|
||||
cli(); //Disable interrupts, just to be sure
|
||||
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1281__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__)
|
||||
while(bit_is_set(EECR,EEPE)); //Wait for previous EEPROM writes to complete
|
||||
#else
|
||||
while(bit_is_set(EECR,EEWE)); //Wait for previous EEPROM writes to complete
|
||||
#endif
|
||||
asm volatile(
|
||||
"clr r17 \n\t" //page_word_count
|
||||
"lds r30,address \n\t" //Address of FLASH location (in bytes)
|
||||
"lds r31,address+1 \n\t"
|
||||
"ldi r28,lo8(buff) \n\t" //Start of buffer array in RAM
|
||||
"ldi r29,hi8(buff) \n\t"
|
||||
"lds r24,length \n\t" //Length of data to be written (in bytes)
|
||||
"lds r25,length+1 \n\t"
|
||||
"length_loop: \n\t" //Main loop, repeat for number of words in block
|
||||
"cpi r17,0x00 \n\t" //If page_word_count=0 then erase page
|
||||
"brne no_page_erase \n\t"
|
||||
"wait_spm1: \n\t"
|
||||
"lds r16,%0 \n\t" //Wait for previous spm to complete
|
||||
"andi r16,1 \n\t"
|
||||
"cpi r16,1 \n\t"
|
||||
"breq wait_spm1 \n\t"
|
||||
"ldi r16,0x03 \n\t" //Erase page pointed to by Z
|
||||
"sts %0,r16 \n\t"
|
||||
"spm \n\t"
|
||||
#ifdef __AVR_ATmega163__
|
||||
".word 0xFFFF \n\t"
|
||||
"nop \n\t"
|
||||
#endif
|
||||
"wait_spm2: \n\t"
|
||||
"lds r16,%0 \n\t" //Wait for previous spm to complete
|
||||
"andi r16,1 \n\t"
|
||||
"cpi r16,1 \n\t"
|
||||
"breq wait_spm2 \n\t"
|
||||
|
||||
"ldi r16,0x11 \n\t" //Re-enable RWW section
|
||||
"sts %0,r16 \n\t"
|
||||
"spm \n\t"
|
||||
#ifdef __AVR_ATmega163__
|
||||
".word 0xFFFF \n\t"
|
||||
"nop \n\t"
|
||||
#endif
|
||||
"no_page_erase: \n\t"
|
||||
"ld r0,Y+ \n\t" //Write 2 bytes into page buffer
|
||||
"ld r1,Y+ \n\t"
|
||||
|
||||
"wait_spm3: \n\t"
|
||||
"lds r16,%0 \n\t" //Wait for previous spm to complete
|
||||
"andi r16,1 \n\t"
|
||||
"cpi r16,1 \n\t"
|
||||
"breq wait_spm3 \n\t"
|
||||
"ldi r16,0x01 \n\t" //Load r0,r1 into FLASH page buffer
|
||||
"sts %0,r16 \n\t"
|
||||
"spm \n\t"
|
||||
|
||||
"inc r17 \n\t" //page_word_count++
|
||||
"cpi r17,%1 \n\t"
|
||||
"brlo same_page \n\t" //Still same page in FLASH
|
||||
"write_page: \n\t"
|
||||
"clr r17 \n\t" //New page, write current one first
|
||||
"wait_spm4: \n\t"
|
||||
"lds r16,%0 \n\t" //Wait for previous spm to complete
|
||||
"andi r16,1 \n\t"
|
||||
"cpi r16,1 \n\t"
|
||||
"breq wait_spm4 \n\t"
|
||||
#ifdef __AVR_ATmega163__
|
||||
"andi r30,0x80 \n\t" // m163 requires Z6:Z1 to be zero during page write
|
||||
#endif
|
||||
"ldi r16,0x05 \n\t" //Write page pointed to by Z
|
||||
"sts %0,r16 \n\t"
|
||||
"spm \n\t"
|
||||
#ifdef __AVR_ATmega163__
|
||||
".word 0xFFFF \n\t"
|
||||
"nop \n\t"
|
||||
"ori r30,0x7E \n\t" // recover Z6:Z1 state after page write (had to be zero during write)
|
||||
#endif
|
||||
"wait_spm5: \n\t"
|
||||
"lds r16,%0 \n\t" //Wait for previous spm to complete
|
||||
"andi r16,1 \n\t"
|
||||
"cpi r16,1 \n\t"
|
||||
"breq wait_spm5 \n\t"
|
||||
"ldi r16,0x11 \n\t" //Re-enable RWW section
|
||||
"sts %0,r16 \n\t"
|
||||
"spm \n\t"
|
||||
#ifdef __AVR_ATmega163__
|
||||
".word 0xFFFF \n\t"
|
||||
"nop \n\t"
|
||||
#endif
|
||||
"same_page: \n\t"
|
||||
"adiw r30,2 \n\t" //Next word in FLASH
|
||||
"sbiw r24,2 \n\t" //length-2
|
||||
"breq final_write \n\t" //Finished
|
||||
"rjmp length_loop \n\t"
|
||||
"final_write: \n\t"
|
||||
"cpi r17,0 \n\t"
|
||||
"breq block_done \n\t"
|
||||
"adiw r24,2 \n\t" //length+2, fool above check on length after short page write
|
||||
"rjmp write_page \n\t"
|
||||
"block_done: \n\t"
|
||||
"clr __zero_reg__ \n\t" //restore zero register
|
||||
#if defined __AVR_ATmega168__ || __AVR_ATmega328P__ || __AVR_ATmega128__ || __AVR_ATmega1280__ || __AVR_ATmega1281__ || __AVR_ATmega1284P__ || __AVR_ATmega644P__
|
||||
: "=m" (SPMCSR) : "M" (PAGE_SIZE) : "r0","r16","r17","r24","r25","r28","r29","r30","r31"
|
||||
#else
|
||||
: "=m" (SPMCR) : "M" (PAGE_SIZE) : "r0","r16","r17","r24","r25","r28","r29","r30","r31"
|
||||
#endif
|
||||
);
|
||||
/* Should really add a wait for RWW section to be enabled, don't actually need it since we never */
|
||||
/* exit the bootloader without a power cycle anyhow */
|
||||
}
|
||||
putch(0x14);
|
||||
putch(0x10);
|
||||
} else {
|
||||
if (++error_count == MAX_ERROR_COUNT)
|
||||
app_start();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Read memory block mode, length is big endian. */
|
||||
else if(ch=='t') {
|
||||
length.byte[1] = getch();
|
||||
length.byte[0] = getch();
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__)
|
||||
if (address.word>0x7FFF) flags.rampz = 1; // No go with m256, FIXME
|
||||
else flags.rampz = 0;
|
||||
#endif
|
||||
address.word = address.word << 1; // address * 2 -> byte location
|
||||
if (getch() == 'E') flags.eeprom = 1;
|
||||
else flags.eeprom = 0;
|
||||
if (getch() == ' ') { // Command terminator
|
||||
putch(0x14);
|
||||
for (w=0;w < length.word;w++) { // Can handle odd and even lengths okay
|
||||
if (flags.eeprom) { // Byte access EEPROM read
|
||||
#if defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
|
||||
while(EECR & (1<<EEPE));
|
||||
EEAR = (uint16_t)(void *)address.word;
|
||||
EECR |= (1<<EERE);
|
||||
putch(EEDR);
|
||||
#else
|
||||
putch(eeprom_read_byte((void *)address.word));
|
||||
#endif
|
||||
address.word++;
|
||||
}
|
||||
else {
|
||||
|
||||
if (!flags.rampz) putch(pgm_read_byte_near(address.word));
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1284P__)
|
||||
else putch(pgm_read_byte_far(address.word + 0x10000));
|
||||
// Hmmmm, yuck FIXME when m256 arrvies
|
||||
#endif
|
||||
address.word++;
|
||||
}
|
||||
}
|
||||
putch(0x10);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Get device signature bytes */
|
||||
else if(ch=='u') {
|
||||
if (getch() == ' ') {
|
||||
putch(0x14);
|
||||
putch(SIG1);
|
||||
putch(SIG2);
|
||||
putch(SIG3);
|
||||
putch(0x10);
|
||||
} else {
|
||||
if (++error_count == MAX_ERROR_COUNT)
|
||||
app_start();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Read oscillator calibration byte */
|
||||
else if(ch=='v') {
|
||||
byte_response(0x00);
|
||||
}
|
||||
|
||||
|
||||
#if defined MONITOR
|
||||
|
||||
/* here come the extended monitor commands by Erik Lins */
|
||||
|
||||
/* check for three times exclamation mark pressed */
|
||||
else if(ch=='!') {
|
||||
ch = getch();
|
||||
if(ch=='!') {
|
||||
ch = getch();
|
||||
if(ch=='!') {
|
||||
PGM_P welcome = "";
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__)
|
||||
uint16_t extaddr;
|
||||
#endif
|
||||
uint8_t addrl, addrh;
|
||||
|
||||
#ifdef CRUMB128
|
||||
welcome = "ATmegaBOOT / Crumb128 - (C) J.P.Kyle, E.Lins - 050815\n\r";
|
||||
#elif defined PROBOMEGA128
|
||||
welcome = "ATmegaBOOT / PROBOmega128 - (C) J.P.Kyle, E.Lins - 050815\n\r";
|
||||
#elif defined SAVVY128
|
||||
welcome = "ATmegaBOOT / Savvy128 - (C) J.P.Kyle, E.Lins - 050815\n\r";
|
||||
#elif defined __AVR_ATmega1280__
|
||||
welcome = "ATmegaBOOT / Arduino Mega - (C) Arduino LLC - 090930\n\r";
|
||||
#endif
|
||||
|
||||
/* turn on LED */
|
||||
LED_DDR |= _BV(LED);
|
||||
LED_PORT &= ~_BV(LED);
|
||||
|
||||
/* print a welcome message and command overview */
|
||||
for(i=0; welcome[i] != '\0'; ++i) {
|
||||
putch(welcome[i]);
|
||||
}
|
||||
|
||||
/* test for valid commands */
|
||||
for(;;) {
|
||||
putch('\n');
|
||||
putch('\r');
|
||||
putch(':');
|
||||
putch(' ');
|
||||
|
||||
ch = getch();
|
||||
putch(ch);
|
||||
|
||||
/* toggle LED */
|
||||
if(ch == 't') {
|
||||
if(bit_is_set(LED_PIN,LED)) {
|
||||
LED_PORT &= ~_BV(LED);
|
||||
putch('1');
|
||||
} else {
|
||||
LED_PORT |= _BV(LED);
|
||||
putch('0');
|
||||
}
|
||||
}
|
||||
|
||||
/* read byte from address */
|
||||
else if(ch == 'r') {
|
||||
ch = getch(); putch(ch);
|
||||
addrh = gethex();
|
||||
addrl = gethex();
|
||||
putch('=');
|
||||
ch = *(uint8_t *)((addrh << 8) + addrl);
|
||||
puthex(ch);
|
||||
}
|
||||
|
||||
/* write a byte to address */
|
||||
else if(ch == 'w') {
|
||||
ch = getch(); putch(ch);
|
||||
addrh = gethex();
|
||||
addrl = gethex();
|
||||
ch = getch(); putch(ch);
|
||||
ch = gethex();
|
||||
*(uint8_t *)((addrh << 8) + addrl) = ch;
|
||||
}
|
||||
|
||||
/* read from uart and echo back */
|
||||
else if(ch == 'u') {
|
||||
for(;;) {
|
||||
putch(getch());
|
||||
}
|
||||
}
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__)
|
||||
/* external bus loop */
|
||||
else if(ch == 'b') {
|
||||
putch('b');
|
||||
putch('u');
|
||||
putch('s');
|
||||
MCUCR = 0x80;
|
||||
XMCRA = 0;
|
||||
XMCRB = 0;
|
||||
extaddr = 0x1100;
|
||||
for(;;) {
|
||||
ch = *(volatile uint8_t *)extaddr;
|
||||
if(++extaddr == 0) {
|
||||
extaddr = 0x1100;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
else if(ch == 'j') {
|
||||
app_start();
|
||||
}
|
||||
|
||||
} /* end of monitor functions */
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
/* end of monitor */
|
||||
#endif
|
||||
else if (++error_count == MAX_ERROR_COUNT) {
|
||||
app_start();
|
||||
}
|
||||
} /* end of forever loop */
|
||||
|
||||
}
|
||||
|
||||
|
||||
char gethexnib(void) {
|
||||
char a;
|
||||
a = getch(); putch(a);
|
||||
if(a >= 'a') {
|
||||
return (a - 'a' + 0x0a);
|
||||
} else if(a >= '0') {
|
||||
return(a - '0');
|
||||
}
|
||||
return a;
|
||||
}
|
||||
|
||||
|
||||
char gethex(void) {
|
||||
return (gethexnib() << 4) + gethexnib();
|
||||
}
|
||||
|
||||
|
||||
void puthex(char ch) {
|
||||
char ah;
|
||||
|
||||
ah = ch >> 4;
|
||||
if(ah >= 0x0a) {
|
||||
ah = ah - 0x0a + 'a';
|
||||
} else {
|
||||
ah += '0';
|
||||
}
|
||||
|
||||
ch &= 0x0f;
|
||||
if(ch >= 0x0a) {
|
||||
ch = ch - 0x0a + 'a';
|
||||
} else {
|
||||
ch += '0';
|
||||
}
|
||||
|
||||
putch(ah);
|
||||
putch(ch);
|
||||
}
|
||||
|
||||
|
||||
void putch(char ch)
|
||||
{
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__)
|
||||
if(bootuart == 1) {
|
||||
while (!(UCSR0A & _BV(UDRE0)));
|
||||
UDR0 = ch;
|
||||
}
|
||||
else if (bootuart == 2) {
|
||||
while (!(UCSR1A & _BV(UDRE1)));
|
||||
UDR1 = ch;
|
||||
}
|
||||
#elif defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
|
||||
while (!(UCSR0A & _BV(UDRE0)));
|
||||
UDR0 = ch;
|
||||
#else
|
||||
/* m8,16,32,169,8515,8535,163 */
|
||||
while (!(UCSRA & _BV(UDRE)));
|
||||
UDR = ch;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
char getch(void)
|
||||
{
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__)
|
||||
uint32_t count = 0;
|
||||
if(bootuart == 1) {
|
||||
while(!(UCSR0A & _BV(RXC0))) {
|
||||
/* 20060803 DojoCorp:: Addon coming from the previous Bootloader*/
|
||||
/* HACKME:: here is a good place to count times*/
|
||||
count++;
|
||||
if (count > MAX_TIME_COUNT)
|
||||
app_start();
|
||||
}
|
||||
|
||||
return UDR0;
|
||||
}
|
||||
else if(bootuart == 2) {
|
||||
while(!(UCSR1A & _BV(RXC1))) {
|
||||
/* 20060803 DojoCorp:: Addon coming from the previous Bootloader*/
|
||||
/* HACKME:: here is a good place to count times*/
|
||||
count++;
|
||||
if (count > MAX_TIME_COUNT)
|
||||
app_start();
|
||||
}
|
||||
|
||||
return UDR1;
|
||||
}
|
||||
return 0;
|
||||
#elif defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
|
||||
uint32_t count = 0;
|
||||
while(!(UCSR0A & _BV(RXC0))){
|
||||
/* 20060803 DojoCorp:: Addon coming from the previous Bootloader*/
|
||||
/* HACKME:: here is a good place to count times*/
|
||||
count++;
|
||||
if (count > MAX_TIME_COUNT)
|
||||
app_start();
|
||||
}
|
||||
return UDR0;
|
||||
#else
|
||||
/* m8,16,32,169,8515,8535,163 */
|
||||
uint32_t count = 0;
|
||||
while(!(UCSRA & _BV(RXC))){
|
||||
/* 20060803 DojoCorp:: Addon coming from the previous Bootloader*/
|
||||
/* HACKME:: here is a good place to count times*/
|
||||
count++;
|
||||
if (count > MAX_TIME_COUNT)
|
||||
app_start();
|
||||
}
|
||||
return UDR;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
void getNch(uint8_t count)
|
||||
{
|
||||
while(count--) {
|
||||
#if defined(__AVR_ATmega128__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__)
|
||||
if(bootuart == 1) {
|
||||
while(!(UCSR0A & _BV(RXC0)));
|
||||
UDR0;
|
||||
}
|
||||
else if(bootuart == 2) {
|
||||
while(!(UCSR1A & _BV(RXC1)));
|
||||
UDR1;
|
||||
}
|
||||
#elif defined(__AVR_ATmega168__) || defined(__AVR_ATmega328P__)
|
||||
getch();
|
||||
#else
|
||||
/* m8,16,32,169,8515,8535,163 */
|
||||
/* 20060803 DojoCorp:: Addon coming from the previous Bootloader*/
|
||||
//while(!(UCSRA & _BV(RXC)));
|
||||
//UDR;
|
||||
getch(); // need to handle time out
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void byte_response(uint8_t val)
|
||||
{
|
||||
if (getch() == ' ') {
|
||||
putch(0x14);
|
||||
putch(val);
|
||||
putch(0x10);
|
||||
} else {
|
||||
if (++error_count == MAX_ERROR_COUNT)
|
||||
app_start();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void nothing_response(void)
|
||||
{
|
||||
if (getch() == ' ') {
|
||||
putch(0x14);
|
||||
putch(0x10);
|
||||
} else {
|
||||
if (++error_count == MAX_ERROR_COUNT)
|
||||
app_start();
|
||||
}
|
||||
}
|
||||
|
||||
void flash_led(uint8_t count)
|
||||
{
|
||||
while (count--) {
|
||||
LED_PORT |= _BV(LED);
|
||||
_delay_ms(100);
|
||||
LED_PORT &= ~_BV(LED);
|
||||
_delay_ms(100);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* end of file ATmegaBOOT.c */
|
|
@ -0,0 +1,130 @@
|
|||
:020000021000EC
|
||||
:10F000000C9446F80C9465F80C9465F80C9465F82B
|
||||
:10F010000C9465F80C9465F80C9465F80C9465F8FC
|
||||
:10F020000C9465F80C9465F80C9465F80C9465F8EC
|
||||
:10F030000C9465F80C9465F80C9465F80C9465F8DC
|
||||
:10F040000C9465F80C9465F80C9465F80C9465F8CC
|
||||
:10F050000C9465F80C9465F80C9465F80C9465F8BC
|
||||
:10F060000C9465F80C9465F80C9465F80C9465F8AC
|
||||
:10F070000C9465F80C9465F80C9465F80C9465F89C
|
||||
:10F080000C9465F80C9465F80C9465F811241FBE77
|
||||
:10F09000CFEFD0E4DEBFCDBF11E0A0E0B1E0E8EDFE
|
||||
:10F0A000F7EF01E00BBF02C007900D92A230B1074D
|
||||
:10F0B000D9F712E0A2E0B1E001C01D92AD30B10776
|
||||
:10F0C000E1F70E947EF90C94EAFB0C9400F8909111
|
||||
:10F0D0000201913019F0923041F008959091C000F2
|
||||
:10F0E00095FFFCCF8093C60008959091C80095FFCE
|
||||
:10F0F000FCCF8093CE0008951F93982F95959595FA
|
||||
:10F1000095959595905D182F1F701A304CF4105DF1
|
||||
:10F11000892F0E9467F8812F0E9467F81F91089538
|
||||
:10F12000195A892F0E9467F8812F0E9467F81F9152
|
||||
:10F130000895EF92FF920F931F9380910201813007
|
||||
:10F1400069F1823031F080E01F910F91FF90EF90D4
|
||||
:10F150000895EE24FF2487018091C80087FD17C021
|
||||
:10F160000894E11CF11C011D111D81E4E81682E4E4
|
||||
:10F17000F8068FE0080780E0180770F3E0910401BB
|
||||
:10F18000F091050109958091C80087FFE9CF809132
|
||||
:10F19000CE001F910F91FF90EF900895EE24FF2471
|
||||
:10F1A00087018091C00087FD17C00894E11CF11C05
|
||||
:10F1B000011D111D81E4E81682E4F8068FE00807BE
|
||||
:10F1C00080E0180770F3E0910401F09105010995C2
|
||||
:10F1D0008091C00087FFE9CF8091C6001F910F91F9
|
||||
:10F1E000FF90EF9008951F930E9499F8182F0E94A6
|
||||
:10F1F00067F8113634F410330CF01053812F1F913F
|
||||
:10F2000008951755812F1F9108951F930E94F3F8B9
|
||||
:10F21000182F0E94F3F81295107F810F1F91089507
|
||||
:10F2200020910201882339F0213031F0223061F041
|
||||
:10F2300081508823C9F708959091C00097FFFCCFB3
|
||||
:10F240009091C6008150F5CF9091C80097FFFCCFF8
|
||||
:10F250009091CE008150EDCF1F93182F0E9499F806
|
||||
:10F26000803281F0809103018F5F809303018530AC
|
||||
:10F2700011F01F910895E0910401F09105010995A5
|
||||
:10F280001F91089584E10E9467F8812F0E9467F81A
|
||||
:10F2900080E10E9467F8EDCF0E9499F8803271F00A
|
||||
:10F2A000809103018F5F80930301853009F00895F9
|
||||
:10F2B000E0910401F09105010995089584E10E940F
|
||||
:10F2C00067F880E10E9467F8089515C0289A2FEF2B
|
||||
:10F2D00031EE44E0215030404040E1F700C00000F2
|
||||
:10F2E00028982FEF31EE44E0215030404040E1F7C4
|
||||
:10F2F00000C000008150882349F70895EF92FF92E3
|
||||
:10F300000F931F93CF93DF93000081E0809302015E
|
||||
:10F3100080E18093C4001092C5001092C00086E086
|
||||
:10F320008093C20088E18093C100209A81E00E940E
|
||||
:10F3300065F90E9499F88033B1F18133B9F18034D5
|
||||
:10F3400009F454C0813409F45AC0823409F469C004
|
||||
:10F35000853409F46CC0803531F1823521F1813575
|
||||
:10F3600011F1853509F469C0863509F471C0843618
|
||||
:10F3700009F47AC0843709F4E1C0853709F43FC144
|
||||
:10F38000863709F44AC0809103018F5F809303019F
|
||||
:10F39000853079F6E0910401F091050109950E940C
|
||||
:10F3A00099F8803351F60E944CF9C3CF0E9499F826
|
||||
:10F3B000803249F784E10E9467F881E40E9467F88F
|
||||
:10F3C00086E50E9467F882E50E9467F880E20E9465
|
||||
:10F3D00067F889E40E9467F883E50E9467F880E592
|
||||
:10F3E0000E9467F880E10E9467F8A3CF0E9499F815
|
||||
:10F3F0008638C8F20E9499F80E944CF99ACF0E9470
|
||||
:10F4000099F8803809F414C1813809F415C182389B
|
||||
:10F4100009F416C1883909F407C180E00E942CF96B
|
||||
:10F4200088CF84E10E9410F90E944CF982CF85E0D8
|
||||
:10F430000E9410F90E944CF97CCF0E9499F88093A9
|
||||
:10F4400006010E9499F8809307010E944CF971CF40
|
||||
:10F450000E9499F8803309F405C183E00E9410F9F5
|
||||
:10F4600080E00E942CF965CF0E9499F880930902F0
|
||||
:10F470000E9499F88093080280910C028E7F8093FD
|
||||
:10F480000C020E9499F8853409F4FDC080910802AD
|
||||
:10F49000909109020097A1F068E0E62E61E0F62E57
|
||||
:10F4A00000E010E00E9499F8F70181937F010F5F5F
|
||||
:10F4B0001F4F80910802909109020817190790F3D5
|
||||
:10F4C0000E9499F8803209F05ECF80910C0280FF93
|
||||
:10F4D000ECC08091060190910701880F991F9093CD
|
||||
:10F4E000070180930601209108023091090221153D
|
||||
:10F4F0003105E9F048E0E42E41E0F42E00E010E0B0
|
||||
:10F50000F70161917F010E94DCFB809106019091DF
|
||||
:10F510000701019690930701809306010F5F1F4F2B
|
||||
:10F5200020910802309109020217130748F384E181
|
||||
:10F530000E9467F880E10E9467F8FBCE0E9499F86C
|
||||
:10F54000809309020E9499F8809308028091060135
|
||||
:10F550009091070197FDA3C020910C022D7F20936D
|
||||
:10F560000C02880F991F90930701809306010E9457
|
||||
:10F5700099F8853409F48DC080910C028E7F8093B8
|
||||
:10F580000C020E9499F8803209F0D3CE84E10E94E7
|
||||
:10F5900067F88091080290910902009709F440C031
|
||||
:10F5A00000E010E0809106019091070116C0FC0177
|
||||
:10F5B00084910E9467F8809106019091070101965D
|
||||
:10F5C00090930701809306010F5F1F4F209108025F
|
||||
:10F5D000309109020217130718F520910C0220FD43
|
||||
:10F5E00033C021FFE4CFA0E0B0E080509040AF4FA7
|
||||
:10F5F000BF4FABBFFC0187910E9467F8DCCF0E9430
|
||||
:10F6000099F8803209F0BFCE84E10E9467F88EE15C
|
||||
:10F610000E9467F887E90E9467F885E00E9467F812
|
||||
:10F6200080E10E9467F885CE83E00E942CF981CEAC
|
||||
:10F6300082E00E942CF97DCE81E00E942CF979CEE7
|
||||
:10F6400080E10E942CF975CE0E94D4FB0E9467F8DD
|
||||
:10F650008091060190910701019690930701809394
|
||||
:10F660000601B2CF0E9499F80E9499F8082F0E94D3
|
||||
:10F6700099F8002309F48BC0013009F48CC085E0AF
|
||||
:10F680000E942CF956CE80910C02816080930C026E
|
||||
:10F69000FDCE80910C02816080930C0272CF20918C
|
||||
:10F6A0000C02226020930C025CCF8091070187FD41
|
||||
:10F6B00076C010920B0280E08BBF80910601909182
|
||||
:10F6C0000701880F991F909307018093060180918D
|
||||
:10F6D000080280FF09C080910802909109020196FA
|
||||
:10F6E0009093090280930802F894F999FECF1127AC
|
||||
:10F6F000E0910601F0910701C8E0D1E08091080295
|
||||
:10F7000090910902103091F400915700017001307E
|
||||
:10F71000D9F303E000935700E8950091570001707A
|
||||
:10F720000130D9F301E100935700E8950990199051
|
||||
:10F730000091570001700130D9F301E000935700A8
|
||||
:10F74000E8951395103898F0112700915700017033
|
||||
:10F750000130D9F305E000935700E8950091570078
|
||||
:10F7600001700130D9F301E100935700E89532961A
|
||||
:10F77000029709F0C7CF103011F00296E5CF11249F
|
||||
:10F7800084E10E9467F880E10E9467F8D2CD8EE1A3
|
||||
:10F790000E942CF9CECD87E90E942CF9CACDF1E068
|
||||
:10F7A000F0930B0281E088CFF999FECF92BD81BD25
|
||||
:10F7B000F89A992780B50895262FF999FECF1FBA98
|
||||
:10F7C00092BD81BD20BD0FB6F894FA9AF99A0FBE8A
|
||||
:08F7D00001960895F894FFCFA3
|
||||
:02F7D8008000AF
|
||||
:040000031000F000F9
|
||||
:00000001FF
|
|
@ -0,0 +1,130 @@
|
|||
:020000021000EC
|
||||
:10F000000C9446F80C9465F80C9465F80C9465F82B
|
||||
:10F010000C9465F80C9465F80C9465F80C9465F8FC
|
||||
:10F020000C9465F80C9465F80C9465F80C9465F8EC
|
||||
:10F030000C9465F80C9465F80C9465F80C9465F8DC
|
||||
:10F040000C9465F80C9465F80C9465F80C9465F8CC
|
||||
:10F050000C9465F80C9465F80C9465F80C9465F8BC
|
||||
:10F060000C9465F80C9465F80C9465F80C9465F8AC
|
||||
:10F070000C9465F80C9465F80C9465F80C9465F89C
|
||||
:10F080000C9465F80C9465F80C9465F811241FBE77
|
||||
:10F09000CFEFD0E4DEBFCDBF11E0A0E0B1E0E8EDFE
|
||||
:10F0A000F7EF01E00BBF02C007900D92A230B1074D
|
||||
:10F0B000D9F712E0A2E0B1E001C01D92AD30B10776
|
||||
:10F0C000E1F70E947EF90C94EAFB0C9400F8909111
|
||||
:10F0D0000201913019F0923041F008959091C000F2
|
||||
:10F0E00095FFFCCF8093C60008959091C80095FFCE
|
||||
:10F0F000FCCF8093CE0008951F93982F95959595FA
|
||||
:10F1000095959595905D182F1F701A304CF4105DF1
|
||||
:10F11000892F0E9467F8812F0E9467F81F91089538
|
||||
:10F12000195A892F0E9467F8812F0E9467F81F9152
|
||||
:10F130000895EF92FF920F931F9380910201813007
|
||||
:10F1400069F1823031F080E01F910F91FF90EF90D4
|
||||
:10F150000895EE24FF2487018091C80087FD17C021
|
||||
:10F160000894E11CF11C011D111D81E2E81681EAE1
|
||||
:10F17000F80687E0080780E0180770F3E0910401C3
|
||||
:10F18000F091050109958091C80087FFE9CF809132
|
||||
:10F19000CE001F910F91FF90EF900895EE24FF2471
|
||||
:10F1A00087018091C00087FD17C00894E11CF11C05
|
||||
:10F1B000011D111D81E2E81681EAF80687E00807C3
|
||||
:10F1C00080E0180770F3E0910401F09105010995C2
|
||||
:10F1D0008091C00087FFE9CF8091C6001F910F91F9
|
||||
:10F1E000FF90EF9008951F930E9499F8182F0E94A6
|
||||
:10F1F00067F8113634F410330CF01053812F1F913F
|
||||
:10F2000008951755812F1F9108951F930E94F3F8B9
|
||||
:10F21000182F0E94F3F81295107F810F1F91089507
|
||||
:10F2200020910201882339F0213031F0223061F041
|
||||
:10F2300081508823C9F708959091C00097FFFCCFB3
|
||||
:10F240009091C6008150F5CF9091C80097FFFCCFF8
|
||||
:10F250009091CE008150EDCF1F93182F0E9499F806
|
||||
:10F26000803281F0809103018F5F809303018530AC
|
||||
:10F2700011F01F910895E0910401F09105010995A5
|
||||
:10F280001F91089584E10E9467F8812F0E9467F81A
|
||||
:10F2900080E10E9467F8EDCF0E9499F8803271F00A
|
||||
:10F2A000809103018F5F80930301853009F00895F9
|
||||
:10F2B000E0910401F09105010995089584E10E940F
|
||||
:10F2C00067F880E10E9467F8089515C0289A2FEF2B
|
||||
:10F2D00030E742E0215030404040E1F700C00000FC
|
||||
:10F2E00028982FEF30E742E0215030404040E1F7CE
|
||||
:10F2F00000C000008150882349F70895EF92FF92E3
|
||||
:10F300000F931F93CF93DF93000081E0809302015E
|
||||
:10F3100089E18093C4001092C5001092C00086E07D
|
||||
:10F320008093C20088E18093C100209A81E00E940E
|
||||
:10F3300065F90E9499F88033B1F18133B9F18034D5
|
||||
:10F3400009F454C0813409F45AC0823409F469C004
|
||||
:10F35000853409F46CC0803531F1823521F1813575
|
||||
:10F3600011F1853509F469C0863509F471C0843618
|
||||
:10F3700009F47AC0843709F4E1C0853709F43FC144
|
||||
:10F38000863709F44AC0809103018F5F809303019F
|
||||
:10F39000853079F6E0910401F091050109950E940C
|
||||
:10F3A00099F8803351F60E944CF9C3CF0E9499F826
|
||||
:10F3B000803249F784E10E9467F881E40E9467F88F
|
||||
:10F3C00086E50E9467F882E50E9467F880E20E9465
|
||||
:10F3D00067F889E40E9467F883E50E9467F880E592
|
||||
:10F3E0000E9467F880E10E9467F8A3CF0E9499F815
|
||||
:10F3F0008638C8F20E9499F80E944CF99ACF0E9470
|
||||
:10F4000099F8803809F414C1813809F415C182389B
|
||||
:10F4100009F416C1883909F407C180E00E942CF96B
|
||||
:10F4200088CF84E10E9410F90E944CF982CF85E0D8
|
||||
:10F430000E9410F90E944CF97CCF0E9499F88093A9
|
||||
:10F4400006010E9499F8809307010E944CF971CF40
|
||||
:10F450000E9499F8803309F405C183E00E9410F9F5
|
||||
:10F4600080E00E942CF965CF0E9499F880930902F0
|
||||
:10F470000E9499F88093080280910C028E7F8093FD
|
||||
:10F480000C020E9499F8853409F4FDC080910802AD
|
||||
:10F49000909109020097A1F068E0E62E61E0F62E57
|
||||
:10F4A00000E010E00E9499F8F70181937F010F5F5F
|
||||
:10F4B0001F4F80910802909109020817190790F3D5
|
||||
:10F4C0000E9499F8803209F05ECF80910C0280FF93
|
||||
:10F4D000ECC08091060190910701880F991F9093CD
|
||||
:10F4E000070180930601209108023091090221153D
|
||||
:10F4F0003105E9F048E0E42E41E0F42E00E010E0B0
|
||||
:10F50000F70161917F010E94DCFB809106019091DF
|
||||
:10F510000701019690930701809306010F5F1F4F2B
|
||||
:10F5200020910802309109020217130748F384E181
|
||||
:10F530000E9467F880E10E9467F8FBCE0E9499F86C
|
||||
:10F54000809309020E9499F8809308028091060135
|
||||
:10F550009091070197FDA3C020910C022D7F20936D
|
||||
:10F560000C02880F991F90930701809306010E9457
|
||||
:10F5700099F8853409F48DC080910C028E7F8093B8
|
||||
:10F580000C020E9499F8803209F0D3CE84E10E94E7
|
||||
:10F5900067F88091080290910902009709F440C031
|
||||
:10F5A00000E010E0809106019091070116C0FC0177
|
||||
:10F5B00084910E9467F8809106019091070101965D
|
||||
:10F5C00090930701809306010F5F1F4F209108025F
|
||||
:10F5D000309109020217130718F520910C0220FD43
|
||||
:10F5E00033C021FFE4CFA0E0B0E080509040AF4FA7
|
||||
:10F5F000BF4FABBFFC0187910E9467F8DCCF0E9430
|
||||
:10F6000099F8803209F0BFCE84E10E9467F88EE15C
|
||||
:10F610000E9467F887E90E9467F885E00E9467F812
|
||||
:10F6200080E10E9467F885CE83E00E942CF981CEAC
|
||||
:10F6300082E00E942CF97DCE81E00E942CF979CEE7
|
||||
:10F6400080E10E942CF975CE0E94D4FB0E9467F8DD
|
||||
:10F650008091060190910701019690930701809394
|
||||
:10F660000601B2CF0E9499F80E9499F8082F0E94D3
|
||||
:10F6700099F8002309F48BC0013009F48CC085E0AF
|
||||
:10F680000E942CF956CE80910C02816080930C026E
|
||||
:10F69000FDCE80910C02816080930C0272CF20918C
|
||||
:10F6A0000C02226020930C025CCF8091070187FD41
|
||||
:10F6B00076C010920B0280E08BBF80910601909182
|
||||
:10F6C0000701880F991F909307018093060180918D
|
||||
:10F6D000080280FF09C080910802909109020196FA
|
||||
:10F6E0009093090280930802F894F999FECF1127AC
|
||||
:10F6F000E0910601F0910701C8E0D1E08091080295
|
||||
:10F7000090910902103091F400915700017001307E
|
||||
:10F71000D9F303E000935700E8950091570001707A
|
||||
:10F720000130D9F301E100935700E8950990199051
|
||||
:10F730000091570001700130D9F301E000935700A8
|
||||
:10F74000E8951395103898F0112700915700017033
|
||||
:10F750000130D9F305E000935700E8950091570078
|
||||
:10F7600001700130D9F301E100935700E89532961A
|
||||
:10F77000029709F0C7CF103011F00296E5CF11249F
|
||||
:10F7800084E10E9467F880E10E9467F8D2CD8EE1A3
|
||||
:10F790000E942CF9CECD87E90E942CF9CACDF1E068
|
||||
:10F7A000F0930B0281E088CFF999FECF92BD81BD25
|
||||
:10F7B000F89A992780B50895262FF999FECF1FBA98
|
||||
:10F7C00092BD81BD20BD0FB6F894FA9AF99A0FBE8A
|
||||
:08F7D00001960895F894FFCFA3
|
||||
:02F7D8008000AF
|
||||
:040000031000F000F9
|
||||
:00000001FF
|
|
@ -0,0 +1,126 @@
|
|||
:10F800000C943E7C0C945B7C0C945B7C0C945B7C39
|
||||
:10F810000C945B7C0C945B7C0C945B7C0C945B7C0C
|
||||
:10F820000C945B7C0C945B7C0C945B7C0C945B7CFC
|
||||
:10F830000C945B7C0C945B7C0C945B7C0C945B7CEC
|
||||
:10F840000C945B7C0C945B7C0C945B7C0C945B7CDC
|
||||
:10F850000C945B7C0C945B7C0C945B7C0C945B7CCC
|
||||
:10F860000C945B7C0C945B7C0C945B7C0C945B7CBC
|
||||
:10F870000C945B7C0C945B7C0C945B7C11241FBE11
|
||||
:10F88000CFEFD0E1DEBFCDBF11E0A0E0B1E0EAEA0A
|
||||
:10F89000FFEF02C005900D92A230B107D9F712E038
|
||||
:10F8A000A2E0B1E001C01D92AD30B107E1F70E94C6
|
||||
:10F8B000747D0C94D37F0C94007C90910201913064
|
||||
:10F8C00019F0923041F008959091C00095FFFCCF5F
|
||||
:10F8D0008093C60008959091C80095FFFCCF809357
|
||||
:10F8E000CE0008951F93982F95959595959595958C
|
||||
:10F8F000905D182F1F701A304CF4105D892F0E94F4
|
||||
:10F900005D7C812F0E945D7C1F910895195A892F7B
|
||||
:10F910000E945D7C812F0E945D7C1F910895EF9273
|
||||
:10F92000FF920F931F9380910201813069F1823021
|
||||
:10F9300031F080E01F910F91FF90EF900895EE2439
|
||||
:10F94000FF2487018091C80087FD17C00894E11C3F
|
||||
:10F95000F11C011D111D81E4E81682E4F8068FE018
|
||||
:10F96000080780E0180770F3E0910401F0910501A9
|
||||
:10F9700009958091C80087FFE9CF8091CE001F9143
|
||||
:10F980000F91FF90EF900895EE24FF24870180915E
|
||||
:10F99000C00087FD17C00894E11CF11C011D111D5A
|
||||
:10F9A00081E4E81682E4F8068FE0080780E0180793
|
||||
:10F9B00070F3E0910401F091050109958091C00078
|
||||
:10F9C00087FFE9CF8091C6001F910F91FF90EF90C4
|
||||
:10F9D00008951F930E948F7C182F0E945D7C113622
|
||||
:10F9E00034F410330CF01053812F1F9108951755E4
|
||||
:10F9F000812F1F9108951F930E94E97C182F0E9468
|
||||
:10FA0000E97C1295107F810F1F91089520910201CA
|
||||
:10FA1000882339F0213031F0223061F08150882381
|
||||
:10FA2000C9F708959091C00097FFFCCF9091C60050
|
||||
:10FA30008150F5CF9091C80097FFFCCF9091CE00F8
|
||||
:10FA40008150EDCF1F93182F0E948F7C803281F060
|
||||
:10FA5000809103018F5F80930301853011F01F9126
|
||||
:10FA60000895E0910401F091050109951F91089511
|
||||
:10FA700084E10E945D7C812F0E945D7C80E10E9478
|
||||
:10FA80005D7CEDCF0E948F7C803271F0809103010C
|
||||
:10FA90008F5F80930301853009F00895E0910401A0
|
||||
:10FAA000F09105010995089584E10E945D7C80E153
|
||||
:10FAB0000E945D7C089515C0289A2FEF31EE44E036
|
||||
:10FAC000215030404040E1F700C0000028982FEF5F
|
||||
:10FAD00031EE44E0215030404040E1F700C00000EA
|
||||
:10FAE0008150882349F70895EF92FF920F931F9357
|
||||
:10FAF000CF93DF93000081E08093020180E1809347
|
||||
:10FB0000C4001092C5001092C00086E08093C2002D
|
||||
:10FB100088E18093C100209A81E00E945B7D0E9471
|
||||
:10FB20008F7C8033B1F18133B9F1803409F454C052
|
||||
:10FB3000813409F45AC0823409F469C0853409F467
|
||||
:10FB40006CC0803531F1823521F1813511F1853577
|
||||
:10FB500009F469C0863509F471C0843609F47AC0A5
|
||||
:10FB6000843709F4E1C0853709F439C1863709F4CF
|
||||
:10FB70004AC0809103018F5F80930301853079F63D
|
||||
:10FB8000E0910401F091050109950E948F7C80337A
|
||||
:10FB900051F60E94427DC3CF0E948F7C803249F78C
|
||||
:10FBA00084E10E945D7C81E40E945D7C86E50E9488
|
||||
:10FBB0005D7C82E50E945D7C80E20E945D7C89E440
|
||||
:10FBC0000E945D7C83E50E945D7C80E50E945D7CF7
|
||||
:10FBD00080E10E945D7CA3CF0E948F7C8638C8F2B2
|
||||
:10FBE0000E948F7C0E94427D9ACF0E948F7C803839
|
||||
:10FBF00009F40EC1813809F40FC1823809F410C12B
|
||||
:10FC0000883909F401C180E00E94227D88CF84E117
|
||||
:10FC10000E94067D0E94427D82CF85E00E94067D83
|
||||
:10FC20000E94427D7CCF0E948F7C809306010E94BF
|
||||
:10FC30008F7C809307010E94427D71CF0E948F7C50
|
||||
:10FC4000803309F4F1C083E00E94067D80E00E94C9
|
||||
:10FC5000227D65CF0E948F7C809309020E948F7C59
|
||||
:10FC60008093080280910C028E7F80930C020E9488
|
||||
:10FC70008F7C853409F4E9C08091080290910902D3
|
||||
:10FC80000097A1F068E0E62E61E0F62E00E010E0BB
|
||||
:10FC90000E948F7CF70181937F010F5F1F4F80913E
|
||||
:10FCA0000802909109020817190790F30E948F7CAF
|
||||
:10FCB000803209F05ECF80910C0280FFE5C0809118
|
||||
:10FCC000060190910701880F991F90930701809377
|
||||
:10FCD0000601209108023091090221153105E9F051
|
||||
:10FCE00048E0E42E41E0F42E00E010E0F7016191DD
|
||||
:10FCF0007F010E94C57F80910601909107010196C6
|
||||
:10FD000090930701809306010F5F1F4F2091080217
|
||||
:10FD1000309109020217130748F384E10E945D7CC9
|
||||
:10FD200080E10E945D7CFBCE0E948F7C8093090263
|
||||
:10FD30000E948F7C809308028091060190910701B8
|
||||
:10FD400097FD9CC020910C022D7F20930C02880F00
|
||||
:10FD5000991F90930701809306010E948F7C853440
|
||||
:10FD600009F486C080910C028E7F80930C020E9461
|
||||
:10FD70008F7C803209F0D3CE84E10E945D7C20919B
|
||||
:10FD800008023091090221153105D1F100E010E09F
|
||||
:10FD900080910601909107010CC041FF5CC0019663
|
||||
:10FDA00090930701809306010F5F1F4F02171307FF
|
||||
:10FDB00038F540910C0240FFF0CF0E94BD7F0E94B9
|
||||
:10FDC0005D7C809106019091070101969093070157
|
||||
:10FDD000809306012091080230910902E5CF0E942C
|
||||
:10FDE0008F7C803209F0C5CE84E10E945D7C8EE17B
|
||||
:10FDF0000E945D7C86E90E945D7C8AE00E945D7CB9
|
||||
:10FE000080E10E945D7C8BCE83E00E94227D87CEC4
|
||||
:10FE100082E00E94227D83CE81E00E94227D7FCEFF
|
||||
:10FE200080E10E94227D7BCE0E948F7C0E948F7C8D
|
||||
:10FE3000082F0E948F7C002309F497C0013009F439
|
||||
:10FE400098C08AE00E94227D6ACE80910C02816077
|
||||
:10FE500080930C0211CFFC0184910E945D7C209163
|
||||
:10FE6000080230910902809106019091070197CF15
|
||||
:10FE700080910C02816080930C0279CF20910C025A
|
||||
:10FE8000226020930C0263CF80910701880F880BBA
|
||||
:10FE9000817080930B028091060190910701880F79
|
||||
:10FEA000991F90930701809306018091080280FFBB
|
||||
:10FEB00009C080910802909109020196909309026D
|
||||
:10FEC00080930802F894F999FECF1127E09106017A
|
||||
:10FED000F0910701C8E0D1E08091080290910902F9
|
||||
:10FEE000103091F40091570001700130D9F303E014
|
||||
:10FEF00000935700E8950091570001700130D9F345
|
||||
:10FF000001E100935700E89509901990009157007E
|
||||
:10FF100001700130D9F301E000935700E895139583
|
||||
:10FF2000103898F011270091570001700130D9F373
|
||||
:10FF300005E000935700E8950091570001700130EB
|
||||
:10FF4000D9F301E100935700E8953296029709F042
|
||||
:10FF5000C7CF103011F00296E5CF112484E10E9442
|
||||
:10FF60005D7C80E10E945D7CDACD8EE10E94227D85
|
||||
:10FF7000D6CD86E90E94227DD2CDF999FECF92BDE1
|
||||
:10FF800081BDF89A992780B50895262FF999FECF5B
|
||||
:10FF90001FBA92BD81BD20BD0FB6F894FA9AF99AA6
|
||||
:0AFFA0000FBE01960895F894FFCFFC
|
||||
:02FFAA008000D5
|
||||
:040000030000F80001
|
||||
:00000001FF
|
|
@ -0,0 +1,254 @@
|
|||
# Makefile for ATmegaBOOT
|
||||
# E.Lins, 18.7.2005
|
||||
# $Id$
|
||||
#
|
||||
# Instructions
|
||||
#
|
||||
# To make bootloader .hex file:
|
||||
# make diecimila
|
||||
# make lilypad
|
||||
# make ng
|
||||
# etc...
|
||||
#
|
||||
# To burn bootloader .hex file:
|
||||
# make diecimila_isp
|
||||
# make lilypad_isp
|
||||
# make ng_isp
|
||||
# etc...
|
||||
|
||||
# program name should not be changed...
|
||||
PROGRAM = ATmegaBOOT_168
|
||||
|
||||
# enter the parameters for the avrdude isp tool
|
||||
ISPTOOL = stk500v2
|
||||
ISPPORT = usb
|
||||
ISPSPEED = -b 115200
|
||||
|
||||
MCU_TARGET = atmega168
|
||||
LDSECTION = --section-start=.text=0x3800
|
||||
|
||||
# the efuse should really be 0xf8; since, however, only the lower
|
||||
# three bits of that byte are used on the atmega168, avrdude gets
|
||||
# confused if you specify 1's for the higher bits, see:
|
||||
# http://tinker.it/now/2007/02/24/the-tale-of-avrdude-atmega168-and-extended-bits-fuses/
|
||||
#
|
||||
# similarly, the lock bits should be 0xff instead of 0x3f (to
|
||||
# unlock the bootloader section) and 0xcf instead of 0x0f (to
|
||||
# lock it), but since the high two bits of the lock byte are
|
||||
# unused, avrdude would get confused.
|
||||
|
||||
ISPFUSES = avrdude -c $(ISPTOOL) -p $(MCU_TARGET) -P $(ISPPORT) $(ISPSPEED) \
|
||||
-e -u -U lock:w:0x3f:m -U efuse:w:0x$(EFUSE):m -U hfuse:w:0x$(HFUSE):m -U lfuse:w:0x$(LFUSE):m
|
||||
ISPFLASH = avrdude -c $(ISPTOOL) -p $(MCU_TARGET) -P $(ISPPORT) $(ISPSPEED) \
|
||||
-U flash:w:$(PROGRAM)_$(TARGET).hex -U lock:w:0x0f:m
|
||||
|
||||
STK500 = "C:\Program Files\Atmel\AVR Tools\STK500\Stk500.exe"
|
||||
STK500-1 = $(STK500) -e -d$(MCU_TARGET) -pf -vf -if$(PROGRAM)_$(TARGET).hex \
|
||||
-lFF -LFF -f$(HFUSE)$(LFUSE) -EF8 -ms -q -cUSB -I200kHz -s -wt
|
||||
STK500-2 = $(STK500) -d$(MCU_TARGET) -ms -q -lCF -LCF -cUSB -I200kHz -s -wt
|
||||
|
||||
|
||||
OBJ = $(PROGRAM).o
|
||||
OPTIMIZE = -O2
|
||||
|
||||
DEFS =
|
||||
LIBS =
|
||||
|
||||
CC = avr-gcc
|
||||
|
||||
# Override is only needed by avr-lib build system.
|
||||
|
||||
override CFLAGS = -g -Wall $(OPTIMIZE) -mmcu=$(MCU_TARGET) -DF_CPU=$(AVR_FREQ) $(DEFS)
|
||||
override LDFLAGS = -Wl,$(LDSECTION)
|
||||
#override LDFLAGS = -Wl,-Map,$(PROGRAM).map,$(LDSECTION)
|
||||
|
||||
OBJCOPY = avr-objcopy
|
||||
OBJDUMP = avr-objdump
|
||||
|
||||
all:
|
||||
|
||||
lilypad: TARGET = lilypad
|
||||
lilypad: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>1' '-DNUM_LED_FLASHES=3'
|
||||
lilypad: AVR_FREQ = 8000000L
|
||||
lilypad: $(PROGRAM)_lilypad.hex
|
||||
|
||||
lilypad_isp: lilypad
|
||||
lilypad_isp: TARGET = lilypad
|
||||
lilypad_isp: HFUSE = DD
|
||||
lilypad_isp: LFUSE = E2
|
||||
lilypad_isp: EFUSE = 00
|
||||
lilypad_isp: isp
|
||||
|
||||
lilypad_resonator: TARGET = lilypad_resonator
|
||||
lilypad_resonator: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=3'
|
||||
lilypad_resonator: AVR_FREQ = 8000000L
|
||||
lilypad_resonator: $(PROGRAM)_lilypad_resonator.hex
|
||||
|
||||
lilypad_resonator_isp: lilypad_resonator
|
||||
lilypad_resonator_isp: TARGET = lilypad_resonator
|
||||
lilypad_resonator_isp: HFUSE = DD
|
||||
lilypad_resonator_isp: LFUSE = C6
|
||||
lilypad_resonator_isp: EFUSE = 00
|
||||
lilypad_resonator_isp: isp
|
||||
|
||||
pro8: TARGET = pro_8MHz
|
||||
pro8: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=1' '-DWATCHDOG_MODS'
|
||||
pro8: AVR_FREQ = 8000000L
|
||||
pro8: $(PROGRAM)_pro_8MHz.hex
|
||||
|
||||
pro8_isp: pro8
|
||||
pro8_isp: TARGET = pro_8MHz
|
||||
pro8_isp: HFUSE = DD
|
||||
pro8_isp: LFUSE = C6
|
||||
pro8_isp: EFUSE = 00
|
||||
pro8_isp: isp
|
||||
|
||||
pro16: TARGET = pro_16MHz
|
||||
pro16: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=1' '-DWATCHDOG_MODS'
|
||||
pro16: AVR_FREQ = 16000000L
|
||||
pro16: $(PROGRAM)_pro_16MHz.hex
|
||||
|
||||
pro16_isp: pro16
|
||||
pro16_isp: TARGET = pro_16MHz
|
||||
pro16_isp: HFUSE = DD
|
||||
pro16_isp: LFUSE = C6
|
||||
pro16_isp: EFUSE = 00
|
||||
pro16_isp: isp
|
||||
|
||||
pro20: TARGET = pro_20mhz
|
||||
pro20: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=1' '-DWATCHDOG_MODS'
|
||||
pro20: AVR_FREQ = 20000000L
|
||||
pro20: $(PROGRAM)_pro_20mhz.hex
|
||||
|
||||
pro20_isp: pro20
|
||||
pro20_isp: TARGET = pro_20mhz
|
||||
pro20_isp: HFUSE = DD
|
||||
pro20_isp: LFUSE = C6
|
||||
pro20_isp: EFUSE = 00
|
||||
pro20_isp: isp
|
||||
|
||||
diecimila: TARGET = diecimila
|
||||
diecimila: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=1'
|
||||
diecimila: AVR_FREQ = 16000000L
|
||||
diecimila: $(PROGRAM)_diecimila.hex
|
||||
|
||||
diecimila_isp: diecimila
|
||||
diecimila_isp: TARGET = diecimila
|
||||
diecimila_isp: HFUSE = DD
|
||||
diecimila_isp: LFUSE = FF
|
||||
diecimila_isp: EFUSE = 00
|
||||
diecimila_isp: isp
|
||||
|
||||
ng: TARGET = ng
|
||||
ng: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>1' '-DNUM_LED_FLASHES=3'
|
||||
ng: AVR_FREQ = 16000000L
|
||||
ng: $(PROGRAM)_ng.hex
|
||||
|
||||
ng_isp: ng
|
||||
ng_isp: TARGET = ng
|
||||
ng_isp: HFUSE = DD
|
||||
ng_isp: LFUSE = FF
|
||||
ng_isp: EFUSE = 00
|
||||
ng_isp: isp
|
||||
|
||||
atmega328: TARGET = atmega328
|
||||
atmega328: MCU_TARGET = atmega328p
|
||||
atmega328: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=1' -DBAUD_RATE=57600
|
||||
atmega328: AVR_FREQ = 16000000L
|
||||
atmega328: LDSECTION = --section-start=.text=0x7800
|
||||
atmega328: $(PROGRAM)_atmega328.hex
|
||||
|
||||
atmega328_isp: atmega328
|
||||
atmega328_isp: TARGET = atmega328
|
||||
atmega328_isp: MCU_TARGET = atmega328p
|
||||
atmega328_isp: HFUSE = DA
|
||||
atmega328_isp: LFUSE = FF
|
||||
atmega328_isp: EFUSE = 05
|
||||
atmega328_isp: isp
|
||||
|
||||
atmega328_pro8: TARGET = atmega328_pro_8MHz
|
||||
atmega328_pro8: MCU_TARGET = atmega328p
|
||||
atmega328_pro8: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=1' -DBAUD_RATE=57600 -DDOUBLE_SPEED
|
||||
atmega328_pro8: AVR_FREQ = 8000000L
|
||||
atmega328_pro8: LDSECTION = --section-start=.text=0x7800
|
||||
atmega328_pro8: $(PROGRAM)_atmega328_pro_8MHz.hex
|
||||
|
||||
atmega328_pro8_isp: atmega328_pro8
|
||||
atmega328_pro8_isp: TARGET = atmega328_pro_8MHz
|
||||
atmega328_pro8_isp: MCU_TARGET = atmega328p
|
||||
atmega328_pro8_isp: HFUSE = DA
|
||||
atmega328_pro8_isp: LFUSE = FF
|
||||
atmega328_pro8_isp: EFUSE = 05
|
||||
atmega328_pro8_isp: isp
|
||||
|
||||
mega: TARGET = atmega1280
|
||||
mega: MCU_TARGET = atmega1280
|
||||
mega: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=0' -DBAUD_RATE=57600
|
||||
mega: AVR_FREQ = 16000000L
|
||||
mega: LDSECTION = --section-start=.text=0x1F000
|
||||
mega: $(PROGRAM)_atmega1280.hex
|
||||
|
||||
mega_isp: mega
|
||||
mega_isp: TARGET = atmega1280
|
||||
mega_isp: MCU_TARGET = atmega1280
|
||||
mega_isp: HFUSE = DA
|
||||
mega_isp: LFUSE = FF
|
||||
mega_isp: EFUSE = F5
|
||||
mega_isp: isp
|
||||
|
||||
atmega1284p: TARGET = atmega1284p
|
||||
atmega1284p: MCU_TARGET = atmega1284p
|
||||
atmega1284p: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=0' '-DBAUD_RATE=57600'
|
||||
atmega1284p: AVR_FREQ = 16000000L
|
||||
atmega1284p: LDSECTION = --section-start=.text=0x1F000
|
||||
atmega1284p: $(PROGRAM)_atmega1284p.hex
|
||||
|
||||
atmega1284p_8m: TARGET = atmega1284p
|
||||
atmega1284p_8m: MCU_TARGET = atmega1284p
|
||||
atmega1284p_8m: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=0' '-DBAUD_RATE=19200'
|
||||
atmega1284p_8m: AVR_FREQ = 8000000L
|
||||
atmega1284p_8m: LDSECTION = --section-start=.text=0x1F000
|
||||
atmega1284p_8m: $(PROGRAM)_atmega1284p_8m.hex
|
||||
|
||||
atmega644p: TARGET = atmega644p
|
||||
atmega644p: MCU_TARGET = atmega644p
|
||||
atmega644p: CFLAGS += '-DMAX_TIME_COUNT=F_CPU>>4' '-DNUM_LED_FLASHES=0' '-DBAUD_RATE=57600'
|
||||
atmega644p: AVR_FREQ = 16000000L
|
||||
atmega644p: LDSECTION = --section-start=.text=0xF800
|
||||
atmega644p: $(PROGRAM)_atmega644p.hex
|
||||
|
||||
|
||||
atmega1284p_isp: atmega1284p
|
||||
atmega1284p_isp: TARGET = atmega1284p
|
||||
atmega1284p_isp: MCU_TARGET = atmega1284p
|
||||
atmega1284p_isp: HFUSE = DC
|
||||
atmega1284p_isp: LFUSE = FF
|
||||
atmega1284p_isp: EFUSE = FD
|
||||
atmega1284p_isp: isp
|
||||
|
||||
isp: $(TARGET)
|
||||
$(ISPFUSES)
|
||||
$(ISPFLASH)
|
||||
|
||||
isp-stk500: $(PROGRAM)_$(TARGET).hex
|
||||
$(STK500-1)
|
||||
$(STK500-2)
|
||||
|
||||
%.elf: $(OBJ)
|
||||
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
|
||||
|
||||
clean:
|
||||
rm -rf *.o *.elf *.lst *.map *.sym *.lss *.eep *.srec *.bin *.hex
|
||||
|
||||
%.lst: %.elf
|
||||
$(OBJDUMP) -h -S $< > $@
|
||||
|
||||
%.hex: %.elf
|
||||
$(OBJCOPY) -j .text -j .data -O ihex $< $@
|
||||
|
||||
%.srec: %.elf
|
||||
$(OBJCOPY) -j .text -j .data -O srec $< $@
|
||||
|
||||
%.bin: %.elf
|
||||
$(OBJCOPY) -j .text -j .data -O binary $< $@
|
||||
|
|
@ -0,0 +1,106 @@
|
|||
;************************************************************
|
||||
; Windows USB CDC ACM Setup File
|
||||
; Copyright (c) 2000 Microsoft Corporation
|
||||
|
||||
|
||||
[Version]
|
||||
Signature="$Windows NT$"
|
||||
Class=Ports
|
||||
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
|
||||
Provider=%MFGNAME%
|
||||
LayoutFile=layout.inf
|
||||
CatalogFile=%MFGFILENAME%.cat
|
||||
DriverVer=11/15/2007,5.1.2600.0
|
||||
|
||||
[Manufacturer]
|
||||
%MFGNAME%=DeviceList, NTamd64
|
||||
|
||||
[DestinationDirs]
|
||||
DefaultDestDir=12
|
||||
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Windows 2000/XP/Vista-32bit Sections
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
[DriverInstall.nt]
|
||||
include=mdmcpq.inf
|
||||
CopyFiles=DriverCopyFiles.nt
|
||||
AddReg=DriverInstall.nt.AddReg
|
||||
|
||||
[DriverCopyFiles.nt]
|
||||
usbser.sys,,,0x20
|
||||
|
||||
[DriverInstall.nt.AddReg]
|
||||
HKR,,DevLoader,,*ntkern
|
||||
HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
|
||||
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
|
||||
|
||||
[DriverInstall.nt.Services]
|
||||
AddService=usbser, 0x00000002, DriverService.nt
|
||||
|
||||
[DriverService.nt]
|
||||
DisplayName=%SERVICE%
|
||||
ServiceType=1
|
||||
StartType=3
|
||||
ErrorControl=1
|
||||
ServiceBinary=%12%\%DRIVERFILENAME%.sys
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Vista-64bit Sections
|
||||
;------------------------------------------------------------------------------
|
||||
|
||||
[DriverInstall.NTamd64]
|
||||
include=mdmcpq.inf
|
||||
CopyFiles=DriverCopyFiles.NTamd64
|
||||
AddReg=DriverInstall.NTamd64.AddReg
|
||||
|
||||
[DriverCopyFiles.NTamd64]
|
||||
%DRIVERFILENAME%.sys,,,0x20
|
||||
|
||||
[DriverInstall.NTamd64.AddReg]
|
||||
HKR,,DevLoader,,*ntkern
|
||||
HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
|
||||
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
|
||||
|
||||
[DriverInstall.NTamd64.Services]
|
||||
AddService=usbser, 0x00000002, DriverService.NTamd64
|
||||
|
||||
[DriverService.NTamd64]
|
||||
DisplayName=%SERVICE%
|
||||
ServiceType=1
|
||||
StartType=3
|
||||
ErrorControl=1
|
||||
ServiceBinary=%12%\%DRIVERFILENAME%.sys
|
||||
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; Vendor and Product ID Definitions
|
||||
;------------------------------------------------------------------------------
|
||||
; When developing your USB device, the VID and PID used in the PC side
|
||||
; application program and the firmware on the microcontroller must match.
|
||||
; Modify the below line to use your VID and PID. Use the format as shown below.
|
||||
; Note: One INF file can be used for multiple devices with different VID and PIDs.
|
||||
; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
|
||||
;------------------------------------------------------------------------------
|
||||
[SourceDisksFiles]
|
||||
[SourceDisksNames]
|
||||
[DeviceList]
|
||||
%DESCRIPTION%=DriverInstall, USB\VID_16D0&PID_076B
|
||||
|
||||
[DeviceList.NTamd64]
|
||||
%DESCRIPTION%=DriverInstall, USB\VID_16D0&PID_204A
|
||||
|
||||
|
||||
;------------------------------------------------------------------------------
|
||||
; String Definitions
|
||||
;------------------------------------------------------------------------------
|
||||
;Modify these strings to customize your device
|
||||
;------------------------------------------------------------------------------
|
||||
[Strings]
|
||||
MFGFILENAME="CDC_vista"
|
||||
DRIVERFILENAME ="usbser"
|
||||
MFGNAME="Metrix Create Space"
|
||||
INSTDISK="Brainwave Driver Installer"
|
||||
DESCRIPTION="Communications Port"
|
||||
SERVICE="USB RS-232 Emulation Driver"
|
Reference in a new issue