Home | History | Annotate | Download | only in FrameBufferBltLib

Lines Matching refs:Configure

46   Initialize the bit mask in frame buffer configure.

48 @param Configure The frame buffer configure.
53 IN FRAME_BUFFER_CONFIGURE *Configure,
66 Configure->PixelShl[Loop] = HighBitSet32 (Masks[Loop]) - 23 + (Loop * 8);
67 if (Configure->PixelShl[Loop] < 0) {
68 Configure->PixelShr[Loop] = -Configure->PixelShl[Loop];
69 Configure->PixelShl[Loop] = 0;
71 Configure->PixelShr[Loop] = 0;
75 Configure->PixelShl[Loop], Configure->PixelShr[Loop], Masks[Loop]));
80 Configure->BytesPerPixel = (UINTN) ((HighBitSet32 (MergedMasks) + 7) / 8);
82 DEBUG ((EFI_D_VERBOSE, "Bytes per pixel: %d\n", Configure->BytesPerPixel));
84 CopyMem (&Configure->PixelMasks, BitMask, sizeof (*BitMask));
94 @param[in,out] Configure The created configuration information.
98 @retval RETURN_BUFFER_TOO_SMALL The Configure is to too small. The required
109 IN OUT FRAME_BUFFER_CONFIGURE *Configure,
122 if (Configure == NULL) {
128 ConfigurePixelBitMaskFormat (Configure, &mRgbPixelMasks);
132 ConfigurePixelBitMaskFormat (Configure, &mBgrPixelMasks);
136 ConfigurePixelBitMaskFormat (Configure, &(FrameBufferInfo->PixelInformation));
148 Configure->PixelFormat = FrameBufferInfo->PixelFormat;
149 Configure->FrameBuffer = (UINT8*) FrameBuffer;
150 Configure->WidthInPixels = (UINTN) FrameBufferInfo->HorizontalResolution;
151 Configure->Height = (UINTN) FrameBufferInfo->VerticalResolution;
152 Configure->WidthInBytes = Configure->WidthInPixels * Configure->BytesPerPixel;
154 ASSERT (Configure->WidthInBytes < sizeof (Configure->LineBuffer));
162 @param[in] Configure Pointer to a configuration which was successfully
176 IN FRAME_BUFFER_CONFIGURE *Configure,
199 if (DestinationY + Height > Configure->Height) {
204 if (DestinationX + Width > Configure->WidthInPixels) {
214 WidthInBytes = Width * Configure->BytesPerPixel;
219 (((Uint32 << Configure->PixelShl[0]) >> Configure->PixelShr[0]) &
220 Configure->PixelMasks.RedMask) |
221 (((Uint32 << Configure->PixelShl[1]) >> Configure->PixelShr[1]) &
222 Configure->PixelMasks.GreenMask) |
223 (((Uint32 << Configure->PixelShl[2]) >> Configure->PixelShr[2]) &
224 Configure->PixelMasks.BlueMask)
234 if ((sizeof (WideFill) % Configure->BytesPerPixel) == 0) {
235 for (IndexX = Configure->BytesPerPixel; IndexX < sizeof (WideFill); IndexX++) {
236 ((UINT8*) &WideFill)[IndexX] = ((UINT8*) &WideFill)[IndexX % Configure->BytesPerPixel];
245 IndexX < Configure->BytesPerPixel;
257 if (UseWideFill && (DestinationX == 0) && (Width == Configure->WidthInPixels)) {
259 Offset = DestinationY * Configure->WidthInPixels;
260 Offset = Configure->BytesPerPixel * Offset;
261 Destination = Configure->FrameBuffer + Offset;
273 Offset = (IndexY * Configure->WidthInPixels) + DestinationX;
274 Offset = Configure->BytesPerPixel * Offset;
275 Destination = Configure->FrameBuffer + Offset;
290 CopyMem (Configure->LineBuffer, &WideFill, Configure->BytesPerPixel);
293 (Configure->LineBuffer + (IndexX * Configure->BytesPerPixel)),
294 Configure->LineBuffer,
295 MIN (IndexX, Width - IndexX) * Configure->BytesPerPixel
301 CopyMem (Destination, Configure->LineBuffer, WidthInBytes);
313 @param[in] Configure Pointer to a configuration which was successfully
329 IN FRAME_BUFFER_CONFIGURE *Configure,
353 if (SourceY + Height > Configure->Height) {
357 if (SourceX + Width > Configure->WidthInPixels) {
374 WidthInBytes = Width * Configure->BytesPerPixel;
383 Offset = (SrcY * Configure->WidthInPixels) + SourceX;
384 Offset = Configure->BytesPerPixel * Offset;
385 Source = Configure->FrameBuffer + Offset;
387 if (Configure->PixelFormat == PixelBlueGreenRedReserved8BitPerColor) {
390 Destination = Configure->LineBuffer;
395 if (Configure->PixelFormat != PixelBlueGreenRedReserved8BitPerColor) {
400 Uint32 = *(UINT32*) (Configure->LineBuffer + (IndexX * Configure->BytesPerPixel));
403 (((Uint32 & Configure->PixelMasks.RedMask) >>
404 Configure->PixelShl[0]) << Configure->PixelShr[0]) |
405 (((Uint32 & Configure->PixelMasks.GreenMask) >>
406 Configure->PixelShl[1]) << Configure->PixelShr[1]) |
407 (((Uint32 & Configure->PixelMasks.BlueMask) >>
408 Configure->PixelShl[2]) << Configure->PixelShr[2])
421 @param[in] Configure Pointer to a configuration which was successfully
437 IN FRAME_BUFFER_CONFIGURE *Configure,
461 if (DestinationY + Height > Configure->Height) {
465 if (DestinationX + Width > Configure->WidthInPixels) {
482 WidthInBytes = Width * Configure->BytesPerPixel;
488 Offset = (DstY * Configure->WidthInPixels) + DestinationX;
489 Offset = Configure->BytesPerPixel * Offset;
490 Destination = Configure->FrameBuffer + Offset;
492 if (Configure->PixelFormat == PixelBlueGreenRedReserved8BitPerColor) {
503 *(UINT32*) (Configure->LineBuffer + (IndexX * Configure->BytesPerPixel)) =
505 (((Uint32 << Configure->PixelShl[0]) >> Configure->PixelShr[0]) &
506 Configure->PixelMasks.RedMask) |
507 (((Uint32 << Configure->PixelShl[1]) >> Configure->PixelShr[1]) &
508 Configure->PixelMasks.GreenMask) |
509 (((Uint32 << Configure->PixelShl[2]) >> Configure->PixelShr[2]) &
510 Configure->PixelMasks.BlueMask)
513 Source = Configure->LineBuffer;
525 @param[in] Configure Pointer to a configuration which was successfully
539 IN FRAME_BUFFER_CONFIGURE *Configure,
557 if (SourceY + Height > Configure->Height) {
561 if (SourceX + Width > Configure->WidthInPixels) {
565 if (DestinationY + Height > Configure->Height) {
569 if (DestinationX + Width > Configure->WidthInPixels) {
577 WidthInBytes = Width * Configure->BytesPerPixel;
579 Offset = (SourceY * Configure->WidthInPixels) + SourceX;
580 Offset = Configure->BytesPerPixel * Offset;
581 Source = Configure->FrameBuffer + Offset;
583 Offset = (DestinationY * Configure->WidthInPixels) + DestinationX;
584 Offset = Configure->BytesPerPixel * Offset;
585 Destination = Configure->FrameBuffer + Offset;
587 LineStride = Configure->WidthInBytes;
610 @param[in] Configure Pointer to a configuration which was successfully
637 IN FRAME_BUFFER_CONFIGURE *Configure,
649 if (Configure == NULL) {
656 Configure,
669 Configure,
680 Configure,
690 Configure,