From: ps AT ocisgi7 DOT unizh DOT ch (Serge Pachkovsky) Subject: Re: _bios_disk() inefficiency Newsgroups: comp.os.msdos.djgpp References: NNTP-Posting-Host: ocisgi7.unizh.ch Message-ID: <35029541.0@rzunews1.unizh.ch> Date: 8 Mar 98 12:55:29 GMT Lines: 26 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Eli Zaretskii (eliz AT is DOT elta DOT co DOT il) wrote: : advice. Theoretically, you could make a DJGPP version 1000 times : slower if you, for example, called the BIOS for every byte you needed : to read. Calling BIOS requires a mode switch which is slow, so you : should make as few calls as you can. In particular, reading more of : the disk at a time and then working on data in memory should speed : your program a lot. In DJGPP, you could even read an entire diskette : into memory in one swell whoop. No Eli, you can't - most floppy disk BIOSes do not support reading more that one cylinder's worth of data in a single call. Even if your particular BIOS can do it (something you shouldn't rely upon), 8-bit DMA channel used by floppy drives won't allow you to transfer more than 64Kb worth of data without re-initialization. Even if your BIOS can miraculously circumvent this limitation, you won't have enough low memory to buffer the data coming from a single HD floppy anyway. Don't I love PCs... Regards, /Serge.P -- Russian guy from the Zurich university...