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 223 of file inbv.c.
224{
226
227
230 {
231
233
234
236 }
237
238
241}
#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 534 of file inbv.c.
538{
539
542 {
543
545
546
548
549
551 }
552}
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 556 of file inbv.c.
563{
564
567 {
568
570 }
571}
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 179 of file inbv.c.
182{
186
187
189
190
193 {
194
195 CommandLine = (LoaderBlock->LoadOptions ?
_strupr(LoaderBlock->LoadOptions) :
NULL);
196 ResetMode = (CommandLine ==
NULL) || (
strstr(CommandLine,
"BOOTLOGO") ==
NULL);
197 }
198
199
202 {
203
206 {
207
209 }
210
211
213
214
215 }
216
217
219}
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 629 of file inbv.c.
630{
632
633
635
636
639 Percentage =
min(Percentage, 99);
640
642 {
643
646 }
647}
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 575 of file inbv.c.
582{
583
586 {
587
589 }
590}
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 604 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 693 of file inbv.c.
695{
697
698
702 {
703
705
706
708 }
709}
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().