return type: VkResult(4 bytes)
| 1175 | } |
| 1176 | // return type: VkResult(4 bytes) |
| 1177 | void vk_EnumerateInstanceLayerProperties(CPU* cpu) { |
| 1178 | initVulkan(); |
| 1179 | uint32_t tmp_pPropertyCount = (uint32_t) cpu->memory->readd(ARG1); |
| 1180 | uint32_t* pPropertyCount = &tmp_pPropertyCount; |
| 1181 | VkLayerProperties* pProperties = NULL; |
| 1182 | if (ARG2) { |
| 1183 | pProperties = new VkLayerProperties[*pPropertyCount]; |
| 1184 | U32 address = ARG2; |
| 1185 | for (U32 i=0;i<*pPropertyCount;i++) { |
| 1186 | MarshalVkLayerProperties::read(nullptr, cpu->memory, address + i*520, &pProperties[i]); |
| 1187 | } |
| 1188 | } |
| 1189 | EAX = (U32)pvkEnumerateInstanceLayerProperties(pPropertyCount, pProperties); |
| 1190 | cpu->memory->writed(ARG1, (U32)tmp_pPropertyCount); |
| 1191 | if (ARG2) { |
| 1192 | for (U32 i=0;i<*pPropertyCount;i++) { |
| 1193 | MarshalVkLayerProperties::write(nullptr, cpu->memory, ARG2 + i * 520, &pProperties[i]); |
| 1194 | } |
| 1195 | delete[] pProperties; |
| 1196 | } |
| 1197 | } |
| 1198 | // return type: VkResult(4 bytes) |
| 1199 | void vk_EnumerateDeviceLayerProperties(CPU* cpu) { |
| 1200 | VkPhysicalDevice physicalDevice = (VkPhysicalDevice)getVulkanPtr(cpu->memory, ARG1); |
nothing calls this directly
no test coverage detected