gosubs

The various PICAXE chips have various levels of gosub stack e.g. all M2 and X2 have an 8 entry stack. This means that gosubs can only be nested (gosubs in subroutines) 8 levels deep on those chips. I can understand this.

In addition there is a simple total number of gosubs allowed even if they are all at the top level. Does anyone know why this is? I can't think of a reason and the manual doesn't explain. So, on the M parts, any more than 15 gosubs in a program all at the top level of execution and the compiler spits out an error. Why?

Adrian
 
Top