Made My Own Arduino Board - ATMEGA32U4 - Bootloader Questions

Thanks, fm, for the encouraging remarks. I actually have an AVR ISP MkII to hand, but hadn't got it to work as a PDI programmer before. After downloading the (fairly hefty) Atmel Studio 6, I got it to work on my Leonardo.

@MrBEEF: Below is the firmware from my Leonardo. Unfortunately Atmel Studio writes out 16-byte lines (they start with hex 10) and the firmware on the page below is in 32-byte lines (they start with hex 20):

However a few spot checks at addresses above 0x7000 appear to indicate the code is the same (I only checked a few bytes but you could do a more rigorous check).

Caterina-Leonardo:

https://github.com/arduino/Arduino/blob/master/hardware/arduino/bootloaders/caterina/Caterina-Leonardo.hex

My firmware:

http://gammon.com.au/Arduino/Leonardo_firmware.hex

The first part will definitely be different as I have one of my sketches loaded on it, but the part past 0x7000 should be the bootloader.