GS: Add VS natvis files for FastList and TC Targets

This commit is contained in:
Stenzek 2023-04-06 21:40:38 +10:00 committed by refractionpcsx2
parent fed7629632
commit c121aae8f1
4 changed files with 39 additions and 0 deletions

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="FastList&lt;*&gt;">
<DisplayString>{{ size={m_free_indexes_stack_top} }}</DisplayString>
<Expand>
<Item Name="[size]" ExcludeView="simple">m_free_indexes_stack_top</Item>
<Item Name="[capacity]" ExcludeView="simple">m_capacity - 1</Item>
<CustomListItems MaxItemsPerView="5000" ExcludeView="simple">
<Variable Name="index" InitialValue="m_buffer[0].next_index" />
<Size>m_free_indexes_stack_top</Size>
<Loop>
<Item>m_buffer[index].data,na</Item>
<Exec>index = m_buffer[index].next_index</Exec>
</Loop>
</CustomListItems>
</Expand>
</Type>
</AutoVisualizer>

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="GSTextureCache::Target">
<DisplayString Condition="m_type == 0">{{ RT @ BP={m_TEX0.TBP0,X}-{m_end_block,X} BW={m_TEX0.TBW} PSM={m_TEX0.PSM,X} {m_unscaled_size.x}x{m_unscaled_size.y} {m_valid.z},{m_valid.w} }}</DisplayString>
<DisplayString Condition="m_type == 1">{{ Depth @ BP={m_TEX0.TBP0,X}-{m_end_block,X} BW={m_TEX0.TBW} PSM={m_TEX0.PSM,X} {m_unscaled_size.x}x{m_unscaled_size.y} {m_valid.z},{m_valid.w} }}</DisplayString>
</Type>
</AutoVisualizer>

View File

@ -854,6 +854,10 @@
<Project>{c0293b32-5acf-40f0-aa6c-e6da6f3bf33a}</Project>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Natvis Include="GS\Renderers\Common\GSFastList.natvis" />
<Natvis Include="GS\Renderers\HW\GSTextureCache.natvis" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets" />
</Project>

View File

@ -2288,4 +2288,12 @@
<Filter>System\Ps2\Debug\rdebug</Filter>
</CustomBuildStep>
</ItemGroup>
<ItemGroup>
<Natvis Include="GS\Renderers\Common\GSFastList.natvis">
<Filter>System\Ps2\GS</Filter>
</Natvis>
<Natvis Include="GS\Renderers\HW\GSTextureCache.natvis">
<Filter>System\Ps2\GS\Renderers\Hardware</Filter>
</Natvis>
</ItemGroup>
</Project>