L1119: Vector allocated at absolute address 0xFFFE overlaps with sections placed in segment .absSeg2

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

L1119: Vector allocated at absolute address 0xFFFE overlaps with sections placed in segment .absSeg2

Jump to solution
5,872 Views
daphne
Contributor I

Hi all,

i am very newbie to this software and hope to find some guidance over here.

 

Firstly, I have encountered with this error:

Link Error   : L1119: Vector allocated at absolute address 0xFFFE overlaps with sections placed in segment .absSeg2. At the same time, over at my prm file, i realised this:

 *********************************************************************************************
VECTOR-ALLOCATION SECTION
    Address     InitValue   InitFunction
---------------------------------------------------------------------------------------------
     0xFFFE     0x0'Error   _Startup

Both should be linked. 

Can someone advise me what to do? what am i supposed to do to rectify this error.

 

 

Secondly, I would like to ask how to create a interrupt vector table in assembly language.

fyi, my program is written solely in assembly language.

 

Hoep to hear from someone soon! =)

Labels (1)
0 Kudos
1 Solution
1,814 Views
bigmac
Specialist III

Hello,

 

For an assembly language program, the most direct method of implementing the vector table is to use absolute addressing for the table.  Here is an example for a 9S08SE8 device.

 

; VECTOR TABLE:

  ORG Vrtc
          DC.W   RTC_ISR        ;(25) RTC overflow vector
          DC.W   -1
          DC.W   QUITIRQ        ;(23) ADC conversion complete vector
          DC.W   -1
          DC.W   -1
          DC.W   QUITIRQ        ;(20) Keyboard vector
          DC.W   -1
          DC.W   QUITIRQ        ;(18) SCI Tx vector
          DC.W   QUITIRQ        ;(17) SCI Rx vector
          DC.W   QUITIRQ        ;(16) SCI error vector
          DC.W   -1
          DC.W   QUITIRQ        ;(14) TPM2 overflow vector
          DC.W   -1
          DC.W   QUITIRQ        ;(12) TPM2 Ch 0 vector
          DC.W   QUITIRQ        ;(11) TPM1 overflow vector
          DC.W   -1
          DC.W   -1
          DC.W   -1
          DC.W   -1
          DC.W   QUITIRQ        ;(6) TPM1 Ch 1 vector
          DC.W   QUITIRQ        ;(5) TPM1 Ch 0 vector
          DC.W   -1
          DC.W   QUITIRQ        ;(3) LVD vector
          DC.W   EXT_ISR        ;(2) External IRQ vector
          DC.W   QUITIRQ        ;(1) SWI instruction vector
          DC.W   _Startup       ;(0) Reset vector

 For this table, the only vectors in use are for the RTC module, the external IRQ, and the reset vector.  QUITIRQ label pertains to a single RTI instruction.

 

If the remainder of the code is relocatable, any reference to vectors within the PRM file should be commented out so that the linker does not attempt to place code.

 

Regards,

Mac 

View solution in original post

0 Kudos
4 Replies
1,815 Views
bigmac
Specialist III

Hello,

 

For an assembly language program, the most direct method of implementing the vector table is to use absolute addressing for the table.  Here is an example for a 9S08SE8 device.

 

; VECTOR TABLE:

  ORG Vrtc
          DC.W   RTC_ISR        ;(25) RTC overflow vector
          DC.W   -1
          DC.W   QUITIRQ        ;(23) ADC conversion complete vector
          DC.W   -1
          DC.W   -1
          DC.W   QUITIRQ        ;(20) Keyboard vector
          DC.W   -1
          DC.W   QUITIRQ        ;(18) SCI Tx vector
          DC.W   QUITIRQ        ;(17) SCI Rx vector
          DC.W   QUITIRQ        ;(16) SCI error vector
          DC.W   -1
          DC.W   QUITIRQ        ;(14) TPM2 overflow vector
          DC.W   -1
          DC.W   QUITIRQ        ;(12) TPM2 Ch 0 vector
          DC.W   QUITIRQ        ;(11) TPM1 overflow vector
          DC.W   -1
          DC.W   -1
          DC.W   -1
          DC.W   -1
          DC.W   QUITIRQ        ;(6) TPM1 Ch 1 vector
          DC.W   QUITIRQ        ;(5) TPM1 Ch 0 vector
          DC.W   -1
          DC.W   QUITIRQ        ;(3) LVD vector
          DC.W   EXT_ISR        ;(2) External IRQ vector
          DC.W   QUITIRQ        ;(1) SWI instruction vector
          DC.W   _Startup       ;(0) Reset vector

 For this table, the only vectors in use are for the RTC module, the external IRQ, and the reset vector.  QUITIRQ label pertains to a single RTI instruction.

 

If the remainder of the code is relocatable, any reference to vectors within the PRM file should be commented out so that the linker does not attempt to place code.

 

Regards,

Mac 

0 Kudos
1,814 Views
daphne
Contributor I

Thanks peg and bigmac!

Finally solved the problem by some alteration with my PRM and vector table! =)

0 Kudos
1,814 Views
nishilraj
Contributor I

can i know what is the meaning of PRM that you people are often referring to?

appreciate your valuable time.

0 Kudos
1,814 Views
peg
Senior Contributor IV

Hello and welcome to the fora, Daphne.

 

A quick search of this forum, just using L1119 yielded quite a few useful results for you.

 

Please try this search and some others using the box at the bottom of the page. If you're still having difficulties come back here again with further informed questions. Perhaps quoting the other posts.

 

0 Kudos