April 1, 1981 CP Conventions CP Coding Conventions
The following are coding conventions used byCP modules. This
information should prove helpful if you debug, modify, or update CP.
1.FORMAT: 1 10 16
contents
LabelsOp Code
Operands
31, 36,41, etc. Comments (see Item 2)
2.COMMENT: Approximately 75 percent of the source code contains comments.
sections of code performing distinct functions are separated from
each other by a comment section.3.. CONSTANTS: Constants follow the executable code and precede the copy files
and/or macros that contain DSECTs or system equates. Constants are
defined in a section followed by a section containing initialized
working storage, followed by working storage. Each of these
sections is identified by a comment. Wherever possible for a
module that is greater than a page, constants and working storage
are within the same page inWhich they are referenced. 4. No proqram modifies its own instructions during execution.
5. No program uses its own unlabeled instructions as data.
6. REGISTERUSAGE: For CP, in general ]ggi§ier 6
7
810 11
12
1314 15 RCHBLOK, VCHBLOK RCUBLOK, VCUBLOK RDEVBLOK, VDEVBLOK IOBLOK VMBLOK Base register for modules
called viaSVC SAVEAREA for modules
called viaSVC Peturn linkage for modules
called via BALR
Base address for modules
called via BALR
ForVirtual-to-Real address translation ]ggj&ig!: 1
2Virtual address
Feal address .Part 2. Control Program (CP) 211
The following are coding conventions used by
information should prove helpful if you debug, modify, or update CP.
1.
contents
Labels
Operands
31, 36,
2.
sections of code performing distinct functions are separated from
each other by a comment section.
and/or macros that contain DSECTs or system equates. Constants are
defined in a section followed by a section containing initialized
working storage, followed by working storage. Each of these
sections is identified by a comment. Wherever possible for a
module that is greater than a page, constants and working storage
are within the same page in
5. No program uses its own unlabeled instructions as data.
6. REGISTER
7
8
12
13
called via
called via
called via BALR
Base address for modules
called via BALR
For
2
Feal address .