Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: notesnews 0.1 (unido 12/05/84); site unido.UUCP Path: utzoo!watmath!clyde!burl!ulysses!gamma!epsilon!zeta!sabre!petrus!bellcore!decvax!genrad!panda!talcott!harvard!seismo!mcvax!unido!uh From: uh@unido.UUCP Newsgroups: net.micro.pc Subject: Re: MS-DOS function 4Eh problem! Message-ID: <10000016@unido.UUCP> Date: Sun, 25-Aug-85 15:13:00 EDT Article-I.D.: unido.10000016 Posted: Sun Aug 25 15:13:00 1985 Date-Received: Wed, 28-Aug-85 02:23:17 EDT References: <1106@pucc-i.UUCP> Sender: notes@unido.UUCP Lines: 66 Nf-ID: #R:pucc-i:-110600:unido:10000016:000:1753 Nf-From: unido!uh Aug 25 17:13:00 1985 I always take this includefile for that task: --------------- -Cut here ------------------------- (**************************************) (* *) (* INCLUDEFILE: GETVOL.INC *) (* *) (* VERSION : 1.03 *) (* *) (* RELEASED : 17-07-1985 *) (* *) (* AUTHOR : UWE HOCH *) (* *) (**************************************) TYPE VOL_NAME_TYPE = STRING[11]; (**************************************) PROCEDURE GET_VOL ( DISK : INTEGER; VAR VOL_NAME : VOL_NAME_TYPE; VAR ERROR : BOOLEAN); VAR I : BYTE; VOL_FCB : ARRAY [-7..36] OF CHAR; VOL_DTA : ARRAY [0..127] OF CHAR; REG : RECORD AX,BX,CX,DX,BP,SI,DI,DS,ES,FLAGS : INTEGER; END; BEGIN ERROR := FALSE; REG.AX := $1A00; REG.DS := SEG(VOL_DTA); REG.DX := OFS(VOL_DTA); MSDOS(REG); VOL_FCB[-7] := #$FF; VOL_FCB[-1] := #$08; VOL_FCB[ 0] := CHR(SUCC(DISK)); VOL_NAME := '???????????'; MOVE(VOL_NAME[1],VOL_FCB[1],11); REG.AX := $1100; REG.DS := SEG(VOL_FCB); REG.DX := OFS(VOL_FCB); MSDOS(REG); IF LO(REG.AX) = $FF THEN ERROR := TRUE ELSE MOVE(VOL_DTA[8],VOL_NAME[1],11); I := 11; WHILE I > 0 DO BEGIN IF VOL_NAME[I] <> ' ' THEN BEGIN VOL_NAME[0] := CHR(I); I := 0; END ELSE I := PRED(I); END; END; ----------------- Cut here ------------------- Uwe Hoch Computer Science Department, University of Dortmund 4600 Dortmund 50, P.O. Box 500500, W.-Germany E-mail address UUCP: ...ihnp4!hpfcla!hpbbn!unido!uh