What is the initialization sequence after a hard reset?
The initialization data for our processor is completely setup and configured by the static linker under the control of JEM Builder. The user selects the configuration options with JEM Builder and the appropriate initialization data is used during linking.
Upon reset, the processor will read this initialization data to configure internal registers and data structures. Hence, there is no "boot up" source code. Once the processor initializes, the application is started.
The startup sequence of a application is also constructed by the static linker. The tool builds the "exec super main" method that consists of a sequence of invokes to the initializers needed by the application. This method also creates the system tasks like GC, "user super main" and the idle thread (to name a few). Hence, this module is completely application dependent and created each time JEM builder is run.