Author: ion
Date: Sun Nov 5 23:28:59 2006
New Revision: 24684
URL:
http://svn.reactos.org/svn/reactos?rev=24684&view=rev
Log:
- Fix boot.
- Fix GUI boot (bootvid).
- Fix cmlib bug.
Modified:
trunk/reactos/drivers/base/bootvid/bootvid.c
trunk/reactos/drivers/base/bootvid/bootvid.h
trunk/reactos/drivers/base/bootvid/vid_vga.c
trunk/reactos/drivers/base/bootvid/vid_vgatext.c
trunk/reactos/drivers/base/bootvid/vid_xbox.c
trunk/reactos/include/ddk/ntifs.h
trunk/reactos/lib/cmlib/cmlib.h
trunk/reactos/ntoskrnl/ex/init.c
trunk/reactos/ntoskrnl/io/iomgr/arcname.c
Modified: trunk/reactos/drivers/base/bootvid/bootvid.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/bootvid/bootv…
==============================================================================
--- trunk/reactos/drivers/base/bootvid/bootvid.c (original)
+++ trunk/reactos/drivers/base/bootvid/bootvid.c Sun Nov 5 23:28:59 2006
@@ -94,6 +94,8 @@
Interval.QuadPart = -PALETTE_FADE_TIME;
#else
+
+#if 0
if (AnimBarPos == 0)
{
VidSolidColorFill(0x173, 354, 0x178, 354 + 9, 0);
@@ -104,14 +106,21 @@
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 @@
KeWaitForSingleObject(&ShutdownCompleteEvent, Executive, KernelMode,
FALSE, NULL);
DPRINT1("Bootvid thread to finish.\n");
- VidResetDisplay();
+ //VidResetDisplay();
}
Modified: trunk/reactos/drivers/base/bootvid/bootvid.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/bootvid/bootv…
==============================================================================
--- trunk/reactos/drivers/base/bootvid/bootvid.h (original)
+++ trunk/reactos/drivers/base/bootvid/bootvid.h Sun Nov 5 23:28:59 2006
@@ -45,7 +45,7 @@
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);
Modified: trunk/reactos/drivers/base/bootvid/vid_vga.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/bootvid/vid_v…
==============================================================================
--- trunk/reactos/drivers/base/bootvid/vid_vga.c (original)
+++ trunk/reactos/drivers/base/bootvid/vid_vga.c Sun Nov 5 23:28:59 2006
@@ -282,7 +282,7 @@
IN ULONG Top,
IN ULONG Width,
IN ULONG Height,
- IN ULONG Delta)
+ IN LONG Delta)
{
UCHAR Plane;
UCHAR b;
@@ -321,7 +321,7 @@
ULONG bfOffBits;
UCHAR ClrUsed;
ULONG Index;
- ULONG Delta;
+ LONG Delta;
BitmapInfoHeader = (PBITMAPINFOHEADER)Buffer;
Palette = (LPRGBQUAD)(Buffer + BitmapInfoHeader->biSize);
@@ -364,7 +364,7 @@
Buffer += bfOffBits;
while (InputPos < BitmapInfoHeader->biSizeImage &&
- OutputPos < Delta * BitmapInfoHeader->biHeight * 2)
+ OutputPos < (ULONG)Delta * BitmapInfoHeader->biHeight * 2)
{
Length = Buffer[InputPos++];
if (Length > 0)
Modified: trunk/reactos/drivers/base/bootvid/vid_vgatext.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/bootvid/vid_v…
==============================================================================
--- trunk/reactos/drivers/base/bootvid/vid_vgatext.c (original)
+++ trunk/reactos/drivers/base/bootvid/vid_vgatext.c Sun Nov 5 23:28:59 2006
@@ -141,7 +141,7 @@
IN ULONG Top,
IN ULONG Width,
IN ULONG Height,
- IN ULONG Delta)
+ IN LONG Delta)
{
}
Modified: trunk/reactos/drivers/base/bootvid/vid_xbox.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/base/bootvid/vid_x…
==============================================================================
--- trunk/reactos/drivers/base/bootvid/vid_xbox.c (original)
+++ trunk/reactos/drivers/base/bootvid/vid_xbox.c Sun Nov 5 23:28:59 2006
@@ -61,7 +61,7 @@
IN ULONG Top,
IN ULONG Width,
IN ULONG Height,
- IN ULONG Delta)
+ IN LONG Delta)
{
}
Modified: trunk/reactos/include/ddk/ntifs.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/ntifs.h?rev=24…
==============================================================================
--- trunk/reactos/include/ddk/ntifs.h (original)
+++ trunk/reactos/include/ddk/ntifs.h Sun Nov 5 23:28:59 2006
@@ -1578,6 +1578,8 @@
};
} PORT_MESSAGE, *PPORT_MESSAGE;
+#define LPC_KERNELMODE_MESSAGE (CSHORT)((USHORT)0x8000)
+
typedef struct _PORT_VIEW
{
ULONG Length;
Modified: trunk/reactos/lib/cmlib/cmlib.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/cmlib/cmlib.h?rev=2468…
==============================================================================
--- trunk/reactos/lib/cmlib/cmlib.h (original)
+++ trunk/reactos/lib/cmlib/cmlib.h Sun Nov 5 23:28:59 2006
@@ -148,10 +148,10 @@
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,
Modified: trunk/reactos/ntoskrnl/ex/init.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ex/init.c?rev=246…
==============================================================================
--- trunk/reactos/ntoskrnl/ex/init.c (original)
+++ trunk/reactos/ntoskrnl/ex/init.c Sun Nov 5 23:28:59 2006
@@ -948,6 +948,7 @@
/* 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 */
Modified: trunk/reactos/ntoskrnl/io/iomgr/arcname.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/arcname.…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/arcname.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/arcname.c Sun Nov 5 23:28:59 2006
@@ -101,7 +101,14 @@
}
/* 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;
}