Hi Arkady!

> EA> use DJGPP. Borland Turbo C has the absread() and abswrite() functions to
> EA> do the access -
>      Firstly, these functions present only in BC (and TC?). Secondly, I
> already quote RBIL, which says, that BC' absread()/abswrite() (which detects
> size of partition through INT21/1C) may give incorrect results in MS-DOS
> 7.x.

As far as I know Borland TURBO C does not use int 21.1c for anything in
absread() / abswrite(). You have to find out whether "> 32 MB" access
style is needed YOURSELF.

int readbig(Word drive, Dword which, Byte near * buffer)
{
  struct bigdisk buffer2;

  buffer2.count = 1;
  buffer2.sector = which;
  buffer2.buffer = (Byte far *)buffer;

  return absread(drive, 1, -1, (void *)&buffer2);
}

struct bigdisk /* WARNING: Must not be padded for alignment by the compiler */
{
  Dword sector;
  Word  count;
  Byte far *buffer;
};

This is how you would read > 32 MB in TURBO C...
Of course there is no FAT32 disk I/O support at all in Turbo C :-).

Eric.


-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to