diff options
Diffstat (limited to 'apps/lfbgrid.c')
-rw-r--r-- | apps/lfbgrid.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/apps/lfbgrid.c b/apps/lfbgrid.c index 3153ae1..3914313 100644 --- a/apps/lfbgrid.c +++ b/apps/lfbgrid.c @@ -51,11 +51,9 @@ draw_boxes(EFI_GRAPHICS_OUTPUT_PROTOCOL *gop) UINTN NumPixels; UINT32 *PixelBuffer; UINT32 CopySize, BufferSize; -#if defined(__x86_64__) || defined(__aarch64__) || \ - (defined (__riscv) && __riscv_xlen == 64) || \ - defined(__loongarch64) +#if __SIZEOF_POINTER__ == 8 UINT64 FrameBufferAddr; -#elif defined(__i386__) || defined(__arm__) +#elif __SIZEOF_POINTER__ == 4 UINT32 FrameBufferAddr; #else #error YOUR ARCH HERE @@ -90,7 +88,8 @@ draw_boxes(EFI_GRAPHICS_OUTPUT_PROTOCOL *gop) if (CompareMem(info, gop->Mode->Info, sizeof (*info))) continue; - NumPixels = info->VerticalResolution * info->PixelsPerScanLine; + NumPixels = (UINTN)info->VerticalResolution + * (UINTN)info->PixelsPerScanLine; BufferSize = NumPixels * sizeof(UINT32); if (BufferSize == gop->Mode->FrameBufferSize) { CopySize = BufferSize; @@ -116,11 +115,9 @@ draw_boxes(EFI_GRAPHICS_OUTPUT_PROTOCOL *gop) Print(L"No linear framebuffer on this device.\n"); return; } -#if defined(__x86_64__) || defined(__aarch64__) || \ - (defined (__riscv) && __riscv_xlen == 64) || \ - defined(__loongarch64) +#if __SIZEOF_POINTER__ == 8 FrameBufferAddr = (UINT64)gop->Mode->FrameBufferBase; -#elif defined(__i386__) || defined(__arm__) +#elif __SIZEOF_POINTER__ == 4 FrameBufferAddr = (UINT32)(UINT64)gop->Mode->FrameBufferBase; #else #error YOUR ARCH HERE |