mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-27 14:02:04 -04:00
chore(phase-29 crack-wave): log wave outcome (3 MATCH/4 near, 8013CB84 x138) + preserve drafts + fleet 73.7%
Ultracode 7-agent fan-out. func_8013CB84 banked x138 (+34k ins). 2 jr MATCHes deferred on def-side/-O0 walls (characterized+preserved R20). 4 near-misses + 8014D820 perm27 = permuter/Fable5 fuel. Crack-wave sweep recipe learned (map regen -> matched-ov077 -> standard sweep). R22 140/140.
This commit is contained in:
@@ -0,0 +1,229 @@
|
||||
|
||||
typedef unsigned char u8;
|
||||
typedef unsigned short u16;
|
||||
typedef unsigned int u32;
|
||||
typedef signed char s8;
|
||||
typedef short s16;
|
||||
typedef int s32;
|
||||
typedef float f32;
|
||||
typedef unsigned long long u64;
|
||||
typedef long long s64;
|
||||
typedef double f64;
|
||||
typedef s32 M2C_UNK;
|
||||
typedef s8 M2C_UNK8;
|
||||
typedef s16 M2C_UNK16;
|
||||
typedef s32 M2C_UNK32;
|
||||
typedef s64 M2C_UNK64;
|
||||
typedef struct
|
||||
{
|
||||
u16 x;
|
||||
u16 y;
|
||||
u16 z;
|
||||
u16 w;
|
||||
} V4;
|
||||
typedef struct
|
||||
{
|
||||
u16 x;
|
||||
u16 y;
|
||||
u16 z;
|
||||
u16 w;
|
||||
s32 pad[4];
|
||||
s32 f18;
|
||||
s32 f1C;
|
||||
s32 f20;
|
||||
} Desc;
|
||||
typedef struct Ent
|
||||
{
|
||||
u16 f0;
|
||||
u16 f2;
|
||||
u16 f4;
|
||||
u16 x;
|
||||
u16 f8;
|
||||
u16 y;
|
||||
u16 fC;
|
||||
u16 z;
|
||||
u8 p10[0x10];
|
||||
s32 f20;
|
||||
u8 p24[0x34];
|
||||
s32 f58;
|
||||
u16 f5C;
|
||||
u16 f5E;
|
||||
u8 p60[0x10C - 0x60];
|
||||
} Ent;
|
||||
extern s16 currentLocationId;
|
||||
extern Ent D_801202A0[];
|
||||
extern u8 D_8018876C[];
|
||||
extern u16 D_801152A8;
|
||||
extern u16 D_801152AC;
|
||||
extern s32 ratan2(s32 a0, s32 a1);
|
||||
extern s32 func_80135A4C(s32 a0, s32 a1, s32 *a2, s32 a3);
|
||||
extern s32 func_80012A60(s32 a0, s32 a1);
|
||||
extern void func_800139C8(s32 a0, void *a1, void *a2);
|
||||
extern s32 func_80135888(s32 a0, s32 a1, s32 a2, s32 a3);
|
||||
extern s32 func_8014DCE0(s32 a0, s32 a1, s32 a2);
|
||||
extern s32 func_80133784(s32 a0, void *a1, s32 a2);
|
||||
s32 func_8014D820(s32 a0, u16 *a1, u16 *a2x)
|
||||
{
|
||||
register u16 *a2 __asm__("$7") = a2x;
|
||||
V4 out[3];
|
||||
V4 pos;
|
||||
Desc desc;
|
||||
Ent *ent;
|
||||
Ent *p;
|
||||
s32 dx;
|
||||
s32 dz;
|
||||
s32 ex;
|
||||
s32 ez;
|
||||
s32 r1;
|
||||
s32 r2;
|
||||
s32 r3;
|
||||
s32 ang;
|
||||
s32 x0;
|
||||
s32 y0;
|
||||
s32 z0;
|
||||
s32 tx;
|
||||
s32 tz;
|
||||
s32 r;
|
||||
s32 t;
|
||||
register s32 u __asm__("$2");
|
||||
t = a2[0];
|
||||
u = a1[0];
|
||||
dx = t - u;
|
||||
t = a2[2];
|
||||
u = a1[2];
|
||||
dz = t - u;
|
||||
if (((s16) (dx | dz)) == 0)
|
||||
{
|
||||
goto fail;
|
||||
}
|
||||
desc.x = dx;
|
||||
desc.y = a2[1] - a1[1];
|
||||
desc.z = a2[2] - a1[2];
|
||||
ent = *((Ent **) (a0 + 0x170));
|
||||
if (ent->f0 == 0)
|
||||
{
|
||||
goto fail;
|
||||
}
|
||||
if ((ent->f5C & 0x1000) == 0)
|
||||
{
|
||||
goto fail;
|
||||
}
|
||||
if (ent->f58 == 0)
|
||||
{
|
||||
goto fail;
|
||||
}
|
||||
if (((s32 (*)(s32, s32, s32)) func_80135A4C)(ent->f20, ent->f58, (s32) a1) == 0)
|
||||
{
|
||||
goto fail;
|
||||
}
|
||||
ex = ent->x - (*((u16 *) (a0 + 6)));
|
||||
ez = ent->z - (*((u16 *) (a0 + 0xE)));
|
||||
r1 = (s16) ratan2((s16) dz, (s16) dx);
|
||||
r2 = (s16) ratan2((s16) ez, (s16) ex);
|
||||
r3 = (s16) func_80012A60(r1, r2);
|
||||
if (r3 >= 0x400)
|
||||
{
|
||||
goto fail;
|
||||
}
|
||||
desc.f20 = 0;
|
||||
desc.f1C = 0;
|
||||
desc.f18 = 0;
|
||||
pos.x = (x0 = ent->x);
|
||||
z0 = ent->z;
|
||||
tx = x0 + desc.x;
|
||||
y0 = ent->y;
|
||||
pos.y = y0;
|
||||
desc.y = (y0 + desc.y) + 8;
|
||||
tz = z0 + desc.z;
|
||||
pos.z = z0;
|
||||
desc.x = tx;
|
||||
desc.z = tz;
|
||||
if (currentLocationId != 0x3008)
|
||||
{
|
||||
for (p = D_801202A0; p < (D_801202A0 + 96); p++)
|
||||
{
|
||||
if (p == ent)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (p->f0 == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (p->f5C == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (p->f58 == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
func_80135888(p->f20, p->f58, (s32) (&pos), (s32) (&desc));
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
ang = ratan2(((s16) x0) - ((s16) tx), ((s16) z0) - ((s16) tz)) & 0xFFF;
|
||||
func_800139C8(ang, D_8018876C, &out[0]);
|
||||
func_800139C8((s16) (ang - 0x155), D_8018876C, &out[1]);
|
||||
func_800139C8((s16) (ang + 0x155), D_8018876C, &out[2]);
|
||||
out[0].x += pos.x;
|
||||
out[0].y = pos.y;
|
||||
out[0].z += pos.z;
|
||||
out[1].x += pos.x;
|
||||
out[1].y = pos.y;
|
||||
out[1].z += pos.z;
|
||||
out[2].x += pos.x;
|
||||
out[2].y = pos.y;
|
||||
out[2].z += pos.z;
|
||||
for (p = D_801202A0; p < (D_801202A0 + 96); p++)
|
||||
{
|
||||
if (p == ent)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (p->f0 == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (p->f5C == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (p->f58 == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (func_8014DCE0((s32) p, (s32) (&pos), (s32) (&out[0])) != 0)
|
||||
{
|
||||
__builtin_memcpy((void *) ((s32) (&desc)), (void *) ((s32) (&pos)), 8);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
r = func_80133784(0, &pos, (s32) (&desc));
|
||||
if ((r == 0) || ((r == 0x2000) && ((D_801152A8 | D_801152AC) == 0)))
|
||||
{
|
||||
ent->x = desc.x - desc.f18;
|
||||
ent->y = desc.y;
|
||||
ent->z = desc.z - desc.f20;
|
||||
desc.x -= pos.x;
|
||||
desc.y -= pos.y;
|
||||
desc.z -= pos.z;
|
||||
*((u16 *) (a0 + 6)) = a1[0] + desc.x;
|
||||
*((u16 *) (a0 + 0xA)) = a1[1] + (desc.y + 0x10);
|
||||
*((u16 *) (a0 + 0xE)) = a1[2] + desc.z;
|
||||
}
|
||||
else
|
||||
{
|
||||
*((u16 *) (a0 + 6)) = a1[0];
|
||||
*((u16 *) (a0 + 0xA)) = a1[1] + 0x10;
|
||||
*((u16 *) (a0 + 0xE)) = a1[2];
|
||||
}
|
||||
return 1;
|
||||
fail:
|
||||
*((s32 *) (a0 + 0x170)) = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
#include "common.h"
|
||||
|
||||
typedef struct {
|
||||
s32 f0; /* 0x00 */
|
||||
s16 f4; /* 0x04 */
|
||||
s16 f6; /* 0x06 */
|
||||
s16 f8; /* 0x08 */
|
||||
s16 fa; /* 0x0A */
|
||||
s32 fc; /* 0x0C */
|
||||
s32 f10; /* 0x10 */
|
||||
s32 f14; /* 0x14 */
|
||||
s32 f18; /* 0x18 */
|
||||
} E_3B83C; /* 0x1C */
|
||||
|
||||
extern E_3B83C D_801DAA08[];
|
||||
extern s32 D_801DAAA4;
|
||||
extern s32 D_801DAAA8;
|
||||
extern s32 D_801DAAAC;
|
||||
extern s32 D_801DAAC0;
|
||||
extern s32 D_801DAAD0;
|
||||
extern s32 D_801DAB20;
|
||||
extern s32 D_801DAB24;
|
||||
extern s32 D_801DAB28;
|
||||
extern s16 D_800B9A0E;
|
||||
|
||||
void func_80052D90(s32 a0, void *a1);
|
||||
void func_8013BD74(void *a0, s32 a1);
|
||||
void func_8013C08C(void *a0, s32 a1);
|
||||
|
||||
void func_8013B83C(s32 a0, s32 a1, s32 a2) {
|
||||
s32 i;
|
||||
|
||||
D_801DAAC0 = 0;
|
||||
D_801DAAAC = 0;
|
||||
D_801DAAA8 = 0;
|
||||
D_801DAAA4 = 0;
|
||||
func_80052D90(0, &D_801DAAD0);
|
||||
if (a0 == 0) {
|
||||
return;
|
||||
}
|
||||
D_801DAB20 = a2 + 500;
|
||||
D_801DAB24 = a2;
|
||||
for (i = 0; i < 4; i++) {
|
||||
D_801DAA08[i].f0 = 0;
|
||||
D_801DAA08[i].f4 = D_801DAA08[i].f6 = D_801DAA08[i].f8 = 0x6000;
|
||||
D_801DAA08[i].fc = 0x100;
|
||||
D_801DAA08[i].f18 = 0;
|
||||
}
|
||||
switch (*(u8 *)a0) {
|
||||
case 0x42:
|
||||
if (D_800B9A0E == 0) {
|
||||
func_8013BD74(&D_801DAAC0, a0);
|
||||
} else {
|
||||
func_8013BD74(&D_801DAAC0, a1);
|
||||
}
|
||||
D_801DAB28 = 0;
|
||||
break;
|
||||
case 0x43:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 1;
|
||||
break;
|
||||
case 0x44:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 2;
|
||||
break;
|
||||
case 0x45:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 3;
|
||||
break;
|
||||
case 0x46:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 4;
|
||||
break;
|
||||
case 0x47:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 5;
|
||||
break;
|
||||
case 0x48:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 6;
|
||||
break;
|
||||
case 0x49:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 9;
|
||||
break;
|
||||
case 0x4A:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 0xC;
|
||||
break;
|
||||
case 0x4B:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 0xD;
|
||||
break;
|
||||
case 0x4C:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 0xE;
|
||||
break;
|
||||
case 0x4D:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 0xF;
|
||||
break;
|
||||
case 0x4E:
|
||||
func_8013C08C(&D_801DAAC0, a0);
|
||||
D_801DAB28 = 0x10;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* BANK BLOCKER (Phase-29 crack-wave, 2026-07-18): match_one MATCH (272 ins, -O0) but DEFERRED —
|
||||
* (1) sweep ×138 is blocked by the Arm-A -O0-cluster splat wall (same as func_8013C414's family);
|
||||
* (2) ×1 needs -O0 jr-isolation (jr_isolate_all skips -O0 objects — the whale _o0b split precedent)
|
||||
* + a D_801DAA08 decl reconcile. ×1-only value (~272 ins). Low ROI vs the sweepable cores. */
|
||||
@@ -0,0 +1,105 @@
|
||||
#include "common.h"
|
||||
|
||||
typedef struct { s32 a, b, c; } Rec12;
|
||||
typedef struct { s32 a, b; s8 c; } __attribute__((packed, aligned(1))) Rec9;
|
||||
|
||||
extern s16 currentLocationId;
|
||||
extern u8 D_80078EAF;
|
||||
extern s32 D_801D9590;
|
||||
extern s32 D_801D9588;
|
||||
extern s32 D_801D958C;
|
||||
extern s32 D_801D9580;
|
||||
extern s32 D_801D9584;
|
||||
extern s32 D_801D9594;
|
||||
extern s32 D_801D95A0;
|
||||
extern s32 D_801D95A8;
|
||||
extern s32 D_801DAAA0;
|
||||
extern s32 D_801DAA20;
|
||||
extern s32 D_801DAA14[];
|
||||
extern u8 D_801DA9C1;
|
||||
extern u8 D_801DAB2E;
|
||||
extern u8 D_801DAA9C;
|
||||
extern Rec12 D_80187484[];
|
||||
extern Rec9 D_8018744C[];
|
||||
extern Rec9 D_801DAA78;
|
||||
|
||||
extern void func_8013DBE4();
|
||||
extern void func_8013D9B0();
|
||||
extern void func_8013D330(void);
|
||||
extern void func_8013D178(void);
|
||||
extern void func_8013CF68(void);
|
||||
|
||||
void func_8013CB84(void) {
|
||||
s32 loc = currentLocationId;
|
||||
s32 s0 = D_80078EAF;
|
||||
s32 ta, tb, tc, t;
|
||||
|
||||
D_801DAAA0 = 0;
|
||||
if (D_801D9590 == 0 && s0 != D_801D9588) {
|
||||
ta = D_80187484[s0].a;
|
||||
tb = D_80187484[s0].b;
|
||||
tc = D_80187484[s0].c;
|
||||
D_801D9588 = s0;
|
||||
D_801DA9C1 = tc;
|
||||
D_801DAB2E = ta;
|
||||
D_801DAA9C = tb;
|
||||
D_801DAA78 = D_8018744C[s0];
|
||||
D_801D958C = 1;
|
||||
D_801D9580 = 1;
|
||||
if (D_801D95A0 & 2) {
|
||||
if (s0 == 4) { D_801DAA14[0] = 0x100; D_801DAA20 = 0x80; }
|
||||
if (s0 == 0) { D_801DAA14[0] = 0x100; D_801DAA20 = 0; }
|
||||
}
|
||||
}
|
||||
if (D_801D958C != 0) {
|
||||
t = D_801D9580 - 1;
|
||||
D_801D9580 = t;
|
||||
if (t == 0) {
|
||||
if (D_801D9590 == 0) {
|
||||
if ((D_801D95A0 & 2) && s0 == 4) {
|
||||
if (D_801D95A8 != 0) func_8013DBE4(6);
|
||||
else func_8013D9B0(6);
|
||||
} else {
|
||||
if (D_801D95A8 != 0) func_8013DBE4(s0);
|
||||
else func_8013D9B0(s0);
|
||||
}
|
||||
func_8013D330();
|
||||
func_8013D178();
|
||||
func_8013CF68();
|
||||
D_801D9580 = 2;
|
||||
if (D_801D958C != 0) {
|
||||
if (D_801D95A0 & 2) {
|
||||
if (s0 == 4) {
|
||||
s32 *p = &D_801DAA20;
|
||||
t = *p - 8;
|
||||
*p = t;
|
||||
if (t < 0) *p = 0;
|
||||
} else if (s0 == 0) {
|
||||
s32 *p = &D_801DAA20;
|
||||
t = *p + 0x20;
|
||||
*p = t;
|
||||
if (t >= 0x81) *p = 0x80;
|
||||
}
|
||||
}
|
||||
} else if (D_801D95A0 & 2) {
|
||||
if (s0 == 4) D_801DAA20 = 0;
|
||||
if (s0 == 0) D_801DAA20 = 0x80;
|
||||
}
|
||||
} else {
|
||||
if (D_801D95A8 != 0) func_8013DBE4(5);
|
||||
else func_8013D9B0(5);
|
||||
D_801D9580 = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
D_801D9594 = 0;
|
||||
if (loc == 0x1010) {
|
||||
if (s0 == 3) {
|
||||
if (D_801D958C != 0) D_801D9594 = D_801D9584;
|
||||
else D_801D9594 = 0x1F;
|
||||
} else if (s0 == 4) {
|
||||
if (D_801D958C != 0) D_801D9594 = 0x1F - D_801D9584;
|
||||
else D_801D9594 = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,170 @@
|
||||
#include "common.h"
|
||||
|
||||
typedef struct { s16 vx, vy, vz, pad; } Vec3;
|
||||
|
||||
extern void (*D_801891B8[])(s32);
|
||||
extern u8 D_8018914C[];
|
||||
extern s32 D_8011F9C4;
|
||||
|
||||
extern s32 func_80161B18(s32);
|
||||
extern s32 func_801619A4(s32);
|
||||
extern s32 func_80149AA8(s32);
|
||||
extern void func_80149AD4(s32);
|
||||
extern s32 func_80149B54(s32);
|
||||
extern void func_80149BAC(s32);
|
||||
extern void func_801498E0(s32);
|
||||
extern void func_80149954(s32);
|
||||
extern s32 func_80149A64(s32);
|
||||
extern void func_800CCCC0(s32);
|
||||
extern s32 func_80149CD4(s32);
|
||||
extern void func_8015E880(s32);
|
||||
extern s32 func_80149744(s32);
|
||||
extern void func_80149788(s32);
|
||||
extern s32 func_801496D4(s32);
|
||||
extern void func_80149704(s32);
|
||||
extern s32 func_80148AFC(s32);
|
||||
extern void func_80146D90(s32);
|
||||
extern void func_80154150(s32, s32);
|
||||
extern void func_801541D8(s32, s32, s32);
|
||||
extern s32 func_801488A8(s32);
|
||||
extern void func_80147078(s32, s32);
|
||||
extern void func_8015A264(s32);
|
||||
extern s32 func_80013294(Vec3 *, Vec3 *);
|
||||
extern void func_80159B70(s32);
|
||||
extern s32 func_8016F1AC(void);
|
||||
extern s32 func_80029178(s32);
|
||||
extern void func_80146DB8(s32, void *);
|
||||
extern void func_80161CD0(s32, s32);
|
||||
extern s32 func_80161208(s32);
|
||||
extern void func_801725A4(s32);
|
||||
|
||||
s32 func_8015B950(arg0)
|
||||
s32 arg0;
|
||||
{
|
||||
Vec3 vzero;
|
||||
Vec3 vpos;
|
||||
s32 x;
|
||||
s32 ang;
|
||||
s32 t;
|
||||
s32 r;
|
||||
s32 lo;
|
||||
|
||||
lo = -0xB0000;
|
||||
if (func_80161B18(arg0)) {
|
||||
return;
|
||||
}
|
||||
switch (func_801619A4(arg0)) {
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
case 6:
|
||||
if (func_80149AA8(arg0)) {
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_80149AD4(arg0);
|
||||
return;
|
||||
}
|
||||
if (func_80149B54(arg0)) {
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_80149BAC(arg0);
|
||||
return;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
func_801498E0(arg0);
|
||||
break;
|
||||
case 4:
|
||||
func_80149954(arg0);
|
||||
break;
|
||||
case 5:
|
||||
if (func_80149A64(arg0)) {
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_800CCCC0(arg0);
|
||||
return;
|
||||
}
|
||||
break;
|
||||
}
|
||||
if (func_80149CD4(arg0)) {
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_8015E880(arg0);
|
||||
return;
|
||||
}
|
||||
if (func_80149744(arg0)) {
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_80149788(arg0);
|
||||
return;
|
||||
}
|
||||
if (func_801496D4(arg0)) {
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_80149704(arg0);
|
||||
if (!((u8)func_80148AFC(arg0))) {
|
||||
func_80146D90(arg0);
|
||||
}
|
||||
if ((*(s32 *)(arg0 + 0x24) | *(s32 *)(arg0 + 0x2C)) != 0) {
|
||||
func_80154150(arg0, 0xF);
|
||||
} else {
|
||||
func_801541D8(arg0, 0xD, 6);
|
||||
}
|
||||
*(s32 *)(arg0 + 0x238) = 1;
|
||||
return;
|
||||
}
|
||||
if (func_801488A8(arg0)) {
|
||||
vzero.vx = 0;
|
||||
vzero.vy = 0;
|
||||
vzero.vz = 0;
|
||||
t = *(s16 *)(arg0 + 0x26);
|
||||
vpos.vx = t;
|
||||
vpos.vy = 0;
|
||||
t = *(s16 *)(arg0 + 0x2E);
|
||||
vpos.vz = t;
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_80147078(arg0, 1);
|
||||
func_8015A264(arg0);
|
||||
ang = -(func_80013294(&vzero, &vpos) << 16);
|
||||
if (ang < *(s32 *)(arg0 + 0x2C)) {
|
||||
*(s32 *)(arg0 + 0x2C) = ang;
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (*(u16 *)(arg0 + 0xB8) == 0x8000) {
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_80147078(arg0, 0);
|
||||
func_80159B70(arg0);
|
||||
return;
|
||||
}
|
||||
x = *(s32 *)(arg0 + 0x2C);
|
||||
if (func_8016F1AC() != 0) goto Lfalse;
|
||||
if (x <= lo) goto Ltrue;
|
||||
if (D_8011F9C4 == 0) goto Lfalse;
|
||||
if ((u8)func_80029178(0x21) != 0) goto Lfalse;
|
||||
Ltrue:
|
||||
r = 1;
|
||||
goto Ltest;
|
||||
Lfalse:
|
||||
r = 0;
|
||||
Ltest:
|
||||
if (r) {
|
||||
D_801891B8[*(u16 *)arg0](arg0);
|
||||
func_80147078(arg0, 0);
|
||||
func_80159B70(arg0);
|
||||
func_80154150(arg0, 9);
|
||||
func_80146DB8(arg0, D_8018914C);
|
||||
func_80161CD0(arg0, *(u16 *)(arg0 + 0x16E));
|
||||
} else {
|
||||
if (func_80161208(arg0) == 0) {
|
||||
func_801725A4(arg0);
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
/* ===== BANK BLOCKER (Phase-29 crack-wave, 2026-07-18) =====
|
||||
* match_one MATCH (271 ins) but NOT bankable as-is: def-side register-threading wall.
|
||||
* - canonical decl (engine_core.h:1839, in DEFINE_func_8015BEE4) = `extern s32 func_8015B950(void)`.
|
||||
* - caller func_8015BEE4 = thin wrapper `s32 func_8015BEE4(void){ return func_8015B950(); }` — forwards
|
||||
* its OWN incoming $a0 to func_8015B950 IMPLICITLY (register pass-through), so func_8015B950 MUST stay
|
||||
* declared (void) for the wrapper to compile byte-correct.
|
||||
* - BUT func_8015B950's body reads $a0 (asm insn 3: addu $s0,$a0,$zero). A `register s32 __asm__("$4")`
|
||||
* pin compiles but PERTURBS codegen (SHA fail, not byte-neutral).
|
||||
* FOLLOW-UP: Fable5/careful analysis — either get the entry $a0-capture pin byte-exact, or thread the
|
||||
* arg through func_8015BEE4 fleet-wide (widen both, byte-neutrally). A func_8013FAF8-class wall with a
|
||||
* no-arg thin-wrapper caller. Draft above is the byte-correct body. */
|
||||
+143
-143
@@ -4,156 +4,156 @@
|
||||
# cross-binary collapsible-byte leverage: docs/duplicates.cross.md.
|
||||
|
||||
# THREE progress metrics (all matter — see the labels):
|
||||
FLEET fn-count byte-ident: 306638 / 353722 = 86.69% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay)
|
||||
FLEET instr-weighted : 9600243 / 13081451 = 73.4% (shipped .text across resident+138 overlays; the decomp.dev-DISPLAY number)
|
||||
FLEET distinct-code(uniq): 3174089 / 5574674 = 56.9% (60422/87459 unique fns; the DISTINCT-RE number)
|
||||
FLEET fn-count byte-ident: 306776 / 353722 = 86.73% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay)
|
||||
FLEET instr-weighted : 9634605 / 13081451 = 73.7% (shipped .text across resident+138 overlays; the decomp.dev-DISPLAY number)
|
||||
FLEET distinct-code(uniq): 3206708 / 5574674 = 57.5% (60553/87459 unique fns; the DISTINCT-RE number)
|
||||
MAIN game-code weighted : 436 / 60201 = 0.7% (Phase-27 T10; SEPARATE — LINKED-excluding Ghidra sig dated 2026-06-14, PROVISIONAL until a fresh/complete main sig; NOT folded into the fleet number)
|
||||
|
||||
FLEET REAL substantive : 304783 (of which dedup-shared 234161 via 1846 groups / 234205 instances)
|
||||
FLEET REAL substantive : 304921 (of which dedup-shared 234161 via 1846 groups / 234205 instances)
|
||||
FLEET LINKED PsyQ objs : 959
|
||||
FLEET NON_MATCHING : 7 (0 in any default build — G4)
|
||||
FLEET INCLUDE_ASM stubs : 47077
|
||||
FLEET INCLUDE_ASM stubs : 46939
|
||||
FLEET matchable : 353722
|
||||
|
||||
| binary | REAL | shared | LINKED | byte-ident | matchable | byte-ident % |
|
||||
|---|---:|---:|---:|---:|---:|---:|
|
||||
| main | 54 | 2 | 959 | 1055 | 2096 | 50.3% |
|
||||
| resident | 129 | 0 | 0 | 131 | 145 | 90.3% |
|
||||
| ov_SC01_000 | 2182 | 1704 | 0 | 2182 | 2403 | 90.8% |
|
||||
| ov_SC01_001 | 2187 | 1704 | 0 | 2189 | 2466 | 88.8% |
|
||||
| ov_SC01_004 | 2180 | 1695 | 0 | 2181 | 2414 | 90.3% |
|
||||
| ov_SC01_005 | 2209 | 1717 | 0 | 2209 | 2503 | 88.3% |
|
||||
| ov_SC01_006 | 2209 | 1717 | 0 | 2209 | 2503 | 88.3% |
|
||||
| ov_SC01_008 | 2180 | 1695 | 0 | 2182 | 2426 | 89.9% |
|
||||
| ov_SC01_009 | 2205 | 1696 | 0 | 2206 | 2507 | 88.0% |
|
||||
| ov_SC01_074 | 2183 | 1696 | 0 | 2185 | 2425 | 90.1% |
|
||||
| ov_SC01_077 | 2374 | 1664 | 0 | 2376 | 2585 | 91.9% |
|
||||
| ov_SC01_080 | 2221 | 1699 | 0 | 2221 | 2512 | 88.4% |
|
||||
| ov_SC01_084 | 2229 | 1699 | 0 | 2234 | 2579 | 86.6% |
|
||||
| ov_SC02_000 | 2280 | 1734 | 0 | 2280 | 2683 | 85.0% |
|
||||
| ov_SC02_003 | 2280 | 1734 | 0 | 2280 | 2683 | 85.0% |
|
||||
| ov_SC02_004 | 2188 | 1699 | 0 | 2188 | 2401 | 91.1% |
|
||||
| ov_SC02_005 | 2295 | 1695 | 0 | 2305 | 2927 | 78.7% |
|
||||
| ov_SC02_011 | 2304 | 1702 | 0 | 2315 | 2893 | 80.0% |
|
||||
| ov_SC02_015 | 2189 | 1701 | 0 | 2189 | 2414 | 90.7% |
|
||||
| ov_SC02_016 | 2219 | 1701 | 0 | 2222 | 2545 | 87.3% |
|
||||
| ov_SC02_017 | 2265 | 1701 | 0 | 2273 | 2732 | 83.2% |
|
||||
| ov_SC02_021 | 2195 | 1701 | 0 | 2195 | 2437 | 90.1% |
|
||||
| ov_SC02_026 | 2210 | 1699 | 0 | 2216 | 2572 | 86.2% |
|
||||
| ov_SC02_027 | 2233 | 1699 | 0 | 2242 | 2692 | 83.3% |
|
||||
| ov_SC02_028 | 2234 | 1699 | 0 | 2244 | 2701 | 83.1% |
|
||||
| ov_SC02_031 | 2220 | 1700 | 0 | 2225 | 2562 | 86.8% |
|
||||
| ov_SC02_035 | 2196 | 1699 | 0 | 2199 | 2520 | 87.3% |
|
||||
| ov_SC02_039 | 2181 | 1699 | 0 | 2181 | 2416 | 90.3% |
|
||||
| ov_SC02_041 | 2216 | 1699 | 0 | 2219 | 2561 | 86.6% |
|
||||
| ov_SC03_001 | 2315 | 1700 | 0 | 2332 | 2869 | 81.3% |
|
||||
| ov_SC03_002 | 2242 | 1704 | 0 | 2257 | 2631 | 85.8% |
|
||||
| ov_SC03_003 | 2191 | 1699 | 0 | 2192 | 2423 | 90.5% |
|
||||
| ov_SC03_006 | 2254 | 1705 | 0 | 2263 | 2767 | 81.8% |
|
||||
| ov_SC03_007 | 2235 | 1699 | 0 | 2239 | 2623 | 85.4% |
|
||||
| ov_SC03_010 | 2197 | 1699 | 0 | 2197 | 2470 | 88.9% |
|
||||
| ov_SC03_011 | 2205 | 1699 | 0 | 2211 | 2527 | 87.5% |
|
||||
| ov_SC03_012 | 2183 | 1699 | 0 | 2184 | 2406 | 90.8% |
|
||||
| ov_SC03_013 | 2202 | 1699 | 0 | 2202 | 2492 | 88.4% |
|
||||
| ov_SC03_014 | 2260 | 1724 | 0 | 2260 | 2685 | 84.2% |
|
||||
| ov_SC03_015 | 2261 | 1724 | 0 | 2261 | 2685 | 84.2% |
|
||||
| ov_SC03_023 | 2189 | 1699 | 0 | 2190 | 2435 | 89.9% |
|
||||
| ov_SC03_024 | 2247 | 1704 | 0 | 2254 | 2641 | 85.3% |
|
||||
| ov_SC03_028 | 2229 | 1699 | 0 | 2233 | 2664 | 83.8% |
|
||||
| ov_SC03_029 | 2231 | 1701 | 0 | 2241 | 2644 | 84.8% |
|
||||
| ov_SC03_030 | 2203 | 1704 | 0 | 2205 | 2495 | 88.4% |
|
||||
| ov_SC03_031 | 2201 | 1699 | 0 | 2204 | 2514 | 87.7% |
|
||||
| ov_SC03_089 | 2215 | 1699 | 0 | 2222 | 2581 | 86.1% |
|
||||
| ov_SC03_090 | 2217 | 1699 | 0 | 2225 | 2625 | 84.8% |
|
||||
| ov_SC03_091 | 2220 | 1699 | 0 | 2228 | 2640 | 84.4% |
|
||||
| ov_SC03_092 | 2231 | 1699 | 0 | 2243 | 2587 | 86.7% |
|
||||
| ov_SC03_093 | 2207 | 1699 | 0 | 2211 | 2563 | 86.3% |
|
||||
| ov_SC03_094 | 2202 | 1699 | 0 | 2208 | 2577 | 85.7% |
|
||||
| ov_SC03_095 | 2192 | 1699 | 0 | 2195 | 2474 | 88.7% |
|
||||
| ov_SC03_096 | 2192 | 1699 | 0 | 2195 | 2465 | 89.0% |
|
||||
| ov_SC03_097 | 2221 | 1699 | 0 | 2228 | 2603 | 85.6% |
|
||||
| ov_SC03_098 | 2200 | 1699 | 0 | 2203 | 2541 | 86.7% |
|
||||
| ov_SC03_099 | 2193 | 1699 | 0 | 2196 | 2504 | 87.7% |
|
||||
| ov_SC03_100 | 2203 | 1699 | 0 | 2207 | 2539 | 86.9% |
|
||||
| ov_SC03_101 | 2203 | 1699 | 0 | 2207 | 2528 | 87.3% |
|
||||
| ov_SC03_102 | 2195 | 1699 | 0 | 2198 | 2492 | 88.2% |
|
||||
| ov_SC03_103 | 2198 | 1701 | 0 | 2201 | 2510 | 87.7% |
|
||||
| ov_SC03_104 | 2223 | 1699 | 0 | 2230 | 2616 | 85.2% |
|
||||
| ov_SC03_105 | 2216 | 1699 | 0 | 2223 | 2597 | 85.6% |
|
||||
| ov_SC03_108 | 2185 | 1699 | 0 | 2185 | 2443 | 89.4% |
|
||||
| ov_SC03_109 | 2186 | 1699 | 0 | 2188 | 2424 | 90.3% |
|
||||
| ov_SC03_110 | 2191 | 1699 | 0 | 2191 | 2468 | 88.8% |
|
||||
| ov_SC03_111 | 2203 | 1699 | 0 | 2206 | 2510 | 87.9% |
|
||||
| ov_SC03_112 | 2196 | 1701 | 0 | 2198 | 2526 | 87.0% |
|
||||
| ov_SC03_113 | 2189 | 1701 | 0 | 2192 | 2468 | 88.8% |
|
||||
| ov_SC03_114 | 2179 | 1699 | 0 | 2181 | 2415 | 90.3% |
|
||||
| ov_SC03_115 | 2196 | 1699 | 0 | 2198 | 2472 | 88.9% |
|
||||
| ov_SC03_116 | 2186 | 1699 | 0 | 2189 | 2438 | 89.8% |
|
||||
| ov_SC03_117 | 2214 | 1699 | 0 | 2220 | 2557 | 86.8% |
|
||||
| ov_SC03_118 | 2261 | 1723 | 0 | 2262 | 2685 | 84.2% |
|
||||
| ov_SC03_119 | 2259 | 1723 | 0 | 2260 | 2685 | 84.2% |
|
||||
| ov_SC03_121 | 2193 | 1699 | 0 | 2196 | 2459 | 89.3% |
|
||||
| ov_SC03_124 | 2272 | 1695 | 0 | 2292 | 2741 | 83.6% |
|
||||
| ov_SC03_125 | 2229 | 1699 | 0 | 2241 | 2588 | 86.6% |
|
||||
| ov_SC03_126 | 2192 | 1701 | 0 | 2192 | 2423 | 90.5% |
|
||||
| ov_SC04_000 | 2208 | 1703 | 0 | 2217 | 2546 | 87.1% |
|
||||
| ov_SC04_002 | 2224 | 1699 | 0 | 2228 | 2636 | 84.5% |
|
||||
| ov_SC04_003 | 2202 | 1699 | 0 | 2206 | 2502 | 88.2% |
|
||||
| ov_SC04_004 | 2211 | 1699 | 0 | 2213 | 2558 | 86.5% |
|
||||
| ov_SC04_005 | 2219 | 1699 | 0 | 2225 | 2612 | 85.2% |
|
||||
| ov_SC04_006 | 2192 | 1699 | 0 | 2194 | 2454 | 89.4% |
|
||||
| ov_SC04_007 | 2212 | 1699 | 0 | 2216 | 2569 | 86.3% |
|
||||
| ov_SC04_008 | 2182 | 1699 | 0 | 2182 | 2415 | 90.4% |
|
||||
| ov_SC04_009 | 2198 | 1699 | 0 | 2201 | 2441 | 90.2% |
|
||||
| ov_SC04_010 | 2189 | 1699 | 0 | 2190 | 2419 | 90.5% |
|
||||
| ov_SC04_011 | 2245 | 1699 | 0 | 2251 | 2803 | 80.3% |
|
||||
| ov_SC04_012 | 2185 | 1699 | 0 | 2186 | 2420 | 90.3% |
|
||||
| ov_SC04_015 | 2248 | 1700 | 0 | 2259 | 2611 | 86.5% |
|
||||
| ov_SC04_016 | 2188 | 1699 | 0 | 2190 | 2440 | 89.8% |
|
||||
| ov_SC04_018 | 2299 | 1734 | 0 | 2299 | 2857 | 80.5% |
|
||||
| ov_SC04_019 | 2304 | 1734 | 0 | 2304 | 2857 | 80.6% |
|
||||
| ov_SC04_020 | 2216 | 1699 | 0 | 2228 | 2567 | 86.8% |
|
||||
| ov_SC04_021 | 2193 | 1701 | 0 | 2193 | 2423 | 90.5% |
|
||||
| ov_SC05_000 | 2189 | 1703 | 0 | 2192 | 2422 | 90.5% |
|
||||
| ov_SC05_001 | 2212 | 1699 | 0 | 2217 | 2574 | 86.1% |
|
||||
| ov_SC05_002 | 2194 | 1699 | 0 | 2197 | 2442 | 90.0% |
|
||||
| ov_SC05_003 | 2191 | 1699 | 0 | 2192 | 2481 | 88.4% |
|
||||
| ov_SC05_004 | 2186 | 1699 | 0 | 2188 | 2464 | 88.8% |
|
||||
| ov_SC05_005 | 2193 | 1699 | 0 | 2194 | 2491 | 88.1% |
|
||||
| ov_SC05_006 | 2185 | 1699 | 0 | 2185 | 2430 | 89.9% |
|
||||
| ov_SC05_007 | 2195 | 1699 | 0 | 2200 | 2482 | 88.6% |
|
||||
| ov_SC05_008 | 2212 | 1699 | 0 | 2214 | 2543 | 87.1% |
|
||||
| ov_SC05_009 | 2190 | 1699 | 0 | 2194 | 2438 | 90.0% |
|
||||
| ov_SC05_010 | 2216 | 1699 | 0 | 2220 | 2588 | 85.8% |
|
||||
| ov_SC05_011 | 2188 | 1699 | 0 | 2189 | 2409 | 90.9% |
|
||||
| ov_SC05_017 | 2295 | 1696 | 0 | 2306 | 2842 | 81.1% |
|
||||
| ov_SC05_018 | 2242 | 1699 | 0 | 2255 | 2673 | 84.4% |
|
||||
| ov_SC05_019 | 2193 | 1701 | 0 | 2193 | 2423 | 90.5% |
|
||||
| ov_SC06_000 | 2253 | 1708 | 0 | 2256 | 2691 | 83.8% |
|
||||
| ov_SC06_006 | 2208 | 1699 | 0 | 2209 | 2511 | 88.0% |
|
||||
| ov_SC06_008 | 2218 | 1701 | 0 | 2224 | 2542 | 87.5% |
|
||||
| ov_SC06_010 | 2202 | 1699 | 0 | 2207 | 2517 | 87.7% |
|
||||
| ov_SC06_011 | 2196 | 1699 | 0 | 2200 | 2468 | 89.1% |
|
||||
| ov_SC06_013 | 2190 | 1699 | 0 | 2191 | 2425 | 90.4% |
|
||||
| ov_SC06_014 | 2196 | 1699 | 0 | 2198 | 2453 | 89.6% |
|
||||
| ov_SC06_015 | 2193 | 1699 | 0 | 2193 | 2421 | 90.6% |
|
||||
| ov_SC06_016 | 2210 | 1699 | 0 | 2212 | 2549 | 86.8% |
|
||||
| ov_SC06_018 | 2207 | 1702 | 0 | 2214 | 2665 | 83.1% |
|
||||
| ov_SC06_020 | 2200 | 1701 | 0 | 2201 | 2518 | 87.4% |
|
||||
| ov_SC06_022 | 2214 | 1699 | 0 | 2222 | 2642 | 84.1% |
|
||||
| ov_SC06_024 | 2219 | 1699 | 0 | 2225 | 2667 | 83.4% |
|
||||
| ov_SC06_025 | 2211 | 1699 | 0 | 2216 | 2572 | 86.2% |
|
||||
| ov_SC06_027 | 2179 | 1699 | 0 | 2180 | 2408 | 90.5% |
|
||||
| ov_SC06_029 | 2237 | 1699 | 0 | 2249 | 2662 | 84.5% |
|
||||
| ov_SC06_030 | 2192 | 1699 | 0 | 2192 | 2456 | 89.3% |
|
||||
| ov_SC06_032 | 2204 | 1700 | 0 | 2211 | 2658 | 83.2% |
|
||||
| ov_SC06_033 | 2207 | 1700 | 0 | 2214 | 2631 | 84.2% |
|
||||
| ov_SC07_000 | 2206 | 1703 | 0 | 2208 | 2521 | 87.6% |
|
||||
| ov_SC07_001 | 2192 | 1699 | 0 | 2194 | 2454 | 89.4% |
|
||||
| ov_SC07_002 | 2219 | 1699 | 0 | 2223 | 2579 | 86.2% |
|
||||
| ov_SC07_006 | 1965 | 1547 | 0 | 2045 | 2456 | 83.3% |
|
||||
| ov_SC07_007 | 1981 | 1548 | 0 | 2065 | 2614 | 79.0% |
|
||||
| ov_SC07_008 | 2176 | 1699 | 0 | 2176 | 2386 | 91.2% |
|
||||
| ov_SC07_009 | 2186 | 1699 | 0 | 2188 | 2430 | 90.0% |
|
||||
| ov_SC07_010 | 1994 | 1548 | 0 | 2077 | 2526 | 82.2% |
|
||||
| ov_SC07_011 | 1981 | 1547 | 0 | 2061 | 2450 | 84.1% |
|
||||
| ov_SC01_000 | 2183 | 1704 | 0 | 2183 | 2403 | 90.8% |
|
||||
| ov_SC01_001 | 2188 | 1704 | 0 | 2190 | 2466 | 88.8% |
|
||||
| ov_SC01_004 | 2181 | 1695 | 0 | 2182 | 2414 | 90.4% |
|
||||
| ov_SC01_005 | 2210 | 1717 | 0 | 2210 | 2503 | 88.3% |
|
||||
| ov_SC01_006 | 2210 | 1717 | 0 | 2210 | 2503 | 88.3% |
|
||||
| ov_SC01_008 | 2181 | 1695 | 0 | 2183 | 2426 | 90.0% |
|
||||
| ov_SC01_009 | 2206 | 1696 | 0 | 2207 | 2507 | 88.0% |
|
||||
| ov_SC01_074 | 2184 | 1696 | 0 | 2186 | 2425 | 90.1% |
|
||||
| ov_SC01_077 | 2375 | 1664 | 0 | 2377 | 2585 | 92.0% |
|
||||
| ov_SC01_080 | 2222 | 1699 | 0 | 2222 | 2512 | 88.5% |
|
||||
| ov_SC01_084 | 2230 | 1699 | 0 | 2235 | 2579 | 86.7% |
|
||||
| ov_SC02_000 | 2281 | 1734 | 0 | 2281 | 2683 | 85.0% |
|
||||
| ov_SC02_003 | 2281 | 1734 | 0 | 2281 | 2683 | 85.0% |
|
||||
| ov_SC02_004 | 2189 | 1699 | 0 | 2189 | 2401 | 91.2% |
|
||||
| ov_SC02_005 | 2296 | 1695 | 0 | 2306 | 2927 | 78.8% |
|
||||
| ov_SC02_011 | 2305 | 1702 | 0 | 2316 | 2893 | 80.1% |
|
||||
| ov_SC02_015 | 2190 | 1701 | 0 | 2190 | 2414 | 90.7% |
|
||||
| ov_SC02_016 | 2220 | 1701 | 0 | 2223 | 2545 | 87.3% |
|
||||
| ov_SC02_017 | 2266 | 1701 | 0 | 2274 | 2732 | 83.2% |
|
||||
| ov_SC02_021 | 2196 | 1701 | 0 | 2196 | 2437 | 90.1% |
|
||||
| ov_SC02_026 | 2211 | 1699 | 0 | 2217 | 2572 | 86.2% |
|
||||
| ov_SC02_027 | 2234 | 1699 | 0 | 2243 | 2692 | 83.3% |
|
||||
| ov_SC02_028 | 2235 | 1699 | 0 | 2245 | 2701 | 83.1% |
|
||||
| ov_SC02_031 | 2221 | 1700 | 0 | 2226 | 2562 | 86.9% |
|
||||
| ov_SC02_035 | 2197 | 1699 | 0 | 2200 | 2520 | 87.3% |
|
||||
| ov_SC02_039 | 2182 | 1699 | 0 | 2182 | 2416 | 90.3% |
|
||||
| ov_SC02_041 | 2217 | 1699 | 0 | 2220 | 2561 | 86.7% |
|
||||
| ov_SC03_001 | 2316 | 1700 | 0 | 2333 | 2869 | 81.3% |
|
||||
| ov_SC03_002 | 2243 | 1704 | 0 | 2258 | 2631 | 85.8% |
|
||||
| ov_SC03_003 | 2192 | 1699 | 0 | 2193 | 2423 | 90.5% |
|
||||
| ov_SC03_006 | 2255 | 1705 | 0 | 2264 | 2767 | 81.8% |
|
||||
| ov_SC03_007 | 2236 | 1699 | 0 | 2240 | 2623 | 85.4% |
|
||||
| ov_SC03_010 | 2198 | 1699 | 0 | 2198 | 2470 | 89.0% |
|
||||
| ov_SC03_011 | 2206 | 1699 | 0 | 2212 | 2527 | 87.5% |
|
||||
| ov_SC03_012 | 2184 | 1699 | 0 | 2185 | 2406 | 90.8% |
|
||||
| ov_SC03_013 | 2203 | 1699 | 0 | 2203 | 2492 | 88.4% |
|
||||
| ov_SC03_014 | 2261 | 1724 | 0 | 2261 | 2685 | 84.2% |
|
||||
| ov_SC03_015 | 2262 | 1724 | 0 | 2262 | 2685 | 84.2% |
|
||||
| ov_SC03_023 | 2190 | 1699 | 0 | 2191 | 2435 | 90.0% |
|
||||
| ov_SC03_024 | 2248 | 1704 | 0 | 2255 | 2641 | 85.4% |
|
||||
| ov_SC03_028 | 2230 | 1699 | 0 | 2234 | 2664 | 83.9% |
|
||||
| ov_SC03_029 | 2232 | 1701 | 0 | 2242 | 2644 | 84.8% |
|
||||
| ov_SC03_030 | 2204 | 1704 | 0 | 2206 | 2495 | 88.4% |
|
||||
| ov_SC03_031 | 2202 | 1699 | 0 | 2205 | 2514 | 87.7% |
|
||||
| ov_SC03_089 | 2216 | 1699 | 0 | 2223 | 2581 | 86.1% |
|
||||
| ov_SC03_090 | 2218 | 1699 | 0 | 2226 | 2625 | 84.8% |
|
||||
| ov_SC03_091 | 2221 | 1699 | 0 | 2229 | 2640 | 84.4% |
|
||||
| ov_SC03_092 | 2232 | 1699 | 0 | 2244 | 2587 | 86.7% |
|
||||
| ov_SC03_093 | 2208 | 1699 | 0 | 2212 | 2563 | 86.3% |
|
||||
| ov_SC03_094 | 2203 | 1699 | 0 | 2209 | 2577 | 85.7% |
|
||||
| ov_SC03_095 | 2193 | 1699 | 0 | 2196 | 2474 | 88.8% |
|
||||
| ov_SC03_096 | 2193 | 1699 | 0 | 2196 | 2465 | 89.1% |
|
||||
| ov_SC03_097 | 2222 | 1699 | 0 | 2229 | 2603 | 85.6% |
|
||||
| ov_SC03_098 | 2201 | 1699 | 0 | 2204 | 2541 | 86.7% |
|
||||
| ov_SC03_099 | 2194 | 1699 | 0 | 2197 | 2504 | 87.7% |
|
||||
| ov_SC03_100 | 2204 | 1699 | 0 | 2208 | 2539 | 87.0% |
|
||||
| ov_SC03_101 | 2204 | 1699 | 0 | 2208 | 2528 | 87.3% |
|
||||
| ov_SC03_102 | 2196 | 1699 | 0 | 2199 | 2492 | 88.2% |
|
||||
| ov_SC03_103 | 2199 | 1701 | 0 | 2202 | 2510 | 87.7% |
|
||||
| ov_SC03_104 | 2224 | 1699 | 0 | 2231 | 2616 | 85.3% |
|
||||
| ov_SC03_105 | 2217 | 1699 | 0 | 2224 | 2597 | 85.6% |
|
||||
| ov_SC03_108 | 2186 | 1699 | 0 | 2186 | 2443 | 89.5% |
|
||||
| ov_SC03_109 | 2187 | 1699 | 0 | 2189 | 2424 | 90.3% |
|
||||
| ov_SC03_110 | 2192 | 1699 | 0 | 2192 | 2468 | 88.8% |
|
||||
| ov_SC03_111 | 2204 | 1699 | 0 | 2207 | 2510 | 87.9% |
|
||||
| ov_SC03_112 | 2197 | 1701 | 0 | 2199 | 2526 | 87.1% |
|
||||
| ov_SC03_113 | 2190 | 1701 | 0 | 2193 | 2468 | 88.9% |
|
||||
| ov_SC03_114 | 2180 | 1699 | 0 | 2182 | 2415 | 90.4% |
|
||||
| ov_SC03_115 | 2197 | 1699 | 0 | 2199 | 2472 | 89.0% |
|
||||
| ov_SC03_116 | 2187 | 1699 | 0 | 2190 | 2438 | 89.8% |
|
||||
| ov_SC03_117 | 2215 | 1699 | 0 | 2221 | 2557 | 86.9% |
|
||||
| ov_SC03_118 | 2262 | 1723 | 0 | 2263 | 2685 | 84.3% |
|
||||
| ov_SC03_119 | 2260 | 1723 | 0 | 2261 | 2685 | 84.2% |
|
||||
| ov_SC03_121 | 2194 | 1699 | 0 | 2197 | 2459 | 89.3% |
|
||||
| ov_SC03_124 | 2273 | 1695 | 0 | 2293 | 2741 | 83.7% |
|
||||
| ov_SC03_125 | 2230 | 1699 | 0 | 2242 | 2588 | 86.6% |
|
||||
| ov_SC03_126 | 2193 | 1701 | 0 | 2193 | 2423 | 90.5% |
|
||||
| ov_SC04_000 | 2209 | 1703 | 0 | 2218 | 2546 | 87.1% |
|
||||
| ov_SC04_002 | 2225 | 1699 | 0 | 2229 | 2636 | 84.6% |
|
||||
| ov_SC04_003 | 2203 | 1699 | 0 | 2207 | 2502 | 88.2% |
|
||||
| ov_SC04_004 | 2212 | 1699 | 0 | 2214 | 2558 | 86.6% |
|
||||
| ov_SC04_005 | 2220 | 1699 | 0 | 2226 | 2612 | 85.2% |
|
||||
| ov_SC04_006 | 2193 | 1699 | 0 | 2195 | 2454 | 89.4% |
|
||||
| ov_SC04_007 | 2213 | 1699 | 0 | 2217 | 2569 | 86.3% |
|
||||
| ov_SC04_008 | 2183 | 1699 | 0 | 2183 | 2415 | 90.4% |
|
||||
| ov_SC04_009 | 2199 | 1699 | 0 | 2202 | 2441 | 90.2% |
|
||||
| ov_SC04_010 | 2190 | 1699 | 0 | 2191 | 2419 | 90.6% |
|
||||
| ov_SC04_011 | 2246 | 1699 | 0 | 2252 | 2803 | 80.3% |
|
||||
| ov_SC04_012 | 2186 | 1699 | 0 | 2187 | 2420 | 90.4% |
|
||||
| ov_SC04_015 | 2249 | 1700 | 0 | 2260 | 2611 | 86.6% |
|
||||
| ov_SC04_016 | 2189 | 1699 | 0 | 2191 | 2440 | 89.8% |
|
||||
| ov_SC04_018 | 2300 | 1734 | 0 | 2300 | 2857 | 80.5% |
|
||||
| ov_SC04_019 | 2305 | 1734 | 0 | 2305 | 2857 | 80.7% |
|
||||
| ov_SC04_020 | 2217 | 1699 | 0 | 2229 | 2567 | 86.8% |
|
||||
| ov_SC04_021 | 2194 | 1701 | 0 | 2194 | 2423 | 90.5% |
|
||||
| ov_SC05_000 | 2190 | 1703 | 0 | 2193 | 2422 | 90.5% |
|
||||
| ov_SC05_001 | 2213 | 1699 | 0 | 2218 | 2574 | 86.2% |
|
||||
| ov_SC05_002 | 2195 | 1699 | 0 | 2198 | 2442 | 90.0% |
|
||||
| ov_SC05_003 | 2192 | 1699 | 0 | 2193 | 2481 | 88.4% |
|
||||
| ov_SC05_004 | 2187 | 1699 | 0 | 2189 | 2464 | 88.8% |
|
||||
| ov_SC05_005 | 2194 | 1699 | 0 | 2195 | 2491 | 88.1% |
|
||||
| ov_SC05_006 | 2186 | 1699 | 0 | 2186 | 2430 | 90.0% |
|
||||
| ov_SC05_007 | 2196 | 1699 | 0 | 2201 | 2482 | 88.7% |
|
||||
| ov_SC05_008 | 2213 | 1699 | 0 | 2215 | 2543 | 87.1% |
|
||||
| ov_SC05_009 | 2191 | 1699 | 0 | 2195 | 2438 | 90.0% |
|
||||
| ov_SC05_010 | 2217 | 1699 | 0 | 2221 | 2588 | 85.8% |
|
||||
| ov_SC05_011 | 2189 | 1699 | 0 | 2190 | 2409 | 90.9% |
|
||||
| ov_SC05_017 | 2296 | 1696 | 0 | 2307 | 2842 | 81.2% |
|
||||
| ov_SC05_018 | 2243 | 1699 | 0 | 2256 | 2673 | 84.4% |
|
||||
| ov_SC05_019 | 2194 | 1701 | 0 | 2194 | 2423 | 90.5% |
|
||||
| ov_SC06_000 | 2254 | 1708 | 0 | 2257 | 2691 | 83.9% |
|
||||
| ov_SC06_006 | 2209 | 1699 | 0 | 2210 | 2511 | 88.0% |
|
||||
| ov_SC06_008 | 2219 | 1701 | 0 | 2225 | 2542 | 87.5% |
|
||||
| ov_SC06_010 | 2203 | 1699 | 0 | 2208 | 2517 | 87.7% |
|
||||
| ov_SC06_011 | 2197 | 1699 | 0 | 2201 | 2468 | 89.2% |
|
||||
| ov_SC06_013 | 2191 | 1699 | 0 | 2192 | 2425 | 90.4% |
|
||||
| ov_SC06_014 | 2197 | 1699 | 0 | 2199 | 2453 | 89.6% |
|
||||
| ov_SC06_015 | 2194 | 1699 | 0 | 2194 | 2421 | 90.6% |
|
||||
| ov_SC06_016 | 2211 | 1699 | 0 | 2213 | 2549 | 86.8% |
|
||||
| ov_SC06_018 | 2208 | 1702 | 0 | 2215 | 2665 | 83.1% |
|
||||
| ov_SC06_020 | 2201 | 1701 | 0 | 2202 | 2518 | 87.5% |
|
||||
| ov_SC06_022 | 2215 | 1699 | 0 | 2223 | 2642 | 84.1% |
|
||||
| ov_SC06_024 | 2220 | 1699 | 0 | 2226 | 2667 | 83.5% |
|
||||
| ov_SC06_025 | 2212 | 1699 | 0 | 2217 | 2572 | 86.2% |
|
||||
| ov_SC06_027 | 2180 | 1699 | 0 | 2181 | 2408 | 90.6% |
|
||||
| ov_SC06_029 | 2238 | 1699 | 0 | 2250 | 2662 | 84.5% |
|
||||
| ov_SC06_030 | 2193 | 1699 | 0 | 2193 | 2456 | 89.3% |
|
||||
| ov_SC06_032 | 2205 | 1700 | 0 | 2212 | 2658 | 83.2% |
|
||||
| ov_SC06_033 | 2208 | 1700 | 0 | 2215 | 2631 | 84.2% |
|
||||
| ov_SC07_000 | 2207 | 1703 | 0 | 2209 | 2521 | 87.6% |
|
||||
| ov_SC07_001 | 2193 | 1699 | 0 | 2195 | 2454 | 89.4% |
|
||||
| ov_SC07_002 | 2220 | 1699 | 0 | 2224 | 2579 | 86.2% |
|
||||
| ov_SC07_006 | 1966 | 1547 | 0 | 2046 | 2456 | 83.3% |
|
||||
| ov_SC07_007 | 1982 | 1548 | 0 | 2066 | 2614 | 79.0% |
|
||||
| ov_SC07_008 | 2177 | 1699 | 0 | 2177 | 2386 | 91.2% |
|
||||
| ov_SC07_009 | 2187 | 1699 | 0 | 2189 | 2430 | 90.1% |
|
||||
| ov_SC07_010 | 1995 | 1548 | 0 | 2078 | 2526 | 82.3% |
|
||||
| ov_SC07_011 | 1982 | 1547 | 0 | 2062 | 2450 | 84.2% |
|
||||
|
||||
@@ -358,3 +358,19 @@ conditional) · main-EXE/B9 + GLM/B6 + resident's 14 walls (P30) · behemoths B7
|
||||
312/312. Stubs 138→137, defs 1, 0 NON_MATCHING (G4). Resolved draft `.run/drafts_faf8/func_8013FAF8.c`.
|
||||
**NEXT:** giant #2 `func_80131340` (424, _jr_8012ACE0.c — in-TU-verified twice, earlier "gate reject" was a
|
||||
§55b propagate-damage artifact; re-gate on the clean tree). Propagation of all banked giants = batched (§55b).
|
||||
|
||||
- **✅ 2026-07-18 — CRACK-WAVE (Ultracode, 7 fresh-core agents, ~2M tokens): 3 MATCH / 4 near; 1 family banked ×138.**
|
||||
Fan-out over the top unbanked substantial families (m2c + §31 map + gcc-2.7.2 source + match_one).
|
||||
**MATCH:** `func_8013CB84` (249, non-jr) → **banked ×138** (5-lever crack: §32 struct-base-hoist + §18
|
||||
address-caching + packed-struct block-move + 1-arg-callee + Rec12 stride array; §8d reconcile D_801DAA78
|
||||
Rec9→u8 cast-at-use). `func_8015B950` (271, jr) + `func_8013B83C` (272, jr-O0) — MATCH but DEFERRED on
|
||||
real walls (8015b950 = def-side register-threading: canonical (void) vs def-reads-$a0, thin-wrapper caller
|
||||
func_8015BEE4 forwards $a0 implicitly, pin perturbs codegen; 8013b83c = Arm-A -O0 sweep-block + -O0 jr-isolation
|
||||
gap). Both preserved+characterized (.run/giants/wave_func_*.c, R20). **Near (permuter/Fable5 fuel, rich probes):**
|
||||
func_8012956C (15), func_8013D53C (27, CSE address-merge — literal-probe gives structural match, family-wide),
|
||||
func_80175DA8 (30), func_80135EB0 (36, jr). **Permuter:** func_8014D820 33→27 (regalloc-order wall → Fable5
|
||||
seed, preserved). **CRACK-WAVE SWEEP LESSON (new memory + §-note):** a freshly-cracked exemplar is draft-ov077
|
||||
in the stale map → family_sweep finds 0; --reconcile-raw mishandles per-overlay externs (0/137). FIX: bank ×1 →
|
||||
`make sig-overlays` + `family_hseq.py` regen (→matched-ov077) → standard `family_sweep --hseq --only` (137/137).
|
||||
**BATCH R22: check-all 140/140 byte-identical; tools-health green; dedup 1846/0.** Fleet **73.4→73.7% instr ·
|
||||
56.9→57.5% distinct · 86.73% fn-count**. Commit `commit:0699`.
|
||||
|
||||
Reference in New Issue
Block a user