ov091 β€” overlay detail

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

containers: makeprofile

ov091 general_2d_ui

containers: makeprofile

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 91
File ID 91
RAM load address 0x0215c540
RAM size 7,840 bytes (0x1ea0)
BSS size 32 bytes
On-disk compressed size 6,060 bytes
Compression flag 0x1 (BLZ-compressed)
Functions 55
External calls 98
Jump tables 5
Data items 157
Code coverage 76% (5,992 of 7,840 bytes)

Reading the binary

The overlay ships on the cart at file ID 91 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 + 91 * 0x20, allocates the destination RAM region at 0x0215c540, decompresses the body in-place (if compressed), and resolves any external relocations.

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

Embedded strings

1 UTF-16 LE string 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.

0x0215dd1b `ι‰¨ι©γ‡ζ…ˆ`

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.

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 55 functions
# Address Size Calls Strings Role hint
1 0x0215c864 78 8 0 code
2 0x0215c8b4 210 11 0 code
3 0x0215c98c 80 5 0 code
4 0x0215c9e8 18 2 0 trampoline / small helper
5 0x0215ca00 10 0 0 trampoline / small helper
6 0x0215ca14 28 1 0 trampoline / small helper
7 0x0215ca34 28 1 0 trampoline / small helper
8 0x0215ca54 26 1 0 trampoline / small helper
9 0x0215ca74 26 1 0 trampoline / small helper
10 0x0215ca94 28 1 0 trampoline / small helper
11 0x0215cab4 28 1 0 trampoline / small helper
12 0x0215cad4 10 0 0 trampoline / small helper
13 0x0215cae8 572 34 0 high-fan-out (likely dispatcher / setup)
14 0x0215cd2c 56 2 0 code
15 0x0215cdc8 56 2 0 code
16 0x0215ce04 56 2 0 code
17 0x0215ce40 80 4 0 code
18 0x0215ce98 128 4 0 code
19 0x0215cf1c 360 19 6 refs: makeprofile \| makeprofile \| makeprofile \| makeprofile \| makeprofile \| makeprofile
20 0x0215d0a4 58 6 0 code
21 0x0215d0e4 210 23 0 high-fan-out (likely dispatcher / setup)
22 0x0215d1c4 40 1 0 code
23 0x0215d1ec 48 5 0 code
24 0x0215d220 6 0 0 trampoline / small helper
25 0x0215d22c 38 3 0 trampoline / small helper
26 0x0215d254 38 3 0 trampoline / small helper
27 0x0215d27c 34 3 0 trampoline / small helper
28 0x0215d2a0 6 0 0 trampoline / small helper
29 0x0215d2ac 22 1 0 trampoline / small helper
30 0x0215d2c4 56 5 0 code
31 0x0215d304 214 17 0 code
32 0x0215d3f0 162 16 0 code
33 0x0215d494 24 0 0 trampoline / small helper
34 0x0215d4ac 510 28 0 high-fan-out (likely dispatcher / setup)
35 0x0215d6d0 6 0 0 trampoline / small helper
36 0x0215d6d8 14 0 0 trampoline / small helper
37 0x0215d6e8 68 4 0 code
38 0x0215d730 52 1 0 code
39 0x0215d768 90 5 0 code
40 0x0215d7c8 76 3 0 code
41 0x0215d820 30 1 0 trampoline / small helper
42 0x0215d844 40 3 0 code
43 0x0215d870 12 1 0 trampoline / small helper
44 0x0215d87c 228 10 0 code
45 0x0215d9e0 162 4 0 code
46 0x0215da88 82 4 0 code
47 0x0215dadc 740 33 0 high-fan-out (likely dispatcher / setup)
48 0x0215de00 88 6 0 code
49 0x0215de60 126 7 0 code
50 0x0215dee8 108 6 0 code
51 0x0215df5c 412 18 0 code
52 0x0215e128 132 9 0 code
53 0x0215e1f4 134 14 0 code
54 0x0215e284 36 3 0 trampoline / small helper
55 0x0215e2b0 12 1 0 trampoline / small helper

Open questions & conflicts

Open questions / unknowns

Conflicts with the prior shallow pass

Source