BEEP

Syntax: BEEP
Type: statement
Category: Misc

BEEP tells the system to sound a beep noise.

Example:


beep

Differences:
Between QB: In Qb this was a single tone noise generated through the pc speaker. Now this may not be the case.

bin$

Syntax: bin$ (number)
Type: function

Returns the binary value of a decimal number from integer form to a string. Binary values contain 0's and 1's.

e.g.


print bin$(54321)



will return "1101010000110001".

See also hex$, oct$.

Differences:
New to FreeBasic.

BINARY

Type: keyword
Category: file mode

The BINARY keyword is used with the OPEN statement which opens the file with the binary file mode. Binary mode lets you read/write at any position (in bytes) to any value (using GET and PUT). Binary mode is simply unrestricted raw file access, the most flexible file mode.

Data is read in binary mode using get (file i/o), and written with put (file i/o).

See also open, PUT (File I/O), get (File I/O), random, append, output, input (file mode).

 

BIT - intrinsic macros

BITSET 

BITRESET

BLOAD

Syntax: BLOAD filename[, addr]
Type: statement

Statement to load a block of binary data from a file.

'filename' is the name of the file to load data from.
'addr' is Address where to load data. If omitted or 0 (NULL), data is loaded on the current work page.

BLOAD can be used to save a block of binary data, and can be also used to load raw pixel data to the screen: if you don't specify the addr argument, or you set it to 0, the data will be treated as pixel data and loaded into the
current work page.

BLOAD "image.bsv", 0

is infact equivalent to:

SCREENLOCK
BLOAD "image.bsv", SCREENPTR
SCREENUNLOCK

Pay attention that the pixel data stored in the file is in the same pixel format as the one used by the current video mode; see Internal pixel formats for details.

See also bsave.

Differences:
Between QB:
Supports blocks of data with sizes bigger than 64K.

BSAVE

Syntax: BSAVE filename, addr, size
Type: statement

Statement to save a block of binary data into a file.

'filename' is the name of the file where data will be saved.
'addr' is the address where to save data from. If 0 (NULL), data is taken from current work page.
'size' is the size of the data block to be saved, in bytes.

BSAVE saves a block of binary data into a specified file. It can also be used to save pixel data from current work page into a file, by specifying 0 as addr argument:

BSAVE "image.bsv", 0, 64000

is infact equivalent to:

SCREENLOCK
BSAVE "image.bsv", SCREENPTR, 64000
SCREENUNLOCK

When saving pixel data, the data will be saved in the current gfx mode pixel format; see Internal pixel formats for details. Also keep in mind a pixel may require more than one byte, so the size argument will need to be adjusted accordingly.

See also bload.

Differences:
Between QB:
Files saved using the FB version of BSAVE are incompatible with files saved using the QB BSAVE.

byref

See also byval.

Differences:
New to FreeBasic.

byte

Type: data type

8-bit signed whole-number data type.

See also ubyte, data types.

Differences:
New to FreeBasic.

BYVAL

Type: clause

BYVAL in a parameter list of a declare statement causes the variable to be passed to the procedure (either sub or function) by its value rather than the usual way by sending the address to the value.

This means that if you pass say the value of the variable 'x' then x cannot be modified in anyway, where as if you send the address the procedure could modify the value of 'x' to anything.

Opposite of byref.
See also declare.