Abstract:
The modem of this invention is capable of direct connection to a communication Host associated with a mainframe computer which uses a bisynchronous (bisync) protocol so that the Host believes a valid terminal is continuously connected regardless of whether the modem is online or offline. This permits communications to be established with the mainframe over the public switched telephone network.

Description:
BACKGROUND OF THE INVENTION 
     This invention is directed to dial-up modems which communicate over the public switched telephone network and more specifically to such a modem which permits direct connection with a dedicated Host line which uses bisynchronous 3270 communication protocol without requiring system operator assistance. 
     Older computer systems used a bisynchronous (bisync) communications protocol which assumed the use of dedicated lines and compatible bisync terminals. With the current availability of relatively low cost modems, it is desirable to be able to communicate over the public switched telephone network with such computers. Control units (CU), such as an IBM 3704/3705 or NCR Comten, are used to handle communications for these computer systems. As used herein, Host refers to such CU&#39;s and not the mainframe computer itself. 
     Because the Host periodically interrogates or polls the terminal expected to be active on a dedicated communication line and expects certain acknowledgements, a conventional modem connected to such a line must always be connected with a bisync terminal or terminal emulator in order to satisfy the required protocol. Thus requires the use of a dedicated line between the modem at the Host and the modem at the terminal, and constant communication with the terminal so that it can respond to the polls. 
     To establish communication between the modem at the Host and a modem at a terminal emulator over a dial-up telephone line, a system operator at the Host site had to be alerted by the remote user and cause the Host to reactivate communications on the dedicated line connected with the modem. The reactivation was needed since the Host would have previously found the expected terminal to be unavailable due to no response to polls and would have inactivated communications. The need for system operator assistance in order to establish communications over a dial-up telephone line represents a substantial impediment. 
     One approach to this problem is to use a special purpose microprocessor controlled device as an interface between the Host and the modem, such as a LineMaster made by Microframe, Inc. Its purpose is to satisfy the Host if a remote terminal is not active and to be transparent when a remote terminal is active. Although this approach does allow dial-up telephone line communications, it represents: a substantial cost as compared to the cost of the modem, an increased possiblilty of a communication link failure, and an inability to take advantage of controls available internally in the modem. 
     SUMMARY OF THE INVENTION 
     It is an object of this invention to provide a modem which can be directly connected to a bisync Host and support bisync protocol in the absence of communications with a bisync terminal. 
     A modem according to the present invention must respond like a bisync terminal when offline, i.e. not in communication with another modem (on-hook). When the modem is online, the modem does not reply to Host polls except for a general poll if the remote terminal does not send a response within a predetermined time. The remote terminal or terminal emulator is expected to provide bisync support when the Host modem is online. Failure of the remote terminal to provide a valid response to a general poll for a predetermined number of polls will cause the modem to return to the offline state. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a flow chart showing general modem operation and the special bisync line support. 
     FIG. 2 is a functional block diagram illustrating a modem according to the present invention. 
     FIGS. 3A and 3B comprise a flow chart illustrating the bisync line support operation. 
    
    
     DETAILED DESCRIPTION 
     The flow diagram in FIG. 1 illustrates the general operation of a modem including bisync support accoring to the present invention. After the start 10, modem power-up and initialization 12 occurs. Control then passes to modem control and protocol function 14 which controls the transmitter (modulator) and receiver (demodulator) function 16. Following the data sent or received by function 16, control passes to the bisync support function 20 if the bisync support is enabled s determined by decision branch 18. If bisync support function 20 is not enabled, control reverts back to standard modem control and protocol function 14. After the bisync function is complete, the modem control and protocol function 14 is given control. FIG. 1 shows the bisync support function 20 incorporated into the modem operation. 
     The functional block diagram of a modem according to this invention shown in FIG. 2 illustrates the bisync support function 20 in relationship to the other elements. Since the operation of the other elements will be known to those skilled in the art, only a brief description of the other elements follows. Commonly known and used abbreviations are used to label certain paths and signals. An RS232 interface 22 facilitates communications between the Data Terminal Equipment (DTE) or Host and the modem. A microprocessor system 24 supports the bisync function 20, modem control and protocol function 14, and the received signal demodulator 26. The modem timing and processor support function 28 controls the front panel LED&#39;s and decodes the switch information represented by block 30. The transmit signal generation function 32 receives the transmit data (TXD) and generates the TX signal which is coupled to the telephone line interface 34. The RX signal from element 34 is filtered and A/D converted by function 36. Function 28 also provides clock and timing information to filler function 36 and transmit function 32. 
     In order to be compatible with bisync protocol, the proper reply to Host message must be sent. Thus, it is necessary to understand the different types of polls and the corresponding valid replies. The following table shows Host bisync messages and modem replies. The modem must be ready to send a valid reply in the offline state as indicated in the table. 
     
         __________________________________________________________________________Host Message  Modem Offline Response__________________________________________________________________________Eot           None37RVI (reverse interupt)Dle @         Eot10  7C        37ACK0Dle --        Eot10  70        37ACK1Dle /         Eot10  61        373270 Cu Selection--  -- Sp Sp      Enq         Dle            @60  60 40 40      2D 10 7C3270 General PollSp  Sp Sp Sp      Enq         Eot40  40 7F 7F      2D 373270 Specific Poll         3270 StatusSp  Sp A  A Enq         Soh            % R Stx                   Sp                     A Sp                         &amp; Etx                              BCC40  40 C1 C1      2D 01 6C              D9                02 40                     C1                       40                         50                           03 xx                                xx__________________________________________________________________________ 
    
     In the above table values in hexadecimal are given below the mnemonic or printable character. The underlined values may vary depending on CU and device addresses sent by the Host. In the modem response, only bytes 5,6,10, and 11 in the reply to 3270 Specific Poll varies. Bytes 5 and 6 correspond to bytes 1 and 3 in the poll; bytes 10 and 3 in the poll; bytes 10 and 11 (xx) consist of a two byte CRC-16 calculation sent low byte first. Preceding sync characters and trailing pad characters are not shown in the table. It is assumed that the Host will raise RTS (request to send) before sending a message. 
     FIGS. 3A and 3B are a detailed flow chart illustrating the bisync support function 20. This bisync support routine is suitable for use as part of a main program used by a modem to control is functions. Upon the entry or start 40, a decision block 42 determine if the modem is online or offline. It offline, another decision block 44 determines if a Host poll has been received. If yes, the input message function 46 receives and stores the poll; if no, control exits the bisync support 20 by exit 62 since no reply to the Host is required. 
     In decision block 48 a determination is made if the message from the Host is a CU selection poll. In bisync protocol a CU selection message is sent before a 3270 specific poll. If the Host message is a CU selection poll, the modem ring detector is disabled by ring disable function 50 to prevent establishing communication with a calling modem before all necessaary Host communications are concluded. It is evident from the table that a specific poll, which would follow a CU selection poll, requires a substantial reply including the calculation of a two byte BCC (block check character). If the message is not a CU selection poll, decision block 52 determines if the message is a general poll(GP). If the message is a GP, then function 54 enables the ring detector thereby permitting communications to be established with a calling modem. A GP is a normal, often encountered, poll which does not require a complicated reply. If the message is not a GP, then function 56 determines the type of Host message received. Upon reaching function 58 the appropriate reply in accordance with those shown in the table has been determined and loaded. The loaded reply is sent by function 60 and control exits this routine at exit 62 to the main modem program. 
     Referring to FIG. 3B, a determination that the modem is online by block 42 diverts control to the other main path in the bisync support routine. The Host activity timeout decision block 64 determines if there has been no Host messages for a predetermined time interval, such as 20 seconds. If the decision is yes, which indicates a Host problem or malfunction, function 66 returns the modem to the offline state thereby causing the telephone line connection to be dropped. This is a failsafe precaution to prevent the modem to modem communication link from being maintained but with no data being sent. Control passes to the modem program via exit 68. 
     If the Host activity timer had not timed out, then block 70 determines if a Host message has been received. If a Host message has not been received, then control passes via exit 68. Unless a Host bisync message has been received there is no need to send a reply. If a Host message is received then function 72 resets the Host activity timer and stores the Host message. If the message is determined by block 74 not to be a GP, then an exit occurs. The remote terminal or terminal emulator in communication via modem is responsible for replying to the Host bisync messages when the modem is online. 
     The remainder of the online branch of the bisync support routine deals with the transition from online to offline without violating the bisync protocol. If the Host message is a GP as determined by block 74, then a determination is made by block 76 if a valid remote terminal response has been received. If yes, then function 78 resets a counter that counts the number of replies to a GP that the bisync routine had to make because the remote terminal did not send a valid reply. As will be explained in reference to the other elements in FIG. 3B, a failure to send a valid reply to a GP by the remote terminal for four GP&#39;s results in the modem going offline. This failure is used to sense that the terminal has hung-up or otherwise discontinued communications. 
     If a valid reply to a GP has not been received from the terminal as determined by block 76, a decision is made by block 80 if the terminal has sent a valid GP reply within a predetermined time interval, such as 1-2 seconds. If no, control passes back to the input of block 76 after a short delay to determine if a valid reply has now been received. This loop will continue until either a valid reply is received or the timer times out. Upon a time out, function 82 causes a valid GP reply to be sent by the bisync routing of the modem. Block 84 counts if four GP replies have been sent by the bisync routine. If yes, function 66 returns the modem to offline. If four GP replies have not been sent by the bisync routine, then function 86 resets the GP response timer and control passes to the modem program via exit 68. Waiting for four consecutive GP reply omissions by the terminal ensures that the terminal is no longer online or has malfunctioned. In either case, the Host modem goes offline and assumes responsibility for all required bisync replies. Thus, the online to offline transition is made without violating bisync protocol. This keeps the dedicated line between the Host (CU) and modem active. 
     The purpose of the modem according to the present invention is to make bisync Host believe that it is connected to a dedicated 4-wire bisync terminal at all times. Thus is assumes complete responsibility for bisync message replies when offline. When online, it only monitors replies to GP&#39;s by the terminal and supplies replies not sent by the terminal in order to not let the line drop when the terminal disconnects. Since the Host believes that the line is always active, no system operator assistance is needed in order to establish communication via dial-up line modem with the mainframe computer. 
     Although an embodiment of the present invention has been shown in the drawings and described above, the scope of the invention is defined in the claims appended hereto.