ASMB,C,Q  
      NAM DALOC 09580-16107 REV.2001 791017 
*-------------------------------------------------------------------
* 
*      RELOC.       09580-16107 
*      SOURCE       09580-18107 
*      ERS        A-09580-16107-1 
* 
*      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 PROGRAM IS RESPONSIBLE FOR DEALLOCATING
*  CLASS BUFFERS.  IT OPERATES BY FIRST RETRIEVING
*  THE STATION NUMBER FROM THE CALLING SEQUENCE OR
*  MAKING A CALL TO ISN.  THE CLASS NUMBER OF THE FIRST 
*  BUFFER IN SAM ATTACHED TO THE AFOREMENTIONED STATION 
*  IS LOCATED IN THE CORE RESIDENT TABLE SVCLN.  AFTER
*  RETRIEVING THIS NUMBER THE CLASS NUMBERS ASSOCIATED
*  WITH THE REST OF THE BUFFERS IN SAM ARE RETRIEVED
*  USING CLASS I/O GET REQUESTS.
* 
      EXT RMPAR 
      EXT SVCLN,IPUT
      EXT ERROR 
      EXT ISN 
      EXT EXEC
      ENT DALOC 
      EXT DRTXX 
* 
* 
DALOC NOP 
      JSB RMPAR     RETRIEVE STATION #
      DEF *+2 
      DEF IPRAM 
      LDA IPRAM     SEE IF IT IS = 0
      SZA 
      JMP CONT      NO
      JSB ISN       YES IT IS SO GET # FROM ISN 
      DEF *+2 
      DEF DUMMY 
      STA IPRAM 
      SZA,RSS       MAKE SURE STATION EXISTS
      JMP ERR1      NO, WELL TELL THE WORLD 
CONT  LDA DRT,I     INDEX INTO DRTXX TABLE TO RETRIEVE
      ADA IPRAM     THE ACTUAL LU NUMBER
      LDA A,I 
      AND .7
      SZA,RSS       NONZERO?
      JMP ERR1
      STA IPRAM 
      LDB SV,I      EVERYTHING IS COOL (OK) 
      INB 
      ADB IPRAM     COMPUTE INDEX INTO SVCLN
      STB ADDR      ADDR = ADDR[SVCLN] + IPRAM
      LDA B,I       GET CLASS NUMBER
      STA IFCLS 
      SZA,RSS       MAKE SURE CLASS # IS .NE. 0 
      JMP FINI      ALL DONE IF NOTHING TO DEALLOCATE.
LOOP  AND MASK      MASK OUT BITS 13 AND 14 TO INDICATE 
      STA ICL       TO THE SYSTEM THAT WE WANT TO RELEASE 
      JSB EXEC      THE BUFFER AND THE CLASS NUMBER 
      DEF *+5       CLASS I/O GET 
      DEF GET 
      DEF ICL 
      DEF IBUF
      DEF .2        RETRIEVE ONLY THE FIRST TWO WORDS 
      LDA IBUF      CHECK TO SEE IF WE'RE DONE
      CPA IFCLS 
      JMP FINI
      LDA IBUF      GO AGAIN
      JMP LOOP
      SKP 
* 
* 
FINI  CLA           NOW ZERO OUT SVCLN LOCATION FOR STATION 
      STA IFCLS 
      JSB IPUT
      DEF RTN 
      DEF ADDR
      DEF IFCLS 
RTN   JSB EXEC      NOW INDUCE SELF SLEEP 
      DEF *+2 
      DEF .6
* 
      SPC 2 
ERR1  JSB ERROR 
      DEF *+3 
      DEF IERR
      DEF IERMS 
      JMP RTN 
      SKP 
* 
* CONSTANTS AND TEMPORARY STORAGE 
* 
IBADR DEF IBUF+1
IPRAM BSS 5 
DRT   DEF DRTXX 
SV    DEF SVCLN 
ADDR  NOP 
IFCLS NOP 
IBUF  BSS 2 
MASK  OCT 17777 
.7    OCT 7 
DUMMY NOP 
A     EQU 0 
B     EQU 1 
ICL   NOP 
GET   DEC 21
.2    OCT 2 
.6    OCT 6 
IERR  DEC 1 
IERMS DEC 5 
      ASC 3,DALC
* 
      END DALOC 
                                                                                                                                                                