Re: "not enough memory for long line" message on Dynamic C V10.70

"Scott Henion [email protected] [rabbit-semi]" <[email protected]>
Newsgroups gmane.comp.hardware.rabbit-semiconductor
Message-ID <[email protected]>
On 6/16/2015 5:24 AM, [email protected] [rabbit-semi] wrote:
> Hi,
>
> I'm trying to initialize a large float array in Dynamic C V10.70 on
> Win XP for a RCM6700 target as follow :
>
> far float crosstable[4096]={\
> -250.000,-249.622,-249.244,-248.897,-248.606,-248.315,-248.025,-247.753,\
> -247.483,-247.213,-246.950,-246.714,-246.477,-246.241,-246.005,-245.782,\
> -245.560,-245.337,-245.115,-244.904,-244.705,-244.506,-244.307,-244.108,\
> -243.914,-243.725,-243.536,-243.347,-243.158,-242.970,-242.790,-242.610,\
> and so on until the last array element.
>
> When I compile, it gives me the message ""not enough memory for long
> line".
>
> I suppose it is a line size limitation in the compiler. Am I right ?
> can it be changed ?
> Is there a way to split the initialization in smaller lines ? I think no.
> So what can I do ?
>
> Thx.

Is the table constant? (never modified?)

you could #ximport the data then copy it into a RAM array to initialize it.

If it is constants, #ximport it then declare a pointer to the data.

To use ximport, you would have to create a binary file with the values.
you could write PC program in C to generate the file.
.

-- 
------------------------------------------
     Scott G. Henion, Consultant
Web site:    http://SHDesigns.org
------------------------------------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.