diff --git a/chip/pm4_me.pas b/chip/pm4_me.pas index 2284f093..f0dd646d 100644 --- a/chip/pm4_me.pas +++ b/chip/pm4_me.pas @@ -988,7 +988,7 @@ begin begin iv:=ri.FetchView(ctx.Cmd,FView,iu_sampled); - //Writeln('BindImage:','0x',HexStr(ri.FHandle,16),' 0x',HexStr(iv.FHandle,16)); + Writeln('BindImage:','0x',HexStr(ri.FHandle,16),' 0x',HexStr(iv.FHandle,16)); DescriptorGroup.BindImage(fset,bind, iv.FHandle, @@ -998,7 +998,7 @@ begin begin iv:=ri.FetchView(ctx.Cmd,FView,iu_storage); - //Writeln('BindStorage:','0x',HexStr(ri.FHandle,16),' 0x',HexStr(iv.FHandle,16)); + Writeln('BindStorage:','0x',HexStr(ri.FHandle,16),' 0x',HexStr(iv.FHandle,16)); DescriptorGroup.BindStorage(fset,bind, iv.FHandle, @@ -1942,6 +1942,8 @@ begin Prepare_Uniforms(ctx,FUniformBuilder); //////// + DumpShaderGroup(CP_KEY.FShaderGroup); + if not ctx.Cmd.BindCompute(CP) then begin Writeln(stderr,'BindCompute(CP)'); diff --git a/src/audio/ps4_libsceaudioout.pas b/src/audio/ps4_libsceaudioout.pas index 41d7710f..39ce0987 100644 --- a/src/audio/ps4_libsceaudioout.pas +++ b/src/audio/ps4_libsceaudioout.pas @@ -1220,7 +1220,7 @@ begin Exit(SCE_AUDIO_OUT_ERROR_NOT_INIT); end; - if (num=0) or (num<25) then + if (num=0) or (num>25) then begin Exit(SCE_AUDIO_OUT_ERROR_PORT_FULL); end; diff --git a/vulkan/vDevice.pas b/vulkan/vDevice.pas index 367d36db..7361fe6a 100644 --- a/vulkan/vDevice.pas +++ b/vulkan/vDevice.pas @@ -53,6 +53,8 @@ type TvDebugReport=class FHandle:TVkDebugUtilsMessengerEXT; // + FStdOut:Text; + // FCreateDebugUtilsMessenger :TvkCreateDebugUtilsMessengerEXT; FDestroyDebugUtilsMessenger:TvkDestroyDebugUtilsMessengerEXT; // @@ -613,6 +615,7 @@ var cinfo:TVkDebugUtilsMessengerCreateInfoEXT; r:TVkResult; begin + FStdOut:=StdOut; // Pointer(FCreateDebugUtilsMessenger ):=vkGetInstanceProcAddr(VulkanApp.FInstance,'vkCreateDebugUtilsMessengerEXT'); Pointer(FDestroyDebugUtilsMessenger):=vkGetInstanceProcAddr(VulkanApp.FInstance,'vkDestroyDebugUtilsMessengerEXT'); @@ -719,7 +722,7 @@ begin if Pos('not consumed by fragment shader',pCallbackData^.pMessage)<>0 then Exit; if Pos('fragment shader writes to output location 0 with no matching attachment',pCallbackData^.pMessage)<>0 then Exit; - Writeln(pCallbackData^.pMessage); + Writeln(FStdOut,pCallbackData^.pMessage); { sType:TVkStructureType; diff --git a/vulkan/vImage.pas b/vulkan/vImage.pas index a6fbae51..68242aa0 100644 --- a/vulkan/vImage.pas +++ b/vulkan/vImage.pas @@ -2123,6 +2123,8 @@ begin if (AccessMask<>dstAccessMask ) or (ImgLayout <>newImageLayout) or + (ImgLayout =VK_IMAGE_LAYOUT_GENERAL) or + (newImageLayout=VK_IMAGE_LAYOUT_GENERAL) or ChangeStage(StageMask,dstStageMask) or (IsRead (AccessMask) and IsWrite(dstAccessMask)) or @@ -2140,6 +2142,14 @@ begin if (cmd=0) then Exit; + Writeln('Barrier:'#13#10, + ' image =0x',HexStr(image,16),#13#10, + ' srcAccessMask=0x',HexStr(AccessMask,8),#13#10, + ' dstAccessMask=0x',HexStr(dstAccessMask,8),#13#10, + ' oldLayout =' ,ImgLayout,#13#10, + ' newLayout =' ,newImageLayout + ); + info:=Default(TVkImageMemoryBarrier); info.sType :=VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER; info.srcAccessMask :=AccessMask;