2014-02-06 11:18:34 +00:00
|
|
|
#ifndef _BOOTVID_PCH_
|
|
|
|
#define _BOOTVID_PCH_
|
|
|
|
|
2019-06-23 00:29:01 +00:00
|
|
|
#include <ntifs.h>
|
|
|
|
#include <ndk/halfuncs.h>
|
2014-01-26 20:24:59 +00:00
|
|
|
#include <drivers/bootvid/bootvid.h>
|
2009-10-12 03:35:35 +00:00
|
|
|
|
2020-04-08 05:42:05 +00:00
|
|
|
/* Arch specific includes */
|
|
|
|
#if defined(_M_IX86) || defined(_M_AMD64)
|
|
|
|
#include "i386/pc/vga.h"
|
|
|
|
#include "i386/pc/pc.h"
|
|
|
|
#elif defined(_M_ARM)
|
|
|
|
#include "arm/arm.h"
|
|
|
|
#else
|
|
|
|
#error Unknown architecture
|
|
|
|
#endif
|
|
|
|
|
2009-10-12 03:35:35 +00:00
|
|
|
/* Define if FontData has upside down characters */
|
|
|
|
#undef CHAR_GEN_UPSIDE_DOWN
|
|
|
|
|
2019-12-22 13:09:43 +00:00
|
|
|
#define BOOTCHAR_HEIGHT 13
|
|
|
|
#define BOOTCHAR_WIDTH 8 // Each character line is encoded in a UCHAR.
|
|
|
|
|
2014-01-26 20:24:59 +00:00
|
|
|
/* Bitmap Header */
|
2009-10-12 03:35:35 +00:00
|
|
|
typedef struct tagBITMAPINFOHEADER
|
|
|
|
{
|
|
|
|
ULONG biSize;
|
|
|
|
LONG biWidth;
|
|
|
|
LONG biHeight;
|
|
|
|
USHORT biPlanes;
|
|
|
|
USHORT biBitCount;
|
|
|
|
ULONG biCompression;
|
|
|
|
ULONG biSizeImage;
|
|
|
|
LONG biXPelsPerMeter;
|
|
|
|
LONG biYPelsPerMeter;
|
|
|
|
ULONG biClrUsed;
|
|
|
|
ULONG biClrImportant;
|
|
|
|
} BITMAPINFOHEADER, *PBITMAPINFOHEADER;
|
|
|
|
|
2014-08-31 23:00:29 +00:00
|
|
|
/* Supported bitmap compression formats */
|
|
|
|
#define BI_RGB 0
|
|
|
|
#define BI_RLE4 2
|
|
|
|
|
2020-04-08 05:42:05 +00:00
|
|
|
typedef struct _PALETTE_ENTRY
|
|
|
|
{
|
|
|
|
UCHAR Red;
|
|
|
|
UCHAR Green;
|
|
|
|
UCHAR Blue;
|
|
|
|
} PALETTE_ENTRY, *PPALETTE_ENTRY;
|
|
|
|
|
2009-10-12 03:35:35 +00:00
|
|
|
VOID
|
|
|
|
NTAPI
|
2014-08-31 23:00:29 +00:00
|
|
|
InitializePalette(VOID);
|
2009-10-12 03:35:35 +00:00
|
|
|
|
2020-04-08 05:42:05 +00:00
|
|
|
VOID
|
|
|
|
NTAPI
|
|
|
|
DisplayCharacter(
|
|
|
|
_In_ CHAR Character,
|
|
|
|
_In_ ULONG Left,
|
|
|
|
_In_ ULONG Top,
|
|
|
|
_In_ ULONG TextColor,
|
|
|
|
_In_ ULONG BackColor
|
|
|
|
);
|
2019-06-23 00:29:01 +00:00
|
|
|
|
2020-04-08 05:42:05 +00:00
|
|
|
VOID
|
|
|
|
PrepareForSetPixel(VOID);
|
2019-06-23 00:29:01 +00:00
|
|
|
|
2020-04-08 05:42:05 +00:00
|
|
|
VOID
|
|
|
|
NTAPI
|
|
|
|
InitPaletteWithTable(
|
|
|
|
_In_ PULONG Table,
|
|
|
|
_In_ ULONG Count);
|
2019-06-23 00:29:01 +00:00
|
|
|
|
2020-04-08 05:42:05 +00:00
|
|
|
/*
|
|
|
|
* Globals
|
|
|
|
*/
|
|
|
|
extern UCHAR VidpTextColor;
|
|
|
|
extern ULONG VidpCurrentX;
|
|
|
|
extern ULONG VidpCurrentY;
|
|
|
|
extern ULONG VidpScrollRegion[4];
|
|
|
|
extern UCHAR FontData[256 * BOOTCHAR_HEIGHT];
|
2019-06-23 00:29:01 +00:00
|
|
|
|
2014-02-06 11:18:34 +00:00
|
|
|
#endif /* _BOOTVID_PCH_ */
|