FTN4,L SUBROUTINE CLRSP(LU,ITMT),92067-1X557 REV.2001 791101 C***************************************************************** C* * C* (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS * C* RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * C* REPRODUCED OR TRANSLATED TO ANOTHER PROGRAMMING LANGUAGE * C* WITHOUT THE PRIOR WRITTEN CONSENT OF THE HEWLETT-PACKARD * C* COMPANY. * C* * C***************************************************************** C C NAME: CLRSP C SOURCE: 92067-18557 C RELOC: PART OF 92067-12003 C PGMR: J.S.W C DIMENSION ITMT(1),IXBUF(1) COMMON IXBUF,IHDR,ICMD C C C THIS SUBROUTINE CLEARS S BIT OF ALL THE SPARE TRACKS DEFINED C IN THE SUBCHHANEL TRACK MAP ENTRY ITMT (5 WORDS) C C COMPUTE TRACK SIZE, FIRST SPARE TRACK AND # OF SPARES C C ISTRK=ITMT(4) ISIZE=ITMT(1)*64 NSPAR=IAND(ITMT(5),377B) IF(NSPAR.EQ.0) RETURN C C GO THRU EACH TRACK IN THE SPARE POOL TO SEE IF S BIT IS SET C IF YES CLEAR THE S BIT AND PRESERVE THE D BIT C DO 50 I=1,NSPAR ISEC=0 CALL MXGTA(LU,IDVID,ISTRK,ISEC,ICYL,IHD,ISEC,ITMT) C C D WRITE(1,9999) NSPAR,ISTRK,ICYL,IHD,ISEC,IDVID D9999 FORMAT("#SPAR,STRK,ICYL,HD,SEC",5I7,@8) MSK=0 D WRITE(1,5555) LU,IDVID,MSK,IER CALL XFMSK(LU,IDVID,MSK,IER) D WRITE(1,5555) LU,IDVID,MSK,IER D5555 FORMAT("LU,DVID,MSK,IER",4@8) CALL XSEEK(LU,IDVID,ICYL,IHD,ISEC,IS1,IS2,IER) C D WRITE(1,6666) IDVID,IS1,IS2,IER D6666 FORMAT("DVID,IS1,IS2,IER",4@7) C NOW DO A READ FULL SECTOR TO SEE IF S BIT SET C CALL XRDFS(LU,IDVID,IXBUF,128,IS1,IS2,IER) D WRITE(1,7777) IXBUF(19) D7777 FORMAT("BUF19=",@7) IF(IAND(IXBUF(19),100000B).EQ.0) GO TO 50 IDBIT=IAND(IXBUF(19),20000B) CALL XFMSK(LU,IDVID,MSK,IER) CALL XSEEK(LU,IDVID,ICYL,IHD,ISEC,IS1,IS2,IER) D WRITE(1,9999) NSPAR,ISTRK,ICYL,IHD CALL XINIT(LU,IDVID,IXBUF,ISIZE,IDBIT,IS1,IS2,IER) 50 ISTRK=ISTRK+1 RETURN END END$