(Not affiliated with uTasker - but Mark has helped in the past with other questions on this forum. )
Yeah, I am a hardware guy, and needed a bootloader yesterday. I have written bootloaders in the past, but they take a lot of time at both the firmware and PC level (Windows/AOS, whatever). They have to be perfect and be able to handle failed application downloads. They are a bugger to debug as you cannot single step through them easily.....
I was stuck with a tight schedule (3 months for 2 board designs, firmware, and programmable logic). Routing, PCB turnaround, purchasing/selecting parts, PCA assembly....
My hardware is in routing, will be built in a couple weeks. So firmware was turning out to be my biggest risk - especially the bootloader.
So I started fiddling with uTasker. Of course I didn't read the manuals, had some dumb self-created issues. Bottom line - read the manuals, and take care in setting those equates..
BUT - after you take time to understand the USB Demo and other demos, changing a few equates vs. writing 1k lines of code yourself is easy. I literally changed a few equates in the SerialLoader_Flash config.h file and viola! The MSD-USB ( looks like a PnP Mass Storage Device on the PC when you boot with SW2 pressed during reset or poweron... ). Perfect for field support or Production support as it's really simple and rugged.
I mostly need a CDC interface - which this has - literally you can have multiple CDC ( virtual COMM ports ) with 1 equate.
Add a few lines of code to parse them and you are in business.
I'm not near finishing my code, but this package saved me months of firmware development and is quite flexible.
Remember - in the case of the K64 processors - the document describing the registers is like 1789 pages. I know because I printed them out. lolz. 4-5" tall. wow.
That's all I have - worked out well for me.