Ами аз имах същия проблем като теб с един PIC и една памет 1МБ, и го реших като теб. Проста таблица с указатели към начало и дължина на файла. Мислех да го правя по сложно (с някаква примитвна FAT таблица), но се замислих, че ако трия и пиша файлове многократно, ще настане едно фрагментиране на паметта. А това може да ми забави достъпа до файловете, и тъй като чудото трябва да пише и чете данни в реално време, реших, че няма нужда да си правя живота сложен.
Иначе аз пък търся реализация на FAT12,16,32 написана на C, така че да е оптимизирана за микроконтролер. Преди време ми попадна една силно опростена за ATMEL, ама я затрих.