bas7advr.hlp (Topic list)
BLOAD Statement Details
  Syntax  Details  Example                 Contents  Index  Back
──────────────────────────────────────────────────────────────────────────────
BLOAD loads a memory-image file created by BSAVE into memory from an
input file or device.
 
BLOAD filespec$[,offset%]
    ■ The argument filespec$ is a string expression that specifies the
      file or device from which to load a memory-image file.
 
Usage Notes
    ■ The BLOAD statement allows a program or data saved as a memory-image
      file to be loaded anywhere in memory. A memory-image file is a
      byte-for-byte copy of what was originally in memory.
    ■ The starting address for loading is determined by the specified
      offset and the most recent DEF SEG statement. If offset% is omitted,
      the segment address and offset contained in the file (the address
      used in the BSAVE statement) are used. Thus, the file is loaded at
      the address used when saving the file.
    ■ If you supply an offset, the segment address used is the segment
      set by the most recently executed DEF SEG statement. If there has
      been no DEF SEG statement, the BASIC data segment (DGROUP) is used as
      the default.
    ■ If the offset is a long integer, or a single-precision or
      double-precision number, it is coerced to an integer. If the offset
      is a negative number between -1 and -32,768, inclusive, it is treated
      as an unsigned 2-byte offset.
 
BLOAD and Expanded Memory Arrays
    ■ Do not use BLOAD to load a file into an expanded memory array. (If
      you start QBX with the /Ea switch, any of these arrays may be stored
      in expanded memory:
          -  Numeric arrays < 16K in size
          -  Fixed-length string arrays < 16K in size
          -  User-defined-type arrays < 16K in size
    ■ If you want to use BLOAD to load a file into an array, first start
      QBX without the /Ea switch.  (Without the /Ea switch, no arrays are
      stored in expanded memory.)
    ■ For more information on using expanded memory, see
      Using Expanded Memory.
 
Important
    ■ Programs written in earlier versions of BASIC no longer work
      if they use VARPTR to access numeric arrays.
    ■ Because BLOAD does not perform an address-range check, it is
      possible to load a file anywhere in memory. You must be careful
      not to write over BASIC or the operating system.
    ■ Because different screen modes use memory differently, do not load
      graphic images in a screen mode other than the one used when they
      were created.
    ■ Because BASIC program code and data items are not stored in the same
      locations as they were in BASICA, do not use BLOAD with files created
      by BASICA programs.
 
Differences from BASICA
    ■ BLOAD does not support the cassette device.