diff --git a/doc/cc65-intern.sgml b/doc/cc65-intern.sgml index 8e36578b5..904cee070 100644 --- a/doc/cc65-intern.sgml +++ b/doc/cc65-intern.sgml @@ -6,7 +6,8 @@ Internal details of cc65 code generation, -such as calling assembly functions from C. +such as the expected linker configuration, +and calling assembly functions from C. @@ -16,6 +17,76 @@ such as calling assembly functions from C. +Linker configuration

+ +The C libraries and code generation depend directly on a suitable linker configuration. +There are premade configuration files in the + +Used by the C library and generated code for efficient internal and temporary state storage, +also called "pseudo-registers". + + + +Used by each platform instance of the C library in + +The default segment for generated code, and most C library code will be located here. + +Use + +Used for uninitialized variables. +Originally an acronym for "Block Started by Symbol", but the meaning of this is now obscure. + +Use + +Used for initialized variables. + +On some platforms, this may be initialized as part of the program loading process, +but on others it may have a separate + +Used for read-only (constant) data. + +Use + +This currently defines table locations for the Calling assembly functions from C

Calling conventions

diff --git a/doc/index.sgml b/doc/index.sgml index bfce63486..727364028 100644 --- a/doc/index.sgml +++ b/doc/index.sgml @@ -59,7 +59,7 @@ Contains hints on creating the most effective code with cc65. - Describes internal details of cc65, such as calling conventions. + Describes internal details of cc65: linker configuration, calling conventions, etc. Build programs, using the GNU Make utility.