- Fix boot.

- Fix GUI boot (bootvid).
- Fix cmlib bug.

svn path=/trunk/; revision=24684
This commit is contained in:
Alex Ionescu
2006-11-05 20:28:59 +00:00
parent a57cbd2aa5
commit fb3a3c8a7f
9 changed files with 31 additions and 12 deletions
+12 -3
View File
@@ -94,6 +94,8 @@ BootVidAnimationThread(PVOID Ignored)
Interval.QuadPart = -PALETTE_FADE_TIME;
#else
#if 0
if (AnimBarPos == 0)
{
VidSolidColorFill(0x173, 354, 0x178, 354 + 9, 0);
@@ -104,14 +106,21 @@ BootVidAnimationThread(PVOID Ignored)
0xe8 + AnimBarPos * 8, 354 + 9,
0);
}
if (AnimBarPos >= 3)
{
VidBufferToScreenBlt(_Square1, 0xeb + AnimBarPos * 8, 354, 6, 9, 4);
}
if (AnimBarPos >= 2 && AnimBarPos <= 16)
{
VidBufferToScreenBlt(_Square2, 0xf3 + AnimBarPos * 8, 354, 6, 9, 4);
}
if (AnimBarPos >= 1 && AnimBarPos <= 15)
{
VidBufferToScreenBlt(_Square3, 0xfb + AnimBarPos * 8, 354, 6, 9, 4);
}
#endif
if (Iteration <= PALETTE_FADE_STEPS)
{
Interval.QuadPart = -PALETTE_FADE_TIME;
@@ -270,7 +279,7 @@ BootVidFinalizeBootLogo(VOID)
KeWaitForSingleObject(&ShutdownCompleteEvent, Executive, KernelMode,
FALSE, NULL);
DPRINT1("Bootvid thread to finish.\n");
VidResetDisplay();
//VidResetDisplay();
}
+1 -1
View File
@@ -45,7 +45,7 @@ typedef BOOLEAN (NTAPI *PVID_INITIALIZE)(BOOLEAN);
typedef VOID (NTAPI *PVID_CLEAN_UP)(VOID);
typedef VOID (NTAPI *PVID_RESET_DISPLAY)(VOID);
typedef VOID (NTAPI *PVID_BUFFER_TO_SCREEN_BLT)(PUCHAR, ULONG, ULONG, ULONG, ULONG, ULONG);
typedef VOID (NTAPI *PVID_SCREEN_TO_BUFFER_BLT)(PUCHAR, ULONG, ULONG, ULONG, ULONG, ULONG);
typedef VOID (NTAPI *PVID_SCREEN_TO_BUFFER_BLT)(PUCHAR, ULONG, ULONG, ULONG, ULONG, LONG);
typedef VOID (NTAPI *PVID_BITBLT)(PUCHAR, ULONG, ULONG);
typedef VOID (NTAPI *PVID_SOLID_COLOR_FILL)(ULONG, ULONG, ULONG, ULONG, ULONG);
typedef VOID (NTAPI *PVID_DISPLAY_STRING)(PCSTR);
+3 -3
View File
@@ -282,7 +282,7 @@ VidVgaScreenToBufferBlt(
IN ULONG Top,
IN ULONG Width,
IN ULONG Height,
IN ULONG Delta)
IN LONG Delta)
{
UCHAR Plane;
UCHAR b;
@@ -321,7 +321,7 @@ VidVgaBitBlt(
ULONG bfOffBits;
UCHAR ClrUsed;
ULONG Index;
ULONG Delta;
LONG Delta;
BitmapInfoHeader = (PBITMAPINFOHEADER)Buffer;
Palette = (LPRGBQUAD)(Buffer + BitmapInfoHeader->biSize);
@@ -364,7 +364,7 @@ VidVgaBitBlt(
Buffer += bfOffBits;
while (InputPos < BitmapInfoHeader->biSizeImage &&
OutputPos < Delta * BitmapInfoHeader->biHeight * 2)
OutputPos < (ULONG)Delta * BitmapInfoHeader->biHeight * 2)
{
Length = Buffer[InputPos++];
if (Length > 0)
+1 -1
View File
@@ -141,7 +141,7 @@ VidVgaTextScreenToBufferBlt(
IN ULONG Top,
IN ULONG Width,
IN ULONG Height,
IN ULONG Delta)
IN LONG Delta)
{
}
+1 -1
View File
@@ -61,7 +61,7 @@ VidXboxScreenToBufferBlt(
IN ULONG Top,
IN ULONG Width,
IN ULONG Height,
IN ULONG Delta)
IN LONG Delta)
{
}
+2
View File
@@ -1578,6 +1578,8 @@ typedef struct _PORT_MESSAGE
};
} PORT_MESSAGE, *PPORT_MESSAGE;
#define LPC_KERNELMODE_MESSAGE (CSHORT)((USHORT)0x8000)
typedef struct _PORT_VIEW
{
ULONG Length;
+2 -2
View File
@@ -148,10 +148,10 @@ NTSTATUS CMAPI
HvInitialize(
PHHIVE RegistryHive,
ULONG Operation,
ULONG HiveType,
ULONG HiveFlags,
ULONG_PTR HiveData OPTIONAL,
ULONG Cluster OPTIONAL,
ULONG Flags,
ULONG FileType,
PALLOCATE_ROUTINE Allocate,
PFREE_ROUTINE Free,
PFILE_READ_ROUTINE FileRead,
+1
View File
@@ -948,6 +948,7 @@ ExPhase2Init(PVOID Context)
/* Wait 5 seconds for it to initialize */
Timeout.QuadPart = Int32x32To64(5, -10000000);
Status = ZwWaitForSingleObject(ProcessHandle, FALSE, &Timeout);
if (!NoGuiBoot) InbvFinalizeBootLogo();
if (Status == STATUS_SUCCESS)
{
/* Bugcheck the system if SMSS couldn't initialize */
+8 -1
View File
@@ -101,7 +101,14 @@ IopApplyRosCdromArcHack(IN ULONG i)
}
/* Return whether this is the CD or not */
if (DeviceNumber != 1) return TRUE;
if (DeviceNumber != 1)
{
/* Hack until IoAssignDriveLetters is fixed */
swprintf(SharedUserData->NtSystemRoot, L"D:\\reactos");
return TRUE;
}
/* Failed */
return FALSE;
}