diff --git a/Makefile b/Makefile
index f7d61227d14..df7dc4d94ed 100644
--- a/Makefile
+++ b/Makefile
@@ -66,6 +66,7 @@ ifeq ($(VERSION),ntsc-1.0)
REGION ?= JP
PLATFORM := N64
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd44
BUILD_DATE := 98-10-21
BUILD_TIME := 04:56:31
REVISION := 0
@@ -74,6 +75,7 @@ else ifeq ($(VERSION),ntsc-1.1)
REGION ?= JP
PLATFORM := N64
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd44
BUILD_DATE := 98-10-26
BUILD_TIME := 10:58:45
REVISION := 1
@@ -81,6 +83,7 @@ else ifeq ($(VERSION),pal-1.0)
REGION ?= EU
PLATFORM := N64
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd44
BUILD_DATE := 98-11-10
BUILD_TIME := 14:34:22
REVISION := 0
@@ -89,6 +92,7 @@ else ifeq ($(VERSION),ntsc-1.2)
REGION ?= JP
PLATFORM := N64
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd44
BUILD_DATE := 98-11-12
BUILD_TIME := 18:17:03
REVISION := 2
@@ -96,6 +100,7 @@ else ifeq ($(VERSION),pal-1.1)
REGION ?= EU
PLATFORM := N64
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd44
BUILD_DATE := 98-11-18
BUILD_TIME := 17:36:49
REVISION := 1
@@ -103,6 +108,7 @@ else ifeq ($(VERSION),gc-jp)
REGION ?= JP
PLATFORM := GC
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd022j
BUILD_DATE := 02-10-29
BUILD_TIME := 23:49:53
REVISION := 15
@@ -110,6 +116,7 @@ else ifeq ($(VERSION),gc-jp-mq)
REGION ?= JP
PLATFORM := GC
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd022j
BUILD_DATE := 02-10-30
BUILD_TIME := 00:15:15
REVISION := 15
@@ -117,6 +124,7 @@ else ifeq ($(VERSION),gc-us)
REGION ?= US
PLATFORM := GC
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd022j
BUILD_DATE := 02-12-19
BUILD_TIME := 13:28:09
REVISION := 15
@@ -124,6 +132,7 @@ else ifeq ($(VERSION),gc-us-mq)
REGION ?= US
PLATFORM := GC
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd022j
BUILD_DATE := 02-12-19
BUILD_TIME := 14:05:42
REVISION := 15
@@ -131,6 +140,7 @@ else ifeq ($(VERSION),gc-eu-mq-dbg)
REGION ?= EU
PLATFORM := GC
DEBUG_FEATURES ?= 1
+ BUILD_CREATOR := zelda@srd022j
BUILD_DATE := 03-02-21
BUILD_TIME := 00:16:31
REVISION := 15
@@ -138,6 +148,7 @@ else ifeq ($(VERSION),gc-eu)
REGION ?= EU
PLATFORM := GC
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd022j
BUILD_DATE := 03-02-21
BUILD_TIME := 20:12:23
REVISION := 15
@@ -145,6 +156,7 @@ else ifeq ($(VERSION),gc-eu-mq)
REGION ?= EU
PLATFORM := GC
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd022j
BUILD_DATE := 03-02-21
BUILD_TIME := 20:37:19
REVISION := 15
@@ -152,23 +164,23 @@ else ifeq ($(VERSION),gc-jp-ce)
REGION ?= JP
PLATFORM := GC
DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := zelda@srd022j
BUILD_DATE := 03-10-08
BUILD_TIME := 21:53:00
REVISION := 15
+else ifeq ($(VERSION),ique-cn)
+ COMPARE := 0
+ REGION ?= US
+ PLATFORM := IQUE
+ DEBUG_FEATURES ?= 0
+ BUILD_CREATOR := build@toad.routefree.com
+ BUILD_DATE := 03-10-22
+ BUILD_TIME := 16:23:19
+ REVISION := 0
else
$(error Unsupported version $(VERSION))
endif
-ifeq ($(PLATFORM),N64)
- BUILD_CREATOR := zelda@srd44
- LIBULTRA_VERSION := I
- LIBULTRA_PATCH := 1
-else
- BUILD_CREATOR := zelda@srd022j
- LIBULTRA_VERSION := L
- LIBULTRA_PATCH := 0
-endif
-
# ORIG_COMPILER cannot be combined with a non-IDO compiler. Check for this case and error out if found.
ifneq ($(COMPILER),ido)
ifeq ($(ORIG_COMPILER),1)
@@ -196,6 +208,22 @@ VENV := .venv
MAKE = make
CPPFLAGS += -P -xc -fno-dollars-in-identifiers
+ifeq ($(PLATFORM),N64)
+ CPP_DEFINES += -DPLATFORM_N64=1 -DPLATFORM_GC=0 -DPLATFORM_IQUE=0
+ LIBULTRA_VERSION := I
+ LIBULTRA_PATCH := 1
+else ifeq ($(PLATFORM),GC)
+ CPP_DEFINES += -DPLATFORM_N64=0 -DPLATFORM_GC=1 -DPLATFORM_IQUE=0
+ LIBULTRA_VERSION := L
+ LIBULTRA_PATCH := 0
+else ifeq ($(PLATFORM),IQUE)
+ CPP_DEFINES += -DPLATFORM_N64=0 -DPLATFORM_GC=0 -DPLATFORM_IQUE=1
+ LIBULTRA_VERSION := L
+ LIBULTRA_PATCH := 0
+else
+$(error Unsupported platform $(PLATFORM))
+endif
+
# Converts e.g. ntsc-1.0 to NTSC_1_0
VERSION_MACRO := $(shell echo $(VERSION) | tr a-z-. A-Z__)
CPP_DEFINES += -DOOT_VERSION=$(VERSION_MACRO) -DOOT_REVISION=$(REVISION)
@@ -204,14 +232,6 @@ CPP_DEFINES += -DBUILD_CREATOR="\"$(BUILD_CREATOR)\"" -DBUILD_DATE="\"$(BUILD_DA
CPP_DEFINES += -DLIBULTRA_VERSION=LIBULTRA_VERSION_$(LIBULTRA_VERSION)
CPP_DEFINES += -DLIBULTRA_PATCH=$(LIBULTRA_PATCH)
-ifeq ($(PLATFORM),N64)
- CPP_DEFINES += -DPLATFORM_N64=1 -DPLATFORM_GC=0
-else ifeq ($(PLATFORM),GC)
- CPP_DEFINES += -DPLATFORM_N64=0 -DPLATFORM_GC=1
-else
- $(error Unsupported platform $(PLATFORM))
-endif
-
ifeq ($(DEBUG_FEATURES),1)
CPP_DEFINES += -DDEBUG_FEATURES=1
OPTFLAGS := -O2
diff --git a/assets/xml/objects/object_mag_ique.xml b/assets/xml/objects/object_mag_ique.xml
new file mode 100644
index 00000000000..03b1a8b1930
--- /dev/null
+++ b/assets/xml/objects/object_mag_ique.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/overlays/ovl_End_Title_ique.xml b/assets/xml/overlays/ovl_End_Title_ique.xml
new file mode 100644
index 00000000000..300448cabfb
--- /dev/null
+++ b/assets/xml/overlays/ovl_End_Title_ique.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/textures/nes_font_static_ique_cn.xml b/assets/xml/textures/nes_font_static_ique_cn.xml
new file mode 100644
index 00000000000..73ef61f72f6
--- /dev/null
+++ b/assets/xml/textures/nes_font_static_ique_cn.xml
@@ -0,0 +1,145 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/baseroms/gc-eu-mq-dbg/config.yml b/baseroms/gc-eu-mq-dbg/config.yml
index 84a6d3b6c7c..09abaaf67a1 100644
--- a/baseroms/gc-eu-mq-dbg/config.yml
+++ b/baseroms/gc-eu-mq-dbg/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x12F70
-text_lang_pal: true
+text_lang: PAL
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/gc-eu-mq/config.yml b/baseroms/gc-eu-mq/config.yml
index f29e904e857..62925ab3b42 100644
--- a/baseroms/gc-eu-mq/config.yml
+++ b/baseroms/gc-eu-mq/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7170
-text_lang_pal: true
+text_lang: PAL
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/gc-eu/config.yml b/baseroms/gc-eu/config.yml
index de1d26194c4..278badfb805 100644
--- a/baseroms/gc-eu/config.yml
+++ b/baseroms/gc-eu/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7170
-text_lang_pal: true
+text_lang: PAL
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/gc-jp-ce/config.yml b/baseroms/gc-jp-ce/config.yml
index 3a3de8c8180..f73344d8927 100644
--- a/baseroms/gc-jp-ce/config.yml
+++ b/baseroms/gc-jp-ce/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7170
-text_lang_pal: false
+text_lang: NTSC
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/gc-jp-mq/config.yml b/baseroms/gc-jp-mq/config.yml
index 6e1ab6b0ef2..81927277bdf 100644
--- a/baseroms/gc-jp-mq/config.yml
+++ b/baseroms/gc-jp-mq/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7170
-text_lang_pal: false
+text_lang: NTSC
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/gc-jp/config.yml b/baseroms/gc-jp/config.yml
index 08df45e6aed..26e407d8c4f 100644
--- a/baseroms/gc-jp/config.yml
+++ b/baseroms/gc-jp/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7170
-text_lang_pal: false
+text_lang: NTSC
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/gc-us-mq/config.yml b/baseroms/gc-us-mq/config.yml
index df026951f48..77f12ba8bd1 100644
--- a/baseroms/gc-us-mq/config.yml
+++ b/baseroms/gc-us-mq/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7170
-text_lang_pal: false
+text_lang: NTSC
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/gc-us/config.yml b/baseroms/gc-us/config.yml
index 60050cb7ec0..c53cd1841a9 100644
--- a/baseroms/gc-us/config.yml
+++ b/baseroms/gc-us/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7170
-text_lang_pal: false
+text_lang: NTSC
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/ique-cn/checksum-compressed.md5 b/baseroms/ique-cn/checksum-compressed.md5
new file mode 100644
index 00000000000..ba4e5e57bf7
--- /dev/null
+++ b/baseroms/ique-cn/checksum-compressed.md5
@@ -0,0 +1 @@
+0ab48b2d44a74b3bb2d384f6170c2742 build/ique-cn/oot-ique-cn-compressed.z64
diff --git a/baseroms/ique-cn/checksum.md5 b/baseroms/ique-cn/checksum.md5
new file mode 100644
index 00000000000..82dfff85bf4
--- /dev/null
+++ b/baseroms/ique-cn/checksum.md5
@@ -0,0 +1 @@
+17a9f30d722c29e6912bd4b66713d2b0 build/ique-cn/oot-ique-cn.z64
diff --git a/baseroms/ique-cn/config.yml b/baseroms/ique-cn/config.yml
new file mode 100644
index 00000000000..a1801648218
--- /dev/null
+++ b/baseroms/ique-cn/config.yml
@@ -0,0 +1,1212 @@
+dmadata_start: 0xB7A0
+text_lang: CN
+incbins: # TODO: fix these
+ - name: ipl3
+ segment: makerom
+ vram: 0x80000040
+ size: 0xFC0
+ - name: rspbootText
+ segment: boot
+ vram: 0x800065C0
+ size: 0x160
+ - name: aspMainText
+ segment: code
+ vram: 0x800E3600
+ size: 0xFB0
+ - name: gspF3DZEX2_NoN_PosLight_fifoText
+ segment: code
+ vram: 0x800E45B0
+ size: 0x1390
+ - name: gspS2DEX2d_fifoText
+ segment: code
+ vram: 0x800E5940
+ size: 0x18C0
+ - name: njpgdspMainText
+ segment: code
+ vram: 0x800E7200
+ size: 0xAF0
+ - name: aspMainData
+ segment: code
+ vram: 0x80114990
+ size: 0x2E0
+ - name: gspF3DZEX2_NoN_PosLight_fifoData
+ segment: code
+ vram: 0x80114C70
+ size: 0x420
+ - name: gspS2DEX2d_fifoData
+ segment: code
+ vram: 0x80115090
+ size: 0x390
+ - name: njpgdspMainData
+ segment: code
+ vram: 0x80115420
+ size: 0x60
+variables:
+ gMtxClear: 0x80106980
+ sJpnMessageEntryTable: 0x80115838
+ sNesMessageEntryTable: 0x8011DB98
+ sStaffMessageEntryTable: 0x8011DB98
+ gSoundFontTable: 0x8011F280
+ gSequenceFontTable: 0x8011F4F0
+ gSequenceTable: 0x8011F6B0
+ gSampleBankTable: 0x8011FDA0
+ sShadowTex: 0x80AE0B10
+assets:
+- name: code/fbdemo_circle
+ xml_path: assets/xml/code/fbdemo_circle.xml
+ start_offset: 0xEBD88
+ end_offset: 0xECFA8
+- name: code/fbdemo_triforce
+ xml_path: assets/xml/code/fbdemo_triforce.xml
+ start_offset: 0xEB210
+ end_offset: 0xEB2E0
+- name: code/fbdemo_wipe1
+ xml_path: assets/xml/code/fbdemo_wipe1.xml
+ start_offset: 0xEB2E0
+ end_offset: 0xEBC70
+- name: misc/link_animetion
+ xml_path: assets/xml/misc/link_animetion.xml
+- name: misc/z_select_static
+ xml_path: assets/xml/misc/z_select_static.xml
+- name: objects/gameplay_dangeon_keep
+ xml_path: assets/xml/objects/gameplay_dangeon_keep.xml
+- name: objects/gameplay_field_keep
+ xml_path: assets/xml/objects/gameplay_field_keep.xml
+- name: objects/gameplay_keep
+ xml_path: assets/xml/objects/gameplay_keep.xml
+- name: objects/object_ahg
+ xml_path: assets/xml/objects/object_ahg.xml
+- name: objects/object_am
+ xml_path: assets/xml/objects/object_am.xml
+- name: objects/object_ane
+ xml_path: assets/xml/objects/object_ane.xml
+- name: objects/object_ani
+ xml_path: assets/xml/objects/object_ani.xml
+- name: objects/object_anubice
+ xml_path: assets/xml/objects/object_anubice.xml
+- name: objects/object_aob
+ xml_path: assets/xml/objects/object_aob.xml
+- name: objects/object_b_heart
+ xml_path: assets/xml/objects/object_b_heart.xml
+- name: objects/object_Bb
+ xml_path: assets/xml/objects/object_Bb.xml
+- name: objects/object_bba
+ xml_path: assets/xml/objects/object_bba.xml
+- name: objects/object_bdan_objects
+ xml_path: assets/xml/objects/object_bdan_objects.xml
+- name: objects/object_bdoor
+ xml_path: assets/xml/objects/object_bdoor.xml
+- name: objects/object_bg
+ xml_path: assets/xml/objects/object_bg.xml
+- name: objects/object_bigokuta
+ xml_path: assets/xml/objects/object_bigokuta.xml
+- name: objects/object_bird
+ xml_path: assets/xml/objects/object_bird.xml
+- name: objects/object_bji
+ xml_path: assets/xml/objects/object_bji.xml
+- name: objects/object_bl
+ xml_path: assets/xml/objects/object_bl.xml
+- name: objects/object_blkobj
+ xml_path: assets/xml/objects/object_blkobj.xml
+- name: objects/object_bob
+ xml_path: assets/xml/objects/object_bob.xml
+- name: objects/object_boj
+ xml_path: assets/xml/objects/object_boj.xml
+- name: objects/object_bombf
+ xml_path: assets/xml/objects/object_bombf.xml
+- name: objects/object_bombiwa
+ xml_path: assets/xml/objects/object_bombiwa.xml
+- name: objects/object_bowl
+ xml_path: assets/xml/objects/object_bowl.xml
+- name: objects/object_box
+ xml_path: assets/xml/objects/object_box.xml
+- name: objects/object_brob
+ xml_path: assets/xml/objects/object_brob.xml
+- name: objects/object_bubble
+ xml_path: assets/xml/objects/object_bubble.xml
+- name: objects/object_bv
+ xml_path: assets/xml/objects/object_bv.xml
+- name: objects/object_bw
+ xml_path: assets/xml/objects/object_bw.xml
+- name: objects/object_bwall
+ xml_path: assets/xml/objects/object_bwall.xml
+- name: objects/object_bxa
+ xml_path: assets/xml/objects/object_bxa.xml
+- name: objects/object_cne
+ xml_path: assets/xml/objects/object_cne.xml
+- name: objects/object_cob
+ xml_path: assets/xml/objects/object_cob.xml
+- name: objects/object_cow
+ xml_path: assets/xml/objects/object_cow.xml
+- name: objects/object_crow
+ xml_path: assets/xml/objects/object_crow.xml
+- name: objects/object_cs
+ xml_path: assets/xml/objects/object_cs.xml
+- name: objects/object_d_elevator
+ xml_path: assets/xml/objects/object_d_elevator.xml
+- name: objects/object_d_hsblock
+ xml_path: assets/xml/objects/object_d_hsblock.xml
+- name: objects/object_d_lift
+ xml_path: assets/xml/objects/object_d_lift.xml
+- name: objects/object_daiku
+ xml_path: assets/xml/objects/object_daiku.xml
+- name: objects/object_ddan_objects
+ xml_path: assets/xml/objects/object_ddan_objects.xml
+- name: objects/object_dekubaba
+ xml_path: assets/xml/objects/object_dekubaba.xml
+- name: objects/object_dekujr
+ xml_path: assets/xml/objects/object_dekujr.xml
+- name: objects/object_dekunuts
+ xml_path: assets/xml/objects/object_dekunuts.xml
+- name: objects/object_demo_6k
+ xml_path: assets/xml/objects/object_demo_6k.xml
+- name: objects/object_demo_kekkai
+ xml_path: assets/xml/objects/object_demo_kekkai.xml
+- name: objects/object_demo_tre_lgt
+ xml_path: assets/xml/objects/object_demo_tre_lgt.xml
+- name: objects/object_dh
+ xml_path: assets/xml/objects/object_dh.xml
+- name: objects/object_dnk
+ xml_path: assets/xml/objects/object_dnk.xml
+- name: objects/object_dns
+ xml_path: assets/xml/objects/object_dns.xml
+- name: objects/object_dodojr
+ xml_path: assets/xml/objects/object_dodojr.xml
+- name: objects/object_dodongo
+ xml_path: assets/xml/objects/object_dodongo.xml
+- name: objects/object_dog
+ xml_path: assets/xml/objects/object_dog.xml
+- name: objects/object_door_gerudo
+ xml_path: assets/xml/objects/object_door_gerudo.xml
+- name: objects/object_door_killer
+ xml_path: assets/xml/objects/object_door_killer.xml
+- name: objects/object_ds
+ xml_path: assets/xml/objects/object_ds.xml
+- name: objects/object_ds2
+ xml_path: assets/xml/objects/object_ds2.xml
+- name: objects/object_du
+ xml_path: assets/xml/objects/object_du.xml
+- name: objects/object_dy_obj
+ xml_path: assets/xml/objects/object_dy_obj.xml
+- name: objects/object_ec
+ xml_path: assets/xml/objects/object_ec.xml
+- name: objects/object_efc_crystal_light
+ xml_path: assets/xml/objects/object_efc_crystal_light.xml
+- name: objects/object_efc_doughnut
+ xml_path: assets/xml/objects/object_efc_doughnut.xml
+- name: objects/object_efc_erupc
+ xml_path: assets/xml/objects/object_efc_erupc.xml
+- name: objects/object_efc_fire_ball
+ xml_path: assets/xml/objects/object_efc_fire_ball.xml
+- name: objects/object_efc_flash
+ xml_path: assets/xml/objects/object_efc_flash.xml
+- name: objects/object_efc_lgt_shower
+ xml_path: assets/xml/objects/object_efc_lgt_shower.xml
+- name: objects/object_efc_star_field
+ xml_path: assets/xml/objects/object_efc_star_field.xml
+- name: objects/object_efc_tw
+ xml_path: assets/xml/objects/object_efc_tw.xml
+- name: objects/object_ei
+ xml_path: assets/xml/objects/object_ei.xml
+- name: objects/object_fa
+ xml_path: assets/xml/objects/object_fa.xml
+- name: objects/object_fd
+ xml_path: assets/xml/objects/object_fd.xml
+- name: objects/object_fd2
+ xml_path: assets/xml/objects/object_fd2.xml
+- name: objects/object_fhg
+ xml_path: assets/xml/objects/object_fhg.xml
+- name: objects/object_fire
+ xml_path: assets/xml/objects/object_fire.xml
+- name: objects/object_firefly
+ xml_path: assets/xml/objects/object_firefly.xml
+- name: objects/object_fish
+ xml_path: assets/xml/objects/object_fish.xml
+- name: objects/object_fr
+ xml_path: assets/xml/objects/object_fr.xml
+- name: objects/object_fu
+ xml_path: assets/xml/objects/object_fu.xml
+- name: objects/object_fw
+ xml_path: assets/xml/objects/object_fw.xml
+- name: objects/object_fz
+ xml_path: assets/xml/objects/object_fz.xml
+- name: objects/object_ganon
+ xml_path: assets/xml/objects/object_ganon.xml
+- name: objects/object_ganon2
+ xml_path: assets/xml/objects/object_ganon2.xml
+- name: objects/object_ganon_anime1
+ xml_path: assets/xml/objects/object_ganon_anime1.xml
+- name: objects/object_ganon_anime2
+ xml_path: assets/xml/objects/object_ganon_anime2.xml
+- name: objects/object_ganon_anime3
+ xml_path: assets/xml/objects/object_ganon_anime3.xml
+- name: objects/object_ganon_objects
+ xml_path: assets/xml/objects/object_ganon_objects.xml
+- name: objects/object_ge1
+ xml_path: assets/xml/objects/object_ge1.xml
+- name: objects/object_geff
+ xml_path: assets/xml/objects/object_geff.xml
+- name: objects/object_geldb
+ xml_path: assets/xml/objects/object_geldb.xml
+- name: objects/object_gi_arrow
+ xml_path: assets/xml/objects/object_gi_arrow.xml
+- name: objects/object_gi_arrowcase
+ xml_path: assets/xml/objects/object_gi_arrowcase.xml
+- name: objects/object_gi_bean
+ xml_path: assets/xml/objects/object_gi_bean.xml
+- name: objects/object_gi_bomb_1
+ xml_path: assets/xml/objects/object_gi_bomb_1.xml
+- name: objects/object_gi_bomb_2
+ xml_path: assets/xml/objects/object_gi_bomb_2.xml
+- name: objects/object_gi_bombpouch
+ xml_path: assets/xml/objects/object_gi_bombpouch.xml
+- name: objects/object_gi_boomerang
+ xml_path: assets/xml/objects/object_gi_boomerang.xml
+- name: objects/object_gi_boots_2
+ xml_path: assets/xml/objects/object_gi_boots_2.xml
+- name: objects/object_gi_bosskey
+ xml_path: assets/xml/objects/object_gi_bosskey.xml
+- name: objects/object_gi_bottle
+ xml_path: assets/xml/objects/object_gi_bottle.xml
+- name: objects/object_gi_bottle_letter
+ xml_path: assets/xml/objects/object_gi_bottle_letter.xml
+- name: objects/object_gi_bow
+ xml_path: assets/xml/objects/object_gi_bow.xml
+- name: objects/object_gi_bracelet
+ xml_path: assets/xml/objects/object_gi_bracelet.xml
+- name: objects/object_gi_brokensword
+ xml_path: assets/xml/objects/object_gi_brokensword.xml
+- name: objects/object_gi_butterfly
+ xml_path: assets/xml/objects/object_gi_butterfly.xml
+- name: objects/object_gi_clothes
+ xml_path: assets/xml/objects/object_gi_clothes.xml
+- name: objects/object_gi_coin
+ xml_path: assets/xml/objects/object_gi_coin.xml
+- name: objects/object_gi_compass
+ xml_path: assets/xml/objects/object_gi_compass.xml
+- name: objects/object_gi_dekupouch
+ xml_path: assets/xml/objects/object_gi_dekupouch.xml
+- name: objects/object_gi_egg
+ xml_path: assets/xml/objects/object_gi_egg.xml
+- name: objects/object_gi_eye_lotion
+ xml_path: assets/xml/objects/object_gi_eye_lotion.xml
+- name: objects/object_gi_fire
+ xml_path: assets/xml/objects/object_gi_fire.xml
+- name: objects/object_gi_fish
+ xml_path: assets/xml/objects/object_gi_fish.xml
+- name: objects/object_gi_frog
+ xml_path: assets/xml/objects/object_gi_frog.xml
+- name: objects/object_gi_gerudo
+ xml_path: assets/xml/objects/object_gi_gerudo.xml
+- name: objects/object_gi_gerudomask
+ xml_path: assets/xml/objects/object_gi_gerudomask.xml
+- name: objects/object_gi_ghost
+ xml_path: assets/xml/objects/object_gi_ghost.xml
+- name: objects/object_gi_glasses
+ xml_path: assets/xml/objects/object_gi_glasses.xml
+- name: objects/object_gi_gloves
+ xml_path: assets/xml/objects/object_gi_gloves.xml
+- name: objects/object_gi_goddess
+ xml_path: assets/xml/objects/object_gi_goddess.xml
+- name: objects/object_gi_golonmask
+ xml_path: assets/xml/objects/object_gi_golonmask.xml
+- name: objects/object_gi_grass
+ xml_path: assets/xml/objects/object_gi_grass.xml
+- name: objects/object_gi_hammer
+ xml_path: assets/xml/objects/object_gi_hammer.xml
+- name: objects/object_gi_heart
+ xml_path: assets/xml/objects/object_gi_heart.xml
+- name: objects/object_gi_hearts
+ xml_path: assets/xml/objects/object_gi_hearts.xml
+- name: objects/object_gi_hookshot
+ xml_path: assets/xml/objects/object_gi_hookshot.xml
+- name: objects/object_gi_hoverboots
+ xml_path: assets/xml/objects/object_gi_hoverboots.xml
+- name: objects/object_gi_insect
+ xml_path: assets/xml/objects/object_gi_insect.xml
+- name: objects/object_gi_jewel
+ xml_path: assets/xml/objects/object_gi_jewel.xml
+- name: objects/object_gi_key
+ xml_path: assets/xml/objects/object_gi_key.xml
+- name: objects/object_gi_ki_tan_mask
+ xml_path: assets/xml/objects/object_gi_ki_tan_mask.xml
+- name: objects/object_gi_letter
+ xml_path: assets/xml/objects/object_gi_letter.xml
+- name: objects/object_gi_liquid
+ xml_path: assets/xml/objects/object_gi_liquid.xml
+- name: objects/object_gi_longsword
+ xml_path: assets/xml/objects/object_gi_longsword.xml
+- name: objects/object_gi_m_arrow
+ xml_path: assets/xml/objects/object_gi_m_arrow.xml
+- name: objects/object_gi_magicpot
+ xml_path: assets/xml/objects/object_gi_magicpot.xml
+- name: objects/object_gi_map
+ xml_path: assets/xml/objects/object_gi_map.xml
+- name: objects/object_gi_medal
+ xml_path: assets/xml/objects/object_gi_medal.xml
+- name: objects/object_gi_melody
+ xml_path: assets/xml/objects/object_gi_melody.xml
+- name: objects/object_gi_milk
+ xml_path: assets/xml/objects/object_gi_milk.xml
+- name: objects/object_gi_mushroom
+ xml_path: assets/xml/objects/object_gi_mushroom.xml
+- name: objects/object_gi_niwatori
+ xml_path: assets/xml/objects/object_gi_niwatori.xml
+- name: objects/object_gi_nuts
+ xml_path: assets/xml/objects/object_gi_nuts.xml
+- name: objects/object_gi_ocarina
+ xml_path: assets/xml/objects/object_gi_ocarina.xml
+- name: objects/object_gi_ocarina_0
+ xml_path: assets/xml/objects/object_gi_ocarina_0.xml
+- name: objects/object_gi_pachinko
+ xml_path: assets/xml/objects/object_gi_pachinko.xml
+- name: objects/object_gi_powder
+ xml_path: assets/xml/objects/object_gi_powder.xml
+- name: objects/object_gi_prescription
+ xml_path: assets/xml/objects/object_gi_prescription.xml
+- name: objects/object_gi_purse
+ xml_path: assets/xml/objects/object_gi_purse.xml
+- name: objects/object_gi_rabit_mask
+ xml_path: assets/xml/objects/object_gi_rabit_mask.xml
+- name: objects/object_gi_redead_mask
+ xml_path: assets/xml/objects/object_gi_redead_mask.xml
+- name: objects/object_gi_rupy
+ xml_path: assets/xml/objects/object_gi_rupy.xml
+- name: objects/object_gi_saw
+ xml_path: assets/xml/objects/object_gi_saw.xml
+- name: objects/object_gi_scale
+ xml_path: assets/xml/objects/object_gi_scale.xml
+- name: objects/object_gi_seed
+ xml_path: assets/xml/objects/object_gi_seed.xml
+- name: objects/object_gi_shield_1
+ xml_path: assets/xml/objects/object_gi_shield_1.xml
+- name: objects/object_gi_shield_2
+ xml_path: assets/xml/objects/object_gi_shield_2.xml
+- name: objects/object_gi_shield_3
+ xml_path: assets/xml/objects/object_gi_shield_3.xml
+- name: objects/object_gi_skj_mask
+ xml_path: assets/xml/objects/object_gi_skj_mask.xml
+- name: objects/object_gi_soldout
+ xml_path: assets/xml/objects/object_gi_soldout.xml
+- name: objects/object_gi_soul
+ xml_path: assets/xml/objects/object_gi_soul.xml
+- name: objects/object_gi_stick
+ xml_path: assets/xml/objects/object_gi_stick.xml
+- name: objects/object_gi_sutaru
+ xml_path: assets/xml/objects/object_gi_sutaru.xml
+- name: objects/object_gi_sword_1
+ xml_path: assets/xml/objects/object_gi_sword_1.xml
+- name: objects/object_gi_ticketstone
+ xml_path: assets/xml/objects/object_gi_ticketstone.xml
+- name: objects/object_gi_truth_mask
+ xml_path: assets/xml/objects/object_gi_truth_mask.xml
+- name: objects/object_gi_zoramask
+ xml_path: assets/xml/objects/object_gi_zoramask.xml
+- name: objects/object_gj
+ xml_path: assets/xml/objects/object_gj.xml
+- name: objects/object_gjyo_objects
+ xml_path: assets/xml/objects/object_gjyo_objects.xml
+- name: objects/object_gla
+ xml_path: assets/xml/objects/object_gla.xml
+- name: objects/object_gm
+ xml_path: assets/xml/objects/object_gm.xml
+- name: objects/object_gnd
+ xml_path: assets/xml/objects/object_gnd.xml
+- name: objects/object_gnd_magic
+ xml_path: assets/xml/objects/object_gnd_magic.xml
+- name: objects/object_gndd
+ xml_path: assets/xml/objects/object_gndd.xml
+- name: objects/object_god_lgt
+ xml_path: assets/xml/objects/object_god_lgt.xml
+- name: objects/object_gol
+ xml_path: assets/xml/objects/object_gol.xml
+- name: objects/object_goma
+ xml_path: assets/xml/objects/object_goma.xml
+- name: objects/object_goroiwa
+ xml_path: assets/xml/objects/object_goroiwa.xml
+- name: objects/object_gr
+ xml_path: assets/xml/objects/object_gr.xml
+- name: objects/object_gs
+ xml_path: assets/xml/objects/object_gs.xml
+- name: objects/object_gt
+ xml_path: assets/xml/objects/object_gt.xml
+- name: objects/object_haka
+ xml_path: assets/xml/objects/object_haka.xml
+- name: objects/object_haka_door
+ xml_path: assets/xml/objects/object_haka_door.xml
+- name: objects/object_haka_objects
+ xml_path: assets/xml/objects/object_haka_objects.xml
+- name: objects/object_hakach_objects
+ xml_path: assets/xml/objects/object_hakach_objects.xml
+- name: objects/object_hata
+ xml_path: assets/xml/objects/object_hata.xml
+- name: objects/object_heavy_object
+ xml_path: assets/xml/objects/object_heavy_object.xml
+- name: objects/object_hidan_objects
+ xml_path: assets/xml/objects/object_hidan_objects.xml
+- name: objects/object_hintnuts
+ xml_path: assets/xml/objects/object_hintnuts.xml
+- name: objects/object_hni
+ xml_path: assets/xml/objects/object_hni.xml
+- name: objects/object_horse
+ xml_path: assets/xml/objects/object_horse.xml
+- name: objects/object_horse_ganon
+ xml_path: assets/xml/objects/object_horse_ganon.xml
+- name: objects/object_horse_link_child
+ xml_path: assets/xml/objects/object_horse_link_child.xml
+- name: objects/object_horse_normal
+ xml_path: assets/xml/objects/object_horse_normal.xml
+- name: objects/object_horse_zelda
+ xml_path: assets/xml/objects/object_horse_zelda.xml
+- name: objects/object_hs
+ xml_path: assets/xml/objects/object_hs.xml
+- name: objects/object_human
+ xml_path: assets/xml/objects/object_human.xml
+- name: objects/object_ice_objects
+ xml_path: assets/xml/objects/object_ice_objects.xml
+- name: objects/object_ik
+ xml_path: assets/xml/objects/object_ik.xml
+- name: objects/object_im
+ xml_path: assets/xml/objects/object_im.xml
+- name: objects/object_in
+ xml_path: assets/xml/objects/object_in.xml
+- name: objects/object_ingate
+ xml_path: assets/xml/objects/object_ingate.xml
+- name: objects/object_jj
+ xml_path: assets/xml/objects/object_jj.xml
+- name: objects/object_js
+ xml_path: assets/xml/objects/object_js.xml
+- name: objects/object_jya_door
+ xml_path: assets/xml/objects/object_jya_door.xml
+- name: objects/object_jya_iron
+ xml_path: assets/xml/objects/object_jya_iron.xml
+- name: objects/object_jya_obj
+ xml_path: assets/xml/objects/object_jya_obj.xml
+- name: objects/object_ka
+ xml_path: assets/xml/objects/object_ka.xml
+- name: objects/object_kanban
+ xml_path: assets/xml/objects/object_kanban.xml
+- name: objects/object_kibako2
+ xml_path: assets/xml/objects/object_kibako2.xml
+- name: objects/object_kingdodongo
+ xml_path: assets/xml/objects/object_kingdodongo.xml
+- name: objects/object_km1
+ xml_path: assets/xml/objects/object_km1.xml
+- name: objects/object_kusa
+ xml_path: assets/xml/objects/object_kusa.xml
+- name: objects/object_kw1
+ xml_path: assets/xml/objects/object_kw1.xml
+- name: objects/object_kz
+ xml_path: assets/xml/objects/object_kz.xml
+- name: objects/object_light_ring
+ xml_path: assets/xml/objects/object_light_ring.xml
+- name: objects/object_lightbox
+ xml_path: assets/xml/objects/object_lightbox.xml
+- name: objects/object_lightswitch
+ xml_path: assets/xml/objects/object_lightswitch.xml
+- name: objects/object_link_boy
+ xml_path: assets/xml/objects/object_link_boy.xml
+- name: objects/object_link_child
+ xml_path: assets/xml/objects/object_link_child.xml
+- name: objects/object_ma1
+ xml_path: assets/xml/objects/object_ma1.xml
+- name: objects/object_ma2
+ xml_path: assets/xml/objects/object_ma2.xml
+- name: objects/object_mag
+ xml_path: assets/xml/objects/object_mag_ique.xml
+- name: objects/object_mamenoki
+ xml_path: assets/xml/objects/object_mamenoki.xml
+- name: objects/object_mastergolon
+ xml_path: assets/xml/objects/object_mastergolon.xml
+- name: objects/object_masterkokiri
+ xml_path: assets/xml/objects/object_masterkokiri.xml
+- name: objects/object_masterkokirihead
+ xml_path: assets/xml/objects/object_masterkokirihead.xml
+- name: objects/object_masterzoora
+ xml_path: assets/xml/objects/object_masterzoora.xml
+- name: objects/object_mb
+ xml_path: assets/xml/objects/object_mb.xml
+- name: objects/object_md
+ xml_path: assets/xml/objects/object_md.xml
+- name: objects/object_medal
+ xml_path: assets/xml/objects/object_medal.xml
+- name: objects/object_menkuri_objects
+ xml_path: assets/xml/objects/object_menkuri_objects.xml
+- name: objects/object_mir_ray
+ xml_path: assets/xml/objects/object_mir_ray.xml
+- name: objects/object_mizu_objects
+ xml_path: assets/xml/objects/object_mizu_objects.xml
+- name: objects/object_mjin
+ xml_path: assets/xml/objects/object_mjin.xml
+- name: objects/object_mjin_dark
+ xml_path: assets/xml/objects/object_mjin_dark.xml
+- name: objects/object_mjin_flame
+ xml_path: assets/xml/objects/object_mjin_flame.xml
+- name: objects/object_mjin_flash
+ xml_path: assets/xml/objects/object_mjin_flash.xml
+- name: objects/object_mjin_ice
+ xml_path: assets/xml/objects/object_mjin_ice.xml
+- name: objects/object_mjin_oka
+ xml_path: assets/xml/objects/object_mjin_oka.xml
+- name: objects/object_mjin_soul
+ xml_path: assets/xml/objects/object_mjin_soul.xml
+- name: objects/object_mjin_wind
+ xml_path: assets/xml/objects/object_mjin_wind.xml
+- name: objects/object_mk
+ xml_path: assets/xml/objects/object_mk.xml
+- name: objects/object_mm
+ xml_path: assets/xml/objects/object_mm.xml
+- name: objects/object_mo
+ xml_path: assets/xml/objects/object_mo.xml
+- name: objects/object_mori_hineri1
+ xml_path: assets/xml/objects/object_mori_hineri1.xml
+- name: objects/object_mori_hineri1a
+ xml_path: assets/xml/objects/object_mori_hineri1a.xml
+- name: objects/object_mori_hineri2
+ xml_path: assets/xml/objects/object_mori_hineri2.xml
+- name: objects/object_mori_hineri2a
+ xml_path: assets/xml/objects/object_mori_hineri2a.xml
+- name: objects/object_mori_objects
+ xml_path: assets/xml/objects/object_mori_objects.xml
+- name: objects/object_mori_tex
+ xml_path: assets/xml/objects/object_mori_tex.xml
+- name: objects/object_ms
+ xml_path: assets/xml/objects/object_ms.xml
+- name: objects/object_mu
+ xml_path: assets/xml/objects/object_mu.xml
+- name: objects/object_nb
+ xml_path: assets/xml/objects/object_nb.xml
+- name: objects/object_niw
+ xml_path: assets/xml/objects/object_niw.xml
+- name: objects/object_nwc
+ xml_path: assets/xml/objects/object_nwc.xml
+- name: objects/object_ny
+ xml_path: assets/xml/objects/object_ny.xml
+- name: objects/object_o_anime
+ xml_path: assets/xml/objects/object_o_anime.xml
+- name: objects/object_oA1
+ xml_path: assets/xml/objects/object_oA1.xml
+- name: objects/object_oA2
+ xml_path: assets/xml/objects/object_oA2.xml
+- name: objects/object_oA3
+ xml_path: assets/xml/objects/object_oA3.xml
+- name: objects/object_oA4
+ xml_path: assets/xml/objects/object_oA4.xml
+- name: objects/object_oA5
+ xml_path: assets/xml/objects/object_oA5.xml
+- name: objects/object_oA6
+ xml_path: assets/xml/objects/object_oA6.xml
+- name: objects/object_oA7
+ xml_path: assets/xml/objects/object_oA7.xml
+- name: objects/object_oA8
+ xml_path: assets/xml/objects/object_oA8.xml
+- name: objects/object_oA9
+ xml_path: assets/xml/objects/object_oA9.xml
+- name: objects/object_oA10
+ xml_path: assets/xml/objects/object_oA10.xml
+- name: objects/object_oA11
+ xml_path: assets/xml/objects/object_oA11.xml
+- name: objects/object_oB1
+ xml_path: assets/xml/objects/object_oB1.xml
+- name: objects/object_oB2
+ xml_path: assets/xml/objects/object_oB2.xml
+- name: objects/object_oB3
+ xml_path: assets/xml/objects/object_oB3.xml
+- name: objects/object_oB4
+ xml_path: assets/xml/objects/object_oB4.xml
+- name: objects/object_oE1
+ xml_path: assets/xml/objects/object_oE1.xml
+- name: objects/object_oE1s
+ xml_path: assets/xml/objects/object_oE1s.xml
+- name: objects/object_oE2
+ xml_path: assets/xml/objects/object_oE2.xml
+- name: objects/object_oE3
+ xml_path: assets/xml/objects/object_oE3.xml
+- name: objects/object_oE4
+ xml_path: assets/xml/objects/object_oE4.xml
+- name: objects/object_oE4s
+ xml_path: assets/xml/objects/object_oE4s.xml
+- name: objects/object_oE5
+ xml_path: assets/xml/objects/object_oE5.xml
+- name: objects/object_oE6
+ xml_path: assets/xml/objects/object_oE6.xml
+- name: objects/object_oE7
+ xml_path: assets/xml/objects/object_oE7.xml
+- name: objects/object_oE8
+ xml_path: assets/xml/objects/object_oE8.xml
+- name: objects/object_oE9
+ xml_path: assets/xml/objects/object_oE9.xml
+- name: objects/object_oE10
+ xml_path: assets/xml/objects/object_oE10.xml
+- name: objects/object_oE11
+ xml_path: assets/xml/objects/object_oE11.xml
+- name: objects/object_oE12
+ xml_path: assets/xml/objects/object_oE12.xml
+- name: objects/object_oE_anime
+ xml_path: assets/xml/objects/object_oE_anime.xml
+- name: objects/object_oF1d_map
+ xml_path: assets/xml/objects/object_oF1d_map.xml
+- name: objects/object_oF1s
+ xml_path: assets/xml/objects/object_oF1s.xml
+- name: objects/object_okuta
+ xml_path: assets/xml/objects/object_okuta.xml
+- name: objects/object_opening_demo1
+ xml_path: assets/xml/objects/object_opening_demo1.xml
+- name: objects/object_os
+ xml_path: assets/xml/objects/object_os.xml
+- name: objects/object_os_anime
+ xml_path: assets/xml/objects/object_os_anime.xml
+- name: objects/object_ossan
+ xml_path: assets/xml/objects/object_ossan.xml
+- name: objects/object_ouke_haka
+ xml_path: assets/xml/objects/object_ouke_haka.xml
+- name: objects/object_owl
+ xml_path: assets/xml/objects/object_owl.xml
+- name: objects/object_peehat
+ xml_path: assets/xml/objects/object_peehat.xml
+- name: objects/object_po_composer
+ xml_path: assets/xml/objects/object_po_composer.xml
+- name: objects/object_po_field
+ xml_path: assets/xml/objects/object_po_field.xml
+- name: objects/object_po_sisters
+ xml_path: assets/xml/objects/object_po_sisters.xml
+- name: objects/object_poh
+ xml_path: assets/xml/objects/object_poh.xml
+- name: objects/object_ps
+ xml_path: assets/xml/objects/object_ps.xml
+- name: objects/object_pu_box
+ xml_path: assets/xml/objects/object_pu_box.xml
+- name: objects/object_rd
+ xml_path: assets/xml/objects/object_rd.xml
+- name: objects/object_reeba
+ xml_path: assets/xml/objects/object_reeba.xml
+- name: objects/object_relay_objects
+ xml_path: assets/xml/objects/object_relay_objects.xml
+- name: objects/object_rl
+ xml_path: assets/xml/objects/object_rl.xml
+- name: objects/object_rr
+ xml_path: assets/xml/objects/object_rr.xml
+- name: objects/object_rs
+ xml_path: assets/xml/objects/object_rs.xml
+- name: objects/object_ru1
+ xml_path: assets/xml/objects/object_ru1.xml
+- name: objects/object_ru2
+ xml_path: assets/xml/objects/object_ru2.xml
+- name: objects/object_sa
+ xml_path: assets/xml/objects/object_sa.xml
+- name: objects/object_sb
+ xml_path: assets/xml/objects/object_sb.xml
+- name: objects/object_sd
+ xml_path: assets/xml/objects/object_sd.xml
+- name: objects/object_shop_dungen
+ xml_path: assets/xml/objects/object_shop_dungen.xml
+- name: objects/object_shopnuts
+ xml_path: assets/xml/objects/object_shopnuts.xml
+- name: objects/object_siofuki
+ xml_path: assets/xml/objects/object_siofuki.xml
+- name: objects/object_sk2
+ xml_path: assets/xml/objects/object_sk2.xml
+- name: objects/object_skb
+ xml_path: assets/xml/objects/object_skb.xml
+- name: objects/object_skj
+ xml_path: assets/xml/objects/object_skj.xml
+- name: objects/object_spot00_break
+ xml_path: assets/xml/objects/object_spot00_break.xml
+- name: objects/object_spot00_objects
+ xml_path: assets/xml/objects/object_spot00_objects.xml
+- name: objects/object_spot01_matoya
+ xml_path: assets/xml/objects/object_spot01_matoya.xml
+- name: objects/object_spot01_matoyab
+ xml_path: assets/xml/objects/object_spot01_matoyab.xml
+- name: objects/object_spot01_objects
+ xml_path: assets/xml/objects/object_spot01_objects.xml
+- name: objects/object_spot01_objects2
+ xml_path: assets/xml/objects/object_spot01_objects2.xml
+- name: objects/object_spot02_objects
+ xml_path: assets/xml/objects/object_spot02_objects.xml
+- name: objects/object_spot03_object
+ xml_path: assets/xml/objects/object_spot03_object.xml
+- name: objects/object_spot04_objects
+ xml_path: assets/xml/objects/object_spot04_objects.xml
+- name: objects/object_spot05_objects
+ xml_path: assets/xml/objects/object_spot05_objects.xml
+- name: objects/object_spot06_objects
+ xml_path: assets/xml/objects/object_spot06_objects.xml
+- name: objects/object_spot07_object
+ xml_path: assets/xml/objects/object_spot07_object.xml
+- name: objects/object_spot08_obj
+ xml_path: assets/xml/objects/object_spot08_obj.xml
+- name: objects/object_spot09_obj
+ xml_path: assets/xml/objects/object_spot09_obj.xml
+- name: objects/object_spot11_obj
+ xml_path: assets/xml/objects/object_spot11_obj.xml
+- name: objects/object_spot12_obj
+ xml_path: assets/xml/objects/object_spot12_obj.xml
+- name: objects/object_spot15_obj
+ xml_path: assets/xml/objects/object_spot15_obj.xml
+- name: objects/object_spot16_obj
+ xml_path: assets/xml/objects/object_spot16_obj.xml
+- name: objects/object_spot17_obj
+ xml_path: assets/xml/objects/object_spot17_obj.xml
+- name: objects/object_spot18_obj
+ xml_path: assets/xml/objects/object_spot18_obj.xml
+- name: objects/object_ssh
+ xml_path: assets/xml/objects/object_ssh.xml
+- name: objects/object_sst
+ xml_path: assets/xml/objects/object_sst.xml
+- name: objects/object_st
+ xml_path: assets/xml/objects/object_st.xml
+- name: objects/object_stream
+ xml_path: assets/xml/objects/object_stream.xml
+- name: objects/object_syokudai
+ xml_path: assets/xml/objects/object_syokudai.xml
+- name: objects/object_ta
+ xml_path: assets/xml/objects/object_ta.xml
+- name: objects/object_timeblock
+ xml_path: assets/xml/objects/object_timeblock.xml
+- name: objects/object_tite
+ xml_path: assets/xml/objects/object_tite.xml
+- name: objects/object_tk
+ xml_path: assets/xml/objects/object_tk.xml
+- name: objects/object_toki_objects
+ xml_path: assets/xml/objects/object_toki_objects.xml
+- name: objects/object_torch2
+ xml_path: assets/xml/objects/object_torch2.xml
+- name: objects/object_toryo
+ xml_path: assets/xml/objects/object_toryo.xml
+- name: objects/object_tp
+ xml_path: assets/xml/objects/object_tp.xml
+- name: objects/object_tr
+ xml_path: assets/xml/objects/object_tr.xml
+- name: objects/object_trap
+ xml_path: assets/xml/objects/object_trap.xml
+- name: objects/object_triforce_spot
+ xml_path: assets/xml/objects/object_triforce_spot.xml
+- name: objects/object_ts
+ xml_path: assets/xml/objects/object_ts.xml
+- name: objects/object_tsubo
+ xml_path: assets/xml/objects/object_tsubo.xml
+- name: objects/object_tw
+ xml_path: assets/xml/objects/object_tw.xml
+- name: objects/object_umajump
+ xml_path: assets/xml/objects/object_umajump.xml
+- name: objects/object_vali
+ xml_path: assets/xml/objects/object_vali.xml
+- name: objects/object_vase
+ xml_path: assets/xml/objects/object_vase.xml
+- name: objects/object_vm
+ xml_path: assets/xml/objects/object_vm.xml
+- name: objects/object_wallmaster
+ xml_path: assets/xml/objects/object_wallmaster.xml
+- name: objects/object_warp1
+ xml_path: assets/xml/objects/object_warp1.xml
+- name: objects/object_warp2
+ xml_path: assets/xml/objects/object_warp2.xml
+- name: objects/object_wf
+ xml_path: assets/xml/objects/object_wf.xml
+- name: objects/object_wood02
+ xml_path: assets/xml/objects/object_wood02.xml
+- name: objects/object_xc
+ xml_path: assets/xml/objects/object_xc.xml
+- name: objects/object_yabusame_point
+ xml_path: assets/xml/objects/object_yabusame_point.xml
+- name: objects/object_ydan_objects
+ xml_path: assets/xml/objects/object_ydan_objects.xml
+- name: objects/object_yukabyun
+ xml_path: assets/xml/objects/object_yukabyun.xml
+- name: objects/object_zf
+ xml_path: assets/xml/objects/object_zf.xml
+- name: objects/object_zg
+ xml_path: assets/xml/objects/object_zg.xml
+- name: objects/object_zl1
+ xml_path: assets/xml/objects/object_zl1.xml
+- name: objects/object_zl2
+ xml_path: assets/xml/objects/object_zl2.xml
+- name: objects/object_zl2_anime1
+ xml_path: assets/xml/objects/object_zl2_anime1.xml
+- name: objects/object_zl2_anime2
+ xml_path: assets/xml/objects/object_zl2_anime2.xml
+- name: objects/object_zl4
+ xml_path: assets/xml/objects/object_zl4.xml
+- name: objects/object_zo
+ xml_path: assets/xml/objects/object_zo.xml
+- name: overlays/ovl_Arrow_Fire
+ xml_path: assets/xml/overlays/ovl_Arrow_Fire.xml
+ start_offset: 0x980
+ end_offset: 0x1DA0
+- name: overlays/ovl_Arrow_Ice
+ xml_path: assets/xml/overlays/ovl_Arrow_Ice.xml
+ start_offset: 0x9A0
+ end_offset: 0x1DC0
+- name: overlays/ovl_Arrow_Light
+ xml_path: assets/xml/overlays/ovl_Arrow_Light.xml
+ start_offset: 0x9B0
+ end_offset: 0x1DD0
+- name: overlays/ovl_Bg_Ganon_Otyuka
+ xml_path: assets/xml/overlays/ovl_Bg_Ganon_Otyuka.xml
+ start_offset: 0x1100
+ end_offset: 0x24DC
+- name: overlays/ovl_Bg_Jya_Cobra
+ xml_path: assets/xml/overlays/ovl_Bg_Jya_Cobra.xml
+ start_offset: 0x1850
+ end_offset: 0x18C8
+- name: overlays/ovl_Boss_Dodongo
+ xml_path: assets/xml/overlays/ovl_Boss_Dodongo.xml
+ start_offset: 0x61E8
+ end_offset: 0x91E8
+- name: overlays/ovl_Boss_Ganon
+ xml_path: assets/xml/overlays/ovl_Boss_Ganon.xml
+ start_offset: 0xE3C8
+ end_offset: 0x20EE8
+- name: overlays/ovl_Boss_Ganon2
+ xml_path: assets/xml/overlays/ovl_Boss_Ganon2.xml
+ start_offset: 0x9F88
+ end_offset: 0x10438
+- name: overlays/ovl_Boss_Sst
+ xml_path: assets/xml/overlays/ovl_Boss_Sst.xml
+ start_offset: 0xA380
+ end_offset: 0xAD30
+- name: overlays/ovl_Demo_Shd
+ xml_path: assets/xml/overlays/ovl_Demo_Shd.xml
+ start_offset: 0x410
+ end_offset: 0x2390
+- name: overlays/ovl_Effect_Ss_Fhg_Flash
+ xml_path: assets/xml/overlays/ovl_Effect_Ss_Fhg_Flash.xml
+ start_offset: 0x9F0
+ end_offset: 0xEA8
+- name: overlays/ovl_En_Bili
+ xml_path: assets/xml/overlays/ovl_En_Bili.xml
+ start_offset: 0x1E40
+ end_offset: 0x1E60
+- name: overlays/ovl_En_Clear_Tag
+ xml_path: assets/xml/overlays/ovl_En_Clear_Tag.xml
+ start_offset: 0x2600
+ end_offset: 0x8900
+- name: overlays/ovl_En_Ganon_Mant
+ xml_path: assets/xml/overlays/ovl_En_Ganon_Mant.xml
+ start_offset: 0x11F8
+ end_offset: 0x40F8
+- name: overlays/ovl_En_Ganon_Organ
+ xml_path: assets/xml/overlays/ovl_En_Ganon_Organ.xml
+ start_offset: 0x368
+ end_offset: 0x6EF0
+- name: overlays/ovl_En_Holl
+ xml_path: assets/xml/overlays/ovl_En_Holl.xml
+ start_offset: 0xE68
+ end_offset: 0xED0
+- name: overlays/ovl_En_Jsjutan
+ xml_path: assets/xml/overlays/ovl_En_Jsjutan.xml
+ start_offset: 0x12C8
+ end_offset: 0x4C60
+- name: overlays/ovl_En_Kanban
+ xml_path: assets/xml/overlays/ovl_En_Kanban.xml
+ start_offset: 0x2E70
+ end_offset: 0x2F30
+- name: overlays/ovl_En_Sda
+ xml_path: assets/xml/overlays/ovl_En_Sda.xml
+ start_offset: 0x1498
+ end_offset: 0x1528
+- name: overlays/ovl_En_Ssh
+ xml_path: assets/xml/overlays/ovl_En_Ssh.xml
+ start_offset: 0x2150
+ end_offset: 0x21E0
+- name: overlays/ovl_En_St
+ xml_path: assets/xml/overlays/ovl_En_St.xml
+ start_offset: 0x26A0
+ end_offset: 0x2730
+- name: overlays/ovl_En_Sth
+ xml_path: assets/xml/overlays/ovl_En_Sth.xml
+ start_offset: 0xE70
+ end_offset: 0x3E44
+- name: overlays/ovl_End_Title
+ xml_path: assets/xml/overlays/ovl_End_Title_ique.xml
+ start_offset: 0x750
+ end_offset: 0x59D0
+- name: overlays/ovl_file_choose
+ xml_path: assets/xml/overlays/ovl_file_choose.xml
+ start_offset: 0xEC40
+ end_offset: 0xF320
+- name: overlays/ovl_Magic_Dark
+ xml_path: assets/xml/overlays/ovl_Magic_Dark.xml
+ start_offset: 0xC90
+ end_offset: 0x16C0
+- name: overlays/ovl_Magic_Fire
+ xml_path: assets/xml/overlays/ovl_Magic_Fire.xml
+ start_offset: 0xB50
+ end_offset: 0x21A0
+- name: overlays/ovl_Magic_Wind
+ xml_path: assets/xml/overlays/ovl_Magic_Wind.xml
+ start_offset: 0x6A0
+ end_offset: 0x1BB8
+- name: overlays/ovl_Oceff_Spot
+ xml_path: assets/xml/overlays/ovl_Oceff_Spot.xml
+ start_offset: 0x780
+ end_offset: 0xE58
+- name: overlays/ovl_Oceff_Storm
+ xml_path: assets/xml/overlays/ovl_Oceff_Storm.xml
+ start_offset: 0x750
+ end_offset: 0x1AE0
+- name: overlays/ovl_Oceff_Wipe
+ xml_path: assets/xml/overlays/ovl_Oceff_Wipe.xml
+ start_offset: 0x520
+ end_offset: 0xCE0
+- name: overlays/ovl_Oceff_Wipe2
+ xml_path: assets/xml/overlays/ovl_Oceff_Wipe2.xml
+ start_offset: 0x430
+ end_offset: 0x1698
+- name: overlays/ovl_Oceff_Wipe3
+ xml_path: assets/xml/overlays/ovl_Oceff_Wipe3.xml
+ start_offset: 0x430
+ end_offset: 0x1678
+- name: overlays/ovl_Oceff_Wipe4
+ xml_path: assets/xml/overlays/ovl_Oceff_Wipe4.xml
+ start_offset: 0x410
+ end_offset: 0xEF8
+- name: scenes/dungeons/bdan
+ xml_path: assets/xml/scenes/dungeons/bdan.xml
+- name: scenes/dungeons/bdan_boss
+ xml_path: assets/xml/scenes/dungeons/bdan_boss.xml
+- name: scenes/dungeons/Bmori1
+ xml_path: assets/xml/scenes/dungeons/Bmori1.xml
+- name: scenes/dungeons/ddan
+ xml_path: assets/xml/scenes/dungeons/ddan.xml
+- name: scenes/dungeons/ddan_boss
+ xml_path: assets/xml/scenes/dungeons/ddan_boss_v2.xml
+- name: scenes/dungeons/FIRE_bs
+ xml_path: assets/xml/scenes/dungeons/FIRE_bs.xml
+- name: scenes/dungeons/ganon
+ xml_path: assets/xml/scenes/dungeons/ganon.xml
+- name: scenes/dungeons/ganon_boss
+ xml_path: assets/xml/scenes/dungeons/ganon_boss.xml
+- name: scenes/dungeons/ganon_demo
+ xml_path: assets/xml/scenes/dungeons/ganon_demo.xml
+- name: scenes/dungeons/ganon_final
+ xml_path: assets/xml/scenes/dungeons/ganon_final.xml
+- name: scenes/dungeons/ganon_sonogo
+ xml_path: assets/xml/scenes/dungeons/ganon_sonogo.xml
+- name: scenes/dungeons/ganontika
+ xml_path: assets/xml/scenes/dungeons/ganontika.xml
+- name: scenes/dungeons/ganontikasonogo
+ xml_path: assets/xml/scenes/dungeons/ganontikasonogo.xml
+- name: scenes/dungeons/gerudoway
+ xml_path: assets/xml/scenes/dungeons/gerudoway.xml
+- name: scenes/dungeons/HAKAdan
+ xml_path: assets/xml/scenes/dungeons/HAKAdan.xml
+- name: scenes/dungeons/HAKAdan_bs
+ xml_path: assets/xml/scenes/dungeons/HAKAdan_bs.xml
+- name: scenes/dungeons/HAKAdanCH
+ xml_path: assets/xml/scenes/dungeons/HAKAdanCH.xml
+- name: scenes/dungeons/HIDAN
+ xml_path: assets/xml/scenes/dungeons/HIDAN.xml
+- name: scenes/dungeons/ice_doukutu
+ xml_path: assets/xml/scenes/dungeons/ice_doukutu_v2.xml
+- name: scenes/dungeons/jyasinboss
+ xml_path: assets/xml/scenes/dungeons/jyasinboss.xml
+- name: scenes/dungeons/jyasinzou
+ xml_path: assets/xml/scenes/dungeons/jyasinzou.xml
+- name: scenes/dungeons/men
+ xml_path: assets/xml/scenes/dungeons/men.xml
+- name: scenes/dungeons/MIZUsin
+ xml_path: assets/xml/scenes/dungeons/MIZUsin.xml
+- name: scenes/dungeons/MIZUsin_bs
+ xml_path: assets/xml/scenes/dungeons/MIZUsin_bs.xml
+- name: scenes/dungeons/moribossroom
+ xml_path: assets/xml/scenes/dungeons/moribossroom.xml
+- name: scenes/dungeons/ydan
+ xml_path: assets/xml/scenes/dungeons/ydan.xml
+- name: scenes/dungeons/ydan_boss
+ xml_path: assets/xml/scenes/dungeons/ydan_boss.xml
+- name: scenes/indoors/bowling
+ xml_path: assets/xml/scenes/indoors/bowling.xml
+- name: scenes/indoors/daiyousei_izumi
+ xml_path: assets/xml/scenes/indoors/daiyousei_izumi.xml
+- name: scenes/indoors/hairal_niwa
+ xml_path: assets/xml/scenes/indoors/hairal_niwa.xml
+- name: scenes/indoors/hairal_niwa_n
+ xml_path: assets/xml/scenes/indoors/hairal_niwa_n.xml
+- name: scenes/indoors/hakasitarelay
+ xml_path: assets/xml/scenes/indoors/hakasitarelay.xml
+- name: scenes/indoors/hut
+ xml_path: assets/xml/scenes/indoors/hut.xml
+- name: scenes/indoors/hylia_labo
+ xml_path: assets/xml/scenes/indoors/hylia_labo.xml
+- name: scenes/indoors/impa
+ xml_path: assets/xml/scenes/indoors/impa.xml
+- name: scenes/indoors/kakariko
+ xml_path: assets/xml/scenes/indoors/kakariko.xml
+- name: scenes/indoors/kenjyanoma
+ xml_path: assets/xml/scenes/indoors/kenjyanoma.xml
+- name: scenes/indoors/kokiri_home
+ xml_path: assets/xml/scenes/indoors/kokiri_home.xml
+- name: scenes/indoors/kokiri_home3
+ xml_path: assets/xml/scenes/indoors/kokiri_home3.xml
+- name: scenes/indoors/kokiri_home4
+ xml_path: assets/xml/scenes/indoors/kokiri_home4.xml
+- name: scenes/indoors/kokiri_home5
+ xml_path: assets/xml/scenes/indoors/kokiri_home5.xml
+- name: scenes/indoors/labo
+ xml_path: assets/xml/scenes/indoors/labo.xml
+- name: scenes/indoors/link_home
+ xml_path: assets/xml/scenes/indoors/link_home.xml
+- name: scenes/indoors/mahouya
+ xml_path: assets/xml/scenes/indoors/mahouya.xml
+- name: scenes/indoors/malon_stable
+ xml_path: assets/xml/scenes/indoors/malon_stable.xml
+- name: scenes/indoors/miharigoya
+ xml_path: assets/xml/scenes/indoors/miharigoya.xml
+- name: scenes/indoors/nakaniwa
+ xml_path: assets/xml/scenes/indoors/nakaniwa.xml
+- name: scenes/indoors/souko
+ xml_path: assets/xml/scenes/indoors/souko.xml
+- name: scenes/indoors/syatekijyou
+ xml_path: assets/xml/scenes/indoors/syatekijyou.xml
+- name: scenes/indoors/takaraya
+ xml_path: assets/xml/scenes/indoors/takaraya.xml
+- name: scenes/indoors/tent
+ xml_path: assets/xml/scenes/indoors/tent.xml
+- name: scenes/indoors/tokinoma
+ xml_path: assets/xml/scenes/indoors/tokinoma.xml
+- name: scenes/indoors/yousei_izumi_tate
+ xml_path: assets/xml/scenes/indoors/yousei_izumi_tate.xml
+- name: scenes/indoors/yousei_izumi_yoko
+ xml_path: assets/xml/scenes/indoors/yousei_izumi_yoko.xml
+- name: scenes/misc/enrui
+ xml_path: assets/xml/scenes/misc/enrui.xml
+- name: scenes/misc/entra
+ xml_path: assets/xml/scenes/misc/entra.xml
+- name: scenes/misc/entra_n
+ xml_path: assets/xml/scenes/misc/entra_n.xml
+- name: scenes/misc/hakaana
+ xml_path: assets/xml/scenes/misc/hakaana.xml
+- name: scenes/misc/hakaana2
+ xml_path: assets/xml/scenes/misc/hakaana2.xml
+- name: scenes/misc/hakaana_ouke
+ xml_path: assets/xml/scenes/misc/hakaana_ouke.xml
+- name: scenes/misc/hiral_demo
+ xml_path: assets/xml/scenes/misc/hiral_demo.xml
+- name: scenes/misc/kakariko3
+ xml_path: assets/xml/scenes/misc/kakariko3.xml
+- name: scenes/misc/kakusiana
+ xml_path: assets/xml/scenes/misc/kakusiana.xml
+- name: scenes/misc/kinsuta
+ xml_path: assets/xml/scenes/misc/kinsuta.xml
+- name: scenes/misc/market_alley
+ xml_path: assets/xml/scenes/misc/market_alley.xml
+- name: scenes/misc/market_alley_n
+ xml_path: assets/xml/scenes/misc/market_alley_n.xml
+- name: scenes/misc/market_day
+ xml_path: assets/xml/scenes/misc/market_day.xml
+- name: scenes/misc/market_night
+ xml_path: assets/xml/scenes/misc/market_night.xml
+- name: scenes/misc/market_ruins
+ xml_path: assets/xml/scenes/misc/market_ruins.xml
+- name: scenes/misc/shrine
+ xml_path: assets/xml/scenes/misc/shrine.xml
+- name: scenes/misc/shrine_n
+ xml_path: assets/xml/scenes/misc/shrine_n.xml
+- name: scenes/misc/shrine_r
+ xml_path: assets/xml/scenes/misc/shrine_r.xml
+- name: scenes/misc/turibori
+ xml_path: assets/xml/scenes/misc/turibori.xml
+- name: scenes/overworld/ganon_tou
+ xml_path: assets/xml/scenes/overworld/ganon_tou.xml
+- name: scenes/overworld/spot00
+ xml_path: assets/xml/scenes/overworld/spot00.xml
+- name: scenes/overworld/spot01
+ xml_path: assets/xml/scenes/overworld/spot01.xml
+- name: scenes/overworld/spot02
+ xml_path: assets/xml/scenes/overworld/spot02.xml
+- name: scenes/overworld/spot03
+ xml_path: assets/xml/scenes/overworld/spot03.xml
+- name: scenes/overworld/spot04
+ xml_path: assets/xml/scenes/overworld/spot04.xml
+- name: scenes/overworld/spot05
+ xml_path: assets/xml/scenes/overworld/spot05.xml
+- name: scenes/overworld/spot06
+ xml_path: assets/xml/scenes/overworld/spot06.xml
+- name: scenes/overworld/spot07
+ xml_path: assets/xml/scenes/overworld/spot07.xml
+- name: scenes/overworld/spot08
+ xml_path: assets/xml/scenes/overworld/spot08.xml
+- name: scenes/overworld/spot09
+ xml_path: assets/xml/scenes/overworld/spot09.xml
+- name: scenes/overworld/spot10
+ xml_path: assets/xml/scenes/overworld/spot10.xml
+- name: scenes/overworld/spot11
+ xml_path: assets/xml/scenes/overworld/spot11.xml
+- name: scenes/overworld/spot12
+ xml_path: assets/xml/scenes/overworld/spot12.xml
+- name: scenes/overworld/spot13
+ xml_path: assets/xml/scenes/overworld/spot13.xml
+- name: scenes/overworld/spot15
+ xml_path: assets/xml/scenes/overworld/spot15.xml
+- name: scenes/overworld/spot16
+ xml_path: assets/xml/scenes/overworld/spot16_v2.xml
+- name: scenes/overworld/spot17
+ xml_path: assets/xml/scenes/overworld/spot17.xml
+- name: scenes/overworld/spot18
+ xml_path: assets/xml/scenes/overworld/spot18.xml
+- name: scenes/overworld/spot20
+ xml_path: assets/xml/scenes/overworld/spot20.xml
+- name: scenes/shops/alley_shop
+ xml_path: assets/xml/scenes/shops/alley_shop.xml
+- name: scenes/shops/drag
+ xml_path: assets/xml/scenes/shops/drag.xml
+- name: scenes/shops/face_shop
+ xml_path: assets/xml/scenes/shops/face_shop.xml
+- name: scenes/shops/golon
+ xml_path: assets/xml/scenes/shops/golon.xml
+- name: scenes/shops/kokiri_shop
+ xml_path: assets/xml/scenes/shops/kokiri_shop.xml
+- name: scenes/shops/night_shop
+ xml_path: assets/xml/scenes/shops/night_shop.xml
+- name: scenes/shops/shop1
+ xml_path: assets/xml/scenes/shops/shop1.xml
+- name: scenes/shops/zoora
+ xml_path: assets/xml/scenes/shops/zoora.xml
+- name: textures/backgrounds
+ xml_path: assets/xml/textures/backgrounds.xml
+- name: textures/do_action_static
+ xml_path: assets/xml/textures/do_action_static.xml
+- name: textures/icon_item_24_static
+ xml_path: assets/xml/textures/icon_item_24_static.xml
+- name: textures/icon_item_dungeon_static
+ xml_path: assets/xml/textures/icon_item_dungeon_static.xml
+- name: textures/icon_item_field_static
+ xml_path: assets/xml/textures/icon_item_field_static.xml
+- name: textures/icon_item_gameover_static
+ xml_path: assets/xml/textures/icon_item_gameover_static.xml
+- name: textures/icon_item_jpn_static
+ xml_path: assets/xml/textures/icon_item_jpn_static.xml
+- name: textures/icon_item_nes_static
+ xml_path: assets/xml/textures/icon_item_nes_static.xml
+- name: textures/icon_item_static
+ xml_path: assets/xml/textures/icon_item_static.xml
+- name: textures/item_name_static
+ xml_path: assets/xml/textures/item_name_static.xml
+- name: textures/kanji
+ xml_path: assets/xml/textures/kanji.xml
+- name: textures/map_48x85_static
+ xml_path: assets/xml/textures/map_48x85_static.xml
+- name: textures/map_grand_static
+ xml_path: assets/xml/textures/map_grand_static.xml
+- name: textures/map_i_static
+ xml_path: assets/xml/textures/map_i_static.xml
+- name: textures/map_name_static
+ xml_path: assets/xml/textures/map_name_static.xml
+- name: textures/message_static
+ xml_path: assets/xml/textures/message_static.xml
+- name: textures/message_texture_static
+ xml_path: assets/xml/textures/message_texture_static.xml
+- name: textures/nes_font_static
+ xml_path: assets/xml/textures/nes_font_static_ique_cn.xml
+- name: textures/nintendo_rogo_static
+ xml_path: assets/xml/textures/nintendo_rogo_static_v2.xml
+- name: textures/parameter_static
+ xml_path: assets/xml/textures/parameter_static.xml
+- name: textures/place_title_cards
+ xml_path: assets/xml/textures/place_title_cards.xml
+- name: textures/skyboxes
+ xml_path: assets/xml/textures/skyboxes.xml
+- name: textures/title_static
+ xml_path: assets/xml/textures/title_static.xml
diff --git a/baseroms/ique-cn/segments.csv b/baseroms/ique-cn/segments.csv
new file mode 100644
index 00000000000..e06853b6c2b
--- /dev/null
+++ b/baseroms/ique-cn/segments.csv
@@ -0,0 +1,1510 @@
+Name,VRAM start
+makerom,80000000
+boot,80000450
+dmadata,
+Audiobank,
+Audioseq,
+Audiotable,
+kanji,
+link_animetion,
+icon_item_static,
+icon_item_24_static,
+icon_item_field_static,
+icon_item_dungeon_static,
+icon_item_gameover_static,
+icon_item_jpn_static,
+icon_item_nes_static,
+item_name_static,
+map_name_static,
+do_action_static,
+message_static,
+message_texture_static,
+nes_font_static,
+jpn_message_data_static,
+nes_message_data_static,
+staff_message_data_static,
+map_grand_static,
+map_48x85_static,
+map_i_static,
+code,80018FA0
+ovl_title,80800000
+ovl_select,80800930
+ovl_opening,808035B0
+ovl_file_choose,80803700
+ovl_kaleido_scope,808141F0
+ovl_player_actor,80830290
+ovl_map_mark_data,80856A70
+ovl_En_Test,8085D5D0
+ovl_En_GirlA,80862E80
+ovl_En_Part,808657A0
+ovl_En_Light,80866E00
+ovl_En_Door,80867C00
+ovl_En_Box,80868A40
+ovl_En_Poh,8086A5A0
+ovl_En_Okuta,8086E790
+ovl_En_Bom,80870D70
+ovl_En_Wallmas,80871C40
+ovl_En_Dodongo,80873650
+ovl_En_Firefly,808763F0
+ovl_En_Horse,80878560
+ovl_En_Arrow,808847C0
+ovl_En_Elf,80885EC0
+ovl_En_Niw,8088A880
+ovl_En_Tite,8088DBB0
+ovl_En_Reeba,80890950
+ovl_En_Peehat,808923C0
+ovl_En_Holl,80895AC0
+ovl_En_Scene_Change,80896A90
+ovl_En_Zf,80896BC0
+ovl_En_Hata,8089D6B0
+ovl_Boss_Dodongo,8089DC40
+ovl_Boss_Goma,808A7740
+ovl_En_Zl1,808AD6E0
+ovl_En_Viewer,808B14F0
+ovl_En_Goma,808B43B0
+ovl_Bg_Pushbox,808B7060
+ovl_En_Bubble,808B7360
+ovl_Door_Shutter,808B8780
+ovl_En_Dodojr,808BAA40
+ovl_En_Bdfire,808BC8E0
+ovl_En_Boom,808BD480
+ovl_En_Torch2,808BDD50
+ovl_En_Bili,808C04F0
+ovl_En_Tp,808C27C0
+ovl_En_St,808C4630
+ovl_En_Bw,808C72A0
+ovl_En_Eiyer,808CA630
+ovl_En_River_Sound,808CC290
+ovl_En_Horse_Normal,808CCC20
+ovl_En_Ossan,808CF240
+ovl_Bg_Treemouth,808D5820
+ovl_Bg_Dodoago,808D6E80
+ovl_Bg_Hidan_Dalm,808D7C30
+ovl_Bg_Hidan_Hrock,808D8480
+ovl_En_Horse_Ganon,808D8CB0
+ovl_Bg_Hidan_Rock,808D9A30
+ovl_Bg_Hidan_Rsekizou,808DAB30
+ovl_Bg_Hidan_Sekizou,808DB710
+ovl_Bg_Hidan_Sima,808DCB60
+ovl_Bg_Hidan_Syoku,808DDA60
+ovl_En_Xc,808DDEC0
+ovl_Bg_Hidan_Curtain,808E4650
+ovl_Bg_Spot00_Hanebasi,808E50F0
+ovl_En_Mb,808E6200
+ovl_En_Bombf,808EA430
+ovl_Bg_Hidan_Firewall,808EB8C0
+ovl_Bg_Dy_Yoseizo,808EC020
+ovl_En_Zl2,808EEE10
+ovl_Bg_Hidan_Fslift,808F3510
+ovl_En_OE2,808F39E0
+ovl_Bg_Ydan_Hasi,808F3AC0
+ovl_Bg_Ydan_Maruta,808F4270
+ovl_Boss_Ganondrof,808F4950
+ovl_En_Am,808F96E0
+ovl_En_Dekubaba,808FBAE0
+ovl_En_M_Fire1,808FF590
+ovl_En_M_Thunder,808FF730
+ovl_Bg_Ddan_Jd,80900D30
+ovl_Bg_Breakwall,80901380
+ovl_En_Jj,809021F0
+ovl_En_Horse_Zelda,809037C0
+ovl_Bg_Ddan_Kd,809042B0
+ovl_Door_Warp1,80904BA0
+ovl_Obj_Syokudai,80908EB0
+ovl_Item_B_Heart,80909B00
+ovl_En_Dekunuts,80909F10
+ovl_Bg_Menkuri_Kaiten,8090B710
+ovl_Bg_Menkuri_Eye,8090B8A0
+ovl_En_Vali,8090BD40
+ovl_Bg_Mizu_Movebg,8090E400
+ovl_Bg_Mizu_Water,8090F590
+ovl_Arms_Hook,80910260
+ovl_En_fHG,80910FD0
+ovl_Bg_Mori_Hineri,80913900
+ovl_En_Bb,80914650
+ovl_Bg_Toki_Hikari,80918330
+ovl_En_Yukabyun,809190D0
+ovl_Bg_Toki_Swd,809196E0
+ovl_En_Fhg_Fire,8091AD30
+ovl_Bg_Mjin,8091D3D0
+ovl_Bg_Hidan_Kousi,8091D7C0
+ovl_Door_Toki,8091DD50
+ovl_Bg_Hidan_Hamstep,8091DEB0
+ovl_En_Bird,8091ED60
+ovl_En_Wood02,8091F220
+ovl_En_Lightbox,80920400
+ovl_En_Pu_box,80920880
+ovl_En_Trap,80920BC0
+ovl_En_Arow_Trap,80921E60
+ovl_En_Vase,80921FB0
+ovl_En_Ta,809220B0
+ovl_En_Tk,80925A70
+ovl_Bg_Mori_Bigst,809278A0
+ovl_Bg_Mori_Elevator,809281D0
+ovl_Bg_Mori_Kaitenkabe,80928CC0
+ovl_Bg_Mori_Rakkatenjo,80929330
+ovl_En_Vm,80929CB0
+ovl_Demo_Effect,8092B570
+ovl_Demo_Kankyo,80931110
+ovl_Bg_Hidan_Fwbig,80934E00
+ovl_En_Floormas,80935AE0
+ovl_En_Heishi1,80938EC0
+ovl_En_Rd,8093A3D0
+ovl_En_Po_Sisters,8093CC90
+ovl_Bg_Heavy_Block,80941980
+ovl_Bg_Po_Event,80943270
+ovl_Obj_Mure,809450B0
+ovl_En_Sw,809460C0
+ovl_Boss_Fd,809498B0
+ovl_Object_Kankyo,80950C10
+ovl_En_Du,80953E90
+ovl_En_Fd,80955920
+ovl_En_Horse_Link_Child,809585C0
+ovl_Door_Ana,8095A3C0
+ovl_Bg_Spot02_Objects,8095AA30
+ovl_Bg_Haka,8095BD90
+ovl_Magic_Wind,8095C450
+ovl_Magic_Fire,8095E150
+ovl_En_Ru1,80960450
+ovl_Boss_Fd2,80967AF0
+ovl_En_Fd_Fire,8096B820
+ovl_En_Dh,8096C530
+ovl_En_Dha,8096E010
+ovl_En_Rl,8096F010
+ovl_En_Encount1,8096FEF0
+ovl_Demo_Du,80970A50
+ovl_Demo_Im,80974230
+ovl_Demo_Tre_Lgt,809781A0
+ovl_En_Fw,809788B0
+ovl_Bg_Vb_Sima,8097A070
+ovl_En_Vb_Ball,8097A790
+ovl_Bg_Haka_Megane,8097B940
+ovl_Bg_Haka_MeganeBG,8097BD40
+ovl_Bg_Haka_Ship,8097C400
+ovl_Bg_Haka_Sgami,8097CE50
+ovl_En_Heishi2,8097DA70
+ovl_En_Encount2,8097FC70
+ovl_En_Fire_Rock,80980EA0
+ovl_En_Brob,80981FB0
+ovl_Mir_Ray,809830A0
+ovl_Bg_Spot09_Obj,80984950
+ovl_Bg_Spot18_Obj,80984E70
+ovl_Boss_Va,80985740
+ovl_Bg_Haka_Tubo,8099C9D0
+ovl_Bg_Haka_Trap,8099D3F0
+ovl_Bg_Haka_Huta,8099E9C0
+ovl_Bg_Haka_Zou,8099F460
+ovl_Bg_Spot17_Funen,809A0650
+ovl_En_Syateki_Itm,809A08A0
+ovl_En_Syateki_Man,809A1640
+ovl_En_Tana,809A2400
+ovl_En_Nb,809A26B0
+ovl_Boss_Mo,809A6C80
+ovl_En_Sb,809B7260
+ovl_En_Bigokuta,809B86A0
+ovl_En_Karebaba,809BB1A0
+ovl_Bg_Bdan_Objects,809BCA90
+ovl_Demo_Sa,809BDD60
+ovl_Demo_Go,809C0880
+ovl_En_In,809C15D0
+ovl_En_Tr,809C4370
+ovl_Bg_Spot16_Bombstone,809C5C70
+ovl_Bg_Hidan_Kowarerukabe,809C71C0
+ovl_Bg_Bombwall,809C80A0
+ovl_En_Ru2,809C8960
+ovl_Obj_Dekujr,809CB6E0
+ovl_Bg_Mizu_Uzu,809CBD20
+ovl_Bg_Spot06_Objects,809CBEF0
+ovl_Bg_Ice_Objects,809CD2F0
+ovl_Bg_Haka_Water,809CE230
+ovl_En_Ma2,809CEA30
+ovl_En_Bom_Chu,809CFA90
+ovl_En_Horse_Game_Check,809D1130
+ovl_Boss_Tw,809D2200
+ovl_En_Rr,809E7DD0
+ovl_En_Ba,809EA300
+ovl_En_Bx,809EC1D0
+ovl_En_Anubice,809ECCD0
+ovl_En_Anubice_Fire,809EDF80
+ovl_Bg_Mori_Hashigo,809EED40
+ovl_Bg_Mori_Hashira4,809EF600
+ovl_Bg_Mori_Idomizu,809EFB90
+ovl_Bg_Spot16_Doughnut,809F01D0
+ovl_Bg_Bdan_Switch,809F0790
+ovl_En_Ma1,809F1BC0
+ovl_Boss_Ganon,809F2EA0
+ovl_Boss_Sst,80A18CD0
+ovl_En_Ny,80A252A0
+ovl_En_Fr,80A26BE0
+ovl_Item_Shield,80A29670
+ovl_Bg_Ice_Shelter,80A2A080
+ovl_En_Ice_Hono,80A2B2C0
+ovl_Item_Ocarina,80A2C4B0
+ovl_Magic_Dark,80A2CC80
+ovl_Demo_6K,80A2E4D0
+ovl_En_Anubice_Tag,80A31230
+ovl_Bg_Haka_Gate,80A31500
+ovl_Bg_Spot15_Saku,80A325A0
+ovl_Bg_Jya_Goroiwa,80A328E0
+ovl_Bg_Jya_Zurerukabe,80A33060
+ovl_Bg_Jya_Cobra,80A33710
+ovl_Bg_Jya_Kanaami,80A35450
+ovl_Fishing,80A35800
+ovl_Obj_Oshihiki,80A4ED40
+ovl_Bg_Gate_Shutter,80A507F0
+ovl_Eff_Dust,80A50C80
+ovl_Bg_Spot01_Fusya,80A52050
+ovl_Bg_Spot01_Idohashira,80A522F0
+ovl_Bg_Spot01_Idomizu,80A52EF0
+ovl_Bg_Po_Syokudai,80A53210
+ovl_Bg_Ganon_Otyuka,80A53B80
+ovl_Bg_Spot15_Rrbox,80A561C0
+ovl_Bg_Umajump,80A56FA0
+ovl_En_Insect,80A57130
+ovl_En_Butte,80A59650
+ovl_En_Fish,80A5AC20
+ovl_Bg_Spot08_Iceblock,80A5CD30
+ovl_Item_Etcetera,80A5DD70
+ovl_Arrow_Fire,80A5E640
+ovl_Arrow_Ice,80A60520
+ovl_Arrow_Light,80A62420
+ovl_Obj_Kibako,80A64330
+ovl_Obj_Tsubo,80A65030
+ovl_En_Wonder_Item,80A66020
+ovl_En_Ik,80A66D50
+ovl_Demo_Ik,80A6B3B0
+ovl_En_Skj,80A6C8C0
+ovl_En_Skjneedle,80A70210
+ovl_En_G_Switch,80A70520
+ovl_Demo_Ext,80A71D40
+ovl_Demo_Shd,80A72690
+ovl_En_Dns,80A74AA0
+ovl_Elf_Msg,80A75E30
+ovl_En_Honotrap,80A76420
+ovl_En_Tubo_Trap,80A77980
+ovl_Obj_Ice_Poly,80A78620
+ovl_Bg_Spot03_Taki,80A78FD0
+ovl_Bg_Spot07_Taki,80A798F0
+ovl_En_Fz,80A79EE0
+ovl_En_Po_Relay,80A7BEF0
+ovl_Bg_Relay_Objects,80A7D600
+ovl_En_Diving_Game,80A7DDB0
+ovl_En_Kusa,80A7F760
+ovl_Obj_Bean,80A80C40
+ovl_Obj_Bombiwa,80A833D0
+ovl_Obj_Switch,80A83940
+ovl_Obj_Elevator,80A85720
+ovl_Obj_Lift,80A85AE0
+ovl_Obj_Hsblock,80A86500
+ovl_En_Okarina_Tag,80A86AD0
+ovl_En_Yabusame_Mark,80A87FD0
+ovl_En_Goroiwa,80A886A0
+ovl_En_Ex_Ruppy,80A8AA60
+ovl_En_Toryo,80A8BB20
+ovl_En_Daiku,80A8C7B0
+ovl_En_Nwc,80A8DEF0
+ovl_En_Blkobj,80A8E910
+ovl_Item_Inbox,80A8EE70
+ovl_En_Ge1,80A8EFD0
+ovl_Obj_Blockstop,80A91000
+ovl_En_Sda,80A911A0
+ovl_En_Clear_Tag,80A92890
+ovl_En_Niw_Lady,80A9DE30
+ovl_En_Gm,80A9F730
+ovl_En_Ms,80AA0460
+ovl_En_Hs,80AA0B50
+ovl_Bg_Ingate,80AA16F0
+ovl_En_Kanban,80AA1A80
+ovl_En_Heishi3,80AA4BD0
+ovl_En_Syateki_Niw,80AA55A0
+ovl_En_Attack_Niw,80AA7630
+ovl_Bg_Spot01_Idosoko,80AA8890
+ovl_En_Sa,80AA8AA0
+ovl_En_Wonder_Talk,80AAAD10
+ovl_Bg_Gjyo_Bridge,80AAB3A0
+ovl_En_Ds,80AAB890
+ovl_En_Mk,80AAC4B0
+ovl_En_Bom_Bowl_Man,80AAD340
+ovl_En_Bom_Bowl_Pit,80AAE880
+ovl_En_Owl,80AAF1F0
+ovl_En_Ishi,80AB2D90
+ovl_Obj_Hana,80ABBEE0
+ovl_Obj_Lightswitch,80ABC1F0
+ovl_Obj_Mure2,80ABD620
+ovl_En_Go,80ABE040
+ovl_En_Fu,80AC2680
+ovl_En_Changer,80AC33D0
+ovl_Bg_Jya_Megami,80AC3DB0
+ovl_Bg_Jya_Lift,80AC4FA0
+ovl_Bg_Jya_Bigmirror,80AC54F0
+ovl_Bg_Jya_Bombchuiwa,80AC5D40
+ovl_Bg_Jya_Amishutter,80AC6880
+ovl_Bg_Jya_Bombiwa,80AC6C10
+ovl_Bg_Spot18_Basket,80AC71D0
+ovl_En_Ganon_Organ,80AC81C0
+ovl_En_Siofuki,80ACF200
+ovl_En_Stream,80ACFFB0
+ovl_En_Mm,80AD0540
+ovl_En_Ko,80AD1BA0
+ovl_En_Kz,80AD5CE0
+ovl_En_Weather_Tag,80AD7280
+ovl_Bg_Sst_Floor,80AD8170
+ovl_En_Ani,80AD86D0
+ovl_En_Ex_Item,80AD9440
+ovl_Bg_Jya_Ironobj,80ADA5C0
+ovl_En_Js,80ADB370
+ovl_En_Jsjutan,80ADBD40
+ovl_En_Cs,80AE1670
+ovl_En_Md,80AE28A0
+ovl_En_Hy,80AE4F10
+ovl_En_Ganon_Mant,80AE8850
+ovl_En_Okarina_Effect,80AECA80
+ovl_En_Mag,80AECE40
+ovl_Door_Gerudo,80AF1E80
+ovl_Elf_Msg2,80AF2470
+ovl_Demo_Gt,80AF28E0
+ovl_En_Po_Field,80AF7EF0
+ovl_Efc_Erupc,80AFB980
+ovl_Bg_Zg,80AFC470
+ovl_En_Heishi4,80AFC8C0
+ovl_En_Zl3,80AFD7C0
+ovl_Boss_Ganon2,80B05610
+ovl_En_Kakasi,80B18480
+ovl_En_Takara_Man,80B191C0
+ovl_Obj_Makeoshihiki,80B19A80
+ovl_Oceff_Spot,80B19F10
+ovl_End_Title,80B1AE40
+ovl_En_Torch,80B20880
+ovl_Demo_Ec,80B20970
+ovl_Shot_Sun,80B241D0
+ovl_En_Dy_Extra,80B24890
+ovl_En_Wonder_Talk2,80B24E30
+ovl_En_Ge2,80B254D0
+ovl_Obj_Roomtimer,80B26E70
+ovl_En_Ssh,80B270C0
+ovl_En_Sth,80B296B0
+ovl_Oceff_Wipe,80B2D770
+ovl_Effect_Ss_Dust,80B2E4F0
+ovl_Effect_Ss_KiraKira,80B2ED30
+ovl_Effect_Ss_Bomb,80B2F3A0
+ovl_Effect_Ss_Bomb2,80B2F7D0
+ovl_Effect_Ss_Blast,80B300D0
+ovl_Effect_Ss_G_Spk,80B30460
+ovl_Effect_Ss_D_Fire,80B30A10
+ovl_Effect_Ss_Bubble,80B30F00
+ovl_Effect_Ss_G_Ripple,80B31380
+ovl_Effect_Ss_G_Splash,80B318E0
+ovl_Effect_Ss_G_Magma,80B31D90
+ovl_Effect_Ss_G_Fire,80B31FF0
+ovl_Effect_Ss_Lightning,80B32280
+ovl_Effect_Ss_Dt_Bubble,80B32950
+ovl_Effect_Ss_Hahen,80B32EE0
+ovl_Effect_Ss_Stick,80B33520
+ovl_Effect_Ss_Sibuki,80B338C0
+ovl_Effect_Ss_Sibuki2,80B33F90
+ovl_Effect_Ss_G_Magma2,80B342C0
+ovl_Effect_Ss_Stone1,80B347D0
+ovl_Effect_Ss_HitMark,80B34B50
+ovl_Effect_Ss_Fhg_Flash,80B350A0
+ovl_Effect_Ss_K_Fire,80B36020
+ovl_Effect_Ss_Solder_Srch_Ball,80B36460
+ovl_Effect_Ss_Kakera,80B36610
+ovl_Effect_Ss_Ice_Piece,80B376A0
+ovl_Effect_Ss_En_Ice,80B37AE0
+ovl_Effect_Ss_Fire_Tail,80B383A0
+ovl_Effect_Ss_En_Fire,80B38AA0
+ovl_Effect_Ss_Extra,80B391F0
+ovl_Effect_Ss_Fcircle,80B395B0
+ovl_Effect_Ss_Dead_Db,80B39A60
+ovl_Effect_Ss_Dead_Dd,80B39F40
+ovl_Effect_Ss_Dead_Ds,80B3A4D0
+ovl_Effect_Ss_Dead_Sound,80B3A950
+ovl_Oceff_Storm,80B3AA90
+ovl_En_Weiyer,80B3C640
+ovl_Bg_Spot05_Soko,80B3E040
+ovl_Bg_Jya_1flift,80B3E360
+ovl_Bg_Jya_Haheniron,80B3E9F0
+ovl_Bg_Spot12_Gate,80B3F1E0
+ovl_Bg_Spot12_Saku,80B3F5F0
+ovl_En_Hintnuts,80B3FAB0
+ovl_En_Nutsball,80B414E0
+ovl_Bg_Spot00_Break,80B41B00
+ovl_En_Shopnuts,80B41CA0
+ovl_En_It,80B42BB0
+ovl_En_GeldB,80B42D40
+ovl_Oceff_Wipe2,80B480F0
+ovl_Oceff_Wipe3,80B49860
+ovl_En_Niw_Girl,80B4AFB0
+ovl_En_Dog,80B4BA80
+ovl_En_Si,80B4CC30
+ovl_Bg_Spot01_Objects2,80B4D130
+ovl_Obj_Comb,80B4D5F0
+ovl_Bg_Spot11_Bakudankabe,80B4DE50
+ovl_Obj_Kibako2,80B4E490
+ovl_En_Dnt_Demo,80B4EB50
+ovl_En_Dnt_Jiji,80B4F870
+ovl_En_Dnt_Nomal,80B50D90
+ovl_En_Guest,80B53B90
+ovl_Bg_Bom_Guard,80B54530
+ovl_En_Hs2,80B54750
+ovl_Demo_Kekkai,80B54D30
+ovl_Bg_Spot08_Bakudankabe,80B56020
+ovl_Bg_Spot17_Bakudankabe,80B566C0
+ovl_Obj_Mure3,80B56DB0
+ovl_En_Tg,80B57580
+ovl_En_Mu,80B57C60
+ovl_En_Go2,80B58580
+ovl_En_Wf,80B5E5C0
+ovl_En_Skb,80B628D0
+ovl_Demo_Gj,80B641C0
+ovl_Demo_Geff,80B67E70
+ovl_Bg_Gnd_Firemeiro,80B68690
+ovl_Bg_Gnd_Darkmeiro,80B68BE0
+ovl_Bg_Gnd_Soulmeiro,80B693A0
+ovl_Bg_Gnd_Nisekabe,80B69C00
+ovl_Bg_Gnd_Iceblock,80B69D70
+ovl_Bg_Ydan_Sp,80B6AE70
+ovl_En_Gb,80B6C590
+ovl_En_Gs,80B6DCC0
+ovl_Bg_Mizu_Bwall,80B6FB30
+ovl_Bg_Mizu_Shutter,80B71000
+ovl_En_Daiku_Kakariko,80B71800
+ovl_Bg_Bowl_Wall,80B72BC0
+ovl_En_Wall_Tubo,80B73540
+ovl_En_Po_Desert,80B73A30
+ovl_En_Crow,80B747F0
+ovl_Door_Killer,80B75E90
+ovl_Bg_Spot11_Oasis,80B77400
+ovl_Bg_Spot18_Futa,80B77B30
+ovl_Bg_Spot18_Shutter,80B77CD0
+ovl_En_Ma3,80B78220
+ovl_En_Cow,80B791D0
+ovl_Bg_Ice_Turara,80B7A630
+ovl_Bg_Ice_Shutter,80B7AE60
+ovl_En_Kakasi2,80B7B2D0
+ovl_En_Kakasi3,80B7B9F0
+ovl_Oceff_Wipe4,80B7CAD0
+ovl_En_Eg,80B7DAB0
+ovl_Bg_Menkuri_Nisekabe,80B7DC60
+ovl_En_Zo,80B7DDB0
+ovl_Effect_Ss_Ice_Smoke,80B80370
+ovl_Obj_Makekinsuta,80B80850
+ovl_En_Ge3,80B809A0
+ovl_Obj_Timeblock,80B815E0
+ovl_Obj_Hamishi,80B82230
+ovl_En_Zl4,80B82A80
+ovl_En_Mm2,80B874B0
+ovl_Bg_Jya_Block,80B88270
+ovl_Obj_Warp2block,80B884E0
+gameplay_keep,
+gameplay_field_keep,
+gameplay_dangeon_keep,
+gameplay_object_exchange_static,
+object_link_boy,
+object_link_child,
+object_box,
+object_human,
+object_okuta,
+object_poh,
+object_wallmaster,
+object_dy_obj,
+object_firefly,
+object_dodongo,
+object_fire,
+object_niw,
+object_tite,
+object_reeba,
+object_peehat,
+object_kingdodongo,
+object_horse,
+object_zf,
+object_goma,
+object_zl1,
+object_gol,
+object_bubble,
+object_dodojr,
+object_torch2,
+object_bl,
+object_tp,
+object_oA1,
+object_st,
+object_bw,
+object_ei,
+object_horse_normal,
+object_oB1,
+object_o_anime,
+object_spot04_objects,
+object_ddan_objects,
+object_hidan_objects,
+object_horse_ganon,
+object_oA2,
+object_spot00_objects,
+object_mb,
+object_bombf,
+object_sk2,
+object_oE1,
+object_oE_anime,
+object_oE2,
+object_ydan_objects,
+object_gnd,
+object_am,
+object_dekubaba,
+object_oA3,
+object_oA4,
+object_oA5,
+object_oA6,
+object_oA7,
+object_jj,
+object_oA8,
+object_oA9,
+object_oB2,
+object_oB3,
+object_oB4,
+object_horse_zelda,
+object_opening_demo1,
+object_warp1,
+object_b_heart,
+object_dekunuts,
+object_oE3,
+object_oE4,
+object_menkuri_objects,
+object_oE5,
+object_oE6,
+object_oE7,
+object_oE8,
+object_oE9,
+object_oE10,
+object_oE11,
+object_oE12,
+object_vali,
+object_oA10,
+object_oA11,
+object_mizu_objects,
+object_fhg,
+object_ossan,
+object_mori_hineri1,
+object_Bb,
+object_toki_objects,
+object_yukabyun,
+object_zl2,
+object_mjin,
+object_mjin_flash,
+object_mjin_dark,
+object_mjin_flame,
+object_mjin_ice,
+object_mjin_soul,
+object_mjin_wind,
+object_mjin_oka,
+object_haka_objects,
+object_spot06_objects,
+object_ice_objects,
+object_relay_objects,
+object_mori_hineri1a,
+object_mori_hineri2,
+object_mori_hineri2a,
+object_mori_objects,
+object_mori_tex,
+object_spot08_obj,
+object_warp2,
+object_hata,
+object_bird,
+object_wood02,
+object_lightbox,
+object_pu_box,
+object_trap,
+object_vase,
+object_im,
+object_ta,
+object_tk,
+object_xc,
+object_vm,
+object_bv,
+object_hakach_objects,
+object_efc_crystal_light,
+object_efc_fire_ball,
+object_efc_flash,
+object_efc_lgt_shower,
+object_efc_star_field,
+object_god_lgt,
+object_light_ring,
+object_triforce_spot,
+object_medal,
+object_bdan_objects,
+object_sd,
+object_rd,
+object_po_sisters,
+object_heavy_object,
+object_gndd,
+object_fd,
+object_du,
+object_fw,
+object_horse_link_child,
+object_spot02_objects,
+object_haka,
+object_ru1,
+object_syokudai,
+object_fd2,
+object_dh,
+object_rl,
+object_efc_tw,
+object_demo_tre_lgt,
+object_gi_key,
+object_mir_ray,
+object_brob,
+object_gi_jewel,
+object_spot09_obj,
+object_spot18_obj,
+object_bdoor,
+object_spot17_obj,
+object_shop_dungen,
+object_nb,
+object_mo,
+object_sb,
+object_gi_melody,
+object_gi_heart,
+object_gi_compass,
+object_gi_bosskey,
+object_gi_medal,
+object_gi_nuts,
+object_sa,
+object_gi_hearts,
+object_gi_arrowcase,
+object_gi_bombpouch,
+object_in,
+object_tr,
+object_spot16_obj,
+object_oE1s,
+object_oE4s,
+object_os_anime,
+object_gi_bottle,
+object_gi_stick,
+object_gi_map,
+object_oF1d_map,
+object_ru2,
+object_gi_shield_1,
+object_dekujr,
+object_gi_magicpot,
+object_gi_bomb_1,
+object_oF1s,
+object_ma2,
+object_gi_purse,
+object_hni,
+object_tw,
+object_rr,
+object_bxa,
+object_anubice,
+object_gi_gerudo,
+object_gi_arrow,
+object_gi_bomb_2,
+object_gi_egg,
+object_gi_scale,
+object_gi_shield_2,
+object_gi_hookshot,
+object_gi_ocarina,
+object_gi_milk,
+object_ma1,
+object_ganon,
+object_sst,
+object_ny,
+object_fr,
+object_gi_pachinko,
+object_gi_boomerang,
+object_gi_bow,
+object_gi_glasses,
+object_gi_liquid,
+object_ani,
+object_demo_6k,
+object_gi_shield_3,
+object_gi_letter,
+object_spot15_obj,
+object_jya_obj,
+object_gi_clothes,
+object_gi_bean,
+object_gi_fish,
+object_gi_saw,
+object_gi_hammer,
+object_gi_grass,
+object_gi_longsword,
+object_spot01_objects,
+object_md,
+object_km1,
+object_kw1,
+object_zo,
+object_kz,
+object_umajump,
+object_masterkokiri,
+object_masterkokirihead,
+object_mastergolon,
+object_masterzoora,
+object_aob,
+object_ik,
+object_ahg,
+object_cne,
+object_gi_niwatori,
+object_skj,
+object_gi_bottle_letter,
+object_bji,
+object_bba,
+object_gi_ocarina_0,
+object_ds,
+object_ane,
+object_boj,
+object_spot03_object,
+object_spot07_object,
+object_fz,
+object_bob,
+object_ge1,
+object_yabusame_point,
+object_gi_boots_2,
+object_gi_seed,
+object_gnd_magic,
+object_d_elevator,
+object_d_hsblock,
+object_d_lift,
+object_mamenoki,
+object_goroiwa,
+object_toryo,
+object_daiku,
+object_nwc,
+object_blkobj,
+object_gm,
+object_ms,
+object_hs,
+object_ingate,
+object_lightswitch,
+object_kusa,
+object_tsubo,
+object_gi_gloves,
+object_gi_coin,
+object_kanban,
+object_gjyo_objects,
+object_owl,
+object_mk,
+object_fu,
+object_gi_ki_tan_mask,
+object_gi_redead_mask,
+object_gi_skj_mask,
+object_gi_rabit_mask,
+object_gi_truth_mask,
+object_ganon_objects,
+object_siofuki,
+object_stream,
+object_mm,
+object_fa,
+object_os,
+object_gi_eye_lotion,
+object_gi_powder,
+object_gi_mushroom,
+object_gi_ticketstone,
+object_gi_brokensword,
+object_js,
+object_cs,
+object_gi_prescription,
+object_gi_bracelet,
+object_gi_soldout,
+object_gi_frog,
+object_mag,
+object_door_gerudo,
+object_gt,
+object_efc_erupc,
+object_zl2_anime1,
+object_zl2_anime2,
+object_gi_golonmask,
+object_gi_zoramask,
+object_gi_gerudomask,
+object_ganon2,
+object_ka,
+object_ts,
+object_zg,
+object_gi_hoverboots,
+object_gi_m_arrow,
+object_ds2,
+object_ec,
+object_fish,
+object_gi_sutaru,
+object_gi_goddess,
+object_ssh,
+object_bigokuta,
+object_bg,
+object_spot05_objects,
+object_spot12_obj,
+object_bombiwa,
+object_hintnuts,
+object_rs,
+object_spot00_break,
+object_gla,
+object_shopnuts,
+object_geldb,
+object_gr,
+object_dog,
+object_jya_iron,
+object_jya_door,
+object_spot01_objects2,
+object_spot11_obj,
+object_kibako2,
+object_dns,
+object_dnk,
+object_gi_fire,
+object_gi_insect,
+object_gi_butterfly,
+object_gi_ghost,
+object_gi_soul,
+object_bowl,
+object_po_field,
+object_demo_kekkai,
+object_efc_doughnut,
+object_gi_dekupouch,
+object_ganon_anime1,
+object_ganon_anime2,
+object_ganon_anime3,
+object_gi_rupy,
+object_spot01_matoya,
+object_spot01_matoyab,
+object_po_composer,
+object_mu,
+object_wf,
+object_skb,
+object_gj,
+object_geff,
+object_haka_door,
+object_gs,
+object_ps,
+object_bwall,
+object_crow,
+object_cow,
+object_cob,
+object_gi_sword_1,
+object_door_killer,
+object_ouke_haka,
+object_timeblock,
+object_zl4,
+g_pn_01,
+g_pn_02,
+g_pn_03,
+g_pn_04,
+g_pn_05,
+g_pn_06,
+g_pn_07,
+g_pn_08,
+g_pn_09,
+g_pn_10,
+g_pn_11,
+g_pn_12,
+g_pn_13,
+g_pn_14,
+g_pn_15,
+g_pn_16,
+g_pn_17,
+g_pn_18,
+g_pn_19,
+g_pn_20,
+g_pn_21,
+g_pn_22,
+g_pn_23,
+g_pn_24,
+g_pn_25,
+g_pn_26,
+g_pn_27,
+g_pn_28,
+g_pn_29,
+g_pn_30,
+g_pn_31,
+g_pn_32,
+g_pn_33,
+g_pn_34,
+g_pn_35,
+g_pn_36,
+g_pn_37,
+g_pn_38,
+g_pn_39,
+g_pn_40,
+g_pn_41,
+g_pn_42,
+g_pn_43,
+g_pn_44,
+g_pn_45,
+g_pn_46,
+g_pn_47,
+g_pn_48,
+g_pn_49,
+g_pn_50,
+g_pn_51,
+g_pn_52,
+g_pn_53,
+g_pn_54,
+g_pn_55,
+g_pn_56,
+g_pn_57,
+z_select_static,
+nintendo_rogo_static,
+title_static,
+parameter_static,
+vr_fine0_static,
+vr_fine0_pal_static,
+vr_fine1_static,
+vr_fine1_pal_static,
+vr_fine2_static,
+vr_fine2_pal_static,
+vr_fine3_static,
+vr_fine3_pal_static,
+vr_cloud0_static,
+vr_cloud0_pal_static,
+vr_cloud1_static,
+vr_cloud1_pal_static,
+vr_cloud2_static,
+vr_cloud2_pal_static,
+vr_cloud3_static,
+vr_cloud3_pal_static,
+vr_holy0_static,
+vr_holy0_pal_static,
+vr_holy1_static,
+vr_holy1_pal_static,
+vr_MDVR_static,
+vr_MDVR_pal_static,
+vr_MNVR_static,
+vr_MNVR_pal_static,
+vr_RUVR_static,
+vr_RUVR_pal_static,
+vr_LHVR_static,
+vr_LHVR_pal_static,
+vr_KHVR_static,
+vr_KHVR_pal_static,
+vr_K3VR_static,
+vr_K3VR_pal_static,
+vr_K4VR_static,
+vr_K4VR_pal_static,
+vr_K5VR_static,
+vr_K5VR_pal_static,
+vr_SP1a_static,
+vr_SP1a_pal_static,
+vr_MLVR_static,
+vr_MLVR_pal_static,
+vr_KKRVR_static,
+vr_KKRVR_pal_static,
+vr_KR3VR_static,
+vr_KR3VR_pal_static,
+vr_IPVR_static,
+vr_IPVR_pal_static,
+vr_KSVR_static,
+vr_KSVR_pal_static,
+vr_GLVR_static,
+vr_GLVR_pal_static,
+vr_ZRVR_static,
+vr_ZRVR_pal_static,
+vr_DGVR_static,
+vr_DGVR_pal_static,
+vr_ALVR_static,
+vr_ALVR_pal_static,
+vr_NSVR_static,
+vr_NSVR_pal_static,
+vr_LBVR_static,
+vr_LBVR_pal_static,
+vr_TTVR_static,
+vr_TTVR_pal_static,
+vr_FCVR_static,
+vr_FCVR_pal_static,
+elf_message_field,
+elf_message_ydan,
+ydan_scene,
+ydan_room_0,
+ydan_room_1,
+ydan_room_2,
+ydan_room_3,
+ydan_room_4,
+ydan_room_5,
+ydan_room_6,
+ydan_room_7,
+ydan_room_8,
+ydan_room_9,
+ydan_room_10,
+ydan_room_11,
+ddan_scene,
+ddan_room_0,
+ddan_room_1,
+ddan_room_2,
+ddan_room_3,
+ddan_room_4,
+ddan_room_5,
+ddan_room_6,
+ddan_room_7,
+ddan_room_8,
+ddan_room_9,
+ddan_room_10,
+ddan_room_11,
+ddan_room_12,
+ddan_room_13,
+ddan_room_14,
+ddan_room_15,
+ddan_room_16,
+bdan_scene,
+bdan_room_0,
+bdan_room_1,
+bdan_room_2,
+bdan_room_3,
+bdan_room_4,
+bdan_room_5,
+bdan_room_6,
+bdan_room_7,
+bdan_room_8,
+bdan_room_9,
+bdan_room_10,
+bdan_room_11,
+bdan_room_12,
+bdan_room_13,
+bdan_room_14,
+bdan_room_15,
+Bmori1_scene,
+Bmori1_room_0,
+Bmori1_room_1,
+Bmori1_room_2,
+Bmori1_room_3,
+Bmori1_room_4,
+Bmori1_room_5,
+Bmori1_room_6,
+Bmori1_room_7,
+Bmori1_room_8,
+Bmori1_room_9,
+Bmori1_room_10,
+Bmori1_room_11,
+Bmori1_room_12,
+Bmori1_room_13,
+Bmori1_room_14,
+Bmori1_room_15,
+Bmori1_room_16,
+Bmori1_room_17,
+Bmori1_room_18,
+Bmori1_room_19,
+Bmori1_room_20,
+Bmori1_room_21,
+Bmori1_room_22,
+HIDAN_scene,
+HIDAN_room_0,
+HIDAN_room_1,
+HIDAN_room_2,
+HIDAN_room_3,
+HIDAN_room_4,
+HIDAN_room_5,
+HIDAN_room_6,
+HIDAN_room_7,
+HIDAN_room_8,
+HIDAN_room_9,
+HIDAN_room_10,
+HIDAN_room_11,
+HIDAN_room_12,
+HIDAN_room_13,
+HIDAN_room_14,
+HIDAN_room_15,
+HIDAN_room_16,
+HIDAN_room_17,
+HIDAN_room_18,
+HIDAN_room_19,
+HIDAN_room_20,
+HIDAN_room_21,
+HIDAN_room_22,
+HIDAN_room_23,
+HIDAN_room_24,
+HIDAN_room_25,
+HIDAN_room_26,
+MIZUsin_scene,
+MIZUsin_room_0,
+MIZUsin_room_1,
+MIZUsin_room_2,
+MIZUsin_room_3,
+MIZUsin_room_4,
+MIZUsin_room_5,
+MIZUsin_room_6,
+MIZUsin_room_7,
+MIZUsin_room_8,
+MIZUsin_room_9,
+MIZUsin_room_10,
+MIZUsin_room_11,
+MIZUsin_room_12,
+MIZUsin_room_13,
+MIZUsin_room_14,
+MIZUsin_room_15,
+MIZUsin_room_16,
+MIZUsin_room_17,
+MIZUsin_room_18,
+MIZUsin_room_19,
+MIZUsin_room_20,
+MIZUsin_room_21,
+MIZUsin_room_22,
+jyasinzou_scene,
+jyasinzou_room_0,
+jyasinzou_room_1,
+jyasinzou_room_2,
+jyasinzou_room_3,
+jyasinzou_room_4,
+jyasinzou_room_5,
+jyasinzou_room_6,
+jyasinzou_room_7,
+jyasinzou_room_8,
+jyasinzou_room_9,
+jyasinzou_room_10,
+jyasinzou_room_11,
+jyasinzou_room_12,
+jyasinzou_room_13,
+jyasinzou_room_14,
+jyasinzou_room_15,
+jyasinzou_room_16,
+jyasinzou_room_17,
+jyasinzou_room_18,
+jyasinzou_room_19,
+jyasinzou_room_20,
+jyasinzou_room_21,
+jyasinzou_room_22,
+jyasinzou_room_23,
+jyasinzou_room_24,
+jyasinzou_room_25,
+jyasinzou_room_26,
+jyasinzou_room_27,
+jyasinzou_room_28,
+HAKAdan_scene,
+HAKAdan_room_0,
+HAKAdan_room_1,
+HAKAdan_room_2,
+HAKAdan_room_3,
+HAKAdan_room_4,
+HAKAdan_room_5,
+HAKAdan_room_6,
+HAKAdan_room_7,
+HAKAdan_room_8,
+HAKAdan_room_9,
+HAKAdan_room_10,
+HAKAdan_room_11,
+HAKAdan_room_12,
+HAKAdan_room_13,
+HAKAdan_room_14,
+HAKAdan_room_15,
+HAKAdan_room_16,
+HAKAdan_room_17,
+HAKAdan_room_18,
+HAKAdan_room_19,
+HAKAdan_room_20,
+HAKAdan_room_21,
+HAKAdan_room_22,
+HAKAdanCH_scene,
+HAKAdanCH_room_0,
+HAKAdanCH_room_1,
+HAKAdanCH_room_2,
+HAKAdanCH_room_3,
+HAKAdanCH_room_4,
+HAKAdanCH_room_5,
+HAKAdanCH_room_6,
+ice_doukutu_scene,
+ice_doukutu_room_0,
+ice_doukutu_room_1,
+ice_doukutu_room_2,
+ice_doukutu_room_3,
+ice_doukutu_room_4,
+ice_doukutu_room_5,
+ice_doukutu_room_6,
+ice_doukutu_room_7,
+ice_doukutu_room_8,
+ice_doukutu_room_9,
+ice_doukutu_room_10,
+ice_doukutu_room_11,
+men_scene,
+men_room_0,
+men_room_1,
+men_room_2,
+men_room_3,
+men_room_4,
+men_room_5,
+men_room_6,
+men_room_7,
+men_room_8,
+men_room_9,
+men_room_10,
+ganontika_scene,
+ganontika_room_0,
+ganontika_room_1,
+ganontika_room_2,
+ganontika_room_3,
+ganontika_room_4,
+ganontika_room_5,
+ganontika_room_6,
+ganontika_room_7,
+ganontika_room_8,
+ganontika_room_9,
+ganontika_room_10,
+ganontika_room_11,
+ganontika_room_12,
+ganontika_room_13,
+ganontika_room_14,
+ganontika_room_15,
+ganontika_room_16,
+ganontika_room_17,
+ganontika_room_18,
+ganontika_room_19,
+spot00_scene,
+spot00_room_0,
+spot01_scene,
+spot01_room_0,
+spot02_scene,
+spot02_room_0,
+spot02_room_1,
+spot03_scene,
+spot03_room_0,
+spot03_room_1,
+spot04_scene,
+spot04_room_0,
+spot04_room_1,
+spot04_room_2,
+spot05_scene,
+spot05_room_0,
+spot06_scene,
+spot06_room_0,
+spot07_scene,
+spot07_room_0,
+spot07_room_1,
+spot08_scene,
+spot08_room_0,
+spot09_scene,
+spot09_room_0,
+spot10_scene,
+spot10_room_0,
+spot10_room_1,
+spot10_room_2,
+spot10_room_3,
+spot10_room_4,
+spot10_room_5,
+spot10_room_6,
+spot10_room_7,
+spot10_room_8,
+spot10_room_9,
+spot11_scene,
+spot11_room_0,
+spot12_scene,
+spot12_room_0,
+spot12_room_1,
+spot13_scene,
+spot13_room_0,
+spot13_room_1,
+spot15_scene,
+spot15_room_0,
+spot16_scene,
+spot16_room_0,
+spot17_scene,
+spot17_room_0,
+spot17_room_1,
+spot18_scene,
+spot18_room_0,
+spot18_room_1,
+spot18_room_2,
+spot18_room_3,
+market_day_scene,
+market_day_room_0,
+market_night_scene,
+market_night_room_0,
+kenjyanoma_scene,
+kenjyanoma_room_0,
+tokinoma_scene,
+tokinoma_room_0,
+tokinoma_room_1,
+link_home_scene,
+link_home_room_0,
+kokiri_shop_scene,
+kokiri_shop_room_0,
+kokiri_home_scene,
+kokiri_home_room_0,
+kakusiana_scene,
+kakusiana_room_0,
+kakusiana_room_1,
+kakusiana_room_2,
+kakusiana_room_3,
+kakusiana_room_4,
+kakusiana_room_5,
+kakusiana_room_6,
+kakusiana_room_7,
+kakusiana_room_8,
+kakusiana_room_9,
+kakusiana_room_10,
+kakusiana_room_11,
+kakusiana_room_12,
+kakusiana_room_13,
+entra_scene,
+entra_room_0,
+moribossroom_scene,
+moribossroom_room_0,
+moribossroom_room_1,
+syatekijyou_scene,
+syatekijyou_room_0,
+shop1_scene,
+shop1_room_0,
+hairal_niwa_scene,
+hairal_niwa_room_0,
+ganon_tou_scene,
+ganon_tou_room_0,
+market_alley_scene,
+market_alley_room_0,
+spot20_scene,
+spot20_room_0,
+market_ruins_scene,
+market_ruins_room_0,
+entra_n_scene,
+entra_n_room_0,
+enrui_scene,
+enrui_room_0,
+market_alley_n_scene,
+market_alley_n_room_0,
+hiral_demo_scene,
+hiral_demo_room_0,
+kokiri_home3_scene,
+kokiri_home3_room_0,
+malon_stable_scene,
+malon_stable_room_0,
+kakariko_scene,
+kakariko_room_0,
+bdan_boss_scene,
+bdan_boss_room_0,
+bdan_boss_room_1,
+FIRE_bs_scene,
+FIRE_bs_room_0,
+FIRE_bs_room_1,
+hut_scene,
+hut_room_0,
+daiyousei_izumi_scene,
+daiyousei_izumi_room_0,
+hakaana_scene,
+hakaana_room_0,
+yousei_izumi_tate_scene,
+yousei_izumi_tate_room_0,
+yousei_izumi_yoko_scene,
+yousei_izumi_yoko_room_0,
+golon_scene,
+golon_room_0,
+zoora_scene,
+zoora_room_0,
+drag_scene,
+drag_room_0,
+alley_shop_scene,
+alley_shop_room_0,
+night_shop_scene,
+night_shop_room_0,
+impa_scene,
+impa_room_0,
+labo_scene,
+labo_room_0,
+tent_scene,
+tent_room_0,
+nakaniwa_scene,
+nakaniwa_room_0,
+ddan_boss_scene,
+ddan_boss_room_0,
+ddan_boss_room_1,
+ydan_boss_scene,
+ydan_boss_room_0,
+ydan_boss_room_1,
+HAKAdan_bs_scene,
+HAKAdan_bs_room_0,
+HAKAdan_bs_room_1,
+MIZUsin_bs_scene,
+MIZUsin_bs_room_0,
+MIZUsin_bs_room_1,
+ganon_scene,
+ganon_room_0,
+ganon_room_1,
+ganon_room_2,
+ganon_room_3,
+ganon_room_4,
+ganon_room_5,
+ganon_room_6,
+ganon_room_7,
+ganon_room_8,
+ganon_room_9,
+ganon_boss_scene,
+ganon_boss_room_0,
+jyasinboss_scene,
+jyasinboss_room_0,
+jyasinboss_room_1,
+jyasinboss_room_2,
+jyasinboss_room_3,
+kokiri_home4_scene,
+kokiri_home4_room_0,
+kokiri_home5_scene,
+kokiri_home5_room_0,
+ganon_final_scene,
+ganon_final_room_0,
+kakariko3_scene,
+kakariko3_room_0,
+hakasitarelay_scene,
+hakasitarelay_room_0,
+hakasitarelay_room_1,
+hakasitarelay_room_2,
+hakasitarelay_room_3,
+hakasitarelay_room_4,
+hakasitarelay_room_5,
+hakasitarelay_room_6,
+shrine_scene,
+shrine_room_0,
+turibori_scene,
+turibori_room_0,
+shrine_n_scene,
+shrine_n_room_0,
+shrine_r_scene,
+shrine_r_room_0,
+hakaana2_scene,
+hakaana2_room_0,
+gerudoway_scene,
+gerudoway_room_0,
+gerudoway_room_1,
+gerudoway_room_2,
+gerudoway_room_3,
+gerudoway_room_4,
+gerudoway_room_5,
+hairal_niwa_n_scene,
+hairal_niwa_n_room_0,
+bowling_scene,
+bowling_room_0,
+hakaana_ouke_scene,
+hakaana_ouke_room_0,
+hakaana_ouke_room_1,
+hakaana_ouke_room_2,
+hylia_labo_scene,
+hylia_labo_room_0,
+souko_scene,
+souko_room_0,
+souko_room_1,
+souko_room_2,
+miharigoya_scene,
+miharigoya_room_0,
+mahouya_scene,
+mahouya_room_0,
+takaraya_scene,
+takaraya_room_0,
+takaraya_room_1,
+takaraya_room_2,
+takaraya_room_3,
+takaraya_room_4,
+takaraya_room_5,
+takaraya_room_6,
+ganon_sonogo_scene,
+ganon_sonogo_room_0,
+ganon_sonogo_room_1,
+ganon_sonogo_room_2,
+ganon_sonogo_room_3,
+ganon_sonogo_room_4,
+ganon_demo_scene,
+ganon_demo_room_0,
+face_shop_scene,
+face_shop_room_0,
+kinsuta_scene,
+kinsuta_room_0,
+ganontikasonogo_scene,
+ganontikasonogo_room_0,
+ganontikasonogo_room_1,
+bump_texture_static,
+anime_model_1_static,
+anime_model_2_static,
+anime_model_3_static,
+anime_model_4_static,
+anime_model_5_static,
+anime_model_6_static,
+anime_texture_1_static,
+anime_texture_2_static,
+anime_texture_3_static,
+anime_texture_4_static,
+anime_texture_5_static,
+anime_texture_6_static,
+softsprite_matrix_static,
diff --git a/baseroms/ntsc-1.0/config.yml b/baseroms/ntsc-1.0/config.yml
index 072aebec3da..2bdf99411a4 100644
--- a/baseroms/ntsc-1.0/config.yml
+++ b/baseroms/ntsc-1.0/config.yml
@@ -2,7 +2,7 @@ checksums:
- checksum-JP
- checksum-US
dmadata_start: 0x7430
-text_lang_pal: false
+text_lang: NTSC
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/ntsc-1.1/config.yml b/baseroms/ntsc-1.1/config.yml
index 6726cc59f6a..1b110a84c82 100644
--- a/baseroms/ntsc-1.1/config.yml
+++ b/baseroms/ntsc-1.1/config.yml
@@ -2,7 +2,7 @@ checksums:
- checksum-JP
- checksum-US
dmadata_start: 0x7430
-text_lang_pal: false
+text_lang: NTSC
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/ntsc-1.2/config.yml b/baseroms/ntsc-1.2/config.yml
index f9293586f96..a631ca55110 100644
--- a/baseroms/ntsc-1.2/config.yml
+++ b/baseroms/ntsc-1.2/config.yml
@@ -2,7 +2,7 @@ checksums:
- checksum-JP
- checksum-US
dmadata_start: 0x7960
-text_lang_pal: false
+text_lang: NTSC
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/pal-1.0/config.yml b/baseroms/pal-1.0/config.yml
index 1a80071bbbd..a8ea60b79d6 100644
--- a/baseroms/pal-1.0/config.yml
+++ b/baseroms/pal-1.0/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7950
-text_lang_pal: true
+text_lang: PAL
incbins:
- name: ipl3
segment: makerom
diff --git a/baseroms/pal-1.1/config.yml b/baseroms/pal-1.1/config.yml
index 57f037b3509..4811f1cb93f 100644
--- a/baseroms/pal-1.1/config.yml
+++ b/baseroms/pal-1.1/config.yml
@@ -1,5 +1,5 @@
dmadata_start: 0x7950
-text_lang_pal: true
+text_lang: PAL
incbins:
- name: ipl3
segment: makerom
diff --git a/include/fault.h b/include/fault.h
index a95ae590649..8f1979520f6 100644
--- a/include/fault.h
+++ b/include/fault.h
@@ -5,7 +5,7 @@
#include "attributes.h"
#include "padmgr.h"
-#if PLATFORM_GC
+#if !PLATFORM_N64
// These are the same as the 3-bit ansi color codes
#define FAULT_COLOR_BLACK 0
#define FAULT_COLOR_RED 1
@@ -33,7 +33,7 @@ typedef struct FaultClient {
/* 0x0C */ void* arg1;
} FaultClient; // size = 0x10
-#if PLATFORM_GC
+#if !PLATFORM_N64
typedef struct FaultAddrConvClient {
/* 0x00 */ struct FaultAddrConvClient* next;
/* 0x04 */ void* callback;
@@ -78,7 +78,7 @@ void func_800AE1F8(void);
#define Fault_SetFontColor(color) (void)0
#define Fault_SetCharPad(padW, padH) (void)0
-#elif PLATFORM_GC
+#else
void Fault_InitDrawer(void);
void Fault_SetForeColor(u16 color);
@@ -98,7 +98,7 @@ extern volatile OSThread* gFaultFaultedThread;
#define FAULT_MSG_ID gFaultMsgId
-#elif PLATFORM_GC
+#else
typedef struct FaultMgr {
/* 0x000 */ OSThread thread;
diff --git a/include/libc64/os_malloc.h b/include/libc64/os_malloc.h
index 91b0d93c47e..fcd4da1e14d 100644
--- a/include/libc64/os_malloc.h
+++ b/include/libc64/os_malloc.h
@@ -11,7 +11,7 @@ typedef struct Arena {
#if PLATFORM_N64
/* 0x08 */ u32 size;
/* 0x0C */ u8 allocFailures;
-#elif PLATFORM_GC
+#else
/* 0x08 */ OSMesgQueue lockQueue;
/* 0x20 */ u8 allocFailures; // only used in non-debug builds
/* 0x21 */ u8 isInit;
diff --git a/include/line_numbers.h b/include/line_numbers.h
index 20df4e15342..c3946b2ea25 100644
--- a/include/line_numbers.h
+++ b/include/line_numbers.h
@@ -5,31 +5,35 @@
// The "LN" macros defined here are not meant to be used directly. See the wrapper macros below.
#if OOT_VERSION == NTSC_1_0
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (ntsc_1_0)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (ntsc_1_0)
#elif OOT_VERSION == NTSC_1_1
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (ntsc_1_1)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (ntsc_1_1)
#elif OOT_VERSION == PAL_1_0
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (pal_1_0)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (pal_1_0)
#elif OOT_VERSION == NTSC_1_2
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (ntsc_1_2)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (ntsc_1_2)
#elif OOT_VERSION == PAL_1_1
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (pal_1_1)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (pal_1_1)
#elif OOT_VERSION == GC_JP
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (gc_jp)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (gc_jp)
#elif OOT_VERSION == GC_JP_MQ
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (gc_jp_mq)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (gc_jp_mq)
#elif OOT_VERSION == GC_US
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (gc_us)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (gc_us)
#elif OOT_VERSION == GC_US_MQ
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (gc_us_mq)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (gc_us_mq)
#elif OOT_VERSION == GC_EU_MQ_DBG
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (gc_eu_mq_dbg)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (gc_eu_mq_dbg)
#elif OOT_VERSION == GC_EU
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (gc_eu)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (gc_eu)
#elif OOT_VERSION == GC_EU_MQ
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (gc_eu_mq)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (gc_eu_mq)
#elif OOT_VERSION == GC_JP_CE
-#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce) (gc_jp_ce)
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (gc_jp_ce)
+#elif OOT_VERSION == IQUE_CN
+#define LN(ntsc_1_0, ntsc_1_1, pal_1_0, ntsc_1_2, pal_1_1, gc_jp, gc_jp_mq, gc_us, gc_us_mq, gc_eu_mq_dbg, gc_eu, gc_eu_mq, gc_jp_ce, ique_cn) (ique_cn)
+#else
+#error "Unsupported OOT version"
#endif
/**
@@ -42,22 +46,22 @@
// NTSC 1.0 and all the other versions
#define LN1(ntsc_1_0, other) \
- LN(ntsc_1_0, other, other, other, other, other, other, other, other, other, other, other, other)
+ LN(ntsc_1_0, other, other, other, other, other, other, other, other, other, other, other, other, other)
// NTSC 1.0, NTSC 1.1, and all the other versions
#define LN2(ntsc_1_0, ntsc_1_1, other) \
- LN(ntsc_1_0, ntsc_1_1, other, other, other, other, other, other, other, other, other, other, other)
+ LN(ntsc_1_0, ntsc_1_1, other, other, other, other, other, other, other, other, other, other, other, other)
// NTSC 1.0, Gamecube, and all the other versions
#define LN3(ntsc_1_0, other, gc) \
- LN(ntsc_1_0, other, other, other, other, gc, gc, gc, gc, gc, gc, gc, gc)
+ LN(ntsc_1_0, other, other, other, other, gc, gc, gc, gc, gc, gc, gc, gc, gc)
// NTSC 1.0, NTSC 1.1, Gamecube, and all the other versions
#define LN4(ntsc_1_0, ntsc_1_1, other, gc) \
- LN(ntsc_1_0, ntsc_1_1, other, other, other, gc, gc, gc, gc, gc, gc, gc, gc)
+ LN(ntsc_1_0, ntsc_1_1, other, other, other, gc, gc, gc, gc, gc, gc, gc, gc, gc)
// NTSC 1.0, NTSC 1.1, NTSC 1.2/PAL 1.0, Gamecube US/JP, Gamecube EU, and Gamecube CE
#define LN5(ntsc_1_0, ntsc_1_1, other, pal_1_1, gc_ntsc, gc_eu, gc_jp_ce) \
- LN(ntsc_1_0, ntsc_1_1, other, other, pal_1_1, gc_ntsc, gc_ntsc, gc_ntsc, gc_ntsc, gc_eu, gc_eu, gc_eu, gc_jp_ce)
+ LN(ntsc_1_0, ntsc_1_1, other, other, pal_1_1, gc_ntsc, gc_ntsc, gc_ntsc, gc_ntsc, gc_eu, gc_eu, gc_eu, gc_jp_ce, gc_jp_ce)
#endif
diff --git a/include/versions.h b/include/versions.h
index 96ae716f06a..620b27999e6 100644
--- a/include/versions.h
+++ b/include/versions.h
@@ -15,6 +15,7 @@
#define GC_EU 11
#define GC_EU_MQ 12
#define GC_JP_CE 13
+#define IQUE_CN 14
// NTSC/PAL
#if OOT_VERSION == PAL_1_0 || OOT_VERSION == PAL_1_1 || OOT_VERSION == GC_EU || OOT_VERSION == GC_EU_MQ || OOT_VERSION == GC_EU_MQ_DBG
diff --git a/spec b/spec
index 794a0b132af..8372b29ae8f 100644
--- a/spec
+++ b/spec
@@ -890,7 +890,7 @@ beginseg
include "$(BUILD_DIR)/src/libultra/mgu/translate.o"
#endif
include "$(BUILD_DIR)/src/libultra/io/contramwrite.o"
-#if OOT_VERSION == NTSC_1_2 || (PLATFORM_GC && !DEBUG_FEATURES)
+#if OOT_VERSION >= PAL_1_0 && !(OOT_PAL_N64 || DEBUG_FEATURES)
include "$(BUILD_DIR)/src/libultra/io/vimodefpallan1.o"
#endif
#if !DEBUG_FEATURES
diff --git a/src/code/fault_gc.c b/src/code/fault_gc.c
index af693215907..9c0c35c78e0 100644
--- a/src/code/fault_gc.c
+++ b/src/code/fault_gc.c
@@ -40,7 +40,7 @@
* DPad-Up may be pressed to enable sending fault pages over osSyncPrintf as well as displaying them on-screen.
* DPad-Down disables sending fault pages over osSyncPrintf.
*/
-#if PLATFORM_GC
+#if !PLATFORM_N64
#pragma increment_block_number "gc-eu:160 gc-eu-mq:160 gc-eu-mq-dbg:160 gc-jp:176 gc-jp-ce:176 gc-jp-mq:176 gc-us:176" \
"gc-us-mq:176"
diff --git a/src/code/fault_gc_drawer.c b/src/code/fault_gc_drawer.c
index 808b258497d..ba294f52d91 100644
--- a/src/code/fault_gc_drawer.c
+++ b/src/code/fault_gc_drawer.c
@@ -9,7 +9,7 @@
#include "terminal.h"
#pragma increment_block_number "gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
-#if PLATFORM_GC
+#if !PLATFORM_N64
typedef struct FaultDrawer {
/* 0x00 */ u16* fb;
diff --git a/src/libc64/__osMalloc_gc.c b/src/libc64/__osMalloc_gc.c
index f2770767fae..0338ecf3f80 100644
--- a/src/libc64/__osMalloc_gc.c
+++ b/src/libc64/__osMalloc_gc.c
@@ -3,7 +3,7 @@
#include "libc64/os_malloc.h"
#include "terminal.h"
-#if PLATFORM_GC
+#if !PLATFORM_N64
#define FILL_ALLOC_BLOCK_FLAG (1 << 0)
#define FILL_FREE_BLOCK_FLAG (1 << 1)
diff --git a/src/overlays/actors/ovl_En_Mag/z_en_mag.c b/src/overlays/actors/ovl_En_Mag/z_en_mag.c
index 03a6851ef74..8de1d3058d9 100644
--- a/src/overlays/actors/ovl_En_Mag/z_en_mag.c
+++ b/src/overlays/actors/ovl_En_Mag/z_en_mag.c
@@ -639,7 +639,8 @@ void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) {
#endif
}
-#if OOT_NTSC
+ // TODO: implement for iQue
+#if OOT_NTSC && !PLATFORM_IQUE
if (gSaveContext.language == LANGUAGE_JPN) {
this->unk_E30C++;
gDPPipeSync(gfx++);
@@ -687,11 +688,11 @@ void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) {
gDPLoadTextureBlock(gfx++, gTitleCopyright1998Tex, G_IM_FMT_IA, G_IM_SIZ_8b, 128, 16, 0,
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK,
G_TX_NOLOD, G_TX_NOLOD);
-#elif OOT_VERSION < GC_US
+#elif PLATFORM_GC && OOT_VERSION < GC_US
gDPLoadTextureBlock(gfx++, gTitleCopyright19982002Tex, G_IM_FMT_IA, G_IM_SIZ_8b, 160, 16, 0,
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK,
G_TX_NOLOD, G_TX_NOLOD);
-#elif OOT_NTSC
+#elif PLATFORM_GC && OOT_NTSC
if (gSaveContext.language == LANGUAGE_JPN) {
gDPLoadTextureBlock(gfx++, gTitleCopyright19982002Tex, G_IM_FMT_IA, G_IM_SIZ_8b, 160, 16, 0,
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK,
@@ -701,10 +702,12 @@ void EnMag_DrawInner(Actor* thisx, PlayState* play, Gfx** gfxP) {
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK,
G_TX_NOLOD, G_TX_NOLOD);
}
-#else
+#elif PLATFORM_GC && OOT_PAL
gDPLoadTextureBlock(gfx++, gTitleCopyright19982003Tex, G_IM_FMT_IA, G_IM_SIZ_8b, 160, 16, 0,
G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMIRROR | G_TX_CLAMP, G_TX_NOMASK, G_TX_NOMASK,
G_TX_NOLOD, G_TX_NOLOD);
+#elif PLATFORM_IQUE
+ // TODO: implement for iQue
#endif
#if PLATFORM_N64
diff --git a/tools/ZAPDConfigs/ique-cn/Config.xml b/tools/ZAPDConfigs/ique-cn/Config.xml
new file mode 100644
index 00000000000..b2f4e3e4d30
--- /dev/null
+++ b/tools/ZAPDConfigs/ique-cn/Config.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/tools/ZAPDConfigs/ique-cn/SymbolMap.txt b/tools/ZAPDConfigs/ique-cn/SymbolMap.txt
new file mode 100644
index 00000000000..52ff547fde5
--- /dev/null
+++ b/tools/ZAPDConfigs/ique-cn/SymbolMap.txt
@@ -0,0 +1,2 @@
+80106980 gMtxClear
+80AE0B10 sShadowTex
diff --git a/tools/extract_text.py b/tools/extract_text.py
index 50b69237320..83a49caed6f 100755
--- a/tools/extract_text.py
+++ b/tools/extract_text.py
@@ -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:
+ 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)
- else:
+ elif config.text_lang == "CN":
+ # TODO: extract CN text
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[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)
diff --git a/tools/version_config.py b/tools/version_config.py
index 93776377636..3516073f0d4 100644
--- a/tools/version_config.py
+++ b/tools/version_config.py
@@ -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"],