Networking and Data Communications Library Asynchronous Terminal and Printer Processes Programming Manual Abstract Part Number This manual describes how to control asynchronous terminals and serial printers by way of ATP6100/CSSASYNC, ATP6100/CSSPRINT, TERMPROCESS, and SERIALPRINTPROCESS.
Document History Edition Part Number Product Version First Edition 82435 A00 Second 84105 Edition Update 1 82237 Operating System Version Date ATP6100 B00 GUARDIAN B00/E08 TERMPROCESS B00/E08 SERIALPRINTPROCESS B00/E08 ATP6100 B40 GUARDIAN 90 B40 CSSASYNC B40 CSSPRINT B40 TERMPROCESS B00 SERIALPRINTPROCESS B00 ATP6100 C00 GUARDIAN 90 C00 CSSASYNC C00 CSSPRINT C00 TERMPROCESS C00 SERIALPRINTPROCESS C00 March 1985 June 1987 November 1987 New editions incorporate any updates issued since the previous
CONTENTS PREFACE ...................................................... xi SYNTAX CONVENTIONS IN THIS MANUAL ............................ xv SECTION 1. INTRODUCTION .................................... 1-1 The 6100 CSS .............................................. 1-3 6100 CSS Architecture ................................... 1-3 The 3681 Implementation ................................... 1-5 ATP6100 Features .......................................... 1-6 LIU4 Considerations ...............................
CONTENTS Transfer Termination When Reading ......................... 3-7 ATP6100 Operational Examples .............................. 3-8 Conversational Mode ..................................... 3-8 Page Mode ............................................... 3-9 Mode Switching ......................................... 3-11 Pseudopolling .......................................... 3-12 SECTION 4. TERMINAL PROGRAMMING CONSIDERATIONS ............. 4-1 Terminal Modes ............................................
CONTENTS Condensed and Expanded Print ........................... Underline .............................................. Error Handling ......................................... Programming Considerations for the Model 5530 Printer .... Skip by Line Count ..................................... Resetting the 5530 ..................................... Error Handling ......................................... The Cut-Sheet Feeder ...................................
CONTENTS APPENDIX D. CMI TERMPROCESS ................................ Object Types and Object Names ............................. Object Attributes ......................................... Command Descriptions ...................................... ABORT Command ........................................... INFO Command ............................................ START Command ........................................... STATUS Command .......................................... STOP Command ................
CONTENTS FIGURES 3-1. 3-2. 3-3. 3-4. 3-5. 4-1. 4-2. 4-3. 4-4. 7-1. Conversational Mode Example ........................... 3-9 Page Mode Example .................................... 3-10 Page Mode Example (continued) ........................ 3-11 Mode Switching Example ............................... 3-12 Pseudopolling Example ................................ 3-13 Terminal Modes ........................................ 4-2 BREAK: Single Process per Terminal .................. 4-17 Break Access ..........
PREFACE In the Tandem environment, three I/O processes control asynchronous terminals and serial printers: ATP6100, TERMPROCESS, and SERIALPRINTPROCESS. ATP6100 provides a software interface between the GUARDIAN 90 file system and up to 32 asynchronous terminals or serial printers that are connected to a NonStop System by way of the 6100 Communications Subsystem (CSS). ATP6100 requires two protocol modules, CSSASYNC and CSSPRINT, to be downloaded from the host to the 6100 CSS.
PREFACE • Section 3 contains descriptions of the procedure calls and examples of how to use them to interact with asynchronous terminals. • Section 4 contains examples of communication with conversational-mode and page-mode terminals. This section also describes procedures for managing communication through modems and for handling errors. • Section 5 contains a comparison of ATP6100/CSSPRINT and SERIALPRINTPROCESS and a list of the printers they support.
PREFACE • System Procedure Calls Reference Manual • System Generation Manual • System Messages Manual • Communications Management Interface (CMI) Operator’s Guide • Guardian Operating System Programmer’s Guide • Introduction to the Tandem 6100 Communications Subsystem • NonStop CLX Local Assistant’s Guide • NonStop CLX System Management Manual November 1987 xiii
SYNTAX CONVENTIONS IN THIS MANUAL The following list summarizes the conventions for syntax notation in this manual. Notation Meaning UPPERCASE LETTERS Uppercase letters represent keywords and reserved words; you must enter these items exactly as shown. italics Lowercase italic letters represent variable items that you must supply. Brackets [] In syntax descriptions, brackets enclose optional syntax items.
SECTION 1 INTRODUCTION In the Tandem environment, three I/O processes control asynchronous, point-to-point communication: ATP6100, TERMPROCESS, and SERIALPRINTPROCESS. ATP6100 provides a software interface between the GUARDIAN 90 file system and up to 32 asynchronous terminals or serial printers that are connected to a NonStop system or a NonStop CLX system by way of the 6100 Communications Subsystem (CSS).
INTRODUCTION NOTE | | | ATP6100/CSSASYNC, including ATP6100/CSSASYNC for CLX support, and TERMPROCESS should not be used for continuous READ. From the application programmer's point of view, the three processes are virtually identical. With each process, you interact with the terminal or printer through GUARDIAN 90 filesystem procedures such as OPEN, READ, WRITE, CONTROL, and CLOSE.
INTRODUCTION The following topics appear in this section: • Descriptions of 6100 CSS hardware and software, including hardware and software for CLX support • Description of the 3681 implementation for CLX support • Description of ATP6100 features • Descriptions of TERMPROCESS and SERIALPRINTPROCESS • General information about system-generation (SYSGEN) procedures for terminals and printers • General information about system procedure calls and the Communications Management Interface (CMI) | | |
INTRODUCTION 6100 CSS Architecture Hardware | | | | | | | | | | | | | | | The 6105 CC, 3605 CC, 6106 ACC, and 3606 ACC are single-board implementations of the 6100 CSS architecture. The 6105 CC and 3605 CC have four ports. Data can be transmitted and received over the lines attached to these ports using any combination of asynchronous, byte-synchronous, or bit-synchronous protocols.
INTRODUCTION 6100 CSS Architecture The LIU is available in two versions, LIU1 and LIU4: • The LIU1 is a general-purpose device that runs all protocols. It consists of a CLIP1 and a LIM1 and supports one communication line. The LIU1 can be used with the CIU-based | implementations, the 6105 CC, and the 3605 CC. However, it is | available only with the RS-232C electrical interface. | • The LIU4 is a special-purpose device that is used for asynchronous communication.
INTRODUCTION ATP6100 Features ATP6100 FEATURES | | | | | | | | | | An application program refers to an ATP6100 subdevice by the device name and subdevice name, such as $ATP1.#TERM1. You define the device name and subdevice name in the PERIPHERALS paragraph in the SYSGEN configuration file. An ATP6100 I/O process can control from one to four subdevices on an LIU, depending on whether it is an LIU1 or LIU4. If you define the MULTI SYSGEN modifier, each ATP6100 I/O process can control up to eight LIUs.
INTRODUCTION ATP6100 Features Table 1-1.
INTRODUCTION LIU4 Considerations -- Configure subdevices 3 and 4 with baud rates from the same group. -- Choose the two baud rates for a subdevice with different transmit and receive speeds from the same group. A 50 110 134.5 200 300 600 1200 2400 4800 7200 9600 B 75 110 134.5 150 300 600 1200 1800 2000 2400 4800 9600 19200 The following examples show some incorrect and correct choices for baud rates for subdevices attached to LIU4s.
INTRODUCTION TERMPROCESS and SERIALPRINTPROCESS TERMPROCESS AND SERIALPRINTPROCESS TERMPROCESS and SERIALPRINTPROCESS provide the software interface between the GUARDIAN 90 file system and devices connected to the T6303/4 Asynchronous Controller. Each T6303 can control two lines. One or two T6304 extension cards can be added to each T6303. Each T6304 can control up to 15 lines, for a total of 17 or 32 lines. T6303/4 controllers reside in the Tandem host I/O card cage.
INTRODUCTION System Generation The configuration file consists of several paragraphs: | | | | | | | | | | ATP6100 3681/ATP6100 DEFINES (optional) CONTROLLERS DEFINES(optional) MULTIFUNCTION_CON TROLLERS CONTROLLERS MICROCODE_FILES PERIPHERALS ALLPROCESSORS PATHS MICROCODE_FILES PERIPHERALS ALLPROCESSORS PROCESSORS (optional) TERMPROCESS and SERIALPRINTPROCESS DEFINES (optional) CONTROLLERS MICROCODE_FILES PERIPHERALS ALLPROCESSORS PROCESSORS (optional) The DEFINES paragraph contains optional descrip
INTRODUCTION System Generation is not used, each communication line is driven by a separate process. The MULTI modifier enables a group of lines to be driven by a single process. With ATP6100, the MULTI modifier can cause a single process to control up to 8 LIUs (from 8 to 32 subdevices, depending on whether the LIUs are LIU1s or LIU4s). SYSGEN automatically selects MULTI for TERMPROCESS and SERIALPRINTPROCESS. You can also select MULTI for subdevices accessing TERMPROCESS or SERIALPRINTPROCESS with DSC.
INTRODUCTION Communications Management Interface (CMI) • | | Examine the configuration and status of the data communication facilities CMI can be used to configure, trace, and check the status of ATP6100 subdevices. It can only be used to check status for TERMPROCESS and SERIALPRINTPROCESS devices. CMI provides an operator interface to the Communications Management Process (CMP), which, in turn, provides an interface to the I/O process. CMI commands operate on objects, such as lines and subdevices.
SECTION 2 TERMINAL I/O This section contains a comparison of ATP6100/CSSASYNC and TERMPROCESS and a list of the Tandem terminals they support. It also describes the characteristics of the terminals, including the SYSGEN modifiers, SETMODE and SETPARAM parameters, and CMI attributes that control them. Terminal operations that are initiated by the CONTROL procedure are described. COMPARISON OF ATP6100 AND TERMPROCESS Table 2-1 compares the features of ATP6100 with those of TERMPROCESS.
TERMINAL I/O Comparison of ATP6100 and TERMPROCESS Table 2-1.
TERMINAL I/O Supported Tandem Terminals SUPPORTED TANDEM TERMINALS ATP6100/CSSASYNC and TERMPROCESS provide the means for your application programs to access asynchronous terminals over pointto-point links. These processes support the following Tandem terminals in addition to various other manufacturers' terminals.
TERMINAL I/O Break Characteristics Break Characteristics | | | | | | | | | | | | | The file system permits a terminal operator to signal a process by pressing the BREAK key while operating in conversational mode or block mode. For example, a terminal operator can press the BREAK key while an application is running through the command interpreter.
TERMINAL I/O Break Characteristics SETMODE 11 enables and disables the BREAK key. For TERMPROCESS devices, use the NOBREAKMON SYSGEN modifier to disable break checking. For ATP6100 subdevices, you can enable and disable break checking by including the BRKENABLE attribute in a CMI ALTER SU command. When the terminal operator presses the BREAK key, the process that enabled break receives a system message. The BREAKCOUNT SYSGEN modifier causes the transfer count to be included in the message.
TERMINAL I/O Conversational Mode Characteristics Conversational Mode Characteristics In conversational mode, ATP6100 and TERMPROCESS accept characters as they are entered by the terminal operator. When read termination occurs, data is passed to the application. After read termination, a sequence that controls line spacing can be sent to the terminal. Table 2-4 summarizes the SYSGEN modifiers, CMI attributes, and CONTROL and SETMODE parameters that affect conversational mode. Table 2-4.
TERMINAL I/O Conversational Mode Characteristics Line Termination The LINETERM SYSGEN modifier and the LINECHAR CMI subdevice attribute specify the conversational mode line terminator. A special line termination mode allows you to change the line termination character.
TERMINAL I/O Conversational Mode Characteristics Backspace Four SYSGEN modifiers determine the action that takes place when the terminal operator presses the BACKSPACE key | | | | | | | | | | | | | | | | | | | | | | | • BSHARD Hard-copy terminal that backspaces. The host sends a line feed when it receives the first backspace. The line feed allows the previous line to be seen above the printhead as each additional backspace is entered. • NOBS Hard-copy terminal that does not backspace.
TERMINAL I/O Conversational Mode Characteristics Moving the Cursor Use a CONTROL 1 procedure call to execute the various cursor movements on conversational terminals. CONTROL 1 has the following parameters: • 0 = form feed (%014) • 1-15 = vertical tab (%013) • 16-79 = skip (parameter - 16) lines The terminal must, of course, have the ability to execute the movements.
TERMINAL I/O Flow Control Characteristics Table 2-5.
TERMINAL I/O Flow Control Characteristics Transmit pause (TPAUSE) allows a buffered, RS-232 device to delay transmission from the controller so the device can empty its buffer. The device must raise its secondary received line signal detector (SCF). The controller then delays transmission until the device drops SCF. TPAUSE and CTS flow control cannot be active at the same time. If both are enabled, CTS takes precedence.
TERMINAL I/O Interrupt Characteristics Table 2-6. Interrupt Characteristics SYSGEN SETMODE CMI Characteristic Modifier Parameter Attribute _______________________________________________________________ Enable/disable interrupt checking Define interrupt characters INTCHAR NOINTCHAR 14 INTTERM (none) 9 INTCHAR The INTCHAR or NOINTCHAR SYSGEN modifiers determine whether or not the controller checks for interrupt characters.
TERMINAL I/O Line-Configuration Characteristics Table 2-7.
TERMINAL I/O Line-Configuration Characteristics Both TERMPROCESS and CSSASYNC support 200 baud operation. However, to select 200 baud for a TERMPROCESS subdevice, you must use the BAUD2000 SYSGEN modifier. The 6303/6304 controller does not support 2000 baud. For CSSASYNC subdevices, BAUD200 selects 200 baud, and BAUD2000 selects 2000 baud. CSSASYNC running on an LIU1 and TERMPROCESS support 3600 baud operation; CSSASYNC on an LIU4 does not. Communication speed is set at SYSGEN time.
TERMINAL I/O Line-Configuration Characteristics For ATP6100 devices, the SYSGEN default values for the connection type can be changed by including the MODEM and INTERFACE attributes in a CMI ALTER SU command. Echo The ECHO SYSGEN modifier causes incoming characters to be echoed back to the terminal if the terminal is in conversational, full-duplex mode. With TERMPROCESS, the asynchronous controller hardware does the echoing; with ATP6100, the protocol module does it.
TERMINAL I/O Modem Characteristics Table 2-8.
TERMINAL I/O Timeouts Transmit pause, reverse channel, and automatic baud rate detection all use pin 12 (SCF) of the RS-232 connector. Therefore, only one of them can be selected at a time. Timeouts Operations with terminals require human response and therefore can take an indefinite period of time. Use the time-limit parameter of the AWAITIO procedure to ensure that a terminal operator performs an operation within a given period of time. The terminal must have been opened to permit nowait I/O.
SECTION 3 PROCEDURE CALLS FOR ACCESSING TERMINALS This section describes the GUARDIAN 90 file-system procedure calls that control interaction with terminals. PROCEDURE CALLS SUMMARY The following procedures perform terminals. These procedures are Procedure Calls Reference Manual System Programmer’s Guide. Some detail below the table.
PROCEDURE CALLS FOR ACCESSING TERMINALS Procedure Calls Summary SETMODE sets and clears the following characteristics: spacing control parity checking access mode baud rate auto line feed break ownership echo character size auto disconnect generate parity screen size conversational/page mode read termination on interrupt characters reset to default values start/stop downloading define interrupt characters read termination on ETX prespacing/postspacing special line termination shift in/shift out See Appe
PROCEDURE CALLS FOR ACCESSING TERMINALS OPEN To access the home terminal associated with the running of an application process, include the following code in your program: INT .HOME^TERM [0:11], ! data declarations HOME^TERM^NUM, ! .TERM^BUFFER[ 0:35 ]; ! . CALL MYTERM ( HOME^TERM ); . CALL OPEN ( HOME^TERM, HOME^TERM^NUM ); . MYTERM is a process-control procedure that returns the file name of the home terminal.
PROCEDURE CALLS FOR ACCESSING TERMINALS WRITEREAD WRITEREAD The WRITEREAD procedure ensures that the computer is ready to receive data from a terminal immediately after a message is written to a terminal. This is useful when conversationally prompting a terminal user for input. For example, to prompt a terminal user with a colon (:) and then wait for input, use the following code in your program. Only one buffer, TERM^BUFFER, is specified; the data is returned there.
PROCEDURE CALLS FOR ACCESSING TERMINALS AWAITIO Example An application program prompts a terminal operator for an account number. If the operator does not respond within 5 minutes, the program reminds the operator by sending another prompt. To do this, include code similar to the following in your program: . DEFINE FIVE^MINUTES = 30000D#; ! 300 seconds LITERAL TIMEOUT = 40; INT ERROR, .BUFFER[0:599]; . . REPROMPT: .
PROCEDURE CALLS FOR ACCESSING TERMINALS SETPARAM CALL SETPARAM ( file-number, operation [, parameter-array] [, parameter-count] [, last-parameter-array] [, last-parameter-count] ) file-number The number of the file as an integer value.
PROCEDURE CALLS FOR ACCESSING TERMINALS Transfer Termination When Reading • System number of the I/O process • Most significant word of the break tag • Least significant word of the break tag • Zero The break tag is checkpointed by ATP6100 and TERMPROCESS to their backup processes to satisfy the requirement for NonStop operation.
PROCEDURE CALLS FOR ACCESSING TERMINALS ATP6100 Operational Examples • The BREAK key is pressed, and BREAK is enabled for the terminal regardless of interrupt character checking or transfer mode. On return from READ or WRITEREAD, nothing is transferred into the buffer, 0 is returned in the count-read parameter, and the condition code is CCL. • Read termination on ETX is enabled, and an ETX character followed by the designated number of checksum characters is input.
PROCEDURE CALLS FOR ACCESSING TERMINALS Conversational Mode Application I/O Process LIU Device WRITEREAD (Prompt) WRITEREAD WRITEREAD (Prompt) Data ... < BS > WRITEREAD (Erase previous character) Data ... < CR > WRITEREAD Completion WRITEREAD Completion S5073-001 Figure 3-1. Conversational Mode Example Page Mode When an application communicates with a terminal in page mode, it writes to the screen by issuing a WRITE request for the entire screen.
PROCEDURE CALLS FOR ACCESSING TERMINALS Page Mode Application WRITE (Screen) I/O Process WRITE LIU Device WRITE (EOT) WRITEREAD (Block 1) ACK WRITEREAD (Block 2) • • WRITEREAD (Last block) ACK ACK WRITE Completion READ (Function key) WRITE Completion READ WRITE (EOT) WRITEREAD (ENQ) Function Key WRITEREAD (ACK) EOT READ Completion READ Completion S5073-002 Figure 3-2. Page Mode Example Once the message is received, the READ completes. The application reads the screen with a WRITEREAD.
PROCEDURE CALLS FOR ACCESSING TERMINALS Mode Switching Application I/O Process LIU Device WRITEREAD (Read Screen) WRITEREAD WRITE (EOT) WRITEREAD (Read Screen) Block 1 WRITEREAD (ACK) • • WRITEREAD (ACK) Block 2 Last Block WRITEREAD (ACK) EOT WRITEREAD Completion WRITEREAD Completion S5073-003 Figure 3-3. Page Mode Example (continued) Mode Switching Use a SETMODE call to switch the mode of a 6520 or 6530 terminal from conversational to page mode.
PROCEDURE CALLS FOR ACCESSING TERMINALS Mode Switching Application I/O Process LIU Device SETMODE (Page) WRITE (Screen) SETMODE Completion SETMODE (For Switch to Page Mode) WRITE (EOT) WRITE (SOH, B, ETX, A) SETMODE Completion WRITE ACK Line Task Writes Screen WRITE Completion WRITE Completion S5073-004 Figure 3-4. Mode Switching Example The I/O process handles the SETMODE immediately by updating its configuration area for the terminal. Thus, the application request is completed right away.
PROCEDURE CALLS FOR ACCESSING TERMINALS Pseudopolling Application READ (Read screen) I/O Process LIU READ Device READ WRITEREAD (Trigger character) Prompt character Screen data READ Completion READ Completion S5073-005 Figure 3-5.
SECTION 4 TERMINAL PROGRAMMING CONSIDERATIONS This section contains descriptions and programming examples of the two main terminal modes: conversational and page. The section also includes information about how terminals communicate with the host through modems. Some hints on handling errors appear at the end of the section. For information on escape sequences and other terminal programming requirements, see the programming manual for your terminal.
TERMINAL PROGRAMMING CONSIDERATIONS Terminal Modes Conversational Mode Terminal Read Until Line Termination Buffer Each Character Sent as Typed Terminal Page Mode Read Until Block Terminator Buffer Fills With Characters as Typed Buffer Block Sent When XMIT Typed Terminal Buffer Fills With Characters as Typed Page Mode (Pseudopolled) Read of 1 Character (Wait for XMIT) Buffer Write of 1 Character (Trigger) Read Until Block Terminator Control Characters Sent When XMIT Typed Block Sent When Trigge
TERMINAL PROGRAMMING CONSIDERATIONS Conversational Mode Conversational Mode In conversational mode, ATP6100 and TERMPROCESS accept characters as they are entered by the terminal operator. When read termination occurs, data is passed to the application. After read termination occurs, a sequence that controls line spacing can be sent to the terminal.
TERMINAL PROGRAMMING CONSIDERATIONS Conversational Mode form feed (%014) or vertical tabulation (%013) character through the WRITE procedure. However you must include a delay in the program to give the form movement enough time to finish: DEFINE TWO^SECONDS = 200D#; INT FORM^FEED := %014 '<' 8; . . CALL WRITE ( HOME^TERM^NUM, FORM^FEED, 1, NUM^WRITTEN ); CALL DELAY ( TWO^SECONDS ); The application process is suspended for two seconds after the form feed character is issued to the terminal.
TERMINAL PROGRAMMING CONSIDERATIONS Conversational Mode • If any character other than carriage return is the current line termination character, the file system always issues a sequence to the terminal. • The line is terminated automatically when the number of characters specified in the read-count parameter has been input. If termination on read-count occurs, the file system does not issue . Use a READ call similar to the following one to terminate a line with a carriage return.
TERMINAL PROGRAMMING CONSIDERATIONS Conversational Mode Backspace. The BACKSPACE key allows the terminal operator to back up and reenter one or more mistyped characters. The backspace function operates differently on different terminals. On typical video terminals, the cursor backs up one position for each backspace entered. On hard-copy devices that backspace, a line feed and a backspace are issued for the first backspace entered, and only a backspace is issued for each subsequent backspace entered.
TERMINAL PROGRAMMING CONSIDERATIONS Conversational Mode Example Assume that a tab function is required on a conversationalmode terminal. The EOF character is not needed, so it is replaced by the horizontal tab character. The other systemdefined characters are retained. LITERAL SET^SIG = 9, ! setmode, set interrupt chars SET^SPACE = 6, ! setmode, set spacing mode SPACE = 1, ! spacing mode = single space NO^SPACE = 0; ! spacing mode = no space .
TERMINAL PROGRAMMING CONSIDERATIONS Conversational Mode CALL SETMODE ( HOME^TERM^NUM, SET^SPACE, NO^SPACE ); . . CALL WRITE ( HOME^TERM^NUM, BLANKS, 30, NUM^WRITTEN); After the write, the information on the terminal appears as: TODAY IS THE DAY cursor Then issue another read to the terminal. operator enters This time when the FOR BEGINNING "FOR BEGINNING" is returned in BUFFER (writing over the previous contents), and 13 is returned in NUM^READ.
TERMINAL PROGRAMMING CONSIDERATIONS Page Mode block immediately. The transfer terminates on detection of the current page termination character. For ATP6100 subdevices, you can redefine the configured page termination character by including the PAGECHAR attribute in a CMI ALTER SU command. Pseudopolled Page Mode In pseudopolled page mode, the operator initiates the transfer by pressing a function key. However, the terminal does not send the data block until it receives a trigger character.
TERMINAL PROGRAMMING CONSIDERATIONS Page Mode CALL READ ( HOME^TERM^NUM, BUFFER, 1, NUM^READ ); Reading one byte allocates one word of buffer space. The terminal operator types in the page of text and presses a function key. A ready character is sent to the host, causing the READ to complete. The application then sends the trigger character to the terminal and reads 600 characters with a call to WRITEREAD.
TERMINAL PROGRAMMING CONSIDERATIONS Page Mode INT .BUFFER[0:1023], .CONTROL^BUF[0:1], COUNT^READ; STRING .SBUFFER ! ! ! ! screen input buffer for sending escape sequences to terminal number of bytes read ! redefine as byte ! array .
TERMINAL PROGRAMMING CONSIDERATIONS Page Mode The terminal transmits the screen from the home position to the previous cursor position. The WRITEREAD completes with the screen data and field-separator and line-separator control characters in BUFFER. COUNT^READ contains a count of the characters returned by the terminal. ! set conversational mode CALL SETMODE ( TERM^NUM, CHANGE^MODE, CONV^MODE ); IF < THEN ... ; ! error .
TERMINAL PROGRAMMING CONSIDERATIONS Page Mode Application-Defined Interrupt Characters. You can redefine the interrupt characters with a SETMODE 9 procedure call. For ATP6100 subdevices, you can redefine them by including the INTCHAR attribute in a CMI ALTER SU command. When changing the interrupt characters with SETMODE or CMI, all four characters must be specified. Therefore, if fewer than four are needed, some characters must be duplicated.
TERMINAL PROGRAMMING CONSIDERATIONS Page Mode ! horizontal tab, and carriage return ! change to page mode CALL SETMODE ( HOME^TERM^NUM, CHANGE^MODE, PAGE^MODE ); ! all four interrupt characters are end-of-text characters ! set new page mode interrupt characters CALL SETMODE (HOME^TERM^NUM, SET^INTCHARS, ETX^EOT, ETX^EOT); ! interrupt characters are end of text and end of transmission ! return to conversational mode CALL SETMODE ( HOME^TERM^NUM, CHANGE^MODE, CONV^MODE ); ! interrupt characters are restored
TERMINAL PROGRAMMING CONSIDERATIONS Break Handling Any process that runs on the same terminal as the command interpreter or any other process that uses BREAK must perform error recovery for the two errors associated with BREAK, errors 110 and 111. CSSASYNC and TERMPROCESS delay for five seconds before responding to a process that does not own break and is looping on the BREAKONLY error. The delay prevents CPU usage from reaching 100 percent.
TERMINAL PROGRAMMING CONSIDERATIONS Using Break (Single Process per Terminal) INT BREAK^RECEIVED := 0, .RECV^BUF[ 0:66 ]; Enable BREAK by calling SETMODE 11 and passing the file number of the terminal and the CPU and process ID number (pin) of the owner. For example: | | | | | | CALL SETMODE (TERM^NUM, SET^BREAK^OWNER, ME, NORMAL^MODE); ME is the value returned by the MYPID procedure. MYPID is a process-control procedure that returns the CPU and process ID of the caller.
TERMINAL PROGRAMMING CONSIDERATIONS Using Break (Single Process per Terminal) If a process has enabled BREAK on more than one terminal, it should check the logical device number returned in the system break message to identify the source of the break. Figure 4-2 illustrates break handling when a terminal is controlled by a single process.
TERMINAL PROGRAMMING CONSIDERATIONS Using Break (Multiple Processes per Terminal) parameter-1 = cpu,pin, enable BREAK for process cpu,pin parameter-2 = 0, specify normal terminal access type last-parameters = last owner and last terminal access type on return from SETMODE SETMODE 11 returns ownership to the previous break owner as follows: operation = 11, set break ownership and terminal access type parameter-1 = last owner parameter-2 = last terminal access type last-parameters = last owner and
TERMINAL PROGRAMMING CONSIDERATIONS Using Break (Multiple Processes per Terminal) If BREAK is pressed, the command interpreter receives the break message. If each process that uses BREAK keeps track of the previous owner, break ownership can be passed among any number of processes in an orderly fashion. Terminal and File Access Types SETMODE 11 and SETMODE 12 can specify terminal and file access types. Terminal access type defines the operations that have access to the terminal.
TERMINAL PROGRAMMING CONSIDERATIONS Terminal and File Access Types 2. After a BREAK message is received, the application process specifies that subsequent file operations to the terminal have break access. The application process can then communicate with the terminal in the usual manner. Attempts by other processes with normal access will be rejected with an error indication.
TERMINAL PROGRAMMING CONSIDERATIONS Terminal and File Access Types LITERAL SET^ACCESS BREAK^MODE NORMAL^MODE BREAK^ACCESS NORMAL^ACCESS = 12, = 1, = 0, = 1, = 0; ! enable break and specify break mode CALL SETMODE ( HOME^TERM^NUM, SET^BREAK^OWNER, MYPID, BREAK^MODE, LAST^OWNER ); ! check $RECEIVE for a break message CALL READ ( RECV^FNUM, RECV^FNUM, 132 ); . ERROR := 0; CALL AWAITIO ( RECV^FNUM,, NUM^READ,, 0D ); IF = THEN ...
TERMINAL PROGRAMMING CONSIDERATIONS Terminal and File Access Types Terminal operator types BREAK Terminal Access Type: Only BREAK Access Permitted Any Access Permitted File Access Type: BREAK Access Normal Access Application process has sole access to terminal Application process finds BREAK message in $RECEIVE file, then calls SETMODE, specifying BREAK terminal access and BREAK file access Application process calls SETMODE, specifying normal terminal access and normal file access S5073-008 Figure 4-3
TERMINAL PROGRAMMING CONSIDERATIONS Terminal and File Access Types The following SETMODE operation relinquishes exclusive access to a terminal: operation = 12, set terminal access type and file access type parameter-1 = 0, terminal access type is normal parameter-2 = 0, file access type is normal An application program should use this feature only if it owns BREAK. If a process that does not own BREAK is deleted, break access is not cleared.
TERMINAL PROGRAMMING CONSIDERATIONS Terminal and File Access Types Terminal Access Type: Only BREAK Access Permitted Any Access Permitted File Access Type: BREAK Access Normal Access Application process has sole access to terminal Application process calls SETMODE, specifying BREAK access and BREAK mode Application process calls SETMODE, specifying normal access and normal mode S5073-009 Figure 4-4.
TERMINAL PROGRAMMING CONSIDERATIONS Types of Modems Types of Modems Many types of modems are manufactured by many different vendors. Most of them are described as being compatible with or equivalent to devices manufactured by the Bell system. The following types of modems are supported by ATP6100 and TERMPROCESS: 103, 113, 202, 212, and other full-duplex, asynchronous modems. Bell 202-type modems are used on half-duplex lines.
TERMINAL PROGRAMMING CONSIDERATIONS Modem Connections Switched (Dial-Up) Line Connections If your application is being executed through the command interpreter over a switched line, the command interpreter, not your application, takes care of answering incoming calls and disconnecting the line. In this case, your application interacts with the remote terminal by way of file-system procedure calls such as OPEN, CLOSE, READ, and WRITE.
TERMINAL PROGRAMMING CONSIDERATIONS Modem Connections LOOP: IF NOT CALL^RECEIVED THEN BEGIN CALL AWAITIO ( LINE1^FNUM, ...., 0D ); IF = THEN CALL^RECEIVED := 1 ELSE BEGIN CALL FILEINFO ( LINE1^FNUM, ERROR ); IF ERROR <> TIMEOUT THEN ...; END; END; ! error CONTROL 12 allows the modem to be disconnected without closing the associated file. For switched lines, a call to the CLOSE procedure implicitly performs a CONTROL 12 operation.
TERMINAL PROGRAMMING CONSIDERATIONS System Resource and Hardware Problems 12, 16, 17, 19, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 39, 120, 122, 123, 124, 137, 138, 139, 157, 160, 172, 173, 180, 190, 191, 192, 193 Some of these error numbers (such as 12, FILE IN USE) indicate transitory problems.
TERMINAL PROGRAMMING CONSIDERATIONS Break Errors The action prescribed for these errors depends on whether or not the process that receives the error is the owner of BREAK. Error 110 indicates that BREAK was pressed and that break terminal access was specified when break was enabled. The terminal is inaccessible until the process that is handling break calls SETMODE 12 to allow normal access to the terminal.
TERMINAL PROGRAMMING CONSIDERATIONS Modem Error retrying the READ, you should send a message to the terminal operator instructing him to reenter the most recent data string. Modem Error Error 140 occurs if the carrier signal to the modem is lost in half-duplex operation or if DSR is lost in switched operation. The signal loss can be either momentary or permanent. In either case, assume that data was lost.
SECTION 5 PRINTER I/O This section contains a comparison of ATP6100/CSSPRINT and SERIALPRINTPROCESS and a list of printers that are supported by the two I/O processes. It also includes a description of the printer characteristics that can be set with SYSGEN, CMI, CONTROLBUF, and SETMODE and of printer operations that can be initiated with CONTROL. COMPARISON OF ATP6100 AND SERIALPRINTPROCESS Table 5-1 compares the features of ATP6100/CSSPRINT with those of SERIALPRINTPROCESS.
PRINTER I/O Comparison of ATP6100 and SERIALPRINTPROCESS Table 5-1.
PRINTER I/O Comparison of ATP6100 and SERIALPRINTPROCESS ATP6100/CSSPRINT and SERIALPRINTPROCESS have the following characteristics: • Printers can be connected through either an RS-232C or 20-ma current loop interface. DTR-type printers must use RS-232C. • Printers can be connected either directly to the LIM or patch panel (hard-wired), or through a modem. • Printers can support form control by two methods: line count or skip to vertical format channel.
PRINTER I/O Supported Printers SUPPORTED PRINTERS ATP6100/CSSPRINT and SERIALPRINTPROCESS support the following printers: | | | | | | | | | | | | | | • 5508 matrix printer, device type 5, subtype 3 • 5512 matrix printer, device type 5, subtype 9 • 5515/5516 matrix printers, device type 5, subtype 7 • 5520 matrix printer, device type 5, subtype 4 • 5530 daisy wheel character printer, device type 5, subtype 6 • 5540/1 and DTR-type printers (not necessarily Tandem printers), device type 5, subtyp
PRINTER I/O Control Characters Control Characters ATP6100 and SERIALPRINTPROCESS use two ASCII control characters: carriage return and line feed. The default carriage return character is %015; the default line feed character is %012. You can change their default values at SYSGEN time with the DEFCR and DEFLF modifiers. For ATP6100 devices, you can change the default values with CMI attributes DEFCR and DEFLF.
PRINTER I/O Flow Control Characteristics Table 5-2.
PRINTER I/O Flow Control Characteristics detector (SCF). The controller then delays transmission until the device drops SCF. For REVTPAUSE the device must drop and then raise SCF. These modems require request to send (RTS) to drop when switching from transmit to receive. SDCD must be high to the DCE when receiving. REVTPAUSE is available only for ATP6100 subdevices. ATP6100 does not check the transfer size (XFERSIZE) specified by SYSGEN.
PRINTER I/O Form Control Characteristics Table 5-4. Form Control Characteristics SYSGEN Modifier CONTROL Parameter CONTROLBUF Parameter SETMODE Parameter Enable downloading of DAVFU (5520) VFU72LINES NOVFU72LINES* VFUDEFAULT** (none) (none) (none) VFU72LINES Skip to line 1 or 4 after form feed (5530) LINE1FORMF NOLINE1FORMF* LINE4FORMF** (none) (none) (none) LINE1FORMF Characteristic CMI Attribute Execute form control (form feed, skip to DAVFU channel, etc.
PRINTER I/O Form Control Characteristics The CONTROL procedure advances forms according to the DAVFU or by moving them a specified number of lines. The operations performed by CONTROL depend on the printer device subtype. Example Except for 5515/5516, 5512, and 5573 printers using TAP or T-TAP, | the file system does not automatically set the form to top of | form at file open time. This permits the operator to install and | align a special form.
PRINTER I/O Line-Configuration Characteristics Table 5-5.
PRINTER I/O Line-Configuration Characteristics SERIALPRINTPROCESS and CSSPRINT running on an LIU1 support 3600 baud operation; CSSPRINT on an LIU4 does not. Communication speed is set at SYSGEN time. You can change the SYSGEN default with SETMODE 22. For ATP6100 subdevices, you can change the default by including the SPEED attribute in the CMI ALTER SU command. Character Size The number of bits that make up each character depends on several characteristics. The number of data bits can be 7 or 8.
PRINTER I/O Modem Characteristics Modem Characteristics Devices that are connected to the host through modems require special SYSGEN modifiers. The modem control characteristics interact with the flow control characteristics described in "Flow Control Characteristics" in this section. Table 5-6 shows these modifiers and how to change them. Table 5-6.
PRINTER I/O Modem Characteristics of a modem connect (CONTROL 11) procedure call, the system ensures that the communication line is disconnected. For ATP6100 subdevices, you can change the SYSGEN default by including the AUTODCONN attribute in a CMI ALTER SU command. Certain modems and terminals require one or two special turnaround characters for switching between send and receive modes. The HDTURN1 and HDTURN2 SYSGEN modifiers specify these characters.
SECTION 6 PROCEDURE CALLS FOR ACCESSING PRINTERS This section contains descriptions of the procedure calls that control printer I/O and some examples of how to use the calls. PROCEDURE CALLS SUMMARY The following GUARDIAN 90 file-system procedures perform I/O operations with serial printers: AWAITIO waits for completion of an outstanding I/O operation pending on an open file. CANCELREQ cancels the oldest outstanding operation, optionally identified by a tag, on an open file.
PROCEDURE CALLS FOR ACCESSING PRINTERS Procedure Calls Summary SETMODE sets and clears the following device-dependent functions: reset to configured values auto perforation skip get device status auto/control answer horizontal pitch select character sets | spacing control vertical tabs get device status baud rate form length set transparency See Appendix C for a summary of SETMODE operations. SETMODENOWAIT is used in the same way as SETMODE, except the caller is not suspended while the call completes.
PROCEDURE CALLS FOR ACCESSING PRINTERS WRITE If you make the following call to a printer with line width of 132 characters: CALL WRITE ( FILE^NUM, PTR^BUFFER, 200 ); IF <> THEN ...; an error occurs. The first 132 characters of PTR^BUFFER are printed. On the return from WRITE, the condition code indicator is set to CCL. A subsequent call to FILEINFO would return error 21 (ILLEGAL COUNT SPECIFIED).
SECTION 7 PRINTER PROGRAMMING CONSIDERATIONS This section contains a comparison of the features of the different printers and programming considerations for controlling the movement of forms through them. It also includes information on modem connections and some error handling techniques.
PRINTER PROGRAMMING CONSIDERATIONS Printer Feature Comparison PRINTER FEATURE COMPARISON | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Table 7-1 summarizes the differences among the serial printers that are supported by ATP6100 and SERIALPRINTPROCESS. Each printer is described below in more detail. Table 7-1.
PRINTER PROGRAMMING CONSIDERATIONS Form Control FORM CONTROL Application programs using 5573, 5512, or 5515/5516 printers can use escape sequences for form control. However, for 5508, 5520, 5530, and 5540/5541 printers, application programmers should use CONTROL or SETMODE for form control instead of attempting to embed control characters and escape sequences in the print line. When the model 5520 encounters an invalid escape sequence, it converts the entire sequence to spaces and then prints it.
PRINTER PROGRAMMING CONSIDERATIONS Overprinting CALL SETMODE ( FILE^NUM, SET^SPACE, NO^SPACE ); . ! print contents of BUFFER1 ! form does not advance CALL WRITE ( FILE^NUM, BUFFER1, ... ); . ! turn on single spacing CALL SETMODE ( FILE^NUM, SET^SPACE, SPACE ); . ! print contents of BUFFER2 over the contents of BUFFER1 ! form advances CALL WRITE ( FILE^NUM, BUFFER2, ... ); NOTE | | | | | | | | | | | | | | | | If you issue SETMODE 6,0,0 (no transparency), the printer appends a carriage return to the buffer.
PRINTER PROGRAMMING CONSIDERATIONS Programming Considerations for the Model 5508 Printer Specify the number of lines in the form with SETMODE 25 as an integer in the range of 0:126. The default for this setting is 66 lines because the most common form size is 11 inches with 6 lines per inch. Set a vertical tab stop with SETMODE 26 by specifying the line where the tab stop is to occur. With the defaults of single spacing and 66 lines per page, there is a vertical tab at each line from 1 through 59.
PRINTER PROGRAMMING CONSIDERATIONS Using the DAVFU than the defaults are required, the application specifies the contents of the DAVFU by calling the CONTROLBUF procedure. Single spacing with automatic perforation skip is the default; the file system skips on channel 2 of the printer's DAVFU. More specifically, for single spacing and automatic perforation skip, set the DAVFU buffer bit for channel 2 to 1 (for lines 1-60).
PRINTER PROGRAMMING CONSIDERATIONS Initializing the DAVFU immediately after a call to SETMODE 28 (reset to configured values). This procedure ensures that the printer is at top of form before loading the default DAVFU. Loading the DAVFU causes the top of form to be reset to the current line. If the previous form length is different from the default, the approach just described is not effective since the requested top of form will advance the paper the wrong number of lines.
PRINTER PROGRAMMING CONSIDERATIONS Loading the DAVFU 0 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 0 0 0 0 Channel 0 Channel 11 Channel 1 Channel 10 Channel 2 Channel 9 Channel 3 Channel 8 Channel 4 Channel 7 Channel 5 Channel 6 S5004–048 Figure 7-1. DAVFU Buffer Word Format For example, %37400 (default for line 31) indicates that channel stops are to be set for channels 2, 3, 4, 5, 6, and 7.
PRINTER PROGRAMMING CONSIDERATIONS Loading the DAVFU Line 63 is defined as bottom of paper when the default DAVFU is used. If the paper is properly aligned in the printer, line 63 is the last line before the perforation and lines 64, 65, and 66 are the first three lines on the new page. Line 1 (top of form) immediately follows as the fourth line on the page. Follow this procedure for using nonstandard paper: 1. Call CONTROLBUF 1 to load the DAVFU. 2.
PRINTER PROGRAMMING CONSIDERATIONS Condensed and Expanded Print The condensed print option allows the 5520 to print with a horizontal pitch of 16.7 characters per inch. Select condensed print by calling SETMODE 68, parameter-1 = 1. The expanded print option (double width) provides a horizontal pitch of 5 characters per inch. Select expanded print by calling SETMODE 68, parameter-1 = 2. Reenable normal printing by calling SETMODE 68, parameter-1 = 0.
PRINTER PROGRAMMING CONSIDERATIONS Underline Underline The model 5520 printer does a partial line feed before underlining. This feature prevents the line from overlapping the bottom parts of the characters being underlined. A partial line feed occurs following a carriage return (%15) only if the next line contains only underscore (%137) and space (%40) characters. You can create an application program to use this underlining capability as follows: 1. Turn off spacing using SETMODE 6, parameter-1 = 0. 2.
PRINTER PROGRAMMING CONSIDERATIONS Error Handling Error Handling Table 7-2 summarizes the meanings of some of the file-system errors for a model 5520 printer. Further explanation of some errors follows. Table 7-2. 5520 Errors Error Error Number Name Meaning _______________________________________________________________ 21 ILLEGAL COUNT Byte count for a write is greater than the configured record size for normal print mode, one-half the configured record size for expanded print mode, or 1.
PRINTER PROGRAMMING CONSIDERATIONS Error Handling Table 7-2. 5520 Errors (continued) Error Error Number Name Meaning _______________________________________________________________ 120 DATA PARITY ERROR Nonrecoverable data parity error. For details, see "DATA PARITY ERROR Recovery" below. 121 DATA OVERRUN Buffer overflowed while data was being sent to the printer because of a hardware or microcode problem. 139 CONTROLLER ERROR 1.
PRINTER PROGRAMMING CONSIDERATIONS Error Handling DATA PARITY ERROR Recovery The I/O process can perform automatic parity error recovery for the 5520 printer. If a parity error is detected, the software attempts to recover unless one of the following conditions exists: • A parity error persisted after the retry count was exhausted. • A parity error occurred while the device was off line (DEVICE NOT READY or PAPER OUT).
PRINTER PROGRAMMING CONSIDERATIONS Error Handling Call CONTROLBUF to reload the DAVFU if values other than the defaults are being used. To guarantee a good restart point, print a message asking the operator to align the paper. If the printer is turned on without paper loaded, error 100 is returned. If the ON LINE button is pressed without paper loaded, then error 102 (PAPER OUT) is returned. Once the PAPER OUT condition is cleared and the ALARM/CLEAR button is pressed, the printer again becomes NOT READY.
PRINTER PROGRAMMING CONSIDERATIONS Resetting the 5530 Resetting the 5530 The I/O process performs a RESET when the device is first opened. A RESET sets all the SETMODE parameters to their SYSGEN values and causes the 5530 driver to issue Q to the printer to return the operating parameters to their default values. The physical top of form is preserved. For operations not controlled by the spooler, the RESET only occurs on the first open if multiple opens exist on the device.
PRINTER PROGRAMMING CONSIDERATIONS Error Handling Error Handling When interpreting file-system errors, beware of subtle differences between the 5530 and the 5520. The following table summarizes the meanings of various errors for the 5530. Table 7-3. 5530 Errors Error Error Number Name Meaning _______________________________________________________________ 21 ILLEGAL COUNT The specified byte count is greater than the configured record size. 100 DEVICE NOT READY The printer is not ready.
PRINTER PROGRAMMING CONSIDERATIONS Error Handling Table 7-3. 5530 Errors (continued) Error Error Number Name Meaning _______________________________________________________________ | | 139 CONTROLLER ERROR 1. Parity occurred on status returned on the asynchronous controller, or 2. Character overrun occurred on the asynchronous controller, or 3. Invalid interrupt status returned on the asynchronous controller. 140 MODEM ERROR 1. Communication link was not established, or 2. Modem failure or 3.
PRINTER PROGRAMMING CONSIDERATIONS Error Handling to output a console message. The DEVICE POWER ON error is returned to the application if this request is not the first request made after the device was opened. When the 5530 goes offline because of a paper out, cover open, or other recoverable condition and then goes back online, it prints the contents of the buffer. The printer then waits for more data. If error 104 has occurred, the operator should reset the top of form and print the job again.
PRINTER PROGRAMMING CONSIDERATIONS Programming Considerations for DTR-Type Printers Example Assume that a DTR-type serial printer has a buffer size of 1000 bytes and is capable of receiving 200 bytes of data in a single block. The printer hardware detects the high-water mark (buffer nearly full) when the buffer contains 800 bytes and the lowwater mark (buffer nearly empty) when the buffer contains 250 bytes. The printer controls the flow of data from the host by manipulating the DTR signal.
PRINTER PROGRAMMING CONSIDERATIONS Transmit Pause (TPAUSE) For direct connections (no modems), jumper the DTR line from the printer (usually pin 20) to the host's secondary received line signal detector (SCF, pin 12). For the model 5508, jumper pin 18 (buffer status) to pin 12 of the host for TPAUSE operation. For the model 5520, jumper pins 11 and 19 (busy) to pin 12 on the host to indicate that the 5520 is busy or the buffer is threequarters full.
PRINTER PROGRAMMING CONSIDERATIONS Reverse Channel (RC) RC supports printers whose pin-12 polarity definition is the opposite of those that use TPAUSE. The polarity of the incoming RC signal is defined as follows: RC not busy = RC signal in the on or logic 1 state = send data RC busy = RC signal in the off or logic 0 state = do not send data RC busy indicates that the printer's buffer has reached the highwater mark, is out of paper, offline, or otherwise not ready.
PRINTER PROGRAMMING CONSIDERATIONS DELAYTIME SYSGEN Modifier The 100 multiplier converts the time into 10-millisecond units; the 2 multiplier provides a safety factor. If you don't know the low-water mark, use the following formula to determine a safe value for DELAYTIME: DELAYTIME = [[buffer size / speed] * 100 * 2] XFERSIZE SYSGEN Modifier The XFERSIZE n modifier specifies the maximum number of bytes transmitted per transfer.
PRINTER PROGRAMMING CONSIDERATIONS Cabling Recommendations Cabling Recommendations When connecting DTR printers directly to the host (no modems), use the following pin-to-pin connections: HOST FG 1 TXD 2 RXD 3 RTS 4 CTS 5&8 SG 7 SCF 12 DTR 20 * PRINTER --------------------------->--------------------------< <--------------------------> >--------------------------< <-+----------------------+-> ---------------------------<--------------------------> >--------------------------< 1 3 2 5&8 * 4 * 7 20 * ____
PRINTER PROGRAMMING CONSIDERATIONS Cabling Recommendations When connecting DTR printers to the host through modems, use the following pin-to-pin connections: HOST FG 1 TXD 2 RTS 4 CTS 5 DSR 6 SG 7 DCD 8 DTR 20 MODEM RXD 3 ---------------------------- 1 >--------------------------> 2 >--------------------------> 4 <--------------------------< 5 <--------------------------< 6 ---------------------------- 7 <--------------------------< 8 >--------------------------> 20 /------< 3 <-------------------+ OR
PRINTER PROGRAMMING CONSIDERATIONS Programming Considerations for 5515/5516 Printers | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PROGRAMMING CONSIDERATIONS FOR 5515/5516 PRINTERS ATP6100 (including the 3681 implementation) and SERIALPRINTPROCESS, support the 5515/5516 printers. for the 5515/5516 is 7.
PRINTER PROGRAMMING CONSIDERATIONS DELAYTIME SYSGEN Modifier Once the I/O process is prevented from sending data to the printer, the data flow from the I/O process to the printer is halted. However, during this time, the I/O process polls the printer for status every 250 milliseconds for n amount of time. For example, if DELAYTIME is defined 7500, the I/O process polls the printer 300 times. If the printer should return a ready status when polled, the I/O process resumes sending data.
PRINTER PROGRAMMING CONSIDERATIONS Resetting the 5515/5516 Printers | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SETMODE 29 is the only SETMODE parameter not affected by a SETMODE 28 operation or by the RESET command when the device is first opened. SETMODE 29 sets auto answer or control answer. Do not press the RESET button on the printer during printing. Doing so can cause data to be lost.
PRINTER PROGRAMMING CONSIDERATIONS Error Handling Table 7-4. 5515/5516 Errors (continued) Error Number Error Name 139 CONTROLLER ERROR 1. Parity occurred on status returned on the asynchronous controller, or 2. Character overrun occurred on the asynchronous controller, or 3. Invalid interrupt status returned on the asynchronous controller. 140 MODEM ERROR 1. Communication link was not established, or 2. Modem failure or 3. Momentary loss of carrier or 4. Modem disconnect or 5.
PRINTER PROGRAMMING CONSIDERATIONS Printer Command Language (PCL) Support | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Printer Command Language (PCL) Support The 5515/5516 printers support PCL Level II escape sequence commands. These commands are generated by the application program, sent to the I/O process, and subsequently sent to the printer.
PRINTER PROGRAMMING CONSIDERATIONS Using Vertical Format Control (VFC) Table 7-5.
PRINTER PROGRAMMING CONSIDERATIONS Using Vertical Format Control (VFC) | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The byte count parameter specifies the number of VFC data bytes (in decimal) that the printer should expect immediately following the termination of the escape sequence. You can specify the byte count in 0 through 256 range. However, you must specify an even byte count.
PRINTER PROGRAMMING CONSIDERATIONS Using Vertical Format Control (VFC) .
PRINTER PROGRAMMING CONSIDERATIONS Using Vertical Format Control (VFC) | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | %B0000000000000100, !50 %B0000000010001100, !51 %B0000000000010100, !52 %B0000000000001100, !53 %B0000000000000100, !54 %B0000000000011100, !55 %B0000000000000100, !56 %B0000000000001100, !57 %B0000000000010100, !58 %B0000000100001100, !59 %B0000000010000110, !60 %B0000000000000000, !61 %B0000000000000000, !62 %B0000000000000000, !
PRINTER PROGRAMMING CONSIDERATIONS Using Vertical Format Control (VFC) BEGIN IF FILEERROR( PRINTER ) AND ( RETRY := RETRY + 1 ) THEN GOTO AGAIN ELSE CALL DEBUG; END; IF XCOUNT <> COUNT THEN CALL DEBUG; | | | | | | | | END; | | | | Printing Restrictions for 5515/5516 | | | The 5515/5516 printers do not print data that has been received | until the printer receives a vertical forms command or RESET | command.
PRINTER PROGRAMMING CONSIDERATIONS Resetting the 5573 Printers | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resetting the 5573 Printers Resetting the printer ensures that the I/O process and the printer are at a known default state. The I/O process performs a RESET only once for a device, when the device is first opened. The I/O process does not perform another RESET even if multiple opens exist on the device.
PRINTER PROGRAMMING CONSIDERATIONS Programming Considerations for 5512 Printers In addition, the 5573 does not print on a quarter inch along the outer edges of the page. To ensure that all characters are printed, do not use this region. PROGRAMMING CONSIDERATIONS FOR 5512 PRINTERS ATP6100 (including the 3681 implementation) and SERIALPRINTPROCESS support the 5512 printer. Using ATP6100, the subtype for the 5512 is 9. Using SERIALPRINTPROCESS, the subtype for the 5512 is 7.
PRINTER PROGRAMMING CONSIDERATIONS Resetting the 5512 Printers | | | | | | | | | | | | | | | SETMODE 29 is the only SETMODE parameter not affected by a SETMODE 28 operation or by the RESET command when the device is first opened. SETMODE 29 sets auto answer or control answer. Do not press the RESET button on the printer during printing. Doing so can cause data to be lost. Pressing the RESET button does not reset programmable parameters or top of form, nor does pressing the RESTORE button on the printer.
PRINTER PROGRAMMING CONSIDERATIONS Bell 212A-Type Modems Unlike the other SETMODE functions, SETMODE 29 remains in effect after the file is closed. Also, SETMODE 28 does not reset the modem answering mode to its configured value. Issue SETMODE 29 to set the answering mode at the beginning of each job. Bell 212A-Type Modems For all serial printers connected to the host through Bell 212Atype modems, the receive space disconnect option must be disabled on the modem at the host end.
PRINTER PROGRAMMING CONSIDERATIONS Path Errors Path errors 210 through 231 indicate that the operation failed at some indeterminate point. The paper might have moved. The approach to the error depends on the application. If the operation is critical, such as printing payroll checks, the check should probably be canceled and a message sent to the operator. Otherwise, the line can be reprinted and might be duplicated.
APPENDIX A CONSOLE MESSAGES This appendix summarizes the console error messages that are generated by ATP6100, TERMPROCESS, and SERIALPRINTPROCESS. The messages preceded by an asterisk (*) are not used for the 3681 controller. CONSOLE ERROR MESSAGES SENT BY ATP6100 ATP6100 generates the following console error messages: 67 LDEV ldev SUBDEV ddd ERROR errnum Sent when a subdevice is placed in the stopped state. ERROR = 100 when subdevice cannot be started because of bad configuration.
CONSOLE MESSAGES Console Error Messages Sent by ATP6100 3. Set frame size request timed out, or 4. Response to abort previous frame timed out. %1004 Problem in queuing or dequeuing a subdevice. parameter-4 = subdevice number %1005 Bad subdevice number during a checkpoint operation. parameter-4 = subdevice number %1006 Subdevice error on a CMI message to CLIP. parameter-4 = function/modifier parameter-5 = error returned %1011 Requested buffer size greater then MAXLOCALAREA.
CONSOLE MESSAGES Console Error Messages Sent by ATP6100 106 LDEV ldev INSUFFICIENT BUFFER SPACE ALLOCATED IN SYSGEN *147 LDEV ldev CU ccu CSS STATUS PROBE ERROR, CIU path parameter-3 | Sent for following reasons: 1. parameter-3 = -1, status probe timed out. 2. parameter-3 = -2, unexpected status probe from CLIP. 3. parameter-3 = CLB type field, unexpected status from CLIP. Occurs with reason number 2 message.
CONSOLE MESSAGES Console Error Messages Sent by ATP6100 | *164 LDEV ldev CU ccu CSS LINE ERROR, CIU path parameter-3 parameter-4 parameter-5 parameter-3 = function/modifier field parameter-4 = first data word parameter-4 = second data word Sent for one of the following reasons: 1. Bad subdevice number in message from CLIP. 2. Nonzero CLIP status byte in a response to a CLIP START, STOP, or SET CONFIGURATION request.
CONSOLE MESSAGES Console Error Messages Sent by ATP6100 27 28 29 30 31 32 33 34 35 * 36 37 38 39 40 41 * ** ** ** ** ** No active request to cancel Invalid write count specified Invalid read count specified Invalid L4 specified Line already started Active request is pending Modem failure due to CTS Modem failure due to SDCD Baud rate selected conflicts with other channel's baud rate Baud rate not supported by this interface No response received from printer Printer is not ready Printer error Paper out VF
CONSOLE MESSAGES Console Error Messages Sent by TERMPROCESS 06 07 74 LDEV ldev CU ccu UP CAUSE: The operator returned the terminal to the system through a Peripheral Utility Program UP or REVIVE command. SYSTEM ACTION: The operation is complete; the terminal is up. RECOVERY: Informative message only; no corrective action needed. LDEV ldev CU ccu DOWN {BELL} CAUSE: The operator removed the terminal from the system with a Peripheral Utility Program DOWN command.
CONSOLE MESSAGES Console Error Messages Sent by SERIALPRINTPROCESS The parameter values are interpreted as follows: For controller errors (parameter-1=%000213), dev-status contains interrupt status from the controller and both parameter-2 and parameter-3 are %000000. For the model 5520 printer: dev-status is the primary status returned from the printer. parameter-1 is the auxiliary status word if bits 9 through 11 of dev-status are equal to 7; otherwise, parameter-1 is %000000.
CONSOLE MESSAGES Console Error Messages Sent by SERIALPRINTPROCESS 05 LDEV ldev CU ccu RETRY dev status parameter-1 parameter-2 parameter-3 This message indicates that an error occurred with the specified printer and the operation is being retried. The parameters are as described above for the operator console message. 06 07 74 A-8 LDEV ldev CU ccu UP CAUSE: The operator successfully returned the printer to the system through a Peripheral Utility Program UP or REVIVE command.
APPENDIX B CONTROL, SETMODE, AND SETPARAM FOR TERMINALS This appendix describes the CONTROL, SETMODE, and SETPARAM operations for terminals. CONTROL OPERATIONS CALL CONTROL operation operation 1 = form control. parameter = 0 1 - 15 16 - 79 For conversational mode (subtypes 0, 2, 3).
CONTROL, SETMODE, AND SETPARAM FOR TERMINALS SETMODE Operations SETMODE OPERATIONS CALL SETMODE operation operation 6 = set system spacing control (default is configured). parameter-1.15 = 0 1 no space single space (default) parameter-2 is not used. 7 = set system auto line feed after receipt of carriage return (default is configured). parameter-1.15 = 0 1 line feed from terminal or network (default) system provides line feed parameter-2 is not used.
CONTROL, SETMODE, AND SETPARAM FOR TERMINALS SETMODE Operations 10 = set parity checking by system (default is configured). parameter-1.15 = 0 1 no checking checking parameter-2 is not used. 11 = set break ownership. parameter-1 = 0 = cpu,pin break disabled (default) break enabled Terminal access type after break is pressed: parameter-2 = 0 = 1 normal (any type access is permitted) break (only break-type access is permitted) 12 = set terminal access type. parameter-1.
CONTROL, SETMODE, AND SETPARAM FOR TERMINALS SETMODE Operations 20 = set system echo mode (default is configured). parameter-1.15 = 0 1 system does not echo characters system does echo characters parameter-2 is not used. 22 = set baud rate. parameter-1 = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 baud baud baud baud baud baud baud baud baud baud baud baud baud baud baud baud baud rate rate rate rate rate rate rate rate rate rate rate rate rate rate rate rate rate 50 75 110 134.
CONTROL, SETMODE, AND SETPARAM FOR TERMINALS SETMODE Operations 27 = set system spacing mode. parameter-1.15 = 0 1 postspace (default) prespace parameter-2 is not used 28 = reset to configured values. parameter-1 = 0 parameter-2 is not used NOTE SETMODE 29 (set auto answer or control answer mode) is not affected by SETMODE 28. 38 = set special line-termination mode and character. parameter-1 = 0 sets special line-termination mode. parameter-2 is new line-termination character.
CONTROL, SETMODE, AND SETPARAM FOR TERMINALS SETMODE Operations 67 = AUTODCONNECT for full-duplex modems. detect or data set ready. parameter-1 = 0 1 Monitor carrier disable AUTODCONNECT (default) enable AUTODCONNECT parameter-2 is not used. 110 = Set shift in/shift out (SISO) code extension. parameter-1 = 0 1 disable SISO (default) enable SISO NOTE SETMODE 110 is supported in ITI protocol when used for 6530 terminals. parameter-2 is not used. 113 = set screen size.
CONTROL, SETMODE, AND SETPARAM FOR TERMINALS SETPARAM Operations SETPARAM OPERATIONS CALL SETPARAM operation operation 3 = set/fetch break-handling parameters.
APPENDIX C CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS CONTROL OPERATIONS CALL CONTROL operation operation 1 = form control For subtype 3: parameter = 0 1 - 15 16 - 79 form feed (send %014) vertical tab (send %013) skip parameter - 16 lines For subtype 4--default DAVFU: parameter = 0 1 2 3 4 5 6 7 8 9 10 11 16 - 31 skip to channel 0 (top of form/line 1) skip to channel 1 (bottom of form/line 60) skip to channel 2 (single space/lines 1-60, top-of-form eject) skip to channel 3 (next odd-numbered line
CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS CONTROL Operations For subtypes 6 and 32: parameter = 0 1 - 15 16 - 79 | | form feed (send %014) single space (send %6412) skip (parameter - 16) lines 11 = wait for modem connect. and 32: For subtypes 3, 4, 6, 7, 8, 9, parameter = none | 12 = disconnect modem. For subtypes 3, 4, 6, 7, 8, 9, and 32: parameter = none CONTROLBUF OPERATIONS CALL CONTROLBUF operation operation 1 = load DAVFU.
CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS SETMODE Operations For subtype 6: parameter = 0 1 disable automatic perforation skip enable automatic perforation skip (default) parameter-2 is not used. 6 = set system spacing control and transparency parameter-1.
CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS SETMODE Operations NOTE The 5520 printer (subtype 4) supports the following baud rates: 110, 150, 300, 600, 1200, 2400, 4800, and 9600. The 5530 (subtype 6) supports the following baud rates: 75, 150, 300, 600, 1200, 2400, 4800, and 9600. The default is what was specified at SYSGEN. is specified, 9600 is used. If none parameter-2 is not used. 23 = set character size. parameter-1 = 2 3 7 bits 8 bits parameter-2 is not used.
CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS SETMODE Operations 27 = set system spacing mode. parameter-1.15 = 0 1 postspace (default) prespace parameter-2 is not used 28 = reset to configured values. parameter-1 = 0 NOTE For the 5530, the SETMODE 28 operation resets all SETMODE parameters to their SYSGEN values and reinitializes the printer.
CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS SETMODE Operations beginning of each job to ensure that the correct mode is in effect. 37 = get device status. parameter-1 is not used parameter-2 is not used last-parameters for subtype 4: last-parameters[0] = primary status returned from printer status: C-6 .
CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS SETMODE Operations device not ready: .15 = 0 1 ready not ready All other bits are undefined. last-parameters[1] = auxiliary status word if last-parameters[0].9:11 = 7 auxiliary status: .9:13 = 0 1 2 3 4-31 no errors this field no shuttle motion character generator absent VFU channel error reserved for future use .14:15 = 3 All other bits are undefined. last-parameters for subtype 6: last-parameters[0] = primary status returned from printer status: .
CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS SETMODE Operations Table C-1. Fault Status Summary Operator Aux Status Aux Status Problem Display .8:11 .
CONTROL, CONTROLBUF, AND SETMODE FOR PRINTERS SETMODE Operations 111 = enable/disable internal diagnostics (SI/D). parameter-1 = 0 1 2 disable SI/D (default) enable SI/D (option 1) enable SI/D (option 2) NOTE The SI/D options can leave the model 5530 in an undesirable state. Do not use them with this printer. 142 = select character set. parameter-1 = 0 1 | | | | | | | | | | | | | | | | | | | | | | | | | select default character set select IBM PC character set parameter-2 is not used.
APPENDIX D CMI TERMPROCESS This appendix describes the subsystem-specific details involved in using CMI to inquire about and take traces of TERMPROCESS lines. CMI cannot be used to configure or control TERMPROCESS lines. OBJECT TYPES AND OBJECT NAMES There is only one CMI object-type for TERMPROCESS: refers to the I/O process and the line. LINE.
CMI TERMPROCESS Object Attributes OBJECT ATTRIBUTES There are no object attributes that can be displayed or modified. COMMAND DESCRIPTIONS The following CMI commands are accepted by TERMPROCESS: ABORT, INFO, START, STATUS, STOP, TRACE. The following command summary ions ABORT Command LINE is the only valid object for the ABORT command. The LINE is left in the stopped state, and the CLIP is placed in the boot state. INFO Command LINE is the only valid object for the INFO command.
CMI TERMPROCESS START Command Example >START LINE $TERM1 STATUS Command LINE is the only valid object for the STATUS command. command returns the current state of the line. The STATUS Example >STATUS LINE $TERM1 STATE: STARTED PATH? CSM LDEV 0 CU-PRIMARY %0 CU-BACKUP%1 NOTE The path, CSM ldev, and CU information does not apply to TERMPROCESS lines. STOP Command LINE is the only valid object for the STOP command. left in the stopped state.
CMI TERMPROCESS TRACE Command Table D-1.
APPENDIX E DEVICE DEFAULT VALUES This appendix lists the default values for the terminals and printers supported by ATP6100, TERMPROCESS, and SERIALPRINTPROCESS. If the device is supported by ATP6100, but not the 3681 implementation of ATP6100, it is preceded by an asterisk (*). If the device is supported by ATP6100, the device is defined with the DEVTYPE and DEVSUBTYPE modifiers.
DEVICE DEFAULT VALUES 6402 TERMINALS | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6402 TERMINALS (ATP6100) DEVTYPE 6 DEVSUBTYPE 0 BAUD 192000 CHAR7 EVEN,CHECK HARD,FULL,ECHO,CL INTCHAR HDTURN1 0, HDTURN2 0 CONV LINETERM %15 LFSYS BSCRT CRLFD VTABD PAGETERM 0 PPOLL 0 (TERMPROCESS) TYPE 6 SUBTYPE 0 *6511 TERMINALS (ATP6100) DEVTYPE 6 DEVSUBTYPE 1 BAUD9600 CHAR7 EVEN,CHECK HARD,FULL,ECHO,EIA INTCHAR HDTURN1 0, HDTURN2 0 CONV LINETERM %15 LFSYS BSCRT CRLFD
DEVICE DEFAULT VALUES *6512 TERMINALS *6512 TERMINALS (ATP6100) DEVTYPE 6 DEVSUBTYPE 1 BAUD9600 CHAR7 EVEN,CHECK HARD,FULL,ECHO,CL INTCHAR HDTURN1 0, HDTURN2 0 CONV LINETERM %15 LFSYS BSCRT CRLFD VTABD PAGETERM %15 PPOLL 0 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (TERMPROCESS) TYPE 6 SUBTYPE 1 6520/6524/6526 TERMINALS (ATP6100) DEVTYPE 6 DEVSUBTYPE 2 BAUD9600 CHAR7 EVEN,CHECK HARD,FULL,ECHO,CL INTCHAR HDTURN1 0, HDTURN2 0 CONV LINETERM %15 LFSYS
DEVICE DEFAULT VALUES 6530 TERMINALS | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6530 TERMINALS (ATP6100) DEVTYPE 6 DEVSUBTYPE 4 BAUD9600 CHAR7 EVEN,CHECK HARD,FULL,ECHO,CL INTCHAR HDTURN1 0, HDTURN2 0 CONV LINETERM %15 LFSYS BSCRT CRLFD 0 VTABD 0 PAGETERM %15 PPOLL 0 RETRIES 13 ECHOBREAK (TERMPROCESS) TYPE 6 SUBTYPE 4 6603 TERMINALS (ATP6100) DEVTYPE 6 DEVSUBTYPE 32 BAUD300 CHAR7 EVEN,CHECK HARD,FULL,ECHO,EIA INTCHAR HDTURN1 0, HDTURN2 0 CONV LINE
DEVICE DEFAULT VALUES 6604 TERMINALS 6604 TERMINALS (ATP6100) DEVTYPE 6 DEVSUBTYPE 32 BAUD300 CHAR7 EVEN,CHECK HARD,FULL,ECHO,CL INTCHAR HDTURN1 0, HDTURN2 0 CONV LINETERM %15 LFSYS BSHARD CRLFD 0 VTABD 0 PAGETERM 0 PPOLL 0 (ATP6100) DEVTYPE 6 DEVSUBTYPE 32 BAUD300 CHAR7 EVEN,CHECK HARD,FULL,ECHO,EIA INTCHAR HDTURN1 0, HDTURN2 0 CONV LINETERM %15 LFSYS BSHARD CRLFD 0 VTABD 0 PAGETERM %15 PPOLL 0 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (TERMPROCESS) TYPE 6 SUBT
DEVICE DEFAULT VALUES 5512 printers | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5512 PRINTERS (ATP6100) DEVTYPE 5 DEVSUBTYPE 9 DEVRSIZE 132 BAUD9600 CHAR8 EVEN CL AUTOANSWER DEFCR %15 DEFLF %12 (SERIALPRINTPROCESS) SERIAL5515 TYPE 5 SUBTYPE 7 5515/5516 PRINTERS (ATP6100) DEVTYPE 5 DEVSUBTYPE 7 DEVRSIZE 132 BAUD9600 CHAR8 EVEN CL AUTOANSWER DELAYTIME 7500 DEFCR %15 DEFLF %12 E-6 (SERIALPRINTPROCESS) SERIAL5515 TYPE 5 SUBTYPE 7 November 1987
DEVICE DEFAULT VALUES 5520 printers 5520 PRINTERS (ATP6100) DEVTYPE 5 DEVSUBTYPE 4 DEVRSIZE 132 BAUD9600 CHAR7 STOPBITS1 EVEN CL AUTOANSWER | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (SERIALPRINTPROCESS) TYPE 5 SUBTYPE 4 5530 PRINTERS (ATP6100) DEVTYPE 5 DEVSUBTYPE 6 DEVRSIZE 132 BAUD9600 CHAR7 STOPBITS1 EVEN CL AUTOANSWER (SERIALPRINTPROCESS) TYPE 5 SUBTYPE 6 November 1987 E-7
DEVICE DEFAULT VALUES 5540/5541 Printers | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5540/5541 PRINTERS (ATP6100) DEVTYPE 5 DEVSUBTYPE 32 DEVRSIZE 80 BAUD9600 CHAR7 STOPBITS1 EVEN CL AUTOANSWER ETXFLOW ETXFLOWCHAR %03 DELAYTIME 12000 XFERSIZE 40 DEFCR %15 DEFLF %12 (SERIALPRINTPROCESS) TYPE 5 SUBTYPE 32 5573 PRINTERS (ATP6100) DEVTYPE 5 DEVSUBTYPE 8 DEVRSIZE 132 BAUD 9600 CHAR 8 EVEN CL AUTOANSWER DEFCR %15 DEFLF %12 E-8 November 1987
DEVICE DEFAULT VALUES DTR-Type Printers DTR-TYPE PRINTERS (ATP6100) DEVTYPE 5 DEVSUBTYPE 32 DEVRSIZE 80 BAUD9600 CHAR7 STOPBITS1 EVEN EIA AUTOANSWER DELAYTIME 12000 XFERSIZE 40 DEFCR %15 DEFLF %12 | | | | | | | | | | | | | | | | | | (SERIALPRINTPROCESS) TYPE 5 SUBTYPE 32 November 1987 E-9
| | | | | | | | | | APPENDIX F | | 3681 MULTIFUNCTION CONTROLLER | | | | | | This appendix describes the 3681 implementation of ATP6100. | This implementation is compatible with ATP6100 and its two | protocol modules, CSSASYNC and CSSPRINT. The 3681 Multifunction | Controller has two asynchronous ports that connect to asyn| chronous subdevices--that is, terminals and printers. Each | port supports only one subdevice.
3681 MULTIFUNCTION CONTROLLER Printers Supported by the 3681 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | • 6402, CRT, 80-column, character, current loop, type (6,0), Rsize 80 • 6520, CRT, 80-column, multipage, RS-232C or current loop, type (6,2), Rsize 80 • 6524, CRT, 80-column, multipage, RS-232C or current loop with port for hard-copy output, type (6,2), Rsize 80 • 6526, CRT, 80-column, multipage, RS-232C or current loop with port for hard-cop
3681 MULTIFUNCTION CONTROLLER System Generation for the 3681 FLOW CONTROL SUPPORTED BY THE 3681 | | | The 3681 supports the following flow-control mechanisms for | subtype 2 and 4 terminals and serial printers (DTR-type printers) | that are not manufactured by Tandem.
3681 MULTIFUNCTION CONTROLLER Console Messages for the 3681 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CONSOLE MESSAGES FOR THE 3681 Console messages posted by CSM cannot be logged for the 3681 implementation because CSM is not defined for the 3681 implementation of ATP6100. In addition, console messages related to the download operation are not logged for 3681.
3681 MULTIFUNCTION CONTROLLER STATUS Command Limitation STATUS Command Limitation | | | | | | | | | | | Line attributes do not apply to the 3681 implementation. The DEBUG OPTION, CSM LDEV, or CLB FRAME SIZE fields in the STATUS LINE display are blank. In addition, the PROBE ERRORS field in the LIU level displays as blanks and so does the entire CLB level. If you specify the STATUS command with the SU object, the CSM LDEV field displays as blanks.
| | | | | | | | | | APPENDIX G | | DIP SWITCH SETTINGS FOR 5573 PRINTERS | | | | | | This appendix lists the possible dip-switch settings for 5573 | printers, which are supported by ATP6100/CSSPRINT and | SERIALPRINTPROCESS. Some of the switches have a corresponding | SETMODE operation; however, the SETMODE operation does not | override the dip-switch setting. The SETMODE operation must be | consistent with the switch setting; otherwise, the printer will | not function.
DIP SWITCH SETTINGS FOR 5573 PRINTERS Automatic Carriage Return Insertion | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AUTOMATIC CARRIAGE RETURN INSERTION Dip switch 4 determines whether the printer automatically inserts a carriage return (CR) after a line feed (LF) or form feed (FF). The possible dip-switch settings are as follows: auto insert switch 4 no yes closed open There is no corresponding SETMODE operation.
DIP SWITCH SETTINGS FOR 5573 PRINTERS Tandem Asynchronous Selection TANDEM ASYNCHRONOUS SELECTION Dip switch 7 determines whether the 5573 printer is operating in Tandem asynchronous mode. Depending on the printer, the asynchronous mode can use Tandem Asynchronous Protocol (TAP) or Transparent Tandem Asynchronous Protocol (T-TAP). For 5573 printers, T-TAP applies. The asynchronous mode must be set to ensure that the printer properly recognizes the escape sequences sent by the application program.