Exemple #1
0
        private GpuDisplayList _sceGeListEnQueue(uint InstructionAddressStart, uint InstructionAddressStall,
                                                 int CallbackId, PspGeListArgs *Args)
        {
            var DisplayList = GpuProcessor.DequeueFreeDisplayList();

            DisplayList.SetInstructionAddressStartAndCurrent(InstructionAddressStart);
            DisplayList.SetInstructionAddressStall(InstructionAddressStall);
            DisplayList.CallbacksId = -1;
            DisplayList.Callbacks   = default(PspGeCallbackData);

            if (CallbackId != -1)
            {
                DisplayList.Callbacks   = Callbacks[CallbackId];
                DisplayList.CallbacksId = CallbackId;
            }

            if (Args != null)
            {
                DisplayList.GpuStateStructPointer.data.Data =
                    CpuProcessor.Memory.PspAddressToPointerSafe <uint>(Args->GpuStateStructAddress, GpuStateStruct.StructSizeInWords);
            }

            //if (DisplayList.GpuStateStructPointer == null) DisplayList.GpuStateStructPointer.data.Data = DefaultGpuStateData;

            return(DisplayList);
        }
        private GpuDisplayList _sceGeListEnQueue(uint InstructionAddressStart, uint InstructionAddressStall,
                                                 int CallbackId, PspGeListArgs *Args)
        {
            var DisplayList = GpuProcessor.DequeueFreeDisplayList();

            DisplayList.SetInstructionAddressStartAndCurrent(InstructionAddressStart);
            DisplayList.SetInstructionAddressStall(InstructionAddressStall);
            DisplayList.CallbacksId = -1;
            DisplayList.Callbacks   = default(PspGeCallbackData);

            if (CallbackId != -1)
            {
                DisplayList.Callbacks   = Callbacks[CallbackId];
                DisplayList.CallbacksId = CallbackId;
            }

            DisplayList.GpuStateStructPointer = null;

            if (Args != null)
            {
                DisplayList.GpuStateStructPointer =
                    (GpuStateStruct *)CpuProcessor.Memory.PspAddressToPointerSafe(Args->GpuStateStructAddress,
                                                                                  Marshal.SizeOf(typeof(GpuStateStruct)));
            }

            if (DisplayList.GpuStateStructPointer == null)
            {
                DisplayList.GpuStateStructPointer = GpuStateStructPointer;
            }

            return(DisplayList);
        }