ARM Technical Support Knowledge Articles

JUMPING TO A SECOND PROGRAM FROM A BOOT LOADER

Applies to: C166 C Compiler

Answer


Information in this article applies to:


QUESTION

I have an application that is separated into two parts that are compiled and linked separately. Part 1 is a "Bootstrap Program" that checks to see if Part 2 "The Application" is present at address 0x10000. After execution of Part 1 my program should jump to address 0x10000.

How do I do this?

ANSWER

Modify Start167.A66 so that it contains a CALL instruction to 'main', rather than a JMP to 'main'. If you return from the 'main' function, your application executes the next instruction which is a JMPS to address 0x10000.

Changes in START167.A66:

$IF TINY
                CALL    main
$ELSE
                CALL    FAR main
$ENDIF
                JMPS    1,0000H

?C_RESET        ENDP

Article last edited on: 2000-03-29 00:00:00

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential