implement flasher for use with 328, ported from previous flasher