Keil™, An ARM® Company

Technical Support

CX51: PHILIPS MX STARTUP MODIFICATION GENERATES STRANGE CODE


Information in this article applies to:

  • C51 Version 6.23a

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

Last Reviewed: Thursday, May 19, 2005


Did this article provide the answer you needed?
 
Yes
No
Not Sure