diff --git a/reactos/drivers/base/bootvid/bootvid.c b/reactos/drivers/base/bootvid/bootvid.c index 8f99cd1e910..48c821e47b7 100644 --- a/reactos/drivers/base/bootvid/bootvid.c +++ b/reactos/drivers/base/bootvid/bootvid.c @@ -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(); } diff --git a/reactos/drivers/base/bootvid/bootvid.h b/reactos/drivers/base/bootvid/bootvid.h index 4907747b95f..4e82c800aa3 100644 --- a/reactos/drivers/base/bootvid/bootvid.h +++ b/reactos/drivers/base/bootvid/bootvid.h @@ -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); diff --git a/reactos/drivers/base/bootvid/vid_vga.c b/reactos/drivers/base/bootvid/vid_vga.c index 0dbd179891d..66d74e5bcfd 100644 --- a/reactos/drivers/base/bootvid/vid_vga.c +++ b/reactos/drivers/base/bootvid/vid_vga.c @@ -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) diff --git a/reactos/drivers/base/bootvid/vid_vgatext.c b/reactos/drivers/base/bootvid/vid_vgatext.c index 04232fd3721..b8c4c24fb9d 100644 --- a/reactos/drivers/base/bootvid/vid_vgatext.c +++ b/reactos/drivers/base/bootvid/vid_vgatext.c @@ -141,7 +141,7 @@ VidVgaTextScreenToBufferBlt( IN ULONG Top, IN ULONG Width, IN ULONG Height, - IN ULONG Delta) + IN LONG Delta) { } diff --git a/reactos/drivers/base/bootvid/vid_xbox.c b/reactos/drivers/base/bootvid/vid_xbox.c index ad24a3ee95e..5700bd14b34 100644 --- a/reactos/drivers/base/bootvid/vid_xbox.c +++ b/reactos/drivers/base/bootvid/vid_xbox.c @@ -61,7 +61,7 @@ VidXboxScreenToBufferBlt( IN ULONG Top, IN ULONG Width, IN ULONG Height, - IN ULONG Delta) + IN LONG Delta) { } diff --git a/reactos/include/ddk/ntifs.h b/reactos/include/ddk/ntifs.h index e21a2017214..f7cb609cea4 100644 --- a/reactos/include/ddk/ntifs.h +++ b/reactos/include/ddk/ntifs.h @@ -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; diff --git a/reactos/lib/cmlib/cmlib.h b/reactos/lib/cmlib/cmlib.h index 7e590c2cd58..6c464737c4c 100644 --- a/reactos/lib/cmlib/cmlib.h +++ b/reactos/lib/cmlib/cmlib.h @@ -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, diff --git a/reactos/ntoskrnl/ex/init.c b/reactos/ntoskrnl/ex/init.c index 0377683c325..9ab5a3ffd0f 100644 --- a/reactos/ntoskrnl/ex/init.c +++ b/reactos/ntoskrnl/ex/init.c @@ -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 */ diff --git a/reactos/ntoskrnl/io/iomgr/arcname.c b/reactos/ntoskrnl/io/iomgr/arcname.c index eeac14b39b8..de400612302 100644 --- a/reactos/ntoskrnl/io/iomgr/arcname.c +++ b/reactos/ntoskrnl/io/iomgr/arcname.c @@ -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; }