pokeemmo/README.md
2024-01-07 20:22:34 -05:00

1.5 KiB

Pokémon Emerald

This is a decompilation of Pokémon Emerald.

It builds the following ROM:

guillotine branch:

  • Decapitates Decapitalizes all text at runtime, with some exceptions (see the FAQ)
  • Future-proof, does not require mass-replacing strings

To set up the repository, see INSTALL.md.

FAQ

(guillotine) Q: How can I keep my string(s) from being decapped?

A: There are a number of ways to make a string "fixed case" so that it will not be decapitalized when displayed:

C strings: Replace the _ with _C:

// _C = fixed (C)ase string!
const u8 gText_IDNumber[] = _C("IDNo.");

ASM strings: Replace .string with .fixstr:

gText_SavingDontTurnOff::
    @ Lasts until the string terminator '$'
	.fixstr "SAVING…\n"
	.string "DON'T TURN OFF THE POWER.$"

You can fix-case/unfix parts of a string like so:

	.string "{FIXED_CASE}WARNING!{UNFIX_CASE}\p"

For a placeholder (only the placeholder will be fixed-case):

	.string "{STR_VAR_2_FIXED} was transferred to\n"
	.string "BOX “{STR_VAR_1}.”$"

See also the configuration in text.h.

There are also a number of bigram exceptions that will not be decapped: TV, TM, HP, HM, PC, PP, PM

See also

For contacts and other pret projects, see pret.github.io.