Set up build system for ique-cn (#2382)

* Set up build system for ique-cn

* Fix size of fbdemo_circle assets

* Treat iQue as NTSC and Use "NES" for Chinese text

* Revert z_kanfont
This commit is contained in:
cadmic
2024-12-21 11:13:56 -08:00
committed by GitHub
parent 81df2d4ba3
commit 471fe51c82
34 changed files with 3037 additions and 72 deletions
+10
View File
@@ -0,0 +1,10 @@
<Root>
<SymbolMap File="SymbolMap.txt"/>
<ActorList File="../ActorList.txt"/>
<ObjectList File="../ObjectList.txt"/>
<EntranceList File="../EntranceList.txt"/>
<SpecialEntranceList File="../SpecialEntranceList.txt"/>
<EnumData File="../EnumData.xml"/>
<ExternalXMLFolder Path="assets/xml/"/>
<ExternalFile XmlPath="objects/gameplay_keep.xml" OutPath="assets/objects/gameplay_keep/"/>
</Root>
+2
View File
@@ -0,0 +1,2 @@
80106980 gMtxClear
80AE0B10 sShadowTex
+16 -7
View File
@@ -2074,18 +2074,27 @@ def main():
message_tables : List[Optional[MessageTableDesc]] = [None for _ in range(4)] # JP, EN, FR, DE
message_table_staff : MessageTableDesc = None
if config.text_lang_pal:
message_tables[0] = None
message_tables[1] = MessageTableDesc("sNesMessageEntryTable", "nes_message_data_static", nes_decoder, None)
message_tables[2] = MessageTableDesc("sGerMessageEntryTable", "ger_message_data_static", nes_decoder, 1)
message_tables[3] = MessageTableDesc("sFraMessageEntryTable", "fra_message_data_static", nes_decoder, 1)
message_table_staff = MessageTableDesc("sStaffMessageEntryTable", "staff_message_data_static", nes_decoder, None)
else:
if config.text_lang == "NTSC":
message_tables[0] = MessageTableDesc("sJpnMessageEntryTable", "jpn_message_data_static", jpn_decoder, None)
message_tables[1] = MessageTableDesc("sNesMessageEntryTable", "nes_message_data_static", nes_decoder, None)
message_tables[2] = None
message_tables[3] = None
message_table_staff = MessageTableDesc("sStaffMessageEntryTable", "staff_message_data_static", nes_decoder, None)
elif config.text_lang == "PAL":
message_tables[0] = None
message_tables[1] = MessageTableDesc("sNesMessageEntryTable", "nes_message_data_static", nes_decoder, None)
message_tables[2] = MessageTableDesc("sGerMessageEntryTable", "ger_message_data_static", nes_decoder, 1)
message_tables[3] = MessageTableDesc("sFraMessageEntryTable", "fra_message_data_static", nes_decoder, 1)
message_table_staff = MessageTableDesc("sStaffMessageEntryTable", "staff_message_data_static", nes_decoder, None)
elif config.text_lang == "CN":
# TODO: extract CN text
message_tables[0] = MessageTableDesc("sJpnMessageEntryTable", "jpn_message_data_static", jpn_decoder, None)
message_tables[1] = None
message_tables[2] = None
message_tables[3] = None
message_table_staff = MessageTableDesc("sStaffMessageEntryTable", "staff_message_data_static", nes_decoder, None)
else:
raise Exception(f"Unsupported text language: {config.text_lang}")
messages = collect_messages(message_tables, baserom_segments_dir, config, code_vram, code_bin)
staff_messages = collect_messages([message_table_staff], baserom_segments_dir, config, code_vram, code_bin)
+3 -3
View File
@@ -23,8 +23,8 @@ class VersionConfig:
checksums: list[str]
# ROM offset to start of DMA table
dmadata_start: int
# Whether the languages are PAL (EN/DE/FR) or not (JP/EN)
text_lang_pal: bool
# "NTSC" (JP/EN), "PAL" (EN/DE/FR), or "CN" (JP/CN)
text_lang: str
# DMA segment information, in ROM order
dmadata_segments: OrderedDict[str, SegmentInfo]
# ROM pieces that are copied directly into the build with .incbin
@@ -92,7 +92,7 @@ def load_version_config(version: str) -> VersionConfig:
version=version,
checksums=config.get("checksums", ["checksum"]),
dmadata_start=config["dmadata_start"],
text_lang_pal=config["text_lang_pal"],
text_lang=config["text_lang"],
dmadata_segments=load_dmadata_segments(version),
incbins=incbins,
variables=config["variables"],