Author: cgutman
Date: Fri Feb 19 04:16:04 2010
New Revision: 45618
URL:
http://svn.reactos.org/svn/reactos?rev=45618&view=rev
Log:
[NTOSKRNL]
- Put back the boot logo from the old bootvid
- Rewrite the old broken progress bar code and enable the progress bar
- The progress bar works now :)
- NOTE: Someone should fix the copyright year on the boot logo
Modified:
trunk/reactos/ntoskrnl/inbv/inbv.c
trunk/reactos/ntoskrnl/inbv/logo/5.bmp
Modified: trunk/reactos/ntoskrnl/inbv/inbv.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/inbv/inbv.c?rev=4…
==============================================================================
--- trunk/reactos/ntoskrnl/inbv/inbv.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/inbv/inbv.c [iso-8859-1] Fri Feb 19 04:16:04 2010
@@ -407,38 +407,28 @@
NTAPI
InbvUpdateProgressBar(IN ULONG Progress)
{
- ULONG FillCount, Left = 0;
+ ULONG FillCount;
/* Make sure the progress bar is enabled, that we own and are installed */
if ((ShowProgressBar) &&
(InbvBootDriverInstalled) &&
(InbvDisplayState == INBV_DISPLAY_STATE_OWNED))
{
- /* Calculate the fill count */
- FillCount = InbvProgressState.Bias * Progress + InbvProgressState.Floor;
- FillCount *= 18;
- FillCount /= 10000;
-
- /* Start fill loop */
- while (FillCount)
- {
- /* Acquire the lock */
- InbvAcquireLock();
-
- /* Fill the progress bar */
- VidSolidColorFill(Left + ProgressBarLeft,
- ProgressBarTop,
- Left + ProgressBarLeft + 7,
- ProgressBarTop + 7,
- 11);
-
- /* Release the lock */
- InbvReleaseLock();
-
- /* Update the X position */
- Left += 9;
- FillCount--;
- }
+ FillCount = InbvProgressState.Bias * Progress * 121 + InbvProgressState.Floor;
+ FillCount /= 1000000;
+
+ /* Acquire the lock */
+ InbvAcquireLock();
+
+ /* Fill the progress bar */
+ VidSolidColorFill(ProgressBarLeft,
+ ProgressBarTop,
+ ProgressBarLeft + FillCount,
+ ProgressBarTop + 12,
+ 11);
+
+ /* Release the lock */
+ InbvReleaseLock();
}
}
@@ -613,7 +603,7 @@
/* Is the boot driver installed? */
if (!InbvBootDriverInstalled) return;
- /* FIXME: TODO, display full-screen bitmap */
+ /* Display full-screen bitmap */
Bitmap = InbvGetResourceAddress(5);
if (Bitmap)
{
@@ -626,6 +616,9 @@
else
Top = (480 - BitmapInfoHeader->biHeight) / 2;
InbvBitBlt(Bitmap, Left, Top);
+
+ /* Set progress bar coordinates and display it */
+ InbvSetProgressBarCoordinates(257, 352);
}
}
Modified: trunk/reactos/ntoskrnl/inbv/logo/5.bmp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/inbv/logo/5.bmp?r…
==============================================================================
Binary files - no diff available.