0

adaLoader sketch for Standalone ISP Programmer
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

Re: adaLoader sketch for Standalone ISP Programmer

by adafruit2 on Thu Feb 15, 2018 8:53 pm

ok out of curiousity what if you skip the fuses stage, and go straight to burning flash?

adafruit2
Site Admin
 
Posts: 18045
Joined: Fri Mar 11, 2005 7:36 pm

Re: adaLoader sketch for Standalone ISP Programmer

by josemg on Wed Feb 21, 2018 12:15 am

Ok. It has been a long work week, but I am back. I am not sure exactly which parts of the code to skip in order to do that.

josemg
 
Posts: 17
Joined: Sun Feb 11, 2018 11:40 pm

Re: adaLoader sketch for Standalone ISP Programmer

by adafruit2 on Wed Feb 21, 2018 12:22 am

this section
https://github.com/adafruit/Standalone- ... er.ino#L88

Code: Select all | TOGGLE FULL SIZE
  if (! programFuses(targetimage->image_progfuses))   // get fuses ready to program
    error("Programming Fuses fail");
 
  if (! verifyFuses(targetimage->image_progfuses, targetimage->fusemask) ) {
    error("Failed to verify fuses");
  }

adafruit2
Site Admin
 
Posts: 18045
Joined: Fri Mar 11, 2005 7:36 pm

Re: adaLoader sketch for Standalone ISP Programmer

by josemg on Wed Feb 21, 2018 10:50 am

Ahh ok cool. That’s the section I thought to comment out, but I wasn’t sure if there was anything else. I will post what the results are later today.

josemg
 
Posts: 17
Joined: Sun Feb 11, 2018 11:40 pm

Re: adaLoader sketch for Standalone ISP Programmer

by josemg on Wed Feb 21, 2018 10:20 pm

So I tried it out and it kind of just freezes up and the green light stays lit constantly with nu buzzer sound from the piezo. This is where it stops on the serial monitor:


AdaBootLoader Bootstrap programmer (originally OptiLoader Bill Westfield (WestfW))

Type 'G' or hit BUTTON for next chip
Starting Program Mode [OK]

Reading signature:950F
Searching for image...
Found "optiboot_atmega328.hex" for atmega328P

josemg
 
Posts: 17
Joined: Sun Feb 11, 2018 11:40 pm

Re: adaLoader sketch for Standalone ISP Programmer

by adafruit2 on Sat Feb 24, 2018 5:10 pm

ok i did a bit of hacking on it
try this version now?
https://github.com/adafruit/Standalone- ... programmer

adafruit2
Site Admin
 
Posts: 18045
Joined: Fri Mar 11, 2005 7:36 pm

Re: adaLoader sketch for Standalone ISP Programmer

by josemg on Tue Feb 27, 2018 11:12 pm

Unfortunately it had the same error. Could it possibly be my arduino or something?:


AdaBootLoader Bootstrap programmer (originally OptiLoader Bill Westfield (WestfW))

Type 'G' or hit BUTTON for next chip
Starting Program Mode [OK]

Reading signature:950F
Searching for image...
Found "optiboot_atmega328.hex" for atmega328P

Erasing chip

Setting fuses
Set Lock Fuse to: 3F -> E000 Set Low Fuse to: FF -> A000 Set High Fuse to: DE -> A800 Set Ext Fuse to: 5 -> A400
Verifying fuses...
Lock Fuse: 3F is 3F Low Fuse: 0xFF is 0x62Failed to verify fuses

josemg
 
Posts: 17
Joined: Sun Feb 11, 2018 11:40 pm

Re: adaLoader sketch for Standalone ISP Programmer

by adafruit2 on Wed Feb 28, 2018 4:55 pm

if you try a couple times, it happens every time? :/

adafruit2
Site Admin
 
Posts: 18045
Joined: Fri Mar 11, 2005 7:36 pm

Re: adaLoader sketch for Standalone ISP Programmer

by josemg on Wed Feb 28, 2018 9:45 pm

Yes. I did try it a few times and I get the same results.

josemg
 
Posts: 17
Joined: Sun Feb 11, 2018 11:40 pm

Re: adaLoader sketch for Standalone ISP Programmer

by adafruit2 on Thu Mar 01, 2018 2:05 pm

shoot, i really dont know then :( can you try a usbtiny? its not standalone... or maybe try ArduinoISP (also not standalone but you can recycle your shield)

adafruit2
Site Admin
 
Posts: 18045
Joined: Fri Mar 11, 2005 7:36 pm

Re: adaLoader sketch for Standalone ISP Programmer

by josemg on Fri Mar 02, 2018 2:52 pm

Yes I definitely will try that. I appreciate all the help! I’m starting a book on AVR programming, so I think I will be able to do what I need after learning that.

josemg
 
Posts: 17
Joined: Sun Feb 11, 2018 11:40 pm

Re: adaLoader sketch for Standalone ISP Programmer

by adafruit2 on Wed Mar 14, 2018 5:03 pm

ok took a good long look today and I thik its fixed in github - please check?

adafruit2
Site Admin
 
Posts: 18045
Joined: Fri Mar 11, 2005 7:36 pm

Re: adaLoader sketch for Standalone ISP Programmer

by josemg on Tue Mar 20, 2018 11:06 pm

It works! You all are awesome! Thanks!

josemg
 
Posts: 17
Joined: Sun Feb 11, 2018 11:40 pm

Re: adaLoader sketch for Standalone ISP Programmer

by yougarage on Sun Feb 17, 2019 2:57 am

Hello, I'm trying to use the loader with a program that is not the bootloader.
Unfortunately it is not uploaded successfully
This is the output of the loader:
Code: Select all | TOGGLE FULL SIZE
Reading signature:950F
Searching for image...
  Found "MyProgram.hex" for atmega328P

Erasing chip

Setting fuses
  Set Lock Fuse to: 3F -> E000  Set Low Fuse to: FF -> A000  Set High Fuse to: D7 -> A800  Set Ext Fuse to: 5 -> A400
Verifying fuses...
   Lock Fuse: 3F is 3F   Low Fuse: 0xFF is 0xFF   High Fuse: 0xD7 is 0xD7   Ext Fuse: 0x5 is 0x5
Fuses set & verified
Page size: 128
Chip size: 32768
Writing address $0
Flashing page 0
  Commit Page: 0x0 -> 0x0
Writing address $80
Flashing page 80
  Commit Page: 0x40 -> 0x40
Writing address $100
Flashing page 100
  Commit Page: 0x80 -> 0x80
Writing address $180
Flashing page 180
  Commit Page: 0xC0 -> 0xC0
Writing address $200
Flashing page 200
  Commit Page: 0x100 -> 0x100
Writing address $280
Flashing page 280
  Commit Page: 0x140 -> 0x140
Writing address $300
Flashing page 300
  Commit Page: 0x180 -> 0x180
Writing address $380
Flashing page 380
  Commit Page: 0x1C0 -> 0x1C0
Writing address $400
Flashing page 400
  Commit Page: 0x200 -> 0x200
Writing address $480
Flashing page 480
  Commit Page: 0x240 -> 0x240
Writing address $500
Flashing page 500
  Commit Page: 0x280 -> 0x280
Writing address $580
Flashing page 580
  Commit Page: 0x2C0 -> 0x2C0
Writing address $600
Flashing page 600
  Commit Page: 0x300 -> 0x300
Writing address $680
Flashing page 680
  Commit Page: 0x340 -> 0x340
Writing address $700
Flashing page 700
  Commit Page: 0x380 -> 0x380
Writing address $780
Flashing page 780
  Commit Page: 0x3C0 -> 0x3C0
Writing address $800
Flashing page 800
  Commit Page: 0x400 -> 0x400
Writing address $880
Flashing page 880
  Commit Page: 0x440 -> 0x440
Writing address $900
Flashing page 900
  Commit Page: 0x480 -> 0x480
Writing address $980
Flashing page 980
  Commit Page: 0x4C0 -> 0x4C0
Writing address $A00
Flashing page A00
  Commit Page: 0x500 -> 0x500
Writing address $A80
Flashing page A80
  Commit Page: 0x540 -> 0x540
Writing address $B00
Flashing page B00
  Commit Page: 0x580 -> 0x580
Writing address $B80
Flashing page B80
  Commit Page: 0x5C0 -> 0x5C0
Writing address $C00
Flashing page C00
  Commit Page: 0x600 -> 0x600
Writing address $C80
Flashing page C80
  Commit Page: 0x640 -> 0x640
Writing address $D00
Flashing page D00
  Commit Page: 0x680 -> 0x680
Writing address $D80
Flashing page D80
  Commit Page: 0x6C0 -> 0x6C0
Writing address $E00
Flashing page E00
  Commit Page: 0x700 -> 0x700
Writing address $E80
Flashing page E80
  Commit Page: 0x740 -> 0x740
Writing address $F00
Flashing page F00
  Commit Page: 0x780 -> 0x780
Writing address $F80
Flashing page F80
  Commit Page: 0x7C0 -> 0x7C0
Writing address $1000
Flashing page 1000
  Commit Page: 0x800 -> 0x800
Writing address $1080
Flashing page 1080
  Commit Page: 0x840 -> 0x840
Writing address $1100
Flashing page 1100
  Commit Page: 0x880 -> 0x880
Writing address $1180
Flashing page 1180
  Commit Page: 0x8C0 -> 0x8C0
Writing address $1200
Flashing page 1200
  Commit Page: 0x900 -> 0x900
Writing address $1280
Flashing page 1280
  Commit Page: 0x940 -> 0x940
Writing address $1300
Flashing page 1300
  Commit Page: 0x980 -> 0x980
Writing address $1380
Flashing page 1380
  Commit Page: 0x9C0 -> 0x9C0
Writing address $1400
Flashing page 1400
  Commit Page: 0xA00 -> 0xA00
Writing address $1480
Flashing page 1480
  Commit Page: 0xA40 -> 0xA40
Writing address $1500
Flashing page 1500
  Commit Page: 0xA80 -> 0xA80
Writing address $1580
Flashing page 1580
  Commit Page: 0xAC0 -> 0xAC0
Writing address $1600
Flashing page 1600
  Commit Page: 0xB00 -> 0xB00
Writing address $1680
Flashing page 1680
  Commit Page: 0xB40 -> 0xB40
Writing address $1700
Flashing page 1700
  Commit Page: 0xB80 -> 0xB80
Writing address $1780
Flashing page 1780
  Commit Page: 0xBC0 -> 0xBC0
Writing address $1800
Flashing page 1800
  Commit Page: 0xC00 -> 0xC00
Writing address $1880
Flashing page 1880
  Commit Page: 0xC40 -> 0xC40
Writing address $1900
Flashing page 1900
  Commit Page: 0xC80 -> 0xC80
Writing address $1980
Flashing page 1980
  Commit Page: 0xCC0 -> 0xCC0
Writing address $1A00
Flashing page 1A00
  Commit Page: 0xD00 -> 0xD00
Writing address $1A80
Bad hex digit!



I pasted my program in place of the bootloader hex.
The hex program is correctly compiled for atmega 328.
I'm using a mega as programmer.

Here is the image file with my hex inside:
Code: Select all | TOGGLE FULL SIZE
#include "optiLoader.h"

const image_t PROGMEM image_328 = {
    // Sketch name, only used for serial printing
    {"MyProgram.hex"},
    // Chip name, only used for serial printing
    {"atmega328P"},
    // Signature bytes for 328P
    0x950F,
    // Programming fuses, written before writing to flash. Fuses set to
    // zero are untouched.
   //{0x3F, 0xFF, 0xDE, 0x05}, // {lock, low, high, extended}
   {0x3F, 0xff, 0xd7, 0x5},  // pre program fuses (prot/lock, low, high, ext)
    // Normal fuses, written after writing to flash (but before
    // verifying). Fuses set to zero are untouched.
    //{0x0F, 0x0, 0x0, 0x0}, // {lock, low, high, extended}
   {0x3C, 0xff, 0xd7, 0x5},  // post program fuses lock(3F unlocked - FC locked)
    // Fuse verify mask. Any bits set to zero in these values are
    // ignored while verifying the fuses after writing them. All (and
    // only) bits that are unused for this atmega chip should be zero
    // here.
    {0x3F, 0xFF, 0xFF, 0x07}, // {lock, low, high, extended}
    // size of chip flash in bytes
    32768,
    // size in bytes of flash page
    128,
    // The actual image to flash. This can be copy-pasted as-is from a
    // .hex file. If you do, replace all lines below starting with a
    // colon, but make sure to keep the start and end markers {R"( and
    // )"} in place.
    {R"(
   
    :100000000C9486000C94AF020C9402060C94AE0083
:100010000C94AE000C94AE000C94AE000C94AE00A8
:100020000C94AE000C94AE000C94AE000C94AE0098
:100030000C94AE000C94AE000C94AE000C94AE0088
:100040000C94AC120C94AE000C941C130C94F6128D
:100050000C94AE000C94AE000C94AE000C94AE0068
:100060000C94AE000C94AE006703760387039603EE
:10007000A503C405C405C405C405AC03B503C40386
:10008000D303E203F10306041B04300445045A04BD
:100090006F0486049804A904AE04CC04CF04D404ED
:1000A000C405C405C405C405C405C405C405C40508
:1000B000C405E104C306CA06D106DD06E406EB0664
:1000C000FE060A07110718071F07260744075707E8
:1000D00063077F0792079B07A407AE07BA07C1070C
:1000E000E8070F083F0866088D08B408E608EE0820
:1000F000030920094F0992099909C410C610E71095
:10010000E910F710F910FB1033114E1311241FBE24
:10011000CFEFD8E0DEBFCDBF23E0AAE7B1E001C05A
:100120001D92AF39B207E1F711E0A0E0B1E0ECE3D6
:10013000F1E302C005900D92AA37B107D9F710E09C
:10014000C6E8D0E004C02197FE010E946E18C538B1
:10015000D107C9F70E940E140C949C180C9400004F
:10016000EF92FF920F931F93CF93DF938B01000FBA
:10017000111F7C01E00EF11EF701408B518BFC0139
:1001800020AD2223C1F0652FEC0186A997A94096E6
:10019000800F911F0E94E1178EA99FA94196F70138
:1001A0006089800F911FDF91CF911F910F91FF9078
:1001B000EF900C94E117DF91CF911F910F91FF9079
:1001C000EF9008950C94E117CF938091E401813072
:1001D00009F096C0C1E081E292E00E94191218165F
:1001E00019060CF08DC041998BC081E292E00E940B
:1001F000F711C093E5018093F6019091F7019111F9
:1002000019C02091FA013091FB01F901E553FE4F2D
:1002100095A589130AC0C90101969093FB018093AB
:10022000FA010297C4F2C093F7011092FB011092F9
:10023000FA01D1CF2091150230911602F901E55350
:10024000FE4F81AB253031052CF490911702890FB8
:10025000809317022F5F3F4F3093160220931502B1
:10026000263031050CF4B7CF90910102809117022E
:1002700098133DC08091FC018093CB019091FD01CA
:100280009093CC019091FE019093CD019091FF014C
:100290009093CE01909100029093CF018138D0F4D9
:1002A000E0911D02F0911E0209958091CB0180938F
:1002B000D0018091CC018093D1018091CD018093B8
:1002C000D2018091CE018093D3018091CF018093A0
:1002D000D40109C0E0911F02F0912002099580919C
:1002E000CB018093D0010E946C0D1092E501109219
:1002F000F7011092170210921602109215026BCF9E
:10030000CF9108950E94251281110C94E400089564
:10031000FC01848DDF01A80FB11DA35ABF4F2C91A2
:10032000848D90E001968F739927848FA689B78971
:100330002C93A089B1898C91837080648C93938D68
:10034000848D981306C00288F389E02D80818F7D0B
:1003500080830895CF92DF92EF92FF920F931F93C5
:10036000CF93DF93FC0184A595A5681779071CF04E
:100370008EE090E067C082A593A5681779071CF00E
:100380008DE090E05FC080A591A5681779071CF00B
:100390008CE090E057C086A197A1681779071CF000
:1003A0008BE090E04FC084A195A1681779071CF0FD
:1003B0008AE090E047C082A193A1681779071CF0FA
:1003C00089E090E03FC080A191A1681779071CF0F7
:1003D00088E090E037C0868D978D681779071CF00C
:1003E00087E090E02FC0848D958D681779071CF009
:1003F00086E090E027C0828D938D681779071CF006
:1004000085E090E01FC0808D918D681779071CF002
:1004100084E090E017C086899789681779071CF0F7
:1004200083E090E00FC084899589681779071CF0F4
:1004300082E090E007C082899389681779072CF0E1
:1004400081E090E091AB80AB0CC080899189681706
:1004500079071CF011AA10AA04C02081822F90E015
:1004600031C080A991A98C01000F111F0E0F1F1F11
:10047000D80150964D915C9151979B01241B350BEF
:100480006901032E000CEE08FF08C2AAD3AAE4AA51
:10049000F5AAE80FF91FC081A181B0E0D0E0AC1B44
:1004A000BD0B0E947418F80122893389241B350B77
:1004B000032E000C440B550B0E944F182197CE01C0
:1004C000820F931FDF91CF911F910F91FF90EF90BB
:1004D000DF90CF900895CF92DF92EF92FF920F932B
:1004E0001F93CF93DF93FC01C6A8D7A88C01005FB0
:1004F0001F4FEC017601E81AF90AC017D10739F04D
:10050000C7018C0F9D1F0E94D9178993F6CF7601E2
:10051000F0E1EF0EF11CE601E096EC16FD06B1F0FD
:10052000C7010E94D917D82EC70101960E94D9177A
:100530002D2D30E0322F2227280F311DF801219375
:1005400031938F01F2E0EF0EF11CE7CFDF91CF91F5
:100550001F910F91FF90EF90DF90CF9008951F9221
:100560000F920FB60F9211242F933F934F935F93E7
:100570006F937F938F939F93AF93BF93EF93FF936B
:100580000E946D0E60938B0170938C0180938D019E
:1005900090938E0181E0809380018091A5019091DC
:1005A000A60101969093A6018093A5018091A501D3
:1005B0009091A6014091B0015091B1016091B201BA
:1005C0007091B301A0E0B0E084179507A607B707C4
:1005D00028F18091A7019091A801A091A901B09163
:1005E000AA010196A11DB11D8093A7019093A801B6
:1005F000A093A901B093AA014091B0015091B1011B
:100600006091B2017091B3018091A5019091A60112
:10061000841B950B9093A6018093A5018091AB015B
:100620009091AC0101969093AC018093AB018091C5
:10063000AB019091AC014091B0015091B10160913A
:10064000B2017091B301A0E0B0E084179507A6074E
:10065000B707D8F08091AD019091AE0101969093CB
:10066000AE018093AD014091B0015091B101609114
:10067000B2017091B3018091AB019091AC01841BE8
:10068000950B9093AC018093AB01FF91EF91BF91DB
:10069000AF919F918F917F916F915F914F913F911A
:1006A0002F910F900FBE0F901F9018950C94D91793
:1006B000E091CB018E2F90E0FC01E558F109E63284
:1006C000F10508F061C2EC5CFF4F0C946E1880914C
:1006D00044038093D101809143038093D2018091A0
:1006E00042038093D301809141030EC08091400367
:1006F0008093D10180913F038093D20180913E038A
:100700008093D30180913D038093D401089580911B
:100710003C038093D10180913B038093D20180916F
:100720003A038093D30180913703EECF8091360353
:100730008093D101809133038093D201809138035B
:10074000909139039093D301DFCF8091340380934C
:10075000D1011092D20130C11092D1018BED809362
:10076000D2011092D30185EDCFCF8091EA01809321
:10077000D1018091EB018093D2018091EC018093B3
:10078000D3018091ED01C0CF8091EE018093D10122
:100790008091EF018093D2018091F0018093D30189
:1007A0008091F101B1CF8091F2018093D1018091CC
:1007B000F3018093D2018091F4018093D301809161
:1007C000F501A2CF8091E6018093D1018091E701EC
:1007D0008093D2018091E8018093D3018091E90157
:1007E00093CF89E190E00E9456038093D1018AE182
:1007F00090E00E9456038093D2018BE190E00E942A
:1008000056038093D3018CE190E07DC08DE190E0B0
:100810000E9456038093D1018EE190E00E9456031E
:100820008093D2018FE190E00E9456038093D30120
:1008300080E290E068C081E290E00E9456038093DD
:10084000D10182E290E00E9456038093D20183E2BC
:1008500090E00E9456038093D30184E290E053C05D
:1008600085E290E00E9456038093D10186E290E0F9
:100870000E9456038093D20187E290E00E945603C3
:100880008093D30188E290E03EC089E290E00E942C
:1008900056038093D1018AE290E00E945603809330
:1008A000D2018BE290E00E9456038093D3018CE248
:1008B00090E029C08DE290E00E9456038093D10120
:1008C0008EE290E00E9456038093D2018FE290E086
:1008D0000E9456038093D30180E390E014C081E32B
:1008E00090E00E9456038093D10182E390E00E9441
:1008F00056038093D20183E390E00E9456038093D5
:10090000D30184E390E00E945603FECE8091CC0197
:100910008093D1012091CD012093D20190E0982FB6
:100920008827820F911D0E9456038093D30108955A
:100930008091CC018093D10190E0FC01E950FD4F02
:1009400020812093D201880F991FFC01E95FFC4FA1
:1009500015C080917503909176032AC08091CC01D7
:100960008093D10190E0FC01E254FD4F208120935F
:10097000D201880F991FFC01E253FD4F80819181C4
:100980009C0197FF02C021503F4F3093D30160E09C
:1009900071E00E941918B8CE8091300302C0809196
:1009A00031038093D1010895809172039091730374
:1009B0009093D1018093D2011092D3011092D4016F
:1009C00008958091CC0190E0982F88272091CD0147
:1009D000820F911D90937903809378038091CE01CB
:1009E0002091CF0120937B0190917A01291709F47E
:1009F00083C09091C801913009F07EC03AE0839F96
:100A0000C00111244091AB015091AC01480F591F16
:100A10005093AC014093AB014091A5015091A601C8
:100A2000840F951F9093A6018093A5018091A50145
:100A30009091A6014091B0015091B1016091B20135
:100A40007091B301A0E0B0E0481759076A077B072F
:100A500028F58091A7019091A801A091A901B091DA
:100A6000AA010196A11DB11D8093A7019093A80131
:100A7000A093A901B093AA014091B0015091B10196
:100A80006091B2017091B3018091A5019091A6018E
:100A9000841B950B9093A6018093A5018091AB01D7
:100AA0009091AC014091B0015091B1016091B201BF
:100AB0007091B301A0E0B0E0481759076A077B07BF
:100AC000D8F48091AD019091AE0101969093AE0162
:100AD0008093AD014091B0015091B1016091B2019C
:100AE0007091B3018091AB019091AC01841B950B87
:100AF0009093AC018093AB0120937A0180917C03A9
:100B000090917D039093D1018093D20180917703DE
:100B10008093D30180917A0390917B039093D401C9
:100B20008093D5018091690390916A0320916B03B2
:100B300030916C033093D6012093D7019093D80164
:100B40008093D901809174038093DA0180917103BD
:100B50008093DB0180916D0390916E0320916F0370
:100B6000309170033093DC012093DD019093DE011E
:100B70008093DF011092E001809150038093E101A6
:100B80001092E2011092E30108950F931F93CF9307
:100B9000DF93CDB7DEB728970FB6F894DEBF0FBE50
:100BA000CDBF6D837E838F8398878A0184E493E32E
:100BB000A2E2B1E189839A83AB83BC8344E050E035
:100BC000BE016F5F7F4F81E292E00E94BA1144E064
:100BD00050E0BE016B5F7F4F81E292E00E94BA114C
:100BE00048E050E0B80181E292E00E94BA112896F4
:100BF0000FB6F894DEBF0FBECDBFDF91CF911F912E
:100C00000F9108951F920F920FB60F9211242F93F8
:100C10003F934F935F936F937F938F939F93AF9384
:100C2000BF93EF93FF930E946D0E60934B037093FD
:100C30004C0380934D0390934E0381E080934F03C8
:100C4000FF91EF91BF91AF919F918F917F916F91A4
:100C50005F914F913F912F910F900FBE0F901F907A
:100C60001895BF92CF92DF92EF92FF920F931F934E
:100C7000CF93DF935DE5E52E53E0F52E01E513E01C
:100C8000C9E1D0E0CE010E945603C82ECE010196E4
:100C90000E945603B82ECE0102960E945603D82E0B
:100CA000CE0103960E94560324962C2D30E0322F5D
:100CB00022272B0D311DF701219331937F012D2D1B
:100CC00030E0322F2227280F311DF8012193319374
:100CD0008F01C133D105B1F6DF91CF911F910F91F3
:100CE000FF90EF90DF90CF90BF900895843069F02F
:100CF00018F4833031F00895853061F0863069F062
:100D000008953B98439A3C980BC03B9A439A3C9871
:100D1000449808953B98439802C03B9A439A3C9A62
:100D2000449A0895843069F018F4833031F00895BE
:100D3000853061F0863069F008953898409A25989A
:100D40000BC0389A409A25982D9808953898409865
:100D500002C0389A409A259A2D9A08956091CC0144
:100D60002091CD013091CE014091CF01E091CB0196
:100D70008E2F90E08332910508F0E3C2FC01E65A21
:100D8000FF4F0C946E18609344036093D10180E090
:100D900090E0D5C2609343036093D10181E090E07D
:100DA000CEC2609342036093D10182E090E00E9442
:100DB000E200809142030C94920660934103609399
:100DC000D10183E090E0BBC2609340036093D10106
:100DD00084E090E0B4C2609334036093D10185E372
:100DE00090E00E94E2008091340328E0829FC001DD
:100DF000112490938A0180938901089560933E03A2
:100E00006093D10186E090E00E94E20080913E0371
:100E10000C94760660933D036093D10187E090E0E7
:100E20008EC260933C036093D10188E090E087C25A
:100E300060933B036093D10189E090E080C26093AE
:100E40003A036093D1018AE090E079C2862F90E066
:100E5000982F8827820F911D909339038093380330
:100E60008BE090E00E94E2006091CD018CE090E088
:100E70000E94E2008091CC018093D10180913803DF
:100E8000909139030C94F20BF8941092AC011092EB
:100E9000AB011092AE011092AD0178941092AF01A7
:100EA0000E9447118091CC018093D10108956093F5
:100EB00037036093D1018DE090E00E94E2008091C1
:100EC00037030C94580C609336036093D1018EE085
:100ED00090E00E94E2002091360330E040E050E0D4
:100EE00060E07EE087E297E00E942D1820934703A0
:100EF000309348034093490350934A030895609305
:100F000033036093D10186E390E00E94E200809178
:100F100033032AE0829FC0011124909346038093FB
:100F2000450308956093EA012093EB013093EC01AF
:100F30004093ED0108956093EE012093EF0130930B
:100F4000F0014093F10108956093F2012093F301C1
:100F50003093F4014093F5010C94AF0F6093E601D8
:100F60002093E7013093E8014093E9010E940610C5
:100F70000C944D1060933F036093D10185E090E0A5
:100F8000DEC189E190E00E94E2006AE070E080E06A
:100F900090E00E94920E6091CD018AE190E00E9463
:100FA000E2006AE070E080E090E00E94920E6091C2
:100FB000CE018BE190E00E94E2006AE070E080E008
:100FC00090E00E94920E6091CF018CE190E0F6C01B
:100FD0008DE190E00E94E2006AE070E080E090E045
:100FE0000E94920E6091CD018EE190E00E94E2009D
:100FF0006AE070E080E090E00E94920E6091CE0185
:101000008FE190E00E94E2006AE070E080E090E012
:101010000E94920E6091CF0180E290E026C081E2B2
:1010200090E00E94E2006AE070E080E090E00E94C0
:10103000920E6091CD0182E290E00E94E2006AE0AF
:1010400070E080E090E00E94920E6091CE0183E219
:1010500090E00E94E2006AE070E080E090E00E9490
:10106000920E6091CF0184E290E00E94E2006AE07B
:1010700070E080E090E00E94920E0C94310685E2D0
:1010800090E00E94E2006AE070E080E090E00E9460
:10109000920E6091CD0186E290E00E94E2006AE04B
:1010A00070E080E090E00E94920E6091CE0187E2B5
:1010B00090E00E94E2006AE070E080E090E00E9430
:1010C000920E6091CF0188E290E0CFCF89E290E06C
:1010D0000E94E2006AE070E080E090E00E94920EE0
:1010E0006091CD018AE290E00E94E2006AE070E047
:1010F00080E090E00E94920E6091CE018BE290E041
:101100000E94E2006AE070E080E090E00E94920EAF
:101110006091CF018CE290E0A8CF8DE290E00E9438
:10112000E2006AE070E080E090E00E94920E609140
:10113000CD018EE290E00E94E2006AE070E080E083
:1011400090E00E94920E6091CE018FE290E00E94AA
:10115000E2006AE070E080E090E00E94920E609110
:10116000CF0180E390E081CF81E390E00E94E20034
:101170006AE070E080E090E00E94920E6091CD0104
:1011800082E390E00E94E2008091CD0180933503DC
:101190006AE070E080E090E00E94920E6091CE01E3
:1011A00083E390E00E94E2006AE070E080E090E07B
:1011B0000E94920E6091CF0184E390E00E94E200D1
:1011C0006AE070E080E090E00C94920E862F90E050
:1011D000982F8827632F820F911DF0CF862F922F93
:1011E000A32FB42F2FB7F8948093A7019093A80151
:1011F000A093A901B093AA011092A6011092A50193
:101200002FBF0C944711862F90E0FC01E950FD4F51
:10121000208330912F03332349F040912D035091C7
:101220002E03622F840F951F0E94E1174091CE017B
:1012300050E0542F44278091CF01480F511D17C013
:10124000862F90E0FC01E950FD4F208330912F0361
:10125000332349F040912D0350912E03622F840FC8
:10126000951F0E94E117409175035091760360919C
:10127000CC0170E087EF92E00E94B0008091CC0139
:101280008093D10190E0FC01E950FD4F2081209333
:10129000D201880F991FFC01E95FFC4F33C0862FF4
:1012A00090E0FC01E254FD4F20833091F60233239D
:1012B00049F04091F4025091F502622F840F951F7E
:1012C0000E94E1174091CE0150E0542F44278091B5
:1012D000CF01480F511D6091CC0170E08EEB92E080
:1012E0000E94B0008091CC018093D10190E0FC017C
:1012F000E254FD4F20812093D201880F991FFC01F9
:10130000E253FD4F808191819C0197FF02C02150E3
:101310003F4F3093D30160E071E00E941918809331
:10132000D4010895609330036093D10189E390E084
:1013300006C0609331036093D10188E390E00C9480
:10134000E2000895CF9368EE73E080E090E00E94A1
:10135000920E0E949B1080E38093E6018093E70148
:101360008093E8018093E9010E9406100E944D10CD
:1013700089E58093EA018DE28093EB0184E4809318
:10138000EC0181E68093ED0183E78093EE0188E62E
:101390008093EF011092F0011092F1011092F2018E
:1013A0001092F3011092F4011092F5010E94AF0F18
:1013B0000E94741060E080E090E00E94E2001092D1
:1013C00044036AE070E080E090E00E94920E60E0EA
:1013D00081E090E00E94E200109243036AE070E036
:1013E00080E090E00E94920E65E082E090E00E9432
:1013F000E20086E0809342036AE070E080E090E0E3
:101400000E94920E60E083E090E00E94E200109261
:1014100041036AE070E080E090E00E94920E6FEF7E
:1014200084E090E00E94E200CFEFC09340036AE0C6
:1014300070E080E090E00E94920E60E085E090E035
:101440000E94E20010923F036AE070E080E090E0CA
:101450000E94920E65E086E090E00E94E20085E046
:1014600080933E036AE070E080E090E00E94920E7C
:1014700060E087E090E00E94E20010923D036AE0A5
:1014800070E080E090E00E94920E6FEF88E090E0C4
:101490000E94E200C0933C036AE070E080E090E0CC
:1014A0000E94920E66E489E090E00E94E20086E4E9
:1014B00080933B036AE070E080E090E00E94920E2F
:1014C00060E08AE090E00E94E20010923A036AE055
:1014D00070E080E090E00E94920E67E08BE090E088
:1014E0000E94E2006AE070E080E090E00E94920ECC
:1014F00060ED8CE090E00E94E20080ED97E0909338
:101500003903809338036AE070E080E090E00E9445
:10151000920E60E08DE090E00E94E20010923703AE
:101520006AE070E080E090E00E94920E62E08EE05F
:1015300090E00E94E20082E0809336036AE070E06F
:1015400080E090E00E94920E61E081E390E00E94D2
:10155000E2006AE070E080E090E00E94920E61E0BC
:1015600082E390E00E94E20081E0809335036AE02C
:1015700070E080E090E00E94920E60E085E390E0F1
:101580000E94E200109234036AE070E080E090E094
:101590000E94920E60E086E390E00E94E2001092CA
:1015A00033036AE070E080E090E00E94920E60E019
:1015B00088E390E00E94E200109231036AE070E05C
:1015C00080E090E00E94920E60E089E390E00E944B
:1015D000E2006AE070E080E090E00E94920E60918C
:1015E000370380913803909139030E94800CF8945E
:1015F0001092AC011092AB011092AE011092AD01AD
:1016000078941092AF010E9447118FB7F89410920E
:10161000A6011092A5011092A7011092A8011092A4
:10162000A9011092AA018FBF1092AF010E94471129
:101630008091340328E0829FC001112490938A0195
:101640008093890189E08093140281E00E94CC0E8E
:10165000E2E0F2E084E192E011928E179F07E1F759
:1016600082E191E00E94E00B8DE090E00E94DB0BB4
:101670008AE090E00E94DB0B0E94E10E6AE070E0DD
:1016800080E090E00E94920E60E087E390E00E948C
:10169000E2000E94BE0B60E071EE80E090E0CF912E
:1016A0000C94520BCF92DF92EF92FF926B017C0170
:1016B00060E874E88EE190E0A70196010E942D1881
:1016C000DA01C9010197A109B109B695A7959795C6
:1016D00087959C01E0913102F091320282E0808393
:1016E000211580E13807B8F0E0913102F091320223
:1016F000108260E472E48FE090E0A70196010E94FE
:101700002D18DA01C9010197A109B109B695A7956C
:10171000979587959C01E0912D02F0912E023083E0
:10172000E0912F02F0913002208310923902E09173
:101730003502F091360286E08083E0913302F09129
:101740003402808180618083E0913302F091340221
:10175000808188608083E0913302F091340280813F
:1017600080688083E0913302F091340280818F7D24
:101770008083FF90EF90DF90CF90089581E292E018
:101780000E947E12E1E2F2E0A289B3898C918F7E01
:101790008C93A289B3898C91877F8C93A289B3891A
:1017A0008C918F778C93A289B3898C918F7D8C9348
:1017B000828D818F0895682F81E292E00C9431121E
:1017C000009769F0FC0101900020E9F73197AF0123
:1017D000481B590BBC0181E292E00C94BA1180E0E5
:1017E00090E00895CF92DF92EF92FF9284319105BD
:1017F00010F484E190E06C01E12CF12C6091850102
:10180000709186018091870190918801A7019601CE
:101810000E9409189B01AC01609397017093980195
:101820008093990190939A01A8EEB3E00E94EF177C
:1018300020ED32E040E050E00E942D182093B401EA
:101840003093B5014093B6015093B7018091C80120
:10185000811110C0C092A101D092A201E092A30117
:10186000F092A401C0929D01D0929E01E0929F014E
:10187000F092A00120919D0130919E0140919F0125
:101880005091A00160E472E48FE090E00E942D1876
:101890008FB7F8942093B0013093B1014093B20117
:1018A0005093B3018FBFFF90EF90DF90CF900895DA
:1018B0008093C80181110CC08091A1019091A20177
:1018C0000E94F20BF894E89A80916900826014C03B
:1018D00088EE93E00E94F20BF8941092B000109200
:1018E000B1001092B200809170008E7F80937000E2
:1018F000E898809169008D7F8093690078940895BD
:101900008F929F92AF92BF92CF92DF92EF92FF920F
:10191000CF93DF93C62F2FE030E03093CA0120939E
:10192000C90140E15EE060E070E0409385015093C2
:101930008601609387017093880125EA31E0309336
:10194000B9012093B8012BEA31E03093BB01209319
:10195000BA0127EA31E03093BD012093BC012DEAA2
:1019600031E03093BF012093BE014C01A12CB12C7A
:101970008092A1019092A201A092A301B092A40131
:101980008FE090E00E94D917D82F80E190E00E946C
:10199000D91790E0982F88278D0F911D9093A6015D
:1019A0008093A50181E190E00E94D917D82F82E1B0
:1019B00090E00E94D917C82E83E190E00E94D917C9
:1019C000D12CE12CF12CFE2CED2CDC2CCC2490E045
:1019D000A0E0B0E0DC0199278827C80ED91EEA1ED6
:1019E000FB1ECD0ED11CE11CF11C84E190E00E9495
:1019F000D91790E0A0E0B0E0B82FAA279927882750
:101A0000C80ED91EEA1EFB1EC092A701D092A801E3
:101A1000E092A901F092AA0185E190E00E94D91715
:101A2000D82F86E190E00E94D91790E0982F882760
:101A30008D0F911D9093AC018093AB0187E190E0F5
:101A40000E94D917D82F88E190E00E94D917282F3B
:101A500030E0322F22272D0F311D3093AE0120931D
:101A6000AD01C11109C080929D0190929E01A0928A
:101A70009F01B092A0010CC088EE93E0A0E0B0E01E
:101A800080939D0190939E01A0939F01B093A0012C
:101A90008C2F0E94580C20919D0130919E01409105
:101AA0009F015091A00160E472E48FE090E00E94F9
:101AB0002D182093B0013093B1014093B20150939F
:101AC000B301DF91CF91FF90EF90DF90CF90BF9067
:101AD000AF909F908F9008954091D0013091D101A7
:101AE0002091D2019091D3018091D401340F230F22
:101AF000920F890F4A3A28F58093180242E050E08D
:101B000068EF71E081E292E00E94BA116091D00129
:101B100081E292E00E9431126091D10181E292E073
:101B20000E9431126091D20181E292E00E94311252
:101B30006091D30181E292E00E9431126091D40160
:101B4000ABC09091D501890F9091D601890F9091EA
:101B5000D701890F9091D801890F9091D901890FF0
:101B60009091DA01890F9091DB01890F9091DC014E
:101B7000890F9091DD01890F9091DE01890F90917D
:101B8000DF01890F9091E001890F9091E101890FA8
:101B90009091E201890F9091E301890F80931802DF
:101BA00042E050E068EF71E081E292E00E94BA11F9
:101BB0006091D00181E292E00E9431126091D101E6
:101BC00081E292E00E9431126091D20181E292E0C2
:101BD0000E9431126091D30181E292E00E943112A1
:101BE0006091D40181E292E00E9431126091D501AE
:101BF00081E292E00E9431126091D60181E292E08E
:101C00000E9431126091D70181E292E00E9431126C
:101C10006091D80181E292E00E9431126091D90175
:101C200081E292E00E9431126091DA0181E292E059
:101C30000E9431126091DB0181E292E00E94311238
:101C40006091DC0181E292E00E9431126091DD013D
:101C500081E292E00E9431126091DE0181E292E025
:101C60000E9431126091DF0181E292E00E94311204
:101C70006091E00181E292E00E9431126091E10105
:101C800081E292E00E9431126091E20181E292E0F1
:101C90000E9431126091E30181E292E00E943112D0
:101CA0006091180281E292E00C9431128E3008F0BB
:101CB0008E508770806480937C0080917A0080646D
:101CC00080937A0080917A0086FDFCCF8091780025
:101CD0002091790090E0922B08953FB7F89480917D
:101CE0007C0190917D01A0917E01B0917F0126B58C
:101CF000A89B05C02F3F19F00196A11DB11D3FBF44
:101D0000BA2FA92F982F8827820F911DA11DB11DD1
:101D1000BC01CD0143E0660F771F881F991F4A95CC
:101D2000D1F708958F929F92AF92BF92CF92DF9298
:101D3000EF92FF926B017C010E946D0E4B015C01E2
:101D4000C114D104E104F104F1F00E946D0EDC0134
:101D5000CB0188199909AA09BB09883E9340A105BE
:101D6000B10570F321E0C21AD108E108F10888EE4C
:101D7000880E83E0981EA11CB11CC114D104E1049B
:101D8000F10419F7DDCFFF90EF90DF90CF90BF9077
:101D9000AF909F908F900895882361F0419A81E2DF
:101DA00092E00E941912892B31F081E292E00E94A8
:101DB000F711F5CF419868EC70E080E090E00C946A
:101DC000920ECF92DF92EF92FF920F931F93CF93D9
:101DD000DF9302E012E0C0E0D0E00E94A012609326
:101DE000290270932A0280932B0290932C0281E2A5
:101DF00092E00E94F71197FF1EC00E94A012C090AF
:101E00002902D0902A02E0902B02F0902C02DC01F3
:101E1000CB018C199D09AE09BF09C0902502D09055
:101E20002602E0902702F09028028C159D05AE0551
:101E3000BF05E8F20AC08A30910539F0F8018193B4
:101E40008F012196C231D10541F6CC2319F000E073
:101E500010E021C081E292E00E941912892B89F0E2
:101E600081E292E00E94F711F5CF909114028091E7
:101E700002029330A9F1C8F4923009F055C08B32B8
:101E8000C9F0DF91CF911F910F91FF90EF90DF90FC
:101E9000CF900C94B6100C171D073CF781E292E02E
:101EA0000E94F7110F5F1F4FF6CF973091F19830D6
:101EB00081F13AC0809103028E3419F780910402B7
:101EC0008134F9F610921402EBECF1E027ED31E0E9
:101ED00085AD8111878F31962E173F07C9F72EC028
:101EE0008B3279F680910302803559F610921402F4
:101EF000809108028093E601809109028093E701B6
:101F000080910A028093E80180910B028093E9019D
:101F10001BC08F3409F0B5CF809103028B3409F0D8
:101F2000B0CF10921A0208C08F3409F0AACF809166
:101F300003028B3409F0A5CF1092140268EC70E014
:101F400080E090E00E94920E80E0DF91CF911F919F
:101F50000F91FF90EF90DF90CF900C94CC0ECF9329
:101F6000DF9381E0809314020E94CC0EE2E0F2E065
:101F7000119282E0E431F807D9F768EC70E080E074
:101F800090E00E94920E8BE191E00E94E00BCAEE7D
:101F9000D1E08991882329F0082E000C990B0E942A
:101FA000DB0B81E0C63FD807A1F78DE090E00E94EF
:101FB000DB0B8AE090E00E94DB0B68EC70E080E0D5
:101FC00090E00E94920EDF91CF910C94E10E83E09D
:101FD0008093140281E00E94CC0EE2E0F2E01192C4
:101FE00082E0E431F807D9F768EC70E080E090E037
:101FF0000E94920E84E291E00E94E00B64EF71E097
:1020000080E090E00E94920E0C94E10ECF93DF935B
:1020100084E08093140281E00E94CC0EE2E0F2E0C2
:10202000119282E0E431F807D9F768EC70E080E0C3
:1020300090E00E94920E8FE291E00E94E00B80916E
:102040001902882321F082E290E00E94DB0BC6EEA9
:10205000D1E08991082E000C990B0E94DB0B81E0E6
:10206000CA3ED807B1F780911902882321F082E295
:1020700090E00E94DB0B8DE090E00E94DB0B8AE099
:1020800090E00E94DB0B68EC70E080E090E00E9442
:10209000920EDF91CF910C94E10E85E080931402B3
:1020A00081E00E94CC0EE2E0F2E0119282E0E431A5
:1020B000F807D9F768EC70E080E090E00E94920E9B
:1020C00088E391E00E94E00B8DE090E00E94DB0B42
:1020D0008AE090E00E94DB0B68EC70E080E090E02A
:1020E0000E94920E0C94E10E86E08093140281E02F
:1020F0000E94CC0EE2E0F2E0119282E0E431F807B7
:10210000D9F768EC70E080E090E00E94920E81E4E4
:1021100091E00E94E00B8DE090E00E94DB0B8AE0F2
:1021200090E00E94DB0B68EC70E080E090E00E94A1
:10213000920E0C94E10E88E08093140281E00E94DC
:10214000CC0EE2E0F2E0119282E0E431F807D9F738
:102150008CE491E00E94E00B8DE090E00E94DB0BAC
:102160008AE090E00E94DB0B0C94E10EE0911402F7
:102170008E2F90E0FC013197E830F10508F086C021
:10218000E358FF4F0C946E180C94AF0F81E00E943F
:10219000CC0EE2E0F2E0119282E0E431F807D9F7E8
:1021A00068EC70E080E090E00E94920E8EE591E095
:1021B0000E94E00B8DE090E00E94DB0B8AE090E053
:1021C0000E94DB0B68EC70E080E090E048C00C946B
:1021D000E70F80911A028F5F80931A02833028F0F4
:1021E00081E08093190210921A020C9406100C944C
:1021F0004D100C94741080911A028F5F80931A0214
:10220000833050F00E94BE0B60E875E280E090E001
:102210000E94520B10921A0287E08093140281E010
:102220000E94CC0EE2E0F2E0119282E0E431F80785
:10223000D9F768EE73E080E090E00E94920E87E6A6
:1022400091E00E94E00B8DE090E00E94DB0B8AE0C1
:1022500090E00E94DB0B68EE73E080E090E00E946B
:10226000920E0C94E10E80911A028F5F80931A02F5
:10227000833050F00E94BE0B60E875E280E090E091
:102280000E94520B10921A020C949B100895CF9347
:10229000DF93E8988091AF01811169C0C0E0D0E080
:1022A000E091B801F091B901EC0FFD1F8091C901D7
:1022B0009091CA0160818C0F9D1F0E94E11764E01C
:1022C00070E080E090E00E94920EE091BA01F091FF
:1022D000BB01EC0FFD1F8091C9019091CA010696C8
:1022E00060818C0F9D1F0E94E11764E070E080E028
:1022F00090E00E94920EE091BE01F091BF01EC0FC0
:10230000FD1F8091C9019091CA01089660818C0FD0
:102310009D1F0E94E11764E070E080E090E00E9461
:10232000920E2196C230D10509F0BACFC0E0D0E0BC
:10233000E091BC01F091BD01EC0FFD1F8091C9013E
:102340009091CA01029660818C0F9D1F0E94E11737
:1023500064E070E080E090E00E94920E2196C4302C
:10236000D10531F78091C801811101C0E89ADF9150
:10237000CF910895CF92DF92EF92FF920F931F9328
:10238000CF93DF936C017A018B01C0E0D0E0CE15D2
:10239000DF0581F0D8016D918D01D601ED91FC91A1
:1023A0000190F081E02DC6010995892B11F021964D
:1023B000EECF7E01C701DF91CF911F910F91FF906A
:1023C000EF90DF90CF900895089580E090E0089519
:1023D000FC01538D448D252F30E0842F90E0821B2B
:1023E000930B541710F0CF96089501970895FC01B0
:1023F000918D828D981761F0828DDF01A80FB11D3C
:102400005D968C91928D9F5F9F73928F90E008955F
:102410008FEF9FEF0895FC01918D828D981731F019
:10242000828DE80FF11D858D90E008958FEF9FEF6D
:102430000895FC01918D228D892F90E0805C9F4F43
:10244000821B91098F739927089581E292E00E947F
:10245000191221E0892B09F420E0822F08950E94AF
:102460009718EF92FF920F931F93CF93DF93EC0196
:1024700081E0888F9B8D8C8D981305C0E889F98940
:10248000808185FD26C0F62E0B8D10E00F5F1F4F5B
:102490000F731127E02E8C8DE8120CC00FB607FCCD
:1024A000FACFE889F989808185FFF5CFCE010E94B6
:1024B0008801F1CF8B8DFE01E80FF11DE35AFF4F2C
:1024C000F0829FB7F8940B8FEA89FB898081806244
:1024D0000AC09FB7F894EE89FF896083E889F9897B
:1024E00080818370806480839FBF81E090E0DF9172
:1024F000CF911F910F91FF90EF900895CF93DF93AD
:10250000EC01888D8823C9F0EA89FB89808185FDEB
:1025100005C0A889B9898C9186FD0FC00FB607FC4C
:10252000F5CF808185FFF2CFA889B9898C9185FF8D
:10253000EDCFCE010E948801E7CFDF91CF910895C2
:102540002FB7F89460919B0370919C0380919D0339
:1025500090919E032FBF08951F920F920FB60F9276
:1025600011242F933F938F939F93AF93BF938091A9
:102570009B0390919C03A0919D03B0919E03309189
:102580009A0326E0230F2D3720F40296A11DB11DDA
:1025900005C029E8230F0396A11DB11D20939A03BE
:1025A00080939B0390939C03A0939D03B0939E0301
:1025B00080917C0190917D01A0917E01B0917F017D
:1025C0000196A11DB11D80937C0190937D01A09384
:1025D0007E01B0937F01BF91AF919F918F913F9109
:1025E0002F910F900FBE0F901F9018951F920F9272
:1025F0000FB60F9211242F933F934F935F936F93D6
:102600007F938F939F93AF93BF93EF93FF9381E259
:1026100092E00E948801FF91EF91BF91AF919F914D
:102620008F917F916F915F914F913F912F910F907B
:102630000FBE0F901F9018951F920F920FB60F921A
:1026400011242F938F939F93EF93FF93E091310287
:10265000F09132028081E0913702F091380282FDE0
:1026600012C0908180913A028F5F8F7320913B025C
:10267000821751F0E0913A02F0E0EF5DFD4F958F47
:1026800080933A0201C08081FF91EF919F918F91D9
:102690002F910F900FBE0F901F901895CF93E1E2EE
:1026A000F2E01382128288EE93E0A0E0B0E084832F
:1026B0009583A683B78384E091E09183808385EC42
:1026C00090E09587848784EC90E09787868780ECFC
:1026D00090E0918B808B81EC90E0938B828B82ECED
:1026E00090E0958B848B86EC90E0978B868B118E97
:1026F000128E138E148E80E090E00E945603809319
:10270000440381E090E00E9456038093430382E0FB
:1027100090E00E9456038093420383E090E00E9481
:1027200056038093410384E090E00E945603809317
:10273000400385E090E00E94560380933F0386E0CB
:1027400090E00E94560380933E0387E090E00E9451
:10275000560380933D0388E090E00E9456038093E7
:102760003C0389E090E00E94560380933B038AE09B
:1027700090E00E94560380933A038BE090E00E9421
:102780005603C82F8CE090E00E9456032C2F30E0B7
:10279000322F2227280F311D30933903209338031D
:1027A0008DE090E00E945603809337038EE090E026
:1027B0000E9456038093360382E390E00E94560302
:1027C0008093350385E390E00E94560380933403A1
:1027D00086E390E00E9456038093330387E390E002
:1027E0000E9456038093320388E390E00E945603D0
:1027F0008093310389E390E00E9456038093300375
:1028000088E592E090932E0380932D0388E892E070
:102810009093F5028093F402CF910895CF93DF93C4
:10282000CDB7DEB768970FB6F894DEBF0FBECDBF49
:10283000789484B5826084BD84B5816084BD85B59B
:10284000826085BD85B5816085BD80916E008160A7
:1028500080936E001092810080918100826080934D
:10286000810080918100816080938100809180004F
:102870008160809380008091B10084608093B1007A
:102880008091B00081608093B00080917A00846074
:1028900080937A0080917A00826080937A008091A0
:1028A0007A008E7F80937A0080917A00806880938E
:1028B0007A001092C100399A80E00E94CC0E81E02B
:1028C0008093E401189B0BC0199B09C00E94A012C1
:1028D0006131774281059105A8F30E94A20968EE53
:1028E00073E080E090E00E94920E239A249A259A49
:1028F000269A279A549A579A81E08093F8018EEF8E
:102900008093F9018EEA96E090931E0280931D0257
:1029100088E593E09093200280931F0284EF91E07A
:10292000A0E0B0E08093250290932602A0932702B6
:10293000B093280260E071EE80E090E00E94520BBC
:102940008091320381110E94A2090E94E70F8091B9
:1029500033032AE0829FC0011124909346038093A1
:1029600045032091360330E040E050E060E07EE037
:1029700087E297E00E942D18209347033093480385
:102980004093490350934A03F894E99A809169006F
:10299000886080936900789480E492E4AFE0B0E0CE
:1029A00080937E0390937F03A0938003B093810371
:1029B0006091370380913803909139030E94800C15
:1029C0008091340328E0829FC001112490938A01F2
:1029D00080938901809142030E94920680913E0378
:1029E0000E9476060E94310687EF92E00E946B02F9
:1029F00011E010932F038EEB92E00E946B02109374
:102A0000F60288EEC82E83E0D82EE12CF12C8091BE
:102A10003103882309F46AC00E94A0126938734107
:102A20008105910508F462C00E94A01200919603EE
:102A3000109197032091980330919903DC01CB0109
:102A4000801B910BA20BB30B85369105A105B10537
:102A500008F44CC080917C0390917D0399838A8314
:102A600080917A0390917B039B838C8380915003A8
:102A70008D83809177038E83809174038F838091FF
:102A800071038887AE014F5F5F4F60E87CE080E0B4
:102A900090E00E94C5058091690390916A0320919E
:102AA0006B0330916C0339832A839B838C838091E1
:102AB0006D0390916E0320916F03309170033D83FD
:102AC0002E839F838887AE014F5F5F4F61E87CE074
:102AD00080E090E00E94C5050E94A01260939603DA
:102AE00070939703809398039093990380914F0379
:102AF000813009F03EC08FB7F89440914B0350915C
:102B00004C0360914D0370914E034D8B5E8B6F8B28
:102B1000788F8FBF4D895E896F89788D809184030E
:102B200090918503A0918603B09187039A01AB0130
:102B3000281B390B4A0B5B0B8D899E89AF89B88D99
:102B40008093840390938503A0938603B0938703B7
:102B500060914703709148038091490390914A0323
:102B60000E942D18309383032093820310924F0309
:102B700021C00E946D0E0091840310918503209165
:102B8000860330918703DC01CB01801B910BA20BE4
:102B9000B30B00917E0310917F032091800330914D
:102BA0008103081719072A073B0720F410928303B3
:102BB00010928203809182039091830390937D030E
:102BC00080937C0380913703811177C080918001CD
:102BD000813009F04CC08FB7F89440918B0150912F
:102BE0008C0160918D0170918E01498B5A8B6B8B9A
:102BF0007C8B8FBF89899A89AB89BC8940918F0171
:102C0000509190016091910170919201841B950BFC
:102C1000A60BB70B8093930190939401A093950119
:102C2000B093960189899A89AB89BC8980938F0179
:102C300090939001A0939101B09392012091930100
:102C400030919401409195015091960160919701C6
:102C5000709198018091990190919A010E942D188C
:102C600030939C0120939B011092800121C00E940F
:102C70006D0E00918F011091900120919101309182
:102C80009201DC01CB01801B910BA20BB30B0091D5
:102C9000B4011091B5012091B6013091B701081728
:102CA00019072A073B0720F410929C0110929B0100
:102CB00080919B0190919C0104C080917803909138
:102CC000790390937B0380937A030E94A012009172
:102CD0009203109193032091940330919503DC01AA
:102CE000CB01801B910BA20BB30B0B97A105B10578
:102CF00008F449C0809177034E9902C0816001C0F9
:102D00008E7F80937703809177034D9902C0826014
:102D100001C08D7F8093770380917703189B02C059
:102D2000846001C08B7F8093770380917703199B28
:102D300002C0886001C0877F80937703809177030A
:102D40001A9B02C0806101C08F7E809377038091BF
:102D500077034A9902C0806201C08F7D8093770318
:102D6000809177034B9B02C0806401C08F7B80936E
:102D700077030E94A0126093920370939303809351
:102D80009403909395030E94A01200918E031091DA
:102D90008F032091900330919103DC01CB01801BC4
:102DA000910BA20BB30B8D329140A105B105D0F16F
:102DB00080E10E94560E90937603809375032091D4
:102DC000250330912603821793071CF08091060398
:102DD00005C0BC0187EF92E00E94AA0180937403B2
:102DE00084E10E94560E90937303809372032091A6
:102DF000EC023091ED02821793071CF08091CD0216
:102E000005C0BC018EEB92E00E94AA018093710381
:102E10000E94A01260938E0370938F03809390039F
:102E2000909391030E94A01200918A0310918B034A
:102E300020918C0330918D03DC01CB01801B910B21
:102E4000A20BB30B893C9105A105B10508F4ABC0F9
:102E50002FB7F8948091AB019091AC01A0E0B0E065
:102E600089879A87AB87BC872FBF29853A854B8591
:102E70005C8560919D0170919E0180919F01909170
:102E8000A0010E9409186D877E878F87988B6D85BA
:102E90007E858F8598890091AD011091AE01A701C3
:102EA00096010E942D1849015A019801A8EEB3E03D
:102EB0000E94FA17DC01CB01880D991DAA1DBB1DCC
:102EC00080936D0390936E03A0936F03B093700390
:102ED0002FB7F8948091A7019091A801A091A90122
:102EE000B091AA012FBF8093690390936A03A093C6
:102EF0006B03B0936C0380917A0390917B032091D4
:102F00008803309189038217930721F0892B11F4EC
:102F10000E94471140917A0350917B03509389039B
:102F20004093880320917C0330917D03A4E6B0E0B8
:102F30000E94FA179A0140E050E00E942D189091EB
:102F40005003ADE5B3E0E1E5F3E081E06D917D9103
:102F50004B01A12CB12C281539054A055B0558F009
:102F6000608171814B01A12CB12C82169306A406BD
:102F7000B50608F0982F8F5F3296873039F7909317
:102F800050038091770381FF04C080913503811144
:102F90000DC00E94A01260938A0370938B038093EC
:102FA0008C0390938D030E94820131CD10925003C7
:102FB000F0CFF999FECF92BD81BDF89A992780B5DF
:102FC0000895262FF999FECF1FBA92BD81BD20BD6D
:102FD0000FB6F894FA9AF99A0FBE019608950E94D6
:102FE000FA17A59F900DB49F900DA49F800D911D81
:102FF00011240895A29FB001B39FC001A39F700D3B
:10300000811D1124911DB29F700D811D1124911DF0
:103010000895DB018F939F930E94EF17BF91AF91AB
:10302000A29F800D911DA39F900DB29F900D112422
:10303000089597FB072E16F4009407D077FD09D06A
:103040000E94831807FC05D03EF4909581959F4F10
:103050000895709561957F4F0895A1E21A2EAA1BDD
:10306000BB1BFD010DC0AA1FBB1FEE1FFF1FA21738
:10307000B307E407F50720F0A21BB30BE40BF50B35
:10308000661F771F881F991F1A9469F760957095BE
:10309000809590959B01AC01BD01CF010895052E4F
:1030A00097FB1EF400940E94661857FD07D00E94FB
:1030B0002D1807FC03D04EF40C94661850954095DB
:1030C000309521953F4F4F4F5F4F089590958095D4
:1030D000709561957F4F8F4F9F4F0895EE0FFF1FA3
:1030E0000590F491E02D09940E94FA17332312F40D
:1030F0008A1B9B0B0C947E180E94FA17B7FF089549
:10310000821B930B0895AA1BBB1B51E107C0AA1F8A
:10311000BB1FA617B70710F0A61BB70B881F991F78
:103120005A95A9F780959095BC01CD01089581E04D
:1031300090E0F8940C949C18F894FFCF00000000E5
:103140003112BA11E8117E121912F7110B12415403
:103150002B52455345540041542B4E414D453D00A3
:1031600041542B505357443F0D0A0041542B5053A8
:1031700057443D0041542B524D4141440041542B92
:10318000434C4153533D310041542B554152543D22
:1031900035373630302C302C300041542B4E414DD9
:1031A000453F0041542B554152543D313135323069
:0631B000302C302C300031
:00000001FF

   
   
   
   
    )"}
};


/*
 * Table of defined images. The first one matching the chip's signature
 * is used.
 */
const image_t *images[] = {
  &image_328,
};

uint8_t NUMIMAGES = sizeof(images)/sizeof(images[0]);



any idea?
Any help would be much appreciated
yougarage
 
Posts: 4
Joined: Wed Apr 23, 2014 3:32 pm

Re: adaLoader sketch for Standalone ISP Programmer

by adafruit2 on Sun Feb 17, 2019 12:51 pm

if the original code works, but your HEX isn't parsing, its something with your hex - but we don't have support for custom HEX setup - please keep trying, you'll get it in the right format!

adafruit2
Site Admin
 
Posts: 18045
Joined: Fri Mar 11, 2005 7:36 pm

Please be positive and constructive with your questions and comments.