mirror of
https://github.com/reactos/reactos.git
synced 2024-07-06 04:35:07 +00:00
- 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. svn path=/trunk/; revision=25721
This commit is contained in:
parent
7f1390f3c4
commit
925751080d
|
@ -423,7 +423,7 @@ TryAgain:
|
|||
//
|
||||
// Reset the display
|
||||
//
|
||||
HalResetDisplay();
|
||||
//HalResetDisplay();
|
||||
curr_x = 0;
|
||||
curr_y = 0;
|
||||
|
||||
|
|
|
@ -93,6 +93,28 @@ HalpGetSystemInterruptVector(IN ULONG BusNumber,
|
|||
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 @@ HalpInitNonBusHandler(VOID)
|
|||
/* These should be written by the PCI driver later, but we give defaults */
|
||||
HalPciTranslateBusAddress = HalpTranslateBusAddress;
|
||||
HalPciAssignSlotResources = HalpAssignSlotResources;
|
||||
//HalFindBusAddressTranslation = HalpFindBusAddressTranslation;
|
||||
HalFindBusAddressTranslation = HalpFindBusAddressTranslation;
|
||||
}
|
||||
|
||||
/* PUBLIC FUNCTIONS **********************************************************/
|
||||
|
|
|
@ -40,7 +40,7 @@ VidBufferToScreenBlt(IN PUCHAR Buffer,
|
|||
IN ULONG Width,
|
||||
IN ULONG Height,
|
||||
IN ULONG Delta);
|
||||
|
||||
|
||||
VOID
|
||||
NTAPI
|
||||
VidDisplayString(PUCHAR String);
|
||||
|
@ -50,7 +50,7 @@ NTAPI
|
|||
VidBitBlt(PUCHAR Buffer,
|
||||
ULONG Left,
|
||||
ULONG Top);
|
||||
|
||||
|
||||
VOID
|
||||
NTAPI
|
||||
VidScreenToBufferBlt(PUCHAR Buffer,
|
||||
|
@ -59,7 +59,7 @@ VidScreenToBufferBlt(PUCHAR Buffer,
|
|||
ULONG Width,
|
||||
ULONG Height,
|
||||
ULONG Delta);
|
||||
|
||||
|
||||
VOID
|
||||
NTAPI
|
||||
VidSolidColorFill(IN ULONG Left,
|
||||
|
@ -68,5 +68,4 @@ VidSolidColorFill(IN ULONG Left,
|
|||
IN ULONG Bottom,
|
||||
IN UCHAR Color);
|
||||
|
||||
|
||||
#endif
|
||||
|
|
|
@ -104,8 +104,7 @@ InbvDriverInitialize(IN PLOADER_PARAMETER_BLOCK LoaderBlock,
|
|||
}
|
||||
|
||||
/* 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 @@ InbvDisplayString(IN PCHAR String)
|
|||
/* 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); */
|
||||
|
|
|
@ -1018,7 +1018,7 @@ IopInitializeBootDrivers(VOID)
|
|||
}
|
||||
|
||||
/* Loop modules again */
|
||||
NextEntry = ListHead->Flink->Flink->Flink;
|
||||
NextEntry = ListHead->Flink->Flink->Flink->Flink;
|
||||
while (ListHead != NextEntry)
|
||||
{
|
||||
/* Get the entry */
|
||||
|
|
Loading…
Reference in a new issue