Large const 2d array

Hi,
I am working on a replay system for our robot. I am an advanced programmer, but RobotC is my first foray into C. I successfully recorded the joystick input into a large array and printed it to the debug stream. But now when I paste that array into my code, I get an error:


**Severe*:Out of static memory for variable allocation.

Does anyone know how to avoid this? My array is a const int defined as the following:


const int f_joy[750][16] = {...};

How else can I approach this? I know that many other teams have used replay systems in the past, some successful. But they all seem to require adding a large array to the program. How can I get around this error?

Thanks for your help

Do you really need to record 12,000 numbers the size of int? Could you use fewer than 12,000? Could you use sizes smaller than int? For example, if they could all be stored as signed char, that would save a lot of space. You can always convert to int on the fly to match other things. If only some can be stored smaller, maybe a few different arrays instead of a single one, such as two 750 by 8. I don’t know what information you’re holding, so it’s hard to say for sure.

Your array is around 48KB. (750 * 16 * 4), that’s simply not going to fit on the cortex. If you could use a signed byte/char instead (allows values from -128 to 127), you could turn that into 12KB.

Edit: Damnit, callen beat me to it

Thank you both for this, I converted it to a byte array and it worked!