*COMDECK ASYSPTAR 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         ASYNC BLOCK MODE TIP, AUTO RECOGNITION STATE PROGRAMS       * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    3
          NAM    ASYARSP
          NLS 
*CALL STPMACROS 
*CALL MUXMACROS 
          LST 
*CALL ASYINCON
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         ASYNC BLOCK MODE TIP, AUTO RECOGNITION STATE PROGRAM TABLE  * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    3
          STATPN ASPTAR 
          SPC    2
          STATPT ASPTAR,ARPERR         PARITY ERROR OR DATA OVERRUN 
          STATPT ASPTAR,ARDCDN,ARTOSS  DATA CARRIER DETECT DROPPED
          STATPT ASPTAR,ARSWL          SEND WORKLIST, TOSS CHARACTERS 
          STATPT ASPTAR,ARTOSS         TOSS OTHER INCOMING CHARACTERS 
          STATPT ASPTAR,SPREC1         SPEED RECOGNITION FIRST CHAR 
          STATPT ASPTAR,CSASCI         ASCII CODE SET RECOGNITION 
          STATPT ASPTAR,CS2741         DETERMINE 2741 CODE SET
          STATPT ASPTAR,SRC2A          SR 2ND CHAR 110
          STATPT ASPTAR,SRC2B          SR 2ND CHAR 110/134.5/150
          STATPT ASPTAR,SRC2C          SR 2ND CHAR 134.5/150
          STATPT ASPTAR,SRC3 -         SR 3RD CHAR 134.5/150
          STATPT ASPTAR,CSASWC         WAIT FOR CR AFTER ASCII AR 
          STATPT ASPTAR,CS27WC         WAIT FOR CONTROL-C AFTER 2741 AR 
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         A R P E R R   -   PARITY ERROR OR DTO RECOGNIZED            * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR ARPERR 
          SPC    2
          JUMP   CURRENT     -         JUMP TO CURRENT STATE (IGNORE) 
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         A R S W L     -   SEND WORKLIST WITH SAVED WORKCODE         * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR ARSWL
          SPC    2
          BLDWL  ,,,AARWK    -         SEND SAVED WORKCODE
          STATE  ARTOSS,EXIT -         IGNORE REST OF CHARACTERS
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         T O S S       -   IGNORE FURTHER INCOMING CHARACTERS        * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR ARTOSS 
          SPC    2
          NOPR   EXIT        -         IGNORE CHARACTER 
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         S P R E C 1   -   SPEED RECOGNITION FIRST CHARACTER         * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR SPREC1 
          SPC    2
* 
* 
* * * *   TEST FOR FIRST CHARACTER OF 110 BPS 
* 
* 
          CHARNE $80,SR102
          STATE  SRC2A,EXIT  -         TEST 2ND CHAR FOR 110
SR102     CHARNE $C0,SR110
          STATE  SRC2A,EXIT  -         TEST 2ND CHAR FOR 110
* 
* 
*         TEST FOR FIRST CHARACTER OF 110 / 134.5 / 150 BPS (LOW) 
*                                                   600 BPS (HIGH)
* 
* 
SR110     CHARNE $E0,SR112
          STATE  SRC2B,EXIT  -         TEST 2ND CHAR FOR 110/134.5/150
SR112     CHARNE $F0,SR130
          STATE  SRC2B,EXIT  -         TEST 2ND CHAR FOR 110/134.5/150
* 
* 
*         TEST FOR 600 BPS (2400 BPS HIGH)
* 
* 
SR130     CHARNE $1B,SR132
          SKIP   SR139       -         600 (2400) BPS RECOGNIZED
SR132     CHARNE $3B,SR140
SR139     TIBSWC A2W600      -         600 (2400) BPS RECOGNIZED
          JUMP   ARSWL
* 
* 
*         TEST FOR 1200 BPS (4800 BPS HIGH) 
* 
* 
SR140     CHARNE $E2,SR142
          SKIP   SR149       -         1200 (4800) BPS RECOGNIZED 
SR142     CHARNE $F2,SR150
SR149     TIBSWC A2W1200     -         1200 (4800) BPS RECOGNIZED 
          JUMP   ARSWL
* 
* 
*         TEST FOR 2400 BPS (9600 BPS HIGH) 
* 
* 
SR150     CHARNE $FF,SR160
          TIBSWC A2W2400     -         2400 (9600) BPS RECOGNIZED 
          JUMP   ARSWL
* 
* 
*         TEST FOR 300 BPS (1200 BPS HIGH)
* 
* 
SR160     XLATE  $2D         -         MASK OUT DUBIOUS BITS
          CHARNE $0C,SR190
          STATE  SRC2C,EXIT  -         TEST 2ND CHAR FOR Y/N 2741 
* 
* 
* * * *   AUTO SPEED RECOGNITION FAILED 
* 
* 
SR190     TIBSWC A2WFAILAR   -         SEND AR FAILED WORKCODE
          JUMP   ARSWL
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         S R C 2 A     -   SPEED RECOGNITION 2ND CHAR 110 BPS        * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR SRC2A
          SPC    2
SR200     XLATE  $BF         -         MASK OUT DUBIOUS BIT 
          CHARNE $80,SR210
          TIBSWC A2W110      -         110 BPS RECOGNIZED 
          JUMP   ARSWL
* 
* 
* * * *   AUTO RECOGNITION FAILED 
* 
* 
SR210     SKIP   SR190
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         S R C 2 B     -   SPEED RECOGNITION 2ND CHAR 110/134.5/150  * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR SRC2B
          SPC    2
* 
* 
* * * *   TEST FOR SECOND CHARACTER OF 134.5 OR 150 BPS 
* 
* 
          XLATE  $EF         -         MASK OUT DUBIOUS BIT 
          CHARNE $E0,SR232
          STATE  SRC3,EXIT   -         TEST 3RD CHAR FOR 134.5/150
* 
* 
* * * *   RECOGNITION OF 134.5/150 FAILED, TRY FOR 110 BPS
* 
* 
SR232     SKIP   SR200
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         S R C 2 C     -   SPEED RECOGNITION 2ND CHAR 300 (2741)     * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR SRC2C
          SPC    2
* 
* 
* * * *   TEST FOR 300 BPS IBM 2741 TERMINAL
* 
* 
          XLATE  $7F         -         MASK OUT DUBIOUS BIT 
          CHARNE $7C,SR252
          TIBSWC A2W301      -         300 BPS 2741 RECOGNIZED
          JUMP   ARSWL
* 
* 
* * * *   IT IS NOT A 300 BPS IBM 2741, ASSUME 300 BPS ASCII TERMINAL 
* 
* 
SR252     TIBSWC A2W300      -         300 (1200) BPS RECOGNIZED
          JUMP   ARSWL
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         S R C 3       -   SPEED RECOGNITION 3ND CHAR 134.5/150      * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR SRC3 
          SPC    2
* 
* 
* * * *   TEST FOR 134.5 BPS
* 
* 
          CHARNE $E0,SR308
          TIBSWC A2W134      -         134.5 IBM 2741 RECOGNIZED
          JUMP   ARSWL
* 
* 
* * * *   TEST FOR 134.5 FAILED, ASSUME 150 BPS ASCII TERMINAL
* 
* 
SR308     TIBSWC A2W150      -         150 (600) BPS RECOGNIZED 
          JUMP   ARSWL
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         C S A S C I   -   CODESET RECOGNITION FOR ASCII TERMINALS   * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR CSASCI 
          SPC    2
          TIBSWC A2WASCII    -         PRESET FOR ASCII CODE SET
* 
* 
* * * *   TEST FOR ASCII CODE SET 
* 
* 
          CHARNE ACCR,CSA02 
          JUMP   ARSWL       -         ASCII CODE SET RECOGNIZED
CSA02     CHARNE $29,CSA10
          STATE  CSASWC,EXIT -         ASCII CODE SET, WAIT FOR CR
* 
* 
* * * *   TEST FOR TYPEWRITER PAIRED APL CODE SET 
* 
* 
CSA10     CHARNE $22,CSA20
          TIBSWC A2WTPAPL    -         TYPEWRITER PAIRED APL RECOGNIZED 
          STATE  CSASWC,EXIT -         WAIT FOR CR
* 
* 
* * * *   TEST FOR BIT PAIRED APL CODE SET
* 
* 
CSA20     CHARNE $2A,CSA30
          TIBSWC A2WBPAPL    -         BIT PAIRED APL RECOGNIZED
          STATE  CSASWC,EXIT -         WAIT FOR CR
* 
* 
* * * *   ASCII CODE SET RECOGNITION FAILED, TRY AGAIN
* 
* 
CSA30     NOPR   EXIT 
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         C S A S W C   -   WAIT FOR CR AFTER ASCII CODESET AR        * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR CSASWC 
          SPC    2
          CHARNE ACCR,CSAS02
          JUMP   ARSWL       -         GO SEND WORKLIST NOW 
CSAS02    JUMP   CSASCI      -         NOT A CR, TRY CODE SET AGAIN 
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         C S 2 7 4 1   -   CODESET RECOGNITION FOR 2741 TERMINAL     * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR CS2741 
          SPC    2
* 
* 
* * * *   TEST FOR CORRESPONDENCE CODE SET
* 
* 
          CHARNE $24,CS210
          TIBSWC A2WCORR     -         CORRESPONDENCE RECOGNIZED
          STATE  CS27WC,EXIT -         WAIT FOR CONTROL-C 
* 
* 
* * * *   TEST FOR CORRESPONDENCE APL CODE SET
* 
* 
CS210     CHARNE $09,CS220
          TIBSWC A2WCAPL     -         CORRESPONDENCE APL RECOGNIZED
          STATE  CS27WC,EXIT -         WAIT FOR CONTROL-C 
* 
* 
* * * *   TEST FOR EXTERNAL BCD CODE SET
* 
* 
CS220     CHARNE $14,CS230
          TIBSWC A2WEBCD     -         EXTERNAL BCD RECOGNIZED
          STATE  CS27WC,EXIT -         WAIT FOR CONTROL-C 
* 
* 
* * * *   TEST FOR EXTERNAL BCD APL CODE SET
* 
* 
CS230     CHARNE $34,CS240
          TIBSWC A2WEAPL     -         EXTERNAL BCD APL RECOGNIZED
          STATE  CS27WC,EXIT -         WAIT FOR CONTROL-C 
* 
* 
* * * *   ASCII CODE SET RECOGNITION FAILED, TRY AGAIN
* 
* 
CS240     NOPR   EXIT 
          EJT 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
*                                                                     * 
*         C S 2 7 W C   -   WAIT FOR CONTROL-C AFTER 2741 AR          * 
*                                                                     * 
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
          SPC    1
          STATPR CS27WC 
          SPC    2
          CHARNE C2CTRC,CS2702
          JUMP   ARSWL       -         CONTROL-C, SEND WORKLIST NOW 
CS2702    CHARNE C2CR,CS2704 -
          NOPR   EXIT        -         IGNORE CR
CS2704    CHARNE C2LOWER,CS2706 
          NOPR   EXIT        -         IGNORE LOWER CASE SHIFT
CS2706    JUMP   CS2741      -         NO CR / CONTROL-C, RETRY AR
          EJT 
          END 
