Re: A89: recursion question


[Prev][Next][Index][Thread]

Re: A89: recursion question




Justin M Bosch wrote:

> What's a BSS section?

BSS sections are used for temporary storage of uninitialized data.
For example, if you were writing a program which needed to have 16000
bytes of temporary memory for building a list, you could write the
statement "ds.b 16000" in your code, but it would be a better idea to
use a BSS section, like this:

	SECTION any_name,BSS
table:	ds.b	16000

This would leave a 16K BSS section in your executable.  Since the data
doesn't have initial values, it doesn't need to be stored in the
program.
When the program is just sitting in the calculator, it might only take
up 2K of memory.  However, when the program is run, the extra 16K will
be
allocated.  References into it will be relocated to the appropriate
addresses, so you can access it just like it were in the main section of
your program, except that PC-relative access won't work.

(The information above is mainly a description of how Fargo II handles
it.
It's possible that PlusShell implements it in a weird way instead of
this.
However, I do know that BSS section do work in PlusShell programs.)


Follow-Ups: References: