# BLIT

Compatible with:
DOS Maximite CMM MM150 MM170 MM+ MMX Picromite ArmiteL4 Armite F4 ArmiteH7 Picomite CMM2

Syntax:
BLIT x1, y1, x2, y2, w, h [,page] [,orientation]
BLIT READ [#]b, x, y, w, h [,pagenumber]
BLIT WRITE [#]b, x, y [,orientation]
BLIT CLOSE [#]b

Description:

BLIT x1, y1, x2, y2, w, h [,page] [,orientation]
Copy one section of the display screen to another part of the display.
The source coordinate is 'x1' and 'y1'. The destination coordinate is 'x2' and 'y2'.
The width of the screen area to copy is 'w' and the height is 'h'. 'page' is the page number that the image data is read from; it is then written to the current write page as specified by the PAGE WRITE n command. If 'page' is omitted the data is read from the write page.
Set the page to FRAMEBUFFER to read from the framebuffer – see the FRAMEBUFFER command.
All arguments are in pixels and the source and destination can overlap.
The optional 'orientation' parameter specifies how the section of the screen is changed as it is copied.
It is the bitwise AND of the following values:
&B001 = mirrored left to right
&B010 = mirrored top to bottom
&B100 = don't copy transparent pixels

BLIT READ [#]b, x, y, w, h [,pagenumber]
BLIT READ will copy a portion of the display to the memory buffer '#b'.
The source coordinate is 'x' and 'y' and the width of the display area to copy is 'w' and the height is 'h'.
When this command is used the memory buffer is automatically created and sufficient memory allocated.
The optional parameter page number specifies which page is to be read. The default is the current write page.
This buffer can be freed and the memory recovered with the BLIT CLOSE command.
Set the pagenumber to FRAMEBUFFER to read from the framebuffer – see the FRAMEBUFFER command

BLIT WRITE [#]b, x, y [,orientation]
BLIT WRITE will copy the memory buffer '#b' to the display. The destination coordinate is 'x' and 'y' using the width/height of the buffer.
The optional 'orientation' parameter defaults to 4 and specifies how the stored image data is changed as it is written out.
It is the bitwise AND of the following values:
&B001 = mirrored left to right
&B010 = mirrored top to bottom
&B100 = don't copy transparent pixels

BLIT CLOSE [#]b
BLIT CLOSE will close the memory buffer '#b' to allow it to be used for another BLIT READ operation and recover the memory used.

Notes:
Sixty four buffers are available ranging from #1 to #64
When specifying the buffer number the # symbol is optional.
All other arguments are in pixels.

Last edited: 15 December, 2020