Thanks for the quick answer!
I kind of hoped I could change the value of a constant at boot, not just at compile time...
The reason why is simple...
I use the same home brew library to control my I/Os on several Arduino's.
Now I have to compile to each arduino depending my specific needs.
I use about 95% of program storage space, and 70% of dynamic memory.
Input configurations and output configurations are stored in two big global structs. Of roughly the same size. (in is two bytes bigger per instance).
I can't set them to max because then I run out of memory and the program becomes unstable. (I have noticed this starts to happen if I exceed 70% of dynamic memory)
Sometimes I need more Inputs, sometimes more Outputs and sometimes more PWM outputs... If I there were a way to change the size of the array of structs at boot, I could have loaded my script on a few mega's and just set them to the same config (with the dipswitches) and 'hot' swap them...
But thanks anyway!