From: danny DOT attar AT bt DOT com (Danny Attar) Newsgroups: comp.os.msdos.djgpp Subject: Re: It works, it works....THANK YOU!!!!(One ity, bity question more, multiple choice) Date: 11 Jan 2000 12:17:50 GMT Organization: BT plc Lines: 49 Message-ID: <8EB879925dannyattarbtinternet@132.146.16.23> References: <%CAe4.19283$Ak DOT 294380 AT news1 DOT mia> NNTP-Posting-Host: 10.242.184.210 X-Trace: pheidippides.axion.bt.co.uk 947593070 1658 10.242.184.210 (11 Jan 2000 12:17:50 GMT) X-Complaints-To: postmaster AT axion DOT bt DOT co DOT uk NNTP-Posting-Date: 11 Jan 2000 12:17:50 GMT User-Agent: Xnews/Y2K-SE To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com thane AT nospam DOT net (Angelene and Klaus Thane) wrote in <%CAe4.19283$Ak DOT 294380 AT news1 DOT mia>: > >I have completely dumped the idea of using the __tb since it is only >guaranteed to be 2K; I'll need a little more. You can check the current size of the transfer buffer by looking at _go32_info_block.size_of_transfer_buffer >Which brings me to my next question! (short answer, I swear) > >Format of disk address packet: >Offset Size Description > 00h BYTE 10h (size of packet) > 01h BYTE reserved (0) > 02h WORD number of blocks to transfer (max 007Fh for Phoenix EDD) > 04h DWORD -> transfer buffer > 08h QWORD starting absolute block number > (for non-LBA devices, compute as > (Cylinder*NumHeads + SelectedHead) * SectorPerTrack + > SelectedSector - 1 > >Copied from Ralf Brown's Interrupt List > >04h DWORD -> transfer buffer is a _________? > a. A linear address in the format of an unsigned integer > b. An address in the format segment:offset (segment=04h 05h; > offset=06h >07h) > c. An address in the format segment:offset (offset=05h 04h; > segment=07h >06h) > d. None of the above > >While it seems to me 'b' might be the right answer, I really have not >idea. It's documented in an ANSI document - I found the final pre-release revision on the net as d1226r7.pdf. The document say that the transfer buffer contains a 32-bit address of the form Seg:Offset. So the correct answer is (d), because offset=05h 04h; segment=07h 06h. Hope this helps. Danny ==================================================================== Disclaimer: These are my personal opinions and in no way reflect the views of my employer.