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"],