•  Back 
  •  Assembler 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help 
  •  Show info about hypertext 
  •  View a new file 
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.