Skip to content

DirectDraw to Direct3D9 Conversion Status

Elisha Riedlinger edited this page Aug 13, 2020 · 28 revisions

Dd7to9 Status

For this page I will be talking about the status of the work to convert DirectX 1-7 to DirectX 9. This is a more technical discussion. For game compatibility check out this page here: Dd7to9 Compatibility

Note: this page is still in draft format...

Table Key

Note --Status--
The function is fully implemented. #22863a Full
The function is partially implemented. It may work in some circumstances but not all. #ffcc01 Partial
The function is either not implemented at all or not enough to work correctly. #f03c15 None

DirectDraw Interfaces

IDirectDraw

Function Notes -Support-
Compact()
CreateClipper()
CreatePalette()
CreateSurface()
DuplicateSurface()
EnumDisplayModes()
EnumSurfaces()
FlipToGDISurface()
GetCaps()
GetDisplayMode()
GetFourCCCodes()
GetGDISurface()
GetMonitorFrequency()
GetScanLine()
GetVerticalBlankStatus()
Initialize()
RestoreDisplayMode()
SetCooperativeLevel()
SetDisplayMode()
WaitForVerticalBlank()
GetAvailableVidMem()
GetSurfaceFromDC()
RestoreAllSurfaces()
TestCooperativeLevel()
GetDeviceIdentifier()
StartModeTest()
EvaluateMode()

IDirectDrawSurface

Function Notes -Support-
AddAttachedSurface()
AddOverlayDirtyRect()
Blt()
BltBatch()
BltFast()
DeleteAttachedSurface()
EnumAttachedSurfaces()
EnumOverlayZOrders()
Flip()
GetAttachedSurface()
GetBltStatus()
GetCaps()
GetClipper()
GetColorKey()
GetDC()
GetFlipStatus()
GetOverlayPosition()
GetPalette()
GetPixelFormat()
GetSurfaceDesc()
Initialize()
IsLost()
Lock()
ReleaseDC()
Restore()
SetClipper()
SetColorKey()
SetOverlayPosition()
SetPalette()
Unlock()
UpdateOverlay()
UpdateOverlayDisplay()
UpdateOverlayZOrder()
GetDDInterface()
PageLock()
PageUnlock()
SetSurfaceDesc()
SetPrivateData()
GetPrivateData()
FreePrivateData()
GetUniquenessValue()
ChangeUniquenessValue()
SetPriority()
GetPriority()
SetLOD()
GetLOD()

IDirectDrawClipper

Function Notes -Support-
GetClipList()
GetHWnd()
Initialize()
IsClipListChanged()
SetClipList()
SetHWnd()

IDirectDrawPalette

Function Notes -Support-
GetCaps()
GetEntries()
Initialize()
SetEntries()

IDirectDrawColorControl

Function Notes -Support-
GetColorControls()
SetColorControls()

IDirectDrawGammaControl

Function Notes -Support-
GetGammaRamp()
SetGammaRamp()

Direct3D Interfaces

IDirect3D

Function Notes -Support-
Initialize()
EnumDevices()
CreateLight()
CreateMaterial()
CreateViewport()
FindDevice()
CreateDevice()
CreateVertexBuffer()
EnumZBufferFormats()
EvictManagedTextures()

IDirect3DDevice

Function Notes -Support-
Initialize()
GetCaps()
SwapTextureHandles()
CreateExecuteBuffer()
GetStats()
Execute()
AddViewport()
DeleteViewport()
NextViewport()
Pick()
GetPickRecords()
EnumTextureFormats()
CreateMatrix()
SetMatrix()
GetMatrix()
DeleteMatrix()
BeginScene()
EndScene()
GetDirect3D()
SetCurrentViewport()
GetCurrentViewport()
SetRenderTarget()
GetRenderTarget()
Begin()
BeginIndexed()
Vertex()
Index()
End()
GetRenderState()
SetRenderState()
GetLightState()
SetLightState()
SetTransform()
GetTransform()
MultiplyTransform()
DrawPrimitive()
DrawIndexedPrimitive()
SetClipStatus()
GetClipStatus()
DrawPrimitiveStrided()
DrawIndexedPrimitiveStrided()
DrawPrimitiveVB()
DrawIndexedPrimitiveVB()
ComputeSphereVisibility()
GetTexture()
SetTexture()
GetTextureStageState()
SetTextureStageState()
ValidateDevice()
Clear()
SetViewport()
GetViewport()
SetMaterial()
GetMaterial()
SetLight()
GetLight()
BeginStateBlock()
EndStateBlock()
PreLoad()
ApplyStateBlock()
CaptureStateBlock()
DeleteStateBlock()
CreateStateBlock()
Load()
LightEnable()
GetLightEnable()
SetClipPlane()
GetClipPlane()
GetInfo()

IDirect3DViewport

Function Notes -Support-
Initialize()
GetViewport()
SetViewport()
TransformVertices()
LightElements()
SetBackground()
GetBackground()
SetBackgroundDepth()
GetBackgroundDepth()
Clear()
AddLight()
DeleteLight()
NextLight()
GetViewport2()
SetViewport2()
SetBackgroundDepth2()
GetBackgroundDepth2()
Clear2()

IDirect3DTexture

Function Notes -Support-
Initialize()
GetHandle()
PaletteChanged()
Load()
Unload()

IDirect3DMaterial

Function Notes -Support-
Initialize()
SetMaterial()
GetMaterial()
GetHandle()
Reserve()
Unreserve()

IDirect3DLight

Function Notes -Support-
Initialize()
SetLight()
GetLight()

IDirect3DExecuteBuffer

Function Notes -Support-
Initialize()
Lock()
Unlock()
SetExecuteData()
GetExecuteData()
Validate()
Optimize()

IDirect3DVertexBuffer

Function Notes -Support-
Lock()
Unlock()
ProcessVertices()
GetVertexBufferDesc()
Optimize()
ProcessVerticesStrided()

Clone this wiki locally