--- trunk/reactos/drivers/video/displays/framebuf/screen.c 2005-05-26 19:22:45 UTC (rev 15526)
+++ trunk/reactos/drivers/video/displays/framebuf/screen.c 2005-05-26 19:57:54 UTC (rev 15527)
@@ -90,17 +90,9 @@
while (ulTemp--)
{
- /*
- FIXME
- Do only remove no supporet mode not reste the ModeInfoPtr->Length=0
- if the mode should be betwin 8 - 32 it will not found the rest
- of the mode that comes after it. That why 24bits graphic card
- fails. and that reason We add 15bpp check here
- */
if ((ModeInfoPtr->NumberOfPlanes != 1) ||
!(ModeInfoPtr->AttributeFlags & VIDEO_MODE_GRAPHICS) ||
((ModeInfoPtr->BitsPerPlane != 8) &&
- (ModeInfoPtr->BitsPerPlane != 15) &&
(ModeInfoPtr->BitsPerPlane != 16) &&
(ModeInfoPtr->BitsPerPlane != 24) &&
(ModeInfoPtr->BitsPerPlane != 32)))
@@ -108,7 +100,6 @@
ModeInfoPtr->Length = 0;
}
-
ModeInfoPtr = (PVIDEO_MODE_INFORMATION)
(((PUCHAR)ModeInfoPtr) + Modes.ModeInformationLength);
}
@@ -167,7 +158,6 @@
ModeInfoPtr = ModeInfo;
while (ModeCount-- > 0)
{
-
if (ModeInfoPtr->Length > 0 &&
pDevMode->dmPelsWidth == ModeInfoPtr->VisScreenWidth &&
pDevMode->dmPelsHeight == ModeInfoPtr->VisScreenHeight &&
@@ -179,7 +169,8 @@
break;
}
- ModeInfoPtr++;
+ ModeInfoPtr = (PVIDEO_MODE_INFORMATION)
+ (((PUCHAR)ModeInfoPtr) + ModeInfoSize);
}
}
@@ -392,6 +383,7 @@
{
if (ModeInfoPtr->Length == 0)
{
+ ModeInfoPtr = (PVIDEO_MODE_INFORMATION)(((ULONG_PTR)ModeInfoPtr) + ModeInfoSize);
continue;
}