Skip to content

DirectDraw to Direct3D9 Conversion Status

Elisha Riedlinger edited this page Aug 13, 2020 · 13 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...

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()