This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) This article includes a list of general references, but it lacks sufficient corresponding inline citations. Please help to improve this article by introducing more precise citations. (February 2019) (Learn how and when to remove this template message) This date is written like a personal reflection, personal essay, or argumentative essay that states a Wikipedia editor's personal feelings or presents an original argument about a topic. Please help improve it by rewriting it in an encyclopedic style. (October 2020) (Learn how and when to remove this template message) (Learn how and when to remove this template message)

BSAVE and BLOAD are commands in many varieties of the BASIC programming language. BSAVE copies RAM to a binary file, and BLOAD copies the contents of the file to RAM.[1] The term "BSAVE image" could mean any of various raw image formats of video display controllers, or more generally any file containing the raw contents of a section of memory.

Some platforms provided a BRUN command that, after loading the file into memory, would immediately attempt to execute it as machine code.

There is no file compression, and therefore these files load very quickly and without much programming when displayed in native mode.

BSAVE files were in general use as a file format when the IBM PC was introduced. It was also in general use on the Apple II in the same time period. Although the commands were available on the Commodore PET line, they were removed from the later (and more popular) Commodore 64 and VIC-20 computers. In 1985 the Commodore 128 was released with Commodore BASIC version 6.9 which restored the BSAVE and BLOAD commands.


Some versions of BASIC for home computers in the late 1970s and early 1980s include the command BSAVE (for "Binary Save") and the complementary BLOAD ("Binary Load"). Using the BSAVE command, a block of memory at a given address with a specified length can be written to disk as a file.[1] This file can then be reloaded into memory via BLOAD.[2]

Microsoft produced the BASIC interpreters that were bundled with the Apple II (1977), Commodore PET (1977), and IBM PC (1981) which included BSAVE and BLOAD.

A BSAVE command is also part of ASCII's MSX-DOS2 Tools for MSX-DOS version 2.[3]


On the Color Computer's ColorBASIC, those were named SAVEM and LOADM instead, with the M referring to machine code, showing that the primary intent was to load programs rather than data; the use of the B prefix to refer to binary indicates a broader view of the possible uses of the command. ColorBASIC uses a different format than GWBASIC. LOADM supports multipart content to be loaded in different places in RAM, which some programs do use, even though SAVEM supports only saving one part. The cassette equivalents were called CLOADM and CSAVEM. In ColorBASIC, the BRUN command is called EXEC instead.

Video images

Figure 1: 4-color IBM PC CGA image

The BSAVED format is a device-dependent raster image format; the file header sometimes stores information about the display hardware address, and the size of the graphics data. The graphics data follows the header directly and is stored as raw data in the format of the native adapter's addressable memory. No additional information, such as screen resolution, color depth and palette information, bit planes and so on, is stored.

See also


  1. ^ a b "Microsoft QuickBasic 4.5 Advisor: BSAVE". Microsoft. 1990. Retrieved 2007-07-17.
  2. ^ "Microsoft QuickBasic 4.5 Advisor: BLOAD". Microsoft. 1990. Retrieved 2007-07-17.
  3. ^ MSX-DOS2 Tools User's Manual by ASCII Corporation