ASMB,Q,C HED 3000 SLAVE REQ. WATCHDOG * (C) HEWLETT-PACKARD CO. NAM QUEZ,17,2 91750-16156 REV.2013 800418 MEF: 3000 HSI LINK SPC 1 ****************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1980. ALL RIGHTS * * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * * * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT* * * THE PRIOR WRITTEN CONSENT OF THE HEWLETT-PACKARD COMPANY. * ****************************************************************** SPC 1 EXT EXEC,XLUEX,RNRQ,#LU3K,#QXCL,#QZRN,D$XS5 SUP SPC 1 UNL NEXT 5 LINES ARE FOR PRODUCTION ENGINEERING * NAME: QUEZ *SOURCE: 91750-18156 * RELOC: 91750-16156 * PGMR: DMT LST *************** QUEZ FOR HSI LINK ************** * * * SOURCE: 91750-18156 * * * * BINARY: 91750-16156 * * * * PRGMR: JIM HARTSELL * * * * DATE: FEBRUARY 17, 1976 * * * *----------------------------------------------* * * * MODIFIED BY DMT IN JUNE 1979 FOR XLUEX CALL * * * ************************************************ SPC 2 * QUEZ IS A "POLLING PROGRAM" FOR UNSOLICITED LINE BIDS * FROM THE HP3000. WHEN QUEX HAS NOTHING TO DO, QUEZ IS * SCHEDULED TO WAIT FOR THE SLC DRIVER TO RECEIVE AN "ENQ" * FROM THE 3000. QUEZ THEN WRITES A ZERO LENGTH * REQUEST TO QUEX'S I/O CLASS, TO FORCE QUEX TO READ THE BUFFER. * * QUEZ ALSO PERFORMS "LINE OPEN" CALL FOR QUEX SO THAT QUEX * NEED NOT LOCK UP A PARTITION DURING I/O SUSPEND. * QUEZ LDA D$XS5 CHECK FOR AND D2 MODEM LINK. SZA 0 = HSI, 2 = MODEM. JMP WRDVR ERROR--MODEM. * LDA #LU3K CONFIGURE XLUEX ARRAY. IOR BIT15 STA LU3K * LDA B,I GET SCHEDULE PARAM. SZA,RSS NORMAL "POLLING" ENTRY? JMP POLL YES. * * LINE OPEN SECTION. QUEX HAS SCHEDULED QUEZ WITH WAIT. * JSB XLUEX ISSUE LINE OPEN REQUEST. DEF *+6 (SETS # RETRIES = 7, DEF D2 LONG TIMEOUT = 60 SEC., DEF LU3K # ID SEQUENCES = 0) DEF D2 GO TO "SEND" STATE. DEF D3 DEF LOPWD (QUEX WILL CHECK FOR ERRORS) * JMP EXIT TERMINATE WHEN CALL COMPLETES. SPC 4 * * WRONG DRIVER FOR THIS QUEZ. REPORT THE ERROR. * WRDVR JSB EXEC REPORT ERROR DEF *+5 ON SYS CONSOLE. DEF D2 DEF D1 DEF WRMSG DEF D12 * JSB EXEC SUSPEND. DEF *+2 DEF D7 * JMP WRDVR STAY IN LOOP IN CASE OF "GO". * WRMSG ASC 12,>> QUEZ EXPECTS HSI LINK SPC 3 B EQU 1 DM1 DEC -1 D1 DEC 1 D2 DEC 2 D3 DEC 3 D6 DEC 6 D7 DEC 7 D12 DEC 12 BIT15 OCT 100000 GLLCK OCT 40002 CLS20 DEF 20,I LOPWD OCT 060200 SPRWD OCT 024500 LU3K OCT 0,0 2-WORD ARRAY FOR XLUEX. TEMP NOP TEMP1 NOP SKP * * SLAVE "POLL" SECTION. * POLL LDA #QZRN STA TEMP1 * JSB XLUEX ISSUE SPECIAL "READ ENQ". DEF *+6 DEF D1 DEF LU3K DEF TEMP1 RESOURCE NUMBER. DEF D0 DEF SPRWD * JSB RNRQ HANG ON ATTEMPT TO LOCK RN. DEF *+4 COMMUNICATION DRIVER WILL UNLOCK DEF GLLCK WHEN AN "ENQ" IS RECEIVED AND QUEZ DEF #QZRN WILL RESUME EXECUTION WITH RN LOCKED. DEF TEMP D0 NOP IGNORE ERROR RETURN. * JSB EXEC CLASS WRITE TO QUEX. DEF *+8 (NO REPLY EXPECTED) DEF CLS20 DEF D0 DEF D0 DUMMY BUFFER ADDRESS. DEF D0 ZERO-LENGTH RECORD. DEF D0 LENGTH PASSED TO QUEX. DEF D0 DEF #QXCL NOP IGNORE ERRORS. * EXIT JSB EXEC TERMINATE DEF *+4 SERIALLY DEF D6 REUSABLE. DEF D0 DEF DM1 * JMP QUEZ GO TO BEGINNING ON RESCHEDULE. SPC 1 * BSS 0 SIZE OF QUEZ * END QUEZ