On , Alec Kadulin (2:5061/17.6@fidonet) wrote:
VN> Is Possible whether in C reading more 64K from file (is necessary 12-13
VN> Mb)? How this is to do? Thank you.
> I think I sure %subj% is impossible if you're writing for DOS. 'Cos C uses
> DOS service (int 21h) whitch CANNOT read more than 64k at a time. UC this
> is because of restrictions ``unsigned int'' type.
Alec...
While the basic answer here is correct, it doesn't mean you can't hide the
details from a calling program. For example, in SNIPPETS there is a file
called HUGEREAD.C which implements reading and writing of huge data to/from
either standard C or Posix streams. Implementing similar code in C++ would be
trivial.
A more significant question is the desire to read or write "12-13 Mb". To
do this would require that the program operate in one of the x86's 32-bit
modes, which would require double buffering to accomodate the underlying
restrictions of real-mode DOS. The most basic question, of course, is do you
physically have that much memory free?!?
--- QM v1.00
---------------
* Origin: MicroFirm : Down to the C in chips (1:106/2000.6)
|