ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

xboxvmp.h
Go to the documentation of this file.
00001 /*
00002  * ReactOS Xbox miniport video driver
00003  * Copyright (C) 2004 Gé van Geldorp
00004  *
00005  * Based on VBE miniport video driver
00006  * Copyright (C) 2004 Filip Navara
00007  *
00008  * This program is free software; you can redistribute it and/or
00009  * modify it under the terms of the GNU General Public License
00010  * as published by the Free Software Foundation; either version 2
00011  * of the License, or (at your option) any later version.
00012  *
00013  * This program is distributed in the hope that it will be useful,
00014  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016  * GNU General Public License for more details.
00017  *
00018  * You should have received a copy of the GNU General Public License along
00019  * with this program; if not, write to the Free Software Foundation, Inc.,
00020  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
00021  */
00022 
00023 #pragma once
00024 
00025 /* INCLUDES *******************************************************************/
00026 
00027 #include "ntdef.h"
00028 #define PAGE_SIZE 4096
00029 #include "dderror.h"
00030 #include "devioctl.h"
00031 #include "miniport.h"
00032 #include "video.h"
00033 
00034 /* FIXME: NDK not compatible with miniport drivers */
00035 #define SystemBasicInformation 0
00036 typedef struct _SYSTEM_BASIC_INFORMATION
00037 {
00038     ULONG Reserved;
00039     ULONG TimerResolution;
00040     ULONG PageSize;
00041     ULONG NumberOfPhysicalPages;
00042     ULONG LowestPhysicalPageNumber;
00043     ULONG HighestPhysicalPageNumber;
00044     ULONG AllocationGranularity;
00045     ULONG MinimumUserModeAddress;
00046     ULONG MaximumUserModeAddress;
00047     KAFFINITY ActiveProcessorsAffinityMask;
00048     CCHAR NumberOfProcessors;
00049 } SYSTEM_BASIC_INFORMATION, *PSYSTEM_BASIC_INFORMATION;
00050 
00051 LONG
00052 __stdcall
00053 ZwQuerySystemInformation(
00054     IN ULONG SystemInformationClass,
00055     OUT PVOID SystemInformation,
00056     IN ULONG Length,
00057     OUT PULONG ResultLength
00058 );
00059 
00060 typedef struct
00061 {
00062   PHYSICAL_ADDRESS PhysControlStart;
00063   ULONG ControlLength;
00064   PVOID VirtControlStart;
00065   PHYSICAL_ADDRESS PhysFrameBufferStart;
00066 } XBOXVMP_DEVICE_EXTENSION, *PXBOXVMP_DEVICE_EXTENSION;
00067 
00068 VP_STATUS NTAPI
00069 XboxVmpFindAdapter(
00070    IN PVOID HwDeviceExtension,
00071    IN PVOID HwContext,
00072    IN PWSTR ArgumentString,
00073    IN OUT PVIDEO_PORT_CONFIG_INFO ConfigInfo,
00074    OUT PUCHAR Again);
00075 
00076 BOOLEAN NTAPI
00077 XboxVmpInitialize(PVOID HwDeviceExtension);
00078 
00079 BOOLEAN NTAPI
00080 XboxVmpStartIO(
00081    PVOID HwDeviceExtension,
00082    PVIDEO_REQUEST_PACKET RequestPacket);
00083 
00084 BOOLEAN NTAPI
00085 XboxVmpResetHw(
00086    PVOID DeviceExtension,
00087    ULONG Columns,
00088    ULONG Rows);
00089 
00090 VP_STATUS NTAPI
00091 XboxVmpGetPowerState(
00092    PVOID HwDeviceExtension,
00093    ULONG HwId,
00094    PVIDEO_POWER_MANAGEMENT VideoPowerControl);
00095 
00096 VP_STATUS NTAPI
00097 XboxVmpSetPowerState(
00098    PVOID HwDeviceExtension,
00099    ULONG HwId,
00100    PVIDEO_POWER_MANAGEMENT VideoPowerControl);
00101 
00102 BOOLEAN FASTCALL
00103 XboxVmpSetCurrentMode(
00104    PXBOXVMP_DEVICE_EXTENSION DeviceExtension,
00105    PVIDEO_MODE RequestedMode,
00106    PSTATUS_BLOCK StatusBlock);
00107 
00108 BOOLEAN FASTCALL
00109 XboxVmpResetDevice(
00110    PXBOXVMP_DEVICE_EXTENSION DeviceExtension,
00111    PSTATUS_BLOCK StatusBlock);
00112 
00113 BOOLEAN FASTCALL
00114 XboxVmpMapVideoMemory(
00115    PXBOXVMP_DEVICE_EXTENSION DeviceExtension,
00116    PVIDEO_MEMORY RequestedAddress,
00117    PVIDEO_MEMORY_INFORMATION MapInformation,
00118    PSTATUS_BLOCK StatusBlock);
00119 
00120 BOOLEAN FASTCALL
00121 XboxVmpUnmapVideoMemory(
00122    PXBOXVMP_DEVICE_EXTENSION DeviceExtension,
00123    PVIDEO_MEMORY VideoMemory,
00124    PSTATUS_BLOCK StatusBlock);
00125 
00126 BOOLEAN FASTCALL
00127 XboxVmpQueryNumAvailModes(
00128    PXBOXVMP_DEVICE_EXTENSION DeviceExtension,
00129    PVIDEO_NUM_MODES Modes,
00130    PSTATUS_BLOCK StatusBlock);
00131 
00132 BOOLEAN FASTCALL
00133 XboxVmpQueryAvailModes(
00134    PXBOXVMP_DEVICE_EXTENSION DeviceExtension,
00135    PVIDEO_MODE_INFORMATION ReturnedModes,
00136    PSTATUS_BLOCK StatusBlock);
00137 
00138 BOOLEAN FASTCALL
00139 XboxVmpQueryCurrentMode(
00140    PXBOXVMP_DEVICE_EXTENSION DeviceExtension,
00141    PVIDEO_MODE_INFORMATION VideoModeInfo,
00142    PSTATUS_BLOCK StatusBlock);
00143 
00144 BOOLEAN FASTCALL
00145 XboxVmpSetColorRegisters(
00146    PXBOXVMP_DEVICE_EXTENSION DeviceExtension,
00147    PVIDEO_CLUT ColorLookUpTable,
00148    PSTATUS_BLOCK StatusBlock);
00149 
00150 /* EOF */

Generated on Sat May 26 2012 04:36:58 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.