ReactOS 0.4.15-dev-7918-g2a2556c
pc98.h
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS Boot Video Driver for NEC PC-98 series
3 * LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
4 * PURPOSE: Arch-specific header file
5 * COPYRIGHT: Copyright 2020 Dmitry Borisov <di.sean@protonmail.com>
6 */
7
8#pragma once
9
10/* INCLUDES *******************************************************************/
11
12#include <drivers/pc98/video.h>
13
14/* GLOBALS ********************************************************************/
15
16#define BYTES_PER_SCANLINE (SCREEN_WIDTH / 8)
17#define FB_OFFSET(x, y) ((y) * SCREEN_WIDTH + (x))
18
20
21/* PROTOTYPES *****************************************************************/
22
23VOID
25 _In_ CHAR Character,
26 _In_ ULONG Left,
28 _In_ ULONG TextColor,
29 _In_ ULONG BackColor);
30
31VOID
33 _In_ ULONG Scroll);
34
35VOID
39
40VOID
42 _In_ ULONG CurrentTop,
43 _In_ ULONG TopDelta,
44 _In_ BOOLEAN Restore);
45
46VOID
48
49/* FUNCTIONS ******************************************************************/
50
52VOID
54 _In_ ULONG Left,
57{
58 PUCHAR PixelPosition = (PUCHAR)(FrameBuffer + FB_OFFSET(Left, Top));
59
60 WRITE_REGISTER_UCHAR(PixelPosition, Color);
61}
unsigned char BOOLEAN
static LPHIST_ENTRY Top
Definition: history.c:53
ASMGENDATA Table[]
Definition: genincdata.c:61
#define _In_
Definition: ms_sal.h:308
int Count
Definition: noreturn.cpp:7
VOID PreserveRow(_In_ ULONG CurrentTop, _In_ ULONG TopDelta, _In_ BOOLEAN Restore)
Definition: bootvid.c:111
VOID PrepareForSetPixel(VOID)
Definition: vga.c:90
#define FB_OFFSET(x, y)
Definition: pc98.h:17
FORCEINLINE VOID SetPixel(_In_ ULONG Left, _In_ ULONG Top, _In_ UCHAR Color)
Definition: pc98.h:53
ULONG_PTR FrameBuffer
Definition: xboxvideo.c:28
VOID DisplayCharacter(_In_ CHAR Character, _In_ ULONG Left, _In_ ULONG Top, _In_ ULONG TextColor, _In_ ULONG BackColor)
Definition: bootvid.c:19
VOID DoScroll(_In_ ULONG Scroll)
Definition: bootvid.c:64
VOID InitPaletteWithTable(_In_ PULONG Table, _In_ ULONG Count)
Definition: bootvid.c:172
uint32_t * PULONG
Definition: typedefs.h:59
uint32_t ULONG_PTR
Definition: typedefs.h:65
unsigned char * PUCHAR
Definition: typedefs.h:53
uint32_t ULONG
Definition: typedefs.h:59
#define FORCEINLINE
Definition: wdftypes.h:67
NTKERNELAPI VOID NTAPI WRITE_REGISTER_UCHAR(IN PUCHAR Register, IN UCHAR Value)
unsigned char UCHAR
Definition: xmlstorage.h:181
char CHAR
Definition: xmlstorage.h:175