39 lines
1.2 KiB
Plaintext
39 lines
1.2 KiB
Plaintext
80035AC: print file select/naming string
|
|
r0: tile x
|
|
r1: tile y
|
|
r2: characters to print
|
|
r3: string buffer (0xFF terminated)
|
|
sp: arg4
|
|
|
|
g = arg4 * 20
|
|
row = 0 or 1 (note that it scans each string twice, once for the first row of tiles and once for the second row)
|
|
tileset destination = [82B79B4 + g] + (x * 2) + ((y + row) * [82B79BC + g] * 2)
|
|
|
|
----
|
|
|
|
A template tileset is decompressed from 86DB070 to 200A400 (note: "1: Ness" starts printing to 200A434)
|
|
It seems to get fully overwritten, so we can replace it with all blank tiles
|
|
|
|
----
|
|
|
|
We also need to blank out the font that gets decompressed from 86D9808 to VRAM at 6008000
|
|
|
|
----
|
|
|
|
Note that the palette on these screens uses 0x1 for background, 0x9 for foreground
|
|
|
|
----
|
|
|
|
We need to allocate more space for the strings... The same only allocates 32 bytes per file slot,
|
|
but we need at least 41:
|
|
|
|
"X: " 3
|
|
"NAME " 5
|
|
[FE 5F xx] 3
|
|
"Level: XX" 9
|
|
[FE 5F xx] 3
|
|
"Text speed: Medium" 18
|
|
= 41
|
|
|
|
However, the game allocates 32 bytes per row per file slot, which is actually 64 total, so we should be ok.
|