# Bitmap

Frame buffer into which rendering may be performed.

### Description

A Bitmap is the logical destination for all graphics rendering operations. Bitmap items describe the dimensions of the frame buffer, its starting address in RAM, optional clipping area, and other characteristics.

### Folio

graphics

### Item Type

BITMAPNODE

### Create

``CreateBitmap()`
`CreateBitmapVA()`
`CreateItem()``

### Delete

``DeleteBitmap()`
`DeleteItem()``

### Query

None

### Modify

None

### Use

`CreateScreenGroup()`

`DisplayOverlay()`

``DrawCels`()`
`GetPixelAddress()`
`SetCEControl()`
`SetCEWatchDog()`
`SetClipHeightt()`
`SetClipOrigin()`
`SetClipWidth()`
`SetReadAddress()`
`ReadPixel()`
`ResetReadAddress()`
`WritePixel()`

### Tags

The following tags must be present:

CBM_TAG_WIDTH(int32)
  Sets the bitmap width, in pixels.

CBM_TAG_HEIGHT(int32)
  Specifies the bitmap height, in pixels.

CBM_TAG_BUFFER(void *)
  Specifies the starting address of the bitmap buffer.

The following tags are optional:

CBM_TAG_CLIPWIDTH(int32)
  Specifies the width of the clipping region, in pixels. (default: the value of CBM_TAG_WIDTH)

CBM_TAG_CLIPHEIGHT(int32)
  Specifies the height of the clipping region, in pixels. (default: the value of CBM_TAG_HEIGHT)

CBM_TAG_CLIPX(int32)
  Specifies the left edge of the clipping region, in pixels. (default: 0)

CBM_TAG_CLIPY(int32) Specifies the top edge of the clipping region, in pixels. (default: 0)

CBM_TAG_WATCHDOGCTR(int32)
  Specifies the cel engine timeout value, in msec. (default: 1000000)

CBM_TAG_CECONTROL(uint32)
  Specifies the CEControl register value to be used when this bitmap is being rendered to by the cel engine. (default: (B15POS_PDC | B0POS_PPMP | CFBDSUB | CFBDLSB_CFBD0 | PDCLSB_PDC0) )