/// <summary> /// Register callback for Fifo method calls that triggers an action on the GPFIFO. /// </summary> /// <param name="state">GPU state where the triggers will be registered</param> public void RegisterCallbacksForFifo(GpuState state) { state.RegisterCallback(MethodOffset.FenceAction, FenceAction); state.RegisterCallback(MethodOffset.WaitForIdle, WaitForIdle); state.RegisterCallback(MethodOffset.SendMacroCodeData, SendMacroCodeData); state.RegisterCallback(MethodOffset.BindMacro, BindMacro); state.RegisterCallback(MethodOffset.SetMmeShadowRamControl, SetMmeShadowRamControl); }
/// <summary> /// Register callback for GPU method calls that triggers an action on the GPU. /// </summary> /// <param name="state">GPU state where the triggers will be registered</param> public void RegisterCallbacks(GpuState state) { state.RegisterCallback(MethodOffset.LaunchDma, LaunchDma); state.RegisterCallback(MethodOffset.LoadInlineData, LoadInlineData); state.RegisterCallback(MethodOffset.Dispatch, Dispatch); state.RegisterCallback(MethodOffset.SyncpointAction, IncrementSyncpoint); state.RegisterCallback(MethodOffset.CopyBuffer, CopyBuffer); state.RegisterCallback(MethodOffset.CopyTexture, CopyTexture); state.RegisterCallback(MethodOffset.TextureBarrier, TextureBarrier); state.RegisterCallback(MethodOffset.TextureBarrierTiled, TextureBarrierTiled); state.RegisterCallback(MethodOffset.VbElementU8, VbElementU8); state.RegisterCallback(MethodOffset.VbElementU16, VbElementU16); state.RegisterCallback(MethodOffset.VbElementU32, VbElementU32); state.RegisterCallback(MethodOffset.ResetCounter, ResetCounter); state.RegisterCallback(MethodOffset.DrawEnd, DrawEnd); state.RegisterCallback(MethodOffset.DrawBegin, DrawBegin); state.RegisterCallback(MethodOffset.DrawIndexedSmall, DrawIndexedSmall); state.RegisterCallback(MethodOffset.DrawIndexedSmall2, DrawIndexedSmall2); state.RegisterCallback(MethodOffset.DrawIndexedSmallIncInstance, DrawIndexedSmallIncInstance); state.RegisterCallback(MethodOffset.DrawIndexedSmallIncInstance2, DrawIndexedSmallIncInstance2); state.RegisterCallback(MethodOffset.IndexBufferCount, SetIndexBufferCount); state.RegisterCallback(MethodOffset.Clear, Clear); state.RegisterCallback(MethodOffset.Report, Report); state.RegisterCallback(MethodOffset.FirmwareCall4, FirmwareCall4); state.RegisterCallback(MethodOffset.UniformBufferUpdateData, 16, UniformBufferUpdate); state.RegisterCallback(MethodOffset.UniformBufferBindVertex, UniformBufferBindVertex); state.RegisterCallback(MethodOffset.UniformBufferBindTessControl, UniformBufferBindTessControl); state.RegisterCallback(MethodOffset.UniformBufferBindTessEvaluation, UniformBufferBindTessEvaluation); state.RegisterCallback(MethodOffset.UniformBufferBindGeometry, UniformBufferBindGeometry); state.RegisterCallback(MethodOffset.UniformBufferBindFragment, UniformBufferBindFragment); }
/// <summary> /// Register callback for GPU method calls that triggers an action on the GPU. /// </summary> /// <param name="state">GPU state where the triggers will be registered</param> public void RegisterCallbacks(GpuState state) { state.RegisterCallback(MethodOffset.LaunchDma, LaunchDma); state.RegisterCallback(MethodOffset.LoadInlineData, LoadInlineData); state.RegisterCallback(MethodOffset.Dispatch, Dispatch); state.RegisterCallback(MethodOffset.CopyBuffer, CopyBuffer); state.RegisterCallback(MethodOffset.CopyTexture, CopyTexture); state.RegisterCallback(MethodOffset.TextureBarrier, TextureBarrier); state.RegisterCallback(MethodOffset.InvalidateTextures, InvalidateTextures); state.RegisterCallback(MethodOffset.TextureBarrierTiled, TextureBarrierTiled); state.RegisterCallback(MethodOffset.ResetCounter, ResetCounter); state.RegisterCallback(MethodOffset.DrawEnd, DrawEnd); state.RegisterCallback(MethodOffset.DrawBegin, DrawBegin); state.RegisterCallback(MethodOffset.IndexBufferCount, SetIndexBufferCount); state.RegisterCallback(MethodOffset.Clear, Clear); state.RegisterCallback(MethodOffset.Report, Report); state.RegisterCallback(MethodOffset.FirmwareCall4, FirmwareCall4); state.RegisterCallback(MethodOffset.UniformBufferUpdateData, 16, UniformBufferUpdate); state.RegisterCallback(MethodOffset.UniformBufferBindVertex, UniformBufferBindVertex); state.RegisterCallback(MethodOffset.UniformBufferBindTessControl, UniformBufferBindTessControl); state.RegisterCallback(MethodOffset.UniformBufferBindTessEvaluation, UniformBufferBindTessEvaluation); state.RegisterCallback(MethodOffset.UniformBufferBindGeometry, UniformBufferBindGeometry); state.RegisterCallback(MethodOffset.UniformBufferBindFragment, UniformBufferBindFragment); }