Mercurial > hg > Members > kono > nitros9-code
diff docs/ccguide/asm.appendix @ 468:60b821f18853
A little here and there.
author | roug |
---|---|
date | Thu, 03 Oct 2002 21:39:06 +0000 |
parents | bea58398bb15 |
children | c43b678c0055 |
line wrap: on
line diff
--- a/docs/ccguide/asm.appendix Thu Oct 03 21:38:01 2002 +0000 +++ b/docs/ccguide/asm.appendix Thu Oct 03 21:39:06 2002 +0000 @@ -1,9 +1,52 @@ <appendix> <title>Relocating Macro Assembler Reference</title> <para> -The error codes are shown in both hexadecimal (first column) and -decimal (second column). Error codes other than those listed are -generated by programming languages or user programs. +This appendix gives a summary of the operation of the "Relocating +Macro Assembler" (named c.asm as distributed with the C Compiler). +This appendix and the example assembly source files supplied with +the C compiler should provide the basic information on how to use the +"Relocating Macro Assembler" to create relocatable-object format +files (ROF). It is further assumed that you are familiar with the +6809 instruction set and mnemonics. See the Microware Relocating +Assembler Manual for a more detailed description. The main function +of this appendix is to enable the reader to understand the output +produced by c.asm. The Relocating Macro Assembler allows programs +to be compiled separately and then linked together, and it also +allows macros to be defined within programs. +</para> +<para> +Differences between the Relocating Macro Assembler (RMA) and the +Microware Interactive Assembler (MIA): +</para> +<blockquote> +<para> +RMA does not have an interactive mode. Only a disk file is +allowed as input. </para> - +<para> +RMA output is an ROF file. The ROF file must be processed by +the linker to produce an executable OS9 memory module. The +layout of the ROF file is described later. +</para> +<para> +RMA has a number of new directives to control the placement of +code and data in the executable module. Since RMA does not +produce memory modules, the MIA directives "mod" and "emod" are +not present. Instead, new directives PSECT and VSECT control +the allocation of code and data areas by the linker. +</para> +<para> +RMA has no equivalent to the MIA "setdp" directive. Data (and +DP) allocation is handled by the linker. +</para> +</blockquote> +<section> + <title>Symbolic Names</title> +<para> +A symbolic name is valid if it consists of from one to nine +uppercase or lowercase characters, decimal digits or the characters +"$", "_", "." or "@". RMA does not fold lowercase letters to +uppercase. The names "Hi.you" and "HI.YOU" are distinct names. +</para> +</section> </appendix>