#include <debug.h>
#include "vgavideo.h"
-void outxay(USHORT ad, UCHAR x, UCHAR y)
+void outxay(PUSHORT ad, UCHAR x, UCHAR y)
{
USHORT xy = (x << 8) + y;
- VideoPortWritePortUshort((PUSHORT)ad, xy);
+ VideoPortWritePortUshort(ad, xy);
}
void setMode(VideoMode mode)
for(x=0; x<5; x++)
{
- outxay(SEQ, mode.Seq[x], x);
+ outxay((PUSHORT)SEQ, mode.Seq[x], x);
}
VideoPortWritePortUshort((PUSHORT)CRTC, 0x11);
for(x=0; x<25; x++)
{
- outxay(CRTC, mode.Crtc[x], x);
+ outxay((PUSHORT)CRTC, mode.Crtc[x], x);
}
for(x=0; x<9; x++)
{
- outxay(GRAPHICS, mode.Gfx[x], x);
+ outxay((PUSHORT)GRAPHICS, mode.Gfx[x], x);
}
x=VideoPortReadPortUchar((PUCHAR)FEATURE);
NTSTATUS Status;
VIDEO_X86_BIOS_ARGUMENTS vxba;
VP_STATUS vps;
+ ULONG ThreadRelease = 1;
CHECKPOINT;
Event = 0;
if( !NT_SUCCESS( Status ) )
DbgPrint( "VGA: Failed to open refresh event\n" );
else {
- NtSetEvent( Event, 1 );
+ NtSetEvent( Event, &ThreadRelease );
NtClose( Event );
}
}
VGAMapVideoMemory((PVIDEO_MEMORY) RequestPacket->InputBuffer,
(PVIDEO_MEMORY_INFORMATION)
RequestPacket->OutputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_QUERY_AVAIL_MODES:
VGAQueryAvailModes((PVIDEO_MODE_INFORMATION) RequestPacket->OutputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_QUERY_CURRENT_MODE:
VGAQueryCurrentMode((PVIDEO_MODE_INFORMATION) RequestPacket->OutputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_QUERY_NUM_AVAIL_MODES:
VGAQueryNumAvailModes((PVIDEO_NUM_MODES) RequestPacket->OutputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_RESET_DEVICE:
- VGAResetDevice(&RequestPacket->StatusBlock);
+ VGAResetDevice(RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_SET_COLOR_REGISTERS:
VGASetColorRegisters((PVIDEO_CLUT) RequestPacket->InputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_SET_CURRENT_MODE:
VGASetCurrentMode((PVIDEO_MODE) RequestPacket->InputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_SHARE_VIDEO_MEMORY:
VGAShareVideoMemory((PVIDEO_SHARE_MEMORY) RequestPacket->InputBuffer,
(PVIDEO_MEMORY_INFORMATION) RequestPacket->OutputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_UNMAP_VIDEO_MEMORY:
VGAUnmapVideoMemory((PVIDEO_MEMORY) RequestPacket->InputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_UNSHARE_VIDEO_MEMORY:
VGAUnshareVideoMemory((PVIDEO_MEMORY) RequestPacket->InputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_SET_PALETTE_REGISTERS:
- VGASetPaletteRegisters((PVIDEO_CLUT) RequestPacket->InputBuffer,
- &RequestPacket->StatusBlock);
+ VGASetPaletteRegisters((PWORD) RequestPacket->InputBuffer,
+ RequestPacket->StatusBlock);
break;
#if 0
case IOCTL_VIDEO_FREE_PUBLIC_ACCESS_RANGES:
VGAFreePublicAccessRanges((PVIDEO_PUBLIC_ACCESS_RANGES)
RequestPacket->InputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_GET_BANK_SELECT_CODE:
case IOCTL_VIDEO_QUERY_PUBLIC_ACCESS_RANGES:
VGAQueryPublicAccessRanges((PVIDEO_PUBLIC_ACCESS_RANGES)
RequestPacket->OutputBuffer,
- &RequestPacket->StatusBlock);
+ RequestPacket->StatusBlock);
break;
case IOCTL_VIDEO_RESTORE_HARDWARE_STATE:
for (i=ColorLookUpTable->FirstEntry; i<ColorLookUpTable->NumEntries; i++)
{
- VideoPortWritePortUchar(0x03c8, i);
- VideoPortWritePortUchar(0x03c9, ColorLookUpTable->LookupTable[i].RgbArray.Red);
- VideoPortWritePortUchar(0x03c9, ColorLookUpTable->LookupTable[i].RgbArray.Green);
- VideoPortWritePortUchar(0x03c9, ColorLookUpTable->LookupTable[i].RgbArray.Blue);
+ VideoPortWritePortUchar((PUCHAR)0x03c8, i);
+ VideoPortWritePortUchar((PUCHAR)0x03c9, ColorLookUpTable->LookupTable[i].RgbArray.Red);
+ VideoPortWritePortUchar((PUCHAR)0x03c9, ColorLookUpTable->LookupTable[i].RgbArray.Green);
+ VideoPortWritePortUchar((PUCHAR)0x03c9, ColorLookUpTable->LookupTable[i].RgbArray.Blue);
}
}
-/* $Id: vidport.c,v 1.19 2001/05/02 12:37:06 jfilby Exp $
+/* $Id: vidport.c,v 1.20 2001/06/26 12:51:00 ekohl Exp $
*
* VideoPort driver
* Written by Rex Jolliff
PBYTE ReturnCsrssAddress(void)
{
- return Csrss;
+ return (PBYTE)Csrss;
}
// ------------------------------------------------------- Public Interface
while (Again);
/* Find a process handle for csrss */
- Cid.UniqueProcess = 3;
+ Cid.UniqueProcess = (HANDLE)3;
Cid.UniqueThread = 0;
Status = ZwOpenProcess(&CsrssHandle,
PROCESS_ALL_ACCESS,
vrp->OutputBufferLength = Irp->Stack[0].Parameters.DeviceIoControl.OutputBufferLength;
// Call the Miniport Driver with the VRP
- DeviceObject->DriverObject->DriverStartIo(DeviceObject->DeviceExtension, vrp);
+ DeviceObject->DriverObject->DriverStartIo(DeviceObject->DeviceExtension, (PIRP)vrp);
// Translate the VRP back into the IRP for OutputBuffer
Irp->UserBuffer = vrp->OutputBuffer;