a1200   NEWS   APPS   DOCS   ABOUT
a1200
----
a1200
----
Autodocs
 Libraries:
 graphics.library
  AddAnimOb
  AddBob
  AddFont
  AddVSprite
  AllocBitMap
  AllocDBufInfo
  AllocRaster
  AllocSpriteDataA
  AndRectRegion
  AndRegionRegion
  Animate
  AreaCircle
  AreaDraw
  AreaEllipse
  AreaEnd
  AreaMove
  AskFont
  AskSoftStyle
  AttachPalExtra
  AttemptLockLayerRom
  BestModeIDA
  BitMapScale
  BltBitMap
  BltBitMapRastPort
  BltClear
  BltMaskBitMapRastPort
  BltPattern
  BltTemplate
  CBump
  CEND
  CINIT
  CMOVE
  CWAIT
  CalcIVG
  ChangeExtSpriteA
  ChangeSprite
  ChangeVPBitMap
  ClearEOL
  ClearRectRegion
  ClearRegion
  ClearScreen
  ClipBlit
  CloseFont
  CloseMonitor
  CoerceMode
  CopySBitMap
  DisownBlitter
  DisposeRegion
  DoCollision
  Draw
  DrawEllipse
  DrawGList
  EraseRect
  ExtendFont
  FindColor
  FindDisplayInfo
  Flood
  FontExtent
  FreeBitMap
  FreeColorMap
  FreeCopList
  FreeCprList
  FreeDBufInfo
  FreeGBuffers
  FreeRaster
  FreeSprite
  FreeSpriteData
  FreeVPortCopLists
  GetAPen
  GetBPen
  GetBitMapAttr
  GetColorMap
  GetDisplayInfoData
  GetDrMd
  GetExtSpriteA
  GetGBuffers
  GetOPen
  GetRGB32
  GetRGB4
  GetRPAttrA
  GetSprite
  GetVPModeID
  GfxAssociate
  GfxFree
  GfxLookUp
  GfxNew
  InitArea
  InitBitMap
  InitGMasks
  InitGels
  InitMasks
  InitRastPort
  InitTmpRas
  InitVPort
  InitView
  LoadRGB32
  LoadRGB4
  LoadView
  LockLayerRom
  MakeVPort
  ModeNotAvailable
  Move
  MoveSprite
  MrgCop
  NewRegion
  NextDisplayInfo
  ObtainBestPenA
  ObtainPen
  OpenFont
  OpenMonitor
  OrRectRegion
  OrRegionRegion
  OwnBlitter
  PolyDraw
  QBSBlit
  QBlit
  ReadPixel
  ReadPixelArray8
  ReadPixelLine8
  RectFill
  ReleasePen
  RemBob
  RemFont
  RemIBob
  RemVSprite
  ScalerDiv
  ScrollRaster
  ScrollRasterBF
  ScrollVPort
  SetABPenDrMd
  SetAPen
  SetBPen
  SetChipRev
  SetCollision
  SetDrMd
  SetFont
  SetMaxPen
  SetOPen
  SetOutlinePen
  SetRGB32
  SetRGB32CM
  SetRGB4
  SetRGB4CM
  SetRPAttrA
  SetRast
  SetSoftStyle
  SetWriteMask
  SortGList
  StripFont
  SyncSBitMap
  Text
  TextExtent
  TextFit
  TextLength
  UnlockLayerRom
  VBeamPos
  VideoControl
  WaitBOVP
  WaitBlit
  WaitTOF
  WriteChunkyPixels
  WritePixel
  WritePixelArray8
  WritePixelLine8
  XorRectRegion
  XorRegionRegion
Include
GuruMeditation
Docs » Autodocs » graphics.library » BltBitMap

NAME

	BltBitMap -- Move a rectangular region of bits in a BitMap.

SYNOPSIS

	planecnt = BltBitMap(SrcBitMap, SrcX, SrcY, DstBitMap,
D0 A0 D0:16 D1:16 A1
DstX, DstY, SizeX, SizeY, Minterm, Mask [, TempA])
D2:16 D3:16 D4:16 D5:16 D6:8 D7:8 [A2]
ULONG BltBitMap(struct BitMap *, WORD, WORD, struct BitMap *,
WORD, WORD, WORD, WORD, UBYTE, UBYTE, UWORD *);

FUNCTION

	Perform non-destructive blits to move a rectangle from one
area in a BitMap to another area, which can be on a different
BitMap.
This blit is assumed to be friendly: no error conditions (e.g.
a rectangle outside the BitMap bounds) are tested or reported.

INPUTS

	SrcBitMap, DstBitMap - the BitMap(s) containing the
rectangles
- the planes copied from the source to the destination are
only those whose plane numbers are identical and less
than the minimum Depth of either BitMap and whose Mask
bit for that plane is non-zero.
- as a special case, if a plane pointer in the SrcBitMap
is zero, it acts as a pointer to a plane of all zeros, and
if the plane pointer is 0xffffffff, it acts as a pointer
to a plane of all ones. (Note: new for V36)
- SrcBitMap and DstBitMap can be identical if they point
to actual planes.
SrcX, SrcY - the x and y coordinates of the upper left corner
of the source rectangle. Valid range is positive
signed integer such that the raster word's offset
0..(32767-Size)
DstX, DstY - the x and y coordinates of the upper left
corner of the destination for the rectangle. Valid
range is as for Src.
SizeX, SizeY - the size of the rectangle to be moved. Valid
range is (X: 1..976; Y: 1..1023 such that final raster
word's offset is 0..32767)
Minterm - the logic function to apply to the rectangle when
A is non-zero (i.e. within the rectangle). B is the
source rectangle and C, D is the destination for the
rectangle.
- $0C0 is a vanilla copy
- $030 inverts the source before the copy
- $050 ignores the source and inverts the destination
- see the hardware reference manual for other combinations
Mask - the write mask to apply to this operation. Bits set
indicate the corresponding planes (if not greater than
the minimum plane count) are to participate in the
operation. Typically this is set to 0xff.
TempA - If the copy overlaps exactly to the left or right
(i.e. the scan line addresses overlap), and TempA is
non-zero, it points to enough chip accessible memory
to hold a line of A source for the blit (ie CHIP RAM).
BltBitMap will allocate (and free) the needed TempA if
none is provided and one is needed. Blit overlap is
determined from the relation of the first non-masked
planes in the source and destination bit maps.

RESULT

	planecnt - the number of planes actually involved in the blit.

NOTES

	o   This function may use the blitter.

SEE ALSO

ClipBlit(), <graphics/gfx.h>, <hardware/blit.h>

Comments

Name:
E-mail: Use this if you want a message if you get a response, will not be shown.
Comment:
Select correct short for:

Alpha Flight 1970

DJ
FC
AFL
TSL

Comments:

$VER: d0.se 1.14 Copyright © 2011-2024 Tobias Geijersson support at d0 dot se