Okay, so I've identified the source of my other memory increase problem. (I guess technically it isn't a "memory leak" because that is where unfreed memory is still around after termination... this is ever increasing and unfreed memory during processing.) I was defining the following globals...
STRING* value ="";
TEXT* tHelp = {
pos_x = 10; pos_y = 10;
font = "Arial#24bi";
flags = SHADOW;
string("");
}
And then later in the main function I had...
// ...
set(tHelp,SHOW);
STRING* message = ((tHelp->pstring)[0]);
while (1)
{
camera.tilt+=1*key_z;
camera.tilt-=1*key_x;
//...
//Write info to screen...
str_cpy(message,"Tilt = ");
str_for_num(value,camera.tilt);
str_cat(message,value);
//(A bunch of other stuff was being output to the screen like this too
// with additional str_for_num and str_cat calls '\n' was used as a line
// breaker when the line got too long.)
wait(1);
}
When I took out the str_cpy, str_for_num and str_cat commands the memory problem stopped. So, I'm aware that panels can be used to display text, but I figured this would be fine for a simple little test script. However, for some reason it caused a steady increase in memory resources. I'm still not sure why exactly. Anyway, looks like I at least know my cause. Thanks.