Date: Sun, 9 Jan 2000 15:34:31 +0500 (MVT) From: Prashant TR To: djgpp AT delorie DOT com Subject: Re: biosdisk & int 13 extensions In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com Errors-To: dj-admin AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Sat, 8 Jan 2000, Angelene and Klaus Thane wrote: > Inp.: > AH = 48h > DL = drive (80h-FFh) > DS:SI -> buffer for drive parameters (see #0183) > Return: CF clear if successful > AH = 00h > DS:SI buffer filled > CF set on error > AH = error code (see #0144) You can't use this with biosdisk, since the normal buffer for other calls of INT 13h use ES:DI as the pointer. So, you'll have to use __dpmi_int directly. The code will look something like this. __dpmi_regs regs; regs.h.ah = 0; regs.h.dl = driveno; regs.x.ds = __tb/0x10; regs.x.si = __tb%0x10; __dpmi_int(0x13, ®s); if(regs.x.flags & 1) { printf("Failed\n"); } else { // Your parameter details are in the transfer buffer. } Actually, I remember this as being some other function (not 48h). Anyway, ... Prashant