A Kalos remake in Pokémon Emerald.
Find a file
2024-01-07 20:22:34 -05:00
.github Sync calcrom fixes 2022-11-27 17:33:09 -05:00
asm Add temp var aliases 2023-08-04 14:17:28 -04:00
common_syms Remove unused common symbols in window.c 2023-02-01 16:14:32 -05:00
constants Add include guards for assembly constants files 2023-09-03 20:57:54 -04:00
data Added automatic runtime decapitalization. 2024-01-07 20:21:14 -05:00
docs Cleaned trailing whitespace 2022-09-11 14:14:49 -04:00
gflib Added automatic runtime decapitalization. 2024-01-07 20:21:14 -05:00
graphics Moved files - spinda spots, jp fonts, redyellowgreen_frame.bin 2023-11-12 14:28:11 +13:00
include Added automatic runtime decapitalization. 2024-01-07 20:21:14 -05:00
libagbsyscall Fix $(AR) define, remove \u warns on macOS. 2021-01-04 11:35:59 -05:00
sound forgot we could do this 2022-01-22 19:41:31 -05:00
src Added automatic runtime decapitalization. 2024-01-07 20:21:14 -05:00
tools Added automatic runtime decapitalization. 2024-01-07 20:21:14 -05:00
.gitattributes Add missing files to .gitattributes. 2020-11-08 20:13:21 -05:00
.gitignore Linkerscript now tracks RAM/ROM usage 2023-11-12 15:24:10 +13:00
asmdiff.ps1 Remove debug printing 2019-04-07 19:18:42 -05:00
asmdiff.sh [Round 3] Apply all source related changes for the new INSTALL.md in one commit. 2020-12-16 21:24:44 -05:00
build_tools.sh Update deprecated build_tools script 2019-08-27 09:15:44 -04:00
charmap.txt Added automatic runtime decapitalization. 2024-01-07 20:21:14 -05:00
graphics_file_rules.mk Moved files - spinda spots, jp fonts, redyellowgreen_frame.bin 2023-11-12 14:28:11 +13:00
INSTALL.md Remove all leading whitespace 2023-10-23 13:24:38 -05:00
json_data_rules.mk use json for region map sections 2022-04-04 23:32:03 -04:00
ld_script.ld Added automatic runtime decapitalization. 2024-01-07 20:21:14 -05:00
ld_script_modern.ld Added automatic runtime decapitalization. 2024-01-07 20:21:14 -05:00
make_tools.mk Whitelist instead of Blacklist for TOOLDIRS in Makefiles 2023-02-25 16:49:41 -03:00
Makefile Linkerscript now tracks RAM/ROM usage 2023-11-12 15:24:10 +13:00
map_data_rules.mk [Round 3] Apply all source related changes for the new INSTALL.md in one commit. 2020-12-16 21:24:44 -05:00
README.md Updated README. 2024-01-07 20:22:34 -05:00
rom.sha1 Make rom.sha1 lowercase to fix erroneous comparison results on *nix 2017-09-06 09:20:49 -04:00
songs.mk Sync encounter musics with encounter music types 2020-08-20 21:03:24 -04:00
spritesheet_rules.mk Color single-palette door anim graphics 2022-05-18 12:41:20 -04:00
sym_bss.txt move m4a track definitions 2022-01-22 19:37:46 -05:00
sym_common.txt Cleaned trailing whitespace 2022-09-11 14:14:49 -04:00
sym_ewram.txt Incorporate review changes 2023-11-24 10:25:39 +13:00

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.