fix(phase-30 S47-A1): asm-label aliases must never be dropped by §8d; +148 members

scope_data_externs §8d drops the draft's decl of any symbol the TU already declares at file scope.
It keys on the SYMBOL, but a §37 asm-label ALIAS binds a DIFFERENT C identifier to that symbol:
the TU declares `D_801851BC`, it does NOT declare `tbl_D_80187044`. Dropping the alias left the
body referencing an undeclared name, which cc1 reports with no `error:` prefix — so the sweep
classified all 132 siblings as CC1-FAIL(no-diagnostic), i.e. as a codegen wall.

The bitter part: the alias exists PRECISELY BECAUSE the TU declares that symbol with a conflicting
type (a `void (*[])(void)` dispatch table vs this function's 20-byte-stride view). The drop rule
fired on exactly the declarations written to survive it. Why 1 of 2 died was fully determined:
tbl_D_80187048's symbol is not in the TU, so it demoted normally.

Fix: is_asm_alias() — an alias is demoted into the body, never dropped (the identifiers differ, so
it cannot collide with the TU's decl). Control-tested 6 ways incl. self-labels and plain externs.

Measured: func_80132018 3/135 -> 135/135; full re-sweep +16 more. Total +148 members.
R22 clean-fleet 213 passed / 0 failed of 213. tools-health OK, dedup-check 1949/0.
Fleet 96.11 -> 96.15% fn-count, 87.8 -> 87.9% distinct; stubs 14,120 -> 13,972 = -148 (2nd oracle).

CORRECTION TO MY OWN CLAIM (R14): after the probe I said the 58% aggregate was concealing a broad
problem. The re-sweep refuted it — only 16 more banks fleet-wide. The alias class really was one
family; the first read ("outlier") was right and the correction was wrong.

875 sweep failures classified: 231 PLUMBING-other, 141 DIFF (real divergence, only 16%),
136 `conflicting types for cdFileLocTable` (ONE symbol — biggest single class left),
77 CC1-FAIL(no-diagnostic), 26 memcpy, 12 D_80114F24, 11 D_800AE620, 9 D_800183E0.

STILL UNFIXED, and the most dangerous instrument left: the sweep's failure classifier greps for
`error:`, which gcc-2.7.2 never emits on hard errors. Every hard error therefore reads
CC1-FAIL(no-diagnostic). That is how a missing declaration looked like a codegen wall across 132
functions. rtu_match was fixed for this at T0(b); this classifier was not.
This commit is contained in:
Drew T
2026-08-10 18:50:48 -06:00
parent 57e345fcce
commit efec1b9b71
141 changed files with 4919 additions and 327 deletions
+27 -28
View File
@@ -2,7 +2,7 @@
> Generated by `tools/backlog.py render` from `.run/backlog.jsonl`. These are functions the Phase-21 automation got **close** on but did NOT byte-match. The whole-binary byte-gate is the sole arbiter (G3/P9): **byte-matches bank and are NOT listed here** — only genuine near-misses/blockers are. Ranked by hand-session priority: **reach** (×N propagation leverage) → **closeness** (match_one mismatch count, lower = closer) → **size**. Each row's `best_draft` is the closest C the machine reached — resume from there.
**Open near-misses:** 867 · by status {'near': 805, 'matched': 1, 'failed': 61} · by class {'was 12 with a stop-searching verdict; now 2 (index-loop form + a1-spill + §148-C slider)': 1, 'cse1 elision-count: target has 16 combine-orphaned sign-ext slots, draft 12; permuter-confirmed floor from BOTH basins; §147-A/B/E refuted': 1, 'plumbing': 3, 'struct': 4, 'regalloc-order': 3, 'schedule': 2, 'loose-typing': 1, 'WAVE': 8, 'SOLVED: ghost wedge (cookbook §151) — r3000 blockage(load,store)=2 makes zero-wedge unreachable by source order': 1, None: 834, 'STRUCT': 9}
**Open near-misses:** 866 · by status {'near': 805, 'matched': 1, 'failed': 60} · by class {'was 12 with a stop-searching verdict; now 2 (index-loop form + a1-spill + §148-C slider)': 1, 'cse1 elision-count: target has 16 combine-orphaned sign-ext slots, draft 12; permuter-confirmed floor from BOTH basins; §147-A/B/E refuted': 1, 'plumbing': 3, 'struct': 4, 'regalloc-order': 3, 'schedule': 2, 'loose-typing': 1, 'WAVE': 8, 'SOLVED: ghost wedge (cookbook §151) — r3000 blockage(load,store)=2 makes zero-wedge unreachable by source order': 1, None: 833, 'STRUCT': 9}
| # | addr | reach | class | nins | status | closeness | where it stuck | best draft |
|--:|------|------:|-------|-----:|--------|----------:|----------------|------------|
@@ -846,30 +846,29 @@
| 838 | func_800D1984 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_800D1984.c` |
| 839 | func_800D24A0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_800D24A0.c` |
| 840 | func_8013DD68 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8013DD68.c` |
| 841 | func_80132018 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80132018.c` |
| 842 | func_80181164 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80181164.c` |
| 843 | func_8012D664 | None | schedule | None | failed | | none — MATCH | `.run/backlog_drafts/func_8012D664.c` |
| 844 | func_80136C90 | None | struct | None | failed | | none — MATCH (28 ins). 10-byte 1-aligned struct copy (S10{char s[10]}) from global D_801A5A7C into a stack buffer, then ((void(*)(int, void *, int, int, int, int))func_8001534C)(0,&buf,0x78,0x10,0,0). gcc emits the block move as 2 unaligned words (lwl/lwr+swl/swr) + 2 bytes (lb/sb). | `.run/backlog_drafts/func_80136C90.c` |
| 845 | func_80145CEC | None | struct | None | failed | | 2 residuals — (1) target RELOADS global ptr ((s32 *)&D_80126B78) before each of its 5 field accesses (f28/f18/f1a/f1c/f2c); gcc-2.7.2 CSEs the single pointer load in every clean-C form I tried (int-cast, (s8*)/(s32) M2C_FIELD, struct*), keeping ONE load. volatile forces reloads but hoists them + leaves delay-slot nops the target fills (target is NOT volatile). (2) frame 0x20 not 0x18: target reserves an unused 8-byte stack local @0x10 (address-taken local — reproduced, but every code-free escape optimizes away and a visible escape corrupts the ((int (*)(void))func_80145EE8)(0) arg). Structure/order/values/callees all match; only the alias-driven reload chain + the phantom frame local remain. Family exemplar (~130 overlays). | `.run/backlog_drafts/func_80145CEC.c` |
| 846 | func_8016BCC0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016BCC0.c` |
| 847 | func_8017DE58 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017DE58.c` |
| 848 | func_80181A70 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80181A70.c` |
| 849 | func_8017E7B4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E7B4.c` |
| 850 | func_8012E778 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8012E778.c` |
| 851 | func_8013C360 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8013C360.c` |
| 852 | func_80146128 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80146128.c` |
| 853 | func_80146FC4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80146FC4.c` |
| 854 | func_80149954 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80149954.c` |
| 855 | func_8014CBE8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8014CBE8.c` |
| 856 | func_80153800 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80153800.c` |
| 857 | func_801539F8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801539F8.c` |
| 858 | func_8015B858 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8015B858.c` |
| 859 | func_80161124 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80161124.c` |
| 860 | func_801638A0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801638A0.c` |
| 861 | func_8016829C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016829C.c` |
| 862 | func_801684B4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801684B4.c` |
| 863 | func_8016A8FC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016A8FC.c` |
| 864 | func_8016D848 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016D848.c` |
| 865 | func_8016D984 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016D984.c` |
| 866 | func_8016E728 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016E728.c` |
| 867 | func_8017A4AC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017A4AC.c` |
| 841 | func_80181164 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80181164.c` |
| 842 | func_8012D664 | None | schedule | None | failed | | none — MATCH | `.run/backlog_drafts/func_8012D664.c` |
| 843 | func_80136C90 | None | struct | None | failed | | none — MATCH (28 ins). 10-byte 1-aligned struct copy (S10{char s[10]}) from global D_801A5A7C into a stack buffer, then ((void(*)(int, void *, int, int, int, int))func_8001534C)(0,&buf,0x78,0x10,0,0). gcc emits the block move as 2 unaligned words (lwl/lwr+swl/swr) + 2 bytes (lb/sb). | `.run/backlog_drafts/func_80136C90.c` |
| 844 | func_80145CEC | None | struct | None | failed | | 2 residuals — (1) target RELOADS global ptr ((s32 *)&D_80126B78) before each of its 5 field accesses (f28/f18/f1a/f1c/f2c); gcc-2.7.2 CSEs the single pointer load in every clean-C form I tried (int-cast, (s8*)/(s32) M2C_FIELD, struct*), keeping ONE load. volatile forces reloads but hoists them + leaves delay-slot nops the target fills (target is NOT volatile). (2) frame 0x20 not 0x18: target reserves an unused 8-byte stack local @0x10 (address-taken local — reproduced, but every code-free escape optimizes away and a visible escape corrupts the ((int (*)(void))func_80145EE8)(0) arg). Structure/order/values/callees all match; only the alias-driven reload chain + the phantom frame local remain. Family exemplar (~130 overlays). | `.run/backlog_drafts/func_80145CEC.c` |
| 845 | func_8016BCC0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016BCC0.c` |
| 846 | func_8017DE58 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017DE58.c` |
| 847 | func_80181A70 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80181A70.c` |
| 848 | func_8017E7B4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017E7B4.c` |
| 849 | func_8012E778 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8012E778.c` |
| 850 | func_8013C360 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8013C360.c` |
| 851 | func_80146128 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80146128.c` |
| 852 | func_80146FC4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80146FC4.c` |
| 853 | func_80149954 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80149954.c` |
| 854 | func_8014CBE8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8014CBE8.c` |
| 855 | func_80153800 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80153800.c` |
| 856 | func_801539F8 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801539F8.c` |
| 857 | func_8015B858 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8015B858.c` |
| 858 | func_80161124 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_80161124.c` |
| 859 | func_801638A0 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801638A0.c` |
| 860 | func_8016829C | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016829C.c` |
| 861 | func_801684B4 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_801684B4.c` |
| 862 | func_8016A8FC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016A8FC.c` |
| 863 | func_8016D848 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016D848.c` |
| 864 | func_8016D984 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016D984.c` |
| 865 | func_8016E728 | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8016E728.c` |
| 866 | func_8017A4AC | None | | None | failed | | won't compile standalone (loose-typing / missing decl) | `.run/backlog_drafts/func_8017A4AC.c` |
+8 -8
View File
@@ -2,13 +2,13 @@
> Generated by `tools/family_hseq.py` from the 212 overlay sigs + per-overlay src stubs. Ranked by TEMPLATABLE byte-weight (PURE+IMM members × nins × 4). The byte-gate is the arbiter.
>
> **Scope: the 212 OVERLAYS only** (no main, no resident) · generated at HEAD `commit:1543` · stub set derived from `corpus.stubs` — the same oracle `progress.py` counts, so same-tree overlay totals agree by construction; compare digests only at the same HEAD.
> **Scope: the 212 OVERLAYS only** (no main, no resident) · generated at HEAD `commit:1545` · stub set derived from `corpus.stubs` — the same oracle `progress.py` counts, so same-tree overlay totals agree by construction; compare digests only at the same HEAD.
**Fleet (overlays):** 96.0% fn / 94.4% instr / 88.4% distinct-code matched. Unmatched: 14,508 instances / 752,073 ins (12,306 distinct classes).
**Fleet (overlays):** 96.4% fn / 94.7% instr / 89.0% distinct-code matched. Unmatched: 13,086 instances / 710,836 ins (11,179 distinct classes).
**Tail cross-check (Phase-25 close):** 8,990 tail fns / 467,881 ins → 596 h_seq families ≥2, **146 substantial (nins≥80) / 93,128 ins**.
**Tail cross-check (Phase-25 close):** 8,391 tail fns / 453,625 ins → 528 h_seq families ≥2, **146 substantial (nins≥80) / 93,128 ins**.
**Full frontier (all unmatched by h_seq):** 2572 target families (≥2 members or a matched sibling) + 4513 singletons (Step-D residue). Substantial: **399 families / 193,468 templatable ins**, 86 with a matched sibling (zero-crack). Substantial member classes: 1,247 PURE · 33 IMM · 6 STRUCT-excluded.
**Full frontier (all unmatched by h_seq):** 2221 target families (≥2 members or a matched sibling) + 4513 singletons (Step-D residue). Substantial: **397 families / 192,231 templatable ins**, 84 with a matched sibling (zero-crack). Substantial member classes: 1,236 PURE · 33 IMM · 6 STRUCT-excluded.
## Top substantial families (by templatable byte-weight)
@@ -42,10 +42,10 @@
| 25 | 251 | 5 (5/0/0) | 5/5 | cross-address | PURE | 1 | Y | 0x80180b04 matched | 1,255 |
| 26 | 198 | 6 (6/0/0) | 6/6 | cross-address | PURE | 0 | Y | 0x80185f58 modal | 1,188 |
| 27 | 385 | 3 (3/0/0) | 3/3 | cross-address | PURE | 0 | Y | 0x8018ff98 modal | 1,155 |
| 28 | 102 | 11 (1/10/0) | 10/11 | scattered | IMM | 77 | · | 0x8017d290 matched | 1,122 |
| 29 | 185 | 6 (6/0/0) | 6/6 | cross-address | PURE | 0 | Y | 0x80187aec modal | 1,110 |
| 30 | 218 | 5 (5/0/0) | 5/5 | cross-address | PURE | 0 | Y | 0x8017cf3c modal | 1,090 |
| 31 | 363 | 3 (3/0/0) | 1/3 | per-location | PURE | 138 | Y | 0x8015444c matched-ov077 | 1,089 |
| 28 | 185 | 6 (6/0/0) | 6/6 | cross-address | PURE | 0 | Y | 0x80187aec modal | 1,110 |
| 29 | 218 | 5 (5/0/0) | 5/5 | cross-address | PURE | 0 | Y | 0x8017cf3c modal | 1,090 |
| 30 | 363 | 3 (3/0/0) | 1/3 | per-location | PURE | 138 | Y | 0x8015444c matched-ov077 | 1,089 |
| 31 | 102 | 10 (0/10/0) | 9/10 | scattered | IMM | 78 | · | 0x8017d290 matched | 1,020 |
| 32 | 337 | 3 (3/0/0) | 1/3 | per-location | PURE | 138 | Y | 0x80159c84 matched-ov077 | 1,011 |
| 33 | 329 | 3 (3/0/0) | 1/3 | per-location | PURE | 138 | Y | 0x8013c414 matched-ov077 | 987 |
| 34 | 324 | 3 (3/0/0) | 2/3 | cross-address | PURE | 0 | Y | 0x80183324 draft-ov077 | 972 |
+141 -141
View File
@@ -4,16 +4,16 @@
# cross-binary collapsible-byte leverage: docs/duplicates.cross.md.
# THREE progress metrics (all matter — see the labels):
FLEET fn-count byte-ident: 349252 / 363379 = 96.11% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay)
FLEET instr-weighted : 12733946 / 13523856 = 94.2% (shipped .text across main + resident + 211 overlays; the decomp.dev-DISPLAY number)
FLEET distinct-code(uniq): 5137648 / 5851963 = 87.8% (79749/90928 unique fns; the DISTINCT-RE number)
FLEET fn-count byte-ident: 349400 / 363379 = 96.15% (REAL+LINKED+empties; FUNCTION-count, ×134-inflated — one crack counts per overlay)
FLEET instr-weighted : 12740815 / 13523856 = 94.2% (shipped .text across main + resident + 211 overlays; the decomp.dev-DISPLAY number)
FLEET distinct-code(uniq): 5143912 / 5851963 = 87.9% (79883/90928 unique fns; the DISTINCT-RE number)
MAIN game-code weighted : 436 / 79510 = 0.5% (INCLUDED in the fleet numbers above since 2026-07-22 — roadmap §1 metrics contract; LINKED-excluding Ghidra sig dated 2026-08-05; caveat is R34: no independent second oracle for a PS-X EXE, NOT drift)
(fleet EXCLUDING main, for continuity with pre-2026-07-22 readings: 12733510 / 13444346 = 94.7%)
(fleet EXCLUDING main, for continuity with pre-2026-07-22 readings: 12740379 / 13444346 = 94.8%)
FLEET REAL substantive : 347070 (of which dedup-shared 249221 via 1949 groups / 249295 instances)
FLEET REAL substantive : 347218 (of which dedup-shared 249221 via 1949 groups / 249295 instances)
FLEET LINKED PsyQ objs : 959
FLEET NON_MATCHING : 7 (0 in any default build — G4)
FLEET INCLUDE_ASM stubs : 14120
FLEET INCLUDE_ASM stubs : 13972
FLEET matchable : 363379
| binary | REAL | shared | LINKED | byte-ident | matchable | byte-ident % |
@@ -90,144 +90,144 @@ FLEET matchable : 363379
| md_SC05_029 | 11 | 0 | 0 | 15 | 31 | 48.4% |
| md_SC07_003 | 12 | 0 | 0 | 12 | 100 | 12.0% |
| md_SC07_004 | 40 | 0 | 0 | 40 | 315 | 12.7% |
| ov_MAIN_012 | 2152 | 1658 | 0 | 2231 | 2403 | 92.8% |
| ov_MAIN_012 | 2157 | 1658 | 0 | 2236 | 2403 | 93.1% |
| ov_SC01_000 | 2389 | 1775 | 0 | 2389 | 2403 | 99.4% |
| ov_SC01_001 | 2396 | 1776 | 0 | 2398 | 2466 | 97.2% |
| ov_SC01_004 | 2393 | 1767 | 0 | 2394 | 2414 | 99.2% |
| ov_SC01_005 | 2425 | 1790 | 0 | 2425 | 2503 | 96.9% |
| ov_SC01_006 | 2425 | 1790 | 0 | 2425 | 2503 | 96.9% |
| ov_SC01_008 | 2393 | 1767 | 0 | 2395 | 2426 | 98.7% |
| ov_SC01_009 | 2420 | 1768 | 0 | 2421 | 2507 | 96.6% |
| ov_SC01_074 | 2395 | 1768 | 0 | 2397 | 2425 | 98.8% |
| ov_SC01_001 | 2397 | 1776 | 0 | 2399 | 2466 | 97.3% |
| ov_SC01_004 | 2394 | 1767 | 0 | 2395 | 2414 | 99.2% |
| ov_SC01_005 | 2426 | 1790 | 0 | 2426 | 2503 | 96.9% |
| ov_SC01_006 | 2426 | 1790 | 0 | 2426 | 2503 | 96.9% |
| ov_SC01_008 | 2394 | 1767 | 0 | 2396 | 2426 | 98.8% |
| ov_SC01_009 | 2421 | 1768 | 0 | 2422 | 2507 | 96.6% |
| ov_SC01_074 | 2396 | 1768 | 0 | 2398 | 2425 | 98.9% |
| ov_SC01_077 | 2561 | 1733 | 0 | 2563 | 2586 | 99.1% |
| ov_SC01_080 | 2424 | 1771 | 0 | 2424 | 2512 | 96.5% |
| ov_SC01_084 | 2448 | 1776 | 0 | 2453 | 2579 | 95.1% |
| ov_SC02_000 | 2520 | 1815 | 0 | 2520 | 2683 | 93.9% |
| ov_SC02_003 | 2520 | 1815 | 0 | 2520 | 2683 | 93.9% |
| ov_SC02_004 | 2389 | 1771 | 0 | 2389 | 2401 | 99.5% |
| ov_SC02_005 | 2539 | 1767 | 0 | 2549 | 2927 | 87.1% |
| ov_SC02_011 | 2626 | 1774 | 0 | 2637 | 2893 | 91.2% |
| ov_SC02_015 | 2399 | 1773 | 0 | 2399 | 2414 | 99.4% |
| ov_SC02_016 | 2482 | 1774 | 0 | 2485 | 2545 | 97.6% |
| ov_SC02_017 | 2551 | 1774 | 0 | 2559 | 2732 | 93.7% |
| ov_SC02_021 | 2404 | 1773 | 0 | 2404 | 2437 | 98.6% |
| ov_SC02_026 | 2502 | 1771 | 0 | 2508 | 2572 | 97.5% |
| ov_SC02_027 | 2558 | 1776 | 0 | 2567 | 2692 | 95.4% |
| ov_SC02_028 | 2563 | 1776 | 0 | 2573 | 2701 | 95.3% |
| ov_SC02_031 | 2493 | 1772 | 0 | 2498 | 2562 | 97.5% |
| ov_SC02_035 | 2487 | 1771 | 0 | 2490 | 2520 | 98.8% |
| ov_SC02_037 | 2265 | 1658 | 0 | 2347 | 2516 | 93.3% |
| ov_SC02_039 | 2394 | 1771 | 0 | 2394 | 2416 | 99.1% |
| ov_SC02_041 | 2475 | 1771 | 0 | 2478 | 2561 | 96.8% |
| ov_SC03_001 | 2670 | 1772 | 0 | 2687 | 2869 | 93.7% |
| ov_SC03_002 | 2542 | 1776 | 0 | 2557 | 2631 | 97.2% |
| ov_SC03_003 | 2398 | 1771 | 0 | 2399 | 2423 | 99.0% |
| ov_SC03_006 | 2554 | 1778 | 0 | 2563 | 2767 | 92.6% |
| ov_SC03_007 | 2462 | 1771 | 0 | 2466 | 2623 | 94.0% |
| ov_SC03_010 | 2415 | 1771 | 0 | 2415 | 2471 | 97.7% |
| ov_SC03_011 | 2416 | 1771 | 0 | 2422 | 2527 | 95.8% |
| ov_SC03_012 | 2388 | 1771 | 0 | 2389 | 2406 | 99.3% |
| ov_SC03_013 | 2421 | 1771 | 0 | 2421 | 2493 | 97.1% |
| ov_SC03_014 | 2573 | 1802 | 0 | 2573 | 2685 | 95.8% |
| ov_SC03_015 | 2572 | 1802 | 0 | 2572 | 2685 | 95.8% |
| ov_SC03_023 | 2400 | 1771 | 0 | 2401 | 2435 | 98.6% |
| ov_SC03_024 | 2516 | 1776 | 0 | 2523 | 2641 | 95.5% |
| ov_SC03_028 | 2462 | 1772 | 0 | 2466 | 2664 | 92.6% |
| ov_SC03_029 | 2499 | 1774 | 0 | 2509 | 2644 | 94.9% |
| ov_SC03_030 | 2418 | 1776 | 0 | 2420 | 2495 | 97.0% |
| ov_SC03_031 | 2446 | 1771 | 0 | 2449 | 2514 | 97.4% |
| ov_SC03_089 | 2512 | 1776 | 0 | 2519 | 2581 | 97.6% |
| ov_SC03_090 | 2527 | 1776 | 0 | 2535 | 2625 | 96.6% |
| ov_SC03_091 | 2541 | 1776 | 0 | 2549 | 2640 | 96.6% |
| ov_SC03_092 | 2507 | 1776 | 0 | 2519 | 2588 | 97.3% |
| ov_SC03_093 | 2515 | 1776 | 0 | 2519 | 2563 | 98.3% |
| ov_SC03_094 | 2504 | 1771 | 0 | 2510 | 2577 | 97.4% |
| ov_SC03_095 | 2431 | 1771 | 0 | 2434 | 2474 | 98.4% |
| ov_SC03_096 | 2428 | 1771 | 0 | 2431 | 2465 | 98.6% |
| ov_SC03_097 | 2525 | 1776 | 0 | 2532 | 2603 | 97.3% |
| ov_SC03_098 | 2509 | 1776 | 0 | 2512 | 2541 | 98.9% |
| ov_SC03_099 | 2485 | 1771 | 0 | 2488 | 2504 | 99.4% |
| ov_SC03_100 | 2520 | 1776 | 0 | 2524 | 2539 | 99.4% |
| ov_SC03_101 | 2483 | 1776 | 0 | 2487 | 2528 | 98.4% |
| ov_SC03_102 | 2469 | 1771 | 0 | 2472 | 2492 | 99.2% |
| ov_SC03_103 | 2493 | 1773 | 0 | 2496 | 2510 | 99.4% |
| ov_SC03_104 | 2541 | 1776 | 0 | 2548 | 2616 | 97.4% |
| ov_SC03_105 | 2448 | 1772 | 0 | 2455 | 2597 | 94.5% |
| ov_SC03_107 | 2190 | 1658 | 0 | 2273 | 2497 | 91.0% |
| ov_SC03_108 | 2399 | 1771 | 0 | 2399 | 2443 | 98.2% |
| ov_SC03_109 | 2407 | 1771 | 0 | 2409 | 2424 | 99.4% |
| ov_SC03_110 | 2440 | 1778 | 0 | 2440 | 2468 | 98.9% |
| ov_SC03_111 | 2471 | 1771 | 0 | 2474 | 2510 | 98.6% |
| ov_SC03_112 | 2437 | 1773 | 0 | 2439 | 2526 | 96.6% |
| ov_SC03_113 | 2434 | 1773 | 0 | 2437 | 2468 | 98.7% |
| ov_SC03_114 | 2389 | 1771 | 0 | 2391 | 2415 | 99.0% |
| ov_SC03_115 | 2431 | 1771 | 0 | 2433 | 2472 | 98.4% |
| ov_SC03_116 | 2399 | 1771 | 0 | 2402 | 2438 | 98.5% |
| ov_SC03_117 | 2467 | 1771 | 0 | 2473 | 2557 | 96.7% |
| ov_SC03_118 | 2542 | 1796 | 0 | 2543 | 2685 | 94.7% |
| ov_SC03_119 | 2539 | 1796 | 0 | 2540 | 2685 | 94.6% |
| ov_SC03_121 | 2402 | 1771 | 0 | 2405 | 2459 | 97.8% |
| ov_SC03_124 | 2578 | 1767 | 0 | 2598 | 2741 | 94.8% |
| ov_SC03_125 | 2528 | 1771 | 0 | 2540 | 2588 | 98.1% |
| ov_SC03_126 | 2399 | 1773 | 0 | 2399 | 2423 | 99.0% |
| ov_SC04_000 | 2473 | 1775 | 0 | 2482 | 2546 | 97.5% |
| ov_SC04_002 | 2503 | 1771 | 0 | 2507 | 2636 | 95.1% |
| ov_SC04_003 | 2438 | 1771 | 0 | 2442 | 2502 | 97.6% |
| ov_SC04_004 | 2469 | 1771 | 0 | 2471 | 2558 | 96.6% |
| ov_SC04_005 | 2499 | 1771 | 0 | 2505 | 2612 | 95.9% |
| ov_SC04_006 | 2429 | 1771 | 0 | 2431 | 2454 | 99.1% |
| ov_SC04_007 | 2493 | 1771 | 0 | 2497 | 2569 | 97.2% |
| ov_SC04_008 | 2399 | 1771 | 0 | 2399 | 2415 | 99.3% |
| ov_SC04_009 | 2426 | 1771 | 0 | 2429 | 2441 | 99.5% |
| ov_SC04_010 | 2401 | 1771 | 0 | 2402 | 2419 | 99.3% |
| ov_SC04_011 | 2515 | 1776 | 0 | 2521 | 2803 | 89.9% |
| ov_SC04_012 | 2396 | 1771 | 0 | 2397 | 2420 | 99.0% |
| ov_SC04_015 | 2533 | 1772 | 0 | 2544 | 2611 | 97.4% |
| ov_SC04_016 | 2400 | 1771 | 0 | 2402 | 2440 | 98.4% |
| ov_SC04_018 | 2674 | 1808 | 0 | 2674 | 2857 | 93.6% |
| ov_SC04_019 | 2672 | 1808 | 0 | 2672 | 2857 | 93.5% |
| ov_SC04_020 | 2514 | 1771 | 0 | 2526 | 2567 | 98.4% |
| ov_SC04_021 | 2399 | 1773 | 0 | 2399 | 2423 | 99.0% |
| ov_SC05_000 | 2405 | 1775 | 0 | 2408 | 2422 | 99.4% |
| ov_SC05_001 | 2478 | 1772 | 0 | 2483 | 2574 | 96.5% |
| ov_SC05_002 | 2429 | 1771 | 0 | 2432 | 2442 | 99.6% |
| ov_SC05_003 | 2412 | 1771 | 0 | 2413 | 2481 | 97.3% |
| ov_SC05_004 | 2422 | 1771 | 0 | 2424 | 2464 | 98.4% |
| ov_SC05_005 | 2437 | 1777 | 0 | 2438 | 2491 | 97.9% |
| ov_SC05_006 | 2421 | 1772 | 0 | 2421 | 2430 | 99.6% |
| ov_SC05_007 | 2431 | 1771 | 0 | 2436 | 2482 | 98.1% |
| ov_SC05_008 | 2441 | 1771 | 0 | 2443 | 2543 | 96.1% |
| ov_SC05_009 | 2408 | 1771 | 0 | 2412 | 2438 | 98.9% |
| ov_SC05_010 | 2448 | 1772 | 0 | 2452 | 2588 | 94.7% |
| ov_SC05_011 | 2395 | 1771 | 0 | 2396 | 2409 | 99.5% |
| ov_SC05_017 | 2649 | 1768 | 0 | 2660 | 2842 | 93.6% |
| ov_SC05_018 | 2546 | 1771 | 0 | 2559 | 2673 | 95.7% |
| ov_SC05_019 | 2399 | 1773 | 0 | 2399 | 2423 | 99.0% |
| ov_SC06_000 | 2528 | 1780 | 0 | 2531 | 2691 | 94.1% |
| ov_SC06_006 | 2422 | 1771 | 0 | 2423 | 2511 | 96.5% |
| ov_SC06_008 | 2487 | 1773 | 0 | 2493 | 2542 | 98.1% |
| ov_SC06_010 | 2459 | 1771 | 0 | 2464 | 2517 | 97.9% |
| ov_SC06_011 | 2414 | 1771 | 0 | 2418 | 2468 | 98.0% |
| ov_SC06_013 | 2404 | 1771 | 0 | 2405 | 2425 | 99.2% |
| ov_SC06_014 | 2415 | 1771 | 0 | 2417 | 2453 | 98.5% |
| ov_SC06_015 | 2409 | 1771 | 0 | 2409 | 2421 | 99.5% |
| ov_SC06_016 | 2451 | 1772 | 0 | 2453 | 2549 | 96.2% |
| ov_SC06_018 | 2499 | 1773 | 0 | 2506 | 2665 | 94.0% |
| ov_SC06_020 | 2445 | 1773 | 0 | 2446 | 2518 | 97.1% |
| ov_SC06_022 | 2480 | 1771 | 0 | 2488 | 2642 | 94.2% |
| ov_SC06_024 | 2500 | 1771 | 0 | 2506 | 2667 | 94.0% |
| ov_SC06_025 | 2451 | 1771 | 0 | 2456 | 2572 | 95.5% |
| ov_SC06_027 | 2390 | 1771 | 0 | 2391 | 2408 | 99.3% |
| ov_SC06_029 | 2477 | 1772 | 0 | 2489 | 2662 | 93.5% |
| ov_SC06_030 | 2412 | 1772 | 0 | 2412 | 2456 | 98.2% |
| ov_SC06_032 | 2487 | 1772 | 0 | 2494 | 2658 | 93.8% |
| ov_SC06_033 | 2488 | 1772 | 0 | 2495 | 2631 | 94.8% |
| ov_SC07_000 | 2432 | 1775 | 0 | 2434 | 2521 | 96.5% |
| ov_SC07_001 | 2403 | 1771 | 0 | 2405 | 2454 | 98.0% |
| ov_SC07_002 | 2459 | 1772 | 0 | 2463 | 2579 | 95.5% |
| ov_SC01_080 | 2425 | 1771 | 0 | 2425 | 2512 | 96.5% |
| ov_SC01_084 | 2449 | 1776 | 0 | 2454 | 2579 | 95.2% |
| ov_SC02_000 | 2521 | 1815 | 0 | 2521 | 2683 | 94.0% |
| ov_SC02_003 | 2521 | 1815 | 0 | 2521 | 2683 | 94.0% |
| ov_SC02_004 | 2390 | 1771 | 0 | 2390 | 2401 | 99.5% |
| ov_SC02_005 | 2540 | 1767 | 0 | 2550 | 2927 | 87.1% |
| ov_SC02_011 | 2627 | 1774 | 0 | 2638 | 2893 | 91.2% |
| ov_SC02_015 | 2400 | 1773 | 0 | 2400 | 2414 | 99.4% |
| ov_SC02_016 | 2483 | 1774 | 0 | 2486 | 2545 | 97.7% |
| ov_SC02_017 | 2552 | 1774 | 0 | 2560 | 2732 | 93.7% |
| ov_SC02_021 | 2405 | 1773 | 0 | 2405 | 2437 | 98.7% |
| ov_SC02_026 | 2503 | 1771 | 0 | 2509 | 2572 | 97.6% |
| ov_SC02_027 | 2559 | 1776 | 0 | 2568 | 2692 | 95.4% |
| ov_SC02_028 | 2564 | 1776 | 0 | 2574 | 2701 | 95.3% |
| ov_SC02_031 | 2494 | 1772 | 0 | 2499 | 2562 | 97.5% |
| ov_SC02_035 | 2489 | 1771 | 0 | 2492 | 2520 | 98.9% |
| ov_SC02_037 | 2270 | 1658 | 0 | 2352 | 2516 | 93.5% |
| ov_SC02_039 | 2395 | 1771 | 0 | 2395 | 2416 | 99.1% |
| ov_SC02_041 | 2476 | 1771 | 0 | 2479 | 2561 | 96.8% |
| ov_SC03_001 | 2671 | 1772 | 0 | 2688 | 2869 | 93.7% |
| ov_SC03_002 | 2543 | 1776 | 0 | 2558 | 2631 | 97.2% |
| ov_SC03_003 | 2399 | 1771 | 0 | 2400 | 2423 | 99.1% |
| ov_SC03_006 | 2555 | 1778 | 0 | 2564 | 2767 | 92.7% |
| ov_SC03_007 | 2463 | 1771 | 0 | 2467 | 2623 | 94.1% |
| ov_SC03_010 | 2416 | 1771 | 0 | 2416 | 2471 | 97.8% |
| ov_SC03_011 | 2417 | 1771 | 0 | 2423 | 2527 | 95.9% |
| ov_SC03_012 | 2389 | 1771 | 0 | 2390 | 2406 | 99.3% |
| ov_SC03_013 | 2422 | 1771 | 0 | 2422 | 2493 | 97.2% |
| ov_SC03_014 | 2574 | 1802 | 0 | 2574 | 2685 | 95.9% |
| ov_SC03_015 | 2573 | 1802 | 0 | 2573 | 2685 | 95.8% |
| ov_SC03_023 | 2401 | 1771 | 0 | 2402 | 2435 | 98.6% |
| ov_SC03_024 | 2517 | 1776 | 0 | 2524 | 2641 | 95.6% |
| ov_SC03_028 | 2463 | 1772 | 0 | 2467 | 2664 | 92.6% |
| ov_SC03_029 | 2500 | 1774 | 0 | 2510 | 2644 | 94.9% |
| ov_SC03_030 | 2419 | 1776 | 0 | 2421 | 2495 | 97.0% |
| ov_SC03_031 | 2447 | 1771 | 0 | 2450 | 2514 | 97.5% |
| ov_SC03_089 | 2513 | 1776 | 0 | 2520 | 2581 | 97.6% |
| ov_SC03_090 | 2528 | 1776 | 0 | 2536 | 2625 | 96.6% |
| ov_SC03_091 | 2542 | 1776 | 0 | 2550 | 2640 | 96.6% |
| ov_SC03_092 | 2508 | 1776 | 0 | 2520 | 2588 | 97.4% |
| ov_SC03_093 | 2516 | 1776 | 0 | 2520 | 2563 | 98.3% |
| ov_SC03_094 | 2505 | 1771 | 0 | 2511 | 2577 | 97.4% |
| ov_SC03_095 | 2432 | 1771 | 0 | 2435 | 2474 | 98.4% |
| ov_SC03_096 | 2429 | 1771 | 0 | 2432 | 2465 | 98.7% |
| ov_SC03_097 | 2526 | 1776 | 0 | 2533 | 2603 | 97.3% |
| ov_SC03_098 | 2510 | 1776 | 0 | 2513 | 2541 | 98.9% |
| ov_SC03_099 | 2486 | 1771 | 0 | 2489 | 2504 | 99.4% |
| ov_SC03_100 | 2521 | 1776 | 0 | 2525 | 2539 | 99.4% |
| ov_SC03_101 | 2484 | 1776 | 0 | 2488 | 2528 | 98.4% |
| ov_SC03_102 | 2470 | 1771 | 0 | 2473 | 2492 | 99.2% |
| ov_SC03_103 | 2494 | 1773 | 0 | 2497 | 2510 | 99.5% |
| ov_SC03_104 | 2542 | 1776 | 0 | 2549 | 2616 | 97.4% |
| ov_SC03_105 | 2449 | 1772 | 0 | 2456 | 2597 | 94.6% |
| ov_SC03_107 | 2195 | 1658 | 0 | 2278 | 2497 | 91.2% |
| ov_SC03_108 | 2400 | 1771 | 0 | 2400 | 2443 | 98.2% |
| ov_SC03_109 | 2408 | 1771 | 0 | 2410 | 2424 | 99.4% |
| ov_SC03_110 | 2441 | 1778 | 0 | 2441 | 2468 | 98.9% |
| ov_SC03_111 | 2472 | 1771 | 0 | 2475 | 2510 | 98.6% |
| ov_SC03_112 | 2438 | 1773 | 0 | 2440 | 2526 | 96.6% |
| ov_SC03_113 | 2435 | 1773 | 0 | 2438 | 2468 | 98.8% |
| ov_SC03_114 | 2390 | 1771 | 0 | 2392 | 2415 | 99.0% |
| ov_SC03_115 | 2432 | 1771 | 0 | 2434 | 2472 | 98.5% |
| ov_SC03_116 | 2400 | 1771 | 0 | 2403 | 2438 | 98.6% |
| ov_SC03_117 | 2468 | 1771 | 0 | 2474 | 2557 | 96.8% |
| ov_SC03_118 | 2543 | 1796 | 0 | 2544 | 2685 | 94.7% |
| ov_SC03_119 | 2540 | 1796 | 0 | 2541 | 2685 | 94.6% |
| ov_SC03_121 | 2403 | 1771 | 0 | 2406 | 2459 | 97.8% |
| ov_SC03_124 | 2579 | 1767 | 0 | 2599 | 2741 | 94.8% |
| ov_SC03_125 | 2529 | 1771 | 0 | 2541 | 2588 | 98.2% |
| ov_SC03_126 | 2400 | 1773 | 0 | 2400 | 2423 | 99.1% |
| ov_SC04_000 | 2474 | 1775 | 0 | 2483 | 2546 | 97.5% |
| ov_SC04_002 | 2504 | 1771 | 0 | 2508 | 2636 | 95.1% |
| ov_SC04_003 | 2439 | 1771 | 0 | 2443 | 2502 | 97.6% |
| ov_SC04_004 | 2470 | 1771 | 0 | 2472 | 2558 | 96.6% |
| ov_SC04_005 | 2500 | 1771 | 0 | 2506 | 2612 | 95.9% |
| ov_SC04_006 | 2430 | 1771 | 0 | 2432 | 2454 | 99.1% |
| ov_SC04_007 | 2494 | 1771 | 0 | 2498 | 2569 | 97.2% |
| ov_SC04_008 | 2400 | 1771 | 0 | 2400 | 2415 | 99.4% |
| ov_SC04_009 | 2427 | 1771 | 0 | 2430 | 2441 | 99.5% |
| ov_SC04_010 | 2402 | 1771 | 0 | 2403 | 2419 | 99.3% |
| ov_SC04_011 | 2516 | 1776 | 0 | 2522 | 2803 | 90.0% |
| ov_SC04_012 | 2397 | 1771 | 0 | 2398 | 2420 | 99.1% |
| ov_SC04_015 | 2534 | 1772 | 0 | 2545 | 2611 | 97.5% |
| ov_SC04_016 | 2401 | 1771 | 0 | 2403 | 2440 | 98.5% |
| ov_SC04_018 | 2675 | 1808 | 0 | 2675 | 2857 | 93.6% |
| ov_SC04_019 | 2673 | 1808 | 0 | 2673 | 2857 | 93.6% |
| ov_SC04_020 | 2515 | 1771 | 0 | 2527 | 2567 | 98.4% |
| ov_SC04_021 | 2400 | 1773 | 0 | 2400 | 2423 | 99.1% |
| ov_SC05_000 | 2406 | 1775 | 0 | 2409 | 2422 | 99.5% |
| ov_SC05_001 | 2479 | 1772 | 0 | 2484 | 2574 | 96.5% |
| ov_SC05_002 | 2430 | 1771 | 0 | 2433 | 2442 | 99.6% |
| ov_SC05_003 | 2413 | 1771 | 0 | 2414 | 2481 | 97.3% |
| ov_SC05_004 | 2423 | 1771 | 0 | 2425 | 2464 | 98.4% |
| ov_SC05_005 | 2438 | 1777 | 0 | 2439 | 2491 | 97.9% |
| ov_SC05_006 | 2422 | 1772 | 0 | 2422 | 2430 | 99.7% |
| ov_SC05_007 | 2432 | 1771 | 0 | 2437 | 2482 | 98.2% |
| ov_SC05_008 | 2442 | 1771 | 0 | 2444 | 2543 | 96.1% |
| ov_SC05_009 | 2409 | 1771 | 0 | 2413 | 2438 | 99.0% |
| ov_SC05_010 | 2449 | 1772 | 0 | 2453 | 2588 | 94.8% |
| ov_SC05_011 | 2396 | 1771 | 0 | 2397 | 2409 | 99.5% |
| ov_SC05_017 | 2650 | 1768 | 0 | 2661 | 2842 | 93.6% |
| ov_SC05_018 | 2547 | 1771 | 0 | 2560 | 2673 | 95.8% |
| ov_SC05_019 | 2400 | 1773 | 0 | 2400 | 2423 | 99.1% |
| ov_SC06_000 | 2529 | 1780 | 0 | 2532 | 2691 | 94.1% |
| ov_SC06_006 | 2423 | 1771 | 0 | 2424 | 2511 | 96.5% |
| ov_SC06_008 | 2488 | 1773 | 0 | 2494 | 2542 | 98.1% |
| ov_SC06_010 | 2460 | 1771 | 0 | 2465 | 2517 | 97.9% |
| ov_SC06_011 | 2415 | 1771 | 0 | 2419 | 2468 | 98.0% |
| ov_SC06_013 | 2405 | 1771 | 0 | 2406 | 2425 | 99.2% |
| ov_SC06_014 | 2416 | 1771 | 0 | 2418 | 2453 | 98.6% |
| ov_SC06_015 | 2410 | 1771 | 0 | 2410 | 2421 | 99.5% |
| ov_SC06_016 | 2452 | 1772 | 0 | 2454 | 2549 | 96.3% |
| ov_SC06_018 | 2500 | 1773 | 0 | 2507 | 2665 | 94.1% |
| ov_SC06_020 | 2446 | 1773 | 0 | 2447 | 2518 | 97.2% |
| ov_SC06_022 | 2481 | 1771 | 0 | 2489 | 2642 | 94.2% |
| ov_SC06_024 | 2501 | 1771 | 0 | 2507 | 2667 | 94.0% |
| ov_SC06_025 | 2452 | 1771 | 0 | 2457 | 2572 | 95.5% |
| ov_SC06_027 | 2391 | 1771 | 0 | 2392 | 2408 | 99.3% |
| ov_SC06_029 | 2478 | 1772 | 0 | 2490 | 2662 | 93.5% |
| ov_SC06_030 | 2413 | 1772 | 0 | 2413 | 2456 | 98.2% |
| ov_SC06_032 | 2488 | 1772 | 0 | 2495 | 2658 | 93.9% |
| ov_SC06_033 | 2489 | 1772 | 0 | 2496 | 2631 | 94.9% |
| ov_SC07_000 | 2433 | 1775 | 0 | 2435 | 2521 | 96.6% |
| ov_SC07_001 | 2404 | 1771 | 0 | 2406 | 2454 | 98.0% |
| ov_SC07_002 | 2460 | 1772 | 0 | 2464 | 2579 | 95.5% |
| ov_SC07_006 | 2323 | 1595 | 0 | 2403 | 2455 | 97.9% |
| ov_SC07_007 | 2336 | 1628 | 0 | 2420 | 2612 | 92.6% |
| ov_SC07_008 | 2384 | 1771 | 0 | 2384 | 2386 | 99.9% |
| ov_SC07_009 | 2396 | 1771 | 0 | 2398 | 2430 | 98.7% |
| ov_SC07_008 | 2385 | 1771 | 0 | 2385 | 2386 | 100.0% |
| ov_SC07_009 | 2397 | 1771 | 0 | 2399 | 2430 | 98.7% |
| ov_SC07_010 | 2320 | 1649 | 0 | 2403 | 2523 | 95.2% |
| ov_SC07_011 | 2338 | 1627 | 0 | 2418 | 2448 | 98.8% |
+34
View File
@@ -300,6 +300,40 @@ the 1,023 failures (unclassified).
PRINTED its own coverage and the reason, the one guard today that did) · 264 STRUCT members ·
112 unresolved immediates · 3 not-stub. The jr set routes to `tools/jtbl_family_bank.py`.
## ✅ TASK A1 (alias-gather fix) — +148 members; the defect was ONE RULE, not a missing gather
**Root cause (byte-witnessed, `func_80132018` 3/135 → 135/135):** `scope_data_externs` §8d drops the
draft's decl of any symbol the TU already declares at file scope. It keys on the **symbol**, but a
§37 ASM-LABEL ALIAS binds a **different C identifier** to that symbol: the TU declares
`D_801851BC`, it does NOT declare `tbl_D_80187044`. Dropping the alias left the body referencing an
undeclared name — and cc1 emits that with **no `error:` prefix**, so the sweep classified all 132
siblings as `CC1-FAIL(no-diagnostic)`, which reads like a codegen wall.
**The bitter part:** the alias exists PRECISELY BECAUSE the TU declares that symbol with a
conflicting type (a `void (*[])(void)` dispatch table vs this function's 20-byte-stride view). The
drop rule fired on exactly the declarations written to survive it. Why 1 of 2 died was fully
determined, not arbitrary: `tbl_D_80187048`'s symbol is NOT in the TU, so it demoted normally.
**Fix:** `is_asm_alias()` — an alias is demoted into the body, never dropped (identifiers differ, so
it cannot collide). Control-tested 6 ways incl. self-labels and plain externs.
**Measured yield: 148 members** (132 in the probe family + 16 across the full re-sweep).
R22 **213/213**; stubs 14,120 → **13,972 = −148** (second oracle agrees).
**⚠ MY OWN CORRECTION (R14):** after the probe I claimed the 58% aggregate was "concealing" a broad
problem. The re-sweep refuted it — only 16 more banks fleet-wide. **The alias class really was one
family.** The first read ("outlier") was right; the correction was wrong. Recorded because the
opposite conclusion would mis-price the next plumbing fix.
**The 875 remaining sweep failures, classified (the honest next levers):**
`231` PLUMBING-other · **`141` DIFF (real byte divergence — only 16%)** ·
**`136` `conflicting types for 'cdFileLocTable'` — ONE symbol, the biggest single class left** ·
`77` CC1-FAIL(no-diagnostic) · `26` memcpy · `12` D_80114F24 · `11` D_800AE620 · `9` D_800183E0 ·
`6` D_80078EB4 · `6` func_80145CEC.
`cdFileLocTable` is the same axis B solved for 8 symbols — but check FIRST whether it has a
byte-true definition to conform to; if not it is the `memcpy` class (chosen canonical + own gate).
**⚠ THE LAST UNFIXED INSTRUMENT:** the sweep's failure classifier still greps for `error:`, which
gcc-2.7.2 never emits on hard errors, so every hard error reads `CC1-FAIL(no-diagnostic)` —
"the compiler was unhappy for reasons we cannot see". That is the single most dangerous remaining
blindness: it is how cheap declaration faults get filed as codegen walls. `rtu_match` was fixed for
this at T0(b); this classifier was not. **Fix it before reading any future 0% as a wall.**
## ▶ RESUME HERE — D (and the leftovers below)
**C is DONE.** For reference, the command was:
`.venv/bin/python tools/dedup_extend.py --binaries ov_SC03_107,ov_MAIN_012,ov_SC02_037`
+187 -5
View File
@@ -190,7 +190,72 @@ void func_80128714(void) {
}
INCLUDE_ASM("asm/ov_MAIN_012/nonmatchings/ov_MAIN_012", func_801287B8);
// @class: remat
// @stuck: none — MATCH (62 ins). D_80185C10 read needed the address REMATERIALIZED
// (lui;addiu;lw 0(reg), not the folded lui;lw %lo) AND pinned to $a0. volatile forces the
// remat; register __asm__("$4") forces the a0 allocation (gcc otherwise picks v0). Both levers
// required — pin-alone folds, volatile-alone lands in v0.
extern void func_80129CF8(void);
extern void func_8017849C(void);
extern void func_8014FDF4(struct S8014FDF4 *a0);
extern s32 func_801505FC(s32 a0);
extern s32 func_801508B4(s32);
extern void func_80165E90(void);
extern void func_801627E8(void);
extern void func_80162B1C(void);
extern void func_80165CA0(void);
extern void func_80129010(void);
extern void func_8013CA14(void);
extern void func_800190AC(void);
extern void func_8012956C(void);
extern s32 func_8016E95C();
extern void func_801754A8(void);
extern void func_8013BC7C(void);
extern void func_8013BCDC(void);
extern void func_801379FC(void);
extern void func_8001212C(void);
void func_801287B8(void) {
extern s32 D_80126B58;
extern s32 D_80185C10;
extern u16 D_800B99DA;
extern u8 D_800B9A64;
func_80129CF8();
func_8017849C();
((void (*)(void *))func_8014FDF4)(&D_80126B58);
((void (*)(void *))func_801505FC)(&D_80126B58);
((void (*)(void *))func_801508B4)(&D_80126B58);
func_80165E90();
func_801627E8();
func_80162B1C();
func_80165CA0();
func_80129010();
func_8013CA14();
func_800190AC();
func_8012956C();
((void (*)(void))func_8016E95C)();
func_801754A8();
{
/* D_80185C10 read: the target materializes &sym into $a0 then lw 0($a0) (not the folded
* lui;lw %lo). volatile forces the rematerialize; the $4 pin forces the a0 allocation. */
register volatile s32 *p __asm__("$4") = &D_80185C10;
if (*p == 0) {
func_8013BC7C();
}
}
func_8013BCDC();
func_801379FC();
D_800B99DA++;
if (D_800B9A64 != 0) {
func_8001212C();
}
}
@@ -18578,9 +18643,82 @@ s32 func_8016BBE0(s32 param_1) {
INCLUDE_ASM("asm/ov_MAIN_012/nonmatchings/ov_MAIN_012", func_8016BCC0);
INCLUDE_ASM("asm/ov_MAIN_012/nonmatchings/ov_MAIN_012", func_8016BD78);
extern s32 func_8016BF50(s32);
extern void func_8016BFA8(s32 a0, s32 a1, s32 a2, s32 a3);
// @class: struct
// @stuck: none — MATCH (74 ins, relocation-masked)
s32 func_8016BD78(s32 param_1)
{
extern M2C_UNK D_801847F4;
extern M2C_UNK D_801847F8;
extern u8 D_801847F5;
extern u8 D_801847F6;
extern u8 D_801847F9;
extern u8 D_801847FA;
s32 iVar2;
u16 uVar1;
u8 *p1;
u8 *p2;
iVar2 = *(s32 *)(param_1 + 0x20);
((void(*)())func_8016BF50)();
p1 = &(*(u8 *)&D_801847F4);
if (*p1 != 0) *p1 -= 4;
if (D_801847F5 != 0) D_801847F5 -= 4;
if (D_801847F6 != 0) D_801847F6 -= 4;
p2 = &(*(u8 *)&D_801847F8);
if (*p2 != 0) *p2 -= 4;
if (D_801847F9 != 0) D_801847F9 -= 4;
if (D_801847FA != 0) D_801847FA -= 4;
uVar1 = *(u16 *)(iVar2 + 0x18) - 0x80;
*(u16 *)(iVar2 + 0x18) = uVar1;
if ((s32)((unsigned int)uVar1 << 0x10) < 0) {
*(u16 *)(iVar2 + 0x18) = 0;
*(s16 *)(param_1 + 2) = *(s16 *)(param_1 + 2) + 1;
}
*(u16 *)(iVar2 + 0x12) = (*(u16 *)(iVar2 + 0x12) + 0x22) & 0xfff;
((void (*)(s32, u8 *, u8 *, s32))func_8016BFA8)(param_1, p1, p2, iVar2 + 0x18);
}
extern void func_80146C3C(u8*);
extern s32 func_8016BF50(s32);
extern void func_8016BFA8(s32 a0, s32 a1, s32 a2, s32 a3);
// @class: plumbing
// @stuck: none — MATCH
s32 func_8016BEA0(s32 param_1)
{
extern M2C_UNK D_801847F4;
extern M2C_UNK D_801847F8;
int iVar2;
unsigned short uVar1;
iVar2 = *(int *)(((int)param_1) + 0x20);
((void(*)())func_8016BF50)();
uVar1 = *(unsigned short *)(((int)param_1) + 0x10) - 0x18;
*(unsigned short *)(((int)param_1) + 0x10) = uVar1;
*(unsigned short *)(iVar2 + 0x1a) = *(unsigned short *)(iVar2 + 0x1a) + uVar1;
*(unsigned short *)(iVar2 + 0x12) = (*(unsigned short *)(iVar2 + 0x12) + 0x22) & 0xfff;
((void (*)(int, void *, void *, int))func_8016BFA8)(((int)param_1), &(*(int *)&D_801847F4), &(*(int *)&D_801847F8), iVar2 + 0x18);
if (*(short *)(iVar2 + 0x1a) < 0) {
((void (*)(int))func_80146C3C)(((int)param_1));
}
}
INCLUDE_ASM("asm/ov_MAIN_012/nonmatchings/ov_MAIN_012", func_8016BEA0);
DEFINE_func_8016BF34() /* dedup: shared engine-core @0x8016bf34 (src/shared) */
@@ -20911,7 +21049,15 @@ DEFINE_func_80172BC8() /* dedup: shared engine-core @0x80172bc8 (src/shared) */
void func_80172C48(void) {
}
INCLUDE_ASM("asm/ov_MAIN_012/nonmatchings/ov_MAIN_012", func_80172C50);
extern void func_80174684(void *);
extern void func_80172CA0(void*);
void func_80172C50(void *a0) {
extern s16 D_80126B30;
*(struct S8_80172780 *)&D_80126B30 = *(struct S8_80172780 *)a0;
func_80174684((void *)func_80172CA0);
}
@@ -21128,7 +21274,43 @@ void func_80173A20(void) {
DEFINE_func_80173A28() /* dedup: shared engine-core @0x80173a28 (src/shared) */
INCLUDE_ASM("asm/ov_MAIN_012/nonmatchings/ov_MAIN_012", func_80173A60);
extern s32 func_8014C118(void*, s32, s32);
extern void func_80174684(void *);
extern void func_80173B4C(void*);
void func_80173A60(s32 a0, s32 a1, s32 a2, s32 a3, s32 arg5)
{
extern s32 D_80126B58;
extern s32 D_80127508;
extern s16 D_80126B30;
extern struct S80126B38 D_80126B38;
extern s16 D_80126B3A;
extern s16 D_80126B3C;
extern s16 D_8011F9C8;
extern s16 D_80126938;
extern s32 D_8012750C;
s32 *s1 = &D_80126B58;
s32 v0;
if (a2 != 0) {
D_80127508 = ((s32 (*)(s32, s32, s32))func_8014C118)((s32)s1, a2, (s16)a3);
} else {
D_80127508 = 0;
}
v0 = s1[8];
__builtin_memcpy(&D_80126B30, arg5, 8);
(*(s16 *)&D_80126B38) = a0;
D_80126B3A = a1;
D_80126B3C = *(u16 *)(v0 + 0x12);
func_80174684((void *)func_80173B4C);
D_8011F9C8 = 0;
D_80126938 = 0;
D_8012750C = 0;
}
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_001/nonmatchings/ov_SC01_001_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80183D80 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80183D84 == D_80183D80 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80183D80");
extern int tbl_D_80187048[][5] __asm__("D_80183D84");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_004/nonmatchings/ov_SC01_004_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017F744 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017F748 == D_8017F744 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017F744");
extern int tbl_D_80187048[][5] __asm__("D_8017F748");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2179,7 +2179,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_005/nonmatchings/ov_SC01_005_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801828D8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801828DC == D_801828D8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801828D8");
extern int tbl_D_80187048[][5] __asm__("D_801828DC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2179,7 +2179,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_006/nonmatchings/ov_SC01_006_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801828D8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801828DC == D_801828D8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801828D8");
extern int tbl_D_80187048[][5] __asm__("D_801828DC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_008/nonmatchings/ov_SC01_008_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017FCB8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017FCBC == D_8017FCB8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017FCB8");
extern int tbl_D_80187048[][5] __asm__("D_8017FCBC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_009/nonmatchings/ov_SC01_009_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80182EA0 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80182EA4 == D_80182EA0 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80182EA0");
extern int tbl_D_80187048[][5] __asm__("D_80182EA4");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_074/nonmatchings/ov_SC01_074_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017EB20 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017EB24 == D_8017EB20 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017EB20");
extern int tbl_D_80187048[][5] __asm__("D_8017EB24");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_080/nonmatchings/ov_SC01_080_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80183A80 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80183A84 == D_80183A80 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80183A80");
extern int tbl_D_80187048[][5] __asm__("D_80183A84");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC01_084/nonmatchings/ov_SC01_084_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80186D74 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80186D78 == D_80186D74 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80186D74");
extern int tbl_D_80187048[][5] __asm__("D_80186D78");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_000/nonmatchings/ov_SC02_000_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018B124 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018B128 == D_8018B124 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018B124");
extern int tbl_D_80187048[][5] __asm__("D_8018B128");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_003/nonmatchings/ov_SC02_003_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018B124 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018B128 == D_8018B124 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018B124");
extern int tbl_D_80187048[][5] __asm__("D_8018B128");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_004/nonmatchings/ov_SC02_004_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017E204 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017E208 == D_8017E204 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017E204");
extern int tbl_D_80187048[][5] __asm__("D_8017E208");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_005/nonmatchings/ov_SC02_005_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80190E08 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80190E0C == D_80190E08 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80190E08");
extern int tbl_D_80187048[][5] __asm__("D_80190E0C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_011/nonmatchings/ov_SC02_011_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80191258 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8019125C == D_80191258 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80191258");
extern int tbl_D_80187048[][5] __asm__("D_8019125C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_015/nonmatchings/ov_SC02_015_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017E76C is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017E770 == D_8017E76C + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017E76C");
extern int tbl_D_80187048[][5] __asm__("D_8017E770");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_016/nonmatchings/ov_SC02_016_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801849A4 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801849A8 == D_801849A4 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801849A4");
extern int tbl_D_80187048[][5] __asm__("D_801849A8");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_017/nonmatchings/ov_SC02_017_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018A9FC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018AA00 == D_8018A9FC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018A9FC");
extern int tbl_D_80187048[][5] __asm__("D_8018AA00");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_021/nonmatchings/ov_SC02_021_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017FFF0 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017FFF4 == D_8017FFF0 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017FFF0");
extern int tbl_D_80187048[][5] __asm__("D_8017FFF4");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_026/nonmatchings/ov_SC02_026_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80186644 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80186648 == D_80186644 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80186644");
extern int tbl_D_80187048[][5] __asm__("D_80186648");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_027/nonmatchings/ov_SC02_027_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018B768 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018B76C == D_8018B768 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018B768");
extern int tbl_D_80187048[][5] __asm__("D_8018B76C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_028/nonmatchings/ov_SC02_028_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018B96C is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018B970 == D_8018B96C + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018B96C");
extern int tbl_D_80187048[][5] __asm__("D_8018B970");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_031/nonmatchings/ov_SC02_031_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80185198 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018519C == D_80185198 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80185198");
extern int tbl_D_80187048[][5] __asm__("D_8018519C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_035/nonmatchings/ov_SC02_035_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801849F8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801849FC == D_801849F8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801849F8");
extern int tbl_D_80187048[][5] __asm__("D_801849FC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+28 -1
View File
@@ -7441,7 +7441,34 @@ void func_80184328(s32 a0) {
void func_801843D8(void) {
}
INCLUDE_ASM("asm/ov_SC02_035/nonmatchings/ov_SC02_035_jr_8017BEBC", func_801843E0);
/* §37 data asm-label alias: the TU already declares
* extern struct B16_80185794 D_800A5E88;
* at file scope (that tag is defined next to func_80185794). Re-declaring the
* symbol with this function's own 16-byte record tag is a `conflicting types`
* error, and the tag cannot be re-defined either. Aliasing a private C
* identifier onto the same linker symbol sidesteps the collision at zero blast
* radius and emits the identical %hi/%lo(D_800A5E88) pair. */
extern s32 func_8004787C(s32 a0);
extern void func_80028620(s32 a0, void *a1);
void func_801843E0(void *a0) {
extern struct B16_8018584C aD800A5E88 __asm__("D_800A5E88");
extern struct B16_8018584C D_801BBE6C;
extern s32 D_800A5E90;
s32 t;
aD800A5E88 = D_801BBE6C;
t = func_8004787C(*(s16 *)((s32)a0 + 0xFE));
if (t < 0) t += 0x1FF;
D_800A5E90 = (t >> 9) + 8;
*(u16 *)((s32)a0 + 0xFE) = (*(u16 *)((s32)a0 + 0xFE) + 0x71) & 0xFFF;
func_80028620(0, &aD800A5E88);
}
+186 -5
View File
@@ -190,7 +190,72 @@ void func_80128714(void) {
}
INCLUDE_ASM("asm/ov_SC02_037/nonmatchings/ov_SC02_037", func_801287B8);
// @class: remat
// @stuck: none — MATCH (62 ins). D_801C9A78 read needed the address REMATERIALIZED
// (lui;addiu;lw 0(reg), not the folded lui;lw %lo) AND pinned to $a0. volatile forces the
// remat; register __asm__("$4") forces the a0 allocation (gcc otherwise picks v0). Both levers
// required — pin-alone folds, volatile-alone lands in v0.
extern void func_80129CF8(void);
extern void func_8017849C(void);
extern void func_8014FDF4(struct S8014FDF4 *a0);
extern s32 func_801505FC(s32 a0);
extern s32 func_801508B4(s32);
extern void func_80165E90(void);
extern void func_801627E8(void);
extern void func_80162B1C(void);
extern void func_80165CA0(void);
extern void func_80129010(void);
extern void func_8013CA14(void);
extern void func_800190AC(void);
extern void func_8012956C(void);
extern s32 func_8016E95C();
extern void func_801754A8(void);
extern void func_8013BC7C(void);
extern void func_8013BCDC(void);
extern void func_801379FC(void);
extern void func_8001212C(void);
void func_801287B8(void) {
extern s32 D_80126B58;
extern s32 D_801C9A78;
extern u16 D_800B99DA;
extern u8 D_800B9A64;
func_80129CF8();
func_8017849C();
((void (*)(void *))func_8014FDF4)(&D_80126B58);
((void (*)(void *))func_801505FC)(&D_80126B58);
((void (*)(void *))func_801508B4)(&D_80126B58);
func_80165E90();
func_801627E8();
func_80162B1C();
func_80165CA0();
func_80129010();
func_8013CA14();
func_800190AC();
func_8012956C();
((void (*)(void))func_8016E95C)();
func_801754A8();
{
/* D_801C9A78 read: the target materializes &sym into $a0 then lw 0($a0) (not the folded
* lui;lw %lo). volatile forces the rematerialize; the $4 pin forces the a0 allocation. */
register volatile s32 *p __asm__("$4") = &D_801C9A78;
if (*p == 0) {
func_8013BC7C();
}
}
func_8013BCDC();
func_801379FC();
D_800B99DA++;
if (D_800B9A64 != 0) {
func_8001212C();
}
}
@@ -18794,9 +18859,82 @@ s32 func_8016BBE0(s32 param_1) {
INCLUDE_ASM("asm/ov_SC02_037/nonmatchings/ov_SC02_037", func_8016BCC0);
INCLUDE_ASM("asm/ov_SC02_037/nonmatchings/ov_SC02_037", func_8016BD78);
extern s32 func_8016BF50(s32);
extern void func_8016BFA8(s32 a0, s32 a1, s32 a2, s32 a3);
// @class: struct
// @stuck: none — MATCH (74 ins, relocation-masked)
s32 func_8016BD78(s32 param_1)
{
extern M2C_UNK D_801C8AEC;
extern M2C_UNK D_801C8AF0;
extern u8 D_801C8AED;
extern u8 D_801C8AEE;
extern u8 D_801C8AF1;
extern u8 D_801C8AF2;
s32 iVar2;
u16 uVar1;
u8 *p1;
u8 *p2;
iVar2 = *(s32 *)(param_1 + 0x20);
((void(*)())func_8016BF50)();
p1 = &(*(u8 *)&D_801C8AEC);
if (*p1 != 0) *p1 -= 4;
if (D_801C8AED != 0) D_801C8AED -= 4;
if (D_801C8AEE != 0) D_801C8AEE -= 4;
p2 = &(*(u8 *)&D_801C8AF0);
if (*p2 != 0) *p2 -= 4;
if (D_801C8AF1 != 0) D_801C8AF1 -= 4;
if (D_801C8AF2 != 0) D_801C8AF2 -= 4;
uVar1 = *(u16 *)(iVar2 + 0x18) - 0x80;
*(u16 *)(iVar2 + 0x18) = uVar1;
if ((s32)((unsigned int)uVar1 << 0x10) < 0) {
*(u16 *)(iVar2 + 0x18) = 0;
*(s16 *)(param_1 + 2) = *(s16 *)(param_1 + 2) + 1;
}
*(u16 *)(iVar2 + 0x12) = (*(u16 *)(iVar2 + 0x12) + 0x22) & 0xfff;
((void (*)(s32, u8 *, u8 *, s32))func_8016BFA8)(param_1, p1, p2, iVar2 + 0x18);
}
extern void func_80146C3C(u8*);
extern s32 func_8016BF50(s32);
extern void func_8016BFA8(s32 a0, s32 a1, s32 a2, s32 a3);
// @class: plumbing
// @stuck: none — MATCH
s32 func_8016BEA0(s32 param_1)
{
extern M2C_UNK D_801C8AEC;
extern M2C_UNK D_801C8AF0;
int iVar2;
unsigned short uVar1;
iVar2 = *(int *)(((int)param_1) + 0x20);
((void(*)())func_8016BF50)();
uVar1 = *(unsigned short *)(((int)param_1) + 0x10) - 0x18;
*(unsigned short *)(((int)param_1) + 0x10) = uVar1;
*(unsigned short *)(iVar2 + 0x1a) = *(unsigned short *)(iVar2 + 0x1a) + uVar1;
*(unsigned short *)(iVar2 + 0x12) = (*(unsigned short *)(iVar2 + 0x12) + 0x22) & 0xfff;
((void (*)(int, void *, void *, int))func_8016BFA8)(((int)param_1), &(*(int *)&D_801C8AEC), &(*(int *)&D_801C8AF0), iVar2 + 0x18);
if (*(short *)(iVar2 + 0x1a) < 0) {
((void (*)(int))func_80146C3C)(((int)param_1));
}
}
INCLUDE_ASM("asm/ov_SC02_037/nonmatchings/ov_SC02_037", func_8016BEA0);
DEFINE_func_8016BF34() /* dedup: shared engine-core @0x8016bf34 (src/shared) */
@@ -20949,7 +21087,15 @@ DEFINE_func_80172BC8() /* dedup: shared engine-core @0x80172bc8 (src/shared) */
void func_80172C48(void) {
}
INCLUDE_ASM("asm/ov_SC02_037/nonmatchings/ov_SC02_037", func_80172C50);
extern void func_80174684(void *);
extern void func_80172CA0(void*);
void func_80172C50(void *a0) {
extern s16 D_80126B30;
*(struct S8_80172780 *)&D_80126B30 = *(struct S8_80172780 *)a0;
func_80174684((void *)func_80172CA0);
}
@@ -21168,7 +21314,42 @@ void func_80173A20(void) {
DEFINE_func_80173A28() /* dedup: shared engine-core @0x80173a28 (src/shared) */
INCLUDE_ASM("asm/ov_SC02_037/nonmatchings/ov_SC02_037", func_80173A60);
extern s32 func_8014C118(void*, s32, s32);
extern void func_80174684(void *);
extern void func_80173B4C(void*);
void func_80173A60(s32 a0, s32 a1, s32 a2, s32 a3, s32 arg5)
{
extern s32 D_80126B58;
extern s32 D_80127508;
extern s16 D_80126B30;
extern s16 D_80126B3A;
extern s16 D_80126B3C;
extern s16 D_8011F9C8;
extern s16 D_80126938;
extern s32 D_8012750C;
s32 *s1 = &D_80126B58;
s32 v0;
if (a2 != 0) {
D_80127508 = ((s32 (*)(s32, s32, s32))func_8014C118)((s32)s1, a2, (s16)a3);
} else {
D_80127508 = 0;
}
v0 = s1[8];
__builtin_memcpy(&D_80126B30, arg5, 8);
(*(s16 *)&D_80126B38) = a0;
D_80126B3A = a1;
D_80126B3C = *(u16 *)(v0 + 0x12);
func_80174684((void *)func_80173B4C);
D_8011F9C8 = 0;
D_80126938 = 0;
D_8012750C = 0;
}
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_039/nonmatchings/ov_SC02_039_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017F624 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017F628 == D_8017F624 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017F624");
extern int tbl_D_80187048[][5] __asm__("D_8017F628");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC02_041/nonmatchings/ov_SC02_041_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801852F4 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801852F8 == D_801852F4 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801852F4");
extern int tbl_D_80187048[][5] __asm__("D_801852F8");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2187,7 +2187,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_001/nonmatchings/ov_SC03_001_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018DA34 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018DA38 == D_8018DA34 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018DA34");
extern int tbl_D_80187048[][5] __asm__("D_8018DA38");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2191,7 +2191,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_002/nonmatchings/ov_SC03_002_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80185A24 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80185A28 == D_80185A24 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80185A24");
extern int tbl_D_80187048[][5] __asm__("D_80185A28");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_003/nonmatchings/ov_SC03_003_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017F7EC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017F7F0 == D_8017F7EC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017F7EC");
extern int tbl_D_80187048[][5] __asm__("D_8017F7F0");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2191,7 +2191,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_006/nonmatchings/ov_SC03_006_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018CB08 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018CB0C == D_8018CB08 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018CB08");
extern int tbl_D_80187048[][5] __asm__("D_8018CB0C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_007/nonmatchings/ov_SC03_007_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80187900 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80187904 == D_80187900 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80187900");
extern int tbl_D_80187048[][5] __asm__("D_80187904");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_010/nonmatchings/ov_SC03_010_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80180420 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80180424 == D_80180420 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80180420");
extern int tbl_D_80187048[][5] __asm__("D_80180424");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_011/nonmatchings/ov_SC03_011_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80181790 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80181794 == D_80181790 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80181790");
extern int tbl_D_80187048[][5] __asm__("D_80181794");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_012/nonmatchings/ov_SC03_012_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017E670 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017E674 == D_8017E670 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017E670");
extern int tbl_D_80187048[][5] __asm__("D_8017E674");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_013/nonmatchings/ov_SC03_013_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80181458 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018145C == D_80181458 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80181458");
extern int tbl_D_80187048[][5] __asm__("D_8018145C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_014/nonmatchings/ov_SC03_014_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018BA94 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018BA98 == D_8018BA94 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018BA94");
extern int tbl_D_80187048[][5] __asm__("D_8018BA98");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_015/nonmatchings/ov_SC03_015_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018BA94 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018BA98 == D_8018BA94 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018BA94");
extern int tbl_D_80187048[][5] __asm__("D_8018BA98");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_023/nonmatchings/ov_SC03_023_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017F410 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017F414 == D_8017F410 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017F410");
extern int tbl_D_80187048[][5] __asm__("D_8017F414");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_024/nonmatchings/ov_SC03_024_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80187434 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80187438 == D_80187434 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80187434");
extern int tbl_D_80187048[][5] __asm__("D_80187438");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_028/nonmatchings/ov_SC03_028_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018BF00 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018BF04 == D_8018BF00 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018BF00");
extern int tbl_D_80187048[][5] __asm__("D_8018BF04");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_029/nonmatchings/ov_SC03_029_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80187D38 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80187D3C == D_80187D38 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80187D38");
extern int tbl_D_80187048[][5] __asm__("D_80187D3C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_030/nonmatchings/ov_SC03_030_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80182374 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80182378 == D_80182374 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80182374");
extern int tbl_D_80187048[][5] __asm__("D_80182378");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_031/nonmatchings/ov_SC03_031_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80182890 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80182894 == D_80182890 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80182890");
extern int tbl_D_80187048[][5] __asm__("D_80182894");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_089/nonmatchings/ov_SC03_089_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80189B8C is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80189B90 == D_80189B8C + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80189B8C");
extern int tbl_D_80187048[][5] __asm__("D_80189B90");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_090/nonmatchings/ov_SC03_090_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018BFB0 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018BFB4 == D_8018BFB0 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018BFB0");
extern int tbl_D_80187048[][5] __asm__("D_8018BFB4");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_091/nonmatchings/ov_SC03_091_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018CE58 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018CE5C == D_8018CE58 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018CE58");
extern int tbl_D_80187048[][5] __asm__("D_8018CE5C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_092/nonmatchings/ov_SC03_092_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80185228 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018522C == D_80185228 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80185228");
extern int tbl_D_80187048[][5] __asm__("D_8018522C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_093/nonmatchings/ov_SC03_093_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80186400 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80186404 == D_80186400 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80186400");
extern int tbl_D_80187048[][5] __asm__("D_80186404");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_094/nonmatchings/ov_SC03_094_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80187DFC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80187E00 == D_80187DFC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80187DFC");
extern int tbl_D_80187048[][5] __asm__("D_80187E00");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_095/nonmatchings/ov_SC03_095_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018145C is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80181460 == D_8018145C + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018145C");
extern int tbl_D_80187048[][5] __asm__("D_80181460");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_096/nonmatchings/ov_SC03_096_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80180FDC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80180FE0 == D_80180FDC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80180FDC");
extern int tbl_D_80187048[][5] __asm__("D_80180FE0");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_097/nonmatchings/ov_SC03_097_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801863BC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801863C0 == D_801863BC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801863BC");
extern int tbl_D_80187048[][5] __asm__("D_801863C0");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_098/nonmatchings/ov_SC03_098_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80185848 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018584C == D_80185848 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80185848");
extern int tbl_D_80187048[][5] __asm__("D_8018584C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_099/nonmatchings/ov_SC03_099_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80183948 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018394C == D_80183948 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80183948");
extern int tbl_D_80187048[][5] __asm__("D_8018394C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_100/nonmatchings/ov_SC03_100_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80184E14 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80184E18 == D_80184E14 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80184E14");
extern int tbl_D_80187048[][5] __asm__("D_80184E18");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_101/nonmatchings/ov_SC03_101_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80183DF0 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80183DF4 == D_80183DF0 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80183DF0");
extern int tbl_D_80187048[][5] __asm__("D_80183DF4");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_102/nonmatchings/ov_SC03_102_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801866A8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801866AC == D_801866A8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801866A8");
extern int tbl_D_80187048[][5] __asm__("D_801866AC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_103/nonmatchings/ov_SC03_103_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80184658 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018465C == D_80184658 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80184658");
extern int tbl_D_80187048[][5] __asm__("D_8018465C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_104/nonmatchings/ov_SC03_104_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018B1E8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018B1EC == D_8018B1E8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018B1E8");
extern int tbl_D_80187048[][5] __asm__("D_8018B1EC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_105/nonmatchings/ov_SC03_105_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018A870 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018A874 == D_8018A870 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018A870");
extern int tbl_D_80187048[][5] __asm__("D_8018A874");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+187 -5
View File
@@ -190,7 +190,72 @@ void func_80128714(void) {
}
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107", func_801287B8);
// @class: remat
// @stuck: none — MATCH (62 ins). D_8019BCD0 read needed the address REMATERIALIZED
// (lui;addiu;lw 0(reg), not the folded lui;lw %lo) AND pinned to $a0. volatile forces the
// remat; register __asm__("$4") forces the a0 allocation (gcc otherwise picks v0). Both levers
// required — pin-alone folds, volatile-alone lands in v0.
extern void func_80129CF8(void);
extern void func_8017849C(void);
extern void func_8014FDF4(struct S8014FDF4 *a0);
extern s32 func_801505FC(s32 a0);
extern s32 func_801508B4(s32);
extern void func_80165E90(void);
extern void func_801627E8(void);
extern void func_80162B1C(void);
extern void func_80165CA0(void);
extern void func_80129010(void);
extern void func_8013CA14(void);
extern void func_800190AC(void);
extern void func_8012956C(void);
extern s32 func_8016E95C();
extern void func_801754A8(void);
extern void func_8013BC7C(void);
extern void func_8013BCDC(void);
extern void func_801379FC(void);
extern void func_8001212C(void);
void func_801287B8(void) {
extern s32 D_80126B58;
extern s32 D_8019BCD0;
extern u16 D_800B99DA;
extern u8 D_800B9A64;
func_80129CF8();
func_8017849C();
((void (*)(void *))func_8014FDF4)(&D_80126B58);
((void (*)(void *))func_801505FC)(&D_80126B58);
((void (*)(void *))func_801508B4)(&D_80126B58);
func_80165E90();
func_801627E8();
func_80162B1C();
func_80165CA0();
func_80129010();
func_8013CA14();
func_800190AC();
func_8012956C();
((void (*)(void))func_8016E95C)();
func_801754A8();
{
/* D_8019BCD0 read: the target materializes &sym into $a0 then lw 0($a0) (not the folded
* lui;lw %lo). volatile forces the rematerialize; the $4 pin forces the a0 allocation. */
register volatile s32 *p __asm__("$4") = &D_8019BCD0;
if (*p == 0) {
func_8013BC7C();
}
}
func_8013BCDC();
func_801379FC();
D_800B99DA++;
if (D_800B9A64 != 0) {
func_8001212C();
}
}
@@ -18515,9 +18580,82 @@ s32 func_8016BBE0(s32 param_1) {
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107", func_8016BCC0);
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107", func_8016BD78);
extern s32 func_8016BF50(s32);
extern void func_8016BFA8(s32 a0, s32 a1, s32 a2, s32 a3);
// @class: struct
// @stuck: none — MATCH (74 ins, relocation-masked)
s32 func_8016BD78(s32 param_1)
{
extern M2C_UNK D_8019AE4C;
extern M2C_UNK D_8019AE50;
extern u8 D_8019AE4D;
extern u8 D_8019AE4E;
extern u8 D_8019AE51;
extern u8 D_8019AE52;
s32 iVar2;
u16 uVar1;
u8 *p1;
u8 *p2;
iVar2 = *(s32 *)(param_1 + 0x20);
((void(*)())func_8016BF50)();
p1 = &(*(u8 *)&D_8019AE4C);
if (*p1 != 0) *p1 -= 4;
if (D_8019AE4D != 0) D_8019AE4D -= 4;
if (D_8019AE4E != 0) D_8019AE4E -= 4;
p2 = &(*(u8 *)&D_8019AE50);
if (*p2 != 0) *p2 -= 4;
if (D_8019AE51 != 0) D_8019AE51 -= 4;
if (D_8019AE52 != 0) D_8019AE52 -= 4;
uVar1 = *(u16 *)(iVar2 + 0x18) - 0x80;
*(u16 *)(iVar2 + 0x18) = uVar1;
if ((s32)((unsigned int)uVar1 << 0x10) < 0) {
*(u16 *)(iVar2 + 0x18) = 0;
*(s16 *)(param_1 + 2) = *(s16 *)(param_1 + 2) + 1;
}
*(u16 *)(iVar2 + 0x12) = (*(u16 *)(iVar2 + 0x12) + 0x22) & 0xfff;
((void (*)(s32, u8 *, u8 *, s32))func_8016BFA8)(param_1, p1, p2, iVar2 + 0x18);
}
extern void func_80146C3C(u8*);
extern s32 func_8016BF50(s32);
extern void func_8016BFA8(s32 a0, s32 a1, s32 a2, s32 a3);
// @class: plumbing
// @stuck: none — MATCH
s32 func_8016BEA0(s32 param_1)
{
extern M2C_UNK D_8019AE4C;
extern M2C_UNK D_8019AE50;
int iVar2;
unsigned short uVar1;
iVar2 = *(int *)(((int)param_1) + 0x20);
((void(*)())func_8016BF50)();
uVar1 = *(unsigned short *)(((int)param_1) + 0x10) - 0x18;
*(unsigned short *)(((int)param_1) + 0x10) = uVar1;
*(unsigned short *)(iVar2 + 0x1a) = *(unsigned short *)(iVar2 + 0x1a) + uVar1;
*(unsigned short *)(iVar2 + 0x12) = (*(unsigned short *)(iVar2 + 0x12) + 0x22) & 0xfff;
((void (*)(int, void *, void *, int))func_8016BFA8)(((int)param_1), &(*(int *)&D_8019AE4C), &(*(int *)&D_8019AE50), iVar2 + 0x18);
if (*(short *)(iVar2 + 0x1a) < 0) {
((void (*)(int))func_80146C3C)(((int)param_1));
}
}
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107", func_8016BEA0);
DEFINE_func_8016BF34() /* dedup: shared engine-core @0x8016bf34 (src/shared) */
@@ -20613,7 +20751,15 @@ DEFINE_func_80172BC8() /* dedup: shared engine-core @0x80172bc8 (src/shared) */
void func_80172C48(void) {
}
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107", func_80172C50);
extern void func_80174684(void *);
extern void func_80172CA0(void*);
void func_80172C50(void *a0) {
extern s16 D_80126B30;
*(struct S8_80172780 *)&D_80126B30 = *(struct S8_80172780 *)a0;
func_80174684((void *)func_80172CA0);
}
@@ -20830,7 +20976,43 @@ void func_80173A20(void) {
DEFINE_func_80173A28() /* dedup: shared engine-core @0x80173a28 (src/shared) */
INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107", func_80173A60);
extern s32 func_8014C118(void*, s32, s32);
extern void func_80174684(void *);
extern void func_80173B4C(void*);
void func_80173A60(s32 a0, s32 a1, s32 a2, s32 a3, s32 arg5)
{
extern s32 D_80126B58;
extern s32 D_80127508;
extern s16 D_80126B30;
extern struct S80126B38 D_80126B38;
extern s16 D_80126B3A;
extern s16 D_80126B3C;
extern s16 D_8011F9C8;
extern s16 D_80126938;
extern s32 D_8012750C;
s32 *s1 = &D_80126B58;
s32 v0;
if (a2 != 0) {
D_80127508 = ((s32 (*)(s32, s32, s32))func_8014C118)((s32)s1, a2, (s16)a3);
} else {
D_80127508 = 0;
}
v0 = s1[8];
__builtin_memcpy(&D_80126B30, arg5, 8);
(*(s16 *)&D_80126B38) = a0;
D_80126B3A = a1;
D_80126B3C = *(u16 *)(v0 + 0x12);
func_80174684((void *)func_80173B4C);
D_8011F9C8 = 0;
D_80126938 = 0;
D_8012750C = 0;
}
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_108/nonmatchings/ov_SC03_108_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801811C8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801811CC == D_801811C8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801811C8");
extern int tbl_D_80187048[][5] __asm__("D_801811CC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_109/nonmatchings/ov_SC03_109_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017E874 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017E878 == D_8017E874 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017E874");
extern int tbl_D_80187048[][5] __asm__("D_8017E878");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_110/nonmatchings/ov_SC03_110_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80182294 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80182298 == D_80182294 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80182294");
extern int tbl_D_80187048[][5] __asm__("D_80182298");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_111/nonmatchings/ov_SC03_111_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80184E48 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80184E4C == D_80184E48 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80184E48");
extern int tbl_D_80187048[][5] __asm__("D_80184E4C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_112/nonmatchings/ov_SC03_112_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80185C50 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80185C54 == D_80185C50 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80185C50");
extern int tbl_D_80187048[][5] __asm__("D_80185C54");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_113/nonmatchings/ov_SC03_113_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80183300 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80183304 == D_80183300 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80183300");
extern int tbl_D_80187048[][5] __asm__("D_80183304");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_114/nonmatchings/ov_SC03_114_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017EF68 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017EF6C == D_8017EF68 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017EF68");
extern int tbl_D_80187048[][5] __asm__("D_8017EF6C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_115/nonmatchings/ov_SC03_115_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801809D4 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801809D8 == D_801809D4 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801809D4");
extern int tbl_D_80187048[][5] __asm__("D_801809D8");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_116/nonmatchings/ov_SC03_116_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80182DD8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80182DDC == D_80182DD8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80182DD8");
extern int tbl_D_80187048[][5] __asm__("D_80182DDC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_117/nonmatchings/ov_SC03_117_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80184DE4 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80184DE8 == D_80184DE4 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80184DE4");
extern int tbl_D_80187048[][5] __asm__("D_80184DE8");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_118/nonmatchings/ov_SC03_118_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80189E90 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80189E94 == D_80189E90 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80189E90");
extern int tbl_D_80187048[][5] __asm__("D_80189E94");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80189E90 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80189E94 == D_80189E90 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80189E90");
extern int tbl_D_80187048[][5] __asm__("D_80189E94");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_121/nonmatchings/ov_SC03_121_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801826AC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801826B0 == D_801826AC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801826AC");
extern int tbl_D_80187048[][5] __asm__("D_801826B0");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_124/nonmatchings/ov_SC03_124_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018B0D8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018B0DC == D_8018B0D8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018B0D8");
extern int tbl_D_80187048[][5] __asm__("D_8018B0DC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_125/nonmatchings/ov_SC03_125_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801842A8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801842AC == D_801842A8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801842A8");
extern int tbl_D_80187048[][5] __asm__("D_801842AC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC03_126/nonmatchings/ov_SC03_126_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017F7A0 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017F7A4 == D_8017F7A0 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017F7A0");
extern int tbl_D_80187048[][5] __asm__("D_8017F7A4");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2191,7 +2191,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_000/nonmatchings/ov_SC04_000_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801837AC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801837B0 == D_801837AC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801837AC");
extern int tbl_D_80187048[][5] __asm__("D_801837B0");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_002/nonmatchings/ov_SC04_002_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80188918 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018891C == D_80188918 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80188918");
extern int tbl_D_80187048[][5] __asm__("D_8018891C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_003/nonmatchings/ov_SC04_003_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801826B4 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801826B8 == D_801826B4 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801826B4");
extern int tbl_D_80187048[][5] __asm__("D_801826B8");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_004/nonmatchings/ov_SC04_004_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80184BE8 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80184BEC == D_80184BE8 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80184BE8");
extern int tbl_D_80187048[][5] __asm__("D_80184BEC");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_005/nonmatchings/ov_SC04_005_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018801C is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80188020 == D_8018801C + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018801C");
extern int tbl_D_80187048[][5] __asm__("D_80188020");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_006/nonmatchings/ov_SC04_006_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801800FC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80180100 == D_801800FC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801800FC");
extern int tbl_D_80187048[][5] __asm__("D_80180100");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_007/nonmatchings/ov_SC04_007_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_801860B4 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_801860B8 == D_801860B4 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_801860B4");
extern int tbl_D_80187048[][5] __asm__("D_801860B8");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_008/nonmatchings/ov_SC04_008_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017EFEC is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017EFF0 == D_8017EFEC + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017EFEC");
extern int tbl_D_80187048[][5] __asm__("D_8017EFF0");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_009/nonmatchings/ov_SC04_009_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017F018 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017F01C == D_8017F018 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017F018");
extern int tbl_D_80187048[][5] __asm__("D_8017F01C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_010/nonmatchings/ov_SC04_010_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017E6C4 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017E6C8 == D_8017E6C4 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017E6C4");
extern int tbl_D_80187048[][5] __asm__("D_8017E6C8");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_011/nonmatchings/ov_SC04_011_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80190954 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80190958 == D_80190954 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80190954");
extern int tbl_D_80187048[][5] __asm__("D_80190958");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_012/nonmatchings/ov_SC04_012_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8017EB28 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8017EB2C == D_8017EB28 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8017EB28");
extern int tbl_D_80187048[][5] __asm__("D_8017EB2C");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_015/nonmatchings/ov_SC04_015_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80184A60 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80184A64 == D_80184A60 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80184A60");
extern int tbl_D_80187048[][5] __asm__("D_80184A64");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_016/nonmatchings/ov_SC04_016_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80180524 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80180528 == D_80180524 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80180524");
extern int tbl_D_80187048[][5] __asm__("D_80180528");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2191,7 +2191,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_018/nonmatchings/ov_SC04_018_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018D73C is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018D740 == D_8018D73C + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018D73C");
extern int tbl_D_80187048[][5] __asm__("D_8018D740");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2191,7 +2191,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_019/nonmatchings/ov_SC04_019_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_8018D73C is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_8018D740 == D_8018D73C + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_8018D73C");
extern int tbl_D_80187048[][5] __asm__("D_8018D740");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */
+31 -1
View File
@@ -2189,7 +2189,37 @@ void func_80131FDC(void *a0) {
}
INCLUDE_ASM("asm/ov_SC04_020/nonmatchings/ov_SC04_020_jr_8012ACE0", func_80132018);
extern void func_8012C1B8(void);
extern void func_8012CAE4(void *a0);
extern void func_8001C214(int, int);
/* §37 asm-label aliases: D_80183874 is declared in this TU as `void (*[])(void)`
* (func_80131EEC's dispatch table) — a conflicting type. The 20-byte-stride view
* below is this function's own. D_80183878 == D_80183874 + 4 is a SEPARATE
* per-overlay symbol and is referenced BY NAME, never as base+literal (§84). */
void func_80132018(int param_1)
{
extern int tbl_D_80187044[][5] __asm__("D_80183874");
extern int tbl_D_80187048[][5] __asm__("D_80183878");
int v0;
v0 = ((int (*)(void))func_8012C1B8)();
*(int *)(param_1 + 0x20) = v0;
if (v0 == 0) {
((void (*)(int))func_8012CAE4)(param_1);
} else {
func_8001C214(v0, 0);
*(short *)(param_1 + 0x5c) = 0x80;
*(unsigned short *)(param_1 + 2) += 1;
*(int *)(param_1 + 0x58) = (int)&tbl_D_80187048[*(unsigned short *)(param_1 + 0x70) & 0xfff];
*(int *)(param_1 + 0xdc) = tbl_D_80187044[*(unsigned short *)(param_1 + 0x70) & 0xfff][0];
*(short *)(param_1 + 0xfc) = (*(unsigned short *)(param_1 + 0x70) >> 12) << 9;
}
}
DEFINE_func_801320D0() /* dedup: shared engine-core @0x801320D0 (src/shared) */

Some files were not shown because too many files have changed in this diff Show More