Спасибо интересующимся, особое xelax и Jhohn. Вникаю.
С формой хранения (hex) понятно. Появились следующие вопросы:
1. Пусть страница памяти состоит из 256 байт. Пусть одна строка в hex-файле состоит из 16 (dec) значимых восьмиразрядных значений. Значит ли это, что для записи одной страницы мы упорядоченно построчно проходим по всем значимым значениям в хексе, переносим 256 значений в некий буфер, после чего полученный буфер пишем в память микросхемы? Соответственно далее повторяем цикл со следующими 256-ю значениями...
2. Прошу помощи в комментировании функций из лоадера (исходники megaloader приложил). К сожалению, я сишник, в азме плохо ориентируюсь.

fill_temp_buffer(TempInt,i); //call asm routine. - Сохраняет пришедшие значимые байты во временный буфер?
write_page(PageAddress,0x03); //Perform page ERASE - Команда на очистку страницы памяти?
write_page(PageAddress,0x05); //Perform page write - Команда на подготовку к записи в страницу памяти?
enableRWW(); - Есть соображение, что это как раз запись временного буфера в память кристалла?
read_program_memory(PageAddress + i,0x00); - Чтение (верификация) записанной в кристалл страницы?
3. Насколько разложил "по полочкам" алгоритм, лоадер принимает данные в виде:
а)Номер страницы
б)Значимые байты в двухбайтовом аски-представлении
в)Контрольная сумма
Так ли это?
Конечно, есть заголовок в начале сессии, и прочие символы протокола соединения/подтверждения, но не в этом суть процесса