Exemplo n.º 1
0
 /// <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);
 }
Exemplo n.º 2
0
        /// <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);
        }
Exemplo n.º 3
0
        /// <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);
        }