docs: vehicleSubSystems DONE + render-verified
Mark the engineering-screen cluster-panel system complete in the spec + CLAUDE.md §10. Render-verified (BT_DEV_GAUGES_DOCK): 7 authentic panels build + draw -- SENSOR CLUSTER, MYOMERS, ER MED LASER RANGE 500M x3, PPC RANGE 500M x2 -- with bar gauges, recharge dials, and lamps; 0 crashes, combat un-regressed. Records that the aux-screen blocker resolved cleanly via the PoweredSubsystem bridge (the fields were already populated; no MechSubsystem core re-base was needed) and lists the non-blocking follow-ups. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
6fceb58439
commit
f4ad0f4340
@@ -11,27 +11,14 @@ import java.io.*;
|
||||
|
||||
public class DecompVSS extends GhidraScript {
|
||||
public void run() throws Exception {
|
||||
String outPath = "C:\\Users\\epilectrik\\AppData\\Local\\Temp\\claude\\C--git-bt411\\09bf24bb-f92d-423a-b815-1eb662736f58\\scratchpad\\vss_sub.txt";
|
||||
String outPath = "C:\\Users\\epilectrik\\AppData\\Local\\Temp\\claude\\C--git-bt411\\09bf24bb-f92d-423a-b815-1eb662736f58\\scratchpad\\vss_kids.txt";
|
||||
PrintWriter out = new PrintWriter(new FileWriter(outPath));
|
||||
FunctionManager fm = currentProgram.getFunctionManager();
|
||||
Memory mem = currentProgram.getMemory();
|
||||
DecompInterface dec = new DecompInterface();
|
||||
dec.openProgram(currentProgram);
|
||||
|
||||
long[] targets = {
|
||||
// btl4gau2 sub-gauge ctors that must be reconstructed
|
||||
0x4c70a4L, 0x4c7134L, 0x4c3134L, // CoolingLoop/AnimatedSubsystemLamp + dtor + connection
|
||||
0x4c7160L, 0x4c71f0L, 0x4c31ecL, // PowerSource/AnimatedSourceLamp + dtor + connection
|
||||
0x4c721cL, 0x4c72acL, 0x4c733cL, // ScalarBarGauge/GeneratorVoltage + ctor2 + dtor
|
||||
0x4c6d80L, 0x4c6e54L, 0x4c6ee0L, // ConfigMapGauge + dtor + SetColor
|
||||
0x4c6f34L, // ConfigMapGauge Execute (guess)
|
||||
// SubsystemCluster helpers
|
||||
0x4c89c4L, 0x4c8820L, 0x4c8990L, 0x4c8a28L, 0x4c2ec4L,
|
||||
// Weapon/Ballistic extra vtable slots
|
||||
0x4c92e4L, 0x4c9b24L, 0x4c9b50L, 0x4c8990L,
|
||||
// connections
|
||||
0x4749deL, 0x474855L, 0x4c3288L,
|
||||
};
|
||||
long[] targets = { 0x4c4170L, 0x4c5470L, 0x4c5b7cL, 0x4c5148L };
|
||||
for (long t : targets) {
|
||||
Address a = toAddr(t);
|
||||
Function f = fm.getFunctionContaining(a);
|
||||
|
||||
Reference in New Issue
Block a user