Thanks for your answer but in fact, i already have the main adress. I found it in the project map generated with the Nios IDE compiler.
Meanwhile, i have resolve some parts of my problem but the functions call don't work with my changes.
My infos :
------------
I have a "boot" program in flash which never change and a "download" program which can be changed (adress 0x10000).
After Boot, the "boot" program make a jump to the adress of the "download" program.
If i jump to 0x10000, the program stuck and don't execute.
If i jump to 0x10058, the program execute. 0x10058 is the adress of the main() function.
My changes :
-----------------
If i modified the crt0.s program which is add at the beginning of my application, i can add a 'call main' as the first command of my file.
So i can jump to the main function without knowing the real adress. It could be good if i want to add some functions to my program because the main adress change when functions are added.
My "boot" program call my "download" program.
Infortunatly, with this change, the Bss init function is not execute (because of the call main) and when i try to call a function, the "download" program stuck. I don't know what happen. I think that some registers aren't initialized (sp, fp or others).
Have you some ideas or a light crt.s file ?
Thanks