ov081 β€” overlay detail

DS game only γ¨γ‚“γŒγ‚Šγƒœγ‚¦γ‚·γ¨γŠγ—γ‚ƒγ‚Œγͺまほう぀かい The field guide documents the DS game's internals.

containers: 2d/status/friend.lzs, friend

ov081 general_2d_ui

containers: 2d/status/friend.lzs, friend

Header

Numeric metadata for this overlay as read from the overlay table at ROM offset 0x8DE00 (per-entry stride 32 bytes). Function counts, data-item counts, and the call-graph fan-out are from a Ghidra 11.3.1 headless auto-analysis pass.

Overlay ID 81
File ID 81
RAM load address 0x021597a0
RAM size 11,360 bytes (0x2c60)
BSS size 0 bytes
On-disk compressed size 9,008 bytes
Compression flag 0x1 (BLZ-compressed)
Functions 87
External calls 86
Jump tables 5
Data items 193
Code coverage 60% (6,852 of 11,360 bytes)

Reading the binary

The overlay ships on the cart at file ID 81 under the BLZ code-LZ compression wrapper (the same backward-LZ scheme Nintendo uses for executable ARM9 code). At load time the engine reads the overlay table entry at ROM offset 0x8DE00 + 81 * 0x20, allocates the destination RAM region at 0x021597a0, decompresses the body in-place (if compressed), and resolves any external relocations.

To inspect this overlay outside the running game, decompress overlay/overlay_081.bin with ndspy.codeCompression.decompress() (Python ndspy library) and load the resulting plaintext into Ghidra or IDA at base address 0x021597a0. The raw Ghidra auto-analysis dump used to populate this page lives at notes/overlay_knowledgebase/raw/ov081.json; the per-overlay descriptive markdown is at notes/overlay_knowledgebase/ov081.md.

Embedded strings

4 UTF-16 LE strings live inside this overlay's compiled binary. These addresses are absolute (inside the overlay's RAM image after load). The text is stored as little-endian UTF-16 code units, NUL-terminated.

0x0215ac22 `ι€€ιœγƒ‘ιœ‚`
0x0215aca8 `ι€€ιœγƒ‘ιœ‚`
0x0215b9bd `提耠怀ぃ`
0x0215b9c9 `揠耠怀ぃ`

Container references

Distinct container basenames referenced by this overlay. Each is loaded via the content cache by passing the basename string to a lookup that resolves it to a file ID in the ROM's FAT. The path column shows the file's location in the clean extract, where resolved.

Unresolved

These container basenames appeared in the overlay's string table but no file of that name was found in the clean extract. Most are false-positive ASCII matches (function names, register maps, fragments of other strings); a few may be containers that the overlay names but never actually opens. Listed for completeness.

Function list

Functions Ghidra auto-identified inside this overlay's RAM range. Names prefixed FUN_ are auto-generated from the function's entry address; size is in bytes; the "calls" column counts both intra-overlay branches and external ARM9 call targets. The "strings" column counts how many UTF-16 LE strings each function references.

Show all 87 functions
# Address Size Calls Strings Role hint
1 0x021598d8 162 19 0 code
2 0x02159eb0 4 0 0 trampoline / small helper
3 0x02159eb4 4 0 0 trampoline / small helper
4 0x02159eb8 4 0 0 trampoline / small helper
5 0x02159ebc 30 2 0 trampoline / small helper
6 0x02159edc 8 0 0 trampoline / small helper
7 0x02159ee4 112 9 0 code
8 0x0215a744 18 1 0 trampoline / small helper
9 0x0215a758 18 1 0 trampoline / small helper
10 0x0215a76c 18 1 0 trampoline / small helper
11 0x0215a780 600 30 0 high-fan-out (likely dispatcher / setup)
12 0x0215aa64 154 12 0 code
13 0x0215ab10 330 22 0 high-fan-out (likely dispatcher / setup)
14 0x0215ac6c 122 7 0 code
15 0x0215acf0 114 8 0 code
16 0x0215ad64 54 3 0 code
17 0x0215ad9c 52 3 0 code
18 0x0215add4 68 4 0 code
19 0x0215ae18 46 2 0 code
20 0x0215ae48 34 1 0 trampoline / small helper
21 0x0215ae6c 92 10 0 code
22 0x0215aec8 112 11 0 code
23 0x0215af38 56 1 0 code
24 0x0215af70 56 1 0 code
25 0x0215afac 78 5 0 code
26 0x0215affc 56 1 0 code
27 0x0215b034 20 1 0 trampoline / small helper
28 0x0215b048 8 0 0 trampoline / small helper
29 0x0215b058 56 5 0 code
30 0x0215b090 20 1 0 trampoline / small helper
31 0x0215b0a4 196 9 0 code
32 0x0215b170 92 3 0 code
33 0x0215b1d0 60 4 0 code
34 0x0215b214 54 5 0 code
35 0x0215b250 24 0 0 trampoline / small helper
36 0x0215b26c 82 9 0 code
37 0x0215b2c4 8 0 0 trampoline / small helper
38 0x0215b2d0 38 5 0 trampoline / small helper
39 0x0215b2f8 24 2 0 trampoline / small helper
40 0x0215b310 48 6 0 code
41 0x0215b344 8 0 0 trampoline / small helper
42 0x0215b350 62 6 0 code
43 0x0215b394 44 5 0 code
44 0x0215b3c0 16 2 0 trampoline / small helper
45 0x0215b3d0 22 3 0 trampoline / small helper
46 0x0215b3e8 16 2 0 trampoline / small helper
47 0x0215b3f8 16 2 0 trampoline / small helper
48 0x0215b408 16 2 0 trampoline / small helper
49 0x0215b418 16 2 0 trampoline / small helper
50 0x0215b428 16 2 0 trampoline / small helper
51 0x0215b438 48 3 0 code
52 0x0215b468 164 4 0 code
53 0x0215b510 164 9 0 code
54 0x0215b5b8 112 11 0 code
55 0x0215b634 52 5 0 code
56 0x0215b668 64 5 0 code
57 0x0215b6ac 60 4 0 code
58 0x0215b6ec 96 4 1 refs: friend
59 0x0215b754 30 1 0 trampoline / small helper
60 0x0215b774 62 3 0 code
61 0x0215b7b4 54 1 0 code
62 0x0215b7f0 44 1 0 code
63 0x0215b820 124 4 1 refs: friend
64 0x0215b8a4 52 1 0 code
65 0x0215b8d8 158 13 0 code
66 0x0215b97c 104 7 0 code
67 0x0215b9e4 88 4 1 refs: friend
68 0x0215ba48 28 1 0 trampoline / small helper
69 0x0215ba68 64 3 0 code
70 0x0215baac 66 2 0 code
71 0x0215baf4 274 12 4 refs: friend \| friend \| friend \| friend
72 0x0215bc2c 60 4 0 code
73 0x0215bc74 168 9 0 code
74 0x0215bd30 38 2 0 trampoline / small helper
75 0x0215bd60 22 1 0 trampoline / small helper
76 0x0215bd7c 30 1 0 trampoline / small helper
77 0x0215bda0 504 36 4 refs: friend \| friend \| friend \| friend
78 0x0215bfd0 82 8 0 code
79 0x0215c030 88 7 0 code
80 0x0215c090 8 0 0 trampoline / small helper
81 0x0215c0a0 90 3 0 code
82 0x0215c104 90 3 0 code
83 0x0215c168 90 3 0 code
84 0x0215c1cc 224 4 0 code
85 0x0215c2b8 40 2 0 code
86 0x0215c2e0 34 3 0 trampoline / small helper
87 0x0215c314 12 1 0 trampoline / small helper

Open questions & conflicts

Open questions / unknowns

Conflicts with the prior shallow pass

Source