Output Transparency

All normal printer mnemonics may be disabled through the use of the 'BO' (begin output transparency) mnemonic. While this mode is in force, the only mnemonics that will be recognized are 'EO' (end output transparency) and 'RM' (reset to default). This allows the user to send arbitrary control strings to the printer device.

If parallel mode is enabled and the 'BO' mnemonic is used to output data to the printer, the data sent in output transparency mode will precede the data in the line buffer. It is necessary to use serial mode (or raw device access) in order to specify the precise data order to the printer.

Output Transparency with the SYSPRINT Device

Visual PRO/5 Rev. 2.0 and later supports the use of the 'BO' and 'EO' output transparency mnemonics with the SYSPRINT device via the PASSTHROUGH option of the Windows Escape() function. The Visual PRO/5 printer driver accumulates all the data between a 'BO' and 'EO' execution and passes it to the Windows printer driver via the PASSTHROUGH escape.

Once the 'BO', 'EO' sequence is completed, the printer does not retain the settings specified in the sequence, but rather it reverts to the state that existed before the sequence was initiated (this does not occur when printing directly to an LPT port because the driver is bypassed). For example, if a font select change is issued between 'BO' and 'EO' mnemonics, the printer will revert to the previously-defined font once the 'BO', 'EO' sequence is complete.

Attempting to use the 'BO' and 'EO' mnemonics with a Windows printer driver that does not support the PASSTHROUGH escape option will generate an !ERROR=29.

The following guidelines can help reduce problems involving Windows operating system-imposed limitations:

  • To avoid interfering with the printer driver's operation, do not reset the printer or force a page to print.

  • To conserve printer memory, do not download fonts or macros while printing.

  • When issuing multiple, consecutive 'BO' and 'EO' mnemonics, do not access the printer in any other way. Accessing the printer may corrupt the data stream.

  • When accessing a PostScript printer, issuing a "save" PostScript operator as the first data sent after the 'BO' mnemonic and issuing a "restore" operator immediately before sending the 'EO' mnemonic can help ensure the successful operation of the 'BO' and 'EO' mnemonics.

  • Do not send the 'FF' mnemonic or any SYSGUI mnemonics to the printer while the 'BO' and 'EO' mnemonics are operating.