Question:
Why the value returned by ftell function is not the actual file size for the binary image file?
Answer:
The processor such as ADSP-21469 is a word addressed processor (i.e. each addressable memory location is 32 bits) while your PC is byte addressed (i.e. each addressable location is 8 bits). For this reason, the value returned by ftell() on a SHARC will be ¼ of the value returned by ftell() on a PC.
For example., let us assume that ftell returned value as ulfilesize = 49484 (12371 * 4) for file in Visual studio. Then trying the same in VDSP, ftell will return value as ulfilesize = 12371.