Author: ion
Date: Sun Feb 4 22:15:04 2007
New Revision: 25721
URL:
http://svn.reactos.org/svn/reactos?rev=25721&view=rev
Log:
- Fix call to VidInitialize.
- Disable call to HalDisplayReset to avoid bugcheck. [Lock held]
- Don't unload bootvid after Phase 3 I/O Init since we still need to call it.
- Implement HalpTranslateResourceAddress since bootvid (and other windows boot drivers,
potentially) needs it.
Modified:
trunk/reactos/drivers/base/bootvid/bootvid.c
trunk/reactos/hal/halx86/generic/bus.c
trunk/reactos/include/reactos/drivers/bootvid/bootvid.h
trunk/reactos/ntoskrnl/inbv/inbv.c
trunk/reactos/ntoskrnl/io/iomgr/driver.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 Feb 4 22:15:04 2007
@@ -423,7 +423,7 @@
//
// Reset the display
//
- HalResetDisplay();
+ //HalResetDisplay();
curr_x = 0;
curr_y = 0;
Modified: trunk/reactos/hal/halx86/generic/bus.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/generic/bus.c?r…
==============================================================================
--- trunk/reactos/hal/halx86/generic/bus.c (original)
+++ trunk/reactos/hal/halx86/generic/bus.c Sun Feb 4 22:15:04 2007
@@ -93,6 +93,28 @@
return Vector;
}
+BOOLEAN
+NTAPI
+HalpFindBusAddressTranslation(IN PHYSICAL_ADDRESS BusAddress,
+ IN OUT PULONG AddressSpace,
+ OUT PPHYSICAL_ADDRESS TranslatedAddress,
+ IN OUT PULONG_PTR Context,
+ IN BOOLEAN NextBus)
+{
+ /* Make sure we have a context */
+ if (!Context) return FALSE;
+
+ /* If we have data in the context, then this shouldn't be a new lookup */
+ if ((*Context) && (NextBus == TRUE)) return FALSE;
+
+ /* Return bus data */
+ TranslatedAddress->QuadPart = BusAddress.QuadPart;
+
+ /* Set context value and return success */
+ *Context = 1;
+ return TRUE;
+}
+
VOID
NTAPI
HalpInitNonBusHandler(VOID)
@@ -100,7 +122,7 @@
/* These should be written by the PCI driver later, but we give defaults */
HalPciTranslateBusAddress = HalpTranslateBusAddress;
HalPciAssignSlotResources = HalpAssignSlotResources;
- //HalFindBusAddressTranslation = HalpFindBusAddressTranslation;
+ HalFindBusAddressTranslation = HalpFindBusAddressTranslation;
}
/* PUBLIC FUNCTIONS **********************************************************/
Modified: trunk/reactos/include/reactos/drivers/bootvid/bootvid.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/drivers/bo…
==============================================================================
--- trunk/reactos/include/reactos/drivers/bootvid/bootvid.h (original)
+++ trunk/reactos/include/reactos/drivers/bootvid/bootvid.h Sun Feb 4 22:15:04 2007
@@ -40,7 +40,7 @@
IN ULONG Width,
IN ULONG Height,
IN ULONG Delta);
-
+
VOID
NTAPI
VidDisplayString(PUCHAR String);
@@ -50,7 +50,7 @@
VidBitBlt(PUCHAR Buffer,
ULONG Left,
ULONG Top);
-
+
VOID
NTAPI
VidScreenToBufferBlt(PUCHAR Buffer,
@@ -59,7 +59,7 @@
ULONG Width,
ULONG Height,
ULONG Delta);
-
+
VOID
NTAPI
VidSolidColorFill(IN ULONG Left,
@@ -68,5 +68,4 @@
IN ULONG Bottom,
IN UCHAR Color);
-
#endif
Modified: trunk/reactos/ntoskrnl/inbv/inbv.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/inbv/inbv.c?rev=2…
==============================================================================
--- trunk/reactos/ntoskrnl/inbv/inbv.c (original)
+++ trunk/reactos/ntoskrnl/inbv/inbv.c Sun Feb 4 22:15:04 2007
@@ -104,8 +104,7 @@
}
/* Initialize the video */
- InbvBootDriverInstalled = VidInitialize(CustomLogo);
- DPRINT1("Init: %lx\n", InbvBootDriverInstalled);
+ InbvBootDriverInstalled = VidInitialize(!CustomLogo);
if (InbvBootDriverInstalled)
{
/* Find bitmap resources in the kernel */
@@ -239,10 +238,8 @@
/* Acquire the lock */
InbvAcquireLock();
-#if 0
/* Make sure we're installed and display the string */
if (InbvBootDriverInstalled) VidDisplayString(String);
-#endif
/* Call Headless (We don't support headless for now)
HeadlessDispatch(DISPLAY_STRING); */
Modified: trunk/reactos/ntoskrnl/io/iomgr/driver.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/io/iomgr/driver.c…
==============================================================================
--- trunk/reactos/ntoskrnl/io/iomgr/driver.c (original)
+++ trunk/reactos/ntoskrnl/io/iomgr/driver.c Sun Feb 4 22:15:04 2007
@@ -1018,7 +1018,7 @@
}
/* Loop modules again */
- NextEntry = ListHead->Flink->Flink->Flink;
+ NextEntry = ListHead->Flink->Flink->Flink->Flink;
while (ListHead != NextEntry)
{
/* Get the entry */