ANSI and machine carriage controls
In many environments (including IBM® mainframes and most minicomputers), printable data normally contains a carriage control character.
The carriage control character acts as a vertical tab command to position the paper at the start of a new page, at a specified line on the page, or to control skipping to the next line. The characters can be one of two types: ANSI carriage control or machine carriage control.
- ANSI carriage control characters
- The most universal carriage control is ANSI, which consists of a single character that is a
prefix for the print line. The following table lists the standard ANSI controls.
All ANSI controls perform the required spacing before the line is printed. ANSI controls can be encoded in EBCDIC (CCTYPE=A) or in ASCII (CCTYPE=Z).
Table 1. Standard ANSI controls ANSI Command space Single space the line and print 0 Double space the line and print - Triple space the line and print + Do not space the line and print 1 Skip to channel 1 (the beginning of the form, by convention) 2 through 9 Skip to hardware-defined position on the page A, B, or C Defined by a vertical tab record or FCB
- The most universal carriage control is ANSI, which consists of a single character that is a
prefix for the print line. The following table lists the standard ANSI controls.
- Machine carriage control characters
- Machine carriage controls were originally the actual hardware control commands for IBM printers, and
are often used on non-IBM systems. Machine controls are literal values, not symbols. They
are not represented as characters in any encoding and, therefore, machine controls cannot be
translated. The following table lists the typical machine controls.
Note that machine controls print before performing any required spacing. There are many more machine control commands than ANSI. Carriage controls might or might not be present in a print file, but every record in the file must contain a carriage control if the controls are to be used. If the file contains carriage controls, but CC=NO is specified to ACIF, the carriage controls will be treated as printing characters. If no carriage controls are specified, the file will be printed as though it were single spaced.
Table 2. Typical machine controls Machine Command X'09' Print the line and single space X'11' Print the line and double space X'19' Print the line and triple space X'01' Print the line and don't space X'0B' Space one line immediately (don't print) X'89' Print the line, then skip to channel 1 (beginning of form, by convention) X'8B' Skip to channel 1 immediately (don't print)
- Machine carriage controls were originally the actual hardware control commands for IBM printers, and
are often used on non-IBM systems. Machine controls are literal values, not symbols. They
are not represented as characters in any encoding and, therefore, machine controls cannot be
translated. The following table lists the typical machine controls.