コード例 #1
0
        private void Send(NvGpuVmm vmm, int value)
        {
            GpuMethodCall methCall = new GpuMethodCall(_methAddr, value);

            _engine.CallMethod(vmm, methCall);

            _methAddr += _methIncr;
        }
コード例 #2
0
        private void Send(NvGpuVmm Vmm, int Value)
        {
            NvGpuPBEntry PBEntry = new NvGpuPBEntry(MethAddr, 0, Value);

            Engine.CallMethod(Vmm, PBEntry);

            MethAddr += MethIncr;
        }
コード例 #3
0
ファイル: MacroInterpreter.cs プロジェクト: tiliarou/Ryujinx
        private void Send(AMemory Memory, int Value)
        {
            NsGpuPBEntry PBEntry = new NsGpuPBEntry(MethAddr, 0, Value);

            Engine.CallMethod(Memory, PBEntry);

            MethAddr += MethIncr;
        }
コード例 #4
0
        private void Send(NvGpuVmm Vmm, int Value)
        {
            GpuMethodCall MethCall = new GpuMethodCall(MethAddr, Value);

            Engine.CallMethod(Vmm, MethCall);

            MethAddr += MethIncr;
        }
コード例 #5
0
        private void Send(NvGpuVmm Vmm, int Value)
        {
            //This is an artificial limit that prevents excessive calls
            //to VertexEndGl since that triggers rendering, and in the
            //case that something is bugged and causes an absurd amount of
            //draw calls, this prevents the system from freezing (and throws instead).
            if (MethAddr == 0x585 && ++CallCount > MaxCallCountPerRun)
            {
                GpuExceptionHelper.ThrowCallCoundExceeded();
            }

            NvGpuPBEntry PBEntry = new NvGpuPBEntry(MethAddr, 0, Value);

            Engine.CallMethod(Vmm, PBEntry);

            MethAddr += MethIncr;
        }