ASA control characters are simple printing command characters used to control the movement of paper through line printers. These commands are presented as special characters in the first column of each text line to be printed, and affect how the paper is advanced before the line is printed. The remainder of the line is printed starting in the first printable position.
"ASA" is the abbreviation of the American Standards Association, a former name for the American National Standards Institute (ANSI), which has standardized these control characters in ANSI X3.78-1981(R1992) representation of vertical carriage positioning characters in information interchange. These are also called "FORTRAN control characters" because they first appeared in versions of FORTRAN II in the early 1960s, although they have since been used by other programming languages such as COBOL and PL/I.
|Advance 1 line before printing (single spacing)
|Advance to next page before printing (form feed)
|2–9, A, B, C
|Advance to vertical tab stop or carriage control tape channel
CR VT (approximately)
|Advance 2 lines before printing (double spacing)
CR LF LF
|Advance 3 lines (triple spacing)
CR LF LF LF
|Do not advance any lines before printing,
overstrike previous line with current line
Overstriking can be used to make boldface text by printing the same line twice without advancing the paper. It can also be used to make underlined text by printing a line containing underscore characters in the print positions occupied by the text to be underscored.
Mainframe printers originally had a carriage control tape, with 12 channels (1–9, A, B, C) that can be assigned a fixed position on the page by punching a hole, allowing the printer to skip a variable distance down the page to a fixed location. Later printers such as the IBM 3211 and IBM 4248 did away with the physical carriage control tape and used an electronic Forms Control Buffer (FCB) instead.
ASA carriage control characters are still used for printer output from mainframe applications and software today. They are interpreted by drivers and other software before being printed on modern printers.
Example output containing ASA carriage control characters:
1This is the first line on the page 0This is the third line on the page -This is the 6th line on the page This is the 7th line on the page +____ the - Overstrike and boldface the 7th line
Example as printed output:
This is the first line on the page This is the third line on the page This is the 6th line on the page This is the 7th line on the page - Overstrike and boldface the 7th line
- IBM Corporation (1964). Fortran Specifications and Operating Procedures IBM 1401 (PDF). p. 18. Retrieved August 18, 2016.