Topic : Pure Assembler Documentation Author : John Kormylo Version : PASM.HYP 1.0 Subject : Documentation/Pure Assembler Nodes : 740 Index Size : 20262 HCP-Version : 3 Compiled on : Atari @charset : atarist @lang : en @default : @help : Help @options : +g -i -s +x +z -t4 @width : 75 View Ref-File[ Pure Assembly Language Statements ] Pure Assembler makes no distinction between upper and lower case, except for names and labels. Also, assembly language is purely line oriented, with one and only one statement per line. The general statement format is as follows: label: operator operands comments The label is optional and is always terminated with a colon ':'. One can also have a statement which consists entirely of a label definition (or label and comment). When there is no label, one need not insert a blank or tab before the operator (although it is a good idea to do so). The operator can either be a machine instruction, a directive or a macro name. (Many directives do not allow label fields.) Almost all can have size modifiers appended; e.g. DS.L All directives can be prefixed by a period. The form for the operands depend on the operator, but generally consists of a list separated by commas. Anything to the right of a semi-colon ';' or asterisk '*' is ignored by the assembler. Blank lines are also allowed. The only exceptions to this format are the assignment statements: label = value label EQU value label SET value label REG list Finally, a program is separated into text, data, and BSS segments. All instructions go into the text segment, all initialized variables go into the data segment, and all uninitialized variables go into the BSS segment. Use the TEXT DATA and BSS directives to perform this separation.