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 220 of file inbv.c.
221{
223
224
227 {
228
230
231
233 }
234
235
238}
#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 531 of file inbv.c.
535{
536
539 {
540
542
543
545
546
548 }
549}
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 DisplayShutdownBitmap().
◆ InbvBufferToScreenBlt()
Definition at line 553 of file inbv.c.
560{
561
564 {
565
567 }
568}
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 176 of file inbv.c.
179{
183
184
186
187
190 {
191
192 CommandLine = (LoaderBlock->LoadOptions ?
_strupr(LoaderBlock->LoadOptions) :
NULL);
193 ResetMode = (CommandLine ==
NULL) || (
strstr(CommandLine,
"BOOTLOGO") ==
NULL);
194 }
195
196
199 {
200
203 {
204
206 }
207
208
210
211
212 }
213
214
216}
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)
_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 626 of file inbv.c.
627{
629
630
632
633
636 Percentage =
min(Percentage, 99);
637
639 {
640
643 }
644}
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 572 of file inbv.c.
579{
580
583 {
584
586 }
587}
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 601 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 690 of file inbv.c.
692{
694
695
699 {
700
702
703
705 }
706}
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(), DisplayShutdownBitmap(), InbvBitBlt(), InbvBufferToScreenBlt(), InbvDisplayString(), InbvDriverInitialize(), InbvEnableBootDriver(), InbvIsBootDriverInstalled(), InbvNotifyDisplayOwnershipLost(), InbvResetDisplay(), InbvScreenToBufferBlt(), InbvSolidColorFill(), InbvUpdateProgressBar(), and Phase1InitializationDiscard().