Specifications

8-4 Programmer’s Guide Sega
Psy-Q Development System
SECTION
Description This directive declares a logical code section.
Syntax SECTION.size SectionName[,Group]
SectionName SECTION.size [Attribute,..Attribute]
The second format is a special case, designed to allow definition of a section with
group attributes - see below for a description.
See Also GROUP
Remarks
Unless the section has been previously assigned, the section will be placed in an
unnamed default group, if the GROUP name is omitted
It is possible to define a section with group attributes. The assembler will
automatically create a group with the section name preceded by a tilde (~) and
place the section in it.
Example Sect1 section bss
defines Sect1, with the BSS attribute, in a group called ~Sect1.
The size parameter can be .b, .w or .l; if the parameter is omitted, the default size
is word. When a size is specified on a section directive, alignment to that size is
forced at that point. The start of the section is aligned on a boundary based on
the largest size on any of the entries to that section - in all modules in the case of
linked code.
Note: If a section is sized as byte, the EVEN directive is not allowed in the
section. Furthermore, the CNOP directive cannot be used to re-align the
Program Counter to a value greater than the alignment of the host section
- see chapter 5.