В проекте подключен Retarget.c., Размер Heap = 2048. Режим MicroLib выключен.
Причем, если разместить finit() перед вызовом os_sys_init, то инициализация проходит нормально. Мне это не подходит. Пользователь может менять носители (CDHC). Обнаружил ещё прикол когда баловался с китом, если подключить библиотеки FTP сервера, то finit() проходит нормально из любого места. Отлаживал в ассемблере, зависание происходит при загрузке данных по адресу 0xE59FF018
Сейчас копаюсь с исходниками FlashFS.
Код программы:
Код
__task void task_main (void)
{
finit();//Здесь виснет
os_itv_set(100);
while(1)
{
os_itv_wait ();
}
}
int main (void)
{
//finit();//Здесь не виснет
os_sys_init(task_main);
while (1);
}