ASMB,R,Q,C
*     NAME:   CDPX
*     SOURCE: 92070-18246 
*     RELOC:  92070-1X246 
*     PGMR:   HLC 
* 
* 
*  **************************************************************** 
*  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979.  ALL RIGHTS      * 
*  * RESERVED.  NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED,       * 
*  * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT * 
*  * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY.        * 
*  **************************************************************** 
* 
* 
      NAM CDPX,6  92070-1X246  REV.1941  790406 
      ENT CDPX
      EXT $LIBR,$LIBX,$CDIR 
* 
A     EQU 0 
B     EQU 1 
* 
* 
*     CALLING SEQUENCE: 
*       CALL CDPX(LU) 
*           OR
*       OLD=CDPX(LU)
* 
*     WHERE 'LU' IS THE DESIRED FIRST WORD OF THE CARTRIDGE DIRECTORY,
*       AND 'OLD' IS THE PREVIOUS CONTENTS (NOT MODIFIED IF 'LU'=0
*       OR IF 'OLD' IS GREATER THAN ZERO).
* 
* 
CDPX  NOP           PATCH THE CARTRIDGE DIRECTORY 
      JSB $LIBR     TURN OFF MEMORY PROTECT 
      NOP 
      LDA $CDIR     OLD LU OF SYSTEM DISC 
      ISZ CDPX      SKIP OVER 'DEF RTN' 
      LDB CDPX,I    NEW LU OF SYSTEM DISC 
      LDB B,I 
      ISZ CDPX      BUMP RETURN ADDRESS 
      SZB,RSS 
      JMP OUT       ZERO, DO NOT MODIFY DIRECTORY 
      SSB,RSS 
      CMB,INB       MAKE IT NEGATIVE
      SZA 
      SSA 
      STB $CDIR     OLD LU WAS ZERO OR MINUS
OUT   JSB $LIBX 
      DEF CDPX
      END 
                                    