This commit is contained in:
Pavel 2022-09-07 14:55:44 +03:00
parent 6e6b843ae6
commit a27ec63608
6 changed files with 69 additions and 25 deletions

View File

@ -1505,6 +1505,22 @@ begin
Free;
end;
//VK_IMAGE_USAGE_STORAGE_BIT
const
VK_IMAGE_USAGE_DEFAULT=
ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT) or
ord(VK_IMAGE_USAGE_SAMPLED_BIT);
VK_IMAGE_USAGE_DEFAULT_COLOR=
VK_IMAGE_USAGE_DEFAULT or
ord(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT);
VK_IMAGE_USAGE_DEFAULT_DEPTH=
VK_IMAGE_USAGE_DEFAULT or
ord(VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT);
procedure ClearRenderTarget;
var
RT_INFO:TRT_INFO;
@ -1520,10 +1536,7 @@ begin
ri:=FetchImage(GFXRing.CmdBuffer,
RT_INFO.FImageInfo,
ord(VK_IMAGE_USAGE_SAMPLED_BIT) or
ord(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT),
VK_IMAGE_USAGE_DEFAULT_COLOR,
TM_CLEAR
);
@ -1559,19 +1572,13 @@ begin
ri_src:=FetchImage(GFXRing.CmdBuffer,
RT_INFO_SRC.FImageInfo,
ord(VK_IMAGE_USAGE_SAMPLED_BIT) or
ord(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT),
VK_IMAGE_USAGE_DEFAULT_COLOR,
{TM_READ}0
);
ri_dst:=FetchImage(GFXRing.CmdBuffer,
RT_INFO_DST.FImageInfo,
ord(VK_IMAGE_USAGE_SAMPLED_BIT) or
ord(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT),
VK_IMAGE_USAGE_DEFAULT_COLOR,
TM_WRITE
);
@ -1841,10 +1848,7 @@ begin
ri:=FetchImage(GFXRing.CmdBuffer,
RT_INFO.FImageInfo,
ord(VK_IMAGE_USAGE_SAMPLED_BIT) or
ord(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT),
VK_IMAGE_USAGE_DEFAULT_COLOR,
RT_INFO.IMAGE_USAGE
);
@ -1928,9 +1932,7 @@ begin
ri:=FetchImage(GFXRing.CmdBuffer,
DB_INFO.FImageInfo,
ord(VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT),
VK_IMAGE_USAGE_DEFAULT_DEPTH,
DB_INFO.DEPTH_USAGE
);
@ -2045,9 +2047,7 @@ begin
ri:=FetchImage(GFXRing.CmdBuffer,
FImage,
ord(VK_IMAGE_USAGE_SAMPLED_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT),
VK_IMAGE_USAGE_DEFAULT_COLOR,
TM_READ
);
@ -2150,9 +2150,7 @@ begin
ri:=FetchImage(GFXRing.CmdBuffer,
FImage,
ord(VK_IMAGE_USAGE_SAMPLED_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT) or
ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT),
VK_IMAGE_USAGE_DEFAULT_COLOR,
TM_READ
);

View File

@ -292,6 +292,7 @@
<Unit64>
<Filename Value="src\ps4_libsceappcontent.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="ps4_libSceAppContent"/>
</Unit64>
<Unit65>
<Filename Value="src\ps4_libscedialogs.pas"/>
@ -354,6 +355,7 @@
<Unit79>
<Filename Value="src\ps4_libscevideoout.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="ps4_libSceVideoOut"/>
</Unit79>
<Unit80>
<Filename Value="src\ajm\ajm_error.inc"/>

View File

@ -516,6 +516,9 @@ begin
//ps4_app.app_path:='G:\Games\BLAZING_CHROME\CUSA14656\';
//ps4_app.app_file:='G:\Games\BLAZING_CHROME\CUSA14656\eboot.bin';
//ps4_app.app_path:='C:\Users\User\Desktop\Games\BLAZING_CHROME\CUSA14656';
//ps4_app.app_file:='C:\Users\User\Desktop\Games\BLAZING_CHROME\CUSA14656\eboot.bin';
//ps4_app.app_path:='G:\Games\Sonic Mania\CUSA07023\';
//ps4_app.app_file:='G:\Games\Sonic Mania\CUSA07023\eboot.bin';

View File

@ -250,6 +250,16 @@ begin
Result:=0;
end;
function ps4_sceNpPollAsync(reqId:Integer;
pResult:PInteger):Integer; SysV_ABI_CDecl;
begin
if (pResult<>nil) then
begin
pResult^:=0;
end;
Result:=0; //SCE_NP_POLL_ASYNC_RET_FINISHED
end;
//
function ps4_sceNpCheckCallbackForLib():Integer; SysV_ABI_CDecl;
@ -362,6 +372,7 @@ begin
lib^.set_proc($F19D897391AF1832,@ps4_sceNpCheckNpAvailabilityA);
lib^.set_proc($29F199836CBBDE83,@ps4_sceNpCheckNpReachability);
lib^.set_proc($AFA33260992BCB3F,@ps4_sceNpCheckPlus);
lib^.set_proc($BAA70F24B58BD3C3,@ps4_sceNpPollAsync);
lib:=Result._add_lib('libSceNpManagerForToolkit');
lib^.set_proc($D1CEC76D744A52DE,@ps4_sceNpRegisterStateCallbackForToolkit);

View File

@ -535,6 +535,18 @@ begin
end;
end;
procedure print_img_usage(usage:TVkFlags);
begin
if (usage and ord(VK_IMAGE_USAGE_TRANSFER_SRC_BIT ))<>0 then Write(' TRANSFER_SRC');
if (usage and ord(VK_IMAGE_USAGE_TRANSFER_DST_BIT ))<>0 then Write(' TRANSFER_DST');
if (usage and ord(VK_IMAGE_USAGE_SAMPLED_BIT ))<>0 then Write(' SAMPLED');
if (usage and ord(VK_IMAGE_USAGE_STORAGE_BIT ))<>0 then Write(' STORAGE');
if (usage and ord(VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT ))<>0 then Write(' COLOR_ATTACHMENT');
if (usage and ord(VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT))<>0 then Write(' DEPTH_STENCIL_ATTACHMENT');
if (usage and ord(VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT ))<>0 then Write(' TRANSIENT_ATTACHMENT');
if (usage and ord(VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT ))<>0 then Write(' INPUT_ATTACHMENT');
end;
function _FetchImage(var F:TvImageKey;usage:TVkFlags):TvImage2;
var
t:TvImage2;
@ -548,6 +560,14 @@ begin
if ((t.FUsage and usage)<>usage) then
begin
Write('Current usage:');
print_img_usage(t.FUsage);
Writeln;
Write('Need usage:');
print_img_usage(usage);
Writeln;
Assert(false,'TODO');
end;

View File

@ -365,6 +365,11 @@ begin
tiler.m_paddedHeight:=(tiler.m_linearHeight+7) and (not 7);
tiler.m_paddedDepth :=tiler.m_linearDepth;
end;
16:begin
tiler.m_paddedWidth :=(tiler.m_linearWidth +15) and (not 15);
tiler.m_paddedHeight:=(tiler.m_linearHeight+ 7) and (not 7);
tiler.m_paddedDepth :=tiler.m_linearDepth;
end;
8:begin
tiler.m_paddedWidth :=(tiler.m_linearWidth +31) and (not 31);
tiler.m_paddedHeight:=(tiler.m_linearHeight+ 7) and (not 7);
@ -557,6 +562,11 @@ begin
tiler.m_paddedHeight:=(tiler.m_linearHeight+7) and (not 7);
tiler.m_paddedDepth :=tiler.m_linearDepth;
end;
16:begin
tiler.m_paddedWidth :=(tiler.m_linearWidth +15) and (not 15);
tiler.m_paddedHeight:=(tiler.m_linearHeight+ 7) and (not 7);
tiler.m_paddedDepth :=tiler.m_linearDepth;
end;
8:begin
tiler.m_paddedWidth :=(tiler.m_linearWidth +31) and (not 31);
tiler.m_paddedHeight:=(tiler.m_linearHeight+ 7) and (not 7);