port: ScriptLib Resource.cpp verbatim 40250; PythonUtils mapped (already verbatim)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shenlei
2026-09-30 16:10:32 +09:00
co-authored by Claude Opus 5.5
parent f9cd63713f
commit 58a3d01027
6 changed files with 275 additions and 40 deletions
+2
View File
@@ -640,3 +640,5 @@
{"date": "2026-09-30", "unit": "EterLib/GrpDevice.cpp", "action": "port", "evidence": "verbatim except Create (recording device in place of Direct3DCreate8/detector/CreateDevice, EL3D_ConfirmDevice on its caps); RecordingDevice decodes declaration-only vertex shaders to stream-0 FVFs; GrpScreen Show uses the GrpDevice browser globals; port.app_loop (PT/PNT/PNT2 FVFs, max texture 4096), full ctest, live-client screenshot matches"}
{"date": "2026-09-30", "unit": "EterLib/GrpDetector.cpp", "action": "port", "evidence": "verbatim; IDirect3D8 shim completed (adapter count/caps/format checks/CreateDevice) and implemented once as the host adapter behind Direct3DCreate8 (RecordingDevice.cpp), which CPythonGraphic::GetD3D also returns; GrpDevice::Create now verbatim but for the D3DX debug meshes; port.app_loop (800x600x32 HWVP D16 mode, ms_lpd3d, GetString), full ctest, live-client screenshot matches"}
{"date": "2026-09-30", "unit": "UserInterface/UserInterface.cpp", "action": "port", "evidence": "ApplicationSetErrorString/ApplicationStringTable_Initialize verbatim + port.app_loop; Main ADAPTED to PythonBoot; Win32 entry/launcher options N_A"}
{"date": "2026-09-30", "unit": "ScriptLib/PythonUtils.cpp", "action": "port", "evidence": "already verbatim (udiff: MSVC cast + perf counters); mapped"}
{"date": "2026-09-30", "unit": "ScriptLib/Resource.cpp", "action": "port", "evidence": "verbatim 40250 (was a rewrite that also registered .png); ctest 29/29, screenshot unchanged"}
+80 -19
View File
@@ -5,61 +5,122 @@
"contracts": [],
"functions": {
"Py_BadArgument": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:Py_BadArgument"
]
},
"Py_BuildException": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:Py_BuildException"
]
},
"Py_BuildNone": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:Py_BuildNone"
]
},
"Py_ReleaseNone": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:Py_ReleaseNone"
]
},
"PyTuple_GetObject": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetObject"
]
},
"PyTuple_GetLong": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetLong"
]
},
"PyTuple_GetDouble": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetDouble"
]
},
"PyTuple_GetFloat": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetFloat"
]
},
"PyTuple_GetByte": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetByte"
],
"note": "verbatim except `unsigned char(val)` (MSVC-only cast) written as `(unsigned char) val`."
},
"PyTuple_GetInteger": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetInteger"
]
},
"PyTuple_GetUnsignedLong": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetUnsignedLong"
]
},
"PyTuple_GetUnsignedInteger": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetUnsignedInteger"
]
},
"PyTuple_GetString": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetString"
]
},
"PyTuple_GetBoolean": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyTuple_GetBoolean"
]
},
"PyCallClassMemberFunc": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyCallClassMemberFunc"
]
},
"PyCallClassMemberFunc_ByPyString": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:PyCallClassMemberFunc_ByPyString"
]
},
"__PyCallClassMemberFunc_ByCString": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:__PyCallClassMemberFunc_ByCString"
],
"note": "verbatim plus the MtPerf::CPythonScope / CountPythonMissing perf counters (no behaviour change)."
},
"__PyCallClassMemberFunc_ByPyString": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:__PyCallClassMemberFunc_ByPyString"
],
"note": "verbatim plus the MtPerf::CPythonScope / CountPythonMissing perf counters (no behaviour change)."
},
"__PyCallClassMemberFunc": {
"status": "TODO"
"status": "PORTED",
"impl": [
"src/port/ScriptLib/PythonUtils.cpp:__PyCallClassMemberFunc"
],
"note": "verbatim plus the MtPerf::CPythonScope / CountPythonMissing perf counters (no behaviour change)."
}
}
}
@@ -0,0 +1,69 @@
{
"reference": "ScriptLib/Resource.cpp",
"reference_sha256": "559339874da495b2e5fbeb78256a6ea9dfde2ea11f838d55c4f01b918a052c7f",
"priority": "P4",
"contracts": [],
"functions": {
"NewImage": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:NewImage"
]
},
"NewSubImage": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:NewSubImage"
]
},
"NewText": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:NewText"
]
},
"NewThing": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:NewThing"
]
},
"NewEffectMesh": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:NewEffectMesh"
]
},
"NewAttributeData": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:NewAttributeData"
]
},
"CPythonResource::DumpFileList": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:CPythonResource::DumpFileList"
]
},
"CPythonResource::Destroy": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:CPythonResource::Destroy"
],
"note": "verbatim; like 40250 only CPythonApplication::Destroy calls it, which is DIVERGENT (host tears down via PythonBoot::Stop resets), so it does not run at shutdown yet."
},
"CPythonResource::CPythonResource": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:CPythonResource::CPythonResource"
]
},
"CPythonResource::~CPythonResource": {
"status": "PORTED",
"impl": [
"src/platform/ScriptLib/Resource.cpp:CPythonResource::~CPythonResource"
]
}
}
}
@@ -0,0 +1,11 @@
{
"reference": "UserInterface/PythonNetworkDatagramModule.cpp",
"reference_sha256": "fc49120f237cee410aeb9d8d18dcda0eeeb8a244f541af878b8ebaf08858e9de",
"priority": "P4",
"contracts": [],
"functions": {
"initudp": {
"status": "TODO"
}
}
}
@@ -0,0 +1,17 @@
{
"reference": "UserInterface/PythonProfilerModule.cpp",
"reference_sha256": "6afa0c492e2ad88eea775c55ff3f6bd9c490abe91408772dae461e40a207b96c",
"priority": "P4",
"contracts": [],
"functions": {
"profilerPush": {
"status": "TODO"
},
"profilerPop": {
"status": "TODO"
},
"initProfiler": {
"status": "TODO"
}
}
}