Mercurial > hg-old > index.cgi
changeset 290:9ce991e5c929 2.0
Removed spaces from file names
author | lost |
---|---|
date | Tue, 27 Jan 2009 05:41:23 +0000 |
parents | 2aab71044deb |
children | 9e71637d754c |
files | doc/Makefile.am doc/object files.txt doc/objectfiles.txt doc/pseudo ops.txt doc/pseudoops.txt |
diffstat | 5 files changed, 131 insertions(+), 131 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/Makefile.am Tue Jan 27 05:37:26 2009 +0000 +++ b/doc/Makefile.am Tue Jan 27 05:41:23 2009 +0000 @@ -1,3 +1,3 @@ -EXTRA_DIST = lwasm.txt internals.txt pseudo\ ops.txt object\ files.txt +EXTRA_DIST = lwasm.txt internals.txt pseudoops.txt objectfiles.txt
--- a/doc/object files.txt Tue Jan 27 05:37:26 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,79 +0,0 @@ -An object file consists of a series of sections each of which contains a -list of exported symbols, a list of incomplete references, and a list of -"local" symbols which may be used in calculating incomplete references. Each -section will obviously also contain the object code. - -Exported symbols must be completely resolved to an address within the -section it is exported from. - -Each object file starts with a magic number and version number. The magic -number is the string "LWOBJ16" for this 16 bit object file format. The only -defined version number is currently 0. Thus, the first 8 bytes of the object -file are: - -4C574F424A313600 - -Each section has the following items in order: - -* section name -* flags -* list of local symbols (and addresses within the section) -* list of exported symbols (and addresses within the section) -* list of incomplete references along with the expressions to calculate them -* the actual object code - -The section starts with the name of the section with a NUL termination -followed by a series of flag bytes terminated by NUL. The following flag -bytes are defined: - -Byte Meaning -00 no more flags -01 section is BSS - no actual code is present - -Either a NULL section name or end of file indicate the presence of no more -sections. - -Each entry in the exported and local symbols table consists of the symbol -(NUL terminated) followed by two bytes which contain the value in big endian -order. The end of a symbol table is indicated by a NULL symbol name. - -Each entry in the incomplete references table consists of an expression -followed by a 16 bit offset where the reference goes. Expressions are -defined as a series of terms up to an "end of expression" term. Each term -consists of a single byte which identifies the type of term (see below) -followed by any data required by the term. Then end of the list is flagged -by a NULL expression (only an end of expression term). - -TERMTYPE Meaning -00 end of expression -01 integer (16 bit in big endian order follows) -02 external symbol reference (NUL term symbol) -03 local symbol reference (NUL term symbol) -04 operator (1 byte operator number - see below) -05 section base address reference - -External references are resolved using other object files while local -references are resolved using the local symbol table(s) from this file. This -allows local symbols that are not exported to have the same names as -exported symbols or external references. - -The operator numbers are: - -NUM OP -01 + (plus) -02 - (minus) -03 * (times) -04 / (divide) -05 % (modulus) -06 \ (integer division) -07 bitwise and -08 bitwise or -09 bitwise xor -0A boolean and -0B boolean or -0C - (unary negation, 2's complement) -0D ^ (unary 1's complement) - -An expression is represented in a postfix manner with both operands for -binary operators preceding the operator and the single operand for unary -operators preceding the operator.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/objectfiles.txt Tue Jan 27 05:41:23 2009 +0000 @@ -0,0 +1,79 @@ +An object file consists of a series of sections each of which contains a +list of exported symbols, a list of incomplete references, and a list of +"local" symbols which may be used in calculating incomplete references. Each +section will obviously also contain the object code. + +Exported symbols must be completely resolved to an address within the +section it is exported from. + +Each object file starts with a magic number and version number. The magic +number is the string "LWOBJ16" for this 16 bit object file format. The only +defined version number is currently 0. Thus, the first 8 bytes of the object +file are: + +4C574F424A313600 + +Each section has the following items in order: + +* section name +* flags +* list of local symbols (and addresses within the section) +* list of exported symbols (and addresses within the section) +* list of incomplete references along with the expressions to calculate them +* the actual object code + +The section starts with the name of the section with a NUL termination +followed by a series of flag bytes terminated by NUL. The following flag +bytes are defined: + +Byte Meaning +00 no more flags +01 section is BSS - no actual code is present + +Either a NULL section name or end of file indicate the presence of no more +sections. + +Each entry in the exported and local symbols table consists of the symbol +(NUL terminated) followed by two bytes which contain the value in big endian +order. The end of a symbol table is indicated by a NULL symbol name. + +Each entry in the incomplete references table consists of an expression +followed by a 16 bit offset where the reference goes. Expressions are +defined as a series of terms up to an "end of expression" term. Each term +consists of a single byte which identifies the type of term (see below) +followed by any data required by the term. Then end of the list is flagged +by a NULL expression (only an end of expression term). + +TERMTYPE Meaning +00 end of expression +01 integer (16 bit in big endian order follows) +02 external symbol reference (NUL term symbol) +03 local symbol reference (NUL term symbol) +04 operator (1 byte operator number - see below) +05 section base address reference + +External references are resolved using other object files while local +references are resolved using the local symbol table(s) from this file. This +allows local symbols that are not exported to have the same names as +exported symbols or external references. + +The operator numbers are: + +NUM OP +01 + (plus) +02 - (minus) +03 * (times) +04 / (divide) +05 % (modulus) +06 \ (integer division) +07 bitwise and +08 bitwise or +09 bitwise xor +0A boolean and +0B boolean or +0C - (unary negation, 2's complement) +0D ^ (unary 1's complement) + +An expression is represented in a postfix manner with both operands for +binary operators preceding the operator and the single operand for unary +operators preceding the operator.
--- a/doc/pseudo ops.txt Tue Jan 27 05:37:26 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,51 +0,0 @@ -The following pseudo operations are understood by LWASM. - -SECTION <name> - -This introduces a section called <name>. This is only valid if assembling to -an object file. Only one section can be open at any given time. Sections -may be ended with ENDSECTION. Only one section can be open at any given -time. A subsequent SECTION directive will end the previous section. It is -important to note that an end of file does not close the currently open -section. There cannot be a symbol on a SECTION line. - -ENDSECTION - -Specifies the end of a section. This is optional. There cannot be a symbol -on an ENDSECTION line. - -ORG <addr> - -Specifies the assembly address. For the raw target, this is advisory and -only affects the addresses of symbols. For the object file target, this can -only appear outside of all sections. For the DECB target, each ORG statement -after which any output is generated will generate a segment in the output -file. <addr> must be completely resolved during pass 1 of the assembly -process and thus may not refer to forward references or external symbols, or -other symbols that refer to such. - -<symbol> EQU <value> - -Makes <symbol> equivalent to <value>. <value> may be an external reference -in which case any references to <symbol> will also be external references. - -EXPORT <symbol>[ as <name>] - -Marks previously defined <symbol> for export. If <name> is specified, it -will be exported as <name>. <symbol> must not be an external reference and -must be defined before EXPORT. - -EXTERN <symbol>[ as <name>] -IMPORT <symbol>[ as <name>] - -Marks <symbol> as an external reference. If <name> is specified, <name> is -the local name the symbol is references as in this assembly file while -<symbol> is the actual symbol to be referenced externally. - -END [<addr>] - -Marks the end of the assembly process. Immediately terminates assembly -without processing any other lines in this file or any others. It is -optional. <addr> is only allowed for the DECB target in which case it -specifies the execution address. If it is not specified, the address -defaults to 0.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/pseudoops.txt Tue Jan 27 05:41:23 2009 +0000 @@ -0,0 +1,51 @@ +The following pseudo operations are understood by LWASM. + +SECTION <name> + +This introduces a section called <name>. This is only valid if assembling to +an object file. Only one section can be open at any given time. Sections +may be ended with ENDSECTION. Only one section can be open at any given +time. A subsequent SECTION directive will end the previous section. It is +important to note that an end of file does not close the currently open +section. There cannot be a symbol on a SECTION line. + +ENDSECTION + +Specifies the end of a section. This is optional. There cannot be a symbol +on an ENDSECTION line. + +ORG <addr> + +Specifies the assembly address. For the raw target, this is advisory and +only affects the addresses of symbols. For the object file target, this can +only appear outside of all sections. For the DECB target, each ORG statement +after which any output is generated will generate a segment in the output +file. <addr> must be completely resolved during pass 1 of the assembly +process and thus may not refer to forward references or external symbols, or +other symbols that refer to such. + +<symbol> EQU <value> + +Makes <symbol> equivalent to <value>. <value> may be an external reference +in which case any references to <symbol> will also be external references. + +EXPORT <symbol>[ as <name>] + +Marks previously defined <symbol> for export. If <name> is specified, it +will be exported as <name>. <symbol> must not be an external reference and +must be defined before EXPORT. + +EXTERN <symbol>[ as <name>] +IMPORT <symbol>[ as <name>] + +Marks <symbol> as an external reference. If <name> is specified, <name> is +the local name the symbol is references as in this assembly file while +<symbol> is the actual symbol to be referenced externally. + +END [<addr>] + +Marks the end of the assembly process. Immediately terminates assembly +without processing any other lines in this file or any others. It is +optional. <addr> is only allowed for the DECB target in which case it +specifies the execution address. If it is not specified, the address +defaults to 0.