MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / hasProcAddress

Function hasProcAddress

source/vulkan/vulkancommon.cpp:110–127  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

108}
109
110static void hasProcAddress(CPU* cpu) {
111 U32 handle = cpu->peek32(1);
112 if (!handle) {
113 EAX = 1;
114 } else {
115 BoxedVulkanInfo* pBoxedInfo = getInfoFromHandle(cpu->memory, handle);
116 BString name = cpu->memory->readString(cpu->peek32(2));
117
118 if (name == "vkMapMemory2KHR" || name == "vkUnmapMemory2KHR") {
119 EAX = 0;
120 } else if (pBoxedInfo->functionAddressByName.count(name) || name == "vkGetDeviceProcAddr" || name == "vkCreateXlibSurfaceKHR") {
121 EAX = 1;
122 }
123 else {
124 EAX = 0;
125 }
126 }
127}
128
129void freeVulkanPtr(KMemory* memory, U32 p) {
130 KProcessPtr process = KThread::currentThread()->process;

Callers

nothing calls this directly

Calls 4

getInfoFromHandleFunction · 0.85
peek32Method · 0.45
readStringMethod · 0.45
countMethod · 0.45

Tested by

no test coverage detected