ASMB,R,L NAM DSCHD,7 09580-16126 REV. A 770315 *------------------------------------------------------------------- * * RELOC. 09580-16126 * SOURCE 09580-18126 * * C. LEATH 01/20/77 REV. A * * HP 92425A TEST SYSTEM SOFTWARE IS THE PROPRIETARY * MATERIAL OF THE HEWLETT-PACKARD COMPANY. USE AND * DISCLOSURE THEREOF ARE RESTRICTED BY WRITTEN AGREEMENT. * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1977. * 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. * *------------------------------------------------------------------- * THIS IS A UTILITY ROUTINE WHICH ALLOWS A DEVICE SUB- * ROUTINE TO SCHEDULE A SPECIAL INTERRUPT PROGRAM FROM * FORTRAN OR BASIC. THESE ROUTINES ARE TYPICALLY THOSE * THAT MUST RESPOND IN LIEU OF AN UNEXPECTED INTERRUPT * FROM AN INSTRUMENT (E.G. POWER SUPPLY THAT CURRENT LIMITS) * THE DRIVER (DVM72) WILL DETERMINE WHAT I/O SLOT INTERRUPTED * AND IT IS UP TO THE INTERRUPT ROUTINE TO TAKE THE NECESSARY * ACTION. * * CALLING SEQUENCE IN FORTRAN: * * CALL DSCHD(LU,3,IPROG) * * WHERE: LU = LOGICAL UNIT NUMBER OF INSTRUMENT * 3 = CONTROL REQUEST CODE * IPROG = BUFFER ADDRESS OF A FIVE CHARACTER PROGRAM * NAME. IF NAME IS LESS THAN FIVE CHARACTERS * SUBSTITUTE BLANKS FOR MISSING CHARACTERS. * E.G. * DIMENSION IPROG(4) * DATA IPROG/5, 2HIN, 2HTU,2HP / * * NOTE: FIRST WORD OF BUFFER CONTAINS THE NUMBER OF CHARACTERS * AND THIS BUFFER MUST RESIDE IN A NON-SWAPPABLE AREA IN THE SYSTEM * MEMORY MAP. ********************************************************************* ENT DSCHD EXT .ENTR EXT EXEC * LU NOP COCDE NOP IPROG NOP DSCHD NOP JSB .ENTR DEF LU LDA LU,I LOGICAL UNIT # IOR .300 FORM CONWRD STA ICNWD ISZ IPROG JSB EXEC DEF RTN DEF ICODE DEF ICNWD DEF IPROG PROGRAM NAME ADDRESS RTN JMP DSCHD,I * .300 OCT 300 ICNWD NOP ICODE DEC 3 END DSCHD