TEAM ENVI^ ENVIMODE=1| ENVI^ FORCELOCAL=1
SET$ &NL=0d 0a
IFEX X.LOG, LOGS  X.LOG
//LISDiskVol hd RetNm
_SUB LISDiskVol
    ENVI^ FORCELOCAL=1
    SET &hd=%~1
    SET &retnm=%~2
    SET &retv=
    PART LIST PART %&hd%,&&prts
    FORX * %&prts%,&&prt,
    {   
        IFEX $%prt%<=0, EXIT -
        PART LIST PART %&hd%:%&prt%,&&vi
        MSTR &&tp,&&off,&&sz,&&drv=<2><4><5><8>%vi%
        SET &Drv2=
        IFEX $[ '%Drv%'='' & %tp%>0 ],
        {
            @TEAM FDRV *idlec *rsort  &&Drvs=*:| MSTR &Drv2=<1>%Drvs%| SET Drv=%&Drv2% 
            SHOW * %&hd%:%&prt%,%&Drv2%
        }
        FDRV *vol &&vol=%Drv%
        FIND $%&vol%<>, SET retv=%&retv%%NL%%&vol%
        FIND $%Drv2%<>, SUBJ *- %Drv2%
    }
    MSTR &retv=3,0,%&retv%
    ENVI-ret %&retnm%=%&retv%    
_END

---------------------
LISDiskVol 0  &&retv
MESS. %&retv%

