DSPRelated.com
Forums

codec example problem(vector.asm)

Started by Unknown November 17, 2001
hello

i'm working with the 5402dsk and have a problem to add my vector.asm
in the codec example. i changed the 5402.cmd file like this.

PAGE 0: VECS: origin = FF80h, length = 0080h
PRAM: origin = 7600h, length = 8000h

at first i got syntax erros messages and i solved the problem as
follows

PAGE 0: VECS: origin = 0xff80, length = 0080h
PRAM: origin = 7600h, length = 8000h

now it was okay but if i insert my vector.asm to the project i got
an error message like can't allocate .vector.
i think it has something to do with the drv5402.lib and dsk5402.lib
but i don't exactly know.
now my question.
how can i use my vector.asm file in the codec project to handle
interrupts?

thanks
swen kopp
student



I think that you must place your interrupt vector in an address other than
the ff80h.That's because the dsk has a rom there. I had a similar problem,
and i placed the vectors.asm file at 1300h, and it worked just fine, without
having to copy to that location the monitor program vector. I hope someone
more experienced will give you a better answer
said:

> hello
>
> i'm working with the 5402dsk and have a problem to add my vector.asm
> in the codec example. i changed the 5402.cmd file like this.
>
> PAGE 0: VECS: origin = FF80h, length = 0080h
> PRAM: origin = 7600h, length = 8000h
>
> at first i got syntax erros messages and i solved the problem as
> follows
>
> PAGE 0: VECS: origin = 0xff80, length = 0080h
> PRAM: origin = 7600h, length = 8000h
>
> now it was okay but if i insert my vector.asm to the project i got
> an error message like can't allocate .vector.
> i think it has something to do with the drv5402.lib and dsk5402.lib
> but i don't exactly know.
> now my question.
> how can i use my vector.asm file in the codec project to handle
> interrupts?
>
> thanks
> swen kopp
> student > _____________________________________
> Note: If you do a simple "reply" with your email client, only the author of
this message will receive your answer. You need to do a "reply all" if you
want your answer to be distributed to the entire group.
>
> _____________________________________
> About this discussion group:
>
> To Join: Send an email to
>
> To Post: Send an email to
>
> To Leave: Send an email to
>
> Archives: http://www.yahoogroups.com/group/c54x
>
> Other Groups: http://www.dsprelated.com > ">http://docs.yahoo.com/info/terms/ >
--


hi,

i think your .cmd is ok.
maybe you already an .vercors in one of the .asm files for the project.
you can see this in the .map file.
if not, what is the exact error massage?

derk -----Original Message-----
From: [mailto:]
Sent: zaterdag 17 november 2001 0:35
To:
Subject: [c54x] codec example problem(vector.asm) hello

i'm working with the 5402dsk and have a problem to add my vector.asm
in the codec example. i changed the 5402.cmd file like this.

PAGE 0: VECS: origin = FF80h, length = 0080h
PRAM: origin = 7600h, length = 8000h

at first i got syntax erros messages and i solved the problem as
follows

PAGE 0: VECS: origin = 0xff80, length = 0080h
PRAM: origin = 7600h, length = 8000h

now it was okay but if i insert my vector.asm to the project i got
an error message like can't allocate .vector.
i think it has something to do with the drv5402.lib and dsk5402.lib
but i don't exactly know.
now my question.
how can i use my vector.asm file in the codec project to handle
interrupts?

thanks
swen kopp
student _____________________________________
Note: If you do a simple "reply" with your email client, only the author of
this message will receive your answer. You need to do a "reply all" if you
want your answer to be distributed to the entire group.

_____________________________________
About this discussion group:

To Join: Send an email to

To Post: Send an email to

To Leave: Send an email to

Archives: http://www.yahoogroups.com/group/c54x

Other Groups: http://www.dsprelated.com ">http://docs.yahoo.com/info/terms/



You'll probably want to move your vector table to 0x7f80, but that won't
solve your problem. I think you may be missing an entry in the SECTIONS
area of the linker command file, something to the effect of:

.vector: {} > VECS PAGE 0

Or maybe it should be .vectors, come to think of it. Check your vectors.asm
file to see what the name of the section should be. Finally, make sure the
code in vectors.asm is not bigger than 0x80 words, or you won't have enough
space in VECS to handle it.

Good luck,
Dave Helsley

----- Original Message -----
From: "Georgios Chatzigeorgiou" <>
To: <>; <>
Sent: Monday, November 19, 2001 7:48 AM
Subject: Re: [c54x] codec example problem(vector.asm) > I think that you must place your interrupt vector in an address other than
> the ff80h.That's because the dsk has a rom there. I had a similar problem,
> and i placed the vectors.asm file at 1300h, and it worked just fine,
without
> having to copy to that location the monitor program vector. I hope someone
> more experienced will give you a better answer >
> said:
>
> > hello
> >
> > i'm working with the 5402dsk and have a problem to add my vector.asm
> > in the codec example. i changed the 5402.cmd file like this.
> >
> > PAGE 0: VECS: origin = FF80h, length = 0080h
> > PRAM: origin = 7600h, length = 8000h
> >
> > at first i got syntax erros messages and i solved the problem as
> > follows
> >
> > PAGE 0: VECS: origin = 0xff80, length = 0080h
> > PRAM: origin = 7600h, length = 8000h
> >
> > now it was okay but if i insert my vector.asm to the project i got
> > an error message like can't allocate .vector.
> > i think it has something to do with the drv5402.lib and dsk5402.lib
> > but i don't exactly know.
> > now my question.
> > how can i use my vector.asm file in the codec project to handle
> > interrupts?
> >
> > thanks
> > swen kopp
> > student
> >
> >
> >
> >
> >
> >
> >
> >
> > _____________________________________
> > Note: If you do a simple "reply" with your email client, only the author
of
> this message will receive your answer. You need to do a "reply all" if
you
> want your answer to be distributed to the entire group.
> >
> > _____________________________________
> > About this discussion group:
> >
> > To Join: Send an email to
> >
> > To Post: Send an email to
> >
> > To Leave: Send an email to
> >
> > Archives: http://www.yahoogroups.com/group/c54x
> >
> > Other Groups: http://www.dsprelated.com
> >
> >
> > ">http://docs.yahoo.com/info/terms/
> >
> >
> >
> -- > _____________________________________
> Note: If you do a simple "reply" with your email client, only the author
of this message will receive your answer. You need to do a "reply all" if
you want your answer to be distributed to the entire group.
>
> _____________________________________
> About this discussion group:
>
> To Join: Send an email to
>
> To Post: Send an email to
>
> To Leave: Send an email to
>
> Archives: http://www.yahoogroups.com/group/c54x
>
> Other Groups: http://www.dsprelated.com > ">http://docs.yahoo.com/info/terms/ >




Basic issue,
To run the various McBSP and DMA routines for the codec example the dsk
lib uses its own vector table.
When you put in your vector table (vectors.asm) the dsk lib one does not
get used and as a result the program fails.
BTW dsklib already has a section called .vectors which you need to
allocate somewhere.

I faced a similar problem, I needed to use my vector table but could
not.
I hacked around the problem by overwriting parts of the dsk5402 vector
table
that the functions for McBSP and DMA dont use.

For example in needed to use INT3 so I used the following function. void set_isr3_in_table_hack( int addr ) // addr is the address where
your int3-isr starts
{

int *VECPTR = (int*) 0xe0; // Address in the vector table of
int3 based on where the vector table of the dsklibs
// vector table starts
int *IMRPTR = (int *) 0x00 ;

// Overwrite INT3 Slot of existing vector table

*VECPTR++ = 0xf273; // BD
*VECPTR++ = addr; // Address of ISR 3
*VECPTR++ = 0xf495; // NOP
*VECPTR = 0xf495; // NOP

*IMRPTR = *IMRPTR | 0x8;
}

Cheers,
Vinayak

-------------------------
Vinayak Prasanna Das,
Lead Engineer,
Ittiam Systems (P) Ltd T +91-80-2237760
The Consulate, 1 Richmond Road, F +91-80-2237905
Bangalore 560 025
http://www.ittiam.com
-------------------------
Nehmen Sie an, daeinige Tage Sie die Taube und einige Tage die Statue
sind.

-----Original Message-----
From: Dave Helsley [mailto:]
Sent: Wednesday, November 21, 2001 7:06 AM
To: ; ; Georgios Chatzigeorgiou
Subject: Re: [c54x] codec example problem(vector.asm) You'll probably want to move your vector table to 0x7f80, but that won't
solve your problem. I think you may be missing an entry in the SECTIONS
area of the linker command file, something to the effect of:

.vector: {} > VECS PAGE 0

Or maybe it should be .vectors, come to think of it. Check your
vectors.asm
file to see what the name of the section should be. Finally, make sure
the
code in vectors.asm is not bigger than 0x80 words, or you won't have
enough
space in VECS to handle it.

Good luck,
Dave Helsley

----- Original Message -----
From: "Georgios Chatzigeorgiou" <>
To: <>; <>
Sent: Monday, November 19, 2001 7:48 AM
Subject: Re: [c54x] codec example problem(vector.asm) > I think that you must place your interrupt vector in an address other
than
> the ff80h.That's because the dsk has a rom there. I had a similar
problem,
> and i placed the vectors.asm file at 1300h, and it worked just fine,
without
> having to copy to that location the monitor program vector. I hope
someone
> more experienced will give you a better answer >
> said:
>
> > hello
> >
> > i'm working with the 5402dsk and have a problem to add my vector.asm
> > in the codec example. i changed the 5402.cmd file like this.
> >
> > PAGE 0: VECS: origin = FF80h, length = 0080h
> > PRAM: origin = 7600h, length = 8000h
> >
> > at first i got syntax erros messages and i solved the problem as
> > follows
> >
> > PAGE 0: VECS: origin = 0xff80, length = 0080h
> > PRAM: origin = 7600h, length = 8000h
> >
> > now it was okay but if i insert my vector.asm to the project i got
> > an error message like can't allocate .vector.
> > i think it has something to do with the drv5402.lib and dsk5402.lib
> > but i don't exactly know.
> > now my question.
> > how can i use my vector.asm file in the codec project to handle
> > interrupts?
> >
> > thanks
> > swen kopp
> > student
> >
> >
> >
> >
> >
> >
> >
> >
> > _____________________________________
> > Note: If you do a simple "reply" with your email client, only the
author
of
> this message will receive your answer. You need to do a "reply all"
if
you
> want your answer to be distributed to the entire group.
> >
> > _____________________________________
> > About this discussion group:
> >
> > To Join: Send an email to
> >
> > To Post: Send an email to
> >
> > To Leave: Send an email to
> >
> > Archives: http://www.yahoogroups.com/group/c54x
> >
> > Other Groups: http://www.dsprelated.com
> >
> >
> > ">http://docs.yahoo.com/info/terms/
> >
> >
> >
> -- > _____________________________________
> Note: If you do a simple "reply" with your email client, only the
author
of this message will receive your answer. You need to do a "reply all"
if
you want your answer to be distributed to the entire group.
>
> _____________________________________
> About this discussion group:
>
> To Join: Send an email to
>
> To Post: Send an email to
>
> To Leave: Send an email to
>
> Archives: http://www.yahoogroups.com/group/c54x
>
> Other Groups: http://www.dsprelated.com > ">http://docs.yahoo.com/info/terms/


_____________________________________
Note: If you do a simple "reply" with your email client, only the author
of this message will receive your answer. You need to do a "reply all"
if you want your answer to be distributed to the entire group.

_____________________________________
About this discussion group:

To Join: Send an email to

To Post: Send an email to

To Leave: Send an email to

Archives: http://www.yahoogroups.com/group/c54x

Other Groups: http://www.dsprelated.com ">http://docs.yahoo.com/info/terms/