BLOAD - DualBrain/bsharp GitHub Wiki
To load an image file anywhere in user memory.
Syntax
BLOAD filename[,offset]
Comments
filename is a valid string expression containing the device and filename.
offset is a valid numeric expression within the range of 0 to 65535. This is the offset into the segment, declared by the last DEF SEG statement, where loading is to start.
If offset is omitted, the offset specified at BSAVE is assumed; that is, the file is loaded into the same location it was saved from.
Note
BLOAD
does not perform an address range check. It is possible to BLOAD
anywhere in memory. You must not BLOAD
over the BASIC stack space, a BASIC program, or the BASIC variable area.
While BLOAD
and BSAVE are useful for loading and saving machine language programs, they are not restricted to them. The DEF SEG statement lets you specify any segment as the source or target for BLOAD
and BSAVE. For example, this allows the video screen buffer to be read from or written to the diskette. BLOAD
and BSAVE are useful in saving and displaying graphic images.
Examples
10 DEF SEG=&HB800
20 BLOAD"PICTURE", 0
The DEF SEG statement in line 10 points the segment at the screen buffer.
The DEF SEG statement in line 10 and the offset of 0 in line 20 guarantee that the correct address is used.
The BLOAD
command in line 20 loads the file named picture into the screen buffer.
Note
The BSAVE example in the next section illustrates how the file named picture is saved.