ARM Technical Support Knowledge Articles

PHILIPS MX STARTUP MODIFICATION GENERATES STRANGE CODE

Applies to: CX51 C Compiler

Answer


Information in this article applies to:


QUESTION

I’m working on a project using Philips MX and a small modification is required in the startup_mx.a51 file. I need to add a simple NOP and RETI instructions at interrupt vector 0Bh, and I'm implementing this as follows.:

    CSEG  AT  0
?C_STARTUP:  LJMP  STARTUP1
    CSEG  AT  0BH  ; start of user's code
    NOP
    RETI     ; end of user's code

    RSEG  ?C_C51STARTUP

STARTUP1:
; Init MXCON

I inserted only 3 lines of code. My memory is defined as follows.:

EDATA (0x7F0000-0x7F03FF), ECODE (0x800000-0x80FFFF), HCONST (0x800000-0x80FFFF))

When I start debugging my application I don't see a LJMP at address 0x800000 ( MX starting address ) and my instructions are placed in the wrong place.

Is there any option or any detail that I might be missing?

CAUSE

You are following the correct procedures to implement your idea. It's a problem in the tools.

RESOLUTION

This is corrected in C51 V7.0.

SEE ALSO

ATTACHED FILES

Request the files attached to this knowledgebase article.

Article last edited on: 2005-05-19 19:00:57

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