Go to the source code of this file.
|
BOOLEAN NTAPI | InbvDriverInitialize (_In_ PLOADER_PARAMETER_BLOCK LoaderBlock, _In_ ULONG Count) |
|
INBV_DISPLAY_STATE NTAPI | InbvGetDisplayState (VOID) |
|
VOID NTAPI | InbvAcquireLock (VOID) |
|
VOID NTAPI | InbvReleaseLock (VOID) |
|
PUCHAR NTAPI | InbvGetResourceAddress (_In_ ULONG ResourceNumber) |
|
VOID NTAPI | InbvBitBlt (_In_ PUCHAR Buffer, _In_ ULONG X, _In_ ULONG Y) |
|
VOID NTAPI | InbvBufferToScreenBlt (_In_ PUCHAR Buffer, _In_ ULONG X, _In_ ULONG Y, _In_ ULONG Width, _In_ ULONG Height, _In_ ULONG Delta) |
|
VOID NTAPI | InbvScreenToBufferBlt (_Out_ PUCHAR Buffer, _In_ ULONG X, _In_ ULONG Y, _In_ ULONG Width, _In_ ULONG Height, _In_ ULONG Delta) |
|
VOID NTAPI | InbvSetProgressBarCoordinates (_In_ ULONG Left, _In_ ULONG Top) |
| Sets the screen coordinates of the loading progress bar and enable it.
|
|
VOID NTAPI | InbvIndicateProgress (VOID) |
| Gives some progress feedback, without specifying any explicit number of progress steps or percentage. The corresponding percentage is derived from the progress indicator's current count, capped to the number of expected calls to be made to this function (default: 25, see InbvProgressIndicator.Expected).
|
|
VOID NTAPI | InbvSetProgressBarSubset (_In_ ULONG Floor, _In_ ULONG Ceiling) |
| Specifies a progress percentage sub-range. Further calls to InbvIndicateProgress() or InbvUpdateProgressBar() will update the progress percentage relative to this sub-range. In particular, the percentage provided to InbvUpdateProgressBar() is relative to this sub-range.
|
|
VOID NTAPI | InbvUpdateProgressBar (_In_ ULONG Percentage) |
| Updates the progress bar percentage, relative to the current percentage sub-range previously set by InbvSetProgressBarSubset().
|
|
VOID NTAPI | InbvPortEnableFifo (IN ULONG PortId, IN BOOLEAN Enable) |
|
BOOLEAN NTAPI | InbvPortPollOnly (IN ULONG PortId) |
|
BOOLEAN NTAPI | InbvPortGetByte (IN ULONG PortId, OUT PUCHAR Byte) |
|
VOID NTAPI | InbvPortPutByte (IN ULONG PortId, IN UCHAR Byte) |
|
VOID NTAPI | InbvPortTerminate (IN ULONG PortId) |
|
BOOLEAN NTAPI | InbvPortInitialize (IN ULONG BaudRate, IN ULONG PortNumber, IN PUCHAR PortAddress, OUT PULONG PortId, IN BOOLEAN IsMMIODevice) |
|
◆ InbvAcquireLock()
Definition at line 219 of file inbv.c.
220{
222
223
226 {
227
229
230
232 }
233
234
237}
#define KeRaiseIrql(irql, oldIrql)
#define KeGetCurrentIrql()
static KSPIN_LOCK BootDriverLock
BOOLEAN FASTCALL KeTestSpinLock(IN PKSPIN_LOCK SpinLock)
VOID FASTCALL KiAcquireSpinLock(IN PKSPIN_LOCK SpinLock)
_Requires_lock_held_ Interrupt _Releases_lock_ Interrupt _In_ _IRQL_restores_ KIRQL OldIrql
Referenced by BootAnimTickProgressBar(), BootLogoFadeIn(), DisplayBootBitmap(), FinalizeBootLogo(), InbvBitBlt(), InbvDisplayString(), InbvEnableBootDriver(), InbvNotifyDisplayOwnershipLost(), InbvRotationThread(), and InbvSolidColorFill().
◆ InbvBitBlt()
Definition at line 530 of file inbv.c.
534{
535
538 {
539
541
542
544
545
547 }
548}
VOID NTAPI VidBitBlt(_In_ PUCHAR Buffer, _In_ ULONG Left, _In_ ULONG Top)
BOOLEAN InbvBootDriverInstalled
VOID NTAPI InbvAcquireLock(VOID)
static INBV_DISPLAY_STATE InbvDisplayState
VOID NTAPI InbvReleaseLock(VOID)
@ INBV_DISPLAY_STATE_OWNED
Referenced by BitBltPalette(), and PopShutdownHandler().
◆ InbvBufferToScreenBlt()
Definition at line 552 of file inbv.c.
559{
560
563 {
564
566 }
567}
VOID NTAPI VidBufferToScreenBlt(_In_reads_bytes_(Delta *Height) PUCHAR Buffer, _In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_ ULONG Delta)
_In_ HFONT _Out_ PUINT _Out_ PUINT Width
_In_ HFONT _Out_ PUINT Height
Referenced by DisplayBootBitmap().
◆ InbvDriverInitialize()
Definition at line 175 of file inbv.c.
178{
182
183
185
186
189 {
190
191 CommandLine = (LoaderBlock->LoadOptions ?
_strupr(LoaderBlock->LoadOptions) :
NULL);
192 ResetMode = (CommandLine ==
NULL) || (
strstr(CommandLine,
"BOOTLOGO") ==
NULL);
193 }
194
195
198 {
199
202 {
203
205 }
206
207
209
210
211 }
212
213
215}
char * strstr(char *String1, char *String2)
BOOLEAN NTAPI VidInitialize(_In_ BOOLEAN SetMode)
#define KeInitializeSpinLock(sl)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
VOID NTAPI InbvSetProgressBarSubset(_In_ ULONG Floor, _In_ ULONG Ceiling)
Specifies a progress percentage sub-range. Further calls to InbvIndicateProgress() or InbvUpdateProgr...
static ULONG ResourceCount
static PVOID FindBitmapResource(_In_ PLOADER_PARAMETER_BLOCK LoaderBlock, _In_ ULONG ResourceId)
_CRTIMP char *__cdecl _strupr(_Inout_z_ char *_String)
_Must_inspect_result_ _In_ WDFIORESREQLIST _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFIORESLIST * ResourceList
Referenced by Phase1InitializationDiscard().
◆ InbvGetDisplayState()
◆ InbvGetResourceAddress()
◆ InbvIndicateProgress()
Gives some progress feedback, without specifying any explicit number of progress steps or percentage. The corresponding percentage is derived from the progress indicator's current count, capped to the number of expected calls to be made to this function (default: 25, see InbvProgressIndicator.Expected).
- Returns
- None.
Definition at line 625 of file inbv.c.
626{
628
629
631
632
635 Percentage =
min(Percentage, 99);
636
638 {
639
642 }
643}
static BT_PROGRESS_INDICATOR InbvProgressIndicator
VOID NTAPI InbvUpdateProgressBar(_In_ ULONG Percentage)
Updates the progress bar percentage, relative to the current percentage sub-range previously set by I...
Referenced by IopInitializeBuiltinDriver(), and IopInitializeSystemDrivers().
◆ InbvPortEnableFifo()
Definition at line 56 of file inbvport.c.
58{
59
61}
VOID NTAPI CpEnableFifo(IN PUCHAR Address, IN BOOLEAN Enable)
_In_ ULONGLONG _In_ ULONGLONG _In_ BOOLEAN Enable
Referenced by HdlspEnableTerminal().
◆ InbvPortGetByte()
Definition at line 38 of file inbvport.c.
40{
41
43}
USHORT NTAPI CpGetByte(IN PCPPORT Port, OUT PUCHAR Byte, IN BOOLEAN Wait, IN BOOLEAN Poll)
Referenced by HdlspDispatch().
◆ InbvPortInitialize()
Definition at line 73 of file inbvport.c.
78{
79
81
82#if defined(SARCH_PC98)
83
84 if (BaudRate == 0) BaudRate = 9600;
85
86
88 {
89
90 if (!PortAddress)
91 {
93 {
94 PortAddress = (
PUCHAR)0x30;
95 }
96 else
97 {
98 PortAddress = (
PUCHAR)0x238;
100 }
101 }
102 }
103 else
104 {
105
106 PortAddress = (
PUCHAR)0x30;
108 {
110 }
111 else
112 {
113 PortAddress = (
PUCHAR)0x238;
116
118 }
119 }
120#else
121
122 if (BaudRate == 0) BaudRate = 19200;
123
124
126 {
127
128 if (!PortAddress)
129 {
131 {
132 case 1:
133 PortAddress = (
PUCHAR)0x3F8;
134 break;
135
136 case 2:
137 PortAddress = (
PUCHAR)0x2F8;
138 break;
139
140 case 3:
141 PortAddress = (
PUCHAR)0x3E8;
142 break;
143
144 default:
146 PortAddress = (
PUCHAR)0x2E8;
147 }
148 }
149 }
150 else
151 {
152
153 PortAddress = (
PUCHAR)0x2F8;
155 {
157 }
158 else
159 {
160 PortAddress = (
PUCHAR)0x3F8;
163 }
164 }
165#endif
166
167
169
172
174}
NTSTATUS NTAPI CpInitialize(IN PCPPORT Port, IN PUCHAR Address, IN ULONG BaudRate)
BOOLEAN NTAPI CpDoesPortExist(IN PUCHAR Address)
Referenced by HdlspEnableTerminal().
◆ InbvPortPollOnly()
◆ InbvPortPutByte()
◆ InbvPortTerminate()
◆ InbvReleaseLock()
◆ InbvScreenToBufferBlt()
Definition at line 571 of file inbv.c.
578{
579
582 {
583
585 }
586}
VOID NTAPI VidScreenToBufferBlt(_Out_writes_bytes_(Delta *Height) PUCHAR Buffer, _In_ ULONG Left, _In_ ULONG Top, _In_ ULONG Width, _In_ ULONG Height, _In_ ULONG Delta)
Referenced by DisplayBootBitmap().
◆ InbvSetProgressBarCoordinates()
Sets the screen coordinates of the loading progress bar and enable it.
- Parameters
-
[in] | Left | |
[in] | Top | The left/top coordinates. |
- Returns
- None.
Definition at line 600 of file inbv.c.
Referenced by DisplayBootBitmap().
◆ InbvSetProgressBarSubset()
◆ InbvUpdateProgressBar()
Updates the progress bar percentage, relative to the current percentage sub-range previously set by InbvSetProgressBarSubset().
- Parameters
-
[in] | Percentage | The progress percentage, relative to the current sub-range. |
- Returns
- None.
Definition at line 689 of file inbv.c.
691{
693
694
698 {
699
701
702
704 }
705}
VOID NTAPI BootAnimTickProgressBar(_In_ ULONG SubPercentTimes100)
Ticks the progress bar. Used by InbvUpdateProgressBar() and related.
Referenced by InbvIndicateProgress(), and Phase1InitializationDiscard().
◆ InbvBootDriverInstalled
Definition at line 39 of file inbv.c.
Referenced by BootAnimInitialize(), BootAnimTickProgressBar(), BootLogoFadeIn(), DisplayBootBitmap(), InbvBitBlt(), InbvBufferToScreenBlt(), InbvDisplayString(), InbvDriverInitialize(), InbvEnableBootDriver(), InbvIsBootDriverInstalled(), InbvNotifyDisplayOwnershipLost(), InbvResetDisplay(), InbvScreenToBufferBlt(), InbvSolidColorFill(), InbvUpdateProgressBar(), and Phase1InitializationDiscard().