How to BSAVE and BLOAD Arrays Larger Than 64K (35149)
The information in this article applies to:
- Microsoft Visual Basic for MS-DOS
- Microsoft QuickBASIC 4.0
- Microsoft QuickBASIC 4.0b
- Microsoft BASIC Compiler for MS-DOS and OS/2 6.0
- Microsoft BASIC Compiler for MS-DOS and OS/2 6.0b
- Microsoft Basic Professional Development System (PDS) for MS-DOS and MS OS/2 7.0
This article was previously published under Q35149 SUMMARY
Microsoft Visual Basic for MS-DOS, version 1.0 allows the use of "huge"
dynamic arrays containing more than 64K when you compile your program
with the /AH option. However, because the BSAVE and BLOAD statements
use a 2-byte unsigned integer to record the file length, only 64K may
be contained in a BLOAD/BSAVE file. To save an area of memory larger
than 64K, you must break the region into blocks (which may overlap),
each smaller than 65,536 bytes. To BSAVE each block, it is important
to do a DEF SEG and VARPTR for the start of the region. A "Path/File
Access Error" may result if those steps are omitted.
This information is also included with the Help file provided with the
Standard and Professional Editions of Microsoft Visual Basic for
MS-DOS, version 1.0.
Modification Type: | Minor | Last Reviewed: | 8/16/2005 |
---|
Keywords: | KB35149 |
---|
|