New RPM 7 is now available — see what’s new →

RPM Fortran Carriage Control (ASA) Transform

Screenshots in this article are from RPM 7.0.

Converts ASA carriage control to text markup.

What does ASA mean?

ASA is one of the early forms of text markup used on the Internet. You can find a chart explaining this markup in the Telnet RFCs; I personally used it with Fortran code in the seventies.

This transform converts ASA into our own internal format, for producing PDF, printing PCL on a printer, etc. For documentation on ASA carriage controls, please see RFC 454, section III.B (at the end) and RFC 189, Appendix C, “Carriage Control”.

Setup

  • Page Margins The Top, Bottom, Left and Right margins, in inches.
  • Vertical Select Use to scale the font height so the page holds the number of lines you enter, per Page or per Inch. Note: To work out lines per inch: LPI = Lines / (Paper Height - (top margin + bottom margin))
  • Horizontal Select Use to scale the font width so each line holds the number of characters you enter, per Line or per Inch. Note: To work out characters per inch: CPI = Characters / (Paper Width - (left margin + right margin))
  • Portrait / Landscape The orientation of the output.
  • Font The button shows the current font (Courier New, 10pt by default). Click it to change the font for the entire document.
  • Set font height to N % of line height (leading) With Vertical or Horizontal in use, the font’s height as a percentage of each line, from 70 to 100. The rest is space between the lines. The default is 91.
  • Input Code Page The character set, or encoding, of the incoming print documents. Click Find By Alias to pick one by another of its names.
  • Wrap lines Add line breaks if a line does not fit within the printable width of the paper. If not selected, long lines will be truncated.
  • Remove control characters Non-whitespace characters with an ASCII value less than 0x19 will be removed.
  • Suppress blank pages If the document has any blank pages, they will not be printed. You may want this option turned off if you are printing duplex documents.

ASA commands

The first byte of each line contains a command character, which RPM interprets this way.

  • 0 (zero) = this line to be double-spaced
  • 1 (one) = this line to start on a new page
  • + (plus) = overwrite the previous line; used to bold, underline, or overstrike words or characters.
  • - (dash) = this line to be triple-spaced

Any other character causes the line to be single-spaced.