Hi m_fox,
> why it doesnot make from offset address 0?
Because your .text section is not in the same memory as your reset address.
Roughly speaking, if your .text _is_ in the same memory as your reset address,
system.h defines ALT_NO_BOOTLOADER. This in turn causes the reset code to
be included and placed in the .entry section. It goes like this:
-- The symbol "__reset" (and reset code) is located in section .entry.
-- The section .entry is located in the memory block named "reset".
-- The memory block "reset" has its origin at the system reset address.
> and is it possible to change some setting to make the compiler to generate
> entry point at address 0?
There are a bunch of ways you could do this. I would probably just leave all
the automated stuff alone and add a small assembly module that jumps
to _start, that's in section .entry. Then just use objcopy to create the binary ...
so you don't have to create custom linker scripts, change syslib properties,
etc. etc.
Regards,
--Scott