I think this is the official spec for boards.txt? https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5---3rd-party-Hardware-specification
And this tells me the processor name I need for AVRdude, and on page 2 indicates it supports DFU (FLIP v2 on the xmega): http://nongnu.askapache.com//avrdude/avrdude-doc-6.1.pdf
But I'm pretty sure the xmega timers and stuff work differently than the mega ones, and I'm wondering if I just add a new board to boards.txt how the heck the code is going to know to use the special xmega versions of the SPI and DAC librariees for example? Do you think their code looks for only those three variants they've defined? Or does it go by processor? And if so, does that mean I'm boned if my board doesn't use the same processor as one of the already defined variants?
I'm pulling my hair out here. I gotta get this working with the Atxmega256A3BU on the explained board, and I need it to upload via USB using the DFU bootloader. But I've got no idea what steps I need to take to get a new board profile working aside from editing that boards.txt file.