From b0510402aba80e534c85ba29aa8ffa6d7c5a2c17 Mon Sep 17 00:00:00 2001 From: octorock <79596758+octorock@users.noreply.github.com> Date: Wed, 16 Jun 2021 21:11:01 +0200 Subject: [PATCH 01/11] Add DEMO variant --- Makefile | 32 ++++++-- asm/bossDoor.s | 16 ++++ asm/code_080043E8.s | 5 ++ asm/code_080A3BD0.s | 11 +++ asm/code_080A5574.s | 29 +++++++ asm/fileScreen.s | 45 +++++++++++ asm/object3A.s | 4 + asm/playerItem/playerItem15.s | 24 ++++++ asm/sub_0807CA18.s | 113 ++++++++++++++++++++++++++- data/const/playerItem/playerItem15.s | 15 +++- data/data_08132B30.s | 2 + data/sprite_table.s | 5 ++ include/structures.h | 2 + linker.ld | 7 +- src/audio.c | 42 ++++++++++ src/code_0805436C.c | 2 + src/code_0805F9A0.c | 32 +++++++- src/eeprom.c | 9 +++ src/game.c | 13 +++ src/intro.c | 18 +++++ src/main.c | 17 +++- src/room.c | 24 ++++++ src/save.c | 51 +++++++++++- src/sub_080A3B84.c | 2 + tmc_demo.sha1 | 1 + tmc_eu.sha1 | 1 + tmc_jp.sha1 | 1 + 27 files changed, 511 insertions(+), 12 deletions(-) create mode 100644 tmc_demo.sha1 create mode 100644 tmc_eu.sha1 create mode 100644 tmc_jp.sha1 diff --git a/Makefile b/Makefile index 7d2aedb6..f18c9cb9 100644 --- a/Makefile +++ b/Makefile @@ -5,17 +5,34 @@ COMPARE ?= 0 CPP := $(CC) -E LD := $(DEVKITARM)/bin/arm-none-eabi-ld -GAME_VERSION := THEMINISHCAP +GAME_VERSION ?= USA REVISION := 0 GAME_LANGUAGE := ENGLISH TITLE := GBAZELDA MC -GAME_CODE := BZME MAKER_CODE := 01 +ifeq ($(GAME_VERSION), USA) +GAME_CODE := BZME +BUILD_NAME := tmc +else +ifeq ($(GAME_VERSION), DEMO) +GAME_CODE := BZHE +BUILD_NAME := tmc +else +ifeq ($(GAME_VERSION), JP) +GAME_CODE := BZMJ +BUILD_NAME := tmc +else +$(error unknown version $(GAME_VERSION)) +endif +endif +endif + + SHELL := /bin/bash -o pipefail -BUILD_NAME := tmc + ROM := $(BUILD_NAME).gba OBJ_DIR := build/$(BUILD_NAME) @@ -120,11 +137,11 @@ MAKEFLAGS += --no-print-directory AUTO_GEN_TARGETS := all: $(ROM) - @$(SHA1) tmc.sha1 + @$(SHA1) $(BUILD_NAME).sha1 # kept for backwards compat compare: $(ROM) - @$(SHA1) tmc.sha1 + @$(SHA1) $(BUILD_NAME).sha1 setup: $(TOOLDIRS) @@ -205,3 +222,8 @@ $(ELF): $(OBJS) linker.ld $(ROM): $(ELF) $(OBJCOPY) -O binary --gap-fill 0xFF --pad-to 0x9000000 $< $@ + +usa: ; @$(MAKE) GAME_VERSION=USA +demo: ; @$(MAKE) GAME_VERSION=DEMO +jp: ; @$(MAKE) GAME_VERSION=JP +eu: ; @$(MAKE) GAME_VERSION=EU \ No newline at end of file diff --git a/asm/bossDoor.s b/asm/bossDoor.s index 408d22b4..9e68f193 100644 --- a/asm/bossDoor.s +++ b/asm/bossDoor.s @@ -591,7 +591,11 @@ sub_0808C650: @ 0x0808C650 movs r0, #0 b _0808C674 .align 2, 0 +.ifdef DEMO +_0808C66C: .4byte gUnk_02036BB0 +.else _0808C66C: .4byte gUnk_02036BB8 +.endif _0808C670: ldr r1, _0808C678 @ =gUnk_02036BB8 movs r0, #1 @@ -599,7 +603,11 @@ _0808C674: str r0, [r1] pop {r4, pc} .align 2, 0 +.ifdef DEMO +_0808C678: .4byte gUnk_02036BB0 +.else _0808C678: .4byte gUnk_02036BB8 +.endif thumb_func_start sub_0808C67C sub_0808C67C: @ 0x0808C67C @@ -607,7 +615,11 @@ sub_0808C67C: @ 0x0808C67C ldr r0, [r0] bx lr .align 2, 0 +.ifdef DEMO +_0808C684: .4byte gUnk_02036BB0 +.else _0808C684: .4byte gUnk_02036BB8 +.endif thumb_func_start sub_0808C688 sub_0808C688: @ 0x0808C688 @@ -618,4 +630,8 @@ sub_0808C688: @ 0x0808C688 str r0, [r1] pop {pc} .align 2, 0 +.ifdef DEMO +_0808C698: .4byte gUnk_02036BB0 +.else _0808C698: .4byte gUnk_02036BB8 +.endif diff --git a/asm/code_080043E8.s b/asm/code_080043E8.s index 349924f6..dc71580b 100644 --- a/asm/code_080043E8.s +++ b/asm/code_080043E8.s @@ -2254,7 +2254,12 @@ gUnk_08007CAC:: @ 08007CAC .incbin "baserom.gba", 0x007CAC, 0x000005B gUnk_08007D07:: @ 08007D07 +.ifdef DEMO +@ TODO only one byte differs + .incbin "baserom_demo.gba", 0x007D07, 0x00000CF +.else .incbin "baserom.gba", 0x007D07, 0x00000CF +.endif non_word_aligned_thumb_func_start sub_08007DD6 sub_08007DD6: @ 0x08007DD6 diff --git a/asm/code_080A3BD0.s b/asm/code_080A3BD0.s index 328566f3..b3807006 100644 --- a/asm/code_080A3BD0.s +++ b/asm/code_080A3BD0.s @@ -1206,6 +1206,10 @@ _080A45A2: thumb_func_start sub_080A45A4 sub_080A45A4: @ 0x080A45A4 +.ifdef DEMO + bx lr + .align 2, 0 +.else push {lr} bl FlushSprites ldr r0, _080A45C4 @ =gUnk_02032EC0 @@ -1244,6 +1248,7 @@ _080A45E0: .align 2, 0 _080A4600: .4byte gUnk_0812814C _080A4604: .4byte gMenu +.endif thumb_func_start sub_080A4608 sub_080A4608: @ 0x080A4608 @@ -2890,9 +2895,15 @@ _080A52DC: .4byte gInput _080A52E0: cmp r4, #0x10 bne _080A52EC +.ifdef DEMO + movs r0, #0x6d + bl SoundReq + b _080A5336 +.else movs r0, #0xb bl sub_080A4E84 b _080A530A +.endif _080A52EC: ldr r0, _080A5314 @ =gMenu adds r0, #0x10 diff --git a/asm/code_080A5574.s b/asm/code_080A5574.s index d8bfcee6..51824e3f 100644 --- a/asm/code_080A5574.s +++ b/asm/code_080A5574.s @@ -202,7 +202,11 @@ _080A570C: cmp r0, #1 bne _080A575E ldrb r3, [r2, #3] + .ifdef DEMO + movs r4, #0 + .else movs r1, #0 + .endif cmp r3, #2 beq _080A572E cmp r3, #2 @@ -223,23 +227,48 @@ _080A572E: ldrb r0, [r0] cmp r0, #0 beq _080A574E + .ifdef DEMO + movs r4, #8 + .else movs r1, #8 + .endif cmp r3, #0 bne _080A574E + .ifdef DEMO + movs r4, #7 + .else movs r1, #7 + .endif b _080A5752 .align 2, 0 _080A5744: .4byte gMenu _080A5748: +.ifdef DEMO + movs r0, #0x6d + bl SoundReq + b _080A574E +_080A574C: + movs r0, #0x6d + bl SoundReq +.else movs r1, #9 b _080A5752 _080A574C: movs r1, #0xa +.endif _080A574E: + .ifdef DEMO + cmp r4, #0 + .else cmp r1, #0 + .endif beq _080A575E _080A5752: + .ifdef DEMO + adds r0, r4, #0 + .else adds r0, r1, #0 + .endif bl sub_080A4E84 movs r0, #0x6a bl SoundReq diff --git a/asm/fileScreen.s b/asm/fileScreen.s index d743ac41..eee2baba 100755 --- a/asm/fileScreen.s +++ b/asm/fileScreen.s @@ -5,6 +5,45 @@ .text +.ifdef DEMO + thumb_func_start HandleGameplayScreen +HandleGameplayScreen: @ 08051A28 + push {r4, lr} + ldr r1, _08051A68 @ =0x030010A0 + ldr r0, [r1, #0x00] + adds r0, #0x01 + str r0, [r1, #0x00] + ldr r1, _08051A6C @ =0x080FC55C + ldr r4, _08051A70x @ =0x03001000 + ldrb r0, [r4, #0x03] + lsls r0, r0, #0x02 + adds r0, r0, r1 + ldr r0, [r0, #0x00] + bl _call_via_r0 + ldr r0, _08051A74x @ =0x02002A40 + movs r2, #0x95 + lsls r2, r2, #0x03 + adds r1, r0, r2 + ldr r0, [r1, #0x00] + cmp r0, #0x00 + beq _08051A64 + subs r0, #0x01 + str r0, [r1, #0x00] + cmp r0, #0x00 + bne _08051A64 + movs r0, #0x07 + movs r1, #0x02 + bl DoFade + movs r0, #0x03 + strb r0, [r4, #0x03] +_08051A64: + pop {r4, pc} + .byte 0x00, 0x00 +_08051A68: .4byte 0x030010A0 @TODO ptr +_08051A6C: .4byte 0x080FC55C @TODO ptr +_08051A70x: .4byte 0x03001000 @TODO ptr +_08051A74x: .4byte 0x02002A40 @TODO ptr +.else thumb_func_start HandleGameplayScreen HandleGameplayScreen: @ 0x08051988 push {lr} @@ -24,6 +63,8 @@ HandleGameplayScreen: @ 0x08051988 _080519A4: .4byte gScreenTransition _080519A8: .4byte gUnk_080FC9D8 _080519AC: .4byte gMain +.endif + thumb_func_start sub_080519B0 sub_080519B0: @ 0x080519B0 @@ -382,6 +423,9 @@ _08051D28: .4byte gScreenTransition thumb_func_start sub_08051D2C sub_08051D2C: @ 0x08051D2C +.ifdef DEMO + .incbin "baserom_demo.gba", 0x051df4, 0x14 @nocheckin +.else push {lr} movs r0, #7 movs r1, #8 @@ -390,6 +434,7 @@ sub_08051D2C: @ 0x08051D2C bl InitScreen pop {pc} .align 2, 0 +.endif thumb_func_start InitializeEntities InitializeEntities: @ 0x08051D40 diff --git a/asm/object3A.s b/asm/object3A.s index a884af27..859edc8b 100644 --- a/asm/object3A.s +++ b/asm/object3A.s @@ -223,7 +223,11 @@ _0808C828: bl sub_0801E49C pop {r4, r5, r6, pc} .align 2, 0 +.ifdef DEMO +_0808C83C: .4byte gUnk_02036BB0 +.else _0808C83C: .4byte gUnk_02036BB8 +.endif thumb_func_start sub_0808C840 sub_0808C840: @ 0x0808C840 diff --git a/asm/playerItem/playerItem15.s b/asm/playerItem/playerItem15.s index 90211b70..d8aeb205 100644 --- a/asm/playerItem/playerItem15.s +++ b/asm/playerItem/playerItem15.s @@ -199,3 +199,27 @@ _080A31FC: _080A3200: pop {r4, r5, pc} .align 2, 0 + + + + +// DEMO only functions + +.ifdef DEMO +// @nocheckin +thumb_func_start HandleChooseDemoScreen +HandleChooseDemoScreen: @ 0x080A2E18 +.incbin "baserom_demo.gba", 0x0a2e18, 0x28 + +thumb_func_start sub_080A2E40 +sub_080A2E40: @ 0x080A2E40 +.incbin "baserom_demo.gba", 0x0a2e40, 0x14c + +thumb_func_start sub_080A2F8C +sub_080A2F8C: @ 0x080A2F8C +.incbin "baserom_demo.gba", 0x0A2F8C, 0x44 + +thumb_func_start sub_080A2FD0 +sub_080A2FD0: @ 0x080A2FD0 +.incbin "baserom_demo.gba", 0x0A2FD0, 0x210 +.endif diff --git a/asm/sub_0807CA18.s b/asm/sub_0807CA18.s index a4a4631a..34669d14 100644 --- a/asm/sub_0807CA18.s +++ b/asm/sub_0807CA18.s @@ -4,7 +4,117 @@ .syntax unified .text - + +.ifdef DEMO +thumb_func_start sub_0807CA18 +sub_0807CA18: + push {r4, r5, r6, lr} + ldr r4, _0807CA38 @ =0x02002A40 + ldrh r1, [r4, #0x00] + movs r0, #0x80 + lsls r0, r0, #0x01 + cmp r1, r0 + beq _0807C9BA + movs r2, #0x00 + strb r2, [r4, #0x00] + movs r3, #0x01 + strb r3, [r4, #0x01] + strb r3, [r4, #0x08] + adds r1, r4, #0x0 + adds r1, #0xAA + movs r0, #0x18 + strb r0, [r1, #0x00] + adds r1, #0x01 + strb r0, [r1, #0x00] + subs r1, #0x23 + movs r0, #0x22 + strb r0, [r1, #0x00] + adds r1, #0x01 + movs r0, #0x15 + strb r0, [r1, #0x00] + adds r0, r4, #0x0 + adds r0, #0x8A + strb r2, [r0, #0x00] + adds r0, #0x01 + strb r2, [r0, #0x00] + adds r0, #0x05 + strb r3, [r0, #0x00] + adds r1, #0x03 + movs r0, #0x90 + strh r0, [r1, #0x00] + adds r1, #0x02 + movs r0, #0x38 + strh r0, [r1, #0x00] +_0807C9BA: + adds r5, r4, #0x0 + adds r5, #0x80 + ldrb r0, [r5, #0x00] + cmp r0, #0x00 + bne _0807C9CE + ldr r0, _0807CA3C @ =0x0811DFF4 + adds r1, r5, #0x0 + movs r2, #0x05 + bl MemCopy +_0807C9CE: + ldr r1, _0807CA40 @ =0x0811EF10 + movs r6, #0x80 + lsls r6, r6, #0x12 + ldrb r0, [r6, #0x04] + lsls r0, r0, #0x02 + adds r0, r0, r1 + ldr r0, [r0, #0x00] + ldr r2, _0807CA44 @ =0x000004B4 + adds r1, r4, #0x0 + bl MemCopy + ldrb r0, [r6, #0x07] + adds r2, r0, #0x0 + cmp r2, #0x00 + bne _0807CA04 + movs r0, #0x97 + strb r0, [r5, #0x00] + adds r1, r4, #0x0 + adds r1, #0x81 + movs r0, #0x7F + strb r0, [r1, #0x00] + adds r1, #0x01 + movs r0, #0xDD + strb r0, [r1, #0x00] + adds r0, r4, #0x0 + adds r0, #0x83 + strb r2, [r0, #0x00] +_0807CA04: + movs r0, #0xA0 + bl ModHealth + ldr r0, _0807CA48 @ =0xFFFFD8F1 + bl ModRupees + ldr r0, _0807CA4C @ =0x02000010 + ldrb r1, [r0, #0x07] + lsls r0, r1, #0x01 + adds r0, r0, r1 + ldr r1, _0807CA50 @ =0x0811DFF9 + adds r0, r0, r1 + movs r1, #0x95 + lsls r1, r1, #0x03 + adds r2, r4, r1 + ldrb r1, [r6, #0x04] + adds r0, r0, r1 + ldrb r1, [r0, #0x00] + lsls r0, r1, #0x03 + subs r0, r0, r1 + lsls r0, r0, #0x05 + adds r0, r0, r1 + lsls r0, r0, #0x04 + str r0, [r2, #0x00] + movs r0, #0x01 + pop {r4, r5, r6, pc} +_0807CA38: .4byte 0x02002A40 @TODO ptr +_0807CA3C: .4byte 0x0811DFF4 @TODO ptr +_0807CA40: .4byte 0x0811EF10 @TODO ptr +_0807CA44: .4byte 0x000004B4 +_0807CA48: .4byte 0xFFFFD8F1 +_0807CA4C: .4byte 0x02000010 @TODO ptr +_0807CA50: .4byte 0x0811DFF9 @TODO ptr +.else thumb_func_start sub_0807CA18 sub_0807CA18: @ 0x0807CA18 push {lr} @@ -61,3 +171,4 @@ _0807CA78: .align 2, 0 _0807CA7C: .4byte gSave _0807CA80: .4byte gUnk_0811E470 +.endif diff --git a/data/const/playerItem/playerItem15.s b/data/const/playerItem/playerItem15.s index 4e7e02f0..b97be21a 100644 --- a/data/const/playerItem/playerItem15.s +++ b/data/const/playerItem/playerItem15.s @@ -7,6 +7,19 @@ gUnk_08127270:: @ 08127270 .4byte sub_080A3084 .4byte sub_080A310C - + gUnk_08127278:: @ 08127278 .incbin "baserom.gba", 0x127278, 0x0000008 + +.ifdef DEMO +@ TODO choose demo screen +something: + .4byte sub_080A2E40 + .4byte sub_080A2FD0 + .4byte sub_080A2F8C + +something2:: +.incbin "baserom_demo.gba", 0x127c98, 0x38 @nocheckin +.endif + + diff --git a/data/data_08132B30.s b/data/data_08132B30.s index 43525397..4536feb3 100644 --- a/data/data_08132B30.s +++ b/data/data_08132B30.s @@ -2477,6 +2477,7 @@ gUnk_0813A7F0:: @ 0813A7F0 .4byte gUnk_08133FDC .4byte gUnk_08133FDC .4byte gUnk_08133FDC + .ifndef DEMO .4byte gUnk_08139108 .4byte gUnk_081391D0 .4byte gUnk_081391FC @@ -2485,6 +2486,7 @@ gUnk_0813A7F0:: @ 0813A7F0 .4byte gUnk_08133FDC .4byte gUnk_08133FDC .4byte gUnk_08133FDC + .endif .4byte gUnk_081395D8 .4byte gUnk_08139714 .4byte gUnk_08138848 diff --git a/data/sprite_table.s b/data/sprite_table.s index 0d54adbb..eee54c38 100644 --- a/data/sprite_table.s +++ b/data/sprite_table.s @@ -9,3 +9,8 @@ gUnk_089FB770:: @ 089FB770 gUnk_089FB780:: @ 089FB780 .incbin "baserom.gba", 0x9FB780, 0x0000F44 + +@ More sprites in demo +.ifdef DEMO + .incbin "baserom_demo.gba", 0x9FD0F4, 0x984c +.endif diff --git a/include/structures.h b/include/structures.h index 4b5d3e17..a94d66ce 100644 --- a/include/structures.h +++ b/include/structures.h @@ -30,6 +30,8 @@ typedef struct { s32 signature; u8 field_0x4; u8 listenForKeyPresses; + u8 field_0x6; + u8 field_0x7; } struct_02000010; extern struct_02000010 gUnk_02000010; diff --git a/linker.ld b/linker.ld index f093f9f7..bdb25db7 100644 --- a/linker.ld +++ b/linker.ld @@ -152,10 +152,15 @@ SECTIONS { . = 0x00036A38; gCurrentWindow = .; . = 0x00036A40; gNewWindow = .; . = 0x00036A50; gEEPROMConfig = .; + . = 0x00036A50; gUnk_02036A50 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00036A58; gUnk_02036A58 = .; - . = 0x00036AD8; gUnk_02036AD8 = .; + . = 0x00036AD0; gUnk_02036AD0 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ + . = 0x00036AD8; gUnk_02036AD8 = .; + . = 0x00036BB0; gUnk_02036BB0 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00036BB8; gUnk_02036BB8 = .; + . = 0x00036BB8; gMPlayTracksDEMO = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00036BC0; gMPlayTracks = .; + . = 0x00038558; gUnk_02038558 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00038560; gUnk_02038560 = .; . = 0x00040000; } >ewram diff --git a/src/audio.c b/src/audio.c index 580a940e..39e1cfdd 100644 --- a/src/audio.c +++ b/src/audio.c @@ -742,7 +742,11 @@ extern const SongHeader sfx21F; extern const SongHeader sfx220; extern const SongHeader sfx221; +#ifdef DEMO +extern MusicPlayerTrack gMPlayTracksDEMO[]; +#else extern MusicPlayerTrack gMPlayTracks[]; +#endif extern MusicPlayerInfo gMPlayInfos[0x1C]; extern u8 gMPlayMemAccArea[0x10]; @@ -783,6 +787,43 @@ typedef enum { MUSIC_PLAYER_BGM, } MusicPlayerE; + +#ifdef DEMO +const MusicPlayer gMusicPlayers[] = { + [MUSIC_PLAYER_00] = { &gMPlayInfos[0x08], &gMPlayTracksDEMO[0x00], 2, 1 }, + [MUSIC_PLAYER_PLY_VO] = { &gMPlayInfos[0x12], &gMPlayTracksDEMO[0x02], 1, 1 }, + [MUSIC_PLAYER_02] = { &gMPlayInfos[0x13], &gMPlayTracksDEMO[0x03], 1, 1 }, + [MUSIC_PLAYER_03] = { &gMPlayInfos2[0x2], &gMPlayTracksDEMO[0x04], 2, 1 }, + [MUSIC_PLAYER_04] = { &gMPlayInfos[0x1B], &gMPlayTracksDEMO[0x06], 2, 1 }, + [MUSIC_PLAYER_05] = { &gMPlayInfos[0x03], &gMPlayTracksDEMO[0x08], 2, 1 }, + [MUSIC_PLAYER_06] = { &gMPlayInfos[0x07], &gMPlayTracksDEMO[0x0A], 2, 1 }, + [MUSIC_PLAYER_07] = { &gMPlayInfos[0x11], &gMPlayTracksDEMO[0x0C], 2, 1 }, + [MUSIC_PLAYER_08] = { &gMPlayInfos2[0x1], &gMPlayTracksDEMO[0x0E], 2, 1 }, + [MUSIC_PLAYER_09] = { &gMPlayInfos[0x06], &gMPlayTracksDEMO[0x10], 2, 1 }, + [MUSIC_PLAYER_0A] = { &gMPlayInfos[0x14], &gMPlayTracksDEMO[0x12], 2, 1 }, + [MUSIC_PLAYER_0B] = { &gMPlayInfos2[0x3], &gMPlayTracksDEMO[0x14], 2, 1 }, + [MUSIC_PLAYER_0C] = { &gMPlayInfos[0x19], &gMPlayTracksDEMO[0x16], 2, 1 }, + [MUSIC_PLAYER_0D] = { &gMPlayInfos[0x02], &gMPlayTracksDEMO[0x18], 2, 1 }, + [MUSIC_PLAYER_0E] = { &gMPlayInfos[0x0E], &gMPlayTracksDEMO[0x1A], 2, 1 }, + [MUSIC_PLAYER_0F] = { &gMPlayInfos[0x18], &gMPlayTracksDEMO[0x1C], 2, 1 }, + [MUSIC_PLAYER_10] = { &gMPlayInfos[0x05], &gMPlayTracksDEMO[0x1E], 2, 1 }, + [MUSIC_PLAYER_11] = { &gMPlayInfos[0x1A], &gMPlayTracksDEMO[0x20], 2, 1 }, + [MUSIC_PLAYER_12] = { &gMPlayInfos[0x0D], &gMPlayTracksDEMO[0x22], 2, 1 }, + [MUSIC_PLAYER_13] = { &gMPlayInfos[0x00], &gMPlayTracksDEMO[0x24], 2, 1 }, + [MUSIC_PLAYER_14] = { &gMPlayInfos[0x0A], &gMPlayTracksDEMO[0x26], 2, 1 }, + [MUSIC_PLAYER_15] = { &gMPlayInfos[0x0C], &gMPlayTracksDEMO[0x28], 2, 1 }, + [MUSIC_PLAYER_16] = { &gMPlayInfos[0x17], &gMPlayTracksDEMO[0x2A], 2, 1 }, + [MUSIC_PLAYER_17] = { &gMPlayInfos[0x01], &gMPlayTracksDEMO[0x2C], 2, 1 }, + [MUSIC_PLAYER_18] = { &gMPlayInfos[0x0B], &gMPlayTracksDEMO[0x2E], 2, 1 }, + [MUSIC_PLAYER_19] = { &gMPlayInfos[0x15], &gMPlayTracksDEMO[0x30], 2, 1 }, + [MUSIC_PLAYER_1A] = { &gMPlayInfos[0x09], &gMPlayTracksDEMO[0x32], 2, 1 }, + [MUSIC_PLAYER_1B] = { &gMPlayInfos2[0x0], &gMPlayTracksDEMO[0x34], 2, 1 }, + [MUSIC_PLAYER_1C] = { &gMPlayInfos[0x0F], &gMPlayTracksDEMO[0x36], 2, 1 }, + [MUSIC_PLAYER_1D] = { &gMPlayInfos[0x16], &gMPlayTracksDEMO[0x38], 2, 1 }, + [MUSIC_PLAYER_1E] = { &gMPlayInfos[0x04], &gMPlayTracksDEMO[0x3A], 0xc, 0 }, + [MUSIC_PLAYER_BGM] = { &gMPlayInfos[0x10], &gMPlayTracksDEMO[0x46], 0xc, 0 }, +}; +#else const MusicPlayer gMusicPlayers[] = { [MUSIC_PLAYER_00] = { &gMPlayInfos[0x08], &gMPlayTracks[0x00], 2, 1 }, [MUSIC_PLAYER_PLY_VO] = { &gMPlayInfos[0x12], &gMPlayTracks[0x02], 1, 1 }, @@ -817,6 +858,7 @@ const MusicPlayer gMusicPlayers[] = { [MUSIC_PLAYER_1E] = { &gMPlayInfos[0x04], &gMPlayTracks[0x3A], 0xc, 0 }, [MUSIC_PLAYER_BGM] = { &gMPlayInfos[0x10], &gMPlayTracks[0x46], 0xc, 0 }, }; +#endif const Song gSongTable[] = { [SFX_NONE] = { &sfxNone, MUSIC_PLAYER_BGM, MUSIC_PLAYER_BGM }, diff --git a/src/code_0805436C.c b/src/code_0805436C.c index 61dfa3e0..21934343 100644 --- a/src/code_0805436C.c +++ b/src/code_0805436C.c @@ -265,5 +265,7 @@ u32 CreateItemDrop(Entity* arg0, u32 itemID, u32 itemParameter) { */ void sub_08054870(void) { + #ifndef DEMO gUnk_080FE2A0[gMenu.menuType](); + #endif } diff --git a/src/code_0805F9A0.c b/src/code_0805F9A0.c index 856357d5..612c4371 100644 --- a/src/code_0805F9A0.c +++ b/src/code_0805F9A0.c @@ -4,9 +4,14 @@ #include "functions.h" extern u16 gUnk_081092D4; -extern u8 gUnk_02036AD8; extern u8 gUnk_081094CE; +#ifdef DEMO +extern u8 gUnk_02036AD0; +extern u8 gUnk_02036A50; +#else +extern u8 gUnk_02036AD8; extern u8 gUnk_02036A58; +#endif extern void* gUnk_081092AC[]; typedef struct { @@ -59,7 +64,11 @@ void sub_0805F820(WStruct* r0, u32* r1) { VStruct* temp3; if (r0->unk4 - r0->unk6 > 0) { + #ifdef DEMO + sub_08002724(r1, &gUnk_02036A50); + #else sub_08002724(r1, &gUnk_02036A58); + #endif if (r0->unk1 == 0) { u32 tmp = sub_0805F7A0(*r1); uVar6 = tmp & 0xf; @@ -77,7 +86,11 @@ void sub_0805F820(WStruct* r0, u32* r1) { uVar3 = uVar4; } + #ifdef DEMO + puVar8 = &gUnk_02036A50 + uVar6; + #else puVar8 = &gUnk_02036A58 + uVar6; + #endif temp2 = r0->unk8; temp = gUnk_0810942E[r0->unk3].filler0[r0->unk2 * 2]; uVar7 = r0->unk6; @@ -120,23 +133,40 @@ void sub_0805F918(u32 idx, u32 idx2, void* dest) { u8* temp; u8* temp2; + #ifdef DEMO + MemFill32(sub_0805F8F8(idx2), &gUnk_02036AD0, 0xe0); + #else MemFill32(sub_0805F8F8(idx2), &gUnk_02036AD8, 0xe0); + #endif puVar1 = gUnk_081092AC[idx]; temp = &gUnk_081094CE + idx2 * 0xc0; idx3 = 0; for (i = 0; i < 3; i++) { + #ifdef DEMO + puVar2 = &gUnk_02036A50; + sub_08002724(puVar1, &gUnk_02036A50); + #else puVar2 = &gUnk_02036A58; sub_08002724(puVar1, &gUnk_02036A58); + #endif puVar1 += 0x40; for (j = 0; j < 8; j++) { + #ifdef DEMO + sub_080026C4(puVar2, &gUnk_02036AD0, temp, idx3); + #else sub_080026C4(puVar2, &gUnk_02036AD8, temp, idx3); + #endif puVar2++; idx3++; } } + #ifdef DEMO + LoadResourceAsync((const void*)&gUnk_02036AD0, (u32)dest, 0xe0); + #else LoadResourceAsync((const void*)&gUnk_02036AD8, (u32)dest, 0xe0); + #endif } u32 sub_0805F9A0(u32 r0) { diff --git a/src/eeprom.c b/src/eeprom.c index 4ea218b3..945c788f 100644 --- a/src/eeprom.c +++ b/src/eeprom.c @@ -1,6 +1,10 @@ #include "global.h" #include "gba/eeprom.h" +#ifdef DEMO +const u8 unk[] = {0xff, 0xff, 0xff, 0xff}; +const u8 padding[0x18] = {}; +#else typedef struct EEPROMConfig { u32 unk_00; u16 size; @@ -9,6 +13,7 @@ typedef struct EEPROMConfig { // u8 filler[3]; } EEPROMConfig; + const char EEPROM_V124[] = "EEPROM_V124"; extern const EEPROMConfig* gEEPROMConfig; const EEPROMConfig gEEPROMConfig512 = { 0x200, 0x40, 0x300, 0x6 }; @@ -16,6 +21,8 @@ const EEPROMConfig gEEPROMConfig8k = { 0x2000, 0x400, 0x300, 0xe }; u16 EEPROMWrite(u16, const u16*, u8); + + u16 EEPROMConfigure(u16 unk_1) { u16 ret; @@ -248,3 +255,5 @@ u16 EEPROMWrite0_8k_Check(u16 address, const u16* data) { } const char thing[0x1c] = "\xff\xff\xff\xff"; + +#endif \ No newline at end of file diff --git a/src/game.c b/src/game.c index 49fe233f..4117416d 100644 --- a/src/game.c +++ b/src/game.c @@ -61,10 +61,15 @@ void sub_0805212C(void) { gMenu.transitionTimer--; if (gMenu.transitionTimer == 0) { sub_080520C4(2); + #ifdef DEMO + SoundReq(0x80080000); + DoFade(7,4); + #else sub_08052418(0, 0); gScreen.lcd.displayControl |= 0x600; gFadeControl.field_0x4 = 0xffff; DoFade(4, 0x10); + #endif } } } else { @@ -72,6 +77,13 @@ void sub_0805212C(void) { } } +#ifdef DEMO +void sub_080521A0(void) { + if (gFadeControl.active == 0) { + DoSoftReset(); + } +} +#else void sub_080521A0(void) { s32 temp3; u32 temp2; @@ -147,6 +159,7 @@ void sub_080521A0(void) { break; } } +#endif void sub_080522F4(void) { switch (gMenu.menuType) { diff --git a/src/intro.c b/src/intro.c index 8eca40dc..33e87e6c 100644 --- a/src/intro.c +++ b/src/intro.c @@ -104,6 +104,24 @@ static void HandleNintendoCapcomLogos(void) { gScreen.bg.bg1Updated = 1; DoFade(6, 8); advance = ADVANCE_NONE; + #ifdef DEMO + if (gUnk_02000010.listenForKeyPresses == 0) { + if ((gInput.heldKeys & 0x204) == 0x204) { // TODO + gUnk_02000010.field_0x7 = 1; + SoundReq(0x73); + } + else { + if ((gInput.heldKeys & 0x104) == 0x104) { // TODO + gUnk_02000010.field_0x7 = 2; + SoundReq(0xcd); + } + else { + gUnk_02000010.field_0x7 = 0; + } + } + } + #endif + } else { if (advance == ADVANCE_TIMER_EXPIRED) { advance = ADVANCE_KEY_PRESSED; diff --git a/src/main.c b/src/main.c index 78e9fdd0..3fa19e65 100644 --- a/src/main.c +++ b/src/main.c @@ -12,13 +12,20 @@ extern void HandleIntroScreen(void); extern void HandleChooseFileScreen(void); +extern void HandleChooseDemoScreen(void); extern void HandleGameplayScreen(void); extern void HandleGameOverScreen(void); extern void HandleCreditsScreen(void); extern void HandleDebugTextScreen(void); static void (*const sScreenHandlers[])(void) = { - [SCREEN_INTRO] = HandleIntroScreen, [SCREEN_CHOOSE_FILE] = HandleChooseFileScreen, + [SCREEN_INTRO] = HandleIntroScreen, + #ifdef DEMO + [SCREEN_CHOOSE_FILE] = HandleChooseDemoScreen, + #else + [SCREEN_CHOOSE_FILE] = HandleChooseFileScreen, + #endif + [SCREEN_GAMEPLAY] = HandleGameplayScreen, [SCREEN_GAME_OVER] = HandleGameOverScreen, [SCREEN_CREDITS] = HandleCreditsScreen, [SCREEN_DEBUG_TEXT] = HandleDebugTextScreen, }; @@ -83,7 +90,11 @@ void AgbMain(void) { // Interrupt handlers that are loaded into RAM. extern u8 sub_080B197C[]; extern u8 gUnk_030056F0[]; +#ifdef DEMO +extern u8 gUnk_02038558[]; +#else extern u8 gUnk_02038560[]; +#endif extern u8 gUnk_080B2CD8[]; extern u8 gUnk_080B2CD8_2[]; extern u8 gUnk_080B2CD8_3[]; @@ -105,7 +116,11 @@ static void sub_08055F70(void) { size = (u32)gUnk_080B2CD8_2 - (u32)gUnk_080B2CD8_3; if (size != 0) { + #ifdef DEMO + MemCopy(gUnk_080B2CD8_3, gUnk_02038558, size); + #else MemCopy(gUnk_080B2CD8_3, gUnk_02038560, size); + #endif } DispReset(0); diff --git a/src/room.c b/src/room.c index c2b1f07b..5e9deac0 100644 --- a/src/room.c +++ b/src/room.c @@ -2161,8 +2161,18 @@ u32 sub_0804CD0C() { return 1; } +#ifdef DEMO +void nullsub_251() { + if (gUnk_02000000->saveFileId != 0 && GetInventoryValue(0x40) == 0) { + SetTileType(0x365,0x349,1); + SetTileType(0x365,0x34a,1); + SetTileType(0x365,0x34b,1); + } +} +#else void nullsub_251() { } +#endif u32 sub_0804CD14() { return 1; @@ -2288,8 +2298,18 @@ u32 sub_0804CE38() { return 1; } +#ifdef DEMO +void nullsub_262() { + if (GetInventoryValue(0x41) == 0) { + SetTileType(0x365,0x287,2); + SetTileType(0x365,0x288,2); + SetTileType(0x365,0x289,2); + } +} +#else void nullsub_262() { } +#endif u32 sub_0804CE40() { return 1; @@ -5049,6 +5069,10 @@ void sub_0804EC00(void) { if ((s32)gSave.windcrests > -1) { LoadRoomEntityList(&gUnk_080F4E10); } + #ifdef DEMO + SetTileType(0x177,0x5b4,1); + SetTileType(0x177,0x5f4,1); + #endif } void sub_0804EC98(void) { diff --git a/src/save.c b/src/save.c index 749b6730..8b751914 100644 --- a/src/save.c +++ b/src/save.c @@ -41,10 +41,20 @@ u32 DataCompare(u32 address, const void* data, u32 size); const u16 gUnk_0811E454[] = { 0x0, 0x0, 0x100, 0x200, 0x300, 0x400, 0x500, 0x5C0, 0x680, 0x740, 0x800, 0x8C0, 0x9C0, 0xA80 }; -const char gUnk_0811E470[6] = "LINK"; +const char gUnk_0811E470[4] = "LINK"; + +#ifdef DEMO +const u8 unknown[] = { 0x0, 0x0f, 0x0a, 0x0a, 0x0f, 0x0f, 0x0f, 0x08, 0x05, 0x05, 0x00, 0x00 }; +#else +const u8 padding[2] = {0,0}; +#endif static SaveResult (*const sSaveHandlers[])(u32) = { HandleSaveInit, HandleSaveInProgress, HandleSaveDone }; + +#ifdef DEMO +asm(".incbin \"baserom_demo.gba\", 0x11e010, 0xf0c"); // @nocheckin +#else static const char sSignatureLong[32] = "AGBZELDA:THE MINISH CAP:ZELDA 5"; // Save file is untouched @@ -60,7 +70,7 @@ const SaveFileEEPROMAddresses gSaveFileEEPROMAddresses[] = { { 0x500, 0x30, 0x10 { 0x20, 0, 0, 0, 0x1000 }, { 0x20, 0x60, 0x1060, 0xf80, 0x1f80 }, { 0x8, 0xfa0, 0x1fa0, 0xfa0, 0x1fa0 } }; - +#endif void sub_0807CD9C() { sub_080530C8(); } @@ -122,7 +132,12 @@ SaveResult HandleSaveDone(u32 arg0) { return result; } + u32 InitSaveData(void) { +#ifdef DEMO + CpuSet(NULL,&gSave,0x4b4); + return 1; +#else const SaveFileEEPROMAddresses* eepromAddresses; u32 error; @@ -147,40 +162,71 @@ u32 InitSaveData(void) { DataWrite(eepromAddresses->address1, sSignatureLong, eepromAddresses->size); } return 1; +#endif } u32 WriteSaveFile(u32 index, SaveFile* saveFile) { + #ifdef DEMO + return 1; + #else return DataDoubleWriteWithStatus(index, saveFile); + #endif } u32 Write_02000000(struct_02000000* arg0) { + #ifdef DEMO + return 1; + #else return DataDoubleWriteWithStatus(3, arg0); + #endif } u32 sub_0807CF1C(u8* arg0) { + #ifdef DEMO + return 1; + #else return DataDoubleWriteWithStatus(5, arg0); + #endif } s32 ReadSaveFile(u32 index, SaveFile* saveFile) { + #ifdef DEMO + return 1; + #else return DataDoubleReadWithStatus(index, saveFile); + #endif } u32 Read_02000000(struct_02000000* arg0) { + #ifdef DEMO + return 0; + #else return DataDoubleReadWithStatus(3, arg0); + #endif } u32 sub_0807CF3C(u8* arg0) { + #ifdef DEMO + return 0; + #else return DataDoubleReadWithStatus(5, arg0); + #endif } + + void SetFileStatusDeleted(u32 index) { + #ifndef DEMO const SaveFileEEPROMAddresses* eepromAddresses; eepromAddresses = GetSaveFileEEPROMAddresses(index); WriteSaveFileStatus(eepromAddresses->checksum2, &sSaveDescDeleted); WriteSaveFileStatus(eepromAddresses->checksum1, &sSaveDescDeleted); + #endif } + +#ifndef DEMO void SetFileStatusInit(u32 index) { const SaveFileEEPROMAddresses* eepromAddresses; const SaveFileStatus* fileStatus; @@ -406,3 +452,4 @@ bool32 DataCompare(u32 address, const void* data, u32 size) { } return TRUE; } +#endif \ No newline at end of file diff --git a/src/sub_080A3B84.c b/src/sub_080A3B84.c index b4df18d0..af806c36 100644 --- a/src/sub_080A3B84.c +++ b/src/sub_080A3B84.c @@ -7,6 +7,7 @@ extern void (*const gUnk_081280C4[])(); void DrawKinstoneMenu(void) { + #ifndef DEMO gScreenTransition.field_0x24[8] = 2; FlushSprites(); gUnk_081280C4[gMenu.menuType](); @@ -18,6 +19,7 @@ void DrawKinstoneMenu(void) { sub_080AD9B0(); sub_080AD918(); gScreenTransition.field_0x24[8] = 0; + #endif } extern void gUnk_081280DC; diff --git a/tmc_demo.sha1 b/tmc_demo.sha1 new file mode 100644 index 00000000..c96b5d47 --- /dev/null +++ b/tmc_demo.sha1 @@ -0,0 +1 @@ +63fcad218f9047b6a9edbb68c98bd0dec322d7a1 tmc_demo.gba diff --git a/tmc_eu.sha1 b/tmc_eu.sha1 new file mode 100644 index 00000000..878d050b --- /dev/null +++ b/tmc_eu.sha1 @@ -0,0 +1 @@ +cff199b36ff173fb6faf152653d1bccf87c26fb7 tmc_eu.gba diff --git a/tmc_jp.sha1 b/tmc_jp.sha1 new file mode 100644 index 00000000..6ffa3cda --- /dev/null +++ b/tmc_jp.sha1 @@ -0,0 +1 @@ +6c5404a1effb17f481f352181d0f1c61a2765c5d tmc_jp.gba From 57ab4df1a088c64e29644f6a26b13e76843ec7c0 Mon Sep 17 00:00:00 2001 From: octorock <79596758+octorock@users.noreply.github.com> Date: Thu, 17 Jun 2021 20:35:06 +0200 Subject: [PATCH 02/11] Add JP variant --- Makefile | 5 +- asm/code_080043E8.s | 5 + asm/code_08018500.s | 8 + asm/code_0801967C.s | 2 + asm/code_0801D79C.s | 4 + asm/code_080526F8.s | 10 + asm/code_08054C04.s | 4 + asm/code_08078778.s | 4 + asm/code_0807F0D8.s | 2 + asm/figurineDevice.s | 29 + asm/fileScreen.s | 7 +- asm/manager37.s | 4 + asm/managerF.s | 3 + .../sittingPerson/sub_0806387C.inc | 16 + .../sittingPerson/sub_0806390C.inc | 8 + asm/non_matching/sub_0804C128.inc | 4 + asm/non_matching/sub_0804DE00.inc | 4 + asm/non_matching/sub_0804E150.inc | 4 + asm/octorokBoss.s | 4 + asm/playerItem/playerItem15.s | 9 +- asm/playerItem/playerItemSwordSpin.s | 4 + asm/vaatiArm.s | 8 + asm/vaatiWrath.s | 6 + asm/windTribeTeleporter.s | 4 + data/animations/npc/guard.s | 10 + data/const/enemy/gyorgFemale.s | 21 + data/const/manager/managerF.s | 2 + data/const/npc/forestMinish.s | 11 + data/const/npc/kid.s | 5 + data/const/npc/townsperson.s | 20 + data/const/npc/windTribespeople.s | 10 + data/const/object/object96.s | 4 + data/const/object/pinwheel.s | 4 + data/const/playerItem/playerItem15.s | 2 +- data/data_080B3740.s | 5 + data/data_080B4410.s | 5 + data/data_080B7B74.s | 5 + data/data_080C93E0.s | 45 + data/data_080D5360.s | 354 +++++++- data/data_080FC8A4.s | 30 + data/data_080FEEB8.s | 113 ++- data/data_0812AA88.s | 795 ++++++++++++++++- data/data_081320FC.s | 4 + data/data_08132B30.s | 13 + data/map_headers.s | 804 ++++++++++++++++++ data/metatile_headers.s | 70 ++ data/scripts/script_0800939A.inc | 13 + data/scripts/script_08009464.inc | 4 + data/scripts/script_080098D4.inc | 10 +- data/scripts/script_08009E88.inc | 4 + data/scripts/script_0800B200.inc | 8 + data/scripts/script_0800B308.inc | 8 + data/scripts/script_0800D6D0.inc | 8 + data/scripts/script_0800D6F0.inc | 8 + data/scripts/script_0800E0BC.inc | 12 +- data/scripts/script_0800F554.inc | 10 + data/scripts/script_0800F724.inc | 14 + data/scripts/script_0800FD0C.inc | 8 + data/scripts/script_0800FF74.inc | 24 + data/scripts/script_08010264.inc | 2 + data/scripts/script_08010964.inc | 6 + data/scripts/script_08011128.inc | 7 + data/scripts/script_0801194C.inc | 5 + data/scripts/script_08011C7C.inc | 20 +- data/scripts/script_08012430.inc | 2 + data/scripts/script_08012C68.inc | 5 + data/scripts/script_08012CD8.inc | 4 + data/scripts/script_08012D70.inc | 4 + data/scripts/script_08014450.inc | 7 + data/scripts/script_080145E8.inc | 7 + data/scripts/script_08014CDC.inc | 4 + data/scripts/script_08014E14.inc | 4 + data/scripts/script_080157AC.inc | 4 + data/scripts/script_08015B34.inc | 4 + data/scripts/script_08015BA8.inc | 4 + data/scripts/script_08015BE8.inc | 4 + data/scripts/script_08016384.inc | 4 + data/strings.s | 4 + data/tileset_headers.s | 61 ++ src/enemy/businessScrub.c | 2 + src/fileScreen.c | 2 +- src/intro.c | 33 + src/manager/manager7.c | 2 + src/npc/castleMaid.c | 8 + src/npc/castorWildsStatue.c | 4 + src/npc/dog.c | 28 + src/npc/gina.c | 2 + src/npc/npc4E.c | 26 + src/room.c | 127 ++- src/save.c | 7 +- 90 files changed, 3002 insertions(+), 22 deletions(-) diff --git a/Makefile b/Makefile index f18c9cb9..a28bdc1f 100644 --- a/Makefile +++ b/Makefile @@ -18,11 +18,12 @@ BUILD_NAME := tmc else ifeq ($(GAME_VERSION), DEMO) GAME_CODE := BZHE -BUILD_NAME := tmc +BUILD_NAME := tmc_demo else ifeq ($(GAME_VERSION), JP) GAME_CODE := BZMJ -BUILD_NAME := tmc +BUILD_NAME := tmc_jp +GAME_LANGUAGE := JAPANESE else $(error unknown version $(GAME_VERSION)) endif diff --git a/asm/code_080043E8.s b/asm/code_080043E8.s index dc71580b..590a4825 100644 --- a/asm/code_080043E8.s +++ b/asm/code_080043E8.s @@ -2257,8 +2257,13 @@ gUnk_08007D07:: @ 08007D07 .ifdef DEMO @ TODO only one byte differs .incbin "baserom_demo.gba", 0x007D07, 0x00000CF +.else +.ifdef JP +@ TODO only one byte differs + .incbin "baserom_jp.gba", 0x007D07, 0x00000CF .else .incbin "baserom.gba", 0x007D07, 0x00000CF +.endif .endif non_word_aligned_thumb_func_start sub_08007DD6 diff --git a/asm/code_08018500.s b/asm/code_08018500.s index bec8ac59..adb6ee66 100644 --- a/asm/code_08018500.s +++ b/asm/code_08018500.s @@ -169,7 +169,11 @@ sub_0801862C: @ 0x0801862C strb r0, [r1, #0xc] ldr r5, _08018650 @ =gScreenTransition adds r0, r5, #0 +.ifdef JP + adds r0, #0x34 +.else adds r0, #0x35 +.endif strb r2, [r0] ldr r4, _08018654 @ =gUnk_02033AB8 ldrb r0, [r4] @@ -627,7 +631,11 @@ _080189D0: beq _080189E4 movs r0, #0x80 lsls r0, r0, #1 +.ifdef JP + movs r1, #0x77 +.else movs r1, #0x79 +.endif bl SetLocalFlagByOffset ldr r0, _080189E8 @ =gUnk_080FEE38 bl LoadRoomEntityList diff --git a/asm/code_0801967C.s b/asm/code_0801967C.s index 347a7ffd..3c978fd9 100644 --- a/asm/code_0801967C.s +++ b/asm/code_0801967C.s @@ -985,10 +985,12 @@ _08019DE4: bne _08019DEE b _0801A2A4 _08019DEE: +.ifndef JP ldrb r0, [r4, #0xa] cmp r0, #0 beq _08019DF6 b _0801A2A4 +.endif _08019DF6: ldr r2, _08019E40 @ =gPlayerEntity ldrb r0, [r2, #0x14] diff --git a/asm/code_0801D79C.s b/asm/code_0801D79C.s index 4cbc3a6f..656da67f 100644 --- a/asm/code_0801D79C.s +++ b/asm/code_0801D79C.s @@ -2190,6 +2190,9 @@ _0801E8D2: thumb_func_start sub_0801E8D4 sub_0801E8D4: @ 0x0801E8D4 +.ifdef JP + .incbin "baserom_jp.gba", 0x01E8B8, 0x90 @nocheckin +.else push {r4, r5, lr} movs r5, #0xa _0801E8D8: @@ -2289,6 +2292,7 @@ _0801E990: pop {r4, r5, pc} .align 2, 0 _0801E998: .4byte gUnk_02002C8E +.endif thumb_func_start sub_0801E99C sub_0801E99C: @ 0x0801E99C diff --git a/asm/code_080526F8.s b/asm/code_080526F8.s index ff09831e..a75e9e39 100644 --- a/asm/code_080526F8.s +++ b/asm/code_080526F8.s @@ -620,7 +620,11 @@ sub_08052BB8: @ 0x08052BB8 push {lr} ldr r0, _08052BE0 @ =gScreenTransition adds r2, r0, #0 +.ifdef JP + adds r2, #0x34 +.else adds r2, #0x35 +.endif ldrb r1, [r2] adds r3, r0, #0 cmp r1, #0 @@ -649,6 +653,7 @@ _08052BEE: bl TextBoxAtYPosition pop {pc} +.ifndef JP thumb_func_start sub_08052BF8 sub_08052BF8: @ 0x08052BF8 push {lr} @@ -682,6 +687,7 @@ _08052C30: .align 2, 0 _08052C34: .4byte gScreenTransition _08052C38: .4byte gArea +.endif thumb_func_start sub_08052C3C sub_08052C3C: @ 0x08052C3C @@ -1309,7 +1315,11 @@ _0805310C: _0805311A: movs r0, #0x80 lsls r0, r0, #1 +.ifdef JP + movs r1, #0x9b +.else movs r1, #0x9c +.endif bl CheckLocalFlagByOffset cmp r0, #0 beq _0805312C diff --git a/asm/code_08054C04.s b/asm/code_08054C04.s index 83cc8d19..f5aee129 100644 --- a/asm/code_08054C04.s +++ b/asm/code_08054C04.s @@ -383,7 +383,11 @@ sub_08054EB8: @ 0x08054EB8 adds r1, #0x35 movs r0, #1 strb r0, [r1] +.ifdef JP + movs r0, #0x77 +.else movs r0, #0x79 +.endif strh r0, [r3, #0x3e] adds r0, r3, #0 movs r1, #6 diff --git a/asm/code_08078778.s b/asm/code_08078778.s index 323f2c4f..8f01dad2 100644 --- a/asm/code_08078778.s +++ b/asm/code_08078778.s @@ -312,7 +312,11 @@ sub_08078AA8: @ 0x08078AA8 strb r2, [r3, #0xc] ldr r2, _08078ABC @ =gScreenTransition strh r0, [r2, #0x36] +.ifdef JP + adds r2, #0x34 +.else adds r2, #0x35 +.endif strb r1, [r2] bx lr .align 2, 0 diff --git a/asm/code_0807F0D8.s b/asm/code_0807F0D8.s index 5e4b35af..8dc21086 100644 --- a/asm/code_0807F0D8.s +++ b/asm/code_0807F0D8.s @@ -1582,6 +1582,7 @@ sub_0807FBFC: @ 0x0807FBFC .align 2, 0 _0807FC20: .4byte gSave +.ifndef JP thumb_func_start sub_0807FC24 sub_0807FC24: @ 0x0807FC24 push {lr} @@ -1597,6 +1598,7 @@ _0807FC32: pop {pc} .align 2, 0 _0807FC3C: .4byte gRoomControls +.endif thumb_func_start UpdateScroll UpdateScroll: @ 0xUpdateScroll diff --git a/asm/figurineDevice.s b/asm/figurineDevice.s index 9d02534e..2d3400de 100644 --- a/asm/figurineDevice.s +++ b/asm/figurineDevice.s @@ -428,6 +428,14 @@ _08087ED8: movs r3, #0xa _08087EF0: ldrh r1, [r6, #4] +.ifdef JP + cmp r1, #0x40 + beq _08087F04 + cmp r1, #0x80 + beq _08087F0E + b _08087F16 + .align 2, 0 +.else ldr r0, _08087F00 @ =0xFFFFFEFF ands r1, r0 cmp r1, #0x40 @@ -437,6 +445,7 @@ _08087EF0: b _08087F16 .align 2, 0 _08087F00: .4byte 0xFFFFFEFF +.endif _08087F04: adds r0, r4, #0 adds r1, r3, #0 @@ -512,6 +521,9 @@ _08087F90: .4byte 0x00004022 thumb_func_start sub_08087F94 sub_08087F94: @ 0x08087F94 +.ifdef JP + .incbin "baserom_jp.gba", 0x087dac, 0xb0 @TODO disassemble +.else push {r4, r5, r6, r7, lr} adds r5, r0, #0 adds r4, r1, #0 @@ -596,6 +608,7 @@ _08088028: bl SoundReq _08088032: pop {r4, r5, r6, r7, pc} +.endif thumb_func_start sub_08088034 sub_08088034: @ 0x08088034 @@ -667,7 +680,11 @@ _080880A4: _080880B2: movs r0, #0x80 lsls r0, r0, #1 +.ifdef JP + movs r1, #0x9b +.else movs r1, #0x9c +.endif bl CheckLocalFlagByOffset cmp r0, #0 beq _080880C4 @@ -759,6 +776,9 @@ _0808815C: .4byte gSave thumb_func_start sub_08088160 sub_08088160: @ 0x08088160 +.ifdef JP + .incbin "baserom_jp.gba", 0x087f88, 0xe8 +.else push {r4, lr} adds r2, r0, #0 lsls r1, r1, #3 @@ -793,7 +813,9 @@ _08088194: b _08088262 _0808819E: ldrh r0, [r1, #4] +.ifndef JP bl CheckKinstoneFused +.endif b _08088262 _080881A6: ldrh r0, [r1, #4] @@ -886,6 +908,7 @@ _08088266: _08088268: adds r0, r4, #0 pop {r4, pc} +.endif thumb_func_start sub_0808826C sub_0808826C: @ 0x0808826C @@ -1366,6 +1389,9 @@ _08088618: .4byte gSave thumb_func_start sub_0808861C sub_0808861C: @ 0x0808861C +.ifdef JP + .incbin "baserom_jp.gba", 0x088420, 0x34 @TODO disassemble +.else push {r4, lr} adds r4, r1, #0 movs r0, #0xa8 @@ -1395,7 +1421,9 @@ _08088642: .align 2, 0 _08088650: .4byte gPlayerEntity _08088654: .4byte gActiveScriptInfo +.endif +.ifndef JP thumb_func_start sub_08088658 sub_08088658: @ 0x08088658 push {r4, lr} @@ -1423,3 +1451,4 @@ _08088678: .align 2, 0 _08088684: .4byte gPlayerEntity _08088688: .4byte gActiveScriptInfo +.endif diff --git a/asm/fileScreen.s b/asm/fileScreen.s index eee2baba..6d31d88d 100755 --- a/asm/fileScreen.s +++ b/asm/fileScreen.s @@ -255,6 +255,9 @@ _08051B5A: bl sub_08078A90 ldr r0, _08051BC8 @ =gUnk_02034490 strb r4, [r0] +.ifdef JP + bl sub_08053178 +.endif adds r0, r5, #0 adds r0, #0x28 ldrb r0, [r0] @@ -262,8 +265,10 @@ _08051B5A: beq _08051B96 bl sub_0801855C _08051B96: +.ifndef JP bl sub_08052BF8 bl sub_08053178 +.endif ldr r0, _08051BCC @ =gRoomVars ldrb r0, [r0] cmp r0, #0 @@ -424,7 +429,7 @@ _08051D28: .4byte gScreenTransition thumb_func_start sub_08051D2C sub_08051D2C: @ 0x08051D2C .ifdef DEMO - .incbin "baserom_demo.gba", 0x051df4, 0x14 @nocheckin + .incbin "baserom_demo.gba", 0x051df4, 0x14 @TODO disassemble .else push {lr} movs r0, #7 diff --git a/asm/manager37.s b/asm/manager37.s index 1068f88c..3d1d80e4 100644 --- a/asm/manager37.s +++ b/asm/manager37.s @@ -34,6 +34,9 @@ _0805DE64: .4byte gUnk_08108DC4 thumb_func_start sub_0805DE68 sub_0805DE68: @ 0x0805DE68 +.ifdef JP + .incbin "baserom_jp.gba", 0x05dcbc, 0x3c @TODO disassemble +.else push {r4, lr} adds r4, r0, #0 movs r0, #0x7b @@ -70,6 +73,7 @@ _0805DE7A: _0805DEAC: .4byte gScreenTransition _0805DEB0: .4byte gSave _0805DEB4: .4byte 0x00001194 +.endif thumb_func_start sub_0805DEB8 sub_0805DEB8: @ 0x0805DEB8 diff --git a/asm/managerF.s b/asm/managerF.s index cded2d58..191c3554 100644 --- a/asm/managerF.s +++ b/asm/managerF.s @@ -851,8 +851,10 @@ _08059540: .align 2, 0 _08059544: .4byte gArea + thumb_func_start sub_08059548 sub_08059548: @ 0x08059548 +.ifndef JP push {lr} movs r1, #6 bl sub_0805E3A0 @@ -871,3 +873,4 @@ _0805955C: .align 2, 0 _08059568: .4byte gPlayerEntity _0805956C: .4byte gInput +.endif diff --git a/asm/non_matching/sittingPerson/sub_0806387C.inc b/asm/non_matching/sittingPerson/sub_0806387C.inc index 1ebc3a3c..7ff53936 100644 --- a/asm/non_matching/sittingPerson/sub_0806387C.inc +++ b/asm/non_matching/sittingPerson/sub_0806387C.inc @@ -2,16 +2,28 @@ push {r4, r5, r6, lr} adds r6, r0, #0 movs r4, #3 +.ifdef JP + movs r0, #0xd7 +.else movs r0, #0xda +.endif bl CheckLocalFlag cmp r0, #0 bne _08063896 movs r4, #0 +.ifdef JP + movs r0, #0xd7 +.else movs r0, #0xda +.endif bl SetLocalFlag b _080638D6 _08063896: +.ifdef JP + movs r0, #0xce +.else movs r0, #0xd1 +.endif bl CheckLocalFlag cmp r0, #0 bne _080638D6 @@ -32,7 +44,11 @@ _080638B2: cmp r5, #0x81 ble _080638D6 movs r4, #2 +.ifdef JP + movs r0, #0xce +.else movs r0, #0xd1 +.endif bl SetLocalFlag ldr r0, _080638FC @ =0x00000A17 movs r1, #1 diff --git a/asm/non_matching/sittingPerson/sub_0806390C.inc b/asm/non_matching/sittingPerson/sub_0806390C.inc index acde9c97..5de14422 100644 --- a/asm/non_matching/sittingPerson/sub_0806390C.inc +++ b/asm/non_matching/sittingPerson/sub_0806390C.inc @@ -2,12 +2,20 @@ push {r4, r5, lr} adds r4, r0, #0 movs r5, #1 +.ifdef JP + movs r0, #0xd6 +.else movs r0, #0xd9 +.endif bl CheckLocalFlag cmp r0, #0 bne _0806392E movs r5, #0 +.ifdef JP + movs r0, #0xd6 +.else movs r0, #0xd9 +.endif bl SetLocalFlag adds r0, r4, #0 adds r0, #0x84 diff --git a/asm/non_matching/sub_0804C128.inc b/asm/non_matching/sub_0804C128.inc index a2f04934..ca770dbf 100644 --- a/asm/non_matching/sub_0804C128.inc +++ b/asm/non_matching/sub_0804C128.inc @@ -116,7 +116,11 @@ _0804C206: bne _0804C250 movs r0, #1 bl sub_080AF250 +.ifdef JP + movs r0, #0x5a +.else movs r0, #0x5c +.endif bl CheckLocalFlag cmp r0, #0 bne _0804C228 diff --git a/asm/non_matching/sub_0804DE00.inc b/asm/non_matching/sub_0804DE00.inc index bbaabc05..c1326428 100644 --- a/asm/non_matching/sub_0804DE00.inc +++ b/asm/non_matching/sub_0804DE00.inc @@ -67,7 +67,11 @@ _0804DE5C: strh r0, [r1, #0x10] bl sub_08052EA0 bl sub_0804AF90 +.ifdef JP + movs r0, #0xca +.else movs r0, #0xcd +.endif bl CheckLocalFlag cmp r0, #0 bne _0804DEC4 diff --git a/asm/non_matching/sub_0804E150.inc b/asm/non_matching/sub_0804E150.inc index b8e67282..c4fcb207 100644 --- a/asm/non_matching/sub_0804E150.inc +++ b/asm/non_matching/sub_0804E150.inc @@ -24,7 +24,11 @@ _0804E17C: ldrh r0, [r4, #2] cmp r0, #0 bne _0804E168 +.ifdef JP + movs r0, #0xce +.else movs r0, #0xd1 +.endif bl CheckLocalFlag cmp r0, #0 bne _0804E1BA diff --git a/asm/octorokBoss.s b/asm/octorokBoss.s index e9a21351..9b5142e6 100644 --- a/asm/octorokBoss.s +++ b/asm/octorokBoss.s @@ -176,6 +176,9 @@ _080352FA: thumb_func_start sub_080352FC sub_080352FC: @ 0x080352FC +.ifdef JP + .incbin "baserom_jp.gba", 0x0352a0, 0x1fc @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sl mov r6, sb @@ -421,6 +424,7 @@ _080354E8: pop {r4, r5, r6, r7, pc} .align 2, 0 _080354F4: .4byte 0x00000109 +.endif thumb_func_start sub_080354F8 sub_080354F8: @ 0x080354F8 diff --git a/asm/playerItem/playerItem15.s b/asm/playerItem/playerItem15.s index d8aeb205..b2d26ba1 100644 --- a/asm/playerItem/playerItem15.s +++ b/asm/playerItem/playerItem15.s @@ -206,20 +206,19 @@ _080A3200: // DEMO only functions .ifdef DEMO -// @nocheckin thumb_func_start HandleChooseDemoScreen HandleChooseDemoScreen: @ 0x080A2E18 -.incbin "baserom_demo.gba", 0x0a2e18, 0x28 +.incbin "baserom_demo.gba", 0x0a2e18, 0x28 @TODO disassemble thumb_func_start sub_080A2E40 sub_080A2E40: @ 0x080A2E40 -.incbin "baserom_demo.gba", 0x0a2e40, 0x14c +.incbin "baserom_demo.gba", 0x0a2e40, 0x14c @TODO disassemble thumb_func_start sub_080A2F8C sub_080A2F8C: @ 0x080A2F8C -.incbin "baserom_demo.gba", 0x0A2F8C, 0x44 +.incbin "baserom_demo.gba", 0x0A2F8C, 0x44 @TODO disassemble thumb_func_start sub_080A2FD0 sub_080A2FD0: @ 0x080A2FD0 -.incbin "baserom_demo.gba", 0x0A2FD0, 0x210 +.incbin "baserom_demo.gba", 0x0A2FD0, 0x210 @TODO disassemble .endif diff --git a/asm/playerItem/playerItemSwordSpin.s b/asm/playerItem/playerItemSwordSpin.s index a9e178dd..f91f2956 100644 --- a/asm/playerItem/playerItemSwordSpin.s +++ b/asm/playerItem/playerItemSwordSpin.s @@ -166,7 +166,11 @@ sub_0801BB2C: @ 0x0801BB2C ldrb r0, [r5, #0xb] adds r1, r4, #0 movs r2, #5 +.ifdef JP + bl CreateItemEntity +.else bl sub_080A7C18 +.endif ldr r0, _0801BB8C @ =0x00000109 bl SoundReq _0801BB64: diff --git a/asm/vaatiArm.s b/asm/vaatiArm.s index b8d9e69f..46cc2189 100644 --- a/asm/vaatiArm.s +++ b/asm/vaatiArm.s @@ -1004,7 +1004,11 @@ _08042C92: _08042C9E: ldrh r0, [r3, #0x20] adds r0, r1, r0 +.ifdef JP + subs r0, #0x20 +.else subs r0, #0x40 +.endif cmp r0, r5 bge _08042CAA adds r5, r0, #0 @@ -3156,6 +3160,9 @@ _08043C8C: thumb_func_start sub_08043C98 sub_08043C98: @ 0x08043C98 +.ifdef JP + .incbin "baserom_jp.gba", 0x043BB0, 0x20 @TODO disassemble +.else push {lr} adds r3, r0, #0 ldr r0, [r3, #0x64] @@ -3187,6 +3194,7 @@ _08043CD0: movs r0, #0 _08043CD2: pop {pc} +.endif thumb_func_start sub_08043CD4 sub_08043CD4: @ 0x08043CD4 diff --git a/asm/vaatiWrath.s b/asm/vaatiWrath.s index cb1c8367..cf180e03 100644 --- a/asm/vaatiWrath.s +++ b/asm/vaatiWrath.s @@ -64,6 +64,9 @@ _0804139C: .4byte gUnk_080D0E1C thumb_func_start sub_080413A0 sub_080413A0: @ 0x080413A0 +.ifdef JP + .incbin "baserom_jp.gba", 0x041344, 0x18 @TODO disassemble +.else push {r4, lr} adds r4, r0, #0 bl sub_080423A4 @@ -77,6 +80,7 @@ sub_080413A0: @ 0x080413A0 pop {r4, pc} .align 2, 0 _080413BC: .4byte gUnk_080D0E2C +.endif thumb_func_start sub_080413C0 sub_080413C0: @ 0x080413C0 @@ -2130,6 +2134,7 @@ sub_0804235C: @ 0x0804235C bl InitializeAnimation pop {r4, r5, pc} +.ifndef JP thumb_func_start sub_080423A4 sub_080423A4: @ 0x080423A4 push {r4, lr} @@ -2196,6 +2201,7 @@ _0804241C: .align 2, 0 _08042420: .4byte gPlayerState _08042424: .4byte gPlayerEntity +.endif thumb_func_start sub_08042428 sub_08042428: @ 0x08042428 diff --git a/asm/windTribeTeleporter.s b/asm/windTribeTeleporter.s index 7476e405..d9b16c88 100644 --- a/asm/windTribeTeleporter.s +++ b/asm/windTribeTeleporter.s @@ -115,6 +115,9 @@ _080A0FFE: thumb_func_start sub_080A1000 sub_080A1000: @ 0x080A1000 +.ifdef JP + .incbin "baserom_jp.gba", 0x0a0dc8, 0xd0 +.else push {r4, lr} adds r4, r0, #0 ldrb r1, [r4, #0xd] @@ -232,6 +235,7 @@ _080A10D4: .align 2, 0 _080A10D8: .4byte gScreenTransition _080A10DC: .4byte gPlayerEntity +.endif thumb_func_start sub_080A10E0 sub_080A10E0: @ 0x080A10E0 diff --git a/data/animations/npc/guard.s b/data/animations/npc/guard.s index 004385ba..761eb951 100644 --- a/data/animations/npc/guard.s +++ b/data/animations/npc/guard.s @@ -23,10 +23,20 @@ gUnk_0810F60E:: @ 0810F60E .incbin "baserom.gba", 0x10F60E, 0x0000005 gUnk_0810F613:: @ 0810F613 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x10F2D7, 0x0000007 +.else .incbin "baserom.gba", 0x10F613, 0x0000007 +.endif gUnk_0810F61A:: @ 0810F61A +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x10F2DE, 0x000002E +.else .incbin "baserom.gba", 0x10F61A, 0x000002E +.endif gUnk_0810F648:: @ 0810F648 .incbin "baserom.gba", 0x10F648, 0x000003A diff --git a/data/const/enemy/gyorgFemale.s b/data/const/enemy/gyorgFemale.s index 60a78671..f0c0b262 100644 --- a/data/const/enemy/gyorgFemale.s +++ b/data/const/enemy/gyorgFemale.s @@ -20,16 +20,37 @@ gUnk_080D1A84:: @ 080D1A84 .incbin "baserom.gba", 0x0D1A84, 0x0000010 gUnk_080D1A94:: @ 080D1A94 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D1834, 0x0000018 +.else .incbin "baserom.gba", 0x0D1A94, 0x0000018 +.endif + gUnk_080D1AAC:: @ 080D1AAC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D184C, 0x0000018 +.else .incbin "baserom.gba", 0x0D1AAC, 0x0000018 +.endif gUnk_080D1AC4:: @ 080D1AC4 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D1864, 0x0000018 +.else .incbin "baserom.gba", 0x0D1AC4, 0x0000018 +.endif gUnk_080D1ADC:: @ 080D1ADC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D187C, 0x0000018 +.else .incbin "baserom.gba", 0x0D1ADC, 0x0000018 +.endif gUnk_080D1AF4:: @ 080D1AF4 .incbin "baserom.gba", 0x0D1AF4, 0x0000004 diff --git a/data/const/manager/managerF.s b/data/const/manager/managerF.s index e7bc3e0a..4ecc53df 100644 --- a/data/const/manager/managerF.s +++ b/data/const/manager/managerF.s @@ -20,7 +20,9 @@ gUnk_08108314:: @ 08108314 .4byte sub_08059424 .4byte sub_0805947C .4byte sub_080594DC +.ifndef JP .4byte sub_08059548 +.endif gUnk_08108354:: @ 08108354 .incbin "baserom.gba", 0x108354, 0x000002C diff --git a/data/const/npc/forestMinish.s b/data/const/npc/forestMinish.s index c3ddcdf0..2a6d36a7 100644 --- a/data/const/npc/forestMinish.s +++ b/data/const/npc/forestMinish.s @@ -66,10 +66,21 @@ gUnk_08109F67:: @ 08109F67 .incbin "baserom.gba", 0x109F67, 0x0000005 gUnk_08109F6C:: @ 08109F6C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x109C30, 0x000002B +.else .incbin "baserom.gba", 0x109F6C, 0x000002B +.endif + gUnk_08109F97:: @ 08109F97 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x109C5B, 0x00000B1 +.else .incbin "baserom.gba", 0x109F97, 0x00000B1 +.endif gUnk_0810A048:: @ 0810A048 .incbin "baserom.gba", 0x10A048, 0x0000024 diff --git a/data/const/npc/kid.s b/data/const/npc/kid.s index 2664711c..c85f402f 100644 --- a/data/const/npc/kid.s +++ b/data/const/npc/kid.s @@ -51,7 +51,12 @@ gUnk_0810C007:: @ 0810C007 .incbin "baserom.gba", 0x10C007, 0x0000008 gUnk_0810C00F:: @ 0810C00F +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x10BCD3, 0x0000091 +.else .incbin "baserom.gba", 0x10C00F, 0x0000091 +.endif gUnk_0810C0A0:: @ 0810C0A0 .incbin "baserom.gba", 0x10C0A0, 0x0000024 diff --git a/data/const/npc/townsperson.s b/data/const/npc/townsperson.s index cb65d071..498f4461 100644 --- a/data/const/npc/townsperson.s +++ b/data/const/npc/townsperson.s @@ -83,16 +83,31 @@ gUnk_0810B8EB:: @ 0810B8EB .incbin "baserom.gba", 0x10B8EB, 0x0000037 gUnk_0810B922:: @ 0810B922 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x10B5E6, 0x0000049 +.else .incbin "baserom.gba", 0x10B922, 0x0000049 +.endif gUnk_0810B96B:: @ 0810B96B +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x10B62F, 0x0000065 +.else .incbin "baserom.gba", 0x10B96B, 0x0000065 +.endif gUnk_0810B9D0:: @ 0810B9D0 .incbin "baserom.gba", 0x10B9D0, 0x0000031 gUnk_0810BA01:: @ 0810BA01 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x10B6C5, 0x0000117 +.else .incbin "baserom.gba", 0x10BA01, 0x0000117 +.endif gUnk_0810BB18:: @ 0810BB18 .incbin "baserom.gba", 0x10BB18, 0x0000044 @@ -103,7 +118,12 @@ gUnk_0810BB71:: @ 0810BB71 .incbin "baserom.gba", 0x10BB71, 0x000005B gUnk_0810BBCC:: @ 0810BBCC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x10B890, 0x000009C +.else .incbin "baserom.gba", 0x10BBCC, 0x000009C +.endif gUnk_0810BC68:: @ 0810BC68 .incbin "baserom.gba", 0x10BC68, 0x0000098 diff --git a/data/const/npc/windTribespeople.s b/data/const/npc/windTribespeople.s index a6775c7b..0ec5129e 100644 --- a/data/const/npc/windTribespeople.s +++ b/data/const/npc/windTribespeople.s @@ -46,10 +46,20 @@ gUnk_08113B22:: @ 08113B22 .incbin "baserom.gba", 0x113B22, 0x0000006 gUnk_08113B28:: @ 08113B28 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1137EC, 0x0000008 +.else .incbin "baserom.gba", 0x113B28, 0x0000008 +.endif gUnk_08113B30:: @ 08113B30 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1137F4, 0x0000008 +.else .incbin "baserom.gba", 0x113B30, 0x0000008 +.endif gUnk_08113B38:: @ 08113B38 .incbin "baserom.gba", 0x113B38, 0x0000007 diff --git a/data/const/object/object96.s b/data/const/object/object96.s index 728a2e19..bfc43378 100644 --- a/data/const/object/object96.s +++ b/data/const/object/object96.s @@ -20,7 +20,11 @@ gUnk_08123FB0:: @ 08123FB0 .4byte 00000000 .4byte 0x00001800 .4byte 0x00180000 +.ifdef JP + .4byte 0x000000CD +.else .4byte 0x000000d0 +.endif .4byte sub_0809D91C .4byte 00000000 .4byte 00000000 diff --git a/data/const/object/pinwheel.s b/data/const/object/pinwheel.s index 89049ebc..e9db3be1 100644 --- a/data/const/object/pinwheel.s +++ b/data/const/object/pinwheel.s @@ -5,7 +5,11 @@ .align 2 gUnk_08125050:: @ 08125050 +.ifdef JP + .incbin "baserom_jp.gba", 0x124D14, 0x000000C +.else .incbin "baserom.gba", 0x125050, 0x000000C +.endif gUnk_0812505C:: @ 0812505C .4byte sub_080A23DC diff --git a/data/const/playerItem/playerItem15.s b/data/const/playerItem/playerItem15.s index b97be21a..c962fa97 100644 --- a/data/const/playerItem/playerItem15.s +++ b/data/const/playerItem/playerItem15.s @@ -19,7 +19,7 @@ something: .4byte sub_080A2F8C something2:: -.incbin "baserom_demo.gba", 0x127c98, 0x38 @nocheckin +.incbin "baserom_demo.gba", 0x127c98, 0x38 .endif diff --git a/data/data_080B3740.s b/data/data_080B3740.s index d3fcf25e..2313efa0 100644 --- a/data/data_080B3740.s +++ b/data/data_080B3740.s @@ -42,4 +42,9 @@ gUnk_080B3D14:: @ 080B3D14 .incbin "baserom.gba", 0x0B3D14, 0x000000C gUnk_080B3D20:: @ 080B3D20 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0B3AC0, 0x00000B0 +.else .incbin "baserom.gba", 0x0B3D20, 0x00000B0 +.endif diff --git a/data/data_080B4410.s b/data/data_080B4410.s index 14bbfc78..74f3323f 100644 --- a/data/data_080B4410.s +++ b/data/data_080B4410.s @@ -5,7 +5,12 @@ .align 2 gUnk_080B4410:: @ 080B4410 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0B41B0, 0x0000048 +.else .incbin "baserom.gba", 0x0B4410, 0x0000048 +.endif gUnk_080B4458:: @ 080B4458 .4byte sub_08019698 diff --git a/data/data_080B7B74.s b/data/data_080B7B74.s index d24988ce..e6b2417d 100644 --- a/data/data_080B7B74.s +++ b/data/data_080B7B74.s @@ -593,7 +593,12 @@ gUnk_080C2F35:: @ 080C2F35 .incbin "baserom.gba", 0x0C2F35, 0x000010A gUnk_080C303F:: @ 080C303F +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0C2DDF, 0x00032A4 +.else .incbin "baserom.gba", 0x0C303F, 0x00032A4 +.endif gUnk_080C62E3:: @ 080C62E3 .incbin "baserom.gba", 0x0C62E3, 0x000207D diff --git a/data/data_080C93E0.s b/data/data_080C93E0.s index d139a224..c52d6a80 100644 --- a/data/data_080C93E0.s +++ b/data/data_080C93E0.s @@ -77,19 +77,39 @@ gUnk_080C9864:: @ 080C9864 .4byte gUnk_080C9854 gUnk_080C9870:: @ 080C9870 +.ifdef JP + .incbin "baserom_jp.gba", 0x0C9610, 0x0000078 +.else .incbin "baserom.gba", 0x0C9870, 0x0000078 +.endif gUnk_080C98E8:: @ 080C98E8 +.ifdef JP + .incbin "baserom_jp.gba", 0x0C9688, 0x0000040 +.else .incbin "baserom.gba", 0x0C98E8, 0x0000040 +.endif gUnk_080C9928:: @ 080C9928 +.ifdef JP + .incbin "baserom_jp.gba", 0x0C96C8, 0x0000060 +.else .incbin "baserom.gba", 0x0C9928, 0x0000060 +.endif gUnk_080C9988:: @ 080C9988 +.ifdef JP + .incbin "baserom_jp.gba", 0x0C9728, 0x0000060 +.else .incbin "baserom.gba", 0x0C9988, 0x0000060 +.endif gUnk_080C99E8:: @ 080C99E8 +.ifdef JP + .incbin "baserom_jp.gba", 0x0C9788, 0x0000048 +.else .incbin "baserom.gba", 0x0C99E8, 0x0000048 +.endif gUnk_080C9A30:: @ 080C9A30 .4byte gUnk_080C9870 @@ -99,19 +119,39 @@ gUnk_080C9A30:: @ 080C9A30 .4byte gUnk_080C99E8 gUnk_080C9A44:: @ 080C9A44 +.ifdef JP + .incbin "baserom_jp.gba", 0x0C97E4, 0x0000038 +.else .incbin "baserom.gba", 0x0C9A44, 0x0000038 +.endif gUnk_080C9A7C:: @ 080C9A7C +.ifdef JP + .incbin "baserom_jp.gba", 0x0C981C, 0x00000B0 +.else .incbin "baserom.gba", 0x0C9A7C, 0x00000B0 +.endif gUnk_080C9B2C:: @ 080C9B2C +.ifdef JP + .incbin "baserom_jp.gba", 0x0C98CC, 0x0000088 +.else .incbin "baserom.gba", 0x0C9B2C, 0x0000088 +.endif gUnk_080C9BB4:: @ 080C9BB4 +.ifdef JP + .incbin "baserom_jp.gba", 0x0C9954, 0x0000068 +.else .incbin "baserom.gba", 0x0C9BB4, 0x0000068 +.endif gUnk_080C9C1C:: @ 080C9C1C +.ifdef JP + .incbin "baserom_jp.gba", 0x0C99BC, 0x0000020 +.else .incbin "baserom.gba", 0x0C9C1C, 0x0000020 +.endif gUnk_080C9C3C:: @ 080C9C3C .4byte gUnk_080C9A44 @@ -139,7 +179,12 @@ gUnk_080C9CAC:: @ 080C9CAC .4byte sub_0801E0A0 gUnk_080C9CBC:: @ 080C9CBC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0C9A5C, 0x00003B0 +.else .incbin "baserom.gba", 0x0C9CBC, 0x00003B0 +.endif gUnk_080CA06C:: @ 080CA06C .incbin "baserom.gba", 0x0CA06C, 0x00000B0 diff --git a/data/data_080D5360.s b/data/data_080D5360.s index 4833c66b..40cc38c1 100644 --- a/data/data_080D5360.s +++ b/data/data_080D5360.s @@ -1888,11 +1888,21 @@ Area_EzloCutscene_Main:: @ 080D8F98 .4byte nullsub_195 gUnk_080D8FB8:: @ 080D8FB8 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D8D58, 0x000005C +.else .incbin "baserom.gba", 0x0D8FB8, 0x000005C +.endif .4byte script_08009698 .incbin "baserom.gba", 0x0D9018, 0x000000C .4byte script_08009740 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D8DC8, 0x0000020 +.else .incbin "baserom.gba", 0x0D9028, 0x0000020 +.endif gUnk_080D9048:: @ 080D9048 .incbin "baserom.gba", 0x0D9048, 0x0000050 @@ -1917,13 +1927,23 @@ gUnk_080D9108:: @ 080D9108 .incbin "baserom.gba", 0x0D9108, 0x0000020 gUnk_080D9128:: @ 080D9128 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D8EC8, 0x00000C0 +.else .incbin "baserom.gba", 0x0D9128, 0x00000C0 +.endif gUnk_080D91E8:: @ 080D91E8 .incbin "baserom.gba", 0x0D91E8, 0x0000090 gUnk_080D9278:: @ 080D9278 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D9018, 0x0000018 +.else .incbin "baserom.gba", 0x0D9278, 0x0000018 +.endif Room_RoyalValley_Main:: @ 080D9290 .4byte gUnk_080D8FB8 @@ -1945,7 +1965,12 @@ gUnk_080D92E0:: @ 080D92E0 .incbin "baserom.gba", 0x0D92E0, 0x0000048 gUnk_080D9328:: @ 080D9328 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D90C8, 0x0000010 +.else .incbin "baserom.gba", 0x0D9328, 0x0000010 +.endif gUnk_080D9338:: @ 080D9338 .incbin "baserom.gba", 0x0D9338, 0x0000008 @@ -2118,7 +2143,12 @@ Room_MinishRafters_Bakery:: @ 080D9AB8 .4byte sub_0804C324 gUnk_080D9AD8:: @ 080D9AD8 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D9878, 0x000004C +.else .incbin "baserom.gba", 0x0D9AD8, 0x000004C +.endif .4byte script_0800B200 .incbin "baserom.gba", 0x0D9B28, 0x000000C .4byte script_0800B308 @@ -2128,13 +2158,22 @@ gUnk_080D9AD8:: @ 080D9AD8 .4byte script_0800B284 .incbin "baserom.gba", 0x0D9B58, 0x000000C .4byte script_0800B2B4 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D9908, 0x00000D0 +.else .incbin "baserom.gba", 0x0D9B68, 0x00000D0 - +.endif gUnk_080D9C38:: @ 080D9C38 .incbin "baserom.gba", 0x0D9C38, 0x0000070 gUnk_080D9CA8:: @ 080D9CA8 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D9A48, 0x0000020 +.else .incbin "baserom.gba", 0x0D9CA8, 0x0000020 +.endif gUnk_080D9CC8:: @ 080D9CC8 .incbin "baserom.gba", 0x0D9CC8, 0x0000020 @@ -2154,7 +2193,12 @@ gUnk_080D9E28:: @ 080D9E28 .incbin "baserom.gba", 0x0D9E28, 0x0000030 gUnk_080D9E58:: @ 080D9E58 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0D9BF8, 0x0000010 +.else .incbin "baserom.gba", 0x0D9E58, 0x0000010 +.endif gUnk_080D9E68:: @ 080D9E68 .incbin "baserom.gba", 0x0D9E68, 0x0000040 @@ -2454,7 +2498,11 @@ Room_GardenFountains_East:: @ 080DA514 .4byte nullsub_208 gUnk_080DA534:: @ 080DA534 +.ifdef JP + .incbin "baserom_jp.gba", 0x0DA2D4, 0x40 +.else .incbin "baserom.gba", 0x0DA534, 0x0000050 +.endif gUnk_080DA584:: @ 080DA584 .incbin "baserom.gba", 0x0DA584, 0x0000010 @@ -4077,7 +4125,12 @@ Room_MelarisMine_Main:: @ 080DD31C .4byte gUnk_080DD274 gUnk_080DD344:: @ 080DD344 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DD0D4, 0x0000020 +.else .incbin "baserom.gba", 0x0DD344, 0x0000020 +.endif gUnk_080DD364:: @ 080DD364 .incbin "baserom.gba", 0x0DD364, 0x000000C @@ -4104,7 +4157,12 @@ Room_CloudTops_House:: @ 080DD3EC .4byte sub_0804CA54 gUnk_080DD40C:: @ 080DD40C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DD19C, 0x0000090 +.else .incbin "baserom.gba", 0x0DD40C, 0x0000090 +.endif gUnk_080DD49C:: @ 080DD49C .incbin "baserom.gba", 0x0DD49C, 0x0000130 @@ -4116,7 +4174,12 @@ gUnk_080DD6BC:: @ 080DD6BC .incbin "baserom.gba", 0x0DD6BC, 0x0000010 gUnk_080DD6CC:: @ 080DD6CC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DD45C, 0x0000040 +.else .incbin "baserom.gba", 0x0DD6CC, 0x0000040 +.endif Room_CloudTops_Middle:: @ 080DD70C .4byte gUnk_080DD40C @@ -4142,16 +4205,31 @@ gUnk_080DD750:: @ 080DD750 .incbin "baserom.gba", 0x0DD780, 0x0000010 gUnk_080DD790:: @ 080DD790 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DD520, 0x0000050 +.else .incbin "baserom.gba", 0x0DD790, 0x0000050 +.endif gUnk_080DD7E0:: @ 080DD7E0 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DD570, 0x0000040 +.else .incbin "baserom.gba", 0x0DD7E0, 0x0000040 +.endif gUnk_080DD820:: @ 080DD820 .incbin "baserom.gba", 0x0DD820, 0x0000020 gUnk_080DD840:: @ 080DD840 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DD5D0, 0x0000040 +.else .incbin "baserom.gba", 0x0DD840, 0x0000040 +.endif gUnk_080DD880:: @ 080DD880 .incbin "baserom.gba", 0x0DD880, 0x0000020 @@ -4230,7 +4308,12 @@ Room_CloudTops_Bottom:: @ 080DDBC8 .4byte gUnk_080DD880 gUnk_080DDC00:: @ 080DDC00 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DD990, 0x0000020 +.else .incbin "baserom.gba", 0x0DDC00, 0x0000020 +.endif gUnk_080DDC20:: @ 080DDC20 .incbin "baserom.gba", 0x0DDC20, 0x0000030 @@ -4239,7 +4322,12 @@ gUnk_080DDC50:: @ 080DDC50 .incbin "baserom.gba", 0x0DDC50, 0x0000080 gUnk_080DDCD0:: @ 080DDCD0 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DDA60, 0x0000010 +.else .incbin "baserom.gba", 0x0DDCD0, 0x0000010 +.endif gUnk_080DDCE0:: @ 080DDCE0 .incbin "baserom.gba", 0x0DDCE0, 0x0000010 @@ -4275,7 +4363,12 @@ gUnk_080DDD74:: @ 080DDD74 .incbin "baserom.gba", 0x0DDD74, 0x0000010 gUnk_080DDD84:: @ 080DDD84 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DDB14, 0x0000030 +.else .incbin "baserom.gba", 0x0DDD84, 0x0000030 +.endif gUnk_080DDDB4:: @ 080DDDB4 .incbin "baserom.gba", 0x0DDDB4, 0x0000040 @@ -4302,7 +4395,12 @@ Room_Ruins_Beanstalk:: @ 080DDE20 .4byte gUnk_080DDE0C gUnk_080DDE48:: @ 080DDE48 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DDBD8, 0x0000040 +.else .incbin "baserom.gba", 0x0DDE48, 0x0000040 +.endif gUnk_080DDE88:: @ 080DDE88 .incbin "baserom.gba", 0x0DDE88, 0x0000020 @@ -4361,7 +4459,12 @@ Room_Ruins_LadderToTektites:: @ 080DDFC8 .4byte nullsub_38 gUnk_080DDFE8:: @ 080DDFE8 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DDD78, 0x0000018 +.else .incbin "baserom.gba", 0x0DDFE8, 0x0000018 +.endif gUnk_080DE000:: @ 080DE000 .incbin "baserom.gba", 0x0DE000, 0x0000008 @@ -4378,7 +4481,12 @@ gUnk_080DE048:: @ 080DE048 .incbin "baserom.gba", 0x0DE048, 0x00000A0 gUnk_080DE0E8:: @ 080DE0E8 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DDE78, 0x0000030 +.else .incbin "baserom.gba", 0x0DE0E8, 0x0000030 +.endif gUnk_080DE118:: @ 080DE118 .incbin "baserom.gba", 0x0DE118, 0x0000014 @@ -4395,7 +4503,12 @@ Room_Ruins_FortressEntrance:: @ 080DE12C .4byte gUnk_080DE118 gUnk_080DE150:: @ 080DE150 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DDEE0, 0x0000090 +.else .incbin "baserom.gba", 0x0DE150, 0x0000090 +.endif gUnk_080DE1E0:: @ 080DE1E0 .incbin "baserom.gba", 0x0DE1E0, 0x0000020 @@ -4416,7 +4529,12 @@ gUnk_080DE2B0:: @ 080DE2B0 .incbin "baserom.gba", 0x0DE2B0, 0x0000070 gUnk_080DE320:: @ 080DE320 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0DE0B0, 0x0000018 +.else .incbin "baserom.gba", 0x0DE320, 0x0000018 +.endif gUnk_080DE338:: @ 080DE338 .incbin "baserom.gba", 0x0DE338, 0x0000014 @@ -4771,7 +4889,11 @@ Room_DeepwoodShrine_BossKey:: @ 080DF46C .4byte nullsub_253 gUnk_080DF48C:: @ 080DF48C +.ifdef JP + .incbin "baserom_jp.gba", 0x0DF21C, 0x00000E0 +.else .incbin "baserom.gba", 0x0DF48C, 0x00000F0 +.endif gUnk_080DF57C:: @ 080DF57C .incbin "baserom.gba", 0x0DF57C, 0x0000020 @@ -4834,7 +4956,11 @@ gUnk_080DF72C:: @ 080DF72C .incbin "baserom.gba", 0x0DF72C, 0x00000D2 gUnk_080DF7FE:: @ 080DF7FE +.ifdef JP + .incbin "baserom_jp.gba", 0x0DF57E, 0x000002E +.else .incbin "baserom.gba", 0x0DF7FE, 0x000003E +.endif gUnk_080DF83C:: @ 080DF83C .incbin "baserom.gba", 0x0DF83C, 0x0000020 @@ -6271,7 +6397,11 @@ Room_FortressOfWinds_Stalfos:: @ 080E2D60 .4byte gUnk_080E2D00 gUnk_080E2D84:: @ 080E2D84 +.ifdef JP + .incbin "baserom_jp.gba", 0x0E2AF4, 0x0000090 +.else .incbin "baserom.gba", 0x0E2D84, 0x00000B0 +.endif gUnk_080E2E34:: @ 080E2E34 .incbin "baserom.gba", 0x0E2E34, 0x0000010 @@ -8905,7 +9035,11 @@ Room_DarkHyruleCastleBridge_Main:: @ 080EAC40 .4byte sub_0804D758 gUnk_080EAC60:: @ 080EAC60 +.ifdef JP + .incbin "baserom_jp.gba", 0x0EA9B0, 0x0000020 +.else .incbin "baserom.gba", 0x0EAC60, 0x0000030 +.endif gUnk_080EAC90:: @ 080EAC90 .incbin "baserom.gba", 0x0EAC90, 0x0000010 @@ -8924,7 +9058,11 @@ Room_VaatisArms_First:: @ 080EACA8 .4byte nullsub_74 gUnk_080EACC8:: @ 080EACC8 +.ifdef JP + .incbin "baserom_jp.gba", 0x0EAA08, 0x0000020 +.else .incbin "baserom.gba", 0x0EACC8, 0x0000030 +.endif gUnk_080EACF8:: @ 080EACF8 .incbin "baserom.gba", 0x0EACF8, 0x0000010 @@ -10483,7 +10621,12 @@ gUnk_080EE7EC:: @ 080EE7EC .4byte nullsub_374 gUnk_080EE80C:: @ 080EE80C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0EE53C, 0x000006C +.else .incbin "baserom.gba", 0x0EE80C, 0x000006C +.endif .4byte script_08010AE4 .incbin "baserom.gba", 0x0EE87C, 0x0000010 @@ -10563,7 +10706,12 @@ gUnk_080EEABC:: @ 080EEABC .incbin "baserom.gba", 0x0EEABC, 0x0000020 gUnk_080EEADC:: @ 080EEADC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0EE80C, 0x0000090 +.else .incbin "baserom.gba", 0x0EEADC, 0x0000090 +.endif gUnk_080EEB6C:: @ 080EEB6C .incbin "baserom.gba", 0x0EEB6C, 0x0000020 @@ -10588,13 +10736,22 @@ gUnk_080EEBCC:: @ 080EEBCC .incbin "baserom.gba", 0x0EEC3C, 0x0000010 gUnk_080EEC4C:: @ 080EEC4C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0EE97C, 0x0000070 +.else .incbin "baserom.gba", 0x0EEC4C, 0x0000070 +.endif gUnk_080EECBC:: @ 080EECBC .incbin "baserom.gba", 0x0EECBC, 0x0000020 gUnk_080EECDC:: @ 080EECDC +.ifdef JP + .incbin "baserom_jp.gba", 0x0EEA0C, 0x0000048 +.else .incbin "baserom.gba", 0x0EECDC, 0x0000050 +.endif gUnk_080EED2C:: @ 080EED2C .incbin "baserom.gba", 0x0EED2C, 0x000004E @@ -11502,7 +11659,12 @@ Room_HyruleTownUnderground_Well:: @ 080F0610 .4byte nullsub_088 gUnk_080F0630:: @ 080F0630 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F0358, 0x0000020 +.else .incbin "baserom.gba", 0x0F0630, 0x0000020 +.endif gUnk_080F0650:: @ 080F0650 .incbin "baserom.gba", 0x0F0650, 0x000000C @@ -11610,10 +11772,20 @@ gUnk_080F0920:: @ 080F0920 .incbin "baserom.gba", 0x0F0930, 0x0000010 gUnk_080F0940:: @ 080F0940 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F0668, 0x0000060 +.else .incbin "baserom.gba", 0x0F0940, 0x0000060 +.endif gUnk_080F09A0:: @ 080F09A0 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F06C8, 0x0000060 +.else .incbin "baserom.gba", 0x0F09A0, 0x0000060 +.endif gUnk_080F0A00:: @ 080F0A00 .incbin "baserom.gba", 0x0F0A00, 0x0000002 @@ -11628,7 +11800,12 @@ gUnk_080F0A10:: @ 080F0A10 .incbin "baserom.gba", 0x0F0A10, 0x0000001 gUnk_080F0A11:: @ 080F0A11 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F0739, 0x000001F +.else .incbin "baserom.gba", 0x0F0A11, 0x000001F +.endif gUnk_080F0A30:: @ 080F0A30 .incbin "baserom.gba", 0x0F0A30, 0x0000020 @@ -12621,7 +12798,11 @@ Room_HouseInteriors2_B:: @ 080F2B78 .4byte gUnk_080F2B58 gUnk_080F2B9C:: @ 080F2B9C +.ifdef JP + .incbin "baserom_jp.gba", 0x0F28C4, 0x00000BC +.else .incbin "baserom.gba", 0x0F2B9C, 0x00000CC +.endif .4byte script_08010120 .incbin "baserom.gba", 0x0F2C6C, 0x0000010 @@ -13096,7 +13277,12 @@ gUnk_080F40AC:: @ 080F40AC .incbin "baserom.gba", 0x0F40AC, 0x0000010 gUnk_080F40BC:: @ 080F40BC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F3DD4, 0x0000030 +.else .incbin "baserom.gba", 0x0F40BC, 0x0000030 +.endif gUnk_080F40EC:: @ 080F40EC .incbin "baserom.gba", 0x0F40EC, 0x00000A0 @@ -13408,8 +13594,13 @@ Room_OuterFortressOfWinds_SmallKey:: @ 080F4CDC gEntities_MinishWoods_0:: @ 080F4D00 object_minish_lilypad x=0x1F8, y=0x3D8, room_property=0x12 object_minish_lilypad x=0x1A8, y=0x3B8, room_property=0x13 +.ifdef JP + object_item x=0xC8, y=0x134, item=0x63, flag=0x3B, collision=1 + object_item x=0x198, y=0x2B4, item=0x63, flag=0x3C, collision=1 +.else object_item x=0xC8, y=0x134, item=0x63, flag=0x3C, collision=1 object_item x=0x198, y=0x2B4, item=0x63, flag=0x3D, collision=1 +.endif entity_list_end gUnk_080F4D50:: @ 080F4D50 @@ -13535,13 +13726,25 @@ gUnk_080F51F0:: @ 080F51F0 .incbin "baserom.gba", 0x0F51F0, 0x0000030 gRoomTiles_MinishWoods_0:: @ 080F5220 +.ifdef JP + .byte 0x0A, 0x01, 0x35, 0x00, 0x0A, 0x08, 0x1D, 0x00 + .byte 0x0A, 0x01, 0x36, 0x00, 0x0B, 0x08, 0x1D, 0x00 + .byte 0x0A, 0x01, 0x37, 0x00, 0x83, 0x0D, 0x1D, 0x00 + .byte 0x0A, 0x01, 0x38, 0x00, 0x84, 0x0D, 0x1D, 0x00 + .byte 0x0A, 0x01, 0x39, 0x00, 0x85, 0x0D, 0x1D, 0x00 +.else .byte 0x0A, 0x01, 0x36, 0x00, 0x0A, 0x08, 0x1D, 0x00 .byte 0x0A, 0x01, 0x37, 0x00, 0x0B, 0x08, 0x1D, 0x00 .byte 0x0A, 0x01, 0x38, 0x00, 0x83, 0x0D, 0x1D, 0x00 .byte 0x0A, 0x01, 0x39, 0x00, 0x84, 0x0D, 0x1D, 0x00 .byte 0x0A, 0x01, 0x3A, 0x00, 0x85, 0x0D, 0x1D, 0x00 +.endif .byte 0x05, 0x00, 0x00, 0x05, 0x6A, 0x01, 0x05, 0x06 +.ifdef JP + .byte 0x05, 0x00, 0x00, 0x17, 0xDB, 0x03, 0x17, 0x06 +.else .byte 0x05, 0x00, 0x00, 0x1F, 0xDB, 0x03, 0x1F, 0x06 +.endif .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 Room_MinishWoods_Main:: @ 080F5260 @@ -14451,7 +14654,12 @@ gUnk_080F6F1C:: @ 080F6F1C .incbin "baserom.gba", 0x0F6F1C, 0x0000010 gUnk_080F6F2C:: @ 080F6F2C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F6C44, 0x0000050 +.else .incbin "baserom.gba", 0x0F6F2C, 0x0000050 +.endif gUnk_080F6F7C:: @ 080F6F7C .incbin "baserom.gba", 0x0F6F7C, 0x0000040 @@ -14498,13 +14706,23 @@ gUnk_080F70D8:: @ 080F70D8 .incbin "baserom.gba", 0x0F70E8, 0x0000010 gUnk_080F70F8:: @ 080F70F8 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F6E10, 0x0000060 +.else .incbin "baserom.gba", 0x0F70F8, 0x0000060 +.endif gUnk_080F7158:: @ 080F7158 .incbin "baserom.gba", 0x0F7158, 0x00000C0 gUnk_080F7218:: @ 080F7218 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F6F30, 0x0000088 +.else .incbin "baserom.gba", 0x0F7218, 0x0000088 +.endif gUnk_080F72A0:: @ 080F72A0 .incbin "baserom.gba", 0x0F72A0, 0x0000010 @@ -14534,7 +14752,12 @@ gUnk_080F734C:: @ 080F734C .incbin "baserom.gba", 0x0F734C, 0x0000040 gUnk_080F738C:: @ 080F738C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F70A4, 0x0000020 +.else .incbin "baserom.gba", 0x0F738C, 0x0000020 +.endif Room_HyruleField_FromMinishWoods:: @ 080F73AC .4byte gUnk_080F72EC @@ -14550,13 +14773,23 @@ gUnk_080F73CC:: @ 080F73CC .incbin "baserom.gba", 0x0F73CC, 0x0000010 gUnk_080F73DC:: @ 080F73DC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F70F4, 0x0000040 +.else .incbin "baserom.gba", 0x0F73DC, 0x0000040 +.endif gUnk_080F741C:: @ 080F741C .incbin "baserom.gba", 0x0F741C, 0x0000070 gUnk_080F748C:: @ 080F748C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F71A4, 0x0000018 +.else .incbin "baserom.gba", 0x0F748C, 0x0000018 +.endif gUnk_080F74A4:: @ 080F74A4 .incbin "baserom.gba", 0x0F74A4, 0x0000010 @@ -14615,7 +14848,12 @@ gUnk_080F7680:: @ 080F7680 .incbin "baserom.gba", 0x0F7680, 0x0000040 gUnk_080F76C0:: @ 080F76C0 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F73D8, 0x0000038 +.else .incbin "baserom.gba", 0x0F76C0, 0x0000038 +.endif Room_HyruleField_Farmers:: @ 080F76F8 .4byte gUnk_080F74F0 @@ -14630,7 +14868,12 @@ Room_HyruleField_Farmers:: @ 080F76F8 .4byte gUnk_080F7570 gUnk_080F7720:: @ 080F7720 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F7438, 0x0000050 +.else .incbin "baserom.gba", 0x0F7720, 0x0000050 +.endif gUnk_080F7770:: @ 080F7770 .incbin "baserom.gba", 0x0F7770, 0x0000050 @@ -14674,7 +14917,12 @@ gUnk_080F78C0:: @ 080F78C0 .incbin "baserom.gba", 0x0F78CC, 0x0000014 gUnk_080F78E0:: @ 080F78E0 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F75F8, 0x00000F0 +.else .incbin "baserom.gba", 0x0F78E0, 0x00000F0 +.endif gUnk_080F79D0:: @ 080F79D0 .incbin "baserom.gba", 0x0F79D0, 0x0000050 @@ -14688,7 +14936,12 @@ gUnk_080F7A44:: @ 080F7A44 .incbin "baserom.gba", 0x0F7A44, 0x00000B0 gUnk_080F7AF4:: @ 080F7AF4 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F780C, 0x0000048 +.else .incbin "baserom.gba", 0x0F7AF4, 0x0000048 +.endif gUnk_080F7B3C:: @ 080F7B3C .incbin "baserom.gba", 0x0F7B3C, 0x0000018 @@ -14730,7 +14983,12 @@ EntityData_HyruleField_OutsideCastle:: @ 080F7BF0 .incbin "baserom.gba", 0x0F7BF0, 0x0000010 ManagerData_HyruleField_OutsideCastle:: @ 080F7C00 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F7918, 0x0000080 +.else .incbin "baserom.gba", 0x0F7C00, 0x0000080 +.endif gUnk_080F7C80:: @ 080F7C80 .incbin "baserom.gba", 0x0F7C80, 0x000000C @@ -14785,7 +15043,12 @@ EnemyData_HyruleField_OutsideCastle:: @ 080F7E20 .incbin "baserom.gba", 0x0F7E20, 0x00000F0 TileData_HyruleField_OutsideCastle:: @ 080F7F10 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F7C28, 0x0000070 +.else .incbin "baserom.gba", 0x0F7F10, 0x0000070 +.endif gUnk_080F7F80:: @ 080F7F80 .incbin "baserom.gba", 0x0F7F80, 0x0000018 @@ -14828,13 +15091,23 @@ gUnk_080F806C:: @ 080F806C .incbin "baserom.gba", 0x0F807C, 0x0000010 ManagerData_HyruleField_OutsideCastleWest:: @ 080F808C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F7DA4, 0x0000060 +.else .incbin "baserom.gba", 0x0F808C, 0x0000060 +.endif EnemyData_HyruleField_OutsideCastleWest:: @ 080F80EC .incbin "baserom.gba", 0x0F80EC, 0x00000B0 TileData_HyruleField_OutsideCastleWest:: @ 080F819C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F7EB4, 0x0000028 +.else .incbin "baserom.gba", 0x0F819C, 0x0000028 +.endif gUnk_080F81C4:: @ 080F81C4 .incbin "baserom.gba", 0x0F81C4, 0x0000010 @@ -14855,7 +15128,11 @@ Room_HyruleField_OutsideCastleWest:: @ 080F81E8 .4byte gUnk_080F81D4 EntityData_HyruleField_TrilbyHighlands:: @ 080F8210 +.ifdef JP + .incbin "baserom_jp.gba", 0x0F7F28, 0x00000B0 +.else .incbin "baserom.gba", 0x0F8210, 0x00000D0 +.endif gUnk_080F82E0:: @ 080F82E0 .incbin "baserom.gba", 0x0F82E0, 0x000000C @@ -14869,7 +15146,12 @@ EnemyData_HyruleField_TrilbyHighlands:: @ 080F8320 .incbin "baserom.gba", 0x0F8320, 0x00000C0 TileData_HyruleField_TrilbyHighlands:: @ 080F83E0 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F80D8, 0x0000020 +.else .incbin "baserom.gba", 0x0F83E0, 0x0000020 +.endif Room_HyruleField_TrilbyHighlands:: @ 080F8400 .4byte EntityData_HyruleField_TrilbyHighlands @@ -15223,7 +15505,11 @@ Room_Caves_LonLonRanchWallet:: @ 080F8CD4 .4byte nullsub_90 gUnk_080F8CF4:: @ 080F8CF4 +.ifdef JP + .incbin "baserom_jp.gba", 0x0F89EC, 0x0000100 +.else .incbin "baserom.gba", 0x0F8CF4, 0x0000110 +.endif gUnk_080F8E04:: @ 080F8E04 .incbin "baserom.gba", 0x0F8E04, 0x0000010 @@ -15242,7 +15528,11 @@ Room_Caves_RupeeLinksHouse:: @ 080F8E1C .4byte nullsub_91 gUnk_080F8E3C:: @ 080F8E3C +.ifdef JP + .incbin "baserom_jp.gba", 0x0F8B24, 0x0000100 +.else .incbin "baserom.gba", 0x0F8E3C, 0x0000110 +.endif gUnk_080F8F4C:: @ 080F8F4C .incbin "baserom.gba", 0x0F8F4C, 0x0000010 @@ -15261,7 +15551,11 @@ Room_Caves_RupeeTrilbyHighlands:: @ 080F8F64 .4byte nullsub_92 gUnk_080F8F84:: @ 080F8F84 +.ifdef JP + .incbin "baserom_jp.gba", 0x0F8C5C, 0x0000050 +.else .incbin "baserom.gba", 0x0F8F84, 0x0000060 +.endif gUnk_080F8FE4:: @ 080F8FE4 .incbin "baserom.gba", 0x0F8FE4, 0x0000010 @@ -15337,7 +15631,11 @@ Room_Caves_HeartPieceHallway:: @ 080F9154 .4byte nullsub_96 gUnk_080F9174:: @ 080F9174 +.ifdef JP + .incbin "baserom_jp.gba", 0x0F8E3C, 0x0000040 +.else .incbin "baserom.gba", 0x0F9174, 0x0000050 +.endif gUnk_080F91C4:: @ 080F91C4 .incbin "baserom.gba", 0x0F91C4, 0x0000010 @@ -15375,7 +15673,12 @@ Room_Caves_KinstoneBusinessScrub:: @ 080F9244 .4byte nullsub_98 gUnk_080F9264:: @ 080F9264 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F8F1C, 0x00000A0 +.else .incbin "baserom.gba", 0x0F9264, 0x00000A0 +.endif gUnk_080F9304:: @ 080F9304 .incbin "baserom.gba", 0x0F9304, 0x000000C @@ -15400,7 +15703,12 @@ gUnk_080F9354:: @ 080F9354 .incbin "baserom.gba", 0x0F9354, 0x0000120 gUnk_080F9474:: @ 080F9474 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F912C, 0x0000010 +.else .incbin "baserom.gba", 0x0F9474, 0x0000010 +.endif gUnk_080F9484:: @ 080F9484 .incbin "baserom.gba", 0x0F9484, 0x0000010 @@ -15622,7 +15930,12 @@ gUnk_080F9B78:: @ 080F9B78 .incbin "baserom.gba", 0x0F9BC8, 0x0000030 gUnk_080F9BF8:: @ 080F9BF8 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0F98B0, 0x000002C +.else .incbin "baserom.gba", 0x0F9BF8, 0x000002C +.endif .4byte script_08009320 .incbin "baserom.gba", 0x0F9C28, 0x0000010 @@ -16385,10 +16698,20 @@ Room_TreeInteriors_1F:: @ 080FAC08 .4byte nullsub_463 gUnk_080FAC28:: @ 080FAC28 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FA8E0, 0x0000060 +.else .incbin "baserom.gba", 0x0FAC28, 0x0000060 +.endif gUnk_080FAC88:: @ 080FAC88 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FA940, 0x0000030 +.else .incbin "baserom.gba", 0x0FAC88, 0x0000030 +.endif gUnk_080FACB8:: @ 080FACB8 .incbin "baserom.gba", 0x0FACB8, 0x0000090 @@ -16445,7 +16768,12 @@ gUnk_080FAEBC:: @ 080FAEBC .incbin "baserom.gba", 0x0FAEBC, 0x00000E0 gUnk_080FAF9C:: @ 080FAF9C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FAC54, 0x0000018 +.else .incbin "baserom.gba", 0x0FAF9C, 0x0000018 +.endif Room_MtCrenel_WallClimb:: @ 080FAFB4 .4byte gUnk_080FAE9C @@ -16477,7 +16805,12 @@ gUnk_080FB104:: @ 080FB104 .incbin "baserom.gba", 0x0FB104, 0x00000F0 gUnk_080FB1F4:: @ 080FB1F4 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FAEAC, 0x0000020 +.else .incbin "baserom.gba", 0x0FB1F4, 0x0000020 +.endif gUnk_080FB214:: @ 080FB214 .incbin "baserom.gba", 0x0FB214, 0x0000020 @@ -16512,7 +16845,12 @@ gUnk_080FB2E0:: @ 080FB2E0 .incbin "baserom.gba", 0x0FB2E0, 0x0000130 gUnk_080FB410:: @ 080FB410 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FB0C8, 0x0000050 +.else .incbin "baserom.gba", 0x0FB410, 0x0000050 +.endif Room_MtCrenel_GustJarShortcut:: @ 080FB460 .4byte gUnk_080FB2A0 @@ -16525,7 +16863,12 @@ Room_MtCrenel_GustJarShortcut:: @ 080FB460 .4byte nullsub_464 gUnk_080FB480:: @ 080FB480 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FB138, 0x0000150 +.else .incbin "baserom.gba", 0x0FB480, 0x0000150 +.endif gUnk_080FB5D0:: @ 080FB5D0 .incbin "baserom.gba", 0x0FB5D0, 0x0000030 @@ -16534,7 +16877,11 @@ gUnk_080FB600:: @ 080FB600 .incbin "baserom.gba", 0x0FB600, 0x0000100 gUnk_080FB700:: @ 080FB700 +.ifdef JP + .incbin "baserom_jp.gba", 0x0FB3B8, 0x0000040 +.else .incbin "baserom.gba", 0x0FB700, 0x0000048 +.endif gUnk_080FB748:: @ 080FB748 .incbin "baserom.gba", 0x0FB748, 0x0000020 @@ -16942,7 +17289,12 @@ gUnk_080FC3C4:: @ 080FC3C4 .incbin "baserom.gba", 0x0FC3C4, 0x0000020 gUnk_080FC3E4:: @ 080FC3E4 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FC094, 0x0000460 +.else .incbin "baserom.gba", 0x0FC3E4, 0x0000460 +.endif gUnk_080FC844:: @ 080FC844 .incbin "baserom.gba", 0x0FC844, 0x0000018 diff --git a/data/data_080FC8A4.s b/data/data_080FC8A4.s index 4ae5d7cd..0d065fc0 100644 --- a/data/data_080FC8A4.s +++ b/data/data_080FC8A4.s @@ -126,7 +126,12 @@ gUnk_080FCB38:: @ 080FCB38 .incbin "baserom.gba", 0x0FCB38, 0x000002A gUnk_080FCB62:: @ 080FCB62 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FC812, 0x0000032 +.else .incbin "baserom.gba", 0x0FCB62, 0x0000032 +.endif gUnk_080FCB94:: @ 080FCB94 .incbin "baserom.gba", 0x0FCB94, 0x0000020 @@ -1210,10 +1215,20 @@ gUnk_080FE2AC:: @ 080FE2AC .4byte sub_08055D80 gUnk_080FE320:: @ 080FE320 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FDFD0, 0x00002F0 +.else .incbin "baserom.gba", 0x0FE320, 0x00002F0 +.endif gUnk_080FE610:: @ 080FE610 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FE2C0, 0x00004B8 +.else .incbin "baserom.gba", 0x0FE610, 0x00004B8 +.endif gUnk_080FEAC8:: @ 080FEAC8 .incbin "baserom.gba", 0x0FEAC8, 0x0000003 @@ -1222,10 +1237,20 @@ gUnk_080FEACB:: @ 080FEACB .incbin "baserom.gba", 0x0FEACB, 0x0000023 gUnk_080FEAEE:: @ 080FEAEE +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FE79E, 0x000002C +.else .incbin "baserom.gba", 0x0FEAEE, 0x000002C +.endif gUnk_080FEB1A:: @ 080FEB1A +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FE7CA, 0x00000C2 +.else .incbin "baserom.gba", 0x0FEB1A, 0x00000C2 +.endif gUnk_080FEBDC:: @ 080FEBDC .incbin "baserom.gba", 0x0FEBDC, 0x000000C @@ -1275,7 +1300,12 @@ gUnk_080FEE48:: @ 080FEE48 .incbin "baserom.gba", 0x0FEE48, 0x0000010 gUnk_080FEE58:: @ 080FEE58 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FEB08, 0x0000020 +.else .incbin "baserom.gba", 0x0FEE58, 0x0000020 +.endif gUnk_080FEE78:: @ 080FEE78 .incbin "baserom.gba", 0x0FEE78, 0x0000030 diff --git a/data/data_080FEEB8.s b/data/data_080FEEB8.s index 1efc0e47..7b5b2f24 100644 --- a/data/data_080FEEB8.s +++ b/data/data_080FEEB8.s @@ -36,7 +36,11 @@ gUnk_080FEF3C:: @ 080FEF3C gUnk_080FEF48:: @ 080FEF48 .incbin "baserom.gba", 0x0FEF48, 0x000000C .4byte script_0800BC50 +.ifdef JP + .incbin "baserom_jp.gba", 0x0FEC08, 0x0000020 +.else .incbin "baserom.gba", 0x0FEF58, 0x0000020 +.endif gUnk_080FEF78:: @ 080FEF78 .incbin "baserom.gba", 0x0FEF78, 0x000000C @@ -1106,13 +1110,26 @@ gUnk_080FFB90:: @ 080FFB90 .incbin "baserom.gba", 0x0FFB90, 0x0000018 gUnk_080FFBA8:: @ 080FFBA8 +.ifdef JP + .incbin "baserom_jp.gba", 0x0FF858, 0x0000035 +.else .incbin "baserom.gba", 0x0FFBA8, 0x0000035 +.endif gUnk_080FFBDD:: @ 080FFBDD +.ifdef JP + .incbin "baserom_jp.gba", 0x0FF88D, 0x000001f +.else .incbin "baserom.gba", 0x0FFBDD, 0x0000013 +.endif gUnk_080FFBF0:: @ 080FFBF0 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FF8AC, 0x0000024 +.else .incbin "baserom.gba", 0x0FFBF0, 0x0000024 +.endif gUnk_080FFC14:: @ 080FFC14 .incbin "baserom.gba", 0x0FFC14, 0x0000024 @@ -1121,7 +1138,12 @@ gUnk_080FFC38:: @ 080FFC38 .incbin "baserom.gba", 0x0FFC38, 0x0000030 gUnk_080FFC68:: @ 080FFC68 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FF924, 0x0000018 +.else .incbin "baserom.gba", 0x0FFC68, 0x0000018 +.endif gUnk_080FFC80:: @ 080FFC80 .incbin "baserom.gba", 0x0FFC80, 0x000000C @@ -1139,16 +1161,36 @@ gUnk_080FFCC8:: @ 080FFCC8 .incbin "baserom.gba", 0x0FFCC8, 0x000000C gUnk_080FFCD4:: @ 080FFCD4 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FF990, 0x0000018 +.else .incbin "baserom.gba", 0x0FFCD4, 0x0000018 +.endif gUnk_080FFCEC:: @ 080FFCEC .incbin "baserom.gba", 0x0FFCEC, 0x0000001 gUnk_080FFCED:: @ 080FFCED +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FF9A9, 0x0000017 +.else .incbin "baserom.gba", 0x0FFCED, 0x0000017 +.endif gUnk_080FFD04:: @ 080FFD04 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x0FF9C0, 0x0000018 +.else .incbin "baserom.gba", 0x0FFD04, 0x0000018 +.endif + +.ifdef JP +gUnk_080FF9D8:: @ 080FF9D8 + .incbin "baserom_jp.gba", 0x0FF9D8, 0x000000C +.endif gUnk_080FFD1C:: @ 080FFD1C .incbin "baserom.gba", 0x0FFD1C, 0x000000C @@ -1433,7 +1475,12 @@ gUnk_08100358:: @ 08100358 .incbin "baserom.gba", 0x100358, 0x0000030 gUnk_08100388:: @ 08100388 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x100050, 0x0000054 +.else .incbin "baserom.gba", 0x100388, 0x0000054 +.endif gUnk_081003DC:: @ 081003DC .incbin "baserom.gba", 0x1003DC, 0x0000024 @@ -1442,34 +1489,79 @@ gUnk_08100400:: @ 08100400 .incbin "baserom.gba", 0x100400, 0x0000001 gUnk_08100401:: @ 08100401 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1000C9, 0x0000006 +.else .incbin "baserom.gba", 0x100401, 0x0000006 +.endif gUnk_08100407:: @ 08100407 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1000CF, 0x000001D +.else .incbin "baserom.gba", 0x100407, 0x000001D +.endif gUnk_08100424:: @ 08100424 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1000EC, 0x0000048 +.else .incbin "baserom.gba", 0x100424, 0x0000048 +.endif gUnk_0810046C:: @ 0810046C +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x100134, 0x0000048 +.else .incbin "baserom.gba", 0x10046C, 0x0000048 +.endif gUnk_081004B4:: @ 081004B4 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x10017C, 0x0000018 +.else .incbin "baserom.gba", 0x1004B4, 0x0000018 +.endif gUnk_081004CC:: @ 081004CC +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x100194, 0x0000024 +.else .incbin "baserom.gba", 0x1004CC, 0x0000024 +.endif gUnk_081004F0:: @ 081004F0 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1001B8, 0x0000008 +.else .incbin "baserom.gba", 0x1004F0, 0x0000008 +.endif gUnk_081004F8:: @ 081004F8 .incbin "baserom.gba", 0x1004F8, 0x0000002 gUnk_081004FA:: @ 081004FA +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1001C2, 0x0000004 +.else .incbin "baserom.gba", 0x1004FA, 0x0000004 +.endif gUnk_081004FE:: @ 081004FE +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1001C6, 0x0000012 +.else .incbin "baserom.gba", 0x1004FE, 0x0000012 +.endif gUnk_08100510:: @ 08100510 .incbin "baserom.gba", 0x100510, 0x0000001 @@ -1628,7 +1720,12 @@ gUnk_08100940:: @ 08100940 .incbin "baserom.gba", 0x100940, 0x0000030 gUnk_08100970:: @ 08100970 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x100638, 0x000003C +.else .incbin "baserom.gba", 0x100970, 0x000003C +.endif gUnk_081009AC:: @ 081009AC .incbin "baserom.gba", 0x1009AC, 0x000000C @@ -1670,10 +1767,20 @@ gUnk_08100A0C:: @ 08100A0C .incbin "baserom.gba", 0x100A0C, 0x0000005 gUnk_08100A11:: @ 08100A11 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1006D9, 0x000001F +.else .incbin "baserom.gba", 0x100A11, 0x000001F +.endif gUnk_08100A30:: @ 08100A30 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x1006F8, 0x0000054 +.else .incbin "baserom.gba", 0x100A30, 0x0000054 +.endif gUnk_08100A84:: @ 08100A84 .incbin "baserom.gba", 0x100A84, 0x000000C @@ -1696,7 +1803,11 @@ gUnk_08100AA8:: @ 08100AA8 .4byte gUnk_080FFC8C .4byte gUnk_080FFCEC .4byte gUnk_080FFD04 - .4byte gUnk_080FFD1C +.ifdef JP + .4byte gUnk_080FF9D8 +.else + .4byte gUnk_080FFD1C +.endif .4byte gUnk_080FFC98 .4byte gUnk_080FFCB0 .4byte gUnk_080FFCC8 diff --git a/data/data_0812AA88.s b/data/data_0812AA88.s index 4e250809..5c94a158 100644 --- a/data/data_0812AA88.s +++ b/data/data_0812AA88.s @@ -451,6 +451,768 @@ gUnk_0812B1F8:: @ 0812B1F8 gUnk_0812B204:: @ 0812B204 .incbin "baserom.gba", 0x12B204, 0x0000008 +.ifdef JP +ENUM_12AED0: + .4byte gUnk_0812B204 + .4byte ENUM_12AED0_LV1_CLEAR_MES + .4byte ENUM_12AED0_LV2_CLEAR_MES + .4byte ENUM_12AED0_LV3_CLEAR_MES + .4byte ENUM_12AED0_LV4_CLEAR_MES + .4byte ENUM_12AED0_LV5_CLEAR_MES + .4byte ENUM_12AED0_MIZUUMI_00_BENT + .4byte ENUM_12AED0_MIZUUMI_00_00 + .4byte ENUM_12AED0_MIZUUMI_00_H00 + .4byte ENUM_12AED0_MIZUUMI_00_H01 + .4byte ENUM_12AED0_MIZUUMI_00_H02 + .4byte ENUM_12AED0_HIKYOU_00_T0 + .4byte ENUM_12AED0_HIKYOU_00_T1 + .4byte ENUM_12AED0_MAENIWA_00_00 + .4byte ENUM_12AED0_MAENIWA_00_01 + .4byte ENUM_12AED0_MAENIWA_00_02 + .4byte ENUM_12AED0_MAENIWA_00_BENT + .4byte ENUM_12AED0_MAENIWA_00_WARP + .4byte ENUM_12AED0_MAENIWA_00_T0 + .4byte ENUM_12AED0_MAENIWA_00_T1 + .4byte ENUM_12AED0_MAENIWA_00_CAP_0 + .4byte ENUM_12AED0_NAKANIWA_00_EZERO + .4byte ENUM_12AED0_HIKYOU_00_00 + .4byte ENUM_12AED0_HIKYOU_00_01 + .4byte ENUM_12AED0_HIKYOU_00_02 + .4byte ENUM_12AED0_HIKYOU_00_03 + .4byte ENUM_12AED0_HIKYOU_00_04 + .4byte ENUM_12AED0_HIKYOU_00_CAP_0 + .4byte ENUM_12AED0_HIKYOU_00_CAP_1 + .4byte ENUM_12AED0_HIKYOU_00_CAP_2 + .4byte ENUM_12AED0_HIKYOU_00_SEKIZOU + .4byte ENUM_12AED0_HIKYOU_00_14 + .4byte ENUM_12AED0_HIKYOU_00_BOSEKI + .4byte ENUM_12AED0_HIKYOU_00_H00 + .4byte ENUM_12AED0_HIKYOU_00_M0 + .4byte ENUM_12AED0_HIKYOU_00_M1 + .4byte ENUM_12AED0_HIKYOU_00_M2 + .4byte ENUM_12AED0_LOST_00_ENTER + .4byte ENUM_12AED0_LOST_00_00 + .4byte ENUM_12AED0_LOST_00_01 + .4byte ENUM_12AED0_LOST_02_00 + .4byte ENUM_12AED0_LOST_03_00 + .4byte ENUM_12AED0_LOST_03_T0 + .4byte ENUM_12AED0_LOST_04_00 + .4byte ENUM_12AED0_LOST_04_SIBA0 + .4byte ENUM_12AED0_LOST_04_SIBA1 + .4byte ENUM_12AED0_LOST_04_SIBA2 + .4byte ENUM_12AED0_LOST_04_SIBA3 + .4byte ENUM_12AED0_LOST_04_SIBA4 + .4byte ENUM_12AED0_LOST_05_00 + .4byte ENUM_12AED0_LOST_05_01 + .4byte ENUM_12AED0_LOST_05_T0 + .4byte ENUM_12AED0_LOST_05_T1 + .4byte ENUM_12AED0_MORI_00_HIBI_0 + .4byte ENUM_12AED0_MORI_00_HIBI_1 + .4byte ENUM_12AED0_MORI_00_HIBI_2 + .4byte ENUM_12AED0_MORI_00_HIBI_3 + .4byte ENUM_12AED0_MORI_00_HIBI_4 + .4byte ENUM_12AED0_MORI_00_KOBITO + .4byte ENUM_12AED0_MORI_00_H0 + .4byte ENUM_12AED0_MORI_00_H1 + .4byte ENUM_12AED0_MORI_ENTRANCE_1ST + .4byte ENUM_12AED0_YAMA_00_00 + .4byte ENUM_12AED0_YAMA_00_01 + .4byte ENUM_12AED0_YAMA_01_BW00 + .4byte ENUM_12AED0_YAMA_02_00 + .4byte ENUM_12AED0_YAMA_03_00 + .4byte ENUM_12AED0_YAMA_03_01 + .4byte ENUM_12AED0_YAMA_03_02 + .4byte ENUM_12AED0_YAMA_03_DOKU_0 + .4byte ENUM_12AED0_YAMA_03_DOKU_1 + .4byte ENUM_12AED0_YAMA_03_DOKU_2 + .4byte ENUM_12AED0_YAMA_04_CAP_0 + .4byte ENUM_12AED0_YAMA_04_R00 + .4byte ENUM_12AED0_YAMA_04_HIBI_0 + .4byte ENUM_12AED0_YAMA_04_HIBI_1 + .4byte ENUM_12AED0_YAMA_04_00 + .4byte ENUM_12AED0_YAMA_04_01 + .4byte ENUM_12AED0_YAMA_04_04 + .4byte ENUM_12AED0_YAMA_04_05 + .4byte ENUM_12AED0_YAMA_04_06 + .4byte ENUM_12AED0_YAMA_04_ENTHOUSHI + .4byte ENUM_12AED0_YAMA_04_ANAHOUSHI + .4byte ENUM_12AED0_YAMA_04_BOMBWALL0 + .4byte ENUM_12AED0_HAKA_BUNSHIN_00 + .4byte ENUM_12AED0_HAKA_BOSEKI_00 + .4byte ENUM_12AED0_HAKA_BOSEKI_01 + .4byte ENUM_12AED0_HAKA_BOSEKI_02 + .4byte ENUM_12AED0_HAKA_00_CAP_0 + .4byte ENUM_12AED0_HAKA_00_BW00 + .4byte ENUM_12AED0_HAKA_01_T0 + .4byte ENUM_12AED0_HAKA_KEY_GET + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_0 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_1 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_2 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_3 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_4 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_5 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_6 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_7 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_8 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_9 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_10 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_11 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_12 + .4byte ENUM_12AED0_SOUGEN_01_00 + .4byte ENUM_12AED0_SOUGEN_01_BENT + .4byte ENUM_12AED0_SOUGEN_01_ZELDA + .4byte ENUM_12AED0_SOUGEN_02_HIBI_0 + .4byte ENUM_12AED0_SOUGEN_02_HIBI_1 + .4byte ENUM_12AED0_SOUGEN_03_BOMBWALL + .4byte ENUM_12AED0_SOUGEN_04_HIBI_0 + .4byte ENUM_12AED0_SOUGEN_04_HIBI_1 + .4byte ENUM_12AED0_SOUGEN_04_HIBI_2 + .4byte ENUM_12AED0_SOUGEN_04_HIBI_3 + .4byte ENUM_12AED0_SOUGEN_05_HIBI_0 + .4byte ENUM_12AED0_SOUGEN_05_HIBI_1 + .4byte ENUM_12AED0_SOUGEN_05_HIBI_2 + .4byte ENUM_12AED0_SOUGEN_05_HIBI_3 + .4byte ENUM_12AED0_SOUGEN_05_BOMB_00 + .4byte ENUM_12AED0_SOUGEN_05_00 + .4byte ENUM_12AED0_SOUGEN_05_01 + .4byte ENUM_12AED0_SOUGEN_05_IWA02 + .4byte ENUM_12AED0_SOUGEN_05_BENT + .4byte ENUM_12AED0_SOUGEN_05_H00 + .4byte ENUM_12AED0_SOUGEN_05_R0 + .4byte ENUM_12AED0_SOUGEN_05_CAP_0 + .4byte ENUM_12AED0_SOUGEN_06_WAKAGI_0 + .4byte ENUM_12AED0_SOUGEN_06_WAKAGI_1 + .4byte ENUM_12AED0_SOUGEN_06_WAKAGI_2 + .4byte ENUM_12AED0_SOUGEN_06_WAKAGI_3 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_0 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_1 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_2 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_3 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_4 + .4byte ENUM_12AED0_SOUGEN_06_IWA_0 + .4byte ENUM_12AED0_SOUGEN_06_AKINDO + .4byte ENUM_12AED0_SOUGEN_06_SAIKAI + .4byte ENUM_12AED0_SOUGEN_06_BENT + .4byte ENUM_12AED0_SOUGEN_06_SLIDE + .4byte ENUM_12AED0_SOUGEN_06_R1 + .4byte ENUM_12AED0_SOUGEN_07_00 + .4byte ENUM_12AED0_SOUGEN_07_01 + .4byte ENUM_12AED0_SOUGEN_07_02 + .4byte ENUM_12AED0_SOUGEN_07_H00 + .4byte ENUM_12AED0_SOUGEN_08_00 + .4byte ENUM_12AED0_SOUGEN_08_01 + .4byte ENUM_12AED0_SOUGEN_08_02 + .4byte ENUM_12AED0_SOUGEN_08_03 + .4byte ENUM_12AED0_SOUGEN_08_04 + .4byte ENUM_12AED0_SOUGEN_08_05 + .4byte ENUM_12AED0_SOUGEN_08_06 + .4byte ENUM_12AED0_SOUGEN_08_07 + .4byte ENUM_12AED0_SOUGEN_08_08 + .4byte ENUM_12AED0_SOUGEN_08_TORITSUKI + .4byte ENUM_12AED0_SOUGEN_08_T00 + .4byte ENUM_12AED0_CASTLE_00_00 + .4byte ENUM_12AED0_CASTLE_04_MEZAME + .4byte ENUM_12AED0_CASTLE_04_MAID_TALK + .4byte ENUM_12AED0_SUIGEN_00_h0 + .4byte ENUM_12AED0_SUIGEN_00_T0 + .4byte ENUM_12AED0_SUIGEN_00_r0 + .4byte ENUM_12AED0_SUIGEN_00_r1 + .4byte ENUM_12AED0_SUIGEN_00_r2 + .4byte ENUM_12AED0_SUIGEN_00_CAP_0 + .4byte ENUM_12AED0_SUIGEN_00_CAP_1 + .4byte ENUM_12AED0_SUIGEN_00_R0 + .4byte ENUM_12AED0_SUIGEN_00_R1 + .4byte ENUM_12AED0_SUIGEN_00_h1 + .4byte ENUM_12AED0_SUIGENGORON_00_CAP_0 + .4byte ENUM_12AED0_DAIGORON_SHIELD + .4byte ENUM_12AED0_DAIGORON_EXCHG + .4byte ENUM_12AED0_BEANDEMO_00 + .4byte ENUM_12AED0_BEANDEMO_01 + .4byte ENUM_12AED0_BEANDEMO_02 + .4byte ENUM_12AED0_BEANDEMO_03 + .4byte ENUM_12AED0_BEANDEMO_04 + .4byte ENUM_12AED0_KAKERA_TAKARA_A + .4byte ENUM_12AED0_KAKERA_TAKARA_E + .4byte ENUM_12AED0_KAKERA_TAKARA_K + .4byte ENUM_12AED0_KAKERA_TAKARA_L + .4byte ENUM_12AED0_KAKERA_TAKARA_M + .4byte ENUM_12AED0_KAKERA_TAKARA_N + .4byte ENUM_12AED0_KAKERA_TAKARA_O + .4byte ENUM_12AED0_KAKERA_TAKARA_P + .4byte ENUM_12AED0_KAKERA_TAKARA_Q + .4byte ENUM_12AED0_KAKERA_TAKARA_R + .4byte ENUM_12AED0_KAKERA_TAKARA_S + .4byte ENUM_12AED0_KAKERA_TAKARA_T + .4byte ENUM_12AED0_KAKERA_TAKARA_U + .4byte ENUM_12AED0_KAKERA_TAKARA_V + .4byte ENUM_12AED0_KAKERA_TAKARA_W + .4byte ENUM_12AED0_KAKERA_TAKARA_X + .4byte ENUM_12AED0_KAKERA_TAKARA_Y + .4byte ENUM_12AED0_KAKERA_TAKARA_Z + .4byte ENUM_12AED0_MACHI_02_HEISHI_TALK + .4byte ENUM_12AED0_MACHI00_00 + .4byte ENUM_12AED0_MACHI00_02 + .4byte ENUM_12AED0_MACHI00_03 + .4byte ENUM_12AED0_MACHI_00_T00 + .4byte ENUM_12AED0_MACHI_00_T01 + .4byte ENUM_12AED0_MACHI_01_DEMO + .4byte ENUM_12AED0_MACHI_02_HEISHI + .4byte ENUM_12AED0_MACHI_02_DOG + .4byte ENUM_12AED0_MACHI_07_BELL + .4byte ENUM_12AED0_SHOP05_OPEN + .4byte ENUM_12AED0_MACHI_MES_20 + .4byte ENUM_12AED0_MACHI_MES_21 + .4byte ENUM_12AED0_MACHI_MES_22 + .4byte ENUM_12AED0_MACHI_MES_23 + .4byte ENUM_12AED0_MACHI_MES_24 + .4byte ENUM_12AED0_MACHI_MES_30 + .4byte ENUM_12AED0_MACHI_MES_40 + .4byte ENUM_12AED0_MACHI_MES_60 + .4byte ENUM_12AED0_MACHI_MES_50 + .4byte ENUM_12AED0_MACHI_DOG_C + .4byte ENUM_12AED0_KUMOUE_00_CAP_0 + .4byte ENUM_12AED0_KUMOUE_01_CAP_0 + .4byte ENUM_12AED0_KUMOUE_01_T0 + .4byte ENUM_12AED0_KUMOUE_01_T1 + .4byte ENUM_12AED0_KUMOUE_01_T2 + .4byte ENUM_12AED0_KUMOUE_01_T3 + .4byte ENUM_12AED0_KUMOUE_01_T4 + .4byte ENUM_12AED0_KUMOUE_01_T5 + .4byte ENUM_12AED0_KUMOUE_01_T6 + .4byte ENUM_12AED0_KUMOUR_01_K0 + .4byte ENUM_12AED0_KUMOUR_01_K1 + .4byte ENUM_12AED0_KUMOUR_01_K2 + .4byte ENUM_12AED0_KUMOUR_01_K3 + .4byte ENUM_12AED0_KUMOUR_01_K4 + .4byte ENUM_12AED0_KUMOUR_01_K5 + .4byte ENUM_12AED0_KUMOUR_01_K6 + .4byte ENUM_12AED0_KUMONOUE_01_KAKERA + .4byte ENUM_12AED0_KUMOUE_02_CAP_0 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_01 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_02 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_03 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_04 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_05 + .4byte ENUM_12AED0_KUMOUE_02_00 + .4byte ENUM_12AED0_KUMOUE_02_01 + .4byte ENUM_12AED0_KUMOUE_02_02 + .4byte ENUM_12AED0_KUMOUE_02_03 + .4byte ENUM_12AED0_KUMOUE_UNCLE_TALK + .4byte ENUM_12AED0_KUMOUE_GIRL_TALK + .4byte ENUM_12AED0_MIZUUMI_00_CAP_0 + .4byte ENUM_12AED0_SUIGEN_00_R2 + .4byte ENUM_12AED0_YAMA_04_CAP_1 + .4byte ENUM_12AED0_LOST_05_02 + .4byte ENUM_12AED0_LOST_05_03 + .4byte ENUM_12AED0_KAKERA_TAKARA_J + .4byte gUnk_0812AC84 +ENUM_12AED0_KAKERA_TAKARA_J: + .ascii "KAKERA_TAKARA_J\0" +ENUM_12AED0_LOST_05_03: + .ascii "LOST_05_03\0\0" +ENUM_12AED0_LOST_05_02: + .ascii "LOST_05_02\0\0" +ENUM_12AED0_YAMA_04_CAP_1: + .ascii "YAMA_04_CAP_1\0\0\0" +ENUM_12AED0_SUIGEN_00_R2: + .ascii "SUIGEN_00_R2\0\0\0\0" +ENUM_12AED0_MIZUUMI_00_CAP_0: + .ascii "MIZUUMI_00_CAP_0\0\0\0\0" +ENUM_12AED0_KUMOUE_GIRL_TALK: + .ascii "KUMOUE_GIRL_TALK\0\0\0\0" +ENUM_12AED0_KUMOUE_UNCLE_TALK: + .ascii "KUMOUE_UNCLE_TALK\0\0\0" +ENUM_12AED0_KUMOUE_02_03: + .ascii "KUMOUE_02_03\0\0\0\0" +ENUM_12AED0_KUMOUE_02_02: + .ascii "KUMOUE_02_02\0\0\0\0" +ENUM_12AED0_KUMOUE_02_01: + .ascii "KUMOUE_02_01\0\0\0\0" +ENUM_12AED0_KUMOUE_02_00: + .ascii "KUMOUE_02_00\0\0\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_05: + .ascii "KUMOUE_02_AWASE_05\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_04: + .ascii "KUMOUE_02_AWASE_04\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_03: + .ascii "KUMOUE_02_AWASE_03\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_02: + .ascii "KUMOUE_02_AWASE_02\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_01: + .ascii "KUMOUE_02_AWASE_01\0\0" +ENUM_12AED0_KUMOUE_02_CAP_0: + .ascii "KUMOUE_02_CAP_0\0" +ENUM_12AED0_KUMONOUE_01_KAKERA: + .ascii "KUMONOUE_01_KAKERA\0\0" +ENUM_12AED0_KUMOUR_01_K6: + .ascii "KUMOUR_01_K6\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K5: + .ascii "KUMOUR_01_K5\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K4: + .ascii "KUMOUR_01_K4\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K3: + .ascii "KUMOUR_01_K3\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K2: + .ascii "KUMOUR_01_K2\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K1: + .ascii "KUMOUR_01_K1\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K0: + .ascii "KUMOUR_01_K0\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T6: + .ascii "KUMOUE_01_T6\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T5: + .ascii "KUMOUE_01_T5\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T4: + .ascii "KUMOUE_01_T4\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T3: + .ascii "KUMOUE_01_T3\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T2: + .ascii "KUMOUE_01_T2\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T1: + .ascii "KUMOUE_01_T1\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T0: + .ascii "KUMOUE_01_T0\0\0\0\0" +ENUM_12AED0_KUMOUE_01_CAP_0: + .ascii "KUMOUE_01_CAP_0\0" +ENUM_12AED0_KUMOUE_00_CAP_0: + .ascii "KUMOUE_00_CAP_0\0" +ENUM_12AED0_MACHI_DOG_C: + .ascii "MACHI_DOG_C\0" +ENUM_12AED0_MACHI_MES_50: + .ascii "MACHI_MES_50\0\0\0\0" +ENUM_12AED0_MACHI_MES_60: + .ascii "MACHI_MES_60\0\0\0\0" +ENUM_12AED0_MACHI_MES_40: + .ascii "MACHI_MES_40\0\0\0\0" +ENUM_12AED0_MACHI_MES_30: + .ascii "MACHI_MES_30\0\0\0\0" +ENUM_12AED0_MACHI_MES_24: + .ascii "MACHI_MES_24\0\0\0\0" +ENUM_12AED0_MACHI_MES_23: + .ascii "MACHI_MES_23\0\0\0\0" +ENUM_12AED0_MACHI_MES_22: + .ascii "MACHI_MES_22\0\0\0\0" +ENUM_12AED0_MACHI_MES_21: + .ascii "MACHI_MES_21\0\0\0\0" +ENUM_12AED0_MACHI_MES_20: + .ascii "MACHI_MES_20\0\0\0\0" +ENUM_12AED0_SHOP05_OPEN: + .ascii "SHOP05_OPEN\0" +ENUM_12AED0_MACHI_07_BELL: + .ascii "MACHI_07_BELL\0\0\0" +ENUM_12AED0_MACHI_02_DOG: + .ascii "MACHI_02_DOG\0\0\0\0" +ENUM_12AED0_MACHI_02_HEISHI: + .ascii "MACHI_02_HEISHI\0" +ENUM_12AED0_MACHI_01_DEMO: + .ascii "MACHI_01_DEMO\0\0\0" +ENUM_12AED0_MACHI_00_T01: + .ascii "MACHI_00_T01\0\0\0\0" +ENUM_12AED0_MACHI_00_T00: + .ascii "MACHI_00_T00\0\0\0\0" +ENUM_12AED0_MACHI00_03: + .ascii "MACHI00_03\0\0" +ENUM_12AED0_MACHI00_02: + .ascii "MACHI00_02\0\0" +ENUM_12AED0_MACHI00_00: + .ascii "MACHI00_00\0\0" +ENUM_12AED0_MACHI_02_HEISHI_TALK: + .ascii "MACHI_02_HEISHI_TALK\0\0\0\0" +ENUM_12AED0_KAKERA_TAKARA_Z: + .ascii "KAKERA_TAKARA_Z\0" +ENUM_12AED0_KAKERA_TAKARA_Y: + .ascii "KAKERA_TAKARA_Y\0" +ENUM_12AED0_KAKERA_TAKARA_X: + .ascii "KAKERA_TAKARA_X\0" +ENUM_12AED0_KAKERA_TAKARA_W: + .ascii "KAKERA_TAKARA_W\0" +ENUM_12AED0_KAKERA_TAKARA_V: + .ascii "KAKERA_TAKARA_V\0" +ENUM_12AED0_KAKERA_TAKARA_U: + .ascii "KAKERA_TAKARA_U\0" +ENUM_12AED0_KAKERA_TAKARA_T: + .ascii "KAKERA_TAKARA_T\0" +ENUM_12AED0_KAKERA_TAKARA_S: + .ascii "KAKERA_TAKARA_S\0" +ENUM_12AED0_KAKERA_TAKARA_R: + .ascii "KAKERA_TAKARA_R\0" +ENUM_12AED0_KAKERA_TAKARA_Q: + .ascii "KAKERA_TAKARA_Q\0" +ENUM_12AED0_KAKERA_TAKARA_P: + .ascii "KAKERA_TAKARA_P\0" +ENUM_12AED0_KAKERA_TAKARA_O: + .ascii "KAKERA_TAKARA_O\0" +ENUM_12AED0_KAKERA_TAKARA_N: + .ascii "KAKERA_TAKARA_N\0" +ENUM_12AED0_KAKERA_TAKARA_M: + .ascii "KAKERA_TAKARA_M\0" +ENUM_12AED0_KAKERA_TAKARA_L: + .ascii "KAKERA_TAKARA_L\0" +ENUM_12AED0_KAKERA_TAKARA_K: + .ascii "KAKERA_TAKARA_K\0" +ENUM_12AED0_KAKERA_TAKARA_E: + .ascii "KAKERA_TAKARA_E\0" +ENUM_12AED0_KAKERA_TAKARA_A: + .ascii "KAKERA_TAKARA_A\0" +ENUM_12AED0_BEANDEMO_04: + .ascii "BEANDEMO_04\0" +ENUM_12AED0_BEANDEMO_03: + .ascii "BEANDEMO_03\0" +ENUM_12AED0_BEANDEMO_02: + .ascii "BEANDEMO_02\0" +ENUM_12AED0_BEANDEMO_01: + .ascii "BEANDEMO_01\0" +ENUM_12AED0_BEANDEMO_00: + .ascii "BEANDEMO_00\0" +ENUM_12AED0_DAIGORON_EXCHG: + .ascii "DAIGORON_EXCHG\0\0" +ENUM_12AED0_DAIGORON_SHIELD: + .ascii "DAIGORON_SHIELD\0" +ENUM_12AED0_SUIGENGORON_00_CAP_0: + .ascii "SUIGENGORON_00_CAP_0\0\0\0\0" +ENUM_12AED0_SUIGEN_00_h1: + .ascii "SUIGEN_00_h1\0\0\0\0" +ENUM_12AED0_SUIGEN_00_R1: + .ascii "SUIGEN_00_R1\0\0\0\0" +ENUM_12AED0_SUIGEN_00_R0: + .ascii "SUIGEN_00_R0\0\0\0\0" +ENUM_12AED0_SUIGEN_00_CAP_1: + .ascii "SUIGEN_00_CAP_1\0" +ENUM_12AED0_SUIGEN_00_CAP_0: + .ascii "SUIGEN_00_CAP_0\0" +ENUM_12AED0_SUIGEN_00_r2: + .ascii "SUIGEN_00_r2\0\0\0\0" +ENUM_12AED0_SUIGEN_00_r1: + .ascii "SUIGEN_00_r1\0\0\0\0" +ENUM_12AED0_SUIGEN_00_r0: + .ascii "SUIGEN_00_r0\0\0\0\0" +ENUM_12AED0_SUIGEN_00_T0: + .ascii "SUIGEN_00_T0\0\0\0\0" +ENUM_12AED0_SUIGEN_00_h0: + .ascii "SUIGEN_00_h0\0\0\0\0" +ENUM_12AED0_CASTLE_04_MAID_TALK: + .ascii "CASTLE_04_MAID_TALK\0" +ENUM_12AED0_CASTLE_04_MEZAME: + .ascii "CASTLE_04_MEZAME\0\0\0\0" +ENUM_12AED0_CASTLE_00_00: + .ascii "CASTLE_00_00\0\0\0\0" +ENUM_12AED0_SOUGEN_08_T00: + .ascii "SOUGEN_08_T00\0\0\0" +ENUM_12AED0_SOUGEN_08_TORITSUKI: + .ascii "SOUGEN_08_TORITSUKI\0" +ENUM_12AED0_SOUGEN_08_08: + .ascii "SOUGEN_08_08\0\0\0\0" +ENUM_12AED0_SOUGEN_08_07: + .ascii "SOUGEN_08_07\0\0\0\0" +ENUM_12AED0_SOUGEN_08_06: + .ascii "SOUGEN_08_06\0\0\0\0" +ENUM_12AED0_SOUGEN_08_05: + .ascii "SOUGEN_08_05\0\0\0\0" +ENUM_12AED0_SOUGEN_08_04: + .ascii "SOUGEN_08_04\0\0\0\0" +ENUM_12AED0_SOUGEN_08_03: + .ascii "SOUGEN_08_03\0\0\0\0" +ENUM_12AED0_SOUGEN_08_02: + .ascii "SOUGEN_08_02\0\0\0\0" +ENUM_12AED0_SOUGEN_08_01: + .ascii "SOUGEN_08_01\0\0\0\0" +ENUM_12AED0_SOUGEN_08_00: + .ascii "SOUGEN_08_00\0\0\0\0" +ENUM_12AED0_SOUGEN_07_H00: + .ascii "SOUGEN_07_H00\0\0\0" +ENUM_12AED0_SOUGEN_07_02: + .ascii "SOUGEN_07_02\0\0\0\0" +ENUM_12AED0_SOUGEN_07_01: + .ascii "SOUGEN_07_01\0\0\0\0" +ENUM_12AED0_SOUGEN_07_00: + .ascii "SOUGEN_07_00\0\0\0\0" +ENUM_12AED0_SOUGEN_06_R1: + .ascii "SOUGEN_06_R1\0\0\0\0" +ENUM_12AED0_SOUGEN_06_SLIDE: + .ascii "SOUGEN_06_SLIDE\0" +ENUM_12AED0_SOUGEN_06_BENT: + .ascii "SOUGEN_06_BENT\0\0" +ENUM_12AED0_SOUGEN_06_SAIKAI: + .ascii "SOUGEN_06_SAIKAI\0\0\0\0" +ENUM_12AED0_SOUGEN_06_AKINDO: + .ascii "SOUGEN_06_AKINDO\0\0\0\0" +ENUM_12AED0_SOUGEN_06_IWA_0: + .ascii "SOUGEN_06_IWA_0\0" +ENUM_12AED0_SOUGEN_06_HIBI_4: + .ascii "SOUGEN_06_HIBI_4\0\0\0\0" +ENUM_12AED0_SOUGEN_06_HIBI_3: + .ascii "SOUGEN_06_HIBI_3\0\0\0\0" +ENUM_12AED0_SOUGEN_06_HIBI_2: + .ascii "SOUGEN_06_HIBI_2\0\0\0\0" +ENUM_12AED0_SOUGEN_06_HIBI_1: + .ascii "SOUGEN_06_HIBI_1\0\0\0\0" +ENUM_12AED0_SOUGEN_06_HIBI_0: + .ascii "SOUGEN_06_HIBI_0\0\0\0\0" +ENUM_12AED0_SOUGEN_06_WAKAGI_3: + .ascii "SOUGEN_06_WAKAGI_3\0\0" +ENUM_12AED0_SOUGEN_06_WAKAGI_2: + .ascii "SOUGEN_06_WAKAGI_2\0\0" +ENUM_12AED0_SOUGEN_06_WAKAGI_1: + .ascii "SOUGEN_06_WAKAGI_1\0\0" +ENUM_12AED0_SOUGEN_06_WAKAGI_0: + .ascii "SOUGEN_06_WAKAGI_0\0\0" +ENUM_12AED0_SOUGEN_05_CAP_0: + .ascii "SOUGEN_05_CAP_0\0" +ENUM_12AED0_SOUGEN_05_R0: + .ascii "SOUGEN_05_R0\0\0\0\0" +ENUM_12AED0_SOUGEN_05_H00: + .ascii "SOUGEN_05_H00\0\0\0" +ENUM_12AED0_SOUGEN_05_BENT: + .ascii "SOUGEN_05_BENT\0\0" +ENUM_12AED0_SOUGEN_05_IWA02: + .ascii "SOUGEN_05_IWA02\0" +ENUM_12AED0_SOUGEN_05_01: + .ascii "SOUGEN_05_01\0\0\0\0" +ENUM_12AED0_SOUGEN_05_00: + .ascii "SOUGEN_05_00\0\0\0\0" +ENUM_12AED0_SOUGEN_05_BOMB_00: + .ascii "SOUGEN_05_BOMB_00\0\0\0" +ENUM_12AED0_SOUGEN_05_HIBI_3: + .ascii "SOUGEN_05_HIBI_3\0\0\0\0" +ENUM_12AED0_SOUGEN_05_HIBI_2: + .ascii "SOUGEN_05_HIBI_2\0\0\0\0" +ENUM_12AED0_SOUGEN_05_HIBI_1: + .ascii "SOUGEN_05_HIBI_1\0\0\0\0" +ENUM_12AED0_SOUGEN_05_HIBI_0: + .ascii "SOUGEN_05_HIBI_0\0\0\0\0" +ENUM_12AED0_SOUGEN_04_HIBI_3: + .ascii "SOUGEN_04_HIBI_3\0\0\0\0" +ENUM_12AED0_SOUGEN_04_HIBI_2: + .ascii "SOUGEN_04_HIBI_2\0\0\0\0" +ENUM_12AED0_SOUGEN_04_HIBI_1: + .ascii "SOUGEN_04_HIBI_1\0\0\0\0" +ENUM_12AED0_SOUGEN_04_HIBI_0: + .ascii "SOUGEN_04_HIBI_0\0\0\0\0" +ENUM_12AED0_SOUGEN_03_BOMBWALL: + .ascii "SOUGEN_03_BOMBWALL\0\0" +ENUM_12AED0_SOUGEN_02_HIBI_1: + .ascii "SOUGEN_02_HIBI_1\0\0\0\0" +ENUM_12AED0_SOUGEN_02_HIBI_0: + .ascii "SOUGEN_02_HIBI_0\0\0\0\0" +ENUM_12AED0_SOUGEN_01_ZELDA: + .ascii "SOUGEN_01_ZELDA\0" +ENUM_12AED0_SOUGEN_01_BENT: + .ascii "SOUGEN_01_BENT\0\0" +ENUM_12AED0_SOUGEN_01_00: + .ascii "SOUGEN_01_00\0\0\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_12: + .ascii "SOUGEN_01_WAKAGI_12\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_11: + .ascii "SOUGEN_01_WAKAGI_11\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_10: + .ascii "SOUGEN_01_WAKAGI_10\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_9: + .ascii "SOUGEN_01_WAKAGI_9\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_8: + .ascii "SOUGEN_01_WAKAGI_8\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_7: + .ascii "SOUGEN_01_WAKAGI_7\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_6: + .ascii "SOUGEN_01_WAKAGI_6\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_5: + .ascii "SOUGEN_01_WAKAGI_5\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_4: + .ascii "SOUGEN_01_WAKAGI_4\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_3: + .ascii "SOUGEN_01_WAKAGI_3\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_2: + .ascii "SOUGEN_01_WAKAGI_2\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_1: + .ascii "SOUGEN_01_WAKAGI_1\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_0: + .ascii "SOUGEN_01_WAKAGI_0\0\0" +ENUM_12AED0_HAKA_KEY_GET: + .ascii "HAKA_KEY_GET\0\0\0\0" +ENUM_12AED0_HAKA_01_T0: + .ascii "HAKA_01_T0\0\0" +ENUM_12AED0_HAKA_00_BW00: + .ascii "HAKA_00_BW00\0\0\0\0" +ENUM_12AED0_HAKA_00_CAP_0: + .ascii "HAKA_00_CAP_0\0\0\0" +ENUM_12AED0_HAKA_BOSEKI_02: + .ascii "HAKA_BOSEKI_02\0\0" +ENUM_12AED0_HAKA_BOSEKI_01: + .ascii "HAKA_BOSEKI_01\0\0" +ENUM_12AED0_HAKA_BOSEKI_00: + .ascii "HAKA_BOSEKI_00\0\0" +ENUM_12AED0_HAKA_BUNSHIN_00: + .ascii "HAKA_BUNSHIN_00\0" +ENUM_12AED0_YAMA_04_BOMBWALL0: + .ascii "YAMA_04_BOMBWALL0\0\0\0" +ENUM_12AED0_YAMA_04_ANAHOUSHI: + .ascii "YAMA_04_ANAHOUSHI\0\0\0" +ENUM_12AED0_YAMA_04_ENTHOUSHI: + .ascii "YAMA_04_ENTHOUSHI\0\0\0" +ENUM_12AED0_YAMA_04_06: + .ascii "YAMA_04_06\0\0" +ENUM_12AED0_YAMA_04_05: + .ascii "YAMA_04_05\0\0" +ENUM_12AED0_YAMA_04_04: + .ascii "YAMA_04_04\0\0" +ENUM_12AED0_YAMA_04_01: + .ascii "YAMA_04_01\0\0" +ENUM_12AED0_YAMA_04_00: + .ascii "YAMA_04_00\0\0" +ENUM_12AED0_YAMA_04_HIBI_1: + .ascii "YAMA_04_HIBI_1\0\0" +ENUM_12AED0_YAMA_04_HIBI_0: + .ascii "YAMA_04_HIBI_0\0\0" +ENUM_12AED0_YAMA_04_R00: + .ascii "YAMA_04_R00\0" +ENUM_12AED0_YAMA_04_CAP_0: + .ascii "YAMA_04_CAP_0\0\0\0" +ENUM_12AED0_YAMA_03_DOKU_2: + .ascii "YAMA_03_DOKU_2\0\0" +ENUM_12AED0_YAMA_03_DOKU_1: + .ascii "YAMA_03_DOKU_1\0\0" +ENUM_12AED0_YAMA_03_DOKU_0: + .ascii "YAMA_03_DOKU_0\0\0" +ENUM_12AED0_YAMA_03_02: + .ascii "YAMA_03_02\0\0" +ENUM_12AED0_YAMA_03_01: + .ascii "YAMA_03_01\0\0" +ENUM_12AED0_YAMA_03_00: + .ascii "YAMA_03_00\0\0" +ENUM_12AED0_YAMA_02_00: + .ascii "YAMA_02_00\0\0" +ENUM_12AED0_YAMA_01_BW00: + .ascii "YAMA_01_BW00\0\0\0\0" +ENUM_12AED0_YAMA_00_01: + .ascii "YAMA_00_01\0\0" +ENUM_12AED0_YAMA_00_00: + .ascii "YAMA_00_00\0\0" +ENUM_12AED0_MORI_ENTRANCE_1ST: + .ascii "MORI_ENTRANCE_1ST\0\0\0" +ENUM_12AED0_MORI_00_H1: + .ascii "MORI_00_H1\0\0" +ENUM_12AED0_MORI_00_H0: + .ascii "MORI_00_H0\0\0" +ENUM_12AED0_MORI_00_KOBITO: + .ascii "MORI_00_KOBITO\0\0" +ENUM_12AED0_MORI_00_HIBI_4: + .ascii "MORI_00_HIBI_4\0\0" +ENUM_12AED0_MORI_00_HIBI_3: + .ascii "MORI_00_HIBI_3\0\0" +ENUM_12AED0_MORI_00_HIBI_2: + .ascii "MORI_00_HIBI_2\0\0" +ENUM_12AED0_MORI_00_HIBI_1: + .ascii "MORI_00_HIBI_1\0\0" +ENUM_12AED0_MORI_00_HIBI_0: + .ascii "MORI_00_HIBI_0\0\0" +ENUM_12AED0_LOST_05_T1: + .ascii "LOST_05_T1\0\0" +ENUM_12AED0_LOST_05_T0: + .ascii "LOST_05_T0\0\0" +ENUM_12AED0_LOST_05_01: + .ascii "LOST_05_01\0\0" +ENUM_12AED0_LOST_05_00: + .ascii "LOST_05_00\0\0" +ENUM_12AED0_LOST_04_SIBA4: + .ascii "LOST_04_SIBA4\0\0\0" +ENUM_12AED0_LOST_04_SIBA3: + .ascii "LOST_04_SIBA3\0\0\0" +ENUM_12AED0_LOST_04_SIBA2: + .ascii "LOST_04_SIBA2\0\0\0" +ENUM_12AED0_LOST_04_SIBA1: + .ascii "LOST_04_SIBA1\0\0\0" +ENUM_12AED0_LOST_04_SIBA0: + .ascii "LOST_04_SIBA0\0\0\0" +ENUM_12AED0_LOST_04_00: + .ascii "LOST_04_00\0\0" +ENUM_12AED0_LOST_03_T0: + .ascii "LOST_03_T0\0\0" +ENUM_12AED0_LOST_03_00: + .ascii "LOST_03_00\0\0" +ENUM_12AED0_LOST_02_00: + .ascii "LOST_02_00\0\0" +ENUM_12AED0_LOST_00_01: + .ascii "LOST_00_01\0\0" +ENUM_12AED0_LOST_00_00: + .ascii "LOST_00_00\0\0" +ENUM_12AED0_LOST_00_ENTER: + .ascii "LOST_00_ENTER\0\0\0" +ENUM_12AED0_HIKYOU_00_M2: + .ascii "HIKYOU_00_M2\0\0\0\0" +ENUM_12AED0_HIKYOU_00_M1: + .ascii "HIKYOU_00_M1\0\0\0\0" +ENUM_12AED0_HIKYOU_00_M0: + .ascii "HIKYOU_00_M0\0\0\0\0" +ENUM_12AED0_HIKYOU_00_H00: + .ascii "HIKYOU_00_H00\0\0\0" +ENUM_12AED0_HIKYOU_00_BOSEKI: + .ascii "HIKYOU_00_BOSEKI\0\0\0\0" +ENUM_12AED0_HIKYOU_00_14: + .ascii "HIKYOU_00_14\0\0\0\0" +ENUM_12AED0_HIKYOU_00_SEKIZOU: + .ascii "HIKYOU_00_SEKIZOU\0\0\0" +ENUM_12AED0_HIKYOU_00_CAP_2: + .ascii "HIKYOU_00_CAP_2\0" +ENUM_12AED0_HIKYOU_00_CAP_1: + .ascii "HIKYOU_00_CAP_1\0" +ENUM_12AED0_HIKYOU_00_CAP_0: + .ascii "HIKYOU_00_CAP_0\0" +ENUM_12AED0_HIKYOU_00_04: + .ascii "HIKYOU_00_04\0\0\0\0" +ENUM_12AED0_HIKYOU_00_03: + .ascii "HIKYOU_00_03\0\0\0\0" +ENUM_12AED0_HIKYOU_00_02: + .ascii "HIKYOU_00_02\0\0\0\0" +ENUM_12AED0_HIKYOU_00_01: + .ascii "HIKYOU_00_01\0\0\0\0" +ENUM_12AED0_HIKYOU_00_00: + .ascii "HIKYOU_00_00\0\0\0\0" +ENUM_12AED0_NAKANIWA_00_EZERO: + .ascii "NAKANIWA_00_EZERO\0\0\0" +ENUM_12AED0_MAENIWA_00_CAP_0: + .ascii "MAENIWA_00_CAP_0\0\0\0\0" +ENUM_12AED0_MAENIWA_00_T1: + .ascii "MAENIWA_00_T1\0\0\0" +ENUM_12AED0_MAENIWA_00_T0: + .ascii "MAENIWA_00_T0\0\0\0" +ENUM_12AED0_MAENIWA_00_WARP: + .ascii "MAENIWA_00_WARP\0" +ENUM_12AED0_MAENIWA_00_BENT: + .ascii "MAENIWA_00_BENT\0" +ENUM_12AED0_MAENIWA_00_02: + .ascii "MAENIWA_00_02\0\0\0" +ENUM_12AED0_MAENIWA_00_01: + .ascii "MAENIWA_00_01\0\0\0" +ENUM_12AED0_MAENIWA_00_00: + .ascii "MAENIWA_00_00\0\0\0" +ENUM_12AED0_HIKYOU_00_T1: + .ascii "HIKYOU_00_T1\0\0\0\0" +ENUM_12AED0_HIKYOU_00_T0: + .ascii "HIKYOU_00_T0\0\0\0\0" +ENUM_12AED0_MIZUUMI_00_H02: + .ascii "MIZUUMI_00_H02\0\0" +ENUM_12AED0_MIZUUMI_00_H01: + .ascii "MIZUUMI_00_H01\0\0" +ENUM_12AED0_MIZUUMI_00_H00: + .ascii "MIZUUMI_00_H00\0\0" +ENUM_12AED0_MIZUUMI_00_00: + .ascii "MIZUUMI_00_00\0\0\0" +ENUM_12AED0_MIZUUMI_00_BENT: + .ascii "MIZUUMI_00_BENT\0" +ENUM_12AED0_LV5_CLEAR_MES: + .ascii "LV5_CLEAR_MES\0\0\0" +ENUM_12AED0_LV4_CLEAR_MES: + .ascii "LV4_CLEAR_MES\0\0\0" +ENUM_12AED0_LV3_CLEAR_MES: + .ascii "LV3_CLEAR_MES\0\0\0" +ENUM_12AED0_LV2_CLEAR_MES: + .ascii "LV2_CLEAR_MES\0\0\0" +ENUM_12AED0_LV1_CLEAR_MES: + .ascii "LV1_CLEAR_MES\0\0\0" + +.else + + + .4byte gUnk_0812B204 .4byte gUnk_0812C5F0 .4byte gUnk_0812C5E0 @@ -462,6 +1224,7 @@ gUnk_0812B204:: @ 0812B204 .4byte gUnk_0812C580 .4byte gUnk_0812C570 .4byte gUnk_0812C560 + @.4byte 0000 .4byte gUnk_0812C54C .4byte gUnk_0812C53C .4byte gUnk_0812C52C @@ -701,11 +1464,14 @@ gUnk_0812B204:: @ 0812B204 .4byte gUnk_0812B638 .4byte gUnk_0812B624 .4byte gUnk_0812B61C +.ifndef JP .4byte gUnk_0812B614 .4byte gUnk_0812B60C .4byte gUnk_0812B604 .4byte gUnk_0812AC84 +.endif +.ifndef JP gUnk_0812B604:: @ 0812B604 .incbin "baserom.gba", 0x12B604, 0x0000008 @@ -717,6 +1483,13 @@ gUnk_0812B614:: @ 0812B614 gUnk_0812B61C:: @ 0812B61C .incbin "baserom.gba", 0x12B61C, 0x0000008 +.else +gUnk_0812B61C:: +.space 0x3c +.endif + + + gUnk_0812B624:: @ 0812B624 .incbin "baserom.gba", 0x12B624, 0x0000014 @@ -1470,6 +2243,7 @@ gUnk_0812C5E0:: @ 0812C5E0 gUnk_0812C5F0:: @ 0812C5F0 .incbin "baserom.gba", 0x12C5F0, 0x0000010 +.endif .4byte gUnk_0812B204 .4byte gUnk_0812D688 @@ -1678,13 +2452,16 @@ gUnk_0812C5F0:: @ 0812C5F0 .4byte gUnk_0812C99C .4byte gUnk_0812C98C .4byte gUnk_0812C97C +.ifndef JP .4byte gUnk_0812C974 .4byte gUnk_0812C96C .4byte gUnk_0812C964 .4byte gUnk_0812C95C .4byte gUnk_0812C954 +.endif .4byte gUnk_0812AC84 +.ifndef JP gUnk_0812C954:: @ 0812C954 .incbin "baserom.gba", 0x12C954, 0x0000008 @@ -1699,6 +2476,7 @@ gUnk_0812C96C:: @ 0812C96C gUnk_0812C974:: @ 0812C974 .incbin "baserom.gba", 0x12C974, 0x0000008 +.endif gUnk_0812C97C:: @ 0812C97C .incbin "baserom.gba", 0x12C97C, 0x0000010 @@ -2516,12 +3294,19 @@ gUnk_0812D688:: @ 0812D688 .4byte gUnk_0812DA04 .4byte gUnk_0812D9F4 .4byte gUnk_0812D9E8 +.ifdef JP + .4byte gUnk_0812D9D0 +.else .4byte gUnk_0812D9D0 .4byte gUnk_0812D9C8 +.endif .4byte gUnk_0812AC84 +.ifndef JP gUnk_0812D9C8:: @ 0812D9C8 .incbin "baserom.gba", 0x12D9C8, 0x0000008 +.endif + gUnk_0812D9D0:: @ 0812D9D0 .incbin "baserom.gba", 0x12D9D0, 0x0000018 @@ -3258,14 +4043,17 @@ gUnk_0812E5FC:: @ 0812E5FC .4byte gUnk_0812E8A4 .4byte gUnk_0812E88C .4byte gUnk_0812E874 +.ifndef JP .4byte gUnk_0812E86C .4byte gUnk_0812E864 .4byte gUnk_0812E85C .4byte gUnk_0812E854 .4byte gUnk_0812E84C .4byte gUnk_0812E844 +.endif .4byte gUnk_0812AC84 +.ifndef JP gUnk_0812E844:: @ 0812E844 .incbin "baserom.gba", 0x12E844, 0x0000008 @@ -3280,13 +4068,14 @@ gUnk_0812E85C:: @ 0812E85C gUnk_0812E864:: @ 0812E864 .incbin "baserom.gba", 0x12E864, 0x0000008 - gUnk_0812E86C:: @ 0812E86C .incbin "baserom.gba", 0x12E86C, 0x0000008 +.endif gUnk_0812E874:: @ 0812E874 .incbin "baserom.gba", 0x12E874, 0x0000018 + gUnk_0812E88C:: @ 0812E88C .incbin "baserom.gba", 0x12E88C, 0x0000018 @@ -3781,11 +4570,15 @@ gUnk_0812F494:: @ 0812F494 .4byte gUnk_0812F630 .4byte gUnk_0812F624 .4byte gUnk_0812F614 +.ifndef JP .4byte gUnk_0812F604 +.endif .4byte gUnk_0812AC84 +.ifndef JP gUnk_0812F604:: @ 0812F604 .incbin "baserom.gba", 0x12F604, 0x0000010 +.endif gUnk_0812F614:: @ 0812F614 .incbin "baserom.gba", 0x12F614, 0x0000010 diff --git a/data/data_081320FC.s b/data/data_081320FC.s index 08f472ac..9b794118 100755 --- a/data/data_081320FC.s +++ b/data/data_081320FC.s @@ -30,7 +30,11 @@ gUnk_0813210C:: @ 0813210C .incbin "baserom.gba", 0x1321B4, 0x000000C .4byte gUnk_080FD150 .incbin "baserom.gba", 0x1321C4, 0x000000C +.ifdef JP + .4byte gUnk_080FD150 +.else .4byte gUnk_080FD180 +.endif .incbin "baserom.gba", 0x1321D4, 0x000000C .4byte gUnk_080FD150 .incbin "baserom.gba", 0x1321E4, 0x000000C diff --git a/data/data_08132B30.s b/data/data_08132B30.s index 4536feb3..6a8a5b15 100644 --- a/data/data_08132B30.s +++ b/data/data_08132B30.s @@ -2617,7 +2617,12 @@ gUnk_0813ABE4:: @ 0813ABE4 .incbin "baserom.gba", 0x13ABE4, 0x0000014 gUnk_0813ABF8:: @ 0813ABF8 +.ifdef JP + @ TODO only small differences + .incbin "baserom_jp.gba", 0x13A824, 0x0000014 +.else .incbin "baserom.gba", 0x13ABF8, 0x0000014 +.endif gUnk_0813AC0C:: @ 0813AC0C .incbin "baserom.gba", 0x13AC0C, 0x0000014 @@ -10874,6 +10879,11 @@ gUnk_08544301:: @ 08544301 gUnk_08545666:: @ 08545666 .incbin "baserom.gba", 0x545666, 0x0000F00 +@ TODO JP differs from here +.ifdef JP + .incbin "baserom_jp.gba", 0x546192, 0x5C98E +.else + gUnk_08546566:: @ 08546566 .incbin "baserom.gba", 0x546566, 0x00019E4 @@ -11174,6 +11184,9 @@ gUnk_085A0464:: @ 085A0464 gUnk_085A0806:: @ 085A0806 .incbin "baserom.gba", 0x5A0806, 0x000267A +.endif + +@ TODO JP differs to here gGlobalGfxAndPalettes:: @ 085A2E80 .incbin "baserom.gba", 0x5A2E80, 0x0001382 diff --git a/data/map_headers.s b/data/map_headers.s index 5063f67c..e9ad9eb4 100755 --- a/data/map_headers.s +++ b/data/map_headers.s @@ -2363,208 +2363,463 @@ gAreaRoomMaps_RoyalCrypt:: @ 081062CC .4byte 0x0 gAreaRoomMap_PalaceOfWinds_0:: @ 0810630C +.ifdef JP + map_bottom 0x2246C0+0x74, 0xA8C, 1 + map_top 0x224A00+0x74, 0xA8C, 1, 1 +.else map_bottom 0x2246C0, 0xA8C, 1 map_top 0x224A00, 0xA8C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_1:: @ 08106324 +.ifdef JP + map_bottom 0x224D14+0x74, 0x12C, 1 + map_top 0x224E04+0x74, 0x12C, 1, 1 +.else map_bottom 0x224D14, 0x12C, 1 map_top 0x224E04, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_2:: @ 0810633C +.ifdef JP + map_bottom 0x224E64+0x74, 0x1A4, 1 + map_top 0x224FBC+0x74, 0x1A4, 1, 1 +.else map_bottom 0x224E64, 0x1A4, 1 map_top 0x224FBC, 0x1A4, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_3:: @ 08106354 +.ifdef JP + map_bottom 0x22505C+0x74, 0x384, 1 + map_top 0x2252A4+0x74, 0x384, 1, 1 +.else map_bottom 0x22505C, 0x384, 1 map_top 0x2252A4, 0x384, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_4:: @ 0810636C +.ifdef JP + map_bottom 0x2253FC+0x74, 0x12C, 1 + map_top 0x2254C8+0x74, 0x12C, 1, 1 +.else map_bottom 0x2253FC, 0x12C, 1 map_top 0x2254C8, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_5:: @ 08106384 +.ifdef JP + map_bottom 0x225524+0x74, 0x384, 1 + map_top 0x22572C+0x74, 0x384, 1, 1 +.else map_bottom 0x225524, 0x384, 1 map_top 0x22572C, 0x384, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_6:: @ 0810639C +.ifdef JP + map_bottom 0x225850+0x74, 0x384, 1 + map_top 0x225A40+0x74, 0x384, 1, 1 +.else map_bottom 0x225850, 0x384, 1 map_top 0x225A40, 0x384, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_7:: @ 081063B4 +.ifdef JP + map_bottom 0x225B60+0x74, 0x384, 1 + map_top 0x225D68+0x74, 0x384, 1, 1 +.else map_bottom 0x225B60, 0x384, 1 map_top 0x225D68, 0x384, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_8:: @ 081063CC +.ifdef JP + map_bottom 0x225E98+0x74, 0x258, 1 + map_top 0x22601C+0x74, 0x258, 1, 1 +.else map_bottom 0x225E98, 0x258, 1 map_top 0x22601C, 0x258, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_9:: @ 081063E4 +.ifdef JP + map_bottom 0x226128+0x74, 0x12C, 1 + map_top 0x226200+0x74, 0x12C, 1, 1 +.else map_bottom 0x226128, 0x12C, 1 map_top 0x226200, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_10:: @ 081063FC +.ifdef JP + map_bottom 0x226264+0x74, 0x186, 1 + map_top 0x226364+0x74, 0x186, 1, 1 +.else map_bottom 0x226264, 0x186, 1 map_top 0x226364, 0x186, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_11:: @ 08106414 +.ifdef JP + map_bottom 0x226418+0x74, 0x12C, 1 + map_top 0x2264FC+0x74, 0x12C, 1, 1 +.else map_bottom 0x226418, 0x12C, 1 map_top 0x2264FC, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_12:: @ 0810642C +.ifdef JP + map_bottom 0x226578+0x74, 0x1E0, 1 + map_top 0x22663C+0x74, 0x1E0, 1, 1 +.else map_bottom 0x226578, 0x1E0, 1 map_top 0x22663C, 0x1E0, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_13:: @ 08106444 +.ifdef JP + map_bottom 0x2266BC+0x74, 0x12C, 1 + map_top 0x22679C+0x74, 0x12C, 1, 1 +.else map_bottom 0x2266BC, 0x12C, 1 map_top 0x22679C, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_14:: @ 0810645C +.ifdef JP + map_bottom 0x226818+0x74, 0x258, 1 + map_top 0x226948+0x74, 0x258, 1, 1 +.else map_bottom 0x226818, 0x258, 1 map_top 0x226948, 0x258, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_15:: @ 08106474 +.ifdef JP + map_bottom 0x2269F4+0x74, 0x708, 1 + map_top 0x226C3C+0x74, 0x708, 1, 1 +.else map_bottom 0x2269F4, 0x708, 1 map_top 0x226C3C, 0x708, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_16:: @ 0810648C +.ifdef JP + map_bottom 0x226E70+0x74, 0xA8C, 1 + map_top 0x2271A4+0x74, 0xA8C, 1, 1 +.else map_bottom 0x226E70, 0xA8C, 1 map_top 0x2271A4, 0xA8C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_17:: @ 081064A4 +.ifdef JP + map_bottom 0x22745C+0x74, 0x384, 1 + map_top 0x227668+0x74, 0x384, 1, 1 +.else map_bottom 0x22745C, 0x384, 1 map_top 0x227668, 0x384, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_18:: @ 081064BC +.ifdef JP + map_bottom 0x227774+0x74, 0x258, 1 + map_top 0x227860+0x74, 0x258, 1, 1 +.else map_bottom 0x227774, 0x258, 1 map_top 0x227860, 0x258, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_19:: @ 081064D4 +.ifdef JP + map_bottom 0x227924+0x74, 0x4B0, 1 + map_top 0x227B6C+0x74, 0x4B0, 1, 1 +.else map_bottom 0x227924, 0x4B0, 1 map_top 0x227B6C, 0x4B0, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_20:: @ 081064EC +.ifdef JP + map_bottom 0x227D34+0x74, 0x258, 1 + map_top 0x227EA8+0x74, 0x258, 1, 1 +.else map_bottom 0x227D34, 0x258, 1 map_top 0x227EA8, 0x258, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_21:: @ 08106504 +.ifdef JP + map_bottom 0x227F48+0x74, 0x708, 1 + map_top 0x228330+0x74, 0x708, 1, 1 +.else map_bottom 0x227F48, 0x708, 1 map_top 0x228330, 0x708, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_22:: @ 0810651C +.ifdef JP + map_bottom 0x22856C+0x74, 0x4B0, 1 + map_top 0x2287B8+0x74, 0x4B0, 1, 1 +.else map_bottom 0x22856C, 0x4B0, 1 map_top 0x2287B8, 0x4B0, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_23:: @ 08106534 +.ifdef JP + map_bottom 0x228988+0x74, 0x258, 1 + map_top 0x228A58+0x74, 0x258, 1, 1 +.else map_bottom 0x228988, 0x258, 1 map_top 0x228A58, 0x258, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_24:: @ 0810654C +.ifdef JP + map_bottom 0x228AFC+0x74, 0x4B0, 1 + map_top 0x228C7C+0x74, 0x4B0, 1, 1 +.else map_bottom 0x228AFC, 0x4B0, 1 map_top 0x228C7C, 0x4B0, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_25:: @ 08106564 +.ifdef JP + map_bottom 0x228DE4+0x74, 0x4B0, 1 + map_top 0x228F90+0x74, 0x4B0, 1, 1 +.else map_bottom 0x228DE4, 0x4B0, 1 map_top 0x228F90, 0x4B0, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_26:: @ 0810657C +.ifdef JP + map_bottom 0x229138+0x74, 0x4B0, 1 + map_top 0x2293A4+0x74, 0x4B0, 1, 1 +.else map_bottom 0x229138, 0x4B0, 1 map_top 0x2293A4, 0x4B0, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_27:: @ 08106594 +.ifdef JP + map_bottom 0x229574+0x74, 0x12C, 1 + map_top 0x22964C+0x74, 0x12C, 1, 1 +.else map_bottom 0x229574, 0x12C, 1 map_top 0x22964C, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_28:: @ 081065AC +.ifdef JP + map_bottom 0x2296D8+0x74, 0x12C, 1 + map_top 0x2297C0+0x74, 0x12C, 1, 1 +.else map_bottom 0x2296D8, 0x12C, 1 map_top 0x2297C0, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_29:: @ 081065C4 +.ifdef JP + map_bottom 0x229820+0x74, 0x12C, 1 + map_top 0x2298F8+0x74, 0x12C, 1, 1 +.else map_bottom 0x229820, 0x12C, 1 map_top 0x2298F8, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_30:: @ 081065DC +.ifdef JP + map_bottom 0x229978+0x74, 0x12C, 1 + map_top 0x229A58+0x74, 0x12C, 1, 1 +.else map_bottom 0x229978, 0x12C, 1 map_top 0x229A58, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_31:: @ 081065F4 +.ifdef JP + map_bottom 0x229AD4+0x74, 0x12C, 1 + map_top 0x229BA4+0x74, 0x12C, 1, 1 +.else map_bottom 0x229AD4, 0x12C, 1 map_top 0x229BA4, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_32:: @ 0810660C +.ifdef JP + map_bottom 0x229C14+0x74, 0x12C, 1 + map_top 0x229CE8+0x74, 0x12C, 1, 1 +.else map_bottom 0x229C14, 0x12C, 1 map_top 0x229CE8, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_33:: @ 08106624 +.ifdef JP + map_bottom 0x229D5C+0x74, 0xA8C, 1 + map_top 0x22A0F0+0x74, 0xA8C, 1, 1 +.else map_bottom 0x229D5C, 0xA8C, 1 map_top 0x22A0F0, 0xA8C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_34:: @ 0810663C +.ifdef JP + map_bottom 0x22A454+0x74, 0x708, 1 + map_top 0x22A760+0x74, 0x708, 1, 1 +.else map_bottom 0x22A454, 0x708, 1 map_top 0x22A760, 0x708, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_35:: @ 08106654 +.ifdef JP + map_bottom 0x22A99C+0x74, 0x258, 1 + map_top 0x22AB10+0x74, 0x258, 1, 1 +.else map_bottom 0x22A99C, 0x258, 1 map_top 0x22AB10, 0x258, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_36:: @ 0810666C +.ifdef JP + map_bottom 0x22ABF0+0x74, 0x4B0, 1 + map_top 0x22AD78+0x74, 0x4B0, 1, 1 +.else map_bottom 0x22ABF0, 0x4B0, 1 map_top 0x22AD78, 0x4B0, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_37:: @ 08106684 +.ifdef JP + map_bottom 0x22AEC4+0x74, 0x12C, 1 + map_top 0x22AFC4+0x74, 0x12C, 1, 1 +.else map_bottom 0x22AEC4, 0x12C, 1 map_top 0x22AFC4, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_38:: @ 0810669C +.ifdef JP + map_bottom 0x22B03C+0x74, 0x12C, 1 + map_top 0x22B150+0x74, 0x12C, 1, 1 +.else map_bottom 0x22B03C, 0x12C, 1 map_top 0x22B150, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_39:: @ 081066B4 +.ifdef JP + map_bottom 0x22B1B0+0x74, 0x12C, 1 + map_top 0x22B2A8+0x74, 0x12C, 1, 1 +.else map_bottom 0x22B1B0, 0x12C, 1 map_top 0x22B2A8, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_40:: @ 081066CC +.ifdef JP + map_bottom 0x22B324+0x74, 0x12C, 1 + map_top 0x22B414+0x74, 0x12C, 1, 1 +.else map_bottom 0x22B324, 0x12C, 1 map_top 0x22B414, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_41:: @ 081066E4 +.ifdef JP + map_bottom 0x22B498+0x74, 0x12C, 1 + map_top 0x22B56C+0x74, 0x12C, 1, 1 +.else map_bottom 0x22B498, 0x12C, 1 map_top 0x22B56C, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_42:: @ 081066FC +.ifdef JP + map_bottom 0x22B5EC+0x74, 0x12C, 1 + map_top 0x22B6D8+0x74, 0x12C, 1, 1 +.else map_bottom 0x22B5EC, 0x12C, 1 map_top 0x22B6D8, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_43:: @ 08106714 +.ifdef JP + map_bottom 0x22B758+0x74, 0x258, 1 + map_top 0x22B8B4+0x74, 0x258, 1, 1 +.else map_bottom 0x22B758, 0x258, 1 map_top 0x22B8B4, 0x258, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_44:: @ 0810672C +.ifdef JP + map_bottom 0x22B994+0x74, 0x708, 1 + map_top 0x22BC78+0x74, 0x708, 1, 1 +.else map_bottom 0x22B994, 0x708, 1 map_top 0x22BC78, 0x708, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_45:: @ 08106744 +.ifdef JP + map_bottom 0x22BE68+0x74, 0x708, 1 + map_top 0x22C07C+0x74, 0x708, 1, 1 +.else map_bottom 0x22BE68, 0x708, 1 map_top 0x22C07C, 0x708, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_46:: @ 0810675C +.ifdef JP + map_bottom 0x22C304+0x74, 0x550, 1 + map_top 0x22C4B0+0x74, 0x550, 1, 1 +.else map_bottom 0x22C304, 0x550, 1 map_top 0x22C4B0, 0x550, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_47:: @ 08106774 +.ifdef JP + map_bottom 0x22C648+0x74, 0x12C, 1 + map_top 0x22C6C8+0x74, 0x12C, 1, 1 +.else map_bottom 0x22C648, 0x12C, 1 map_top 0x22C6C8, 0x12C, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_48:: @ 0810678C +.ifdef JP + map_bottom 0x22C71C+0x74, 0x500, 1 + map_top 0x22C9C0+0x74, 0x500, 1, 1 +.else map_bottom 0x22C71C, 0x500, 1 map_top 0x22C9C0, 0x500, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_49:: @ 081067A4 +.ifdef JP + map_bottom 0x22CB00+0x74, 0x3DE, 1 + map_top 0x22CC68+0x74, 0x3DE, 1, 1 +.else map_bottom 0x22CB00, 0x3DE, 1 map_top 0x22CC68, 0x3DE, 1, 1 +.endif gAreaRoomMap_PalaceOfWinds_50:: @ 081067BC +.ifdef JP + map_bottom 0x22CD70+0x74, 0x708, 1 + map_top 0x22D070+0x74, 0x708, 1, 1 +.else map_bottom 0x22CD70, 0x708, 1 map_top 0x22D070, 0x708, 1, 1 +.endif gAreaRoomMaps_PalaceOfWinds:: @ 081067D4 .4byte gAreaRoomMap_PalaceOfWinds_0 @@ -2620,22 +2875,41 @@ gAreaRoomMaps_PalaceOfWinds:: @ 081067D4 .4byte gAreaRoomMap_PalaceOfWinds_50 gAreaRoomMap_PalaceOfWindsBoss_0:: @ 081068A0 +.ifdef JP + map_top 0x22D2B8+0x74, 0x1F80, 1, 1 +.else map_top 0x22D2B8, 0x1F80, 1, 1 +.endif gAreaRoomMaps_PalaceOfWindsBoss:: @ 081068AC .4byte gAreaRoomMap_PalaceOfWindsBoss_0 gAreaRoomMap_Sanctuary_0:: @ 081068B0 +.ifdef JP + map_bottom 0x236A08+0x74, 0x6D6, 1 + map_top 0x236D1C+0x74, 0x6D6, 1, 1 +.else map_bottom 0x236A08, 0x6D6, 1 map_top 0x236D1C, 0x6D6, 1, 1 +.endif gAreaRoomMap_Sanctuary_1:: @ 081068C8 +.ifdef JP + map_bottom 0x236E14+0x74, 0x910, 1 + map_top 0x237320+0x74, 0x910, 1, 1 +.else map_bottom 0x236E14, 0x910, 1 map_top 0x237320, 0x910, 1, 1 +.endif gAreaRoomMap_Sanctuary_2:: @ 081068E0 +.ifdef JP + map_bottom 0x2375D8+0x74, 0x344, 1 + map_top 0x23788C+0x74, 0x344, 1, 1 +.else map_bottom 0x2375D8, 0x344, 1 map_top 0x23788C, 0x344, 1, 1 +.endif gAreaRoomMaps_Sanctuary:: @ 081068F8 .4byte gAreaRoomMap_Sanctuary_0 @@ -2648,32 +2922,67 @@ gAreaRoomMaps_Sanctuary:: @ 081068F8 .4byte 0x0 gAreaRoomMap_HyruleCastle_0:: @ 08106918 +.ifdef JP + map_bottom 0x240B44+0x74, 0x7CE, 1 + map_top 0x240F30+0x74, 0x7CE, 1, 1 +.else map_bottom 0x240B44, 0x7CE, 1 map_top 0x240F30, 0x7CE, 1, 1 +.endif gAreaRoomMap_HyruleCastle_1:: @ 08106930 +.ifdef JP + map_bottom 0x241118+0x74, 0x7FE, 1 + map_top 0x241424+0x74, 0x7FE, 1, 1 +.else map_bottom 0x241118, 0x7FE, 1 map_top 0x241424, 0x7FE, 1, 1 +.endif gAreaRoomMap_HyruleCastle_2:: @ 08106948 +.ifdef JP + map_bottom 0x2415B0+0x74, 0x2EC, 1 + map_top 0x2417B8+0x74, 0x2EC, 1, 1 +.else map_bottom 0x2415B0, 0x2EC, 1 map_top 0x2417B8, 0x2EC, 1, 1 +.endif gAreaRoomMap_HyruleCastle_3:: @ 08106960 +.ifdef JP + map_bottom 0x24186C+0x74, 0xC94, 1 + map_top 0x241D18+0x74, 0xC94, 1, 1 +.else map_bottom 0x24186C, 0xC94, 1 map_top 0x241D18, 0xC94, 1, 1 +.endif gAreaRoomMap_HyruleCastle_4:: @ 08106978 +.ifdef JP + map_bottom 0x241EF0+0x74, 0x1FE, 1 + map_top 0x242044+0x74, 0x1FE, 1, 1 +.else map_bottom 0x241EF0, 0x1FE, 1 map_top 0x242044, 0x1FE, 1, 1 +.endif gAreaRoomMap_HyruleCastle_5:: @ 08106990 +.ifdef JP + map_bottom 0x2420A4+0x74, 0x12C, 1 + map_top 0x24217C+0x74, 0x12C, 1, 1 +.else map_bottom 0x2420A4, 0x12C, 1 map_top 0x24217C, 0x12C, 1, 1 +.endif gAreaRoomMap_HyruleCastle_6:: @ 081069A8 +.ifdef JP + map_bottom 0x2421A8+0x74, 0x12C, 1 + map_top 0x242274+0x74, 0x12C, 1, 1 +.else map_bottom 0x2421A8, 0x12C, 1 map_top 0x242274, 0x12C, 1, 1 +.endif gAreaRoomMaps_HyruleCastle:: @ 081069C0 .4byte gAreaRoomMap_HyruleCastle_0 @@ -2694,251 +3003,556 @@ gAreaRoomMaps_HyruleCastle:: @ 081069C0 .4byte 0x0 gAreaRoomMap_SanctuaryEntrance_0:: @ 08106A00 +.ifdef JP + map_bottom 0x247218+0x74, 0x396, 1 + map_top 0x24745C+0x74, 0x396, 1, 1 +.else map_bottom 0x247218, 0x396, 1 map_top 0x24745C, 0x396, 1, 1 +.endif gAreaRoomMaps_SanctuaryEntrance:: @ 08106A18 .4byte gAreaRoomMap_SanctuaryEntrance_0 gAreaRoomMap_DarkHyruleCastle_0:: @ 08106A1C +.ifdef JP + map_bottom 0x264EF4+0x74, 0xE58, 1 + map_top 0x265378+0x74, 0xE58, 1, 1 +.else map_bottom 0x264EF4, 0xE58, 1 map_top 0x265378, 0xE58, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_1:: @ 08106A34 +.ifdef JP + map_bottom 0x2657C8+0x74, 0x1BA, 1 + map_top 0x2658A4+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2657C8, 0x1BA, 1 map_top 0x2658A4, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_2:: @ 08106A4C +.ifdef JP + map_bottom 0x265964+0x74, 0x1BA, 1 + map_top 0x265A44+0x74, 0x1BA, 1, 1 +.else map_bottom 0x265964, 0x1BA, 1 map_top 0x265A44, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_3:: @ 08106A64 +.ifdef JP + map_bottom 0x265B18+0x74, 0x1BA, 1 + map_top 0x265C08+0x74, 0x1BA, 1, 1 +.else map_bottom 0x265B18, 0x1BA, 1 map_top 0x265C08, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_4:: @ 08106A7C +.ifdef JP + map_bottom 0x265CD4+0x74, 0x1BA, 1 + map_top 0x265DC8+0x74, 0x1BA, 1, 1 +.else map_bottom 0x265CD4, 0x1BA, 1 map_top 0x265DC8, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_5:: @ 08106A94 +.ifdef JP + map_bottom 0x265E98+0x74, 0x444, 1 + map_top 0x2660BC+0x74, 0x444, 1, 1 +.else map_bottom 0x265E98, 0x444, 1 map_top 0x2660BC, 0x444, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_6:: @ 08106AAC +.ifdef JP + map_bottom 0x26620C+0x74, 0x2A0, 1 + map_top 0x2663A0+0x74, 0x2A0, 1, 1 +.else map_bottom 0x26620C, 0x2A0, 1 map_top 0x2663A0, 0x2A0, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_7:: @ 08106AC4 +.ifdef JP + map_bottom 0x2664A0+0x74, 0x374, 1 + map_top 0x2665EC+0x74, 0x374, 1, 1 +.else map_bottom 0x2664A0, 0x374, 1 map_top 0x2665EC, 0x374, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_8:: @ 08106ADC +.ifdef JP + map_bottom 0x266730+0x74, 0x374, 1 + map_top 0x266910+0x74, 0x374, 1, 1 +.else map_bottom 0x266730, 0x374, 1 map_top 0x266910, 0x374, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_9:: @ 08106AF4 +.ifdef JP + map_bottom 0x266A44+0x74, 0x1FE, 1 + map_top 0x266B98+0x74, 0x1FE, 1, 1 +.else map_bottom 0x266A44, 0x1FE, 1 map_top 0x266B98, 0x1FE, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_10:: @ 08106B0C +.ifdef JP + map_bottom 0x266C78+0x74, 0x1BA, 1 + map_top 0x266DA4+0x74, 0x1BA, 1, 1 +.else map_bottom 0x266C78, 0x1BA, 1 map_top 0x266DA4, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_11:: @ 08106B24 +.ifdef JP + map_bottom 0x266E70+0x74, 0x1BA, 1 + map_top 0x266F7C+0x74, 0x1BA, 1, 1 +.else map_bottom 0x266E70, 0x1BA, 1 map_top 0x266F7C, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_12:: @ 08106B3C +.ifdef JP + map_bottom 0x26701C+0x74, 0x1BA, 1 + map_top 0x26712C+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26701C, 0x1BA, 1 map_top 0x26712C, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_13:: @ 08106B54 +.ifdef JP + map_bottom 0x2671DC+0x74, 0x1BA, 1 + map_top 0x2672E8+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2671DC, 0x1BA, 1 map_top 0x2672E8, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_14:: @ 08106B6C +.ifdef JP + map_bottom 0x2673B4+0x74, 0x1BA, 1 + map_top 0x2674F0+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2673B4, 0x1BA, 1 map_top 0x2674F0, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_15:: @ 08106B84 +.ifdef JP + map_bottom 0x2675D4+0x74, 0x1BA, 1 + map_top 0x2676F8+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2675D4, 0x1BA, 1 map_top 0x2676F8, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_16:: @ 08106B9C +.ifdef JP + map_bottom 0x2677BC+0x74, 0x1BA, 1 + map_top 0x2678F0+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2677BC, 0x1BA, 1 map_top 0x2678F0, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_17:: @ 08106BB4 +.ifdef JP + map_bottom 0x2679D0+0x74, 0x2A8, 1 + map_top 0x267B70+0x74, 0x2A8, 1, 1 +.else map_bottom 0x2679D0, 0x2A8, 1 map_top 0x267B70, 0x2A8, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_18:: @ 08106BCC +.ifdef JP + map_bottom 0x267C98+0x74, 0x2A8, 1 + map_top 0x267E00+0x74, 0x2A8, 1, 1 +.else map_bottom 0x267C98, 0x2A8, 1 map_top 0x267E00, 0x2A8, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_19:: @ 08106BE4 +.ifdef JP + map_bottom 0x267F48+0x74, 0x1BA, 1 + map_top 0x268080+0x74, 0x1BA, 1, 1 +.else map_bottom 0x267F48, 0x1BA, 1 map_top 0x268080, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_20:: @ 08106BFC +.ifdef JP + map_bottom 0x268168+0x74, 0x1BA, 1 + map_top 0x2682C8+0x74, 0x1BA, 1, 1 +.else map_bottom 0x268168, 0x1BA, 1 map_top 0x2682C8, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_21:: @ 08106C14 +.ifdef JP + map_bottom 0x2683A4+0x74, 0x1BA, 1 + map_top 0x2684CC+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2683A4, 0x1BA, 1 map_top 0x2684CC, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_22:: @ 08106C2C +.ifdef JP + map_bottom 0x2685A8+0x74, 0x1BA, 1 + map_top 0x2686B0+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2685A8, 0x1BA, 1 map_top 0x2686B0, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_23:: @ 08106C44 +.ifdef JP + map_bottom 0x26876C+0x74, 0x374, 1 + map_top 0x268930+0x74, 0x374, 1, 1 +.else map_bottom 0x26876C, 0x374, 1 map_top 0x268930, 0x374, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_24:: @ 08106C5C +.ifdef JP + map_bottom 0x268A98+0x74, 0x374, 1 + map_top 0x268C2C+0x74, 0x374, 1, 1 +.else map_bottom 0x268A98, 0x374, 1 map_top 0x268C2C, 0x374, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_25:: @ 08106C74 +.ifdef JP + map_bottom 0x268D54+0x74, 0x1BA, 1 + map_top 0x268E3C+0x74, 0x1BA, 1, 1 +.else map_bottom 0x268D54, 0x1BA, 1 map_top 0x268E3C, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_26:: @ 08106C8C +.ifdef JP + map_bottom 0x268F0C+0x74, 0x1BA, 1 + map_top 0x269010+0x74, 0x1BA, 1, 1 +.else map_bottom 0x268F0C, 0x1BA, 1 map_top 0x269010, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_27:: @ 08106CA4 +.ifdef JP + map_bottom 0x2690AC+0x74, 0x1BA, 1 + map_top 0x2690E8+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2690AC, 0x1BA, 1 map_top 0x2690E8, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_28:: @ 08106CBC +.ifdef JP + map_bottom 0x269168+0x74, 0x1BA, 1 + map_top 0x269290+0x74, 0x1BA, 1, 1 +.else map_bottom 0x269168, 0x1BA, 1 map_top 0x269290, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_29:: @ 08106CD4 +.ifdef JP + map_bottom 0x26936C+0x74, 0x374, 1 + map_top 0x2694B0+0x74, 0x374, 1, 1 +.else map_bottom 0x26936C, 0x374, 1 map_top 0x2694B0, 0x374, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_30:: @ 08106CEC +.ifdef JP + map_bottom 0x2695F0+0x74, 0x1BA, 1 + map_top 0x2696D4+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2695F0, 0x1BA, 1 map_top 0x2696D4, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_31:: @ 08106D04 +.ifdef JP + map_bottom 0x269794+0x74, 0x1BA, 1 + map_top 0x2698E4+0x74, 0x1BA, 1, 1 +.else map_bottom 0x269794, 0x1BA, 1 map_top 0x2698E4, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_32:: @ 08106D1C +.ifdef JP + map_bottom 0x2699BC+0x74, 0x1BA, 1 + map_top 0x269AF0+0x74, 0x1BA, 1, 1 +.else map_bottom 0x2699BC, 0x1BA, 1 map_top 0x269AF0, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_33:: @ 08106D34 +.ifdef JP + map_bottom 0x269BD8+0x74, 0x1BA, 1 + map_top 0x269CE0+0x74, 0x1BA, 1, 1 +.else map_bottom 0x269BD8, 0x1BA, 1 map_top 0x269CE0, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_34:: @ 08106D4C +.ifdef JP + map_bottom 0x269DB4+0x74, 0x1BA, 1 + map_top 0x269ED0+0x74, 0x1BA, 1, 1 +.else map_bottom 0x269DB4, 0x1BA, 1 map_top 0x269ED0, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_35:: @ 08106D64 +.ifdef JP + map_bottom 0x269FAC+0x74, 0x1BA, 1 + map_top 0x269FE8+0x74, 0x1BA, 1, 1 +.else map_bottom 0x269FAC, 0x1BA, 1 map_top 0x269FE8, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_36:: @ 08106D7C +.ifdef JP + map_bottom 0x26A168+0x74, 0x1BA, 1 + map_top 0x26A1A4+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26A168, 0x1BA, 1 map_top 0x26A1A4, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_37:: @ 08106D94 +.ifdef JP + map_bottom 0x26A2F8+0x74, 0x1BA, 1 + map_top 0x26A334+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26A2F8, 0x1BA, 1 map_top 0x26A334, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_38:: @ 08106DAC +.ifdef JP + map_bottom 0x26A4A0+0x74, 0x2A8, 1 + map_top 0x26A5CC+0x74, 0x2A8, 1, 1 +.else map_bottom 0x26A4A0, 0x2A8, 1 map_top 0x26A5CC, 0x2A8, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_39:: @ 08106DC4 +.ifdef JP + map_bottom 0x26A70C+0x74, 0x2A8, 1 + map_top 0x26A7BC+0x74, 0x2A8, 1, 1 +.else map_bottom 0x26A70C, 0x2A8, 1 map_top 0x26A7BC, 0x2A8, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_40:: @ 08106DDC +.ifdef JP + map_bottom 0x26A940+0x74, 0x1BA, 1 + map_top 0x26AA24+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26A940, 0x1BA, 1 map_top 0x26AA24, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_41:: @ 08106DF4 +.ifdef JP + map_bottom 0x26AAF8+0x74, 0x1BA, 1 + map_top 0x26ABB4+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26AAF8, 0x1BA, 1 map_top 0x26ABB4, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_42:: @ 08106E0C +.ifdef JP + map_bottom 0x26AC78+0x74, 0x1BA, 1 + map_top 0x26AD44+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26AC78, 0x1BA, 1 map_top 0x26AD44, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_43:: @ 08106E24 +.ifdef JP + map_bottom 0x26AE18+0x74, 0x1BA, 1 + map_top 0x26AEF8+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26AE18, 0x1BA, 1 map_top 0x26AEF8, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_44:: @ 08106E3C +.ifdef JP + map_bottom 0x26AFBC+0x74, 0x1BA, 1 + map_top 0x26B094+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26AFBC, 0x1BA, 1 map_top 0x26B094, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_45:: @ 08106E54 +.ifdef JP + map_bottom 0x26B15C+0x74, 0x1BA, 1 + map_top 0x26B250+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26B15C, 0x1BA, 1 map_top 0x26B250, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_46:: @ 08106E6C +.ifdef JP + map_bottom 0x26B2F4+0x74, 0x1BA, 1 + map_top 0x26B408+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26B2F4, 0x1BA, 1 map_top 0x26B408, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_47:: @ 08106E84 +.ifdef JP + map_bottom 0x26B4BC+0x74, 0x1BA, 1 + map_top 0x26B4F8+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26B4BC, 0x1BA, 1 map_top 0x26B4F8, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_48:: @ 08106E9C +.ifdef JP + map_bottom 0x26B658+0x74, 0x1BA, 1 + map_top 0x26B694+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26B658, 0x1BA, 1 map_top 0x26B694, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_49:: @ 08106EB4 +.ifdef JP + map_bottom 0x26B7EC+0x74, 0x1BA, 1 + map_top 0x26B828+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26B7EC, 0x1BA, 1 map_top 0x26B828, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_50:: @ 08106ECC +.ifdef JP + map_bottom 0x26B984+0x74, 0x1BA, 1 + map_top 0x26B9C0+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26B984, 0x1BA, 1 map_top 0x26B9C0, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_51:: @ 08106EE4 +.ifdef JP + map_bottom 0x26BB34+0x74, 0x2A8, 1 + map_top 0x26BB8C+0x74, 0x2A8, 1, 1 +.else map_bottom 0x26BB34, 0x2A8, 1 map_top 0x26BB8C, 0x2A8, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_52:: @ 08106EFC +.ifdef JP + map_bottom 0x26BD88+0x74, 0x2A8, 1 + map_top 0x26BDE0+0x74, 0x2A8, 1, 1 +.else map_bottom 0x26BD88, 0x2A8, 1 map_top 0x26BDE0, 0x2A8, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_53:: @ 08106F14 +.ifdef JP + map_bottom 0x26BFB4+0x74, 0x1BA, 1 + map_top 0x26C060+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26BFB4, 0x1BA, 1 map_top 0x26C060, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_54:: @ 08106F2C +.ifdef JP + map_bottom 0x26C190+0x74, 0x1BA, 1 + map_top 0x26C23C+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26C190, 0x1BA, 1 map_top 0x26C23C, 0x1BA, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_55:: @ 08106F44 +.ifdef JP + map_bottom 0x26C36C+0x74, 0xA5C, 1 + map_top 0x26C578+0x74, 0xA5C, 1, 1 +.else map_bottom 0x26C36C, 0xA5C, 1 map_top 0x26C578, 0xA5C, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_56:: @ 08106F5C +.ifdef JP + map_bottom 0x26CB1C+0x74, 0x1FE, 1 + map_top 0x26CC54+0x74, 0x1FE, 1, 1 +.else map_bottom 0x26CB1C, 0x1FE, 1 map_top 0x26CC54, 0x1FE, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_57:: @ 08106F74 +.ifdef JP + map_bottom 0x26CD14+0x74, 0x3FC, 1 + map_top 0x26CE94+0x74, 0x3FC, 1, 1 +.else map_bottom 0x26CD14, 0x3FC, 1 map_top 0x26CE94, 0x3FC, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_58:: @ 08106F8C +.ifdef JP + map_bottom 0x26CFD0+0x74, 0x264, 1 + map_top 0x26D0C4+0x74, 0x264, 1, 1 +.else map_bottom 0x26CFD0, 0x264, 1 map_top 0x26D0C4, 0x264, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastle_59:: @ 08106FA4 +.ifdef JP + map_bottom 0x26D194+0x74, 0x1BA, 1 + map_top 0x26D1D0+0x74, 0x1BA, 1, 1 +.else map_bottom 0x26D194, 0x1BA, 1 map_top 0x26D1D0, 0x1BA, 1, 1 +.endif gAreaRoomMaps_DarkHyruleCastle:: @ 08106FBC .4byte gAreaRoomMap_DarkHyruleCastle_0 @@ -3003,40 +3617,85 @@ gAreaRoomMaps_DarkHyruleCastle:: @ 08106FBC .4byte gAreaRoomMap_DarkHyruleCastle_59 gAreaRoomMap_DarkHyruleCastleOutside_0:: @ 081070AC +.ifdef JP + map_bottom 0x27647C+0x74, 0x2EE, 1 + map_top 0x276694+0x74, 0x2EE, 1, 1 +.else map_bottom 0x27647C, 0x2EE, 1 map_top 0x276694, 0x2EE, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastleOutside_1:: @ 081070C4 +.ifdef JP + map_bottom 0x276704+0x74, 0x396, 1 + map_top 0x276924+0x74, 0x396, 1, 1 +.else map_bottom 0x276704, 0x396, 1 map_top 0x276924, 0x396, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastleOutside_2:: @ 081070DC +.ifdef JP + map_bottom 0x2769A0+0x74, 0x374, 1 + map_top 0x276A8C+0x74, 0x374, 1, 1 +.else map_bottom 0x2769A0, 0x374, 1 map_top 0x276A8C, 0x374, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastleOutside_3:: @ 081070F4 +.ifdef JP + map_bottom 0x276BE8+0x74, 0x52E, 1 + map_top 0x276D2C+0x74, 0x52E, 1, 1 +.else map_bottom 0x276BE8, 0x52E, 1 map_top 0x276D2C, 0x52E, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastleOutside_4:: @ 0810710C +.ifdef JP + map_bottom 0x276EEC+0x74, 0x2A8, 1 + map_top 0x276F78+0x74, 0x2A8, 1, 1 +.else map_bottom 0x276EEC, 0x2A8, 1 map_top 0x276F78, 0x2A8, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastleOutside_5:: @ 08107124 +.ifdef JP + map_bottom 0x27705C+0x74, 0x374, 1 + map_top 0x277164+0x74, 0x374, 1, 1 +.else map_bottom 0x27705C, 0x374, 1 map_top 0x277164, 0x374, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastleOutside_6:: @ 0810713C +.ifdef JP + map_bottom 0x2772D0+0x74, 0xA5C, 1 + map_top 0x277480+0x74, 0xA5C, 1, 1 +.else map_bottom 0x2772D0, 0xA5C, 1 map_top 0x277480, 0xA5C, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastleOutside_7:: @ 08107154 +.ifdef JP + map_bottom 0x2776C8+0x74, 0x6E8, 1 + map_top 0x277848+0x74, 0x6E8, 1, 1 +.else map_bottom 0x2776C8, 0x6E8, 1 map_top 0x277848, 0x6E8, 1, 1 +.endif gAreaRoomMap_DarkHyruleCastleOutside_8:: @ 0810716C +.ifdef JP + map_bottom 0x277A28+0x74, 0x630, 1 + map_top 0x277AEC+0x74, 0x630, 1, 1 +.else map_bottom 0x277A28, 0x630, 1 map_top 0x277AEC, 0x630, 1, 1 +.endif gAreaRoomMaps_DarkHyruleCastleOutside:: @ 08107184 .4byte gAreaRoomMap_DarkHyruleCastleOutside_0 @@ -3050,23 +3709,43 @@ gAreaRoomMaps_DarkHyruleCastleOutside:: @ 08107184 .4byte gAreaRoomMap_DarkHyruleCastleOutside_8 gAreaRoomMap_DarkHyruleCastleBridge_0:: @ 081071A8 +.ifdef JP + map_bottom 0x26D27C+0x74, 0x2A8, 1 + map_top 0x26D470+0x74, 0x2A8, 1, 1 +.else map_bottom 0x26D27C, 0x2A8, 1 map_top 0x26D470, 0x2A8, 1, 1 +.endif gAreaRoomMaps_DarkHyruleCastleBridge:: @ 081071C0 .4byte gAreaRoomMap_DarkHyruleCastleBridge_0 gAreaRoomMap_VaatisArms_0:: @ 081071C4 +.ifdef JP + map_bottom 0x26DA80+0x74, 0x214, 1 + map_top 0x26DC40+0x74, 0x214, 1, 1 +.else map_bottom 0x26DA80, 0x214, 1 map_top 0x26DC40, 0x214, 1, 1 +.endif gAreaRoomMap_VaatisArms_1:: @ 081071DC +.ifdef JP + map_bottom 0x26DC98+0x74, 0x214, 1 + map_top 0x26DE58+0x74, 0x214, 1, 1 +.else map_bottom 0x26DC98, 0x214, 1 map_top 0x26DE58, 0x214, 1, 1 +.endif gAreaRoomMap_VaatisArms_2:: @ 081071F4 +.ifdef JP + map_bottom 0x26DEB0+0x74, 0x214, 1 + map_top 0x26E070+0x74, 0x214, 1, 1 +.else map_bottom 0x26DEB0, 0x214, 1 map_top 0x26E070, 0x214, 1, 1 +.endif gAreaRoomMaps_VaatisArms:: @ 0810720C .4byte gAreaRoomMap_VaatisArms_0 @@ -3074,35 +3753,65 @@ gAreaRoomMaps_VaatisArms:: @ 0810720C .4byte gAreaRoomMap_VaatisArms_2 gAreaRoomMap_Vaati3_0:: @ 08107218 +.ifdef JP + map_bottom 0x26D564+0x74, 0x294, 1 + map_top 0x26D704+0x74, 0x294, 1, 1 +.else map_bottom 0x26D564, 0x294, 1 map_top 0x26D704, 0x294, 1, 1 +.endif gAreaRoomMap_Vaati3_1:: @ 08107230 +.ifdef JP + map_bottom 0x26D75C+0x74, 0x210, 1 + map_top 0x26D89C+0x74, 0x210, 1, 1 +.else map_bottom 0x26D75C, 0x210, 1 map_top 0x26D89C, 0x210, 1, 1 +.endif gAreaRoomMaps_Vaati3:: @ 08107248 .4byte gAreaRoomMap_Vaati3_0 .4byte gAreaRoomMap_Vaati3_1 gAreaRoomMap_Vaati2_0:: @ 08107250 +.ifdef JP + map_bottom 0x26D8E4+0x74, 0x294, 1 + map_top 0x26DA24+0x74, 0x294, 1, 1 +.else map_bottom 0x26D8E4, 0x294, 1 map_top 0x26DA24, 0x294, 1, 1 +.endif gAreaRoomMaps_Vaati2:: @ 08107268 .4byte gAreaRoomMap_Vaati2_0 gAreaRoomMap_47_0:: @ 0810726C +.ifdef JP + map_bottom 0x277BB0+0x74, 0x256, 1 + map_top 0x277CD8+0x74, 0x256, 1, 1 +.else map_bottom 0x277BB0, 0x256, 1 map_top 0x277CD8, 0x256, 1, 1 +.endif gAreaRoomMap_47_1:: @ 08107284 +.ifdef JP + map_bottom 0x277D38+0x74, 0x2B2, 1 + map_top 0x277E5C+0x74, 0x2B2, 1, 1 +.else map_bottom 0x277D38, 0x2B2, 1 map_top 0x277E5C, 0x2B2, 1, 1 +.endif gAreaRoomMap_47_2:: @ 0810729C +.ifdef JP + map_bottom 0x277ECC+0x74, 0x47E, 1 + map_top 0x2780BC+0x74, 0x47E, 1, 1 +.else map_bottom 0x277ECC, 0x47E, 1 map_top 0x2780BC, 0x47E, 1, 1 +.endif gAreaRoomMaps_47:: @ 081072B4 .4byte gAreaRoomMap_47_0 @@ -3335,43 +4044,88 @@ gAreaRoomMaps_RoyalValleyGraves:: @ 0810776C .4byte gAreaRoomMap_RoyalValleyGraves_1 gAreaRoomMap_45_0:: @ 08107774 +.ifdef JP + map_bottom 0x278158+0x74, 0x1FE, 1 + map_top 0x27828C+0x74, 0x1FE, 1, 1 +.else map_bottom 0x278158, 0x1FE, 1 map_top 0x27828C, 0x1FE, 1, 1 +.endif gAreaRoomMaps_45:: @ 0810778C .4byte gAreaRoomMap_45_0 gAreaRoomMap_46_0:: @ 08107790 +.ifdef JP + map_bottom 0x2782D0+0x74, 0x286, 1 + map_top 0x278454+0x74, 0x286, 1, 1 +.else map_bottom 0x2782D0, 0x286, 1 map_top 0x278454, 0x286, 1, 1 +.endif gAreaRoomMap_46_1:: @ 081077A8 +.ifdef JP + map_bottom 0x2784C4+0x74, 0x30E, 1 + map_top 0x2786E0+0x74, 0x30E, 1, 1 +.else map_bottom 0x2784C4, 0x30E, 1 map_top 0x2786E0, 0x30E, 1, 1 +.endif gAreaRoomMap_46_2:: @ 081077C0 +.ifdef JP + map_bottom 0x278790+0x74, 0x286, 1 + map_top 0x278908+0x74, 0x286, 1, 1 +.else map_bottom 0x278790, 0x286, 1 map_top 0x278908, 0x286, 1, 1 +.endif gAreaRoomMap_46_3:: @ 081077D8 +.ifdef JP + map_bottom 0x2789A0+0x74, 0x286, 1 + map_top 0x278AEC+0x74, 0x286, 1, 1 +.else map_bottom 0x2789A0, 0x286, 1 map_top 0x278AEC, 0x286, 1, 1 +.endif gAreaRoomMap_46_4:: @ 081077F0 +.ifdef JP + map_bottom 0x278B88+0x74, 0x30E, 1 + map_top 0x278D38+0x74, 0x30E, 1, 1 +.else map_bottom 0x278B88, 0x30E, 1 map_top 0x278D38, 0x30E, 1, 1 +.endif gAreaRoomMap_46_5:: @ 08107808 +.ifdef JP + map_bottom 0x278DDC+0x74, 0x286, 1 + map_top 0x278F2C+0x74, 0x286, 1, 1 +.else map_bottom 0x278DDC, 0x286, 1 map_top 0x278F2C, 0x286, 1, 1 +.endif gAreaRoomMap_46_6:: @ 08107820 +.ifdef JP + map_bottom 0x278FA8+0x74, 0x720, 1 + map_top 0x27921C+0x74, 0x720, 1, 1 +.else map_bottom 0x278FA8, 0x720, 1 map_top 0x27921C, 0x720, 1, 1 +.endif gAreaRoomMap_46_7:: @ 08107838 +.ifdef JP + map_bottom 0x27932C+0x74, 0x2F2, 1 + map_top 0x2794A4+0x74, 0x2F2, 1, 1 +.else map_bottom 0x27932C, 0x2F2, 1 map_top 0x2794A4, 0x2F2, 1, 1 +.endif gAreaRoomMaps_46:: @ 08107850 .4byte gAreaRoomMap_46_0 @@ -3384,72 +4138,122 @@ gAreaRoomMaps_46:: @ 08107850 .4byte gAreaRoomMap_46_7 gAreaRoomMap_08107870:: @ 08107870 +.ifdef JP + map_bottom 0x279520+0x74, 0xC80, 1 + map_top 0x2799B0+0x74, 0xC80, 1, 1 +.else map_bottom 0x279520, 0xC80, 1 map_top 0x2799B0, 0xC80, 1, 1 +.endif @ Unused gAreaRoomMaps_08107888:: @ 08107888 .4byte gAreaRoomMap_08107870 gAreaRoomMap_4D_0:: @ 0810788C +.ifdef JP + map_bottom 0x279D28+0x74, 0xCD0, 1 + map_top 0x27A2F4+0x74, 0xCD0, 1, 1 +.else map_bottom 0x279D28, 0xCD0, 1 map_top 0x27A2F4, 0xCD0, 1, 1 +.endif gAreaRoomMaps_4D:: @ 081078A4 .4byte gAreaRoomMap_4D_0 gAreaRoomMap_57_0:: @ 081078A8 +.ifdef JP + map_bottom 0x27A574+0x74, 0xC80, 1 + map_top 0x27AAE4+0x74, 0xC80, 1, 1 +.else map_bottom 0x27A574, 0xC80, 1 map_top 0x27AAE4, 0xC80, 1, 1 +.endif gAreaRoomMaps_57:: @ 081078C0 .4byte gAreaRoomMap_57_0 gAreaRoomMap_5F_0:: @ 081078C4 +.ifdef JP + map_bottom 0x27AD50+0x74, 0xC80, 1 + map_top 0x27B118+0x74, 0xC80, 1, 1 +.else map_bottom 0x27AD50, 0xC80, 1 map_top 0x27B118, 0xC80, 1, 1 +.endif gAreaRoomMaps_5F:: @ 081078DC .4byte gAreaRoomMap_5F_0 gAreaRoomMap_67_0:: @ 081078E0 +.ifdef JP + map_bottom 0x27B3A0+0x74, 0x12C, 1 + map_top 0x27B470+0x74, 0x12C, 1, 1 +.else map_bottom 0x27B3A0, 0x12C, 1 map_top 0x27B470, 0x12C, 1, 1 +.endif gAreaRoomMaps_67:: @ 081078F8 .4byte gAreaRoomMap_67_0 gAreaRoomMap_6F_0:: @ 081078FC +.ifdef JP + map_bottom 0x27B4AC+0x74, 0xC80, 1 + map_top 0x27B974+0x74, 0xC80, 1, 1 +.else map_bottom 0x27B4AC, 0xC80, 1 map_top 0x27B974, 0xC80, 1, 1 +.endif gAreaRoomMaps_6F:: @ 08107914 .4byte gAreaRoomMap_6F_0 gAreaRoomMap_77_0:: @ 08107918 +.ifdef JP + map_bottom 0x27BCCC+0x74, 0x1040, 1 + map_top 0x27C2C8+0x74, 0x1040, 1, 1 +.else map_bottom 0x27BCCC, 0x1040, 1 map_top 0x27C2C8, 0x1040, 1, 1 +.endif gAreaRoomMaps_77:: @ 08107930 .4byte gAreaRoomMap_77_0 gAreaRoomMap_7F_0:: @ 08107934 +.ifdef JP + map_bottom 0x27C720+0x74, 0xC80, 1 + map_top 0x27CC28+0x74, 0xC80, 1, 1 +.else map_bottom 0x27C720, 0xC80, 1 map_top 0x27CC28, 0xC80, 1, 1 +.endif gAreaRoomMaps_7F:: @ 0810794C .4byte gAreaRoomMap_7F_0 gAreaRoomMap_87_0:: @ 08107950 +.ifdef JP + map_bottom 0x27CF58+0x74, 0xF3C, 1 + map_top 0x27D71C+0x74, 0xF3C, 1, 1 +.else map_bottom 0x27CF58, 0xF3C, 1 map_top 0x27D71C, 0xF3C, 1, 1 +.endif gAreaRoomMaps_87:: @ 08107968 .4byte gAreaRoomMap_87_0 gAreaRoomMap_8F_0:: @ 0810796C +.ifdef JP + map_bottom 0x27DA00+0x74, 0xFA0, 1 + map_top 0x27DFF4+0x74, 0xFA0, 1, 1 +.else map_bottom 0x27DA00, 0xFA0, 1 map_top 0x27DFF4, 0xFA0, 1, 1 +.endif gAreaRoomMaps_8F:: @ 08107984 .4byte gAreaRoomMap_8F_0 diff --git a/data/metatile_headers.s b/data/metatile_headers.s index eb154c7e..21c03b72 100755 --- a/data/metatile_headers.s +++ b/data/metatile_headers.s @@ -269,62 +269,132 @@ gAreaMetatiles_PalaceOfWinds:: @ 08102EA4 metatile_types_top 0x220C54, 0xD88, 1, 1 gAreaMetatiles_PalaceOfWindsBoss:: @ 08102ED4 +.ifdef JP + metatiles_top 0x223680, 0x108, 1 + metatile_types_top 0x2236C8, 0x42, 1, 1 +.else metatiles_top 0x22360C, 0x108, 1 metatile_types_top 0x223654, 0x42, 1, 1 +.endif gAreaMetatiles_Sanctuary:: @ 08102EEC +.ifdef JP + metatiles_bottom 0x233418, 0x3620, 1 + metatiles_top 0x235320, 0x3620, 1 + metatile_types_bottom 0x236424, 0xD88, 1 + metatile_types_top 0x236788, 0xD88, 1, 1 +.else metatiles_bottom 0x2333A4, 0x3620, 1 metatiles_top 0x2352AC, 0x3620, 1 metatile_types_bottom 0x2363B0, 0xD88, 1 metatile_types_top 0x236714, 0xD88, 1, 1 +.endif + gAreaMetatiles_HyruleCastle:: @ 08102F1C +.ifdef JP + metatiles_bottom 0x23D224, 0x37C0, 1 + metatiles_top 0x23EF98, 0x3610, 1 + metatile_types_bottom 0x240440, 0xDF0, 1 + metatile_types_top 0x24086C, 0xD84, 1, 1 +.else metatiles_bottom 0x23D1B0, 0x37C0, 1 metatiles_top 0x23EF24, 0x3610, 1 metatile_types_bottom 0x2403CC, 0xDF0, 1 metatile_types_top 0x2407F8, 0xD84, 1, 1 +.endif gAreaMetatiles_SanctuaryEntrance:: @ 08102F4C +.ifdef JP + metatiles_bottom 0x246158, 0x1478, 1 + metatiles_top 0x246CAC, 0xFF0, 1 + metatile_types_bottom 0x24702C, 0x51E, 1 + metatile_types_top 0x24719C, 0x3FC, 1, 1 +.else metatiles_bottom 0x2460E4, 0x1478, 1 metatiles_top 0x246C38, 0xFF0, 1 metatile_types_bottom 0x246FB8, 0x51E, 1 metatile_types_top 0x247128, 0x3FC, 1, 1 +.endif gAreaMetatiles_DarkHyruleCastle:: @ 08102F7C +.ifdef JP + metatiles_bottom 0x24D940, 0x3FD8, 1 + metatiles_top 0x250680, 0x37C0, 1 + metatile_types_bottom 0x2524F4, 0xFF6, 1 + metatile_types_top 0x252A7C, 0xDF0, 1, 1 +.else metatiles_bottom 0x24D8CC, 0x3FD8, 1 metatiles_top 0x25060C, 0x37C0, 1 metatile_types_bottom 0x252480, 0xFF6, 1 metatile_types_top 0x252A08, 0xDF0, 1, 1 +.endif gAreaMetatiles_DarkHyruleCastleOutside:: @ 08102FAC +.ifdef JP + metatiles_bottom 0x273EE8, 0x3340, 1 + metatiles_top 0x27540C, 0x1EF0, 1 + metatile_types_bottom 0x276048, 0xCD0, 1 + metatile_types_top 0x276324, 0x7BC, 1, 1 +.else metatiles_bottom 0x273E74, 0x3340, 1 metatiles_top 0x275398, 0x1EF0, 1 metatile_types_bottom 0x275FD4, 0xCD0, 1 metatile_types_top 0x2762B0, 0x7BC, 1, 1 +.endif gAreaMetatiles_DarkHyruleCastleBridge:: @ 08102FDC +.ifdef JP + metatiles_bottom 0x256688, 0x3610, 1 + metatiles_top 0x257468, 0x3610, 1 + metatile_types_bottom 0x257D78, 0xD84, 1 + metatile_types_top 0x257FEC, 0xD84, 1, 1 +.else metatiles_bottom 0x256614, 0x3610, 1 metatiles_top 0x2573F4, 0x3610, 1 metatile_types_bottom 0x257D04, 0xD84, 1 metatile_types_top 0x257F78, 0xD84, 1, 1 +.endif gAreaMetatiles_VaatisArms:: @ 0810300C +.ifdef JP + metatiles_bottom 0x263D70, 0x17C8, 1 + metatiles_top 0x264A38, 0xBC0, 1 + metatile_types_bottom 0x264DBC, 0x5F2, 1 + metatile_types_top 0x264EC0, 0x2F0, 1, 1 +.else metatiles_bottom 0x263CFC, 0x17C8, 1 metatiles_top 0x2649C4, 0xBC0, 1 metatile_types_bottom 0x264D48, 0x5F2, 1 metatile_types_top 0x264E4C, 0x2F0, 1, 1 +.endif gAreaMetatiles_Vaati3:: @ 0810303C +.ifdef JP + metatiles_bottom 0x25C730, 0xE80, 1 + metatiles_top 0x25CDE8, 0x9B8, 1 + metatile_types_bottom 0x25CFC4, 0x3A0, 1 + metatile_types_top 0x25D098, 0x26E, 1, 1 +.else metatiles_bottom 0x25C6BC, 0xE80, 1 metatiles_top 0x25CD74, 0x9B8, 1 metatile_types_bottom 0x25CF50, 0x3A0, 1 metatile_types_top 0x25D024, 0x26E, 1, 1 +.endif gAreaMetatiles_Vaati2:: @ 0810306C +.ifdef JP + metatiles_bottom 0x260864, 0x850, 1 + metatiles_top 0x260C90, 0x298, 1 + metatile_types_bottom 0x260D30, 0x214, 1 + metatile_types_top 0x260DAC, 0xA6, 1, 1 +.else metatiles_bottom 0x2607F0, 0x850, 1 metatiles_top 0x260C1C, 0x298, 1 metatile_types_bottom 0x260CBC, 0x214, 1 metatile_types_top 0x260D38, 0xA6, 1, 1 +.endif + gAreaMetatiles:: @ 0810309C .4byte gAreaMetatiles_MinishWoods @ 0x0 diff --git a/data/scripts/script_0800939A.inc b/data/scripts/script_0800939A.inc index 060c412b..2efdd91d 100644 --- a/data/scripts/script_0800939A.inc +++ b/data/scripts/script_0800939A.inc @@ -1,5 +1,9 @@ SCRIPT_START script_0800939A +.ifdef JP + CheckLocalFlag 0x00ac +.else CheckLocalFlag 0x00ae +.endif JumpIf script_0800943E CheckInventory1 0x000d JumpIf script_080093BC @@ -18,7 +22,11 @@ script_080093BC: Jump script_08009376 script_080093DA: SetIntVariable 0x00001d05 +.ifdef JP + CheckLocalFlag 0x00ab +.else CheckLocalFlag 0x00ad +.endif JumpIf script_080093EE SetIntVariable 0x00001d04 script_080093EE: @@ -35,8 +43,13 @@ script_080093EE: Wait 0x00b4 Call sub_0806D70C Wait 0x0078 +.ifdef JP + SetLocalFlag 0x00ac + SetLocalFlag 0x00ab +.else SetLocalFlag 0x00ae SetLocalFlag 0x00ad +.endif Call sub_0806D5D4 _0807EB8C TextboxNoOverlap 0x1d09 diff --git a/data/scripts/script_08009464.inc b/data/scripts/script_08009464.inc index 49342031..bca65bbe 100644 --- a/data/scripts/script_08009464.inc +++ b/data/scripts/script_08009464.inc @@ -5,7 +5,11 @@ SCRIPT_START script_08009464 Wait 0x003c Call sub_0806D70C Wait 0x003c +.ifdef JP + ClearLocalFlag 0x00ac +.else ClearLocalFlag 0x00ae +.endif Call sub_0806D620 Wait 0x003c WaitPlayerAction8 diff --git a/data/scripts/script_080098D4.inc b/data/scripts/script_080098D4.inc index d87a79bd..ea0a2350 100644 --- a/data/scripts/script_080098D4.inc +++ b/data/scripts/script_080098D4.inc @@ -7,9 +7,17 @@ script_080098D8: script_080098E0: CheckInventory1 0x003c JumpIfNot script_080098E0 - CheckLocalFlag 0x005d +.ifdef JP + CheckLocalFlag 0x5b +.else + CheckLocalFlag 0x5d +.endif JumpIf script_08009910 +.ifdef JP + SetLocalFlag 0x005b +.else SetLocalFlag 0x005d +.endif _0807E864 Call sub_0807F9A4 Call sub_0807DF28 diff --git a/data/scripts/script_08009E88.inc b/data/scripts/script_08009E88.inc index d21a9d8e..75074f51 100644 --- a/data/scripts/script_08009E88.inc +++ b/data/scripts/script_08009E88.inc @@ -2,7 +2,11 @@ SCRIPT_START script_08009E88 BeginBlock Call sub_0807DF28 _0807E864 +.ifdef JP + SetLocalFlag 0x009e +.else SetLocalFlag 0x009f +.endif EndBlock Wait 0x003c _0807E778 0x0004 diff --git a/data/scripts/script_0800B200.inc b/data/scripts/script_0800B200.inc index 3dfffa93..909699d5 100644 --- a/data/scripts/script_0800B200.inc +++ b/data/scripts/script_0800B200.inc @@ -1,7 +1,11 @@ SCRIPT_START script_0800B200 BeginBlock _0807E5F8 0x00000000 +.ifdef JP + CheckLocalFlag 0x001e +.else CheckLocalFlag 0x001d +.endif JumpIf script_0800B252 SetEntitySpeed 0x00c0 EndBlock @@ -18,7 +22,11 @@ script_0800B216: CameraTargetPlayer Wait 0x0008 _0807E878 +.ifdef JP + CheckLocalFlag 0x001e +.else CheckLocalFlag 0x001d +.endif JumpIfNot script_0800B216 script_0800B252: SCRIPT_END diff --git a/data/scripts/script_0800B308.inc b/data/scripts/script_0800B308.inc index 12365628..8ec57e2e 100644 --- a/data/scripts/script_0800B308.inc +++ b/data/scripts/script_0800B308.inc @@ -1,6 +1,10 @@ SCRIPT_START script_0800B308 BeginBlock +.ifdef JP + CheckLocalFlag 0x001e +.else CheckLocalFlag 0x001d +.endif JumpIf script_0800B39C DoPostScriptAction 0x0001 SetEntitySpeed 0x0040 @@ -36,7 +40,11 @@ script_0800B350: CheckKinstoneFused 0x0008 JumpIfNot script_0800B350 EndBlock +.ifdef JP + SetLocalFlag 0x001e +.else SetLocalFlag 0x001d +.endif PlaySound SFX_SECRET script_0800B39C: DoPostScriptAction 0x0006 diff --git a/data/scripts/script_0800D6D0.inc b/data/scripts/script_0800D6D0.inc index 40d9c3a4..d69cc2e6 100644 --- a/data/scripts/script_0800D6D0.inc +++ b/data/scripts/script_0800D6D0.inc @@ -1,11 +1,19 @@ SCRIPT_START script_0800D6D0 BeginBlock +.ifdef JP + CheckLocalFlag 0x00f0 +.else CheckLocalFlag 0x00f3 +.endif JumpIf script_0800D6E8 DoPostScriptAction 0x0008 EndBlock script_0800D6E0: +.ifdef JP + CheckLocalFlag 0x00f0 +.else CheckLocalFlag 0x00f3 +.endif JumpIfNot script_0800D6E0 script_0800D6E8: DoPostScriptAction 0x0007 diff --git a/data/scripts/script_0800D6F0.inc b/data/scripts/script_0800D6F0.inc index fb84a2c7..5a402b35 100644 --- a/data/scripts/script_0800D6F0.inc +++ b/data/scripts/script_0800D6F0.inc @@ -1,11 +1,19 @@ SCRIPT_START script_0800D6F0 BeginBlock +.ifdef JP + CheckLocalFlag 0x00f2 +.else CheckLocalFlag 0x00f5 +.endif JumpIf script_0800D6E8 DoPostScriptAction 0x0008 EndBlock script_0800D700: +.ifdef JP + CheckLocalFlag 0x00f2 +.else CheckLocalFlag 0x00f5 +.endif JumpIfNot script_0800D700 DoPostScriptAction 0x0007 SCRIPT_END diff --git a/data/scripts/script_0800E0BC.inc b/data/scripts/script_0800E0BC.inc index abd2f9e7..abb3f935 100644 --- a/data/scripts/script_0800E0BC.inc +++ b/data/scripts/script_0800E0BC.inc @@ -301,10 +301,17 @@ SCRIPT_START script_0800E4A4 CheckLocalFlag 0x007c JumpIf script_0800E4FA script_0800E4B6: +.ifdef JP + CheckPlayerInRegion 0x0088, 0x0100, 0x0820 +.else CheckPlayerInRegion 0x0088, 0x00f8, 0x0820 +.endif JumpIfNot script_0800E4B6 BeginBlock - _0807E864 + _0807E864 +.ifdef JP + Call sub_0805E544 +.endif EndBlock Call sub_0807F3F8 Wait 0x003c @@ -320,6 +327,9 @@ script_0800E4B6: BeginBlock PlayBgm BGM_FIGHT_THEME2 SetLocalFlag 0x007c +.ifdef JP + Call UnfreezeTime +.endif script_0800E4FA: _0807E878 DoPostScriptAction 0x0006 diff --git a/data/scripts/script_0800F554.inc b/data/scripts/script_0800F554.inc index 8668612d..747ea06b 100644 --- a/data/scripts/script_0800F554.inc +++ b/data/scripts/script_0800F554.inc @@ -105,6 +105,8 @@ script_0800F662: DoPostScriptAction 0x0000 Jump script_0800F662 .2byte 0x0000 + + SCRIPT_START script_0800F688 BeginBlock _0807EB44 0x0004 @@ -119,7 +121,11 @@ script_0800F6A0: _0807E864 _0807EB74 CallWithArg sub_0807F3D8, 0x00000004 +.ifdef JP + CheckLocalFlag 0x00ca +.else CheckLocalFlag 0x00cd +.endif JumpIf script_0800F6C4 TextboxNoOverlap 0x2512 Jump script_0800F6C8 @@ -140,7 +146,11 @@ SCRIPT_START script_0800F6E0 Call sub_08062788 EndBlock script_0800F6F4: +.ifdef JP + CheckLocalFlag 0x00ca +.else CheckLocalFlag 0x00cd +.endif JumpIf script_0800F718 CheckEntityInteractType JumpIfNot script_0800F6F4 diff --git a/data/scripts/script_0800F724.inc b/data/scripts/script_0800F724.inc index 2d686bbc..102bb549 100644 --- a/data/scripts/script_0800F724.inc +++ b/data/scripts/script_0800F724.inc @@ -3,12 +3,22 @@ SCRIPT_START script_0800F724 DoPostScriptAction 0x0008 EndBlock script_0800F72C: +.ifdef JP + CheckLocalFlag 0x00ca +.else CheckLocalFlag 0x00cd +.endif JumpIfNot script_0800F72C DoPostScriptAction 0x0007 Jump script_0800F584 + + SCRIPT_START script_0800F73C +.ifdef JP + CheckLocalFlag 0x00ca +.else CheckLocalFlag 0x00cd +.endif JumpIf script_0800FA4C _0807E864 Call sub_0807DF28 @@ -168,7 +178,11 @@ SCRIPT_START script_0800F73C Wait 0x000a _0807E5F8 0x00000002 Call sub_08063C44 +.ifdef JP + SetLocalFlag 0x00ca +.else SetLocalFlag 0x00cd +.endif Call sub_0807DF50 _0807E878 script_0800FA4C: diff --git a/data/scripts/script_0800FD0C.inc b/data/scripts/script_0800FD0C.inc index 0720943c..563a019a 100644 --- a/data/scripts/script_0800FD0C.inc +++ b/data/scripts/script_0800FD0C.inc @@ -1,11 +1,19 @@ SCRIPT_START script_0800FD0C +.ifdef JP + CheckLocalFlag 0x00ca +.else CheckLocalFlag 0x00cd +.endif JumpIf script_0800FD50 WaitForSomething2 0x00000010 script_0800FD1A: CheckPlayerInRegion 0x00c8, 0x03c0, 0x1040 JumpIfNot script_0800FD1A +.ifdef JP + CheckLocalFlag 0x00ca +.else CheckLocalFlag 0x00cd +.endif JumpIf script_0800FD5C _0807E864 Call sub_0807F9A4 diff --git a/data/scripts/script_0800FF74.inc b/data/scripts/script_0800FF74.inc index 2d79be0d..f105ab7b 100644 --- a/data/scripts/script_0800FF74.inc +++ b/data/scripts/script_0800FF74.inc @@ -4,17 +4,29 @@ SCRIPT_START script_0800FF74 _0807E9D4 CallWithArg sub_0807F3D8, 0x00000008 Call sub_080644A4 +.ifdef JP + ClearLocalFlag 0x00c4 +.else ClearLocalFlag 0x00c7 +.endif EndBlock script_0800FF92: EndBlock BeginBlock DoPostScriptAction 0x000a +.ifdef JP + CheckLocalFlag 0x00cb +.else CheckLocalFlag 0x00ce +.endif JumpIf script_0800FFCC DoPostScriptAction 0x000b Call sub_08064198 +.ifdef JP + CheckLocalFlag 0x00c4 +.else CheckLocalFlag 0x00c7 +.endif JumpIfNot script_0800FFCC Call sub_08064488 CheckPlayerInRegion2 0x4040 @@ -25,7 +37,11 @@ script_0800FFCC: CheckEntityInteractType JumpIfNot script_0800FF92 EndBlock +.ifdef JP + SetLocalFlag 0x00c4 +.else SetLocalFlag 0x00c7 +.endif _0807E864 _0807EB74 CallWithArg sub_0807F3D8, 0x00000008 @@ -35,7 +51,11 @@ script_0800FFCC: _0807EA94 Jump script_08010060 script_0800FFF8: +.ifdef JP + CheckLocalFlag 0x00cb +.else CheckLocalFlag 0x00ce +.endif JumpIfNot script_0801000A TextboxNoOverlap 0x340b _0807EA94 @@ -60,7 +80,11 @@ script_08010014: _0807EDD4 0x0018, 0x0108 _0807EB44 0x0002 CallWithArg sub_0807F3D8, 0x00000008 +.ifdef JP + SetLocalFlag 0x00cb +.else SetLocalFlag 0x00ce +.endif script_08010060: Call sub_080644A4 CallWithArg sub_0807F5B0, 0x0000000a diff --git a/data/scripts/script_08010264.inc b/data/scripts/script_08010264.inc index 7e020262..a633beba 100644 --- a/data/scripts/script_08010264.inc +++ b/data/scripts/script_08010264.inc @@ -501,7 +501,9 @@ script_08010860: TextboxNoOverlap 0x2c21 Jump script_080108B2 script_080108AA: +.ifndef JP SetLocalFlag 0x00fa +.endif TextboxNoOverlap 0x2c20 script_080108B2: _0807EA94 diff --git a/data/scripts/script_08010964.inc b/data/scripts/script_08010964.inc index 72d28a10..7b408aaf 100644 --- a/data/scripts/script_08010964.inc +++ b/data/scripts/script_08010964.inc @@ -14,10 +14,16 @@ script_08010994: Call sub_0807DF50 _0807E878 Jump script_08010964 + + SCRIPT_START script_080109A0 BeginBlock EndBlock +.ifdef JP + CheckLocalFlag 0x00ce +.else CheckLocalFlag 0x00d1 +.endif JumpIf script_080109EA CheckPlayerInRegion2 0x0808 JumpIfNot script_080109A0 diff --git a/data/scripts/script_08011128.inc b/data/scripts/script_08011128.inc index c8e34389..d54a4e51 100644 --- a/data/scripts/script_08011128.inc +++ b/data/scripts/script_08011128.inc @@ -2,6 +2,10 @@ SCRIPT_START script_08011128 BeginBlock _0807EB44 0x0004 DoPostScriptAction 0x0000 +.ifdef JP + _0807E9D4 + DoPostScriptAction 0x000a +.endif EndBlock script_08011134: CheckPlayerInRegion 0x01f8, 0x0048, 0x1040 @@ -35,3 +39,6 @@ script_08011134: _0807E5F8 0x00000008 DoPostScriptAction 0x0006 SCRIPT_END +.ifdef JP + .2byte 0x0000 +.endif diff --git a/data/scripts/script_0801194C.inc b/data/scripts/script_0801194C.inc index 3f7fee61..dc3594b3 100644 --- a/data/scripts/script_0801194C.inc +++ b/data/scripts/script_0801194C.inc @@ -127,6 +127,7 @@ script_08011AC4: _0807EA94 _0807E878 Jump script_08011AC4 + SCRIPT_START script_08011AE4 CheckRoomFlag 0x000f JumpIfNot script_08011AE4 @@ -136,7 +137,11 @@ SCRIPT_START script_08011AE4 script_08011AFA: TextboxNoOverlapFollowPos 0x1321, 0x0007 _0807EA94 +.ifdef JP + SetLocalFlag 0x0011 +.else SetLocalFlag 0x0010 +.endif CallWithArg sub_0806DA1C, 0x00000003 _0807E878 Call sub_0807DF50 diff --git a/data/scripts/script_08011C7C.inc b/data/scripts/script_08011C7C.inc index 93e409c8..fe9af336 100644 --- a/data/scripts/script_08011C7C.inc +++ b/data/scripts/script_08011C7C.inc @@ -360,8 +360,10 @@ script_08012070: TextboxNoOverlap 0x3125 _0807EA94 _0807F034 0x0031 - WaitPlayerAction8 + WaitPlayerAction8 +.ifndef JP Call sub_0807FC24 +.endif Jump script_0801209E script_0801209A: TextboxNoOverlap 0x3127 @@ -371,7 +373,11 @@ script_0801209E: _0807EB44 0x0004 DoPostScriptAction 0x0001 Jump script_0801203A +.ifndef JP .2byte 0x0000 +.endif + + SCRIPT_START script_080120B0 BeginBlock Call sub_08064928 @@ -407,8 +413,10 @@ script_080120FC: TextboxNoOverlap 0x3119 _0807EA94 _0807F034 0x002f - WaitPlayerAction8 + WaitPlayerAction8 +.ifndef JP Call sub_0807FC24 +.endif Jump script_0801212A script_08012126: TextboxNoOverlap 0x311b @@ -418,7 +426,10 @@ script_0801212A: _0807EB44 0x0004 DoPostScriptAction 0x0001 Jump script_080120C6 +.ifndef JP .2byte 0x0000 +.endif + SCRIPT_START script_0801213C BeginBlock Call sub_08064A28 @@ -455,7 +466,9 @@ script_08012188: _0807EA94 _0807F034 0x0030 WaitPlayerAction8 +.ifndef JP Call sub_0807FC24 +.endif Jump script_080121B6 script_080121B2: TextboxNoOverlap 0x3121 @@ -465,7 +478,10 @@ script_080121B6: _0807EB44 0x0004 DoPostScriptAction 0x0001 Jump script_08012152 +.ifndef JP .2byte 0x0000 +.endif + SCRIPT_START script_080121C8 BeginBlock Call sub_08064828 diff --git a/data/scripts/script_08012430.inc b/data/scripts/script_08012430.inc index 28277936..a6c730c1 100644 --- a/data/scripts/script_08012430.inc +++ b/data/scripts/script_08012430.inc @@ -18,7 +18,9 @@ script_08012440: SetLocalFlag 0x00b3 _0807F034 0x0062 WaitPlayerAction8 +.ifndef JP SetLocalFlag 0x00d0 +.endif script_08012474: _0807E878 _0807E930 0x0000 diff --git a/data/scripts/script_08012C68.inc b/data/scripts/script_08012C68.inc index 033fc43f..bcbb12f3 100644 --- a/data/scripts/script_08012C68.inc +++ b/data/scripts/script_08012C68.inc @@ -15,6 +15,7 @@ script_08012C7E: SetGlobalFlag 0x0022 _0807E878 Jump script_08012C7E + SCRIPT_START script_08012C98 CheckGlobalFlag 0x0014 JumpIfNot script_08012C98 @@ -30,7 +31,11 @@ script_08012CA0: Call sub_0807DF28 _0807EB28 0x2202 _0807EA94 +.ifdef JP + SetLocalFlag 0x003a +.else SetLocalFlag 0x003b +.endif Call sub_0807DF50 _0807E878 script_08012CD2: diff --git a/data/scripts/script_08012CD8.inc b/data/scripts/script_08012CD8.inc index 59f22008..5e0ade09 100644 --- a/data/scripts/script_08012CD8.inc +++ b/data/scripts/script_08012CD8.inc @@ -12,7 +12,11 @@ SCRIPT_START script_08012CD8 EndBlock _0807EB28 0x2203 _0807EA94 +.ifdef JP + SetLocalFlag 0x003d +.else SetLocalFlag 0x003e +.endif Call sub_0807DF50 _0807E878 DoPostScriptAction 0x0006 diff --git a/data/scripts/script_08012D70.inc b/data/scripts/script_08012D70.inc index 1f0dfcfe..700f949f 100644 --- a/data/scripts/script_08012D70.inc +++ b/data/scripts/script_08012D70.inc @@ -8,7 +8,11 @@ SCRIPT_START script_08012D70 WaitForSomething2 0x00000001 _0807EB28 0x132d _0807EA94 +.ifdef JP + SetLocalFlag 0x0015 +.else SetLocalFlag 0x0014 +.endif Call sub_0807DF50 _0807E878 DoPostScriptAction 0x0006 diff --git a/data/scripts/script_08014450.inc b/data/scripts/script_08014450.inc index ce1cc804..2bce9f6a 100644 --- a/data/scripts/script_08014450.inc +++ b/data/scripts/script_08014450.inc @@ -35,7 +35,9 @@ script_080144B8: Jump script_080144C8 script_080144C0: SetLocalFlag 0x0093 +.ifndef JP SetLocalFlag 0x00d3 +.endif script_080144C8: ModRupees 0xfff6 TextboxNoOverlapFollow 0x420c @@ -54,6 +56,11 @@ script_080144FC: _0807E878 CheckRoomFlag 0x0000 JumpIfNot script_08014462 +.ifndef JP _0807E9DC +.endif SCRIPT_END +.ifndef JP .2byte 0x0000 +.endif + diff --git a/data/scripts/script_080145E8.inc b/data/scripts/script_080145E8.inc index 0e32d77a..88c520e0 100644 --- a/data/scripts/script_080145E8.inc +++ b/data/scripts/script_080145E8.inc @@ -17,6 +17,7 @@ script_08014608: Call sub_0807DF50 _0807E878 Jump script_080145F8 + SCRIPT_START script_08014628 BeginBlock _0807E9D4 @@ -40,7 +41,11 @@ script_0801463A: TextboxNoOverlapFollowPos 0x432b, 0x000c Jump script_080147CE script_08014672: +.ifdef JP + CheckPlayerInRegion 0x0078, 0x0078, 0x0810 +.else Call sub_08088658 +.endif JumpIfNot script_0801463A _0807E864 _0807EB28 0x431f @@ -144,4 +149,6 @@ script_080147CE: Wait 0x0004 _0807E878 Jump script_0801463A +.ifndef JP .2byte 0x0000 +.endif diff --git a/data/scripts/script_08014CDC.inc b/data/scripts/script_08014CDC.inc index 4cb6b657..4a9f1dc2 100644 --- a/data/scripts/script_08014CDC.inc +++ b/data/scripts/script_08014CDC.inc @@ -53,7 +53,11 @@ script_08014D96: TextboxNoOverlap 0x1014 _0807EA94 _0807EC64 0x0018 +.ifdef JP + SetLocalFlag 0x006b +.else SetLocalFlag 0x006d +.endif Call sub_0807DF50 _0807E878 DoPostScriptAction 0x0006 diff --git a/data/scripts/script_08014E14.inc b/data/scripts/script_08014E14.inc index 1acf6e0c..01df4073 100644 --- a/data/scripts/script_08014E14.inc +++ b/data/scripts/script_08014E14.inc @@ -239,7 +239,11 @@ script_08015104: PlaySound SFX_SECRET _0807F0B4 0x0004 CameraTargetPlayer +.ifdef JP + SetLocalFlag 0x008a +.else SetLocalFlag 0x008c +.endif _0807EB28 0x130c _0807EA94 CameraTargetPlayer diff --git a/data/scripts/script_080157AC.inc b/data/scripts/script_080157AC.inc index b4482406..a88d0a4e 100644 --- a/data/scripts/script_080157AC.inc +++ b/data/scripts/script_080157AC.inc @@ -63,7 +63,11 @@ script_08015888: _0807EA94 _0807E5F8 0x00000001 WaitForSomething2 0x00000002 +.ifdef JP + SetLocalFlag 0x0089 +.else SetLocalFlag 0x008b +.endif Call sub_08066FB8 Call sub_0807DF50 _0807E878 diff --git a/data/scripts/script_08015B34.inc b/data/scripts/script_08015B34.inc index 3b383a11..256600f4 100644 --- a/data/scripts/script_08015B34.inc +++ b/data/scripts/script_08015B34.inc @@ -1,7 +1,11 @@ SCRIPT_START script_08015B34 EndBlock BeginBlock +.ifdef JP + CheckLocalFlag 0x0089 +.else CheckLocalFlag 0x008b +.endif JumpIf script_08015B7E CallWithArg sub_0807F6B4, 0x00000318 JumpIfNot script_08015B34 diff --git a/data/scripts/script_08015BA8.inc b/data/scripts/script_08015BA8.inc index 0798902d..46f4d3f6 100644 --- a/data/scripts/script_08015BA8.inc +++ b/data/scripts/script_08015BA8.inc @@ -1,6 +1,10 @@ SCRIPT_START script_08015BA8 BeginBlock +.ifdef JP + SetLocalFlag 0x008c +.else SetLocalFlag 0x008e +.endif _0807E864 MoveEntityToPlayer CameraTargetEntity diff --git a/data/scripts/script_08015BE8.inc b/data/scripts/script_08015BE8.inc index 091c95fc..65c65409 100644 --- a/data/scripts/script_08015BE8.inc +++ b/data/scripts/script_08015BE8.inc @@ -31,7 +31,11 @@ script_08015BF0: PlayBGM _0807EB28 0x131f _0807EA94 +.ifdef JP + SetLocalFlag 0x009b +.else SetLocalFlag 0x009c +.endif Call sub_0807FBCC Call sub_0807DF50 _0807E878 diff --git a/data/scripts/script_08016384.inc b/data/scripts/script_08016384.inc index f1d84660..b0f66de0 100644 --- a/data/scripts/script_08016384.inc +++ b/data/scripts/script_08016384.inc @@ -17,7 +17,11 @@ SCRIPT_START script_08016384 CheckInventory2 0x0001 HasRoomItemForSale CheckLocalFlag 0x0067 +.ifdef JP + CheckLocalFlagByOffset 0x0100, 0x0069 +.else CheckLocalFlagByOffset 0x0100, 0x006b +.endif CheckGlobalFlag 0x0013 CheckRoomFlag 0x0000 CheckPlayerInRegion 0x0000, 0x0000, 0x0000 diff --git a/data/strings.s b/data/strings.s index 20ab7e49..2bc41268 100644 --- a/data/strings.s +++ b/data/strings.s @@ -5,4 +5,8 @@ .align 2 gUnk_089B1D90:: @ 089B1D90 +.ifdef JP + .incbin "baserom_jp.gba", 0x9B1A30, 0x2BCC0 +.else .incbin "translations/USA.bin" +.endif diff --git a/data/tileset_headers.s b/data/tileset_headers.s index 664c1916..abcfff54 100755 --- a/data/tileset_headers.s +++ b/data/tileset_headers.s @@ -868,89 +868,150 @@ gAreaTilesets_PalaceOfWinds:: @ 08102150 gAreaTileset_PalaceOfWindsBoss_0:: @ 08102154 tileset_tiles 0x22131C, 0x6000000, 0x4000, 1 tileset_tiles 0x222634, 0x6004000, 0x4000, 1 +.ifdef JP + tileset_tiles 0x224510, 0x600F000, 0x800, 1 +.else tileset_tiles 0x22449C, 0x600F000, 0x800, 1 +.endif tileset_palette_set 162, 1 gAreaTilesets_PalaceOfWindsBoss:: @ 08102184 .4byte gAreaTileset_PalaceOfWindsBoss_0 gAreaTileset_Sanctuary_0:: @ 08102188 +.ifdef JP + tileset_tiles 0x22E250, 0x6000000, 0x4000, 1 + tileset_tiles 0x22FFA4, 0x6004000, 0x4000, 1 + tileset_tiles 0x232028, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x22E1DC, 0x6000000, 0x4000, 1 tileset_tiles 0x22FF30, 0x6004000, 0x4000, 1 tileset_tiles 0x231FB4, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 57, 1 gAreaTilesets_Sanctuary:: @ 081021B8 .4byte gAreaTileset_Sanctuary_0 gAreaTileset_HyruleCastle_0:: @ 081021BC +.ifdef JP + tileset_tiles 0x2379C0, 0x6000000, 0x4000, 1 + tileset_tiles 0x239B50, 0x6004000, 0x4000, 1 + tileset_tiles 0x23B8C8, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x23794C, 0x6000000, 0x4000, 1 tileset_tiles 0x239ADC, 0x6004000, 0x4000, 1 tileset_tiles 0x23B854, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 58, 1 gAreaTilesets_HyruleCastle:: @ 081021EC .4byte gAreaTileset_HyruleCastle_0 gAreaTileset_SanctuaryEntrance_0:: @ 081021F0 +.ifdef JP + tileset_tiles 0x242430, 0x6000000, 0x4000, 1 + tileset_tiles 0x243F6C, 0x6004000, 0x4000, 1 + tileset_tiles 0x245558, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x2423BC, 0x6000000, 0x4000, 1 tileset_tiles 0x243EF8, 0x6004000, 0x4000, 1 tileset_tiles 0x2454E4, 0x6008000, 0x4000, 1 +.endif + tileset_palette_set 145, 1 gAreaTilesets_SanctuaryEntrance:: @ 08102220 .4byte gAreaTileset_SanctuaryEntrance_0 gAreaTileset_DarkHyruleCastle_0:: @ 08102224 +.ifdef JP + tileset_tiles 0x247560, 0x6000000, 0x4000, 1 + tileset_tiles 0x249734, 0x6004000, 0x4000, 1 + tileset_tiles 0x24B99C, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x2474EC, 0x6000000, 0x4000, 1 tileset_tiles 0x2496C0, 0x6004000, 0x4000, 1 tileset_tiles 0x24B928, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 59, 1 gAreaTilesets_DarkHyruleCastle:: @ 08102254 .4byte gAreaTileset_DarkHyruleCastle_0 gAreaTileset_DarkHyruleCastleOutside_0:: @ 08102258 +.ifdef JP + tileset_tiles 0x26E430, 0x6000000, 0x4000, 1 + tileset_tiles 0x270420, 0x6004000, 0x4000, 1 + tileset_tiles 0x2720A4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x26E3BC, 0x6000000, 0x4000, 1 tileset_tiles 0x2703AC, 0x6004000, 0x4000, 1 tileset_tiles 0x272030, 0x6008000, 0x4000, 1 +.endif + tileset_palette_set 144, 1 gAreaTilesets_DarkHyruleCastleOutside:: @ 08102288 .4byte gAreaTileset_DarkHyruleCastleOutside_0 gAreaTileset_DarkHyruleCastleBridge_0:: @ 0810228C +.ifdef JP + tileset_tiles 0x252F6C, 0x6000000, 0x4000, 1 + tileset_tiles 0x254090, 0x6004000, 0x4000, 1 + tileset_tiles 0x2557CC, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x252EF8, 0x6000000, 0x4000, 1 tileset_tiles 0x25401C, 0x6004000, 0x4000, 1 tileset_tiles 0x255758, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 180, 1 gAreaTilesets_DarkHyruleCastleBridge:: @ 081022BC .4byte gAreaTileset_DarkHyruleCastleBridge_0 gAreaTileset_VaatisArms_0:: @ 081022C0 +.ifdef JP + tileset_tiles 0x260DFC, 0x6000000, 0x4000, 1 + tileset_tiles 0x2625A4, 0x6004000, 0x4000, 1 + tileset_tiles 0x262F78, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x260D88, 0x6000000, 0x4000, 1 tileset_tiles 0x262530, 0x6004000, 0x4000, 1 tileset_tiles 0x262F04, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 155, 1 gAreaTilesets_VaatisArms:: @ 081022F0 .4byte gAreaTileset_VaatisArms_0 gAreaTileset_Vaati3_0:: @ 081022F4 +.ifdef JP + tileset_tiles 0x258204, 0x6000000, 0x4000, 1 + tileset_tiles 0x259310, 0x6004000, 0x4000, 1 + tileset_tiles 0x25A52C, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x258190, 0x6000000, 0x4000, 1 tileset_tiles 0x25929C, 0x6004000, 0x4000, 1 tileset_tiles 0x25A4B8, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 156, 1 gAreaTilesets_Vaati3:: @ 08102324 .4byte gAreaTileset_Vaati3_0 gAreaTileset_Vaati2_0:: @ 08102328 +.ifdef JP + tileset_tiles 0x25D128, 0x6000000, 0x4000, 1 + tileset_tiles 0x25DC08, 0x6004000, 0x4000, 1 + tileset_tiles 0x25EE50, 0x6008000, 0x4000, 1 + tileset_tiles 0x26E13C, 0x600F000, 0x800, 1 +.else tileset_tiles 0x25D0B4, 0x6000000, 0x4000, 1 tileset_tiles 0x25DB94, 0x6004000, 0x4000, 1 tileset_tiles 0x25EDDC, 0x6008000, 0x4000, 1 tileset_tiles 0x26E0C8, 0x600F000, 0x800, 1 +.endif tileset_palette_set 169, 1 gAreaTilesets_Vaati2:: @ 08102364 diff --git a/src/enemy/businessScrub.c b/src/enemy/businessScrub.c index 359c8861..d1ed2872 100644 --- a/src/enemy/businessScrub.c +++ b/src/enemy/businessScrub.c @@ -266,7 +266,9 @@ void sub_08028CE8(Entity* this) { this->actionDelay = 4; this->field_0x80.HALF.HI = 0; sub_080290E0(this, 3); + #ifndef JP SetLocalFlag(0x87); + #endif return; case 1: CreateItemEntity(offer->field_0x8, offer->field_0x9, 0); diff --git a/src/fileScreen.c b/src/fileScreen.c index 925e1f54..6e18b5dd 100644 --- a/src/fileScreen.c +++ b/src/fileScreen.c @@ -413,7 +413,7 @@ void sub_08050940(void) { keys &= ~(DPAD_UP | DPAD_DOWN); } - num_rows = gUnk_02000000->gameLanguage > GAME_LANGUAGE ? NUM_SAVE_SLOTS + 1 : NUM_SAVE_SLOTS; + num_rows = gUnk_02000000->gameLanguage > 1 ? NUM_SAVE_SLOTS + 1 : NUM_SAVE_SLOTS; mode = gUnk_02032EC0.lastState; switch (keys) { case DPAD_UP: diff --git a/src/intro.c b/src/intro.c index 33e87e6c..414165e1 100644 --- a/src/intro.c +++ b/src/intro.c @@ -192,11 +192,17 @@ static void HandleTitlescreen(void) { } break; case 2: + #ifdef JP + if (GetAdvanceState()) { + #else if (--gIntroState.timer == 0) { + #endif gIntroState.timer = 3600; gIntroState.state++; } + #ifndef JP UpdatePressStartIcon(); + #endif break; default: advance = GetAdvanceState(); @@ -209,7 +215,16 @@ static void HandleTitlescreen(void) { AdvanceIntroSequence(advance); SoundReq(SONG_VOL_FADE_OUT); } + #ifdef JP + gOamCmd._4 = 0; + gOamCmd._6 = 0; + gOamCmd._8 = 0xE020; + gOamCmd.x = 120; + gOamCmd.y = 152; + sub_080ADA14(511, 1); + #else UpdatePressStartIcon(); + #endif if ((gIntroState.timer & 0x20) == 0) { gOamCmd._8 = 0xe000; gOamCmd.y = 0x84; @@ -225,6 +240,7 @@ static void HandleTitlescreen(void) { sub_080AD9B0(); } +#ifndef JP static void UpdatePressStartIcon(void) { gOamCmd._4 = 0; gOamCmd._6 = 0; @@ -233,6 +249,7 @@ static void UpdatePressStartIcon(void) { gOamCmd.y = 152; sub_080ADA14(511, 1); } +#endif static void UpdateSwordBgAffineData(void) { struct BgAffineSrcData aff; @@ -269,7 +286,11 @@ static void HandleJapaneseTitlescreenAnimationIntro(void) { if (!gFadeControl.active) { gFadeControl.field_0x4 = -1; gIntroState.subState++; +#ifdef JP + gIntroState.timer = 120; +#else gIntroState.timer = 90; +#endif pEVar2 = CreateObject(OBJECT_B4, 0, 0); if (pEVar2 != NULL) { pEVar2->x.HALF.HI = 0; @@ -280,7 +301,11 @@ static void HandleJapaneseTitlescreenAnimationIntro(void) { case 2: if (GetAdvanceState() != ADVANCE_NONE) { gIntroState.state++; +#ifdef JP + gIntroState.timer = 30; +#else gIntroState.timer = 60; +#endif } } } @@ -306,7 +331,11 @@ static void HandleTitlescreenAnimationIntro(void) { break; case 2: if (--gIntroState.timer == 0) { +#ifdef JP + gIntroState.timer = 360; +#else gIntroState.timer = 300; +#endif gIntroState.subState++; CreateObject(OBJECT_BD, 0, 0); DoFade(6, 16); @@ -316,7 +345,11 @@ static void HandleTitlescreenAnimationIntro(void) { default: if (!gFadeControl.active && GetAdvanceState() != ADVANCE_NONE) { gIntroState.state++; +#ifdef JP + gIntroState.timer = 30; +#else gIntroState.timer = 60; +#endif } break; } diff --git a/src/manager/manager7.c b/src/manager/manager7.c index 089dab1b..0b0431df 100644 --- a/src/manager/manager7.c +++ b/src/manager/manager7.c @@ -56,7 +56,9 @@ void Manager7_Main(Manager7* this) { } if (gRoomControls.unk2) return; + #ifndef JP tmp = this->unk_20; + #endif tmp2 = &gUnk_081080A4[tmp << 4]; switch (this->manager.unk_0e) { case 0: diff --git a/src/npc/castleMaid.c b/src/npc/castleMaid.c index 606c1974..eceef3d3 100644 --- a/src/npc/castleMaid.c +++ b/src/npc/castleMaid.c @@ -97,9 +97,17 @@ void sub_0806464C(Entity* this) { s32 tmp; if (CheckGlobalFlag(0x15) != 0) { tmp = 2; +#ifdef JP + } else if (CheckLocalFlag(0x9f) == 0) { +#else } else if (CheckLocalFlag(0xa0) == 0) { +#endif tmp = 0; +#ifdef JP + SetLocalFlag(0x9f); +#else SetLocalFlag(0xa0); +#endif } else { tmp = 1; } diff --git a/src/npc/castorWildsStatue.c b/src/npc/castorWildsStatue.c index 4ce8bb80..874ba09a 100644 --- a/src/npc/castorWildsStatue.c +++ b/src/npc/castorWildsStatue.c @@ -58,7 +58,11 @@ void sub_08067418(Entity* this) { this->spriteOrientation.flipY = 1; this->spriteRendering.b3 = 1; this->spritePriority.b0 = 2; +#ifdef JP + if (CheckLocalFlag(0x1e) == 0) { +#else if (CheckLocalFlag(0x1d) == 0) { +#endif SetTile(0x4022, 0xe81, 1); SetTile(0x4022, 0xe82, 1); SetTile(0x4022, 0xe83, 1); diff --git a/src/npc/dog.c b/src/npc/dog.c index 378117ce..851cdbf4 100644 --- a/src/npc/dog.c +++ b/src/npc/dog.c @@ -74,7 +74,11 @@ void sub_08069B44(Entity* this) { if (((this->type == 0) && ((gPlayerState.flags.all & 0x80) == 0)) && (GetInventoryValue(0x36) != 2)) { this->action = 4; } +#ifdef JP + if ((this->type == 2) && (CheckLocalFlag(0xcc) == 0)) { +#else if ((this->type == 2) && (CheckLocalFlag(0xcf) == 0)) { +#endif SetTile(0x4072, TILE(this->x.HALF.HI, this->y.HALF.HI - 8), this->collisionLayer); } } @@ -258,7 +262,11 @@ void sub_08069F6C(Entity* this) { } u32 sub_08069F90(Entity* this) { +#ifdef JP + if ((this->type == 2) && (CheckLocalFlag(0xcc) == 0)) { +#else if ((this->type == 2) && (CheckLocalFlag(0xcf) == 0)) { +#endif return 1; } else { return sub_080041A0(this, &gPlayerEntity, 0x14, 0x14); @@ -312,19 +320,39 @@ void sub_0806A0A4(Entity* this) { if ((gPlayerState.flags.all & 0x80) != 0) { dialog = 4; +#ifdef JP + if (CheckLocalFlag(0xcc) == 0) { +#else if (CheckLocalFlag(0xcf) == 0) { +#endif dialog = 3; +#ifdef JP + SetLocalFlag(0xcc); +#else SetLocalFlag(0xcf); +#endif sub_0807BA8C(TILE(this->x.HALF.HI, this->y.HALF.HI - 8), (u32)this->collisionLayer); } } else { dialog = 2; +#ifdef JP + if (CheckLocalFlag(0xcc) == 0) { +#else if (CheckLocalFlag(0xcf) == 0) { +#endif dialog = 1; +#ifdef JP + if (CheckLocalFlag(0xd8) == 0) { +#else if (CheckLocalFlag(0xdb) == 0) { +#endif dialog = 0; +#ifdef JP + SetLocalFlag(0xd8); +#else SetLocalFlag(0xdb); +#endif } } } diff --git a/src/npc/gina.c b/src/npc/gina.c index 5d0dea86..b9b2e255 100644 --- a/src/npc/gina.c +++ b/src/npc/gina.c @@ -29,7 +29,9 @@ void Gina(Entity* this) { case 2: if (UpdateFuseInteraction(this) != 0) { this->action = 1; + #ifndef JP SetLocalFlag(0x88); + #endif } break; } diff --git a/src/npc/npc4E.c b/src/npc/npc4E.c index 0adc5744..b62fb5fc 100644 --- a/src/npc/npc4E.c +++ b/src/npc/npc4E.c @@ -105,19 +105,39 @@ void sub_0806DAD0(Entity* this) { void sub_0806DAE8(Entity* this) { switch (this->type - 1) { case 0: +#ifdef JP + SetLocalFlag(0xeb); +#else SetLocalFlag(0xee); +#endif break; case 1: +#ifdef JP + SetLocalFlag(0xec); +#else SetLocalFlag(0xef); +#endif break; case 2: +#ifdef JP + SetLocalFlag(0xed); +#else SetLocalFlag(0xf0); +#endif break; case 3: +#ifdef JP + SetLocalFlag(0xee); +#else SetLocalFlag(0xf1); +#endif break; case 4: +#ifdef JP + SetLocalFlag(0xef); +#else SetLocalFlag(0xf2); +#endif break; } @@ -127,8 +147,14 @@ void sub_0806DAE8(Entity* this) { void sub_0806DB44(Entity* this, ScriptExecutionContext* context) { context->condition = 0; +#ifdef JP + if (CheckLocalFlag(0xeb) != 0 && CheckLocalFlag(0xec) != 0 && CheckLocalFlag(0xed) != 0 && + CheckLocalFlag(0xee) != 0 && CheckLocalFlag(0xef) != 0) { +#else if (CheckLocalFlag(0xee) != 0 && CheckLocalFlag(0xef) != 0 && CheckLocalFlag(0xf0) != 0 && CheckLocalFlag(0xf1) != 0 && CheckLocalFlag(0xf2) != 0) { +#endif + context->condition = 1; } } diff --git a/src/room.c b/src/room.c index 5e9deac0..da1bc36d 100644 --- a/src/room.c +++ b/src/room.c @@ -566,9 +566,14 @@ void sub_0804BAC0(void) { if (!CheckGlobalFlag(LV2_CLEAR)) { LoadRoomEntityList(&gUnk_080D7328); } + #ifdef JP + if (CheckGlobalFlag(CASTLE_BGM) || CheckGlobalFlag(ENDING)) { + #else if (CheckGlobalFlag(CASTLE_BGM)) { + gArea.pMusicIndex = 0x1b; } else if (CheckGlobalFlag(ENDING)) { + #endif gArea.pMusicIndex = gArea.musicIndex; } } @@ -636,13 +641,21 @@ u32 sub_0804BC34() { extern EntityData gUnk_080D7690; void sub_0804bc38(void) { + #ifdef JP + if (CheckLocalFlag(0x9b)) { + #else if (CheckLocalFlag(0x9c)) { + #endif LoadRoomEntityList(&gUnk_080D7690); } } u32 sub_0804BC50(void) { + #ifdef JP + if (!CheckLocalFlag(0x9e)) { + #else if (!CheckLocalFlag(0x9f)) { + #endif gScreenTransition.field_0xf = 5; ClearGlobalFlag(ZELDA_CHASE); } @@ -652,7 +665,11 @@ u32 sub_0804BC50(void) { extern u32 script_08009E88; void sub_0804BC70(void) { + #ifdef JP + if (!CheckLocalFlag(0x9e)) { + #else if (!CheckLocalFlag(0x9f)) { + #endif DoFade(5, 0x100); gPlayerEntity.x.HALF.HI = gRoomControls.roomOriginX + 0xb0; gPlayerEntity.y.HALF.HI = gRoomControls.roomOriginY + 0x40; @@ -660,11 +677,21 @@ void sub_0804BC70(void) { } if (!CheckGlobalFlag(TABIDACHI)) { sub_08052878(); +#ifndef JP } else { - if (CheckGlobalFlag(CASTLE_BGM)) { - gArea.pMusicIndex = 0x1b; - } +#else } +#endif + if (CheckGlobalFlag(CASTLE_BGM)) { + #ifdef JP + gArea.pMusicIndex = gArea.musicIndex; + #else + gArea.pMusicIndex = 0x1b; + #endif + } +#ifndef JP + } +#endif } extern ScreenTransitionData gUnk_0813AB80; @@ -1952,12 +1979,20 @@ void sub_0804CAA0(void) { if (CheckGlobalFlag(KUMOTATSUMAKI)) { sub_0809F814(0x6de); } +#ifdef JP + if (CheckLocalFlag(0xf0)) { +#else if (CheckLocalFlag(0xf3)) { +#endif sub_0809F814(0xe0); } else { LoadRoomEntityList(&gUnk_080DD7E0); } +#ifdef JP + if (CheckLocalFlag(0xf2)) { +#else if (CheckLocalFlag(0xf5)) { +#endif sub_0809F814(0xba3); } else { LoadRoomEntityList(&gUnk_080DD840); @@ -1970,7 +2005,11 @@ u32 sub_0804CAF4() { void sub_0804CAF8() { sub_080300E8(); +#ifdef JP + SetLocalFlag(0x25); +#else SetLocalFlag(0x24); +#endif } u32 sub_0804CB08() { @@ -1994,8 +2033,11 @@ void sub_0804CB14(void) { } void sub_0804CB2C(void) { - +#ifdef JP + if (CheckLocalFlagByOffset(0x100, 0x28)) { +#else if (CheckLocalFlagByOffset(0x100, 0x27)) { +#endif SetDirtTile(0x85); } } @@ -2031,10 +2073,18 @@ extern EntityData gUnk_080DE200; void sub_0804CB7C(void) { sub_080300E8(); +#ifdef JP + if (!CheckLocalFlag(0x31)) { +#else if (!CheckLocalFlag(0x30)) { +#endif LoadRoomEntityList(&gUnk_080DE1E0); } +#ifdef JP + if (!CheckLocalFlag(0x32)) { +#else if (!CheckLocalFlag(0x31)) { +#endif LoadRoomEntityList(&gUnk_080DE200); } } @@ -4238,7 +4288,9 @@ void LoadHyruleTown(void) { sub_08054570(); TryLoadPrologueHyruleTown(); + #ifndef JP SetTileType(0x176, 0x66b, 1); + #endif if (gSave.unk8 == 1) { sub_0801D000(0); } else { @@ -4296,7 +4348,11 @@ void LoadHyruleTown(void) { LoadRoomEntityList(&gUnk_080EEA5C); } // rocs cape +#ifdef JP + if (!CheckLocalFlag(0xcd) && GetInventoryValue(0x14)) { +#else if (!CheckLocalFlag(0xd0) && GetInventoryValue(0x14)) { +#endif LoadRoomEntityList(&gUnk_080EEABC); } if ((gSave.unk8 > 3) && CheckGlobalFlag(INLOCK)) { @@ -4438,10 +4494,18 @@ void sub_0804E27C(void) { SetGlobalFlag(CASTLE_BGM); } else { if (CheckGlobalFlag(CASTLE_BGM)) { + #ifdef JP + gArea.pMusicIndex = gArea.musicIndex; + #else gArea.pMusicIndex = 0x1b; + #endif } } +#ifdef JP + if (!CheckLocalFlag(0x9b)) { +#else if (!CheckLocalFlag(0x9c)) { +#endif LoadRoomEntityList(&gUnk_080F0800); SetTileType(0x4072, 600, 1); SetTileType(0x4072, 0x298, 1); @@ -4464,9 +4528,17 @@ void sub_0804E27C(void) { } SetTileType(0x4072, 600, 1); SetTileType(0x4072, 0x298, 1); +#ifdef JP + if (CheckLocalFlag(0x11)) { +#else if (CheckLocalFlag(0x10)) { +#endif LoadRoomEntityList(&gUnk_080F0920); +#ifdef JP + ClearLocalFlag(0x11); +#else ClearLocalFlag(0x10); +#endif } } sub_080AF284(); @@ -5055,8 +5127,13 @@ void sub_0804EC00(void) { if (!CheckGlobalFlag(EZERO_1ST)) { LoadRoomEntityList(&gUnk_080F4D50); } +#ifdef JP + if (!CheckLocalFlag(0x3d)) { + if (!CheckLocalFlag(0x3a)) { +#else if (!CheckLocalFlag(0x3e)) { if (!CheckLocalFlag(0x3b)) { +#endif LoadRoomEntityList(&gUnk_080F4DB0); } else { LoadRoomEntityList(&gUnk_080F4DD0); @@ -5106,7 +5183,11 @@ void sub_0804ECEC(void) { // white sword if (GetInventoryValue(0x2)) { LoadRoomEntityList(&gUnk_080F5328); +#ifdef JP + if (!CheckLocalFlag(0x15)) { +#else if (!CheckLocalFlag(0x14)) { +#endif LoadRoomEntityList(&gUnk_080F5308); } } @@ -5291,7 +5372,11 @@ u32 sub_0804F02C() { extern EntityData gUnk_080F5E68; void sub_0804F030(void) { +#ifdef JP + if (!CheckLocalFlagByOffset(0x100, 0xce)) { +#else if (!CheckLocalFlagByOffset(0x100, 0xd1)) { +#endif LoadRoomEntityList(&gUnk_080F5E68); } } @@ -5331,7 +5416,11 @@ void nullsub_400() { } u32 sub_0804F09C(void) { +#ifdef JP + if (CheckGlobalFlag(KUMOTATSUMAKI) && CheckLocalFlagByOffset(0x100, 0xd9)) { +#else if (CheckGlobalFlag(KUMOTATSUMAKI) && CheckLocalFlagByOffset(0x100, 0xdc)) { +#endif SetGlobalFlag(WARP_EVENT_END); } return 1; @@ -5340,7 +5429,11 @@ u32 sub_0804F09C(void) { extern EntityData gUnk_080F61BC; void sub_0804F0C0(void) { +#ifdef JP + if (CheckLocalFlagByOffset(0x100, 0xd9)) { +#else if (CheckLocalFlagByOffset(0x100, 0xdc)) { +#endif SetLocalFlag(0x90); } if (CheckKinstoneFused(0xf)) { @@ -5487,7 +5580,11 @@ void sub_0804F230() { } u32 sub_0804F23C(void) { +#ifdef JP + if (!CheckLocalFlag(0x6b)) { +#else if (!CheckLocalFlag(0x6d)) { +#endif DoFade(7, 0x100); } SetGlobalFlag(OUTDOOR); @@ -5500,7 +5597,11 @@ extern EntityData gUnk_080F7088; void sub_0804F25C(void) { sub_0805ADD8(0); +#ifdef JP + if (!CheckLocalFlag(0x6b)) { +#else if (!CheckLocalFlag(0x6d)) { +#endif LoadRoomEntityList(&gUnk_080F70A8); ClearGlobalFlag(ZELDA_CHASE); } @@ -5606,7 +5707,11 @@ u32 Vars_HyruleField_OutsideCastle(void) { gRoomVars.field_0x6c = &gUnk_080F7CD0; gRoomVars.field_0x88 = sub_0804F5E8; } +#ifdef JP + if (CheckGlobalFlag(LV2_CLEAR) && GetInventoryValue(0x3) && !CheckLocalFlag(0x8a)) { +#else if (CheckGlobalFlag(LV2_CLEAR) && GetInventoryValue(0x3) && !CheckLocalFlag(0x8c)) { +#endif gRoomVars.field_0x6c = &gUnk_080F7C80; gRoomVars.field_0x88 = sub_0804F4E4; gRoomVars.field_0x74 = NULL; @@ -5626,7 +5731,11 @@ extern EntityData gUnk_080F7D70; void Load_HyruleField_OutsideCastle(void) { sub_0804F4E4(); +#ifdef JP + if (!CheckLocalFlag(0x89)) { +#else if (!CheckLocalFlag(0x8b)) { +#endif LoadRoomEntityList(&gUnk_080F7D70); SetTileType(0x174, 0x7a2, 1); SetTileType(0x174, 0x7a3, 1); @@ -5642,7 +5751,11 @@ void Load_HyruleField_OutsideCastle(void) { extern EntityData gUnk_080F7DC0; void sub_0804F578(void) { +#ifdef JP + if (!CheckLocalFlag(0x8c)) { +#else if (!CheckLocalFlag(0x8e)) { +#endif LoadRoomEntityList(&gUnk_080F7DC0); } else { SetTileType(0x37, 0x94a, 1); @@ -5810,7 +5923,11 @@ extern EntityData gUnk_080F82E0; void Load_HyruleField_TrilbyHighlands(void) { sub_0805ADD8(0); +#ifdef JP + if (CheckGlobalFlag(LV2_CLEAR) && GetInventoryValue(0x3) && !CheckLocalFlag(0x9b)) { +#else if (CheckGlobalFlag(LV2_CLEAR) && GetInventoryValue(0x3) && !CheckLocalFlag(0x9c)) { +#endif LoadRoomEntityList(&gUnk_080F82E0); } } @@ -6462,7 +6579,9 @@ u32 sub_0804FED4() { } void sub_0804FED8(void) { + #ifndef JP SetTileType(0x176, 0x66f, 1); + #endif } u32 sub_0804FEEC() { diff --git a/src/save.c b/src/save.c index 8b751914..0d20e003 100644 --- a/src/save.c +++ b/src/save.c @@ -53,9 +53,14 @@ static SaveResult (*const sSaveHandlers[])(u32) = { HandleSaveInit, HandleSaveIn #ifdef DEMO -asm(".incbin \"baserom_demo.gba\", 0x11e010, 0xf0c"); // @nocheckin +asm(".incbin \"baserom_demo.gba\", 0x11e010, 0xf0c"); // TODO +#else + +#ifdef JP +static const char sSignatureLong[32] = "AGBZELDA:THE MINISH CAP:ZELDA 3"; #else static const char sSignatureLong[32] = "AGBZELDA:THE MINISH CAP:ZELDA 5"; +#endif // Save file is untouched static const SaveFileStatus sSaveDescInit = { 0xffff, 0xffff, 'TINI' }; From 833d48b73520f70682a6196905a5139033e8d081 Mon Sep 17 00:00:00 2001 From: octorock <79596758+octorock@users.noreply.github.com> Date: Mon, 21 Jun 2021 23:27:11 +0200 Subject: [PATCH 03/11] Add EU variant --- CONTRIBUTING.md | 2 +- Makefile | 12 +- asm/beanstalk.s | 4 + asm/bird.s | 4 + asm/chuchuBoss.s | 9 +- asm/cloudPiranha.s | 8 + asm/code_08000108.s | 4 + asm/code_080011C4.s | 14 + asm/code_080043E8.s | 5 + asm/code_08016DF8.s | 10 + asm/code_08018500.s | 8 + asm/code_0801967C.s | 9 +- asm/code_0801D79C.s | 6 +- asm/code_080526F8.s | 50 +- asm/code_08054C04.s | 6 + asm/code_08078778.s | 6 + asm/code_0807F0D8.s | 22 +- asm/code_080A3BD0.s | 19 + asm/code_080A5574.s | 64 + asm/code_080AD90C.s | 4 + asm/code_080ADD30.s | 18 + asm/crt0.s | 8 + asm/dust.s | 7 + asm/enemy50.s | 6 + asm/figurineDevice.s | 86 +- asm/fileScreen.s | 19 + asm/gleerok.s | 11 + asm/gyorgFemale.s | 47 + asm/gyorgFemaleEye.s | 4 + asm/intr.s | 24 + asm/item/itemLantern.s | 4 + asm/item/itemSword.s | 4 + asm/itemForSale.s | 5 + asm/ladderUp.s | 4 + asm/manager37.s | 4 + asm/managerF.s | 32 +- asm/non_matching/phonograph/sub_0806E964.inc | 5 + asm/non_matching/ropeGolden/sub_08038304.inc | 4 + .../sittingPerson/sub_0806387C.inc | 16 + .../sittingPerson/sub_0806390C.inc | 8 + asm/non_matching/stockwell/sub_08065370.inc | 5 + asm/non_matching/sub_0804C128.inc | 4 + asm/non_matching/sub_0804DE00.inc | 4 + asm/non_matching/sub_0804E150.inc | 4 + asm/non_matching/textbox/sub_08056750.inc | 2 + asm/object1E.s | 8 + asm/object29.s | 4 + asm/object6A.s | 4 + asm/object9.s | 4 + asm/objectB5.s | 4 + asm/objectBA.s | 4 + asm/octorokBoss.s | 4 + asm/playerItem/playerItem3.s | 4 + asm/playerItem/playerItemSwordSpin.s | 4 + asm/vaatiArm.s | 8 + asm/vaatiProjectile.s | 8 + asm/vaatiRebornEnemy.s | 2 + asm/vaatiTransfigured.s | 2 + asm/vaatiWrath.s | 80 +- asm/waterfallOpening.s | 4 + asm/windTribeTeleporter.s | 6 +- data/animations/enemy/waterDrop.s | 5 + data/animations/npc/guard.s | 8 + data/animations/object/objectB4.s | 5 + data/const/code_08049D30.s | 152 + data/const/enemy/gyorgFemale.s | 16 + data/const/enemy/vaatiRebornEnemy.s | 4 + data/const/enemy/vaatiTransfigured.s | 4 + data/const/manager/manager12.s | 20 + data/const/manager/manager1A.s | 50 + data/const/manager/managerF.s | 2 + data/const/npc/dog.s | 5 + data/const/npc/forestMinish.s | 8 + data/const/npc/kid.s | 4 + data/const/npc/pita.s | 5 + data/const/npc/stockwell.s | 2 + data/const/npc/townsperson.s | 16 + data/const/npc/windTribespeople.s | 8 + data/const/object/figurineDevice.s | 10 + data/const/object/object3D.s | 5 + data/const/object/object9.s | 5 + data/const/object/object96.s | 4 + data/const/object/pinwheel.s | 4 + data/const/object/specialFx.s | 5 + data/data_080029B4.s | 3 + data/data_080B2A70.s | 9 + data/data_080B3740.s | 14 + data/data_080B4410.s | 2585 ++++++++++++++ data/data_080B7B74.s | 69 + data/data_080C93E0.s | 123 + data/data_080D5360.s | 394 +++ data/data_080FC8A4.s | 29 + data/data_080FEEB8.s | 810 +++++ data/data_08108E6C.s | 167 + data/data_081146D0.s | 25 + data/data_0811BE38.s | 5 + data/data_08125104.s | 373 +- data/data_08127280.s | 10 + data/data_0812AA88.s | 787 ++++- data/data_081320FC.s | 144 + data/data_08132B30.s | 181 +- data/data_089FC6C4.s | 39 + data/map_headers.s | 2990 +++++++++++++++++ data/metatile_headers.s | 356 ++ data/scripts/script_08008B5C.inc | 5 + data/scripts/script_0800939A.inc | 13 + data/scripts/script_08009464.inc | 4 + data/scripts/script_080098D4.inc | 8 + data/scripts/script_08009E88.inc | 4 + data/scripts/script_0800A0FC.inc | 4 + data/scripts/script_0800B0D0.inc | 2 + data/scripts/script_0800B200.inc | 8 + data/scripts/script_0800B308.inc | 8 + data/scripts/script_0800D6D0.inc | 8 + data/scripts/script_0800D6F0.inc | 8 + data/scripts/script_0800E0BC.inc | 14 + data/scripts/script_0800F554.inc | 8 + data/scripts/script_0800F724.inc | 12 + data/scripts/script_0800FD0C.inc | 8 + data/scripts/script_0800FF74.inc | 22 + data/scripts/script_08010264.inc | 6 +- data/scripts/script_08010964.inc | 4 + data/scripts/script_08011128.inc | 9 + data/scripts/script_0801194C.inc | 4 + data/scripts/script_08011C7C.inc | 35 +- data/scripts/script_08012430.inc | 10 +- data/scripts/script_08012C68.inc | 4 + data/scripts/script_08012CD8.inc | 4 + data/scripts/script_08012D70.inc | 4 + data/scripts/script_080138B4.inc | 4 + data/scripts/script_08013AA6.inc | 6 + data/scripts/script_08013BE8.inc | 4 +- data/scripts/script_08014248.inc | 5 +- data/scripts/script_080143C0.inc | 2 + data/scripts/script_08014450.inc | 16 +- data/scripts/script_080145B0.inc | 9 + data/scripts/script_080145E8.inc | 113 +- data/scripts/script_08014CDC.inc | 4 + data/scripts/script_08014E14.inc | 4 + data/scripts/script_080157AC.inc | 4 + data/scripts/script_08015B34.inc | 4 + data/scripts/script_08015BA8.inc | 4 + data/scripts/script_08015BE8.inc | 4 + data/scripts/script_080160A8.inc | 14 + data/scripts/script_08016384.inc | 4 + data/sounds.s | 73 + data/sprite_table.s | 5 +- data/strings.s | 19 + data/tileset_headers.s | 676 ++++ linker_EU.ld | 1731 ++++++++++ src/arm_proxy.c | 6 + src/audio.c | 11 +- src/code_0805436C.c | 10 +- src/code_0805F9A0.c | 36 +- src/eeprom.c | 7 +- src/enemy/bombPeahat.c | 59 + src/enemy/businessScrub.c | 8 +- src/enemy/chuchu.c | 6 + src/enemy/gyorgMale.c | 14 + src/enemy/likeLike.c | 4 + src/enemy/rockChuchu.c | 4 + src/enemy/ropeGolden.c | 4 +- src/enemy/rupeeLike.c | 4 + src/enemy/vaatiBall.c | 4 + src/fileScreen.c | 23 + src/game.c | 28 +- src/intro.c | 65 +- src/main.c | 33 +- src/manager/manager4.c | 6 + src/manager/manager7.c | 43 +- src/npc/castleMaid.c | 4 +- src/npc/castorWildsStatue.c | 2 +- src/npc/dog.c | 22 +- src/npc/gina.c | 4 +- src/npc/goronMerchant.c | 22 + src/npc/npc4E.c | 34 +- src/npc/phonograph.c | 6 + src/npc/stockwell.c | 2 + src/object/fileScreenObjects.c | 4 + src/object/itemOnGround.c | 4 + src/object/objectA2.c | 4 + src/player.c | 2 + src/projectile/projectile13.c | 6 + src/projectile/projectile18.c | 2 + src/projectile/projectile19.c | 2 + src/room.c | 158 +- src/save.c | 57 +- src/sub_080A3B84.c | 4 +- src/textbox.c | 9 + 189 files changed, 13608 insertions(+), 247 deletions(-) create mode 100644 linker_EU.ld diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8b9e3fe5..630676b4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -30,7 +30,7 @@ It must be the first include in the file. Other includes will assume you have in ## 2. Include it in the rom -Include `src/evilSpirit.c` in the rom by adding `src/evilSpirit.o` to `ld_script.ld`: +Include `src/evilSpirit.c` in the rom by adding `src/evilSpirit.o` to `linker.ld`: ```diff asm/room.o(.text); asm/code_08080974.o(.text); diff --git a/Makefile b/Makefile index a28bdc1f..5ead5eee 100644 --- a/Makefile +++ b/Makefile @@ -12,6 +12,8 @@ GAME_LANGUAGE := ENGLISH TITLE := GBAZELDA MC MAKER_CODE := 01 +LINKER_FILE = linker.ld + ifeq ($(GAME_VERSION), USA) GAME_CODE := BZME BUILD_NAME := tmc @@ -25,10 +27,16 @@ GAME_CODE := BZMJ BUILD_NAME := tmc_jp GAME_LANGUAGE := JAPANESE else +ifeq ($(GAME_VERSION), EU) +GAME_CODE := BZMP +BUILD_NAME := tmc_eu +LINKER_FILE := linker_EU.ld +else $(error unknown version $(GAME_VERSION)) endif endif endif +endif SHELL := /bin/bash -o pipefail @@ -217,8 +225,8 @@ $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s $$(data_dep) $(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s $(AS) $(ASFLAGS) -I sound -o $@ $< -$(ELF): $(OBJS) linker.ld - cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -n -T ../../linker.ld -o ../../$@ $(LIB) +$(ELF): $(OBJS) $(LINKER_FILE) + cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -n -T ../../$(LINKER_FILE) -o ../../$@ $(LIB) $(FIX) $@ -t"$(TITLE)" -c$(GAME_CODE) -m$(MAKER_CODE) -r$(REVISION) --silent $(ROM): $(ELF) diff --git a/asm/beanstalk.s b/asm/beanstalk.s index 4406c78d..91857daf 100644 --- a/asm/beanstalk.s +++ b/asm/beanstalk.s @@ -22,6 +22,9 @@ _08089D18: .4byte gUnk_08120DF4 thumb_func_start sub_08089D1C sub_08089D1C: @ 0x08089D1C +.ifdef EU + .incbin "baserom_eu.gba", 0x089620, 0x00001E0 @TODO disassemble +.else push {r4, r5, r6, lr} adds r5, r0, #0 ldrb r1, [r5, #0x19] @@ -276,6 +279,7 @@ _08089F00: bl sub_08089F08 _08089F06: pop {r4, r5, r6, pc} +.endif thumb_func_start sub_08089F08 sub_08089F08: @ 0x08089F08 diff --git a/asm/bird.s b/asm/bird.s index a6c53b75..2934667f 100644 --- a/asm/bird.s +++ b/asm/bird.s @@ -630,7 +630,11 @@ _0809D6FE: CreateBird: @ 0x0809D700 push {r4, lr} sub sp, #4 +.ifdef EU + bl sub_08052620 @ TODO correct function? +.else bl sub_08052654 +.endif cmp r0, #0 beq _0809D732 movs r0, #0 diff --git a/asm/chuchuBoss.s b/asm/chuchuBoss.s index faec7634..bbbc3632 100644 --- a/asm/chuchuBoss.s +++ b/asm/chuchuBoss.s @@ -1727,6 +1727,9 @@ _080269C8: .4byte 0xFFFFFF00 thumb_func_start sub_080269CC sub_080269CC: @ 0x080269CC +.ifdef EU + .incbin "baserom_eu.gba", 0x0269B0, 0x218 @ TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sl mov r6, sb @@ -1999,7 +2002,7 @@ _08026BD4: pop {r4, r5, r6, r7, pc} .align 2, 0 _08026BE4: .4byte 0xFFFF8000 - +.endif thumb_func_start sub_08026BE8 sub_08026BE8: @ 0x08026BE8 push {r4, r5, lr} @@ -4285,6 +4288,9 @@ _08027D1E: thumb_func_start sub_08027D20 sub_08027D20: @ 0x08027D20 +.ifdef EU + .incbin "baserom_eu.gba", 0x027D00, 0x48 @TODO disassemble +.else push {r4, r5, lr} adds r5, r0, #0 movs r1, #0x15 @@ -4321,3 +4327,4 @@ _08027D66: adds r0, r4, #0 pop {r4, r5, pc} .align 2, 0 +.endif diff --git a/asm/cloudPiranha.s b/asm/cloudPiranha.s index bda5efbc..9dd83b3c 100644 --- a/asm/cloudPiranha.s +++ b/asm/cloudPiranha.s @@ -87,6 +87,9 @@ _080384C0: adds r1, #0x45 movs r0, #0 strb r0, [r1] +.ifdef EU +_080384CA: @TODO fix labels +.else b _080384D8 _080384CA: movs r0, #0x3f @@ -95,6 +98,7 @@ _080384CA: bne _080384D8 adds r0, r4, #0 bl sub_08038754 +.endif _080384D8: pop {r4, pc} .align 2, 0 @@ -441,7 +445,11 @@ sub_08038754: @ 0x08038754 movs r0, #0x5a strb r0, [r1] movs r1, #0 +.ifdef EU + adds r0, #0xa6 +.else movs r0, #0xc0 +.endif strh r0, [r4, #0x24] movs r0, #0x80 lsls r0, r0, #0xa diff --git a/asm/code_08000108.s b/asm/code_08000108.s index b54a3d0a..12ce1f80 100644 --- a/asm/code_08000108.s +++ b/asm/code_08000108.s @@ -5,6 +5,10 @@ .text +.ifdef EU + .incbin "baserom_eu.gba", 0x000118, 0x38 @TODO disassemble +.endif + thumb_func_start sub_08000108 sub_08000108: @ 0x08000108 push {r4, lr} diff --git a/asm/code_080011C4.s b/asm/code_080011C4.s index 41c256b3..dece593a 100644 --- a/asm/code_080011C4.s +++ b/asm/code_080011C4.s @@ -299,7 +299,12 @@ gUnk_08001701:: @ 08001701 .incbin "baserom.gba", 0x001701, 0x0000001 gUnk_08001702:: @ 08001702 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x00174A, 0x0000014 +.else .incbin "baserom.gba", 0x001702, 0x0000014 +.endif gUnk_08001716:: @ 08001716 .incbin "baserom.gba", 0x001716, 0x0000017 @@ -334,8 +339,12 @@ gUnk_08001860:: @ 08001860 gUnk_080018A0:: @ 080018A0 .incbin "baserom.gba", 0x0018A0, 0x0000004 +.ifdef EU + .incbin "baserom_eu.gba", 0x0018EC, 0x7E +.else gUnk_080018A4:: @ 080018A4 .incbin "baserom.gba", 0x0018A4, 0x000005E +.endif gUnk_08001902:: @ 08001902 .incbin "baserom.gba", 0x001902, 0x000000F @@ -344,7 +353,12 @@ gUnk_08001911:: @ 08001911 .incbin "baserom.gba", 0x001911, 0x000000B gUnk_0800191C:: @ 0800191C +.ifdef EU + @ TODO mostly 0 bytes? + .incbin "baserom_eu.gba", 0x001984, 0x000008F +.else .incbin "baserom.gba", 0x00191C, 0x000004F +.endif gUnk_0800196B:: @ 0800196B .incbin "baserom.gba", 0x00196B, 0x0000015 diff --git a/asm/code_080043E8.s b/asm/code_080043E8.s index 590a4825..70bf95de 100644 --- a/asm/code_080043E8.s +++ b/asm/code_080043E8.s @@ -2261,9 +2261,14 @@ gUnk_08007D07:: @ 08007D07 .ifdef JP @ TODO only one byte differs .incbin "baserom_jp.gba", 0x007D07, 0x00000CF +.else +.ifdef EU +@ TODO only two bytes differ + .incbin "baserom_eu.gba", 0x007D9F, 0x00000CF .else .incbin "baserom.gba", 0x007D07, 0x00000CF .endif +.endif .endif non_word_aligned_thumb_func_start sub_08007DD6 diff --git a/asm/code_08016DF8.s b/asm/code_08016DF8.s index 8654c9fd..b1bbea94 100644 --- a/asm/code_08016DF8.s +++ b/asm/code_08016DF8.s @@ -958,7 +958,11 @@ sub_08017F40: @ 0x08017F40 beq _0801801E ldr r2, _08017FB0 @ =gPlayerState ldr r3, [r2, #0x30] +.ifdef EU + movs r0, #0x81 +.else movs r0, #0x80 +.endif ands r0, r3 cmp r0, #0 bne _0801801E @@ -1247,7 +1251,11 @@ sub_08018168: @ 0x08018168 beq _0801821C ldr r2, _080181F8 @ =gPlayerState ldr r3, [r2, #0x30] +.ifdef EU + movs r0, #0x81 +.else ldr r0, _080181FC @ =0x00040080 +.endif ands r0, r3 cmp r0, #0 bne _0801821C @@ -1302,7 +1310,9 @@ sub_08018168: @ 0x08018168 .align 2, 0 _080181F4: .4byte gPlayerEntity _080181F8: .4byte gPlayerState +.ifndef EU _080181FC: .4byte 0x00040080 +.endif _08018200: adds r0, r4, #0 adds r0, #0x45 diff --git a/asm/code_08018500.s b/asm/code_08018500.s index adb6ee66..262f4700 100644 --- a/asm/code_08018500.s +++ b/asm/code_08018500.s @@ -171,8 +171,12 @@ sub_0801862C: @ 0x0801862C adds r0, r5, #0 .ifdef JP adds r0, #0x34 +.else +.ifdef EU + adds r0, #0x34 .else adds r0, #0x35 +.endif .endif strb r2, [r0] ldr r4, _08018654 @ =gUnk_02033AB8 @@ -633,8 +637,12 @@ _080189D0: lsls r0, r0, #1 .ifdef JP movs r1, #0x77 +.else +.ifdef EU + movs r1, #0x77 .else movs r1, #0x79 +.endif .endif bl SetLocalFlagByOffset ldr r0, _080189E8 @ =gUnk_080FEE38 diff --git a/asm/code_0801967C.s b/asm/code_0801967C.s index 3c978fd9..a43b54fa 100644 --- a/asm/code_0801967C.s +++ b/asm/code_0801967C.s @@ -985,11 +985,18 @@ _08019DE4: bne _08019DEE b _0801A2A4 _08019DEE: -.ifndef JP +.ifdef USA ldrb r0, [r4, #0xa] cmp r0, #0 beq _08019DF6 b _0801A2A4 +.else +.ifdef DEMO + ldrb r0, [r4, #0xa] + cmp r0, #0 + beq _08019DF6 + b _0801A2A4 +.endif .endif _08019DF6: ldr r2, _08019E40 @ =gPlayerEntity diff --git a/asm/code_0801D79C.s b/asm/code_0801D79C.s index 656da67f..b135154c 100644 --- a/asm/code_0801D79C.s +++ b/asm/code_0801D79C.s @@ -2191,7 +2191,10 @@ _0801E8D2: thumb_func_start sub_0801E8D4 sub_0801E8D4: @ 0x0801E8D4 .ifdef JP - .incbin "baserom_jp.gba", 0x01E8B8, 0x90 @nocheckin + .incbin "baserom_jp.gba", 0x01E8B8, 0x90 @TODO disassemble +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x01E90C, 0x90 @TODO probably the same as JP? .else push {r4, r5, lr} movs r5, #0xa @@ -2292,6 +2295,7 @@ _0801E990: pop {r4, r5, pc} .align 2, 0 _0801E998: .4byte gUnk_02002C8E +.endif .endif thumb_func_start sub_0801E99C diff --git a/asm/code_080526F8.s b/asm/code_080526F8.s index a75e9e39..52e84d20 100644 --- a/asm/code_080526F8.s +++ b/asm/code_080526F8.s @@ -151,7 +151,9 @@ sub_080527FC: @ 0x080527FC push {r4, lr} adds r4, r0, #0 bl sub_08053320 +.ifndef EU bl sub_080AE1D8 +.endif bl sub_080ADE24 movs r0, #1 bl sub_0801C370 @@ -201,6 +203,7 @@ _0805286C: .4byte 0x00000864 _08052870: .4byte gUnk_08127D30 _08052874: .4byte gRoomControls +.ifndef EU thumb_func_start sub_08052878 sub_08052878: @ 0x08052878 push {lr} @@ -232,6 +235,7 @@ sub_0805289C: @ 0x0805289C .align 2, 0 _080528AC: .4byte gArea _080528B0: .4byte 0x00000864 +.endif thumb_func_start sub_080528B4 sub_080528B4: @ 0x080528B4 @@ -622,8 +626,12 @@ sub_08052BB8: @ 0x08052BB8 adds r2, r0, #0 .ifdef JP adds r2, #0x34 +.else +.ifdef EU + adds r2, #0x34 .else adds r2, #0x35 +.endif .endif ldrb r1, [r2] adds r3, r0, #0 @@ -653,7 +661,7 @@ _08052BEE: bl TextBoxAtYPosition pop {pc} -.ifndef JP +.ifdef USA thumb_func_start sub_08052BF8 sub_08052BF8: @ 0x08052BF8 push {lr} @@ -687,6 +695,42 @@ _08052C30: .align 2, 0 _08052C34: .4byte gScreenTransition _08052C38: .4byte gArea +.else +.ifdef DEMO @TODO deduplicate + thumb_func_start sub_08052BF8 +sub_08052BF8: @ 0x08052BF8 + push {lr} + ldr r2, _08052C34 @ =gScreenTransition + adds r1, r2, #0 + adds r1, #0x31 + ldrb r0, [r1] + cmp r0, #0 + bne _08052C30 + movs r0, #1 + strb r0, [r1] + ldr r0, _08052C38 @ =gArea + ldrb r1, [r0, #1] + adds r0, r2, #0 + adds r0, #0x2e + strb r1, [r0] + bl GetEmptyManager + adds r1, r0, #0 + cmp r1, #0 + beq _08052C30 + movs r0, #9 + strb r0, [r1, #8] + movs r0, #0xf + strb r0, [r1, #9] + strb r0, [r1, #0xa] + adds r0, r1, #0 + movs r1, #0 + bl AppendEntityToList +_08052C30: + pop {pc} + .align 2, 0 +_08052C34: .4byte gScreenTransition +_08052C38: .4byte gArea +.endif .endif thumb_func_start sub_08052C3C @@ -1317,8 +1361,12 @@ _0805311A: lsls r0, r0, #1 .ifdef JP movs r1, #0x9b +.else +.ifdef EU + movs r1, #0x9b .else movs r1, #0x9c +.endif .endif bl CheckLocalFlagByOffset cmp r0, #0 diff --git a/asm/code_08054C04.s b/asm/code_08054C04.s index f5aee129..e18c98ee 100644 --- a/asm/code_08054C04.s +++ b/asm/code_08054C04.s @@ -385,8 +385,12 @@ sub_08054EB8: @ 0x08054EB8 strb r0, [r1] .ifdef JP movs r0, #0x77 +.else +.ifdef EU + movs r0, #0x77 .else movs r0, #0x79 +.endif .endif strh r0, [r3, #0x3e] adds r0, r3, #0 @@ -888,8 +892,10 @@ _080552B4: ldrb r0, [r3, #6] adds r0, #1 strb r0, [r3, #6] +.ifndef EU movs r0, #0x73 bl SoundReq +.endif _080552D6: pop {r4, pc} .align 2, 0 diff --git a/asm/code_08078778.s b/asm/code_08078778.s index 8f01dad2..0905212a 100644 --- a/asm/code_08078778.s +++ b/asm/code_08078778.s @@ -314,8 +314,12 @@ sub_08078AA8: @ 0x08078AA8 strh r0, [r2, #0x36] .ifdef JP adds r2, #0x34 +.else +.ifdef EU + adds r2, #0x34 .else adds r2, #0x35 +.endif .endif strb r1, [r2] bx lr @@ -5640,9 +5644,11 @@ sub_0807B264: @ 0x0807B264 ldrb r0, [r1] adds r0, #1 strb r0, [r1] +.ifndef EU movs r0, #0xa9 lsls r0, r0, #1 bl SoundReq +.endif _0807B2B0: pop {r4, pc} .align 2, 0 diff --git a/asm/code_0807F0D8.s b/asm/code_0807F0D8.s index 8dc21086..74d902aa 100644 --- a/asm/code_0807F0D8.s +++ b/asm/code_0807F0D8.s @@ -1560,6 +1560,7 @@ _0807FBF4: .align 2, 0 _0807FBF8: .4byte gActiveScriptInfo +.ifndef EU thumb_func_start sub_0807FBFC sub_0807FBFC: @ 0x0807FBFC ldr r3, _0807FC20 @ =gSave @@ -1581,8 +1582,9 @@ sub_0807FBFC: @ 0x0807FBFC bx lr .align 2, 0 _0807FC20: .4byte gSave +.endif -.ifndef JP +.ifdef USA thumb_func_start sub_0807FC24 sub_0807FC24: @ 0x0807FC24 push {lr} @@ -1598,6 +1600,24 @@ _0807FC32: pop {pc} .align 2, 0 _0807FC3C: .4byte gRoomControls +.else +.ifdef DEMO @ TODO deduplicate + thumb_func_start sub_0807FC24 +sub_0807FC24: @ 0x0807FC24 + push {lr} + ldr r0, _0807FC3C @ =gRoomControls + ldrb r0, [r0, #5] + movs r1, #0xd1 + cmp r0, #1 + bne _0807FC32 + movs r1, #0xcf +_0807FC32: + adds r0, r1, #0 + bl SetLocalFlag + pop {pc} + .align 2, 0 +_0807FC3C: .4byte gRoomControls +.endif .endif thumb_func_start UpdateScroll diff --git a/asm/code_080A3BD0.s b/asm/code_080A3BD0.s index b3807006..041f3bc9 100644 --- a/asm/code_080A3BD0.s +++ b/asm/code_080A3BD0.s @@ -544,6 +544,9 @@ _080A407C: .4byte gUnk_02019EE0 thumb_func_start sub_080A4080 sub_080A4080: @ 0x080A4080 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A3898, 0x00000CC @TODO disassemble +.else push {r4, r5, r6, r7, lr} ldr r4, _080A4134 @ =gOamCmd movs r0, #0 @@ -637,6 +640,7 @@ _080A413C: .4byte 0x000001FB _080A4140: .4byte gMain _080A4144: .4byte gUnk_08128110 _080A4148: .4byte 0x0000FFFF +.endif thumb_func_start sub_080A414C sub_080A414C: @ 0x080A414C @@ -1707,6 +1711,9 @@ _080A4974: .4byte gSave thumb_func_start sub_080A4978 sub_080A4978: @ 0x080A4978 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A4190, 0x00001CC @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, r8 push {r7} @@ -1927,6 +1934,7 @@ _080A4B3A: pop {r4, r5, r6, r7, pc} .align 2, 0 _080A4B40: .4byte 0x06014000 +.endif thumb_func_start sub_080A4B44 sub_080A4B44: @ 0x080A4B44 @@ -2731,7 +2739,12 @@ _080A5182: strh r0, [r4] ldr r0, [sp, #4] strh r0, [r4, #2] +.ifdef EU + movs r5, #0xfd + lsls r5, r5, #0x1 +.else ldr r5, _080A51D0 @ =0x000001FB +.endif adds r0, r5, #0 movs r1, #0 bl sub_080ADA14 @@ -2754,7 +2767,9 @@ _080A51C6: pop {r4, r5, pc} .align 2, 0 _080A51CC: .4byte gOamCmd +.ifndef EU _080A51D0: .4byte 0x000001FB +.endif thumb_func_start sub_080A51D4 sub_080A51D4: @ 0x080A51D4 @@ -2991,6 +3006,9 @@ _080A5380: thumb_func_start sub_080A5384 sub_080A5384: @ 0x080A5384 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A4B98, 0x00001C8 @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sl mov r6, sb @@ -3212,3 +3230,4 @@ _080A553C: .4byte gUnk_08128B64 _080A5540: .4byte gMain _080A5544: .4byte 0x000001FB _080A5548: .4byte gSave +.endif diff --git a/asm/code_080A5574.s b/asm/code_080A5574.s index 51824e3f..8951bdc2 100644 --- a/asm/code_080A5574.s +++ b/asm/code_080A5574.s @@ -350,6 +350,9 @@ _080A57F0: thumb_func_start sub_080A57F4 sub_080A57F4: @ 0x080A57F4 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A5008, 0x000019C @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sb mov r6, r8 @@ -553,6 +556,7 @@ _080A5980: .4byte gUnk_080FDFD8 _080A5984: .4byte gMenu _080A5988: .4byte gOamCmd _080A598C: .4byte gSave +.endif thumb_func_start sub_080A5990 sub_080A5990: @ 0x080A5990 @@ -748,13 +752,21 @@ _080A5AF0: .4byte gMenu thumb_func_start sub_080A5AF4 sub_080A5AF4: @ 0x080A5AF4 +.ifdef EU + push {lr} + ldr r1, _080A5B18 @ =gMenu + movs r0, #0 + strb r0, [r1, #3] +.else push {r4, lr} ldr r0, _080A5B18 @ =gMenu movs r4, #0 strb r4, [r0, #3] +.endif movs r0, #2 movs r1, #0 bl sub_08052418 +.ifndef EU movs r0, #0x80 lsls r0, r0, #0x12 ldrb r0, [r0, #7] @@ -771,12 +783,21 @@ _080A5B20: .4byte 0x0000FFFC _080A5B24: ldr r0, _080A5B30 @ =gScreen strh r4, [r0, #0x18] +.endif _080A5B28: movs r0, #1 bl sub_080A7114 +.ifdef EU + pop {pc} +.else pop {r4, pc} +.endif .align 2, 0 +.ifdef EU +_080A5B18: .4byte gMenu +.else _080A5B30: .4byte gScreen +.endif thumb_func_start sub_080A5B34 sub_080A5B34: @ 0x080A5B34 @@ -1017,6 +1038,9 @@ _080A5D18: .4byte gUnk_02019EE0 thumb_func_start sub_080A5D1C sub_080A5D1C: @ 0x080A5D1C +.ifdef EU + .incbin "baserom_eu.gba", 0x0A550C, 0x000020C @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sl mov r6, sb @@ -1270,6 +1294,7 @@ _080A5F14: pop {r4, r5, r6, r7, pc} .align 2, 0 _080A5F20: .4byte 0x000001FB +.endif thumb_func_start sub_080A5F24 sub_080A5F24: @ 0x080A5F24 @@ -1571,6 +1596,9 @@ _080A6178: thumb_func_start sub_080A617C sub_080A617C: @ 0x080A617C +.ifdef EU + .incbin "baserom_eu.gba", 0x0A5970, 0x00000F4 @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, r8 push {r7} @@ -1686,6 +1714,7 @@ _080A6260: .4byte gOamCmd _080A6264: .4byte gMenu _080A6268: .4byte gMain _080A626C: .4byte gUnk_08128D70 +.endif thumb_func_start sub_080A6270 sub_080A6270: @ 0x080A6270 @@ -1820,6 +1849,9 @@ _080A6374: .4byte gMenu thumb_func_start sub_080A6378 sub_080A6378: @ 0x080A6378 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A5B6C, 0x00000C0 @TODO disassemble +.else push {r4, r5, r6, lr} ldr r0, _080A6420 @ =gMenu adds r4, r0, #0 @@ -1907,9 +1939,13 @@ _080A6428: .4byte gScreenTransition _080A642C: .4byte gPlayerState _080A6430: .4byte 0x000001FB _080A6434: .4byte gUnk_08128DE8 +.endif thumb_func_start sub_080A6438 sub_080A6438: @ 0x080A6438 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A5C2C, 0x0000060 @TODO disassemble +.else push {r4, r5, r6, r7, lr} ldr r2, _080A6484 @ =gOamCmd movs r1, #0 @@ -1956,9 +1992,13 @@ _080A6488: .4byte gSave _080A648C: .4byte gMenu _080A6490: .4byte gUnk_08128F58 _080A6494: .4byte 0x000001FB +.endif thumb_func_start sub_080A6498 sub_080A6498: @ 0x080A6498 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A5C8C, 0x0000064 @TODO disassemble +.else push {r4, r5, r6, r7, lr} ldr r0, _080A64E4 @ =gOamCmd movs r2, #0 @@ -2005,6 +2045,7 @@ _080A64EC: .4byte gUnk_08128DE8 _080A64F0: .4byte 0x000001FB _080A64F4: .4byte gScreen _080A64F8: .4byte 0x00003D3F +.endif thumb_func_start sub_080A64FC sub_080A64FC: @ 0x080A64FC @@ -2230,6 +2271,9 @@ _080A66C2: thumb_func_start sub_080A66D0 sub_080A66D0: @ 0x080A66D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A5EC4, 0x00000F4 @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sl mov r6, sb @@ -2351,6 +2395,7 @@ _080A67BA: mov sb, r4 mov sl, r5 pop {r4, r5, r6, r7, pc} +.endif thumb_func_start sub_080A67C4 sub_080A67C4: @ 0x080A67C4 @@ -2487,6 +2532,9 @@ _080A68D0: .4byte gUnk_02019EE0 thumb_func_start sub_080A68D4 sub_080A68D4: @ 0x080A68D4 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A60C8, 0x00000B4 @TODO disassemble +.else push {r4, r5, r6, lr} ldr r0, _080A690C @ =gPlayerState ldr r0, [r0, #0x30] @@ -2571,6 +2619,7 @@ _080A6976: _080A6980: .4byte 0x000001FB _080A6984: .4byte gUnk_080C9CBC _080A6988: .4byte gUnk_080FE320 +.endif thumb_func_start sub_080A698C sub_080A698C: @ 0x080A698C @@ -2832,7 +2881,12 @@ _080A6B84: ldr r1, _080A6C10 @ =gScreenTransition ldrh r0, [r1, #0x20] ldrh r1, [r1, #0x22] +.ifdef EU + movs r4, #0xfd + lsls r4, r4, #0x1 +.else ldr r4, _080A6C14 @ =0x000001FB +.endif movs r3, #0x80 lsls r3, r3, #1 adds r3, r2, r3 @@ -2889,7 +2943,9 @@ _080A6C04: .4byte 0x00005001 _080A6C08: .4byte gBG3Buffer _080A6C0C: .4byte gPlayerState _080A6C10: .4byte gScreenTransition +.ifndef EU _080A6C14: .4byte 0x000001FB +.endif _080A6C18: .4byte gUnk_08128E94 thumb_func_start sub_080A6C1C @@ -3118,6 +3174,9 @@ _080A6DC6: thumb_func_start sub_080A6DD0 sub_080A6DD0: @ 0x080A6DD0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A65BC, 0x0000034 @TODO disassemble +.else push {lr} bl sub_08056338 cmp r0, #0 @@ -3139,6 +3198,7 @@ _080A6DF2: bl sub_080A7114 _080A6DF6: pop {pc} +.endif thumb_func_start sub_080A6DF8 sub_080A6DF8: @ 0x080A6DF8 @@ -3199,6 +3259,9 @@ _080A6E6C: .4byte gUnk_08128024 thumb_func_start sub_080A6E70 sub_080A6E70: @ 0x080A6E70 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A6668, 0x0000070 @TODO disassemble +.else push {r4, r5, lr} ldr r1, _080A6ED0 @ =gOamCmd movs r0, #0 @@ -3251,6 +3314,7 @@ _080A6ED0: .4byte gOamCmd _080A6ED4: .4byte gMenu _080A6ED8: .4byte 0x000001FB _080A6EDC: .4byte gSave +.endif thumb_func_start sub_080A6EE0 sub_080A6EE0: @ 0x080A6EE0 diff --git a/asm/code_080AD90C.s b/asm/code_080AD90C.s index 2a3a1036..cca9bf3e 100644 --- a/asm/code_080AD90C.s +++ b/asm/code_080AD90C.s @@ -140,7 +140,11 @@ sub_080ADA04: @ 0x080ADA04 bl _call_via_r2 pop {pc} .align 2, 0 +.ifdef EU +_080ADA10: .4byte gUnk_030065C8 +.else _080ADA10: .4byte gUnk_0300659C +.endif thumb_func_start sub_080ADA14 sub_080ADA14: @ 0x080ADA14 diff --git a/asm/code_080ADD30.s b/asm/code_080ADD30.s index 4007d63d..3bf23ff7 100644 --- a/asm/code_080ADD30.s +++ b/asm/code_080ADD30.s @@ -43,6 +43,9 @@ _080ADD6C: .4byte gUnk_02024490 thumb_func_start sub_080ADD70 sub_080ADD70: @ 0x080ADD70 +.ifdef EU + .incbin "baserom_eu.gba", 0x0AD514, 0x0000058 @TODO disassemble +.else push {r4, r5, lr} ldr r1, _080ADD88 @ =gUnk_02024490 ldrb r0, [r1] @@ -96,6 +99,7 @@ _080ADDCE: bls _080ADD90 _080ADDD6: pop {r4, r5, pc} +.endif thumb_func_start sub_080ADDD8 sub_080ADDD8: @ 0x080ADDD8 @@ -317,6 +321,9 @@ _080ADF7C: thumb_func_start LoadFixedGFX LoadFixedGFX: @ 0x080ADF80 +.ifdef EU + .incbin "baserom_eu.gba", 0x0AD714, 0x0000070 @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, r8 push {r7} @@ -382,9 +389,13 @@ _080ADFFE: pop {r4, r5, r6, r7, pc} .align 2, 0 _080AE004: .4byte gUnk_08132B30 +.endif thumb_func_start sub_080AE008 sub_080AE008: @ 0x080AE008 +.ifdef EU + .incbin "baserom_eu.gba", 0x0AD784, 0x0000050 @TODO disassemble +.else push {r4, r5, r6, lr} adds r6, r0, #0 adds r5, r1, #0 @@ -431,6 +442,7 @@ _080AE060: pop {r4, r5, r6, pc} .align 2, 0 _080AE064: .4byte gUnk_02024490 +.endif thumb_func_start sub_080AE068 sub_080AE068: @ 0x080AE068 @@ -617,7 +629,11 @@ _080AE1AC: lsls r0, r0, #0x1c lsrs r0, r0, #0x1c cmp r0, #1 +.ifdef EU + bne _080AE1C8 +.else bhi _080AE1C8 +.endif adds r1, #1 cmp r4, r1 bhi _080AE1CA @@ -639,6 +655,7 @@ _080AE1D4: pop {r4, pc} .align 2, 0 +.ifndef EU thumb_func_start sub_080AE1D8 sub_080AE1D8: @ 0x080AE1D8 push {r4, r5, lr} @@ -923,6 +940,7 @@ _080AE3D8: movs r0, #0 _080AE3E2: pop {pc} +.endif thumb_func_start sub_080AE3E4 sub_080AE3E4: @ 0x080AE3E4 diff --git a/asm/crt0.s b/asm/crt0.s index 73578ef5..a0daf080 100644 --- a/asm/crt0.s +++ b/asm/crt0.s @@ -20,6 +20,11 @@ start_vector: ldr r1, INTR_VECTOR_BUF ldr r0, intr_main str r0, [r1] +.ifdef EU + ldr r1, unk_function + mov lr, pc + bx r1 +.endif ldr r1, =AgbMain mov lr, pc bx r1 @@ -29,3 +34,6 @@ sp_irq: .4byte gUnk_03007FA0 sp_usr: .4byte gUnk_03007F00 INTR_VECTOR_BUF: .4byte 0x03007FFC intr_main: .4byte IntrMain +.ifdef EU +unk_function: .4byte 0x08000119 @ TODO ptr +.endif diff --git a/asm/dust.s b/asm/dust.s index f010f3dc..5d384b5f 100644 --- a/asm/dust.s +++ b/asm/dust.s @@ -130,7 +130,12 @@ _080441F2: ldrb r7, [r4, #0xa] cmp r7, #0 bne _08044284 +.ifdef EU + movs r0, #0xf5 + lsls r0, r0, #0x1 +.else ldr r0, _08044244 @ =0x000001EB +.endif movs r1, #1 bl sub_080AD8F0 adds r6, r0, #0 @@ -163,7 +168,9 @@ _080441F2: bl zFree b _0804429A .align 2, 0 +.ifndef EU _08044244: .4byte 0x000001EB +.endif _08044248: str r2, [r4, #0x48] ldr r0, _0804427C @ =gUnk_080FD188 diff --git a/asm/enemy50.s b/asm/enemy50.s index 436b55ec..02c6683e 100644 --- a/asm/enemy50.s +++ b/asm/enemy50.s @@ -9,6 +9,9 @@ thumb_func_start Enemy50 Enemy50: @ 0x08040B2C +.ifdef EU + .incbin "baserom_eu.gba", 0x040a2c, 0x5c @TODO disassemble +.else push {r4, r5, lr} adds r5, r0, #0 ldrb r0, [r5, #0xa] @@ -48,6 +51,7 @@ _08040B5C: pop {r4, r5, pc} .align 2, 0 _08040B80: .4byte gUnk_080D0DC4 +.endif thumb_func_start sub_08040B84 sub_08040B84: @ 0x08040B84 @@ -1042,6 +1046,7 @@ _080412C8: .align 2, 0 _080412FC: .4byte gRoomControls +.ifndef EU thumb_func_start sub_08041300 sub_08041300: @ 0x08041300 push {lr} @@ -1071,3 +1076,4 @@ _0804132A: _0804132C: pop {pc} .align 2, 0 +.endif diff --git a/asm/figurineDevice.s b/asm/figurineDevice.s index 2d3400de..c7767f27 100644 --- a/asm/figurineDevice.s +++ b/asm/figurineDevice.s @@ -126,7 +126,11 @@ _08087C7C: strb r5, [r0] adds r0, #1 strb r5, [r0] +.ifdef EU + adds r0, #1 +.else adds r0, #5 +.endif strb r5, [r0] adds r0, r4, #0 bl sub_0808804C @@ -248,7 +252,11 @@ _08087D60: beq _08087DAA str r5, [r4, #0x50] adds r0, r5, #0 +.ifdef EU + adds r0, #0x7e +.else adds r0, #0x7d +.endif ldrb r0, [r0] strb r0, [r4, #0xf] ldr r1, _08087DB4 @ =gUnk_080FC3E4 @@ -344,7 +352,11 @@ _08087E3C: rsbs r0, r0, #0 ands r0, r1 strb r0, [r4, #0x18] +.ifdef EU + movs r0, #9 +.else movs r0, #4 +.endif bl ClearRoomFlag bl DeleteThisEntity _08087E5A: @@ -352,6 +364,9 @@ _08087E5A: thumb_func_start sub_08087E5C sub_08087E5C: @ 0x08087E5C +.ifdef EU + .incbin "baserom_eu.gba", 0x087838, 0x00000E0 @TODO disassemble +.else push {r4, r5, r6, r7, lr} adds r4, r0, #0 adds r5, r4, #0 @@ -488,6 +503,7 @@ _08087F4E: .align 2, 0 _08087F50: .4byte 0x0000431A _08087F54: .4byte gTextBox +.endif thumb_func_start sub_08087F58 sub_08087F58: @ 0x08087F58 @@ -523,6 +539,9 @@ _08087F90: .4byte 0x00004022 sub_08087F94: @ 0x08087F94 .ifdef JP .incbin "baserom_jp.gba", 0x087dac, 0xb0 @TODO disassemble +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x087954, 0x000009C @TODO disassemble .else push {r4, r5, r6, r7, lr} adds r5, r0, #0 @@ -608,6 +627,7 @@ _08088028: bl SoundReq _08088032: pop {r4, r5, r6, r7, pc} +.endif .endif thumb_func_start sub_08088034 @@ -682,8 +702,12 @@ _080880B2: lsls r0, r0, #1 .ifdef JP movs r1, #0x9b +.else +.ifdef EU + movs r1, #0x9b .else movs r1, #0x9c +.endif .endif bl CheckLocalFlagByOffset cmp r0, #0 @@ -698,7 +722,11 @@ _080880C4: movs r4, #1 _080880D0: adds r0, r5, #0 +.ifdef EU + adds r0, #0x7d +.else adds r0, #0x7c +.endif strb r4, [r0] pop {r4, r5, pc} @@ -715,7 +743,11 @@ sub_080880D8: @ 0x080880D8 cmp r4, r0 bhs _0808810A adds r5, r7, #0 +.ifdef EU + adds r5, #0x7c +.else adds r5, #0x80 +.endif _080880F0: adds r0, r7, #0 adds r1, r4, #0 @@ -742,7 +774,11 @@ _0808810A: bne _08088156 ldr r5, _0808815C @ =gSave adds r0, r7, #0 +.ifdef EU + adds r0, #0x7c +.else adds r0, #0x80 +.endif ldrb r1, [r5, #9] adds r4, r0, #0 ldrb r0, [r4] @@ -777,7 +813,10 @@ _0808815C: .4byte gSave thumb_func_start sub_08088160 sub_08088160: @ 0x08088160 .ifdef JP - .incbin "baserom_jp.gba", 0x087f88, 0xe8 + .incbin "baserom_jp.gba", 0x087f88, 0xe8 @TODO disassemble +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x087B1C, 0x00000E8 @ TODO same as JP .else push {r4, lr} adds r2, r0, #0 @@ -908,6 +947,7 @@ _08088266: _08088268: adds r0, r4, #0 pop {r4, pc} +.endif .endif thumb_func_start sub_0808826C @@ -915,7 +955,11 @@ sub_0808826C: @ 0x0808826C push {r4, r5, lr} adds r5, r0, #0 movs r4, #0x64 +.ifdef EU + adds r0, #0x7c +.else adds r0, #0x80 +.endif ldrb r1, [r0] ldr r0, _080882A4 @ =gSave adds r0, #0xb0 @@ -958,8 +1002,10 @@ sub_080882A8: @ 0x080882A8 adds r0, r6, #0 adds r0, #0x83 ldrb r0, [r0] +.ifndef EU lsls r0, r0, #0x18 asrs r0, r0, #0x18 +.endif adds r4, #8 adds r1, r4, #0 adds r2, r5, #0 @@ -1002,6 +1048,9 @@ _08088324: .4byte gScreen thumb_func_start sub_08088328 sub_08088328: @ 0x08088328 +.ifdef EU + .incbin "baserom_eu.gba", 0x087CBC, 0x00000F8 @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, r8 push {r7} @@ -1129,6 +1178,7 @@ _08088414: pop {r3} mov r8, r3 pop {r4, r5, r6, r7, pc} +.endif thumb_func_start sub_08088424 sub_08088424: @ 0x08088424 @@ -1140,10 +1190,16 @@ sub_08088424: @ 0x08088424 cmp r0, #0x31 bhi _08088444 adds r1, #0x83 +.ifdef EU + ldrb r0, [r1, #0x0] + cmp r0, #0xe + bhi _08088476 +.else movs r0, #0 ldrsb r0, [r1, r0] cmp r0, #0xe bgt _08088476 +.endif movs r0, #0xf b _08088474 .align 2, 0 @@ -1152,28 +1208,46 @@ _08088444: cmp r0, #0x4f bhi _08088456 adds r1, #0x83 +.ifdef EU + ldrb r0, [r1, #0x0] + cmp r0, #0xb + bhi _08088476 +.else movs r0, #0 ldrsb r0, [r1, r0] cmp r0, #0xb bgt _08088476 +.endif movs r0, #0xc b _08088474 _08088456: cmp r0, #0x6d bhi _08088468 adds r1, #0x83 +.ifdef EU + ldrb r0, [r1, #0x0] + cmp r0, #8 + bhi _08088476 +.else movs r0, #0 ldrsb r0, [r1, r0] cmp r0, #8 bgt _08088476 +.endif movs r0, #9 b _08088474 _08088468: adds r1, #0x83 +.ifdef EU + ldrb r0, [r1, #0x0] + cmp r0, #5 + bhi _08088476 +.else movs r0, #0 ldrsb r0, [r1, r0] cmp r0, #5 bgt _08088476 +.endif movs r0, #6 _08088474: strb r0, [r1] @@ -1239,15 +1313,19 @@ _080884D2: movs r0, #5 str r0, [r1, #0x10] _080884EA: +.ifndef EU ldr r1, _08088500 @ =gPlayerEntity movs r0, #6 strb r0, [r1, #0x14] +.endif pop {r4, pc} .align 2, 0 _080884F4: .4byte 0x00004328 _080884F8: .4byte 0x00004327 _080884FC: .4byte gTextBox +.ifndef EU _08088500: .4byte gPlayerEntity +.endif thumb_func_start sub_08088504 sub_08088504: @ 0x08088504 @@ -1310,7 +1388,11 @@ _08088570: .4byte gTextBox thumb_func_start sub_08088574 sub_08088574: @ 0x08088574 push {lr} +.ifdef EU + movs r0, #0xa +.else movs r0, #9 +.endif bl CheckRoomFlag cmp r0, #0 beq _08088594 @@ -1387,6 +1469,7 @@ _0808860A: .align 2, 0 _08088618: .4byte gSave +.ifndef EU thumb_func_start sub_0808861C sub_0808861C: @ 0x0808861C .ifdef JP @@ -1452,3 +1535,4 @@ _08088678: _08088684: .4byte gPlayerEntity _08088688: .4byte gActiveScriptInfo .endif +.endif diff --git a/asm/fileScreen.s b/asm/fileScreen.s index 6d31d88d..a289b6f3 100755 --- a/asm/fileScreen.s +++ b/asm/fileScreen.s @@ -189,7 +189,9 @@ InitializeNewRoom: @ 0x08051AAC movs r0, #0 bl sub_0801C370 bl InitializeEntities +.ifndef EU bl sub_0801855C +.endif pop {pc} .align 2, 0 _08051AE4: .4byte gScreen @@ -198,6 +200,9 @@ _08051AEC: .4byte gScreenTransition thumb_func_start sub_08051AF0 sub_08051AF0: @ 0x08051AF0 +.ifdef EU + .incbin "baserom_eu.gba", 0x05172C, 0x00000D0 @TODO disassemble +.else push {r4, r5, lr} bl sub_0805E5C0 bl sub_0805BBBC @@ -227,7 +232,11 @@ _08051B02: movs r0, #0x86 lsls r0, r0, #4 adds r3, r5, r0 +.ifdef EU + adds r1, 4 +.else ldr r1, _08051BBC @ =0x00000864 +.endif adds r0, r5, r1 ldr r1, [r3] ldr r2, [r0] @@ -258,16 +267,23 @@ _08051B5A: .ifdef JP bl sub_08053178 .endif +.ifndef EU adds r0, r5, #0 adds r0, #0x28 ldrb r0, [r0] cmp r0, #0xff beq _08051B96 bl sub_0801855C +.endif _08051B96: +.ifdef EU + bl sub_08053178 @ TODO fix addresses + bl sub_08053178 +.else .ifndef JP bl sub_08052BF8 bl sub_08053178 +.endif .endif ldr r0, _08051BCC @ =gRoomVars ldrb r0, [r0] @@ -282,11 +298,14 @@ _08051BAE: _08051BB0: .4byte gFadeControl _08051BB4: .4byte gRoomControls _08051BB8: .4byte gArea +.ifndef EU _08051BBC: .4byte 0x00000864 +.endif _08051BC0: .4byte 0x800B0000 _08051BC4: .4byte gMain _08051BC8: .4byte gUnk_02034490 _08051BCC: .4byte gRoomVars +.endif thumb_func_start sub_08051BD0 sub_08051BD0: @ 0x08051BD0 diff --git a/asm/gleerok.s b/asm/gleerok.s index d8709272..5367db12 100644 --- a/asm/gleerok.s +++ b/asm/gleerok.s @@ -650,16 +650,20 @@ _0802D4D6: adds r0, #8 strb r3, [r0] _0802D52E: +.ifndef EU ldr r0, _0802D540 @ =gPlayerState adds r0, #0x8b movs r1, #3 strb r1, [r0] +.endif adds r0, r4, #0 movs r1, #0x4c bl InitializeAnimation b _0802D63C .align 2, 0 +.ifndef EU _0802D540: .4byte gPlayerState +.endif _0802D544: ldrb r0, [r4, #0xb] cmp r0, #1 @@ -797,6 +801,9 @@ _0802D648: sub_0802D650: @ 0x0802D650 push {r4, lr} adds r4, r0, #0 +.ifdef EU + bl sub_08078B48 +.endif ldr r1, _0802D670 @ =gUnk_080CD7E4 ldrb r0, [r4, #0xd] lsls r0, r0, #2 @@ -985,6 +992,9 @@ _0802D7B0: .4byte gScreenTransition thumb_func_start sub_0802D7B4 sub_0802D7B4: @ 0x0802D7B4 +.ifdef EU + .incbin "baserom_eu.gba", 0x02d73c, 0xb0 @TODO disassemble +.else push {r4, r5, lr} adds r5, r0, #0 ldrb r0, [r5, #0xe] @@ -1073,6 +1083,7 @@ _0802D85C: _0802D868: pop {r4, r5, pc} .align 2, 0 +.endif thumb_func_start sub_0802D86C sub_0802D86C: @ 0x0802D86C diff --git a/asm/gyorgFemale.s b/asm/gyorgFemale.s index daba4aa9..acb064ee 100644 --- a/asm/gyorgFemale.s +++ b/asm/gyorgFemale.s @@ -290,12 +290,17 @@ _08046374: bne _0804638A adds r0, r4, #0 adds r0, #0x78 +.ifdef EU +_08046388: @TODO fix jump +.endif strb r5, [r0] +.ifndef EU adds r0, #5 strb r5, [r0] adds r0, #2 _08046388: strb r5, [r0] +.endif _0804638A: ldr r0, [r4, #0x64] ldr r0, [r0] @@ -336,10 +341,16 @@ _080463B8: movs r0, #0x3c strh r0, [r1] adds r0, r4, #0 +.ifdef EU + adds r0, #0x80 +.else adds r0, #0x78 +.endif strb r2, [r0] +.ifndef EU adds r0, #8 strb r2, [r0] +.endif _080463E0: pop {r4, r5, pc} .align 2, 0 @@ -406,20 +417,43 @@ _08046454: bne _0804646A adds r0, r4, #0 adds r0, #0x78 +.ifdef EU +_08046468: +.endif strb r5, [r0] +.ifndef EU adds r0, #5 strb r5, [r0] adds r0, #2 _08046468: strb r5, [r0] +.endif _0804646A: adds r0, r4, #0 adds r0, #0x45 +.ifdef EU + ldrb r1, [r0] + cmp r1, #0 + bne _08046494 +.else ldrb r0, [r0] cmp r0, #0 bne _08046494 +.endif movs r0, #1 strb r0, [r4, #0xc] +.ifdef EU + adds r0, r4, #0 + adds r0, #0x78 + strb r1, [r0] + adds r1, r4, #0 + adds r1, #0x70 + movs r2, #0 + movs r0, #0x3c + strh r0, [r1] + adds r0, r4, #0x0 + adds r0, #0x80 +.else adds r1, r4, #0 adds r1, #0x70 movs r2, #0 @@ -429,6 +463,7 @@ _0804646A: adds r0, #0x78 strb r2, [r0] adds r0, #8 +.endif strb r2, [r0] movs r0, #0x94 lsls r0, r0, #1 @@ -437,8 +472,10 @@ _08046494: pop {r4, r5, r6, pc} .align 2, 0 +@ TODO move inside, if EU no longer references this function thumb_func_start sub_08046498 sub_08046498: @ 0x08046498 +.ifndef EU push {r4, r5, lr} adds r5, r0, #0 ldr r0, _080464B8 @ =gUnk_02019EE0 @@ -455,6 +492,7 @@ sub_08046498: @ 0x08046498 .align 2, 0 _080464B8: .4byte gUnk_02019EE0 _080464BC: .4byte gMapDataTopSpecial +.endif thumb_func_start sub_080464C0 sub_080464C0: @ 0x080464C0 @@ -669,6 +707,9 @@ _0804665A: thumb_func_start sub_08046668 sub_08046668: @ 0x08046668 +.ifdef EU + .incbin "baserom_eu.gba", 0x046438, 0x38 @TODO disassemble +.else push {r4, r5, lr} adds r4, r0, #0 adds r0, #0x45 @@ -699,9 +740,13 @@ _080466A0: pop {r4, r5, pc} .align 2, 0 _080466A4: .4byte gUnk_080D1AF8 +.endif thumb_func_start sub_080466A8 sub_080466A8: @ 0x080466A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x046470, 0x12c @TODO disassemble +.else push {r4, r5, r6, r7, lr} adds r4, r0, #0 adds r0, #0x7c @@ -855,6 +900,7 @@ _080467CC: pop {r4, r5, r6, r7, pc} .align 2, 0 _080467D8: .4byte gPlayerEntity +.endif thumb_func_start sub_080467DC sub_080467DC: @ 0x080467DC @@ -869,3 +915,4 @@ _080467E6: cmp r1, #7 bls _080467E6 pop {pc} + diff --git a/asm/gyorgFemaleEye.s b/asm/gyorgFemaleEye.s index 2a8c346b..6e26f54c 100644 --- a/asm/gyorgFemaleEye.s +++ b/asm/gyorgFemaleEye.s @@ -44,6 +44,9 @@ _080489C8: .4byte gUnk_080D1F7C thumb_func_start sub_080489CC sub_080489CC: @ 0x080489CC +.ifdef EU + .incbin "baserom_eu.gba", 0x048788, 0x84 @TODO disassemble +.else push {r4, r5, r6, lr} mov ip, r0 adds r0, #0x45 @@ -168,6 +171,7 @@ _08048AD8: pop {r4, r5, r6, pc} .align 2, 0 _08048AEC: .4byte gUnk_080D1F64 +.endif thumb_func_start sub_08048AF0 sub_08048AF0: @ 0x08048AF0 diff --git a/asm/intr.s b/asm/intr.s index c8e377bf..3723ee2e 100644 --- a/asm/intr.s +++ b/asm/intr.s @@ -590,7 +590,11 @@ _080B20E0: b _080B20E0 .align 2, 0 _080B20E4: .4byte 0x0000208C +.ifdef EU +_080B20E8: .4byte gUnk_030069AC +.else _080B20E8: .4byte gUnk_030067E4 +.endif arm_func_start sub_080B20EC sub_080B20EC: @ 0x080B20EC @@ -814,6 +818,9 @@ _080B23EC: .4byte gUnk_0800464E arm_func_start sub_080B23F0 sub_080B23F0: @ 0x080B23F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B1950, 0x00000A8 @TODO disassemble +.else push {r4, r5, r6, r7, r8, sb, sl, fp, lr} ldr fp, _080B2A30 @ =gUnk_03000000 ldrb r2, [fp, #3] @@ -852,6 +859,7 @@ sub_080B2448: @ 0x080B2448 bl sub_080B2534 ldm sp!, {lr} b _080B26B4 +.endif arm_func_start sub_080B2478 sub_080B2478: @ 0x080B2478 @@ -927,6 +935,9 @@ _080B2540: arm_func_start sub_080B255C sub_080B255C: @ 0x080B255C +.ifdef EU + .incbin "baserom_eu.gba", 0x0B1ADC, 0x00001C8 @TODO disassemble +.else stmdb sp!, {lr} mov r4, r0 bl sub_080B299C @@ -1048,6 +1059,8 @@ _080B26D0: bgt _080B26D0 ldm sp!, {lr} bx lr + +.endif _080B2718: ldrsb r0, [r4, #0x28] cmp r0, #0 @@ -1271,7 +1284,15 @@ _080B2A0C: orr r8, r8, r5, lsl #22 bx lr .align 2, 0 + +.ifdef EU + .incbin "baserom_eu.gba", 0x0B1FBC, 0x0000194 @TODO disassemble +.endif + _080B2A30: .4byte gUnk_03000000 +.ifdef EU + .4byte 0x03006958 @TODO make pointer? +.endif _080B2A34: .4byte gUnk_081326EC _080B2A38: .4byte gUnk_081326EC _080B2A3C: .4byte gUnk_081326EC @@ -1287,3 +1308,6 @@ _080B2A60: .4byte gUnk_082F3D74 _080B2A64: .4byte gUnk_03000000 _080B2A68: .4byte gUnk_0300695C _080B2A6C: .4byte 0x3E003F00 +.ifdef EU + .4byte 0x03003DF8 @TODO pointer? +.endif diff --git a/asm/item/itemLantern.s b/asm/item/itemLantern.s index 574bafb9..0c26709a 100644 --- a/asm/item/itemLantern.s +++ b/asm/item/itemLantern.s @@ -118,6 +118,9 @@ _08075AD8: .4byte gUnk_08126EEC thumb_func_start sub_08075ADC sub_08075ADC: @ 0x08075ADC +.ifdef EU + .incbin "baserom_eu.gba", 0x07550C, 0x0000074 @TODO disassemble +.else push {r4, r5, lr} adds r4, r0, #0 adds r5, r1, #0 @@ -177,6 +180,7 @@ _08075B4C: bl UpdateItemAnim _08075B52: pop {r4, r5, pc} +.endif thumb_func_start sub_08075B54 sub_08075B54: @ 0x08075B54 diff --git a/asm/item/itemSword.s b/asm/item/itemSword.s index 5401f336..d14add13 100644 --- a/asm/item/itemSword.s +++ b/asm/item/itemSword.s @@ -26,6 +26,9 @@ _08075334: .4byte gUnk_0811BD44 thumb_func_start sub_08075338 sub_08075338: @ 0x08075338 +.ifdef EU + .incbin "baserom_eu.gba", 0x074D74, 0x0000174 @TODO disassemble +.else push {r4, r5, r6, r7, lr} adds r5, r0, #0 adds r7, r1, #0 @@ -210,6 +213,7 @@ _080754A6: _080754B4: pop {r4, r5, r6, r7, pc} .align 2, 0 +.endif thumb_func_start sub_080754B8 sub_080754B8: @ 0x080754B8 diff --git a/asm/itemForSale.s b/asm/itemForSale.s index 8b447c9c..af98dc19 100644 --- a/asm/itemForSale.s +++ b/asm/itemForSale.s @@ -61,6 +61,11 @@ sub_08081854: @ 0x08081854 ands r0, r1 strb r0, [r2] strb r3, [r4, #0x16] +.ifdef EU + adds r0, r4, #0x0 + movs r1, #0x6 + bl sub_0805E3A0 +.endif str r4, [r4, #0x54] adds r0, r4, #0 bl sub_08081A5C diff --git a/asm/ladderUp.s b/asm/ladderUp.s index 1344665a..6137f152 100644 --- a/asm/ladderUp.s +++ b/asm/ladderUp.s @@ -9,6 +9,9 @@ thumb_func_start LadderUp LadderUp: @ 0x0808DB54 +.ifdef EU + .incbin "baserom_eu.gba", 0x08D44C, 0x0000200 @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, r8 push {r7} @@ -279,3 +282,4 @@ _0808DD72: pop {r4, r5, r6, r7, pc} .align 2, 0 _0808DD78: .4byte 0x00004014 +.endif diff --git a/asm/manager37.s b/asm/manager37.s index 3d1d80e4..43657704 100644 --- a/asm/manager37.s +++ b/asm/manager37.s @@ -36,6 +36,9 @@ _0805DE64: .4byte gUnk_08108DC4 sub_0805DE68: @ 0x0805DE68 .ifdef JP .incbin "baserom_jp.gba", 0x05dcbc, 0x3c @TODO disassemble +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x05D904, 0x3c @TODO same as JP .else push {r4, lr} adds r4, r0, #0 @@ -73,6 +76,7 @@ _0805DE7A: _0805DEAC: .4byte gScreenTransition _0805DEB0: .4byte gSave _0805DEB4: .4byte 0x00001194 +.endif .endif thumb_func_start sub_0805DEB8 diff --git a/asm/managerF.s b/asm/managerF.s index 191c3554..73263595 100644 --- a/asm/managerF.s +++ b/asm/managerF.s @@ -538,9 +538,11 @@ _080592C8: bl sub_080592EC adds r0, r4, #0 bl sub_0805930C +.ifndef EU movs r0, #0xb7 lsls r0, r0, #1 bl SoundReq +.endif bl DeleteThisEntity _080592EA: pop {r4, pc} @@ -569,7 +571,11 @@ sub_0805930C: @ 0x0805930C adds r4, r0, #0 movs r0, #0xf movs r1, #0x43 +.ifdef EU + movs r2, #0x0 +.else movs r2, #0x40 +.endif bl CreateObject adds r2, r0, #0 cmp r2, #0 @@ -799,8 +805,10 @@ _080594D2: _080594D4: .4byte gUnk_08108380 _080594D8: .4byte gPlayerEntity +@TODO move down once EU pointers are fixed thumb_func_start sub_080594DC sub_080594DC: @ 0x080594DC +.ifndef EU push {r4, lr} adds r4, r0, #0 ldrb r0, [r4, #0xc] @@ -850,11 +858,32 @@ _08059540: pop {r4, pc} .align 2, 0 _08059544: .4byte gArea +.endif thumb_func_start sub_08059548 sub_08059548: @ 0x08059548 -.ifndef JP +.ifdef USA + push {lr} + movs r1, #6 + bl sub_0805E3A0 + ldr r0, _08059568 @ =gPlayerEntity + ldrb r0, [r0, #0xc] + cmp r0, #0x16 + bne _0805955C + bl DeleteThisEntity +_0805955C: + ldr r2, _0805956C @ =gInput + ldrh r1, [r2] + movs r0, #4 + orrs r0, r1 + strh r0, [r2] + pop {pc} + .align 2, 0 +_08059568: .4byte gPlayerEntity +_0805956C: .4byte gInput +.else +.ifdef DEMO @ TODO deduplicate push {lr} movs r1, #6 bl sub_0805E3A0 @@ -874,3 +903,4 @@ _0805955C: _08059568: .4byte gPlayerEntity _0805956C: .4byte gInput .endif +.endif diff --git a/asm/non_matching/phonograph/sub_0806E964.inc b/asm/non_matching/phonograph/sub_0806E964.inc index 0f7e9760..63091404 100644 --- a/asm/non_matching/phonograph/sub_0806E964.inc +++ b/asm/non_matching/phonograph/sub_0806E964.inc @@ -1,4 +1,8 @@ .syntax unified + +.ifdef EU + .incbin "baserom_eu.gba", 0x06E3DC, 0x000011C @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sb mov r6, r8 @@ -179,4 +183,5 @@ _0806EAAA: .align 2, 0 _0806EAB4: .4byte 0x80010000 _0806EAB8: .4byte gActiveScriptInfo +.endif .syntax divided diff --git a/asm/non_matching/ropeGolden/sub_08038304.inc b/asm/non_matching/ropeGolden/sub_08038304.inc index 82668a58..46f0703e 100644 --- a/asm/non_matching/ropeGolden/sub_08038304.inc +++ b/asm/non_matching/ropeGolden/sub_08038304.inc @@ -18,7 +18,11 @@ ldrb r1, [r4, #0x15] cmp r0, r1 bne _08038330 +.ifdef EU + movs r0, #0x1e +.else movs r0, #0x5a +.endif strb r0, [r4, #0xf] adds r0, r4, #0 bl sub_080383AC diff --git a/asm/non_matching/sittingPerson/sub_0806387C.inc b/asm/non_matching/sittingPerson/sub_0806387C.inc index 7ff53936..063e6ae0 100644 --- a/asm/non_matching/sittingPerson/sub_0806387C.inc +++ b/asm/non_matching/sittingPerson/sub_0806387C.inc @@ -4,8 +4,12 @@ movs r4, #3 .ifdef JP movs r0, #0xd7 +.else +.ifdef EU + movs r0, #0xd7 .else movs r0, #0xda +.endif .endif bl CheckLocalFlag cmp r0, #0 @@ -13,16 +17,24 @@ movs r4, #0 .ifdef JP movs r0, #0xd7 +.else +.ifdef EU + movs r0, #0xd7 .else movs r0, #0xda +.endif .endif bl SetLocalFlag b _080638D6 _08063896: .ifdef JP movs r0, #0xce +.else +.ifdef EU + movs r0, #0xce .else movs r0, #0xd1 +.endif .endif bl CheckLocalFlag cmp r0, #0 @@ -46,8 +58,12 @@ _080638B2: movs r4, #2 .ifdef JP movs r0, #0xce +.else +.ifdef EU + movs r0, #0xce .else movs r0, #0xd1 +.endif .endif bl SetLocalFlag ldr r0, _080638FC @ =0x00000A17 diff --git a/asm/non_matching/sittingPerson/sub_0806390C.inc b/asm/non_matching/sittingPerson/sub_0806390C.inc index 5de14422..1576a801 100644 --- a/asm/non_matching/sittingPerson/sub_0806390C.inc +++ b/asm/non_matching/sittingPerson/sub_0806390C.inc @@ -4,8 +4,12 @@ movs r5, #1 .ifdef JP movs r0, #0xd6 +.else +.ifdef EU + movs r0, #0xd6 .else movs r0, #0xd9 +.endif .endif bl CheckLocalFlag cmp r0, #0 @@ -13,8 +17,12 @@ movs r5, #0 .ifdef JP movs r0, #0xd6 +.else +.ifdef EU + movs r0, #0xd6 .else movs r0, #0xd9 +.endif .endif bl SetLocalFlag adds r0, r4, #0 diff --git a/asm/non_matching/stockwell/sub_08065370.inc b/asm/non_matching/stockwell/sub_08065370.inc index e8beb8c8..0c4e91c1 100644 --- a/asm/non_matching/stockwell/sub_08065370.inc +++ b/asm/non_matching/stockwell/sub_08065370.inc @@ -1,4 +1,8 @@ .syntax unified + +.ifdef EU + .incbin "baserom_eu.gba", 0x064DE8, 0x0000164 @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sb mov r6, r8 @@ -183,4 +187,5 @@ _080654CE: pop {r4, r5, r6, r7, pc} .align 2, 0 _080654D8: .4byte 0x00002C0D +.endif .syntax divided diff --git a/asm/non_matching/sub_0804C128.inc b/asm/non_matching/sub_0804C128.inc index ca770dbf..9a853e42 100644 --- a/asm/non_matching/sub_0804C128.inc +++ b/asm/non_matching/sub_0804C128.inc @@ -118,8 +118,12 @@ _0804C206: bl sub_080AF250 .ifdef JP movs r0, #0x5a +.else +.ifdef EU + movs r0, #0x5a .else movs r0, #0x5c +.endif .endif bl CheckLocalFlag cmp r0, #0 diff --git a/asm/non_matching/sub_0804DE00.inc b/asm/non_matching/sub_0804DE00.inc index c1326428..4ec67d83 100644 --- a/asm/non_matching/sub_0804DE00.inc +++ b/asm/non_matching/sub_0804DE00.inc @@ -69,8 +69,12 @@ _0804DE5C: bl sub_0804AF90 .ifdef JP movs r0, #0xca +.else +.ifdef EU + movs r0, #0xca .else movs r0, #0xcd +.endif .endif bl CheckLocalFlag cmp r0, #0 diff --git a/asm/non_matching/sub_0804E150.inc b/asm/non_matching/sub_0804E150.inc index c4fcb207..b782f7f8 100644 --- a/asm/non_matching/sub_0804E150.inc +++ b/asm/non_matching/sub_0804E150.inc @@ -26,8 +26,12 @@ _0804E17C: bne _0804E168 .ifdef JP movs r0, #0xce +.else +.ifdef EU + movs r0, #0xce .else movs r0, #0xd1 +.endif .endif bl CheckLocalFlag cmp r0, #0 diff --git a/asm/non_matching/textbox/sub_08056750.inc b/asm/non_matching/textbox/sub_08056750.inc index fafe63d6..c6f8b6c0 100644 --- a/asm/non_matching/textbox/sub_08056750.inc +++ b/asm/non_matching/textbox/sub_08056750.inc @@ -51,9 +51,11 @@ _080567B8: adds r1, #0x89 movs r0, #5 strb r0, [r1] +.ifndef EU movs r0, #0 movs r1, #0 bl sub_08056ABC +.endif b _08056942 .align 2, 0 _080567D4: .4byte gUnk_02000040 diff --git a/asm/object1E.s b/asm/object1E.s index 8bfbd69b..e3168e6a 100644 --- a/asm/object1E.s +++ b/asm/object1E.s @@ -199,10 +199,18 @@ sub_08087640: @ 0x08087640 ldr r0, _08087688 @ =gRoomControls ldrh r1, [r0, #4] ldr r0, _0808768C @ =0x00000403 +.ifdef EU + movs r2, #0x17 +.else movs r2, #0x16 +.endif cmp r1, r0 bne _08087676 +.ifdef EU + movs r2, #0x18 +.else movs r2, #0x17 +.endif _08087676: adds r0, r4, #0 adds r1, r2, #0 diff --git a/asm/object29.s b/asm/object29.s index 43e3180d..e973f20e 100644 --- a/asm/object29.s +++ b/asm/object29.s @@ -30,6 +30,9 @@ _08089870: .4byte gUnk_08120D90 thumb_func_start sub_08089874 sub_08089874: @ 0x08089874 +.ifdef EU + .incbin "baserom_eu.gba", 0x089184, 0x00000C4 @TODO disassemble +.else push {r4, r5, lr} adds r4, r0, #0 ldrb r1, [r4, #0x10] @@ -135,6 +138,7 @@ _08089934: _08089940: pop {r4, r5, pc} .align 2, 0 +.endif thumb_func_start sub_08089944 sub_08089944: @ 0x08089944 diff --git a/asm/object6A.s b/asm/object6A.s index fb464dcb..54e443d7 100644 --- a/asm/object6A.s +++ b/asm/object6A.s @@ -728,6 +728,9 @@ sub_08094F98: @ 0x08094F98 thumb_func_start sub_08094FA8 sub_08094FA8: @ 0x08094FA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x09487C, 0x000009C @TODO disassemble +.else push {r4, lr} adds r4, r0, #0 ldrb r0, [r4, #0xc] @@ -833,6 +836,7 @@ _08095070: bl sub_08078A90 _08095086: pop {r4, pc} +.endif thumb_func_start sub_08095088 sub_08095088: @ 0x08095088 diff --git a/asm/object9.s b/asm/object9.s index 210c0dea..3e195043 100644 --- a/asm/object9.s +++ b/asm/object9.s @@ -128,7 +128,11 @@ _08083942: bl sub_0805E3A0 pop {r4, pc} .align 2, 0 +.ifdef EU +_08083958: .4byte 0x010277E0 +.else _08083958: .4byte 0x01027820 +.endif thumb_func_start sub_0808395C sub_0808395C: @ 0x0808395C diff --git a/asm/objectB5.s b/asm/objectB5.s index 89ef3f00..7b7556e3 100644 --- a/asm/objectB5.s +++ b/asm/objectB5.s @@ -16,14 +16,18 @@ ObjectB5: @ 0x080A0E28 movs r0, #1 strb r0, [r1, #0xc] _080A0E36: +.ifndef EU ldr r0, _080A0E48 @ =gRoomControls str r1, [r0, #0x30] +.endif ldr r0, _080A0E4C @ =gPlayerEntity ldr r3, _080A0E50 @ =0xFFD80000 movs r2, #0 bl PositionRelative pop {pc} .align 2, 0 +.ifndef EU _080A0E48: .4byte gRoomControls +.endif _080A0E4C: .4byte gPlayerEntity _080A0E50: .4byte 0xFFD80000 diff --git a/asm/objectBA.s b/asm/objectBA.s index 7dcc5217..65210428 100644 --- a/asm/objectBA.s +++ b/asm/objectBA.s @@ -28,6 +28,9 @@ _080A1700: .4byte gUnk_08124ED0 thumb_func_start sub_080A1704 sub_080A1704: @ 0x080A1704 +.ifdef EU + .incbin "baserom_eu.gba", 0x0A0F40, 0x0000128 @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, sl mov r6, sb @@ -178,6 +181,7 @@ _080A183C: .4byte gPlayerState _080A1840: .4byte 0x80100000 _080A1844: .4byte gArea _080A1848: .4byte 0x00000864 +.endif thumb_func_start sub_080A184C sub_080A184C: @ 0x080A184C diff --git a/asm/octorokBoss.s b/asm/octorokBoss.s index 9b5142e6..5b9f204d 100644 --- a/asm/octorokBoss.s +++ b/asm/octorokBoss.s @@ -178,6 +178,9 @@ _080352FA: sub_080352FC: @ 0x080352FC .ifdef JP .incbin "baserom_jp.gba", 0x0352a0, 0x1fc @TODO disassemble +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x03527C, 0x1fc @TODO disassemble same as JP .else push {r4, r5, r6, r7, lr} mov r7, sl @@ -424,6 +427,7 @@ _080354E8: pop {r4, r5, r6, r7, pc} .align 2, 0 _080354F4: .4byte 0x00000109 +.endif .endif thumb_func_start sub_080354F8 diff --git a/asm/playerItem/playerItem3.s b/asm/playerItem/playerItem3.s index 3d8bf469..09952ea8 100644 --- a/asm/playerItem/playerItem3.s +++ b/asm/playerItem/playerItem3.s @@ -66,6 +66,9 @@ _0801B4C4: .4byte 0xFFFFE000 thumb_func_start sub_0801B4C8 sub_0801B4C8: @ 0x0801B4C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x01B4F4, 0xc8 @ TODO disassemble +.else push {r4, r5, lr} adds r4, r0, #0 ldr r3, _0801B52C @ =gPlayerState @@ -161,6 +164,7 @@ _0801B56C: adds r0, r4, #0 bl sub_0801B584 pop {r4, r5, pc} +.endif thumb_func_start sub_0801B584 sub_0801B584: @ 0x0801B584 diff --git a/asm/playerItem/playerItemSwordSpin.s b/asm/playerItem/playerItemSwordSpin.s index f91f2956..d0accd5b 100644 --- a/asm/playerItem/playerItemSwordSpin.s +++ b/asm/playerItem/playerItemSwordSpin.s @@ -168,8 +168,12 @@ sub_0801BB2C: @ 0x0801BB2C movs r2, #5 .ifdef JP bl CreateItemEntity +.else +.ifdef EU + bl CreateItemEntity .else bl sub_080A7C18 +.endif .endif ldr r0, _0801BB8C @ =0x00000109 bl SoundReq diff --git a/asm/vaatiArm.s b/asm/vaatiArm.s index 46cc2189..39a63f98 100644 --- a/asm/vaatiArm.s +++ b/asm/vaatiArm.s @@ -1006,8 +1006,12 @@ _08042C9E: adds r0, r1, r0 .ifdef JP subs r0, #0x20 +.else +.ifdef EU + subs r0, #0x20 .else subs r0, #0x40 +.endif .endif cmp r0, r5 bge _08042CAA @@ -3162,6 +3166,9 @@ _08043C8C: sub_08043C98: @ 0x08043C98 .ifdef JP .incbin "baserom_jp.gba", 0x043BB0, 0x20 @TODO disassemble +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x043AC4, 0x20 @TODO same as JP .else push {lr} adds r3, r0, #0 @@ -3194,6 +3201,7 @@ _08043CD0: movs r0, #0 _08043CD2: pop {pc} +.endif .endif thumb_func_start sub_08043CD4 diff --git a/asm/vaatiProjectile.s b/asm/vaatiProjectile.s index 1be37b71..119c72e3 100644 --- a/asm/vaatiProjectile.s +++ b/asm/vaatiProjectile.s @@ -51,6 +51,9 @@ _0803E0D8: .4byte gUnk_080D0660 thumb_func_start sub_0803E0DC sub_0803E0DC: @ 0x0803E0DC +.ifdef EU + .incbin "baserom_eu.gba", 0x03E038, 0x68 @TODO disassemble +.else push {r4, r5, r6, lr} adds r5, r0, #0 adds r0, #0x41 @@ -132,6 +135,7 @@ _0803E178: .4byte gPlayerState _0803E17C: .4byte 0xFFFFFEFF _0803E180: .4byte gPlayerEntity _0803E184: .4byte gUnk_080D0648 +.endif thumb_func_start sub_0803E188 sub_0803E188: @ 0x0803E188 @@ -555,6 +559,9 @@ _0803E49E: thumb_func_start sub_0803E4A0 sub_0803E4A0: @ 0x0803E4A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x03e3b8, 0x30 @TODO disassemble +.else push {lr} adds r1, r0, #0 ldr r0, _0803E4B8 @ =gScreenTransition @@ -588,6 +595,7 @@ _0803E4D4: adds r0, r2, #0 _0803E4D6: pop {pc} +.endif thumb_func_start sub_0803E4D8 sub_0803E4D8: @ 0x0803E4D8 diff --git a/asm/vaatiRebornEnemy.s b/asm/vaatiRebornEnemy.s index 51485753..1a1a6103 100644 --- a/asm/vaatiRebornEnemy.s +++ b/asm/vaatiRebornEnemy.s @@ -1141,6 +1141,7 @@ _0803D918: ldrh r0, [r4, #0x32] adds r2, r2, r0 strh r2, [r4, #0x32] +.ifndef EU adds r2, r4, #0 adds r2, #0x29 ldrb r1, [r2] @@ -1150,6 +1151,7 @@ _0803D918: movs r1, #2 orrs r0, r1 strb r0, [r2] +.endif _0803D968: pop {r4, r5, pc} .align 2, 0 diff --git a/asm/vaatiTransfigured.s b/asm/vaatiTransfigured.s index 246058b5..f3aac9f0 100644 --- a/asm/vaatiTransfigured.s +++ b/asm/vaatiTransfigured.s @@ -1273,6 +1273,7 @@ _080400C2: ldrh r0, [r5, #0x32] adds r2, r2, r0 strh r2, [r5, #0x32] +.ifndef EU adds r2, r5, #0 adds r2, #0x29 ldrb r1, [r2] @@ -1282,6 +1283,7 @@ _080400C2: movs r1, #2 orrs r0, r1 strb r0, [r2] +.endif movs r0, #0xb7 lsls r0, r0, #1 bl SoundReq diff --git a/asm/vaatiWrath.s b/asm/vaatiWrath.s index cf180e03..e31fe4b3 100644 --- a/asm/vaatiWrath.s +++ b/asm/vaatiWrath.s @@ -66,6 +66,9 @@ _0804139C: .4byte gUnk_080D0E1C sub_080413A0: @ 0x080413A0 .ifdef JP .incbin "baserom_jp.gba", 0x041344, 0x18 @TODO disassemble +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x041274, 0x18 @TODO same as JP .else push {r4, lr} adds r4, r0, #0 @@ -80,6 +83,7 @@ sub_080413A0: @ 0x080413A0 pop {r4, pc} .align 2, 0 _080413BC: .4byte gUnk_080D0E2C +.endif .endif thumb_func_start sub_080413C0 @@ -1121,6 +1125,9 @@ _08041BE4: .4byte gUnk_080D0E68 thumb_func_start sub_08041BE8 sub_08041BE8: @ 0x08041BE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x041AB4, 0xCA @TODO disassemble +.else push {r4, r5, r6, r7, lr} mov r7, r8 push {r7} @@ -1221,6 +1228,7 @@ _08041CC0: .4byte 0x000001F5 _08041CC4: .4byte 0x0000016B _08041CC8: .4byte gRoomControls _08041CCC: .4byte gPlayerEntity +.endif thumb_func_start sub_08041CD0 sub_08041CD0: @ 0x08041CD0 @@ -2134,7 +2142,7 @@ sub_0804235C: @ 0x0804235C bl InitializeAnimation pop {r4, r5, pc} -.ifndef JP +.ifdef USA thumb_func_start sub_080423A4 sub_080423A4: @ 0x080423A4 push {r4, lr} @@ -2201,6 +2209,76 @@ _0804241C: .align 2, 0 _08042420: .4byte gPlayerState _08042424: .4byte gPlayerEntity +.else +.ifdef DEMO +@ TODO is there a way to not duplicate this? + thumb_func_start sub_080423A4 +sub_080423A4: @ 0x080423A4 + push {r4, lr} + ldr r0, _080423CC @ =gScreenTransition + adds r4, r0, #0 + adds r4, #0x38 + ldrb r1, [r4] + movs r0, #2 + ands r0, r1 + cmp r0, #0 + bne _0804241C + ldr r0, _080423D0 @ =gSave + movs r2, #0x93 + lsls r2, r2, #3 + adds r1, r0, r2 + ldr r0, [r1] + cmp r0, #0 + beq _080423D4 + subs r0, #1 + str r0, [r1] + b _0804241C + .align 2, 0 +_080423CC: .4byte gScreenTransition +_080423D0: .4byte gSave +_080423D4: + ldr r2, _08042420 @ =gPlayerState + adds r0, r2, #0 + adds r0, #0xa9 + ldrb r0, [r0] + cmp r0, #1 + bgt _0804241C + cmp r0, #0 + blt _0804241C + ldr r0, [r2, #0x2c] + cmp r0, #0 + bne _0804241C + ldr r1, _08042424 @ =gPlayerEntity + adds r0, r1, #0 + adds r0, #0x7a + ldrh r0, [r0] + cmp r0, #0 + bne _0804241C + movs r3, #0x36 + ldrsh r0, [r1, r3] + movs r1, #0x80 + lsls r1, r1, #8 + ands r0, r1 + cmp r0, #0 + beq _0804240A + ldrb r0, [r2, #0xa] + cmp r0, #0 + beq _0804241C +_0804240A: + movs r0, #0xb7 + lsls r0, r0, #4 + movs r1, #0 + bl sub_08078AA8 + ldrb r0, [r4] + movs r1, #2 + orrs r0, r1 + strb r0, [r4] +_0804241C: + pop {r4, pc} + .align 2, 0 +_08042420: .4byte gPlayerState +_08042424: .4byte gPlayerEntity +.endif .endif thumb_func_start sub_08042428 diff --git a/asm/waterfallOpening.s b/asm/waterfallOpening.s index 79dcbc42..b2e767f9 100644 --- a/asm/waterfallOpening.s +++ b/asm/waterfallOpening.s @@ -9,6 +9,9 @@ thumb_func_start WaterfallOpening WaterfallOpening: @ 0x0809FF68 +.ifdef EU + .incbin "baserom_eu.gba", 0x09F7C8, 0x000013C @TODO disassemble +.else push {r4, r5, lr} adds r4, r0, #0 ldrb r1, [r4, #0xc] @@ -169,6 +172,7 @@ _080A00AA: pop {r4, r5, pc} .align 2, 0 _080A00AC: .4byte gRoomControls +.endif thumb_func_start sub_080A00B0 sub_080A00B0: @ 0x080A00B0 diff --git a/asm/windTribeTeleporter.s b/asm/windTribeTeleporter.s index d9b16c88..9349cf93 100644 --- a/asm/windTribeTeleporter.s +++ b/asm/windTribeTeleporter.s @@ -116,7 +116,10 @@ _080A0FFE: thumb_func_start sub_080A1000 sub_080A1000: @ 0x080A1000 .ifdef JP - .incbin "baserom_jp.gba", 0x0a0dc8, 0xd0 + .incbin "baserom_jp.gba", 0x0a0dc8, 0xd0 @TODO disassemble +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0A084C, 0xd0 @TODO same as JP .else push {r4, lr} adds r4, r0, #0 @@ -235,6 +238,7 @@ _080A10D4: .align 2, 0 _080A10D8: .4byte gScreenTransition _080A10DC: .4byte gPlayerEntity +.endif .endif thumb_func_start sub_080A10E0 diff --git a/data/animations/enemy/waterDrop.s b/data/animations/enemy/waterDrop.s index 1ae0704d..f0267b36 100644 --- a/data/animations/enemy/waterDrop.s +++ b/data/animations/enemy/waterDrop.s @@ -4,7 +4,12 @@ .section .rodata gUnk_080CD044:: @ 080CD044 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0CC76C, 0x0000025 +.else .incbin "baserom.gba", 0x0CD044, 0x0000025 +.endif gUnk_080CD069:: @ 080CD069 .incbin "baserom.gba", 0x0CD069, 0x0000007 diff --git a/data/animations/npc/guard.s b/data/animations/npc/guard.s index 761eb951..ae7d7805 100644 --- a/data/animations/npc/guard.s +++ b/data/animations/npc/guard.s @@ -26,17 +26,25 @@ gUnk_0810F613:: @ 0810F613 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x10F2D7, 0x0000007 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x10F2D7, 0x0000007 .else .incbin "baserom.gba", 0x10F613, 0x0000007 .endif +.endif gUnk_0810F61A:: @ 0810F61A .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x10F2DE, 0x000002E +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x10F2DE, 0x000002E .else .incbin "baserom.gba", 0x10F61A, 0x000002E .endif +.endif gUnk_0810F648:: @ 0810F648 .incbin "baserom.gba", 0x10F648, 0x000003A diff --git a/data/animations/object/objectB4.s b/data/animations/object/objectB4.s index 2faef082..9f995c2e 100644 --- a/data/animations/object/objectB4.s +++ b/data/animations/object/objectB4.s @@ -8,7 +8,12 @@ gUnk_08124B38:: @ 08124B38 .incbin "baserom.gba", 0x124B38, 0x0000071 gUnk_08124BA9:: @ 08124BA9 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1242F1, 0x0000053 +.else .incbin "baserom.gba", 0x124BA9, 0x0000053 +.endif gUnk_08124BFC:: @ 08124BFC .4byte gUnk_08124B38 diff --git a/data/const/code_08049D30.s b/data/const/code_08049D30.s index 27249f58..8f739504 100644 --- a/data/const/code_08049D30.s +++ b/data/const/code_08049D30.s @@ -19,7 +19,12 @@ gUnk_080D2C58:: @ 080D2C58 .4byte gUnk_080D3B48 .incbin "baserom.gba", 0x0D2CB0, 0x000000C .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D23EC, 0x000000C +.else .incbin "baserom.gba", 0x0D2CC0, 0x000000C +.endif .4byte gUnk_080D3AC8 .incbin "baserom.gba", 0x0D2CD0, 0x000000C .4byte gUnk_080FD1CC @@ -31,7 +36,12 @@ gUnk_080D2C58:: @ 080D2C58 .4byte gUnk_080FD468 .incbin "baserom.gba", 0x0D2D10, 0x000000C .4byte gUnk_080FD528 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D244C, 0x000000C +.else .incbin "baserom.gba", 0x0D2D20, 0x000000C +.endif .4byte gUnk_080D3388 .incbin "baserom.gba", 0x0D2D30, 0x000000C .4byte gUnk_080FD150 @@ -53,7 +63,12 @@ gUnk_080D2C58:: @ 080D2C58 .4byte gUnk_080FD150 .incbin "baserom.gba", 0x0D2DC0, 0x000000C .4byte gUnk_080FD268 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D24FC, 0x000000C +.else .incbin "baserom.gba", 0x0D2DD0, 0x000000C +.endif .4byte gUnk_080D35D8 .incbin "baserom.gba", 0x0D2DE0, 0x000000C .4byte gUnk_080FD150 @@ -72,7 +87,12 @@ gUnk_080D2E26:: @ 080D2E26 .4byte gUnk_080FD150 .incbin "baserom.gba", 0x0D2E40, 0x000000C .4byte gUnk_080FD2C0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D257C, 0x000000C +.else .incbin "baserom.gba", 0x0D2E50, 0x000000C +.endif .4byte gUnk_080FD2C8 .incbin "baserom.gba", 0x0D2E60, 0x000000C .4byte gUnk_080FD150 @@ -104,7 +124,12 @@ gUnk_080D2E26:: @ 080D2E26 .4byte gUnk_080FD150 .incbin "baserom.gba", 0x0D2F40, 0x000000C .4byte gUnk_080FD2C0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D267C, 0x000000C +.else .incbin "baserom.gba", 0x0D2F50, 0x000000C +.endif .4byte gUnk_080D3B88 .incbin "baserom.gba", 0x0D2F60, 0x000000C .4byte gUnk_080FD410 @@ -176,7 +201,12 @@ gUnk_080D2E26:: @ 080D2E26 .4byte gUnk_080D3A18 .incbin "baserom.gba", 0x0D3180, 0x000000C .4byte gUnk_080FD188 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D28BC, 0x000000C +.else .incbin "baserom.gba", 0x0D3190, 0x000000C +.endif .4byte gUnk_080FD1A0 .incbin "baserom.gba", 0x0D31A0, 0x000000C .4byte gUnk_080D34D8 @@ -186,9 +216,19 @@ gUnk_080D2E26:: @ 080D2E26 .4byte gUnk_080D3A98 .incbin "baserom.gba", 0x0D31D0, 0x000000C .4byte gUnk_080FD498 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D290C, 0x000000C +.else .incbin "baserom.gba", 0x0D31E0, 0x000000C +.endif .4byte gUnk_080FD4A4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D291C, 0x000000C +.else .incbin "baserom.gba", 0x0D31F0, 0x000000C +.endif .4byte gUnk_080D3B28 .incbin "baserom.gba", 0x0D3200, 0x000000C .4byte gUnk_080FD150 @@ -198,17 +238,39 @@ gUnk_080D2E26:: @ 080D2E26 .4byte gUnk_080FD54C .incbin "baserom.gba", 0x0D3230, 0x000000C .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D296C, 0x000000C +.else .incbin "baserom.gba", 0x0D3240, 0x000000C +.endif .4byte gUnk_080FD448 .incbin "baserom.gba", 0x0D3250, 0x000000C .4byte gUnk_080FD448 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D298C, 0x000000C + .4byte gUnk_080FD460 + .incbin "baserom_eu.gba", 0x0D299C, 0x000000C +.else .incbin "baserom.gba", 0x0D3260, 0x000000C .4byte gUnk_080FD458 .incbin "baserom.gba", 0x0D3270, 0x000000C +.endif .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D29AC, 0x000000C +.else .incbin "baserom.gba", 0x0D3280, 0x000000C +.endif .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D29BC, 0x000000C +.else .incbin "baserom.gba", 0x0D3290, 0x000000C +.endif .4byte gUnk_080FD54C .incbin "baserom.gba", 0x0D32A0, 0x000000C .4byte gUnk_080FD150 @@ -252,13 +314,33 @@ gUnk_080D3308:: @ 080D3308 gUnk_080D3388:: @ 080D3388 .incbin "baserom.gba", 0x0D3388, 0x0000004 .4byte gUnk_080FD1DC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D2ABC, 0x000000C +.else .incbin "baserom.gba", 0x0D3390, 0x000000C +.endif .4byte gUnk_080FD1E4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D2ACC, 0x000000C +.else .incbin "baserom.gba", 0x0D33A0, 0x000000C +.endif .4byte gUnk_080FD1E4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D2ADC, 0x000000C +.else .incbin "baserom.gba", 0x0D33B0, 0x000000C +.endif .4byte gUnk_080FD1EC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D2AEC, 0x0000008 +.else .incbin "baserom.gba", 0x0D33C0, 0x0000008 +.endif gUnk_080D33C8:: @ 080D33C8 .incbin "baserom.gba", 0x0D33C8, 0x0000004 @@ -339,9 +421,19 @@ gUnk_080D3508:: @ 080D3508 gUnk_080D3598:: @ 080D3598 .incbin "baserom.gba", 0x0D3598, 0x0000004 .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D2CCC, 0x000000C +.else .incbin "baserom.gba", 0x0D35A0, 0x000000C +.endif .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D2CDC, 0x000000C +.else .incbin "baserom.gba", 0x0D35B0, 0x000000C +.endif .4byte gUnk_080FD150 .incbin "baserom.gba", 0x0D35C0, 0x000000C .4byte gUnk_080FD21C @@ -519,9 +611,19 @@ gUnk_080D3978:: @ 080D3978 .4byte gUnk_080FD1C4 .incbin "baserom.gba", 0x0D39B0, 0x000000C .4byte gUnk_080FD1C4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D30EC, 0x000000C +.else .incbin "baserom.gba", 0x0D39C0, 0x000000C +.endif .4byte gUnk_080FD1C4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D30FC, 0x0000008 +.else .incbin "baserom.gba", 0x0D39D0, 0x0000008 +.endif gUnk_080D39D8:: @ 080D39D8 .incbin "baserom.gba", 0x0D39D8, 0x0000004 @@ -550,20 +652,50 @@ gUnk_080D3A18:: @ 080D3A18 gUnk_080D3A68:: @ 080D3A68 .incbin "baserom.gba", 0x0D3A68, 0x0000004 .4byte gUnk_080FD488 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D319C, 0x000000C +.else .incbin "baserom.gba", 0x0D3A70, 0x000000C +.endif .4byte gUnk_080FD488 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D31AC, 0x000000C +.else .incbin "baserom.gba", 0x0D3A80, 0x000000C +.endif .4byte gUnk_080FD488 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D31BC, 0x0000008 +.else .incbin "baserom.gba", 0x0D3A90, 0x0000008 +.endif gUnk_080D3A98:: @ 080D3A98 .incbin "baserom.gba", 0x0D3A98, 0x0000004 .4byte gUnk_080FD490 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D31CC, 0x000000C +.else .incbin "baserom.gba", 0x0D3AA0, 0x000000C +.endif .4byte gUnk_080FD490 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D31DC, 0x000000C +.else .incbin "baserom.gba", 0x0D3AB0, 0x000000C +.endif .4byte gUnk_080FD490 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D31EC, 0x0000008 +.else .incbin "baserom.gba", 0x0D3AC0, 0x0000008 +.endif gUnk_080D3AC8:: @ 080D3AC8 .incbin "baserom.gba", 0x0D3AC8, 0x0000004 @@ -586,9 +718,19 @@ gUnk_080D3AE8:: @ 080D3AE8 gUnk_080D3B28:: @ 080D3B28 .incbin "baserom.gba", 0x0D3B28, 0x0000004 .4byte gUnk_080FD168 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D325C, 0x000000C +.else .incbin "baserom.gba", 0x0D3B30, 0x000000C +.endif .4byte gUnk_080FD168 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D326C, 0x0000008 +.else .incbin "baserom.gba", 0x0D3B40, 0x0000008 +.endif gUnk_080D3B48:: @ 080D3B48 .incbin "baserom.gba", 0x0D3B48, 0x0000004 @@ -613,14 +755,24 @@ gUnk_080D3BA8:: @ 080D3BA8 .4byte gUnk_080FD258 .incbin "baserom.gba", 0x0D3BB0, 0x000000C .4byte gUnk_080FD258 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D32EC, 0x0000008 +.else .incbin "baserom.gba", 0x0D3BC0, 0x0000008 +.endif gUnk_080D3BC8:: @ 080D3BC8 .incbin "baserom.gba", 0x0D3BC8, 0x0000004 .4byte gUnk_080FD258 .incbin "baserom.gba", 0x0D3BD0, 0x000000C .4byte gUnk_080FD258 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0D330C, 0x0000008 +.else .incbin "baserom.gba", 0x0D3BE0, 0x0000008 +.endif gUnk_080D3BE8:: @ 080D3BE8 .4byte sub_08049E18 diff --git a/data/const/enemy/gyorgFemale.s b/data/const/enemy/gyorgFemale.s index f0c0b262..f77ba4cb 100644 --- a/data/const/enemy/gyorgFemale.s +++ b/data/const/enemy/gyorgFemale.s @@ -23,34 +23,50 @@ gUnk_080D1A94:: @ 080D1A94 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D1834, 0x0000018 +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0D11C0, 0x0000018 .else .incbin "baserom.gba", 0x0D1A94, 0x0000018 .endif +.endif gUnk_080D1AAC:: @ 080D1AAC .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D184C, 0x0000018 +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0D11D8, 0x0000018 .else .incbin "baserom.gba", 0x0D1AAC, 0x0000018 .endif +.endif gUnk_080D1AC4:: @ 080D1AC4 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D1864, 0x0000018 +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0D11F0, 0x0000018 .else .incbin "baserom.gba", 0x0D1AC4, 0x0000018 .endif +.endif gUnk_080D1ADC:: @ 080D1ADC .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D187C, 0x0000018 +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0D1208, 0x0000018 .else .incbin "baserom.gba", 0x0D1ADC, 0x0000018 .endif +.endif gUnk_080D1AF4:: @ 080D1AF4 .incbin "baserom.gba", 0x0D1AF4, 0x0000004 diff --git a/data/const/enemy/vaatiRebornEnemy.s b/data/const/enemy/vaatiRebornEnemy.s index 6192e31f..5398d7ab 100644 --- a/data/const/enemy/vaatiRebornEnemy.s +++ b/data/const/enemy/vaatiRebornEnemy.s @@ -39,7 +39,11 @@ gUnk_080D04C8:: @ 080D04C8 .incbin "baserom.gba", 0x0D04C8, 0x0000008 gUnk_080D04D0:: @ 080D04D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0CFBFC, 0x0000003 +.else .incbin "baserom.gba", 0x0D04D0, 0x0000003 +.endif gUnk_080D04D3:: @ 080D04D3 .incbin "baserom.gba", 0x0D04D3, 0x0000004 diff --git a/data/const/enemy/vaatiTransfigured.s b/data/const/enemy/vaatiTransfigured.s index a5163c24..57f0135d 100644 --- a/data/const/enemy/vaatiTransfigured.s +++ b/data/const/enemy/vaatiTransfigured.s @@ -5,7 +5,11 @@ .align 2 gUnk_080D0ABC:: @ 080D0ABC +.ifdef EU + .incbin "baserom_eu.gba", 0x0D01E8, 0x0000003 +.else .incbin "baserom.gba", 0x0D0ABC, 0x0000003 +.endif gUnk_080D0ABF:: @ 080D0ABF .incbin "baserom.gba", 0x0D0ABF, 0x0000009 diff --git a/data/const/manager/manager12.s b/data/const/manager/manager12.s index 69287c9f..c44bb7b7 100644 --- a/data/const/manager/manager12.s +++ b/data/const/manager/manager12.s @@ -20,16 +20,36 @@ gUnk_081083F2:: @ 081083F2 .incbin "baserom.gba", 0x1083F2, 0x0000016 gUnk_08108408:: @ 08108408 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107B5C, 0x000003C +.else .incbin "baserom.gba", 0x108408, 0x000003C +.endif gUnk_08108444:: @ 08108444 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107B98, 0x0000024 +.else .incbin "baserom.gba", 0x108444, 0x0000024 +.endif gUnk_08108468:: @ 08108468 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107BBC, 0x0000026 +.else .incbin "baserom.gba", 0x108468, 0x0000026 +.endif gUnk_0810848E:: @ 0810848E +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107BE2, 0x0000035 +.else .incbin "baserom.gba", 0x10848E, 0x0000035 +.endif gUnk_081084C3:: @ 081084C3 .incbin "baserom.gba", 0x1084C3, 0x0000005 diff --git a/data/const/manager/manager1A.s b/data/const/manager/manager1A.s index 08855570..99351064 100644 --- a/data/const/manager/manager1A.s +++ b/data/const/manager/manager1A.s @@ -9,37 +9,87 @@ gUnk_08108668:: @ 08108668 .4byte sub_0805B168 gUnk_08108670:: @ 08108670 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107DC4, 0x000000C +.else .incbin "baserom.gba", 0x108670, 0x000000C +.endif gUnk_0810867C:: @ 0810867C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107DD0, 0x000000C +.else .incbin "baserom.gba", 0x10867C, 0x000000C +.endif gUnk_08108688:: @ 08108688 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107DDC, 0x000000C +.else .incbin "baserom.gba", 0x108688, 0x000000C +.endif gUnk_08108694:: @ 08108694 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107DE8, 0x000000C +.else .incbin "baserom.gba", 0x108694, 0x000000C +.endif gUnk_081086A0:: @ 081086A0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107DF4, 0x0000009 +.else .incbin "baserom.gba", 0x1086A0, 0x0000009 +.endif gUnk_081086A9:: @ 081086A9 .incbin "baserom.gba", 0x1086A9, 0x0000003 gUnk_081086AC:: @ 081086AC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107E00, 0x000000C +.else .incbin "baserom.gba", 0x1086AC, 0x000000C +.endif gUnk_081086B8:: @ 081086B8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107E0C, 0x000000C +.else .incbin "baserom.gba", 0x1086B8, 0x000000C +.endif gUnk_081086C4:: @ 081086C4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107E18, 0x000000C +.else .incbin "baserom.gba", 0x1086C4, 0x000000C +.endif gUnk_081086D0:: @ 081086D0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107E24, 0x0000001 +.else .incbin "baserom.gba", 0x1086D0, 0x0000001 +.endif gUnk_081086D1:: @ 081086D1 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x107E25, 0x000000B +.else .incbin "baserom.gba", 0x1086D1, 0x000000B +.endif gUnk_081086DC:: @ 081086DC .incbin "baserom.gba", 0x1086DC, 0x0000008 diff --git a/data/const/manager/managerF.s b/data/const/manager/managerF.s index 4ecc53df..9bd68705 100644 --- a/data/const/manager/managerF.s +++ b/data/const/manager/managerF.s @@ -19,10 +19,12 @@ gUnk_08108314:: @ 08108314 .4byte sub_0805938C .4byte sub_08059424 .4byte sub_0805947C +.ifndef EU .4byte sub_080594DC .ifndef JP .4byte sub_08059548 .endif +.endif gUnk_08108354:: @ 08108354 .incbin "baserom.gba", 0x108354, 0x000002C diff --git a/data/const/npc/dog.s b/data/const/npc/dog.s index 2409e3fb..976c8da7 100644 --- a/data/const/npc/dog.s +++ b/data/const/npc/dog.s @@ -5,7 +5,12 @@ .align 2 gUnk_08111D58:: @ 08111D58 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1114A8, 0x0000030 +.else .incbin "baserom.gba", 0x111D58, 0x0000030 +.endif gUnk_08111D88:: @ 08111D88 .4byte sub_08069B44 diff --git a/data/const/npc/forestMinish.s b/data/const/npc/forestMinish.s index 2a6d36a7..f5b18042 100644 --- a/data/const/npc/forestMinish.s +++ b/data/const/npc/forestMinish.s @@ -69,18 +69,26 @@ gUnk_08109F6C:: @ 08109F6C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x109C30, 0x000002B +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x109C30, 0x000002B .else .incbin "baserom.gba", 0x109F6C, 0x000002B .endif +.endif gUnk_08109F97:: @ 08109F97 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x109C5B, 0x00000B1 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x109C5B, 0x00000B1 .else .incbin "baserom.gba", 0x109F97, 0x00000B1 .endif +.endif gUnk_0810A048:: @ 0810A048 .incbin "baserom.gba", 0x10A048, 0x0000024 diff --git a/data/const/npc/kid.s b/data/const/npc/kid.s index c85f402f..c7d074a3 100644 --- a/data/const/npc/kid.s +++ b/data/const/npc/kid.s @@ -54,9 +54,13 @@ gUnk_0810C00F:: @ 0810C00F .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x10BCD3, 0x0000091 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x10BCD3, 0x0000091 .else .incbin "baserom.gba", 0x10C00F, 0x0000091 .endif +.endif gUnk_0810C0A0:: @ 0810C0A0 .incbin "baserom.gba", 0x10C0A0, 0x0000024 diff --git a/data/const/npc/pita.s b/data/const/npc/pita.s index 138277fa..2c5b5c3a 100644 --- a/data/const/npc/pita.s +++ b/data/const/npc/pita.s @@ -5,7 +5,12 @@ .align 2 gUnk_0810C428:: @ 0810C428 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x10BB7C, 0x0000008 +.else .incbin "baserom.gba", 0x10C428, 0x0000008 +.endif gUnk_0810C430:: @ 0810C430 .incbin "baserom.gba", 0x10C430, 0x0000005 diff --git a/data/const/npc/stockwell.s b/data/const/npc/stockwell.s index 734e7c07..6a0066d0 100644 --- a/data/const/npc/stockwell.s +++ b/data/const/npc/stockwell.s @@ -4,8 +4,10 @@ .section .rodata .align 2 +.ifndef EU gUnk_0810FDA0:: @ 0810FDA0 .incbin "baserom.gba", 0x10FDA0, 0x0000004 +.endif gUnk_0810FDA4:: @ 0810FDA4 .4byte sub_08065080 diff --git a/data/const/npc/townsperson.s b/data/const/npc/townsperson.s index 498f4461..0e9ecd25 100644 --- a/data/const/npc/townsperson.s +++ b/data/const/npc/townsperson.s @@ -86,17 +86,25 @@ gUnk_0810B922:: @ 0810B922 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x10B5E6, 0x0000049 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x10B5E6, 0x0000049 .else .incbin "baserom.gba", 0x10B922, 0x0000049 .endif +.endif gUnk_0810B96B:: @ 0810B96B .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x10B62F, 0x0000065 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x10B62F, 0x0000065 .else .incbin "baserom.gba", 0x10B96B, 0x0000065 .endif +.endif gUnk_0810B9D0:: @ 0810B9D0 .incbin "baserom.gba", 0x10B9D0, 0x0000031 @@ -105,9 +113,13 @@ gUnk_0810BA01:: @ 0810BA01 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x10B6C5, 0x0000117 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x10B6C5, 0x0000117 .else .incbin "baserom.gba", 0x10BA01, 0x0000117 .endif +.endif gUnk_0810BB18:: @ 0810BB18 .incbin "baserom.gba", 0x10BB18, 0x0000044 @@ -121,9 +133,13 @@ gUnk_0810BBCC:: @ 0810BBCC .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x10B890, 0x000009C +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x10B890, 0x000009C .else .incbin "baserom.gba", 0x10BBCC, 0x000009C .endif +.endif gUnk_0810BC68:: @ 0810BC68 .incbin "baserom.gba", 0x10BC68, 0x0000098 diff --git a/data/const/npc/windTribespeople.s b/data/const/npc/windTribespeople.s index 0ec5129e..97202d52 100644 --- a/data/const/npc/windTribespeople.s +++ b/data/const/npc/windTribespeople.s @@ -49,17 +49,25 @@ gUnk_08113B28:: @ 08113B28 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x1137EC, 0x0000008 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x1137EC, 0x0000008 .else .incbin "baserom.gba", 0x113B28, 0x0000008 .endif +.endif gUnk_08113B30:: @ 08113B30 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x1137F4, 0x0000008 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x1137F4, 0x0000008 .else .incbin "baserom.gba", 0x113B30, 0x0000008 .endif +.endif gUnk_08113B38:: @ 08113B38 .incbin "baserom.gba", 0x113B38, 0x0000007 diff --git a/data/const/object/figurineDevice.s b/data/const/object/figurineDevice.s index 12e4f22a..f02bc42d 100644 --- a/data/const/object/figurineDevice.s +++ b/data/const/object/figurineDevice.s @@ -18,10 +18,20 @@ gUnk_08120AAC:: @ 08120AAC .incbin "baserom.gba", 0x120AAC, 0x0000008 gUnk_08120AB4:: @ 08120AB4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1201FC, 0x0000018 +.else .incbin "baserom.gba", 0x120AB4, 0x0000018 +.endif gUnk_08120ACC:: @ 08120ACC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x120214, 0x0000018 +.else .incbin "baserom.gba", 0x120ACC, 0x0000018 +.endif gUnk_08120AE4:: @ 08120AE4 .incbin "baserom.gba", 0x120AE4, 0x0000004 diff --git a/data/const/object/object3D.s b/data/const/object/object3D.s index 62cabd68..cdbdb782 100644 --- a/data/const/object/object3D.s +++ b/data/const/object/object3D.s @@ -10,4 +10,9 @@ gUnk_081216BC:: @ 081216BC .4byte sub_0808D064 gUnk_081216C8:: @ 081216C8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x120E10, 0x0000014 +.else .incbin "baserom.gba", 0x1216C8, 0x0000014 +.endif diff --git a/data/const/object/object9.s b/data/const/object/object9.s index fed6cf18..0c93d24b 100644 --- a/data/const/object/object9.s +++ b/data/const/object/object9.s @@ -5,7 +5,12 @@ .align 2 gUnk_0811F744:: @ 0811F744 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x11EE8C, 0x0000010 +.else .incbin "baserom.gba", 0x11F744, 0x0000010 +.endif gUnk_0811F754:: @ 0811F754 .4byte sub_08083914 diff --git a/data/const/object/object96.s b/data/const/object/object96.s index bfc43378..a510537d 100644 --- a/data/const/object/object96.s +++ b/data/const/object/object96.s @@ -22,8 +22,12 @@ gUnk_08123FB0:: @ 08123FB0 .4byte 0x00180000 .ifdef JP .4byte 0x000000CD +.else +.ifdef EU + .4byte 0x000000CD .else .4byte 0x000000d0 +.endif .endif .4byte sub_0809D91C .4byte 00000000 diff --git a/data/const/object/pinwheel.s b/data/const/object/pinwheel.s index e9db3be1..a142cf19 100644 --- a/data/const/object/pinwheel.s +++ b/data/const/object/pinwheel.s @@ -7,9 +7,13 @@ gUnk_08125050:: @ 08125050 .ifdef JP .incbin "baserom_jp.gba", 0x124D14, 0x000000C +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x124D14, 0x000000C .else .incbin "baserom.gba", 0x125050, 0x000000C .endif +.endif gUnk_0812505C:: @ 0812505C .4byte sub_080A23DC diff --git a/data/const/object/specialFx.s b/data/const/object/specialFx.s index 60155c44..3315d8af 100644 --- a/data/const/object/specialFx.s +++ b/data/const/object/specialFx.s @@ -8,7 +8,12 @@ gUnk_0811F960:: @ 0811F960 .incbin "baserom.gba", 0x11F960, 0x000009B gUnk_0811F9FB:: @ 0811F9FB +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x11F143, 0x00000C5 +.else .incbin "baserom.gba", 0x11F9FB, 0x00000C5 +.endif gUnk_0811FAC0:: @ 0811FAC0 .4byte sub_080844E0 diff --git a/data/data_080029B4.s b/data/data_080029B4.s index b5287f63..4e1e59ae 100644 --- a/data/data_080029B4.s +++ b/data/data_080029B4.s @@ -1226,10 +1226,12 @@ gSpritePtrs:: @ 080029B4 .4byte 00000000 .4byte 00000000 .4byte gUnk_08124BFC +.ifndef EU .4byte 00000000 .4byte 00000000 .4byte 00000000 .4byte gUnk_08124BFC +.endif .4byte 00000000 .4byte 00000000 .4byte 00000000 @@ -1365,6 +1367,7 @@ gSpritePtrs:: @ 080029B4 .4byte 00000000 .4byte 00000000 .4byte 00000000 + gUnk_08003DD4:: @ 08003DD4 .4byte gUnk_080FDFD8 .4byte gUnk_0811B578 diff --git a/data/data_080B2A70.s b/data/data_080B2A70.s index c9d0f236..70618027 100644 --- a/data/data_080B2A70.s +++ b/data/data_080B2A70.s @@ -19,7 +19,16 @@ gUnk_080B2A70:: @ 080B2A70 .4byte sub_08016B30 .4byte sub_08016B30 .4byte sub_08016B30 + + +@ TODO contains some pointers to iwram +.ifdef EU + .incbin "baserom_eu.gba", 0x0B21D0, 0x0000230 +.else .incbin "baserom.gba", 0x0B2AA8, 0x0000230 +.endif + + gUnk_080B2CD8:: @ 080B2CD8 gUnk_080B2CD8_2:: @ 080B2CD8 diff --git a/data/data_080B3740.s b/data/data_080B3740.s index 2313efa0..14dca41f 100644 --- a/data/data_080B3740.s +++ b/data/data_080B3740.s @@ -33,10 +33,20 @@ gUnk_080B3744:: @ 080B3744 .4byte sub_08017E88 gUnk_080B37A0:: @ 080B37A0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0B2EC8, 0x0000192 +.else .incbin "baserom.gba", 0x0B37A0, 0x0000192 +.endif gUnk_080B3932:: @ 080B3932 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0B305A, 0x00003E2 +.else .incbin "baserom.gba", 0x0B3932, 0x00003E2 +.endif gUnk_080B3D14:: @ 080B3D14 .incbin "baserom.gba", 0x0B3D14, 0x000000C @@ -45,6 +55,10 @@ gUnk_080B3D20:: @ 080B3D20 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0B3AC0, 0x00000B0 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0B3AC0, 0x00000B0 .else .incbin "baserom.gba", 0x0B3D20, 0x00000B0 .endif +.endif diff --git a/data/data_080B4410.s b/data/data_080B4410.s index 74f3323f..724ca6e2 100644 --- a/data/data_080B4410.s +++ b/data/data_080B4410.s @@ -8,9 +8,13 @@ gUnk_080B4410:: @ 080B4410 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0B41B0, 0x0000048 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0B41B0, 0x0000048 .else .incbin "baserom.gba", 0x0B4410, 0x0000048 .endif +.endif gUnk_080B4458:: @ 080B4458 .4byte sub_08019698 @@ -76,16 +80,33 @@ gUnk_080B4550:: @ 080B4550 .4byte gUnk_080B4540 gUnk_080B4568:: @ 080B4568 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3C90, 0x0000008 +.else .incbin "baserom.gba", 0x0B4568, 0x0000008 +.endif gUnk_080B4570:: @ 080B4570 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3C98, 0x0000008 +.else .incbin "baserom.gba", 0x0B4570, 0x0000008 +.endif gUnk_080B4578:: @ 080B4578 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3CA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4578, 0x0000008 +.endif + gUnk_080B4580:: @ 080B4580 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3CA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4580, 0x0000008 +.endif gUnk_080B4588:: @ 080B4588 .4byte gUnk_080B4568 @@ -98,16 +119,32 @@ gUnk_080B4588:: @ 080B4588 .incbin "baserom.gba", 0x0B45A4, 0x000000C gUnk_080B45B0:: @ 080B45B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3CD8, 0x0000008 +.else .incbin "baserom.gba", 0x0B45B0, 0x0000008 +.endif gUnk_080B45B8:: @ 080B45B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3CE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B45B8, 0x0000008 +.endif gUnk_080B45C0:: @ 080B45C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3CE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B45C0, 0x0000008 +.endif gUnk_080B45C8:: @ 080B45C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3CF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B45C8, 0x0000008 +.endif gUnk_080B45D0:: @ 080B45D0 .4byte gUnk_080B45B0 @@ -120,16 +157,32 @@ gUnk_080B45D0:: @ 080B45D0 .incbin "baserom.gba", 0x0B45EC, 0x000000C gUnk_080B45F8:: @ 080B45F8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3D20, 0x0000008 +.else .incbin "baserom.gba", 0x0B45F8, 0x0000008 +.endif gUnk_080B4600:: @ 080B4600 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3D28, 0x0000008 +.else .incbin "baserom.gba", 0x0B4600, 0x0000008 +.endif gUnk_080B4608:: @ 080B4608 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3D30, 0x0000008 +.else .incbin "baserom.gba", 0x0B4608, 0x0000008 +.endif gUnk_080B4610:: @ 080B4610 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3D38, 0x0000008 +.else .incbin "baserom.gba", 0x0B4610, 0x0000008 +.endif gUnk_080B4618:: @ 080B4618 .4byte gUnk_080B45F8 @@ -142,16 +195,32 @@ gUnk_080B4618:: @ 080B4618 .incbin "baserom.gba", 0x0B4634, 0x000000C gUnk_080B4640:: @ 080B4640 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3D68, 0x0000008 +.else .incbin "baserom.gba", 0x0B4640, 0x0000008 +.endif gUnk_080B4648:: @ 080B4648 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3D70, 0x0000008 +.else .incbin "baserom.gba", 0x0B4648, 0x0000008 +.endif gUnk_080B4650:: @ 080B4650 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3D78, 0x0000008 +.else .incbin "baserom.gba", 0x0B4650, 0x0000008 +.endif gUnk_080B4658:: @ 080B4658 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3D80, 0x0000008 +.else .incbin "baserom.gba", 0x0B4658, 0x0000008 +.endif gUnk_080B4660:: @ 080B4660 .4byte gUnk_080B4640 @@ -164,16 +233,32 @@ gUnk_080B4660:: @ 080B4660 .incbin "baserom.gba", 0x0B467C, 0x000000C gUnk_080B4688:: @ 080B4688 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3DB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4688, 0x0000008 +.endif gUnk_080B4690:: @ 080B4690 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3DB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4690, 0x0000008 +.endif gUnk_080B4698:: @ 080B4698 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3DC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4698, 0x0000008 +.endif gUnk_080B46A0:: @ 080B46A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3DC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B46A0, 0x0000008 +.endif gUnk_080B46A8:: @ 080B46A8 .4byte gUnk_080B4688 @@ -186,16 +271,32 @@ gUnk_080B46A8:: @ 080B46A8 .incbin "baserom.gba", 0x0B46C4, 0x000000C gUnk_080B46D0:: @ 080B46D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3DF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B46D0, 0x0000008 +.endif gUnk_080B46D8:: @ 080B46D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E00, 0x0000008 +.else .incbin "baserom.gba", 0x0B46D8, 0x0000008 +.endif gUnk_080B46E0:: @ 080B46E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E08, 0x0000008 +.else .incbin "baserom.gba", 0x0B46E0, 0x0000008 +.endif gUnk_080B46E8:: @ 080B46E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E10, 0x0000008 +.else .incbin "baserom.gba", 0x0B46E8, 0x0000008 +.endif gUnk_080B46F0:: @ 080B46F0 .4byte gUnk_080B46D0 @@ -208,16 +309,32 @@ gUnk_080B46F0:: @ 080B46F0 .incbin "baserom.gba", 0x0B470C, 0x000000C gUnk_080B4718:: @ 080B4718 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E40, 0x0000008 +.else .incbin "baserom.gba", 0x0B4718, 0x0000008 +.endif gUnk_080B4720:: @ 080B4720 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E48, 0x0000008 +.else .incbin "baserom.gba", 0x0B4720, 0x0000008 +.endif gUnk_080B4728:: @ 080B4728 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E50, 0x0000008 +.else .incbin "baserom.gba", 0x0B4728, 0x0000008 +.endif gUnk_080B4730:: @ 080B4730 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E58, 0x0000008 +.else .incbin "baserom.gba", 0x0B4730, 0x0000008 +.endif gUnk_080B4738:: @ 080B4738 .4byte gUnk_080B4718 @@ -230,16 +347,32 @@ gUnk_080B4738:: @ 080B4738 .incbin "baserom.gba", 0x0B4754, 0x000000C gUnk_080B4760:: @ 080B4760 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E88, 0x0000008 +.else .incbin "baserom.gba", 0x0B4760, 0x0000008 +.endif gUnk_080B4768:: @ 080B4768 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E90, 0x0000008 +.else .incbin "baserom.gba", 0x0B4768, 0x0000008 +.endif gUnk_080B4770:: @ 080B4770 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3E98, 0x0000008 +.else .incbin "baserom.gba", 0x0B4770, 0x0000008 +.endif gUnk_080B4778:: @ 080B4778 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3EA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4778, 0x0000008 +.endif gUnk_080B4780:: @ 080B4780 .4byte gUnk_080B4760 @@ -252,16 +385,32 @@ gUnk_080B4780:: @ 080B4780 .incbin "baserom.gba", 0x0B479C, 0x000000C gUnk_080B47A8:: @ 080B47A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3ED0, 0x0000008 +.else .incbin "baserom.gba", 0x0B47A8, 0x0000008 +.endif gUnk_080B47B0:: @ 080B47B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3ED8, 0x0000008 +.else .incbin "baserom.gba", 0x0B47B0, 0x0000008 +.endif gUnk_080B47B8:: @ 080B47B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3EE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B47B8, 0x0000008 +.endif gUnk_080B47C0:: @ 080B47C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3EE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B47C0, 0x0000008 +.endif gUnk_080B47C8:: @ 080B47C8 .4byte gUnk_080B47A8 @@ -274,16 +423,32 @@ gUnk_080B47C8:: @ 080B47C8 .incbin "baserom.gba", 0x0B47E4, 0x000000C gUnk_080B47F0:: @ 080B47F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3F18, 0x0000008 +.else .incbin "baserom.gba", 0x0B47F0, 0x0000008 +.endif gUnk_080B47F8:: @ 080B47F8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3F20, 0x0000008 +.else .incbin "baserom.gba", 0x0B47F8, 0x0000008 +.endif gUnk_080B4800:: @ 080B4800 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3F28, 0x0000008 +.else .incbin "baserom.gba", 0x0B4800, 0x0000008 +.endif gUnk_080B4808:: @ 080B4808 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3F30, 0x0000008 +.else .incbin "baserom.gba", 0x0B4808, 0x0000008 +.endif gUnk_080B4810:: @ 080B4810 .4byte gUnk_080B47F0 @@ -296,16 +461,32 @@ gUnk_080B4810:: @ 080B4810 .incbin "baserom.gba", 0x0B482C, 0x000000C gUnk_080B4838:: @ 080B4838 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3F60, 0x0000010 +.else .incbin "baserom.gba", 0x0B4838, 0x0000010 +.endif gUnk_080B4848:: @ 080B4848 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3F70, 0x0000010 +.else .incbin "baserom.gba", 0x0B4848, 0x0000010 +.endif gUnk_080B4858:: @ 080B4858 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3F80, 0x0000010 +.else .incbin "baserom.gba", 0x0B4858, 0x0000010 +.endif gUnk_080B4868:: @ 080B4868 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3F90, 0x0000010 +.else .incbin "baserom.gba", 0x0B4868, 0x0000010 +.endif gUnk_080B4878:: @ 080B4878 .4byte gUnk_080B4838 @@ -318,22 +499,46 @@ gUnk_080B4878:: @ 080B4878 .incbin "baserom.gba", 0x0B4894, 0x000000C gUnk_080B48A0:: @ 080B48A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3FC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B48A0, 0x0000008 +.endif gUnk_080B48A8:: @ 080B48A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3FD0, 0x0000008 +.else .incbin "baserom.gba", 0x0B48A8, 0x0000008 +.endif gUnk_080B48B0:: @ 080B48B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3FD8, 0x0000008 +.else .incbin "baserom.gba", 0x0B48B0, 0x0000008 +.endif gUnk_080B48B8:: @ 080B48B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3FE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B48B8, 0x0000008 +.endif gUnk_080B48C0:: @ 080B48C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3FE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B48C0, 0x0000008 +.endif gUnk_080B48C8:: @ 080B48C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B3FF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B48C8, 0x0000008 +.endif gUnk_080B48D0:: @ 080B48D0 .4byte gUnk_080B48A0 @@ -350,22 +555,46 @@ gUnk_080B48D0:: @ 080B48D0 .incbin "baserom.gba", 0x0B48FC, 0x000000C gUnk_080B4908:: @ 080B4908 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4030, 0x0000008 +.else .incbin "baserom.gba", 0x0B4908, 0x0000008 +.endif gUnk_080B4910:: @ 080B4910 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4038, 0x0000008 +.else .incbin "baserom.gba", 0x0B4910, 0x0000008 +.endif gUnk_080B4918:: @ 080B4918 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4040, 0x0000008 +.else .incbin "baserom.gba", 0x0B4918, 0x0000008 +.endif gUnk_080B4920:: @ 080B4920 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4048, 0x0000008 +.else .incbin "baserom.gba", 0x0B4920, 0x0000008 +.endif gUnk_080B4928:: @ 080B4928 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4050, 0x0000008 +.else .incbin "baserom.gba", 0x0B4928, 0x0000008 +.endif gUnk_080B4930:: @ 080B4930 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4058, 0x0000008 +.else .incbin "baserom.gba", 0x0B4930, 0x0000008 +.endif gUnk_080B4938:: @ 080B4938 .4byte gUnk_080B4908 @@ -382,22 +611,46 @@ gUnk_080B4938:: @ 080B4938 .incbin "baserom.gba", 0x0B4964, 0x000000C gUnk_080B4970:: @ 080B4970 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4098, 0x0000008 +.else .incbin "baserom.gba", 0x0B4970, 0x0000008 +.endif gUnk_080B4978:: @ 080B4978 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B40A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4978, 0x0000008 +.endif gUnk_080B4980:: @ 080B4980 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B40A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4980, 0x0000008 +.endif gUnk_080B4988:: @ 080B4988 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B40B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4988, 0x0000008 +.endif gUnk_080B4990:: @ 080B4990 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B40B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4990, 0x0000008 +.endif gUnk_080B4998:: @ 080B4998 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B40C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4998, 0x0000008 +.endif gUnk_080B49A0:: @ 080B49A0 .4byte gUnk_080B4970 @@ -414,16 +667,32 @@ gUnk_080B49A0:: @ 080B49A0 .incbin "baserom.gba", 0x0B49CC, 0x000000C gUnk_080B49D8:: @ 080B49D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4100, 0x0000008 +.else .incbin "baserom.gba", 0x0B49D8, 0x0000008 +.endif gUnk_080B49E0:: @ 080B49E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4108, 0x0000008 +.else .incbin "baserom.gba", 0x0B49E0, 0x0000008 +.endif gUnk_080B49E8:: @ 080B49E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4110, 0x0000008 +.else .incbin "baserom.gba", 0x0B49E8, 0x0000008 +.endif gUnk_080B49F0:: @ 080B49F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4118, 0x0000008 +.else .incbin "baserom.gba", 0x0B49F0, 0x0000008 +.endif gUnk_080B49F8:: @ 080B49F8 .4byte gUnk_080B49D8 @@ -436,16 +705,32 @@ gUnk_080B49F8:: @ 080B49F8 .incbin "baserom.gba", 0x0B4A14, 0x000000C gUnk_080B4A20:: @ 080B4A20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4148, 0x0000008 +.else .incbin "baserom.gba", 0x0B4A20, 0x0000008 +.endif gUnk_080B4A28:: @ 080B4A28 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4150, 0x0000008 +.else .incbin "baserom.gba", 0x0B4A28, 0x0000008 +.endif gUnk_080B4A30:: @ 080B4A30 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4158, 0x0000008 +.else .incbin "baserom.gba", 0x0B4A30, 0x0000008 +.endif gUnk_080B4A38:: @ 080B4A38 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4160, 0x0000008 +.else .incbin "baserom.gba", 0x0B4A38, 0x0000008 +.endif gUnk_080B4A40:: @ 080B4A40 .4byte gUnk_080B4A20 @@ -458,16 +743,32 @@ gUnk_080B4A40:: @ 080B4A40 .incbin "baserom.gba", 0x0B4A5C, 0x000000C gUnk_080B4A68:: @ 080B4A68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4190, 0x0000008 +.else .incbin "baserom.gba", 0x0B4A68, 0x0000008 +.endif gUnk_080B4A70:: @ 080B4A70 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4198, 0x0000008 +.else .incbin "baserom.gba", 0x0B4A70, 0x0000008 +.endif gUnk_080B4A78:: @ 080B4A78 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B41A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4A78, 0x0000008 +.endif gUnk_080B4A80:: @ 080B4A80 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B41A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4A80, 0x0000008 +.endif gUnk_080B4A88:: @ 080B4A88 .4byte gUnk_080B4A68 @@ -480,16 +781,32 @@ gUnk_080B4A88:: @ 080B4A88 .incbin "baserom.gba", 0x0B4AA4, 0x000000C gUnk_080B4AB0:: @ 080B4AB0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B41D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4AB0, 0x0000008 +.endif gUnk_080B4AB8:: @ 080B4AB8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B41E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4AB8, 0x0000008 +.endif gUnk_080B4AC0:: @ 080B4AC0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B41E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4AC0, 0x0000008 +.endif gUnk_080B4AC8:: @ 080B4AC8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B41F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4AC8, 0x0000008 +.endif gUnk_080B4AD0:: @ 080B4AD0 .4byte gUnk_080B4AB0 @@ -502,16 +819,32 @@ gUnk_080B4AD0:: @ 080B4AD0 .incbin "baserom.gba", 0x0B4AEC, 0x000000C gUnk_080B4AF8:: @ 080B4AF8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4220, 0x0000008 +.else .incbin "baserom.gba", 0x0B4AF8, 0x0000008 +.endif gUnk_080B4B00:: @ 080B4B00 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4228, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B00, 0x0000008 +.endif gUnk_080B4B08:: @ 080B4B08 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4230, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B08, 0x0000008 +.endif gUnk_080B4B10:: @ 080B4B10 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4238, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B10, 0x0000008 +.endif gUnk_080B4B18:: @ 080B4B18 .4byte gUnk_080B4AF8 @@ -524,16 +857,32 @@ gUnk_080B4B18:: @ 080B4B18 .incbin "baserom.gba", 0x0B4B34, 0x000000C gUnk_080B4B40:: @ 080B4B40 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4268, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B40, 0x0000008 +.endif gUnk_080B4B48:: @ 080B4B48 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4270, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B48, 0x0000008 +.endif gUnk_080B4B50:: @ 080B4B50 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4278, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B50, 0x0000008 +.endif gUnk_080B4B58:: @ 080B4B58 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4280, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B58, 0x0000008 +.endif gUnk_080B4B60:: @ 080B4B60 .4byte gUnk_080B4B40 @@ -546,16 +895,32 @@ gUnk_080B4B60:: @ 080B4B60 .incbin "baserom.gba", 0x0B4B7C, 0x000000C gUnk_080B4B88:: @ 080B4B88 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B42B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B88, 0x0000008 +.endif gUnk_080B4B90:: @ 080B4B90 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B42B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B90, 0x0000008 +.endif gUnk_080B4B98:: @ 080B4B98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B42C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4B98, 0x0000008 +.endif gUnk_080B4BA0:: @ 080B4BA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B42C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4BA0, 0x0000008 +.endif gUnk_080B4BA8:: @ 080B4BA8 .4byte gUnk_080B4B88 @@ -568,16 +933,32 @@ gUnk_080B4BA8:: @ 080B4BA8 .incbin "baserom.gba", 0x0B4BC4, 0x000000C gUnk_080B4BD0:: @ 080B4BD0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B42F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4BD0, 0x0000008 +.endif gUnk_080B4BD8:: @ 080B4BD8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4300, 0x0000008 +.else .incbin "baserom.gba", 0x0B4BD8, 0x0000008 +.endif gUnk_080B4BE0:: @ 080B4BE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4308, 0x0000008 +.else .incbin "baserom.gba", 0x0B4BE0, 0x0000008 +.endif gUnk_080B4BE8:: @ 080B4BE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4310, 0x0000008 +.else .incbin "baserom.gba", 0x0B4BE8, 0x0000008 +.endif gUnk_080B4BF0:: @ 080B4BF0 .4byte gUnk_080B4BD0 @@ -590,16 +971,32 @@ gUnk_080B4BF0:: @ 080B4BF0 .incbin "baserom.gba", 0x0B4C0C, 0x000000C gUnk_080B4C18:: @ 080B4C18 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4340, 0x0000008 +.else .incbin "baserom.gba", 0x0B4C18, 0x0000008 +.endif gUnk_080B4C20:: @ 080B4C20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4348, 0x0000008 +.else .incbin "baserom.gba", 0x0B4C20, 0x0000008 +.endif gUnk_080B4C28:: @ 080B4C28 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4350, 0x0000008 +.else .incbin "baserom.gba", 0x0B4C28, 0x0000008 +.endif gUnk_080B4C30:: @ 080B4C30 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4358, 0x0000008 +.else .incbin "baserom.gba", 0x0B4C30, 0x0000008 +.endif gUnk_080B4C38:: @ 080B4C38 .4byte gUnk_080B4C18 @@ -612,16 +1009,32 @@ gUnk_080B4C38:: @ 080B4C38 .incbin "baserom.gba", 0x0B4C54, 0x000000C gUnk_080B4C60:: @ 080B4C60 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4388, 0x0000008 +.else .incbin "baserom.gba", 0x0B4C60, 0x0000008 +.endif gUnk_080B4C68:: @ 080B4C68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4390, 0x0000008 +.else .incbin "baserom.gba", 0x0B4C68, 0x0000008 +.endif gUnk_080B4C70:: @ 080B4C70 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4398, 0x0000008 +.else .incbin "baserom.gba", 0x0B4C70, 0x0000008 +.endif gUnk_080B4C78:: @ 080B4C78 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B43A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4C78, 0x0000008 +.endif gUnk_080B4C80:: @ 080B4C80 .4byte gUnk_080B4C60 @@ -634,16 +1047,32 @@ gUnk_080B4C80:: @ 080B4C80 .incbin "baserom.gba", 0x0B4C9C, 0x000000C gUnk_080B4CA8:: @ 080B4CA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B43D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4CA8, 0x0000008 +.endif gUnk_080B4CB0:: @ 080B4CB0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B43D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4CB0, 0x0000008 +.endif gUnk_080B4CB8:: @ 080B4CB8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B43E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4CB8, 0x0000008 +.endif gUnk_080B4CC0:: @ 080B4CC0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B43E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4CC0, 0x0000008 +.endif gUnk_080B4CC8:: @ 080B4CC8 .4byte gUnk_080B4CA8 @@ -668,52 +1097,116 @@ gUnk_080B4D10:: @ 080B4D10 .incbin "baserom.gba", 0x0B4D1C, 0x000000C gUnk_080B4D28:: @ 080B4D28 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4450, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D28, 0x0000008 +.endif gUnk_080B4D30:: @ 080B4D30 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4458, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D30, 0x0000008 +.endif gUnk_080B4D38:: @ 080B4D38 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4460, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D38, 0x0000008 +.endif gUnk_080B4D40:: @ 080B4D40 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4468, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D40, 0x0000008 +.endif gUnk_080B4D48:: @ 080B4D48 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4470, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D48, 0x0000008 +.endif gUnk_080B4D50:: @ 080B4D50 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4478, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D50, 0x0000008 +.endif gUnk_080B4D58:: @ 080B4D58 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4480, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D58, 0x0000008 +.endif gUnk_080B4D60:: @ 080B4D60 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4488, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D60, 0x0000008 +.endif gUnk_080B4D68:: @ 080B4D68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4490, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D68, 0x0000008 +.endif gUnk_080B4D70:: @ 080B4D70 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4498, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D70, 0x0000008 +.endif gUnk_080B4D78:: @ 080B4D78 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B44A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D78, 0x0000008 +.endif gUnk_080B4D80:: @ 080B4D80 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B44A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D80, 0x0000008 +.endif gUnk_080B4D88:: @ 080B4D88 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B44B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D88, 0x0000008 +.endif gUnk_080B4D90:: @ 080B4D90 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B44B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D90, 0x0000008 +.endif gUnk_080B4D98:: @ 080B4D98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B44C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4D98, 0x0000008 +.endif gUnk_080B4DA0:: @ 080B4DA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B44C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4DA0, 0x0000008 +.endif gUnk_080B4DA8:: @ 080B4DA8 .4byte gUnk_080B4D28 @@ -750,16 +1243,32 @@ gUnk_080B4DA8:: @ 080B4DA8 .incbin "baserom.gba", 0x0B4E24, 0x000000C gUnk_080B4E30:: @ 080B4E30 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4558, 0x0000008 +.else .incbin "baserom.gba", 0x0B4E30, 0x0000008 +.endif gUnk_080B4E38:: @ 080B4E38 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4560, 0x0000008 +.else .incbin "baserom.gba", 0x0B4E38, 0x0000008 +.endif gUnk_080B4E40:: @ 080B4E40 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4568, 0x0000008 +.else .incbin "baserom.gba", 0x0B4E40, 0x0000008 +.endif gUnk_080B4E48:: @ 080B4E48 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4570, 0x0000008 +.else .incbin "baserom.gba", 0x0B4E48, 0x0000008 +.endif gUnk_080B4E50:: @ 080B4E50 .4byte gUnk_080B4E30 @@ -772,16 +1281,32 @@ gUnk_080B4E50:: @ 080B4E50 .incbin "baserom.gba", 0x0B4E6C, 0x000000C gUnk_080B4E78:: @ 080B4E78 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B45A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4E78, 0x0000008 +.endif gUnk_080B4E80:: @ 080B4E80 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B45A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4E80, 0x0000008 +.endif gUnk_080B4E88:: @ 080B4E88 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B45B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4E88, 0x0000008 +.endif gUnk_080B4E90:: @ 080B4E90 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B45B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4E90, 0x0000008 +.endif gUnk_080B4E98:: @ 080B4E98 .4byte gUnk_080B4E78 @@ -794,16 +1319,32 @@ gUnk_080B4E98:: @ 080B4E98 .incbin "baserom.gba", 0x0B4EB4, 0x000000C gUnk_080B4EC0:: @ 080B4EC0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B45E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4EC0, 0x0000008 +.endif gUnk_080B4EC8:: @ 080B4EC8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B45F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B4EC8, 0x0000008 +.endif gUnk_080B4ED0:: @ 080B4ED0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B45F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B4ED0, 0x0000008 +.endif gUnk_080B4ED8:: @ 080B4ED8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4600, 0x0000008 +.else .incbin "baserom.gba", 0x0B4ED8, 0x0000008 +.endif gUnk_080B4EE0:: @ 080B4EE0 .4byte gUnk_080B4EC0 @@ -816,16 +1357,32 @@ gUnk_080B4EE0:: @ 080B4EE0 .incbin "baserom.gba", 0x0B4EFC, 0x000000C gUnk_080B4F08:: @ 080B4F08 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4630, 0x0000008 +.else .incbin "baserom.gba", 0x0B4F08, 0x0000008 +.endif gUnk_080B4F10:: @ 080B4F10 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4638, 0x0000008 +.else .incbin "baserom.gba", 0x0B4F10, 0x0000008 +.endif gUnk_080B4F18:: @ 080B4F18 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4640, 0x0000008 +.else .incbin "baserom.gba", 0x0B4F18, 0x0000008 +.endif gUnk_080B4F20:: @ 080B4F20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4648, 0x0000008 +.else .incbin "baserom.gba", 0x0B4F20, 0x0000008 +.endif gUnk_080B4F28:: @ 080B4F28 .4byte gUnk_080B4F08 @@ -838,16 +1395,32 @@ gUnk_080B4F28:: @ 080B4F28 .incbin "baserom.gba", 0x0B4F44, 0x000000C gUnk_080B4F50:: @ 080B4F50 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4678, 0x0000008 +.else .incbin "baserom.gba", 0x0B4F50, 0x0000008 +.endif gUnk_080B4F58:: @ 080B4F58 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4680, 0x0000008 +.else .incbin "baserom.gba", 0x0B4F58, 0x0000008 +.endif gUnk_080B4F60:: @ 080B4F60 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4688, 0x0000008 +.else .incbin "baserom.gba", 0x0B4F60, 0x0000008 +.endif gUnk_080B4F68:: @ 080B4F68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4690, 0x0000008 +.else .incbin "baserom.gba", 0x0B4F68, 0x0000008 +.endif gUnk_080B4F70:: @ 080B4F70 .4byte gUnk_080B4F50 @@ -860,16 +1433,32 @@ gUnk_080B4F70:: @ 080B4F70 .incbin "baserom.gba", 0x0B4F8C, 0x000000C gUnk_080B4F98:: @ 080B4F98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B46C0, 0x0000010 +.else .incbin "baserom.gba", 0x0B4F98, 0x0000010 +.endif gUnk_080B4FA8:: @ 080B4FA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B46D0, 0x0000010 +.else .incbin "baserom.gba", 0x0B4FA8, 0x0000010 +.endif gUnk_080B4FB8:: @ 080B4FB8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B46E0, 0x0000010 +.else .incbin "baserom.gba", 0x0B4FB8, 0x0000010 +.endif gUnk_080B4FC8:: @ 080B4FC8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B46F0, 0x0000010 +.else .incbin "baserom.gba", 0x0B4FC8, 0x0000010 +.endif gUnk_080B4FD8:: @ 080B4FD8 .4byte gUnk_080B4F98 @@ -882,16 +1471,32 @@ gUnk_080B4FD8:: @ 080B4FD8 .incbin "baserom.gba", 0x0B4FF4, 0x000000C gUnk_080B5000:: @ 080B5000 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4728, 0x0000008 +.else .incbin "baserom.gba", 0x0B5000, 0x0000008 +.endif gUnk_080B5008:: @ 080B5008 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4730, 0x0000008 +.else .incbin "baserom.gba", 0x0B5008, 0x0000008 +.endif gUnk_080B5010:: @ 080B5010 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4738, 0x0000008 +.else .incbin "baserom.gba", 0x0B5010, 0x0000008 +.endif gUnk_080B5018:: @ 080B5018 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4740, 0x0000008 +.else .incbin "baserom.gba", 0x0B5018, 0x0000008 +.endif gUnk_080B5020:: @ 080B5020 .4byte gUnk_080B5000 @@ -904,52 +1509,116 @@ gUnk_080B5020:: @ 080B5020 .incbin "baserom.gba", 0x0B503C, 0x000000C gUnk_080B5048:: @ 080B5048 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4770, 0x0000008 +.else .incbin "baserom.gba", 0x0B5048, 0x0000008 +.endif gUnk_080B5050:: @ 080B5050 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4778, 0x0000008 +.else .incbin "baserom.gba", 0x0B5050, 0x0000008 +.endif gUnk_080B5058:: @ 080B5058 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4780, 0x0000008 +.else .incbin "baserom.gba", 0x0B5058, 0x0000008 +.endif gUnk_080B5060:: @ 080B5060 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4788, 0x0000008 +.else .incbin "baserom.gba", 0x0B5060, 0x0000008 +.endif gUnk_080B5068:: @ 080B5068 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4790, 0x0000008 +.else .incbin "baserom.gba", 0x0B5068, 0x0000008 +.endif gUnk_080B5070:: @ 080B5070 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4798, 0x0000008 +.else .incbin "baserom.gba", 0x0B5070, 0x0000008 +.endif gUnk_080B5078:: @ 080B5078 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5078, 0x0000008 +.endif gUnk_080B5080:: @ 080B5080 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5080, 0x0000008 +.endif gUnk_080B5088:: @ 080B5088 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5088, 0x0000008 +.endif gUnk_080B5090:: @ 080B5090 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5090, 0x0000008 +.endif gUnk_080B5098:: @ 080B5098 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5098, 0x0000008 +.endif gUnk_080B50A0:: @ 080B50A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B50A0, 0x0000008 +.endif gUnk_080B50A8:: @ 080B50A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B50A8, 0x0000008 +.endif gUnk_080B50B0:: @ 080B50B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B50B0, 0x0000008 +.endif gUnk_080B50B8:: @ 080B50B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B50B8, 0x0000008 +.endif gUnk_080B50C0:: @ 080B50C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B47E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B50C0, 0x0000008 +.endif gUnk_080B50C8:: @ 080B50C8 .4byte gUnk_080B5048 @@ -986,16 +1655,32 @@ gUnk_080B50C8:: @ 080B50C8 .incbin "baserom.gba", 0x0B5144, 0x000000C gUnk_080B5150:: @ 080B5150 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4878, 0x0000008 +.else .incbin "baserom.gba", 0x0B5150, 0x0000008 +.endif gUnk_080B5158:: @ 080B5158 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4880, 0x0000008 +.else .incbin "baserom.gba", 0x0B5158, 0x0000008 +.endif gUnk_080B5160:: @ 080B5160 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4888, 0x0000008 +.else .incbin "baserom.gba", 0x0B5160, 0x0000008 +.endif gUnk_080B5168:: @ 080B5168 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4890, 0x0000008 +.else .incbin "baserom.gba", 0x0B5168, 0x0000008 +.endif gUnk_080B5170:: @ 080B5170 .4byte gUnk_080B5150 @@ -1008,16 +1693,32 @@ gUnk_080B5170:: @ 080B5170 .incbin "baserom.gba", 0x0B518C, 0x000000C gUnk_080B5198:: @ 080B5198 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B48C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5198, 0x0000008 +.endif gUnk_080B51A0:: @ 080B51A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B48C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B51A0, 0x0000008 +.endif gUnk_080B51A8:: @ 080B51A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B48D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B51A8, 0x0000008 +.endif gUnk_080B51B0:: @ 080B51B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B48D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B51B0, 0x0000008 +.endif gUnk_080B51B8:: @ 080B51B8 .4byte gUnk_080B5198 @@ -1030,52 +1731,116 @@ gUnk_080B51B8:: @ 080B51B8 .incbin "baserom.gba", 0x0B51D4, 0x000000C gUnk_080B51E0:: @ 080B51E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4908, 0x0000008 +.else .incbin "baserom.gba", 0x0B51E0, 0x0000008 +.endif gUnk_080B51E8:: @ 080B51E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4910, 0x0000008 +.else .incbin "baserom.gba", 0x0B51E8, 0x0000008 +.endif gUnk_080B51F0:: @ 080B51F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4918, 0x0000008 +.else .incbin "baserom.gba", 0x0B51F0, 0x0000008 +.endif gUnk_080B51F8:: @ 080B51F8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4920, 0x0000008 +.else .incbin "baserom.gba", 0x0B51F8, 0x0000008 +.endif gUnk_080B5200:: @ 080B5200 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4928, 0x0000008 +.else .incbin "baserom.gba", 0x0B5200, 0x0000008 +.endif gUnk_080B5208:: @ 080B5208 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4930, 0x0000008 +.else .incbin "baserom.gba", 0x0B5208, 0x0000008 +.endif gUnk_080B5210:: @ 080B5210 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4938, 0x0000008 +.else .incbin "baserom.gba", 0x0B5210, 0x0000008 +.endif gUnk_080B5218:: @ 080B5218 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4940, 0x0000008 +.else .incbin "baserom.gba", 0x0B5218, 0x0000008 +.endif gUnk_080B5220:: @ 080B5220 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4948, 0x0000008 +.else .incbin "baserom.gba", 0x0B5220, 0x0000008 +.endif gUnk_080B5228:: @ 080B5228 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4950, 0x0000008 +.else .incbin "baserom.gba", 0x0B5228, 0x0000008 +.endif gUnk_080B5230:: @ 080B5230 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4958, 0x0000008 +.else .incbin "baserom.gba", 0x0B5230, 0x0000008 +.endif gUnk_080B5238:: @ 080B5238 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4960, 0x0000008 +.else .incbin "baserom.gba", 0x0B5238, 0x0000008 +.endif gUnk_080B5240:: @ 080B5240 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4968, 0x0000008 +.else .incbin "baserom.gba", 0x0B5240, 0x0000008 +.endif gUnk_080B5248:: @ 080B5248 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4970, 0x0000008 +.else .incbin "baserom.gba", 0x0B5248, 0x0000008 +.endif gUnk_080B5250:: @ 080B5250 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4978, 0x0000008 +.else .incbin "baserom.gba", 0x0B5250, 0x0000008 +.endif gUnk_080B5258:: @ 080B5258 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4980, 0x0000008 +.else .incbin "baserom.gba", 0x0B5258, 0x0000008 +.endif gUnk_080B5260:: @ 080B5260 .4byte gUnk_080B51E0 @@ -1112,16 +1877,32 @@ gUnk_080B5260:: @ 080B5260 .incbin "baserom.gba", 0x0B52DC, 0x000000C gUnk_080B52E8:: @ 080B52E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4A10, 0x0000008 +.else .incbin "baserom.gba", 0x0B52E8, 0x0000008 +.endif gUnk_080B52F0:: @ 080B52F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4A18, 0x0000008 +.else .incbin "baserom.gba", 0x0B52F0, 0x0000008 +.endif gUnk_080B52F8:: @ 080B52F8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4A20, 0x0000008 +.else .incbin "baserom.gba", 0x0B52F8, 0x0000008 +.endif gUnk_080B5300:: @ 080B5300 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4A28, 0x0000008 +.else .incbin "baserom.gba", 0x0B5300, 0x0000008 +.endif gUnk_080B5308:: @ 080B5308 .4byte gUnk_080B52E8 @@ -1134,16 +1915,32 @@ gUnk_080B5308:: @ 080B5308 .incbin "baserom.gba", 0x0B5324, 0x000000C gUnk_080B5330:: @ 080B5330 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4A58, 0x0000008 +.else .incbin "baserom.gba", 0x0B5330, 0x0000008 +.endif gUnk_080B5338:: @ 080B5338 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4A60, 0x0000008 +.else .incbin "baserom.gba", 0x0B5338, 0x0000008 +.endif gUnk_080B5340:: @ 080B5340 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4A68, 0x0000008 +.else .incbin "baserom.gba", 0x0B5340, 0x0000008 +.endif gUnk_080B5348:: @ 080B5348 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4A70, 0x0000008 +.else .incbin "baserom.gba", 0x0B5348, 0x0000008 +.endif gUnk_080B5350:: @ 080B5350 .4byte gUnk_080B5330 @@ -1156,16 +1953,32 @@ gUnk_080B5350:: @ 080B5350 .incbin "baserom.gba", 0x0B536C, 0x000000C gUnk_080B5378:: @ 080B5378 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4AA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5378, 0x0000008 +.endif gUnk_080B5380:: @ 080B5380 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4AA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5380, 0x0000008 +.endif gUnk_080B5388:: @ 080B5388 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4AB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5388, 0x0000008 +.endif gUnk_080B5390:: @ 080B5390 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4AB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5390, 0x0000008 +.endif gUnk_080B5398:: @ 080B5398 .4byte gUnk_080B5378 @@ -1178,16 +1991,32 @@ gUnk_080B5398:: @ 080B5398 .incbin "baserom.gba", 0x0B53B4, 0x000000C gUnk_080B53C0:: @ 080B53C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4AE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B53C0, 0x0000008 +.endif gUnk_080B53C8:: @ 080B53C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4AF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B53C8, 0x0000008 +.endif gUnk_080B53D0:: @ 080B53D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4AF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B53D0, 0x0000008 +.endif gUnk_080B53D8:: @ 080B53D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B00, 0x0000008 +.else .incbin "baserom.gba", 0x0B53D8, 0x0000008 +.endif gUnk_080B53E0:: @ 080B53E0 .4byte gUnk_080B53C0 @@ -1200,16 +2029,32 @@ gUnk_080B53E0:: @ 080B53E0 .incbin "baserom.gba", 0x0B53FC, 0x000000C gUnk_080B5408:: @ 080B5408 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B30, 0x0000008 +.else .incbin "baserom.gba", 0x0B5408, 0x0000008 +.endif gUnk_080B5410:: @ 080B5410 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B38, 0x0000008 +.else .incbin "baserom.gba", 0x0B5410, 0x0000008 +.endif gUnk_080B5418:: @ 080B5418 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B40, 0x0000008 +.else .incbin "baserom.gba", 0x0B5418, 0x0000008 +.endif gUnk_080B5420:: @ 080B5420 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B48, 0x0000008 +.else .incbin "baserom.gba", 0x0B5420, 0x0000008 +.endif gUnk_080B5428:: @ 080B5428 .4byte gUnk_080B5408 @@ -1222,52 +2067,116 @@ gUnk_080B5428:: @ 080B5428 .incbin "baserom.gba", 0x0B5444, 0x000000C gUnk_080B5450:: @ 080B5450 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B78, 0x0000008 +.else .incbin "baserom.gba", 0x0B5450, 0x0000008 +.endif gUnk_080B5458:: @ 080B5458 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B80, 0x0000008 +.else .incbin "baserom.gba", 0x0B5458, 0x0000008 +.endif gUnk_080B5460:: @ 080B5460 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B88, 0x0000008 +.else .incbin "baserom.gba", 0x0B5460, 0x0000008 +.endif gUnk_080B5468:: @ 080B5468 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B90, 0x0000008 +.else .incbin "baserom.gba", 0x0B5468, 0x0000008 +.endif gUnk_080B5470:: @ 080B5470 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4B98, 0x0000008 +.else .incbin "baserom.gba", 0x0B5470, 0x0000008 +.endif gUnk_080B5478:: @ 080B5478 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5478, 0x0000008 +.endif gUnk_080B5480:: @ 080B5480 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5480, 0x0000008 +.endif gUnk_080B5488:: @ 080B5488 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5488, 0x0000008 +.endif gUnk_080B5490:: @ 080B5490 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5490, 0x0000008 +.endif gUnk_080B5498:: @ 080B5498 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5498, 0x0000008 +.endif gUnk_080B54A0:: @ 080B54A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B54A0, 0x0000008 +.endif gUnk_080B54A8:: @ 080B54A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BD0, 0x0000008 +.else .incbin "baserom.gba", 0x0B54A8, 0x0000008 +.endif gUnk_080B54B0:: @ 080B54B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BD8, 0x0000008 +.else .incbin "baserom.gba", 0x0B54B0, 0x0000008 +.endif gUnk_080B54B8:: @ 080B54B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B54B8, 0x0000008 +.endif gUnk_080B54C0:: @ 080B54C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B54C0, 0x0000008 +.endif gUnk_080B54C8:: @ 080B54C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4BF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B54C8, 0x0000008 +.endif gUnk_080B54D0:: @ 080B54D0 .4byte gUnk_080B5450 @@ -1305,52 +2214,116 @@ gUnk_080B54D0:: @ 080B54D0 .incbin "baserom.gba", 0x0B554C, 0x000000C gUnk_080B5558:: @ 080B5558 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4C80, 0x0000008 +.else .incbin "baserom.gba", 0x0B5558, 0x0000008 +.endif gUnk_080B5560:: @ 080B5560 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4C88, 0x0000008 +.else .incbin "baserom.gba", 0x0B5560, 0x0000008 +.endif gUnk_080B5568:: @ 080B5568 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4C90, 0x0000008 +.else .incbin "baserom.gba", 0x0B5568, 0x0000008 +.endif gUnk_080B5570:: @ 080B5570 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4C98, 0x0000008 +.else .incbin "baserom.gba", 0x0B5570, 0x0000008 +.endif gUnk_080B5578:: @ 080B5578 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5578, 0x0000008 +.endif gUnk_080B5580:: @ 080B5580 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5580, 0x0000008 +.endif gUnk_080B5588:: @ 080B5588 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5588, 0x0000008 +.endif gUnk_080B5590:: @ 080B5590 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5590, 0x0000008 +.endif gUnk_080B5598:: @ 080B5598 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5598, 0x0000008 +.endif gUnk_080B55A0:: @ 080B55A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B55A0, 0x0000008 +.endif gUnk_080B55A8:: @ 080B55A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CD0, 0x0000008 +.else .incbin "baserom.gba", 0x0B55A8, 0x0000008 +.endif gUnk_080B55B0:: @ 080B55B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CD8, 0x0000008 +.else .incbin "baserom.gba", 0x0B55B0, 0x0000008 +.endif gUnk_080B55B8:: @ 080B55B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B55B8, 0x0000008 +.endif gUnk_080B55C0:: @ 080B55C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B55C0, 0x0000008 +.endif gUnk_080B55C8:: @ 080B55C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B55C8, 0x0000008 +.endif gUnk_080B55D0:: @ 080B55D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4CF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B55D0, 0x0000008 +.endif gUnk_080B55D8:: @ 080B55D8 .4byte gUnk_080B5558 @@ -1387,52 +2360,116 @@ gUnk_080B55D8:: @ 080B55D8 .incbin "baserom.gba", 0x0B5654, 0x000000C gUnk_080B5660:: @ 080B5660 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4D88, 0x0000008 +.else .incbin "baserom.gba", 0x0B5660, 0x0000008 +.endif gUnk_080B5668:: @ 080B5668 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4D90, 0x0000008 +.else .incbin "baserom.gba", 0x0B5668, 0x0000008 +.endif gUnk_080B5670:: @ 080B5670 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4D98, 0x0000008 +.else .incbin "baserom.gba", 0x0B5670, 0x0000008 +.endif gUnk_080B5678:: @ 080B5678 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5678, 0x0000008 +.endif gUnk_080B5680:: @ 080B5680 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5680, 0x0000008 +.endif gUnk_080B5688:: @ 080B5688 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5688, 0x0000008 +.endif gUnk_080B5690:: @ 080B5690 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5690, 0x0000008 +.endif gUnk_080B5698:: @ 080B5698 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5698, 0x0000008 +.endif gUnk_080B56A0:: @ 080B56A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B56A0, 0x0000008 +.endif gUnk_080B56A8:: @ 080B56A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DD0, 0x0000008 +.else .incbin "baserom.gba", 0x0B56A8, 0x0000008 +.endif gUnk_080B56B0:: @ 080B56B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DD8, 0x0000008 +.else .incbin "baserom.gba", 0x0B56B0, 0x0000008 +.endif gUnk_080B56B8:: @ 080B56B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B56B8, 0x0000008 +.endif gUnk_080B56C0:: @ 080B56C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B56C0, 0x0000008 +.endif gUnk_080B56C8:: @ 080B56C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B56C8, 0x0000008 +.endif gUnk_080B56D0:: @ 080B56D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4DF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B56D0, 0x0000008 +.endif gUnk_080B56D8:: @ 080B56D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4E00, 0x0000008 +.else .incbin "baserom.gba", 0x0B56D8, 0x0000008 +.endif gUnk_080B56E0:: @ 080B56E0 .4byte gUnk_080B5660 @@ -1469,52 +2506,116 @@ gUnk_080B56E0:: @ 080B56E0 .incbin "baserom.gba", 0x0B575C, 0x000000C gUnk_080B5768:: @ 080B5768 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4E90, 0x0000008 +.else .incbin "baserom.gba", 0x0B5768, 0x0000008 +.endif gUnk_080B5770:: @ 080B5770 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4E98, 0x0000008 +.else .incbin "baserom.gba", 0x0B5770, 0x0000008 +.endif gUnk_080B5778:: @ 080B5778 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5778, 0x0000008 +.endif gUnk_080B5780:: @ 080B5780 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5780, 0x0000008 +.endif gUnk_080B5788:: @ 080B5788 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5788, 0x0000008 +.endif gUnk_080B5790:: @ 080B5790 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5790, 0x0000008 +.endif gUnk_080B5798:: @ 080B5798 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5798, 0x0000008 +.endif gUnk_080B57A0:: @ 080B57A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B57A0, 0x0000008 +.endif gUnk_080B57A8:: @ 080B57A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4ED0, 0x0000008 +.else .incbin "baserom.gba", 0x0B57A8, 0x0000008 +.endif gUnk_080B57B0:: @ 080B57B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4ED8, 0x0000008 +.else .incbin "baserom.gba", 0x0B57B0, 0x0000008 +.endif gUnk_080B57B8:: @ 080B57B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B57B8, 0x0000008 +.endif gUnk_080B57C0:: @ 080B57C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B57C0, 0x0000008 +.endif gUnk_080B57C8:: @ 080B57C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B57C8, 0x0000008 +.endif gUnk_080B57D0:: @ 080B57D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4EF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B57D0, 0x0000008 +.endif gUnk_080B57D8:: @ 080B57D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4F00, 0x0000008 +.else .incbin "baserom.gba", 0x0B57D8, 0x0000008 +.endif gUnk_080B57E0:: @ 080B57E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4F08, 0x0000008 +.else .incbin "baserom.gba", 0x0B57E0, 0x0000008 +.endif gUnk_080B57E8:: @ 080B57E8 .4byte gUnk_080B5768 @@ -1551,52 +2652,116 @@ gUnk_080B57E8:: @ 080B57E8 .incbin "baserom.gba", 0x0B5864, 0x000000C gUnk_080B5870:: @ 080B5870 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4F98, 0x0000008 +.else .incbin "baserom.gba", 0x0B5870, 0x0000008 +.endif gUnk_080B5878:: @ 080B5878 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5878, 0x0000008 +.endif gUnk_080B5880:: @ 080B5880 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5880, 0x0000008 +.endif gUnk_080B5888:: @ 080B5888 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5888, 0x0000008 +.endif gUnk_080B5890:: @ 080B5890 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5890, 0x0000008 +.endif gUnk_080B5898:: @ 080B5898 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5898, 0x0000008 +.endif gUnk_080B58A0:: @ 080B58A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B58A0, 0x0000008 +.endif gUnk_080B58A8:: @ 080B58A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FD0, 0x0000008 +.else .incbin "baserom.gba", 0x0B58A8, 0x0000008 +.endif gUnk_080B58B0:: @ 080B58B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FD8, 0x0000008 +.else .incbin "baserom.gba", 0x0B58B0, 0x0000008 +.endif gUnk_080B58B8:: @ 080B58B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B58B8, 0x0000008 +.endif gUnk_080B58C0:: @ 080B58C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B58C0, 0x0000008 +.endif gUnk_080B58C8:: @ 080B58C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B58C8, 0x0000008 +.endif gUnk_080B58D0:: @ 080B58D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B4FF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B58D0, 0x0000008 +.endif gUnk_080B58D8:: @ 080B58D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5000, 0x0000008 +.else .incbin "baserom.gba", 0x0B58D8, 0x0000008 +.endif gUnk_080B58E0:: @ 080B58E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5008, 0x0000008 +.else .incbin "baserom.gba", 0x0B58E0, 0x0000008 +.endif gUnk_080B58E8:: @ 080B58E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5010, 0x0000008 +.else .incbin "baserom.gba", 0x0B58E8, 0x0000008 +.endif gUnk_080B58F0:: @ 080B58F0 .4byte gUnk_080B5870 @@ -1633,16 +2798,32 @@ gUnk_080B58F0:: @ 080B58F0 .incbin "baserom.gba", 0x0B596C, 0x000000C gUnk_080B5978:: @ 080B5978 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B50A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5978, 0x0000008 +.endif gUnk_080B5980:: @ 080B5980 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B50A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5980, 0x0000008 +.endif gUnk_080B5988:: @ 080B5988 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B50B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5988, 0x0000008 +.endif gUnk_080B5990:: @ 080B5990 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B50B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5990, 0x0000008 +.endif gUnk_080B5998:: @ 080B5998 .4byte gUnk_080B5978 @@ -1655,16 +2836,32 @@ gUnk_080B5998:: @ 080B5998 .incbin "baserom.gba", 0x0B59B4, 0x000000C gUnk_080B59C0:: @ 080B59C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B50E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B59C0, 0x0000008 +.endif gUnk_080B59C8:: @ 080B59C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B50F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B59C8, 0x0000008 +.endif gUnk_080B59D0:: @ 080B59D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B50F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B59D0, 0x0000008 +.endif gUnk_080B59D8:: @ 080B59D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5100, 0x0000008 +.else .incbin "baserom.gba", 0x0B59D8, 0x0000008 +.endif gUnk_080B59E0:: @ 080B59E0 .4byte gUnk_080B59C0 @@ -1677,16 +2874,32 @@ gUnk_080B59E0:: @ 080B59E0 .incbin "baserom.gba", 0x0B59FC, 0x000000C gUnk_080B5A08:: @ 080B5A08 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5130, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A08, 0x0000008 +.endif gUnk_080B5A10:: @ 080B5A10 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5138, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A10, 0x0000008 +.endif gUnk_080B5A18:: @ 080B5A18 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5140, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A18, 0x0000008 +.endif gUnk_080B5A20:: @ 080B5A20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5148, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A20, 0x0000008 +.endif gUnk_080B5A28:: @ 080B5A28 .4byte gUnk_080B5A08 @@ -1699,16 +2912,32 @@ gUnk_080B5A28:: @ 080B5A28 .incbin "baserom.gba", 0x0B5A44, 0x000000C gUnk_080B5A50:: @ 080B5A50 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5178, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A50, 0x0000008 +.endif gUnk_080B5A58:: @ 080B5A58 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5180, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A58, 0x0000008 +.endif gUnk_080B5A60:: @ 080B5A60 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5188, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A60, 0x0000008 +.endif gUnk_080B5A68:: @ 080B5A68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5190, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A68, 0x0000008 +.endif gUnk_080B5A70:: @ 080B5A70 .4byte gUnk_080B5A50 @@ -1721,16 +2950,32 @@ gUnk_080B5A70:: @ 080B5A70 .incbin "baserom.gba", 0x0B5A8C, 0x000000C gUnk_080B5A98:: @ 080B5A98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B51C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5A98, 0x0000008 +.endif gUnk_080B5AA0:: @ 080B5AA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B51C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5AA0, 0x0000008 +.endif gUnk_080B5AA8:: @ 080B5AA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B51D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5AA8, 0x0000008 +.endif gUnk_080B5AB0:: @ 080B5AB0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B51D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5AB0, 0x0000008 +.endif gUnk_080B5AB8:: @ 080B5AB8 .4byte gUnk_080B5A98 @@ -1743,16 +2988,32 @@ gUnk_080B5AB8:: @ 080B5AB8 .incbin "baserom.gba", 0x0B5AD4, 0x000000C gUnk_080B5AE0:: @ 080B5AE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5208, 0x0000010 +.else .incbin "baserom.gba", 0x0B5AE0, 0x0000010 +.endif gUnk_080B5AF0:: @ 080B5AF0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5218, 0x0000010 +.else .incbin "baserom.gba", 0x0B5AF0, 0x0000010 +.endif gUnk_080B5B00:: @ 080B5B00 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5228, 0x0000010 +.else .incbin "baserom.gba", 0x0B5B00, 0x0000010 +.endif gUnk_080B5B10:: @ 080B5B10 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5238, 0x0000010 +.else .incbin "baserom.gba", 0x0B5B10, 0x0000010 +.endif gUnk_080B5B20:: @ 080B5B20 .4byte gUnk_080B5AE0 @@ -1765,16 +3026,32 @@ gUnk_080B5B20:: @ 080B5B20 .incbin "baserom.gba", 0x0B5B3C, 0x000000C gUnk_080B5B48:: @ 080B5B48 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5270, 0x0000008 +.else .incbin "baserom.gba", 0x0B5B48, 0x0000008 +.endif gUnk_080B5B50:: @ 080B5B50 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5278, 0x0000008 +.else .incbin "baserom.gba", 0x0B5B50, 0x0000008 +.endif gUnk_080B5B58:: @ 080B5B58 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5280, 0x0000008 +.else .incbin "baserom.gba", 0x0B5B58, 0x0000008 +.endif gUnk_080B5B60:: @ 080B5B60 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5288, 0x0000008 +.else .incbin "baserom.gba", 0x0B5B60, 0x0000008 +.endif gUnk_080B5B68:: @ 080B5B68 .4byte gUnk_080B5B48 @@ -1787,16 +3064,32 @@ gUnk_080B5B68:: @ 080B5B68 .incbin "baserom.gba", 0x0B5B84, 0x000000C gUnk_080B5B90:: @ 080B5B90 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B52B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5B90, 0x0000008 +.endif gUnk_080B5B98:: @ 080B5B98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B52C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5B98, 0x0000008 +.endif gUnk_080B5BA0:: @ 080B5BA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B52C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5BA0, 0x0000008 +.endif gUnk_080B5BA8:: @ 080B5BA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B52D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5BA8, 0x0000008 +.endif gUnk_080B5BB0:: @ 080B5BB0 .4byte gUnk_080B5B90 @@ -1809,52 +3102,116 @@ gUnk_080B5BB0:: @ 080B5BB0 .incbin "baserom.gba", 0x0B5BCC, 0x000000C gUnk_080B5BD8:: @ 080B5BD8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5300, 0x0000008 +.else .incbin "baserom.gba", 0x0B5BD8, 0x0000008 +.endif gUnk_080B5BE0:: @ 080B5BE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5308, 0x0000008 +.else .incbin "baserom.gba", 0x0B5BE0, 0x0000008 +.endif gUnk_080B5BE8:: @ 080B5BE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5310, 0x0000008 +.else .incbin "baserom.gba", 0x0B5BE8, 0x0000008 +.endif gUnk_080B5BF0:: @ 080B5BF0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5318, 0x0000008 +.else .incbin "baserom.gba", 0x0B5BF0, 0x0000008 +.endif gUnk_080B5BF8:: @ 080B5BF8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5320, 0x0000008 +.else .incbin "baserom.gba", 0x0B5BF8, 0x0000008 +.endif gUnk_080B5C00:: @ 080B5C00 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5328, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C00, 0x0000008 +.endif gUnk_080B5C08:: @ 080B5C08 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5330, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C08, 0x0000008 +.endif gUnk_080B5C10:: @ 080B5C10 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5338, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C10, 0x0000008 +.endif gUnk_080B5C18:: @ 080B5C18 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5340, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C18, 0x0000008 +.endif gUnk_080B5C20:: @ 080B5C20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5348, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C20, 0x0000008 +.endif gUnk_080B5C28:: @ 080B5C28 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5350, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C28, 0x0000008 +.endif gUnk_080B5C30:: @ 080B5C30 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5358, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C30, 0x0000008 +.endif gUnk_080B5C38:: @ 080B5C38 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5360, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C38, 0x0000008 +.endif gUnk_080B5C40:: @ 080B5C40 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5368, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C40, 0x0000008 +.endif gUnk_080B5C48:: @ 080B5C48 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5370, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C48, 0x0000008 +.endif gUnk_080B5C50:: @ 080B5C50 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5378, 0x0000008 +.else .incbin "baserom.gba", 0x0B5C50, 0x0000008 +.endif gUnk_080B5C58:: @ 080B5C58 .4byte gUnk_080B5BD8 @@ -1891,16 +3248,32 @@ gUnk_080B5C58:: @ 080B5C58 .incbin "baserom.gba", 0x0B5CD4, 0x000000C gUnk_080B5CE0:: @ 080B5CE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5408, 0x0000018 +.else .incbin "baserom.gba", 0x0B5CE0, 0x0000018 +.endif gUnk_080B5CF8:: @ 080B5CF8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5420, 0x0000018 +.else .incbin "baserom.gba", 0x0B5CF8, 0x0000018 +.endif gUnk_080B5D10:: @ 080B5D10 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5438, 0x0000018 +.else .incbin "baserom.gba", 0x0B5D10, 0x0000018 +.endif gUnk_080B5D28:: @ 080B5D28 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5450, 0x0000018 +.else .incbin "baserom.gba", 0x0B5D28, 0x0000018 +.endif gUnk_080B5D40:: @ 080B5D40 .4byte gUnk_080B5CE0 @@ -1913,16 +3286,32 @@ gUnk_080B5D40:: @ 080B5D40 .incbin "baserom.gba", 0x0B5D5C, 0x000000C gUnk_080B5D68:: @ 080B5D68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5490, 0x0000010 +.else .incbin "baserom.gba", 0x0B5D68, 0x0000010 +.endif gUnk_080B5D78:: @ 080B5D78 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B54A0, 0x0000010 +.else .incbin "baserom.gba", 0x0B5D78, 0x0000010 +.endif gUnk_080B5D88:: @ 080B5D88 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B54B0, 0x0000010 +.else .incbin "baserom.gba", 0x0B5D88, 0x0000010 +.endif gUnk_080B5D98:: @ 080B5D98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B54C0, 0x0000010 +.else .incbin "baserom.gba", 0x0B5D98, 0x0000010 +.endif gUnk_080B5DA8:: @ 080B5DA8 .4byte gUnk_080B5D68 @@ -1935,16 +3324,32 @@ gUnk_080B5DA8:: @ 080B5DA8 .incbin "baserom.gba", 0x0B5DC4, 0x000000C gUnk_080B5DD0:: @ 080B5DD0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B54F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5DD0, 0x0000008 +.endif gUnk_080B5DD8:: @ 080B5DD8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5500, 0x0000008 +.else .incbin "baserom.gba", 0x0B5DD8, 0x0000008 +.endif gUnk_080B5DE0:: @ 080B5DE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5508, 0x0000008 +.else .incbin "baserom.gba", 0x0B5DE0, 0x0000008 +.endif gUnk_080B5DE8:: @ 080B5DE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5510, 0x0000008 +.else .incbin "baserom.gba", 0x0B5DE8, 0x0000008 +.endif gUnk_080B5DF0:: @ 080B5DF0 .4byte gUnk_080B5DD0 @@ -1957,16 +3362,32 @@ gUnk_080B5DF0:: @ 080B5DF0 .incbin "baserom.gba", 0x0B5E0C, 0x000000C gUnk_080B5E18:: @ 080B5E18 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5540, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E18, 0x0000008 +.endif gUnk_080B5E20:: @ 080B5E20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5548, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E20, 0x0000008 +.endif gUnk_080B5E28:: @ 080B5E28 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5550, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E28, 0x0000008 +.endif gUnk_080B5E30:: @ 080B5E30 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5558, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E30, 0x0000008 +.endif gUnk_080B5E38:: @ 080B5E38 .4byte gUnk_080B5E18 @@ -1979,19 +3400,39 @@ gUnk_080B5E38:: @ 080B5E38 .incbin "baserom.gba", 0x0B5E54, 0x000000C gUnk_080B5E60:: @ 080B5E60 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5588, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E60, 0x0000008 +.endif gUnk_080B5E68:: @ 080B5E68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5590, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E68, 0x0000008 +.endif gUnk_080B5E70:: @ 080B5E70 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5598, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E70, 0x0000008 +.endif gUnk_080B5E78:: @ 080B5E78 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B55A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E78, 0x0000008 +.endif gUnk_080B5E80:: @ 080B5E80 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B55A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5E80, 0x0000008 +.endif gUnk_080B5E88:: @ 080B5E88 .4byte gUnk_080B5E60 @@ -2006,16 +3447,32 @@ gUnk_080B5E88:: @ 080B5E88 .incbin "baserom.gba", 0x0B5EAC, 0x000000C gUnk_080B5EB8:: @ 080B5EB8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B55E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5EB8, 0x0000008 +.endif gUnk_080B5EC0:: @ 080B5EC0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B55E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5EC0, 0x0000008 +.endif gUnk_080B5EC8:: @ 080B5EC8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B55F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5EC8, 0x0000008 +.endif gUnk_080B5ED0:: @ 080B5ED0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B55F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5ED0, 0x0000008 +.endif gUnk_080B5ED8:: @ 080B5ED8 .4byte gUnk_080B5EB8 @@ -2028,19 +3485,39 @@ gUnk_080B5ED8:: @ 080B5ED8 .incbin "baserom.gba", 0x0B5EF4, 0x000000C gUnk_080B5F00:: @ 080B5F00 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5628, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F00, 0x0000008 +.endif gUnk_080B5F08:: @ 080B5F08 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5630, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F08, 0x0000008 +.endif gUnk_080B5F10:: @ 080B5F10 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5638, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F10, 0x0000008 +.endif gUnk_080B5F18:: @ 080B5F18 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5640, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F18, 0x0000008 +.endif gUnk_080B5F20:: @ 080B5F20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5648, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F20, 0x0000008 +.endif gUnk_080B5F28:: @ 080B5F28 .4byte gUnk_080B5F00 @@ -2055,19 +3532,39 @@ gUnk_080B5F28:: @ 080B5F28 .incbin "baserom.gba", 0x0B5F4C, 0x000000C gUnk_080B5F58:: @ 080B5F58 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5680, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F58, 0x0000008 +.endif gUnk_080B5F60:: @ 080B5F60 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5688, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F60, 0x0000008 +.endif gUnk_080B5F68:: @ 080B5F68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5690, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F68, 0x0000008 +.endif gUnk_080B5F70:: @ 080B5F70 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5698, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F70, 0x0000008 +.endif gUnk_080B5F78:: @ 080B5F78 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B56A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5F78, 0x0000008 +.endif gUnk_080B5F80:: @ 080B5F80 .4byte gUnk_080B5F58 @@ -2082,16 +3579,32 @@ gUnk_080B5F80:: @ 080B5F80 .incbin "baserom.gba", 0x0B5FA4, 0x000000C gUnk_080B5FB0:: @ 080B5FB0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B56D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5FB0, 0x0000008 +.endif gUnk_080B5FB8:: @ 080B5FB8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B56E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5FB8, 0x0000008 +.endif gUnk_080B5FC0:: @ 080B5FC0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B56E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B5FC0, 0x0000008 +.endif gUnk_080B5FC8:: @ 080B5FC8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B56F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B5FC8, 0x0000008 +.endif gUnk_080B5FD0:: @ 080B5FD0 .4byte gUnk_080B5FB0 @@ -2104,52 +3617,116 @@ gUnk_080B5FD0:: @ 080B5FD0 .incbin "baserom.gba", 0x0B5FEC, 0x000000C gUnk_080B5FF8:: @ 080B5FF8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5720, 0x0000008 +.else .incbin "baserom.gba", 0x0B5FF8, 0x0000008 +.endif gUnk_080B6000:: @ 080B6000 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5728, 0x0000008 +.else .incbin "baserom.gba", 0x0B6000, 0x0000008 +.endif gUnk_080B6008:: @ 080B6008 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5730, 0x0000008 +.else .incbin "baserom.gba", 0x0B6008, 0x0000008 +.endif gUnk_080B6010:: @ 080B6010 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5738, 0x0000008 +.else .incbin "baserom.gba", 0x0B6010, 0x0000008 +.endif gUnk_080B6018:: @ 080B6018 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5740, 0x0000008 +.else .incbin "baserom.gba", 0x0B6018, 0x0000008 +.endif gUnk_080B6020:: @ 080B6020 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5748, 0x0000008 +.else .incbin "baserom.gba", 0x0B6020, 0x0000008 +.endif gUnk_080B6028:: @ 080B6028 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5750, 0x0000008 +.else .incbin "baserom.gba", 0x0B6028, 0x0000008 +.endif gUnk_080B6030:: @ 080B6030 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5758, 0x0000008 +.else .incbin "baserom.gba", 0x0B6030, 0x0000008 +.endif gUnk_080B6038:: @ 080B6038 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5760, 0x0000008 +.else .incbin "baserom.gba", 0x0B6038, 0x0000008 +.endif gUnk_080B6040:: @ 080B6040 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5768, 0x0000008 +.else .incbin "baserom.gba", 0x0B6040, 0x0000008 +.endif gUnk_080B6048:: @ 080B6048 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5770, 0x0000008 +.else .incbin "baserom.gba", 0x0B6048, 0x0000008 +.endif gUnk_080B6050:: @ 080B6050 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5778, 0x0000008 +.else .incbin "baserom.gba", 0x0B6050, 0x0000008 +.endif gUnk_080B6058:: @ 080B6058 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5780, 0x0000008 +.else .incbin "baserom.gba", 0x0B6058, 0x0000008 +.endif gUnk_080B6060:: @ 080B6060 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5788, 0x0000008 +.else .incbin "baserom.gba", 0x0B6060, 0x0000008 +.endif gUnk_080B6068:: @ 080B6068 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5790, 0x0000008 +.else .incbin "baserom.gba", 0x0B6068, 0x0000008 +.endif gUnk_080B6070:: @ 080B6070 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5798, 0x0000008 +.else .incbin "baserom.gba", 0x0B6070, 0x0000008 +.endif gUnk_080B6078:: @ 080B6078 .4byte gUnk_080B5FF8 @@ -2186,16 +3763,32 @@ gUnk_080B6078:: @ 080B6078 .incbin "baserom.gba", 0x0B60F4, 0x000000C gUnk_080B6100:: @ 080B6100 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5828, 0x0000008 +.else .incbin "baserom.gba", 0x0B6100, 0x0000008 +.endif gUnk_080B6108:: @ 080B6108 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5830, 0x0000008 +.else .incbin "baserom.gba", 0x0B6108, 0x0000008 +.endif gUnk_080B6110:: @ 080B6110 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5838, 0x0000008 +.else .incbin "baserom.gba", 0x0B6110, 0x0000008 +.endif gUnk_080B6118:: @ 080B6118 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5840, 0x0000008 +.else .incbin "baserom.gba", 0x0B6118, 0x0000008 +.endif gUnk_080B6120:: @ 080B6120 .4byte gUnk_080B6100 @@ -2208,16 +3801,32 @@ gUnk_080B6120:: @ 080B6120 .incbin "baserom.gba", 0x0B613C, 0x000000C gUnk_080B6148:: @ 080B6148 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5870, 0x0000008 +.else .incbin "baserom.gba", 0x0B6148, 0x0000008 +.endif gUnk_080B6150:: @ 080B6150 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5878, 0x0000008 +.else .incbin "baserom.gba", 0x0B6150, 0x0000008 +.endif gUnk_080B6158:: @ 080B6158 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5880, 0x0000008 +.else .incbin "baserom.gba", 0x0B6158, 0x0000008 +.endif gUnk_080B6160:: @ 080B6160 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5888, 0x0000008 +.else .incbin "baserom.gba", 0x0B6160, 0x0000008 +.endif gUnk_080B6168:: @ 080B6168 .4byte gUnk_080B6148 @@ -2230,16 +3839,32 @@ gUnk_080B6168:: @ 080B6168 .incbin "baserom.gba", 0x0B6184, 0x000000C gUnk_080B6190:: @ 080B6190 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B58B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6190, 0x0000008 +.endif gUnk_080B6198:: @ 080B6198 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B58C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6198, 0x0000008 +.endif gUnk_080B61A0:: @ 080B61A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B58C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B61A0, 0x0000008 +.endif gUnk_080B61A8:: @ 080B61A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B58D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B61A8, 0x0000008 +.endif gUnk_080B61B0:: @ 080B61B0 .4byte gUnk_080B6190 @@ -2252,16 +3877,32 @@ gUnk_080B61B0:: @ 080B61B0 .incbin "baserom.gba", 0x0B61CC, 0x000000C gUnk_080B61D8:: @ 080B61D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5900, 0x0000008 +.else .incbin "baserom.gba", 0x0B61D8, 0x0000008 +.endif gUnk_080B61E0:: @ 080B61E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5908, 0x0000008 +.else .incbin "baserom.gba", 0x0B61E0, 0x0000008 +.endif gUnk_080B61E8:: @ 080B61E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5910, 0x0000008 +.else .incbin "baserom.gba", 0x0B61E8, 0x0000008 +.endif gUnk_080B61F0:: @ 080B61F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5918, 0x0000008 +.else .incbin "baserom.gba", 0x0B61F0, 0x0000008 +.endif gUnk_080B61F8:: @ 080B61F8 .4byte gUnk_080B61D8 @@ -2274,52 +3915,116 @@ gUnk_080B61F8:: @ 080B61F8 .incbin "baserom.gba", 0x0B6214, 0x000000C gUnk_080B6220:: @ 080B6220 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5948, 0x0000008 +.else .incbin "baserom.gba", 0x0B6220, 0x0000008 +.endif gUnk_080B6228:: @ 080B6228 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5950, 0x0000008 +.else .incbin "baserom.gba", 0x0B6228, 0x0000008 +.endif gUnk_080B6230:: @ 080B6230 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5958, 0x0000008 +.else .incbin "baserom.gba", 0x0B6230, 0x0000008 +.endif gUnk_080B6238:: @ 080B6238 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5960, 0x0000008 +.else .incbin "baserom.gba", 0x0B6238, 0x0000008 +.endif gUnk_080B6240:: @ 080B6240 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5968, 0x0000008 +.else .incbin "baserom.gba", 0x0B6240, 0x0000008 +.endif gUnk_080B6248:: @ 080B6248 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5970, 0x0000008 +.else .incbin "baserom.gba", 0x0B6248, 0x0000008 +.endif gUnk_080B6250:: @ 080B6250 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5978, 0x0000008 +.else .incbin "baserom.gba", 0x0B6250, 0x0000008 +.endif gUnk_080B6258:: @ 080B6258 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5980, 0x0000008 +.else .incbin "baserom.gba", 0x0B6258, 0x0000008 +.endif gUnk_080B6260:: @ 080B6260 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5988, 0x0000008 +.else .incbin "baserom.gba", 0x0B6260, 0x0000008 +.endif gUnk_080B6268:: @ 080B6268 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5990, 0x0000008 +.else .incbin "baserom.gba", 0x0B6268, 0x0000008 +.endif gUnk_080B6270:: @ 080B6270 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5998, 0x0000008 +.else .incbin "baserom.gba", 0x0B6270, 0x0000008 +.endif gUnk_080B6278:: @ 080B6278 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B59A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6278, 0x0000008 +.endif gUnk_080B6280:: @ 080B6280 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B59A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6280, 0x0000008 +.endif gUnk_080B6288:: @ 080B6288 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B59B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6288, 0x0000008 +.endif gUnk_080B6290:: @ 080B6290 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B59B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6290, 0x0000008 +.endif gUnk_080B6298:: @ 080B6298 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B59C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6298, 0x0000008 +.endif gUnk_080B62A0:: @ 080B62A0 .4byte gUnk_080B6220 @@ -2356,52 +4061,116 @@ gUnk_080B62A0:: @ 080B62A0 .incbin "baserom.gba", 0x0B631C, 0x000000C gUnk_080B6328:: @ 080B6328 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A50, 0x0000008 +.else .incbin "baserom.gba", 0x0B6328, 0x0000008 +.endif gUnk_080B6330:: @ 080B6330 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A58, 0x0000008 +.else .incbin "baserom.gba", 0x0B6330, 0x0000008 +.endif gUnk_080B6338:: @ 080B6338 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A60, 0x0000008 +.else .incbin "baserom.gba", 0x0B6338, 0x0000008 +.endif gUnk_080B6340:: @ 080B6340 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A68, 0x0000008 +.else .incbin "baserom.gba", 0x0B6340, 0x0000008 +.endif gUnk_080B6348:: @ 080B6348 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A70, 0x0000008 +.else .incbin "baserom.gba", 0x0B6348, 0x0000008 +.endif gUnk_080B6350:: @ 080B6350 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A78, 0x0000008 +.else .incbin "baserom.gba", 0x0B6350, 0x0000008 +.endif gUnk_080B6358:: @ 080B6358 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A80, 0x0000008 +.else .incbin "baserom.gba", 0x0B6358, 0x0000008 +.endif gUnk_080B6360:: @ 080B6360 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A88, 0x0000008 +.else .incbin "baserom.gba", 0x0B6360, 0x0000008 +.endif gUnk_080B6368:: @ 080B6368 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A90, 0x0000008 +.else .incbin "baserom.gba", 0x0B6368, 0x0000008 +.endif gUnk_080B6370:: @ 080B6370 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5A98, 0x0000008 +.else .incbin "baserom.gba", 0x0B6370, 0x0000008 +.endif gUnk_080B6378:: @ 080B6378 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5AA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6378, 0x0000008 +.endif gUnk_080B6380:: @ 080B6380 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5AA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6380, 0x0000008 +.endif gUnk_080B6388:: @ 080B6388 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5AB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6388, 0x0000008 +.endif gUnk_080B6390:: @ 080B6390 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5AB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6390, 0x0000008 +.endif gUnk_080B6398:: @ 080B6398 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5AC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6398, 0x0000008 +.endif gUnk_080B63A0:: @ 080B63A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5AC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B63A0, 0x0000008 +.endif gUnk_080B63A8:: @ 080B63A8 .4byte gUnk_080B6328 @@ -2438,16 +4207,32 @@ gUnk_080B63A8:: @ 080B63A8 .incbin "baserom.gba", 0x0B6424, 0x000000C gUnk_080B6430:: @ 080B6430 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5B58, 0x0000008 +.else .incbin "baserom.gba", 0x0B6430, 0x0000008 +.endif gUnk_080B6438:: @ 080B6438 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5B60, 0x0000008 +.else .incbin "baserom.gba", 0x0B6438, 0x0000008 +.endif gUnk_080B6440:: @ 080B6440 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5B68, 0x0000008 +.else .incbin "baserom.gba", 0x0B6440, 0x0000008 +.endif gUnk_080B6448:: @ 080B6448 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5B70, 0x0000008 +.else .incbin "baserom.gba", 0x0B6448, 0x0000008 +.endif gUnk_080B6450:: @ 080B6450 .4byte gUnk_080B6430 @@ -2460,16 +4245,32 @@ gUnk_080B6450:: @ 080B6450 .incbin "baserom.gba", 0x0B646C, 0x000000C gUnk_080B6478:: @ 080B6478 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5BA0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6478, 0x0000008 +.endif gUnk_080B6480:: @ 080B6480 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5BA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6480, 0x0000008 +.endif gUnk_080B6488:: @ 080B6488 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5BB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6488, 0x0000008 +.endif gUnk_080B6490:: @ 080B6490 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5BB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6490, 0x0000008 +.endif gUnk_080B6498:: @ 080B6498 .4byte gUnk_080B6478 @@ -2482,16 +4283,32 @@ gUnk_080B6498:: @ 080B6498 .incbin "baserom.gba", 0x0B64B4, 0x000000C gUnk_080B64C0:: @ 080B64C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5BE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B64C0, 0x0000008 +.endif gUnk_080B64C8:: @ 080B64C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5BF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B64C8, 0x0000008 +.endif gUnk_080B64D0:: @ 080B64D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5BF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B64D0, 0x0000008 +.endif gUnk_080B64D8:: @ 080B64D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C00, 0x0000008 +.else .incbin "baserom.gba", 0x0B64D8, 0x0000008 +.endif gUnk_080B64E0:: @ 080B64E0 .4byte gUnk_080B64C0 @@ -2504,16 +4321,32 @@ gUnk_080B64E0:: @ 080B64E0 .incbin "baserom.gba", 0x0B64FC, 0x000000C gUnk_080B6508:: @ 080B6508 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C30, 0x0000008 +.else .incbin "baserom.gba", 0x0B6508, 0x0000008 +.endif gUnk_080B6510:: @ 080B6510 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C38, 0x0000008 +.else .incbin "baserom.gba", 0x0B6510, 0x0000008 +.endif gUnk_080B6518:: @ 080B6518 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C40, 0x0000008 +.else .incbin "baserom.gba", 0x0B6518, 0x0000008 +.endif gUnk_080B6520:: @ 080B6520 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C48, 0x0000008 +.else .incbin "baserom.gba", 0x0B6520, 0x0000008 +.endif gUnk_080B6528:: @ 080B6528 .4byte gUnk_080B6508 @@ -2526,16 +4359,32 @@ gUnk_080B6528:: @ 080B6528 .incbin "baserom.gba", 0x0B6544, 0x000000C gUnk_080B6550:: @ 080B6550 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C78, 0x0000008 +.else .incbin "baserom.gba", 0x0B6550, 0x0000008 +.endif gUnk_080B6558:: @ 080B6558 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C80, 0x0000008 +.else .incbin "baserom.gba", 0x0B6558, 0x0000008 +.endif gUnk_080B6560:: @ 080B6560 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C88, 0x0000008 +.else .incbin "baserom.gba", 0x0B6560, 0x0000008 +.endif gUnk_080B6568:: @ 080B6568 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5C90, 0x0000008 +.else .incbin "baserom.gba", 0x0B6568, 0x0000008 +.endif gUnk_080B6570:: @ 080B6570 .4byte gUnk_080B6550 @@ -2548,52 +4397,116 @@ gUnk_080B6570:: @ 080B6570 .incbin "baserom.gba", 0x0B658C, 0x000000C gUnk_080B6598:: @ 080B6598 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5CC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6598, 0x0000008 +.endif gUnk_080B65A0:: @ 080B65A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5CC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B65A0, 0x0000008 +.endif gUnk_080B65A8:: @ 080B65A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5CD0, 0x0000008 +.else .incbin "baserom.gba", 0x0B65A8, 0x0000008 +.endif gUnk_080B65B0:: @ 080B65B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5CD8, 0x0000008 +.else .incbin "baserom.gba", 0x0B65B0, 0x0000008 +.endif gUnk_080B65B8:: @ 080B65B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5CE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B65B8, 0x0000008 +.endif gUnk_080B65C0:: @ 080B65C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5CE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B65C0, 0x0000008 +.endif gUnk_080B65C8:: @ 080B65C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5CF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B65C8, 0x0000008 +.endif gUnk_080B65D0:: @ 080B65D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5CF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B65D0, 0x0000008 +.endif gUnk_080B65D8:: @ 080B65D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5D00, 0x0000008 +.else .incbin "baserom.gba", 0x0B65D8, 0x0000008 +.endif gUnk_080B65E0:: @ 080B65E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5D08, 0x0000008 +.else .incbin "baserom.gba", 0x0B65E0, 0x0000008 +.endif gUnk_080B65E8:: @ 080B65E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5D10, 0x0000008 +.else .incbin "baserom.gba", 0x0B65E8, 0x0000008 +.endif gUnk_080B65F0:: @ 080B65F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5D18, 0x0000008 +.else .incbin "baserom.gba", 0x0B65F0, 0x0000008 +.endif gUnk_080B65F8:: @ 080B65F8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5D20, 0x0000008 +.else .incbin "baserom.gba", 0x0B65F8, 0x0000008 +.endif gUnk_080B6600:: @ 080B6600 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5D28, 0x0000008 +.else .incbin "baserom.gba", 0x0B6600, 0x0000008 +.endif gUnk_080B6608:: @ 080B6608 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5D30, 0x0000008 +.else .incbin "baserom.gba", 0x0B6608, 0x0000008 +.endif gUnk_080B6610:: @ 080B6610 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5D38, 0x0000008 +.else .incbin "baserom.gba", 0x0B6610, 0x0000008 +.endif gUnk_080B6618:: @ 080B6618 .4byte gUnk_080B6598 @@ -2630,52 +4543,116 @@ gUnk_080B6618:: @ 080B6618 .incbin "baserom.gba", 0x0B6694, 0x000000C gUnk_080B66A0:: @ 080B66A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5DC8, 0x0000008 +.else .incbin "baserom.gba", 0x0B66A0, 0x0000008 +.endif gUnk_080B66A8:: @ 080B66A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5DD0, 0x0000008 +.else .incbin "baserom.gba", 0x0B66A8, 0x0000008 +.endif gUnk_080B66B0:: @ 080B66B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5DD8, 0x0000008 +.else .incbin "baserom.gba", 0x0B66B0, 0x0000008 +.endif gUnk_080B66B8:: @ 080B66B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5DE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B66B8, 0x0000008 +.endif gUnk_080B66C0:: @ 080B66C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5DE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B66C0, 0x0000008 +.endif gUnk_080B66C8:: @ 080B66C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5DF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B66C8, 0x0000008 +.endif gUnk_080B66D0:: @ 080B66D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5DF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B66D0, 0x0000008 +.endif gUnk_080B66D8:: @ 080B66D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E00, 0x0000008 +.else .incbin "baserom.gba", 0x0B66D8, 0x0000008 +.endif gUnk_080B66E0:: @ 080B66E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E08, 0x0000008 +.else .incbin "baserom.gba", 0x0B66E0, 0x0000008 +.endif gUnk_080B66E8:: @ 080B66E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E10, 0x0000008 +.else .incbin "baserom.gba", 0x0B66E8, 0x0000008 +.endif gUnk_080B66F0:: @ 080B66F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E18, 0x0000008 +.else .incbin "baserom.gba", 0x0B66F0, 0x0000008 +.endif gUnk_080B66F8:: @ 080B66F8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E20, 0x0000008 +.else .incbin "baserom.gba", 0x0B66F8, 0x0000008 +.endif gUnk_080B6700:: @ 080B6700 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E28, 0x0000008 +.else .incbin "baserom.gba", 0x0B6700, 0x0000008 +.endif gUnk_080B6708:: @ 080B6708 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E30, 0x0000008 +.else .incbin "baserom.gba", 0x0B6708, 0x0000008 +.endif gUnk_080B6710:: @ 080B6710 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E38, 0x0000008 +.else .incbin "baserom.gba", 0x0B6710, 0x0000008 +.endif gUnk_080B6718:: @ 080B6718 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5E40, 0x0000008 +.else .incbin "baserom.gba", 0x0B6718, 0x0000008 +.endif gUnk_080B6720:: @ 080B6720 .4byte gUnk_080B66A0 @@ -2712,16 +4689,32 @@ gUnk_080B6720:: @ 080B6720 .incbin "baserom.gba", 0x0B679C, 0x000000C gUnk_080B67A8:: @ 080B67A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5ED0, 0x0000008 +.else .incbin "baserom.gba", 0x0B67A8, 0x0000008 +.endif gUnk_080B67B0:: @ 080B67B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5ED8, 0x0000008 +.else .incbin "baserom.gba", 0x0B67B0, 0x0000008 +.endif gUnk_080B67B8:: @ 080B67B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5EE0, 0x0000008 +.else .incbin "baserom.gba", 0x0B67B8, 0x0000008 +.endif gUnk_080B67C0:: @ 080B67C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5EE8, 0x0000008 +.else .incbin "baserom.gba", 0x0B67C0, 0x0000008 +.endif gUnk_080B67C8:: @ 080B67C8 .4byte gUnk_080B67A8 @@ -2734,16 +4727,32 @@ gUnk_080B67C8:: @ 080B67C8 .incbin "baserom.gba", 0x0B67E4, 0x000000C gUnk_080B67F0:: @ 080B67F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5F18, 0x0000008 +.else .incbin "baserom.gba", 0x0B67F0, 0x0000008 +.endif gUnk_080B67F8:: @ 080B67F8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5F20, 0x0000008 +.else .incbin "baserom.gba", 0x0B67F8, 0x0000008 +.endif gUnk_080B6800:: @ 080B6800 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5F28, 0x0000008 +.else .incbin "baserom.gba", 0x0B6800, 0x0000008 +.endif gUnk_080B6808:: @ 080B6808 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5F30, 0x0000008 +.else .incbin "baserom.gba", 0x0B6808, 0x0000008 +.endif gUnk_080B6810:: @ 080B6810 .4byte gUnk_080B67F0 @@ -2756,16 +4765,32 @@ gUnk_080B6810:: @ 080B6810 .incbin "baserom.gba", 0x0B682C, 0x000000C gUnk_080B6838:: @ 080B6838 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5F60, 0x0000008 +.else .incbin "baserom.gba", 0x0B6838, 0x0000008 +.endif gUnk_080B6840:: @ 080B6840 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5F68, 0x0000008 +.else .incbin "baserom.gba", 0x0B6840, 0x0000008 +.endif gUnk_080B6848:: @ 080B6848 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5F70, 0x0000008 +.else .incbin "baserom.gba", 0x0B6848, 0x0000008 +.endif gUnk_080B6850:: @ 080B6850 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5F78, 0x0000008 +.else .incbin "baserom.gba", 0x0B6850, 0x0000008 +.endif gUnk_080B6858:: @ 080B6858 .4byte gUnk_080B6838 @@ -2778,16 +4803,32 @@ gUnk_080B6858:: @ 080B6858 .incbin "baserom.gba", 0x0B6874, 0x000000C gUnk_080B6880:: @ 080B6880 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5FA8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6880, 0x0000008 +.endif gUnk_080B6888:: @ 080B6888 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5FB0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6888, 0x0000008 +.endif gUnk_080B6890:: @ 080B6890 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5FB8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6890, 0x0000008 +.endif gUnk_080B6898:: @ 080B6898 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5FC0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6898, 0x0000008 +.endif gUnk_080B68A0:: @ 080B68A0 .4byte gUnk_080B6880 @@ -2800,16 +4841,32 @@ gUnk_080B68A0:: @ 080B68A0 .incbin "baserom.gba", 0x0B68BC, 0x000000C gUnk_080B68C8:: @ 080B68C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5FF0, 0x0000008 +.else .incbin "baserom.gba", 0x0B68C8, 0x0000008 +.endif gUnk_080B68D0:: @ 080B68D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B5FF8, 0x0000008 +.else .incbin "baserom.gba", 0x0B68D0, 0x0000008 +.endif gUnk_080B68D8:: @ 080B68D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6000, 0x0000008 +.else .incbin "baserom.gba", 0x0B68D8, 0x0000008 +.endif gUnk_080B68E0:: @ 080B68E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6008, 0x0000008 +.else .incbin "baserom.gba", 0x0B68E0, 0x0000008 +.endif gUnk_080B68E8:: @ 080B68E8 .4byte gUnk_080B68C8 @@ -2822,19 +4879,39 @@ gUnk_080B68E8:: @ 080B68E8 .incbin "baserom.gba", 0x0B6904, 0x000000C gUnk_080B6910:: @ 080B6910 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6038, 0x0000008 +.else .incbin "baserom.gba", 0x0B6910, 0x0000008 +.endif gUnk_080B6918:: @ 080B6918 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6040, 0x0000008 +.else .incbin "baserom.gba", 0x0B6918, 0x0000008 +.endif gUnk_080B6920:: @ 080B6920 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6048, 0x0000008 +.else .incbin "baserom.gba", 0x0B6920, 0x0000008 +.endif gUnk_080B6928:: @ 080B6928 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6050, 0x0000008 +.else .incbin "baserom.gba", 0x0B6928, 0x0000008 +.endif gUnk_080B6930:: @ 080B6930 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6058, 0x0000008 +.else .incbin "baserom.gba", 0x0B6930, 0x0000008 +.endif gUnk_080B6938:: @ 080B6938 .4byte gUnk_080B6910 @@ -2855,52 +4932,116 @@ gUnk_080B6938:: @ 080B6938 .incbin "baserom.gba", 0x0B6974, 0x000000C gUnk_080B6980:: @ 080B6980 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6980, 0x0000008 +.endif gUnk_080B6988:: @ 080B6988 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6988, 0x0000008 +.endif gUnk_080B6990:: @ 080B6990 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6990, 0x0000008 +.endif gUnk_080B6998:: @ 080B6998 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6998, 0x0000008 +.endif gUnk_080B69A0:: @ 080B69A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B69A0, 0x0000008 +.endif gUnk_080B69A8:: @ 080B69A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B69A8, 0x0000008 +.endif gUnk_080B69B0:: @ 080B69B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B69B0, 0x0000008 +.endif gUnk_080B69B8:: @ 080B69B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B69B8, 0x0000008 +.endif gUnk_080B69C0:: @ 080B69C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B69C0, 0x0000008 +.endif gUnk_080B69C8:: @ 080B69C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B69C8, 0x0000008 +.endif gUnk_080B69D0:: @ 080B69D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B60F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B69D0, 0x0000008 +.endif gUnk_080B69D8:: @ 080B69D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6100, 0x0000008 +.else .incbin "baserom.gba", 0x0B69D8, 0x0000008 +.endif gUnk_080B69E0:: @ 080B69E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6108, 0x0000008 +.else .incbin "baserom.gba", 0x0B69E0, 0x0000008 +.endif gUnk_080B69E8:: @ 080B69E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6110, 0x0000008 +.else .incbin "baserom.gba", 0x0B69E8, 0x0000008 +.endif gUnk_080B69F0:: @ 080B69F0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6118, 0x0000008 +.else .incbin "baserom.gba", 0x0B69F0, 0x0000008 +.endif gUnk_080B69F8:: @ 080B69F8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6120, 0x0000008 +.else .incbin "baserom.gba", 0x0B69F8, 0x0000008 +.endif gUnk_080B6A00:: @ 080B6A00 .4byte gUnk_080B6980 @@ -2937,52 +5078,116 @@ gUnk_080B6A00:: @ 080B6A00 .incbin "baserom.gba", 0x0B6A7C, 0x000000C gUnk_080B6A88:: @ 080B6A88 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6A88, 0x0000008 +.endif gUnk_080B6A90:: @ 080B6A90 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6A90, 0x0000008 +.endif gUnk_080B6A98:: @ 080B6A98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6A98, 0x0000008 +.endif gUnk_080B6AA0:: @ 080B6AA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AA0, 0x0000008 +.endif gUnk_080B6AA8:: @ 080B6AA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AA8, 0x0000008 +.endif gUnk_080B6AB0:: @ 080B6AB0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AB0, 0x0000008 +.endif gUnk_080B6AB8:: @ 080B6AB8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AB8, 0x0000008 +.endif gUnk_080B6AC0:: @ 080B6AC0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AC0, 0x0000008 +.endif gUnk_080B6AC8:: @ 080B6AC8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AC8, 0x0000008 +.endif gUnk_080B6AD0:: @ 080B6AD0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B61F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AD0, 0x0000008 +.endif gUnk_080B6AD8:: @ 080B6AD8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6200, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AD8, 0x0000008 +.endif gUnk_080B6AE0:: @ 080B6AE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6208, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AE0, 0x0000008 +.endif gUnk_080B6AE8:: @ 080B6AE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6210, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AE8, 0x0000008 +.endif gUnk_080B6AF0:: @ 080B6AF0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6218, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AF0, 0x0000008 +.endif gUnk_080B6AF8:: @ 080B6AF8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6220, 0x0000008 +.else .incbin "baserom.gba", 0x0B6AF8, 0x0000008 +.endif gUnk_080B6B00:: @ 080B6B00 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6228, 0x0000008 +.else .incbin "baserom.gba", 0x0B6B00, 0x0000008 +.endif gUnk_080B6B08:: @ 080B6B08 .4byte gUnk_080B6A88 @@ -3019,16 +5224,32 @@ gUnk_080B6B08:: @ 080B6B08 .incbin "baserom.gba", 0x0B6B84, 0x000000C gUnk_080B6B90:: @ 080B6B90 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B62B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6B90, 0x0000008 +.endif gUnk_080B6B98:: @ 080B6B98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B62C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6B98, 0x0000008 +.endif gUnk_080B6BA0:: @ 080B6BA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B62C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6BA0, 0x0000008 +.endif gUnk_080B6BA8:: @ 080B6BA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B62D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6BA8, 0x0000008 +.endif gUnk_080B6BB0:: @ 080B6BB0 .4byte gUnk_080B6B90 @@ -3041,16 +5262,32 @@ gUnk_080B6BB0:: @ 080B6BB0 .incbin "baserom.gba", 0x0B6BCC, 0x000000C gUnk_080B6BD8:: @ 080B6BD8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6300, 0x0000008 +.else .incbin "baserom.gba", 0x0B6BD8, 0x0000008 +.endif gUnk_080B6BE0:: @ 080B6BE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6308, 0x0000008 +.else .incbin "baserom.gba", 0x0B6BE0, 0x0000008 +.endif gUnk_080B6BE8:: @ 080B6BE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6310, 0x0000008 +.else .incbin "baserom.gba", 0x0B6BE8, 0x0000008 +.endif gUnk_080B6BF0:: @ 080B6BF0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6318, 0x0000008 +.else .incbin "baserom.gba", 0x0B6BF0, 0x0000008 +.endif gUnk_080B6BF8:: @ 080B6BF8 .4byte gUnk_080B6BD8 @@ -3063,25 +5300,53 @@ gUnk_080B6BF8:: @ 080B6BF8 .incbin "baserom.gba", 0x0B6C14, 0x000000C gUnk_080B6C20:: @ 080B6C20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6348, 0x0000008 +.else .incbin "baserom.gba", 0x0B6C20, 0x0000008 +.endif gUnk_080B6C28:: @ 080B6C28 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6350, 0x0000008 +.else .incbin "baserom.gba", 0x0B6C28, 0x0000008 +.endif gUnk_080B6C30:: @ 080B6C30 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6358, 0x0000008 +.else .incbin "baserom.gba", 0x0B6C30, 0x0000008 +.endif gUnk_080B6C38:: @ 080B6C38 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6360, 0x0000008 +.else .incbin "baserom.gba", 0x0B6C38, 0x0000008 +.endif gUnk_080B6C40:: @ 080B6C40 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6368, 0x0000008 +.else .incbin "baserom.gba", 0x0B6C40, 0x0000008 +.endif gUnk_080B6C48:: @ 080B6C48 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6370, 0x0000008 +.else .incbin "baserom.gba", 0x0B6C48, 0x0000008 +.endif gUnk_080B6C50:: @ 080B6C50 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6378, 0x0000008 +.else .incbin "baserom.gba", 0x0B6C50, 0x0000008 +.endif gUnk_080B6C58:: @ 080B6C58 .4byte gUnk_080B6C20 @@ -3100,16 +5365,32 @@ gUnk_080B6C58:: @ 080B6C58 .incbin "baserom.gba", 0x0B6C8C, 0x000000C gUnk_080B6C98:: @ 080B6C98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B63C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6C98, 0x0000008 +.endif gUnk_080B6CA0:: @ 080B6CA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B63C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6CA0, 0x0000008 +.endif gUnk_080B6CA8:: @ 080B6CA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B63D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6CA8, 0x0000008 +.endif gUnk_080B6CB0:: @ 080B6CB0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B63D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6CB0, 0x0000008 +.endif gUnk_080B6CB8:: @ 080B6CB8 .4byte gUnk_080B6C98 @@ -3122,16 +5403,32 @@ gUnk_080B6CB8:: @ 080B6CB8 .incbin "baserom.gba", 0x0B6CD4, 0x000000C gUnk_080B6CE0:: @ 080B6CE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6408, 0x0000008 +.else .incbin "baserom.gba", 0x0B6CE0, 0x0000008 +.endif gUnk_080B6CE8:: @ 080B6CE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6410, 0x0000008 +.else .incbin "baserom.gba", 0x0B6CE8, 0x0000008 +.endif gUnk_080B6CF0:: @ 080B6CF0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6418, 0x0000008 +.else .incbin "baserom.gba", 0x0B6CF0, 0x0000008 +.endif gUnk_080B6CF8:: @ 080B6CF8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6420, 0x0000008 +.else .incbin "baserom.gba", 0x0B6CF8, 0x0000008 +.endif gUnk_080B6D00:: @ 080B6D00 .4byte gUnk_080B6CE0 @@ -3144,52 +5441,116 @@ gUnk_080B6D00:: @ 080B6D00 .incbin "baserom.gba", 0x0B6D1C, 0x000000C gUnk_080B6D28:: @ 080B6D28 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6450, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D28, 0x0000008 +.endif gUnk_080B6D30:: @ 080B6D30 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6458, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D30, 0x0000008 +.endif gUnk_080B6D38:: @ 080B6D38 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6460, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D38, 0x0000008 +.endif gUnk_080B6D40:: @ 080B6D40 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6468, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D40, 0x0000008 +.endif gUnk_080B6D48:: @ 080B6D48 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6470, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D48, 0x0000008 +.endif gUnk_080B6D50:: @ 080B6D50 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6478, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D50, 0x0000008 +.endif gUnk_080B6D58:: @ 080B6D58 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6480, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D58, 0x0000008 +.endif gUnk_080B6D60:: @ 080B6D60 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6488, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D60, 0x0000008 +.endif gUnk_080B6D68:: @ 080B6D68 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6490, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D68, 0x0000008 +.endif gUnk_080B6D70:: @ 080B6D70 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6498, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D70, 0x0000008 +.endif gUnk_080B6D78:: @ 080B6D78 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B64A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D78, 0x0000008 +.endif gUnk_080B6D80:: @ 080B6D80 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B64A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D80, 0x0000008 +.endif gUnk_080B6D88:: @ 080B6D88 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B64B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D88, 0x0000008 +.endif gUnk_080B6D90:: @ 080B6D90 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B64B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D90, 0x0000008 +.endif gUnk_080B6D98:: @ 080B6D98 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B64C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6D98, 0x0000008 +.endif gUnk_080B6DA0:: @ 080B6DA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B64C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6DA0, 0x0000008 +.endif gUnk_080B6DA8:: @ 080B6DA8 .4byte gUnk_080B6D28 @@ -3258,52 +5619,116 @@ gUnk_080B6E60:: @ 080B6E60 .incbin "baserom.gba", 0x0B6E9C, 0x000000C gUnk_080B6EA8:: @ 080B6EA8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B65D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EA8, 0x0000008 +.endif gUnk_080B6EB0:: @ 080B6EB0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B65D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EB0, 0x0000008 +.endif gUnk_080B6EB8:: @ 080B6EB8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B65E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EB8, 0x0000008 +.endif gUnk_080B6EC0:: @ 080B6EC0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B65E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EC0, 0x0000008 +.endif gUnk_080B6EC8:: @ 080B6EC8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B65F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EC8, 0x0000008 +.endif gUnk_080B6ED0:: @ 080B6ED0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B65F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6ED0, 0x0000008 +.endif gUnk_080B6ED8:: @ 080B6ED8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6600, 0x0000008 +.else .incbin "baserom.gba", 0x0B6ED8, 0x0000008 +.endif gUnk_080B6EE0:: @ 080B6EE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6608, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EE0, 0x0000008 +.endif gUnk_080B6EE8:: @ 080B6EE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6610, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EE8, 0x0000008 +.endif gUnk_080B6EF0:: @ 080B6EF0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6618, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EF0, 0x0000008 +.endif gUnk_080B6EF8:: @ 080B6EF8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6620, 0x0000008 +.else .incbin "baserom.gba", 0x0B6EF8, 0x0000008 +.endif gUnk_080B6F00:: @ 080B6F00 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6628, 0x0000008 +.else .incbin "baserom.gba", 0x0B6F00, 0x0000008 +.endif gUnk_080B6F08:: @ 080B6F08 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6630, 0x0000008 +.else .incbin "baserom.gba", 0x0B6F08, 0x0000008 +.endif gUnk_080B6F10:: @ 080B6F10 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6638, 0x0000008 +.else .incbin "baserom.gba", 0x0B6F10, 0x0000008 +.endif gUnk_080B6F18:: @ 080B6F18 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6640, 0x0000008 +.else .incbin "baserom.gba", 0x0B6F18, 0x0000008 +.endif gUnk_080B6F20:: @ 080B6F20 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6648, 0x0000008 +.else .incbin "baserom.gba", 0x0B6F20, 0x0000008 +.endif gUnk_080B6F28:: @ 080B6F28 .4byte gUnk_080B6EA8 @@ -3340,28 +5765,60 @@ gUnk_080B6F28:: @ 080B6F28 .incbin "baserom.gba", 0x0B6FA4, 0x000000C gUnk_080B6FB0:: @ 080B6FB0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B66D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6FB0, 0x0000008 +.endif gUnk_080B6FB8:: @ 080B6FB8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B66E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6FB8, 0x0000008 +.endif gUnk_080B6FC0:: @ 080B6FC0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B66E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6FC0, 0x0000008 +.endif gUnk_080B6FC8:: @ 080B6FC8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B66F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B6FC8, 0x0000008 +.endif gUnk_080B6FD0:: @ 080B6FD0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B66F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B6FD0, 0x0000008 +.endif gUnk_080B6FD8:: @ 080B6FD8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6700, 0x0000008 +.else .incbin "baserom.gba", 0x0B6FD8, 0x0000008 +.endif gUnk_080B6FE0:: @ 080B6FE0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6708, 0x0000008 +.else .incbin "baserom.gba", 0x0B6FE0, 0x0000008 +.endif gUnk_080B6FE8:: @ 080B6FE8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6710, 0x0000008 +.else .incbin "baserom.gba", 0x0B6FE8, 0x0000008 +.endif gUnk_080B6FF0:: @ 080B6FF0 .4byte gUnk_080B6FB0 @@ -3394,52 +5851,116 @@ gUnk_080B6FF0:: @ 080B6FF0 .incbin "baserom.gba", 0x0B705C, 0x000000C gUnk_080B7068:: @ 080B7068 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6790, 0x0000008 +.else .incbin "baserom.gba", 0x0B7068, 0x0000008 +.endif gUnk_080B7070:: @ 080B7070 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6798, 0x0000008 +.else .incbin "baserom.gba", 0x0B7070, 0x0000008 +.endif gUnk_080B7078:: @ 080B7078 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B7078, 0x0000008 +.endif gUnk_080B7080:: @ 080B7080 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B7080, 0x0000008 +.endif gUnk_080B7088:: @ 080B7088 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B7088, 0x0000008 +.endif gUnk_080B7090:: @ 080B7090 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B7090, 0x0000008 +.endif gUnk_080B7098:: @ 080B7098 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B7098, 0x0000008 +.endif gUnk_080B70A0:: @ 080B70A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B70A0, 0x0000008 +.endif gUnk_080B70A8:: @ 080B70A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B70A8, 0x0000008 +.endif gUnk_080B70B0:: @ 080B70B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B70B0, 0x0000008 +.endif gUnk_080B70B8:: @ 080B70B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B70B8, 0x0000008 +.endif gUnk_080B70C0:: @ 080B70C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B70C0, 0x0000008 +.endif gUnk_080B70C8:: @ 080B70C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B70C8, 0x0000008 +.endif gUnk_080B70D0:: @ 080B70D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B67F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B70D0, 0x0000008 +.endif gUnk_080B70D8:: @ 080B70D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6800, 0x0000008 +.else .incbin "baserom.gba", 0x0B70D8, 0x0000008 +.endif gUnk_080B70E0:: @ 080B70E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6808, 0x0000008 +.else .incbin "baserom.gba", 0x0B70E0, 0x0000008 +.endif gUnk_080B70E8:: @ 080B70E8 .4byte gUnk_080B7068 @@ -3476,52 +5997,116 @@ gUnk_080B70E8:: @ 080B70E8 .incbin "baserom.gba", 0x0B7164, 0x000000C gUnk_080B7170:: @ 080B7170 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6898, 0x0000008 +.else .incbin "baserom.gba", 0x0B7170, 0x0000008 +.endif gUnk_080B7178:: @ 080B7178 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68A0, 0x0000008 +.else .incbin "baserom.gba", 0x0B7178, 0x0000008 +.endif gUnk_080B7180:: @ 080B7180 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68A8, 0x0000008 +.else .incbin "baserom.gba", 0x0B7180, 0x0000008 +.endif gUnk_080B7188:: @ 080B7188 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68B0, 0x0000008 +.else .incbin "baserom.gba", 0x0B7188, 0x0000008 +.endif gUnk_080B7190:: @ 080B7190 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68B8, 0x0000008 +.else .incbin "baserom.gba", 0x0B7190, 0x0000008 +.endif gUnk_080B7198:: @ 080B7198 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68C0, 0x0000008 +.else .incbin "baserom.gba", 0x0B7198, 0x0000008 +.endif gUnk_080B71A0:: @ 080B71A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68C8, 0x0000008 +.else .incbin "baserom.gba", 0x0B71A0, 0x0000008 +.endif gUnk_080B71A8:: @ 080B71A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68D0, 0x0000008 +.else .incbin "baserom.gba", 0x0B71A8, 0x0000008 +.endif gUnk_080B71B0:: @ 080B71B0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68D8, 0x0000008 +.else .incbin "baserom.gba", 0x0B71B0, 0x0000008 +.endif gUnk_080B71B8:: @ 080B71B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68E0, 0x0000008 +.else .incbin "baserom.gba", 0x0B71B8, 0x0000008 +.endif gUnk_080B71C0:: @ 080B71C0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68E8, 0x0000008 +.else .incbin "baserom.gba", 0x0B71C0, 0x0000008 +.endif gUnk_080B71C8:: @ 080B71C8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68F0, 0x0000008 +.else .incbin "baserom.gba", 0x0B71C8, 0x0000008 +.endif gUnk_080B71D0:: @ 080B71D0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B68F8, 0x0000008 +.else .incbin "baserom.gba", 0x0B71D0, 0x0000008 +.endif gUnk_080B71D8:: @ 080B71D8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6900, 0x0000008 +.else .incbin "baserom.gba", 0x0B71D8, 0x0000008 +.endif gUnk_080B71E0:: @ 080B71E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6908, 0x0000008 +.else .incbin "baserom.gba", 0x0B71E0, 0x0000008 +.endif gUnk_080B71E8:: @ 080B71E8 +.ifdef EU + .incbin "baserom_eu.gba", 0x0B6910, 0x0000008 +.else .incbin "baserom.gba", 0x0B71E8, 0x0000008 +.endif gUnk_080B71F0:: @ 080B71F0 .4byte gUnk_080B7170 diff --git a/data/data_080B7B74.s b/data/data_080B7B74.s index e6b2417d..32ea1744 100644 --- a/data/data_080B7B74.s +++ b/data/data_080B7B74.s @@ -14,7 +14,11 @@ gUnk_080BA2C0:: @ 080BA2C0 .incbin "baserom.gba", 0x0BA2C0, 0x0000FE0 gUnk_080BB2A0:: @ 080BB2A0 +.ifdef EU + .incbin "baserom_eu.gba", 0x0BA9C8, 0x0001100 @ TODO only small differences +.else .incbin "baserom.gba", 0x0BB2A0, 0x0001100 +.endif gUnk_080BC3A0:: @ 080BC3A0 .incbin "baserom.gba", 0x0BC3A0, 0x000080A @@ -596,12 +600,22 @@ gUnk_080C303F:: @ 080C303F .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0C2DDF, 0x00032A4 +.else +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C2767, 0x00032A4 .else .incbin "baserom.gba", 0x0C303F, 0x00032A4 .endif +.endif gUnk_080C62E3:: @ 080C62E3 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C5A0B, 0x000207D +.else .incbin "baserom.gba", 0x0C62E3, 0x000207D +.endif gUnk_080C8360:: @ 080C8360 .incbin "baserom.gba", 0x0C8360, 0x0000BCC @@ -620,27 +634,82 @@ gUnk_080C8F7C:: @ 080C8F7C gUnk_080C8F8C:: @ 080C8F8C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C86B4, 0x0000008 +.else .incbin "baserom.gba", 0x0C8F8C, 0x0000008 +.endif .4byte sub_0801CB78 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C86C0, 0x000000C +.else .incbin "baserom.gba", 0x0C8F98, 0x000000C +.endif .4byte sub_0801CB78 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C86D0, 0x000000C +.else .incbin "baserom.gba", 0x0C8FA8, 0x000000C +.endif .4byte sub_0801CB78 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C86E0, 0x000000C +.else .incbin "baserom.gba", 0x0C8FB8, 0x000000C +.endif .4byte sub_0801CCB0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C86F0, 0x000000C +.else .incbin "baserom.gba", 0x0C8FC8, 0x000000C +.endif .4byte sub_0801CCB0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8700, 0x000000C +.else .incbin "baserom.gba", 0x0C8FD8, 0x000000C +.endif .4byte sub_0801CD94 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8710, 0x000000C +.else .incbin "baserom.gba", 0x0C8FE8, 0x000000C +.endif .4byte sub_0801CE58 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8720, 0x000000C +.else .incbin "baserom.gba", 0x0C8FF8, 0x000000C +.endif .4byte EzloNag +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8730, 0x000000C +.else .incbin "baserom.gba", 0x0C9008, 0x000000C +.endif .4byte EzloNag +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8740, 0x000000C +.else .incbin "baserom.gba", 0x0C9018, 0x000000C +.endif .4byte sub_0801CD94 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8750, 0x000000C +.else .incbin "baserom.gba", 0x0C9028, 0x000000C +.endif .4byte sub_0801CD94 .incbin "baserom.gba", 0x0C9038, 0x0000004 diff --git a/data/data_080C93E0.s b/data/data_080C93E0.s index c52d6a80..1e84ada0 100644 --- a/data/data_080C93E0.s +++ b/data/data_080C93E0.s @@ -17,13 +17,28 @@ gUnk_080C9488:: @ 080C9488 .4byte gUnk_080C9480 gUnk_080C948C:: @ 080C948C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8BB4, 0x0000018 +.else .incbin "baserom.gba", 0x0C948C, 0x0000018 +.endif gUnk_080C94A4:: @ 080C94A4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8BCC, 0x0000070 +.else .incbin "baserom.gba", 0x0C94A4, 0x0000070 +.endif gUnk_080C9514:: @ 080C9514 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8C3C, 0x0000028 +.else .incbin "baserom.gba", 0x0C9514, 0x0000028 +.endif gUnk_080C953C:: @ 080C953C .4byte gUnk_080C948C @@ -31,16 +46,36 @@ gUnk_080C953C:: @ 080C953C .4byte gUnk_080C9514 gUnk_080C9548:: @ 080C9548 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8C70, 0x0000028 +.else .incbin "baserom.gba", 0x0C9548, 0x0000028 +.endif gUnk_080C9570:: @ 080C9570 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8C98, 0x0000048 +.else .incbin "baserom.gba", 0x0C9570, 0x0000048 +.endif gUnk_080C95B8:: @ 080C95B8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8CE0, 0x0000038 +.else .incbin "baserom.gba", 0x0C95B8, 0x0000038 +.endif gUnk_080C95F0:: @ 080C95F0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8D18, 0x0000010 +.else .incbin "baserom.gba", 0x0C95F0, 0x0000010 +.endif gUnk_080C9600:: @ 080C9600 .4byte gUnk_080C9548 @@ -49,13 +84,28 @@ gUnk_080C9600:: @ 080C9600 .4byte gUnk_080C95F0 gUnk_080C9610:: @ 080C9610 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8D38, 0x0000038 +.else .incbin "baserom.gba", 0x0C9610, 0x0000038 +.endif gUnk_080C9648:: @ 080C9648 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8D70, 0x0000080 +.else .incbin "baserom.gba", 0x0C9648, 0x0000080 +.endif gUnk_080C96C8:: @ 080C96C8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8DF0, 0x0000030 +.else .incbin "baserom.gba", 0x0C96C8, 0x0000030 +.endif gUnk_080C96F8:: @ 080C96F8 .4byte gUnk_080C9610 @@ -63,13 +113,28 @@ gUnk_080C96F8:: @ 080C96F8 .4byte gUnk_080C96C8 gUnk_080C9704:: @ 080C9704 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8E2C, 0x0000090 +.else .incbin "baserom.gba", 0x0C9704, 0x0000090 +.endif gUnk_080C9794:: @ 080C9794 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8EBC, 0x00000C0 +.else .incbin "baserom.gba", 0x0C9794, 0x00000C0 +.endif gUnk_080C9854:: @ 080C9854 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8F7C, 0x0000010 +.else .incbin "baserom.gba", 0x0C9854, 0x0000010 +.endif gUnk_080C9864:: @ 080C9864 .4byte gUnk_080C9704 @@ -77,39 +142,64 @@ gUnk_080C9864:: @ 080C9864 .4byte gUnk_080C9854 gUnk_080C9870:: @ 080C9870 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C8F98, 0x0000078 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C9610, 0x0000078 .else .incbin "baserom.gba", 0x0C9870, 0x0000078 .endif +.endif gUnk_080C98E8:: @ 080C98E8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C9010, 0x0000040 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C9688, 0x0000040 .else .incbin "baserom.gba", 0x0C98E8, 0x0000040 .endif +.endif gUnk_080C9928:: @ 080C9928 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C9050, 0x0000060 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C96C8, 0x0000060 .else .incbin "baserom.gba", 0x0C9928, 0x0000060 .endif +.endif gUnk_080C9988:: @ 080C9988 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C90B0, 0x0000060 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C9728, 0x0000060 .else .incbin "baserom.gba", 0x0C9988, 0x0000060 .endif +.endif gUnk_080C99E8:: @ 080C99E8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C9110, 0x0000048 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C9788, 0x0000048 .else .incbin "baserom.gba", 0x0C99E8, 0x0000048 .endif +.endif gUnk_080C9A30:: @ 080C9A30 .4byte gUnk_080C9870 @@ -119,39 +209,64 @@ gUnk_080C9A30:: @ 080C9A30 .4byte gUnk_080C99E8 gUnk_080C9A44:: @ 080C9A44 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C916C, 0x0000038 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C97E4, 0x0000038 .else .incbin "baserom.gba", 0x0C9A44, 0x0000038 .endif +.endif gUnk_080C9A7C:: @ 080C9A7C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C91A4, 0x00000B0 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C981C, 0x00000B0 .else .incbin "baserom.gba", 0x0C9A7C, 0x00000B0 .endif +.endif gUnk_080C9B2C:: @ 080C9B2C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C9254, 0x0000088 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C98CC, 0x0000088 .else .incbin "baserom.gba", 0x0C9B2C, 0x0000088 .endif +.endif gUnk_080C9BB4:: @ 080C9BB4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C92DC, 0x0000068 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C9954, 0x0000068 .else .incbin "baserom.gba", 0x0C9BB4, 0x0000068 .endif +.endif gUnk_080C9C1C:: @ 080C9C1C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0C9344, 0x0000020 +.else .ifdef JP .incbin "baserom_jp.gba", 0x0C99BC, 0x0000020 .else .incbin "baserom.gba", 0x0C9C1C, 0x0000020 .endif +.endif gUnk_080C9C3C:: @ 080C9C3C .4byte gUnk_080C9A44 @@ -182,12 +297,20 @@ gUnk_080C9CBC:: @ 080C9CBC .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0C9A5C, 0x00003B0 +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0C93E4, 0x00003B0 .else .incbin "baserom.gba", 0x0C9CBC, 0x00003B0 .endif +.endif gUnk_080CA06C:: @ 080CA06C +.ifdef EU + .incbin "baserom_eu.gba", 0x0C9794, 0x00000B0 +.else .incbin "baserom.gba", 0x0CA06C, 0x00000B0 +.endif gUnk_080CA11C:: @ 080CA11C .incbin "baserom.gba", 0x0CA11C, 0x0000014 diff --git a/data/data_080D5360.s b/data/data_080D5360.s index 40cc38c1..6705401a 100644 --- a/data/data_080D5360.s +++ b/data/data_080D5360.s @@ -244,7 +244,12 @@ gUnk_080D5978:: @ 080D5978 .incbin "baserom.gba", 0x0D5978, 0x00000B0 gUnk_080D5A28:: @ 080D5A28 +.ifdef EU + @ TODO data added in between + .incbin "baserom_eu.gba", 0x0D5154, 0x00000A0 +.else .incbin "baserom.gba", 0x0D5A28, 0x0000070 +.endif gUnk_080D5A98:: @ 080D5A98 .incbin "baserom.gba", 0x0D5A98, 0x0000010 @@ -1891,8 +1896,12 @@ gUnk_080D8FB8:: @ 080D8FB8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D8D58, 0x000005C +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0D8D58, 0x000005C .else .incbin "baserom.gba", 0x0D8FB8, 0x000005C +.endif .endif .4byte script_08009698 .incbin "baserom.gba", 0x0D9018, 0x000000C @@ -1900,9 +1909,13 @@ gUnk_080D8FB8:: @ 080D8FB8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D8DC8, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0D8DC8, 0x0000020 .else .incbin "baserom.gba", 0x0D9028, 0x0000020 .endif +.endif gUnk_080D9048:: @ 080D9048 .incbin "baserom.gba", 0x0D9048, 0x0000050 @@ -1930,9 +1943,13 @@ gUnk_080D9128:: @ 080D9128 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D8EC8, 0x00000C0 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0D8EC8, 0x00000C0 .else .incbin "baserom.gba", 0x0D9128, 0x00000C0 .endif +.endif gUnk_080D91E8:: @ 080D91E8 .incbin "baserom.gba", 0x0D91E8, 0x0000090 @@ -1941,9 +1958,13 @@ gUnk_080D9278:: @ 080D9278 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D9018, 0x0000018 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0D9018, 0x0000018 .else .incbin "baserom.gba", 0x0D9278, 0x0000018 .endif +.endif Room_RoyalValley_Main:: @ 080D9290 .4byte gUnk_080D8FB8 @@ -1968,9 +1989,13 @@ gUnk_080D9328:: @ 080D9328 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D90C8, 0x0000010 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0D90C8, 0x0000010 .else .incbin "baserom.gba", 0x0D9328, 0x0000010 .endif +.endif gUnk_080D9338:: @ 080D9338 .incbin "baserom.gba", 0x0D9338, 0x0000008 @@ -2146,8 +2171,14 @@ gUnk_080D9AD8:: @ 080D9AD8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D9878, 0x000004C +.else +.ifdef EU + @ TODO only small differences + @ TODO remove the 0x10 bytes at the correct place (not here) + .incbin "baserom_eu.gba", 0x0D9234, 0x000004C .else .incbin "baserom.gba", 0x0D9AD8, 0x000004C +.endif .endif .4byte script_0800B200 .incbin "baserom.gba", 0x0D9B28, 0x000000C @@ -2161,9 +2192,13 @@ gUnk_080D9AD8:: @ 080D9AD8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D9908, 0x00000D0 +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0D92C4, 0x00000C0 .else .incbin "baserom.gba", 0x0D9B68, 0x00000D0 .endif +.endif gUnk_080D9C38:: @ 080D9C38 .incbin "baserom.gba", 0x0D9C38, 0x0000070 @@ -2171,9 +2206,13 @@ gUnk_080D9CA8:: @ 080D9CA8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D9A48, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0D9A48, 0x0000020 .else .incbin "baserom.gba", 0x0D9CA8, 0x0000020 .endif +.endif gUnk_080D9CC8:: @ 080D9CC8 .incbin "baserom.gba", 0x0D9CC8, 0x0000020 @@ -2196,9 +2235,13 @@ gUnk_080D9E58:: @ 080D9E58 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0D9BF8, 0x0000010 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0D9BF8, 0x0000010 .else .incbin "baserom.gba", 0x0D9E58, 0x0000010 .endif +.endif gUnk_080D9E68:: @ 080D9E68 .incbin "baserom.gba", 0x0D9E68, 0x0000040 @@ -2500,9 +2543,13 @@ Room_GardenFountains_East:: @ 080DA514 gUnk_080DA534:: @ 080DA534 .ifdef JP .incbin "baserom_jp.gba", 0x0DA2D4, 0x40 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DA2D4, 0x40 .else .incbin "baserom.gba", 0x0DA534, 0x0000050 .endif +.endif gUnk_080DA584:: @ 080DA584 .incbin "baserom.gba", 0x0DA584, 0x0000010 @@ -4128,9 +4175,13 @@ gUnk_080DD344:: @ 080DD344 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DD0D4, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DD0D4, 0x0000020 .else .incbin "baserom.gba", 0x0DD344, 0x0000020 .endif +.endif gUnk_080DD364:: @ 080DD364 .incbin "baserom.gba", 0x0DD364, 0x000000C @@ -4160,9 +4211,13 @@ gUnk_080DD40C:: @ 080DD40C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DD19C, 0x0000090 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DD19C, 0x0000090 .else .incbin "baserom.gba", 0x0DD40C, 0x0000090 .endif +.endif gUnk_080DD49C:: @ 080DD49C .incbin "baserom.gba", 0x0DD49C, 0x0000130 @@ -4177,9 +4232,13 @@ gUnk_080DD6CC:: @ 080DD6CC .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DD45C, 0x0000040 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DD45C, 0x0000040 .else .incbin "baserom.gba", 0x0DD6CC, 0x0000040 .endif +.endif Room_CloudTops_Middle:: @ 080DD70C .4byte gUnk_080DD40C @@ -4208,17 +4267,25 @@ gUnk_080DD790:: @ 080DD790 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DD520, 0x0000050 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DD520, 0x0000050 .else .incbin "baserom.gba", 0x0DD790, 0x0000050 .endif +.endif gUnk_080DD7E0:: @ 080DD7E0 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DD570, 0x0000040 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DD570, 0x0000040 .else .incbin "baserom.gba", 0x0DD7E0, 0x0000040 .endif +.endif gUnk_080DD820:: @ 080DD820 .incbin "baserom.gba", 0x0DD820, 0x0000020 @@ -4227,9 +4294,13 @@ gUnk_080DD840:: @ 080DD840 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DD5D0, 0x0000040 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DD5D0, 0x0000040 .else .incbin "baserom.gba", 0x0DD840, 0x0000040 .endif +.endif gUnk_080DD880:: @ 080DD880 .incbin "baserom.gba", 0x0DD880, 0x0000020 @@ -4238,11 +4309,24 @@ gUnk_080DD8A0:: @ 080DD8A0 .incbin "baserom.gba", 0x0DD8A0, 0x0000050 gUnk_080DD8F0:: @ 080DD8F0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0DD02C, 0x00000A8 +.else .incbin "baserom.gba", 0x0DD8F0, 0x00000A8 +.endif + +.ifdef EU + .4byte 0 + .incbin "baserom.gba", 0x0DD98C, 0x000000C + .4byte script_0800D6D0 + .incbin "baserom.gba", 0x0DD99C, 0x000000C +.else .4byte script_0800D6D0 .incbin "baserom.gba", 0x0DD99C, 0x000000C .4byte script_0800D6F0 .incbin "baserom.gba", 0x0DD9AC, 0x000000C +.endif .4byte script_0800D6F0 .incbin "baserom.gba", 0x0DD9BC, 0x000000C .4byte script_0800D6B4 @@ -4311,9 +4395,13 @@ gUnk_080DDC00:: @ 080DDC00 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DD990, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DD990, 0x0000020 .else .incbin "baserom.gba", 0x0DDC00, 0x0000020 .endif +.endif gUnk_080DDC20:: @ 080DDC20 .incbin "baserom.gba", 0x0DDC20, 0x0000030 @@ -4325,9 +4413,13 @@ gUnk_080DDCD0:: @ 080DDCD0 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DDA60, 0x0000010 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DDA60, 0x0000010 .else .incbin "baserom.gba", 0x0DDCD0, 0x0000010 .endif +.endif gUnk_080DDCE0:: @ 080DDCE0 .incbin "baserom.gba", 0x0DDCE0, 0x0000010 @@ -4366,9 +4458,13 @@ gUnk_080DDD84:: @ 080DDD84 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DDB14, 0x0000030 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DDB14, 0x0000030 .else .incbin "baserom.gba", 0x0DDD84, 0x0000030 .endif +.endif gUnk_080DDDB4:: @ 080DDDB4 .incbin "baserom.gba", 0x0DDDB4, 0x0000040 @@ -4398,9 +4494,13 @@ gUnk_080DDE48:: @ 080DDE48 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DDBD8, 0x0000040 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DDBD8, 0x0000040 .else .incbin "baserom.gba", 0x0DDE48, 0x0000040 .endif +.endif gUnk_080DDE88:: @ 080DDE88 .incbin "baserom.gba", 0x0DDE88, 0x0000020 @@ -4462,9 +4562,13 @@ gUnk_080DDFE8:: @ 080DDFE8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DDD78, 0x0000018 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DDD78, 0x0000018 .else .incbin "baserom.gba", 0x0DDFE8, 0x0000018 .endif +.endif gUnk_080DE000:: @ 080DE000 .incbin "baserom.gba", 0x0DE000, 0x0000008 @@ -4484,9 +4588,13 @@ gUnk_080DE0E8:: @ 080DE0E8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DDE78, 0x0000030 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DDE78, 0x0000030 .else .incbin "baserom.gba", 0x0DE0E8, 0x0000030 .endif +.endif gUnk_080DE118:: @ 080DE118 .incbin "baserom.gba", 0x0DE118, 0x0000014 @@ -4506,9 +4614,13 @@ gUnk_080DE150:: @ 080DE150 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DDEE0, 0x0000090 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DDEE0, 0x0000090 .else .incbin "baserom.gba", 0x0DE150, 0x0000090 .endif +.endif gUnk_080DE1E0:: @ 080DE1E0 .incbin "baserom.gba", 0x0DE1E0, 0x0000020 @@ -4532,9 +4644,14 @@ gUnk_080DE320:: @ 080DE320 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0DE0B0, 0x0000018 +.else +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0DDA5C, 0x0000018 .else .incbin "baserom.gba", 0x0DE320, 0x0000018 .endif +.endif gUnk_080DE338:: @ 080DE338 .incbin "baserom.gba", 0x0DE338, 0x0000014 @@ -4891,9 +5008,13 @@ Room_DeepwoodShrine_BossKey:: @ 080DF46C gUnk_080DF48C:: @ 080DF48C .ifdef JP .incbin "baserom_jp.gba", 0x0DF21C, 0x00000E0 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DF21C, 0x00000E0 .else .incbin "baserom.gba", 0x0DF48C, 0x00000F0 .endif +.endif gUnk_080DF57C:: @ 080DF57C .incbin "baserom.gba", 0x0DF57C, 0x0000020 @@ -4958,9 +5079,13 @@ gUnk_080DF72C:: @ 080DF72C gUnk_080DF7FE:: @ 080DF7FE .ifdef JP .incbin "baserom_jp.gba", 0x0DF57E, 0x000002E +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0DF57E, 0x000002E .else .incbin "baserom.gba", 0x0DF7FE, 0x000003E .endif +.endif gUnk_080DF83C:: @ 080DF83C .incbin "baserom.gba", 0x0DF83C, 0x0000020 @@ -6399,9 +6524,13 @@ Room_FortressOfWinds_Stalfos:: @ 080E2D60 gUnk_080E2D84:: @ 080E2D84 .ifdef JP .incbin "baserom_jp.gba", 0x0E2AF4, 0x0000090 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0E2AF4, 0x0000090 .else .incbin "baserom.gba", 0x0E2D84, 0x00000B0 .endif +.endif gUnk_080E2E34:: @ 080E2E34 .incbin "baserom.gba", 0x0E2E34, 0x0000010 @@ -8784,7 +8913,11 @@ gUnk_080E9F20:: @ 080E9F20 .4byte gUnk_080E9F00 gUnk_080E9F4C:: @ 080E9F4C +.ifdef EU + .incbin "baserom_eu.gba", 0x0E9648, 0x0000150 +.else .incbin "baserom.gba", 0x0E9F4C, 0x0000150 +.endif gUnk_080EA09C:: @ 080EA09C .incbin "baserom.gba", 0x0EA09C, 0x0000050 @@ -9037,9 +9170,13 @@ Room_DarkHyruleCastleBridge_Main:: @ 080EAC40 gUnk_080EAC60:: @ 080EAC60 .ifdef JP .incbin "baserom_jp.gba", 0x0EA9B0, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0EA9B0, 0x0000020 .else .incbin "baserom.gba", 0x0EAC60, 0x0000030 .endif +.endif gUnk_080EAC90:: @ 080EAC90 .incbin "baserom.gba", 0x0EAC90, 0x0000010 @@ -9060,9 +9197,13 @@ Room_VaatisArms_First:: @ 080EACA8 gUnk_080EACC8:: @ 080EACC8 .ifdef JP .incbin "baserom_jp.gba", 0x0EAA08, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0EAA08, 0x0000020 .else .incbin "baserom.gba", 0x0EACC8, 0x0000030 .endif +.endif gUnk_080EACF8:: @ 080EACF8 .incbin "baserom.gba", 0x0EACF8, 0x0000010 @@ -9131,7 +9272,13 @@ gUnk_080EAE60:: @ 080EAE60 .4byte script_0800E154 .incbin "baserom.gba", 0x0EAE80, 0x000000C .4byte script_0800E200 +.ifdef EU + .incbin "baserom.gba", 0x0EAE90, 0x0000010 + @ TODO 0x10 bytes between here is missing in EU + .incbin "baserom.gba", 0x0EAEB0, 0x0000010 +.else .incbin "baserom.gba", 0x0EAE90, 0x0000030 +.endif gUnk_080EAEC0:: @ 080EAEC0 .incbin "baserom.gba", 0x0EAEC0, 0x000000C @@ -9460,7 +9607,12 @@ gUnk_080EB9E4:: @ 080EB9E4 gUnk_080EB9F4:: @ 080EB9F4 .incbin "baserom.gba", 0x0EB9F4, 0x000000C .4byte script_0800E544 +.ifdef EU + .incbin "baserom.gba", 0x0EBA04, 0x0000050 + .incbin "baserom.gba", 0x0EBA94, 0x0000010 +.else .incbin "baserom.gba", 0x0EBA04, 0x00000A0 +.endif gUnk_080EBAA4:: @ 080EBAA4 .incbin "baserom.gba", 0x0EBAA4, 0x000000C @@ -9475,7 +9627,12 @@ gUnk_080EBAF4:: @ 080EBAF4 .incbin "baserom.gba", 0x0EBB04, 0x0000030 gUnk_080EBB34:: @ 080EBB34 +.ifdef EU + .incbin "baserom.gba", 0x0EBB34, 0x0000010 + .incbin "baserom.gba", 0x0EBB84, 0x0000020 +.else .incbin "baserom.gba", 0x0EBB34, 0x0000070 +.endif gUnk_080EBBA4:: @ 080EBBA4 .incbin "baserom.gba", 0x0EBBA4, 0x0000010 @@ -10624,8 +10781,12 @@ gUnk_080EE80C:: @ 080EE80C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0EE53C, 0x000006C +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0EE53C, 0x000006C .else .incbin "baserom.gba", 0x0EE80C, 0x000006C +.endif .endif .4byte script_08010AE4 .incbin "baserom.gba", 0x0EE87C, 0x0000010 @@ -10709,9 +10870,13 @@ gUnk_080EEADC:: @ 080EEADC .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0EE80C, 0x0000090 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0EE80C, 0x0000090 .else .incbin "baserom.gba", 0x0EEADC, 0x0000090 .endif +.endif gUnk_080EEB6C:: @ 080EEB6C .incbin "baserom.gba", 0x0EEB6C, 0x0000020 @@ -10739,9 +10904,13 @@ gUnk_080EEC4C:: @ 080EEC4C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0EE97C, 0x0000070 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0EE97C, 0x0000070 .else .incbin "baserom.gba", 0x0EEC4C, 0x0000070 .endif +.endif gUnk_080EECBC:: @ 080EECBC .incbin "baserom.gba", 0x0EECBC, 0x0000020 @@ -10749,9 +10918,13 @@ gUnk_080EECBC:: @ 080EECBC gUnk_080EECDC:: @ 080EECDC .ifdef JP .incbin "baserom_jp.gba", 0x0EEA0C, 0x0000048 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0EEA0C, 0x0000048 .else .incbin "baserom.gba", 0x0EECDC, 0x0000050 .endif +.endif gUnk_080EED2C:: @ 080EED2C .incbin "baserom.gba", 0x0EED2C, 0x000004E @@ -11449,7 +11622,11 @@ gUnk_080F00D4:: @ 080F00D4 .incbin "baserom.gba", 0x0F00D4, 0x0000010 gUnk_080F00E4:: @ 080F00E4 +.ifdef EU + .incbin "baserom_eu.gba", 0x0EF728, 0x0000010 +.else .incbin "baserom.gba", 0x0F00E4, 0x0000010 +.endif Room_HyruleTownMinishCaves_WestChest:: @ 080F00F4 .4byte gUnk_080F00C4 @@ -11467,7 +11644,12 @@ gUnk_080F0114:: @ 080F0114 .incbin "baserom.gba", 0x0F0114, 0x0000038 gUnk_080F014C:: @ 080F014C +.ifdef EU + .incbin "baserom.gba", 0x0F014C, 0x0000008 + .incbin "baserom.gba", 0x0F0164, 0x0000020 +.else .incbin "baserom.gba", 0x0F014C, 0x0000038 +.endif gUnk_080F0184:: @ 080F0184 .incbin "baserom.gba", 0x0F0184, 0x0000010 @@ -11662,9 +11844,13 @@ gUnk_080F0630:: @ 080F0630 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F0358, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F0358, 0x0000020 .else .incbin "baserom.gba", 0x0F0630, 0x0000020 .endif +.endif gUnk_080F0650:: @ 080F0650 .incbin "baserom.gba", 0x0F0650, 0x000000C @@ -11775,17 +11961,25 @@ gUnk_080F0940:: @ 080F0940 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F0668, 0x0000060 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F0668, 0x0000060 .else .incbin "baserom.gba", 0x0F0940, 0x0000060 .endif +.endif gUnk_080F09A0:: @ 080F09A0 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F06C8, 0x0000060 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F06C8, 0x0000060 .else .incbin "baserom.gba", 0x0F09A0, 0x0000060 .endif +.endif gUnk_080F0A00:: @ 080F0A00 .incbin "baserom.gba", 0x0F0A00, 0x0000002 @@ -11803,9 +11997,13 @@ gUnk_080F0A11:: @ 080F0A11 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F0739, 0x000001F +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F0739, 0x000001F .else .incbin "baserom.gba", 0x0F0A11, 0x000001F .endif +.endif gUnk_080F0A30:: @ 080F0A30 .incbin "baserom.gba", 0x0F0A30, 0x0000020 @@ -12800,8 +12998,12 @@ Room_HouseInteriors2_B:: @ 080F2B78 gUnk_080F2B9C:: @ 080F2B9C .ifdef JP .incbin "baserom_jp.gba", 0x0F28C4, 0x00000BC +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F28C4, 0x00000BC .else .incbin "baserom.gba", 0x0F2B9C, 0x00000CC +.endif .endif .4byte script_08010120 .incbin "baserom.gba", 0x0F2C6C, 0x0000010 @@ -13280,9 +13482,13 @@ gUnk_080F40BC:: @ 080F40BC .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F3DD4, 0x0000030 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F3DD4, 0x0000030 .else .incbin "baserom.gba", 0x0F40BC, 0x0000030 .endif +.endif gUnk_080F40EC:: @ 080F40EC .incbin "baserom.gba", 0x0F40EC, 0x00000A0 @@ -13597,9 +13803,14 @@ gEntities_MinishWoods_0:: @ 080F4D00 .ifdef JP object_item x=0xC8, y=0x134, item=0x63, flag=0x3B, collision=1 object_item x=0x198, y=0x2B4, item=0x63, flag=0x3C, collision=1 +.else +.ifdef EU + object_item x=0xC8, y=0x134, item=0x63, flag=0x3B, collision=1 + object_item x=0x198, y=0x2B4, item=0x63, flag=0x3C, collision=1 .else object_item x=0xC8, y=0x134, item=0x63, flag=0x3C, collision=1 object_item x=0x198, y=0x2B4, item=0x63, flag=0x3D, collision=1 +.endif .endif entity_list_end @@ -13732,18 +13943,30 @@ gRoomTiles_MinishWoods_0:: @ 080F5220 .byte 0x0A, 0x01, 0x37, 0x00, 0x83, 0x0D, 0x1D, 0x00 .byte 0x0A, 0x01, 0x38, 0x00, 0x84, 0x0D, 0x1D, 0x00 .byte 0x0A, 0x01, 0x39, 0x00, 0x85, 0x0D, 0x1D, 0x00 +.else +.ifdef EU + .byte 0x0A, 0x01, 0x35, 0x00, 0x0A, 0x08, 0x1D, 0x00 + .byte 0x0A, 0x01, 0x36, 0x00, 0x0B, 0x08, 0x1D, 0x00 + .byte 0x0A, 0x01, 0x37, 0x00, 0x83, 0x0D, 0x1D, 0x00 + .byte 0x0A, 0x01, 0x38, 0x00, 0x84, 0x0D, 0x1D, 0x00 + .byte 0x0A, 0x01, 0x39, 0x00, 0x85, 0x0D, 0x1D, 0x00 .else .byte 0x0A, 0x01, 0x36, 0x00, 0x0A, 0x08, 0x1D, 0x00 .byte 0x0A, 0x01, 0x37, 0x00, 0x0B, 0x08, 0x1D, 0x00 .byte 0x0A, 0x01, 0x38, 0x00, 0x83, 0x0D, 0x1D, 0x00 .byte 0x0A, 0x01, 0x39, 0x00, 0x84, 0x0D, 0x1D, 0x00 .byte 0x0A, 0x01, 0x3A, 0x00, 0x85, 0x0D, 0x1D, 0x00 +.endif .endif .byte 0x05, 0x00, 0x00, 0x05, 0x6A, 0x01, 0x05, 0x06 .ifdef JP .byte 0x05, 0x00, 0x00, 0x17, 0xDB, 0x03, 0x17, 0x06 +.else +.ifdef EU + .byte 0x05, 0x00, 0x00, 0x17, 0xDB, 0x03, 0x17, 0x06 .else .byte 0x05, 0x00, 0x00, 0x1F, 0xDB, 0x03, 0x1F, 0x06 +.endif .endif .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 @@ -13828,7 +14051,12 @@ Room_SanctuaryEntrance_Main:: @ 080F53C0 .4byte sub_0804ECEC gUnk_080F53E0:: @ 080F53E0 +.ifdef EU + .incbin "baserom.gba", 0x0F53E0, 0x0000010 + .incbin "baserom.gba", 0x0F5400, 0x0000010 +.else .incbin "baserom.gba", 0x0F53E0, 0x0000030 +.endif gUnk_080F5410:: @ 080F5410 .incbin "baserom.gba", 0x0F5410, 0x0000010 @@ -13855,7 +14083,12 @@ gUnk_080F5448:: @ 080F5448 .4byte script_08013FE8 .incbin "baserom.gba", 0x0F5478, 0x000000C .4byte script_08013B18 +.ifdef EU + .incbin "baserom.gba", 0x0F5488, 0x0000040 + .incbin "baserom.gba", 0x0F54D8, 0x0000010 +.else .incbin "baserom.gba", 0x0F5488, 0x0000060 +.endif gUnk_080F54E8:: @ 080F54E8 .incbin "baserom.gba", 0x0F54E8, 0x000000C @@ -13914,9 +14147,13 @@ Room_Sanctuary_Main:: @ 080F5610 .4byte sub_0804ED5C gUnk_080F5630:: @ 080F5630 +.ifdef EU + .incbin "baserom.gba", 0x0F5650, 0x0000010 +.else .incbin "baserom.gba", 0x0F5630, 0x000000C .4byte script_08014274 .incbin "baserom.gba", 0x0F5640, 0x0000020 +.endif gUnk_080F5660:: @ 080F5660 .incbin "baserom.gba", 0x0F5660, 0x000000C @@ -13980,7 +14217,9 @@ gUnk_080F5888:: @ 080F5888 .incbin "baserom.gba", 0x0F5888, 0x0000020 gUnk_080F58A8:: @ 080F58A8 +.ifndef EU .incbin "baserom.gba", 0x0F58A8, 0x0000020 +.endif gUnk_080F58C8:: @ 080F58C8 .incbin "baserom.gba", 0x0F58C8, 0x0000040 @@ -14059,7 +14298,9 @@ gUnk_080F5B0C:: @ 080F5B0C .incbin "baserom.gba", 0x0F5B0C, 0x0000030 gUnk_080F5B3C:: @ 080F5B3C +.ifndef EU .incbin "baserom.gba", 0x0F5B3C, 0x0000020 +.endif gUnk_080F5B5C:: @ 080F5B5C .incbin "baserom.gba", 0x0F5B5C, 0x0000050 @@ -14070,6 +14311,11 @@ gUnk_080F5BAC:: @ 080F5BAC gUnk_080F5BBC:: @ 080F5BBC .incbin "baserom.gba", 0x0F5BBC, 0x0000008 +.ifdef EU +gUnk_080F5168:: + .incbin "baserom_eu.gba", 0x0F5168, 0x0000014 +.endif + gUnk_080F5BC4:: @ 080F5BC4 .incbin "baserom.gba", 0x0F5BC4, 0x0000010 @@ -14087,6 +14333,9 @@ Room_HouseInteriors3_RemShoeShop:: @ 080F5BE8 .4byte sub_0804EFBC .4byte gUnk_080F5BC4 .4byte gUnk_080F5BD4 +.ifdef EU + .4byte gUnk_080F5168 +.endif gUnk_080F5C10:: @ 080F5C10 .incbin "baserom.gba", 0x0F5C10, 0x000000C @@ -14657,12 +14906,21 @@ gUnk_080F6F2C:: @ 080F6F2C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F6C44, 0x0000050 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F6C44, 0x0000050 .else .incbin "baserom.gba", 0x0F6F2C, 0x0000050 .endif +.endif gUnk_080F6F7C:: @ 080F6F7C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0F6538, 0x0000040 +.else .incbin "baserom.gba", 0x0F6F7C, 0x0000040 +.endif gUnk_080F6FBC:: @ 080F6FBC .incbin "baserom.gba", 0x0F6FBC, 0x0000010 @@ -14709,9 +14967,13 @@ gUnk_080F70F8:: @ 080F70F8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F6E10, 0x0000060 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F6E10, 0x0000060 .else .incbin "baserom.gba", 0x0F70F8, 0x0000060 .endif +.endif gUnk_080F7158:: @ 080F7158 .incbin "baserom.gba", 0x0F7158, 0x00000C0 @@ -14720,9 +14982,13 @@ gUnk_080F7218:: @ 080F7218 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F6F30, 0x0000088 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F6F30, 0x0000088 .else .incbin "baserom.gba", 0x0F7218, 0x0000088 .endif +.endif gUnk_080F72A0:: @ 080F72A0 .incbin "baserom.gba", 0x0F72A0, 0x0000010 @@ -14755,9 +15021,13 @@ gUnk_080F738C:: @ 080F738C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F70A4, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F70A4, 0x0000020 .else .incbin "baserom.gba", 0x0F738C, 0x0000020 .endif +.endif Room_HyruleField_FromMinishWoods:: @ 080F73AC .4byte gUnk_080F72EC @@ -14776,9 +15046,13 @@ gUnk_080F73DC:: @ 080F73DC .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F70F4, 0x0000040 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F70F4, 0x0000040 .else .incbin "baserom.gba", 0x0F73DC, 0x0000040 .endif +.endif gUnk_080F741C:: @ 080F741C .incbin "baserom.gba", 0x0F741C, 0x0000070 @@ -14787,9 +15061,13 @@ gUnk_080F748C:: @ 080F748C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F71A4, 0x0000018 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F71A4, 0x0000018 .else .incbin "baserom.gba", 0x0F748C, 0x0000018 .endif +.endif gUnk_080F74A4:: @ 080F74A4 .incbin "baserom.gba", 0x0F74A4, 0x0000010 @@ -14851,9 +15129,13 @@ gUnk_080F76C0:: @ 080F76C0 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F73D8, 0x0000038 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F73D8, 0x0000038 .else .incbin "baserom.gba", 0x0F76C0, 0x0000038 .endif +.endif Room_HyruleField_Farmers:: @ 080F76F8 .4byte gUnk_080F74F0 @@ -14871,9 +15153,13 @@ gUnk_080F7720:: @ 080F7720 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F7438, 0x0000050 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F7438, 0x0000050 .else .incbin "baserom.gba", 0x0F7720, 0x0000050 .endif +.endif gUnk_080F7770:: @ 080F7770 .incbin "baserom.gba", 0x0F7770, 0x0000050 @@ -14909,7 +15195,12 @@ gUnk_080F7880:: @ 080F7880 .incbin "baserom.gba", 0x0F788C, 0x0000014 gUnk_080F78A0:: @ 080F78A0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0F6E5C, 0x0000020 +.else .incbin "baserom.gba", 0x0F78A0, 0x0000020 +.endif gUnk_080F78C0:: @ 080F78C0 .incbin "baserom.gba", 0x0F78C0, 0x0000008 @@ -14920,12 +15211,21 @@ gUnk_080F78E0:: @ 080F78E0 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F75F8, 0x00000F0 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F75F8, 0x00000F0 .else .incbin "baserom.gba", 0x0F78E0, 0x00000F0 .endif +.endif gUnk_080F79D0:: @ 080F79D0 +.ifdef EU + .incbin "baserom.gba", 0x0F79D0, 0x0000030 + .incbin "baserom.gba", 0x0F7A10, 0x0000010 +.else .incbin "baserom.gba", 0x0F79D0, 0x0000050 +.endif gUnk_080F7A20:: @ 080F7A20 .incbin "baserom.gba", 0x0F7A20, 0x0000008 @@ -14939,9 +15239,13 @@ gUnk_080F7AF4:: @ 080F7AF4 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F780C, 0x0000048 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F780C, 0x0000048 .else .incbin "baserom.gba", 0x0F7AF4, 0x0000048 .endif +.endif gUnk_080F7B3C:: @ 080F7B3C .incbin "baserom.gba", 0x0F7B3C, 0x0000018 @@ -14986,9 +15290,13 @@ ManagerData_HyruleField_OutsideCastle:: @ 080F7C00 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F7918, 0x0000080 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F7918, 0x0000080 .else .incbin "baserom.gba", 0x0F7C00, 0x0000080 .endif +.endif gUnk_080F7C80:: @ 080F7C80 .incbin "baserom.gba", 0x0F7C80, 0x000000C @@ -15046,9 +15354,13 @@ TileData_HyruleField_OutsideCastle:: @ 080F7F10 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F7C28, 0x0000070 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F7C28, 0x0000070 .else .incbin "baserom.gba", 0x0F7F10, 0x0000070 .endif +.endif gUnk_080F7F80:: @ 080F7F80 .incbin "baserom.gba", 0x0F7F80, 0x0000018 @@ -15094,9 +15406,13 @@ ManagerData_HyruleField_OutsideCastleWest:: @ 080F808C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F7DA4, 0x0000060 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F7DA4, 0x0000060 .else .incbin "baserom.gba", 0x0F808C, 0x0000060 .endif +.endif EnemyData_HyruleField_OutsideCastleWest:: @ 080F80EC .incbin "baserom.gba", 0x0F80EC, 0x00000B0 @@ -15105,9 +15421,13 @@ TileData_HyruleField_OutsideCastleWest:: @ 080F819C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F7EB4, 0x0000028 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F7EB4, 0x0000028 .else .incbin "baserom.gba", 0x0F819C, 0x0000028 .endif +.endif gUnk_080F81C4:: @ 080F81C4 .incbin "baserom.gba", 0x0F81C4, 0x0000010 @@ -15130,9 +15450,13 @@ Room_HyruleField_OutsideCastleWest:: @ 080F81E8 EntityData_HyruleField_TrilbyHighlands:: @ 080F8210 .ifdef JP .incbin "baserom_jp.gba", 0x0F7F28, 0x00000B0 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F7F28, 0x00000B0 .else .incbin "baserom.gba", 0x0F8210, 0x00000D0 .endif +.endif gUnk_080F82E0:: @ 080F82E0 .incbin "baserom.gba", 0x0F82E0, 0x000000C @@ -15149,9 +15473,13 @@ TileData_HyruleField_TrilbyHighlands:: @ 080F83E0 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F80D8, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F80D8, 0x0000020 .else .incbin "baserom.gba", 0x0F83E0, 0x0000020 .endif +.endif Room_HyruleField_TrilbyHighlands:: @ 080F8400 .4byte EntityData_HyruleField_TrilbyHighlands @@ -15175,7 +15503,12 @@ gUnk_080F8450:: @ 080F8450 .incbin "baserom.gba", 0x0F8450, 0x0000030 gUnk_080F8480:: @ 080F8480 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0F7A0C, 0x0000030 +.else .incbin "baserom.gba", 0x0F8480, 0x0000030 +.endif gUnk_080F84B0:: @ 080F84B0 .incbin "baserom.gba", 0x0F84B0, 0x0000018 @@ -15507,9 +15840,13 @@ Room_Caves_LonLonRanchWallet:: @ 080F8CD4 gUnk_080F8CF4:: @ 080F8CF4 .ifdef JP .incbin "baserom_jp.gba", 0x0F89EC, 0x0000100 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F89EC, 0x0000100 .else .incbin "baserom.gba", 0x0F8CF4, 0x0000110 .endif +.endif gUnk_080F8E04:: @ 080F8E04 .incbin "baserom.gba", 0x0F8E04, 0x0000010 @@ -15530,9 +15867,13 @@ Room_Caves_RupeeLinksHouse:: @ 080F8E1C gUnk_080F8E3C:: @ 080F8E3C .ifdef JP .incbin "baserom_jp.gba", 0x0F8B24, 0x0000100 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F8B24, 0x0000100 .else .incbin "baserom.gba", 0x0F8E3C, 0x0000110 .endif +.endif gUnk_080F8F4C:: @ 080F8F4C .incbin "baserom.gba", 0x0F8F4C, 0x0000010 @@ -15553,9 +15894,13 @@ Room_Caves_RupeeTrilbyHighlands:: @ 080F8F64 gUnk_080F8F84:: @ 080F8F84 .ifdef JP .incbin "baserom_jp.gba", 0x0F8C5C, 0x0000050 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F8C5C, 0x0000050 .else .incbin "baserom.gba", 0x0F8F84, 0x0000060 .endif +.endif gUnk_080F8FE4:: @ 080F8FE4 .incbin "baserom.gba", 0x0F8FE4, 0x0000010 @@ -15633,9 +15978,13 @@ Room_Caves_HeartPieceHallway:: @ 080F9154 gUnk_080F9174:: @ 080F9174 .ifdef JP .incbin "baserom_jp.gba", 0x0F8E3C, 0x0000040 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F8E3C, 0x0000040 .else .incbin "baserom.gba", 0x0F9174, 0x0000050 .endif +.endif gUnk_080F91C4:: @ 080F91C4 .incbin "baserom.gba", 0x0F91C4, 0x0000010 @@ -15676,9 +16025,13 @@ gUnk_080F9264:: @ 080F9264 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F8F1C, 0x00000A0 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F8F1C, 0x00000A0 .else .incbin "baserom.gba", 0x0F9264, 0x00000A0 .endif +.endif gUnk_080F9304:: @ 080F9304 .incbin "baserom.gba", 0x0F9304, 0x000000C @@ -15706,9 +16059,13 @@ gUnk_080F9474:: @ 080F9474 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F912C, 0x0000010 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F912C, 0x0000010 .else .incbin "baserom.gba", 0x0F9474, 0x0000010 .endif +.endif gUnk_080F9484:: @ 080F9484 .incbin "baserom.gba", 0x0F9484, 0x0000010 @@ -15933,8 +16290,12 @@ gUnk_080F9BF8:: @ 080F9BF8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0F98B0, 0x000002C +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0F98B0, 0x000002C .else .incbin "baserom.gba", 0x0F9BF8, 0x000002C +.endif .endif .4byte script_08009320 .incbin "baserom.gba", 0x0F9C28, 0x0000010 @@ -16701,17 +17062,25 @@ gUnk_080FAC28:: @ 080FAC28 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FA8E0, 0x0000060 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FA8E0, 0x0000060 .else .incbin "baserom.gba", 0x0FAC28, 0x0000060 .endif +.endif gUnk_080FAC88:: @ 080FAC88 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FA940, 0x0000030 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FA940, 0x0000030 .else .incbin "baserom.gba", 0x0FAC88, 0x0000030 .endif +.endif gUnk_080FACB8:: @ 080FACB8 .incbin "baserom.gba", 0x0FACB8, 0x0000090 @@ -16771,9 +17140,13 @@ gUnk_080FAF9C:: @ 080FAF9C .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FAC54, 0x0000018 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FAC54, 0x0000018 .else .incbin "baserom.gba", 0x0FAF9C, 0x0000018 .endif +.endif Room_MtCrenel_WallClimb:: @ 080FAFB4 .4byte gUnk_080FAE9C @@ -16808,9 +17181,13 @@ gUnk_080FB1F4:: @ 080FB1F4 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FAEAC, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FAEAC, 0x0000020 .else .incbin "baserom.gba", 0x0FB1F4, 0x0000020 .endif +.endif gUnk_080FB214:: @ 080FB214 .incbin "baserom.gba", 0x0FB214, 0x0000020 @@ -16848,9 +17225,13 @@ gUnk_080FB410:: @ 080FB410 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FB0C8, 0x0000050 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FB0C8, 0x0000050 .else .incbin "baserom.gba", 0x0FB410, 0x0000050 .endif +.endif Room_MtCrenel_GustJarShortcut:: @ 080FB460 .4byte gUnk_080FB2A0 @@ -16866,9 +17247,13 @@ gUnk_080FB480:: @ 080FB480 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FB138, 0x0000150 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FB138, 0x0000150 .else .incbin "baserom.gba", 0x0FB480, 0x0000150 .endif +.endif gUnk_080FB5D0:: @ 080FB5D0 .incbin "baserom.gba", 0x0FB5D0, 0x0000030 @@ -16879,9 +17264,13 @@ gUnk_080FB600:: @ 080FB600 gUnk_080FB700:: @ 080FB700 .ifdef JP .incbin "baserom_jp.gba", 0x0FB3B8, 0x0000040 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FB3B8, 0x0000040 .else .incbin "baserom.gba", 0x0FB700, 0x0000048 .endif +.endif gUnk_080FB748:: @ 080FB748 .incbin "baserom.gba", 0x0FB748, 0x0000020 @@ -17292,9 +17681,14 @@ gUnk_080FC3E4:: @ 080FC3E4 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FC094, 0x0000460 +.else +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FB928, 0x0000460 .else .incbin "baserom.gba", 0x0FC3E4, 0x0000460 .endif +.endif gUnk_080FC844:: @ 080FC844 .incbin "baserom.gba", 0x0FC844, 0x0000018 diff --git a/data/data_080FC8A4.s b/data/data_080FC8A4.s index 0d065fc0..dd037a92 100644 --- a/data/data_080FC8A4.s +++ b/data/data_080FC8A4.s @@ -129,9 +129,13 @@ gUnk_080FCB62:: @ 080FCB62 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FC812, 0x0000032 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FC812, 0x0000032 .else .incbin "baserom.gba", 0x0FCB62, 0x0000032 .endif +.endif gUnk_080FCB94:: @ 080FCB94 .incbin "baserom.gba", 0x0FCB94, 0x0000020 @@ -779,7 +783,12 @@ gUnk_080FD5B4:: @ 080FD5B4 .incbin "baserom.gba", 0x0FD5B4, 0x00003B0 gUnk_080FD964:: @ 080FD964 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FCEA8, 0x00003B0 +.else .incbin "baserom.gba", 0x0FD964, 0x00003B0 +.endif gUnk_080FDD14:: @ 080FDD14 .incbin "baserom.gba", 0x0FDD14, 0x0000005 @@ -1218,17 +1227,25 @@ gUnk_080FE320:: @ 080FE320 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FDFD0, 0x00002F0 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FDFD0, 0x00002F0 .else .incbin "baserom.gba", 0x0FE320, 0x00002F0 .endif +.endif gUnk_080FE610:: @ 080FE610 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FE2C0, 0x00004B8 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FE2C0, 0x00004B8 .else .incbin "baserom.gba", 0x0FE610, 0x00004B8 .endif +.endif gUnk_080FEAC8:: @ 080FEAC8 .incbin "baserom.gba", 0x0FEAC8, 0x0000003 @@ -1240,17 +1257,25 @@ gUnk_080FEAEE:: @ 080FEAEE .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FE79E, 0x000002C +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FE79E, 0x000002C .else .incbin "baserom.gba", 0x0FEAEE, 0x000002C .endif +.endif gUnk_080FEB1A:: @ 080FEB1A .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FE7CA, 0x00000C2 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FE7CA, 0x00000C2 .else .incbin "baserom.gba", 0x0FEB1A, 0x00000C2 .endif +.endif gUnk_080FEBDC:: @ 080FEBDC .incbin "baserom.gba", 0x0FEBDC, 0x000000C @@ -1303,9 +1328,13 @@ gUnk_080FEE58:: @ 080FEE58 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FEB08, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FEB08, 0x0000020 .else .incbin "baserom.gba", 0x0FEE58, 0x0000020 .endif +.endif gUnk_080FEE78:: @ 080FEE78 .incbin "baserom.gba", 0x0FEE78, 0x0000030 diff --git a/data/data_080FEEB8.s b/data/data_080FEEB8.s index 7b5b2f24..90c8e8b4 100644 --- a/data/data_080FEEB8.s +++ b/data/data_080FEEB8.s @@ -38,9 +38,13 @@ gUnk_080FEF48:: @ 080FEF48 .4byte script_0800BC50 .ifdef JP .incbin "baserom_jp.gba", 0x0FEC08, 0x0000020 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x0FEC08, 0x0000020 .else .incbin "baserom.gba", 0x0FEF58, 0x0000020 .endif +.endif gUnk_080FEF78:: @ 080FEF78 .incbin "baserom.gba", 0x0FEF78, 0x000000C @@ -276,34 +280,84 @@ gUnk_080FF420:: @ 080FF420 .4byte nullsub_493 gUnk_080FF428:: @ 080FF428 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE96C, 0x0000008 +.else .incbin "baserom.gba", 0x0FF428, 0x0000008 +.endif gUnk_080FF430:: @ 080FF430 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE974, 0x0000008 +.else .incbin "baserom.gba", 0x0FF430, 0x0000008 +.endif gUnk_080FF438:: @ 080FF438 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE97C, 0x000000C +.else .incbin "baserom.gba", 0x0FF438, 0x000000C +.endif gUnk_080FF444:: @ 080FF444 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE988, 0x000000C +.else .incbin "baserom.gba", 0x0FF444, 0x000000C +.endif gUnk_080FF450:: @ 080FF450 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE994, 0x0000004 +.else .incbin "baserom.gba", 0x0FF450, 0x0000004 +.endif gUnk_080FF454:: @ 080FF454 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE998, 0x0000004 +.else .incbin "baserom.gba", 0x0FF454, 0x0000004 +.endif gUnk_080FF458:: @ 080FF458 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE99C, 0x0000004 +.else .incbin "baserom.gba", 0x0FF458, 0x0000004 +.endif gUnk_080FF45C:: @ 080FF45C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE9A0, 0x0000004 +.else .incbin "baserom.gba", 0x0FF45C, 0x0000004 +.endif gUnk_080FF460:: @ 080FF460 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE9A4, 0x0000014 +.else .incbin "baserom.gba", 0x0FF460, 0x0000014 +.endif gUnk_080FF474:: @ 080FF474 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FE9B8, 0x0000010 +.else .incbin "baserom.gba", 0x0FF474, 0x0000010 +.endif gUnk_080FF484:: @ 080FF484 .incbin "baserom.gba", 0x0FF484, 0x0000004 @@ -771,130 +825,328 @@ gUnk_080FF6F0:: @ 080FF6F0 .incbin "baserom.gba", 0x0FF6F0, 0x0000004 gUnk_080FF6F4:: @ 080FF6F4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC38, 0x0000004 +.else .incbin "baserom.gba", 0x0FF6F4, 0x0000004 +.endif gUnk_080FF6F8:: @ 080FF6F8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC3C, 0x0000004 +.else .incbin "baserom.gba", 0x0FF6F8, 0x0000004 +.endif gUnk_080FF6FC:: @ 080FF6FC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC40, 0x0000004 +.else .incbin "baserom.gba", 0x0FF6FC, 0x0000004 +.endif gUnk_080FF700:: @ 080FF700 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC44, 0x0000004 +.else .incbin "baserom.gba", 0x0FF700, 0x0000004 +.endif gUnk_080FF704:: @ 080FF704 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC48, 0x0000004 +.else .incbin "baserom.gba", 0x0FF704, 0x0000004 +.endif gUnk_080FF708:: @ 080FF708 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC4C, 0x0000004 +.else .incbin "baserom.gba", 0x0FF708, 0x0000004 +.endif gUnk_080FF70C:: @ 080FF70C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC50, 0x0000004 +.else .incbin "baserom.gba", 0x0FF70C, 0x0000004 +.endif gUnk_080FF710:: @ 080FF710 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC54, 0x0000004 +.else .incbin "baserom.gba", 0x0FF710, 0x0000004 +.endif gUnk_080FF714:: @ 080FF714 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC58, 0x0000004 +.else .incbin "baserom.gba", 0x0FF714, 0x0000004 +.endif gUnk_080FF718:: @ 080FF718 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC5C, 0x0000004 +.else .incbin "baserom.gba", 0x0FF718, 0x0000004 +.endif gUnk_080FF71C:: @ 080FF71C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC60, 0x0000004 +.else .incbin "baserom.gba", 0x0FF71C, 0x0000004 +.endif gUnk_080FF720:: @ 080FF720 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC64, 0x0000004 +.else .incbin "baserom.gba", 0x0FF720, 0x0000004 +.endif gUnk_080FF724:: @ 080FF724 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC68, 0x0000004 +.else .incbin "baserom.gba", 0x0FF724, 0x0000004 +.endif gUnk_080FF728:: @ 080FF728 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC6C, 0x0000004 +.else .incbin "baserom.gba", 0x0FF728, 0x0000004 +.endif gUnk_080FF72C:: @ 080FF72C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC70, 0x0000004 +.else .incbin "baserom.gba", 0x0FF72C, 0x0000004 +.endif + gUnk_080FF730:: @ 080FF730 .incbin "baserom.gba", 0x0FF730, 0x000000C gUnk_080FF73C:: @ 080FF73C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC80, 0x0000008 +.else .incbin "baserom.gba", 0x0FF73C, 0x0000008 +.endif gUnk_080FF744:: @ 080FF744 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC88, 0x000000C +.else .incbin "baserom.gba", 0x0FF744, 0x000000C +.endif gUnk_080FF750:: @ 080FF750 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FEC94, 0x000000C +.else .incbin "baserom.gba", 0x0FF750, 0x000000C +.endif gUnk_080FF75C:: @ 080FF75C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECA0, 0x0000014 +.else .incbin "baserom.gba", 0x0FF75C, 0x0000014 +.endif gUnk_080FF770:: @ 080FF770 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECB4, 0x0000008 +.else .incbin "baserom.gba", 0x0FF770, 0x0000008 +.endif gUnk_080FF778:: @ 080FF778 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECBC, 0x0000008 +.else .incbin "baserom.gba", 0x0FF778, 0x0000008 +.endif gUnk_080FF780:: @ 080FF780 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECC4, 0x0000008 +.else .incbin "baserom.gba", 0x0FF780, 0x0000008 +.endif gUnk_080FF788:: @ 080FF788 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECCC, 0x0000008 +.else .incbin "baserom.gba", 0x0FF788, 0x0000008 +.endif gUnk_080FF790:: @ 080FF790 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECD4, 0x0000008 +.else .incbin "baserom.gba", 0x0FF790, 0x0000008 +.endif gUnk_080FF798:: @ 080FF798 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECDC, 0x0000008 +.else .incbin "baserom.gba", 0x0FF798, 0x0000008 +.endif gUnk_080FF7A0:: @ 080FF7A0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECE4, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7A0, 0x0000008 +.endif gUnk_080FF7A8:: @ 080FF7A8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECEC, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7A8, 0x0000008 +.endif gUnk_080FF7B0:: @ 080FF7B0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECF4, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7B0, 0x0000008 +.endif gUnk_080FF7B8:: @ 080FF7B8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FECFC, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7B8, 0x0000008 +.endif gUnk_080FF7C0:: @ 080FF7C0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED04, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7C0, 0x0000008 +.endif gUnk_080FF7C8:: @ 080FF7C8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED0C, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7C8, 0x0000008 +.endif gUnk_080FF7D0:: @ 080FF7D0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED14, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7D0, 0x0000008 +.endif gUnk_080FF7D8:: @ 080FF7D8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED1C, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7D8, 0x0000008 +.endif gUnk_080FF7E0:: @ 080FF7E0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED24, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7E0, 0x0000008 +.endif gUnk_080FF7E8:: @ 080FF7E8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED2C, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7E8, 0x0000008 +.endif gUnk_080FF7F0:: @ 080FF7F0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED34, 0x0000008 +.else .incbin "baserom.gba", 0x0FF7F0, 0x0000008 +.endif gUnk_080FF7F8:: @ 080FF7F8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED3C, 0x0000010 +.else .incbin "baserom.gba", 0x0FF7F8, 0x0000010 +.endif gUnk_080FF808:: @ 080FF808 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED4C, 0x000000C +.else .incbin "baserom.gba", 0x0FF808, 0x000000C +.endif gUnk_080FF814:: @ 080FF814 .incbin "baserom.gba", 0x0FF814, 0x0000028 gUnk_080FF83C:: @ 080FF83C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x0FED80, 0x0000008 +.else .incbin "baserom.gba", 0x0FF83C, 0x0000008 +.endif gUnk_080FF844:: @ 080FF844 +.ifndef EU .incbin "baserom.gba", 0x0FF844, 0x000000C +.endif gPaletteGroups:: @ 080FF850 .4byte 00000000 @@ -1104,32 +1356,589 @@ gPaletteGroups:: @ 080FF850 .4byte gUnk_080FF808 .4byte gUnk_080FF814 .4byte gUnk_080FF83C +.ifndef EU .4byte gUnk_080FF844 +.endif + + + + +@ TODO EU seems to be a lot different + +.ifdef EU + +gUnk_EU_080FF0C4:: @ 080FF0C4 + .incbin "baserom_eu.gba", 0x0FF0C4, 0x0000018 + +gUnk_EU_080FF0DC:: @ 080FF0DC + .incbin "baserom_eu.gba", 0x0FF0DC, 0x0000048 + +gUnk_EU_080FF124:: @ 080FF124 + .incbin "baserom_eu.gba", 0x0FF124, 0x0000054 + +gUnk_EU_080FF178:: @ 080FF178 + .incbin "baserom_eu.gba", 0x0FF178, 0x0000024 + +gUnk_EU_080FF19C:: @ 080FF19C + .incbin "baserom_eu.gba", 0x0FF19C, 0x0000030 + +gUnk_EU_080FF1CC:: @ 080FF1CC + .incbin "baserom_eu.gba", 0x0FF1CC, 0x0000048 + +gUnk_EU_080FF214:: @ 080FF214 + .incbin "baserom_eu.gba", 0x0FF214, 0x000000C + +gUnk_EU_080FF220:: @ 080FF220 + .incbin "baserom_eu.gba", 0x0FF220, 0x000000C + +gUnk_EU_080FF22C:: @ 080FF22C + .incbin "baserom_eu.gba", 0x0FF22C, 0x0000018 + +gUnk_EU_080FF244:: @ 080FF244 + .incbin "baserom_eu.gba", 0x0FF244, 0x0000018 + +gUnk_EU_080FF25C:: @ 080FF25C + .incbin "baserom_eu.gba", 0x0FF25C, 0x000000C + +gUnk_EU_080FF268:: @ 080FF268 + .incbin "baserom_eu.gba", 0x0FF268, 0x0000048 + +gUnk_EU_080FF2B0:: @ 080FF2B0 + .incbin "baserom_eu.gba", 0x0FF2B0, 0x0000018 + +gUnk_EU_080FF2C8:: @ 080FF2C8 + .incbin "baserom_eu.gba", 0x0FF2C8, 0x0000018 + +gUnk_EU_080FF2E0:: @ 080FF2E0 + .incbin "baserom_eu.gba", 0x0FF2E0, 0x000000C + +gUnk_EU_080FF2EC:: @ 080FF2EC + .incbin "baserom_eu.gba", 0x0FF2EC, 0x0000018 + +gUnk_EU_080FF304:: @ 080FF304 + .incbin "baserom_eu.gba", 0x0FF304, 0x000000C + +gUnk_EU_080FF310:: @ 080FF310 + .incbin "baserom_eu.gba", 0x0FF310, 0x000000C + +gUnk_EU_080FF31C:: @ 080FF31C + .incbin "baserom_eu.gba", 0x0FF31C, 0x000000C + +gUnk_EU_080FF328:: @ 080FF328 + .incbin "baserom_eu.gba", 0x0FF328, 0x000000C + +gUnk_EU_080FF334:: @ 080FF334 + .incbin "baserom_eu.gba", 0x0FF334, 0x000000C + +gUnk_EU_080FF340:: @ 080FF340 + .incbin "baserom_eu.gba", 0x0FF340, 0x000000C + +gUnk_EU_080FF34C:: @ 080FF34C + .incbin "baserom_eu.gba", 0x0FF34C, 0x000000C + +gUnk_EU_080FF358:: @ 080FF358 + .incbin "baserom_eu.gba", 0x0FF358, 0x0000018 + +gUnk_EU_080FF370:: @ 080FF370 + .incbin "baserom_eu.gba", 0x0FF370, 0x0000018 + +gUnk_EU_080FF388:: @ 080FF388 + .incbin "baserom_eu.gba", 0x0FF388, 0x000000C + +gUnk_EU_080FF394:: @ 080FF394 + .incbin "baserom_eu.gba", 0x0FF394, 0x0000018 + +gUnk_EU_080FF3AC:: @ 080FF3AC + .incbin "baserom_eu.gba", 0x0FF3AC, 0x0000018 + +gUnk_EU_080FF3C4:: @ 080FF3C4 + .incbin "baserom_eu.gba", 0x0FF3C4, 0x0000018 + +gUnk_EU_080FF3DC:: @ 080FF3DC + .incbin "baserom_eu.gba", 0x0FF3DC, 0x0000018 + +gUnk_EU_080FF3F4:: @ 080FF3F4 + .incbin "baserom_eu.gba", 0x0FF3F4, 0x000003C + +gUnk_EU_080FF430:: @ 080FF430 + .incbin "baserom_eu.gba", 0x0FF430, 0x000003C + +gUnk_EU_080FF46C:: @ 080FF46C + .incbin "baserom_eu.gba", 0x0FF46C, 0x000003C + +gUnk_EU_080FF4A8:: @ 080FF4A8 + .incbin "baserom_eu.gba", 0x0FF4A8, 0x000003C + +gUnk_EU_080FF4E4:: @ 080FF4E4 + .incbin "baserom_eu.gba", 0x0FF4E4, 0x000003C + +gUnk_EU_080FF520:: @ 080FF520 + .incbin "baserom_eu.gba", 0x0FF520, 0x000003C + +gUnk_EU_080FF55C:: @ 080FF55C + .incbin "baserom_eu.gba", 0x0FF55C, 0x0000030 + +gUnk_EU_080FF58C:: @ 080FF58C + .incbin "baserom_eu.gba", 0x0FF58C, 0x0000018 + +gUnk_EU_080FF5A4:: @ 080FF5A4 + .incbin "baserom_eu.gba", 0x0FF5A4, 0x000000C + +gUnk_EU_080FF5B0:: @ 080FF5B0 + .incbin "baserom_eu.gba", 0x0FF5B0, 0x000000C + +gUnk_EU_080FF5BC:: @ 080FF5BC + .incbin "baserom_eu.gba", 0x0FF5BC, 0x000000C + +gUnk_EU_080FF5C8:: @ 080FF5C8 + .incbin "baserom_eu.gba", 0x0FF5C8, 0x000000C + +gUnk_EU_080FF5D4:: @ 080FF5D4 + .incbin "baserom_eu.gba", 0x0FF5D4, 0x000000C + +gUnk_EU_080FF5E0:: @ 080FF5E0 + .incbin "baserom_eu.gba", 0x0FF5E0, 0x000000C + +gUnk_EU_080FF5EC:: @ 080FF5EC + .incbin "baserom_eu.gba", 0x0FF5EC, 0x000000C + +gUnk_EU_080FF5F8:: @ 080FF5F8 + .incbin "baserom_eu.gba", 0x0FF5F8, 0x000000C + +gUnk_EU_080FF604:: @ 080FF604 + .incbin "baserom_eu.gba", 0x0FF604, 0x000000C + +gUnk_EU_080FF610:: @ 080FF610 + .incbin "baserom_eu.gba", 0x0FF610, 0x000000C + +gUnk_EU_080FF61C:: @ 080FF61C + .incbin "baserom_eu.gba", 0x0FF61C, 0x000000C + +gUnk_EU_080FF628:: @ 080FF628 + .incbin "baserom_eu.gba", 0x0FF628, 0x000000C + +gUnk_EU_080FF634:: @ 080FF634 + .incbin "baserom_eu.gba", 0x0FF634, 0x000000C + +gUnk_EU_080FF640:: @ 080FF640 + .incbin "baserom_eu.gba", 0x0FF640, 0x000000C + +gUnk_EU_080FF64C:: @ 080FF64C + .incbin "baserom_eu.gba", 0x0FF64C, 0x000000C + +gUnk_EU_080FF658:: @ 080FF658 + .incbin "baserom_eu.gba", 0x0FF658, 0x000000C + +gUnk_EU_080FF664:: @ 080FF664 + .incbin "baserom_eu.gba", 0x0FF664, 0x000000C + +gUnk_EU_080FF670:: @ 080FF670 + .incbin "baserom_eu.gba", 0x0FF670, 0x000000C + +gUnk_EU_080FF67C:: @ 080FF67C + .incbin "baserom_eu.gba", 0x0FF67C, 0x000000C + +gUnk_EU_080FF688:: @ 080FF688 + .incbin "baserom_eu.gba", 0x0FF688, 0x000000C + +gUnk_EU_080FF694:: @ 080FF694 + .incbin "baserom_eu.gba", 0x0FF694, 0x000000C + +gUnk_EU_080FF6A0:: @ 080FF6A0 + .incbin "baserom_eu.gba", 0x0FF6A0, 0x000000C + +gUnk_EU_080FF6AC:: @ 080FF6AC + .incbin "baserom_eu.gba", 0x0FF6AC, 0x000000C + +gUnk_EU_080FF6B8:: @ 080FF6B8 + .incbin "baserom_eu.gba", 0x0FF6B8, 0x000000C + +gUnk_EU_080FF6C4:: @ 080FF6C4 + .incbin "baserom_eu.gba", 0x0FF6C4, 0x000000C + +gUnk_EU_080FF6D0:: @ 080FF6D0 + .incbin "baserom_eu.gba", 0x0FF6D0, 0x000000C + +gUnk_EU_080FF6DC:: @ 080FF6DC + .incbin "baserom_eu.gba", 0x0FF6DC, 0x0000018 + +gUnk_EU_080FF6F4:: @ 080FF6F4 + .incbin "baserom_eu.gba", 0x0FF6F4, 0x0000018 + +gUnk_EU_080FF70C:: @ 080FF70C + .incbin "baserom_eu.gba", 0x0FF70C, 0x0000018 + +gUnk_EU_080FF724:: @ 080FF724 + .incbin "baserom_eu.gba", 0x0FF724, 0x0000018 + +gUnk_EU_080FF73C:: @ 080FF73C + .incbin "baserom_eu.gba", 0x0FF73C, 0x0000018 + +gUnk_EU_080FF754:: @ 080FF754 + .incbin "baserom_eu.gba", 0x0FF754, 0x0000018 + +gUnk_EU_080FF76C:: @ 080FF76C + .incbin "baserom_eu.gba", 0x0FF76C, 0x0000018 + +gUnk_EU_080FF784:: @ 080FF784 + .incbin "baserom_eu.gba", 0x0FF784, 0x0000018 + +gUnk_EU_080FF79C:: @ 080FF79C + .incbin "baserom_eu.gba", 0x0FF79C, 0x0000018 + +gUnk_EU_080FF7B4:: @ 080FF7B4 + .incbin "baserom_eu.gba", 0x0FF7B4, 0x0000018 + +gUnk_EU_080FF7CC:: @ 080FF7CC + .incbin "baserom_eu.gba", 0x0FF7CC, 0x0000018 + +gUnk_EU_080FF7E4:: @ 080FF7E4 + .incbin "baserom_eu.gba", 0x0FF7E4, 0x0000018 + +gUnk_EU_080FF7FC:: @ 080FF7FC + .incbin "baserom_eu.gba", 0x0FF7FC, 0x0000018 + +gUnk_EU_080FF814:: @ 080FF814 + .incbin "baserom_eu.gba", 0x0FF814, 0x0000018 + +gUnk_EU_080FF82C:: @ 080FF82C + .incbin "baserom_eu.gba", 0x0FF82C, 0x0000018 + +gUnk_EU_080FF844:: @ 080FF844 + .incbin "baserom_eu.gba", 0x0FF844, 0x0000018 + +gUnk_EU_080FF85C:: @ 080FF85C + .incbin "baserom_eu.gba", 0x0FF85C, 0x0000018 + +gUnk_EU_080FF874:: @ 080FF874 + .incbin "baserom_eu.gba", 0x0FF874, 0x0000018 + +gUnk_EU_080FF88C:: @ 080FF88C + .incbin "baserom_eu.gba", 0x0FF88C, 0x0000018 + +gUnk_EU_080FF8A4:: @ 080FF8A4 + .incbin "baserom_eu.gba", 0x0FF8A4, 0x000000C + +gUnk_EU_080FF8B0:: @ 080FF8B0 + .incbin "baserom_eu.gba", 0x0FF8B0, 0x000000C + +gUnk_EU_080FF8BC:: @ 080FF8BC + .incbin "baserom_eu.gba", 0x0FF8BC, 0x0000030 + +gUnk_EU_080FF8EC:: @ 080FF8EC + .incbin "baserom_eu.gba", 0x0FF8EC, 0x0000030 + +gUnk_EU_080FF91C:: @ 080FF91C + .incbin "baserom_eu.gba", 0x0FF91C, 0x0000030 + +gUnk_EU_080FF94C:: @ 080FF94C + .incbin "baserom_eu.gba", 0x0FF94C, 0x0000054 + +gUnk_EU_080FF9A0:: @ 080FF9A0 + .incbin "baserom_eu.gba", 0x0FF9A0, 0x00000A8 + +gUnk_EU_080FFA48:: @ 080FFA48 + .incbin "baserom_eu.gba", 0x0FFA48, 0x00000A8 + +gUnk_EU_080FFAF0:: @ 080FFAF0 + .incbin "baserom_eu.gba", 0x0FFAF0, 0x0000078 + +gUnk_EU_080FFB68:: @ 080FFB68 + .incbin "baserom_eu.gba", 0x0FFB68, 0x0000048 + +gUnk_EU_080FFBB0:: @ 080FFBB0 + .incbin "baserom_eu.gba", 0x0FFBB0, 0x0000018 + +gUnk_EU_080FFBC8:: @ 080FFBC8 + .incbin "baserom_eu.gba", 0x0FFBC8, 0x0000018 + +gUnk_EU_080FFBE0:: @ 080FFBE0 + .incbin "baserom_eu.gba", 0x0FFBE0, 0x000003C + +gUnk_EU_080FFC1C:: @ 080FFC1C + .incbin "baserom_eu.gba", 0x0FFC1C, 0x0000030 + +gUnk_EU_080FFC4C:: @ 080FFC4C + .incbin "baserom_eu.gba", 0x0FFC4C, 0x0000030 + +gUnk_EU_080FFC7C:: @ 080FFC7C + .incbin "baserom_eu.gba", 0x0FFC7C, 0x0000030 + +gUnk_EU_080FFCAC:: @ 080FFCAC + .incbin "baserom_eu.gba", 0x0FFCAC, 0x0000030 + +gUnk_EU_080FFCDC:: @ 080FFCDC + .incbin "baserom_eu.gba", 0x0FFCDC, 0x0000030 + +gUnk_EU_080FFD0C:: @ 080FFD0C + .incbin "baserom_eu.gba", 0x0FFD0C, 0x0000030 + +gUnk_EU_080FFD3C:: @ 080FFD3C + .incbin "baserom_eu.gba", 0x0FFD3C, 0x0000030 + +gUnk_EU_080FFD6C:: @ 080FFD6C + .incbin "baserom_eu.gba", 0x0FFD6C, 0x0000030 + +gUnk_EU_080FFD9C:: @ 080FFD9C + .incbin "baserom_eu.gba", 0x0FFD9C, 0x0000030 + +gUnk_EU_080FFDCC:: @ 080FFDCC + .incbin "baserom_eu.gba", 0x0FFDCC, 0x0000030 + +gUnk_EU_080FFDFC:: @ 080FFDFC + .incbin "baserom_eu.gba", 0x0FFDFC, 0x0000030 + +gUnk_EU_080FFE2C:: @ 080FFE2C + .incbin "baserom_eu.gba", 0x0FFE2C, 0x0000030 + +gUnk_EU_080FFE5C:: @ 080FFE5C + .incbin "baserom_eu.gba", 0x0FFE5C, 0x0000030 + +gUnk_EU_080FFE8C:: @ 080FFE8C + .incbin "baserom_eu.gba", 0x0FFE8C, 0x0000030 + +gUnk_EU_080FFEBC:: @ 080FFEBC + .incbin "baserom_eu.gba", 0x0FFEBC, 0x0000030 + +gUnk_EU_080FFEEC:: @ 080FFEEC + .incbin "baserom_eu.gba", 0x0FFEEC, 0x0000030 + +gUnk_EU_080FFF1C:: @ 080FFF1C + .incbin "baserom_eu.gba", 0x0FFF1C, 0x0000030 + +gUnk_EU_080FFF4C:: @ 080FFF4C + .incbin "baserom_eu.gba", 0x0FFF4C, 0x0000030 + +gUnk_EU_080FFF7C:: @ 080FFF7C + .incbin "baserom_eu.gba", 0x0FFF7C, 0x0000030 + +gUnk_EU_080FFFAC:: @ 080FFFAC + .incbin "baserom_eu.gba", 0x0FFFAC, 0x0000030 + +gUnk_EU_080FFFDC:: @ 080FFFDC + .incbin "baserom_eu.gba", 0x0FFFDC, 0x0000030 + +gUnk_EU_0810000C:: @ 0810000C + .incbin "baserom_eu.gba", 0x10000C, 0x0000030 + +gUnk_EU_0810003C:: @ 0810003C + .incbin "baserom_eu.gba", 0x10003C, 0x000006C + +gUnk_EU_081000A8:: @ 081000A8 + .incbin "baserom_eu.gba", 0x1000A8, 0x000000C + +gUnk_EU_081000B4:: @ 081000B4 + .incbin "baserom_eu.gba", 0x1000B4, 0x000000C + +gUnk_EU_081000C0:: @ 081000C0 + .incbin "baserom_eu.gba", 0x1000C0, 0x000000C + +gUnk_EU_081000CC:: @ 081000CC + .incbin "baserom_eu.gba", 0x1000CC, 0x000000C + +gUnk_EU_081000D8:: @ 081000D8 + .incbin "baserom_eu.gba", 0x1000D8, 0x000000C + +gUnk_EU_081000E4:: @ 081000E4 + .incbin "baserom_eu.gba", 0x1000E4, 0x000000C + +gUnk_EU_081000F0:: @ 081000F0 + .incbin "baserom_eu.gba", 0x1000F0, 0x000000C + +gUnk_EU_081000FC:: @ 081000FC + .incbin "baserom_eu.gba", 0x1000FC, 0x0000060 + +gUnk_EU_0810015C:: @ 0810015C + .incbin "baserom_eu.gba", 0x10015C, 0x0000084 + +gUnk_EU_081001E0:: @ 081001E0 + .incbin "baserom_eu.gba", 0x1001E0, 0x000000C + +gUnk_EU_081001EC:: @ 081001EC + .incbin "baserom_eu.gba", 0x1001EC, 0x000000C + +gUnk_EU_081001F8:: @ 081001F8 + .incbin "baserom_eu.gba", 0x1001F8, 0x000000C + + +gUnk_08100AA8:: @ 08100218 + .4byte 0 + .4byte gUnk_EU_080FF0C4 + .4byte gUnk_EU_080FF0DC + .4byte gUnk_EU_080FF124 + .4byte gUnk_EU_080FF178 + .4byte gUnk_EU_080FF19C + .4byte gUnk_EU_080FF1CC + .4byte gUnk_EU_080FF214 + .4byte gUnk_EU_080FF220 + .4byte gUnk_EU_080FF2B0 + .4byte gUnk_EU_080FF2C8 + .4byte gUnk_EU_080FF2E0 + .4byte gUnk_EU_080FF22C + .4byte gUnk_EU_080FF244 + .4byte gUnk_EU_080FF25C + .4byte gUnk_EU_080FF268 + .4byte gUnk_EU_080FF2EC + .4byte gUnk_EU_080FF58C + .4byte gUnk_EU_080FF5A4 + .4byte gUnk_EU_080FF5B0 + .4byte gUnk_EU_080FF5EC + .4byte gUnk_EU_080FF5F8 + .4byte gUnk_EU_080FF55C + .4byte gUnk_EU_080FF304 + .4byte gUnk_EU_080FF310 + .4byte gUnk_EU_080FF31C + .4byte gUnk_EU_080FF328 + .4byte gUnk_EU_080FF334 + .4byte gUnk_EU_080FF340 + .4byte gUnk_EU_080FF34C + .4byte gUnk_EU_080FF3F4 + .4byte gUnk_EU_080FF4A8 + .4byte gUnk_EU_080FF46C + .4byte gUnk_EU_080FF430 + .4byte gUnk_EU_080FF520 + .4byte gUnk_EU_080FF4E4 + .4byte gUnk_EU_080FF358 + .4byte gUnk_EU_080FF370 + .4byte gUnk_EU_080FF388 + .4byte gUnk_EU_080FF394 + .4byte gUnk_EU_080FF3AC + .4byte gUnk_EU_080FF3C4 + .4byte gUnk_EU_080FF3DC + .4byte gUnk_EU_080FF5BC + .4byte gUnk_EU_080FF5C8 + .4byte gUnk_EU_080FF5D4 + .4byte gUnk_EU_080FF5E0 + .4byte gUnk_EU_080FF604 + .4byte gUnk_EU_080FF610 + .4byte gUnk_EU_080FF61C + .4byte gUnk_EU_080FF628 + .4byte gUnk_EU_080FF634 + .4byte gUnk_EU_080FF640 + .4byte gUnk_EU_080FF64C + .4byte gUnk_EU_080FF6DC + .4byte gUnk_EU_080FF6F4 + .4byte gUnk_EU_080FF70C + .4byte gUnk_EU_080FF724 + .4byte gUnk_EU_080FF73C + .4byte gUnk_EU_080FF754 + .4byte gUnk_EU_080FF76C + .4byte gUnk_EU_080FF784 + .4byte gUnk_EU_080FF79C + .4byte gUnk_EU_080FF7B4 + .4byte gUnk_EU_080FF7CC + .4byte gUnk_EU_080FF7E4 + .4byte gUnk_EU_080FF7FC + .4byte gUnk_EU_080FF814 + .4byte gUnk_EU_080FF82C + .4byte gUnk_EU_080FF844 + .4byte gUnk_EU_080FF85C + .4byte gUnk_EU_080FF874 + .4byte gUnk_EU_080FF88C + .4byte gUnk_EU_080FF8A4 + .4byte gUnk_EU_080FF8B0 + .4byte gUnk_EU_080FF658 + .4byte gUnk_EU_080FF664 + .4byte gUnk_EU_080FF670 + .4byte gUnk_EU_080FF67C + .4byte gUnk_EU_080FF688 + .4byte gUnk_EU_080FF694 + .4byte gUnk_EU_080FF6A0 + .4byte gUnk_EU_080FF6AC + .4byte gUnk_EU_080FF6B8 + .4byte gUnk_EU_080FF6C4 + .4byte gUnk_EU_080FF6D0 + .4byte gUnk_EU_080FF8BC + .4byte gUnk_EU_080FF8EC + .4byte gUnk_EU_080FF91C + .4byte gUnk_EU_080FF94C + .4byte gUnk_EU_080FF9A0 + .4byte gUnk_EU_080FFA48 + .4byte gUnk_EU_080FFAF0 + .4byte gUnk_EU_080FFBE0 + .4byte gUnk_EU_080FFC1C + .4byte gUnk_EU_080FFC4C + .4byte gUnk_EU_080FFC7C + .4byte gUnk_EU_080FFCAC + .4byte gUnk_EU_080FFCDC + .4byte gUnk_EU_080FFD0C + .4byte gUnk_EU_080FFD3C + .4byte gUnk_EU_080FFD6C + .4byte gUnk_EU_080FFD9C + .4byte gUnk_EU_080FFDCC + .4byte gUnk_EU_080FFDFC + .4byte gUnk_EU_080FFE5C + .4byte gUnk_EU_080FFE8C + .4byte gUnk_EU_080FFEEC + .4byte gUnk_EU_080FFF1C + .4byte gUnk_EU_080FFFAC + .4byte gUnk_EU_080FFFDC + .4byte gUnk_EU_0810000C + .4byte gUnk_EU_080FFE2C + .4byte gUnk_EU_080FFEBC + .4byte gUnk_EU_080FFFAC + .4byte gUnk_EU_080FFF7C + .4byte gUnk_EU_080FFF4C + .4byte gUnk_EU_0810003C + .4byte gUnk_EU_081000A8 + .4byte gUnk_EU_081000B4 + .4byte gUnk_EU_081000C0 + .4byte gUnk_EU_081000CC + .4byte gUnk_EU_081000D8 + .4byte gUnk_EU_081000E4 + .4byte gUnk_EU_081000F0 + .4byte gUnk_EU_081000FC + .4byte gUnk_EU_0810015C + .4byte gUnk_EU_080FFBB0 + .4byte gUnk_EU_080FFBC8 + .4byte gUnk_EU_080FFB68 + .4byte gUnk_EU_081001E0 + .4byte gUnk_EU_081001EC + .4byte gUnk_EU_081001F8 +.else + + gUnk_080FFB90:: @ 080FFB90 +.ifdef EU + .incbin "baserom_eu.gba", 0x0FF0C4, 0x0000018 +.else .incbin "baserom.gba", 0x0FFB90, 0x0000018 +.endif gUnk_080FFBA8:: @ 080FFBA8 .ifdef JP .incbin "baserom_jp.gba", 0x0FF858, 0x0000035 +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0FF0DC, 0x0000048 .else .incbin "baserom.gba", 0x0FFBA8, 0x0000035 .endif +.endif gUnk_080FFBDD:: @ 080FFBDD .ifdef JP .incbin "baserom_jp.gba", 0x0FF88D, 0x000001f +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0FF124, 0x0000054 .else .incbin "baserom.gba", 0x0FFBDD, 0x0000013 .endif +.endif gUnk_080FFBF0:: @ 080FFBF0 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x0FF8AC, 0x0000024 +.else +.ifdef EU + .incbin "baserom_eu.gba", 0x0FF178, 0x0000054 .else .incbin "baserom.gba", 0x0FFBF0, 0x0000024 .endif +.endif gUnk_080FFC14:: @ 080FFC14 .incbin "baserom.gba", 0x0FFC14, 0x0000024 @@ -1929,3 +2738,4 @@ gUnk_08100AA8:: @ 08100AA8 .4byte gUnk_08100A84 .4byte gUnk_08100A90 .4byte gUnk_08100A9C +.endif diff --git a/data/data_08108E6C.s b/data/data_08108E6C.s index 94528d70..625a6cea 100644 --- a/data/data_08108E6C.s +++ b/data/data_08108E6C.s @@ -8,14 +8,24 @@ gUnk_08108E6C:: @ 08108E6C .incbin "baserom.gba", 0x108E6C, 0x000000C gUnk_08108E78:: @ 08108E78 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1085CC, 0x0000018 +.else .incbin "baserom.gba", 0x108E78, 0x0000018 +.endif gUnk_08108E90:: @ 08108E90 .4byte gUnk_08108E6C .4byte gUnk_08108E78 gUnk_08108E98:: @ 08108E98 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1085EC, 0x000000C +.else .incbin "baserom.gba", 0x108E98, 0x000000C +.endif gUnk_08108EA4:: @ 08108EA4 .incbin "baserom.gba", 0x108EA4, 0x0000018 @@ -25,180 +35,330 @@ gUnk_08108EBC:: @ 08108EBC .4byte gUnk_08108EA4 gUnk_08108EC4:: @ 08108EC4 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x108618, 0x000000C +.else .incbin "baserom.gba", 0x108EC4, 0x000000C +.endif gUnk_08108ED0:: @ 08108ED0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x108624, 0x0000018 +.else .incbin "baserom.gba", 0x108ED0, 0x0000018 +.endif gUnk_08108EE8:: @ 08108EE8 .4byte gUnk_08108EC4 .4byte gUnk_08108ED0 gUnk_08108EF0:: @ 08108EF0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x108644, 0x000000C +.else .incbin "baserom.gba", 0x108EF0, 0x000000C +.endif gUnk_08108EFC:: @ 08108EFC +.ifdef EU + .incbin "baserom_eu.gba", 0x108650, 0x0000018 +.else .incbin "baserom.gba", 0x108EFC, 0x0000018 +.endif gUnk_08108F14:: @ 08108F14 .4byte gUnk_08108EF0 .4byte gUnk_08108EFC gUnk_08108F1C:: @ 08108F1C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x108670, 0x000000C +.else .incbin "baserom.gba", 0x108F1C, 0x000000C +.endif gUnk_08108F28:: @ 08108F28 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x10867C, 0x0000018 +.else .incbin "baserom.gba", 0x108F28, 0x0000018 +.endif gUnk_08108F40:: @ 08108F40 .4byte gUnk_08108F1C .4byte gUnk_08108F28 gUnk_08108F48:: @ 08108F48 +.ifdef EU + .incbin "baserom_eu.gba", 0x10869C, 0x0000004 +.else .incbin "baserom.gba", 0x108F48, 0x0000004 +.endif gUnk_08108F4C:: @ 08108F4C +.ifdef EU + .incbin "baserom_eu.gba", 0x1086A0, 0x0000008 +.else .incbin "baserom.gba", 0x108F4C, 0x0000008 +.endif gUnk_08108F54:: @ 08108F54 +.ifdef EU + .incbin "baserom_eu.gba", 0x1086A8, 0x0000018 +.else .incbin "baserom.gba", 0x108F54, 0x0000018 +.endif gUnk_08108F6C:: @ 08108F6C .4byte gUnk_08108F48 .4byte gUnk_08108F54 gUnk_08108F74:: @ 08108F74 +.ifdef EU + .incbin "baserom_eu.gba", 0x1086C8, 0x000000C +.else .incbin "baserom.gba", 0x108F74, 0x000000C +.endif gUnk_08108F80:: @ 08108F80 +.ifdef EU + .incbin "baserom_eu.gba", 0x1086D4, 0x0000018 +.else .incbin "baserom.gba", 0x108F80, 0x0000018 +.endif gUnk_08108F98:: @ 08108F98 .4byte gUnk_08108F74 .4byte gUnk_08108F80 gUnk_08108FA0:: @ 08108FA0 +.ifdef EU + .incbin "baserom_eu.gba", 0x1086F4, 0x000000C +.else .incbin "baserom.gba", 0x108FA0, 0x000000C +.endif gUnk_08108FAC:: @ 08108FAC +.ifdef EU + .incbin "baserom_eu.gba", 0x108700, 0x0000018 +.else .incbin "baserom.gba", 0x108FAC, 0x0000018 +.endif gUnk_08108FC4:: @ 08108FC4 .4byte gUnk_08108FA0 .4byte gUnk_08108FAC gUnk_08108FCC:: @ 08108FCC +.ifdef EU + .incbin "baserom_eu.gba", 0x108720, 0x000000C +.else .incbin "baserom.gba", 0x108FCC, 0x000000C +.endif gUnk_08108FD8:: @ 08108FD8 +.ifdef EU + .incbin "baserom_eu.gba", 0x10872C, 0x0000018 +.else .incbin "baserom.gba", 0x108FD8, 0x0000018 +.endif gUnk_08108FF0:: @ 08108FF0 .4byte gUnk_08108FCC .4byte gUnk_08108FD8 gUnk_08108FF8:: @ 08108FF8 +.ifdef EU + .incbin "baserom_eu.gba", 0x10874C, 0x000000C +.else .incbin "baserom.gba", 0x108FF8, 0x000000C +.endif gUnk_08109004:: @ 08109004 +.ifdef EU + .incbin "baserom_eu.gba", 0x108758, 0x0000001 +.else .incbin "baserom.gba", 0x109004, 0x0000001 +.endif gUnk_08109005:: @ 08109005 +.ifdef EU + .incbin "baserom_eu.gba", 0x108759, 0x0000014 +.else .incbin "baserom.gba", 0x109005, 0x0000014 +.endif gUnk_08109019:: @ 08109019 +.ifdef EU + .incbin "baserom_eu.gba", 0x10876D, 0x0000003 +.else .incbin "baserom.gba", 0x109019, 0x0000003 +.endif gUnk_0810901C:: @ 0810901C .4byte gUnk_08108FF8 .4byte gUnk_08109004 gUnk_08109024:: @ 08109024 +.ifdef EU + .incbin "baserom_eu.gba", 0x108778, 0x000000C +.else .incbin "baserom.gba", 0x109024, 0x000000C +.endif gUnk_08109030:: @ 08109030 +.ifdef EU + .incbin "baserom_eu.gba", 0x108784, 0x0000003 +.else .incbin "baserom.gba", 0x109030, 0x0000003 +.endif gUnk_08109033:: @ 08109033 +.ifdef EU + .incbin "baserom_eu.gba", 0x108787, 0x0000015 +.else .incbin "baserom.gba", 0x109033, 0x0000015 +.endif gUnk_08109048:: @ 08109048 .4byte gUnk_08109024 .4byte gUnk_08109030 gUnk_08109050:: @ 08109050 +.ifdef EU + .incbin "baserom_eu.gba", 0x1087A4, 0x000000C +.else .incbin "baserom.gba", 0x109050, 0x000000C +.endif gUnk_0810905C:: @ 0810905C +.ifdef EU + .incbin "baserom_eu.gba", 0x1087B0, 0x0000018 +.else .incbin "baserom.gba", 0x10905C, 0x0000018 +.endif gUnk_08109074:: @ 08109074 .4byte gUnk_08109050 .4byte gUnk_0810905C gUnk_0810907C:: @ 0810907C +.ifdef EU + .incbin "baserom_eu.gba", 0x1087D0, 0x000000C +.else .incbin "baserom.gba", 0x10907C, 0x000000C +.endif gUnk_08109088:: @ 08109088 +.ifdef EU + .incbin "baserom_eu.gba", 0x1087DC, 0x0000018 +.else .incbin "baserom.gba", 0x109088, 0x0000018 +.endif gUnk_081090A0:: @ 081090A0 .4byte gUnk_0810907C .4byte gUnk_08109088 gUnk_081090A8:: @ 081090A8 +.ifdef EU + .incbin "baserom_eu.gba", 0x1087FC, 0x000000C +.else .incbin "baserom.gba", 0x1090A8, 0x000000C +.endif gUnk_081090B4:: @ 081090B4 +.ifdef EU + .incbin "baserom_eu.gba", 0x108808, 0x0000018 +.else .incbin "baserom.gba", 0x1090B4, 0x0000018 +.endif gUnk_081090CC:: @ 081090CC .4byte gUnk_081090A8 .4byte gUnk_081090B4 gUnk_081090D4:: @ 081090D4 +.ifdef EU + .incbin "baserom_eu.gba", 0x108828, 0x000000C +.else .incbin "baserom.gba", 0x1090D4, 0x000000C +.endif gUnk_081090E0:: @ 081090E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x108834, 0x0000018 +.else .incbin "baserom.gba", 0x1090E0, 0x0000018 +.endif gUnk_081090F8:: @ 081090F8 .4byte gUnk_081090D4 .4byte gUnk_081090E0 gUnk_08109100:: @ 08109100 +.ifdef EU + .incbin "baserom_eu.gba", 0x108854, 0x000000C +.else .incbin "baserom.gba", 0x109100, 0x000000C +.endif gUnk_0810910C:: @ 0810910C +.ifdef EU + .incbin "baserom_eu.gba", 0x108860, 0x0000018 +.else .incbin "baserom.gba", 0x10910C, 0x0000018 +.endif gUnk_08109124:: @ 08109124 .4byte gUnk_08109100 .4byte gUnk_0810910C gUnk_0810912C:: @ 0810912C +.ifdef EU + .incbin "baserom_eu.gba", 0x108880, 0x000000C +.else .incbin "baserom.gba", 0x10912C, 0x000000C +.endif gUnk_08109138:: @ 08109138 .4byte gUnk_0810912C .4byte gUnk_081090E0 gUnk_08109140:: @ 08109140 +.ifdef EU + .incbin "baserom_eu.gba", 0x108894, 0x0000018 +.else .incbin "baserom.gba", 0x109140, 0x0000018 +.endif gUnk_08109158:: @ 08109158 .4byte gUnk_08109100 .4byte gUnk_08109140 gUnk_08109160:: @ 08109160 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1088B4, 0x0000018 +.else .incbin "baserom.gba", 0x109160, 0x0000018 +.endif gUnk_08109178:: @ 08109178 .4byte gUnk_081090D4 .4byte gUnk_08109160 gUnk_08109180:: @ 08109180 +.ifdef EU + .incbin "baserom_eu.gba", 0x1088D4, 0x000000C +.else .incbin "baserom.gba", 0x109180, 0x000000C +.endif gUnk_0810918C:: @ 0810918C .4byte gUnk_08109180 @@ -242,10 +402,17 @@ gUnk_08109214:: @ 08109214 .4byte gUnk_089B1D90 .4byte gUnk_089B1D90 .4byte gUnk_089B1D90 +.ifdef EU + .4byte gUnk_089F7420 + .4byte gUnk_08A3EEB0 + .4byte gUnk_08A81E70 + .4byte gUnk_08AC37A0 +.else .4byte gUnk_089B1D90 .4byte gUnk_089B1D90 .4byte gUnk_089B1D90 .4byte gUnk_089B1D90 +.endif gUnk_08109230:: @ 08109230 .incbin "baserom.gba", 0x109230, 0x0000014 diff --git a/data/data_081146D0.s b/data/data_081146D0.s index f19f1420..b4265bc2 100644 --- a/data/data_081146D0.s +++ b/data/data_081146D0.s @@ -20,7 +20,12 @@ gUnk_081147E4:: @ 081147E4 .incbin "baserom.gba", 0x1147E4, 0x0000020 gUnk_08114804:: @ 08114804 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x113F4C, 0x0000010 +.else .incbin "baserom.gba", 0x114804, 0x0000010 +.endif gUnk_08114814:: @ 08114814 .incbin "baserom.gba", 0x114814, 0x0000010 @@ -77,10 +82,20 @@ gUnk_08114A6C:: @ 08114A6C .incbin "baserom.gba", 0x114A6C, 0x0000020 gUnk_08114A8C:: @ 08114A8C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1141D4, 0x0000030 +.else .incbin "baserom.gba", 0x114A8C, 0x0000030 +.endif gUnk_08114ABC:: @ 08114ABC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x114204, 0x0000028 +.else .incbin "baserom.gba", 0x114ABC, 0x0000028 +.endif gUnk_08114AE4:: @ 08114AE4 .incbin "baserom.gba", 0x114AE4, 0x000001C @@ -131,9 +146,19 @@ gUnk_08114AE4:: @ 08114AE4 .4byte gUnk_08114A14 .incbin "baserom.gba", 0x114D4C, 0x0000014 .4byte gUnk_08114A6C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1144AC, 0x0000014 +.else .incbin "baserom.gba", 0x114D64, 0x0000014 +.endif .4byte gUnk_08114ABC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1144C4, 0x0000168 +.else .incbin "baserom.gba", 0x114D7C, 0x0000168 +.endif gUnk_08114EE4:: @ 08114EE4 .4byte 00000000 diff --git a/data/data_0811BE38.s b/data/data_0811BE38.s index 737ccdb9..5ca8e6f9 100644 --- a/data/data_0811BE38.s +++ b/data/data_0811BE38.s @@ -11,7 +11,12 @@ gUnk_0811BE40:: @ 0811BE40 .incbin "baserom.gba", 0x11BE40, 0x0000008 gUnk_0811BE48:: @ 0811BE48 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x11B590, 0x0000180 +.else .incbin "baserom.gba", 0x11BE48, 0x0000180 +.endif gUnk_0811BFC8:: @ 0811BFC8 .4byte sub_080779E8 diff --git a/data/data_08125104.s b/data/data_08125104.s index 83646edc..878a558d 100644 --- a/data/data_08125104.s +++ b/data/data_08125104.s @@ -15,7 +15,12 @@ gUnk_08125118:: @ 08125118 .incbin "baserom.gba", 0x125118, 0x00002C0 gUnk_081253D8:: @ 081253D8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x124B20, 0x0000020 +.else .incbin "baserom.gba", 0x1253D8, 0x0000020 +.endif gUnk_081253F8:: @ 081253F8 .incbin "baserom.gba", 0x1253F8, 0x0000028 @@ -24,7 +29,12 @@ gUnk_08125420:: @ 08125420 .incbin "baserom.gba", 0x125420, 0x0000018 gUnk_08125438:: @ 08125438 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x124B80, 0x0000060 +.else .incbin "baserom.gba", 0x125438, 0x0000060 +.endif gUnk_08125498:: @ 08125498 .incbin "baserom.gba", 0x125498, 0x0000050 @@ -33,25 +43,50 @@ gUnk_081254E8:: @ 081254E8 .incbin "baserom.gba", 0x1254E8, 0x0000058 gUnk_08125540:: @ 08125540 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x124C88, 0x0000118 +.else .incbin "baserom.gba", 0x125540, 0x0000118 +.endif gUnk_08125658:: @ 08125658 .incbin "baserom.gba", 0x125658, 0x0000010 gUnk_08125668:: @ 08125668 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x124DB0, 0x0000030 +.else .incbin "baserom.gba", 0x125668, 0x0000030 +.endif gUnk_08125698:: @ 08125698 .incbin "baserom.gba", 0x125698, 0x0000010 gUnk_081256A8:: @ 081256A8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x124DF0, 0x0000028 +.else .incbin "baserom.gba", 0x1256A8, 0x0000028 +.endif gUnk_081256D0:: @ 081256D0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x124E18, 0x0000230 +.else .incbin "baserom.gba", 0x1256D0, 0x0000230 +.endif gUnk_08125900:: @ 08125900 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125048, 0x0000018 +.else .incbin "baserom.gba", 0x125900, 0x0000018 +.endif gUnk_08125918:: @ 08125918 .incbin "baserom.gba", 0x125918, 0x0000010 @@ -66,55 +101,125 @@ gUnk_08125960:: @ 08125960 .incbin "baserom.gba", 0x125960, 0x0000048 gUnk_081259A8:: @ 081259A8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1250F0, 0x000006D +.else .incbin "baserom.gba", 0x1259A8, 0x000006D +.endif gUnk_08125A15:: @ 08125A15 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x12515D, 0x00000EB +.else .incbin "baserom.gba", 0x125A15, 0x00000EB +.endif gUnk_08125B00:: @ 08125B00 .incbin "baserom.gba", 0x125B00, 0x0000020 gUnk_08125B20:: @ 08125B20 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125268, 0x0000030 +.else .incbin "baserom.gba", 0x125B20, 0x0000030 +.endif gUnk_08125B50:: @ 08125B50 .incbin "baserom.gba", 0x125B50, 0x0000020 gUnk_08125B70:: @ 08125B70 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1252B8, 0x00000A8 +.else .incbin "baserom.gba", 0x125B70, 0x00000A8 +.endif gUnk_08125C18:: @ 08125C18 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125360, 0x0000030 +.else .incbin "baserom.gba", 0x125C18, 0x0000030 +.endif gUnk_08125C48:: @ 08125C48 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125390, 0x0000048 +.else .incbin "baserom.gba", 0x125C48, 0x0000048 +.endif gUnk_08125C90:: @ 08125C90 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1253D8, 0x0000048 +.else .incbin "baserom.gba", 0x125C90, 0x0000048 +.endif gUnk_08125CD8:: @ 08125CD8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125420, 0x0000090 +.else .incbin "baserom.gba", 0x125CD8, 0x0000090 +.endif gUnk_08125D68:: @ 08125D68 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1254B0, 0x0000048 +.else .incbin "baserom.gba", 0x125D68, 0x0000048 +.endif gUnk_08125DB0:: @ 08125DB0 .incbin "baserom.gba", 0x125DB0, 0x0000108 gUnk_08125EB8:: @ 08125EB8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125600, 0x0000018 +.else .incbin "baserom.gba", 0x125EB8, 0x0000018 +.endif gUnk_08125ED0:: @ 08125ED0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125618, 0x0000020 +.else .incbin "baserom.gba", 0x125ED0, 0x0000020 +.endif gUnk_08125EF0:: @ 08125EF0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125638, 0x0000020 +.else .incbin "baserom.gba", 0x125EF0, 0x0000020 +.endif gUnk_08125F10:: @ 08125F10 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125658, 0x0000010 +.else .incbin "baserom.gba", 0x125F10, 0x0000010 +.endif gUnk_08125F20:: @ 08125F20 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125668, 0x0000018 +.else .incbin "baserom.gba", 0x125F20, 0x0000018 +.endif gUnk_08125F38:: @ 08125F38 .incbin "baserom.gba", 0x125F38, 0x0000010 @@ -123,10 +228,20 @@ gUnk_08125F48:: @ 08125F48 .incbin "baserom.gba", 0x125F48, 0x0000030 gUnk_08125F78:: @ 08125F78 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1256C0, 0x0000018 +.else .incbin "baserom.gba", 0x125F78, 0x0000018 +.endif gUnk_08125F90:: @ 08125F90 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1256D8, 0x0000010 +.else .incbin "baserom.gba", 0x125F90, 0x0000010 +.endif gUnk_08125FA0:: @ 08125FA0 .incbin "baserom.gba", 0x125FA0, 0x0000020 @@ -138,94 +253,206 @@ gUnk_08125FE8:: @ 08125FE8 .incbin "baserom.gba", 0x125FE8, 0x0000050 gUnk_08126038:: @ 08126038 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125780, 0x0000018 +.else .incbin "baserom.gba", 0x126038, 0x0000018 +.endif gUnk_08126050:: @ 08126050 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125798, 0x0000018 +.else .incbin "baserom.gba", 0x126050, 0x0000018 +.endif gUnk_08126068:: @ 08126068 .incbin "baserom.gba", 0x126068, 0x0000040 gUnk_081260A8:: @ 081260A8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1257F0, 0x0000010 +.else .incbin "baserom.gba", 0x1260A8, 0x0000010 +.endif gUnk_081260B8:: @ 081260B8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125800, 0x0000058 +.else .incbin "baserom.gba", 0x1260B8, 0x0000058 +.endif gUnk_08126110:: @ 08126110 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125858, 0x0000040 +.else .incbin "baserom.gba", 0x126110, 0x0000040 +.endif gUnk_08126150:: @ 08126150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125898, 0x0000030 +.else .incbin "baserom.gba", 0x126150, 0x0000030 +.endif gUnk_08126180:: @ 08126180 .incbin "baserom.gba", 0x126180, 0x0000030 gUnk_081261B0:: @ 081261B0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1258F8, 0x0000018 +.else .incbin "baserom.gba", 0x1261B0, 0x0000018 +.endif gUnk_081261C8:: @ 081261C8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125910, 0x0000020 +.else .incbin "baserom.gba", 0x1261C8, 0x0000020 +.endif gUnk_081261E8:: @ 081261E8 .incbin "baserom.gba", 0x1261E8, 0x0000010 gUnk_081261F8:: @ 081261F8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125940, 0x000001B +.else .incbin "baserom.gba", 0x1261F8, 0x000001B +.endif gUnk_08126213:: @ 08126213 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x12595B, 0x0000065 +.else .incbin "baserom.gba", 0x126213, 0x0000065 +.endif gUnk_08126278:: @ 08126278 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1259C0, 0x0000020 +.else .incbin "baserom.gba", 0x126278, 0x0000020 +.endif gUnk_08126298:: @ 08126298 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1259E0, 0x0000020 +.else .incbin "baserom.gba", 0x126298, 0x0000020 +.endif gUnk_081262B8:: @ 081262B8 .incbin "baserom.gba", 0x1262B8, 0x0000018 gUnk_081262D0:: @ 081262D0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125A18, 0x0000018 +.else .incbin "baserom.gba", 0x1262D0, 0x0000018 +.endif gUnk_081262E8:: @ 081262E8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125A30, 0x0000048 +.else .incbin "baserom.gba", 0x1262E8, 0x0000048 +.endif gUnk_08126330:: @ 08126330 .incbin "baserom.gba", 0x126330, 0x0000020 gUnk_08126350:: @ 08126350 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125A98, 0x0000010 +.else .incbin "baserom.gba", 0x126350, 0x0000010 +.endif gUnk_08126360:: @ 08126360 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125AA8, 0x0000020 +.else .incbin "baserom.gba", 0x126360, 0x0000020 +.endif gUnk_08126380:: @ 08126380 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125AC8, 0x0000028 +.else .incbin "baserom.gba", 0x126380, 0x0000028 +.endif gUnk_081263A8:: @ 081263A8 .incbin "baserom.gba", 0x1263A8, 0x0000010 gUnk_081263B8:: @ 081263B8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125B00, 0x0000010 +.else .incbin "baserom.gba", 0x1263B8, 0x0000010 +.endif gUnk_081263C8:: @ 081263C8 .incbin "baserom.gba", 0x1263C8, 0x0000010 gUnk_081263D8:: @ 081263D8 +.ifndef EU .incbin "baserom.gba", 0x1263D8, 0x0000010 +.endif gUnk_081263E8:: @ 081263E8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125B20, 0x0000138 +.else .incbin "baserom.gba", 0x1263E8, 0x0000138 +.endif gUnk_08126520:: @ 08126520 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125C58, 0x000009C +.else .incbin "baserom.gba", 0x126520, 0x000009C +.endif gUnk_081265BC:: @ 081265BC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125CF4, 0x0000073 +.else .incbin "baserom.gba", 0x1265BC, 0x0000073 +.endif gUnk_0812662F:: @ 0812662F +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125D67, 0x0000169 +.else .incbin "baserom.gba", 0x12662F, 0x0000169 +.endif gUnk_08126798:: @ 08126798 .incbin "baserom.gba", 0x126798, 0x0000004 @@ -234,19 +461,34 @@ gUnk_08126798:: @ 08126798 .4byte gUnk_081263E8 .incbin "baserom.gba", 0x1267B0, 0x0000024 .4byte gUnk_081253D8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125F10, 0x000001C +.else .incbin "baserom.gba", 0x1267D8, 0x000001C +.endif .4byte gUnk_081263E8 .incbin "baserom.gba", 0x1267F8, 0x000001C .4byte gUnk_08125118 .incbin "baserom.gba", 0x126818, 0x000000C .4byte gUnk_08125B50 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125F60, 0x000003C +.else .incbin "baserom.gba", 0x126828, 0x000003C +.endif .4byte gUnk_081262E8 .incbin "baserom.gba", 0x126868, 0x000000C .4byte gUnk_08125DB0 .incbin "baserom.gba", 0x126878, 0x0000004 .4byte gUnk_08125438 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x125FB8, 0x000002C +.else .incbin "baserom.gba", 0x126880, 0x000002C +.endif .4byte gUnk_081261C8 .incbin "baserom.gba", 0x1268B0, 0x000000C .4byte gUnk_08125420 @@ -258,45 +500,100 @@ gUnk_08126798:: @ 08126798 .4byte gUnk_081261F8 .incbin "baserom.gba", 0x1268E0, 0x000001C .4byte gUnk_08125498 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126038, 0x0000034 +.else .incbin "baserom.gba", 0x126900, 0x0000034 +.endif .4byte gUnk_08126180 .incbin "baserom.gba", 0x126938, 0x000000C .4byte gUnk_08125F78 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126080, 0x000002C +.else .incbin "baserom.gba", 0x126948, 0x000002C +.endif .4byte gUnk_08125C48 .incbin "baserom.gba", 0x126978, 0x0000014 .4byte gUnk_08125D68 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1260C8, 0x000000C +.else .incbin "baserom.gba", 0x126990, 0x000000C +.endif .4byte gUnk_081263E8 .incbin "baserom.gba", 0x1269A0, 0x0000024 .4byte gUnk_081263A8 .incbin "baserom.gba", 0x1269C8, 0x0000004 .4byte gUnk_08125F20 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126108, 0x0000014 +.else .incbin "baserom.gba", 0x1269D0, 0x0000014 +.endif .4byte gUnk_081254E8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126120, 0x0000014 +.else .incbin "baserom.gba", 0x1269E8, 0x0000014 +.endif .4byte gUnk_081256A8 .incbin "baserom.gba", 0x126A00, 0x0000004 .4byte gUnk_081256D0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126140, 0x000000C +.else .incbin "baserom.gba", 0x126A08, 0x000000C +.endif .4byte gUnk_08125540 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126150, 0x0000024 +.else .incbin "baserom.gba", 0x126A18, 0x0000024 +.endif .4byte gUnk_081261E8 .incbin "baserom.gba", 0x126A40, 0x000000C .4byte gUnk_08125658 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126188, 0x0000014 +.else .incbin "baserom.gba", 0x126A50, 0x0000014 +.endif .4byte gUnk_08125698 .incbin "baserom.gba", 0x126A68, 0x0000004 .4byte gUnk_08125900 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1261A8, 0x000000C +.else .incbin "baserom.gba", 0x126A70, 0x000000C +.endif .4byte gUnk_08125F90 .incbin "baserom.gba", 0x126A80, 0x0000004 .4byte gUnk_08125B20 .incbin "baserom.gba", 0x126A88, 0x000000C .4byte gUnk_08126350 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1261D0, 0x000000C +.else .incbin "baserom.gba", 0x126A98, 0x000000C +.endif .4byte gUnk_08125918 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1261E0, 0x0000014 +.else .incbin "baserom.gba", 0x126AA8, 0x0000014 +.endif .4byte gUnk_08125928 .incbin "baserom.gba", 0x126AC0, 0x0000004 .4byte gUnk_081261B0 @@ -308,7 +605,12 @@ gUnk_08126798:: @ 08126798 .4byte gUnk_081259A8 .incbin "baserom.gba", 0x126AF0, 0x0000004 .4byte gUnk_08125B00 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126230, 0x000000C +.else .incbin "baserom.gba", 0x126AF8, 0x000000C +.endif .4byte gUnk_08125C18 .incbin "baserom.gba", 0x126B08, 0x000000C .4byte gUnk_08125B70 @@ -316,29 +618,59 @@ gUnk_08126798:: @ 08126798 .4byte gUnk_08125EB8 .incbin "baserom.gba", 0x126B28, 0x0000004 .4byte gUnk_08125ED0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126268, 0x0000014 +.else .incbin "baserom.gba", 0x126B30, 0x0000014 +.endif .4byte gUnk_08125C90 .incbin "baserom.gba", 0x126B48, 0x0000004 .4byte gUnk_08125CD8 .incbin "baserom.gba", 0x126B50, 0x000000C .4byte gUnk_08125EF0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126298, 0x000001C +.else .incbin "baserom.gba", 0x126B60, 0x000001C +.endif .4byte gUnk_08125F10 - .incbin "baserom.gba", 0x126B80, 0x0000004 + .incbin "baserom_eu.gba", 0x1262B8, 0x0000004 .4byte gUnk_08125F38 .incbin "baserom.gba", 0x126B88, 0x000000C .4byte gUnk_08125F48 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1262D0, 0x0000024 +.else .incbin "baserom.gba", 0x126B98, 0x0000024 - .4byte gUnk_08125FA0 +.endif + .4byte gUnk_08125FA0 @ 0x81262F4 .incbin "baserom.gba", 0x126BC0, 0x0000004 .4byte gUnk_08125FC0 .incbin "baserom.gba", 0x126BC8, 0x000000C .4byte gUnk_08125FE8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126310, 0x0000014 +.else .incbin "baserom.gba", 0x126BD8, 0x0000014 +.endif .4byte gUnk_08126038 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126328, 0x000000C +.else .incbin "baserom.gba", 0x126BF0, 0x000000C +.endif .4byte gUnk_08126050 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126338, 0x0000024 +.else .incbin "baserom.gba", 0x126C00, 0x0000024 +.endif .4byte gUnk_08126068 .incbin "baserom.gba", 0x126C28, 0x0000004 .4byte gUnk_081260A8 @@ -348,29 +680,64 @@ gUnk_08126798:: @ 08126798 .4byte gUnk_08126110 .incbin "baserom.gba", 0x126C50, 0x0000004 .4byte gUnk_08126150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126390, 0x0000044 +.else .incbin "baserom.gba", 0x126C58, 0x0000044 +.endif .4byte gUnk_08126278 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1263D8, 0x000001C +.else .incbin "baserom.gba", 0x126CA0, 0x000001C +.endif .4byte gUnk_08126298 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1263F8, 0x000001C +.else .incbin "baserom.gba", 0x126CC0, 0x000001C +.endif .4byte gUnk_081263E8 - .incbin "baserom.gba", 0x126CE0, 0x0000004 + .incbin "baserom_eu.gba", 0x126418, 0x0000004 .4byte gUnk_081262B8 .incbin "baserom.gba", 0x126CE8, 0x0000004 .4byte gUnk_081262D0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126428, 0x000000C +.else .incbin "baserom.gba", 0x126CF0, 0x000000C +.endif .4byte gUnk_081263E8 .incbin "baserom.gba", 0x126D00, 0x0000004 .4byte gUnk_08126330 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x126440, 0x000002C +.else .incbin "baserom.gba", 0x126D08, 0x000002C +.endif .4byte gUnk_081263C8 .incbin "baserom.gba", 0x126D38, 0x0000004 .4byte gUnk_08126360 +.ifdef EU + .incbin "baserom_eu.gba", 0x126478, 0x0000010 + .incbin "baserom_eu.gba", 0x126488, 0x0000034 +.else .incbin "baserom.gba", 0x126D40, 0x000000C .4byte gUnk_081263D8 .incbin "baserom.gba", 0x126D50, 0x0000034 +.endif .4byte gUnk_08126380 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1264C0, 0x0000014 +.else .incbin "baserom.gba", 0x126D88, 0x0000014 +.endif .4byte gUnk_081263B8 .incbin "baserom.gba", 0x126DA0, 0x0000008 diff --git a/data/data_08127280.s b/data/data_08127280.s index 81795e24..f8d5fc0d 100644 --- a/data/data_08127280.s +++ b/data/data_08127280.s @@ -51,7 +51,12 @@ gUnk_08127D10:: @ 08127D10 .4byte sub_080A3930 gUnk_08127D30:: @ 08127D30 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x127468, 0x0000264 +.else .incbin "baserom.gba", 0x127D30, 0x0000264 +.endif gUnk_08127F94:: @ 08127F94 .incbin "baserom.gba", 0x127F94, 0x0000090 @@ -707,7 +712,12 @@ gUnk_08128A38:: @ 08128A38 .4byte sub_080A4F28 gUnk_08128AD8:: @ 08128AD8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x128210, 0x0000058 +.else .incbin "baserom.gba", 0x128AD8, 0x0000058 +.endif gUnk_08128B30:: @ 08128B30 .4byte sub_080A4F28 diff --git a/data/data_0812AA88.s b/data/data_0812AA88.s index 5c94a158..bc3cc62a 100644 --- a/data/data_0812AA88.s +++ b/data/data_0812AA88.s @@ -139,14 +139,18 @@ gUnk_0812AAE8:: @ 0812AAE8 .4byte gUnk_0812ACB0 .4byte gUnk_0812ACA4 .4byte gUnk_0812AC94 +.ifndef EU .4byte gUnk_0812AC88 +.endif .4byte gUnk_0812AC84 gUnk_0812AC84:: @ 0812AC84 .incbin "baserom.gba", 0x12AC84, 0x0000004 +.ifndef EU gUnk_0812AC88:: @ 0812AC88 .incbin "baserom.gba", 0x12AC88, 0x000000C +.endif gUnk_0812AC94:: @ 0812AC94 .incbin "baserom.gba", 0x12AC94, 0x0000010 @@ -173,7 +177,11 @@ gUnk_0812ACF0:: @ 0812ACF0 .incbin "baserom.gba", 0x12ACF0, 0x0000010 gUnk_0812AD00:: @ 0812AD00 +.ifdef EU + .incbin "baserom_eu.gba", 0x12A428, 0x0000010 +.else .incbin "baserom.gba", 0x12AD00, 0x000000C +.endif gUnk_0812AD0C:: @ 0812AD0C .incbin "baserom.gba", 0x12AD0C, 0x0000014 @@ -1211,7 +1219,765 @@ ENUM_12AED0_LV1_CLEAR_MES: .else - +.ifdef EU +@ TODO same as JP, deduplicate +ENUM_12AED0: + .4byte gUnk_0812B204 + .4byte ENUM_12AED0_LV1_CLEAR_MES + .4byte ENUM_12AED0_LV2_CLEAR_MES + .4byte ENUM_12AED0_LV3_CLEAR_MES + .4byte ENUM_12AED0_LV4_CLEAR_MES + .4byte ENUM_12AED0_LV5_CLEAR_MES + .4byte ENUM_12AED0_MIZUUMI_00_BENT + .4byte ENUM_12AED0_MIZUUMI_00_00 + .4byte ENUM_12AED0_MIZUUMI_00_H00 + .4byte ENUM_12AED0_MIZUUMI_00_H01 + .4byte ENUM_12AED0_MIZUUMI_00_H02 + .4byte ENUM_12AED0_HIKYOU_00_T0 + .4byte ENUM_12AED0_HIKYOU_00_T1 + .4byte ENUM_12AED0_MAENIWA_00_00 + .4byte ENUM_12AED0_MAENIWA_00_01 + .4byte ENUM_12AED0_MAENIWA_00_02 + .4byte ENUM_12AED0_MAENIWA_00_BENT + .4byte ENUM_12AED0_MAENIWA_00_WARP + .4byte ENUM_12AED0_MAENIWA_00_T0 + .4byte ENUM_12AED0_MAENIWA_00_T1 + .4byte ENUM_12AED0_MAENIWA_00_CAP_0 + .4byte ENUM_12AED0_NAKANIWA_00_EZERO + .4byte ENUM_12AED0_HIKYOU_00_00 + .4byte ENUM_12AED0_HIKYOU_00_01 + .4byte ENUM_12AED0_HIKYOU_00_02 + .4byte ENUM_12AED0_HIKYOU_00_03 + .4byte ENUM_12AED0_HIKYOU_00_04 + .4byte ENUM_12AED0_HIKYOU_00_CAP_0 + .4byte ENUM_12AED0_HIKYOU_00_CAP_1 + .4byte ENUM_12AED0_HIKYOU_00_CAP_2 + .4byte ENUM_12AED0_HIKYOU_00_SEKIZOU + .4byte ENUM_12AED0_HIKYOU_00_14 + .4byte ENUM_12AED0_HIKYOU_00_BOSEKI + .4byte ENUM_12AED0_HIKYOU_00_H00 + .4byte ENUM_12AED0_HIKYOU_00_M0 + .4byte ENUM_12AED0_HIKYOU_00_M1 + .4byte ENUM_12AED0_HIKYOU_00_M2 + .4byte ENUM_12AED0_LOST_00_ENTER + .4byte ENUM_12AED0_LOST_00_00 + .4byte ENUM_12AED0_LOST_00_01 + .4byte ENUM_12AED0_LOST_02_00 + .4byte ENUM_12AED0_LOST_03_00 + .4byte ENUM_12AED0_LOST_03_T0 + .4byte ENUM_12AED0_LOST_04_00 + .4byte ENUM_12AED0_LOST_04_SIBA0 + .4byte ENUM_12AED0_LOST_04_SIBA1 + .4byte ENUM_12AED0_LOST_04_SIBA2 + .4byte ENUM_12AED0_LOST_04_SIBA3 + .4byte ENUM_12AED0_LOST_04_SIBA4 + .4byte ENUM_12AED0_LOST_05_00 + .4byte ENUM_12AED0_LOST_05_01 + .4byte ENUM_12AED0_LOST_05_T0 + .4byte ENUM_12AED0_LOST_05_T1 + .4byte ENUM_12AED0_MORI_00_HIBI_0 + .4byte ENUM_12AED0_MORI_00_HIBI_1 + .4byte ENUM_12AED0_MORI_00_HIBI_2 + .4byte ENUM_12AED0_MORI_00_HIBI_3 + .4byte ENUM_12AED0_MORI_00_HIBI_4 + .4byte ENUM_12AED0_MORI_00_KOBITO + .4byte ENUM_12AED0_MORI_00_H0 + .4byte ENUM_12AED0_MORI_00_H1 + .4byte ENUM_12AED0_MORI_ENTRANCE_1ST + .4byte ENUM_12AED0_YAMA_00_00 + .4byte ENUM_12AED0_YAMA_00_01 + .4byte ENUM_12AED0_YAMA_01_BW00 + .4byte ENUM_12AED0_YAMA_02_00 + .4byte ENUM_12AED0_YAMA_03_00 + .4byte ENUM_12AED0_YAMA_03_01 + .4byte ENUM_12AED0_YAMA_03_02 + .4byte ENUM_12AED0_YAMA_03_DOKU_0 + .4byte ENUM_12AED0_YAMA_03_DOKU_1 + .4byte ENUM_12AED0_YAMA_03_DOKU_2 + .4byte ENUM_12AED0_YAMA_04_CAP_0 + .4byte ENUM_12AED0_YAMA_04_R00 + .4byte ENUM_12AED0_YAMA_04_HIBI_0 + .4byte ENUM_12AED0_YAMA_04_HIBI_1 + .4byte ENUM_12AED0_YAMA_04_00 + .4byte ENUM_12AED0_YAMA_04_01 + .4byte ENUM_12AED0_YAMA_04_04 + .4byte ENUM_12AED0_YAMA_04_05 + .4byte ENUM_12AED0_YAMA_04_06 + .4byte ENUM_12AED0_YAMA_04_ENTHOUSHI + .4byte ENUM_12AED0_YAMA_04_ANAHOUSHI + .4byte ENUM_12AED0_YAMA_04_BOMBWALL0 + .4byte ENUM_12AED0_HAKA_BUNSHIN_00 + .4byte ENUM_12AED0_HAKA_BOSEKI_00 + .4byte ENUM_12AED0_HAKA_BOSEKI_01 + .4byte ENUM_12AED0_HAKA_BOSEKI_02 + .4byte ENUM_12AED0_HAKA_00_CAP_0 + .4byte ENUM_12AED0_HAKA_00_BW00 + .4byte ENUM_12AED0_HAKA_01_T0 + .4byte ENUM_12AED0_HAKA_KEY_GET + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_0 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_1 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_2 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_3 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_4 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_5 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_6 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_7 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_8 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_9 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_10 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_11 + .4byte ENUM_12AED0_SOUGEN_01_WAKAGI_12 + .4byte ENUM_12AED0_SOUGEN_01_00 + .4byte ENUM_12AED0_SOUGEN_01_BENT + .4byte ENUM_12AED0_SOUGEN_01_ZELDA + .4byte ENUM_12AED0_SOUGEN_02_HIBI_0 + .4byte ENUM_12AED0_SOUGEN_02_HIBI_1 + .4byte ENUM_12AED0_SOUGEN_03_BOMBWALL + .4byte ENUM_12AED0_SOUGEN_04_HIBI_0 + .4byte ENUM_12AED0_SOUGEN_04_HIBI_1 + .4byte ENUM_12AED0_SOUGEN_04_HIBI_2 + .4byte ENUM_12AED0_SOUGEN_04_HIBI_3 + .4byte ENUM_12AED0_SOUGEN_05_HIBI_0 + .4byte ENUM_12AED0_SOUGEN_05_HIBI_1 + .4byte ENUM_12AED0_SOUGEN_05_HIBI_2 + .4byte ENUM_12AED0_SOUGEN_05_HIBI_3 + .4byte ENUM_12AED0_SOUGEN_05_BOMB_00 + .4byte ENUM_12AED0_SOUGEN_05_00 + .4byte ENUM_12AED0_SOUGEN_05_01 + .4byte ENUM_12AED0_SOUGEN_05_IWA02 + .4byte ENUM_12AED0_SOUGEN_05_BENT + .4byte ENUM_12AED0_SOUGEN_05_H00 + .4byte ENUM_12AED0_SOUGEN_05_R0 + .4byte ENUM_12AED0_SOUGEN_05_CAP_0 + .4byte ENUM_12AED0_SOUGEN_06_WAKAGI_0 + .4byte ENUM_12AED0_SOUGEN_06_WAKAGI_1 + .4byte ENUM_12AED0_SOUGEN_06_WAKAGI_2 + .4byte ENUM_12AED0_SOUGEN_06_WAKAGI_3 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_0 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_1 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_2 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_3 + .4byte ENUM_12AED0_SOUGEN_06_HIBI_4 + .4byte ENUM_12AED0_SOUGEN_06_IWA_0 + .4byte ENUM_12AED0_SOUGEN_06_AKINDO + .4byte ENUM_12AED0_SOUGEN_06_SAIKAI + .4byte ENUM_12AED0_SOUGEN_06_BENT + .4byte ENUM_12AED0_SOUGEN_06_SLIDE + .4byte ENUM_12AED0_SOUGEN_06_R1 + .4byte ENUM_12AED0_SOUGEN_07_00 + .4byte ENUM_12AED0_SOUGEN_07_01 + .4byte ENUM_12AED0_SOUGEN_07_02 + .4byte ENUM_12AED0_SOUGEN_07_H00 + .4byte ENUM_12AED0_SOUGEN_08_00 + .4byte ENUM_12AED0_SOUGEN_08_01 + .4byte ENUM_12AED0_SOUGEN_08_02 + .4byte ENUM_12AED0_SOUGEN_08_03 + .4byte ENUM_12AED0_SOUGEN_08_04 + .4byte ENUM_12AED0_SOUGEN_08_05 + .4byte ENUM_12AED0_SOUGEN_08_06 + .4byte ENUM_12AED0_SOUGEN_08_07 + .4byte ENUM_12AED0_SOUGEN_08_08 + .4byte ENUM_12AED0_SOUGEN_08_TORITSUKI + .4byte ENUM_12AED0_SOUGEN_08_T00 + .4byte ENUM_12AED0_CASTLE_00_00 + .4byte ENUM_12AED0_CASTLE_04_MEZAME + .4byte ENUM_12AED0_CASTLE_04_MAID_TALK + .4byte ENUM_12AED0_SUIGEN_00_h0 + .4byte ENUM_12AED0_SUIGEN_00_T0 + .4byte ENUM_12AED0_SUIGEN_00_r0 + .4byte ENUM_12AED0_SUIGEN_00_r1 + .4byte ENUM_12AED0_SUIGEN_00_r2 + .4byte ENUM_12AED0_SUIGEN_00_CAP_0 + .4byte ENUM_12AED0_SUIGEN_00_CAP_1 + .4byte ENUM_12AED0_SUIGEN_00_R0 + .4byte ENUM_12AED0_SUIGEN_00_R1 + .4byte ENUM_12AED0_SUIGEN_00_h1 + .4byte ENUM_12AED0_SUIGENGORON_00_CAP_0 + .4byte ENUM_12AED0_DAIGORON_SHIELD + .4byte ENUM_12AED0_DAIGORON_EXCHG + .4byte ENUM_12AED0_BEANDEMO_00 + .4byte ENUM_12AED0_BEANDEMO_01 + .4byte ENUM_12AED0_BEANDEMO_02 + .4byte ENUM_12AED0_BEANDEMO_03 + .4byte ENUM_12AED0_BEANDEMO_04 + .4byte ENUM_12AED0_KAKERA_TAKARA_A + .4byte ENUM_12AED0_KAKERA_TAKARA_E + .4byte ENUM_12AED0_KAKERA_TAKARA_K + .4byte ENUM_12AED0_KAKERA_TAKARA_L + .4byte ENUM_12AED0_KAKERA_TAKARA_M + .4byte ENUM_12AED0_KAKERA_TAKARA_N + .4byte ENUM_12AED0_KAKERA_TAKARA_O + .4byte ENUM_12AED0_KAKERA_TAKARA_P + .4byte ENUM_12AED0_KAKERA_TAKARA_Q + .4byte ENUM_12AED0_KAKERA_TAKARA_R + .4byte ENUM_12AED0_KAKERA_TAKARA_S + .4byte ENUM_12AED0_KAKERA_TAKARA_T + .4byte ENUM_12AED0_KAKERA_TAKARA_U + .4byte ENUM_12AED0_KAKERA_TAKARA_V + .4byte ENUM_12AED0_KAKERA_TAKARA_W + .4byte ENUM_12AED0_KAKERA_TAKARA_X + .4byte ENUM_12AED0_KAKERA_TAKARA_Y + .4byte ENUM_12AED0_KAKERA_TAKARA_Z + .4byte ENUM_12AED0_MACHI_02_HEISHI_TALK + .4byte ENUM_12AED0_MACHI00_00 + .4byte ENUM_12AED0_MACHI00_02 + .4byte ENUM_12AED0_MACHI00_03 + .4byte ENUM_12AED0_MACHI_00_T00 + .4byte ENUM_12AED0_MACHI_00_T01 + .4byte ENUM_12AED0_MACHI_01_DEMO + .4byte ENUM_12AED0_MACHI_02_HEISHI + .4byte ENUM_12AED0_MACHI_02_DOG + .4byte ENUM_12AED0_MACHI_07_BELL + .4byte ENUM_12AED0_SHOP05_OPEN + .4byte ENUM_12AED0_MACHI_MES_20 + .4byte ENUM_12AED0_MACHI_MES_21 + .4byte ENUM_12AED0_MACHI_MES_22 + .4byte ENUM_12AED0_MACHI_MES_23 + .4byte ENUM_12AED0_MACHI_MES_24 + .4byte ENUM_12AED0_MACHI_MES_30 + .4byte ENUM_12AED0_MACHI_MES_40 + .4byte ENUM_12AED0_MACHI_MES_60 + .4byte ENUM_12AED0_MACHI_MES_50 + .4byte ENUM_12AED0_MACHI_DOG_C + .4byte ENUM_12AED0_KUMOUE_00_CAP_0 + .4byte ENUM_12AED0_KUMOUE_01_CAP_0 + .4byte ENUM_12AED0_KUMOUE_01_T0 + .4byte ENUM_12AED0_KUMOUE_01_T1 + .4byte ENUM_12AED0_KUMOUE_01_T2 + .4byte ENUM_12AED0_KUMOUE_01_T3 + .4byte ENUM_12AED0_KUMOUE_01_T4 + .4byte ENUM_12AED0_KUMOUE_01_T5 + .4byte ENUM_12AED0_KUMOUE_01_T6 + .4byte ENUM_12AED0_KUMOUR_01_K0 + .4byte ENUM_12AED0_KUMOUR_01_K1 + .4byte ENUM_12AED0_KUMOUR_01_K2 + .4byte ENUM_12AED0_KUMOUR_01_K3 + .4byte ENUM_12AED0_KUMOUR_01_K4 + .4byte ENUM_12AED0_KUMOUR_01_K5 + .4byte ENUM_12AED0_KUMOUR_01_K6 + .4byte ENUM_12AED0_KUMONOUE_01_KAKERA + .4byte ENUM_12AED0_KUMOUE_02_CAP_0 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_01 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_02 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_03 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_04 + .4byte ENUM_12AED0_KUMOUE_02_AWASE_05 + .4byte ENUM_12AED0_KUMOUE_02_00 + .4byte ENUM_12AED0_KUMOUE_02_01 + .4byte ENUM_12AED0_KUMOUE_02_02 + .4byte ENUM_12AED0_KUMOUE_02_03 + .4byte ENUM_12AED0_KUMOUE_UNCLE_TALK + .4byte ENUM_12AED0_KUMOUE_GIRL_TALK + .4byte ENUM_12AED0_MIZUUMI_00_CAP_0 + .4byte ENUM_12AED0_SUIGEN_00_R2 + .4byte ENUM_12AED0_YAMA_04_CAP_1 + .4byte ENUM_12AED0_LOST_05_02 + .4byte ENUM_12AED0_LOST_05_03 + .4byte ENUM_12AED0_KAKERA_TAKARA_J + .4byte gUnk_0812AC84 +ENUM_12AED0_KAKERA_TAKARA_J: + .ascii "KAKERA_TAKARA_J\0" +ENUM_12AED0_LOST_05_03: + .ascii "LOST_05_03\0\0" +ENUM_12AED0_LOST_05_02: + .ascii "LOST_05_02\0\0" +ENUM_12AED0_YAMA_04_CAP_1: + .ascii "YAMA_04_CAP_1\0\0\0" +ENUM_12AED0_SUIGEN_00_R2: + .ascii "SUIGEN_00_R2\0\0\0\0" +ENUM_12AED0_MIZUUMI_00_CAP_0: + .ascii "MIZUUMI_00_CAP_0\0\0\0\0" +ENUM_12AED0_KUMOUE_GIRL_TALK: + .ascii "KUMOUE_GIRL_TALK\0\0\0\0" +ENUM_12AED0_KUMOUE_UNCLE_TALK: + .ascii "KUMOUE_UNCLE_TALK\0\0\0" +ENUM_12AED0_KUMOUE_02_03: + .ascii "KUMOUE_02_03\0\0\0\0" +ENUM_12AED0_KUMOUE_02_02: + .ascii "KUMOUE_02_02\0\0\0\0" +ENUM_12AED0_KUMOUE_02_01: + .ascii "KUMOUE_02_01\0\0\0\0" +ENUM_12AED0_KUMOUE_02_00: + .ascii "KUMOUE_02_00\0\0\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_05: + .ascii "KUMOUE_02_AWASE_05\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_04: + .ascii "KUMOUE_02_AWASE_04\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_03: + .ascii "KUMOUE_02_AWASE_03\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_02: + .ascii "KUMOUE_02_AWASE_02\0\0" +ENUM_12AED0_KUMOUE_02_AWASE_01: + .ascii "KUMOUE_02_AWASE_01\0\0" +ENUM_12AED0_KUMOUE_02_CAP_0: + .ascii "KUMOUE_02_CAP_0\0" +ENUM_12AED0_KUMONOUE_01_KAKERA: + .ascii "KUMONOUE_01_KAKERA\0\0" +ENUM_12AED0_KUMOUR_01_K6: + .ascii "KUMOUR_01_K6\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K5: + .ascii "KUMOUR_01_K5\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K4: + .ascii "KUMOUR_01_K4\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K3: + .ascii "KUMOUR_01_K3\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K2: + .ascii "KUMOUR_01_K2\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K1: + .ascii "KUMOUR_01_K1\0\0\0\0" +ENUM_12AED0_KUMOUR_01_K0: + .ascii "KUMOUR_01_K0\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T6: + .ascii "KUMOUE_01_T6\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T5: + .ascii "KUMOUE_01_T5\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T4: + .ascii "KUMOUE_01_T4\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T3: + .ascii "KUMOUE_01_T3\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T2: + .ascii "KUMOUE_01_T2\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T1: + .ascii "KUMOUE_01_T1\0\0\0\0" +ENUM_12AED0_KUMOUE_01_T0: + .ascii "KUMOUE_01_T0\0\0\0\0" +ENUM_12AED0_KUMOUE_01_CAP_0: + .ascii "KUMOUE_01_CAP_0\0" +ENUM_12AED0_KUMOUE_00_CAP_0: + .ascii "KUMOUE_00_CAP_0\0" +ENUM_12AED0_MACHI_DOG_C: + .ascii "MACHI_DOG_C\0" +ENUM_12AED0_MACHI_MES_50: + .ascii "MACHI_MES_50\0\0\0\0" +ENUM_12AED0_MACHI_MES_60: + .ascii "MACHI_MES_60\0\0\0\0" +ENUM_12AED0_MACHI_MES_40: + .ascii "MACHI_MES_40\0\0\0\0" +ENUM_12AED0_MACHI_MES_30: + .ascii "MACHI_MES_30\0\0\0\0" +ENUM_12AED0_MACHI_MES_24: + .ascii "MACHI_MES_24\0\0\0\0" +ENUM_12AED0_MACHI_MES_23: + .ascii "MACHI_MES_23\0\0\0\0" +ENUM_12AED0_MACHI_MES_22: + .ascii "MACHI_MES_22\0\0\0\0" +ENUM_12AED0_MACHI_MES_21: + .ascii "MACHI_MES_21\0\0\0\0" +ENUM_12AED0_MACHI_MES_20: + .ascii "MACHI_MES_20\0\0\0\0" +ENUM_12AED0_SHOP05_OPEN: + .ascii "SHOP05_OPEN\0" +ENUM_12AED0_MACHI_07_BELL: + .ascii "MACHI_07_BELL\0\0\0" +ENUM_12AED0_MACHI_02_DOG: + .ascii "MACHI_02_DOG\0\0\0\0" +ENUM_12AED0_MACHI_02_HEISHI: + .ascii "MACHI_02_HEISHI\0" +ENUM_12AED0_MACHI_01_DEMO: + .ascii "MACHI_01_DEMO\0\0\0" +ENUM_12AED0_MACHI_00_T01: + .ascii "MACHI_00_T01\0\0\0\0" +ENUM_12AED0_MACHI_00_T00: + .ascii "MACHI_00_T00\0\0\0\0" +ENUM_12AED0_MACHI00_03: + .ascii "MACHI00_03\0\0" +ENUM_12AED0_MACHI00_02: + .ascii "MACHI00_02\0\0" +ENUM_12AED0_MACHI00_00: + .ascii "MACHI00_00\0\0" +ENUM_12AED0_MACHI_02_HEISHI_TALK: + .ascii "MACHI_02_HEISHI_TALK\0\0\0\0" +ENUM_12AED0_KAKERA_TAKARA_Z: + .ascii "KAKERA_TAKARA_Z\0" +ENUM_12AED0_KAKERA_TAKARA_Y: + .ascii "KAKERA_TAKARA_Y\0" +ENUM_12AED0_KAKERA_TAKARA_X: + .ascii "KAKERA_TAKARA_X\0" +ENUM_12AED0_KAKERA_TAKARA_W: + .ascii "KAKERA_TAKARA_W\0" +ENUM_12AED0_KAKERA_TAKARA_V: + .ascii "KAKERA_TAKARA_V\0" +ENUM_12AED0_KAKERA_TAKARA_U: + .ascii "KAKERA_TAKARA_U\0" +ENUM_12AED0_KAKERA_TAKARA_T: + .ascii "KAKERA_TAKARA_T\0" +ENUM_12AED0_KAKERA_TAKARA_S: + .ascii "KAKERA_TAKARA_S\0" +ENUM_12AED0_KAKERA_TAKARA_R: + .ascii "KAKERA_TAKARA_R\0" +ENUM_12AED0_KAKERA_TAKARA_Q: + .ascii "KAKERA_TAKARA_Q\0" +ENUM_12AED0_KAKERA_TAKARA_P: + .ascii "KAKERA_TAKARA_P\0" +ENUM_12AED0_KAKERA_TAKARA_O: + .ascii "KAKERA_TAKARA_O\0" +ENUM_12AED0_KAKERA_TAKARA_N: + .ascii "KAKERA_TAKARA_N\0" +ENUM_12AED0_KAKERA_TAKARA_M: + .ascii "KAKERA_TAKARA_M\0" +ENUM_12AED0_KAKERA_TAKARA_L: + .ascii "KAKERA_TAKARA_L\0" +ENUM_12AED0_KAKERA_TAKARA_K: + .ascii "KAKERA_TAKARA_K\0" +ENUM_12AED0_KAKERA_TAKARA_E: + .ascii "KAKERA_TAKARA_E\0" +ENUM_12AED0_KAKERA_TAKARA_A: + .ascii "KAKERA_TAKARA_A\0" +ENUM_12AED0_BEANDEMO_04: + .ascii "BEANDEMO_04\0" +ENUM_12AED0_BEANDEMO_03: + .ascii "BEANDEMO_03\0" +ENUM_12AED0_BEANDEMO_02: + .ascii "BEANDEMO_02\0" +ENUM_12AED0_BEANDEMO_01: + .ascii "BEANDEMO_01\0" +ENUM_12AED0_BEANDEMO_00: + .ascii "BEANDEMO_00\0" +ENUM_12AED0_DAIGORON_EXCHG: + .ascii "DAIGORON_EXCHG\0\0" +ENUM_12AED0_DAIGORON_SHIELD: + .ascii "DAIGORON_SHIELD\0" +ENUM_12AED0_SUIGENGORON_00_CAP_0: + .ascii "SUIGENGORON_00_CAP_0\0\0\0\0" +ENUM_12AED0_SUIGEN_00_h1: + .ascii "SUIGEN_00_h1\0\0\0\0" +ENUM_12AED0_SUIGEN_00_R1: + .ascii "SUIGEN_00_R1\0\0\0\0" +ENUM_12AED0_SUIGEN_00_R0: + .ascii "SUIGEN_00_R0\0\0\0\0" +ENUM_12AED0_SUIGEN_00_CAP_1: + .ascii "SUIGEN_00_CAP_1\0" +ENUM_12AED0_SUIGEN_00_CAP_0: + .ascii "SUIGEN_00_CAP_0\0" +ENUM_12AED0_SUIGEN_00_r2: + .ascii "SUIGEN_00_r2\0\0\0\0" +ENUM_12AED0_SUIGEN_00_r1: + .ascii "SUIGEN_00_r1\0\0\0\0" +ENUM_12AED0_SUIGEN_00_r0: + .ascii "SUIGEN_00_r0\0\0\0\0" +ENUM_12AED0_SUIGEN_00_T0: + .ascii "SUIGEN_00_T0\0\0\0\0" +ENUM_12AED0_SUIGEN_00_h0: + .ascii "SUIGEN_00_h0\0\0\0\0" +ENUM_12AED0_CASTLE_04_MAID_TALK: + .ascii "CASTLE_04_MAID_TALK\0" +ENUM_12AED0_CASTLE_04_MEZAME: + .ascii "CASTLE_04_MEZAME\0\0\0\0" +ENUM_12AED0_CASTLE_00_00: + .ascii "CASTLE_00_00\0\0\0\0" +ENUM_12AED0_SOUGEN_08_T00: + .ascii "SOUGEN_08_T00\0\0\0" +ENUM_12AED0_SOUGEN_08_TORITSUKI: + .ascii "SOUGEN_08_TORITSUKI\0" +ENUM_12AED0_SOUGEN_08_08: + .ascii "SOUGEN_08_08\0\0\0\0" +ENUM_12AED0_SOUGEN_08_07: + .ascii "SOUGEN_08_07\0\0\0\0" +ENUM_12AED0_SOUGEN_08_06: + .ascii "SOUGEN_08_06\0\0\0\0" +ENUM_12AED0_SOUGEN_08_05: + .ascii "SOUGEN_08_05\0\0\0\0" +ENUM_12AED0_SOUGEN_08_04: + .ascii "SOUGEN_08_04\0\0\0\0" +ENUM_12AED0_SOUGEN_08_03: + .ascii "SOUGEN_08_03\0\0\0\0" +ENUM_12AED0_SOUGEN_08_02: + .ascii "SOUGEN_08_02\0\0\0\0" +ENUM_12AED0_SOUGEN_08_01: + .ascii "SOUGEN_08_01\0\0\0\0" +ENUM_12AED0_SOUGEN_08_00: + .ascii "SOUGEN_08_00\0\0\0\0" +ENUM_12AED0_SOUGEN_07_H00: + .ascii "SOUGEN_07_H00\0\0\0" +ENUM_12AED0_SOUGEN_07_02: + .ascii "SOUGEN_07_02\0\0\0\0" +ENUM_12AED0_SOUGEN_07_01: + .ascii "SOUGEN_07_01\0\0\0\0" +ENUM_12AED0_SOUGEN_07_00: + .ascii "SOUGEN_07_00\0\0\0\0" +ENUM_12AED0_SOUGEN_06_R1: + .ascii "SOUGEN_06_R1\0\0\0\0" +ENUM_12AED0_SOUGEN_06_SLIDE: + .ascii "SOUGEN_06_SLIDE\0" +ENUM_12AED0_SOUGEN_06_BENT: + .ascii "SOUGEN_06_BENT\0\0" +ENUM_12AED0_SOUGEN_06_SAIKAI: + .ascii "SOUGEN_06_SAIKAI\0\0\0\0" +ENUM_12AED0_SOUGEN_06_AKINDO: + .ascii "SOUGEN_06_AKINDO\0\0\0\0" +ENUM_12AED0_SOUGEN_06_IWA_0: + .ascii "SOUGEN_06_IWA_0\0" +ENUM_12AED0_SOUGEN_06_HIBI_4: + .ascii "SOUGEN_06_HIBI_4\0\0\0\0" +ENUM_12AED0_SOUGEN_06_HIBI_3: + .ascii "SOUGEN_06_HIBI_3\0\0\0\0" +ENUM_12AED0_SOUGEN_06_HIBI_2: + .ascii "SOUGEN_06_HIBI_2\0\0\0\0" +ENUM_12AED0_SOUGEN_06_HIBI_1: + .ascii "SOUGEN_06_HIBI_1\0\0\0\0" +ENUM_12AED0_SOUGEN_06_HIBI_0: + .ascii "SOUGEN_06_HIBI_0\0\0\0\0" +ENUM_12AED0_SOUGEN_06_WAKAGI_3: + .ascii "SOUGEN_06_WAKAGI_3\0\0" +ENUM_12AED0_SOUGEN_06_WAKAGI_2: + .ascii "SOUGEN_06_WAKAGI_2\0\0" +ENUM_12AED0_SOUGEN_06_WAKAGI_1: + .ascii "SOUGEN_06_WAKAGI_1\0\0" +ENUM_12AED0_SOUGEN_06_WAKAGI_0: + .ascii "SOUGEN_06_WAKAGI_0\0\0" +ENUM_12AED0_SOUGEN_05_CAP_0: + .ascii "SOUGEN_05_CAP_0\0" +ENUM_12AED0_SOUGEN_05_R0: + .ascii "SOUGEN_05_R0\0\0\0\0" +ENUM_12AED0_SOUGEN_05_H00: + .ascii "SOUGEN_05_H00\0\0\0" +ENUM_12AED0_SOUGEN_05_BENT: + .ascii "SOUGEN_05_BENT\0\0" +ENUM_12AED0_SOUGEN_05_IWA02: + .ascii "SOUGEN_05_IWA02\0" +ENUM_12AED0_SOUGEN_05_01: + .ascii "SOUGEN_05_01\0\0\0\0" +ENUM_12AED0_SOUGEN_05_00: + .ascii "SOUGEN_05_00\0\0\0\0" +ENUM_12AED0_SOUGEN_05_BOMB_00: + .ascii "SOUGEN_05_BOMB_00\0\0\0" +ENUM_12AED0_SOUGEN_05_HIBI_3: + .ascii "SOUGEN_05_HIBI_3\0\0\0\0" +ENUM_12AED0_SOUGEN_05_HIBI_2: + .ascii "SOUGEN_05_HIBI_2\0\0\0\0" +ENUM_12AED0_SOUGEN_05_HIBI_1: + .ascii "SOUGEN_05_HIBI_1\0\0\0\0" +ENUM_12AED0_SOUGEN_05_HIBI_0: + .ascii "SOUGEN_05_HIBI_0\0\0\0\0" +ENUM_12AED0_SOUGEN_04_HIBI_3: + .ascii "SOUGEN_04_HIBI_3\0\0\0\0" +ENUM_12AED0_SOUGEN_04_HIBI_2: + .ascii "SOUGEN_04_HIBI_2\0\0\0\0" +ENUM_12AED0_SOUGEN_04_HIBI_1: + .ascii "SOUGEN_04_HIBI_1\0\0\0\0" +ENUM_12AED0_SOUGEN_04_HIBI_0: + .ascii "SOUGEN_04_HIBI_0\0\0\0\0" +ENUM_12AED0_SOUGEN_03_BOMBWALL: + .ascii "SOUGEN_03_BOMBWALL\0\0" +ENUM_12AED0_SOUGEN_02_HIBI_1: + .ascii "SOUGEN_02_HIBI_1\0\0\0\0" +ENUM_12AED0_SOUGEN_02_HIBI_0: + .ascii "SOUGEN_02_HIBI_0\0\0\0\0" +ENUM_12AED0_SOUGEN_01_ZELDA: + .ascii "SOUGEN_01_ZELDA\0" +ENUM_12AED0_SOUGEN_01_BENT: + .ascii "SOUGEN_01_BENT\0\0" +ENUM_12AED0_SOUGEN_01_00: + .ascii "SOUGEN_01_00\0\0\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_12: + .ascii "SOUGEN_01_WAKAGI_12\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_11: + .ascii "SOUGEN_01_WAKAGI_11\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_10: + .ascii "SOUGEN_01_WAKAGI_10\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_9: + .ascii "SOUGEN_01_WAKAGI_9\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_8: + .ascii "SOUGEN_01_WAKAGI_8\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_7: + .ascii "SOUGEN_01_WAKAGI_7\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_6: + .ascii "SOUGEN_01_WAKAGI_6\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_5: + .ascii "SOUGEN_01_WAKAGI_5\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_4: + .ascii "SOUGEN_01_WAKAGI_4\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_3: + .ascii "SOUGEN_01_WAKAGI_3\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_2: + .ascii "SOUGEN_01_WAKAGI_2\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_1: + .ascii "SOUGEN_01_WAKAGI_1\0\0" +ENUM_12AED0_SOUGEN_01_WAKAGI_0: + .ascii "SOUGEN_01_WAKAGI_0\0\0" +ENUM_12AED0_HAKA_KEY_GET: + .ascii "HAKA_KEY_GET\0\0\0\0" +ENUM_12AED0_HAKA_01_T0: + .ascii "HAKA_01_T0\0\0" +ENUM_12AED0_HAKA_00_BW00: + .ascii "HAKA_00_BW00\0\0\0\0" +ENUM_12AED0_HAKA_00_CAP_0: + .ascii "HAKA_00_CAP_0\0\0\0" +ENUM_12AED0_HAKA_BOSEKI_02: + .ascii "HAKA_BOSEKI_02\0\0" +ENUM_12AED0_HAKA_BOSEKI_01: + .ascii "HAKA_BOSEKI_01\0\0" +ENUM_12AED0_HAKA_BOSEKI_00: + .ascii "HAKA_BOSEKI_00\0\0" +ENUM_12AED0_HAKA_BUNSHIN_00: + .ascii "HAKA_BUNSHIN_00\0" +ENUM_12AED0_YAMA_04_BOMBWALL0: + .ascii "YAMA_04_BOMBWALL0\0\0\0" +ENUM_12AED0_YAMA_04_ANAHOUSHI: + .ascii "YAMA_04_ANAHOUSHI\0\0\0" +ENUM_12AED0_YAMA_04_ENTHOUSHI: + .ascii "YAMA_04_ENTHOUSHI\0\0\0" +ENUM_12AED0_YAMA_04_06: + .ascii "YAMA_04_06\0\0" +ENUM_12AED0_YAMA_04_05: + .ascii "YAMA_04_05\0\0" +ENUM_12AED0_YAMA_04_04: + .ascii "YAMA_04_04\0\0" +ENUM_12AED0_YAMA_04_01: + .ascii "YAMA_04_01\0\0" +ENUM_12AED0_YAMA_04_00: + .ascii "YAMA_04_00\0\0" +ENUM_12AED0_YAMA_04_HIBI_1: + .ascii "YAMA_04_HIBI_1\0\0" +ENUM_12AED0_YAMA_04_HIBI_0: + .ascii "YAMA_04_HIBI_0\0\0" +ENUM_12AED0_YAMA_04_R00: + .ascii "YAMA_04_R00\0" +ENUM_12AED0_YAMA_04_CAP_0: + .ascii "YAMA_04_CAP_0\0\0\0" +ENUM_12AED0_YAMA_03_DOKU_2: + .ascii "YAMA_03_DOKU_2\0\0" +ENUM_12AED0_YAMA_03_DOKU_1: + .ascii "YAMA_03_DOKU_1\0\0" +ENUM_12AED0_YAMA_03_DOKU_0: + .ascii "YAMA_03_DOKU_0\0\0" +ENUM_12AED0_YAMA_03_02: + .ascii "YAMA_03_02\0\0" +ENUM_12AED0_YAMA_03_01: + .ascii "YAMA_03_01\0\0" +ENUM_12AED0_YAMA_03_00: + .ascii "YAMA_03_00\0\0" +ENUM_12AED0_YAMA_02_00: + .ascii "YAMA_02_00\0\0" +ENUM_12AED0_YAMA_01_BW00: + .ascii "YAMA_01_BW00\0\0\0\0" +ENUM_12AED0_YAMA_00_01: + .ascii "YAMA_00_01\0\0" +ENUM_12AED0_YAMA_00_00: + .ascii "YAMA_00_00\0\0" +ENUM_12AED0_MORI_ENTRANCE_1ST: + .ascii "MORI_ENTRANCE_1ST\0\0\0" +ENUM_12AED0_MORI_00_H1: + .ascii "MORI_00_H1\0\0" +ENUM_12AED0_MORI_00_H0: + .ascii "MORI_00_H0\0\0" +ENUM_12AED0_MORI_00_KOBITO: + .ascii "MORI_00_KOBITO\0\0" +ENUM_12AED0_MORI_00_HIBI_4: + .ascii "MORI_00_HIBI_4\0\0" +ENUM_12AED0_MORI_00_HIBI_3: + .ascii "MORI_00_HIBI_3\0\0" +ENUM_12AED0_MORI_00_HIBI_2: + .ascii "MORI_00_HIBI_2\0\0" +ENUM_12AED0_MORI_00_HIBI_1: + .ascii "MORI_00_HIBI_1\0\0" +ENUM_12AED0_MORI_00_HIBI_0: + .ascii "MORI_00_HIBI_0\0\0" +ENUM_12AED0_LOST_05_T1: + .ascii "LOST_05_T1\0\0" +ENUM_12AED0_LOST_05_T0: + .ascii "LOST_05_T0\0\0" +ENUM_12AED0_LOST_05_01: + .ascii "LOST_05_01\0\0" +ENUM_12AED0_LOST_05_00: + .ascii "LOST_05_00\0\0" +ENUM_12AED0_LOST_04_SIBA4: + .ascii "LOST_04_SIBA4\0\0\0" +ENUM_12AED0_LOST_04_SIBA3: + .ascii "LOST_04_SIBA3\0\0\0" +ENUM_12AED0_LOST_04_SIBA2: + .ascii "LOST_04_SIBA2\0\0\0" +ENUM_12AED0_LOST_04_SIBA1: + .ascii "LOST_04_SIBA1\0\0\0" +ENUM_12AED0_LOST_04_SIBA0: + .ascii "LOST_04_SIBA0\0\0\0" +ENUM_12AED0_LOST_04_00: + .ascii "LOST_04_00\0\0" +ENUM_12AED0_LOST_03_T0: + .ascii "LOST_03_T0\0\0" +ENUM_12AED0_LOST_03_00: + .ascii "LOST_03_00\0\0" +ENUM_12AED0_LOST_02_00: + .ascii "LOST_02_00\0\0" +ENUM_12AED0_LOST_00_01: + .ascii "LOST_00_01\0\0" +ENUM_12AED0_LOST_00_00: + .ascii "LOST_00_00\0\0" +ENUM_12AED0_LOST_00_ENTER: + .ascii "LOST_00_ENTER\0\0\0" +ENUM_12AED0_HIKYOU_00_M2: + .ascii "HIKYOU_00_M2\0\0\0\0" +ENUM_12AED0_HIKYOU_00_M1: + .ascii "HIKYOU_00_M1\0\0\0\0" +ENUM_12AED0_HIKYOU_00_M0: + .ascii "HIKYOU_00_M0\0\0\0\0" +ENUM_12AED0_HIKYOU_00_H00: + .ascii "HIKYOU_00_H00\0\0\0" +ENUM_12AED0_HIKYOU_00_BOSEKI: + .ascii "HIKYOU_00_BOSEKI\0\0\0\0" +ENUM_12AED0_HIKYOU_00_14: + .ascii "HIKYOU_00_14\0\0\0\0" +ENUM_12AED0_HIKYOU_00_SEKIZOU: + .ascii "HIKYOU_00_SEKIZOU\0\0\0" +ENUM_12AED0_HIKYOU_00_CAP_2: + .ascii "HIKYOU_00_CAP_2\0" +ENUM_12AED0_HIKYOU_00_CAP_1: + .ascii "HIKYOU_00_CAP_1\0" +ENUM_12AED0_HIKYOU_00_CAP_0: + .ascii "HIKYOU_00_CAP_0\0" +ENUM_12AED0_HIKYOU_00_04: + .ascii "HIKYOU_00_04\0\0\0\0" +ENUM_12AED0_HIKYOU_00_03: + .ascii "HIKYOU_00_03\0\0\0\0" +ENUM_12AED0_HIKYOU_00_02: + .ascii "HIKYOU_00_02\0\0\0\0" +ENUM_12AED0_HIKYOU_00_01: + .ascii "HIKYOU_00_01\0\0\0\0" +ENUM_12AED0_HIKYOU_00_00: + .ascii "HIKYOU_00_00\0\0\0\0" +ENUM_12AED0_NAKANIWA_00_EZERO: + .ascii "NAKANIWA_00_EZERO\0\0\0" +ENUM_12AED0_MAENIWA_00_CAP_0: + .ascii "MAENIWA_00_CAP_0\0\0\0\0" +ENUM_12AED0_MAENIWA_00_T1: + .ascii "MAENIWA_00_T1\0\0\0" +ENUM_12AED0_MAENIWA_00_T0: + .ascii "MAENIWA_00_T0\0\0\0" +ENUM_12AED0_MAENIWA_00_WARP: + .ascii "MAENIWA_00_WARP\0" +ENUM_12AED0_MAENIWA_00_BENT: + .ascii "MAENIWA_00_BENT\0" +ENUM_12AED0_MAENIWA_00_02: + .ascii "MAENIWA_00_02\0\0\0" +ENUM_12AED0_MAENIWA_00_01: + .ascii "MAENIWA_00_01\0\0\0" +ENUM_12AED0_MAENIWA_00_00: + .ascii "MAENIWA_00_00\0\0\0" +ENUM_12AED0_HIKYOU_00_T1: + .ascii "HIKYOU_00_T1\0\0\0\0" +ENUM_12AED0_HIKYOU_00_T0: + .ascii "HIKYOU_00_T0\0\0\0\0" +ENUM_12AED0_MIZUUMI_00_H02: + .ascii "MIZUUMI_00_H02\0\0" +ENUM_12AED0_MIZUUMI_00_H01: + .ascii "MIZUUMI_00_H01\0\0" +ENUM_12AED0_MIZUUMI_00_H00: + .ascii "MIZUUMI_00_H00\0\0" +ENUM_12AED0_MIZUUMI_00_00: + .ascii "MIZUUMI_00_00\0\0\0" +ENUM_12AED0_MIZUUMI_00_BENT: + .ascii "MIZUUMI_00_BENT\0" +ENUM_12AED0_LV5_CLEAR_MES: + .ascii "LV5_CLEAR_MES\0\0\0" +ENUM_12AED0_LV4_CLEAR_MES: + .ascii "LV4_CLEAR_MES\0\0\0" +ENUM_12AED0_LV3_CLEAR_MES: + .ascii "LV3_CLEAR_MES\0\0\0" +ENUM_12AED0_LV2_CLEAR_MES: + .ascii "LV2_CLEAR_MES\0\0\0" +ENUM_12AED0_LV1_CLEAR_MES: + .ascii "LV1_CLEAR_MES\0\0\0" +.else .4byte gUnk_0812B204 .4byte gUnk_0812C5F0 @@ -2243,6 +3009,7 @@ gUnk_0812C5E0:: @ 0812C5E0 gUnk_0812C5F0:: @ 0812C5F0 .incbin "baserom.gba", 0x12C5F0, 0x0000010 +.endif .endif .4byte gUnk_0812B204 @@ -2450,6 +3217,7 @@ gUnk_0812C5F0:: @ 0812C5F0 .4byte gUnk_0812C9BC .4byte gUnk_0812C9AC .4byte gUnk_0812C99C +.ifndef EU .4byte gUnk_0812C98C .4byte gUnk_0812C97C .ifndef JP @@ -2458,9 +3226,11 @@ gUnk_0812C5F0:: @ 0812C5F0 .4byte gUnk_0812C964 .4byte gUnk_0812C95C .4byte gUnk_0812C954 +.endif .endif .4byte gUnk_0812AC84 +.ifndef EU .ifndef JP gUnk_0812C954:: @ 0812C954 .incbin "baserom.gba", 0x12C954, 0x0000008 @@ -2484,6 +3254,7 @@ gUnk_0812C97C:: @ 0812C97C gUnk_0812C98C:: @ 0812C98C .incbin "baserom.gba", 0x12C98C, 0x0000010 +.endif gUnk_0812C99C:: @ 0812C99C .incbin "baserom.gba", 0x12C99C, 0x0000010 @@ -3294,22 +4065,26 @@ gUnk_0812D688:: @ 0812D688 .4byte gUnk_0812DA04 .4byte gUnk_0812D9F4 .4byte gUnk_0812D9E8 +.ifdef EU +.else .ifdef JP .4byte gUnk_0812D9D0 .else .4byte gUnk_0812D9D0 .4byte gUnk_0812D9C8 +.endif .endif .4byte gUnk_0812AC84 +.ifndef EU .ifndef JP gUnk_0812D9C8:: @ 0812D9C8 .incbin "baserom.gba", 0x12D9C8, 0x0000008 .endif - gUnk_0812D9D0:: @ 0812D9D0 .incbin "baserom.gba", 0x12D9D0, 0x0000018 +.endif gUnk_0812D9E8:: @ 0812D9E8 .incbin "baserom.gba", 0x12D9E8, 0x000000C @@ -4043,6 +4818,7 @@ gUnk_0812E5FC:: @ 0812E5FC .4byte gUnk_0812E8A4 .4byte gUnk_0812E88C .4byte gUnk_0812E874 +.ifndef EU .ifndef JP .4byte gUnk_0812E86C .4byte gUnk_0812E864 @@ -4050,9 +4826,11 @@ gUnk_0812E5FC:: @ 0812E5FC .4byte gUnk_0812E854 .4byte gUnk_0812E84C .4byte gUnk_0812E844 +.endif .endif .4byte gUnk_0812AC84 +.ifndef EU .ifndef JP gUnk_0812E844:: @ 0812E844 .incbin "baserom.gba", 0x12E844, 0x0000008 @@ -4071,6 +4849,7 @@ gUnk_0812E864:: @ 0812E864 gUnk_0812E86C:: @ 0812E86C .incbin "baserom.gba", 0x12E86C, 0x0000008 .endif +.endif gUnk_0812E874:: @ 0812E874 .incbin "baserom.gba", 0x12E874, 0x0000018 @@ -4570,15 +5349,19 @@ gUnk_0812F494:: @ 0812F494 .4byte gUnk_0812F630 .4byte gUnk_0812F624 .4byte gUnk_0812F614 +.ifndef EU .ifndef JP .4byte gUnk_0812F604 +.endif .endif .4byte gUnk_0812AC84 +.ifndef EU .ifndef JP gUnk_0812F604:: @ 0812F604 .incbin "baserom.gba", 0x12F604, 0x0000010 .endif +.endif gUnk_0812F614:: @ 0812F614 .incbin "baserom.gba", 0x12F614, 0x0000010 diff --git a/data/data_081320FC.s b/data/data_081320FC.s index 9b794118..01560713 100755 --- a/data/data_081320FC.s +++ b/data/data_081320FC.s @@ -32,12 +32,21 @@ gUnk_0813210C:: @ 0813210C .incbin "baserom.gba", 0x1321C4, 0x000000C .ifdef JP .4byte gUnk_080FD150 +.else +.ifdef EU + .4byte gUnk_080FD150 .else .4byte gUnk_080FD180 +.endif .endif .incbin "baserom.gba", 0x1321D4, 0x000000C .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131834, 0x000000C +.else .incbin "baserom.gba", 0x1321E4, 0x000000C +.endif .4byte gUnk_0813248C .incbin "baserom.gba", 0x1321F4, 0x000000C .4byte gUnk_081324AC @@ -64,15 +73,30 @@ gUnk_08132230:: @ 08132230 .4byte gUnk_080FD448 .incbin "baserom.gba", 0x132284, 0x000000C .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1318E4, 0x000000C +.else .incbin "baserom.gba", 0x132294, 0x000000C +.endif .4byte gUnk_080FD168 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1318F4, 0x000000C +.else .incbin "baserom.gba", 0x1322A4, 0x000000C +.endif .4byte gUnk_080FD150 .incbin "baserom.gba", 0x1322B4, 0x000000C .4byte gUnk_0813252C .incbin "baserom.gba", 0x1322C4, 0x000000C .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131924, 0x000000C +.else .incbin "baserom.gba", 0x1322D4, 0x000000C +.endif .4byte gUnk_0813256C .incbin "baserom.gba", 0x1322E4, 0x000000C .4byte gUnk_081325BC @@ -88,7 +112,12 @@ gUnk_08132324:: @ 08132324 .4byte gUnk_081326CC .incbin "baserom.gba", 0x132334, 0x000000C .4byte gUnk_080FD460 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131994, 0x000000C +.else .incbin "baserom.gba", 0x132344, 0x000000C +.endif .4byte gUnk_080FD460 .incbin "baserom.gba", 0x132354, 0x0000008 @@ -182,20 +211,50 @@ gUnk_08132506:: @ 08132506 gUnk_0813250C:: @ 0813250C .incbin "baserom.gba", 0x13250C, 0x0000004 .4byte gUnk_080FD170 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131B64, 0x000000C +.else .incbin "baserom.gba", 0x132514, 0x000000C +.endif .4byte gUnk_080FD43C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131B74, 0x0000008 +.else .incbin "baserom.gba", 0x132524, 0x0000008 +.endif gUnk_0813252C:: @ 0813252C .incbin "baserom.gba", 0x13252C, 0x0000004 .4byte gUnk_080FD168 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131B84, 0x000000C +.else .incbin "baserom.gba", 0x132534, 0x000000C +.endif .4byte gUnk_080FD168 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131B94, 0x000000C +.else .incbin "baserom.gba", 0x132544, 0x000000C +.endif .4byte gUnk_080FD168 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131BA4, 0x000000C +.else .incbin "baserom.gba", 0x132554, 0x000000C +.endif .4byte gUnk_080FD168 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131BB4, 0x0000008 +.else .incbin "baserom.gba", 0x132564, 0x0000008 +.endif gUnk_0813256C:: @ 0813256C .incbin "baserom.gba", 0x13256C, 0x0000004 @@ -213,38 +272,113 @@ gUnk_0813256C:: @ 0813256C gUnk_081325BC:: @ 081325BC .incbin "baserom.gba", 0x1325BC, 0x0000004 .4byte gUnk_080FD4B8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C14, 0x000000C +.else .incbin "baserom.gba", 0x1325C4, 0x000000C +.endif .4byte gUnk_080FD4C0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C24, 0x000000C +.else .incbin "baserom.gba", 0x1325D4, 0x000000C +.endif .4byte gUnk_080FD4C8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C34, 0x000000C +.else .incbin "baserom.gba", 0x1325E4, 0x000000C +.endif .4byte gUnk_080FD4D0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C44, 0x000000C +.else .incbin "baserom.gba", 0x1325F4, 0x000000C +.endif .4byte gUnk_080FD4D8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C54, 0x000000C +.else .incbin "baserom.gba", 0x132604, 0x000000C +.endif .4byte gUnk_080FD4E0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C64, 0x000000C +.else .incbin "baserom.gba", 0x132614, 0x000000C +.endif .4byte gUnk_080FD4E8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C74, 0x000000C +.else .incbin "baserom.gba", 0x132624, 0x000000C +.endif .4byte gUnk_080FD4F0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C84, 0x000000C +.else .incbin "baserom.gba", 0x132634, 0x000000C +.endif .4byte gUnk_080FD4F8 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131C94, 0x000000C +.else .incbin "baserom.gba", 0x132644, 0x000000C +.endif .4byte gUnk_080FD500 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131CA4, 0x000000C +.else .incbin "baserom.gba", 0x132654, 0x000000C +.endif .4byte gUnk_080FD508 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131CB4, 0x000000C +.else .incbin "baserom.gba", 0x132664, 0x000000C +.endif .4byte gUnk_080FD510 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131CC4, 0x000000C +.else .incbin "baserom.gba", 0x132674, 0x000000C +.endif .4byte gUnk_080FD518 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131CD4, 0x000000C +.else .incbin "baserom.gba", 0x132684, 0x000000C +.endif .4byte gUnk_080FD520 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131CE4, 0x0000008 +.else .incbin "baserom.gba", 0x132694, 0x0000008 +.endif gUnk_0813269C:: @ 0813269C .incbin "baserom.gba", 0x13269C, 0x0000004 .4byte gUnk_080FD150 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131CF4, 0x000000C +.else .incbin "baserom.gba", 0x1326A4, 0x000000C +.endif .4byte gUnk_080FD150 .incbin "baserom.gba", 0x1326B4, 0x000000C .4byte gUnk_080FD150 @@ -253,9 +387,19 @@ gUnk_0813269C:: @ 0813269C gUnk_081326CC:: @ 081326CC .incbin "baserom.gba", 0x1326CC, 0x0000004 .4byte gUnk_080FD168 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131D24, 0x000000C +.else .incbin "baserom.gba", 0x1326D4, 0x000000C +.endif .4byte gUnk_080FD448 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x131D34, 0x0000008 +.else .incbin "baserom.gba", 0x1326E4, 0x0000008 +.endif gUnk_081326EC:: @ 081326EC .incbin "baserom.gba", 0x1326EC, 0x0000014 diff --git a/data/data_08132B30.s b/data/data_08132B30.s index 6a8a5b15..77361b63 100644 --- a/data/data_08132B30.s +++ b/data/data_08132B30.s @@ -5,25 +5,59 @@ .align 2 gUnk_08132B30:: @ 08132B30 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x132180, 0x0000203 +.else .incbin "baserom.gba", 0x132B30, 0x0000203 +.endif gUnk_08132D33:: @ 08132D33 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x132383, 0x00002E6 +.else .incbin "baserom.gba", 0x132D33, 0x00002E6 +.endif gUnk_08133019:: @ 08133019 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x132669, 0x00000F8 +.else .incbin "baserom.gba", 0x133019, 0x00000F8 +.endif gUnk_08133111:: @ 08133111 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x132761, 0x0000200 +.else .incbin "baserom.gba", 0x133111, 0x0000200 +.endif gUnk_08133311:: @ 08133311 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x132961, 0x0000022 +.else .incbin "baserom.gba", 0x133311, 0x0000022 +.endif gUnk_08133333:: @ 08133333 +.ifdef EU + .incbin "baserom_eu.gba", 0x132983, 0x0000031 +.else .incbin "baserom.gba", 0x133333, 0x0000035 +.endif gUnk_08133368:: @ 08133368 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1329B4, 0x00005B0 +.else .incbin "baserom.gba", 0x133368, 0x00005B0 +.endif gUnk_08133918:: @ 08133918 .incbin "baserom.gba", 0x133918, 0x0000020 @@ -319,7 +353,12 @@ gUnk_0813509C:: @ 0813509C .4byte gUnk_08135074 gUnk_081350A0:: @ 081350A0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x1346EC, 0x00000C8 +.else .incbin "baserom.gba", 0x1350A0, 0x00000C8 +.endif gUnk_08135168:: @ 08135168 .incbin "baserom.gba", 0x135168, 0x0000028 @@ -1614,22 +1653,46 @@ gUnk_08138958:: @ 08138958 .4byte gUnk_08133FC8 gUnk_0813897C:: @ 0813897C +.ifdef EU .incbin "baserom.gba", 0x13897C, 0x0000028 +.else + .incbin "baserom.gba", 0x13897C, 0x0000028 +.endif gUnk_081389A4:: @ 081389A4 +.ifdef EU + .incbin "baserom_eu.gba", 0x137FF0, 0x0000028 +.else .incbin "baserom.gba", 0x1389A4, 0x0000014 +.endif gUnk_081389B8:: @ 081389B8 +.ifdef EU + .incbin "baserom_eu.gba", 0x138018, 0x0000028 +.else .incbin "baserom.gba", 0x1389B8, 0x0000014 +.endif gUnk_081389CC:: @ 081389CC +.ifdef EU + .incbin "baserom_eu.gba", 0x138040, 0x0000028 +.else .incbin "baserom.gba", 0x1389CC, 0x0000014 +.endif gUnk_081389E0:: @ 081389E0 +.ifdef EU + .incbin "baserom_eu.gba", 0x138068, 0x0000028 +.else .incbin "baserom.gba", 0x1389E0, 0x0000014 +.endif gUnk_081389F4:: @ 081389F4 +.ifdef EU + .incbin "baserom_eu.gba", 0x138090, 0x00000B4 +.else .incbin "baserom.gba", 0x1389F4, 0x0000064 +.endif gUnk_08138A58:: @ 08138A58 .incbin "baserom.gba", 0x138A58, 0x0000050 @@ -2620,9 +2683,13 @@ gUnk_0813ABF8:: @ 0813ABF8 .ifdef JP @ TODO only small differences .incbin "baserom_jp.gba", 0x13A824, 0x0000014 +.else +.ifdef EU + .incbin "baserom_jp.gba", 0x13A824, 0x0000014 .else .incbin "baserom.gba", 0x13ABF8, 0x0000014 .endif +.endif gUnk_0813AC0C:: @ 0813AC0C .incbin "baserom.gba", 0x13AC0C, 0x0000014 @@ -2682,7 +2749,12 @@ gUnk_0813AD74:: @ 0813AD74 .incbin "baserom.gba", 0x13AD74, 0x0000014 gUnk_0813AD88:: @ 0813AD88 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x13A474, 0x0000064 +.else .incbin "baserom.gba", 0x13AD88, 0x0000064 +.endif gUnk_0813ADEC:: @ 0813ADEC .incbin "baserom.gba", 0x13ADEC, 0x0000028 @@ -6437,7 +6509,12 @@ gUnk_08221119:: @ 08221119 .incbin "baserom.gba", 0x221119, 0x00004E2 gUnk_082215FB:: @ 082215FB +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x220CE7, 0x00003F6 +.else .incbin "baserom.gba", 0x2215FB, 0x00003F6 +.endif gUnk_082219F1:: @ 082219F1 .incbin "baserom.gba", 0x2219F1, 0x0000027 @@ -7724,40 +7801,100 @@ gUnk_082F2B0F:: @ 082F2B0F .incbin "baserom.gba", 0x2F2B0F, 0x0001265 gUnk_082F3D74:: @ 082F3D74 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F3460, 0x000018F +.else .incbin "baserom.gba", 0x2F3D74, 0x000018F +.endif gUnk_082F3F03:: @ 082F3F03 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F35EF, 0x0000015 +.else .incbin "baserom.gba", 0x2F3F03, 0x0000015 +.endif gUnk_082F3F18:: @ 082F3F18 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F3604, 0x0000215 +.else .incbin "baserom.gba", 0x2F3F18, 0x0000215 +.endif gUnk_082F412D:: @ 082F412D +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F3819, 0x000030B +.else .incbin "baserom.gba", 0x2F412D, 0x000030B +.endif gUnk_082F4438:: @ 082F4438 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F3B24, 0x0000BCF +.else .incbin "baserom.gba", 0x2F4438, 0x0000BCF +.endif gUnk_082F5007:: @ 082F5007 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F46F3, 0x0000051 +.else .incbin "baserom.gba", 0x2F5007, 0x0000051 +.endif gUnk_082F5058:: @ 082F5058 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F4744, 0x00000B9 +.else .incbin "baserom.gba", 0x2F5058, 0x00000B9 +.endif gUnk_082F5111:: @ 082F5111 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F47FD, 0x000015B +.else .incbin "baserom.gba", 0x2F5111, 0x000015B +.endif gUnk_082F526C:: @ 082F526C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2F4958, 0x00079B8 +.else .incbin "baserom.gba", 0x2F526C, 0x00079B8 +.endif gUnk_082FCC24:: @ 082FCC24 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2FC310, 0x00011D5 +.else .incbin "baserom.gba", 0x2FCC24, 0x00011D5 +.endif gUnk_082FDDF9:: @ 082FDDF9 +.ifdef EU + @ TODO remove the 4 bytes at the correct place + .incbin "baserom_eu.gba", 0x2FD4E5, 0x00004E4 +.else .incbin "baserom.gba", 0x2FDDF9, 0x00004E8 +.endif gUnk_082FE2E1:: @ 082FE2E1 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x2FD9C9, 0x0001CBE +.else .incbin "baserom.gba", 0x2FE2E1, 0x0001CBE +.endif gUnk_082FFF9F:: @ 082FFF9F .incbin "baserom.gba", 0x2FFF9F, 0x0000061 @@ -7958,7 +8095,12 @@ gUnk_08308716:: @ 08308716 .incbin "baserom.gba", 0x308716, 0x00006F3 gUnk_08308E09:: @ 08308E09 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x3084F1, 0x0000817 +.else .incbin "baserom.gba", 0x308E09, 0x0000817 +.endif gUnk_08309620:: @ 08309620 .incbin "baserom.gba", 0x309620, 0x000027A @@ -8402,7 +8544,12 @@ gUnk_08315F6C:: @ 08315F6C .incbin "baserom.gba", 0x315F6C, 0x0001B94 gUnk_08317B00:: @ 08317B00 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0x3171E8, 0x00026A1 +.else .incbin "baserom.gba", 0x317B00, 0x00026A1 +.endif gUnk_0831A1A1:: @ 0831A1A1 .incbin "baserom.gba", 0x31A1A1, 0x0001993 @@ -8410,6 +8557,11 @@ gUnk_0831A1A1:: @ 0831A1A1 gUnk_0831BB34:: @ 0831BB34 .incbin "baserom.gba", 0x31BB34, 0x00009FB +.ifdef EU +@ TODO differs to gUnk_08324AE4 + .incbin "baserom_eu.gba", 0x31BC17, 0x00083D5 +.else + gUnk_0831C52F:: @ 0831C52F .incbin "baserom.gba", 0x31C52F, 0x00012C6 @@ -8493,6 +8645,7 @@ gUnk_0832413F:: @ 0832413F gUnk_08324A37:: @ 08324A37 .incbin "baserom.gba", 0x324A37, 0x00000AD +.endif gUnk_08324AE4:: @ 08324AE4 .incbin "baserom.gba", 0x324AE4, 0x000018F @@ -8695,6 +8848,11 @@ gUnk_08344A77:: @ 08344A77 gUnk_0834535C:: @ 0834535C .incbin "baserom.gba", 0x34535C, 0x000031B +@ TODO EU differs from here +.ifdef EU + .incbin "baserom_eu.gba", 0x344B7F, 0x025D851 +.else + gUnk_08345677:: @ 08345677 .incbin "baserom.gba", 0x345677, 0x0000325 @@ -11185,8 +11343,10 @@ gUnk_085A0806:: @ 085A0806 .incbin "baserom.gba", 0x5A0806, 0x000267A .endif +.endif + +@ TODO JP and EU differ to here -@ TODO JP differs to here gGlobalGfxAndPalettes:: @ 085A2E80 .incbin "baserom.gba", 0x5A2E80, 0x0001382 @@ -11299,11 +11459,14 @@ gUnk_085B1094:: @ 085B1094 .incbin "baserom.gba", 0x5B1094, 0x00030EC gUnk_085B4180:: @ 085B4180 +.ifdef EU + @TODO differs to + .incbin "baserom_eu.gba", 0x5B36D0, 0x0001D00 +.else .incbin "baserom.gba", 0x5B4180, 0x0000EB5 - gUnk_085B5035:: @ 085B5035 .incbin "baserom.gba", 0x5B5035, 0x0000E8B - +.endif @ TODO figurine Data gUnk_085B5EC0:: @ 085B5EC0 @@ -12245,6 +12408,10 @@ gUnk_08645533:: @ 08645533 gUnk_08645536:: @ 08645536 .incbin "baserom.gba", 0x645536, 0x00001EF +.ifdef EU + @ TODO differs to gUnk_086926A0 + .incbin "baserom_eu.gba", 0x644C35, 0x004D23B +.else gUnk_08645725:: @ 08645725 .incbin "baserom.gba", 0x645725, 0x0005330 @@ -12548,6 +12715,7 @@ gUnk_086925DA:: @ 086925DA gUnk_0869261A:: @ 0869261A .incbin "baserom.gba", 0x69261A, 0x0000086 +.endif gUnk_086926A0:: @ 086926A0 .incbin "baserom.gba", 0x6926A0, 0x000001A @@ -15036,6 +15204,11 @@ gUnk_08900110:: @ 08900110 gUnk_08900380:: @ 08900380 .incbin "baserom.gba", 0x900380, 0x00002A0 +.ifdef EU +@ TODO differs to gUnk_089B1D90 + .incbin "baserom_eu.gba", 0x8FFDF0, 0x00AED70 +.else + gUnk_08900620:: @ 08900620 .incbin "baserom.gba", 0x900620, 0x0003D2B @@ -15686,3 +15859,5 @@ gUnk_089B0310:: @ 089B0310 gUnk_089B1000:: @ 089B1000 .incbin "baserom.gba", 0x9B1000, 0x0000D90 + +.endif diff --git a/data/data_089FC6C4.s b/data/data_089FC6C4.s index 53c6d0b0..c064574f 100644 --- a/data/data_089FC6C4.s +++ b/data/data_089FC6C4.s @@ -1108,13 +1108,30 @@ gUnk_08A071A0:: @ 08A071A0 .incbin "baserom.gba", 0xA07390, 0x0000004 gUnk_08A07394:: @ 08A07394 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xB12CA4, 0x0000154 + .4byte 0x2 + .incbin "baserom_eu.gba", 0xB12DFC, 0x0000008 +.else .incbin "baserom.gba", 0xA07394, 0x0000154 .4byte gUnk_08A12ED0 .incbin "baserom.gba", 0xA074EC, 0x0000008 +.endif .4byte gUnk_08A16610 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xB12E08, 0x0000008 +.else .incbin "baserom.gba", 0xA074F8, 0x0000008 +.endif .4byte gUnk_08A12ED0 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xB12E14, 0x0000008 +.else .incbin "baserom.gba", 0xA07504, 0x0000008 +.endif .4byte gUnk_08A1A54C .incbin "baserom.gba", 0xA07510, 0x00000EC .4byte gUnk_08A84DCC @@ -1686,6 +1703,23 @@ gUnk_08A0CE22:: @ 08A0CE22 .incbin "baserom.gba", 0xA0CF40, 0x0000004 gUnk_08A0CF44:: @ 08A0CF44 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xB18854, 0x0000178 + .4byte 0x2 + .incbin "baserom_eu.gba", 0xB189D0, 0x00000C8 + .4byte 0x2 + .incbin "baserom_eu.gba", 0xB18A9C, 0x000008C + .4byte 0x2 + .incbin "baserom_eu.gba", 0xB18B2C, 0x000002C + .4byte 0x2 + .incbin "baserom_eu.gba", 0xB18B5C, 0x0000008 + .4byte 0x2 + .incbin "baserom_eu.gba", 0xB18B68, 0x0000008 + .4byte 0x2 + .incbin "baserom_eu.gba", 0xB18B74, 0x0000008 + +.else .incbin "baserom.gba", 0xA0CF44, 0x0000178 .4byte gUnk_08A1A54C .incbin "baserom.gba", 0xA0D0C0, 0x00000C8 @@ -1699,14 +1733,19 @@ gUnk_08A0CF44:: @ 08A0CF44 .incbin "baserom.gba", 0xA0D258, 0x0000008 .4byte gUnk_08B2A77C .incbin "baserom.gba", 0xA0D264, 0x0000008 +.endif .4byte gUnk_08B08B14 .incbin "baserom.gba", 0xA0D270, 0x0000008 .4byte gUnk_08B3F61C .incbin "baserom.gba", 0xA0D27C, 0x0000008 .4byte gUnk_08B47114 +.ifdef EU + .4byte 0x7FFF00FF +.else .incbin "baserom.gba", 0xA0D288, 0x00002B4 .4byte gUnk_08A0FCE0 .incbin "baserom.gba", 0xA0D540, 0x0000004 +.endif gUnk_08A0D544:: @ 08A0D544 .incbin "baserom.gba", 0xA0D544, 0x0000004 diff --git a/data/map_headers.s b/data/map_headers.s index e9ad9eb4..5cd95b2e 100755 --- a/data/map_headers.s +++ b/data/map_headers.s @@ -25,34 +25,68 @@ gAreaRoomMaps_LakeHylia:: @ 08103328 gAreaRoomMap_CastorWilds_0:: @ 08103330 map_bottom 0x20914, 0x1D88, 1 +.ifdef EU + map_top 0x21990-0x4, 0x1D88, 1, 1 +.else map_top 0x21990, 0x1D88, 1, 1 +.endif gAreaRoomMaps_CastorWilds:: @ 08103348 .4byte gAreaRoomMap_CastorWilds_0 gAreaRoomMap_Ruins_0:: @ 0810334C +.ifdef EU + map_bottom 0x22150-0x4, 0x3DE, 1 + map_top 0x22430-0x4, 0x3DE, 1, 1 +.else map_bottom 0x22150, 0x3DE, 1 map_top 0x22430, 0x3DE, 1, 1 +.endif gAreaRoomMap_Ruins_1:: @ 08103364 +.ifdef EU + map_bottom 0x22500-0x4, 0x186, 1 + map_top 0x2261C-0x4, 0x186, 1, 1 +.else map_bottom 0x22500, 0x186, 1 map_top 0x2261C, 0x186, 1, 1 +.endif gAreaRoomMap_Ruins_2:: @ 0810337C +.ifdef EU + map_bottom 0x22688-0x4, 0x12C, 1 + map_top 0x22780-0x4, 0x12C, 1, 1 +.else map_bottom 0x22688, 0x12C, 1 map_top 0x22780, 0x12C, 1, 1 +.endif gAreaRoomMap_Ruins_3:: @ 08103394 +.ifdef EU + map_bottom 0x227E4-0x4, 0x12C, 1 + map_top 0x228E4-0x4, 0x12C, 1, 1 +.else map_bottom 0x227E4, 0x12C, 1 map_top 0x228E4, 0x12C, 1, 1 +.endif gAreaRoomMap_Ruins_4:: @ 081033AC +.ifdef EU + map_bottom 0x22940-0x4, 0x420, 1 + map_top 0x22C44-0x4, 0x420, 1, 1 +.else map_bottom 0x22940, 0x420, 1 map_top 0x22C44, 0x420, 1, 1 +.endif gAreaRoomMap_Ruins_5:: @ 081033C4 +.ifdef EU + map_bottom 0x22D30-0x4, 0x462, 1 + map_top 0x22FBC-0x4, 0x462, 1, 1 +.else map_bottom 0x22D30, 0x462, 1 map_top 0x22FBC, 0x462, 1, 1 +.endif gAreaRoomMaps_Ruins:: @ 081033DC .4byte gAreaRoomMap_Ruins_0 @@ -63,38 +97,73 @@ gAreaRoomMaps_Ruins:: @ 081033DC .4byte gAreaRoomMap_Ruins_5 gAreaRoomMap_HyruleTown_0:: @ 081033F4 +.ifdef EU + map_bottom 0x3A454-0x4, 0x1D88, 1 + map_top 0x3B5F4-0x4, 0x1D88, 1, 1 +.else map_bottom 0x3A454, 0x1D88, 1 map_top 0x3B5F4, 0x1D88, 1, 1 +.endif gAreaRoomMaps_HyruleTown:: @ 0810340C .4byte gAreaRoomMap_HyruleTown_0 gAreaRoomMap_FestivalTown_0:: @ 08103410 +.ifdef EU + map_bottom 0x3C290-0x4, 0xBB8, 1 + map_top 0x3CAD0-0x4, 0xBB8, 1, 1 +.else map_bottom 0x3C290, 0xBB8, 1 map_top 0x3CAD0, 0xBB8, 1, 1 +.endif gAreaRoomMaps_FestivalTown:: @ 08103428 .4byte gAreaRoomMap_FestivalTown_0 gAreaRoomMap_MtCrenel_0:: @ 0810342C +.ifdef EU + map_bottom 0x47410-0x4, 0x6E4, 1 + map_top 0x47760-0x4, 0x6E4, 1, 1 +.else map_bottom 0x47410, 0x6E4, 1 map_top 0x47760, 0x6E4, 1, 1 +.endif gAreaRoomMap_MtCrenel_1:: @ 08103444 +.ifdef EU + map_bottom 0x47838-0x4, 0x720, 1 + map_top 0x47B70-0x4, 0x720, 1, 1 +.else map_bottom 0x47838, 0x720, 1 map_top 0x47B70, 0x720, 1, 1 +.endif gAreaRoomMap_MtCrenel_2:: @ 0810345C +.ifdef EU + map_bottom 0x47D64-0x4, 0xB94, 1 + map_top 0x483C8-0x4, 0xB94, 1, 1 +.else map_bottom 0x47D64, 0xB94, 1 map_top 0x483C8, 0xB94, 1, 1 +.endif gAreaRoomMap_MtCrenel_3:: @ 08103474 +.ifdef EU + map_bottom 0x48588-0x4, 0xB52, 1 + map_top 0x48BFC-0x4, 0xB52, 1, 1 +.else map_bottom 0x48588, 0xB52, 1 map_top 0x48BFC, 0xB52, 1, 1 +.endif gAreaRoomMap_MtCrenel_4:: @ 0810348C +.ifdef EU + map_bottom 0x48D94-0x4, 0xEC4, 1 + map_top 0x496D8-0x4, 0xEC4, 1, 1 +.else map_bottom 0x48D94, 0xEC4, 1 map_top 0x496D8, 0xEC4, 1, 1 +.endif gAreaRoomMaps_MtCrenel:: @ 081034A4 .4byte gAreaRoomMap_MtCrenel_0 @@ -104,62 +173,130 @@ gAreaRoomMaps_MtCrenel:: @ 081034A4 .4byte gAreaRoomMap_MtCrenel_4 gAreaRoomMap_HyruleField_0:: @ 081034B8 +.ifdef EU + map_bottom 0x610CC-0x4, 0x30C, 1 + map_top 0x612B8-0x4, 0x30C, 1, 1 +.else map_bottom 0x610CC, 0x30C, 1 map_top 0x612B8, 0x30C, 1, 1 +.endif gAreaRoomMap_HyruleField_1:: @ 081034D0 +.ifdef EU + map_data 0x49964-0x4, 0x6000000, 0x4000, 1 + map_data 0x4EA0C-0x4, 0x6008000, 0x4000, 1 + map_data 0x10, 0x0, 0x0, 0 + map_bottom 0x61384-0x4, 0x152A, 1 + map_top 0x61FC4-0x4, 0x152A, 1, 1 +.else map_data 0x49964, 0x6000000, 0x4000, 1 map_data 0x4EA0C, 0x6008000, 0x4000, 1 map_data 0x10, 0x0, 0x0, 0 map_bottom 0x61384, 0x152A, 1 map_top 0x61FC4, 0x152A, 1, 1 +.endif gAreaRoomMap_HyruleField_2:: @ 0810350C +.ifdef EU + map_bottom 0x62384-0x4, 0x30C, 1 + map_top 0x625B8-0x4, 0x30C, 1, 1 +.else map_bottom 0x62384, 0x30C, 1 map_top 0x625B8, 0x30C, 1, 1 +.endif gAreaRoomMap_HyruleField_3:: @ 08103524 +.ifdef EU + map_data 0x49964-0x4, 0x6000000, 0x4000, 1 + map_data 0x4EA0C-0x4, 0x6008000, 0x4000, 1 + map_data 0x10, 0x0, 0x0, 0 + map_bottom 0x62688-0x4, 0x3C0, 1 + map_top 0x628D0-0x4, 0x3C0, 1, 1 +.else map_data 0x49964, 0x6000000, 0x4000, 1 map_data 0x4EA0C, 0x6008000, 0x4000, 1 map_data 0x10, 0x0, 0x0, 0 map_bottom 0x62688, 0x3C0, 1 map_top 0x628D0, 0x3C0, 1, 1 +.endif gAreaRoomMap_HyruleField_4:: @ 08103560 +.ifdef EU + map_data 0x569D0-0x4, 0x6000000, 0x4000, 1 + map_data 0x5B950-0x4, 0x6008000, 0x4000, 1 + map_data 0x43, 0x0, 0x0, 0 + map_bottom 0x629A8-0x4, 0x7F8, 1 + map_top 0x62E74-0x4, 0x7F8, 1, 1 +.else map_data 0x569D0, 0x6000000, 0x4000, 1 map_data 0x5B950, 0x6008000, 0x4000, 1 map_data 0x43, 0x0, 0x0, 0 map_bottom 0x629A8, 0x7F8, 1 map_top 0x62E74, 0x7F8, 1, 1 +.endif gAreaRoomMap_HyruleField_5:: @ 0810359C +.ifdef EU + map_data 0x569D0-0x4, 0x6000000, 0x4000, 1 + map_data 0x5B950-0x4, 0x6008000, 0x4000, 1 + map_data 0x43, 0x0, 0x0, 0 + map_bottom 0x63144-0x4, 0x1518, 1 + map_top 0x63E04-0x4, 0x1518, 1, 1 +.else map_data 0x569D0, 0x6000000, 0x4000, 1 map_data 0x5B950, 0x6008000, 0x4000, 1 map_data 0x43, 0x0, 0x0, 0 map_bottom 0x63144, 0x1518, 1 map_top 0x63E04, 0x1518, 1, 1 +.endif gAreaRoomMap_HyruleField_6:: @ 081035D8 +.ifdef EU + map_data 0x50844-0x4, 0x6000000, 0x4000, 1 + map_data 0x55348-0x4, 0x6008000, 0x4000, 1 + map_data 0x2E, 0x0, 0x0, 0 + map_bottom 0x64440-0x4, 0x189C, 1 + map_top 0x6513C-0x4, 0x189C, 1, 1 +.else map_data 0x50844, 0x6000000, 0x4000, 1 map_data 0x55348, 0x6008000, 0x4000, 1 map_data 0x2E, 0x0, 0x0, 0 map_bottom 0x64440, 0x189C, 1 map_top 0x6513C, 0x189C, 1, 1 +.endif gAreaRoomMap_HyruleField_7:: @ 08103614 +.ifdef EU + map_data 0x49964-0x4, 0x6000000, 0x4000, 1 + map_data 0x4EA0C-0x4, 0x6008000, 0x4000, 1 + map_data 0x10, 0x0, 0x0, 0 + map_bottom 0x65560-0x4, 0xE10, 1 + map_top 0x65DBC-0x4, 0xE10, 1, 1 +.else map_data 0x49964, 0x6000000, 0x4000, 1 map_data 0x4EA0C, 0x6008000, 0x4000, 1 map_data 0x10, 0x0, 0x0, 0 map_bottom 0x65560, 0xE10, 1 map_top 0x65DBC, 0xE10, 1, 1 +.endif gAreaRoomMap_HyruleField_8:: @ 08103650 +.ifdef EU + map_bottom 0x6620C-0x4, 0x960, 1 + map_top 0x6678C-0x4, 0x960, 1, 1 +.else map_bottom 0x6620C, 0x960, 1 map_top 0x6678C, 0x960, 1, 1 +.endif gAreaRoomMap_HyruleField_9:: @ 08103668 +.ifdef EU + map_bottom 0x6699C-0x4, 0x258, 1 + map_top 0x66B60-0x4, 0x258, 1, 1 +.else map_bottom 0x6699C, 0x258, 1 map_top 0x66B60, 0x258, 1, 1 +.endif gAreaRoomMaps_HyruleField:: @ 08103680 .4byte gAreaRoomMap_HyruleField_0 @@ -174,23 +311,43 @@ gAreaRoomMaps_HyruleField:: @ 08103680 .4byte gAreaRoomMap_HyruleField_9 gAreaRoomMap_CastleGarden_0:: @ 081036A8 +.ifdef EU + map_bottom 0x6DD10-0x4, 0x103E, 1 + map_top 0x6E684-0x4, 0x103E, 1, 1 +.else map_bottom 0x6DD10, 0x103E, 1 map_top 0x6E684, 0x103E, 1, 1 +.endif gAreaRoomMaps_CastleGarden:: @ 081036C0 .4byte gAreaRoomMap_CastleGarden_0 gAreaRoomMap_CloudTops_0:: @ 081036C4 +.ifdef EU + map_bottom 0x74AD0-0x4, 0x1F02, 1 + map_top 0x751F0-0x4, 0x1F02, 1, 1 +.else map_bottom 0x74AD0, 0x1F02, 1 map_top 0x751F0, 0x1F02, 1, 1 +.endif gAreaRoomMap_CloudTops_1:: @ 081036DC +.ifdef EU + map_bottom 0x755F0-0x4, 0x1F02, 1 + map_top 0x7602C-0x4, 0x1F02, 1, 1 +.else map_bottom 0x755F0, 0x1F02, 1 map_top 0x7602C, 0x1F02, 1, 1 +.endif gAreaRoomMap_CloudTops_2:: @ 081036F4 +.ifdef EU + map_bottom 0x76498-0x4, 0x1F02, 1 + map_top 0x76DBC-0x4, 0x1F02, 1, 1 +.else map_bottom 0x76498, 0x1F02, 1 map_top 0x76DBC, 0x1F02, 1, 1 +.endif gAreaRoomMaps_CloudTops:: @ 0810370C .4byte gAreaRoomMap_CloudTops_0 @@ -198,49 +355,94 @@ gAreaRoomMaps_CloudTops:: @ 0810370C .4byte gAreaRoomMap_CloudTops_2 gAreaRoomMap_RoyalValley_0:: @ 08103718 +.ifdef EU + map_bottom 0x7EC78-0x4, 0xEC4, 1 + map_top 0x7F3EC-0x4, 0xEC4, 1, 1 +.else map_bottom 0x7EC78, 0xEC4, 1 map_top 0x7F3EC, 0xEC4, 1, 1 +.endif gAreaRoomMap_RoyalValley_1:: @ 08103730 +.ifdef EU + map_bottom 0x7F8F8-0x4, 0x12C, 1 + map_top 0x7F9E8-0x4, 0x12C, 1, 1 +.else map_bottom 0x7F8F8, 0x12C, 1 map_top 0x7F9E8, 0x12C, 1, 1 +.endif gAreaRoomMaps_RoyalValley:: @ 08103748 .4byte gAreaRoomMap_RoyalValley_0 .4byte gAreaRoomMap_RoyalValley_1 gAreaRoomMap_VeilFalls_0:: @ 08103750 +.ifdef EU + map_bottom 0x85C24-0x4, 0xEC4, 1 + map_top 0x86560-0x4, 0xEC4, 1, 1 +.else map_bottom 0x85C24, 0xEC4, 1 map_top 0x86560, 0xEC4, 1, 1 +.endif gAreaRoomMaps_VeilFalls:: @ 08103768 .4byte gAreaRoomMap_VeilFalls_0 gAreaRoomMap_VeilFallsTop_0:: @ 0810376C +.ifdef EU + map_bottom 0x87FB4-0x4, 0x2D0, 1 + map_top 0x8812C-0x4, 0x2D0, 1, 1 +.else map_bottom 0x87FB4, 0x2D0, 1 map_top 0x8812C, 0x2D0, 1, 1 +.endif gAreaRoomMaps_VeilFallsTop:: @ 08103784 .4byte gAreaRoomMap_VeilFallsTop_0 gAreaRoomMap_Beanstalks_0:: @ 08103788 +.ifdef EU + map_bottom 0x8C11C-0x4, 0x12C, 0, 1 +.else map_bottom 0x8C11C, 0x12C, 0, 1 +.endif gAreaRoomMap_Beanstalks_1:: @ 08103794 +.ifdef EU + map_bottom 0x8C248-0x4, 0x12C, 0, 1 +.else map_bottom 0x8C248, 0x12C, 0, 1 +.endif gAreaRoomMap_Beanstalks_2:: @ 081037A0 +.ifdef EU + map_bottom 0x8C374-0x4, 0x12C, 0, 1 +.else map_bottom 0x8C374, 0x12C, 0, 1 +.endif gAreaRoomMap_Beanstalks_3:: @ 081037AC +.ifdef EU + map_bottom 0x8C4A0-0x4, 0x12C, 0, 1 +.else map_bottom 0x8C4A0, 0x12C, 0, 1 +.endif +.ifdef EU +gAreaRoomMap_Beanstalks_4:: @ 081037B8-0x4 + map_bottom 0x8C5CC-0x4, 0x12C, 0, 1 +.else gAreaRoomMap_Beanstalks_4:: @ 081037B8 map_bottom 0x8C5CC, 0x12C, 0, 1 +.endif gAreaRoomMap_Beanstalks_5:: @ 081037C4 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_top_special 0x8BB5C-0x4, 0x800, 1, 1 +.else map_top_special 0x8BB5C, 0x800, 1, 1 +.endif gAreaRoomMaps_Beanstalks:: @ 081037DC .4byte gAreaRoomMap_Beanstalks_0 @@ -277,72 +479,157 @@ gAreaRoomMaps_Beanstalks:: @ 081037DC .4byte gAreaRoomMap_Beanstalks_5 gAreaRoomMap_CrenelCaves_0:: @ 0810385C +.ifdef EU + map_bottom 0x98278-0x4, 0xA8C, 1 + map_top 0x98694-0x4, 0xA8C, 1, 1 +.else map_bottom 0x98278, 0xA8C, 1 map_top 0x98694, 0xA8C, 1, 1 +.endif gAreaRoomMap_CrenelCaves_1:: @ 08103874 +.ifdef EU + map_bottom 0x9887C-0x4, 0x14A, 1 + map_top 0x9897C-0x4, 0x14A, 1, 1 +.else map_bottom 0x9887C, 0x14A, 1 map_top 0x9897C, 0x14A, 1, 1 +.endif gAreaRoomMap_CrenelCaves_2:: @ 0810388C +.ifdef EU + map_bottom 0x989D0-0x4, 0x3A2, 1 + map_top 0x98C14-0x4, 0x3A2, 1, 1 +.else map_bottom 0x989D0, 0x3A2, 1 map_top 0x98C14, 0x3A2, 1, 1 +.endif gAreaRoomMap_CrenelCaves_3:: @ 081038A4 +.ifdef EU + map_bottom 0x98CB8-0x4, 0x168, 1 + map_top 0x98DCC-0x4, 0x168, 1, 1 +.else map_bottom 0x98CB8, 0x168, 1 map_top 0x98DCC, 0x168, 1, 1 +.endif gAreaRoomMap_CrenelCaves_4:: @ 081038BC +.ifdef EU + map_bottom 0x98E18-0x4, 0x12C, 1 + map_top 0x98F10-0x4, 0x12C, 1, 1 +.else map_bottom 0x98E18, 0x12C, 1 map_top 0x98F10, 0x12C, 1, 1 +.endif gAreaRoomMap_CrenelCaves_5:: @ 081038D4 +.ifdef EU + map_bottom 0x98F64-0x4, 0x12C, 1 + map_top 0x99080-0x4, 0x12C, 1, 1 +.else map_bottom 0x98F64, 0x12C, 1 map_top 0x99080, 0x12C, 1, 1 +.endif gAreaRoomMap_CrenelCaves_6:: @ 081038EC +.ifdef EU + map_bottom 0x990D4-0x4, 0x168, 1 + map_top 0x99200-0x4, 0x168, 1, 1 +.else map_bottom 0x990D4, 0x168, 1 map_top 0x99200, 0x168, 1, 1 +.endif gAreaRoomMap_CrenelCaves_7:: @ 08103904 +.ifdef EU + map_bottom 0x99250-0x4, 0x14A, 1 + map_top 0x99350-0x4, 0x14A, 1, 1 +.else map_bottom 0x99250, 0x14A, 1 map_top 0x99350, 0x14A, 1, 1 +.endif gAreaRoomMap_CrenelCaves_8:: @ 0810391C +.ifdef EU + map_bottom 0x993A8-0x4, 0x258, 1 + map_top 0x99558-0x4, 0x258, 1, 1 +.else map_bottom 0x993A8, 0x258, 1 map_top 0x99558, 0x258, 1, 1 +.endif gAreaRoomMap_CrenelCaves_9:: @ 08103934 +.ifdef EU + map_bottom 0x995F4-0x4, 0x12C, 0 + map_top 0x99720-0x4, 0x12C, 1, 1 +.else map_bottom 0x995F4, 0x12C, 0 map_top 0x99720, 0x12C, 1, 1 +.endif gAreaRoomMap_CrenelCaves_10:: @ 0810394C +.ifdef EU + map_bottom 0x99760-0x4, 0x2BC, 1 + map_top 0x99944-0x4, 0x2BC, 1, 1 +.else map_bottom 0x99760, 0x2BC, 1 map_top 0x99944, 0x2BC, 1, 1 +.endif gAreaRoomMap_CrenelCaves_11:: @ 08103964 +.ifdef EU + map_bottom 0x999F4-0x4, 0x294, 1 + map_top 0x99BD0-0x4, 0x294, 1, 1 +.else map_bottom 0x999F4, 0x294, 1 map_top 0x99BD0, 0x294, 1, 1 +.endif gAreaRoomMap_CrenelCaves_12:: @ 0810397C +.ifdef EU + map_bottom 0x99C60-0x4, 0x12C, 1 + map_top 0x99D7C-0x4, 0x12C, 1, 1 +.else map_bottom 0x99C60, 0x12C, 1 map_top 0x99D7C, 0x12C, 1, 1 +.endif gAreaRoomMap_CrenelCaves_13:: @ 08103994 +.ifdef EU + map_bottom 0x99DB0-0x4, 0x12C, 1 + map_top 0x99EB4-0x4, 0x12C, 1, 1 +.else map_bottom 0x99DB0, 0x12C, 1 map_top 0x99EB4, 0x12C, 1, 1 +.endif gAreaRoomMap_CrenelCaves_14:: @ 081039AC +.ifdef EU + map_bottom 0x99F0C-0x4, 0x12C, 1 + map_top 0x9A010-0x4, 0x12C, 1, 1 +.else map_bottom 0x99F0C, 0x12C, 1 map_top 0x9A010, 0x12C, 1, 1 +.endif gAreaRoomMap_CrenelCaves_15:: @ 081039C4 +.ifdef EU + map_bottom 0x9A050-0x4, 0x12C, 1 + map_top 0x9A148-0x4, 0x12C, 1, 1 +.else map_bottom 0x9A050, 0x12C, 1 map_top 0x9A148, 0x12C, 1, 1 +.endif gAreaRoomMap_CrenelCaves_16:: @ 081039DC +.ifdef EU + map_bottom 0x9A18C-0x4, 0x1FE, 1 + map_top 0x9A308-0x4, 0x1FE, 1, 1 +.else map_bottom 0x9A18C, 0x1FE, 1 map_top 0x9A308, 0x1FE, 1, 1 +.endif gAreaRoomMaps_CrenelCaves:: @ 081039F4 .4byte gAreaRoomMap_CrenelCaves_0 @@ -364,16 +651,31 @@ gAreaRoomMaps_CrenelCaves:: @ 081039F4 .4byte gAreaRoomMap_CrenelCaves_16 gAreaRoomMap_GreatFairies_0:: @ 08103A38 +.ifdef EU + map_bottom 0x9F744-0x4, 0x21C, 1 + map_top 0x9F924-0x4, 0x21C, 1, 1 +.else map_bottom 0x9F744, 0x21C, 1 map_top 0x9F924, 0x21C, 1, 1 +.endif gAreaRoomMap_GreatFairies_1:: @ 08103A50 +.ifdef EU + map_bottom 0x9F9C4-0x4, 0x21C, 1 + map_top 0x9FB98-0x4, 0x21C, 1, 1 +.else map_bottom 0x9F9C4, 0x21C, 1 map_top 0x9FB98, 0x21C, 1, 1 +.endif gAreaRoomMap_GreatFairies_2:: @ 08103A68 +.ifdef EU + map_bottom 0x9FC38-0x4, 0x21C, 1 + map_top 0x9FE14-0x4, 0x21C, 1, 1 +.else map_bottom 0x9FC38, 0x21C, 1 map_top 0x9FE14, 0x21C, 1, 1 +.endif gAreaRoomMaps_GreatFairies:: @ 08103A80 .4byte gAreaRoomMap_GreatFairies_0 @@ -386,26 +688,46 @@ gAreaRoomMaps_GreatFairies:: @ 08103A80 .4byte gAreaRoomMap_Unused gAreaRoomMap_LakeWoodsCave_0:: @ 08103AA0 +.ifdef EU + map_bottom 0xCD968-0x4, 0x1F02, 1 + map_top 0xCE2AC-0x4, 0x1F02, 1, 1 +.else map_bottom 0xCD968, 0x1F02, 1 map_top 0xCE2AC, 0x1F02, 1, 1 +.endif gAreaRoomMaps_LakeWoodsCave:: @ 08103AB8 .4byte gAreaRoomMap_LakeWoodsCave_0 gAreaRoomMap_HyruleDigCaves_0:: @ 08103ABC +.ifdef EU + map_bottom 0xCFEE4-0x4, 0x1D88, 1 + map_top 0xD07C0-0x4, 0x1D88, 1, 1 +.else map_bottom 0xCFEE4, 0x1D88, 1 map_top 0xD07C0, 0x1D88, 1, 1 +.endif gAreaRoomMaps_HyruleDigCaves:: @ 08103AD4 .4byte gAreaRoomMap_HyruleDigCaves_0 gAreaRoomMap_DigCaves_0:: @ 08103AD8 +.ifdef EU + map_bottom 0xD1410-0x4, 0x7F8, 1 + map_top 0xD16C8-0x4, 0x7F8, 1, 1 +.else map_bottom 0xD1410, 0x7F8, 1 map_top 0xD16C8, 0x7F8, 1, 1 +.endif gAreaRoomMap_DigCaves_1:: @ 08103AF0 +.ifdef EU + map_bottom 0xD187C-0x4, 0xE10, 1 + map_top 0xD1D2C-0x4, 0xE10, 1, 1 +.else map_bottom 0xD187C, 0xE10, 1 map_top 0xD1D2C, 0xE10, 1, 1 +.endif gAreaRoomMaps_DigCaves1:: @ 08103B08 .4byte gAreaRoomMap_DigCaves_0 @@ -414,45 +736,85 @@ gAreaRoomMaps_DigCaves1:: @ 08103B08 .4byte gAreaRoomMap_DigCaves_1 gAreaRoomMap_CrenelDigCave_0:: @ 08103B18 +.ifdef EU + map_bottom 0xD0D00-0x4, 0x7C0, 1 + map_top 0xD1140-0x4, 0x7C0, 1, 1 +.else map_bottom 0xD0D00, 0x7C0, 1 map_top 0xD1140, 0x7C0, 1, 1 +.endif gAreaRoomMaps_CrenelDigCave:: @ 08103B30 .4byte gAreaRoomMap_CrenelDigCave_0 gAreaRoomMap_VeilFallsDigCave_0:: @ 08103B34 +.ifdef EU + map_bottom 0xD2000-0x4, 0xEC4, 1 + map_top 0xD24FC-0x4, 0xEC4, 1, 1 +.else map_bottom 0xD2000, 0xEC4, 1 map_top 0xD24FC, 0xEC4, 1, 1 +.endif gAreaRoomMaps_VeilFallsDigCave:: @ 08103B4C .4byte gAreaRoomMap_VeilFallsDigCave_0 gAreaRoomMap_CastorWildsDigCave_0:: @ 08103B50 +.ifdef EU + map_bottom 0xCF2D0-0x4, 0x1D88, 1 + map_top 0xCFACC-0x4, 0x1D88, 1, 1 +.else map_bottom 0xCF2D0, 0x1D88, 1 map_top 0xCFACC, 0x1D88, 1, 1 +.endif gAreaRoomMaps_CastorWildsDigCave:: @ 08103B68 .4byte gAreaRoomMap_CastorWildsDigCave_0 gAreaRoomMap_OuterFortressOfWinds_0:: @ 08103B6C +.ifdef EU + map_bottom 0xD27E0-0x4, 0x5FE, 1 + map_top 0xD2A10-0x4, 0x5FE, 1, 1 +.else map_bottom 0xD27E0, 0x5FE, 1 map_top 0xD2A10, 0x5FE, 1, 1 +.endif gAreaRoomMap_OuterFortressOfWinds_1:: @ 08103B84 +.ifdef EU + map_bottom 0xD2BAC-0x4, 0x938, 1 + map_top 0xD2F0C-0x4, 0x938, 1, 1 +.else map_bottom 0xD2BAC, 0x938, 1 map_top 0xD2F0C, 0x938, 1, 1 +.endif gAreaRoomMap_OuterFortressOfWinds_2:: @ 08103B9C +.ifdef EU + map_bottom 0xD31B4-0x4, 0x5FE, 1 + map_top 0xD3434-0x4, 0x5FE, 1, 1 +.else map_bottom 0xD31B4, 0x5FE, 1 map_top 0xD3434, 0x5FE, 1, 1 +.endif gAreaRoomMap_OuterFortressOfWinds_3:: @ 08103BB4 +.ifdef EU + map_bottom 0xD3618-0x4, 0x1EE, 1 + map_top 0xD3708-0x4, 0x1EE, 1, 1 +.else map_bottom 0xD3618, 0x1EE, 1 map_top 0xD3708, 0x1EE, 1, 1 +.endif gAreaRoomMap_OuterFortressOfWinds_4:: @ 08103BCC +.ifdef EU + map_bottom 0xD3814-0x4, 0x186, 1 + map_top 0xD3900-0x4, 0x186, 1, 1 +.else map_bottom 0xD3814, 0x186, 1 map_top 0xD3900, 0x186, 1, 1 +.endif gAreaRoomMaps_OuterFortressOfWinds:: @ 08103BE4 .4byte gAreaRoomMap_OuterFortressOfWinds_0 @@ -462,58 +824,108 @@ gAreaRoomMaps_OuterFortressOfWinds:: @ 08103BE4 .4byte gAreaRoomMap_OuterFortressOfWinds_4 gAreaRoomMap_HyliaDigCaves_0:: @ 08103BF8 +.ifdef EU + map_bottom 0xCE79C-0x4, 0x220, 1 + map_top 0xCE8CC-0x4, 0x220, 1, 1 +.else map_bottom 0xCE79C, 0x220, 1 map_top 0xCE8CC, 0x220, 1, 1 +.endif gAreaRoomMap_HyliaDigCaves_1:: @ 08103C10 +.ifdef EU + map_bottom 0xCE978-0x4, 0xD4A, 1 + map_top 0xCEEF8-0x4, 0xD4A, 1, 1 +.else map_bottom 0xCE978, 0xD4A, 1 map_top 0xCEEF8, 0xD4A, 1, 1 +.endif gAreaRoomMaps_HyliaDigCaves:: @ 08103C28 .4byte gAreaRoomMap_HyliaDigCaves_0 .4byte gAreaRoomMap_HyliaDigCaves_1 gAreaRoomMap_Empty_0:: @ 08103C30 +.ifdef EU + map_bottom 0x8C7D4-0x4, 0x1F02, 1 + map_top 0x8CD7C-0x4, 0x1F02, 1, 1 +.else map_bottom 0x8C7D4, 0x1F02, 1 map_top 0x8CD7C, 0x1F02, 1, 1 +.endif gAreaRoomMaps_Empty:: @ 08103C48 .4byte gAreaRoomMap_Empty_0 .4byte gAreaRoomMap_Empty_0 gAreaRoomMap_MinishVillage_0:: @ 08103C50 +.ifdef EU + map_bottom 0xE0F04-0x4, 0x1F02, 1 + map_top 0xE1ACC-0x4, 0x1F02, 1, 1 +.else map_bottom 0xE0F04, 0x1F02, 1 map_top 0xE1ACC, 0x1F02, 1, 1 +.endif gAreaRoomMap_MinishVillage_1:: @ 08103C68 +.ifdef EU + map_bottom 0xE2584-0x4, 0x618, 1 + map_top 0xE2728-0x4, 0x618, 1, 1 +.else map_bottom 0xE2584, 0x618, 1 map_top 0xE2728, 0x618, 1, 1 +.endif gAreaRoomMaps_MinishVillage:: @ 08103C80 .4byte gAreaRoomMap_MinishVillage_0 .4byte gAreaRoomMap_MinishVillage_1 gAreaRoomMap_MelarisMine_0:: @ 08103C88 +.ifdef EU + map_bottom 0xEA6B4-0x4, 0xDB6, 1 + map_top 0xEAE44-0x4, 0xDB6, 1, 1 +.else map_bottom 0xEA6B4, 0xDB6, 1 map_top 0xEAE44, 0xDB6, 1, 1 +.endif gAreaRoomMaps_MelarisMine:: @ 08103CA0 .4byte gAreaRoomMap_MelarisMine_0 gAreaRoomMap_MinishPaths1_0:: @ 08103CA4 +.ifdef EU + map_bottom 0xEF458-0x4, 0x5DC, 1, 1 +.else map_bottom 0xEF458, 0x5DC, 1, 1 +.endif gAreaRoomMap_MinishPaths1_1:: @ 08103CB0 +.ifdef EU + map_bottom 0xEF618-0x4, 0x5DC, 1, 1 +.else map_bottom 0xEF618, 0x5DC, 1, 1 +.endif gAreaRoomMap_MinishPaths1_2:: @ 08103CBC +.ifdef EU + map_bottom 0xEF830-0x4, 0x5DC, 1, 1 +.else map_bottom 0xEF830, 0x5DC, 1, 1 +.endif gAreaRoomMap_MinishPaths1_3:: @ 08103CC8 +.ifdef EU + map_bottom 0xEFA5C-0x4, 0x5DC, 1, 1 +.else map_bottom 0xEFA5C, 0x5DC, 1, 1 +.endif gAreaRoomMap_MinishPaths1_4:: @ 08103CD4 +.ifdef EU + map_bottom 0xEFC64-0x4, 0x5DC, 1, 1 +.else map_bottom 0xEFC64, 0x5DC, 1, 1 +.endif gAreaRoomMaps_MinishPaths1:: @ 08103CE0 .4byte gAreaRoomMap_MinishPaths1_0 @@ -523,16 +935,32 @@ gAreaRoomMaps_MinishPaths1:: @ 08103CE0 .4byte gAreaRoomMap_MinishPaths1_4 gAreaRoomMap_CrenelMinishPaths_0:: @ 08103CF4 +.ifdef EU + map_bottom 0xF6B30-0x4, 0x5DC, 1, 1 +.else map_bottom 0xF6B30, 0x5DC, 1, 1 +.endif gAreaRoomMap_CrenelMinishPaths_1:: @ 08103D00 +.ifdef EU + map_bottom 0xF6D24-0x4, 0x5DC, 1, 1 +.else map_bottom 0xF6D24, 0x5DC, 1, 1 +.endif gAreaRoomMap_CrenelMinishPaths_2:: @ 08103D0C +.ifdef EU + map_bottom 0xF6FCC-0x4, 0x4B0, 1, 1 +.else map_bottom 0xF6FCC, 0x4B0, 1, 1 +.endif gAreaRoomMap_CrenelMinishPaths_3:: @ 08103D18 +.ifdef EU + map_bottom 0xF714C-0x4, 0x4B0, 1, 1 +.else map_bottom 0xF714C, 0x4B0, 1, 1 +.endif gAreaRoomMaps_CrenelMinishPaths:: @ 08103D24 .4byte gAreaRoomMap_CrenelMinishPaths_0 @@ -542,108 +970,213 @@ gAreaRoomMaps_CrenelMinishPaths:: @ 08103D24 gAreaRoomMap_MinishHouseInteriors_0:: @ 08103D34 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x139D8C-0x4, 0x96, 1 + map_unknown_2 0x139804-0x4, 0x800, 1, 1 +.else map_unknown 0x139D8C, 0x96, 1 map_unknown_2 0x139804, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_1:: @ 08103D58 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x13E770-0x4, 0x96, 1 + map_unknown_2 0x139DCC-0x4, 0x800, 1, 1 +.else map_unknown 0x13E770, 0x96, 1 map_unknown_2 0x139DCC, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_2:: @ 08103D7C map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x142334-0x4, 0x1D0, 1 + map_unknown_2 0x13E7AC-0x4, 0x1000, 1, 1 +.else map_unknown 0x142334, 0x1D0, 1 map_unknown_2 0x13E7AC, 0x1000, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_3:: @ 08103DA0 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x144C24-0x4, 0xA0, 1 + map_unknown_2 0x1423A4-0x4, 0x800, 1, 1 +.else map_unknown 0x144C24, 0xA0, 1 map_unknown_2 0x1423A4, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_4:: @ 08103DC4 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x147460-0x4, 0xA0, 1 + map_unknown_2 0x144C58-0x4, 0x800, 1, 1 +.else map_unknown 0x147460, 0xA0, 1 map_unknown_2 0x144C58, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_5:: @ 08103DE8 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x149B84-0x4, 0xA0, 1 + map_unknown_2 0x14748C-0x4, 0x800, 1, 1 +.else map_unknown 0x149B84, 0xA0, 1 map_unknown_2 0x14748C, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_6:: @ 08103E0C map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x14C7B0-0x4, 0xA0, 1 + map_unknown_2 0x149BB4-0x4, 0x800, 1, 1 +.else map_unknown 0x14C7B0, 0xA0, 1 map_unknown_2 0x149BB4, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_8:: @ 08103E30 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x15583C-0x4, 0xE1, 1 + map_unknown_2 0x151BF4-0x4, 0x800, 1, 1 +.else map_unknown 0x15583C, 0xE1, 1 map_unknown_2 0x151BF4, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_7:: @ 08103E54 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x151BC0-0x4, 0x96, 1 + map_unknown_2 0x14C7EC-0x4, 0x800, 1, 1 +.else map_unknown 0x151BC0, 0x96, 1 map_unknown_2 0x14C7EC, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_9:: @ 08103E78 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x15A290-0x4, 0x159, 1 + map_unknown_2 0x15588C-0x4, 0x1000, 1, 1 +.else map_unknown 0x15A290, 0x159, 1 map_unknown_2 0x15588C, 0x1000, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_10:: @ 08103E9C map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x15D544-0x4, 0x96, 1 + map_unknown_2 0x15A2E4-0x4, 0x800, 1, 1 +.else map_unknown 0x15D544, 0x96, 1 map_unknown_2 0x15A2E4, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_11:: @ 08103EC0 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x160898-0x4, 0x96, 1 + map_unknown_2 0x15D57C-0x4, 0x800, 1, 1 +.else map_unknown 0x160898, 0x96, 1 map_unknown_2 0x15D57C, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_12:: @ 08103EE4 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x163698-0x4, 0xDC, 1 + map_unknown_2 0x1608DC-0x4, 0x1000, 1, 1 +.else map_unknown 0x163698, 0xDC, 1 map_unknown_2 0x1608DC, 0x1000, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_13:: @ 08103F08 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x16C6F8-0x4, 0x96, 1 + map_unknown_2 0x1692D8-0x4, 0x800, 1, 1 +.else map_unknown 0x16C6F8, 0x96, 1 map_unknown_2 0x1692D8, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_14:: @ 08103F2C map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x16FA58-0x4, 0x96, 1 + map_unknown_2 0x16C730-0x4, 0x800, 1, 1 +.else map_unknown 0x16FA58, 0x96, 1 map_unknown_2 0x16C730, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_15:: @ 08103F50 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x172E58-0x4, 0x96, 1 + map_unknown_2 0x16FA8C-0x4, 0x800, 1, 1 +.else map_unknown 0x172E58, 0x96, 1 map_unknown_2 0x16FA8C, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_16:: @ 08103F74 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x17519C-0x4, 0x96, 1 + map_unknown_2 0x172E8C-0x4, 0x800, 1, 1 +.else map_unknown 0x17519C, 0x96, 1 map_unknown_2 0x172E8C, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_17:: @ 08103F98 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x178664-0x4, 0x96, 1 + map_unknown_2 0x1751D0-0x4, 0x800, 1, 1 +.else map_unknown 0x178664, 0x96, 1 map_unknown_2 0x1751D0, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_18:: @ 08103FBC map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x17B3B8-0x4, 0x96, 1 + map_unknown_2 0x1786A0-0x4, 0x800, 1, 1 +.else map_unknown 0x17B3B8, 0x96, 1 map_unknown_2 0x1786A0, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_19:: @ 08103FE0 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x17EA00-0x4, 0x96, 1 + map_unknown_2 0x17B3F0-0x4, 0x800, 1, 1 +.else map_unknown 0x17EA00, 0x96, 1 map_unknown_2 0x17B3F0, 0x800, 1, 1 +.endif gAreaRoomMap_MinishHouseInteriors_20:: @ 08104004 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x181E7C-0x4, 0x96, 1 + map_unknown_2 0x17EA34-0x4, 0x800, 1, 1 +.else map_unknown 0x181E7C, 0x96, 1 map_unknown_2 0x17EA34, 0x800, 1, 1 +.endif gAreaRoomMaps_MinishHouseInteriors:: @ 08104028 .4byte gAreaRoomMap_MinishHouseInteriors_0 @@ -689,48 +1222,93 @@ gAreaRoomMaps_MinishHouseInteriors:: @ 08104028 gAreaRoomMap_TownMinishHoles_0:: @ 081040C8 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x184554-0x4, 0x96, 1 + map_unknown_2 0x181EB4-0x4, 0x800, 1, 1 +.else map_unknown 0x184554, 0x96, 1 map_unknown_2 0x181EB4, 0x800, 1, 1 +.endif gAreaRoomMap_TownMinishHoles_1:: @ 081040EC map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x1874D0-0x4, 0x96, 1 + map_unknown_2 0x184588-0x4, 0x800, 1, 1 +.else map_unknown 0x1874D0, 0x96, 1 map_unknown_2 0x184588, 0x800, 1, 1 +.endif gAreaRoomMap_TownMinishHoles_2:: @ 08104110 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x18A01C-0x4, 0x96, 1 + map_unknown_2 0x187514-0x4, 0x800, 1, 1 +.else map_unknown 0x18A01C, 0x96, 1 map_unknown_2 0x187514, 0x800, 1, 1 +.endif gAreaRoomMap_TownMinishHoles_3:: @ 08104134 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x18CFB8-0x4, 0x96, 1 + map_unknown_2 0x18A04C-0x4, 0x800, 1, 1 +.else map_unknown 0x18CFB8, 0x96, 1 map_unknown_2 0x18A04C, 0x800, 1, 1 +.endif gAreaRoomMap_TownMinishHoles_4:: @ 08104158 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x18F98C-0x4, 0x96, 1 + map_unknown_2 0x18CFF4-0x4, 0x800, 1, 1 +.else map_unknown 0x18F98C, 0x96, 1 map_unknown_2 0x18CFF4, 0x800, 1, 1 +.endif gAreaRoomMap_TownMinishHoles_5:: @ 0810417C map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x192FC0-0x4, 0x96, 1 + map_unknown_2 0x18F9C8-0x4, 0x800, 1, 1 +.else map_unknown 0x192FC0, 0x96, 1 map_unknown_2 0x18F9C8, 0x800, 1, 1 +.endif gAreaRoomMap_TownMinishHoles_6:: @ 081041A0 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x196F84-0x4, 0x24C, 1 + map_unknown_2 0x192FF4-0x4, 0x2000, 1, 1 +.else map_unknown 0x196F84, 0x24C, 1 map_unknown_2 0x192FF4, 0x2000, 1, 1 +.endif gAreaRoomMap_TownMinishHoles_7:: @ 081041C4 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x19BBAC-0x4, 0xE1, 1 + map_unknown_2 0x196FFC-0x4, 0x800, 1, 1 +.else map_unknown 0x19BBAC, 0xE1, 1 map_unknown_2 0x196FFC, 0x800, 1, 1 +.endif gAreaRoomMap_TownMinishHoles_8:: @ 081041E8 map_bottom 0x0, 0x2000, 1 +.ifdef EU + map_unknown 0x19FCC0-0x4, 0x190, 1 + map_unknown_2 0x19BBE4-0x4, 0x2000, 1, 1 +.else map_unknown 0x19FCC0, 0x190, 1 map_unknown_2 0x19BBE4, 0x2000, 1, 1 +.endif gAreaRoomMaps_TownMinishHoles:: @ 0810420C .4byte gAreaRoomMap_TownMinishHoles_0 @@ -783,56 +1361,121 @@ gAreaRoomMaps_TownMinishHoles:: @ 0810420C .4byte 0x0 gAreaRoomMap_HouseInteriors1_0:: @ 081042CC +.ifdef EU + map_bottom 0x132A1C-0x4, 0x198, 1 + map_top 0x132B6C-0x4, 0x198, 1, 1 +.else map_bottom 0x132A1C, 0x198, 1 map_top 0x132B6C, 0x198, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_1:: @ 081042E4 +.ifdef EU + map_bottom 0x132BB4-0x4, 0x14A, 1 + map_top 0x132CD8-0x4, 0x14A, 1, 1 +.else map_bottom 0x132BB4, 0x14A, 1 map_top 0x132CD8, 0x14A, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_2:: @ 081042FC +.ifdef EU + map_bottom 0x132D38-0x4, 0x14A, 1 + map_top 0x132E50-0x4, 0x14A, 1, 1 +.else map_bottom 0x132D38, 0x14A, 1 map_top 0x132E50, 0x14A, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_3:: @ 08104314 +.ifdef EU + map_bottom 0x132E80-0x4, 0x2C0, 1 + map_top 0x13305C-0x4, 0x2C0, 1, 1 +.else map_bottom 0x132E80, 0x2C0, 1 map_top 0x13305C, 0x2C0, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_4:: @ 0810432C +.ifdef EU + map_bottom 0x1330E8-0x4, 0x1A4, 1 + map_top 0x13322C-0x4, 0x1A4, 1, 1 +.else map_bottom 0x1330E8, 0x1A4, 1 map_top 0x13322C, 0x1A4, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_5:: @ 08104344 +.ifdef EU + map_bottom 0x133280-0x4, 0x12C, 1 + map_top 0x133384-0x4, 0x12C, 1, 1 +.else map_bottom 0x133280, 0x12C, 1 map_top 0x133384, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_6:: @ 0810435C +.ifdef EU + map_bottom 0x1333F0-0x4, 0x12C, 1 + map_top 0x1334F4-0x4, 0x12C, 1, 1 +.else map_bottom 0x1333F0, 0x12C, 1 map_top 0x1334F4, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_7:: @ 08104374 +.ifdef EU + map_bottom 0x133544-0x4, 0x12C, 1 + map_top 0x133640-0x4, 0x12C, 1, 1 +.else map_bottom 0x133544, 0x12C, 1 map_top 0x133640, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_8:: @ 0810438C +.ifdef EU + map_bottom 0x133694-0x4, 0x12C, 1 + map_top 0x133790-0x4, 0x12C, 1, 1 +.else map_bottom 0x133694, 0x12C, 1 map_top 0x133790, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_9:: @ 081043A4 +.ifdef EU + map_bottom 0x1337C0-0x4, 0x348, 1 + map_top 0x133A3C-0x4, 0x348, 1, 1 +.else map_bottom 0x1337C0, 0x348, 1 map_top 0x133A3C, 0x348, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_10:: @ 081043BC +.ifdef EU + map_bottom 0x133ACC-0x4, 0x12C, 1 + map_top 0x133BDC-0x4, 0x12C, 1, 1 +.else map_bottom 0x133ACC, 0x12C, 1 map_top 0x133BDC, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_11:: @ 081043D4 +.ifdef EU + map_bottom 0x133C08-0x4, 0x1C2, 1 + map_top 0x133D90-0x4, 0x1C2, 1, 1 +.else map_bottom 0x133C08, 0x1C2, 1 map_top 0x133D90, 0x1C2, 1, 1 +.endif gAreaRoomMap_HouseInteriors1_12:: @ 081043EC +.ifdef EU + map_bottom 0x133DD0-0x4, 0x1B8, 1 + map_top 0x133F48-0x4, 0x1B8, 1, 1 +.else map_bottom 0x133DD0, 0x1B8, 1 map_top 0x133F48, 0x1B8, 1, 1 +.endif gAreaRoomMaps_HouseInteriors1:: @ 08104404 .4byte gAreaRoomMap_HouseInteriors1_0 @@ -853,80 +1496,175 @@ gAreaRoomMaps_HouseInteriors1:: @ 08104404 .4byte 0x0 gAreaRoomMap_HouseInteriors2_0:: @ 08104444 +.ifdef EU + map_bottom 0x12F9C8-0x4, 0x12C, 1 + map_top 0x12FAE8-0x4, 0x12C, 1, 1 +.else map_bottom 0x12F9C8, 0x12C, 1 map_top 0x12FAE8, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_1:: @ 0810445C +.ifdef EU + map_bottom 0x12FB40-0x4, 0x168, 1 + map_top 0x12FC5C-0x4, 0x168, 1, 1 +.else map_bottom 0x12FB40, 0x168, 1 map_top 0x12FC5C, 0x168, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_2:: @ 08104474 +.ifdef EU + map_bottom 0x12FCD4-0x4, 0x168, 1 + map_top 0x12FDF4-0x4, 0x168, 1, 1 +.else map_bottom 0x12FCD4, 0x168, 1 map_top 0x12FDF4, 0x168, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_3:: @ 0810448C +.ifdef EU + map_bottom 0x12FE64-0x4, 0x168, 1 + map_top 0x12FF88-0x4, 0x168, 1, 1 +.else map_bottom 0x12FE64, 0x168, 1 map_top 0x12FF88, 0x168, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_4:: @ 081044A4 +.ifdef EU + map_bottom 0x12FFF4-0x4, 0x168, 1 + map_top 0x130118-0x4, 0x168, 1, 1 +.else map_bottom 0x12FFF4, 0x168, 1 map_top 0x130118, 0x168, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_5:: @ 081044BC +.ifdef EU + map_bottom 0x130164-0x4, 0x14A, 1 + map_top 0x130254-0x4, 0x14A, 1, 1 +.else map_bottom 0x130164, 0x14A, 1 map_top 0x130254, 0x14A, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_6:: @ 081044D4 +.ifdef EU + map_bottom 0x1302A8-0x4, 0x12C, 1 + map_top 0x1303C8-0x4, 0x12C, 1, 1 +.else map_bottom 0x1302A8, 0x12C, 1 map_top 0x1303C8, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_7:: @ 081044EC +.ifdef EU + map_bottom 0x130428-0x4, 0x168, 1 + map_top 0x130540-0x4, 0x168, 1, 1 +.else map_bottom 0x130428, 0x168, 1 map_top 0x130540, 0x168, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_8:: @ 08104504 +.ifdef EU + map_bottom 0x130598-0x4, 0x14A, 1 + map_top 0x1306C4-0x4, 0x14A, 1, 1 +.else map_bottom 0x130598, 0x14A, 1 map_top 0x1306C4, 0x14A, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_9:: @ 0810451C +.ifdef EU + map_bottom 0x130718-0x4, 0x12C, 1 + map_top 0x130824-0x4, 0x12C, 1, 1 +.else map_bottom 0x130718, 0x12C, 1 map_top 0x130824, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_10:: @ 08104534 +.ifdef EU + map_bottom 0x13087C-0x4, 0x12C, 1 + map_top 0x13098C-0x4, 0x12C, 1, 1 +.else map_bottom 0x13087C, 0x12C, 1 map_top 0x13098C, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_11:: @ 0810454C +.ifdef EU + map_bottom 0x1309E0-0x4, 0x12C, 1 + map_top 0x130AF8-0x4, 0x12C, 1, 1 +.else map_bottom 0x1309E0, 0x12C, 1 map_top 0x130AF8, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_12:: @ 08104564 +.ifdef EU + map_bottom 0x130B54-0x4, 0x12C, 1 + map_top 0x130C6C-0x4, 0x12C, 1, 1 +.else map_bottom 0x130B54, 0x12C, 1 map_top 0x130C6C, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_13:: @ 0810457C +.ifdef EU + map_bottom 0x130CB4-0x4, 0x12C, 1 + map_top 0x130DD8-0x4, 0x12C, 1, 1 +.else map_bottom 0x130CB4, 0x12C, 1 map_top 0x130DD8, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_14:: @ 08104594 +.ifdef EU + map_bottom 0x130E28-0x4, 0x12C, 1 + map_top 0x130F48-0x4, 0x12C, 1, 1 +.else map_bottom 0x130E28, 0x12C, 1 map_top 0x130F48, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_15:: @ 081045AC +.ifdef EU + map_bottom 0x130F8C-0x4, 0x12C, 1 + map_top 0x1310A0-0x4, 0x12C, 1, 1 +.else map_bottom 0x130F8C, 0x12C, 1 map_top 0x1310A0, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_16:: @ 081045C4 +.ifdef EU + map_bottom 0x1310FC-0x4, 0x14A, 1 + map_top 0x1311D0-0x4, 0x14A, 1, 1 +.else map_bottom 0x1310FC, 0x14A, 1 map_top 0x1311D0, 0x14A, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_17:: @ 081045DC +.ifdef EU + map_bottom 0x131234-0x4, 0x12C, 1 + map_top 0x131340-0x4, 0x12C, 1, 1 +.else map_bottom 0x131234, 0x12C, 1 map_top 0x131340, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors2_18:: @ 081045F4 +.ifdef EU + map_bottom 0x13138C-0x4, 0x12C, 1 + map_top 0x13149C-0x4, 0x12C, 1, 1 +.else map_bottom 0x13138C, 0x12C, 1 map_top 0x13149C, 0x12C, 1, 1 +.endif gAreaRoomMaps_HouseInteriors2:: @ 0810460C .4byte gAreaRoomMap_HouseInteriors2_0 @@ -979,28 +1717,58 @@ gAreaRoomMaps_HouseInteriors2:: @ 0810460C .4byte gAreaRoomMap_HouseInteriors2_0 gAreaRoomMap_HouseInteriors4_0:: @ 081046CC +.ifdef EU + map_bottom 0x1314F4-0x4, 0x168, 1 + map_top 0x131600-0x4, 0x168, 1, 1 +.else map_bottom 0x1314F4, 0x168, 1 map_top 0x131600, 0x168, 1, 1 +.endif gAreaRoomMap_HouseInteriors4_1:: @ 081046E4 +.ifdef EU + map_bottom 0x131644-0x4, 0x168, 1 + map_top 0x131798-0x4, 0x168, 1, 1 +.else map_bottom 0x131644, 0x168, 1 map_top 0x131798, 0x168, 1, 1 +.endif gAreaRoomMap_HouseInteriors4_2:: @ 081046FC +.ifdef EU + map_bottom 0x1317D8-0x4, 0x12C, 1 + map_top 0x1318EC-0x4, 0x12C, 1, 1 +.else map_bottom 0x1317D8, 0x12C, 1 map_top 0x1318EC, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors4_3:: @ 08104714 +.ifdef EU + map_bottom 0x13192C-0x4, 0x12C, 1 + map_top 0x131A44-0x4, 0x12C, 1, 1 +.else map_bottom 0x13192C, 0x12C, 1 map_top 0x131A44, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors4_4:: @ 0810472C +.ifdef EU + map_bottom 0x131A70-0x4, 0x12C, 1 + map_top 0x131B80-0x4, 0x12C, 1, 1 +.else map_bottom 0x131A70, 0x12C, 1 map_top 0x131B80, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors4_5:: @ 08104744 +.ifdef EU + map_bottom 0x131BDC-0x4, 0x168, 1 + map_top 0x131D10-0x4, 0x168, 1, 1 +.else map_bottom 0x131BDC, 0x168, 1 map_top 0x131D10, 0x168, 1, 1 +.endif gAreaRoomMaps_HouseInteriors4:: @ 0810475C .4byte gAreaRoomMap_HouseInteriors4_0 @@ -1021,40 +1789,85 @@ gAreaRoomMaps_HouseInteriors4:: @ 0810475C .4byte gAreaRoomMap_HouseInteriors4_0 gAreaRoomMap_HouseInteriors3_0:: @ 0810479C +.ifdef EU + map_bottom 0x131D48-0x4, 0x186, 1 + map_top 0x131E7C-0x4, 0x186, 1, 1 +.else map_bottom 0x131D48, 0x186, 1 map_top 0x131E7C, 0x186, 1, 1 +.endif gAreaRoomMap_HouseInteriors3_1:: @ 081047B4 +.ifdef EU + map_bottom 0x131EF8-0x4, 0x186, 1 + map_top 0x13202C-0x4, 0x186, 1, 1 +.else map_bottom 0x131EF8, 0x186, 1 map_top 0x13202C, 0x186, 1, 1 +.endif gAreaRoomMap_HouseInteriors3_2:: @ 081047CC +.ifdef EU + map_bottom 0x13208C-0x4, 0x12C, 1 + map_top 0x1321A4-0x4, 0x12C, 1, 1 +.else map_bottom 0x13208C, 0x12C, 1 map_top 0x1321A4, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors3_3:: @ 081047E4 +.ifdef EU + map_bottom 0x1321F4-0x4, 0x168, 1 + map_top 0x132304-0x4, 0x168, 1, 1 +.else map_bottom 0x1321F4, 0x168, 1 map_top 0x132304, 0x168, 1, 1 +.endif gAreaRoomMap_HouseInteriors3_4:: @ 081047FC +.ifdef EU + map_bottom 0x132354-0x4, 0x12C, 1 + map_top 0x132468-0x4, 0x12C, 1, 1 +.else map_bottom 0x132354, 0x12C, 1 map_top 0x132468, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors3_5:: @ 08104814 +.ifdef EU + map_bottom 0x1324B4-0x4, 0x12C, 1 + map_top 0x1325AC-0x4, 0x12C, 1, 1 +.else map_bottom 0x1324B4, 0x12C, 1 map_top 0x1325AC, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors3_6:: @ 0810482C +.ifdef EU + map_bottom 0x1325F4-0x4, 0x14A, 1 + map_top 0x13272C-0x4, 0x14A, 1, 1 +.else map_bottom 0x1325F4, 0x14A, 1 map_top 0x13272C, 0x14A, 1, 1 +.endif gAreaRoomMap_HouseInteriors3_7:: @ 08104844 +.ifdef EU + map_bottom 0x132778-0x4, 0x12C, 1 + map_top 0x132878-0x4, 0x12C, 1, 1 +.else map_bottom 0x132778, 0x12C, 1 map_top 0x132878, 0x12C, 1, 1 +.endif gAreaRoomMap_HouseInteriors3_8:: @ 0810485C +.ifdef EU + map_bottom 0x1328BC-0x4, 0x140, 1 + map_top 0x1329D4-0x4, 0x140, 1, 1 +.else map_bottom 0x1328BC, 0x140, 1 map_top 0x1329D4, 0x140, 1, 1 +.endif gAreaRoomMaps_HouseInteriors3:: @ 08104874 .4byte gAreaRoomMap_HouseInteriors3_0 @@ -1068,72 +1881,157 @@ gAreaRoomMaps_HouseInteriors3:: @ 08104874 .4byte gAreaRoomMap_HouseInteriors3_8 gAreaRoomMap_TreeInteriors_0:: @ 08104898 +.ifdef EU + map_bottom 0x1350AC-0x4, 0x12C, 0 + map_top 0x1351D8-0x4, 0x12C, 1, 1 +.else map_bottom 0x1350AC, 0x12C, 0 map_top 0x1351D8, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_1:: @ 081048B0 +.ifdef EU + map_bottom 0x135208-0x4, 0x12C, 0 + map_top 0x135334-0x4, 0x12C, 1, 1 +.else map_bottom 0x135208, 0x12C, 0 map_top 0x135334, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_2:: @ 081048C8 +.ifdef EU + map_bottom 0x135360-0x4, 0x12C, 0 + map_top 0x13548C-0x4, 0x12C, 1, 1 +.else map_bottom 0x135360, 0x12C, 0 map_top 0x13548C, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_3:: @ 081048E0 +.ifdef EU + map_bottom 0x1354D0-0x4, 0x12C, 0 + map_top 0x1355FC-0x4, 0x12C, 1, 1 +.else map_bottom 0x1354D0, 0x12C, 0 map_top 0x1355FC, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_4:: @ 081048F8 +.ifdef EU + map_bottom 0x135628-0x4, 0x12C, 0 + map_top 0x135754-0x4, 0x12C, 1, 1 +.else map_bottom 0x135628, 0x12C, 0 map_top 0x135754, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_5:: @ 08104910 +.ifdef EU + map_bottom 0x135780-0x4, 0x12C, 0 + map_top 0x1358AC-0x4, 0x12C, 1, 1 +.else map_bottom 0x135780, 0x12C, 0 map_top 0x1358AC, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_6:: @ 08104928 +.ifdef EU + map_bottom 0x1358D8-0x4, 0x12C, 0 + map_top 0x135A04-0x4, 0x12C, 1, 1 +.else map_bottom 0x1358D8, 0x12C, 0 map_top 0x135A04, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_7:: @ 08104940 +.ifdef EU + map_bottom 0x135A30-0x4, 0x12C, 0 + map_top 0x135B5C-0x4, 0x12C, 1, 1 +.else map_bottom 0x135A30, 0x12C, 0 map_top 0x135B5C, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_8:: @ 08104958 +.ifdef EU + map_bottom 0x135B88-0x4, 0x12C, 0 + map_top 0x135CB4-0x4, 0x12C, 1, 1 +.else map_bottom 0x135B88, 0x12C, 0 map_top 0x135CB4, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_9:: @ 08104970 +.ifdef EU + map_bottom 0x135CE0-0x4, 0x12C, 0 + map_top 0x135E0C-0x4, 0x12C, 1, 1 +.else map_bottom 0x135CE0, 0x12C, 0 map_top 0x135E0C, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_10:: @ 08104988 +.ifdef EU + map_bottom 0x135E38-0x4, 0x12C, 0 + map_top 0x135F64-0x4, 0x12C, 1, 1 +.else map_bottom 0x135E38, 0x12C, 0 map_top 0x135F64, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_11:: @ 081049A0 +.ifdef EU + map_bottom 0x135F90-0x4, 0x12C, 0 + map_top 0x1360BC-0x4, 0x12C, 1, 1 +.else map_bottom 0x135F90, 0x12C, 0 map_top 0x1360BC, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_12:: @ 081049B8 +.ifdef EU + map_bottom 0x1360EC-0x4, 0x12C, 0 + map_top 0x136218-0x4, 0x12C, 1, 1 +.else map_bottom 0x1360EC, 0x12C, 0 map_top 0x136218, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_13:: @ 081049D0 +.ifdef EU + map_bottom 0x136248-0x4, 0x12C, 0 + map_top 0x136374-0x4, 0x12C, 1, 1 +.else map_bottom 0x136248, 0x12C, 0 map_top 0x136374, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_14:: @ 081049E8 +.ifdef EU + map_bottom 0x1363CC-0x4, 0x12C, 0 + map_top 0x1364F8-0x4, 0x12C, 1, 1 +.else map_bottom 0x1363CC, 0x12C, 0 map_top 0x1364F8, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_15:: @ 08104A00 +.ifdef EU + map_bottom 0x136528-0x4, 0x12C, 0 + map_top 0x136654-0x4, 0x12C, 1, 1 +.else map_bottom 0x136528, 0x12C, 0 map_top 0x136654, 0x12C, 1, 1 +.endif gAreaRoomMap_TreeInteriors_16:: @ 08104A18 +.ifdef EU + map_bottom 0x136694-0x4, 0x12C, 0 + map_top 0x1367C0-0x4, 0x12C, 1, 1 +.else map_bottom 0x136694, 0x12C, 0 map_top 0x1367C0, 0x12C, 1, 1 +.endif gAreaRoomMaps_TreeInteriors:: @ 08104A30 .4byte gAreaRoomMap_TreeInteriors_0 @@ -1170,60 +2068,130 @@ gAreaRoomMaps_TreeInteriors:: @ 08104A30 .4byte gAreaRoomMap_TreeInteriors_16 gAreaRoomMap_Dojos_0:: @ 08104AB0 +.ifdef EU + map_bottom 0x133F88-0x4, 0x168, 1 + map_top 0x1340B0-0x4, 0x168, 1, 1 +.else map_bottom 0x133F88, 0x168, 1 map_top 0x1340B0, 0x168, 1, 1 +.endif gAreaRoomMap_Dojos_1:: @ 08104AC8 +.ifdef EU + map_bottom 0x1340EC-0x4, 0x168, 1 + map_top 0x13421C-0x4, 0x168, 1, 1 +.else map_bottom 0x1340EC, 0x168, 1 map_top 0x13421C, 0x168, 1, 1 +.endif gAreaRoomMap_Dojos_2:: @ 08104AE0 +.ifdef EU + map_bottom 0x134254-0x4, 0x168, 1 + map_top 0x134384-0x4, 0x168, 1, 1 +.else map_bottom 0x134254, 0x168, 1 map_top 0x134384, 0x168, 1, 1 +.endif gAreaRoomMap_Dojos_3:: @ 08104AF8 +.ifdef EU + map_bottom 0x1343BC-0x4, 0x168, 1 + map_top 0x1344E0-0x4, 0x168, 1, 1 +.else map_bottom 0x1343BC, 0x168, 1 map_top 0x1344E0, 0x168, 1, 1 +.endif gAreaRoomMap_Dojos_4:: @ 08104B10 +.ifdef EU + map_bottom 0x134518-0x4, 0x168, 1 + map_top 0x13463C-0x4, 0x168, 1, 1 +.else map_bottom 0x134518, 0x168, 1 map_top 0x13463C, 0x168, 1, 1 +.endif gAreaRoomMap_Dojos_5:: @ 08104B28 +.ifdef EU + map_bottom 0x134674-0x4, 0x168, 1 + map_top 0x1347A8-0x4, 0x168, 1, 1 +.else map_bottom 0x134674, 0x168, 1 map_top 0x1347A8, 0x168, 1, 1 +.endif gAreaRoomMap_Dojos_6:: @ 08104B40 +.ifdef EU + map_bottom 0x1347E0-0x4, 0x168, 1 + map_top 0x13490C-0x4, 0x168, 1, 1 +.else map_bottom 0x1347E0, 0x168, 1 map_top 0x13490C, 0x168, 1, 1 +.endif gAreaRoomMap_Dojos_7:: @ 08104B58 +.ifdef EU + map_bottom 0x134944-0x4, 0x12C, 1 + map_top 0x1349E4-0x4, 0x12C, 1, 1 +.else map_bottom 0x134944, 0x12C, 1 map_top 0x1349E4, 0x12C, 1, 1 +.endif gAreaRoomMap_Dojos_8:: @ 08104B70 +.ifdef EU + map_bottom 0x134A28-0x4, 0x12C, 1 + map_top 0x134ACC-0x4, 0x12C, 1, 1 +.else map_bottom 0x134A28, 0x12C, 1 map_top 0x134ACC, 0x12C, 1, 1 +.endif gAreaRoomMap_Dojos_9:: @ 08104B88 +.ifdef EU + map_bottom 0x134B1C-0x4, 0x12C, 1 + map_top 0x134BC0-0x4, 0x12C, 1, 1 +.else map_bottom 0x134B1C, 0x12C, 1 map_top 0x134BC0, 0x12C, 1, 1 +.endif gAreaRoomMap_Dojos_10:: @ 08104BA0 +.ifdef EU + map_bottom 0x134C34-0x4, 0x12C, 1 + map_top 0x134CF8-0x4, 0x12C, 1, 1 +.else map_bottom 0x134C34, 0x12C, 1 map_top 0x134CF8, 0x12C, 1, 1 +.endif gAreaRoomMap_Dojos_11:: @ 08104BB8 +.ifdef EU + map_bottom 0x134D28-0x4, 0x12C, 1 + map_top 0x134E28-0x4, 0x12C, 1, 1 +.else map_bottom 0x134D28, 0x12C, 1 map_top 0x134E28, 0x12C, 1, 1 +.endif gAreaRoomMap_Dojos_12:: @ 08104BD0 +.ifdef EU + map_bottom 0x134E58-0x4, 0x12C, 1 + map_top 0x134F54-0x4, 0x12C, 1, 1 +.else map_bottom 0x134E58, 0x12C, 1 map_top 0x134F54, 0x12C, 1, 1 +.endif gAreaRoomMap_Dojos_13:: @ 08104BE8 +.ifdef EU + map_bottom 0x134F84-0x4, 0x12C, 1 + map_top 0x13507C-0x4, 0x12C, 1, 1 +.else map_bottom 0x134F84, 0x12C, 1 map_top 0x13507C, 0x12C, 1, 1 +.endif gAreaRoomMaps_Dojos:: @ 08104C00 .4byte gAreaRoomMap_Dojos_0 @@ -1244,76 +2212,166 @@ gAreaRoomMaps_Dojos:: @ 08104C00 .4byte gAreaRoomMap_Dojos_0 gAreaRoomMap_MinishCracks_0:: @ 08104C40 +.ifdef EU + map_bottom 0x1367EC-0x4, 0x12C, 0 + map_top 0x136918-0x4, 0x12C, 1, 1 +.else map_bottom 0x1367EC, 0x12C, 0 map_top 0x136918, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_1:: @ 08104C58 +.ifdef EU + map_bottom 0x136948-0x4, 0x12C, 0 + map_top 0x136A74-0x4, 0x12C, 1, 1 +.else map_bottom 0x136948, 0x12C, 0 map_top 0x136A74, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_2:: @ 08104C70 +.ifdef EU + map_bottom 0x136AC4-0x4, 0x12C, 0 + map_top 0x136BF0-0x4, 0x12C, 1, 1 +.else map_bottom 0x136AC4, 0x12C, 0 map_top 0x136BF0, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_3:: @ 08104C88 +.ifdef EU + map_bottom 0x136C44-0x4, 0x12C, 0 + map_top 0x136D70-0x4, 0x12C, 1, 1 +.else map_bottom 0x136C44, 0x12C, 0 map_top 0x136D70, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_4:: @ 08104CA0 +.ifdef EU + map_bottom 0x136DC4-0x4, 0x12C, 0 + map_top 0x136EF0-0x4, 0x12C, 1, 1 +.else map_bottom 0x136DC4, 0x12C, 0 map_top 0x136EF0, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_5:: @ 08104CB8 +.ifdef EU + map_bottom 0x136F40-0x4, 0x12C, 1 + map_top 0x137058-0x4, 0x12C, 1, 1 +.else map_bottom 0x136F40, 0x12C, 1 map_top 0x137058, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_6:: @ 08104CD0 +.ifdef EU + map_bottom 0x13709C-0x4, 0x12C, 0 + map_top 0x1371C8-0x4, 0x12C, 1, 1 +.else map_bottom 0x13709C, 0x12C, 0 map_top 0x1371C8, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_7:: @ 08104CE8 +.ifdef EU + map_bottom 0x1371F4-0x4, 0x12C, 0 + map_top 0x137320-0x4, 0x12C, 1, 1 +.else map_bottom 0x1371F4, 0x12C, 0 map_top 0x137320, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_8:: @ 08104D00 +.ifdef EU + map_bottom 0x137374-0x4, 0x12C, 0 + map_top 0x1374A0-0x4, 0x12C, 1, 1 +.else map_bottom 0x137374, 0x12C, 0 map_top 0x1374A0, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_9:: @ 08104D18 +.ifdef EU + map_bottom 0x1374D0-0x4, 0x12C, 0 + map_top 0x1375FC-0x4, 0x12C, 1, 1 +.else map_bottom 0x1374D0, 0x12C, 0 map_top 0x1375FC, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_10:: @ 08104D30 +.ifdef EU + map_bottom 0x13762C-0x4, 0x12C, 0 + map_top 0x137758-0x4, 0x12C, 1, 1 +.else map_bottom 0x13762C, 0x12C, 0 map_top 0x137758, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_11:: @ 08104D48 +.ifdef EU + map_bottom 0x137788-0x4, 0x12C, 0 + map_top 0x1378B4-0x4, 0x12C, 1, 1 +.else map_bottom 0x137788, 0x12C, 0 map_top 0x1378B4, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_12:: @ 08104D60 +.ifdef EU + map_bottom 0x1378E4-0x4, 0x12C, 0 + map_top 0x137A10-0x4, 0x12C, 1, 1 +.else map_bottom 0x1378E4, 0x12C, 0 map_top 0x137A10, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_13:: @ 08104D78 +.ifdef EU + map_bottom 0x137A40-0x4, 0x12C, 0 + map_top 0x137B6C-0x4, 0x12C, 1, 1 +.else map_bottom 0x137A40, 0x12C, 0 map_top 0x137B6C, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_14:: @ 08104D90 +.ifdef EU + map_bottom 0x137B9C-0x4, 0x12C, 1 + map_top 0x137CAC-0x4, 0x12C, 1, 1 +.else map_bottom 0x137B9C, 0x12C, 1 map_top 0x137CAC, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_15:: @ 08104DA8 +.ifdef EU + map_bottom 0x137CDC-0x4, 0x12C, 1 + map_top 0x137DEC-0x4, 0x12C, 1, 1 +.else map_bottom 0x137CDC, 0x12C, 1 map_top 0x137DEC, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_16:: @ 08104DC0 +.ifdef EU + map_bottom 0x137E1C-0x4, 0x12C, 1 + map_top 0x137F2C-0x4, 0x12C, 1, 1 +.else map_bottom 0x137E1C, 0x12C, 1 map_top 0x137F2C, 0x12C, 1, 1 +.endif gAreaRoomMap_MinishCracks_17:: @ 08104DD8 +.ifdef EU + map_bottom 0x137F64-0x4, 0x12C, 1 + map_top 0x138078-0x4, 0x12C, 1, 1 +.else map_bottom 0x137F64, 0x12C, 1 map_top 0x138078, 0x12C, 1, 1 +.endif gAreaRoomMaps_MinishCracks:: @ 08104DF0 .4byte gAreaRoomMap_MinishCracks_0 @@ -1336,48 +2394,103 @@ gAreaRoomMaps_MinishCracks:: @ 08104DF0 .4byte gAreaRoomMap_MinishCracks_17 gAreaRoomMap_ArmosInterios_0:: @ 08104E38 +.ifdef EU + map_bottom 0xA595C-0x4, 0x12C, 0 + map_top 0xA5A88-0x4, 0x12C, 1, 1 +.else map_bottom 0xA595C, 0x12C, 0 map_top 0xA5A88, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_1:: @ 08104E50 +.ifdef EU + map_bottom 0xA5AC8-0x4, 0x12C, 0 + map_top 0xA5BF4-0x4, 0x12C, 1, 1 +.else map_bottom 0xA5AC8, 0x12C, 0 map_top 0xA5BF4, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_2:: @ 08104E68 +.ifdef EU + map_bottom 0xA5C34-0x4, 0x12C, 0 + map_top 0xA5D60-0x4, 0x12C, 1, 1 +.else map_bottom 0xA5C34, 0x12C, 0 map_top 0xA5D60, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_3:: @ 08104E80 +.ifdef EU + map_bottom 0xA5DA0-0x4, 0x12C, 0 + map_top 0xA5ECC-0x4, 0x12C, 1, 1 +.else map_bottom 0xA5DA0, 0x12C, 0 map_top 0xA5ECC, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_4:: @ 08104E98 +.ifdef EU + map_bottom 0xA5F0C-0x4, 0x12C, 0 + map_top 0xA6038-0x4, 0x12C, 1, 1 +.else map_bottom 0xA5F0C, 0x12C, 0 map_top 0xA6038, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_5:: @ 08104EB0 +.ifdef EU + map_bottom 0xA6078-0x4, 0x12C, 0 + map_top 0xA61A4-0x4, 0x12C, 1, 1 +.else map_bottom 0xA6078, 0x12C, 0 map_top 0xA61A4, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_6:: @ 08104EC8 +.ifdef EU + map_bottom 0xA61E4-0x4, 0x12C, 0 + map_top 0xA6310-0x4, 0x12C, 1, 1 +.else map_bottom 0xA61E4, 0x12C, 0 map_top 0xA6310, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_7:: @ 08104EE0 +.ifdef EU + map_bottom 0xA6350-0x4, 0x12C, 0 + map_top 0xA647C-0x4, 0x12C, 1, 1 +.else map_bottom 0xA6350, 0x12C, 0 map_top 0xA647C, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_8:: @ 08104EF8 +.ifdef EU + map_bottom 0xA64BC-0x4, 0x12C, 0 + map_top 0xA65E8-0x4, 0x12C, 1, 1 +.else map_bottom 0xA64BC, 0x12C, 0 map_top 0xA65E8, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_9:: @ 08104F10 +.ifdef EU + map_bottom 0xA6628-0x4, 0x12C, 0 + map_top 0xA6754-0x4, 0x12C, 1, 1 +.else map_bottom 0xA6628, 0x12C, 0 map_top 0xA6754, 0x12C, 1, 1 +.endif gAreaRoomMap_ArmosInterios_10:: @ 08104F28 +.ifdef EU + map_bottom 0xA6794-0x4, 0x12C, 0 + map_top 0xA68C0-0x4, 0x12C, 1, 1 +.else map_bottom 0xA6794, 0x12C, 0 map_top 0xA68C0, 0x12C, 1, 1 +.endif gAreaRoomMaps_ArmosInteriors:: @ 08104F40 .4byte gAreaRoomMap_ArmosInterios_0 @@ -1393,16 +2506,32 @@ gAreaRoomMaps_ArmosInteriors:: @ 08104F40 .4byte gAreaRoomMap_ArmosInterios_10 gAreaRoomMap_MinishRafters_0:: @ 08104F6C +.ifdef EU + map_bottom 0x1380A8-0x4, 0x3E0, 1, 1 +.else map_bottom 0x1380A8, 0x3E0, 1, 1 +.endif gAreaRoomMap_MinishRafters_1:: @ 08104F78 +.ifdef EU + map_bottom 0x1382F4-0x4, 0x3E0, 1, 1 +.else map_bottom 0x1382F4, 0x3E0, 1, 1 +.endif gAreaRoomMap_MinishRafters_2:: @ 08104F84 +.ifdef EU + map_bottom 0x138510-0x4, 0x3E0, 1, 1 +.else map_bottom 0x138510, 0x3E0, 1, 1 +.endif gAreaRoomMap_MinishRafters_3:: @ 08104F90 +.ifdef EU + map_bottom 0x1387B4-0x4, 0x3E0, 1, 1 +.else map_bottom 0x1387B4, 0x3E0, 1, 1 +.endif gAreaRoomMaps_MinishRafters:: @ 08104F9C .4byte gAreaRoomMap_MinishRafters_0 @@ -1411,32 +2540,62 @@ gAreaRoomMaps_MinishRafters:: @ 08104F9C .4byte gAreaRoomMap_MinishRafters_3 gAreaRoomMap_GoronCave_0:: @ 08104FAC +.ifdef EU + map_bottom 0xB0054-0x4, 0x12C, 1 + map_top 0xB0118-0x4, 0x12C, 1, 1 +.else map_bottom 0xB0054, 0x12C, 1 map_top 0xB0118, 0x12C, 1, 1 +.endif gAreaRoomMap_GoronCave_1:: @ 08104FC4 +.ifdef EU + map_bottom 0xB015C-0x4, 0x546, 1 + map_top 0xB03E0-0x4, 0x546, 1, 1 +.else map_bottom 0xB015C, 0x546, 1 map_top 0xB03E0, 0x546, 1, 1 +.endif gAreaRoomMaps_GoronCave:: @ 08104FDC .4byte gAreaRoomMap_GoronCave_0 .4byte gAreaRoomMap_GoronCave_1 gAreaRoomMap_WindTribeTower_0:: @ 08104FE4 +.ifdef EU + map_bottom 0x138BD8-0x4, 0x276, 1 + map_top 0x138DB8-0x4, 0x276, 1, 1 +.else map_bottom 0x138BD8, 0x276, 1 map_top 0x138DB8, 0x276, 1, 1 +.endif gAreaRoomMap_WindTribeTower_1:: @ 08104FFC +.ifdef EU + map_bottom 0x138E3C-0x4, 0x276, 1 + map_top 0x139028-0x4, 0x276, 1, 1 +.else map_bottom 0x138E3C, 0x276, 1 map_top 0x139028, 0x276, 1, 1 +.endif gAreaRoomMap_WindTribeTower_2:: @ 08105014 +.ifdef EU + map_bottom 0x1390A4-0x4, 0x276, 1 + map_top 0x13927C-0x4, 0x276, 1, 1 +.else map_bottom 0x1390A4, 0x276, 1 map_top 0x13927C, 0x276, 1, 1 +.endif gAreaRoomMap_WindTribeTower_3:: @ 0810502C +.ifdef EU + map_bottom 0x1392FC-0x4, 0x276, 1 + map_top 0x1394EC-0x4, 0x276, 1, 1 +.else map_bottom 0x1392FC, 0x276, 1 map_top 0x1394EC, 0x276, 1, 1 +.endif gAreaRoomMaps_WindTribeTower:: @ 08105044 .4byte gAreaRoomMap_WindTribeTower_0 @@ -1445,51 +2604,106 @@ gAreaRoomMaps_WindTribeTower:: @ 08105044 .4byte gAreaRoomMap_WindTribeTower_3 gAreaRoomMap_WindTribeTowerRoof_0:: @ 08105054 +.ifdef EU + map_bottom 0x13954C-0x4, 0x30C, 1 + map_top 0x1397A0-0x4, 0x30C, 1, 1 +.else map_bottom 0x13954C, 0x30C, 1 map_top 0x1397A0, 0x30C, 1, 1 +.endif gAreaRoomMaps_WindTribeTowerRoof:: @ 0810506C .4byte gAreaRoomMap_WindTribeTowerRoof_0 gAreaRoomMap_MinishCaves_0:: @ 08105070 +.ifdef EU + map_bottom 0xC12D4-0x4, 0x474, 1 + map_top 0xC15F4-0x4, 0x474, 1, 1 +.else map_bottom 0xC12D4, 0x474, 1 map_top 0xC15F4, 0x474, 1, 1 +.endif gAreaRoomMap_MinishCaves_1:: @ 08105088 +.ifdef EU + map_bottom 0xC16AC-0x4, 0x41A, 1 + map_top 0xC198C-0x4, 0x41A, 1, 1 +.else map_bottom 0xC16AC, 0x41A, 1 map_top 0xC198C, 0x41A, 1, 1 +.endif gAreaRoomMap_MinishCaves_2:: @ 081050A0 +.ifdef EU + map_bottom 0xC1A30-0x4, 0x1FE, 1 + map_top 0xC1B90-0x4, 0x1FE, 1, 1 +.else map_bottom 0xC1A30, 0x1FE, 1 map_top 0xC1B90, 0x1FE, 1, 1 +.endif gAreaRoomMap_MinishCaves_3:: @ 081050B8 +.ifdef EU + map_bottom 0xC1BEC-0x4, 0x4CE, 1 + map_top 0xC1EDC-0x4, 0x4CE, 1, 1 +.else map_bottom 0xC1BEC, 0x4CE, 1 map_top 0xC1EDC, 0x4CE, 1, 1 +.endif gAreaRoomMap_MinishCaves_4:: @ 081050D0 +.ifdef EU + map_bottom 0xC1FA0-0x4, 0x1C2, 1 + map_top 0xC2124-0x4, 0x1C2, 1, 1 +.else map_bottom 0xC1FA0, 0x1C2, 1 map_top 0xC2124, 0x1C2, 1, 1 +.endif gAreaRoomMap_MinishCaves_5:: @ 081050E8 +.ifdef EU + map_bottom 0xC2174-0x4, 0x258, 1 + map_top 0xC2368-0x4, 0x258, 1, 1 +.else map_bottom 0xC2174, 0x258, 1 map_top 0xC2368, 0x258, 1, 1 +.endif gAreaRoomMap_MinishCaves_6:: @ 08105100 +.ifdef EU + map_bottom 0xC23D8-0x4, 0x258, 1 + map_top 0xC25C4-0x4, 0x258, 1, 1 +.else map_bottom 0xC23D8, 0x258, 1 map_top 0xC25C4, 0x258, 1, 1 +.endif gAreaRoomMap_MinishCaves_7:: @ 08105118 +.ifdef EU + map_bottom 0xC262C-0x4, 0x744, 1 + map_top 0xC2A54-0x4, 0x744, 1, 1 +.else map_bottom 0xC262C, 0x744, 1 map_top 0xC2A54, 0x744, 1, 1 +.endif gAreaRoomMap_MinishCaves_8:: @ 08105130 +.ifdef EU + map_bottom 0xC2B64-0x4, 0x4B0, 1 + map_top 0xC2DFC-0x4, 0x4B0, 1, 1 +.else map_bottom 0xC2B64, 0x4B0, 1 map_top 0xC2DFC, 0x4B0, 1, 1 +.endif gAreaRoomMap_MinishCaves_9:: @ 08105148 +.ifdef EU + map_bottom 0xC2E94-0x4, 0x618, 1 + map_top 0xC3294-0x4, 0x618, 1, 1 +.else map_bottom 0xC2E94, 0x618, 1 map_top 0xC3294, 0x618, 1, 1 +.endif gAreaRoomMaps_MinishCaves:: @ 08105160 .4byte gAreaRoomMap_MinishCaves_0 @@ -1504,114 +2718,219 @@ gAreaRoomMaps_MinishCaves:: @ 08105160 .4byte gAreaRoomMap_MinishCaves_9 gAreaRoomMap_CastleGardenMinishHoles_0:: @ 08105188 +.ifdef EU + map_bottom 0xC3368-0x4, 0x1C2, 1 + map_top 0xC3508-0x4, 0x1C2, 1, 1 +.else map_bottom 0xC3368, 0x1C2, 1 map_top 0xC3508, 0x1C2, 1, 1 +.endif gAreaRoomMap_CastleGardenMinishHoles_1:: @ 081051A0 +.ifdef EU + map_bottom 0xC3554-0x4, 0x1C2, 1 + map_top 0xC36F0-0x4, 0x1C2, 1, 1 +.else map_bottom 0xC3554, 0x1C2, 1 map_top 0xC36F0, 0x1C2, 1, 1 +.endif gAreaRoomMaps_CastleGardenMinishHoles:: @ 081051B8 .4byte gAreaRoomMap_CastleGardenMinishHoles_0 .4byte gAreaRoomMap_CastleGardenMinishHoles_1 gAreaRoomMap_37_0:: @ 081051C0 +.ifdef EU + map_bottom 0xC373C-0x4, 0x1C2, 1 + map_top 0xC38F0-0x4, 0x1C2, 1, 1 +.else map_bottom 0xC373C, 0x1C2, 1 map_top 0xC38F0, 0x1C2, 1, 1 +.endif gAreaRoomMap_37_1:: @ 081051D8 +.ifdef EU + map_bottom 0xC3988-0x4, 0x1C2, 1 + map_top 0xC3B38-0x4, 0x1C2, 1, 1 +.else map_bottom 0xC3988, 0x1C2, 1 map_top 0xC3B38, 0x1C2, 1, 1 +.endif gAreaRoomMaps_37:: @ 081051F0 .4byte gAreaRoomMap_37_0 .4byte gAreaRoomMap_37_1 gAreaRoomMap_EzloCutscene_0:: @ 081051F8 +.ifdef EU + map_bottom 0x1389B8-0x4, 0x258, 1 + map_top 0x138B50-0x4, 0x258, 1, 1 +.else map_bottom 0x1389B8, 0x258, 1 map_top 0x138B50, 0x258, 1, 1 +.endif gAreaRoomMaps_EzloCutscene:: @ 08105210 .4byte gAreaRoomMap_EzloCutscene_0 gAreaRoomMap_HyruleTownUnderground_0:: @ 08105214 +.ifdef EU + map_bottom 0x1AA7A4-0x4, 0xE10, 1 + map_top 0x1AAC74-0x4, 0xE10, 1, 1 +.else map_bottom 0x1AA7A4, 0xE10, 1 map_top 0x1AAC74, 0xE10, 1, 1 +.endif gAreaRoomMap_HyruleTownUnderground_1:: @ 0810522C +.ifdef EU + map_bottom 0x1AAE34-0x4, 0x12C, 1 + map_top 0x1AAF18-0x4, 0x12C, 1, 1 +.else map_bottom 0x1AAE34, 0x12C, 1 map_top 0x1AAF18, 0x12C, 1, 1 +.endif gAreaRoomMaps_HyruleTownUnderground:: @ 08105244 .4byte gAreaRoomMap_HyruleTownUnderground_0 .4byte gAreaRoomMap_HyruleTownUnderground_1 gAreaRoomMap_GardenFountains_0:: @ 0810524C +.ifdef EU + map_bottom 0x1AAF44-0x4, 0x12C, 1 + map_top 0x1AB024-0x4, 0x12C, 1, 1 +.else map_bottom 0x1AAF44, 0x12C, 1 map_top 0x1AB024, 0x12C, 1, 1 +.endif gAreaRoomMap_GardenFountains_1:: @ 08105264 +.ifdef EU + map_bottom 0x1AB058-0x4, 0x12C, 1 + map_top 0x1AB150-0x4, 0x12C, 1, 1 +.else map_bottom 0x1AB058, 0x12C, 1 map_top 0x1AB150, 0x12C, 1, 1 +.endif gAreaRoomMaps_GardenFountains:: @ 0810527C .4byte gAreaRoomMap_GardenFountains_0 .4byte gAreaRoomMap_GardenFountains_1 gAreaRoomMap_HyruleCastleCellar_0:: @ 08105284 +.ifdef EU + map_bottom 0x1AB184-0x4, 0x3C0, 1 + map_top 0x1AB2D4-0x4, 0x3C0, 1, 1 +.else map_bottom 0x1AB184, 0x3C0, 1 map_top 0x1AB2D4, 0x3C0, 1, 1 +.endif gAreaRoomMap_HyruleCastleCellar_1:: @ 0810529C +.ifdef EU + map_bottom 0x1AB354-0x4, 0x1E0, 1 + map_top 0x1AB428-0x4, 0x1E0, 1, 1 +.else map_bottom 0x1AB354, 0x1E0, 1 map_top 0x1AB428, 0x1E0, 1, 1 +.endif gAreaRoomMaps_HyruleCastleCellar:: @ 081052B4 .4byte gAreaRoomMap_HyruleCastleCellar_0 .4byte gAreaRoomMap_HyruleCastleCellar_1 gAreaRoomMap_SimonsSimulation_0:: @ 081052BC +.ifdef EU + map_bottom 0x1AB474-0x4, 0x23A, 1 + map_top 0x1AB5A8-0x4, 0x23A, 1, 1 +.else map_bottom 0x1AB474, 0x23A, 1 map_top 0x1AB5A8, 0x23A, 1, 1 +.endif gAreaRoomMaps_SimonsSimulation:: @ 081052D4 .4byte gAreaRoomMap_SimonsSimulation_0 gAreaRoomMap_40_0:: @ 081052D8 +.ifdef EU + map_bottom 0x1A93EC-0x4, 0x286, 1 + map_top 0x1A958C-0x4, 0x286, 1, 1 +.else map_bottom 0x1A93EC, 0x286, 1 map_top 0x1A958C, 0x286, 1, 1 +.endif gAreaRoomMap_40_1:: @ 081052F0 +.ifdef EU + map_bottom 0x1A95F8-0x4, 0x30E, 1 + map_top 0x1A982C-0x4, 0x30E, 1, 1 +.else map_bottom 0x1A95F8, 0x30E, 1 map_top 0x1A982C, 0x30E, 1, 1 +.endif gAreaRoomMap_40_2:: @ 08105308 +.ifdef EU + map_bottom 0x1A98CC-0x4, 0x286, 1 + map_top 0x1A9A30-0x4, 0x286, 1, 1 +.else map_bottom 0x1A98CC, 0x286, 1 map_top 0x1A9A30, 0x286, 1, 1 +.endif gAreaRoomMap_40_3:: @ 08105320 +.ifdef EU + map_bottom 0x1A9AD0-0x4, 0x286, 1 + map_top 0x1A9C28-0x4, 0x286, 1, 1 +.else map_bottom 0x1A9AD0, 0x286, 1 map_top 0x1A9C28, 0x286, 1, 1 +.endif gAreaRoomMap_40_4:: @ 08105338 +.ifdef EU + map_bottom 0x1A9CC8-0x4, 0x30E, 1 + map_top 0x1A9E68-0x4, 0x30E, 1, 1 +.else map_bottom 0x1A9CC8, 0x30E, 1 map_top 0x1A9E68, 0x30E, 1, 1 +.endif gAreaRoomMap_40_5:: @ 08105350 +.ifdef EU + map_bottom 0x1A9EF4-0x4, 0x286, 1 + map_top 0x1AA084-0x4, 0x286, 1, 1 +.else map_bottom 0x1A9EF4, 0x286, 1 map_top 0x1AA084, 0x286, 1, 1 +.endif gAreaRoomMap_40_6:: @ 08105368 +.ifdef EU + map_bottom 0x1AA114-0x4, 0x520, 1 + map_top 0x1AA384-0x4, 0x520, 1, 1 +.else map_bottom 0x1AA114, 0x520, 1 map_top 0x1AA384, 0x520, 1, 1 +.endif gAreaRoomMap_40_7:: @ 08105380 +.ifdef EU + map_bottom 0x1AA468-0x4, 0x28A, 1 + map_top 0x1AA5AC-0x4, 0x28A, 1, 1 +.else map_bottom 0x1AA468, 0x28A, 1 map_top 0x1AA5AC, 0x28A, 1, 1 +.endif gAreaRoomMap_40_8:: @ 08105398 +.ifdef EU + map_bottom 0x1AA628-0x4, 0x200, 1 + map_top 0x1AA72C-0x4, 0x200, 1, 1 +.else map_bottom 0x1AA628, 0x200, 1 map_top 0x1AA72C, 0x200, 1, 1 +.endif gAreaRoomMaps_40:: @ 081053B0 .4byte gAreaRoomMap_40_0 @@ -1625,92 +2944,202 @@ gAreaRoomMaps_40:: @ 081053B0 .4byte gAreaRoomMap_40_8 gAreaRoomMap_DeepwoodShrine_0:: @ 081053D4 +.ifdef EU + map_bottom 0x1BF038-0x4, 0x1FE, 1 + map_top 0x1BF14C-0x4, 0x1FE, 1, 1 +.else map_bottom 0x1BF038, 0x1FE, 1 map_top 0x1BF14C, 0x1FE, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_1:: @ 081053EC +.ifdef EU + map_bottom 0x1BF274-0x4, 0x2EE, 1 + map_top 0x1BF444-0x4, 0x2EE, 1, 1 +.else map_bottom 0x1BF274, 0x2EE, 1 map_top 0x1BF444, 0x2EE, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_2:: @ 08105404 +.ifdef EU + map_bottom 0x1BF5AC-0x4, 0x276, 1 + map_top 0x1BF758-0x4, 0x276, 1, 1 +.else map_bottom 0x1BF5AC, 0x276, 1 map_top 0x1BF758, 0x276, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_3:: @ 0810541C +.ifdef EU + map_bottom 0x1BF89C-0x4, 0x1FE, 1 + map_top 0x1BFA34-0x4, 0x1FE, 1, 1 +.else map_bottom 0x1BF89C, 0x1FE, 1 map_top 0x1BFA34, 0x1FE, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_4:: @ 08105434 +.ifdef EU + map_bottom 0x1BFB34-0x4, 0x154, 1 + map_top 0x1BFC58-0x4, 0x154, 1, 1 +.else map_bottom 0x1BFB34, 0x154, 1 map_top 0x1BFC58, 0x154, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_5:: @ 0810544C +.ifdef EU + map_bottom 0x1BFD30-0x4, 0x352, 1 + map_top 0x1BFFA0-0x4, 0x352, 1, 1 +.else map_bottom 0x1BFD30, 0x352, 1 map_top 0x1BFFA0, 0x352, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_6:: @ 08105464 +.ifdef EU + map_bottom 0x1C00F8-0x4, 0x5AA, 1 + map_top 0x1C0470-0x4, 0x5AA, 1, 1 +.else map_bottom 0x1C00F8, 0x5AA, 1 map_top 0x1C0470, 0x5AA, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_7:: @ 0810547C +.ifdef EU + map_bottom 0x1C063C-0x4, 0x352, 1 + map_top 0x1C088C-0x4, 0x352, 1, 1 +.else map_bottom 0x1C063C, 0x352, 1 map_top 0x1C088C, 0x352, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_8:: @ 08105494 +.ifdef EU + map_bottom 0x1C09C0-0x4, 0x198, 1 + map_top 0x1C0AF4-0x4, 0x198, 1, 1 +.else map_bottom 0x1C09C0, 0x198, 1 map_top 0x1C0AF4, 0x198, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_9:: @ 081054AC +.ifdef EU + map_bottom 0x1C0BEC-0x4, 0x1BA, 1 + map_top 0x1C0D48-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1C0BEC, 0x1BA, 1 map_top 0x1C0D48, 0x1BA, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_10:: @ 081054C4 +.ifdef EU + map_bottom 0x1C0E30-0x4, 0x2CA, 1 + map_top 0x1C1008-0x4, 0x2CA, 1, 1 +.else map_bottom 0x1C0E30, 0x2CA, 1 map_top 0x1C1008, 0x2CA, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_11:: @ 081054DC +.ifdef EU + map_bottom 0x1C1154-0x4, 0x2CA, 1 + map_top 0x1C132C-0x4, 0x2CA, 1, 1 +.else map_bottom 0x1C1154, 0x2CA, 1 map_top 0x1C132C, 0x2CA, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_12:: @ 081054F4 +.ifdef EU + map_bottom 0x1C14E4-0x4, 0x2CA, 1 + map_top 0x1C1690-0x4, 0x2CA, 1, 1 +.else map_bottom 0x1C14E4, 0x2CA, 1 map_top 0x1C1690, 0x2CA, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_13:: @ 0810550C +.ifdef EU + map_bottom 0x1C1800-0x4, 0x2EE, 1 + map_top 0x1C1A34-0x4, 0x2EE, 1, 1 +.else map_bottom 0x1C1800, 0x2EE, 1 map_top 0x1C1A34, 0x2EE, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_14:: @ 08105524 +.ifdef EU + map_bottom 0x1C1B10-0x4, 0x276, 1 + map_top 0x1C1D08-0x4, 0x276, 1, 1 +.else map_bottom 0x1C1B10, 0x276, 1 map_top 0x1C1D08, 0x276, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_15:: @ 0810553C +.ifdef EU + map_bottom 0x1C1DDC-0x4, 0x198, 1 + map_top 0x1C1F14-0x4, 0x198, 1, 1 +.else map_bottom 0x1C1DDC, 0x198, 1 map_top 0x1C1F14, 0x198, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_16:: @ 08105554 +.ifdef EU + map_bottom 0x1C1FB4-0x4, 0x5AA, 1 + map_top 0x1C2264-0x4, 0x5AA, 1, 1 +.else map_bottom 0x1C1FB4, 0x5AA, 1 map_top 0x1C2264, 0x5AA, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_17:: @ 0810556C +.ifdef EU + map_bottom 0x1C2490-0x4, 0x264, 1 + map_top 0x1C25D4-0x4, 0x264, 1, 1 +.else map_bottom 0x1C2490, 0x264, 1 map_top 0x1C25D4, 0x264, 1, 1 +.endif gAreaRoomMap_DeepwoodShrineBoss_0:: @ 08105584 +.ifdef EU + map_bottom 0x1C26EC-0x4, 0x1FE, 1 + map_top 0x1C28C4-0x4, 0x1FE, 1, 1 +.else map_bottom 0x1C26EC, 0x1FE, 1 map_top 0x1C28C4, 0x1FE, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_18:: @ 0810559C +.ifdef EU + map_bottom 0x1C296C-0x4, 0x2CA, 1 + map_top 0x1C2B40-0x4, 0x2CA, 1, 1 +.else map_bottom 0x1C296C, 0x2CA, 1 map_top 0x1C2B40, 0x2CA, 1, 1 +.endif gAreaRoomMap_DeepwoodShrine_19:: @ 081055B4 +.ifdef EU + map_bottom 0x1C2CF4-0x4, 0x12C, 1 + map_top 0x1C2D2C-0x4, 0x12C, 1, 1 +.else map_bottom 0x1C2CF4, 0x12C, 1 map_top 0x1C2D2C, 0x12C, 1, 1 +.endif gAreaRoomMap_DeepwoodShrineEntry_0:: @ 081055CC +.ifdef EU + map_bottom 0x1C2D80-0x4, 0x1C2, 0 + map_top 0x1C2F44-0x4, 0x1C2, 1, 1 +.else map_bottom 0x1C2D80, 0x1C2, 0 map_top 0x1C2F44, 0x1C2, 1, 1 +.endif gAreaRoomMaps_DeepwoodShrine:: @ 081055E4 .4byte gAreaRoomMap_DeepwoodShrine_0 @@ -1754,76 +3183,166 @@ gAreaRoomMaps_DeepwoodShrineEntry:: @ 0810566C .4byte gAreaRoomMap_DeepwoodShrineEntry_0 gAreaRoomMap_CaveOfFlames_0:: @ 08105670 +.ifdef EU + map_bottom 0x1D6458-0x4, 0x30E, 1 + map_top 0x1D65CC-0x4, 0x30E, 1, 1 +.else map_bottom 0x1D6458, 0x30E, 1 map_top 0x1D65CC, 0x30E, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_1:: @ 08105688 +.ifdef EU + map_bottom 0x1D67A8-0x4, 0x30E, 1 + map_top 0x1D6908-0x4, 0x30E, 1, 1 +.else map_bottom 0x1D67A8, 0x30E, 1 map_top 0x1D6908, 0x30E, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_2:: @ 081056A0 +.ifdef EU + map_bottom 0x1D6AE0-0x4, 0x4AC, 1 + map_top 0x1D6C00-0x4, 0x4AC, 1, 1 +.else map_bottom 0x1D6AE0, 0x4AC, 1 map_top 0x1D6C00, 0x4AC, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_3:: @ 081056B8 +.ifdef EU + map_bottom 0x1D6F10-0x4, 0x1BA, 1 + map_top 0x1D6F4C-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1D6F10, 0x1BA, 1 map_top 0x1D6F4C, 0x1BA, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_4:: @ 081056D0 +.ifdef EU + map_bottom 0x1D70D4-0x4, 0x74E, 1 + map_top 0x1D72BC-0x4, 0x74E, 1, 1 +.else map_bottom 0x1D70D4, 0x74E, 1 map_top 0x1D72BC, 0x74E, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_5:: @ 081056E8 +.ifdef EU + map_bottom 0x1D76E8-0x4, 0x1BA, 1 + map_top 0x1D7724-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1D76E8, 0x1BA, 1 map_top 0x1D7724, 0x1BA, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_6:: @ 08105700 +.ifdef EU + map_bottom 0x1D78CC-0x4, 0x5B6, 1 + map_top 0x1D7984-0x4, 0x5B6, 1, 1 +.else map_bottom 0x1D78CC, 0x5B6, 1 map_top 0x1D7984, 0x5B6, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_7:: @ 08105718 +.ifdef EU + map_bottom 0x1D7CF8-0x4, 0x1FE, 1 + map_top 0x1D7D3C-0x4, 0x1FE, 1, 1 +.else map_bottom 0x1D7CF8, 0x1FE, 1 map_top 0x1D7D3C, 0x1FE, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_8:: @ 08105730 +.ifdef EU + map_bottom 0x1D7F00-0x4, 0x508, 1 + map_top 0x1D8158-0x4, 0x508, 1, 1 +.else map_bottom 0x1D7F00, 0x508, 1 map_top 0x1D8158, 0x508, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_9:: @ 08105748 +.ifdef EU + map_bottom 0x1D8420-0x4, 0x508, 1 + map_top 0x1D869C-0x4, 0x508, 1, 1 +.else map_bottom 0x1D8420, 0x508, 1 map_top 0x1D869C, 0x508, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_10:: @ 08105760 +.ifdef EU + map_bottom 0x1D8940-0x4, 0x9D8, 1 + map_top 0x1D8CAC-0x4, 0x9D8, 1, 1 +.else map_bottom 0x1D8940, 0x9D8, 1 map_top 0x1D8CAC, 0x9D8, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_11:: @ 08105778 +.ifdef EU + map_bottom 0x1D9094-0x4, 0x4EC, 1 + map_top 0x1D9264-0x4, 0x4EC, 1, 1 +.else map_bottom 0x1D9094, 0x4EC, 1 map_top 0x1D9264, 0x4EC, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_12:: @ 08105790 +.ifdef EU + map_bottom 0x1D940C-0x4, 0x276, 1 + map_top 0x1D956C-0x4, 0x276, 1, 1 +.else map_bottom 0x1D940C, 0x276, 1 map_top 0x1D956C, 0x276, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_13:: @ 081057A8 +.ifdef EU + map_bottom 0x1D9688-0x4, 0x276, 1 + map_top 0x1D97E0-0x4, 0x276, 1, 1 +.else map_bottom 0x1D9688, 0x276, 1 map_top 0x1D97E0, 0x276, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_14:: @ 081057C0 +.ifdef EU + map_bottom 0x1D992C-0x4, 0x276, 1 + map_top 0x1D9A28-0x4, 0x276, 1, 1 +.else map_bottom 0x1D992C, 0x276, 1 map_top 0x1D9A28, 0x276, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_15:: @ 081057D8 +.ifdef EU + map_bottom 0x1D9BA8-0x4, 0x186, 1 + map_top 0x1D9BE0-0x4, 0x186, 1, 1 +.else map_bottom 0x1D9BA8, 0x186, 1 map_top 0x1D9BE0, 0x186, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_16:: @ 081057F0 +.ifdef EU + map_bottom 0x1D9D48-0x4, 0x186, 1 + map_top 0x1D9D80-0x4, 0x186, 1, 1 +.else map_bottom 0x1D9D48, 0x186, 1 map_top 0x1D9D80, 0x186, 1, 1 +.endif gAreaRoomMap_CaveOfFlames_17:: @ 08105808 +.ifdef EU + map_bottom 0x1D9EC8-0x4, 0x9D8, 1 + map_top 0x1DA3B4-0x4, 0x9D8, 1, 1 +.else map_bottom 0x1D9EC8, 0x9D8, 1 map_top 0x1DA3B4, 0x9D8, 1, 1 +.endif gAreaRoomMaps_CaveOfFlames:: @ 08105820 .4byte gAreaRoomMap_CaveOfFlames_0 @@ -1852,107 +3371,232 @@ gAreaRoomMaps_CaveOfFlames:: @ 08105820 .4byte gAreaRoomMap_CaveOfFlames_17 gAreaRoomMap_CaveOfFlamesBoss_0:: @ 08105880 +.ifdef EU + map_bottom 0x1DA6E8-0x4, 0x360, 1 + map_top 0x1DA990-0x4, 0x360, 1, 1 +.else map_bottom 0x1DA6E8, 0x360, 1 map_top 0x1DA990, 0x360, 1, 1 +.endif gAreaRoomMaps_CaveOfFlamesBoss:: @ 08105898 .4byte gAreaRoomMap_CaveOfFlamesBoss_0 gAreaRoomMap_FortressOfWinds_0:: @ 0810589C +.ifdef EU + map_bottom 0x1F19E8-0x4, 0x1BA, 1 + map_top 0x1F1B1C-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F19E8, 0x1BA, 1 map_top 0x1F1B1C, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_1:: @ 081058B4 +.ifdef EU + map_bottom 0x1F1BCC-0x4, 0x1BA, 1 + map_top 0x1F1CF0-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F1BCC, 0x1BA, 1 map_top 0x1F1CF0, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_2:: @ 081058CC +.ifdef EU + map_bottom 0x1F1DCC-0x4, 0x804, 1 + map_top 0x1F213C-0x4, 0x804, 1, 1 +.else map_bottom 0x1F1DCC, 0x804, 1 map_top 0x1F213C, 0x804, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_3:: @ 081058E4 +.ifdef EU + map_bottom 0x1F23E0-0x4, 0x1DC, 1 + map_top 0x1F253C-0x4, 0x1DC, 1, 1 +.else map_bottom 0x1F23E0, 0x1DC, 1 map_top 0x1F253C, 0x1DC, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_4:: @ 081058FC +.ifdef EU + map_bottom 0x1F2600-0x4, 0x364, 1 + map_top 0x1F2834-0x4, 0x364, 1, 1 +.else map_bottom 0x1F2600, 0x364, 1 map_top 0x1F2834, 0x364, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_5:: @ 08105914 +.ifdef EU + map_bottom 0x1F2A14-0x4, 0x1BA, 1 + map_top 0x1F2A50-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F2A14, 0x1BA, 1 map_top 0x1F2A50, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_6:: @ 0810592C +.ifdef EU + map_bottom 0x1F2C14-0x4, 0x1BA, 1 + map_top 0x1F2C9C-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F2C14, 0x1BA, 1 map_top 0x1F2C9C, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_7:: @ 08105944 +.ifdef EU + map_bottom 0x1F2E0C-0x4, 0x374, 1 + map_top 0x1F2FBC-0x4, 0x374, 1, 1 +.else map_bottom 0x1F2E0C, 0x374, 1 map_top 0x1F2FBC, 0x374, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_8:: @ 0810595C +.ifdef EU + map_bottom 0x1F3174-0x4, 0x1BA, 1 + map_top 0x1F31B0-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F3174, 0x1BA, 1 map_top 0x1F31B0, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_9:: @ 08105974 +.ifdef EU + map_bottom 0x1F3320-0x4, 0x374, 1 + map_top 0x1F3390-0x4, 0x374, 1, 1 +.else map_bottom 0x1F3320, 0x374, 1 map_top 0x1F3390, 0x374, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_10:: @ 0810598C +.ifdef EU + map_bottom 0x1F3640-0x4, 0x1BA, 1 + map_top 0x1F367C-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F3640, 0x1BA, 1 map_top 0x1F367C, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_11:: @ 081059A4 +.ifdef EU + map_bottom 0x1F382C-0x4, 0x256, 1 + map_top 0x1F3998-0x4, 0x256, 1, 1 +.else map_bottom 0x1F382C, 0x256, 1 map_top 0x1F3998, 0x256, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_12:: @ 081059BC +.ifdef EU + map_bottom 0x1F3A40-0x4, 0x1BA, 1 + map_top 0x1F3B3C-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F3A40, 0x1BA, 1 map_top 0x1F3B3C, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_13:: @ 081059D4 +.ifdef EU + map_bottom 0x1F3C38-0x4, 0x1BA, 1 + map_top 0x1F3D10-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F3C38, 0x1BA, 1 map_top 0x1F3D10, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_14:: @ 081059EC +.ifdef EU + map_bottom 0x1F3DF0-0x4, 0x374, 1 + map_top 0x1F4054-0x4, 0x374, 1, 1 +.else map_bottom 0x1F3DF0, 0x374, 1 map_top 0x1F4054, 0x374, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_15:: @ 08105A04 +.ifdef EU + map_bottom 0x1F41C4-0x4, 0x1BA, 1 + map_top 0x1F42A4-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F41C4, 0x1BA, 1 map_top 0x1F42A4, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_16:: @ 08105A1C +.ifdef EU + map_bottom 0x1F4398-0x4, 0x1BA, 1 + map_top 0x1F443C-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F4398, 0x1BA, 1 map_top 0x1F443C, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_17:: @ 08105A34 +.ifdef EU + map_bottom 0x1F458C-0x4, 0x1BA, 1 + map_top 0x1F46A4-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F458C, 0x1BA, 1 map_top 0x1F46A4, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_18:: @ 08105A4C +.ifdef EU + map_bottom 0x1F475C-0x4, 0x1BA, 1 + map_top 0x1F48A0-0x4, 0x1BA, 1, 1 +.else map_bottom 0x1F475C, 0x1BA, 1 map_top 0x1F48A0, 0x1BA, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_19:: @ 08105A64 +.ifdef EU + map_bottom 0x1F494C-0x4, 0x186, 1 + map_top 0x1F4A34-0x4, 0x186, 1, 1 +.else map_bottom 0x1F494C, 0x186, 1 map_top 0x1F4A34, 0x186, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_20:: @ 08105A7C +.ifdef EU + map_bottom 0x1F4AE4-0x4, 0x186, 1 + map_top 0x1F4BE8-0x4, 0x186, 1, 1 +.else map_bottom 0x1F4AE4, 0x186, 1 map_top 0x1F4BE8, 0x186, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_21:: @ 08105A94 +.ifdef EU + map_bottom 0x1F4C8C-0x4, 0x186, 1 + map_top 0x1F4D90-0x4, 0x186, 1, 1 +.else map_bottom 0x1F4C8C, 0x186, 1 map_top 0x1F4D90, 0x186, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_22:: @ 08105AAC +.ifdef EU + map_bottom 0x1F4E3C-0x4, 0x186, 1 + map_top 0x1F4F18-0x4, 0x186, 1, 1 +.else map_bottom 0x1F4E3C, 0x186, 1 map_top 0x1F4F18, 0x186, 1, 1 +.endif gAreaRoomMap_FortressOfWinds_23:: @ 08105AC4 +.ifdef EU + map_bottom 0x1F4FB4-0x4, 0x1A0, 1 + map_top 0x1F50AC-0x4, 0x1A0, 1, 1 +.else map_bottom 0x1F4FB4, 0x1A0, 1 map_top 0x1F50AC, 0x1A0, 1, 1 +.endif gAreaRoomMaps_FortressOfWinds:: @ 08105ADC .4byte gAreaRoomMap_FortressOfWinds_0 @@ -1994,187 +3638,409 @@ gAreaRoomMaps_FortressOfWinds:: @ 08105ADC .4byte gAreaRoomMap_FortressOfWinds_23 gAreaRoomMap_FortressOfWindsTop_0:: @ 08105B70 +.ifdef EU + map_bottom 0x1F55E0-0x4, 0x4B0, 1 + map_top 0x1F58B8-0x4, 0x4B0, 1, 1 +.else map_bottom 0x1F55E0, 0x4B0, 1 map_top 0x1F58B8, 0x4B0, 1, 1 +.endif gAreaRoomMaps_FortressOfWindsTop:: @ 08105B88 .4byte gAreaRoomMap_FortressOfWindsTop_0 gAreaRoomMap_InnerMazaal_0:: @ 08105B8C +.ifdef EU + map_bottom 0x1F514C-0x4, 0x286, 1 + map_top 0x1F5214-0x4, 0x286, 1, 1 +.else map_bottom 0x1F514C, 0x286, 1 map_top 0x1F5214, 0x286, 1, 1 +.endif gAreaRoomMap_InnerMazaal_1:: @ 08105BA4 +.ifdef EU + map_bottom 0x1F538C-0x4, 0x286, 1 + map_top 0x1F5460-0x4, 0x286, 1, 1 +.else map_bottom 0x1F538C, 0x286, 1 map_top 0x1F5460, 0x286, 1, 1 +.endif gAreaRoomMaps_InnerMazaal:: @ 08105BBC .4byte gAreaRoomMap_InnerMazaal_0 .4byte gAreaRoomMap_InnerMazaal_1 gAreaRoomMap_TempleOfDroplets_0:: @ 08105BC4 +.ifdef EU + map_bottom 0x2052BC-0x4, 0x1BA, 1 + map_top 0x2053CC-0x4, 0x1BA, 1, 1 +.else map_bottom 0x2052BC, 0x1BA, 1 map_top 0x2053CC, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_1:: @ 08105BDC +.ifdef EU + map_bottom 0x205494-0x4, 0x1BA, 1 + map_top 0x2055B0-0x4, 0x1BA, 1, 1 +.else map_bottom 0x205494, 0x1BA, 1 map_top 0x2055B0, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_2:: @ 08105BF4 +.ifdef EU + map_bottom 0x205678-0x4, 0x1BA, 1 + map_top 0x2057A4-0x4, 0x1BA, 1, 1 +.else map_bottom 0x205678, 0x1BA, 1 map_top 0x2057A4, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_3:: @ 08105C0C +.ifdef EU + map_bottom 0x205858-0x4, 0x6B4, 1 + map_top 0x205AA0-0x4, 0x6B4, 1, 1 +.else map_bottom 0x205858, 0x6B4, 1 map_top 0x205AA0, 0x6B4, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_4:: @ 08105C24 +.ifdef EU + map_bottom 0x205DA0-0x4, 0x1BA, 1 + map_top 0x205E5C-0x4, 0x1BA, 1, 1 +.else map_bottom 0x205DA0, 0x1BA, 1 map_top 0x205E5C, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_5:: @ 08105C3C +.ifdef EU + map_bottom 0x205FA4-0x4, 0x1BA, 1 + map_top 0x205FE0-0x4, 0x1BA, 1, 1 +.else map_bottom 0x205FA4, 0x1BA, 1 map_top 0x205FE0, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_6:: @ 08105C54 +.ifdef EU + map_bottom 0x206150-0x4, 0x30C, 1 + map_top 0x206270-0x4, 0x30C, 1, 1 +.else map_bottom 0x206150, 0x30C, 1 map_top 0x206270, 0x30C, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_7:: @ 08105C6C +.ifdef EU + map_bottom 0x206470-0x4, 0x374, 1 + map_top 0x2065BC-0x4, 0x374, 1, 1 +.else map_bottom 0x206470, 0x374, 1 map_top 0x2065BC, 0x374, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_8:: @ 08105C84 +.ifdef EU + map_bottom 0x206798-0x4, 0x948, 1 + map_top 0x206AA4-0x4, 0x948, 1, 1 +.else map_bottom 0x206798, 0x948, 1 map_top 0x206AA4, 0x948, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_9:: @ 08105C9C +.ifdef EU + map_bottom 0x206EE4-0x4, 0x1BA, 1 + map_top 0x206FBC-0x4, 0x1BA, 1, 1 +.else map_bottom 0x206EE4, 0x1BA, 1 map_top 0x206FBC, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_10:: @ 08105CB4 +.ifdef EU + map_bottom 0x2070C0-0x4, 0x492, 1 + map_top 0x20735C-0x4, 0x492, 1, 1 +.else map_bottom 0x2070C0, 0x492, 1 map_top 0x20735C, 0x492, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_11:: @ 08105CCC +.ifdef EU + map_bottom 0x2074E8-0x4, 0x1BA, 1 + map_top 0x207620-0x4, 0x1BA, 1, 1 +.else map_bottom 0x2074E8, 0x1BA, 1 map_top 0x207620, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_12:: @ 08105CE4 +.ifdef EU + map_bottom 0x207710-0x4, 0x186, 1 + map_top 0x207748-0x4, 0x186, 1, 1 +.else map_bottom 0x207710, 0x186, 1 map_top 0x207748, 0x186, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_13:: @ 08105CFC +.ifdef EU + map_bottom 0x20787C-0x4, 0x374, 1 + map_top 0x2079F0-0x4, 0x374, 1, 1 +.else map_bottom 0x20787C, 0x374, 1 map_top 0x2079F0, 0x374, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_14:: @ 08105D14 +.ifdef EU + map_bottom 0x207BDC-0x4, 0x420, 1 + map_top 0x207CFC-0x4, 0x420, 1, 1 +.else map_bottom 0x207BDC, 0x420, 1 map_top 0x207CFC, 0x420, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_15:: @ 08105D2C +.ifdef EU + map_bottom 0x207E10-0x4, 0x1BA, 1 + map_top 0x207F30-0x4, 0x1BA, 1, 1 +.else map_bottom 0x207E10, 0x1BA, 1 map_top 0x207F30, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_16:: @ 08105D44 +.ifdef EU + map_bottom 0x20800C-0x4, 0x1BA, 1 + map_top 0x20810C-0x4, 0x1BA, 1, 1 +.else map_bottom 0x20800C, 0x1BA, 1 map_top 0x20810C, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_17:: @ 08105D5C +.ifdef EU + map_bottom 0x20818C-0x4, 0x186, 1 + map_top 0x208254-0x4, 0x186, 1, 1 +.else map_bottom 0x20818C, 0x186, 1 map_top 0x208254, 0x186, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_18:: @ 08105D74 +.ifdef EU + map_bottom 0x208310-0x4, 0x374, 1 + map_top 0x20846C-0x4, 0x374, 1, 1 +.else map_bottom 0x208310, 0x374, 1 map_top 0x20846C, 0x374, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_19:: @ 08105D8C +.ifdef EU + map_bottom 0x2085BC-0x4, 0x1BA, 1 + map_top 0x2086EC-0x4, 0x1BA, 1, 1 +.else map_bottom 0x2085BC, 0x1BA, 1 map_top 0x2086EC, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_20:: @ 08105DA4 +.ifdef EU + map_bottom 0x2087B4-0x4, 0x35A, 1 + map_top 0x2088D0-0x4, 0x35A, 1, 1 +.else map_bottom 0x2087B4, 0x35A, 1 map_top 0x2088D0, 0x35A, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_21:: @ 08105DBC +.ifdef EU + map_bottom 0x208A3C-0x4, 0x1BA, 1 + map_top 0x208B48-0x4, 0x1BA, 1, 1 +.else map_bottom 0x208A3C, 0x1BA, 1 map_top 0x208B48, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_22:: @ 08105DD4 +.ifdef EU + map_bottom 0x208BFC-0x4, 0x374, 1 + map_top 0x208D38-0x4, 0x374, 1, 1 +.else map_bottom 0x208BFC, 0x374, 1 map_top 0x208D38, 0x374, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_23:: @ 08105DEC +.ifdef EU + map_bottom 0x208FF8-0x4, 0x1BA, 1 + map_top 0x209110-0x4, 0x1BA, 1, 1 +.else map_bottom 0x208FF8, 0x1BA, 1 map_top 0x209110, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_24:: @ 08105E04 +.ifdef EU + map_bottom 0x20921C-0x4, 0x4B0, 1 + map_top 0x2092B4-0x4, 0x4B0, 1, 1 +.else map_bottom 0x20921C, 0x4B0, 1 map_top 0x2092B4, 0x4B0, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_25:: @ 08105E1C +.ifdef EU + map_bottom 0x20961C-0x4, 0x1A4, 1 + map_top 0x209658-0x4, 0x1A4, 1, 1 +.else map_bottom 0x20961C, 0x1A4, 1 map_top 0x209658, 0x1A4, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_26:: @ 08105E34 +.ifdef EU + map_bottom 0x2097C4-0x4, 0xA0E, 1 + map_top 0x209BC8-0x1C, 0xA0E, 1, 1 +.else map_bottom 0x2097C4, 0xA0E, 1 map_top 0x209BC8, 0xA0E, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_27:: @ 08105E4C +.ifdef EU + map_bottom 0x209F4C-0x1C, 0x1BA, 1 + map_top 0x20A098-0x1C, 0x1BA, 1, 1 +.else map_bottom 0x209F4C, 0x1BA, 1 map_top 0x20A098, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_28:: @ 08105E64 +.ifdef EU + map_bottom 0x20A144-0x1C, 0x186, 1 + map_top 0x20A234-0x1C, 0x186, 1, 1 +.else map_bottom 0x20A144, 0x186, 1 map_top 0x20A234, 0x186, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_29:: @ 08105E7C +.ifdef EU + map_bottom 0x20A2CC-0x1C, 0x492, 1 + map_top 0x20A4CC-0x1C, 0x492, 1, 1 +.else map_bottom 0x20A2CC, 0x492, 1 map_top 0x20A4CC, 0x492, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_30:: @ 08105E94 +.ifdef EU + map_bottom 0x20A614-0x1C, 0x186, 1 + map_top 0x20A64C-0x1C, 0x186, 1, 1 +.else map_bottom 0x20A614, 0x186, 1 map_top 0x20A64C, 0x186, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_31:: @ 08105EAC +.ifdef EU + map_bottom 0x20A614+0x154, 0x1BA, 1 + map_top 0x20A64C+0x1CC, 0x1BA, 1, 1 +.else +@nocheckin map_bottom 0x20A614, 0x186, 1 + @nocheckin map_top 0x20A64C, 0x186, 1, 1 map_bottom 0x20A784, 0x1BA, 1 map_top 0x20A834, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_32:: @ 08105EC4 +.ifdef EU + map_bottom 0x20A980-0x1C, 0x1BA, 1 + map_top 0x20AA74-0x1C, 0x1BA, 1, 1 +.else map_bottom 0x20A980, 0x1BA, 1 map_top 0x20AA74, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_33:: @ 08105EDC +.ifdef EU + map_bottom 0x20AB54-0x1C, 0x186, 1 + map_top 0x20AC10-0x1C, 0x186, 1, 1 +.else map_bottom 0x20AB54, 0x186, 1 map_top 0x20AC10, 0x186, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_34:: @ 08105EF4 +.ifdef EU + map_bottom 0x20ACB4-0x1C, 0x186, 1 + map_top 0x20ACEC-0x1C, 0x186, 1, 1 +.else map_bottom 0x20ACB4, 0x186, 1 map_top 0x20ACEC, 0x186, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_35:: @ 08105F0C +.ifdef EU + map_bottom 0x20AE3C-0x1C, 0x396, 1 + map_top 0x20B03C-0x1C, 0x396, 1, 1 +.else map_bottom 0x20AE3C, 0x396, 1 map_top 0x20B03C, 0x396, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_36:: @ 08105F24 +.ifdef EU + map_bottom 0x20B188-0x1C, 0x1BA, 1 + map_top 0x20B2C0-0x1C, 0x1BA, 1, 1 +.else map_bottom 0x20B188, 0x1BA, 1 map_top 0x20B2C0, 0x1BA, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_37:: @ 08105F3C +.ifdef EU + map_bottom 0x20B394-0x1C, 0x186, 1 + map_top 0x20B4C0-0x1C, 0x186, 1, 1 +.else map_bottom 0x20B394, 0x186, 1 map_top 0x20B4C0, 0x186, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_38:: @ 08105F54 +.ifdef EU + map_bottom 0x20B558-0x1C, 0x39C, 1 + map_top 0x20B724-0x1C, 0x39C, 1, 1 +.else map_bottom 0x20B558, 0x39C, 1 map_top 0x20B724, 0x39C, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_39:: @ 08105F6C +.ifdef EU + map_bottom 0x20B82C-0x1C, 0x1DC, 1 + map_top 0x20B950-0x1C, 0x1DC, 1, 1 +.else map_bottom 0x20B82C, 0x1DC, 1 map_top 0x20B950, 0x1DC, 1, 1 +.endif gAreaRoomMap_TempleOfDroplets_40:: @ 08105F84 +.ifdef EU + map_bottom 0x20BA0C-0x1C, 0x1A0, 1 + map_top 0x20BADC-0x1C, 0x1A0, 1, 1 +.else map_bottom 0x20BA0C, 0x1A0, 1 map_top 0x20BADC, 0x1A0, 1, 1 +.endif gAreaRoomMaps_TempleOfDroplets:: @ 08105F9C .4byte gAreaRoomMap_TempleOfDroplets_0 @@ -2234,55 +4100,115 @@ gAreaRoomMaps_TempleOfDroplets:: @ 08105F9C .4byte gAreaRoomMap_TempleOfDroplets_40 gAreaRoomMap_61_0:: @ 08106078 +.ifdef EU + map_bottom 0x20BBC4-0x1C, 0x1C2, 1 + map_top 0x20BCF8-0x1C, 0x1C2, 1, 1 +.else map_bottom 0x20BBC4, 0x1C2, 1 map_top 0x20BCF8, 0x1C2, 1, 1 +.endif gAreaRoomMaps_61:: @ 08106090 .4byte gAreaRoomMap_61_0 gAreaRoomMap_HyruleTownMinishCaves_0:: @ 08106094 +.ifdef EU + map_bottom 0x20BD3C-0x1C, 0x330, 1 + map_top 0x20BF18-0x2C, 0x330, 1, 1 +.else map_bottom 0x20BD3C, 0x330, 1 map_top 0x20BF18, 0x330, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_1:: @ 081060AC +.ifdef EU + map_bottom 0x20BFC0-0x2C, 0x2D0, 1 + map_top 0x20C138-0x2C, 0x2D0, 1, 1 +.else map_bottom 0x20BFC0, 0x2D0, 1 map_top 0x20C138, 0x2D0, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_2:: @ 081060C4 +.ifdef EU + map_bottom 0x20C1E0-0x2C, 0x242, 1 + map_top 0x20C2F0-0x2C, 0x242, 1, 1 +.else map_bottom 0x20C1E0, 0x242, 1 map_top 0x20C2F0, 0x242, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_3:: @ 081060DC +.ifdef EU + map_bottom 0x20C3C4-0x2C, 0x1FE, 1 + map_top 0x20C408-0x2C, 0x1FE, 1, 1 +.else map_bottom 0x20C3C4, 0x1FE, 1 map_top 0x20C408, 0x1FE, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_4:: @ 081060F4 +.ifdef EU + map_bottom 0x20C538-0x2C, 0x1C2, 1 + map_top 0x20C624-0x2C, 0x1C2, 1, 1 +.else map_bottom 0x20C538, 0x1C2, 1 map_top 0x20C624, 0x1C2, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_5:: @ 0810610C +.ifdef EU + map_bottom 0x20C6AC-0x2C, 0x222, 1 + map_top 0x20C7E0-0x2C, 0x222, 1, 1 +.else map_bottom 0x20C6AC, 0x222, 1 map_top 0x20C7E0, 0x222, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_6:: @ 08106124 +.ifdef EU + map_bottom 0x20C848-0x2C, 0x1BA, 1 + map_top 0x20C95C-0x2C, 0x1BA, 1, 1 +.else map_bottom 0x20C848, 0x1BA, 1 map_top 0x20C95C, 0x1BA, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_7:: @ 0810613C +.ifdef EU + map_bottom 0x20C998-0x2C, 0x186, 1 + map_top 0x20CAA4-0x2C, 0x186, 1, 1 +.else map_bottom 0x20C998, 0x186, 1 map_top 0x20CAA4, 0x186, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_8:: @ 08106154 +.ifdef EU + map_bottom 0x20CAFC-0x2C, 0x24C, 1 + map_top 0x20CC48-0x2C, 0x24C, 1, 1 +.else map_bottom 0x20CAFC, 0x24C, 1 map_top 0x20CC48, 0x24C, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_9:: @ 0810616C +.ifdef EU + map_bottom 0x20CCB8-0x2C, 0x1DC, 1 + map_top 0x20CDD0-0x2C, 0x1DC, 1, 1 +.else map_bottom 0x20CCB8, 0x1DC, 1 map_top 0x20CDD0, 0x1DC, 1, 1 +.endif gAreaRoomMap_HyruleTownMinishCaves_10:: @ 08106184 +.ifdef EU + map_bottom 0x20CE18-0x2C, 0x348, 1 + map_top 0x20CEF4-0x2C, 0x348, 1, 1 +.else map_bottom 0x20CE18, 0x348, 1 map_top 0x20CEF4, 0x348, 1, 1 +.endif gAreaRoomMaps_HyruleTownMinishCaves:: @ 0810619C .4byte gAreaRoomMap_HyruleTownMinishCaves_0 @@ -2309,40 +4235,85 @@ gAreaRoomMaps_HyruleTownMinishCaves:: @ 0810619C .4byte gAreaRoomMap_HyruleTownMinishCaves_10 gAreaRoomMap_RoyalCrypt_0:: @ 081061F4 +.ifdef EU + map_bottom 0x2159A4-0x2C, 0x532, 1 + map_top 0x215BCC-0x2C, 0x532, 1, 1 +.else map_bottom 0x2159A4, 0x532, 1 map_top 0x215BCC, 0x532, 1, 1 +.endif gAreaRoomMap_RoyalCrypt_1:: @ 0810620C +.ifdef EU + map_bottom 0x215D68-0x2C, 0x1DC, 1 + map_top 0x215E8C-0x2C, 0x1DC, 1, 1 +.else map_bottom 0x215D68, 0x1DC, 1 map_top 0x215E8C, 0x1DC, 1, 1 +.endif gAreaRoomMap_RoyalCrypt_2:: @ 08106224 +.ifdef EU + map_bottom 0x215F08-0x2C, 0x348, 1 + map_top 0x21602C-0x2C, 0x348, 1, 1 +.else map_bottom 0x215F08, 0x348, 1 map_top 0x21602C, 0x348, 1, 1 +.endif gAreaRoomMap_RoyalCrypt_3:: @ 0810623C +.ifdef EU + map_bottom 0x216104-0x2C, 0x2F4, 1 + map_top 0x216278-0x2C, 0x2F4, 1, 1 +.else map_bottom 0x216104, 0x2F4, 1 map_top 0x216278, 0x2F4, 1, 1 +.endif gAreaRoomMap_RoyalCrypt_4:: @ 08106254 +.ifdef EU + map_bottom 0x216344-0x2C, 0x6F0, 1 + map_top 0x216678-0x2C, 0x6F0, 1, 1 +.else map_bottom 0x216344, 0x6F0, 1 map_top 0x216678, 0x6F0, 1, 1 +.endif gAreaRoomMap_RoyalCrypt_5:: @ 0810626C +.ifdef EU + map_bottom 0x2167CC-0x2C, 0x2E4, 1 + map_top 0x216954-0x2C, 0x2E4, 1, 1 +.else map_bottom 0x2167CC, 0x2E4, 1 map_top 0x216954, 0x2E4, 1, 1 +.endif gAreaRoomMap_RoyalCrypt_6:: @ 08106284 +.ifdef EU + map_bottom 0x2169F4-0x2C, 0x2E4, 1 + map_top 0x216B58-0x2C, 0x2E4, 1, 1 +.else map_bottom 0x2169F4, 0x2E4, 1 map_top 0x216B58, 0x2E4, 1, 1 +.endif gAreaRoomMap_RoyalCrypt_7:: @ 0810629C +.ifdef EU + map_bottom 0x216BF0-0x2C, 0x2EC, 1 + map_top 0x216D48-0x2C, 0x2EC, 1, 1 +.else map_bottom 0x216BF0, 0x2EC, 1 map_top 0x216D48, 0x2EC, 1, 1 +.endif gAreaRoomMap_RoyalCrypt_8:: @ 081062B4 +.ifdef EU + map_bottom 0x216E00-0x2C, 0x154, 1 + map_top 0x216EF0-0x2C, 0x154, 1, 1 +.else map_bottom 0x216E00, 0x154, 1 map_top 0x216EF0, 0x154, 1, 1 +.endif gAreaRoomMaps_RoyalCrypt:: @ 081062CC .4byte gAreaRoomMap_RoyalCrypt_0 @@ -2366,460 +4337,715 @@ gAreaRoomMap_PalaceOfWinds_0:: @ 0810630C .ifdef JP map_bottom 0x2246C0+0x74, 0xA8C, 1 map_top 0x224A00+0x74, 0xA8C, 1, 1 +.else +.ifdef EU + map_bottom 0x2246C0+0x48, 0xA8C, 1 + map_top 0x224A00+0x48, 0xA8C, 1, 1 .else map_bottom 0x2246C0, 0xA8C, 1 map_top 0x224A00, 0xA8C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_1:: @ 08106324 .ifdef JP map_bottom 0x224D14+0x74, 0x12C, 1 map_top 0x224E04+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x224D14+0x48, 0x12C, 1 + map_top 0x224E04+0x48, 0x12C, 1, 1 .else map_bottom 0x224D14, 0x12C, 1 map_top 0x224E04, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_2:: @ 0810633C .ifdef JP map_bottom 0x224E64+0x74, 0x1A4, 1 map_top 0x224FBC+0x74, 0x1A4, 1, 1 +.else +.ifdef EU + map_bottom 0x224E64+0x48, 0x1A4, 1 + map_top 0x224FBC+0x48, 0x1A4, 1, 1 .else map_bottom 0x224E64, 0x1A4, 1 map_top 0x224FBC, 0x1A4, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_3:: @ 08106354 .ifdef JP map_bottom 0x22505C+0x74, 0x384, 1 map_top 0x2252A4+0x74, 0x384, 1, 1 +.else +.ifdef EU + map_bottom 0x22505C+0x48, 0x384, 1 + map_top 0x2252A4+0x48, 0x384, 1, 1 .else map_bottom 0x22505C, 0x384, 1 map_top 0x2252A4, 0x384, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_4:: @ 0810636C .ifdef JP map_bottom 0x2253FC+0x74, 0x12C, 1 map_top 0x2254C8+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x2253FC+0x48, 0x12C, 1 + map_top 0x2254C8+0x48, 0x12C, 1, 1 .else map_bottom 0x2253FC, 0x12C, 1 map_top 0x2254C8, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_5:: @ 08106384 .ifdef JP map_bottom 0x225524+0x74, 0x384, 1 map_top 0x22572C+0x74, 0x384, 1, 1 +.else +.ifdef EU + map_bottom 0x225524+0x48, 0x384, 1 + map_top 0x22572C+0x48, 0x384, 1, 1 .else map_bottom 0x225524, 0x384, 1 map_top 0x22572C, 0x384, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_6:: @ 0810639C .ifdef JP map_bottom 0x225850+0x74, 0x384, 1 map_top 0x225A40+0x74, 0x384, 1, 1 +.else +.ifdef EU + map_bottom 0x225850+0x48, 0x384, 1 + map_top 0x225A40+0x48, 0x384, 1, 1 .else map_bottom 0x225850, 0x384, 1 map_top 0x225A40, 0x384, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_7:: @ 081063B4 .ifdef JP map_bottom 0x225B60+0x74, 0x384, 1 map_top 0x225D68+0x74, 0x384, 1, 1 +.else +.ifdef EU + map_bottom 0x225B60+0x48, 0x384, 1 + map_top 0x225D68+0x48, 0x384, 1, 1 .else map_bottom 0x225B60, 0x384, 1 map_top 0x225D68, 0x384, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_8:: @ 081063CC .ifdef JP map_bottom 0x225E98+0x74, 0x258, 1 map_top 0x22601C+0x74, 0x258, 1, 1 +.else +.ifdef EU + map_bottom 0x225E98+0x48, 0x258, 1 + map_top 0x22601C+0x48, 0x258, 1, 1 .else map_bottom 0x225E98, 0x258, 1 map_top 0x22601C, 0x258, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_9:: @ 081063E4 .ifdef JP map_bottom 0x226128+0x74, 0x12C, 1 map_top 0x226200+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x226128+0x48, 0x12C, 1 + map_top 0x226200+0x48, 0x12C, 1, 1 .else map_bottom 0x226128, 0x12C, 1 map_top 0x226200, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_10:: @ 081063FC .ifdef JP map_bottom 0x226264+0x74, 0x186, 1 map_top 0x226364+0x74, 0x186, 1, 1 +.else +.ifdef EU + map_bottom 0x226264+0x48, 0x186, 1 + map_top 0x226364+0x48, 0x186, 1, 1 .else map_bottom 0x226264, 0x186, 1 map_top 0x226364, 0x186, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_11:: @ 08106414 .ifdef JP map_bottom 0x226418+0x74, 0x12C, 1 map_top 0x2264FC+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x226418+0x48, 0x12C, 1 + map_top 0x2264FC+0x48, 0x12C, 1, 1 .else map_bottom 0x226418, 0x12C, 1 map_top 0x2264FC, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_12:: @ 0810642C .ifdef JP map_bottom 0x226578+0x74, 0x1E0, 1 map_top 0x22663C+0x74, 0x1E0, 1, 1 +.else +.ifdef EU + map_bottom 0x226578+0x48, 0x1E0, 1 + map_top 0x22663C+0x48, 0x1E0, 1, 1 .else map_bottom 0x226578, 0x1E0, 1 map_top 0x22663C, 0x1E0, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_13:: @ 08106444 .ifdef JP map_bottom 0x2266BC+0x74, 0x12C, 1 map_top 0x22679C+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x2266BC+0x48, 0x12C, 1 + map_top 0x22679C+0x48, 0x12C, 1, 1 .else map_bottom 0x2266BC, 0x12C, 1 map_top 0x22679C, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_14:: @ 0810645C .ifdef JP map_bottom 0x226818+0x74, 0x258, 1 map_top 0x226948+0x74, 0x258, 1, 1 +.else +.ifdef EU + map_bottom 0x226818+0x48, 0x258, 1 + map_top 0x226948+0x48, 0x258, 1, 1 .else map_bottom 0x226818, 0x258, 1 map_top 0x226948, 0x258, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_15:: @ 08106474 .ifdef JP map_bottom 0x2269F4+0x74, 0x708, 1 map_top 0x226C3C+0x74, 0x708, 1, 1 +.else +.ifdef EU + map_bottom 0x2269F4+0x48, 0x708, 1 + map_top 0x226C3C+0x48, 0x708, 1, 1 .else map_bottom 0x2269F4, 0x708, 1 map_top 0x226C3C, 0x708, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_16:: @ 0810648C .ifdef JP map_bottom 0x226E70+0x74, 0xA8C, 1 map_top 0x2271A4+0x74, 0xA8C, 1, 1 +.else +.ifdef EU + map_bottom 0x226E70+0x48, 0xA8C, 1 + map_top 0x2271A4+0x48, 0xA8C, 1, 1 .else map_bottom 0x226E70, 0xA8C, 1 map_top 0x2271A4, 0xA8C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_17:: @ 081064A4 .ifdef JP map_bottom 0x22745C+0x74, 0x384, 1 map_top 0x227668+0x74, 0x384, 1, 1 +.else +.ifdef EU + map_bottom 0x22745C+0x48, 0x384, 1 + map_top 0x227668+0x48, 0x384, 1, 1 .else map_bottom 0x22745C, 0x384, 1 map_top 0x227668, 0x384, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_18:: @ 081064BC .ifdef JP map_bottom 0x227774+0x74, 0x258, 1 map_top 0x227860+0x74, 0x258, 1, 1 +.else +.ifdef EU + map_bottom 0x227774+0x48, 0x258, 1 + map_top 0x227860+0x48, 0x258, 1, 1 .else map_bottom 0x227774, 0x258, 1 map_top 0x227860, 0x258, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_19:: @ 081064D4 .ifdef JP map_bottom 0x227924+0x74, 0x4B0, 1 map_top 0x227B6C+0x74, 0x4B0, 1, 1 +.else +.ifdef EU + map_bottom 0x227924+0x48, 0x4B0, 1 + map_top 0x227B6C+0x48, 0x4B0, 1, 1 .else map_bottom 0x227924, 0x4B0, 1 map_top 0x227B6C, 0x4B0, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_20:: @ 081064EC .ifdef JP map_bottom 0x227D34+0x74, 0x258, 1 map_top 0x227EA8+0x74, 0x258, 1, 1 +.else +.ifdef EU + map_bottom 0x227D34+0x48, 0x258, 1 + map_top 0x227EA8+0x48, 0x258, 1, 1 .else map_bottom 0x227D34, 0x258, 1 map_top 0x227EA8, 0x258, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_21:: @ 08106504 .ifdef JP map_bottom 0x227F48+0x74, 0x708, 1 map_top 0x228330+0x74, 0x708, 1, 1 +.else +.ifdef EU + map_bottom 0x227F48+0x48, 0x708, 1 + map_top 0x228330+0x48, 0x708, 1, 1 .else map_bottom 0x227F48, 0x708, 1 map_top 0x228330, 0x708, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_22:: @ 0810651C .ifdef JP map_bottom 0x22856C+0x74, 0x4B0, 1 map_top 0x2287B8+0x74, 0x4B0, 1, 1 +.else +.ifdef EU + map_bottom 0x22856C+0x48, 0x4B0, 1 + map_top 0x2287B8+0x48, 0x4B0, 1, 1 .else map_bottom 0x22856C, 0x4B0, 1 map_top 0x2287B8, 0x4B0, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_23:: @ 08106534 .ifdef JP map_bottom 0x228988+0x74, 0x258, 1 map_top 0x228A58+0x74, 0x258, 1, 1 +.else +.ifdef EU + map_bottom 0x228988+0x48, 0x258, 1 + map_top 0x228A58+0x48, 0x258, 1, 1 .else map_bottom 0x228988, 0x258, 1 map_top 0x228A58, 0x258, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_24:: @ 0810654C .ifdef JP map_bottom 0x228AFC+0x74, 0x4B0, 1 map_top 0x228C7C+0x74, 0x4B0, 1, 1 +.else +.ifdef EU + map_bottom 0x228AFC+0x48, 0x4B0, 1 + map_top 0x228C7C+0x48, 0x4B0, 1, 1 .else map_bottom 0x228AFC, 0x4B0, 1 map_top 0x228C7C, 0x4B0, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_25:: @ 08106564 .ifdef JP map_bottom 0x228DE4+0x74, 0x4B0, 1 map_top 0x228F90+0x74, 0x4B0, 1, 1 +.else +.ifdef EU + map_bottom 0x228DE4+0x48, 0x4B0, 1 + map_top 0x228F90+0x48, 0x4B0, 1, 1 .else map_bottom 0x228DE4, 0x4B0, 1 map_top 0x228F90, 0x4B0, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_26:: @ 0810657C .ifdef JP map_bottom 0x229138+0x74, 0x4B0, 1 map_top 0x2293A4+0x74, 0x4B0, 1, 1 +.else +.ifdef EU + map_bottom 0x229138+0x48, 0x4B0, 1 + map_top 0x2293A4+0x48, 0x4B0, 1, 1 .else map_bottom 0x229138, 0x4B0, 1 map_top 0x2293A4, 0x4B0, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_27:: @ 08106594 .ifdef JP map_bottom 0x229574+0x74, 0x12C, 1 map_top 0x22964C+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x229574+0x48, 0x12C, 1 + map_top 0x22964C+0x48, 0x12C, 1, 1 .else map_bottom 0x229574, 0x12C, 1 map_top 0x22964C, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_28:: @ 081065AC .ifdef JP map_bottom 0x2296D8+0x74, 0x12C, 1 map_top 0x2297C0+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x2296D8+0x48, 0x12C, 1 + map_top 0x2297C0+0x48, 0x12C, 1, 1 .else map_bottom 0x2296D8, 0x12C, 1 map_top 0x2297C0, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_29:: @ 081065C4 .ifdef JP map_bottom 0x229820+0x74, 0x12C, 1 map_top 0x2298F8+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x229820+0x48, 0x12C, 1 + map_top 0x2298F8+0x48, 0x12C, 1, 1 .else map_bottom 0x229820, 0x12C, 1 map_top 0x2298F8, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_30:: @ 081065DC .ifdef JP map_bottom 0x229978+0x74, 0x12C, 1 map_top 0x229A58+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x229978+0x48, 0x12C, 1 + map_top 0x229A58+0x48, 0x12C, 1, 1 .else map_bottom 0x229978, 0x12C, 1 map_top 0x229A58, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_31:: @ 081065F4 .ifdef JP map_bottom 0x229AD4+0x74, 0x12C, 1 map_top 0x229BA4+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x229AD4+0x48, 0x12C, 1 + map_top 0x229BA4+0x48, 0x12C, 1, 1 .else map_bottom 0x229AD4, 0x12C, 1 map_top 0x229BA4, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_32:: @ 0810660C .ifdef JP map_bottom 0x229C14+0x74, 0x12C, 1 map_top 0x229CE8+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x229C14+0x48, 0x12C, 1 + map_top 0x229CE8+0x48, 0x12C, 1, 1 .else map_bottom 0x229C14, 0x12C, 1 map_top 0x229CE8, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_33:: @ 08106624 .ifdef JP map_bottom 0x229D5C+0x74, 0xA8C, 1 map_top 0x22A0F0+0x74, 0xA8C, 1, 1 +.else +.ifdef EU + map_bottom 0x229D5C+0x48, 0xA8C, 1 + map_top 0x22A0F0+0x48, 0xA8C, 1, 1 .else map_bottom 0x229D5C, 0xA8C, 1 map_top 0x22A0F0, 0xA8C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_34:: @ 0810663C .ifdef JP map_bottom 0x22A454+0x74, 0x708, 1 map_top 0x22A760+0x74, 0x708, 1, 1 +.else +.ifdef EU + map_bottom 0x22A454+0x48, 0x708, 1 + map_top 0x22A760+0x48, 0x708, 1, 1 .else map_bottom 0x22A454, 0x708, 1 map_top 0x22A760, 0x708, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_35:: @ 08106654 .ifdef JP map_bottom 0x22A99C+0x74, 0x258, 1 map_top 0x22AB10+0x74, 0x258, 1, 1 +.else +.ifdef EU + map_bottom 0x22A99C+0x48, 0x258, 1 + map_top 0x22AB10+0x48, 0x258, 1, 1 .else map_bottom 0x22A99C, 0x258, 1 map_top 0x22AB10, 0x258, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_36:: @ 0810666C .ifdef JP map_bottom 0x22ABF0+0x74, 0x4B0, 1 map_top 0x22AD78+0x74, 0x4B0, 1, 1 +.else +.ifdef EU + map_bottom 0x22ABF0+0x48, 0x4B0, 1 + map_top 0x22AD78+0x48, 0x4B0, 1, 1 .else map_bottom 0x22ABF0, 0x4B0, 1 map_top 0x22AD78, 0x4B0, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_37:: @ 08106684 .ifdef JP map_bottom 0x22AEC4+0x74, 0x12C, 1 map_top 0x22AFC4+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x22AEC4+0x48, 0x12C, 1 + map_top 0x22AFC4+0x48, 0x12C, 1, 1 .else map_bottom 0x22AEC4, 0x12C, 1 map_top 0x22AFC4, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_38:: @ 0810669C .ifdef JP map_bottom 0x22B03C+0x74, 0x12C, 1 map_top 0x22B150+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x22B03C+0x48, 0x12C, 1 + map_top 0x22B150+0x48, 0x12C, 1, 1 .else map_bottom 0x22B03C, 0x12C, 1 map_top 0x22B150, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_39:: @ 081066B4 .ifdef JP map_bottom 0x22B1B0+0x74, 0x12C, 1 map_top 0x22B2A8+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x22B1B0+0x48, 0x12C, 1 + map_top 0x22B2A8+0x48, 0x12C, 1, 1 .else map_bottom 0x22B1B0, 0x12C, 1 map_top 0x22B2A8, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_40:: @ 081066CC .ifdef JP map_bottom 0x22B324+0x74, 0x12C, 1 map_top 0x22B414+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x22B324+0x48, 0x12C, 1 + map_top 0x22B414+0x48, 0x12C, 1, 1 .else map_bottom 0x22B324, 0x12C, 1 map_top 0x22B414, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_41:: @ 081066E4 .ifdef JP map_bottom 0x22B498+0x74, 0x12C, 1 map_top 0x22B56C+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x22B498+0x48, 0x12C, 1 + map_top 0x22B56C+0x48, 0x12C, 1, 1 .else map_bottom 0x22B498, 0x12C, 1 map_top 0x22B56C, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_42:: @ 081066FC .ifdef JP map_bottom 0x22B5EC+0x74, 0x12C, 1 map_top 0x22B6D8+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x22B5EC+0x48, 0x12C, 1 + map_top 0x22B6D8+0x48, 0x12C, 1, 1 .else map_bottom 0x22B5EC, 0x12C, 1 map_top 0x22B6D8, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_43:: @ 08106714 .ifdef JP map_bottom 0x22B758+0x74, 0x258, 1 map_top 0x22B8B4+0x74, 0x258, 1, 1 +.else +.ifdef EU + map_bottom 0x22B758+0x48, 0x258, 1 + map_top 0x22B8B4+0x48, 0x258, 1, 1 .else map_bottom 0x22B758, 0x258, 1 map_top 0x22B8B4, 0x258, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_44:: @ 0810672C .ifdef JP map_bottom 0x22B994+0x74, 0x708, 1 map_top 0x22BC78+0x74, 0x708, 1, 1 +.else +.ifdef EU + map_bottom 0x22B994+0x48, 0x708, 1 + map_top 0x22BC78+0x48, 0x708, 1, 1 .else map_bottom 0x22B994, 0x708, 1 map_top 0x22BC78, 0x708, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_45:: @ 08106744 .ifdef JP map_bottom 0x22BE68+0x74, 0x708, 1 map_top 0x22C07C+0x74, 0x708, 1, 1 +.else +.ifdef EU + map_bottom 0x22BE68+0x48, 0x708, 1 + map_top 0x22C07C+0x48, 0x708, 1, 1 .else map_bottom 0x22BE68, 0x708, 1 map_top 0x22C07C, 0x708, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_46:: @ 0810675C .ifdef JP map_bottom 0x22C304+0x74, 0x550, 1 map_top 0x22C4B0+0x74, 0x550, 1, 1 +.else +.ifdef EU + map_bottom 0x22C304+0x48, 0x550, 1 + map_top 0x22C4B0+0x48, 0x550, 1, 1 .else map_bottom 0x22C304, 0x550, 1 map_top 0x22C4B0, 0x550, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_47:: @ 08106774 .ifdef JP map_bottom 0x22C648+0x74, 0x12C, 1 map_top 0x22C6C8+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x22C648+0x48, 0x12C, 1 + map_top 0x22C6C8+0x48, 0x12C, 1, 1 .else map_bottom 0x22C648, 0x12C, 1 map_top 0x22C6C8, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_48:: @ 0810678C .ifdef JP map_bottom 0x22C71C+0x74, 0x500, 1 map_top 0x22C9C0+0x74, 0x500, 1, 1 +.else +.ifdef EU + map_bottom 0x22C71C+0x48, 0x500, 1 + map_top 0x22C9C0+0x48, 0x500, 1, 1 .else map_bottom 0x22C71C, 0x500, 1 map_top 0x22C9C0, 0x500, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_49:: @ 081067A4 .ifdef JP map_bottom 0x22CB00+0x74, 0x3DE, 1 map_top 0x22CC68+0x74, 0x3DE, 1, 1 +.else +.ifdef EU + map_bottom 0x22CB00+0x48, 0x3DE, 1 + map_top 0x22CC68+0x48, 0x3DE, 1, 1 .else map_bottom 0x22CB00, 0x3DE, 1 map_top 0x22CC68, 0x3DE, 1, 1 .endif +.endif gAreaRoomMap_PalaceOfWinds_50:: @ 081067BC .ifdef JP map_bottom 0x22CD70+0x74, 0x708, 1 map_top 0x22D070+0x74, 0x708, 1, 1 +.else +.ifdef EU + map_bottom 0x22CD70+0x48, 0x708, 1 + map_top 0x22D070+0x48, 0x708, 1, 1 .else map_bottom 0x22CD70, 0x708, 1 map_top 0x22D070, 0x708, 1, 1 .endif +.endif gAreaRoomMaps_PalaceOfWinds:: @ 081067D4 .4byte gAreaRoomMap_PalaceOfWinds_0 @@ -2877,9 +5103,13 @@ gAreaRoomMaps_PalaceOfWinds:: @ 081067D4 gAreaRoomMap_PalaceOfWindsBoss_0:: @ 081068A0 .ifdef JP map_top 0x22D2B8+0x74, 0x1F80, 1, 1 +.else +.ifdef EU + map_top 0x22D2B8+0x48, 0x1F80, 1, 1 .else map_top 0x22D2B8, 0x1F80, 1, 1 .endif +.endif gAreaRoomMaps_PalaceOfWindsBoss:: @ 081068AC .4byte gAreaRoomMap_PalaceOfWindsBoss_0 @@ -2888,28 +5118,43 @@ gAreaRoomMap_Sanctuary_0:: @ 081068B0 .ifdef JP map_bottom 0x236A08+0x74, 0x6D6, 1 map_top 0x236D1C+0x74, 0x6D6, 1, 1 +.else +.ifdef EU + map_bottom 0x236A08+0x48, 0x6D6, 1 + map_top 0x236D1C+0x48, 0x6D6, 1, 1 .else map_bottom 0x236A08, 0x6D6, 1 map_top 0x236D1C, 0x6D6, 1, 1 .endif +.endif gAreaRoomMap_Sanctuary_1:: @ 081068C8 .ifdef JP map_bottom 0x236E14+0x74, 0x910, 1 map_top 0x237320+0x74, 0x910, 1, 1 +.else +.ifdef EU + map_bottom 0x236E14+0x48, 0x910, 1 + map_top 0x237320+0x48, 0x910, 1, 1 .else map_bottom 0x236E14, 0x910, 1 map_top 0x237320, 0x910, 1, 1 .endif +.endif gAreaRoomMap_Sanctuary_2:: @ 081068E0 .ifdef JP map_bottom 0x2375D8+0x74, 0x344, 1 map_top 0x23788C+0x74, 0x344, 1, 1 +.else +.ifdef EU + map_bottom 0x2375D8+0x48, 0x344, 1 + map_top 0x23788C+0x48, 0x344, 1, 1 .else map_bottom 0x2375D8, 0x344, 1 map_top 0x23788C, 0x344, 1, 1 .endif +.endif gAreaRoomMaps_Sanctuary:: @ 081068F8 .4byte gAreaRoomMap_Sanctuary_0 @@ -2925,64 +5170,99 @@ gAreaRoomMap_HyruleCastle_0:: @ 08106918 .ifdef JP map_bottom 0x240B44+0x74, 0x7CE, 1 map_top 0x240F30+0x74, 0x7CE, 1, 1 +.else +.ifdef EU + map_bottom 0x240B44+0x48, 0x7CE, 1 + map_top 0x240F30+0x48, 0x7CE, 1, 1 .else map_bottom 0x240B44, 0x7CE, 1 map_top 0x240F30, 0x7CE, 1, 1 .endif +.endif gAreaRoomMap_HyruleCastle_1:: @ 08106930 .ifdef JP map_bottom 0x241118+0x74, 0x7FE, 1 map_top 0x241424+0x74, 0x7FE, 1, 1 +.else +.ifdef EU + map_bottom 0x241118+0x48, 0x7FE, 1 + map_top 0x241424+0x48, 0x7FE, 1, 1 .else map_bottom 0x241118, 0x7FE, 1 map_top 0x241424, 0x7FE, 1, 1 .endif +.endif gAreaRoomMap_HyruleCastle_2:: @ 08106948 .ifdef JP map_bottom 0x2415B0+0x74, 0x2EC, 1 map_top 0x2417B8+0x74, 0x2EC, 1, 1 +.else +.ifdef EU + map_bottom 0x2415B0+0x48, 0x2EC, 1 + map_top 0x2417B8+0x48, 0x2EC, 1, 1 .else map_bottom 0x2415B0, 0x2EC, 1 map_top 0x2417B8, 0x2EC, 1, 1 .endif +.endif gAreaRoomMap_HyruleCastle_3:: @ 08106960 .ifdef JP map_bottom 0x24186C+0x74, 0xC94, 1 map_top 0x241D18+0x74, 0xC94, 1, 1 +.else +.ifdef EU + map_bottom 0x24186C+0x48, 0xC94, 1 + map_top 0x241D18+0x48, 0xC94, 1, 1 .else map_bottom 0x24186C, 0xC94, 1 map_top 0x241D18, 0xC94, 1, 1 .endif +.endif gAreaRoomMap_HyruleCastle_4:: @ 08106978 .ifdef JP map_bottom 0x241EF0+0x74, 0x1FE, 1 map_top 0x242044+0x74, 0x1FE, 1, 1 +.else +.ifdef EU + map_bottom 0x241EF0+0x48, 0x1FE, 1 + map_top 0x242044+0x48, 0x1FE, 1, 1 .else map_bottom 0x241EF0, 0x1FE, 1 map_top 0x242044, 0x1FE, 1, 1 .endif +.endif gAreaRoomMap_HyruleCastle_5:: @ 08106990 .ifdef JP map_bottom 0x2420A4+0x74, 0x12C, 1 map_top 0x24217C+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x2420A4+0x48, 0x12C, 1 + map_top 0x24217C+0x48, 0x12C, 1, 1 .else map_bottom 0x2420A4, 0x12C, 1 map_top 0x24217C, 0x12C, 1, 1 .endif +.endif gAreaRoomMap_HyruleCastle_6:: @ 081069A8 .ifdef JP map_bottom 0x2421A8+0x74, 0x12C, 1 map_top 0x242274+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x2421A8+0x48, 0x12C, 1 + map_top 0x242274+0x48, 0x12C, 1, 1 .else map_bottom 0x2421A8, 0x12C, 1 map_top 0x242274, 0x12C, 1, 1 .endif +.endif gAreaRoomMaps_HyruleCastle:: @ 081069C0 .4byte gAreaRoomMap_HyruleCastle_0 @@ -3006,10 +5286,15 @@ gAreaRoomMap_SanctuaryEntrance_0:: @ 08106A00 .ifdef JP map_bottom 0x247218+0x74, 0x396, 1 map_top 0x24745C+0x74, 0x396, 1, 1 +.else +.ifdef EU + map_bottom 0x247218+0x48, 0x396, 1 + map_top 0x24745C+0x48, 0x396, 1, 1 .else map_bottom 0x247218, 0x396, 1 map_top 0x24745C, 0x396, 1, 1 .endif +.endif gAreaRoomMaps_SanctuaryEntrance:: @ 08106A18 .4byte gAreaRoomMap_SanctuaryEntrance_0 @@ -3018,541 +5303,841 @@ gAreaRoomMap_DarkHyruleCastle_0:: @ 08106A1C .ifdef JP map_bottom 0x264EF4+0x74, 0xE58, 1 map_top 0x265378+0x74, 0xE58, 1, 1 +.else +.ifdef EU + map_bottom 0x264EF4+0x48, 0xE58, 1 + map_top 0x265378+0x48, 0xE58, 1, 1 .else map_bottom 0x264EF4, 0xE58, 1 map_top 0x265378, 0xE58, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_1:: @ 08106A34 .ifdef JP map_bottom 0x2657C8+0x74, 0x1BA, 1 map_top 0x2658A4+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2657C8+0x48, 0x1BA, 1 + map_top 0x2658A4+0x48, 0x1BA, 1, 1 .else map_bottom 0x2657C8, 0x1BA, 1 map_top 0x2658A4, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_2:: @ 08106A4C .ifdef JP map_bottom 0x265964+0x74, 0x1BA, 1 map_top 0x265A44+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x265964+0x48, 0x1BA, 1 + map_top 0x265A44+0x48, 0x1BA, 1, 1 .else map_bottom 0x265964, 0x1BA, 1 map_top 0x265A44, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_3:: @ 08106A64 .ifdef JP map_bottom 0x265B18+0x74, 0x1BA, 1 map_top 0x265C08+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x265B18+0x48, 0x1BA, 1 + map_top 0x265C08+0x48, 0x1BA, 1, 1 .else map_bottom 0x265B18, 0x1BA, 1 map_top 0x265C08, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_4:: @ 08106A7C .ifdef JP map_bottom 0x265CD4+0x74, 0x1BA, 1 map_top 0x265DC8+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x265CD4+0x48, 0x1BA, 1 + map_top 0x265DC8+0x48, 0x1BA, 1, 1 .else map_bottom 0x265CD4, 0x1BA, 1 map_top 0x265DC8, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_5:: @ 08106A94 .ifdef JP map_bottom 0x265E98+0x74, 0x444, 1 map_top 0x2660BC+0x74, 0x444, 1, 1 +.else +.ifdef EU + map_bottom 0x265E98+0x48, 0x444, 1 + map_top 0x2660BC+0x48, 0x444, 1, 1 .else map_bottom 0x265E98, 0x444, 1 map_top 0x2660BC, 0x444, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_6:: @ 08106AAC .ifdef JP map_bottom 0x26620C+0x74, 0x2A0, 1 map_top 0x2663A0+0x74, 0x2A0, 1, 1 +.else +.ifdef EU + map_bottom 0x26620C+0x48, 0x2A0, 1 + map_top 0x2663A0+0x48, 0x2A0, 1, 1 .else map_bottom 0x26620C, 0x2A0, 1 map_top 0x2663A0, 0x2A0, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_7:: @ 08106AC4 .ifdef JP map_bottom 0x2664A0+0x74, 0x374, 1 map_top 0x2665EC+0x74, 0x374, 1, 1 +.else +.ifdef EU + map_bottom 0x2664A0+0x48, 0x374, 1 + map_top 0x2665EC+0x48, 0x374, 1, 1 .else map_bottom 0x2664A0, 0x374, 1 map_top 0x2665EC, 0x374, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_8:: @ 08106ADC .ifdef JP map_bottom 0x266730+0x74, 0x374, 1 map_top 0x266910+0x74, 0x374, 1, 1 +.else +.ifdef EU + map_bottom 0x266730+0x48, 0x374, 1 + map_top 0x266910+0x48, 0x374, 1, 1 .else map_bottom 0x266730, 0x374, 1 map_top 0x266910, 0x374, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_9:: @ 08106AF4 .ifdef JP map_bottom 0x266A44+0x74, 0x1FE, 1 map_top 0x266B98+0x74, 0x1FE, 1, 1 +.else +.ifdef EU + map_bottom 0x266A44+0x48, 0x1FE, 1 + map_top 0x266B98+0x48, 0x1FE, 1, 1 .else map_bottom 0x266A44, 0x1FE, 1 map_top 0x266B98, 0x1FE, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_10:: @ 08106B0C .ifdef JP map_bottom 0x266C78+0x74, 0x1BA, 1 map_top 0x266DA4+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x266C78+0x48, 0x1BA, 1 + map_top 0x266DA4+0x48, 0x1BA, 1, 1 .else map_bottom 0x266C78, 0x1BA, 1 map_top 0x266DA4, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_11:: @ 08106B24 .ifdef JP map_bottom 0x266E70+0x74, 0x1BA, 1 map_top 0x266F7C+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x266E70+0x48, 0x1BA, 1 + map_top 0x266F7C+0x48, 0x1BA, 1, 1 .else map_bottom 0x266E70, 0x1BA, 1 map_top 0x266F7C, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_12:: @ 08106B3C .ifdef JP map_bottom 0x26701C+0x74, 0x1BA, 1 map_top 0x26712C+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26701C+0x48, 0x1BA, 1 + map_top 0x26712C+0x48, 0x1BA, 1, 1 .else map_bottom 0x26701C, 0x1BA, 1 map_top 0x26712C, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_13:: @ 08106B54 .ifdef JP map_bottom 0x2671DC+0x74, 0x1BA, 1 map_top 0x2672E8+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2671DC+0x48, 0x1BA, 1 + map_top 0x2672E8+0x48, 0x1BA, 1, 1 .else map_bottom 0x2671DC, 0x1BA, 1 map_top 0x2672E8, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_14:: @ 08106B6C .ifdef JP map_bottom 0x2673B4+0x74, 0x1BA, 1 map_top 0x2674F0+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2673B4+0x48, 0x1BA, 1 + map_top 0x2674F0+0x48, 0x1BA, 1, 1 .else map_bottom 0x2673B4, 0x1BA, 1 map_top 0x2674F0, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_15:: @ 08106B84 .ifdef JP map_bottom 0x2675D4+0x74, 0x1BA, 1 map_top 0x2676F8+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2675D4+0x48, 0x1BA, 1 + map_top 0x2676F8+0x48, 0x1BA, 1, 1 .else map_bottom 0x2675D4, 0x1BA, 1 map_top 0x2676F8, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_16:: @ 08106B9C .ifdef JP map_bottom 0x2677BC+0x74, 0x1BA, 1 map_top 0x2678F0+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2677BC+0x48, 0x1BA, 1 + map_top 0x2678F0+0x48, 0x1BA, 1, 1 .else map_bottom 0x2677BC, 0x1BA, 1 map_top 0x2678F0, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_17:: @ 08106BB4 .ifdef JP map_bottom 0x2679D0+0x74, 0x2A8, 1 map_top 0x267B70+0x74, 0x2A8, 1, 1 +.else +.ifdef EU + map_bottom 0x2679D0+0x48, 0x2A8, 1 + map_top 0x267B70+0x48, 0x2A8, 1, 1 .else map_bottom 0x2679D0, 0x2A8, 1 map_top 0x267B70, 0x2A8, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_18:: @ 08106BCC .ifdef JP map_bottom 0x267C98+0x74, 0x2A8, 1 map_top 0x267E00+0x74, 0x2A8, 1, 1 +.else +.ifdef EU + map_bottom 0x267C98+0x48, 0x2A8, 1 + map_top 0x267E00+0x48, 0x2A8, 1, 1 .else map_bottom 0x267C98, 0x2A8, 1 map_top 0x267E00, 0x2A8, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_19:: @ 08106BE4 .ifdef JP map_bottom 0x267F48+0x74, 0x1BA, 1 map_top 0x268080+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x267F48+0x48, 0x1BA, 1 + map_top 0x268080+0x48, 0x1BA, 1, 1 .else map_bottom 0x267F48, 0x1BA, 1 map_top 0x268080, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_20:: @ 08106BFC .ifdef JP map_bottom 0x268168+0x74, 0x1BA, 1 map_top 0x2682C8+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x268168+0x48, 0x1BA, 1 + map_top 0x2682C8+0x48, 0x1BA, 1, 1 .else map_bottom 0x268168, 0x1BA, 1 map_top 0x2682C8, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_21:: @ 08106C14 .ifdef JP map_bottom 0x2683A4+0x74, 0x1BA, 1 map_top 0x2684CC+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2683A4+0x48, 0x1BA, 1 + map_top 0x2684CC+0x48, 0x1BA, 1, 1 .else map_bottom 0x2683A4, 0x1BA, 1 map_top 0x2684CC, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_22:: @ 08106C2C .ifdef JP map_bottom 0x2685A8+0x74, 0x1BA, 1 map_top 0x2686B0+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2685A8+0x48, 0x1BA, 1 + map_top 0x2686B0+0x48, 0x1BA, 1, 1 .else map_bottom 0x2685A8, 0x1BA, 1 map_top 0x2686B0, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_23:: @ 08106C44 .ifdef JP map_bottom 0x26876C+0x74, 0x374, 1 map_top 0x268930+0x74, 0x374, 1, 1 +.else +.ifdef EU + map_bottom 0x26876C+0x48, 0x374, 1 + map_top 0x268930+0x48, 0x374, 1, 1 .else map_bottom 0x26876C, 0x374, 1 map_top 0x268930, 0x374, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_24:: @ 08106C5C .ifdef JP map_bottom 0x268A98+0x74, 0x374, 1 map_top 0x268C2C+0x74, 0x374, 1, 1 +.else +.ifdef EU + map_bottom 0x268A98+0x48, 0x374, 1 + map_top 0x268C2C+0x48, 0x374, 1, 1 .else map_bottom 0x268A98, 0x374, 1 map_top 0x268C2C, 0x374, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_25:: @ 08106C74 .ifdef JP map_bottom 0x268D54+0x74, 0x1BA, 1 map_top 0x268E3C+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x268D54+0x48, 0x1BA, 1 + map_top 0x268E3C+0x48, 0x1BA, 1, 1 .else map_bottom 0x268D54, 0x1BA, 1 map_top 0x268E3C, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_26:: @ 08106C8C .ifdef JP map_bottom 0x268F0C+0x74, 0x1BA, 1 map_top 0x269010+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x268F0C+0x48, 0x1BA, 1 + map_top 0x269010+0x48, 0x1BA, 1, 1 .else map_bottom 0x268F0C, 0x1BA, 1 map_top 0x269010, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_27:: @ 08106CA4 .ifdef JP map_bottom 0x2690AC+0x74, 0x1BA, 1 map_top 0x2690E8+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2690AC+0x48, 0x1BA, 1 + map_top 0x2690E8+0x48, 0x1BA, 1, 1 .else map_bottom 0x2690AC, 0x1BA, 1 map_top 0x2690E8, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_28:: @ 08106CBC .ifdef JP map_bottom 0x269168+0x74, 0x1BA, 1 map_top 0x269290+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x269168+0x48, 0x1BA, 1 + map_top 0x269290+0x48, 0x1BA, 1, 1 .else map_bottom 0x269168, 0x1BA, 1 map_top 0x269290, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_29:: @ 08106CD4 .ifdef JP map_bottom 0x26936C+0x74, 0x374, 1 map_top 0x2694B0+0x74, 0x374, 1, 1 +.else +.ifdef EU + map_bottom 0x26936C+0x48, 0x374, 1 + map_top 0x2694B0+0x48, 0x374, 1, 1 .else map_bottom 0x26936C, 0x374, 1 map_top 0x2694B0, 0x374, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_30:: @ 08106CEC .ifdef JP map_bottom 0x2695F0+0x74, 0x1BA, 1 map_top 0x2696D4+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2695F0+0x48, 0x1BA, 1 + map_top 0x2696D4+0x48, 0x1BA, 1, 1 .else map_bottom 0x2695F0, 0x1BA, 1 map_top 0x2696D4, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_31:: @ 08106D04 .ifdef JP map_bottom 0x269794+0x74, 0x1BA, 1 map_top 0x2698E4+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x269794+0x48, 0x1BA, 1 + map_top 0x2698E4+0x48, 0x1BA, 1, 1 .else map_bottom 0x269794, 0x1BA, 1 map_top 0x2698E4, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_32:: @ 08106D1C .ifdef JP map_bottom 0x2699BC+0x74, 0x1BA, 1 map_top 0x269AF0+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x2699BC+0x48, 0x1BA, 1 + map_top 0x269AF0+0x48, 0x1BA, 1, 1 .else map_bottom 0x2699BC, 0x1BA, 1 map_top 0x269AF0, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_33:: @ 08106D34 .ifdef JP map_bottom 0x269BD8+0x74, 0x1BA, 1 map_top 0x269CE0+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x269BD8+0x48, 0x1BA, 1 + map_top 0x269CE0+0x48, 0x1BA, 1, 1 .else map_bottom 0x269BD8, 0x1BA, 1 map_top 0x269CE0, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_34:: @ 08106D4C .ifdef JP map_bottom 0x269DB4+0x74, 0x1BA, 1 map_top 0x269ED0+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x269DB4+0x48, 0x1BA, 1 + map_top 0x269ED0+0x48, 0x1BA, 1, 1 .else map_bottom 0x269DB4, 0x1BA, 1 map_top 0x269ED0, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_35:: @ 08106D64 .ifdef JP map_bottom 0x269FAC+0x74, 0x1BA, 1 map_top 0x269FE8+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x269FAC+0x48, 0x1BA, 1 + map_top 0x269FE8+0x48, 0x1BA, 1, 1 .else map_bottom 0x269FAC, 0x1BA, 1 map_top 0x269FE8, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_36:: @ 08106D7C .ifdef JP map_bottom 0x26A168+0x74, 0x1BA, 1 map_top 0x26A1A4+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26A168+0x48, 0x1BA, 1 + map_top 0x26A1A4+0x48, 0x1BA, 1, 1 .else map_bottom 0x26A168, 0x1BA, 1 map_top 0x26A1A4, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_37:: @ 08106D94 .ifdef JP map_bottom 0x26A2F8+0x74, 0x1BA, 1 map_top 0x26A334+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26A2F8+0x48, 0x1BA, 1 + map_top 0x26A334+0x48, 0x1BA, 1, 1 .else map_bottom 0x26A2F8, 0x1BA, 1 map_top 0x26A334, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_38:: @ 08106DAC .ifdef JP map_bottom 0x26A4A0+0x74, 0x2A8, 1 map_top 0x26A5CC+0x74, 0x2A8, 1, 1 +.else +.ifdef EU + map_bottom 0x26A4A0+0x48, 0x2A8, 1 + map_top 0x26A5CC+0x48, 0x2A8, 1, 1 .else map_bottom 0x26A4A0, 0x2A8, 1 map_top 0x26A5CC, 0x2A8, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_39:: @ 08106DC4 .ifdef JP map_bottom 0x26A70C+0x74, 0x2A8, 1 map_top 0x26A7BC+0x74, 0x2A8, 1, 1 +.else +.ifdef EU + map_bottom 0x26A70C+0x48, 0x2A8, 1 + map_top 0x26A7BC+0x48, 0x2A8, 1, 1 .else map_bottom 0x26A70C, 0x2A8, 1 map_top 0x26A7BC, 0x2A8, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_40:: @ 08106DDC .ifdef JP map_bottom 0x26A940+0x74, 0x1BA, 1 map_top 0x26AA24+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26A940+0x48, 0x1BA, 1 + map_top 0x26AA24+0x48, 0x1BA, 1, 1 .else map_bottom 0x26A940, 0x1BA, 1 map_top 0x26AA24, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_41:: @ 08106DF4 .ifdef JP map_bottom 0x26AAF8+0x74, 0x1BA, 1 map_top 0x26ABB4+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26AAF8+0x48, 0x1BA, 1 + map_top 0x26ABB4+0x48, 0x1BA, 1, 1 .else map_bottom 0x26AAF8, 0x1BA, 1 map_top 0x26ABB4, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_42:: @ 08106E0C .ifdef JP map_bottom 0x26AC78+0x74, 0x1BA, 1 map_top 0x26AD44+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26AC78+0x48, 0x1BA, 1 + map_top 0x26AD44+0x48, 0x1BA, 1, 1 .else map_bottom 0x26AC78, 0x1BA, 1 map_top 0x26AD44, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_43:: @ 08106E24 .ifdef JP map_bottom 0x26AE18+0x74, 0x1BA, 1 map_top 0x26AEF8+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26AE18+0x48, 0x1BA, 1 + map_top 0x26AEF8+0x48, 0x1BA, 1, 1 .else map_bottom 0x26AE18, 0x1BA, 1 map_top 0x26AEF8, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_44:: @ 08106E3C .ifdef JP map_bottom 0x26AFBC+0x74, 0x1BA, 1 map_top 0x26B094+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26AFBC+0x48, 0x1BA, 1 + map_top 0x26B094+0x48, 0x1BA, 1, 1 .else map_bottom 0x26AFBC, 0x1BA, 1 map_top 0x26B094, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_45:: @ 08106E54 .ifdef JP map_bottom 0x26B15C+0x74, 0x1BA, 1 map_top 0x26B250+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26B15C+0x48, 0x1BA, 1 + map_top 0x26B250+0x48, 0x1BA, 1, 1 .else map_bottom 0x26B15C, 0x1BA, 1 map_top 0x26B250, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_46:: @ 08106E6C .ifdef JP map_bottom 0x26B2F4+0x74, 0x1BA, 1 map_top 0x26B408+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26B2F4+0x48, 0x1BA, 1 + map_top 0x26B408+0x48, 0x1BA, 1, 1 .else map_bottom 0x26B2F4, 0x1BA, 1 map_top 0x26B408, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_47:: @ 08106E84 .ifdef JP map_bottom 0x26B4BC+0x74, 0x1BA, 1 map_top 0x26B4F8+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26B4BC+0x48, 0x1BA, 1 + map_top 0x26B4F8+0x48, 0x1BA, 1, 1 .else map_bottom 0x26B4BC, 0x1BA, 1 map_top 0x26B4F8, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_48:: @ 08106E9C .ifdef JP map_bottom 0x26B658+0x74, 0x1BA, 1 map_top 0x26B694+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26B658+0x48, 0x1BA, 1 + map_top 0x26B694+0x48, 0x1BA, 1, 1 .else map_bottom 0x26B658, 0x1BA, 1 map_top 0x26B694, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_49:: @ 08106EB4 .ifdef JP map_bottom 0x26B7EC+0x74, 0x1BA, 1 map_top 0x26B828+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26B7EC+0x48, 0x1BA, 1 + map_top 0x26B828+0x48, 0x1BA, 1, 1 .else map_bottom 0x26B7EC, 0x1BA, 1 map_top 0x26B828, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_50:: @ 08106ECC .ifdef JP map_bottom 0x26B984+0x74, 0x1BA, 1 map_top 0x26B9C0+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26B984+0x48, 0x1BA, 1 + map_top 0x26B9C0+0x48, 0x1BA, 1, 1 .else map_bottom 0x26B984, 0x1BA, 1 map_top 0x26B9C0, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_51:: @ 08106EE4 .ifdef JP map_bottom 0x26BB34+0x74, 0x2A8, 1 map_top 0x26BB8C+0x74, 0x2A8, 1, 1 +.else +.ifdef EU + map_bottom 0x26BB34+0x48, 0x2A8, 1 + map_top 0x26BB8C+0x48, 0x2A8, 1, 1 .else map_bottom 0x26BB34, 0x2A8, 1 map_top 0x26BB8C, 0x2A8, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_52:: @ 08106EFC .ifdef JP map_bottom 0x26BD88+0x74, 0x2A8, 1 map_top 0x26BDE0+0x74, 0x2A8, 1, 1 +.else +.ifdef EU + map_bottom 0x26BD88+0x48, 0x2A8, 1 + map_top 0x26BDE0+0x48, 0x2A8, 1, 1 .else map_bottom 0x26BD88, 0x2A8, 1 map_top 0x26BDE0, 0x2A8, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_53:: @ 08106F14 .ifdef JP map_bottom 0x26BFB4+0x74, 0x1BA, 1 map_top 0x26C060+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26BFB4+0x48, 0x1BA, 1 + map_top 0x26C060+0x48, 0x1BA, 1, 1 .else map_bottom 0x26BFB4, 0x1BA, 1 map_top 0x26C060, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_54:: @ 08106F2C .ifdef JP map_bottom 0x26C190+0x74, 0x1BA, 1 map_top 0x26C23C+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26C190+0x48, 0x1BA, 1 + map_top 0x26C23C+0x48, 0x1BA, 1, 1 .else map_bottom 0x26C190, 0x1BA, 1 map_top 0x26C23C, 0x1BA, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_55:: @ 08106F44 .ifdef JP map_bottom 0x26C36C+0x74, 0xA5C, 1 map_top 0x26C578+0x74, 0xA5C, 1, 1 +.else +.ifdef EU + map_bottom 0x26C36C+0x48, 0xA5C, 1 + map_top 0x26C578+0x48, 0xA5C, 1, 1 .else map_bottom 0x26C36C, 0xA5C, 1 map_top 0x26C578, 0xA5C, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_56:: @ 08106F5C .ifdef JP map_bottom 0x26CB1C+0x74, 0x1FE, 1 map_top 0x26CC54+0x74, 0x1FE, 1, 1 +.else +.ifdef EU + map_bottom 0x26CB1C+0x48, 0x1FE, 1 + map_top 0x26CC54+0x48, 0x1FE, 1, 1 .else map_bottom 0x26CB1C, 0x1FE, 1 map_top 0x26CC54, 0x1FE, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_57:: @ 08106F74 .ifdef JP map_bottom 0x26CD14+0x74, 0x3FC, 1 map_top 0x26CE94+0x74, 0x3FC, 1, 1 +.else +.ifdef EU + map_bottom 0x26CD14+0x48, 0x3FC, 1 + map_top 0x26CE94+0x48, 0x3FC, 1, 1 .else map_bottom 0x26CD14, 0x3FC, 1 map_top 0x26CE94, 0x3FC, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_58:: @ 08106F8C .ifdef JP map_bottom 0x26CFD0+0x74, 0x264, 1 map_top 0x26D0C4+0x74, 0x264, 1, 1 +.else +.ifdef EU + map_bottom 0x26CFD0+0x48, 0x264, 1 + map_top 0x26D0C4+0x48, 0x264, 1, 1 .else map_bottom 0x26CFD0, 0x264, 1 map_top 0x26D0C4, 0x264, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastle_59:: @ 08106FA4 .ifdef JP map_bottom 0x26D194+0x74, 0x1BA, 1 map_top 0x26D1D0+0x74, 0x1BA, 1, 1 +.else +.ifdef EU + map_bottom 0x26D194+0x48, 0x1BA, 1 + map_top 0x26D1D0+0x48, 0x1BA, 1, 1 .else map_bottom 0x26D194, 0x1BA, 1 map_top 0x26D1D0, 0x1BA, 1, 1 .endif +.endif gAreaRoomMaps_DarkHyruleCastle:: @ 08106FBC .4byte gAreaRoomMap_DarkHyruleCastle_0 @@ -3620,82 +6205,127 @@ gAreaRoomMap_DarkHyruleCastleOutside_0:: @ 081070AC .ifdef JP map_bottom 0x27647C+0x74, 0x2EE, 1 map_top 0x276694+0x74, 0x2EE, 1, 1 +.else +.ifdef EU + map_bottom 0x27647C+0x48, 0x2EE, 1 + map_top 0x276694+0x48, 0x2EE, 1, 1 .else map_bottom 0x27647C, 0x2EE, 1 map_top 0x276694, 0x2EE, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastleOutside_1:: @ 081070C4 .ifdef JP map_bottom 0x276704+0x74, 0x396, 1 map_top 0x276924+0x74, 0x396, 1, 1 +.else +.ifdef EU + map_bottom 0x276704+0x48, 0x396, 1 + map_top 0x276924+0x48, 0x396, 1, 1 .else map_bottom 0x276704, 0x396, 1 map_top 0x276924, 0x396, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastleOutside_2:: @ 081070DC .ifdef JP map_bottom 0x2769A0+0x74, 0x374, 1 map_top 0x276A8C+0x74, 0x374, 1, 1 +.else +.ifdef EU + map_bottom 0x2769A0+0x48, 0x374, 1 + map_top 0x276A8C+0x48, 0x374, 1, 1 .else map_bottom 0x2769A0, 0x374, 1 map_top 0x276A8C, 0x374, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastleOutside_3:: @ 081070F4 .ifdef JP map_bottom 0x276BE8+0x74, 0x52E, 1 map_top 0x276D2C+0x74, 0x52E, 1, 1 +.else +.ifdef EU + map_bottom 0x276BE8+0x48, 0x52E, 1 + map_top 0x276D2C+0x48, 0x52E, 1, 1 .else map_bottom 0x276BE8, 0x52E, 1 map_top 0x276D2C, 0x52E, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastleOutside_4:: @ 0810710C .ifdef JP map_bottom 0x276EEC+0x74, 0x2A8, 1 map_top 0x276F78+0x74, 0x2A8, 1, 1 +.else +.ifdef EU + map_bottom 0x276EEC+0x48, 0x2A8, 1 + map_top 0x276F78+0x48, 0x2A8, 1, 1 .else map_bottom 0x276EEC, 0x2A8, 1 map_top 0x276F78, 0x2A8, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastleOutside_5:: @ 08107124 .ifdef JP map_bottom 0x27705C+0x74, 0x374, 1 map_top 0x277164+0x74, 0x374, 1, 1 +.else +.ifdef EU + map_bottom 0x27705C+0x48, 0x374, 1 + map_top 0x277164+0x48, 0x374, 1, 1 .else map_bottom 0x27705C, 0x374, 1 map_top 0x277164, 0x374, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastleOutside_6:: @ 0810713C .ifdef JP map_bottom 0x2772D0+0x74, 0xA5C, 1 map_top 0x277480+0x74, 0xA5C, 1, 1 +.else +.ifdef EU + map_bottom 0x2772D0+0x48, 0xA5C, 1 + map_top 0x277480+0x48, 0xA5C, 1, 1 .else map_bottom 0x2772D0, 0xA5C, 1 map_top 0x277480, 0xA5C, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastleOutside_7:: @ 08107154 .ifdef JP map_bottom 0x2776C8+0x74, 0x6E8, 1 map_top 0x277848+0x74, 0x6E8, 1, 1 +.else +.ifdef EU + map_bottom 0x2776C8+0x48, 0x6E8, 1 + map_top 0x277848+0x48, 0x6E8, 1, 1 .else map_bottom 0x2776C8, 0x6E8, 1 map_top 0x277848, 0x6E8, 1, 1 .endif +.endif gAreaRoomMap_DarkHyruleCastleOutside_8:: @ 0810716C .ifdef JP map_bottom 0x277A28+0x74, 0x630, 1 map_top 0x277AEC+0x74, 0x630, 1, 1 +.else +.ifdef EU + map_bottom 0x277A28+0x48, 0x630, 1 + map_top 0x277AEC+0x48, 0x630, 1, 1 .else map_bottom 0x277A28, 0x630, 1 map_top 0x277AEC, 0x630, 1, 1 .endif +.endif gAreaRoomMaps_DarkHyruleCastleOutside:: @ 08107184 .4byte gAreaRoomMap_DarkHyruleCastleOutside_0 @@ -3712,10 +6342,15 @@ gAreaRoomMap_DarkHyruleCastleBridge_0:: @ 081071A8 .ifdef JP map_bottom 0x26D27C+0x74, 0x2A8, 1 map_top 0x26D470+0x74, 0x2A8, 1, 1 +.else +.ifdef EU + map_bottom 0x26D27C+0x48, 0x2A8, 1 + map_top 0x26D470+0x48, 0x2A8, 1, 1 .else map_bottom 0x26D27C, 0x2A8, 1 map_top 0x26D470, 0x2A8, 1, 1 .endif +.endif gAreaRoomMaps_DarkHyruleCastleBridge:: @ 081071C0 .4byte gAreaRoomMap_DarkHyruleCastleBridge_0 @@ -3724,28 +6359,43 @@ gAreaRoomMap_VaatisArms_0:: @ 081071C4 .ifdef JP map_bottom 0x26DA80+0x74, 0x214, 1 map_top 0x26DC40+0x74, 0x214, 1, 1 +.else +.ifdef EU + map_bottom 0x26DA80+0x48, 0x214, 1 + map_top 0x26DC40+0x48, 0x214, 1, 1 .else map_bottom 0x26DA80, 0x214, 1 map_top 0x26DC40, 0x214, 1, 1 .endif +.endif gAreaRoomMap_VaatisArms_1:: @ 081071DC .ifdef JP map_bottom 0x26DC98+0x74, 0x214, 1 map_top 0x26DE58+0x74, 0x214, 1, 1 +.else +.ifdef EU + map_bottom 0x26DC98+0x48, 0x214, 1 + map_top 0x26DE58+0x48, 0x214, 1, 1 .else map_bottom 0x26DC98, 0x214, 1 map_top 0x26DE58, 0x214, 1, 1 .endif +.endif gAreaRoomMap_VaatisArms_2:: @ 081071F4 .ifdef JP map_bottom 0x26DEB0+0x74, 0x214, 1 map_top 0x26E070+0x74, 0x214, 1, 1 +.else +.ifdef EU + map_bottom 0x26DEB0+0x48, 0x214, 1 + map_top 0x26E070+0x48, 0x214, 1, 1 .else map_bottom 0x26DEB0, 0x214, 1 map_top 0x26E070, 0x214, 1, 1 .endif +.endif gAreaRoomMaps_VaatisArms:: @ 0810720C .4byte gAreaRoomMap_VaatisArms_0 @@ -3756,19 +6406,29 @@ gAreaRoomMap_Vaati3_0:: @ 08107218 .ifdef JP map_bottom 0x26D564+0x74, 0x294, 1 map_top 0x26D704+0x74, 0x294, 1, 1 +.else +.ifdef EU + map_bottom 0x26D564+0x48, 0x294, 1 + map_top 0x26D704+0x48, 0x294, 1, 1 .else map_bottom 0x26D564, 0x294, 1 map_top 0x26D704, 0x294, 1, 1 .endif +.endif gAreaRoomMap_Vaati3_1:: @ 08107230 .ifdef JP map_bottom 0x26D75C+0x74, 0x210, 1 map_top 0x26D89C+0x74, 0x210, 1, 1 +.else +.ifdef EU + map_bottom 0x26D75C+0x48, 0x210, 1 + map_top 0x26D89C+0x48, 0x210, 1, 1 .else map_bottom 0x26D75C, 0x210, 1 map_top 0x26D89C, 0x210, 1, 1 .endif +.endif gAreaRoomMaps_Vaati3:: @ 08107248 .4byte gAreaRoomMap_Vaati3_0 @@ -3778,10 +6438,15 @@ gAreaRoomMap_Vaati2_0:: @ 08107250 .ifdef JP map_bottom 0x26D8E4+0x74, 0x294, 1 map_top 0x26DA24+0x74, 0x294, 1, 1 +.else +.ifdef EU + map_bottom 0x26D8E4+0x48, 0x294, 1 + map_top 0x26DA24+0x48, 0x294, 1, 1 .else map_bottom 0x26D8E4, 0x294, 1 map_top 0x26DA24, 0x294, 1, 1 .endif +.endif gAreaRoomMaps_Vaati2:: @ 08107268 .4byte gAreaRoomMap_Vaati2_0 @@ -3790,28 +6455,43 @@ gAreaRoomMap_47_0:: @ 0810726C .ifdef JP map_bottom 0x277BB0+0x74, 0x256, 1 map_top 0x277CD8+0x74, 0x256, 1, 1 +.else +.ifdef EU + map_bottom 0x277BB0+0x48, 0x256, 1 + map_top 0x277CD8+0x48, 0x256, 1, 1 .else map_bottom 0x277BB0, 0x256, 1 map_top 0x277CD8, 0x256, 1, 1 .endif +.endif gAreaRoomMap_47_1:: @ 08107284 .ifdef JP map_bottom 0x277D38+0x74, 0x2B2, 1 map_top 0x277E5C+0x74, 0x2B2, 1, 1 +.else +.ifdef EU + map_bottom 0x277D38+0x48, 0x2B2, 1 + map_top 0x277E5C+0x48, 0x2B2, 1, 1 .else map_bottom 0x277D38, 0x2B2, 1 map_top 0x277E5C, 0x2B2, 1, 1 .endif +.endif gAreaRoomMap_47_2:: @ 0810729C .ifdef JP map_bottom 0x277ECC+0x74, 0x47E, 1 map_top 0x2780BC+0x74, 0x47E, 1, 1 +.else +.ifdef EU + map_bottom 0x277ECC+0x48, 0x47E, 1 + map_top 0x2780BC+0x48, 0x47E, 1, 1 .else map_bottom 0x277ECC, 0x47E, 1 map_top 0x2780BC, 0x47E, 1, 1 .endif +.endif gAreaRoomMaps_47:: @ 081072B4 .4byte gAreaRoomMap_47_0 @@ -3819,24 +6499,49 @@ gAreaRoomMaps_47:: @ 081072B4 .4byte gAreaRoomMap_47_2 gAreaRoomMap_CastorCaves_0:: @ 081072C0 +.ifdef EU + map_bottom 0x9FEB4-0x4, 0x168, 1 + map_top 0x9FFE4-0x4, 0x168, 1, 1 +.else map_bottom 0x9FEB4, 0x168, 1 map_top 0x9FFE4, 0x168, 1, 1 +.endif gAreaRoomMap_CastorCaves_1:: @ 081072D8 +.ifdef EU + map_bottom 0xA0030-0x4, 0x1B8, 1 + map_top 0xA0194-0x4, 0x1B8, 1, 1 +.else map_bottom 0xA0030, 0x1B8, 1 map_top 0xA0194, 0x1B8, 1, 1 +.endif gAreaRoomMap_CastorCaves_2:: @ 081072F0 +.ifdef EU + map_bottom 0xA01DC-0x4, 0x12C, 1 + map_top 0xA02B4-0x4, 0x12C, 1, 1 +.else map_bottom 0xA01DC, 0x12C, 1 map_top 0xA02B4, 0x12C, 1, 1 +.endif gAreaRoomMap_CastorCaves_3:: @ 08107308 +.ifdef EU + map_bottom 0xA0328-0x4, 0x12C, 1 + map_top 0xA0414-0x4, 0x12C, 1, 1 +.else map_bottom 0xA0328, 0x12C, 1 map_top 0xA0414, 0x12C, 1, 1 +.endif gAreaRoomMap_CastorCaves_4:: @ 08107320 +.ifdef EU + map_bottom 0xA0488-0x4, 0x12C, 1 + map_top 0xA058C-0x4, 0x12C, 1, 1 +.else map_bottom 0xA0488, 0x12C, 1 map_top 0xA058C, 0x12C, 1, 1 +.endif gAreaRoomMaps_CastorCaves:: @ 08107338 .4byte gAreaRoomMap_CastorCaves_0 @@ -3846,112 +6551,242 @@ gAreaRoomMaps_CastorCaves:: @ 08107338 .4byte gAreaRoomMap_CastorCaves_4 gAreaRoomMap_CastorDarknut_0:: @ 0810734C +.ifdef EU + map_bottom 0xA05C0-0x4, 0x1BA, 1 + map_top 0xA0724-0x4, 0x1BA, 1, 1 +.else map_bottom 0xA05C0, 0x1BA, 1 map_top 0xA0724, 0x1BA, 1, 1 +.endif gAreaRoomMap_CastorDarknut_1:: @ 08107364 +.ifdef EU + map_bottom 0xA0768-0x4, 0x280, 1 + map_top 0xA08BC-0x4, 0x280, 1, 1 +.else map_bottom 0xA0768, 0x280, 1 map_top 0xA08BC, 0x280, 1, 1 +.endif gAreaRoomMaps_CastorDarknut:: @ 0810737C .4byte gAreaRoomMap_CastorDarknut_0 .4byte gAreaRoomMap_CastorDarknut_1 gAreaRoomMap_Caves_0:: @ 08107384 +.ifdef EU + map_bottom 0xB04AC-0x4, 0x372, 1 + map_top 0xB06C8-0x4, 0x372, 1, 1 +.else map_bottom 0xB04AC, 0x372, 1 map_top 0xB06C8, 0x372, 1, 1 +.endif gAreaRoomMap_Caves_1:: @ 0810739C +.ifdef EU + map_bottom 0xB0738-0x4, 0x2B2, 1 + map_top 0xB090C-0x4, 0x2B2, 1, 1 +.else map_bottom 0xB0738, 0x2B2, 1 map_top 0xB090C, 0x2B2, 1, 1 +.endif gAreaRoomMap_Caves_2:: @ 081073B4 +.ifdef EU + map_bottom 0xB09B8-0x4, 0x12C, 1 + map_top 0xB0ABC-0x4, 0x12C, 1, 1 +.else map_bottom 0xB09B8, 0x12C, 1 map_top 0xB0ABC, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_3:: @ 081073CC +.ifdef EU + map_bottom 0xB0AE8-0x4, 0x12C, 1 + map_top 0xB0BF4-0x4, 0x12C, 1, 1 +.else map_bottom 0xB0AE8, 0x12C, 1 map_top 0xB0BF4, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_4:: @ 081073E4 +.ifdef EU + map_bottom 0xB0C20-0x4, 0x12C, 1 + map_top 0xB0D10-0x4, 0x12C, 1, 1 +.else map_bottom 0xB0C20, 0x12C, 1 map_top 0xB0D10, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_5:: @ 081073FC +.ifdef EU + map_bottom 0xB0D3C-0x4, 0x12C, 1 + map_top 0xB0E08-0x4, 0x12C, 1, 1 +.else map_bottom 0xB0D3C, 0x12C, 1 map_top 0xB0E08, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_6:: @ 08107414 +.ifdef EU + map_bottom 0xB0E34-0x4, 0x1A4, 1 + map_top 0xB0F48-0x4, 0x1A4, 1, 1 +.else map_bottom 0xB0E34, 0x1A4, 1 map_top 0xB0F48, 0x1A4, 1, 1 +.endif gAreaRoomMap_Caves_7:: @ 0810742C +.ifdef EU + map_bottom 0xB0FE0-0x4, 0x12C, 1 + map_top 0xB10E8-0x4, 0x12C, 1, 1 +.else map_bottom 0xB0FE0, 0x12C, 1 map_top 0xB10E8, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_8:: @ 08107444 +.ifdef EU + map_bottom 0xB113C-0x4, 0x12C, 1 + map_top 0xB1250-0x4, 0x12C, 1, 1 +.else map_bottom 0xB113C, 0x12C, 1 map_top 0xB1250, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_9:: @ 0810745C +.ifdef EU + map_bottom 0xB1290-0x4, 0x12C, 1 + map_top 0xB1390-0x4, 0x12C, 1, 1 +.else map_bottom 0xB1290, 0x12C, 1 map_top 0xB1390, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_10:: @ 08107474 +.ifdef EU + map_bottom 0xB13F0-0x4, 0x12C, 1 + map_top 0xB14EC-0x4, 0x12C, 1, 1 +.else map_bottom 0xB13F0, 0x12C, 1 map_top 0xB14EC, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_11:: @ 0810748C +.ifdef EU + map_bottom 0xB1520-0x4, 0x12C, 1 + map_top 0xB1624-0x4, 0x12C, 1, 1 +.else map_bottom 0xB1520, 0x12C, 1 map_top 0xB1624, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_12:: @ 081074A4 +.ifdef EU + map_bottom 0xB1658-0x4, 0x1E0, 1 + map_top 0xB17C0-0x4, 0x1E0, 1, 1 +.else map_bottom 0xB1658, 0x1E0, 1 map_top 0xB17C0, 0x1E0, 1, 1 +.endif gAreaRoomMap_Caves_13:: @ 081074BC +.ifdef EU + map_bottom 0xB183C-0x4, 0x1E0, 1 + map_top 0xB1940-0x4, 0x1E0, 1, 1 +.else map_bottom 0xB183C, 0x1E0, 1 map_top 0xB1940, 0x1E0, 1, 1 +.endif gAreaRoomMap_Caves_14:: @ 081074D4 +.ifdef EU + map_bottom 0xB19D0-0x4, 0x208, 1 + map_top 0xB1B00-0x4, 0x208, 1, 1 +.else map_bottom 0xB19D0, 0x208, 1 map_top 0xB1B00, 0x208, 1, 1 +.endif gAreaRoomMap_Caves_15:: @ 081074EC +.ifdef EU + map_bottom 0xB1B7C-0x4, 0x12C, 1 + map_top 0xB1C88-0x4, 0x12C, 1, 1 +.else map_bottom 0xB1B7C, 0x12C, 1 map_top 0xB1C88, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_16:: @ 08107504 +.ifdef EU + map_bottom 0xB1CBC-0x4, 0x12C, 1 + map_top 0xB1DAC-0x4, 0x12C, 1, 1 +.else map_bottom 0xB1CBC, 0x12C, 1 map_top 0xB1DAC, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_17:: @ 0810751C +.ifdef EU + map_bottom 0xB1DE0-0x4, 0x12C, 1 + map_top 0xB1EDC-0x4, 0x12C, 1, 1 +.else map_bottom 0xB1DE0, 0x12C, 1 map_top 0xB1EDC, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_18:: @ 08107534 +.ifdef EU + map_bottom 0xB1F10-0x4, 0x12C, 1 + map_top 0xB200C-0x4, 0x12C, 1, 1 +.else map_bottom 0xB1F10, 0x12C, 1 map_top 0xB200C, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_19:: @ 0810754C +.ifdef EU + map_bottom 0xB2038-0x4, 0x12C, 1 + map_top 0xB2124-0x4, 0x12C, 1, 1 +.else map_bottom 0xB2038, 0x12C, 1 map_top 0xB2124, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_20:: @ 08107564 +.ifdef EU + map_bottom 0xB2174-0x4, 0x12C, 1 + map_top 0xB225C-0x4, 0x12C, 1, 1 +.else map_bottom 0xB2174, 0x12C, 1 map_top 0xB225C, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_21:: @ 0810757C +.ifdef EU + map_bottom 0xB2294-0x4, 0x1C2, 1 + map_top 0xB2374-0x4, 0x1C2, 1, 1 +.else map_bottom 0xB2294, 0x1C2, 1 map_top 0xB2374, 0x1C2, 1, 1 +.endif gAreaRoomMap_Caves_22:: @ 08107594 +.ifdef EU + map_bottom 0xB2410-0x4, 0x12C, 1 + map_top 0xB2524-0x4, 0x12C, 1, 1 +.else map_bottom 0xB2410, 0x12C, 1 map_top 0xB2524, 0x12C, 1, 1 +.endif gAreaRoomMap_Caves_23:: @ 081075AC +.ifdef EU + map_bottom 0xB2560-0x4, 0x12C, 1 + map_top 0xB2624-0x4, 0x12C, 1, 1 +.else map_bottom 0xB2560, 0x12C, 1 map_top 0xB2624, 0x12C, 1, 1 +.endif gAreaRoomMaps_Caves:: @ 081075C4 .4byte gAreaRoomMap_Caves_0 @@ -3980,44 +6815,94 @@ gAreaRoomMaps_Caves:: @ 081075C4 .4byte gAreaRoomMap_Caves_23 gAreaRoomMap_VeilFallsCaves_0:: @ 08107624 +.ifdef EU + map_bottom 0xB2658-0x4, 0x1A4, 1 + map_top 0xB277C-0x4, 0x1A4, 1, 1 +.else map_bottom 0xB2658, 0x1A4, 1 map_top 0xB277C, 0x1A4, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_1:: @ 0810763C +.ifdef EU + map_bottom 0xB27E8-0x4, 0x2D0, 1 + map_top 0xB297C-0x4, 0x2D0, 1, 1 +.else map_bottom 0xB27E8, 0x2D0, 1 map_top 0xB297C, 0x2D0, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_2:: @ 08107654 +.ifdef EU + map_bottom 0xB2A3C-0x4, 0x186, 1 + map_top 0xB2B18-0x4, 0x186, 1, 1 +.else map_bottom 0xB2A3C, 0x186, 1 map_top 0xB2B18, 0x186, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_3:: @ 0810766C +.ifdef EU + map_bottom 0xB2BAC-0x4, 0x1E0, 1 + map_top 0xB2CE8-0x4, 0x1E0, 1, 1 +.else map_bottom 0xB2BAC, 0x1E0, 1 map_top 0xB2CE8, 0x1E0, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_4:: @ 08107684 +.ifdef EU + map_bottom 0xB2D34-0x4, 0x12C, 1 + map_top 0xB2E14-0x4, 0x12C, 1, 1 +.else map_bottom 0xB2D34, 0x12C, 1 map_top 0xB2E14, 0x12C, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_5:: @ 0810769C +.ifdef EU + map_bottom 0xB2E88-0x4, 0x12C, 1 + map_top 0xB2F50-0x4, 0x12C, 1, 1 +.else map_bottom 0xB2E88, 0x12C, 1 map_top 0xB2F50, 0x12C, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_6:: @ 081076B4 +.ifdef EU + map_bottom 0xB2FD8-0x4, 0x12C, 1 + map_top 0xB309C-0x4, 0x12C, 1, 1 +.else map_bottom 0xB2FD8, 0x12C, 1 map_top 0xB309C, 0x12C, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_7:: @ 081076CC +.ifdef EU + map_bottom 0xB310C-0x4, 0x258, 1 + map_top 0xB328C-0x4, 0x258, 1, 1 +.else map_bottom 0xB310C, 0x258, 1 map_top 0xB328C, 0x258, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_8:: @ 081076E4 +.ifdef EU + map_bottom 0xB3318-0x4, 0x258, 1 + map_top 0xB34E8-0x4, 0x258, 1, 1 +.else map_bottom 0xB3318, 0x258, 1 map_top 0xB34E8, 0x258, 1, 1 +.endif gAreaRoomMap_VeilFallsCaves_9:: @ 081076FC +.ifdef EU + map_bottom 0xB3578-0x4, 0x12C, 1 + map_top 0xB3694-0x4, 0x12C, 1, 1 +.else map_bottom 0xB3578, 0x12C, 1 map_top 0xB3694, 0x12C, 1, 1 +.endif gAreaRoomMaps_VeilFallsCaves:: @ 08107714 .4byte gAreaRoomMap_VeilFallsCaves_0 @@ -4032,12 +6917,22 @@ gAreaRoomMaps_VeilFallsCaves:: @ 08107714 .4byte gAreaRoomMap_VeilFallsCaves_9 gAreaRoomMap_RoyalValleyGraves_0:: @ 0810773C +.ifdef EU + map_bottom 0xB36C8-0x4, 0x12C, 1 + map_top 0xB37E4-0x4, 0x12C, 1, 1 +.else map_bottom 0xB36C8, 0x12C, 1 map_top 0xB37E4, 0x12C, 1, 1 +.endif gAreaRoomMap_RoyalValleyGraves_1:: @ 08107754 +.ifdef EU + map_bottom 0xB3818-0x4, 0x258, 1 + map_top 0xB3984-0x4, 0x258, 1, 1 +.else map_bottom 0xB3818, 0x258, 1 map_top 0xB3984, 0x258, 1, 1 +.endif gAreaRoomMaps_RoyalValleyGraves:: @ 0810776C .4byte gAreaRoomMap_RoyalValleyGraves_0 @@ -4047,10 +6942,15 @@ gAreaRoomMap_45_0:: @ 08107774 .ifdef JP map_bottom 0x278158+0x74, 0x1FE, 1 map_top 0x27828C+0x74, 0x1FE, 1, 1 +.else +.ifdef EU + map_bottom 0x278158+0x48, 0x1FE, 1 + map_top 0x27828C+0x48, 0x1FE, 1, 1 .else map_bottom 0x278158, 0x1FE, 1 map_top 0x27828C, 0x1FE, 1, 1 .endif +.endif gAreaRoomMaps_45:: @ 0810778C .4byte gAreaRoomMap_45_0 @@ -4059,73 +6959,113 @@ gAreaRoomMap_46_0:: @ 08107790 .ifdef JP map_bottom 0x2782D0+0x74, 0x286, 1 map_top 0x278454+0x74, 0x286, 1, 1 +.else +.ifdef EU + map_bottom 0x2782D0+0x48, 0x286, 1 + map_top 0x278454+0x48, 0x286, 1, 1 .else map_bottom 0x2782D0, 0x286, 1 map_top 0x278454, 0x286, 1, 1 .endif +.endif gAreaRoomMap_46_1:: @ 081077A8 .ifdef JP map_bottom 0x2784C4+0x74, 0x30E, 1 map_top 0x2786E0+0x74, 0x30E, 1, 1 +.else +.ifdef EU + map_bottom 0x2784C4+0x48, 0x30E, 1 + map_top 0x2786E0+0x48, 0x30E, 1, 1 .else map_bottom 0x2784C4, 0x30E, 1 map_top 0x2786E0, 0x30E, 1, 1 .endif +.endif gAreaRoomMap_46_2:: @ 081077C0 .ifdef JP map_bottom 0x278790+0x74, 0x286, 1 map_top 0x278908+0x74, 0x286, 1, 1 +.else +.ifdef EU + map_bottom 0x278790+0x48, 0x286, 1 + map_top 0x278908+0x48, 0x286, 1, 1 .else map_bottom 0x278790, 0x286, 1 map_top 0x278908, 0x286, 1, 1 .endif +.endif gAreaRoomMap_46_3:: @ 081077D8 .ifdef JP map_bottom 0x2789A0+0x74, 0x286, 1 map_top 0x278AEC+0x74, 0x286, 1, 1 +.else +.ifdef EU + map_bottom 0x2789A0+0x48, 0x286, 1 + map_top 0x278AEC+0x48, 0x286, 1, 1 .else map_bottom 0x2789A0, 0x286, 1 map_top 0x278AEC, 0x286, 1, 1 .endif +.endif gAreaRoomMap_46_4:: @ 081077F0 .ifdef JP map_bottom 0x278B88+0x74, 0x30E, 1 map_top 0x278D38+0x74, 0x30E, 1, 1 +.else +.ifdef EU + map_bottom 0x278B88+0x48, 0x30E, 1 + map_top 0x278D38+0x48, 0x30E, 1, 1 .else map_bottom 0x278B88, 0x30E, 1 map_top 0x278D38, 0x30E, 1, 1 .endif +.endif gAreaRoomMap_46_5:: @ 08107808 .ifdef JP map_bottom 0x278DDC+0x74, 0x286, 1 map_top 0x278F2C+0x74, 0x286, 1, 1 +.else +.ifdef EU + map_bottom 0x278DDC+0x48, 0x286, 1 + map_top 0x278F2C+0x48, 0x286, 1, 1 .else map_bottom 0x278DDC, 0x286, 1 map_top 0x278F2C, 0x286, 1, 1 .endif +.endif gAreaRoomMap_46_6:: @ 08107820 .ifdef JP map_bottom 0x278FA8+0x74, 0x720, 1 map_top 0x27921C+0x74, 0x720, 1, 1 +.else +.ifdef EU + map_bottom 0x278FA8+0x48, 0x720, 1 + map_top 0x27921C+0x48, 0x720, 1, 1 .else map_bottom 0x278FA8, 0x720, 1 map_top 0x27921C, 0x720, 1, 1 .endif +.endif gAreaRoomMap_46_7:: @ 08107838 .ifdef JP map_bottom 0x27932C+0x74, 0x2F2, 1 map_top 0x2794A4+0x74, 0x2F2, 1, 1 +.else +.ifdef EU + map_bottom 0x27932C+0x48, 0x2F2, 1 + map_top 0x2794A4+0x48, 0x2F2, 1, 1 .else map_bottom 0x27932C, 0x2F2, 1 map_top 0x2794A4, 0x2F2, 1, 1 .endif +.endif gAreaRoomMaps_46:: @ 08107850 .4byte gAreaRoomMap_46_0 @@ -4141,10 +7081,15 @@ gAreaRoomMap_08107870:: @ 08107870 .ifdef JP map_bottom 0x279520+0x74, 0xC80, 1 map_top 0x2799B0+0x74, 0xC80, 1, 1 +.else +.ifdef EU + map_bottom 0x279520+0x48, 0xC80, 1 + map_top 0x2799B0+0x48, 0xC80, 1, 1 .else map_bottom 0x279520, 0xC80, 1 map_top 0x2799B0, 0xC80, 1, 1 .endif +.endif @ Unused gAreaRoomMaps_08107888:: @ 08107888 @@ -4154,10 +7099,15 @@ gAreaRoomMap_4D_0:: @ 0810788C .ifdef JP map_bottom 0x279D28+0x74, 0xCD0, 1 map_top 0x27A2F4+0x74, 0xCD0, 1, 1 +.else +.ifdef EU + map_bottom 0x279D28+0x48, 0xCD0, 1 + map_top 0x27A2F4+0x48, 0xCD0, 1, 1 .else map_bottom 0x279D28, 0xCD0, 1 map_top 0x27A2F4, 0xCD0, 1, 1 .endif +.endif gAreaRoomMaps_4D:: @ 081078A4 .4byte gAreaRoomMap_4D_0 @@ -4166,10 +7116,15 @@ gAreaRoomMap_57_0:: @ 081078A8 .ifdef JP map_bottom 0x27A574+0x74, 0xC80, 1 map_top 0x27AAE4+0x74, 0xC80, 1, 1 +.else +.ifdef EU + map_bottom 0x27A574+0x48, 0xC80, 1 + map_top 0x27AAE4+0x48, 0xC80, 1, 1 .else map_bottom 0x27A574, 0xC80, 1 map_top 0x27AAE4, 0xC80, 1, 1 .endif +.endif gAreaRoomMaps_57:: @ 081078C0 .4byte gAreaRoomMap_57_0 @@ -4178,10 +7133,15 @@ gAreaRoomMap_5F_0:: @ 081078C4 .ifdef JP map_bottom 0x27AD50+0x74, 0xC80, 1 map_top 0x27B118+0x74, 0xC80, 1, 1 +.else +.ifdef EU + map_bottom 0x27AD50+0x48, 0xC80, 1 + map_top 0x27B118+0x48, 0xC80, 1, 1 .else map_bottom 0x27AD50, 0xC80, 1 map_top 0x27B118, 0xC80, 1, 1 .endif +.endif gAreaRoomMaps_5F:: @ 081078DC .4byte gAreaRoomMap_5F_0 @@ -4190,10 +7150,15 @@ gAreaRoomMap_67_0:: @ 081078E0 .ifdef JP map_bottom 0x27B3A0+0x74, 0x12C, 1 map_top 0x27B470+0x74, 0x12C, 1, 1 +.else +.ifdef EU + map_bottom 0x27B3A0+0x48, 0x12C, 1 + map_top 0x27B470+0x48, 0x12C, 1, 1 .else map_bottom 0x27B3A0, 0x12C, 1 map_top 0x27B470, 0x12C, 1, 1 .endif +.endif gAreaRoomMaps_67:: @ 081078F8 .4byte gAreaRoomMap_67_0 @@ -4202,10 +7167,15 @@ gAreaRoomMap_6F_0:: @ 081078FC .ifdef JP map_bottom 0x27B4AC+0x74, 0xC80, 1 map_top 0x27B974+0x74, 0xC80, 1, 1 +.else +.ifdef EU + map_bottom 0x27B4AC+0x48, 0xC80, 1 + map_top 0x27B974+0x48, 0xC80, 1, 1 .else map_bottom 0x27B4AC, 0xC80, 1 map_top 0x27B974, 0xC80, 1, 1 .endif +.endif gAreaRoomMaps_6F:: @ 08107914 .4byte gAreaRoomMap_6F_0 @@ -4214,10 +7184,15 @@ gAreaRoomMap_77_0:: @ 08107918 .ifdef JP map_bottom 0x27BCCC+0x74, 0x1040, 1 map_top 0x27C2C8+0x74, 0x1040, 1, 1 +.else +.ifdef EU + map_bottom 0x27BCCC+0x48, 0x1040, 1 + map_top 0x27C2C8+0x48, 0x1040, 1, 1 .else map_bottom 0x27BCCC, 0x1040, 1 map_top 0x27C2C8, 0x1040, 1, 1 .endif +.endif gAreaRoomMaps_77:: @ 08107930 .4byte gAreaRoomMap_77_0 @@ -4226,10 +7201,15 @@ gAreaRoomMap_7F_0:: @ 08107934 .ifdef JP map_bottom 0x27C720+0x74, 0xC80, 1 map_top 0x27CC28+0x74, 0xC80, 1, 1 +.else +.ifdef EU + map_bottom 0x27C720+0x48, 0xC80, 1 + map_top 0x27CC28+0x48, 0xC80, 1, 1 .else map_bottom 0x27C720, 0xC80, 1 map_top 0x27CC28, 0xC80, 1, 1 .endif +.endif gAreaRoomMaps_7F:: @ 0810794C .4byte gAreaRoomMap_7F_0 @@ -4238,10 +7218,15 @@ gAreaRoomMap_87_0:: @ 08107950 .ifdef JP map_bottom 0x27CF58+0x74, 0xF3C, 1 map_top 0x27D71C+0x74, 0xF3C, 1, 1 +.else +.ifdef EU + map_bottom 0x27CF58+0x48, 0xF3C, 1 + map_top 0x27D71C+0x48, 0xF3C, 1, 1 .else map_bottom 0x27CF58, 0xF3C, 1 map_top 0x27D71C, 0xF3C, 1, 1 .endif +.endif gAreaRoomMaps_87:: @ 08107968 .4byte gAreaRoomMap_87_0 @@ -4250,10 +7235,15 @@ gAreaRoomMap_8F_0:: @ 0810796C .ifdef JP map_bottom 0x27DA00+0x74, 0xFA0, 1 map_top 0x27DFF4+0x74, 0xFA0, 1, 1 +.else +.ifdef EU + map_bottom 0x27DA00+0x48, 0xFA0, 1 + map_top 0x27DFF4+0x48, 0xFA0, 1, 1 .else map_bottom 0x27DA00, 0xFA0, 1 map_top 0x27DFF4, 0xFA0, 1, 1 .endif +.endif gAreaRoomMaps_8F:: @ 08107984 .4byte gAreaRoomMap_8F_0 diff --git a/data/metatile_headers.s b/data/metatile_headers.s index 21c03b72..e3b2c66c 100755 --- a/data/metatile_headers.s +++ b/data/metatile_headers.s @@ -23,259 +23,552 @@ gAreaMetatiles_CastorWilds:: @ 0810270C metatile_types_top 0x2062C, 0xFFC, 1, 1 gAreaMetatiles_HyruleTown:: @ 0810273C +.ifdef EU + metatiles_bottom 0x29774-0x4, 0x4000, 1 + metatiles_top 0x2B788-0x4, 0x3FF0, 1 + metatile_types_bottom 0x2D47C-0x4, 0x1000, 1 + metatile_types_top 0x2D984-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x29774, 0x4000, 1 metatiles_top 0x2B788, 0x3FF0, 1 metatile_types_bottom 0x2D47C, 0x1000, 1 metatile_types_top 0x2D984, 0xFFC, 1, 1 +.endif gAreaMetatiles_MtCrenel:: @ 0810276C +.ifdef EU + metatiles_bottom 0x43FF0-0x4, 0x4000, 1 + metatiles_top 0x45D0C-0x4, 0x3FF0, 1 + metatile_types_bottom 0x46BA4-0x4, 0x1000, 1 + metatile_types_top 0x4712C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x43FF0, 0x4000, 1 metatiles_top 0x45D0C, 0x3FF0, 1 metatile_types_bottom 0x46BA4, 0x1000, 1 metatile_types_top 0x4712C, 0xFFC, 1, 1 +.endif gAreaMetatiles_HyruleField:: @ 0810279C +.ifdef EU + metatiles_bottom 0x5D3B8-0x4, 0x4000, 1 + metatiles_top 0x5F584-0x4, 0x3FF0, 1 + metatile_types_bottom 0x6064C-0x4, 0x1000, 1 + metatile_types_top 0x60C64-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x5D3B8, 0x4000, 1 metatiles_top 0x5F584, 0x3FF0, 1 metatile_types_bottom 0x6064C, 0x1000, 1 metatile_types_top 0x60C64, 0xFFC, 1, 1 +.endif gAreaMetatiles_CastleGarden:: @ 081027CC +.ifdef EU + metatiles_bottom 0x6B79C-0x4, 0x3000, 1 + metatiles_top 0x6CD14-0x4, 0x3FF0, 1 + metatile_types_bottom 0x6D7A8-0x4, 0xC00, 1 + metatile_types_top 0x6DAE4-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x6B79C, 0x3000, 1 metatiles_top 0x6CD14, 0x3FF0, 1 metatile_types_bottom 0x6D7A8, 0xC00, 1 metatile_types_top 0x6DAE4, 0xFFC, 1, 1 +.endif gAreaMetatiles_CloudTops:: @ 081027FC +.ifdef EU + metatiles_bottom 0x72898-0x4, 0x3FB0, 1 + metatiles_top 0x73B54-0x4, 0x3FF0, 1 + metatile_types_bottom 0x74534-0x4, 0xFEC, 1 + metatile_types_top 0x74824-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x72898, 0x3FB0, 1 metatiles_top 0x73B54, 0x3FF0, 1 metatile_types_bottom 0x74534, 0xFEC, 1 metatile_types_top 0x74824, 0xFFC, 1, 1 +.endif gAreaMetatiles_RoyalValley:: @ 0810282C +.ifdef EU + metatiles_bottom 0x7CAB8-0x4, 0x4000, 1 + metatiles_top 0x7DBEC-0x4, 0x3FF0, 1 + metatile_types_bottom 0x7E6F8-0x4, 0x1000, 1 + metatile_types_top 0x7EA4C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x7CAB8, 0x4000, 1 metatiles_top 0x7DBEC, 0x3FF0, 1 metatile_types_bottom 0x7E6F8, 0x1000, 1 metatile_types_top 0x7EA4C, 0xFFC, 1, 1 +.endif gAreaMetatiles_Beanstalks:: @ 0810285C +.ifdef EU + metatiles_bottom 0x8B610-0x4, 0x5A8, 1 + metatile_types_bottom 0x8B930-0x4, 0x16A, 1, 1 +.else metatiles_bottom 0x8B610, 0x5A8, 1 metatile_types_bottom 0x8B930, 0x16A, 1, 1 +.endif gAreaMetatiles_CrenelCaves:: @ 08102874 +.ifdef EU + metatiles_bottom 0x93F04-0x4, 0x3F80, 1 + metatiles_top 0x95ED0-0x4, 0x3F40, 1 + metatile_types_bottom 0x9775C-0x4, 0xFE0, 1 + metatile_types_top 0x97D58-0x4, 0xFD0, 1, 1 +.else metatiles_bottom 0x93F04, 0x3F80, 1 metatiles_top 0x95ED0, 0x3F40, 1 metatile_types_bottom 0x9775C, 0xFE0, 1 metatile_types_top 0x97D58, 0xFD0, 1, 1 +.endif gAreaMetatiles_GreatFairies:: @ 081028A4 +.ifdef EU + metatiles_bottom 0x9E2D0-0x4, 0x17A8, 1 + metatiles_top 0x9EF9C-0x4, 0x1070, 1 + metatile_types_bottom 0x9F4D0-0x4, 0x5EA, 1 + metatile_types_top 0x9F650-0x4, 0x41C, 1, 1 +.else metatiles_bottom 0x9E2D0, 0x17A8, 1 metatiles_top 0x9EF9C, 0x1070, 1 metatile_types_bottom 0x9F4D0, 0x5EA, 1 metatile_types_top 0x9F650, 0x41C, 1, 1 +.endif gAreaMetatiles_MinishVillage:: @ 081028D4 +.ifdef EU + metatiles_bottom 0xD9690-0x4, 0x35A8, 1 + metatiles_top 0xDB294-0x4, 0x3228, 1 + metatile_types_bottom 0xDC79C-0x4, 0xD6A, 1 + metatile_types_top 0xDCA88-0x4, 0xC8A, 1, 1 +.else metatiles_bottom 0xD9690, 0x35A8, 1 metatiles_top 0xDB294, 0x3228, 1 metatile_types_bottom 0xDC79C, 0xD6A, 1 metatile_types_top 0xDCA88, 0xC8A, 1, 1 +.endif gAreaMetatiles_MelarisMine:: @ 08102904 +.ifdef EU + metatiles_bottom 0xE8D1C-0x4, 0x27C0, 1 + metatiles_top 0xEA3A0-0x4, 0x308, 1 + metatile_types_bottom 0xEA464-0x4, 0x9F0, 1 + metatile_types_top 0xEA684-0x4, 0xC2, 1, 1 +.else metatiles_bottom 0xE8D1C, 0x27C0, 1 metatiles_top 0xEA3A0, 0x308, 1 metatile_types_bottom 0xEA464, 0x9F0, 1 metatile_types_top 0xEA684, 0xC2, 1, 1 +.endif gAreaMetatiles_MnishPaths1:: @ 08102934 +.ifdef EU + metatiles_bottom 0xEE698-0x4, 0x1420, 1 + metatile_types_bottom 0xEF330-0x4, 0x508, 1, 1 +.else metatiles_bottom 0xEE698, 0x1420, 1 metatile_types_bottom 0xEF330, 0x508, 1, 1 +.endif gAreaMetatiles_CrenelMinishPaths:: @ 0810294C +.ifdef EU + metatiles_bottom 0xF5734-0x4, 0x1EB8, 1 + metatile_types_bottom 0xF698C-0x4, 0x7AE, 1, 1 +.else metatiles_bottom 0xF5734, 0x1EB8, 1 metatile_types_bottom 0xF698C, 0x7AE, 1, 1 +.endif gAreaMetatiles_MinishHouseInteriors:: @ 08102964 +.ifdef EU + metatiles_bottom 0x93F04-0x4, 0x3F80, 1 + metatiles_top 0x95ED0-0x4, 0x3F40, 1 + metatile_types_bottom 0x9775C-0x4, 0xFE0, 1 + metatile_types_top 0x97D58-0x4, 0xFD0, 1, 1 +.else metatiles_bottom 0x93F04, 0x3F80, 1 metatiles_top 0x95ED0, 0x3F40, 1 metatile_types_bottom 0x9775C, 0xFE0, 1 metatile_types_top 0x97D58, 0xFD0, 1, 1 +.endif gAreaMetatiles_HouseInteriors1:: @ 08102994 +.ifdef EU + metatiles_bottom 0xFCE7C-0x4, 0x3188, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0xFE120-0x4, 0xC62, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0xFCE7C, 0x3188, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0xFE120, 0xC62, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_HouseInteriors2:: @ 081029C4 +.ifdef EU + metatiles_bottom 0x102AB8-0x4, 0x33A0, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x103D54-0x4, 0xCE8, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x102AB8, 0x33A0, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x103D54, 0xCE8, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_HouseInteriors4:: @ 081029F4 +.ifdef EU + metatiles_bottom 0x10823C-0x4, 0x33A0, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x109530-0x4, 0xCE8, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x10823C, 0x33A0, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x109530, 0xCE8, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_HouseInteriors3:: @ 08102A24 +.ifdef EU + metatiles_bottom 0x10DAA8-0x4, 0x2F20, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x10E9F0-0x4, 0xBC8, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x10DAA8, 0x2F20, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x10E9F0, 0xBC8, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_TreeInteriors:: @ 08102A54 +.ifdef EU + metatiles_bottom 0x112BF0-0x4, 0x3000, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x113A88-0x4, 0xC00, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x112BF0, 0x3000, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x113A88, 0xC00, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_Dojos:: @ 08102A84 +.ifdef EU + metatiles_bottom 0x11D198-0x4, 0x33A0, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x11E030-0x4, 0xCE8, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x11D198, 0x33A0, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x11E030, 0xCE8, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_MinishCracks:: @ 08102AB4 +.ifdef EU + metatiles_bottom 0x118044-0x4, 0x3180, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x118F94-0x4, 0xC60, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x118044, 0x3180, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x118F94, 0xC60, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_ArmosInteriors:: @ 08102AE4 +.ifdef EU + metatiles_bottom 0xA4840-0x4, 0xC50, 1 + metatiles_top 0xA4FB4-0x4, 0xC50, 1 + metatile_types_bottom 0xA5728-0x4, 0x314, 1 + metatile_types_top 0xA5840-0x4, 0x314, 1, 1 +.else metatiles_bottom 0xA4840, 0xC50, 1 metatiles_top 0xA4FB4, 0xC50, 1 metatile_types_bottom 0xA5728, 0x314, 1 metatile_types_top 0xA5840, 0x314, 1, 1 +.endif gAreaMetatiles_MinishRafters:: @ 08102B14 +.ifdef EU + metatiles_bottom 0x120478-0x4, 0x1A30, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x1210C8-0x4, 0x68C, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x120478, 0x1A30, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x1210C8, 0x68C, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_GoronCave:: @ 08102B44 +.ifdef EU + metatiles_bottom 0xAC444-0x4, 0x3F80, 1 + metatiles_top 0xADE48-0x4, 0x3400, 1 + metatile_types_bottom 0xAF650-0x4, 0xFE0, 1 + metatile_types_top 0xAFB8C-0x4, 0xD00, 1, 1 +.else metatiles_bottom 0xAC444, 0x3F80, 1 metatiles_top 0xADE48, 0x3400, 1 metatile_types_bottom 0xAF650, 0xFE0, 1 metatile_types_top 0xAFB8C, 0xD00, 1, 1 +.endif gAreaMetatiles_WindTribeTower:: @ 08102B74 +.ifdef EU + metatiles_bottom 0x125100-0x4, 0x2EB0, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x126040-0x4, 0xBAC, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x125100, 0x2EB0, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x126040, 0xBAC, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_WindTribeTowerRoof:: @ 08102BA4 +.ifdef EU + metatiles_bottom 0x12AAB0-0x4, 0xBC0, 1 + metatiles_top 0x12B13C-0x4, 0xBC0, 1 + metatile_types_bottom 0x12B784-0x4, 0x2F0, 1 + metatile_types_top 0x12B840-0x4, 0x2F0, 1, 1 +.else metatiles_bottom 0x12AAB0, 0xBC0, 1 metatiles_top 0x12B13C, 0xBC0, 1 metatile_types_bottom 0x12B784, 0x2F0, 1 metatile_types_top 0x12B840, 0x2F0, 1, 1 +.endif gAreaMetatiles_MinishCaves:: @ 08102BD4 +.ifdef EU + metatiles_bottom 0xB9118-0x4, 0x3F80, 1 + metatiles_top 0xBAF54-0x4, 0x3F80, 1 + metatile_types_bottom 0xBC0CC-0x4, 0xFE0, 1 + metatile_types_top 0xBC570-0x4, 0xFE0, 1, 1 +.else metatiles_bottom 0xB9118, 0x3F80, 1 metatiles_top 0xBAF54, 0x3F80, 1 metatile_types_bottom 0xBC0CC, 0xFE0, 1 metatile_types_top 0xBC570, 0xFE0, 1, 1 +.endif gAreaMetatiles_CastleGardenMinishHoles:: @ 08102C04 +.ifdef EU + metatiles_bottom 0xBFB4C-0x4, 0x13A8, 1 + metatiles_top 0xC0570-0x4, 0x1680, 1 + metatile_types_bottom 0xC1030-0x4, 0x4EA, 1 + metatile_types_top 0xC11B8-0x4, 0x5A0, 1, 1 +.else metatiles_bottom 0xBFB4C, 0x13A8, 1 metatiles_top 0xC0570, 0x1680, 1 metatile_types_bottom 0xC1030, 0x4EA, 1 metatile_types_top 0xC11B8, 0x5A0, 1, 1 +.endif gAreaMetatiles_EzloCutscene:: @ 08102C34 +.ifdef EU + metatiles_bottom 0x12EEBC-0x4, 0x1A20, 1 + metatiles_top 0xF7AD8-0x4, 0x3FF0, 1 + metatile_types_bottom 0x12F564-0x4, 0x688, 1 + metatile_types_top 0xF8A5C-0x4, 0xFFC, 1, 1 +.else metatiles_bottom 0x12EEBC, 0x1A20, 1 metatiles_top 0xF7AD8, 0x3FF0, 1 metatile_types_bottom 0x12F564, 0x688, 1 metatile_types_top 0xF8A5C, 0xFFC, 1, 1 +.endif gAreaMetatiles_HyruleTownUnderground:: @ 08102C64 +.ifdef EU + metatiles_bottom 0x1A51B8-0x4, 0x3E80, 1 + metatiles_top 0x1A7454-0x4, 0x3610, 1 + metatile_types_bottom 0x1A8B10-0x4, 0xFA0, 1 + metatile_types_top 0x1A9000-0x4, 0xD84, 1, 1 +.else metatiles_bottom 0x1A51B8, 0x3E80, 1 metatiles_top 0x1A7454, 0x3610, 1 metatile_types_bottom 0x1A8B10, 0xFA0, 1 metatile_types_top 0x1A9000, 0xD84, 1, 1 +.endif gAreaMetatiles_DeepwoodShrine:: @ 08102C94 +.ifdef EU + metatiles_bottom 0x1B20C4-0x4, 0x3B28, 1 + metatiles_top 0x1B4644-0x4, 0x3620, 1 + metatile_types_bottom 0x1B6044-0x4, 0xECA, 1 + metatile_types_top 0x1B64F8-0x4, 0xD88, 1, 1 +.else metatiles_bottom 0x1B20C4, 0x3B28, 1 metatiles_top 0x1B4644, 0x3620, 1 metatile_types_bottom 0x1B6044, 0xECA, 1 metatile_types_top 0x1B64F8, 0xD88, 1, 1 +.endif gAreaMetatiles_DeepwoodShrineBoss:: @ 08102CC4 +.ifdef EU + metatiles_bottom 0x1B9E08-0x4, 0x3620, 1 + metatiles_top 0x1BAF34-0x4, 0x11F8, 1 + metatile_types_bottom 0x1BB24C-0x4, 0xD88, 1 + metatile_types_top 0x1BB4BC-0x4, 0x47E, 1, 1 +.else metatiles_bottom 0x1B9E08, 0x3620, 1 metatiles_top 0x1BAF34, 0x11F8, 1 metatile_types_bottom 0x1BB24C, 0xD88, 1 metatile_types_top 0x1BB4BC, 0x47E, 1, 1 +.endif gAreaMetatiles_DeepwoodShrineEntry:: @ 08102CF4 +.ifdef EU + metatiles_bottom 0x1BE520-0x4, 0xD08, 1 + metatiles_top 0x1BEB0C-0x4, 0x9F8, 1 + metatile_types_bottom 0x1BEF10-0x4, 0x342, 1 + metatile_types_top 0x1BEFC0-0x4, 0x27E, 1, 1 +.else metatiles_bottom 0x1BE520, 0xD08, 1 metatiles_top 0x1BEB0C, 0x9F8, 1 metatile_types_bottom 0x1BEF10, 0x342, 1 metatile_types_top 0x1BEFC0, 0x27E, 1, 1 +.endif gAreaMetatiles_CaveOfFlames:: @ 08102D24 +.ifdef EU + metatiles_bottom 0x1CA0C8-0x4, 0x3B08, 1 + metatiles_top 0x1CBCF4-0x4, 0x3F28, 1 + metatile_types_bottom 0x1CD6F4-0x4, 0xEC2, 1 + metatile_types_top 0x1CDB88-0x4, 0xFCA, 1, 1 +.else metatiles_bottom 0x1CA0C8, 0x3B08, 1 metatiles_top 0x1CBCF4, 0x3F28, 1 metatile_types_bottom 0x1CD6F4, 0xEC2, 1 metatile_types_top 0x1CDB88, 0xFCA, 1, 1 +.endif gAreaMetatiles_CaveOfFlamesBoss:: @ 08102D54 +.ifdef EU + metatiles_bottom 0x1D378C-0x4, 0x3B08, 1 + metatiles_top 0x1D4B14-0x4, 0x3610, 1 + metatile_types_bottom 0x1D5C70-0x4, 0xEC2, 1 + metatile_types_top 0x1D5EFC-0x4, 0xD84, 1, 1 +.else metatiles_bottom 0x1D378C, 0x3B08, 1 metatiles_top 0x1D4B14, 0x3610, 1 metatile_types_bottom 0x1D5C70, 0xEC2, 1 metatile_types_top 0x1D5EFC, 0xD84, 1, 1 +.endif gAreaMetatiles_FortressOfWinds:: @ 08102D84 +.ifdef EU + metatiles_bottom 0x1E163C-0x4, 0x3868, 1 + metatiles_top 0x1E3670-0x4, 0x3850, 1 + metatile_types_bottom 0x1E4E8C-0x4, 0xE1A, 1 + metatile_types_top 0x1E52DC-0x4, 0xE14, 1, 1 +.else metatiles_bottom 0x1E163C, 0x3868, 1 metatiles_top 0x1E3670, 0x3850, 1 metatile_types_bottom 0x1E4E8C, 0xE1A, 1 metatile_types_top 0x1E52DC, 0xE14, 1, 1 +.endif gAreaMetatiles_FortressOfWindsTop:: @ 08102DB4 +.ifdef EU + metatiles_bottom 0x1F06E4-0x4, 0x1440, 1 + metatiles_top 0x1F11AC-0x4, 0x1368, 1 + metatile_types_bottom 0x1F1740-0x4, 0x510, 1 + metatile_types_top 0x1F18D4-0x4, 0x4DA, 1, 1 +.else metatiles_bottom 0x1F06E4, 0x1440, 1 metatiles_top 0x1F11AC, 0x1368, 1 metatile_types_bottom 0x1F1740, 0x510, 1 metatile_types_top 0x1F18D4, 0x4DA, 1, 1 +.endif gAreaMetatiles_InnerMazaal:: @ 08102DE4 +.ifdef EU + metatiles_bottom 0x1E9E38-0x4, 0x3C00, 1 + metatiles_top 0x1EABE0-0x4, 0x3E70, 1 + metatile_types_bottom 0x1EBAAC-0x4, 0xF00, 1 + metatile_types_top 0x1EBD60-0x4, 0xF9C, 1, 1 +.else metatiles_bottom 0x1E9E38, 0x3C00, 1 metatiles_top 0x1EABE0, 0x3E70, 1 metatile_types_bottom 0x1EBAAC, 0xF00, 1 metatile_types_top 0x1EBD60, 0xF9C, 1, 1 +.endif gAreaMetatiles_TempleOfDroplets:: @ 08102E14 +.ifdef EU + metatiles_bottom 0x1FC4F4-0x4, 0x3D68, 1 + metatiles_top 0x1FE6E0-0x4, 0x4000, 1 + metatile_types_bottom 0x200A9C-0x4, 0xF5A, 1 + metatile_types_top 0x200F70-0x4, 0x1000, 1, 1 +.else metatiles_bottom 0x1FC4F4, 0x3D68, 1 metatiles_top 0x1FE6E0, 0x4000, 1 metatile_types_bottom 0x200A9C, 0xF5A, 1 metatile_types_top 0x200F70, 0x1000, 1, 1 +.endif gAreaMetatiles_61:: @ 08102E44 +.ifdef EU + metatiles_bottom 0x204BD4-0x4, 0x600, 1 + metatiles_top 0x20509C-0x4, 0x398, 1 + metatile_types_bottom 0x2051BC-0x4, 0x180, 1 + metatile_types_top 0x205254-0x4, 0xE6, 1, 1 +.else metatiles_bottom 0x204BD4, 0x600, 1 metatiles_top 0x20509C, 0x398, 1 metatile_types_bottom 0x2051BC, 0x180, 1 metatile_types_top 0x205254, 0xE6, 1, 1 +.endif gAreaMetatiles_RoyalCrypt:: @ 08102E74 +.ifdef EU + metatiles_bottom 0x212144-0x2C, 0x3610, 1 + metatiles_top 0x213D34-0x2C, 0x3610, 1 + metatile_types_bottom 0x215134-0x2C, 0xD84, 1 + metatile_types_top 0x2155E0-0x2C, 0xD84, 1, 1 +.else metatiles_bottom 0x212144, 0x3610, 1 metatiles_top 0x213D34, 0x3610, 1 metatile_types_bottom 0x215134, 0xD84, 1 metatile_types_top 0x2155E0, 0xD84, 1, 1 +.endif gAreaMetatiles_PalaceOfWinds:: @ 08102EA4 +.ifdef EU + metatiles_bottom 0x21D230-0x2C, 0x3620, 1 + metatiles_top 0x21EEA4-0x2C, 0x3620, 1 + metatile_types_bottom 0x220788-0x2C, 0xD88, 1 + metatile_types_top 0x220C54-0x2C, 0xD88, 1, 1 +.else metatiles_bottom 0x21D230, 0x3620, 1 metatiles_top 0x21EEA4, 0x3620, 1 metatile_types_bottom 0x220788, 0xD88, 1 metatile_types_top 0x220C54, 0xD88, 1, 1 +.endif gAreaMetatiles_PalaceOfWindsBoss:: @ 08102ED4 .ifdef JP metatiles_top 0x223680, 0x108, 1 metatile_types_top 0x2236C8, 0x42, 1, 1 +.else +.ifdef EU + metatiles_top 0x22360C+0x48, 0x108, 1 + metatile_types_top 0x223654+0x48, 0x42, 1, 1 .else metatiles_top 0x22360C, 0x108, 1 metatile_types_top 0x223654, 0x42, 1, 1 .endif +.endif gAreaMetatiles_Sanctuary:: @ 08102EEC .ifdef JP @@ -283,12 +576,19 @@ gAreaMetatiles_Sanctuary:: @ 08102EEC metatiles_top 0x235320, 0x3620, 1 metatile_types_bottom 0x236424, 0xD88, 1 metatile_types_top 0x236788, 0xD88, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x2333A4+0x48, 0x3620, 1 + metatiles_top 0x2352AC+0x48, 0x3620, 1 + metatile_types_bottom 0x2363B0+0x48, 0xD88, 1 + metatile_types_top 0x236714+0x48, 0xD88, 1, 1 .else metatiles_bottom 0x2333A4, 0x3620, 1 metatiles_top 0x2352AC, 0x3620, 1 metatile_types_bottom 0x2363B0, 0xD88, 1 metatile_types_top 0x236714, 0xD88, 1, 1 .endif +.endif gAreaMetatiles_HyruleCastle:: @ 08102F1C @@ -297,12 +597,19 @@ gAreaMetatiles_HyruleCastle:: @ 08102F1C metatiles_top 0x23EF98, 0x3610, 1 metatile_types_bottom 0x240440, 0xDF0, 1 metatile_types_top 0x24086C, 0xD84, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x23D1B0+0x48, 0x37C0, 1 + metatiles_top 0x23EF24+0x48, 0x3610, 1 + metatile_types_bottom 0x2403CC+0x48, 0xDF0, 1 + metatile_types_top 0x2407F8+0x48, 0xD84, 1, 1 .else metatiles_bottom 0x23D1B0, 0x37C0, 1 metatiles_top 0x23EF24, 0x3610, 1 metatile_types_bottom 0x2403CC, 0xDF0, 1 metatile_types_top 0x2407F8, 0xD84, 1, 1 .endif +.endif gAreaMetatiles_SanctuaryEntrance:: @ 08102F4C .ifdef JP @@ -310,12 +617,19 @@ gAreaMetatiles_SanctuaryEntrance:: @ 08102F4C metatiles_top 0x246CAC, 0xFF0, 1 metatile_types_bottom 0x24702C, 0x51E, 1 metatile_types_top 0x24719C, 0x3FC, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x2460E4+0x48, 0x1478, 1 + metatiles_top 0x246C38+0x48, 0xFF0, 1 + metatile_types_bottom 0x246FB8+0x48, 0x51E, 1 + metatile_types_top 0x247128+0x48, 0x3FC, 1, 1 .else metatiles_bottom 0x2460E4, 0x1478, 1 metatiles_top 0x246C38, 0xFF0, 1 metatile_types_bottom 0x246FB8, 0x51E, 1 metatile_types_top 0x247128, 0x3FC, 1, 1 .endif +.endif gAreaMetatiles_DarkHyruleCastle:: @ 08102F7C .ifdef JP @@ -323,12 +637,19 @@ gAreaMetatiles_DarkHyruleCastle:: @ 08102F7C metatiles_top 0x250680, 0x37C0, 1 metatile_types_bottom 0x2524F4, 0xFF6, 1 metatile_types_top 0x252A7C, 0xDF0, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x24D8CC+0x48, 0x3FD8, 1 + metatiles_top 0x25060C+0x48, 0x37C0, 1 + metatile_types_bottom 0x252480+0x48, 0xFF6, 1 + metatile_types_top 0x252A08+0x48, 0xDF0, 1, 1 .else metatiles_bottom 0x24D8CC, 0x3FD8, 1 metatiles_top 0x25060C, 0x37C0, 1 metatile_types_bottom 0x252480, 0xFF6, 1 metatile_types_top 0x252A08, 0xDF0, 1, 1 .endif +.endif gAreaMetatiles_DarkHyruleCastleOutside:: @ 08102FAC .ifdef JP @@ -336,12 +657,19 @@ gAreaMetatiles_DarkHyruleCastleOutside:: @ 08102FAC metatiles_top 0x27540C, 0x1EF0, 1 metatile_types_bottom 0x276048, 0xCD0, 1 metatile_types_top 0x276324, 0x7BC, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x273E74+0x48, 0x3340, 1 + metatiles_top 0x275398+0x48, 0x1EF0, 1 + metatile_types_bottom 0x275FD4+0x48, 0xCD0, 1 + metatile_types_top 0x2762B0+0x48, 0x7BC, 1, 1 .else metatiles_bottom 0x273E74, 0x3340, 1 metatiles_top 0x275398, 0x1EF0, 1 metatile_types_bottom 0x275FD4, 0xCD0, 1 metatile_types_top 0x2762B0, 0x7BC, 1, 1 .endif +.endif gAreaMetatiles_DarkHyruleCastleBridge:: @ 08102FDC .ifdef JP @@ -349,12 +677,19 @@ gAreaMetatiles_DarkHyruleCastleBridge:: @ 08102FDC metatiles_top 0x257468, 0x3610, 1 metatile_types_bottom 0x257D78, 0xD84, 1 metatile_types_top 0x257FEC, 0xD84, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x256614+0x48, 0x3610, 1 + metatiles_top 0x2573F4+0x48, 0x3610, 1 + metatile_types_bottom 0x257D04+0x48, 0xD84, 1 + metatile_types_top 0x257F78+0x48, 0xD84, 1, 1 .else metatiles_bottom 0x256614, 0x3610, 1 metatiles_top 0x2573F4, 0x3610, 1 metatile_types_bottom 0x257D04, 0xD84, 1 metatile_types_top 0x257F78, 0xD84, 1, 1 .endif +.endif gAreaMetatiles_VaatisArms:: @ 0810300C .ifdef JP @@ -362,12 +697,19 @@ gAreaMetatiles_VaatisArms:: @ 0810300C metatiles_top 0x264A38, 0xBC0, 1 metatile_types_bottom 0x264DBC, 0x5F2, 1 metatile_types_top 0x264EC0, 0x2F0, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x263CFC+0x48, 0x17C8, 1 + metatiles_top 0x2649C4+0x48, 0xBC0, 1 + metatile_types_bottom 0x264D48+0x48, 0x5F2, 1 + metatile_types_top 0x264E4C+0x48, 0x2F0, 1, 1 .else metatiles_bottom 0x263CFC, 0x17C8, 1 metatiles_top 0x2649C4, 0xBC0, 1 metatile_types_bottom 0x264D48, 0x5F2, 1 metatile_types_top 0x264E4C, 0x2F0, 1, 1 .endif +.endif gAreaMetatiles_Vaati3:: @ 0810303C .ifdef JP @@ -375,12 +717,19 @@ gAreaMetatiles_Vaati3:: @ 0810303C metatiles_top 0x25CDE8, 0x9B8, 1 metatile_types_bottom 0x25CFC4, 0x3A0, 1 metatile_types_top 0x25D098, 0x26E, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x25C6BC+0x48, 0xE80, 1 + metatiles_top 0x25CD74+0x48, 0x9B8, 1 + metatile_types_bottom 0x25CF50+0x48, 0x3A0, 1 + metatile_types_top 0x25D024+0x48, 0x26E, 1, 1 .else metatiles_bottom 0x25C6BC, 0xE80, 1 metatiles_top 0x25CD74, 0x9B8, 1 metatile_types_bottom 0x25CF50, 0x3A0, 1 metatile_types_top 0x25D024, 0x26E, 1, 1 .endif +.endif gAreaMetatiles_Vaati2:: @ 0810306C .ifdef JP @@ -388,12 +737,19 @@ gAreaMetatiles_Vaati2:: @ 0810306C metatiles_top 0x260C90, 0x298, 1 metatile_types_bottom 0x260D30, 0x214, 1 metatile_types_top 0x260DAC, 0xA6, 1, 1 +.else +.ifdef EU + metatiles_bottom 0x2607F0+0x48, 0x850, 1 + metatiles_top 0x260C1C+0x48, 0x298, 1 + metatile_types_bottom 0x260CBC+0x48, 0x214, 1 + metatile_types_top 0x260D38+0x48, 0xA6, 1, 1 .else metatiles_bottom 0x2607F0, 0x850, 1 metatiles_top 0x260C1C, 0x298, 1 metatile_types_bottom 0x260CBC, 0x214, 1 metatile_types_top 0x260D38, 0xA6, 1, 1 .endif +.endif gAreaMetatiles:: @ 0810309C diff --git a/data/scripts/script_08008B5C.inc b/data/scripts/script_08008B5C.inc index d7e5a9cc..7bce1e1b 100644 --- a/data/scripts/script_08008B5C.inc +++ b/data/scripts/script_08008B5C.inc @@ -39,11 +39,16 @@ SCRIPT_START script_08008BC0 _0807EB44 0x0004 DoPostScriptAction 0x000a _0807E930 0x0000 +.ifdef EU + SetGlobalFlag 0x0061 +.endif EndBlock script_08008BD2: _0807E944 _0807E864 +.ifndef EU SetGlobalFlag 0x0061 +.endif _0807E930 0x0004 Call sub_0807F2D4 _0807EA94 diff --git a/data/scripts/script_0800939A.inc b/data/scripts/script_0800939A.inc index 2efdd91d..31f82777 100644 --- a/data/scripts/script_0800939A.inc +++ b/data/scripts/script_0800939A.inc @@ -1,8 +1,12 @@ SCRIPT_START script_0800939A .ifdef JP CheckLocalFlag 0x00ac +.else +.ifdef EU + CheckLocalFlag 0x00ac .else CheckLocalFlag 0x00ae +.endif .endif JumpIf script_0800943E CheckInventory1 0x000d @@ -24,8 +28,12 @@ script_080093DA: SetIntVariable 0x00001d05 .ifdef JP CheckLocalFlag 0x00ab +.else +.ifdef EU + CheckLocalFlag 0x00ab .else CheckLocalFlag 0x00ad +.endif .endif JumpIf script_080093EE SetIntVariable 0x00001d04 @@ -46,9 +54,14 @@ script_080093EE: .ifdef JP SetLocalFlag 0x00ac SetLocalFlag 0x00ab +.else +.ifdef EU + SetLocalFlag 0x00ac + SetLocalFlag 0x00ab .else SetLocalFlag 0x00ae SetLocalFlag 0x00ad +.endif .endif Call sub_0806D5D4 _0807EB8C diff --git a/data/scripts/script_08009464.inc b/data/scripts/script_08009464.inc index bca65bbe..5f134afa 100644 --- a/data/scripts/script_08009464.inc +++ b/data/scripts/script_08009464.inc @@ -7,8 +7,12 @@ SCRIPT_START script_08009464 Wait 0x003c .ifdef JP ClearLocalFlag 0x00ac +.else +.ifdef EU + ClearLocalFlag 0x00ac .else ClearLocalFlag 0x00ae +.endif .endif Call sub_0806D620 Wait 0x003c diff --git a/data/scripts/script_080098D4.inc b/data/scripts/script_080098D4.inc index ea0a2350..1b17c7aa 100644 --- a/data/scripts/script_080098D4.inc +++ b/data/scripts/script_080098D4.inc @@ -9,14 +9,22 @@ script_080098E0: JumpIfNot script_080098E0 .ifdef JP CheckLocalFlag 0x5b +.else +.ifdef EU + CheckLocalFlag 0x5b .else CheckLocalFlag 0x5d +.endif .endif JumpIf script_08009910 .ifdef JP SetLocalFlag 0x005b +.else +.ifdef EU + SetLocalFlag 0x005b .else SetLocalFlag 0x005d +.endif .endif _0807E864 Call sub_0807F9A4 diff --git a/data/scripts/script_08009E88.inc b/data/scripts/script_08009E88.inc index 75074f51..4368b582 100644 --- a/data/scripts/script_08009E88.inc +++ b/data/scripts/script_08009E88.inc @@ -4,8 +4,12 @@ SCRIPT_START script_08009E88 _0807E864 .ifdef JP SetLocalFlag 0x009e +.else +.ifdef EU + SetLocalFlag 0x009e .else SetLocalFlag 0x009f +.endif .endif EndBlock Wait 0x003c diff --git a/data/scripts/script_0800A0FC.inc b/data/scripts/script_0800A0FC.inc index 80b3c50f..baedeedc 100644 --- a/data/scripts/script_0800A0FC.inc +++ b/data/scripts/script_0800A0FC.inc @@ -7,7 +7,9 @@ script_0800A0FE: _0807E864 Call sub_0807DF28 StopBgm +.ifndef EU Call sub_0807FBFC +.endif SetEntityPositionRelative 0x00b0, 0x0058 Call sub_0807F844 _0807E8E4_3 @@ -22,4 +24,6 @@ script_0800A0FE: CallWithArg sub_0806DA1C, 0x00000006 DoPostScriptAction 0x0006 SCRIPT_END +.ifndef EU .2byte 0x0000 +.endif diff --git a/data/scripts/script_0800B0D0.inc b/data/scripts/script_0800B0D0.inc index 9ad7992a..fa5ccadf 100644 --- a/data/scripts/script_0800B0D0.inc +++ b/data/scripts/script_0800B0D0.inc @@ -28,7 +28,9 @@ script_0800B134: CallWithArg sub_0806BC94, 0x00000004 Call sub_0807F650 _0807E9F0 +.ifndef EU JumpIfNot script_0800B160 +.endif Call sub_0806BCC0 script_0800B160: Call sub_0807DF50 diff --git a/data/scripts/script_0800B200.inc b/data/scripts/script_0800B200.inc index 909699d5..ebd489df 100644 --- a/data/scripts/script_0800B200.inc +++ b/data/scripts/script_0800B200.inc @@ -3,8 +3,12 @@ SCRIPT_START script_0800B200 _0807E5F8 0x00000000 .ifdef JP CheckLocalFlag 0x001e +.else +.ifdef EU + CheckLocalFlag 0x001e .else CheckLocalFlag 0x001d +.endif .endif JumpIf script_0800B252 SetEntitySpeed 0x00c0 @@ -24,8 +28,12 @@ script_0800B216: _0807E878 .ifdef JP CheckLocalFlag 0x001e +.else +.ifdef EU + CheckLocalFlag 0x001e .else CheckLocalFlag 0x001d +.endif .endif JumpIfNot script_0800B216 script_0800B252: diff --git a/data/scripts/script_0800B308.inc b/data/scripts/script_0800B308.inc index 8ec57e2e..a283ba91 100644 --- a/data/scripts/script_0800B308.inc +++ b/data/scripts/script_0800B308.inc @@ -2,8 +2,12 @@ SCRIPT_START script_0800B308 BeginBlock .ifdef JP CheckLocalFlag 0x001e +.else +.ifdef EU + CheckLocalFlag 0x001e .else CheckLocalFlag 0x001d +.endif .endif JumpIf script_0800B39C DoPostScriptAction 0x0001 @@ -42,8 +46,12 @@ script_0800B350: EndBlock .ifdef JP SetLocalFlag 0x001e +.else +.ifdef EU + SetLocalFlag 0x001e .else SetLocalFlag 0x001d +.endif .endif PlaySound SFX_SECRET script_0800B39C: diff --git a/data/scripts/script_0800D6D0.inc b/data/scripts/script_0800D6D0.inc index d69cc2e6..8150664a 100644 --- a/data/scripts/script_0800D6D0.inc +++ b/data/scripts/script_0800D6D0.inc @@ -2,8 +2,12 @@ SCRIPT_START script_0800D6D0 BeginBlock .ifdef JP CheckLocalFlag 0x00f0 +.else +.ifdef EU + CheckLocalFlag 0x00f0 .else CheckLocalFlag 0x00f3 +.endif .endif JumpIf script_0800D6E8 DoPostScriptAction 0x0008 @@ -11,8 +15,12 @@ SCRIPT_START script_0800D6D0 script_0800D6E0: .ifdef JP CheckLocalFlag 0x00f0 +.else +.ifdef EU + CheckLocalFlag 0x00f0 .else CheckLocalFlag 0x00f3 +.endif .endif JumpIfNot script_0800D6E0 script_0800D6E8: diff --git a/data/scripts/script_0800D6F0.inc b/data/scripts/script_0800D6F0.inc index 5a402b35..63cfa930 100644 --- a/data/scripts/script_0800D6F0.inc +++ b/data/scripts/script_0800D6F0.inc @@ -2,8 +2,12 @@ SCRIPT_START script_0800D6F0 BeginBlock .ifdef JP CheckLocalFlag 0x00f2 +.else +.ifdef EU + CheckLocalFlag 0x00f2 .else CheckLocalFlag 0x00f5 +.endif .endif JumpIf script_0800D6E8 DoPostScriptAction 0x0008 @@ -11,8 +15,12 @@ SCRIPT_START script_0800D6F0 script_0800D700: .ifdef JP CheckLocalFlag 0x00f2 +.else +.ifdef EU + CheckLocalFlag 0x00f2 .else CheckLocalFlag 0x00f5 +.endif .endif JumpIfNot script_0800D700 DoPostScriptAction 0x0007 diff --git a/data/scripts/script_0800E0BC.inc b/data/scripts/script_0800E0BC.inc index abb3f935..b00339ee 100644 --- a/data/scripts/script_0800E0BC.inc +++ b/data/scripts/script_0800E0BC.inc @@ -294,6 +294,8 @@ script_0800E484: _0807EA94 _0807E878 Jump script_0800E484 + + SCRIPT_START script_0800E4A4 BeginBlock Call sub_0807F354 @@ -303,14 +305,22 @@ SCRIPT_START script_0800E4A4 script_0800E4B6: .ifdef JP CheckPlayerInRegion 0x0088, 0x0100, 0x0820 +.else +.ifdef EU + CheckPlayerInRegion 0x0088, 0x0100, 0x0820 .else CheckPlayerInRegion 0x0088, 0x00f8, 0x0820 +.endif .endif JumpIfNot script_0800E4B6 BeginBlock _0807E864 .ifdef JP Call sub_0805E544 +.else +.ifdef EU + Call sub_0805E544 +.endif .endif EndBlock Call sub_0807F3F8 @@ -329,6 +339,10 @@ script_0800E4B6: SetLocalFlag 0x007c .ifdef JP Call UnfreezeTime +.else +.ifdef EU + Call UnfreezeTime +.endif .endif script_0800E4FA: _0807E878 diff --git a/data/scripts/script_0800F554.inc b/data/scripts/script_0800F554.inc index 747ea06b..bf828afc 100644 --- a/data/scripts/script_0800F554.inc +++ b/data/scripts/script_0800F554.inc @@ -123,8 +123,12 @@ script_0800F6A0: CallWithArg sub_0807F3D8, 0x00000004 .ifdef JP CheckLocalFlag 0x00ca +.else +.ifdef EU + CheckLocalFlag 0x00ca .else CheckLocalFlag 0x00cd +.endif .endif JumpIf script_0800F6C4 TextboxNoOverlap 0x2512 @@ -148,8 +152,12 @@ SCRIPT_START script_0800F6E0 script_0800F6F4: .ifdef JP CheckLocalFlag 0x00ca +.else +.ifdef EU + CheckLocalFlag 0x00ca .else CheckLocalFlag 0x00cd +.endif .endif JumpIf script_0800F718 CheckEntityInteractType diff --git a/data/scripts/script_0800F724.inc b/data/scripts/script_0800F724.inc index 102bb549..bd45a2ff 100644 --- a/data/scripts/script_0800F724.inc +++ b/data/scripts/script_0800F724.inc @@ -5,8 +5,12 @@ SCRIPT_START script_0800F724 script_0800F72C: .ifdef JP CheckLocalFlag 0x00ca +.else +.ifdef EU + CheckLocalFlag 0x00ca .else CheckLocalFlag 0x00cd +.endif .endif JumpIfNot script_0800F72C DoPostScriptAction 0x0007 @@ -16,8 +20,12 @@ script_0800F72C: SCRIPT_START script_0800F73C .ifdef JP CheckLocalFlag 0x00ca +.else +.ifdef EU + CheckLocalFlag 0x00ca .else CheckLocalFlag 0x00cd +.endif .endif JumpIf script_0800FA4C _0807E864 @@ -180,8 +188,12 @@ SCRIPT_START script_0800F73C Call sub_08063C44 .ifdef JP SetLocalFlag 0x00ca +.else +.ifdef EU + SetLocalFlag 0x00ca .else SetLocalFlag 0x00cd +.endif .endif Call sub_0807DF50 _0807E878 diff --git a/data/scripts/script_0800FD0C.inc b/data/scripts/script_0800FD0C.inc index 563a019a..7b8bb425 100644 --- a/data/scripts/script_0800FD0C.inc +++ b/data/scripts/script_0800FD0C.inc @@ -1,8 +1,12 @@ SCRIPT_START script_0800FD0C .ifdef JP CheckLocalFlag 0x00ca +.else +.ifdef EU + CheckLocalFlag 0x00ca .else CheckLocalFlag 0x00cd +.endif .endif JumpIf script_0800FD50 WaitForSomething2 0x00000010 @@ -11,8 +15,12 @@ script_0800FD1A: JumpIfNot script_0800FD1A .ifdef JP CheckLocalFlag 0x00ca +.else +.ifdef EU + CheckLocalFlag 0x00ca .else CheckLocalFlag 0x00cd +.endif .endif JumpIf script_0800FD5C _0807E864 diff --git a/data/scripts/script_0800FF74.inc b/data/scripts/script_0800FF74.inc index f105ab7b..5f45e217 100644 --- a/data/scripts/script_0800FF74.inc +++ b/data/scripts/script_0800FF74.inc @@ -7,7 +7,9 @@ SCRIPT_START script_0800FF74 .ifdef JP ClearLocalFlag 0x00c4 .else +.ifndef EU ClearLocalFlag 0x00c7 +.endif .endif EndBlock script_0800FF92: @@ -16,16 +18,24 @@ script_0800FF92: DoPostScriptAction 0x000a .ifdef JP CheckLocalFlag 0x00cb +.else +.ifdef EU + CheckLocalFlag 0x00cb .else CheckLocalFlag 0x00ce +.endif .endif JumpIf script_0800FFCC DoPostScriptAction 0x000b Call sub_08064198 .ifdef JP CheckLocalFlag 0x00c4 +.else +.ifdef EU + CheckLocalFlag 0x00c4 .else CheckLocalFlag 0x00c7 +.endif .endif JumpIfNot script_0800FFCC Call sub_08064488 @@ -39,8 +49,12 @@ script_0800FFCC: EndBlock .ifdef JP SetLocalFlag 0x00c4 +.else +.ifdef EU + SetLocalFlag 0x00c4 .else SetLocalFlag 0x00c7 +.endif .endif _0807E864 _0807EB74 @@ -53,8 +67,12 @@ script_0800FFCC: script_0800FFF8: .ifdef JP CheckLocalFlag 0x00cb +.else +.ifdef EU + CheckLocalFlag 0x00cb .else CheckLocalFlag 0x00ce +.endif .endif JumpIfNot script_0801000A TextboxNoOverlap 0x340b @@ -82,9 +100,13 @@ script_08010014: CallWithArg sub_0807F3D8, 0x00000008 .ifdef JP SetLocalFlag 0x00cb +.else +.ifdef EU + SetLocalFlag 0x00cb .else SetLocalFlag 0x00ce .endif +.endif script_08010060: Call sub_080644A4 CallWithArg sub_0807F5B0, 0x0000000a diff --git a/data/scripts/script_08010264.inc b/data/scripts/script_08010264.inc index a633beba..d0d023f8 100644 --- a/data/scripts/script_08010264.inc +++ b/data/scripts/script_08010264.inc @@ -501,8 +501,12 @@ script_08010860: TextboxNoOverlap 0x2c21 Jump script_080108B2 script_080108AA: -.ifndef JP +.ifdef USA SetLocalFlag 0x00fa +.else +.ifdef DEMO + SetLocalFlag 0x00fa +.endif .endif TextboxNoOverlap 0x2c20 script_080108B2: diff --git a/data/scripts/script_08010964.inc b/data/scripts/script_08010964.inc index 7b408aaf..908a6a23 100644 --- a/data/scripts/script_08010964.inc +++ b/data/scripts/script_08010964.inc @@ -21,8 +21,12 @@ SCRIPT_START script_080109A0 EndBlock .ifdef JP CheckLocalFlag 0x00ce +.else +.ifdef EU + CheckLocalFlag 0x00ce .else CheckLocalFlag 0x00d1 +.endif .endif JumpIf script_080109EA CheckPlayerInRegion2 0x0808 diff --git a/data/scripts/script_08011128.inc b/data/scripts/script_08011128.inc index d54a4e51..7e9e0db4 100644 --- a/data/scripts/script_08011128.inc +++ b/data/scripts/script_08011128.inc @@ -5,6 +5,11 @@ SCRIPT_START script_08011128 .ifdef JP _0807E9D4 DoPostScriptAction 0x000a +.else +.ifdef EU + _0807E9D4 + DoPostScriptAction 0x000a +.endif .endif EndBlock script_08011134: @@ -41,4 +46,8 @@ script_08011134: SCRIPT_END .ifdef JP .2byte 0x0000 +.else +.ifdef EU + .2byte 0x0000 +.endif .endif diff --git a/data/scripts/script_0801194C.inc b/data/scripts/script_0801194C.inc index dc3594b3..50b0e0d3 100644 --- a/data/scripts/script_0801194C.inc +++ b/data/scripts/script_0801194C.inc @@ -139,8 +139,12 @@ script_08011AFA: _0807EA94 .ifdef JP SetLocalFlag 0x0011 +.else +.ifdef EU + SetLocalFlag 0x0011 .else SetLocalFlag 0x0010 +.endif .endif CallWithArg sub_0806DA1C, 0x00000003 _0807E878 diff --git a/data/scripts/script_08011C7C.inc b/data/scripts/script_08011C7C.inc index fe9af336..cbe9a609 100644 --- a/data/scripts/script_08011C7C.inc +++ b/data/scripts/script_08011C7C.inc @@ -325,6 +325,8 @@ script_0801200C: _0807EB44 0x0004 DoPostScriptAction 0x0001 Jump script_08011FFE + + SCRIPT_START script_08012024 BeginBlock Call sub_08064828 @@ -361,8 +363,12 @@ script_08012070: _0807EA94 _0807F034 0x0031 WaitPlayerAction8 -.ifndef JP +.ifdef USA Call sub_0807FC24 +.else +.ifdef DEMO + Call sub_0807FC24 +.endif .endif Jump script_0801209E script_0801209A: @@ -373,10 +379,7 @@ script_0801209E: _0807EB44 0x0004 DoPostScriptAction 0x0001 Jump script_0801203A -.ifndef JP - .2byte 0x0000 -.endif - + .align 2, 0 SCRIPT_START script_080120B0 BeginBlock @@ -414,8 +417,12 @@ script_080120FC: _0807EA94 _0807F034 0x002f WaitPlayerAction8 -.ifndef JP +.ifdef USA Call sub_0807FC24 +.else +.ifdef DEMO + Call sub_0807FC24 +.endif .endif Jump script_0801212A script_08012126: @@ -426,9 +433,7 @@ script_0801212A: _0807EB44 0x0004 DoPostScriptAction 0x0001 Jump script_080120C6 -.ifndef JP - .2byte 0x0000 -.endif + .align 2, 0 SCRIPT_START script_0801213C BeginBlock @@ -466,8 +471,12 @@ script_08012188: _0807EA94 _0807F034 0x0030 WaitPlayerAction8 -.ifndef JP +.ifdef USA Call sub_0807FC24 +.else +.ifdef DEMO + Call sub_0807FC24 +.endif .endif Jump script_080121B6 script_080121B2: @@ -478,9 +487,7 @@ script_080121B6: _0807EB44 0x0004 DoPostScriptAction 0x0001 Jump script_08012152 -.ifndef JP - .2byte 0x0000 -.endif + .align 2, 0 SCRIPT_START script_080121C8 BeginBlock @@ -600,4 +607,4 @@ script_080122EC: _0807E878 DoPostScriptAction 0x0006 SCRIPT_END - .2byte 0x0000 + .align 2, 0 diff --git a/data/scripts/script_08012430.inc b/data/scripts/script_08012430.inc index a6c730c1..c18f6787 100644 --- a/data/scripts/script_08012430.inc +++ b/data/scripts/script_08012430.inc @@ -18,14 +18,20 @@ script_08012440: SetLocalFlag 0x00b3 _0807F034 0x0062 WaitPlayerAction8 -.ifndef JP +.ifdef USA SetLocalFlag 0x00d0 +.else +.ifdef DEMO + SetLocalFlag 0x00d0 +.endif .endif script_08012474: _0807E878 _0807E930 0x0000 Jump script_08012440 - .2byte 0x0000 + .align 2, 0 + + SCRIPT_START script_08012480 BeginBlock Call sub_08054564 diff --git a/data/scripts/script_08012C68.inc b/data/scripts/script_08012C68.inc index bcbb12f3..b8aa1e2a 100644 --- a/data/scripts/script_08012C68.inc +++ b/data/scripts/script_08012C68.inc @@ -33,8 +33,12 @@ script_08012CA0: _0807EA94 .ifdef JP SetLocalFlag 0x003a +.else +.ifdef EU + SetLocalFlag 0x003a .else SetLocalFlag 0x003b +.endif .endif Call sub_0807DF50 _0807E878 diff --git a/data/scripts/script_08012CD8.inc b/data/scripts/script_08012CD8.inc index 5e0ade09..900f0de5 100644 --- a/data/scripts/script_08012CD8.inc +++ b/data/scripts/script_08012CD8.inc @@ -14,8 +14,12 @@ SCRIPT_START script_08012CD8 _0807EA94 .ifdef JP SetLocalFlag 0x003d +.else +.ifdef EU + SetLocalFlag 0x003d .else SetLocalFlag 0x003e +.endif .endif Call sub_0807DF50 _0807E878 diff --git a/data/scripts/script_08012D70.inc b/data/scripts/script_08012D70.inc index 700f949f..8b936911 100644 --- a/data/scripts/script_08012D70.inc +++ b/data/scripts/script_08012D70.inc @@ -10,8 +10,12 @@ SCRIPT_START script_08012D70 _0807EA94 .ifdef JP SetLocalFlag 0x0015 +.else +.ifdef EU + SetLocalFlag 0x0015 .else SetLocalFlag 0x0014 +.endif .endif Call sub_0807DF50 _0807E878 diff --git a/data/scripts/script_080138B4.inc b/data/scripts/script_080138B4.inc index 9a63f5c8..206ac542 100644 --- a/data/scripts/script_080138B4.inc +++ b/data/scripts/script_080138B4.inc @@ -77,9 +77,11 @@ script_080138D0: TextboxNoOverlapFollowPos 0x0505, 0x000c _0807EA94 _0807E5F8 0x00040000 +.ifndef EU _0807F0B4 0x0002 SetEntityPositionRelative 0x00e8, 0x00d8 CameraTargetEntity +.endif Call sub_0806DC3C CallWithArg sub_0807F244, 0x00010001 CallWithArg sub_0807F29C, gUnk_080049FE @@ -87,7 +89,9 @@ script_080138D0: CallWithArg sub_0807F29C, 0x00000000 Call sub_0806DC58 script_08013A8E: +.ifndef EU CheckRoomFlag 0x0004 JumpIfNot script_08013A8E +.endif CallWithArg sub_0805DDEC, 0x00000001 _0807F0C8 0xffff, 0x0000 diff --git a/data/scripts/script_08013AA6.inc b/data/scripts/script_08013AA6.inc index 484789c1..37961ee2 100644 --- a/data/scripts/script_08013AA6.inc +++ b/data/scripts/script_08013AA6.inc @@ -1,6 +1,12 @@ SCRIPT_START script_08013AA6 Call sub_0807F3F8 Wait 0x003c +.ifdef EU + _0807F0B4 0x0007 + SetEntityPositionRelative 0x00e8, 0x00a8 + CameraTargetEntity + Wait 0x003c +.endif _0807E5F8 0x00000008 Wait 0x0078 CallWithArg sub_0805DE18, 0x00000001 diff --git a/data/scripts/script_08013BE8.inc b/data/scripts/script_08013BE8.inc index ea87d86b..b6c87eec 100644 --- a/data/scripts/script_08013BE8.inc +++ b/data/scripts/script_08013BE8.inc @@ -25,7 +25,9 @@ script_08013C32: Call sub_0807F934 DoPostScriptAction 0x000a CallWithArg sub_080962F8, 0x00000000 +.ifndef EU CallWithArg sub_0807F8E8, 0x00000004 +.endif EndBlock script_08013C58: EndBlock @@ -55,4 +57,4 @@ script_08013C98: DoPostScriptAction 0x0008 DoPostScriptAction 0x0006 SCRIPT_END - .2byte 0x0000 + .align 2, 0 diff --git a/data/scripts/script_08014248.inc b/data/scripts/script_08014248.inc index 56ab6d41..569bc7d0 100644 --- a/data/scripts/script_08014248.inc +++ b/data/scripts/script_08014248.inc @@ -7,7 +7,9 @@ SCRIPT_START script_08014248 script_08014264: CallWithArg sub_08095EAC, 0x00000001 Jump script_08014264 - .2byte 0x0000 + .align 2, 0 + +.ifndef EU SCRIPT_START script_08014274 BeginBlock DoPostScriptAction 0x0008 @@ -28,3 +30,4 @@ script_08014298: _0807E878 Jump script_08014298 .2byte 0x0000 +.endif diff --git a/data/scripts/script_080143C0.inc b/data/scripts/script_080143C0.inc index 1f682585..652ee0ff 100644 --- a/data/scripts/script_080143C0.inc +++ b/data/scripts/script_080143C0.inc @@ -27,10 +27,12 @@ script_080143FA: _0807EA94 SetIntVariable 0x00000303 Call sub_0807F420 +.ifndef EU Wait 0x001e _0807EB8C TextboxNoOverlap 0x2c22 _0807EA94 +.endif script_0801443E: _0807E930 0x0004 _0807E908 0x0001 diff --git a/data/scripts/script_08014450.inc b/data/scripts/script_08014450.inc index 2bce9f6a..10fbfc52 100644 --- a/data/scripts/script_08014450.inc +++ b/data/scripts/script_08014450.inc @@ -35,8 +35,12 @@ script_080144B8: Jump script_080144C8 script_080144C0: SetLocalFlag 0x0093 -.ifndef JP +.ifdef USA SetLocalFlag 0x00d3 +.else +.ifdef DEMO + SetLocalFlag 0x00d3 +.endif .endif script_080144C8: ModRupees 0xfff6 @@ -56,11 +60,13 @@ script_080144FC: _0807E878 CheckRoomFlag 0x0000 JumpIfNot script_08014462 -.ifndef JP +.ifdef USA + _0807E9DC +.else +.ifdef DEMO _0807E9DC .endif -SCRIPT_END -.ifndef JP - .2byte 0x0000 .endif +SCRIPT_END + .align 2, 0 diff --git a/data/scripts/script_080145B0.inc b/data/scripts/script_080145B0.inc index 8cc995b4..1aa48d71 100644 --- a/data/scripts/script_080145B0.inc +++ b/data/scripts/script_080145B0.inc @@ -9,10 +9,19 @@ script_080145C2: JumpIfNot script_080145C2 _0807E864 ClearRoomFlag 0x0005 +.ifdef EU + Wait 0x0018 + _0807E8E4_1 + _0807EB44 0x0006 +.else Wait 0x000c _0807EB8C +.endif TextboxNoOverlapFollowPos 0x432e, 0x000c _0807EA94 +.ifdef EU + Wait 0x0018 +.endif _0807E878 Jump script_080145C2 script_080145E4: diff --git a/data/scripts/script_080145E8.inc b/data/scripts/script_080145E8.inc index 88c520e0..0f68e289 100644 --- a/data/scripts/script_080145E8.inc +++ b/data/scripts/script_080145E8.inc @@ -5,6 +5,36 @@ SCRIPT_START script_080145E8 DoPostScriptAction 0x0000 EndBlock script_080145F8: +.ifdef EU + CheckPlayerInRegion 0x00a8, 0x0054, 0x080c + JumpIfNot script_080145F8 + ComparePlayerAnimationState 0x0000 + JumpIfNot script_080145F8 + CheckRoomFlag 0x0009 + JumpIf script_08014632 + _0807E864 + Wait 0x0018 + _0807E8E4_3 + _0807EB44 0x0002 + TextboxNoOverlapFollowPos 0x432b, 0x000c + _0807EA94 + Wait 0x0018 + _0807E878 + Jump script_080145F8 +script_08014632: + CheckRoomFlag 0x0000 + JumpIfNot script_08014632 + _0807E864 + Call sub_0807DF28 +script_08014642: + CheckRoomFlag 0x0009 + JumpIf script_08014642 + _0807E5F8 0x00000004 + WaitForSomething2 0x00000008 + Call sub_0807DF50 + _0807E878 + Jump script_080145F8 +.else CheckRoomFlag 0x0000 JumpIfNot script_080145F8 _0807E864 @@ -17,6 +47,8 @@ script_08014608: Call sub_0807DF50 _0807E878 Jump script_080145F8 +.endif + .align 2, 0 SCRIPT_START script_08014628 BeginBlock @@ -27,9 +59,52 @@ SCRIPT_START script_08014628 EndBlock script_0801463A: _0807E30C +.ifdef EU + JumpIf script_080146E2 +.else JumpIf script_080146A0 +.endif TestBit 0x00000004 JumpIf script_0801477A +.ifdef EU + CheckPlayerInRegion 0x0078, 0x0078, 0x0810 + JumpIfNot script_0801463A + CheckRoomFlag 0x0009 + JumpIfNot script_0801463A + _0807E864 + _0807EB28 0x431f + _0807EA94 +script_0801469A: + StartPlayerScript script_080147DC + Wait 0x0010 + _0807E5F8 0x00000002 + WaitForSomething2 0x00000001 + _0807E878 + Jump script_0801463A +script_080146E2: + _0807E864 + _0807E930 0x0008 + Wait 0x0020 + _0807E930 0x0002 + CheckGlobalFlag 0x0059 + JumpIf script_0801472E_2 + CheckRoomFlag 0x0009 + JumpIf script_080146F4 + CheckLocalFlag 0x005c + JumpIfNot script_080146FE + CheckLocalFlag 0x005e + JumpIfNot script_0801474A + CheckRoomFlag 0x0006 + JumpIf script_0801472E + CheckLocalFlag 0x005f + JumpIf script_08014720 + Call sub_08088574 + SetRoomFlag 0x000a + Jump script_0801473C +script_0801472E_2: + TextboxNoOverlapFollowPos 0x432f, 0x000c + Jump script_080147CE @ TODO script_08014816 +.else CheckRoomFlag 0x0004 JumpIf script_08014672 Call sub_0808861C @@ -79,12 +154,22 @@ script_080146C6: Call sub_08088574 SetRoomFlag 0x0009 Jump script_0801473C +.endif + script_080146F4: TextboxNoOverlapFollowPos 0x431e, 0x000c Jump script_080147CE script_080146FE: +.ifdef EU + SetRoomFlag 0x000A +.else SetRoomFlag 0x0009 +.endif SetLocalFlag 0x005c +.ifdef EU +script_0801474A: + SetRoomFlag 0x000a +.endif TextboxNoOverlapFollowPos 0x4305, 0x000c _0807EA94 _0807E3BC 0x0001 @@ -92,11 +177,19 @@ script_080146FE: TextboxNoOverlapFollowPos 0x4306, 0x000c Jump script_0801473C script_08014720: +.ifdef EU + SetRoomFlag 0x000A +.else SetRoomFlag 0x0009 +.endif Call sub_08088504 Jump script_0801473C script_0801472E: +.ifdef EU + SetRoomFlag 0x000A +.else SetRoomFlag 0x0009 +.endif ClearRoomFlag 0x0006 Call sub_08088544 script_0801473C: @@ -112,11 +205,19 @@ script_08014754: JumpIfNot script_08014754 ClearRoomFlag 0x0003 _0807EA94 +.ifdef EU + SetRoomFlag 0x0009 +.else SetRoomFlag 0x0004 +.endif TextboxNoOverlapFollowPos 0x431e, 0x000c Jump script_080147CE script_08014770: +.ifdef EU + SetRoomFlag 0x000A +.else SetRoomFlag 0x0009 +.endif _0807EA94 Jump script_080147CE script_0801477A: @@ -142,13 +243,19 @@ script_080147B4: _0807E930 0x0002 Jump script_0801478A script_080147C4: +.ifdef EU + SetRoomFlag 0x000A +.else SetRoomFlag 0x0009 +.endif TextboxNoOverlapFollowPos 0x4307, 0x000c script_080147CE: _0807EA94 +.ifdef EU + Wait 0x000F +.else Wait 0x0004 +.endif _0807E878 Jump script_0801463A -.ifndef JP - .2byte 0x0000 -.endif + .align 2, 0 diff --git a/data/scripts/script_08014CDC.inc b/data/scripts/script_08014CDC.inc index 4a9f1dc2..4b0d2f45 100644 --- a/data/scripts/script_08014CDC.inc +++ b/data/scripts/script_08014CDC.inc @@ -55,8 +55,12 @@ script_08014D96: _0807EC64 0x0018 .ifdef JP SetLocalFlag 0x006b +.else +.ifdef EU + SetLocalFlag 0x006b .else SetLocalFlag 0x006d +.endif .endif Call sub_0807DF50 _0807E878 diff --git a/data/scripts/script_08014E14.inc b/data/scripts/script_08014E14.inc index 01df4073..1b70d789 100644 --- a/data/scripts/script_08014E14.inc +++ b/data/scripts/script_08014E14.inc @@ -241,8 +241,12 @@ script_08015104: CameraTargetPlayer .ifdef JP SetLocalFlag 0x008a +.else +.ifdef EU + SetLocalFlag 0x008a .else SetLocalFlag 0x008c +.endif .endif _0807EB28 0x130c _0807EA94 diff --git a/data/scripts/script_080157AC.inc b/data/scripts/script_080157AC.inc index a88d0a4e..57f353dc 100644 --- a/data/scripts/script_080157AC.inc +++ b/data/scripts/script_080157AC.inc @@ -65,8 +65,12 @@ script_08015888: WaitForSomething2 0x00000002 .ifdef JP SetLocalFlag 0x0089 +.else +.ifdef EU + SetLocalFlag 0x0089 .else SetLocalFlag 0x008b +.endif .endif Call sub_08066FB8 Call sub_0807DF50 diff --git a/data/scripts/script_08015B34.inc b/data/scripts/script_08015B34.inc index 256600f4..9df5e5af 100644 --- a/data/scripts/script_08015B34.inc +++ b/data/scripts/script_08015B34.inc @@ -3,8 +3,12 @@ SCRIPT_START script_08015B34 BeginBlock .ifdef JP CheckLocalFlag 0x0089 +.else +.ifdef EU + CheckLocalFlag 0x0089 .else CheckLocalFlag 0x008b +.endif .endif JumpIf script_08015B7E CallWithArg sub_0807F6B4, 0x00000318 diff --git a/data/scripts/script_08015BA8.inc b/data/scripts/script_08015BA8.inc index 46f4d3f6..433c22e4 100644 --- a/data/scripts/script_08015BA8.inc +++ b/data/scripts/script_08015BA8.inc @@ -2,8 +2,12 @@ SCRIPT_START script_08015BA8 BeginBlock .ifdef JP SetLocalFlag 0x008c +.else +.ifdef EU + SetLocalFlag 0x008c .else SetLocalFlag 0x008e +.endif .endif _0807E864 MoveEntityToPlayer diff --git a/data/scripts/script_08015BE8.inc b/data/scripts/script_08015BE8.inc index 65c65409..d066f2e8 100644 --- a/data/scripts/script_08015BE8.inc +++ b/data/scripts/script_08015BE8.inc @@ -33,8 +33,12 @@ script_08015BF0: _0807EA94 .ifdef JP SetLocalFlag 0x009b +.else +.ifdef EU + SetLocalFlag 0x009b .else SetLocalFlag 0x009c +.endif .endif Call sub_0807FBCC Call sub_0807DF50 diff --git a/data/scripts/script_080160A8.inc b/data/scripts/script_080160A8.inc index 91d91fa6..9239fd38 100644 --- a/data/scripts/script_080160A8.inc +++ b/data/scripts/script_080160A8.inc @@ -34,8 +34,12 @@ script_080160E0: Jump script_08016132 script_0801610C: WaitPlayerAction8 +.ifndef EU _0807EB8C TextboxNoOverlapFollow 0x2d0d +.else + TextboxNoOverlapFollow 0x2d08 +.endif _0807EA94 Jump script_08016132 script_0801611A: @@ -51,6 +55,8 @@ script_08016132: _0807E878 _0807EB44 0x0004 Jump script_080160B0 + .align 2, 0 + SCRIPT_START script_0801613C BeginBlock Call sub_080787B4 @@ -78,6 +84,8 @@ script_08016184: script_0801618A: _0807E878 Jump script_08016146 + .align 2, 0 + SCRIPT_START script_08016190 BeginBlock Call sub_080787B4 @@ -100,13 +108,19 @@ script_080161C6: TextboxNoOverlapFollow 0x2d0b Jump script_080161E2 script_080161D8: +.ifndef EU WaitPlayerAction8 _0807EA94 _0807EB8C TextboxNoOverlap 0x2d06 +.else + TextboxNoOverlapFollow 0x2d06 +.endif script_080161E2: _0807E878 Jump script_0801619A + .align 2, 0 + SCRIPT_START script_080161E8 BeginBlock Call sub_0807F348 diff --git a/data/scripts/script_08016384.inc b/data/scripts/script_08016384.inc index b0f66de0..7887a419 100644 --- a/data/scripts/script_08016384.inc +++ b/data/scripts/script_08016384.inc @@ -19,8 +19,12 @@ SCRIPT_START script_08016384 CheckLocalFlag 0x0067 .ifdef JP CheckLocalFlagByOffset 0x0100, 0x0069 +.else +.ifdef EU + CheckLocalFlagByOffset 0x0100, 0x0069 .else CheckLocalFlagByOffset 0x0100, 0x006b +.endif .endif CheckGlobalFlag 0x0013 CheckRoomFlag 0x0000 diff --git a/data/sounds.s b/data/sounds.s index 0b856ee5..4833d395 100644 --- a/data/sounds.s +++ b/data/sounds.s @@ -3839,6 +3839,9 @@ bgmDarkHyruleCastle:: @ 08DD6BFC sound_header 7 0 0 0xb2 gUnk_08A06D94 bgmDarkHyruleCastle_track0 bgmDarkHyruleCastle_track1 bgmDarkHyruleCastle_track2 bgmDarkHyruleCastle_track3 bgmDarkHyruleCastle_track4 bgmDarkHyruleCastle_track5 bgmDarkHyruleCastle_track6 bgmSecretCastleEntrance_track0:: @ 08DD6C20 +.ifdef EU + .incbin "baserom_eu.gba", 0xEE2278, 0x0000073 @TODO pointers inside +.else .incbin "baserom.gba", 0xDD6C20, 0x000000B gUnk_08DD6C2B:: @ 08DD6C2B .incbin "baserom.gba", 0xDD6C2B, 0x000000D @@ -3858,7 +3861,12 @@ gUnk_08DD6C85:: @ 08DD6C85 .incbin "baserom.gba", 0xDD6CAC, 0x0000005 .4byte gUnk_08DD6C2B .incbin "baserom.gba", 0xDD6CB5, 0x0000001 +.endif + bgmSecretCastleEntrance_track1:: @ 08DD6CB6 +.ifdef EU + .incbin "baserom_eu.gba", 0xEE22EB, 0x0000063 @TODO pointers inside +.else .incbin "baserom.gba", 0xDD6CB6, 0x0000007 gUnk_08DD6CBD:: @ 08DD6CBD .incbin "baserom.gba", 0xDD6CBD, 0x000000D @@ -3882,20 +3890,37 @@ gUnk_08DD6D0C:: @ 08DD6D0C .incbin "baserom.gba", 0xDD6D33, 0x0000003 .4byte gUnk_08DD6CBD .incbin "baserom.gba", 0xDD6D3A, 0x0000001 +.endif + bgmSecretCastleEntrance_track2:: @ 08DD6D3B .incbin "baserom.gba", 0xDD6D3B, 0x0000004 gUnk_08DD6D3F:: @ 08DD6D3F +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xEE2352, 0x0000009 +.else .incbin "baserom.gba", 0xDD6D3F, 0x0000009 +.endif gUnk_08DD6D48:: @ 08DD6D48 .incbin "baserom.gba", 0xDD6D48, 0x0000019 .4byte gUnk_08DD6D48 +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xEE2378, 0x000003B +.else .incbin "baserom.gba", 0xDD6D65, 0x000003B +.endif .4byte gUnk_08DD6D3F .incbin "baserom.gba", 0xDD6DA4, 0x0000001 bgmSecretCastleEntrance_track3:: @ 08DD6DA5 .incbin "baserom.gba", 0xDD6DA5, 0x0000006 gUnk_08DD6DAB:: @ 08DD6DAB +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xEE23BE, 0x0000005 +.else .incbin "baserom.gba", 0xDD6DAB, 0x0000005 +.endif gUnk_08DD6DB0:: @ 08DD6DB0 .incbin "baserom.gba", 0xDD6DB0, 0x0000019 .4byte gUnk_08DD6DB0 @@ -3903,7 +3928,12 @@ gUnk_08DD6DB0:: @ 08DD6DB0 .4byte gUnk_08DD6DAB .incbin "baserom.gba", 0xDD6DEB, 0x0000001 bgmSecretCastleEntrance_track4:: @ 08DD6DEC +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xEE23FF, 0x0000008 +.else .incbin "baserom.gba", 0xDD6DEC, 0x0000008 +.endif gUnk_08DD6DF4:: @ 08DD6DF4 .incbin "baserom.gba", 0xDD6DF4, 0x0000017 gUnk_08DD6E0B:: @ 08DD6E0B @@ -3947,12 +3977,19 @@ gUnk_08DD6ECD:: @ 08DD6ECD .incbin "baserom.gba", 0xDD6ECD, 0x00000B8 .4byte gUnk_08DD6ECD .incbin "baserom.gba", 0xDD6F89, 0x0000001 + bgmSecretCastleEntrance_track7:: @ 08DD6F8A +.ifdef EU + .incbin "baserom_eu.gba", 0xEE259D, 0x000003B @TODO pointers inside +.else .incbin "baserom.gba", 0xDD6F8A, 0x0000003 gUnk_08DD6F8D:: @ 08DD6F8D .incbin "baserom.gba", 0xDD6F8D, 0x0000030 .4byte gUnk_08DD6F8D .incbin "baserom.gba", 0xDD6FC1, 0x0000003 +.endif + + bgmSecretCastleEntrance:: @ 08DD6FC4 sound_header 8 0 0 0xbc gUnk_08A07394 bgmSecretCastleEntrance_track0 bgmSecretCastleEntrance_track1 bgmSecretCastleEntrance_track2 bgmSecretCastleEntrance_track3 bgmSecretCastleEntrance_track4 bgmSecretCastleEntrance_track5 bgmSecretCastleEntrance_track6 bgmSecretCastleEntrance_track7 @@ -6020,11 +6057,19 @@ bgmDiggingCave:: @ 08DDC394 sound_header 6 0 0 0xb2 gUnk_08A0C944 bgmDiggingCave_track0 bgmDiggingCave_track1 bgmDiggingCave_track2 bgmDiggingCave_track3 bgmDiggingCave_track4 bgmDiggingCave_track5 bgmSwiftbladeDojo_track0:: @ 08DDC3B4 +.ifdef EU + .incbin "baserom_eu.gba", 0xEE79C8, 0x000002B @TODO pointers inside +.else .incbin "baserom.gba", 0xDDC3B4, 0x000000B gUnk_08DDC3BF:: @ 08DDC3BF .incbin "baserom.gba", 0xDDC3BF, 0x000001E .4byte gUnk_08DDC3BF .incbin "baserom.gba", 0xDDC3E1, 0x0000001 +.endif + +.ifdef EU + .incbin "baserom_eu.gba", 0xEE79F3, 0x000009D @TODO pointers inside +.else bgmSwiftbladeDojo_track1:: @ 08DDC3E2 .incbin "baserom.gba", 0xDDC3E2, 0x0000007 gUnk_08DDC3E9:: @ 08DDC3E9 @@ -6043,8 +6088,14 @@ gUnk_08DDC423:: @ 08DDC423 .incbin "baserom.gba", 0xDDC423, 0x000008C .4byte gUnk_08DDC423 .incbin "baserom.gba", 0xDDC4B3, 0x0000001 +.endif + bgmSwiftbladeDojo:: @ 08DDC4B4 +.ifdef EU + .incbin "baserom_eu.gba",0xEE7A90, 0x0000010 @TODO pointers inside +.else sound_header 4 0 0 0x9e gUnk_08A0CF44 bgmSwiftbladeDojo_track0 bgmSwiftbladeDojo_track1 bgmSwiftbladeDojo_track2 bgmSwiftbladeDojo_track3 +.endif bgmMinishCap_track0:: @ 08DDC4CC .incbin "baserom.gba", 0xDDC4CC, 0x000000B @@ -7090,6 +7141,9 @@ gUnk_08DDEBF3:: @ 08DDEBF3 bgmWindRuins:: @ 08DDEC38 sound_header 7 0 0 0xa8 gUnk_08A0F014 bgmWindRuins_track0 bgmWindRuins_track1 bgmWindRuins_track2 bgmWindRuins_track3 bgmWindRuins_track4 bgmWindRuins_track5 bgmWindRuins_track6 +.ifdef EU + .incbin "baserom_eu.gba", 0xEEA230, 0x00000DC @TODO pointers inside +.else bgmLearnScroll_track0:: @ 08DDEC5C .incbin "baserom.gba", 0xDDEC5C, 0x000000C gUnk_08DDEC68:: @ 08DDEC68 @@ -7116,8 +7170,14 @@ gUnk_08DDECDA:: @ 08DDECDA .incbin "baserom.gba", 0xDDECDA, 0x000008C .4byte gUnk_08DDECDA .incbin "baserom.gba", 0xDDED6A, 0x0000002 +.endif + bgmLearnScroll:: @ 08DDED6C +.ifdef EU + .incbin "baserom_eu.gba", 0xEEA30C, 0x0000014 @TODO pointers inside +.else sound_header 5 0 0 0x9e gUnk_08A0CF44 bgmLearnScroll_track0 bgmLearnScroll_track1 bgmLearnScroll_track2 bgmLearnScroll_track3 bgmLearnScroll_track4 +.endif bgmEzloGet_track0:: @ 08DDED88 .incbin "baserom.gba", 0xDDED88, 0x0000026 @@ -7218,7 +7278,11 @@ sfxSecretBig_track0:: @ 08DDF1A8 sfxSecretBig_track1:: @ 08DDF1CF .incbin "baserom.gba", 0xDDF1CF, 0x0000025 sfxSecretBig:: @ 08DDF1F4 +.ifdef EU + sound_header 2 0 0xc0 0 gUnk_08A1004C sfxSecretBig_track0 sfxSecretBig_track1 +.else sound_header 2 0 0xd0 0 gUnk_08A1004C sfxSecretBig_track0 sfxSecretBig_track1 +.endif sfxMetalClink_track0:: @ 08DDF204 .incbin "baserom.gba", 0xDDF204, 0x0000018 @@ -7672,7 +7736,11 @@ sfxRemSleep:: @ 08DDFDA8 sfxTaskComplete_track0:: @ 08DDFDB4 .incbin "baserom.gba", 0xDDFDB4, 0x0000020 sfxTaskComplete:: @ 08DDFDD4 +.ifdef EU + sound_header 1 0 0xc0 0 gUnk_08A104E4 sfxTaskComplete_track0 +.else sound_header 1 0 0xb0 0 gUnk_08A104E4 sfxTaskComplete_track0 +.endif sfxKeyAppear_track0:: @ 08DDFDE0 .incbin "baserom.gba", 0xDDFDE0, 0x0000034 @@ -7685,7 +7753,12 @@ sfxCF:: @ 08DDFE30 sound_header 1 0 0x48 0 gUnk_08A10514 sfxCF_track0 sfxD0_track0:: @ 08DDFE3C +.ifdef EU + @ TODO only small differences + .incbin "baserom_eu.gba", 0xEEB3D4, 0x0000010 +.else .incbin "baserom.gba", 0xDDFE3C, 0x0000010 +.endif sfxD0:: @ 08DDFE4C sound_header 1 0 0x48 0 gUnk_08A10520 sfxD0_track0 diff --git a/data/sprite_table.s b/data/sprite_table.s index eee54c38..1b549c3d 100644 --- a/data/sprite_table.s +++ b/data/sprite_table.s @@ -8,8 +8,11 @@ gUnk_089FB770:: @ 089FB770 .byte 00, 0x0d, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00 gUnk_089FB780:: @ 089FB780 +.ifdef EU + .incbin "baserom_eu.gba", 0xB07090, 0x0000F44 +.else .incbin "baserom.gba", 0x9FB780, 0x0000F44 - +.endif @ More sprites in demo .ifdef DEMO .incbin "baserom_demo.gba", 0x9FD0F4, 0x984c diff --git a/data/strings.s b/data/strings.s index 2bc41268..ff241c98 100644 --- a/data/strings.s +++ b/data/strings.s @@ -4,9 +4,28 @@ .section .rodata .align 2 +@ TODO use tmc_strings to extract strings for other variants + gUnk_089B1D90:: @ 089B1D90 .ifdef JP .incbin "baserom_jp.gba", 0x9B1A30, 0x2BCC0 +.else +.ifdef EU +.incbin "baserom_eu.gba", 0x9AEB60, 0x00488C0 + +gUnk_089F7420:: +.incbin "baserom_eu.gba", 0x9F7420, 0x0047A90 + +gUnk_08A3EEB0:: +.incbin "baserom_eu.gba", 0xA3EEB0, 0x0042FC0 + +gUnk_08A81E70:: +.incbin "baserom_eu.gba", 0xA81E70, 0x0041930 + +gUnk_08AC37A0:: +.incbin "baserom_eu.gba", 0xAC37A0, 0x00438E0 + .else .incbin "translations/USA.bin" .endif +.endif diff --git a/data/tileset_headers.s b/data/tileset_headers.s index abcfff54..0ad27038 100755 --- a/data/tileset_headers.s +++ b/data/tileset_headers.s @@ -20,8 +20,13 @@ gTileset_MinishWoods_0:: @ 08100CF4 tileset_palette_set 28, 1 gTileset_MinishWoods_1:: @ 08100D24 +.ifdef EU + tileset_tiles 0xC3BE4-0x4, 0x6000000, 0x2000, 1 + tileset_tiles 0xC4BFC-0x4, 0x6008000, 0x2000, 1 +.else tileset_tiles 0xC3BE4, 0x6000000, 0x2000, 1 tileset_tiles 0xC4BFC, 0x6008000, 0x2000, 1 +.endif tileset_palette_set 21, 1 gAreaTilesets_MinishWoods:: @ 08100D48 @@ -56,51 +61,90 @@ gAreaTilesets_Ruins:: @ 08100DE8 .4byte gAreaTileset_Ruins_0 gAreaTileset_HyruleTown_0:: @ 08100DEC +.ifdef EU + tileset_tiles 0x2DCAC-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x302CC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x32760-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x2DCAC, 0x6000000, 0x4000, 1 tileset_tiles 0x302CC, 0x6004000, 0x4000, 1 tileset_tiles 0x32760, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 27, 1 gAreaTilesets_HyruleTown:: @ 08100E1C .4byte gAreaTileset_HyruleTown_0 gAreaTileset_FestivalTown_0:: @ 08100E20 +.ifdef EU + tileset_tiles 0x3467C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x36264-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x386F8-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x3467C, 0x6000000, 0x4000, 1 tileset_tiles 0x36264, 0x6004000, 0x4000, 1 tileset_tiles 0x386F8, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 170, 1 gAreaTilesets_FestivalTown:: @ 08100E50 .4byte gAreaTileset_FestivalTown_0 gAreaTileset_MtCrenel_0:: @ 08100E54 +.ifdef EU + tileset_tiles 0x3D02C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x3F944-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x41E84-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x3D02C, 0x6000000, 0x4000, 1 tileset_tiles 0x3F944, 0x6004000, 0x4000, 1 tileset_tiles 0x41E84, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 30, 1 gAreaTilesets_MtCrenel:: @ 08100E84 .4byte gAreaTileset_MtCrenel_0 gAreaTileset_HyruleField_0:: @ 08100E88 +.ifdef EU + tileset_tiles 0x49964-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x4C134-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x4EA0C-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0x60F68-0x4, 0x600F000, 0x800, 1 +.else tileset_tiles 0x49964, 0x6000000, 0x4000, 1 tileset_tiles 0x4C134, 0x6004000, 0x4000, 1 tileset_tiles 0x4EA0C, 0x6008000, 0x4000, 1 tileset_tiles 0x60F68, 0x600F000, 0x800, 1 +.endif tileset_palette_set 16, 1 gAreaTileset_HyruleField_1:: @ 08100EC4 +.ifdef EU + tileset_tiles 0x569D0-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x59078-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x5B950-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0x60F68-0x4, 0x600F000, 0x800, 1 +.else tileset_tiles 0x569D0, 0x6000000, 0x4000, 1 tileset_tiles 0x59078, 0x6004000, 0x4000, 1 tileset_tiles 0x5B950, 0x6008000, 0x4000, 1 tileset_tiles 0x60F68, 0x600F000, 0x800, 1 +.endif tileset_palette_set 67, 1 gAreaTileset_HyruleField_2:: @ 08100F00 +.ifdef EU + tileset_tiles 0x50844-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x52A70-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x55348-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0x60F68-0x4, 0x600F000, 0x800, 1 +.else tileset_tiles 0x50844, 0x6000000, 0x4000, 1 tileset_tiles 0x52A70, 0x6004000, 0x4000, 1 tileset_tiles 0x55348, 0x6008000, 0x4000, 1 tileset_tiles 0x60F68, 0x600F000, 0x800, 1 +.endif tileset_palette_set 46, 1 gAreaTilesets_HyruleField:: @ 08100F3C @@ -109,86 +153,148 @@ gAreaTilesets_HyruleField:: @ 08100F3C .4byte gAreaTileset_HyruleField_2 gAreaTileset_CastleGarden_0:: @ 08100F48 +.ifdef EU + tileset_tiles 0x66C28-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x68AD8-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x6A7C0-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x66C28, 0x6000000, 0x4000, 1 tileset_tiles 0x68AD8, 0x6004000, 0x4000, 1 tileset_tiles 0x6A7C0, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 31, 1 gAreaTilesets_CastleGarden:: @ 08100F78 .4byte gAreaTileset_CastleGarden_0 gAreaTileset_CloudTops_0:: @ 08100F7C +.ifdef EU + tileset_tiles 0x6EA9C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x701BC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x71A14-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0x77194-0x4, 0x600F000, 0x800, 1 +.else tileset_tiles 0x6EA9C, 0x6000000, 0x4000, 1 tileset_tiles 0x701BC, 0x6004000, 0x4000, 1 tileset_tiles 0x71A14, 0x6008000, 0x4000, 1 tileset_tiles 0x77194, 0x600F000, 0x800, 1 +.endif tileset_palette_set 32, 1 gAreaTilesets_CloudTops:: @ 08100FB8 .4byte gAreaTileset_CloudTops_0 gAreaTileset_RoyalValley_0:: @ 08100FBC +.ifdef EU + tileset_tiles 0x773A8-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x79588-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x7B084-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x773A8, 0x6000000, 0x4000, 1 tileset_tiles 0x79588, 0x6004000, 0x4000, 1 tileset_tiles 0x7B084, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 38, 1 gAreaTilesets_RoyalValley:: @ 08100FEC .4byte gAreaTileset_RoyalValley_0 gAreaTileset_VeilFalls_0:: @ 08100FF0 +.ifdef EU + tileset_tiles 0x7FA54-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x81D54-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x842A8-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x7FA54, 0x6000000, 0x4000, 1 tileset_tiles 0x81D54, 0x6004000, 0x4000, 1 tileset_tiles 0x842A8, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 44, 1 gAreaTilesets_VeilFalls:: @ 08101020 .4byte gAreaTileset_VeilFalls_0 gAreaTileset_VeilFallsTop_0:: @ 08101024 +.ifdef EU + tileset_tiles 0x7FA54-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x81D54-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x86984-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x7FA54, 0x6000000, 0x4000, 1 tileset_tiles 0x81D54, 0x6004000, 0x4000, 1 tileset_tiles 0x86984, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 44, 1 gAreaTilesets_VeilFallsTop:: @ 08101054 .4byte gAreaTileset_VeilFallsTop_0 gAreaTileset_Beanstalks_0:: @ 08101058 +.ifdef EU + tileset_tiles 0x88188-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x89218-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x89E04-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0x8B9A4-0x4, 0x600F000, 0x800, 1 +.else tileset_tiles 0x88188, 0x6000000, 0x4000, 1 tileset_tiles 0x89218, 0x6004000, 0x4000, 1 tileset_tiles 0x89E04, 0x6008000, 0x4000, 1 tileset_tiles 0x8B9A4, 0x600F000, 0x800, 1 +.endif tileset_palette_set 41, 1 gAreaTilesets_Beanstalks:: @ 08101094 .4byte gAreaTileset_Beanstalks_0 gAreaTileset_CrenelCaves_0:: @ 08101098 +.ifdef EU + tileset_tiles 0x8D160-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x8FAF0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x92434-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x8D160, 0x6000000, 0x4000, 1 tileset_tiles 0x8FAF0, 0x6004000, 0x4000, 1 tileset_tiles 0x92434, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 62, 1 gAreaTilesets_CrenelCaves:: @ 081010C8 .4byte gAreaTileset_CrenelCaves_0 gAreaTileset_GreatFairies_0:: @ 081010CC +.ifdef EU + tileset_tiles 0x9A388-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x9C1A4-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x9D704-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x9A388, 0x6000000, 0x4000, 1 tileset_tiles 0x9C1A4, 0x6004000, 0x4000, 1 tileset_tiles 0x9D704, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 92, 1 gAreaTileset_GreatFairies_1:: @ 081010FC +.ifdef EU + tileset_tiles 0x9A388-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x9C1A4-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x9D704-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x9A388, 0x6000000, 0x4000, 1 tileset_tiles 0x9C1A4, 0x6004000, 0x4000, 1 tileset_tiles 0x9D704, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 102, 1 gAreaTileset_GreatFairies_2:: @ 0810112C +.ifdef EU + tileset_tiles 0x9A388-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x9C1A4-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x9D704-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x9A388, 0x6000000, 0x4000, 1 tileset_tiles 0x9C1A4, 0x6004000, 0x4000, 1 tileset_tiles 0x9D704, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 103, 1 gAreaTilesets_GreatFairies:: @ 0810115C @@ -197,55 +303,93 @@ gAreaTilesets_GreatFairies:: @ 0810115C .4byte gAreaTileset_GreatFairies_2 gAreaTileset_LakeWoodsCave_0:: @ 08101168 + tileset_tiles 0x3D0, 0x6000000, 0x4000, 1 tileset_tiles 0x3024, 0x6004000, 0x4000, 1 tileset_tiles 0x5614, 0x6008000, 0x4000, 1 +.ifdef EU + tileset_tiles 0xC3BE4-0x4, 0x6001000, 0x2000, 1 + tileset_tiles 0xC4BFC-0x4, 0x6009000, 0x2000, 1 +.else tileset_tiles 0xC3BE4, 0x6001000, 0x2000, 1 tileset_tiles 0xC4BFC, 0x6009000, 0x2000, 1 +.endif tileset_palette_set 21, 1 gAreaTilesets_LakeWoodsCave:: @ 081011B0 .4byte gAreaTileset_LakeWoodsCave_0 gAreaTileset_HyruleDigCaves_0:: @ 081011B4 +.ifdef EU + tileset_tiles 0x2DCAC-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x302CC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x32760-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0xC5600-0x4, 0x6001000, 0x2000, 1 + tileset_tiles 0xC6420-0x4, 0x6009000, 0x2000, 1 +.else tileset_tiles 0x2DCAC, 0x6000000, 0x4000, 1 tileset_tiles 0x302CC, 0x6004000, 0x4000, 1 tileset_tiles 0x32760, 0x6008000, 0x4000, 1 tileset_tiles 0xC5600, 0x6001000, 0x2000, 1 tileset_tiles 0xC6420, 0x6009000, 0x2000, 1 +.endif tileset_palette_set 54, 1 gAreaTilesets_HyruleDigCaves:: @ 081011FC .4byte gAreaTileset_HyruleDigCaves_0 gAreaTileset_DigCaves1_0:: @ 08101200 +.ifdef EU + tileset_tiles 0x49964-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x4C134-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x4EA0C-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0xC8B0C-0x4, 0x6001000, 0x2000, 1 + tileset_tiles 0xC99EC-0x4, 0x6009000, 0x2000, 1 +.else tileset_tiles 0x49964, 0x6000000, 0x4000, 1 tileset_tiles 0x4C134, 0x6004000, 0x4000, 1 tileset_tiles 0x4EA0C, 0x6008000, 0x4000, 1 tileset_tiles 0xC8B0C, 0x6001000, 0x2000, 1 tileset_tiles 0xC99EC, 0x6009000, 0x2000, 1 +.endif tileset_palette_set 85, 1 gAreaTilesets_DigCaves1:: @ 08101248 .4byte gAreaTileset_DigCaves1_0 gAreaTileset_CrenelDigCave_0:: @ 0810124C +.ifdef EU + tileset_tiles 0x3D02C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x3F944-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x41E84-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0xC6DF8-0x4, 0x6001000, 0x2000, 1 + tileset_tiles 0xC7F60-0x4, 0x6009000, 0x2000, 1 +.else tileset_tiles 0x3D02C, 0x6000000, 0x4000, 1 tileset_tiles 0x3F944, 0x6004000, 0x4000, 1 tileset_tiles 0x41E84, 0x6008000, 0x4000, 1 tileset_tiles 0xC6DF8, 0x6001000, 0x2000, 1 tileset_tiles 0xC7F60, 0x6009000, 0x2000, 1 +.endif tileset_palette_set 33, 1 gAreaTilesets_CrenelDigCave:: @ 08101294 .4byte gAreaTileset_CrenelDigCave_0 gAreaTileset_VeilFallsDigCave_0:: @ 08101298 +.ifdef EU + tileset_tiles 0x7FA54-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x81D54-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x842A8-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0xC6DF8-0x4, 0x6001000, 0x2000, 1 + tileset_tiles 0xC7F60-0x4, 0x6009000, 0x2000, 1 +.else tileset_tiles 0x7FA54, 0x6000000, 0x4000, 1 tileset_tiles 0x81D54, 0x6004000, 0x4000, 1 tileset_tiles 0x842A8, 0x6008000, 0x4000, 1 tileset_tiles 0xC6DF8, 0x6001000, 0x2000, 1 tileset_tiles 0xC7F60, 0x6009000, 0x2000, 1 +.endif tileset_palette_set 99, 1 gAreaTilesets_VeilFallsDigCave:: @ 081012E0 @@ -255,8 +399,13 @@ gAreaTileset_CastorWildsDigCave_0:: @ 081012E4 tileset_tiles 0x16DB8, 0x6000000, 0x4000, 1 tileset_tiles 0x199CC, 0x6004000, 0x4000, 1 tileset_tiles 0x1C158, 0x6008000, 0x4000, 1 +.ifdef EU + tileset_tiles 0xCA4C0-0x4, 0x6001000, 0x2000, 1 + tileset_tiles 0xCB858-0x4, 0x6009000, 0x2000, 1 +.else tileset_tiles 0xCA4C0, 0x6001000, 0x2000, 1 tileset_tiles 0xCB858, 0x6009000, 0x2000, 1 +.endif tileset_palette_set 100, 1 gAreaTilesets_CastorWildsDigCave:: @ 0810132C @@ -266,8 +415,13 @@ gAreaTileset_OuterFortressOfWinds_0:: @ 08101330 tileset_tiles 0x16DB8, 0x6000000, 0x4000, 1 tileset_tiles 0x199CC, 0x6004000, 0x4000, 1 tileset_tiles 0x1C158, 0x6008000, 0x4000, 1 +.ifdef EU + tileset_tiles 0xCA4C0-0x4, 0x6001000, 0x2000, 1 + tileset_tiles 0xCB858-0x4, 0x6009000, 0x2000, 1 +.else tileset_tiles 0xCA4C0, 0x6001000, 0x2000, 1 tileset_tiles 0xCB858, 0x6009000, 0x2000, 1 +.endif tileset_palette_set 167, 1 gAreaTilesets_OuterFortressOfWinds:: @ 08101378 @@ -277,23 +431,41 @@ gAreaTileset_HyliaDigCaves_0:: @ 0810137C tileset_tiles 0xC634, 0x6000000, 0x4000, 1 tileset_tiles 0xE640, 0x6004000, 0x4000, 1 tileset_tiles 0x10C70, 0x6008000, 0x4000, 1 + +.ifdef EU + tileset_tiles 0xCC334-0x4, 0x6001000, 0x2000, 1 + tileset_tiles 0xCCF64-0x4, 0x6009000, 0x2000, 1 +.else tileset_tiles 0xCC334, 0x6001000, 0x2000, 1 tileset_tiles 0xCCF64, 0x6009000, 0x2000, 1 +.endif tileset_palette_set 20, 1 gAreaTilesets_HyliaDigCaves:: @ 081013C4 .4byte gAreaTileset_HyliaDigCaves_0 gAreaTileset_MinishVillage_0:: @ 081013C8 +.ifdef EU + tileset_tiles 0xD39BC-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xD5434-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xD76F4-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xD39BC, 0x6000000, 0x4000, 1 tileset_tiles 0xD5434, 0x6004000, 0x4000, 1 tileset_tiles 0xD76F4, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 14, 1 gAreaTileset_MinishVillage_1:: @ 081013F8 +.ifdef EU + tileset_tiles 0xDCC34-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xDDFCC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xE028C-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xDCC34, 0x6000000, 0x4000, 1 tileset_tiles 0xDDFCC, 0x6004000, 0x4000, 1 tileset_tiles 0xE028C, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 25, 1 gAreaTilesets_MinishVillage:: @ 08101428 @@ -301,27 +473,48 @@ gAreaTilesets_MinishVillage:: @ 08101428 .4byte gAreaTileset_MinishVillage_1 gAreaTileset_MelarisMine_0:: @ 08101430 +.ifdef EU + tileset_tiles 0xE28EC-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xE4D74-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xE6994-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xE28EC, 0x6000000, 0x4000, 1 tileset_tiles 0xE4D74, 0x6004000, 0x4000, 1 tileset_tiles 0xE6994, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 61, 1 gAreaTilesets_MelarisMine:: @ 08101460 .4byte gAreaTileset_MelarisMine_0 gAreaTileset_MinishPaths1_0:: @ 08101464 +.ifdef EU + tileset_tiles 0xEB00C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xECB90-0x4, 0x6004000, 0x4000, 1 +.else tileset_tiles 0xEB00C, 0x6000000, 0x4000, 1 tileset_tiles 0xECB90, 0x6004000, 0x4000, 1 +.endif tileset_palette_set 18, 1 gAreaTileset_MinishPaths1_1:: @ 08101488 +.ifdef EU + tileset_tiles 0xEB00C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xECB90-0x4, 0x6004000, 0x4000, 1 +.else tileset_tiles 0xEB00C, 0x6000000, 0x4000, 1 tileset_tiles 0xECB90, 0x6004000, 0x4000, 1 +.endif tileset_palette_set 63, 1 gAreaTileset_MinishPaths1_2:: @ 081014AC +.ifdef EU + tileset_tiles 0xEB00C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xECB90-0x4, 0x6004000, 0x4000, 1 +.else tileset_tiles 0xEB00C, 0x6000000, 0x4000, 1 tileset_tiles 0xECB90, 0x6004000, 0x4000, 1 +.endif tileset_palette_set 64, 1 gAreaTilesets_MinishPaths1:: @ 081014D0 @@ -330,18 +523,34 @@ gAreaTilesets_MinishPaths1:: @ 081014D0 .4byte gAreaTileset_MinishPaths1_2 gAreaTileset_CrenelMinishPaths_0:: @ 081014DC +.ifdef EU + tileset_tiles 0xEFE04-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xF1644-0x4, 0x6004000, 0x4000, 1 +.else tileset_tiles 0xEFE04, 0x6000000, 0x4000, 1 tileset_tiles 0xF1644, 0x6004000, 0x4000, 1 +.endif tileset_palette_set 65, 1 gAreaTileset_CrenelMinishPaths_1:: @ 08101500 +.ifdef EU + tileset_tiles 0xF2E74-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xF4160-0x4, 0x6004000, 0x4000, 1 +.else tileset_tiles 0xF2E74, 0x6000000, 0x4000, 1 tileset_tiles 0xF4160, 0x6004000, 0x4000, 1 +.endif tileset_palette_set 66, 1 +.ifdef EU +gAreaTileset_CrenelMinishPaths_2:: @ 08101524-0x4 + tileset_tiles 0xF2E74-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xF4160-0x4, 0x6004000, 0x4000, 1 +.else gAreaTileset_CrenelMinishPaths_2:: @ 08101524 tileset_tiles 0xF2E74, 0x6000000, 0x4000, 1 tileset_tiles 0xF4160, 0x6004000, 0x4000, 1 +.endif tileset_palette_set 93, 1 gAreaTilesets_CrenelMinishPaths:: @ 08101548 @@ -350,83 +559,163 @@ gAreaTilesets_CrenelMinishPaths:: @ 08101548 .4byte gAreaTileset_CrenelMinishPaths_2 gAreaTileset_MinishHouseInteriors_0:: @ 08101554 +.ifdef EU + tileset_tiles 0x13A218-0x4, 0x6000000, 0x8740, 1 +.else tileset_tiles 0x13A218, 0x6000000, 0x8740, 1 +.endif tileset_palette_set 68, 1 gAreaTileset_MinishHouseInteriors_1:: @ 0810156C +.ifdef EU + tileset_tiles 0x13F620-0x4, 0x6000000, 0x7540, 1 +.else tileset_tiles 0x13F620, 0x6000000, 0x7540, 1 +.endif tileset_palette_set 69, 1 gAreaTileset_MinishHouseInteriors_2:: @ 08101584 +.ifdef EU + tileset_tiles 0x1427B8-0x4, 0x6000000, 0x4B40, 1 +.else tileset_tiles 0x1427B8, 0x6000000, 0x4B40, 1 +.endif tileset_palette_set 70, 1 gAreaTileset_MinishHouseInteriors_3:: @ 0810159C +.ifdef EU + tileset_tiles 0x14506C-0x4, 0x6000000, 0x4A40, 1 +.else tileset_tiles 0x14506C, 0x6000000, 0x4A40, 1 +.endif tileset_palette_set 71, 1 gAreaTileset_MinishHouseInteriors_4:: @ 081015B4 +.ifdef EU + tileset_tiles 0x14789C-0x4, 0x6000000, 0x4980, 1 +.else tileset_tiles 0x14789C, 0x6000000, 0x4980, 1 +.endif tileset_palette_set 72, 1 gAreaTileset_MinishHouseInteriors_5:: @ 081015CC +.ifdef EU + tileset_tiles 0x149FC8-0x4, 0x6000000, 0x4D80, 1 +.else tileset_tiles 0x149FC8, 0x6000000, 0x4D80, 1 +.endif tileset_palette_set 73, 1 gAreaTileset_MinishHouseInteriors_6:: @ 081015E4 +.ifdef EU + tileset_tiles 0x14CD90-0x4, 0x6000000, 0x8E40, 1 +.else tileset_tiles 0x14CD90, 0x6000000, 0x8E40, 1 +.endif tileset_palette_set 74, 1 gAreaTileset_MinishHouseInteriors_7:: @ 081015FC +.ifdef EU + tileset_tiles 0x152324-0x4, 0x6000000, 0x7E00, 1 +.else tileset_tiles 0x152324, 0x6000000, 0x7E00, 1 +.endif tileset_palette_set 75, 1 gAreaTileset_MinishHouseInteriors_8:: @ 08101614 +.ifdef EU + tileset_tiles 0x1562EC-0x4, 0x6000000, 0x9F40, 1 +.else tileset_tiles 0x1562EC, 0x6000000, 0x9F40, 1 +.endif tileset_palette_set 76, 1 gAreaTileset_MinishHouseInteriors_9:: @ 0810162C +.ifdef EU + tileset_tiles 0x15A834-0x4, 0x6000000, 0x7980, 1 +.else tileset_tiles 0x15A834, 0x6000000, 0x7980, 1 +.endif tileset_palette_set 86, 1 gAreaTileset_MinishHouseInteriors_10:: @ 08101644 +.ifdef EU + tileset_tiles 0x15DAE0-0x4, 0x6000000, 0x7B40, 1 +.else tileset_tiles 0x15DAE0, 0x6000000, 0x7B40, 1 +.endif tileset_palette_set 87, 1 gAreaTileset_MinishHouseInteriors_11:: @ 0810165C +.ifdef EU + tileset_tiles 0x16100C-0x4, 0x6000000, 0x69C0, 1 +.else tileset_tiles 0x16100C, 0x6000000, 0x69C0, 1 +.endif tileset_palette_set 88, 1 gAreaTileset_MinishHouseInteriors_12:: @ 08101674 +.ifdef EU + tileset_tiles 0x169738-0x4, 0x6000000, 0x5D80, 1 +.else tileset_tiles 0x169738, 0x6000000, 0x5D80, 1 +.endif tileset_palette_set 77, 1 gAreaTileset_MinishHouseInteriors_13:: @ 0810168C +.ifdef EU + tileset_tiles 0x16CB98-0x4, 0x6000000, 0x5CC0, 1 +.else tileset_tiles 0x16CB98, 0x6000000, 0x5CC0, 1 +.endif tileset_palette_set 78, 1 gAreaTileset_MinishHouseInteriors_14:: @ 081016A4 +.ifdef EU + tileset_tiles 0x16FEE8-0x4, 0x6000000, 0x5B00, 1 +.else tileset_tiles 0x16FEE8, 0x6000000, 0x5B00, 1 +.endif tileset_palette_set 79, 1 gAreaTileset_MinishHouseInteriors_15:: @ 081016BC +.ifdef EU + tileset_tiles 0x1732E8-0x4, 0x6000000, 0x5240, 1 +.else tileset_tiles 0x1732E8, 0x6000000, 0x5240, 1 +.endif tileset_palette_set 80, 1 gAreaTileset_MinishHouseInteriors_16:: @ 081016D4 +.ifdef EU + tileset_tiles 0x175638-0x4, 0x6000000, 0x5C40, 1 +.else tileset_tiles 0x175638, 0x6000000, 0x5C40, 1 +.endif tileset_palette_set 81, 1 gAreaTileset_MinishHouseInteriors_17:: @ 081016EC +.ifdef EU + tileset_tiles 0x178B08-0x4, 0x6000000, 0x5740, 1 +.else tileset_tiles 0x178B08, 0x6000000, 0x5740, 1 +.endif tileset_palette_set 82, 1 gAreaTileset_MinishHouseInteriors_18:: @ 08101704 +.ifdef EU + tileset_tiles 0x17B854-0x4, 0x6000000, 0x6180, 1 +.else tileset_tiles 0x17B854, 0x6000000, 0x6180, 1 +.endif tileset_palette_set 83, 1 gAreaTileset_MinishHouseInteriors_19:: @ 0810171C +.ifdef EU + tileset_tiles 0x17EE9C-0x4, 0x6000000, 0x5C80, 1 +.else tileset_tiles 0x17EE9C, 0x6000000, 0x5C80, 1 +.endif tileset_palette_set 84, 1 gAreaTilesets_MinishHouseInteriors:: @ 08101734 @@ -452,39 +741,75 @@ gAreaTilesets_MinishHouseInteriors:: @ 08101734 .4byte gAreaTileset_MinishHouseInteriors_19 gAreaTileset_TownMinishHoles_0:: @ 08101784 +.ifdef EU + tileset_tiles 0x1823BC-0x4, 0x6000000, 0x6100, 1 +.else tileset_tiles 0x1823BC, 0x6000000, 0x6100, 1 +.endif tileset_palette_set 115, 1 gAreaTileset_TownMinishHoles_1:: @ 0810179C +.ifdef EU + tileset_tiles 0x184B10-0x4, 0x6000000, 0x7DC0, 1 +.else tileset_tiles 0x184B10, 0x6000000, 0x7DC0, 1 +.endif tileset_palette_set 116, 1 gAreaTileset_TownMinishHoles_2:: @ 081017B4 +.ifdef EU + tileset_tiles 0x187A3C-0x4, 0x6000000, 0x70C0, 1 +.else tileset_tiles 0x187A3C, 0x6000000, 0x70C0, 1 +.endif tileset_palette_set 117, 1 gAreaTileset_TownMinishHoles_3:: @ 081017CC +.ifdef EU + tileset_tiles 0x18A5D4-0x4, 0x6000000, 0x7E40, 1 +.else tileset_tiles 0x18A5D4, 0x6000000, 0x7E40, 1 +.endif tileset_palette_set 118, 1 gAreaTileset_TownMinishHoles_4:: @ 081017E4 +.ifdef EU + tileset_tiles 0x18D530-0x4, 0x6000000, 0x7240, 1 +.else tileset_tiles 0x18D530, 0x6000000, 0x7240, 1 +.endif tileset_palette_set 119, 1 gAreaTileset_TownMinishHoles_5:: @ 081017FC +.ifdef EU + tileset_tiles 0x18FF58-0x4, 0x6000000, 0x8900, 1 +.else tileset_tiles 0x18FF58, 0x6000000, 0x8900, 1 +.endif tileset_palette_set 129, 1 gAreaTileset_TownMinishHoles_6:: @ 08101814 +.ifdef EU + tileset_tiles 0x193CD4-0x4, 0x6000000, 0xBEC0, 1 +.else tileset_tiles 0x193CD4, 0x6000000, 0xBEC0, 1 +.endif tileset_palette_set 124, 1 gAreaTileset_TownMinishHoles_7:: @ 0810182C +.ifdef EU + tileset_tiles 0x197688-0x4, 0x6000000, 0xA480, 1 +.else tileset_tiles 0x197688, 0x6000000, 0xA480, 1 +.endif tileset_palette_set 123, 1 gAreaTileset_TownMinishHoles_8:: @ 08101844 +.ifdef EU + tileset_tiles 0x19C788-0x4, 0x6000000, 0xB0C0, 1 +.else tileset_tiles 0x19C788, 0x6000000, 0xB0C0, 1 +.endif tileset_palette_set 122, 1 gAreaTilesets_TownMinishHoles:: @ 0810185C @@ -499,30 +824,54 @@ gAreaTilesets_TownMinishHoles:: @ 0810185C .4byte gAreaTileset_TownMinishHoles_8 gAreaTileset_HouseInteriors1_0:: @ 08101880 +.ifdef EU + tileset_tiles 0xF8D18-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xFAD04-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xF8D18, 0x6000000, 0x4000, 1 tileset_tiles 0xFAD04, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 51, 1 gAreaTilesets_HouseInteriors1:: @ 081018B0 .4byte gAreaTileset_HouseInteriors1_0 gAreaTileset_HouseInteriors2_0:: @ 081018B4 +.ifdef EU + tileset_tiles 0xFE38C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x100940-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xFE38C, 0x6000000, 0x4000, 1 tileset_tiles 0x100940, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 52, 1 gAreaTileset_HouseInteriors2_1:: @ 081018E4 +.ifdef EU + tileset_tiles 0xFE38C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x100940-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xFE38C, 0x6000000, 0x4000, 1 tileset_tiles 0x100940, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 168, 1 gAreaTileset_HouseInteriors2_2:: @ 08101914 +.ifdef EU + tileset_tiles 0xFE38C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x100940-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xFE38C, 0x6000000, 0x4000, 1 tileset_tiles 0x100940, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 157, 1 gAreaTilesets_HouseInteriors2:: @ 08101944 @@ -531,66 +880,120 @@ gAreaTilesets_HouseInteriors2:: @ 08101944 .4byte gAreaTileset_HouseInteriors2_2 gAreaTileset_HouseInteriors4_0:: @ 08101950 +.ifdef EU + tileset_tiles 0x104044-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1060C4-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x104044, 0x6000000, 0x4000, 1 tileset_tiles 0x1060C4, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 89, 1 gAreaTilesets_HouseInteriors4:: @ 08101980 .4byte gAreaTileset_HouseInteriors4_0 gAreaTileset_HouseInteriors3_0:: @ 08101984 +.ifdef EU + tileset_tiles 0x10984C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x10B930-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x10984C, 0x6000000, 0x4000, 1 tileset_tiles 0x10B930, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 53, 1 gAreaTilesets_HouseInteriors3:: @ 081019B4 .4byte gAreaTileset_HouseInteriors3_0 gAreaTileset_TreeInteriors_0:: @ 081019B8 +.ifdef EU + tileset_tiles 0x10EC50-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x110A78-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x10EC50, 0x6000000, 0x4000, 1 tileset_tiles 0x110A78, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 13, 1 gAreaTilesets_TreeInteriors:: @ 081019E8 .4byte gAreaTileset_TreeInteriors_0 gAreaTileset_Dojos_0:: @ 081019EC +.ifdef EU + tileset_tiles 0x11919C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x11B020-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x11919C, 0x6000000, 0x4000, 1 tileset_tiles 0x11B020, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 150, 1 gAreaTileset_Dojos_1:: @ 08101A1C +.ifdef EU + tileset_tiles 0x11919C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x11B020-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x11919C, 0x6000000, 0x4000, 1 tileset_tiles 0x11B020, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 149, 1 gAreaTileset_Dojos_2:: @ 08101A4C +.ifdef EU + tileset_tiles 0x11919C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x11B020-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x11919C, 0x6000000, 0x4000, 1 tileset_tiles 0x11B020, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 148, 1 gAreaTileset_Dojos_3:: @ 08101A7C +.ifdef EU + tileset_tiles 0x11919C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x11B020-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x11919C, 0x6000000, 0x4000, 1 tileset_tiles 0x11B020, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 146, 1 gAreaTileset_Dojos_4:: @ 08101AAC +.ifdef EU + tileset_tiles 0x11919C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x11B020-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x11919C, 0x6000000, 0x4000, 1 tileset_tiles 0x11B020, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 147, 1 gAreaTileset_Dojos_5:: @ 08101ADC +.ifdef EU + tileset_tiles 0x11919C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x11B020-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x11919C, 0x6000000, 0x4000, 1 tileset_tiles 0x11B020, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 45, 1 gAreaTilesets_Dojos:: @ 08101B0C @@ -602,33 +1005,63 @@ gAreaTilesets_Dojos:: @ 08101B0C .4byte gAreaTileset_Dojos_5 gAreaTileset_MinishCracks_0:: @ 08101B24 +.ifdef EU + tileset_tiles 0x113C98-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x115ECC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x113C98, 0x6000000, 0x4000, 1 tileset_tiles 0x115ECC, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 153, 1 gAreaTileset_MinishCracks_1:: @ 08101B54 +.ifdef EU + tileset_tiles 0x113C98-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x115ECC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x113C98, 0x6000000, 0x4000, 1 tileset_tiles 0x115ECC, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 152, 1 gAreaTileset_MinishCracks_2:: @ 08101B84 +.ifdef EU + tileset_tiles 0x113C98-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x115ECC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x113C98, 0x6000000, 0x4000, 1 tileset_tiles 0x115ECC, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 154, 1 gAreaTileset_MinishCracks_3:: @ 08101BB4 +.ifdef EU + tileset_tiles 0x113C98-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x115ECC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x113C98, 0x6000000, 0x4000, 1 tileset_tiles 0x115ECC, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 34, 1 gAreaTileset_MinishCracks_4:: @ 08101BE4 +.ifdef EU + tileset_tiles 0x113C98-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x115ECC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x113C98, 0x6000000, 0x4000, 1 tileset_tiles 0x115ECC, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 151, 1 gAreaTilesets_MinishCracks:: @ 08101C14 @@ -639,239 +1072,397 @@ gAreaTilesets_MinishCracks:: @ 08101C14 .4byte gAreaTileset_MinishCracks_4 gAreaTileset_ArmosInteriors_0:: @ 08101C28 +.ifdef EU + tileset_tiles 0xA0924-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xA1AC0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xA36A4-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xA0924, 0x6000000, 0x4000, 1 tileset_tiles 0xA1AC0, 0x6004000, 0x4000, 1 tileset_tiles 0xA36A4, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 110, 1 gAreaTilesets_ArmosInteriors:: @ 08101C58 .4byte gAreaTileset_ArmosInteriors_0 gAreaTileset_MinishRafters_0:: @ 08101C5C +.ifdef EU + tileset_tiles 0x11E2E4-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x11FCDC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x11E2E4, 0x6000000, 0x4000, 1 tileset_tiles 0x11FCDC, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 121, 1 gAreaTilesets_MinishRafters:: @ 08101C8C .4byte gAreaTileset_MinishRafters_0 gAreaTileset_GoronCave_0:: @ 08101C90 +.ifdef EU + tileset_tiles 0xA6900-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xA8578-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xAAA44-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xA6900, 0x6000000, 0x4000, 1 tileset_tiles 0xA8578, 0x6004000, 0x4000, 1 tileset_tiles 0xAAA44, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 125, 1 gAreaTilesets_GoronCave:: @ 08101CC0 .4byte gAreaTileset_GoronCave_0 gAreaTileset_WindTribeTower_0:: @ 08101CC4 +.ifdef EU + tileset_tiles 0x121254-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x122F88-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x121254, 0x6000000, 0x4000, 1 tileset_tiles 0x122F88, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 126, 1 gAreaTilesets_WindTribeTower:: @ 08101CF4 .4byte gAreaTileset_WindTribeTower_0 gAreaTileset_WindTribeTowerRoof_0:: @ 08101CF8 +.ifdef EU + tileset_tiles 0x126224-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x127B68-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x129CE0-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x126224, 0x6000000, 0x4000, 1 tileset_tiles 0x127B68, 0x6004000, 0x4000, 1 tileset_tiles 0x129CE0, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 127, 1 gAreaTilesets_WindTribeTowerRoof:: @ 08101D28 .4byte gAreaTileset_WindTribeTowerRoof_0 gAreaTileset_MinishCaves_0:: @ 08101D2C +.ifdef EU + tileset_tiles 0xB39E0-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xB5B40-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xB7D48-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xB39E0, 0x6000000, 0x4000, 1 tileset_tiles 0xB5B40, 0x6004000, 0x4000, 1 tileset_tiles 0xB7D48, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 158, 1 gAreaTilesets_MinishCaves:: @ 08101D5C .4byte gAreaTileset_MinishCaves_0 gAreaTileset_CastleGardenMinishHoles_0:: @ 08101D60 +.ifdef EU + tileset_tiles 0xBC8F4-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xBDCB8-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xBEE54-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xBC8F4, 0x6000000, 0x4000, 1 tileset_tiles 0xBDCB8, 0x6004000, 0x4000, 1 tileset_tiles 0xBEE54, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 159, 1 gAreaTilesets_CastleGardenMinishHoles:: @ 08101D90 .4byte gAreaTileset_CastleGardenMinishHoles_0 gAreaTileset_37_0:: @ 08101D94 +.ifdef EU + tileset_tiles 0xBC8F4-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0xBDCB8-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xBEE54-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0xBC8F4, 0x6000000, 0x4000, 1 tileset_tiles 0xBDCB8, 0x6004000, 0x4000, 1 tileset_tiles 0xBEE54, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 160, 1 gAreaTilesets_37:: @ 08101DC4 .4byte gAreaTileset_37_0 gAreaTileset_EzloCutscene_0:: @ 08101DC8 +.ifdef EU + tileset_tiles 0x12BB70-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x12CD44-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0xF7308-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x12BB70, 0x6000000, 0x4000, 1 tileset_tiles 0x12CD44, 0x6004000, 0x4000, 1 tileset_tiles 0xF7308, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 161, 1 gAreaTilesets_EzloCutscene:: @ 08101DF8 .4byte gAreaTileset_EzloCutscene_0 gAreaTileset_HyruleTownUnderground_0:: @ 08101DFC +.ifdef EU + tileset_tiles 0x19FD10-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1A1C8C-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1A3BE0-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x19FD10, 0x6000000, 0x4000, 1 tileset_tiles 0x1A1C8C, 0x6004000, 0x4000, 1 tileset_tiles 0x1A3BE0, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 109, 1 gAreaTilesets_HyruleTownUnderground:: @ 08101E2C .4byte gAreaTileset_HyruleTownUnderground_0 gAreaTileset_SimonsSimulation_0:: @ 08101E30 +.ifdef EU + tileset_tiles 0x19FD10-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1A1C8C-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1A3BE0-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x19FD10, 0x6000000, 0x4000, 1 tileset_tiles 0x1A1C8C, 0x6004000, 0x4000, 1 tileset_tiles 0x1A3BE0, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 15, 1 gAreaTilesets_SimonsSimulation:: @ 08101E60 .4byte gAreaTileset_SimonsSimulation_0 gAreaTileset_40_0:: @ 08101E64 +.ifdef EU + tileset_tiles 0x19FD10-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1A1C8C-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1A3BE0-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x19FD10, 0x6000000, 0x4000, 1 tileset_tiles 0x1A1C8C, 0x6004000, 0x4000, 1 tileset_tiles 0x1A3BE0, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 15, 1 gAreaTilesets_40:: @ 08101E94 .4byte gAreaTileset_40_0 gAreaTileset_DeepwoodShrine_0:: @ 08101E98 +.ifdef EU + tileset_tiles 0x1AB5F4-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1ADAE0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1B007C-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1AB5F4, 0x6000000, 0x4000, 1 tileset_tiles 0x1ADAE0, 0x6004000, 0x4000, 1 tileset_tiles 0x1B007C, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 17, 1 gAreaTilesets_DeepwoodShrine:: @ 08101EC8 .4byte gAreaTileset_DeepwoodShrine_0 gAreaTileset_DeepwoodShrineBoss_0:: @ 08101ECC +.ifdef EU + tileset_tiles 0x1B68AC-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1B7708-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1B9668-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1B68AC, 0x6000000, 0x4000, 1 tileset_tiles 0x1B7708, 0x6004000, 0x4000, 1 tileset_tiles 0x1B9668, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 17, 1 gAreaTilesets_DeepwoodShrineBoss:: @ 08101EFC .4byte gAreaTileset_DeepwoodShrineBoss_0 gAreaTileset_DeepwoodShrineEntry_0:: @ 08101F00 +.ifdef EU + tileset_tiles 0x1BB598-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1BCACC-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1BD320-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1BB598, 0x6000000, 0x4000, 1 tileset_tiles 0x1BCACC, 0x6004000, 0x4000, 1 tileset_tiles 0x1BD320, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 90, 1 gAreaTilesets_DeepwoodShrineEntry:: @ 08101F30 .4byte gAreaTileset_DeepwoodShrineEntry_0 gAreaTileset_CaveOfFlames_0:: @ 08101F34 +.ifdef EU + tileset_tiles 0x1C3044-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1C56F8-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1C7960-0x4, 0x6008000, 0x4000, 1 + tileset_tiles 0x1D6168-0x4, 0x600F000, 0x800, 1 +.else tileset_tiles 0x1C3044, 0x6000000, 0x4000, 1 tileset_tiles 0x1C56F8, 0x6004000, 0x4000, 1 tileset_tiles 0x1C7960, 0x6008000, 0x4000, 1 tileset_tiles 0x1D6168, 0x600F000, 0x800, 1 +.endif tileset_palette_set 36, 1 gAreaTilesets_CaveOfFlames:: @ 08101F70 .4byte gAreaTileset_CaveOfFlames_0 gAreaTileset_CaveOfFlamesBoss_0:: @ 08101F74 +.ifdef EU + tileset_tiles 0x1CE024-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1CFB40-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1D1E98-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1CE024, 0x6000000, 0x4000, 1 tileset_tiles 0x1CFB40, 0x6004000, 0x4000, 1 tileset_tiles 0x1D1E98, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 36, 1 gAreaTilesets_CaveOfFlamesBoss:: @ 08101FA4 .4byte gAreaTileset_CaveOfFlamesBoss_0 gAreaTileset_CastorDarknut_0:: @ 08101FA8 +.ifdef EU + tileset_tiles 0x1DACA4-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1DD2D0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1DF4B4-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1DACA4, 0x6000000, 0x4000, 1 tileset_tiles 0x1DD2D0, 0x6004000, 0x4000, 1 tileset_tiles 0x1DF4B4, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 37, 1 gAreaTilesets_FortressOfWinds:: @ 08101FD8 .4byte gAreaTileset_CastorDarknut_0 gAreaTileset_FortressOfWindsTop_0:: @ 08101FDC +.ifdef EU + tileset_tiles 0x1EC07C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1ED3E0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1EEE8C-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1EC07C, 0x6000000, 0x4000, 1 tileset_tiles 0x1ED3E0, 0x6004000, 0x4000, 1 tileset_tiles 0x1EEE8C, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 94, 1 gAreaTilesets_FortressOfWindsTop:: @ 0810200C .4byte gAreaTileset_FortressOfWindsTop_0 gAreaTileset_InnerMazaal_0:: @ 08102010 +.ifdef EU + tileset_tiles 0x1E5748-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1E7484-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1E89D0-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1E5748, 0x6000000, 0x4000, 1 tileset_tiles 0x1E7484, 0x6004000, 0x4000, 1 tileset_tiles 0x1E89D0, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 128, 1 gAreaTilesets_InnerMazaal:: @ 08102040 .4byte gAreaTileset_InnerMazaal_0 gAreaTileset_TempleOfDroplets_0:: @ 08102044 +.ifdef EU + tileset_tiles 0x1F5A1C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1F7C44-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1FA2F0-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1F5A1C, 0x6000000, 0x4000, 1 tileset_tiles 0x1F7C44, 0x6004000, 0x4000, 1 tileset_tiles 0x1FA2F0, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 55, 1 gAreaTilesets_TempleOfDroplets:: @ 08102074 .4byte gAreaTileset_TempleOfDroplets_0 gAreaTileset_61_0:: @ 08102078 +.ifdef EU + tileset_tiles 0x20143C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x2031E8-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x204370-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x20143C, 0x6000000, 0x4000, 1 tileset_tiles 0x2031E8, 0x6004000, 0x4000, 1 tileset_tiles 0x204370, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 104, 1 gAreaTilesets_61:: @ 081020A8 .4byte gAreaTileset_61_0 gAreaTileset_HyruleTownMinishCaves_0:: @ 081020AC +.ifdef EU + tileset_tiles 0x1F5A1C-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x1F7C44-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x1FA2F0-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x1F5A1C, 0x6000000, 0x4000, 1 tileset_tiles 0x1F7C44, 0x6004000, 0x4000, 1 tileset_tiles 0x1FA2F0, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 130, 1 gAreaTilesets_HyruleTownMinishCaves:: @ 081020DC .4byte gAreaTileset_HyruleTownMinishCaves_0 gAreaTileset_RoyalCrypt_0:: @ 081020E0 +.ifdef EU + tileset_tiles 0x20CFC4-0x2C, 0x6000000, 0x4000, 1 + tileset_tiles 0x20EF84-0x2C, 0x6004000, 0x4000, 1 + tileset_tiles 0x210B80-0x2C, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x20CFC4, 0x6000000, 0x4000, 1 tileset_tiles 0x20EF84, 0x6004000, 0x4000, 1 tileset_tiles 0x210B80, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 60, 1 gAreaTilesets_RoyalCrypt:: @ 08102110 .4byte gAreaTileset_RoyalCrypt_0 gAreaTileset_PalaceOfWinds_0:: @ 08102114 +.ifdef EU + tileset_tiles 0x216F68-0x2C, 0x6000000, 0x4000, 1 + tileset_tiles 0x219350-0x2C, 0x6004000, 0x4000, 1 + tileset_tiles 0x21B4D8-0x2C, 0x6008000, 0x4000, 1 + tileset_tiles 0x2210F8-0x2C, 0x600F000, 0x800, 1 +.else tileset_tiles 0x216F68, 0x6000000, 0x4000, 1 tileset_tiles 0x219350, 0x6004000, 0x4000, 1 tileset_tiles 0x21B4D8, 0x6008000, 0x4000, 1 tileset_tiles 0x2210F8, 0x600F000, 0x800, 1 +.endif tileset_palette_set 56, 1 gAreaTilesets_PalaceOfWinds:: @ 08102150 .4byte gAreaTileset_PalaceOfWinds_0 gAreaTileset_PalaceOfWindsBoss_0:: @ 08102154 +.ifdef EU + tileset_tiles 0x22131C-0x2C, 0x6000000, 0x4000, 1 + tileset_tiles 0x222634-0x2C, 0x6004000, 0x4000, 1 + tileset_tiles 0x22449C+0x48, 0x600F000, 0x800, 1 +.else tileset_tiles 0x22131C, 0x6000000, 0x4000, 1 tileset_tiles 0x222634, 0x6004000, 0x4000, 1 .ifdef JP tileset_tiles 0x224510, 0x600F000, 0x800, 1 .else tileset_tiles 0x22449C, 0x600F000, 0x800, 1 +.endif .endif tileset_palette_set 162, 1 @@ -883,10 +1474,16 @@ gAreaTileset_Sanctuary_0:: @ 08102188 tileset_tiles 0x22E250, 0x6000000, 0x4000, 1 tileset_tiles 0x22FFA4, 0x6004000, 0x4000, 1 tileset_tiles 0x232028, 0x6008000, 0x4000, 1 +.else +.ifdef EU + tileset_tiles 0x22E1DC+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x22FF30+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x231FB4+0x48, 0x6008000, 0x4000, 1 .else tileset_tiles 0x22E1DC, 0x6000000, 0x4000, 1 tileset_tiles 0x22FF30, 0x6004000, 0x4000, 1 tileset_tiles 0x231FB4, 0x6008000, 0x4000, 1 +.endif .endif tileset_palette_set 57, 1 @@ -898,10 +1495,16 @@ gAreaTileset_HyruleCastle_0:: @ 081021BC tileset_tiles 0x2379C0, 0x6000000, 0x4000, 1 tileset_tiles 0x239B50, 0x6004000, 0x4000, 1 tileset_tiles 0x23B8C8, 0x6008000, 0x4000, 1 +.else +.ifdef EU + tileset_tiles 0x23794C+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x239ADC+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x23B854+0x48, 0x6008000, 0x4000, 1 .else tileset_tiles 0x23794C, 0x6000000, 0x4000, 1 tileset_tiles 0x239ADC, 0x6004000, 0x4000, 1 tileset_tiles 0x23B854, 0x6008000, 0x4000, 1 +.endif .endif tileset_palette_set 58, 1 @@ -913,10 +1516,16 @@ gAreaTileset_SanctuaryEntrance_0:: @ 081021F0 tileset_tiles 0x242430, 0x6000000, 0x4000, 1 tileset_tiles 0x243F6C, 0x6004000, 0x4000, 1 tileset_tiles 0x245558, 0x6008000, 0x4000, 1 +.else +.ifdef EU + tileset_tiles 0x2423BC+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x243EF8+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x2454E4+0x48, 0x6008000, 0x4000, 1 .else tileset_tiles 0x2423BC, 0x6000000, 0x4000, 1 tileset_tiles 0x243EF8, 0x6004000, 0x4000, 1 tileset_tiles 0x2454E4, 0x6008000, 0x4000, 1 +.endif .endif tileset_palette_set 145, 1 @@ -929,10 +1538,16 @@ gAreaTileset_DarkHyruleCastle_0:: @ 08102224 tileset_tiles 0x247560, 0x6000000, 0x4000, 1 tileset_tiles 0x249734, 0x6004000, 0x4000, 1 tileset_tiles 0x24B99C, 0x6008000, 0x4000, 1 +.else +.ifdef EU + tileset_tiles 0x2474EC+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x2496C0+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x24B928+0x48, 0x6008000, 0x4000, 1 .else tileset_tiles 0x2474EC, 0x6000000, 0x4000, 1 tileset_tiles 0x2496C0, 0x6004000, 0x4000, 1 tileset_tiles 0x24B928, 0x6008000, 0x4000, 1 +.endif .endif tileset_palette_set 59, 1 @@ -944,10 +1559,16 @@ gAreaTileset_DarkHyruleCastleOutside_0:: @ 08102258 tileset_tiles 0x26E430, 0x6000000, 0x4000, 1 tileset_tiles 0x270420, 0x6004000, 0x4000, 1 tileset_tiles 0x2720A4, 0x6008000, 0x4000, 1 +.else +.ifdef EU + tileset_tiles 0x26E3BC+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x2703AC+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x272030+0x48, 0x6008000, 0x4000, 1 .else tileset_tiles 0x26E3BC, 0x6000000, 0x4000, 1 tileset_tiles 0x2703AC, 0x6004000, 0x4000, 1 tileset_tiles 0x272030, 0x6008000, 0x4000, 1 +.endif .endif tileset_palette_set 144, 1 @@ -960,10 +1581,16 @@ gAreaTileset_DarkHyruleCastleBridge_0:: @ 0810228C tileset_tiles 0x252F6C, 0x6000000, 0x4000, 1 tileset_tiles 0x254090, 0x6004000, 0x4000, 1 tileset_tiles 0x2557CC, 0x6008000, 0x4000, 1 +.else +.ifdef EU + tileset_tiles 0x252EF8+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x25401C+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x255758+0x48, 0x6008000, 0x4000, 1 .else tileset_tiles 0x252EF8, 0x6000000, 0x4000, 1 tileset_tiles 0x25401C, 0x6004000, 0x4000, 1 tileset_tiles 0x255758, 0x6008000, 0x4000, 1 +.endif .endif tileset_palette_set 180, 1 @@ -975,10 +1602,16 @@ gAreaTileset_VaatisArms_0:: @ 081022C0 tileset_tiles 0x260DFC, 0x6000000, 0x4000, 1 tileset_tiles 0x2625A4, 0x6004000, 0x4000, 1 tileset_tiles 0x262F78, 0x6008000, 0x4000, 1 +.else +.ifdef EU + tileset_tiles 0x260D88+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x262530+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x262F04+0x48, 0x6008000, 0x4000, 1 .else tileset_tiles 0x260D88, 0x6000000, 0x4000, 1 tileset_tiles 0x262530, 0x6004000, 0x4000, 1 tileset_tiles 0x262F04, 0x6008000, 0x4000, 1 +.endif .endif tileset_palette_set 155, 1 @@ -990,10 +1623,16 @@ gAreaTileset_Vaati3_0:: @ 081022F4 tileset_tiles 0x258204, 0x6000000, 0x4000, 1 tileset_tiles 0x259310, 0x6004000, 0x4000, 1 tileset_tiles 0x25A52C, 0x6008000, 0x4000, 1 +.else +.ifdef EU + tileset_tiles 0x258190+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x25929C+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x25A4B8+0x48, 0x6008000, 0x4000, 1 .else tileset_tiles 0x258190, 0x6000000, 0x4000, 1 tileset_tiles 0x25929C, 0x6004000, 0x4000, 1 tileset_tiles 0x25A4B8, 0x6008000, 0x4000, 1 +.endif .endif tileset_palette_set 156, 1 @@ -1006,11 +1645,18 @@ gAreaTileset_Vaati2_0:: @ 08102328 tileset_tiles 0x25DC08, 0x6004000, 0x4000, 1 tileset_tiles 0x25EE50, 0x6008000, 0x4000, 1 tileset_tiles 0x26E13C, 0x600F000, 0x800, 1 +.else +.ifdef EU + tileset_tiles 0x25D0B4+0x48, 0x6000000, 0x4000, 1 + tileset_tiles 0x25DB94+0x48, 0x6004000, 0x4000, 1 + tileset_tiles 0x25EDDC+0x48, 0x6008000, 0x4000, 1 + tileset_tiles 0x26E0C8+0x48, 0x600F000, 0x800, 1 .else tileset_tiles 0x25D0B4, 0x6000000, 0x4000, 1 tileset_tiles 0x25DB94, 0x6004000, 0x4000, 1 tileset_tiles 0x25EDDC, 0x6008000, 0x4000, 1 tileset_tiles 0x26E0C8, 0x600F000, 0x800, 1 +.endif .endif tileset_palette_set 169, 1 @@ -1018,45 +1664,75 @@ gAreaTilesets_Vaati2:: @ 08102364 .4byte gAreaTileset_Vaati2_0 gAreaTileset_45_0:: @ 08102368 +.ifdef EU + tileset_tiles 0x8D160-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x8FAF0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x92434-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x8D160, 0x6000000, 0x4000, 1 tileset_tiles 0x8FAF0, 0x6004000, 0x4000, 1 tileset_tiles 0x92434, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 35, 1 gAreaTilesets_45:: @ 08102398 .4byte gAreaTileset_45_0 gAreaTileset_CastorCaves_0:: @ 0810239C +.ifdef EU + tileset_tiles 0x8D160-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x8FAF0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x92434-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x8D160, 0x6000000, 0x4000, 1 tileset_tiles 0x8FAF0, 0x6004000, 0x4000, 1 tileset_tiles 0x92434, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 101, 1 gAreaTilesets_CastorCaves:: @ 081023CC .4byte gAreaTileset_CastorCaves_0 gAreaTileset_Caves_0:: @ 081023D0 +.ifdef EU + tileset_tiles 0x8D160-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x8FAF0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x92434-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x8D160, 0x6000000, 0x4000, 1 tileset_tiles 0x8FAF0, 0x6004000, 0x4000, 1 tileset_tiles 0x92434, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 131, 1 gAreaTilesets_Caves:: @ 08102400 .4byte gAreaTileset_Caves_0 gAreaTileset_VeilFallsCaves_0:: @ 08102404 +.ifdef EU + tileset_tiles 0x8D160-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x8FAF0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x92434-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x8D160, 0x6000000, 0x4000, 1 tileset_tiles 0x8FAF0, 0x6004000, 0x4000, 1 tileset_tiles 0x92434, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 132, 1 gAreaTilesets_VeilFallsCaves:: @ 08102434 .4byte gAreaTileset_VeilFallsCaves_0 gAreaTileset_RoyalValleyGraves_0:: @ 08102438 +.ifdef EU + tileset_tiles 0x8D160-0x4, 0x6000000, 0x4000, 1 + tileset_tiles 0x8FAF0-0x4, 0x6004000, 0x4000, 1 + tileset_tiles 0x92434-0x4, 0x6008000, 0x4000, 1 +.else tileset_tiles 0x8D160, 0x6000000, 0x4000, 1 tileset_tiles 0x8FAF0, 0x6004000, 0x4000, 1 tileset_tiles 0x92434, 0x6008000, 0x4000, 1 +.endif tileset_palette_set 133, 1 gAreaTilesets_RoyalValleyGraves:: @ 08102468 diff --git a/linker_EU.ld b/linker_EU.ld new file mode 100644 index 00000000..7a93664b --- /dev/null +++ b/linker_EU.ld @@ -0,0 +1,1731 @@ +ENTRY(__start) + +gNumMusicPlayers = 0x20; +gMaxLines = 0; + +MEMORY { + ewram (w!x) : ORIGIN = 0x02000000, LENGTH = 256K + iwram (w!x) : ORIGIN = 0x03000000, LENGTH = 32K + rom (rx) : ORIGIN = 0x08000000, LENGTH = 32M +} + +SECTIONS { + ewram (NOLOAD) : ALIGN(4) { + . = 0x00000006; gUnk_02000006 = .; + . = 0x00000010; gUnk_02000010 = .; + . = 0x00000020; gUnk_02000020 = .; + . = 0x00000030; gUnk_02000030 = .; + . = 0x00000040; gUnk_02000040 = .; + . = 0x00000050; gTextBox = .; + . = 0x0000005C; gUnk_0200005C = .; + . = 0x00000070; gUnk_02000070 = .; + . = 0x00000080; gMenu = .; + . = 0x00000080; gIntroState = .; + . = 0x00000080; gChooseFileState = .; + . = 0x00000090; gUnk_02000090 = .; + . = 0x000000B0; gUnk_020000B0 = .; + . = 0x000000C0; gUnk_020000C0 = .; + . = 0x00000CC0; gUnk_02000CC0 = .; + . = 0x00000D00; gUnk_02000D00 = .; + . = 0x00001A00; gUnk_02001A00 = .; + . = 0x00001A3C; gUnk_02001A3C = .; + . = 0x00001A40; gBG3Buffer = .; + . = 0x00001B40; gUnk_02001B40 = .; + . = 0x00002A40; gSave = .; + . = 0x00002AA0; gUnk_02002AA0 = .; + . = 0x00002AC0; gUnk_02002AC0 = .; + . = 0x00002AC8; gUnk_02002AC8 = .; + . = 0x00002AE8; gStats = .; + . = 0x00002B0E; gUnk_02002B0E = .; + . = 0x00002B32; gUnk_02002B32 = .; + . = 0x00002B54; gUnk_02002B54 = .; + . = 0x00002B58; gUnk_02002B58 = .; + . = 0x00002B6B; gUnk_02002B6B = .; + . = 0x00002C01; gUnk_02002C01 = .; + . = 0x00002C81; gUnk_02002C81 = .; + . = 0x00002C8E; gUnk_02002C8E = .; + . = 0x00002C9C; gGlobalFlags = .; + . = 0x00002E9C; gUnk_02002E9C = .; + . = 0x00002ECC; gUnk_02002ECC = .; + . = 0x00002F00; gMapDataTopSpecial = .; + . = 0x00006F00; gUnk_02006F00 = .; + . = 0x0000AF00; gUnk_0200AF00 = .; + . = 0x0000AF13; gUnk_0200AF13 = .; + . = 0x0000AF34; gUnk_0200AF34 = .; + . = 0x0000B240; gUnk_0200B240 = .; + . = 0x0000B640; gUnk_0200B640 = .; + . = 0x0000B644; gUsedPalettes = .; + . = 0x0000B650; gUnk_0200B650 = .; + . = 0x0000B654; gMapDataTop = .; + . = 0x0000D654; gUnk_0200D654 = .; + . = 0x0000E654; gUnk_0200E654 = .; + . = 0x00010654; gMetatileTypesTop = .; + . = 0x00011654; gUnk_02011654 = .; + . = 0x00012654; gMetatilesTop = .; + . = 0x00016654; gUnk_02016654 = .; + . = 0x00017654; gUnk_02017654 = .; + . = 0x00017660; gUnk_02017660 = .; + . = 0x000176A0; gPaletteBuffer = .; + . = 0x000176E0; gUnk_020176E0 = .; + . = 0x00017700; gUnk_02017700 = .; + . = 0x00017830; gUnk_02017830 = .; + . = 0x000178E0; gUnk_020178E0 = .; + . = 0x00017AA0; gUnk_02017AA0 = .; + . = 0x00017BA0; gUnk_02017BA0 = .; + . = 0x00018EA0; gUnk_02018EA0 = .; + . = 0x00018EB0; gUnk_02018EB0 = .; + . = 0x00018EE0; gUnk_02018EE0 = .; + . = 0x00019EE0; gUnk_02019EE0 = .; + . = 0x00019F6C; gUnk_02019F6C = .; + . = 0x0001AEE0; gUnk_0201AEE0 = .; + . = 0x00021EE0; gSoundPlayingInfo = .; + . = 0x00021F00; gUnk_02021F00 = .; + . = 0x00021F20; gUnk_02021F20 = .; + . = 0x00021F30; gBG1Buffer = .; + . = 0x00021F70; gUnk_02021F70 = .; + . = 0x00022030; gUnk_02022030 = .; + . = 0x00022130; gUnk_02022130 = .; + . = 0x00022730; gUnk_02022730 = .; + . = 0x00022740; gUnk_02022740 = .; + . = 0x00022750; gPlayerScriptExecutionContext = .; + . = 0x00022780; gCurrentTextBox = .; + . = 0x000227DC; gUnk_020227DC = .; + . = 0x000227E8; gUnk_020227E8 = .; + . = 0x000227F0; gUnk_020227F0 = .; + . = 0x000227F8; gUnk_020227F8 = .; + . = 0x00022800; gUnk_02022800 = .; + . = 0x0002281E; gUnk_0202281E = .; + . = 0x00022830; gUnk_02022830 = .; + . = 0x00024030; gUnk_02024030 = .; + . = 0x00024048; gUnk_02024048 = .; + . = 0x00024050; gUnk_02024050 = .; + . = 0x00024090; gUnk_02024090 = .; + . = 0x00024490; gUnk_02024490 = .; + . = 0x00024494; gUnk_02024494 = .; + . = 0x000246B0; gUnk_020246B0 = .; + . = 0x00025EB0; gUnk_02025EB0 = .; + . = 0x00025EB4; gMapDataBottom = .; + . = 0x00027EB4; gUnk_02027EB4 = .; + . = 0x00028EB4; gUnk_02028EB4 = .; + . = 0x0002AEB4; gMetatileTypesBottom = .; + . = 0x0002BEB4; gUnk_0202BEB4 = .; + . = 0x0002CEB4; gMetatilesBottom = .; + . = 0x00030EB4; gUnk_02030EB4 = .; + . = 0x00031EC0; gUnk_02031EC0 = .; + . = 0x00032EC0; gUnk_02032EC0 = .; + . = 0x00032EDC; gUnk_02032EDC = .; + . = 0x00032F14; gUnk_02032F14 = .; + . = 0x00033280; gActiveScriptInfo = .; + . = 0x00033290; gUnk_02033290 = .; + . = 0x00033A90; gArea = .; + . = 0x00033AB8; gUnk_02033AB8 = .; + . = 0x00033ACC; gUnk_02033ACC = .; + . = 0x000342CC; gUnk_020342CC = .; + . = 0x000342F8; gUnk_020342F8 = .; + . = 0x00034330; gUnk_02034330 = .; + . = 0x00034350; gRoomVars = .; + . = 0x00034364; gRoomFlags = .; + . = 0x00034398; gUnk_02034398 = .; + . = 0x00034480; gUnk_02034480 = .; + . = 0x00034490; gUnk_02034490 = .; + . = 0x00034492; gUnk_02034492 = .; + . = 0x000344A0; gUnk_020344A0 = .; + . = 0x000344B0; gBG2Buffer = .; + . = 0x000344F0; gUnk_020344F0 = .; + . = 0x00034CB0; gBG0Buffer = .; + . = 0x00034CB2; gUnk_02034CB2 = .; + . = 0x00034CF0; gUnk_02034CF0 = .; + . = 0x00034D30; gUnk_02034D30 = .; + . = 0x00034DF0; gUnk_02034DF0 = .; + . = 0x000350E2; gUnk_020350E2 = .; + . = 0x000350F0; gUnk_020350F0 = .; + . = 0x00035160; gUnk_02035160 = .; + . = 0x000354B0; gUnk_020354B0 = .; + . = 0x000354B4; gManagerCount = .; + . = 0x000354C0; gUnk_020354C0 = .; + . = 0x0003553E; gUnk_0203553E = .; + . = 0x00035540; gzHeap = .; + . = 0x00035542; gUnk_02035542 = .; + . = 0x00036540; gUnk_02036540 = .; + . = 0x00036570; gScriptExecutionContextArray = .; + . = 0x000369F0; gUnk_020369F0 = .; + . = 0x00036A38; gCurrentWindow = .; + . = 0x00036A40; gNewWindow = .; + . = 0x00036A50; gEEPROMConfig = .; + . = 0x00036A50; gUnk_02036A50 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ + . = 0x00036A58; gUnk_02036A58 = .; + . = 0x00036AD0; gUnk_02036AD0 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ + . = 0x00036AD8; gUnk_02036AD8 = .; + . = 0x00036BB0; gUnk_02036BB0 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ + . = 0x00036BB8; gUnk_02036BB8 = .; + . = 0x00036BB8; gMPlayTracksDEMO = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ + . = 0x00036BC0; gMPlayTracks = .; + . = 0x00038558; gUnk_02038558 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ + . = 0x00038560; gUnk_02038560 = .; + . = 0x00040000; + } >ewram + + iwram (NOLOAD) : ALIGN(4) { + . = 0x00000000; gUnk_03000000 = .; + . = 0x00000020; gUnk_03000020 = .; + . = 0x00000420; gUnk_03000420 = .; + . = 0x00000B80; gUnk_03000B80 = .; + . = 0x00000BD4; gUnk_03000BD4 = .; + . = 0x00000BF0; gRoomControls = .; + . = 0x00000BF6; gUnk_03000BF6 = .; + . = 0x00000BF8; gUnk_03000BF8 = .; + . = 0x00000C24; gUnk_03000C24 = .; + . = 0x00000C30; gUnk_03000C30 = .; + . = 0x00000E10; gUnk_03000E10 = .; + . = 0x00000F50; gScreen = .; + . = 0x00000F58; gBG0Settings = .; + . = 0x00000F64; gBG1Settings = .; + . = 0x00000F70; gBGAffSettings = .; + . = 0x00000F88; gBgControls = .; + . = 0x00000FBC; gUnk_03000FBC = .; + . = 0x00000FD0; gFadeControl = .; + . = 0x00000FF0; gInput = .; + . = 0x00001000; gMain = .; + . = 0x00001010; gOamCmd = .; + . = 0x00001020; gUnk_03001020 = .; + . = 0x000010A0; gScreenTransition = .; + . = 0x000010AC; gUnk_030010AC = .; + . = 0x000010EC; gUnk_030010EC = .; + . = 0x0000110C; gUnk_0300110C = .; + . = 0x00001150; gRand = .; + . = 0x00001160; gPlayerEntity = .; + . = 0x00001198; gUnk_03001198 = .; + . = 0x000011E8; gUnk_030011E8 = .; + . = 0x000015A0; gUnk_030015A0 = .; + . = 0x00003BE0; gUnk_03003BE0 = .; + . = 0x00003C70; gUnk_03003C70 = .; + . = 0x00003D68; gUnk_03003D68 = .; + . = 0x00003D70; gEntityLists = .; + . = 0x00003D80; gUnk_03003D80 = .; + . = 0x00003D90; gUnk_03003D90 = .; + . = 0x00003DA0; gUnk_03003DA0 = .; + . = 0x00003DA8; gUnk_03003DA8 = .; + . = 0x00003DB0; gUnk_03003DB0 = .; + . = 0x00003DB8; gHitboxCount = .; + . = 0x00003DBC; gEntCount = .; + . = 0x00003DC0; gUnk_03003DC0 = .; + . = 0x00003DD0; gUnk_03003DD0 = .; + . = 0x00003DE0; gUnk_03003DE0 = .; + . = 0x00003DE4; gUnk_03003DE4 = .; + . = 0x00003DF0; gUnk_03003DF0 = .; + . = 0x00003DF8; gUnk_03003DF8 = .; + . = 0x00003F80; gPlayerState = .; + . = 0x00003FC0; gUnk_03003FC0 = .; + . = 0x00004010; gUnk_03004010 = .; + . = 0x00004020; gUnk_03004020 = .; + . = 0x00004030; gUnk_03004030 = .; + . = 0x00004040; gUnk_03004040 = .; + . = 0x0000404C; SoundMainRAM_Buffer = .; + . = 0x0000404D; gUnk_0300404D = .; + . = 0x000043D0; gSoundInfo = .; + . = 0x00004D50; gMPlayJumpTable = .; + . = 0x00004D54; gUnk_03004D54 = .; + . = 0x00004DD8; gUnk_03004DD8 = .; + . = 0x00004DDC; gUnk_03004DDC = .; + . = 0x00004DE0; gCgbChans = .; + . = 0x00004EE0; gMPlayInfos = .; + . = 0x000055E0; gMPlayMemAccArea = .; + . = 0x000055F0; gMPlayInfos2 = .; + . = 0x000056F0; gUnk_030056F0 = .; + . = 0x000056F1; gUnk_030056F1 = .; + . = 0x00005740; gUnk_03005740 = .; + . = 0x0000574C; gUnk_0300574C = .; + . = 0x00005760; gUnk_03005760 = .; + . = 0x00005770; gUnk_03005770 = .; + . = 0x00005778; gUnk_03005778 = .; + . = 0x00005780; gUnk_03005780 = .; + . = 0x0000579C; gUnk_0300579C = .; + . = 0x000057A8; gUnk_030057A8 = .; + . = 0x000057BC; gUnk_030057BC = .; + . = 0x000057CC; gUnk_030057CC = .; + . = 0x000057D4; gUnk_030057D4 = .; + . = 0x00005800; gUnk_03005800 = .; + . = 0x0000581C; gUnk_0300581C = .; + . = 0x00005828; gUnk_03005828 = .; + . = 0x0000583C; gUnk_0300583C = .; + . = 0x0000584C; gUnk_0300584C = .; + . = 0x00005854; gUnk_03005854 = .; + . = 0x00005864; gUnk_03005864 = .; + . = 0x00005880; gUnk_03005880 = .; + . = 0x0000588C; gUnk_0300588C = .; + . = 0x000058A0; gUnk_030058A0 = .; + . = 0x000058B0; gUnk_030058B0 = .; + . = 0x000058B8; gUnk_030058B8 = .; + . = 0x000058C8; gUnk_030058C8 = .; + . = 0x000058DC; gUnk_030058DC = .; + . = 0x000058F8; gUnk_030058F8 = .; + . = 0x00005918; gUnk_03005918 = .; + . = 0x000059F0; gDoCollision = .; + . = 0x00005CA4; gUnk_03005CA4 = .; + . = 0x00005CD0; gUnk_03005CD0 = .; + . = 0x00005CFC; gUnk_03005CFC = .; + . = 0x00005D18; gUnk_03005D18 = .; + . = 0x00005D24; gUnk_03005D24 = .; + . = 0x00005D58; gUnk_03005D58 = .; + . = 0x00005D5C; gUnk_03005D5C = .; + . = 0x00005D90; IntrMain = .; + . = 0x00005E60; gUnk_03005E60 = .; + . = 0x00005E98; gUnk_03005E98 = .; + . = 0x00005F24; _EntUpdate = .; + . = 0x00005F40; gUnk_03005F40 = .; + . = 0x00005FBC; gUnk_03005FBC = .; + . = 0x00005FF0; gUnk_03005FF0 = .; + . = 0x000060F0; gUnk_030060F0 = .; + . = 0x00006164; gUnk_03006164 = .; + . = 0x0000659C; gUnk_0300659C = .; + . = 0x000065AC; gUnk_03006580 = .; + . = 0x000065C8; gUnk_030065C8 = .; /* TODO EU for gUnk_0300659C? */ + . = 0x000067E4; gUnk_030067E4 = .; + . = 0x000069AC; gUnk_030069AC = .;/* TODO EU for gUnk_030067E4*/ + . = 0x00006A94; gUnk_030068CC = .; + . = 0x00006B14; gUnk_0300694C = .; + . = 0x00006B24; gUnk_0300695C = .; + . = 0x00007F00; gUnk_03007F00 = .; + . = 0x00007FA0; gUnk_03007FA0 = .; + . = 0x00007FFA; gUnk_03007FFA = .; + . = 0x00008000; + } >iwram + + rom : ALIGN(2) { + + /* handwritten assembly */ + asm/crt0.o(.text); + asm/code_08000108.o(.text); + data/data_08000360.o(.rodata); + asm/code_08000E44.o(.text); + asm/libgcc.o(.text); + asm/code_08000F10.o(.text); + data/data_08000F54.o(.rodata); + asm/code_080011C4.o(.text); + data/data_080029B4.o(.rodata); + asm/code_08003FC4.o(.text); + asm/code_080043E8.o(.text); + data/data_08007DF4.o(.rodata); + asm/code_0800857C.o(.text); + /* scripts */ + data/scripts.o(.text); + asm/code_08016984.o(.text); + asm/sub_08016AE4.o(.text); + + + /* C source compiled with interworking */ + asm/code_08016B30.o(.text); + asm/updateBackgroundRegisters.o(.text); + src/arm_proxy.o(.text); + asm/code_08016DF8.o(.text); + /* C source compiled without interworking */ + asm/code_08018500.o(.text); + src/code_08018C58.o(.text); + src/playerItem/playerItem11.o(.text); + asm/playerItem11.o(.text); + src/playerItem/playerItemBow.o(.text); + asm/playerItem/playerItemBow.o(.text); + asm/playerItem/playerItemSwordBeam.o(.text); + asm/code_0801967C.o(.text); + asm/playerItem/playerItemBomb.o(.text); + asm/playerItem/playerItem3.o(.text); + asm/playerItem/playerItemC.o(.text); + asm/playerItem/playerItemSwordSpin.o(.text); + asm/playerItemCellOverwriteSet.o(.text); + asm/code_0801C1D4.o(.text); + asm/drawUI.o(.text); + asm/code_0801C370.o(.text); + asm/drawRupees.o(.text); + asm/code_0801C5E0.o(.text); + asm/drawHealth.o(.text); + asm/sub_0801C824.o(.text); + asm/code_0801C85C.o(.text); + src/ezloNag.o(.text); + asm/code_0801CEC0.o(.text); + src/utils.o(.text); + asm/code_0801D79C.o(.text); + /* enemies */ + src/enemy/octorok.o(.text); + src/enemy/chuchu.o(.text); + src/enemy/leever.o(.text); + src/enemy/peahat.o(.text); + src/enemy/rollobite.o(.text); + src/enemy/darkNut.o(.text); + src/enemy/hangingSeed.o(.text); + src/enemy/beetle.o(.text); + src/enemy/keese.o(.text); + src/enemy/doorMimic.o(.text); + src/enemy/rockChuchu.o(.text); + src/enemy/spinyChuchu.o(.text); + src/enemy/cuccoChickAggr.o(.text); + src/enemy/moldorm.o(.text); + src/enemy/enemyE.o(.text); + src/enemy/moldworm.o(.text); + src/enemy/sluggula.o(.text); + src/enemy/pesto.o(.text); + src/enemy/puffstool.o(.text); + src/enemy/chuchuBoss.o(.text); + asm/chuchuBoss.o(.text); + src/enemy/likeLike.o(.text); + src/enemy/spearMoblin.o(.text); + src/enemy/businessScrub.o(.text); + src/enemy/rupeeLike.o(.text); + src/enemy/madderpillar.o(.text); + src/enemy/waterDrop.o(.text); + src/enemy/wallMaster.o(.text); + src/enemy/bombPeahat.o(.text); + src/enemy/spark.o(.text); + src/enemy/chaser.o(.text); + src/enemy/spikedBeetle.o(.text); + src/enemy/sensorBladeTrap.o(.text); + src/enemy/helmasaur.o(.text); + src/enemy/fallingBoulder.o(.text); + src/enemy/bobomb.o(.text); + src/enemy/wallMaster2.o(.text); + asm/gleerok.o(.text); + asm/vaatiEyesMacro.o(.text); + src/enemy/tektite.o(.text); + asm/wizzrobeWind.o(.text); + asm/wizzrobeFire.o(.text); + asm/wizzrobeIce.o(.text); + src/code_080300AC.o(.text); /* ??? */ + asm/code_080300AC.o(.text); /* ??? */ + asm/armos.o(.text); + asm/eyegore.o(.text); + src/enemy/rope.o(.text); + src/enemy/smallPesto.o(.text); + src/enemy/acroBandits.o(.text); + src/enemy/bladeTrap.o(.text); + src/enemy/keaton.o(.text); + asm/crow.o(.text); + asm/mulldozer.o(.text); + asm/bombarossa.o(.text); + src/enemy/wisp.o(.text); + asm/spinyBeetle.o(.text); + src/enemy/mazaalHead.o(.text); + src/enemy/mazaalMacro.o(.text); + src/enemy/mazaalHand.o(.text); + asm/octorokBoss.o(.text); + asm/flyingPot.o(.text); + src/enemy/gibdo.o(.text); + asm/octorokGolden.o(.text); + src/enemy/tektiteGolden.o(.text); + src/enemy/ropeGolden.o(.text); + asm/cloudPiranha.o(.text); + asm/scissorsBeetle.o(.text); + asm/cuccoAggr.o(.text); + asm/stalfos.o(.text); + asm/flyingSkull.o(.text); + src/enemy/mazaalBracelet.o(.text); + asm/takkuri.o(.text); + src/enemy/bowMoblin.o(.text); + asm/bowMoblin.o(.text); + src/enemy/lakitu.o(.text); + src/enemy/lakituCloud.o(.text); + asm/enemy49.o(.text); + asm/vaatiRebornEnemy.o(.text); + asm/vaatiProjectile.o(.text); + asm/ballChainSoldier.o(.text); + src/enemy/enemy4D.o(.text); + asm/enemy4D.o(.text); + asm/ghini.o(.text); + asm/vaatiTransfigured.o(.text); + asm/enemy50.o(.text); + asm/vaatiWrath.o(.text); + asm/vaatiArm.o(.text); + asm/dust.o(.text); + src/enemy/vaatiBall.o(.text); + src/enemy/slime.o(.text); + asm/sub_080451CC.o(.text); + src/enemy/miniSlime.o(.text); + src/enemy/fireballGuy.o(.text); + src/enemy/miniFireballGuy.o(.text); + asm/enemy5A.o(.text); + asm/businessScrubPrologue.o(.text); + asm/gyorgFemale.o(.text); + src/enemy/gyorgMale.o(.text); + asm/curtain.o(.text); + asm/enemy5F.o(.text); + asm/gyorgChild.o(.text); + asm/gyorgFemaleEye.o(.text); + asm/enemy62.o(.text); + asm/gyorgFemaleMouth.o(.text); + asm/enemy64.o(.text); + src/enemy/treeItem.o(.text); + asm/enemy66.o(.text); + /* END enemies */ + src/code_08049CD4.o(.text); + asm/code_08049D30.o(.text); + asm/sub_0804AA30.o(.text); + src/createEnemy.o(.text); + src/code_0804AA84.o(.text); + asm/code_0804AA84.o(.text); + src/loadRoomEntityList.o(.text); + asm/loadRoomEntity.o(.text); + asm/code_0804AEB0.o(.text); + src/loadRoom.o(.text); + asm/code_0804B058.o(.text); + src/room.o(.text); + asm/code_0804B9F8.o(.text); + src/sub_08050008.o(.text); + src/fade.o(.text); + asm/code_08050038.o(.text); + src/fileScreen.o(.text); + asm/fileScreen.o(.text); + src/game.o(.text); + asm/code_080526F8.o(.text); + asm/modBombs.o(.text); + asm/modArrows.o(.text); + src/code_0805436C.o(.text); + asm/code_0805436C.o(.text); + asm/playerItem/playerItemLantern.o(.text); + asm/code_08054C04.o(.text); + src/sub_08055E08.o(.text); + src/main.o(.text); + src/textbox.o(.text); + asm/code_08056418.o(.text); + src/manager/manager1.o(.text); + asm/manager1.o(.text); + src/manager/manager2.o(.text); + asm/manager2.o(.text); + src/manager/manager3.o(.text); + src/manager/manager4.o(.text); + src/manager/manager5.o(.text); + src/manager/manager6.o(.text); + src/manager/manager7.o(.text); + src/manager/manager8.o(.text); + src/manager/manager9.o(.text); + src/manager/managerA.o(.text); + src/manager/managerB.o(.text); + src/manager/managerC.o(.text); + asm/managerD.o(.text); + src/manager/managerE.o(.text); + asm/managerF.o(.text); + asm/manager10.o(.text); + asm/manager11.o(.text); + asm/manager12.o(.text); + asm/manager13.o(.text); + asm/manager14.o(.text); + src/manager/manager15.o(.text); + asm/manager16.o(.text); + asm/manager17.o(.text); + asm/manager18.o(.text); + asm/manager19.o(.text); + src/manager/manager1A.o(.text); + asm/manager1B.o(.text); + asm/manager1C.o(.text); + asm/manager1D.o(.text); + src/manager/manager1E.o(.text); + asm/manager1F.o(.text); + src/manager/manager20.o(.text); + asm/manager21.o(.text); + asm/manager22.o(.text); + asm/manager23.o(.text); + asm/manager24.o(.text); + asm/manager25.o(.text); + src/manager/manager26.o(.text); + src/manager/manager27.o(.text); + src/manager/manager28.o(.text); + asm/manager29.o(.text); + asm/manager2A.o(.text); + asm/manager2B.o(.text); + asm/manager2C.o(.text); + asm/manager2D.o(.text); + src/manager/manager2E.o(.text); + asm/manager2E.o(.text); + asm/manager2F.o(.text); + src/manager/manager30.o(.text); + asm/manager31.o(.text); + asm/manager32.o(.text); + asm/manager33.o(.text); + asm/manager34.o(.text); + asm/manager35.o(.text); + asm/manager36.o(.text); + asm/manager37.o(.text); + asm/manager38.o(.text); + src/manager/manager39.o(.text); + asm/sub_0805E248.o(.text); + src/sub_0805E374.o(.text); + src/sub_0805E3A0.o(.text); + asm/code_0805E3B0.o(.text); + asm/getEmptyEntity.o(.text); + src/entity.o(.text); + src/code_0805EC04.o(.text); + asm/code_0805EC04.o(.text); + src/code_0805F9A0.o(.text); + src/debugScreen.o(.text); + src/playerItem/playerItem14.o(.text); + /* npcs */ + src/npc/gentari.o(.text); + src/npc/festari.o(.text); + src/npc/forestMinish.o(.text); + src/npc/postman.o(.text); + src/npc/npc5.o(.text); + src/npc/townsperson.o(.text); + src/npc/kid.o(.text); + src/npc/npc9.o(.text); + src/npc/stamp.o(.text); + src/npc/marcy.o(.text); + src/npc/wheaton.o(.text); + src/npc/pita.o(.text); + src/npc/minishEzlo.o(.text); + src/npc/mailbox.o(.text); + src/npc/beedle.o(.text); + src/npc/brocco.o(.text); + src/npc/sittingPerson.o(.text); + src/npc/pina.o(.text); + src/npc/guard.o(.text); + src/npc/guardWithSpear.o(.text); + src/npc/castleMaid.o(.text); + src/npc/din.o(.text); + src/npc/nayru.o(.text); + src/npc/farore.o(.text); + src/npc/sturgeon.o(.text); + src/npc/tingleSiblings.o(.text); + src/npc/stockwell.o(.text); + src/npc/talon.o(.text); + src/npc/malon.o(.text); + src/npc/epona.o(.text); + src/npc/milkCart.o(.text); + src/npc/ghostBrothers.o(.text); + src/npc/smith.o(.text); + src/npc/npc23.o(.text); + src/npc/kingDaltus.o(.text); + src/npc/ministerPotho.o(.text); + src/npc/npc26.o(.text); + asm/vaati.o(.text); + src/npc/zelda.o(.text); + src/npc/mutoh.o(.text); + src/npc/carpenter.o(.text); + src/npc/castorWildsStatue.o(.text); + src/npc/cat.o(.text); + src/npc/mountainMinish.o(.text); + src/npc/zeldaFollower.o(.text); + src/npc/melari.o(.text); + src/npc/bladeBrothers.o(.text); + src/npc/cow.o(.text); + src/npc/goron.o(.text); + src/npc/goronMerchant.o(.text); + src/npc/gorman.o(.text); + src/npc/dog.o(.text); + src/npc/syrup.o(.text); + src/npc/rem.o(.text); + src/npc/rem.o(.text); + src/npc/townMinish.o(.text); + src/npc/librari.o(.text); + src/npc/percy.o(.text); + asm/vaatiReborn.o(.text); + src/npc/moblinLady.o(.text); + src/npc/librarians.o(.text); + src/npc/farmers.o(.text); + src/npc/carlov.o(.text); + src/npc/dampe.o(.text); + src/npc/drLeft.o(.text); + src/npc/kingGustaf.o(.text); + src/npc/gina.o(.text); + src/npc/simon.o(.text); + src/npc/anju.o(.text); + src/npc/mama.o(.text); + src/npc/emma.o(.text); + src/npc/teachers.o(.text); + src/npc/windTribespeople.o(.text); + src/npc/gregal.o(.text); + src/npc/mayorHagen.o(.text); + src/npc/bigGoron.o(.text); + src/npc/ezloCap.o(.text); + src/npc/npc4E.o(.text); + src/npc/npc4F.o(.text); + src/npc/clothesRack.o(.text); + src/npc/picolyteBottle.o(.text); + src/npc/smallTownMinish.o(.text); + src/npc/hurdyGurdyMan.o(.text); + src/npc/cucco.o(.text); + src/npc/cuccoChick.o(.text); + src/npc/fusionMenuNPC.o(.text); + src/npc/phonograph.o(.text); + src/npc/npc58.o(.text); + /* END npcs */ + asm/code_0806EC20.o(.text); + src/createNPC.o(.text); + asm/code_0806ED78.o(.text); + src/coord.o(.text); + asm/code_0806FA6C.o(.text); + asm/playerItem/playerItem12.o(.text); + asm/playerItem/playerItemPacciCane.o(.text); + asm/code_0807059C.o(.text); + src/player.o(.text); + asm/stairsInteract.o(.text); + asm/code_080732D0.o(.text); + asm/item/itemDebug.o(.text); + asm/item/itemSword.o(.text); + asm/item/itemLantern.o(.text); + asm/item/itemBoomerang.o(.text); + asm/item/itemBow.o(.text); + asm/item/itemBomb.o(.text); + asm/item/itemTryPickupObject.o(.text); + asm/item/itemRocsCape.o(.text); + asm/item/itemPegasusBoots.o(.text); + asm/code_080732D0.o(.text); + asm/ocarina.o(.text); + src/item/itemPacciCane.o(.text); + src/item/itemShield.o(.text); + src/item/itemGustJar.o(.text); + asm/item/itemGustJar.o(.text); + asm/item/itemMoleMitts.o(.text); + asm/item/itemJarEmpty.o(.text); + asm/code_08077698.o(.text); + asm/respawnPlayer.o(.text); + src/code_08077B98.o(.text); + src/code_08077DF4.o(.text); + asm/code_08077B98.o(.text); + src/code_08078778.o(.text); + asm/code_08078778.o(.text); + src/sub_0807B820.o(.text); + asm/code_0807B9B8.o(.text); + src/sub_0807C998.o(.text); + asm/sub_0807CA18.o(.text); + asm/getInventoryValue.o(.text); + asm/code_0807CAA0.o(.text); + src/flags.o(.text); + src/save.o(.text); + src/code_0807CC3C.o(.text); + src/script.o(.text); + asm/code_0807F0D8.o(.text); + src/code_0808091C.o(.text); + asm/code_0808091C.o(.text); + /* objects */ + src/object/itemOnGround.o(.text); + asm/deathFx.o(.text); + asm/itemForSale.o(.text); + src/object/button.o(.text); + asm/object4.o(.text); + src/object/pot.o(.text); + asm/object6.o(.text); + asm/blockPushed.o(.text); + src/object/lockedDoor.o(.text); + asm/object9.o(.text); + src/object/objectA.o(.text); + asm/objectB.o(.text); + src/object/chestSpawner.o(.text); + asm/chestSpawner.o(.text); + asm/objectD.o(.text); + asm/objectE.o(.text); + asm/specialFx.o(.text); + asm/object10.o(.text); + asm/object11.o(.text); + asm/object12.o(.text); + src/object/railtrack.o(.text); + asm/lilypadLarge.o(.text); + asm/object15.o(.text); + asm/floatingPlatform.o(.text); + asm/object17.o(.text); + asm/evilSpirit.o(.text); + src/object/houseDoorExterior.o(.text); + src/object/object1A.o(.text); + src/object/greatFairy.o(.text); + src/object/object1C.o(.text); + src/object/object1D.o(.text); + asm/object1E.o(.text); + asm/object1F.o(.text); + asm/object20.o(.text); + asm/object21.o(.text); + asm/figurineDevice.o(.text); + asm/eyeSwitch.o(.text); + asm/object24.o(.text); + asm/bigBarrel.o(.text); + asm/object26.o(.text); + asm/pushableStatue.o(.text); + asm/object28.o(.text); + asm/object29.o(.text); + src/object/object2A.o(.text); + asm/object2A.o(.text); + asm/object2B.o(.text); + asm/beanstalk.o(.text); + src/object/smoke.o(.text); + asm/pushableRock.o(.text); + asm/hittableLever.o(.text); + asm/object30.o(.text); + asm/object31.o(.text); + asm/pullableMushroom.o(.text); + asm/bollard.o(.text); + asm/warpPoint.o(.text); + asm/object35.o(.text); + asm/object36.o(.text); + asm/object37.o(.text); + asm/jarPortal.o(.text); + asm/bossDoor.o(.text); + asm/object3A.o(.text); + asm/macroMushroomStalks.o(.text); + asm/object75.o(.text); /* 75 and 76 are mislocated in base game */ + asm/object76.o(.text); + asm/code_0808C964.o(.text); + asm/macroPlayer.o(.text); + asm/object3D.o(.text); + asm/object3E.o(.text); + src/object/giantLeaf.o(.text); + asm/fairy.o(.text); + asm/ladderUp.o(.text); + asm/object42.o(.text); + asm/object43.o(.text); + asm/object44.o(.text); + asm/object45.o(.text); + asm/giantBookLadder.o(.text); + src/object/heartContainer.o(.text); + src/object/fileScreenObjects.o(.text); + src/object/object49.o(.text); + src/object/backgroundCloud.o(.text); + asm/object4B.o(.text); + asm/pushableFurniture.o(.text); + asm/furniture.o(.text); + src/object/minishSizedEntrance.o(.text); + src/object/archway.o(.text); + asm/giantRock.o(.text); + asm/object51.o(.text); + asm/object52.o(.text); + asm/object53.o(.text); + asm/pullableLever.o(.text); + src/object/minecart.o(.text); + asm/minecart.o(.text); + src/object/thoughtBubble.o(.text); + src/object/hiddenLadderDown.o(.text); + asm/gentariCurtains.o(.text); + asm/lavaPlatform.o(.text); + asm/object5A.o(.text); + asm/object5B.o(.text); + src/object/mask.o(.text); + asm/houseDoorInterior.o(.text); + asm/whirlwind.o(.text); + asm/objectBlockingStairs.o(.text); + src/object/swordsmanNewsletter.o(.text); + asm/object61.o(.text); + asm/giantTwig.o(.text); + asm/object63.o(.text); + asm/object64.o(.text); + asm/ladderHoleInBookshelf.o(.text); + asm/object66.o(.text); + asm/object67.o(.text); + asm/object68.o(.text); + asm/object69.o(.text); + asm/object6A.o(.text); + asm/crenalBeanSprout.o(.text); + asm/minecartDoor.o(.text); + asm/objectOnPillar.o(.text); + src/object/mineralWaterSource.o(.text); + src/object/minishSizedArchway.o(.text); + asm/object70.o(.text); + asm/pushableGrave.o(.text); + asm/object72.o(.text); + src/object/lilypadSmall.o(.text); + asm/object74.o(.text); + src/object/bell.o(.text); + asm/macroDecorations.o(.text); + asm/object79.o(.text); + asm/steam.o(.text); + asm/pushableLever.o(.text); + asm/macroShoes.o(.text); + asm/objectOnSpinyBeetle.o(.text); + src/object/object7E.o(.text); + asm/picoBloom.o(.text); + asm/object80.o(.text); + asm/object81.o(.text); + src/object/bigVortex.o(.text); + asm/bigPushableLever.o(.text); + asm/smallIceBlock.o(.text); + asm/bigIceBlock.o(.text); + src/object/object86.o(.text); + asm/object87.o(.text); + asm/macroBook.o(.text); + asm/object89.o(.text); + asm/object8A.o(.text); + asm/object8B.o(.text); + asm/book.o(.text); + asm/fireplace.o(.text); + asm/object8E.o(.text); + asm/frozenWaterElement.o(.text); + asm/object90.o(.text); + asm/object91.o(.text); + src/object/bakerOven.o(.text); + asm/object93.o(.text); + src/object/windTribeFlag.o(.text); + src/object/bird.o(.text); + asm/bird.o(.text); + asm/object96.o(.text); + asm/object97.o(.text); + asm/object98.o(.text); + asm/object99.o(.text); + asm/macroAcorn.o(.text); + asm/object9B.o(.text); + src/object/treeHidingPortal.o(.text); + asm/treeHidingPortal.o(.text); + src/object/lightableSwitch.o(.text); + src/object/object9E.o(.text); + src/object/fan.o(.text); + asm/fan.o(.text); + asm/objectA0.o(.text); + src/object/palaceArchway.o(.text); + src/object/objectA2.o(.text); + src/object/cloud.o(.text); + src/object/minishLight.o(.text); + asm/objectA5.o(.text); + asm/objectA6.o(.text); + asm/objectA7.o(.text); + src/object/objectA8.o(.text); + asm/objectA8.o(.text); + asm/objectA9.o(.text); + asm/waterfallOpening.o(.text); + asm/objectAB.o(.text); + asm/fourElements.o(.text); + asm/objectAD.o(.text); + src/object/floatingBlock.o(.text); + src/object/objectAF.o(.text); + src/object/metalDoor.o(.text); + src/object/jailBars.o(.text); + src/object/objectB2.o(.text); + asm/objectB3.o(.text); + asm/objectB4.o(.text); + asm/objectB5.o(.text); + asm/objectB6.o(.text); + src/object/well.o(.text); + asm/windTribeTeleporter.o(.text); + asm/objectB9.o(.text); + asm/objectBA.o(.text); + src/object/windcrest.o(.text); + asm/litArea.o(.text); + asm/objectBD.o(.text); + src/object/pinwheel.o(.text); + asm/objectBF.o(.text); + asm/enemyItem.o(.text); + asm/objectC1.o(.text); + /* END objects */ + asm/sub_080A276C.o(.text); + asm/sub_080A2838.o(.text); + asm/sub_080A285C.o(.text); + src/createObject.o(.text); + asm/code_080A29BC.o(.text); + asm/playerItem/playerItemShield.o(.text); + asm/playerItem/playerItem15.o(.text); + src/audio.o(.text); + asm/code_080A3480.o(.text); + src/sub_080A3B84.o(.text); + asm/code_080A3BD0.o(.text); + src/sub_080A554C.o(.text); + asm/code_080A5574.o(.text); + asm/playerItem/playerItemSword.o(.text); + asm/code_080A7C00.o(.text); + src/projectile/projectile0.o(.text); + src/projectile/projectile1.o(.text); + src/projectile/projectile2.o(.text); + src/projectile/projectile3.o(.text); + src/projectile/projectile4.o(.text); + src/projectile/projectile5.o(.text); + src/projectile/projectile6.o(.text); + src/projectile/projectile7.o(.text); + src/projectile/projectile8.o(.text); + src/projectile/projectile9.o(.text); + src/projectile/projectileA.o(.text); + src/projectile/projectileB.o(.text); + src/projectile/projectileC.o(.text); + src/projectile/projectileD.o(.text); + src/projectile/projectileE.o(.text); + src/projectile/projectileF.o(.text); + src/projectile/projectile10.o(.text); + src/projectile/projectile11.o(.text); + src/projectile/projectile12.o(.text); + src/projectile/projectile13.o(.text); + src/projectile/projectile14.o(.text); + src/projectile/projectile15.o(.text); + src/projectile/projectile16.o(.text); + src/projectile/projectile17.o(.text); + src/projectile/projectile18.o(.text); + src/projectile/projectile19.o(.text); + src/projectile/projectile1A.o(.text); + src/projectile/projectile1B.o(.text); + src/projectile/projectile1C.o(.text); + src/projectile/projectile1D.o(.text); + src/projectile/projectile1E.o(.text); + src/projectile/projectile1F.o(.text); + src/projectile/projectile20.o(.text); + src/projectile/projectile21.o(.text); + src/projectile/projectile22.o(.text); + src/projectile/projectile23.o(.text); + src/projectile/projectile24.o(.text); + asm/playerItem/playerItem10.o(.text); + asm/playerItem/playerItem13.o(.text); + src/intro.o(.text); + asm/sub_080AD8F0.o(.text); + asm/code_080AD90C.o(.text); + asm/playerItem/playerItemGustJar.o(.text); + asm/code_080ADD30.o(.text); + /* library functions */ + asm/m4a_asm.o(.text); + src/gba/m4a.o(.text); + asm/libagbsyscall.o(.text); + src/eeprom.o(.text); + *libc.a:memcpy.o(.text); + + /* handwritten assembly in arm mode */ + asm/intr.o(.text); + /* data */ + data/data_080B2A70.o(.rodata); + src/playerItem.o(.rodata); + src/object.o(.rodata); + src/manager.o(.rodata); + src/npc.o(.rodata); + data/data_080B3740.o(.rodata); + data/const/playerItem/playerItem11.o(.rodata); + data/const/playerItem/playerItemBow.o(.rodata); + data/data_080B3E70.o(.rodata); + data/const/playerItem/playerItemSwordBeam.o(.rodata); + data/data_080B4410.o(.rodata); + data/const/playerItem/playerItemBomb.o(.rodata); + data/const/playerItem/playerItem3.o(.rodata); + data/const/playerItem/playerItemC.o(.rodata); + data/const/playerItem/playerItemSwordSpin.o(.rodata); + data/data_080B7910.o(.rodata); + data/const/playerItem/playerItemCellOverwriteSet.o(.rodata); + data/data_080B7B74.o(.rodata); + src/coord.o(.rodata); + data/data_080C93E0.o(.rodata); + src/enemy/octorok.o(.rodata); + data/animations/enemy/octorok.o(.rodata); + src/enemy/chuchu.o(.rodata); + data/animations/enemy/chuchu.o(.rodata); + src/enemy/leever.o(.rodata); + data/animations/enemy/leever.o(.rodata); + src/enemy/peahat.o(.rodata); + data/animations/enemy/peahat.o(.rodata); + src/enemy/rollobite.o(.rodata); + data/animations/enemy/rollobite.o(.rodata); + src/enemy/darkNut.o(.rodata); + data/animations/enemy/darkNut.o(.rodata); + src/enemy/hangingSeed.o(.rodata); + src/enemy/beetle.o(.rodata); + data/animations/enemy/beetle.o(.rodata); + src/enemy/keese.o(.rodata); + data/animations/enemy/keese.o(.rodata); + src/enemy/doorMimic.o(.rodata); + data/animations/enemy/doorMimic.o(.rodata); + src/enemy/rockChuchu.o(.rodata); + data/animations/enemy/rockChuchu.o(.rodata); + src/enemy/spinyChuchu.o(.rodata); + data/animations/enemy/spinyChuchu.o(.rodata); + src/enemy/cuccoChickAggr.o(.rodata); + src/enemy/moldorm.o(.rodata); + src/enemy/enemyE.o(.rodata); + data/animations/enemy/enemyE.o(.rodata); + src/enemy/moldworm.o(.rodata); + data/animations/enemy/moldworm.o(.rodata); + src/enemy/sluggula.o(.rodata); + data/animations/enemy/sluggula.o(.rodata); + src/enemy/pesto.o(.rodata); + data/animations/enemy/pesto.o(.rodata); + src/enemy/puffstool.o(.rodata); + data/animations/enemy/puffstool.o(.rodata); + src/enemy/chuchuBoss.o(.rodata); + data/animations/enemy/chuchuBoss.o(.rodata); + src/enemy/likeLike.o(.rodata); + data/animations/enemy/likeLike.o(.rodata); + src/enemy/spearMoblin.o(.rodata); + data/animations/enemy/spearMoblin.o(.rodata); + src/enemy/businessScrub.o(.rodata); + data/animations/enemy/businessScrub.o(.rodata); + src/enemy/rupeeLike.o(.rodata); + data/animations/enemy/rupeeLike.o(.rodata); + src/enemy/madderpillar.o(.rodata); + data/animations/enemy/madderpillar.o(.rodata); + src/enemy/waterDrop.o(.rodata); + data/animations/enemy/waterDrop.o(.rodata); + src/enemy/wallMaster.o(.rodata); + data/animations/enemy/wallMaster.o(.rodata); + src/enemy/bombPeahat.o(.rodata); + data/animations/enemy/bombPeahat.o(.rodata); + src/enemy/spark.o(.rodata); + data/animations/enemy/spark.o(.rodata); + src/enemy/chaser.o(.rodata); + data/animations/enemy/chaser.o(.rodata); + src/enemy/spikedBeetle.o(.rodata); + data/animations/enemy/spikedBeetle.o(.rodata); + src/enemy/sensorBladeTrap.o(.rodata); + src/enemy/helmasaur.o(.rodata); + data/animations/enemy/helmasaur.o(.rodata); + src/enemy/fallingBoulder.o(.rodata); + data/animations/enemy/fallingBoulder.o(.rodata); + src/enemy/bobomb.o(.rodata); + data/animations/enemy/bobomb.o(.rodata); + src/enemy/wallMaster2.o(.rodata); + data/const/enemy/gleerok.o(.rodata); + data/animations/enemy/gleerok.o(.rodata); + data/const/enemy/vaatiEyesMacro.o(.rodata); + data/animations/enemy/vaatiEyesMacro.o(.rodata); + data/const/enemy/tektite.o(.rodata); + data/animations/enemy/tektite.o(.rodata); + data/const/enemy/wizzrobeWind.o(.rodata); + data/animations/enemy/wizzrobeWind.o(.rodata); + data/const/enemy/wizzrobeFire.o(.rodata); + data/animations/enemy/wizzrobeFire.o(.rodata); + data/const/enemy/wizzrobeIce.o(.rodata); + data/animations/enemy/wizzrobeIce.o(.rodata); + data/const/enemy/armos.o(.rodata); + data/animations/enemy/armos.o(.rodata); + data/const/enemy/eyegore.o(.rodata); + data/animations/enemy/eyegore.o(.rodata); + data/const/enemy/rope.o(.rodata); + data/animations/enemy/rope.o(.rodata); + data/const/enemy/smallPesto.o(.rodata); + data/const/enemy/acroBandits.o(.rodata); + data/animations/enemy/acroBandits.o(.rodata); + data/const/enemy/keaton.o(.rodata); + data/animations/enemy/keaton.o(.rodata); + data/const/enemy/crow.o(.rodata); + data/animations/enemy/crow.o(.rodata); + data/const/enemy/mulldozer.o(.rodata); + data/animations/enemy/mulldozer.o(.rodata); + data/const/enemy/bombarossa.o(.rodata); + data/animations/enemy/bombarossa.o(.rodata); + data/const/enemy/wisp.o(.rodata); + data/animations/enemy/wisp.o(.rodata); + data/const/enemy/spinyBeetle.o(.rodata); + data/animations/enemy/spinyBeetle.o(.rodata); + src/enemy/mazaalHead.o(.rodata); + data/animations/enemy/mazaalHead.o(.rodata); + src/enemy/mazaalMacro.o(.rodata); + data/animations/enemy/mazaalMacro.o(.rodata); + src/enemy/mazaalHand.o(.rodata); + data/animations/enemy/mazaalHand.o(.rodata); + data/const/enemy/octorokBoss.o(.rodata); + data/animations/enemy/octorokBoss.o(.rodata); + data/const/enemy/flyingPot.o(.rodata); + data/const/enemy/gibdo.o(.rodata); + data/animations/enemy/gibdo.o(.rodata); + data/const/enemy/octorokGolden.o(.rodata); + data/const/enemy/tektiteGolden.o(.rodata); + data/const/enemy/ropeGolden.o(.rodata); + data/const/enemy/cloudPiranha.o(.rodata); + data/animations/enemy/cloudPiranha.o(.rodata); + data/const/enemy/scissorsBeetle.o(.rodata); + data/animations/enemy/scissorsBeetle.o(.rodata); + data/const/enemy/cuccoAggr.o(.rodata); + data/animations/enemy/cuccoAggr.o(.rodata); + data/const/enemy/stalfos.o(.rodata); + data/animations/enemy/stalfos.o(.rodata); + data/const/enemy/flyingSkull.o(.rodata); + data/animations/enemy/flyingSkull.o(.rodata); + src/enemy/mazaalBracelet.o(.rodata); + data/animations/enemy/mazaalBracelet.o(.rodata); + data/const/enemy/takkuri.o(.rodata); + data/const/enemy/bowMoblin.o(.rodata); + data/animations/enemy/bowMoblin.o(.rodata); src/enemy/lakitu.o(.rodata); + data/animations/enemy/lakitu.o(.rodata); + src/enemy/lakituCloud.o(.rodata); + data/const/enemy/enemy49.o(.rodata); + data/const/enemy/vaatiRebornEnemy.o(.rodata); + data/animations/enemy/vaatiRebornEnemy.o(.rodata); + data/const/enemy/vaatiProjectile.o(.rodata); + data/animations/enemy/vaatiProjectile.o(.rodata); + data/const/enemy/ballChainSoldier.o(.rodata); + data/animations/enemy/ballChainSoldier.o(.rodata); + data/const/enemy/enemy4D.o(.rodata); + data/const/enemy/ghini.o(.rodata); + data/animations/enemy/ghini.o(.rodata); + data/const/enemy/vaatiTransfigured.o(.rodata); + data/animations/enemy/vaatiTransfigured.o(.rodata); + data/const/enemy/enemy50.o(.rodata); + data/const/enemy/vaatiWrath.o(.rodata); + data/animations/enemy/vaatiWrath.o(.rodata); + data/const/enemy/vaatiArm.o(.rodata); + data/animations/enemy/vaatiArm.o(.rodata); + data/const/enemy/dust.o(.rodata); + data/const/enemy/vaatiBall.o(.rodata); + data/animations/enemy/vaatiBall.o(.rodata); + data/const/enemy/slime.o(.rodata); + data/animations/enemy/slime.o(.rodata); + data/const/enemy/miniSlime.o(.rodata); + data/const/enemy/fireballGuy.o(.rodata); + data/animations/enemy/fireballGuy.o(.rodata); + data/const/enemy/miniFireballGuy.o(.rodata); + data/const/enemy/enemy5A.o(.rodata); + data/animations/enemy/enemy5A.o(.rodata); + data/const/enemy/businessScrubPrologue.o(.rodata); + data/const/enemy/gyorgFemale.o(.rodata); + src/enemy/gyorgMale.o(.rodata); + data/animations/enemy/gyorgMale.o(.rodata); + data/const/enemy/curtain.o(.rodata); + data/animations/enemy/curtain.o(.rodata); + data/const/enemy/enemy5F.o(.rodata); + data/animations/enemy/enemy5F.o(.rodata); + data/const/enemy/gyorgChild.o(.rodata); + data/animations/enemy/gyorgChild.o(.rodata); + data/const/enemy/gyorgFemaleEye.o(.rodata); + data/animations/enemy/gyorgFemaleEye.o(.rodata); + data/const/enemy/enemy62.o(.rodata); + data/animations/enemy/enemy62.o(.rodata); + data/const/enemy/gyorgFemaleMouth.o(.rodata); + data/animations/enemy/gyorgFemaleMouth.o(.rodata); + data/const/enemy/enemy64.o(.rodata); + data/const/enemy/treeItem.o(.rodata); + data/const/enemy/enemy66.o(.rodata); + data/const/code_08049D30.o(.rodata); + src/enemy.o(.rodata); + data/data_080D3D94.o(.rodata); + data/entity_headers.o(.rodata); + data/data_080D5360.o(.rodata); + src/fileScreen.o(.rodata); + data/data_080FC8A4.o(.rodata); + data/const/playerItem/playerItemLantern.o(.rodata); + data/data_080FEEB8.o(.rodata); + src/main.o(.rodata); + data/tileset_headers.o(.rodata); + data/metatile_headers.o(.rodata); + data/map_headers.o(.rodata); + src/textbox.o(.rodata); + data/data_08107BC8.o(.rodata); + data/const/manager/manager1.o(.rodata); + data/const/manager/manager3.o(.rodata); + data/const/manager/manager4.o(.rodata); + src/manager/manager5.o(.rodata); + src/manager/manager7.o(.rodata); + . = ALIGN(4); + src/manager/manager9.o(.rodata); + src/manager/managerA.o(.rodata); + src/manager/managerB.o(.rodata); + src/manager/managerC.o(.rodata); + data/const/manager/managerD.o(.rodata); + data/const/manager/managerF.o(.rodata); + data/const/manager/manager10.o(.rodata); + data/const/manager/manager12.o(.rodata); + data/const/manager/manager13.o(.rodata); + data/const/manager/manager14.o(.rodata); + data/const/manager/manager15.o(.rodata); + data/const/manager/manager17.o(.rodata); + data/const/manager/manager18.o(.rodata); + data/const/manager/manager1A.o(.rodata); + data/const/manager/manager1B.o(.rodata); + data/const/manager/manager1C.o(.rodata); + data/const/manager/manager1D.o(.rodata); + src/manager/manager1E.o(.rodata); + data/const/manager/manager1F.o(.rodata); + data/const/manager/manager22.o(.rodata); + data/const/manager/manager23.o(.rodata); + data/const/manager/manager24.o(.rodata); + src/manager/manager26.o(.rodata); + src/manager/manager27.o(.rodata); + src/manager/manager28.o(.rodata); + data/const/manager/manager2B.o(.rodata); + data/const/manager/manager2E.o(.rodata); + data/const/manager/manager31.o(.rodata); + data/const/manager/manager32.o(.rodata); + data/const/manager/manager34.o(.rodata); + data/const/manager/manager35.o(.rodata); + data/const/manager/manager36.o(.rodata); + data/const/manager/manager37.o(.rodata); + data/const/manager/manager38.o(.rodata); + data/const/manager/manager39.o(.rodata); + data/data_08108E6C.o(.rodata); + data/const/playerItem/playerItem14.o(.rodata); + data/animations/npc/gentari.o(.rodata); + data/const/npc/festari.o(.rodata); + data/animations/npc/festari.o(.rodata); + data/const/npc/forestMinish.o(.rodata); + data/animations/npc/forestMinish.o(.rodata); + data/const/npc/postman.o(.rodata); + data/animations/npc/postman.o(.rodata); + data/const/npc/npc5.o(.rodata); + data/animations/npc/npc5.o(.rodata); + data/const/npc/townsperson.o(.rodata); + data/animations/npc/townsperson.o(.rodata); + data/const/npc/kid.o(.rodata); + data/animations/npc/kid.o(.rodata); + data/const/npc/npc9.o(.rodata); + data/animations/npc/npc9.o(.rodata); + data/const/npc/stamp.o(.rodata); + data/animations/npc/stamp.o(.rodata); + data/const/npc/marcy.o(.rodata); + data/animations/npc/marcy.o(.rodata); + data/const/npc/wheaton.o(.rodata); + data/animations/npc/wheaton.o(.rodata); + data/const/npc/pita.o(.rodata); + data/animations/npc/pita.o(.rodata); + data/const/npc/minishEzlo.o(.rodata); + data/animations/npc/minishEzlo.o(.rodata); + data/const/npc/mailbox.o(.rodata); + data/animations/npc/mailbox.o(.rodata); + data/const/npc/beedle.o(.rodata); + data/animations/npc/beedle.o(.rodata); + data/const/npc/brocco.o(.rodata); + data/animations/npc/brocco.o(.rodata); + data/const/npc/sittingPerson.o(.rodata); + data/animations/npc/sittingPerson.o(.rodata); + data/const/npc/pina.o(.rodata); + data/animations/npc/pina.o(.rodata); + data/const/npc/guard.o(.rodata); + data/animations/npc/guard.o(.rodata); + data/const/npc/guardWithSpear.o(.rodata); + data/animations/npc/guardWithSpear.o(.rodata); + data/const/npc/maid.o(.rodata); + data/animations/npc/maid.o(.rodata); + data/animations/npc/din.o(.rodata); + data/animations/npc/nayru.o(.rodata); + data/animations/npc/farore.o(.rodata); + data/const/npc/sturgeon.o(.rodata); + data/animations/npc/sturgeon.o(.rodata); + data/const/npc/tingleSiblings.o(.rodata); + data/animations/npc/tingleSiblings.o(.rodata); + data/const/npc/stockwell.o(.rodata); + data/animations/npc/stockwell.o(.rodata); + data/const/npc/talon.o(.rodata); + data/animations/npc/talon.o(.rodata); + data/const/npc/malon.o(.rodata); + data/animations/npc/malon.o(.rodata); + data/const/npc/epona.o(.rodata); + data/animations/npc/epona.o(.rodata); + data/const/npc/milkCart.o(.rodata); + data/animations/npc/milkCart.o(.rodata); + data/const/npc/ghostBrothers.o(.rodata); + data/animations/npc/ghostBrothers.o(.rodata); + data/const/npc/smith.o(.rodata); + data/animations/npc/smith.o(.rodata); + data/const/npc/npc23.o(.rodata); + data/const/npc/kingDaltus.o(.rodata); + data/animations/npc/kingDaltus.o(.rodata); + data/const/npc/ministerPotho.o(.rodata); + data/animations/npc/ministerPotho.o(.rodata); + src/npc/npc26.o(.rodata); + data/animations/npc/npc26.o(.rodata); + data/const/npc/vaati.o(.rodata); + data/animations/npc/vaati.o(.rodata); + data/const/npc/zelda.o(.rodata); + data/const/npc/mutoh.o(.rodata); + data/animations/npc/mutoh.o(.rodata); + data/const/npc/carpenter.o(.rodata); + data/animations/npc/carpenter.o(.rodata); + data/const/npc/castorWildsStatue.o(.rodata); + data/animations/npc/castorWildsStatue.o(.rodata); + data/const/npc/cat.o(.rodata); + data/animations/npc/cat.o(.rodata); + data/const/npc/mountainMinish.o(.rodata); + data/animations/npc/mountainMinish.o(.rodata); + data/const/npc/melari.o(.rodata); + data/animations/npc/melari.o(.rodata); + data/const/npc/bladeBrothers.o(.rodata); + data/animations/npc/bladeBrothers.o(.rodata); + data/const/npc/cow.o(.rodata); + data/animations/npc/cow.o(.rodata); + data/const/npc/goron.o(.rodata); + data/animations/npc/goron.o(.rodata); + src/npc/goronMerchant.o(.rodata); + data/animations/npc/goronMerchant.o(.rodata); + data/const/npc/gorman.o(.rodata); + data/animations/npc/gorman.o(.rodata); + data/const/npc/dog.o(.rodata); + data/animations/npc/dog.o(.rodata); + data/const/npc/syrup.o(.rodata); + data/animations/npc/syrup.o(.rodata); + data/const/npc/rem.o(.rodata); + data/animations/npc/rem.o(.rodata); + data/const/npc/townMinish.o(.rodata); + data/animations/npc/townMinish.o(.rodata); + data/const/npc/librari.o(.rodata); + data/animations/npc/librari.o(.rodata); + data/const/npc/percy.o(.rodata); + data/animations/npc/percy.o(.rodata); + data/const/npc/vaatiReborn.o(.rodata); + data/animations/npc/vaatiReborn.o(.rodata); + data/const/npc/moblinLady.o(.rodata); + data/animations/npc/moblinLady.o(.rodata); + data/const/npc/librarians.o(.rodata); + data/animations/npc/librarians.o(.rodata); + data/const/npc/farmers.o(.rodata); + data/animations/npc/farmers.o(.rodata); + data/animations/npc/carlov.o(.rodata); + data/const/npc/dampe.o(.rodata); + data/animations/npc/dampe.o(.rodata); + data/const/npc/drLeft.o(.rodata); + data/animations/npc/drLeft.o(.rodata); + data/animations/npc/kingGustaf.o(.rodata); + data/animations/npc/gina.o(.rodata); + data/animations/npc/simon.o(.rodata); + data/animations/npc/anju.o(.rodata); + data/const/npc/mama.o(.rodata); + data/animations/npc/mama.o(.rodata); + data/animations/npc/emma.o(.rodata); + data/const/npc/teachers.o(.rodata); + data/animations/npc/teachers.o(.rodata); + data/const/npc/windTribespeople.o(.rodata); + data/animations/npc/windTribespeople.o(.rodata); + data/const/npc/gregal.o(.rodata); + data/animations/npc/gregal.o(.rodata); + data/const/npc/mayorHagen.o(.rodata); + data/animations/npc/mayorHagen.o(.rodata); + data/const/npc/bigGoron.o(.rodata); + src/npc/ezloCap.o(.rodata); + src/npc/npc4E.o(.rodata); + src/npc/npc4F.o(.rodata); + data/animations/npc/npc4F.o(.rodata); + data/const/npc/clothesRack.o(.rodata); + data/animations/npc/clothesRack.o(.rodata); + data/const/npc/picolyteBottle.o(.rodata); + data/const/npc/smallTownMinish.o(.rodata); + data/animations/npc/smallTownMinish.o(.rodata); + data/const/npc/hurdyGurdyMan.o(.rodata); + data/animations/npc/hurdyGurdyMan.o(.rodata); + data/const/npc/cucco.o(.rodata); + data/const/npc/cuccoChick.o(.rodata); + data/const/npc/phonograph.o(.rodata); + data/const/npc/npc58.o(.rodata); + data/data_081146D0.o(.rodata); + data/const/playerItem/playerItem12.o(.rodata); + data/const/playerItem/playerItemPacciCane.o(.rodata); + src/player.o(.rodata); + data/data_0811B9E0.o(.rodata); + src/item.o(.rodata); + data/const/item/itemSword.o(.rodata); + data/const/item/itemLantern.o(.rodata); + data/const/item/itemBoomerang.o(.rodata); + data/const/item/itemBow.o(.rodata); + data/const/item/itemBomb.o(.rodata); + data/const/item/itemTryPickupObject.o(.rodata); + data/const/item/itemPegasusBoots.o(.rodata); + data/const/item/itemOcarina.o(.rodata); + data/const/item/itemPacciCane.o(.rodata); + data/const/item/itemShield.o(.rodata); + data/const/item/itemGustJar.o(.rodata); + data/const/item/itemMoleMitts.o(.rodata); + data/const/item/itemJarEmpty.o(.rodata); + data/data_0811BE38.o(.rodata); + data/room_headers.o(.rodata); + src/save.o(.rodata); + data/data_0811E454.o(.rodata); + src/script.o(.rodata); + data/data_0811E750.o(.rodata); + data/const/object/itemOnGround.o(.rodata); + data/const/object/deathFx.o(.rodata); + data/animations/object/deathFx.o(.rodata); + data/const/object/itemForSale.o(.rodata); + data/const/object/button.o(.rodata); + data/const/object/object4.o(.rodata); + data/animations/object/object4.o(.rodata); + data/const/object/pot.o(.rodata); + data/animations/object/pot.o(.rodata); + data/const/object/object6.o(.rodata); + data/animations/object/object6.o(.rodata); + data/const/object/blockPushed.o(.rodata); + src/object/lockedDoor.o(.rodata); + data/const/object/object9.o(.rodata); + data/animations/object/object9.o(.rodata); + data/const/object/objectB.o(.rodata); + data/const/object/chestSpawner.o(.rodata); + data/animations/object/chestSpawner.o(.rodata); + data/const/object/objectD.o(.rodata); + data/animations/object/objectD.o(.rodata); + data/const/object/specialFx.o(.rodata); + data/animations/object/specialFx.o(.rodata); + data/const/object/object10.o(.rodata); + data/const/object/object11.o(.rodata); + data/const/object/object12.o(.rodata); + data/const/object/railtrack.o(.rodata); + data/animations/object/railtrack.o(.rodata); + data/const/object/lilypadLarge.o(.rodata); + data/const/object/object15.o(.rodata); + data/const/object/floatingPlatform.o(.rodata); + data/const/object/object17.o(.rodata); + data/const/object/evilSpirit.o(.rodata); + data/const/object/houseDoorExterior.o(.rodata); + data/const/object/object1A.o(.rodata); + src/object/greatFairy.o(.rodata); + data/animations/npc/greatFairy.o(.rodata); +data/const/object/object1D.o(.rodata); + data/const/object/object1E.o(.rodata); + data/animations/object/object1E.o(.rodata); + data/const/object/object1F.o(.rodata); + data/const/object/object20.o(.rodata); + data/animations/object/object20.o(.rodata); + data/const/object/object21.o(.rodata); + data/const/object/figurineDevice.o(.rodata); + data/animations/object/figurineDevice.o(.rodata); + data/const/object/eyeSwitch.o(.rodata); + data/animations/object/eyeSwitch.o(.rodata); + data/const/object/object24.o(.rodata); + data/animations/object/object24.o(.rodata); + data/const/object/bigBarrel.o(.rodata); + data/animations/object/bigBarrel.o(.rodata); + data/const/object/object26.o(.rodata); + data/const/object/pushableStatue.o(.rodata); + data/animations/object/pushableStatue.o(.rodata); + data/const/object/object29.o(.rodata); + data/animations/object/object29.o(.rodata); + data/const/object/object2A.o(.rodata); + data/animations/object/object2A.o(.rodata); + data/const/object/beanstalk.o(.rodata); + data/animations/object/beanstalk.o(.rodata); + data/const/object/smoke.o(.rodata); + data/const/object/pushableRock.o(.rodata); + data/animations/object/pushableRock.o(.rodata); + data/const/object/hittableLever.o(.rodata); + data/const/object/object30.o(.rodata); + data/const/object/object31.o(.rodata); + data/const/object/pullableMushroom.o(.rodata); + data/animations/object/pullableMushroom.o(.rodata); + data/const/object/bollard.o(.rodata); + data/animations/object/bollard.o(.rodata); + data/const/object/warpPoint.o(.rodata); + data/animations/object/warpPoint.o(.rodata); + data/const/object/object35.o(.rodata); + data/animations/object/object35.o(.rodata); + data/const/object/object36.o(.rodata); + data/const/object/object37.o(.rodata); + data/const/object/jarPortal.o(.rodata); + data/animations/object/jarPortal.o(.rodata); + data/const/object/bossDoor.o(.rodata); + data/animations/object/bossDoor.o(.rodata); + data/const/object/object3A.o(.rodata); + data/const/object/macroMushroomStalks.o(.rodata); + data/const/object/object75.o(.rodata); + data/const/object/object76.o(.rodata); + data/const/object/macroPlayer.o(.rodata); + data/const/object/object3D.o(.rodata); + data/const/object/object3E.o(.rodata); + data/const/object/giantLeaf.o(.rodata); + data/const/object/fairy.o(.rodata); + data/const/object/object42.o(.rodata); + data/const/object/object43.o(.rodata); + data/animations/object/object43.o(.rodata); + data/const/object/object44.o(.rodata); + data/animations/object/object44.o(.rodata); + data/const/object/object45.o(.rodata); + data/animations/object/object45.o(.rodata); + data/const/object/giantBookLadder.o(.rodata); + src/object/heartContainer.o(.rodata); + data/const/object/heartContainer.o(.rodata); + data/const/object/fileScreenObjects.o(.rodata); + data/animations/object/fileScreenObjects.o(.rodata); + data/const/object/object49.o(.rodata); + data/const/object/backgroundCloud.o(.rodata); + data/const/object/object4B.o(.rodata); + data/const/object/pushableFurniture.o(.rodata); + data/const/object/furniture.o(.rodata); + data/animations/object/furniture.o(.rodata); + data/const/object/minishSizedEntrance.o(.rodata); + data/animations/object/minishSizedEntrance.o(.rodata); + data/const/object/object51.o(.rodata); + data/const/object/object53.o(.rodata); + data/const/object/pullableLever.o(.rodata); + data/animations/object/pullableLever.o(.rodata); + data/const/object/minecart.o(.rodata); + data/animations/object/minecart.o(.rodata); + data/const/object/thoughtBubble.o(.rodata); + data/animations/object/thoughtBubble.o(.rodata); + data/const/object/hiddenLadderDown.o(.rodata); + data/const/object/gentariCurtains.o(.rodata); + data/animations/object/gentariCurtains.o(.rodata); + data/const/object/lavaPlatform.o(.rodata); + data/animations/object/lavaPlatform.o(.rodata); + data/const/object/object5A.o(.rodata); + data/const/object/object5B.o(.rodata); + data/const/object/mask.o(.rodata); + data/const/object/houseDoorInterior.o(.rodata); + data/const/object/whirlwind.o(.rodata); + data/animations/object/whirlwind.o(.rodata); + data/const/object/objectBlockingStairs.o(.rodata); + data/const/object/swordsmanNewsletter.o(.rodata); + data/const/object/object61.o(.rodata); + data/const/object/giantTwig.o(.rodata); + data/const/object/object63.o(.rodata); + data/const/object/object64.o(.rodata); + data/animations/object/object64.o(.rodata); + data/const/object/ladderHoleInBookshelf.o(.rodata); + data/const/object/object67.o(.rodata); + data/const/object/object68.o(.rodata); + data/const/object/object6A.o(.rodata); + data/animations/object/object6A.o(.rodata); + data/const/object/crenalBeanSprout.o(.rodata); + data/animations/object/crenalBeanSprout.o(.rodata); + data/const/object/minecartDoor.o(.rodata); + data/const/object/objectOnPillar.o(.rodata); + data/const/object/mineralWaterSource.o(.rodata); + data/const/object/object70.o(.rodata); + data/const/object/pushableGrave.o(.rodata); + data/const/object/object72.o(.rodata); + data/const/object/lilypadSmall.o(.rodata); + data/const/object/object74.o(.rodata); + data/const/object/bell.o(.rodata); + data/const/object/macroDecorations.o(.rodata); + data/const/object/object79.o(.rodata); + data/animations/object/object79.o(.rodata); + data/const/object/steam.o(.rodata); + data/const/object/pushableLever.o(.rodata); + data/animations/object/pushableLever.o(.rodata); + data/const/object/macroShoes.o(.rodata); + data/const/object/objectOnSpinyBeetle.o(.rodata); + data/const/object/picoBloom.o(.rodata); + data/animations/object/picoBloom.o(.rodata); + data/const/object/object80.o(.rodata); + data/const/object/object81.o(.rodata); + data/const/object/bigVortex.o(.rodata); + data/animations/object/bigVortex.o(.rodata); + data/const/object/bigPushableLever.o(.rodata); + data/animations/object/bigPushableLever.o(.rodata); + data/const/object/smallIceBlock.o(.rodata); + data/animations/object/smallIceBlock.o(.rodata); + data/const/object/bigIceBlock.o(.rodata); + data/animations/object/bigIceBlock.o(.rodata); + data/const/object/object86.o(.rodata); + data/animations/object/object86.o(.rodata); + data/const/object/object87.o(.rodata); + data/const/object/macroBook.o(.rodata); + data/animations/object/macroBook.o(.rodata); + data/const/object/object89.o(.rodata); + data/const/object/object8A.o(.rodata); + data/const/object/object8B.o(.rodata); + data/const/object/books.o(.rodata); + data/const/object/fireplace.o(.rodata); + data/const/object/object8E.o(.rodata); + data/const/object/frozenWaterElement.o(.rodata); + data/const/object/object90.o(.rodata); + data/const/object/object91.o(.rodata); + data/const/object/bakerOven.o(.rodata); + data/animations/object/bakerOven.o(.rodata); + data/const/object/object93.o(.rodata); + data/const/object/bird.o(.rodata); + data/animations/object/bird.o(.rodata); + data/const/object/object96.o(.rodata); + data/const/object/object97.o(.rodata); + data/const/object/object98.o(.rodata); + data/animations/object/object98.o(.rodata); + data/const/object/macroAcorn.o(.rodata); + data/const/object/object9B.o(.rodata); + data/animations/object/object9B.o(.rodata); + data/const/object/treeHidingPortal.o(.rodata); + data/const/object/lightableSwitch.o(.rodata); + data/const/object/fan.o(.rodata); + data/animations/object/fan.o(.rodata); + data/const/object/objectA0.o(.rodata); + data/animations/object/objectA0.o(.rodata); + data/const/object/palaceArchway.o(.rodata); src/object/objectA2.o(.rodata); + data/animations/object/objectA2.o(.rodata); + data/const/object/cloud.o(.rodata); + data/const/object/minishLight.o(.rodata); + data/const/object/objectA6.o(.rodata); + data/animations/object/objectA6.o(.rodata); + data/const/object/objectA8.o(.rodata); + data/const/object/objectA9.o(.rodata); + data/const/object/waterfallOpening.o(.rodata); + data/const/object/objectAB.o(.rodata); + data/animations/object/objectAB.o(.rodata); + data/const/object/fourElements.o(.rodata); + data/const/object/objectAD.o(.rodata); + data/const/object/objectAF.o(.rodata); + data/animations/object/objectAF.o(.rodata); + data/const/object/metalDoor.o(.rodata); + data/const/object/jailBars.o(.rodata); + data/animations/object/jailBars.o(.rodata); + data/animations/object/objectB2.o(.rodata); + data/const/object/objectB3.o(.rodata); + data/animations/object/objectB3.o(.rodata); + data/const/object/objectB4.o(.rodata); + data/animations/object/objectB4.o(.rodata); + data/const/object/well.o(.rodata); + data/const/object/windTribeTeleporter.o(.rodata); + data/const/object/objectB9.o(.rodata); + data/const/object/objectBA.o(.rodata); + data/animations/object/objectBA.o(.rodata); + data/const/object/windcrest.o(.rodata); + data/const/object/objectBD.o(.rodata); + data/const/object/pinwheel.o(.rodata); + data/animations/object/pinwheel.o(.rodata); + data/const/object/objectC1.o(.rodata); + data/data_08125104.o(.rodata); + data/const/playerItem/playerItemShield.o(.rodata); + data/const/playerItem/playerItem15.o(.rodata); + data/data_08127280.o(.rodata); + data/const/playerItem/playerItemSword.o(.rodata); + data/data_08129320.o(.rodata); + data/const/projectile/projectile0.o(.rodata); + data/const/projectile/projectile1.o(.rodata); + data/animations/projectile/projectile1.o(.rodata); + data/const/projectile/projectile2.o(.rodata); + data/animations/projectile/projectile2.o(.rodata); + data/const/projectile/projectile3.o(.rodata); + data/const/projectile/projectile4.o(.rodata); + data/const/projectile/projectile5.o(.rodata); + data/const/projectile/projectile6.o(.rodata); + data/animations/projectile/projectile6.o(.rodata); + data/const/projectile/projectile7.o(.rodata); + data/animations/projectile/projectile7.o(.rodata); + data/const/projectile/projectile8.o(.rodata); + data/animations/projectile/projectile8.o(.rodata); + data/const/projectile/projectile9.o(.rodata); + data/animations/projectile/projectile9.o(.rodata); + data/const/projectile/projectileA.o(.rodata); + data/const/projectile/projectileB.o(.rodata); + data/const/projectile/projectileC.o(.rodata); + data/const/projectile/projectileD.o(.rodata); + data/animations/projectile/projectileD.o(.rodata); + data/const/projectile/projectileE.o(.rodata); + data/animations/projectile/projectileE.o(.rodata); + data/const/projectile/projectileF.o(.rodata); + data/const/projectile/projectile10.o(.rodata); + data/const/projectile/projectile11.o(.rodata); + data/animations/projectile/projectile11.o(.rodata); + data/const/projectile/projectile12.o(.rodata); + data/animations/projectile/projectile12.o(.rodata); + data/const/projectile/projectile13.o(.rodata); + data/animations/projectile/projectile13.o(.rodata); + data/const/projectile/projectile14.o(.rodata); + data/const/projectile/projectile15.o(.rodata); + data/animations/projectile/projectile15.o(.rodata); + data/const/projectile/projectile16.o(.rodata); + data/animations/projectile/projectile16.o(.rodata); + data/const/projectile/projectile18.o(.rodata); + data/animations/projectile/projectile18.o(.rodata); + data/const/projectile/projectile19.o(.rodata); + data/const/projectile/projectile1A.o(.rodata); + data/const/projectile/projectile1B.o(.rodata); + data/animations/projectile/projectile1B.o(.rodata); + data/const/projectile/projectile1C.o(.rodata); + data/animations/projectile/projectile1C.o(.rodata); + data/const/projectile/projectile1D.o(.rodata); + data/const/projectile/projectile1E.o(.rodata); + data/animations/projectile/projectile1E.o(.rodata); + data/const/projectile/projectile1F.o(.rodata); + data/animations/projectile/projectile1F.o(.rodata); + data/const/projectile/projectile20.o(.rodata); + data/animations/projectile/projectile20.o(.rodata); + data/const/projectile/projectile21.o(.rodata); + data/const/projectile/projectile22.o(.rodata); + data/const/projectile/projectile23.o(.rodata); + data/animations/projectile/projectile23.o(.rodata); + data/const/projectile/projectile24.o(.rodata); + data/const/playerItem/playerItem10.o(.rodata); + data/data_0812AA88.o(.rodata); + data/const/playerItem/playerItem13.o(.rodata); + src/intro.o(.rodata); + data/data_081320FC.o(.rodata); + data/const/playerItem/playerItemGustJar.o(.rodata); + data/data_08132B30.o(.rodata); + data/strings.o(.rodata); + data/sprite_table.o(.rodata); + src/gba/m4a.o(.rodata); + data/data_089FC6C4.o(.rodata); + src/audio.o(.rodata); + data/data_08A127A1.o(.rodata); + data/sounds.o(.rodata); + src/eeprom.o(.rodata); + } >rom + + /* DWARF 2 sections */ + .debug_aranges 0 : { *(.debug_aranges) } + .debug_pubnames 0 : { *(.debug_pubnames) } + .debug_info 0 : { *(.debug_info) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_line 0 : { *(.debug_line) } + .debug_frame 0 : { *(.debug_frame) } + .debug_str 0 : { *(.debug_str) } + .debug_loc 0 : { *(.debug_loc) } + .debug_macinfo 0 : { *(.debug_macinfo) } + + /* Discard everything not specifically mentioned above. */ + /DISCARD/ : + { + *(*); + } +} diff --git a/src/arm_proxy.c b/src/arm_proxy.c index fb6612b9..b3b71deb 100644 --- a/src/arm_proxy.c +++ b/src/arm_proxy.c @@ -157,6 +157,11 @@ void PlayerUpdate(Entity* this) { } // Responsible for some life things like low health beep and initiating the death sequence +#ifdef EU +NAKED void HandlePlayerLife(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x017038, 0x1f0"); // TODO disassemble +} +#else void HandlePlayerLife(Entity* this) { u32 temp; @@ -227,6 +232,7 @@ void HandlePlayerLife(Entity* this) { CreateFx(this, 0x55 + gSave.stats.effect, 0); } } +#endif void sub_080171F0(void) { if (gPlayerState.field_0x1a[0] != 0) diff --git a/src/audio.c b/src/audio.c index 39e1cfdd..b9de7665 100644 --- a/src/audio.c +++ b/src/audio.c @@ -24,7 +24,9 @@ void InitSoundPlayingInfo(void) { InitVolume(); gSoundPlayingInfo.volumeSfx = 0x100; gSoundPlayingInfo.unk_04 = 0x100; +#ifndef EU m4aMPlayAllStop(); +#endif } void SetMasterVolume(u32 volume) { @@ -787,7 +789,6 @@ typedef enum { MUSIC_PLAYER_BGM, } MusicPlayerE; - #ifdef DEMO const MusicPlayer gMusicPlayers[] = { [MUSIC_PLAYER_00] = { &gMPlayInfos[0x08], &gMPlayTracksDEMO[0x00], 2, 1 }, @@ -975,7 +976,11 @@ const Song gSongTable[] = { [SFX_RUPEE_GET] = { &sfxRupeeGet, MUSIC_PLAYER_00, MUSIC_PLAYER_00 }, [SFX_HEART_BOUNCE] = { &sfxHeartBounce, MUSIC_PLAYER_12, MUSIC_PLAYER_12 }, [SFX_HEART_GET] = { &sfxHeartGet, MUSIC_PLAYER_00, MUSIC_PLAYER_00 }, +#ifdef EU + [SFX_SECRET] = { &sfxSecret, MUSIC_PLAYER_10, MUSIC_PLAYER_10 }, +#else [SFX_SECRET] = { &sfxSecret, MUSIC_PLAYER_03, MUSIC_PLAYER_03 }, +#endif [SFX_SECRET_BIG] = { &sfxSecretBig, MUSIC_PLAYER_03, MUSIC_PLAYER_03 }, [SFX_METAL_CLINK] = { &sfxMetalClink, MUSIC_PLAYER_0E, MUSIC_PLAYER_0E }, [SFX_PLY_VO1] = { &sfxPlyVo1, MUSIC_PLAYER_PLY_VO, MUSIC_PLAYER_PLY_VO }, @@ -1066,7 +1071,11 @@ const Song gSongTable[] = { [SFX_CA] = { &sfxCA, MUSIC_PLAYER_0E, MUSIC_PLAYER_0E }, [SFX_CB] = { &sfxCB, MUSIC_PLAYER_0F, MUSIC_PLAYER_0F }, [SFX_REM_SLEEP] = { &sfxRemSleep, MUSIC_PLAYER_10, MUSIC_PLAYER_10 }, +#ifdef EU + [SFX_TASK_COMPLETE] = { &sfxTaskComplete, MUSIC_PLAYER_17, MUSIC_PLAYER_17 }, +#else [SFX_TASK_COMPLETE] = { &sfxTaskComplete, MUSIC_PLAYER_03, MUSIC_PLAYER_03 }, +#endif [SFX_KEY_APPEAR] = { &sfxKeyAppear, MUSIC_PLAYER_16, MUSIC_PLAYER_16 }, [SFX_CF] = { &sfxCF, MUSIC_PLAYER_11, MUSIC_PLAYER_11 }, [SFX_D0] = { &sfxD0, MUSIC_PLAYER_12, MUSIC_PLAYER_12 }, diff --git a/src/code_0805436C.c b/src/code_0805436C.c index 21934343..4793e016 100644 --- a/src/code_0805436C.c +++ b/src/code_0805436C.c @@ -172,7 +172,13 @@ void sub_08054570(void) { gRoomVars.filler[2] = 0; } +#ifdef EU +NAKED u32 sub_0805457C(u32 arg0, u32 arg1) { + asm(".incbin \"baserom_eu.gba\", 0x054114, 0x1c0"); // TODO disassemble +} +#else ASM_FUNC("asm/non_matching/sub_0805457C.inc", u32 sub_0805457C(u32 arg0, u32 arg1)); +#endif NONMATCH("asm/non_matching/CreateItemDrop.inc", u32 CreateItemDrop(Entity* arg0, u32 itemID, u32 itemParameter)) { // TODO see below @@ -265,7 +271,7 @@ u32 CreateItemDrop(Entity* arg0, u32 itemID, u32 itemParameter) { */ void sub_08054870(void) { - #ifndef DEMO +#ifndef DEMO gUnk_080FE2A0[gMenu.menuType](); - #endif +#endif } diff --git a/src/code_0805F9A0.c b/src/code_0805F9A0.c index 612c4371..55c1545d 100644 --- a/src/code_0805F9A0.c +++ b/src/code_0805F9A0.c @@ -64,11 +64,11 @@ void sub_0805F820(WStruct* r0, u32* r1) { VStruct* temp3; if (r0->unk4 - r0->unk6 > 0) { - #ifdef DEMO +#ifdef DEMO sub_08002724(r1, &gUnk_02036A50); - #else +#else sub_08002724(r1, &gUnk_02036A58); - #endif +#endif if (r0->unk1 == 0) { u32 tmp = sub_0805F7A0(*r1); uVar6 = tmp & 0xf; @@ -86,11 +86,11 @@ void sub_0805F820(WStruct* r0, u32* r1) { uVar3 = uVar4; } - #ifdef DEMO +#ifdef DEMO puVar8 = &gUnk_02036A50 + uVar6; - #else +#else puVar8 = &gUnk_02036A58 + uVar6; - #endif +#endif temp2 = r0->unk8; temp = gUnk_0810942E[r0->unk3].filler0[r0->unk2 * 2]; uVar7 = r0->unk6; @@ -133,40 +133,40 @@ void sub_0805F918(u32 idx, u32 idx2, void* dest) { u8* temp; u8* temp2; - #ifdef DEMO +#ifdef DEMO MemFill32(sub_0805F8F8(idx2), &gUnk_02036AD0, 0xe0); - #else +#else MemFill32(sub_0805F8F8(idx2), &gUnk_02036AD8, 0xe0); - #endif +#endif puVar1 = gUnk_081092AC[idx]; temp = &gUnk_081094CE + idx2 * 0xc0; idx3 = 0; for (i = 0; i < 3; i++) { - #ifdef DEMO +#ifdef DEMO puVar2 = &gUnk_02036A50; sub_08002724(puVar1, &gUnk_02036A50); - #else +#else puVar2 = &gUnk_02036A58; sub_08002724(puVar1, &gUnk_02036A58); - #endif +#endif puVar1 += 0x40; for (j = 0; j < 8; j++) { - #ifdef DEMO +#ifdef DEMO sub_080026C4(puVar2, &gUnk_02036AD0, temp, idx3); - #else +#else sub_080026C4(puVar2, &gUnk_02036AD8, temp, idx3); - #endif +#endif puVar2++; idx3++; } } - #ifdef DEMO +#ifdef DEMO LoadResourceAsync((const void*)&gUnk_02036AD0, (u32)dest, 0xe0); - #else +#else LoadResourceAsync((const void*)&gUnk_02036AD8, (u32)dest, 0xe0); - #endif +#endif } u32 sub_0805F9A0(u32 r0) { diff --git a/src/eeprom.c b/src/eeprom.c index 945c788f..b7763a47 100644 --- a/src/eeprom.c +++ b/src/eeprom.c @@ -2,7 +2,7 @@ #include "gba/eeprom.h" #ifdef DEMO -const u8 unk[] = {0xff, 0xff, 0xff, 0xff}; +const u8 unk[] = { 0xff, 0xff, 0xff, 0xff }; const u8 padding[0x18] = {}; #else typedef struct EEPROMConfig { @@ -13,7 +13,6 @@ typedef struct EEPROMConfig { // u8 filler[3]; } EEPROMConfig; - const char EEPROM_V124[] = "EEPROM_V124"; extern const EEPROMConfig* gEEPROMConfig; const EEPROMConfig gEEPROMConfig512 = { 0x200, 0x40, 0x300, 0x6 }; @@ -21,8 +20,6 @@ const EEPROMConfig gEEPROMConfig8k = { 0x2000, 0x400, 0x300, 0xe }; u16 EEPROMWrite(u16, const u16*, u8); - - u16 EEPROMConfigure(u16 unk_1) { u16 ret; @@ -256,4 +253,4 @@ u16 EEPROMWrite0_8k_Check(u16 address, const u16* data) { const char thing[0x1c] = "\xff\xff\xff\xff"; -#endif \ No newline at end of file +#endif diff --git a/src/enemy/bombPeahat.c b/src/enemy/bombPeahat.c index fa170060..f94035fc 100644 --- a/src/enemy/bombPeahat.c +++ b/src/enemy/bombPeahat.c @@ -105,14 +105,19 @@ void sub_0802A924(Entity* this) { this->actionDelay = 0; this->field_0xf = 0; this->hitbox = (Hitbox*)&gUnk_080CD16C; +#ifdef EU + this->field_0x3c |= 0x10; +#endif this->height.HALF.HI = -0x30; this->field_0x80.HALF.LO = Random() & 1; this->field_0x82.HWORD = 0; this->field_0x7a.HALF.HI = 0; this->field_0x80.HALF.HI = 0; this->field_0x7a.HALF.LO = 0; +#ifndef EU this->field_0x78.HALF.LO = 0; this->field_0x78.HALF.HI = 0; +#endif this->collisionLayer = 3; this->spriteOrientation.flipY = 1; this->spriteRendering.b3 = 1; @@ -183,6 +188,11 @@ void sub_0802AA40(Entity* this) { } } +#ifdef EU +NAKED void sub_0802AAC0(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x02aa94, 0xc8"); // TODO disassemble +} +#else void sub_0802AAC0(Entity* this) { sub_0802AC40(this); if (--this->field_0xf == 0) { @@ -210,7 +220,13 @@ void sub_0802AAC0(Entity* this) { InitializeAnimation(this, 0); } } +#endif +#ifdef EU +NAKED void sub_0802AB40(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x02ab5c, 0x60"); // TODO disassemble +} +#else void sub_0802AB40(Entity* this) { sub_0802AC40(this); switch (this->field_0x78.HALF.LO) { @@ -249,6 +265,7 @@ void sub_0802AB40(Entity* this) { break; } } +#endif void sub_0802AC08(Entity* this) { if (this->frames.all & 0x80) { @@ -262,6 +279,11 @@ void sub_0802AC08(Entity* this) { GetNextFrame(this); } +#ifdef EU +NAKED void sub_0802AC40(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x02ABF4, 0x54"); // TODO disassemble +} +#else void sub_0802AC40(Entity* this) { GetNextFrame(this); sub_0806F69C(this); @@ -291,6 +313,7 @@ void sub_0802AC40(Entity* this) { } } } +#endif void sub_0802ACDC(Entity* this, u32 param_2) { u32 x; @@ -339,6 +362,12 @@ void sub_0802AD54(Entity* this) { } } +#ifdef EU +// TODO regalloc in EU version +NAKED void sub_0802ADDC(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x02AD48, 0x000004C"); // TODOg disassemble +} +#else void sub_0802ADDC(Entity* this) { Entity* ent = CreateEnemy(BOMB_PEAHAT, this->type + 2); if (ent != NULL) { @@ -346,12 +375,16 @@ void sub_0802ADDC(Entity* this) { ent->parent = this; this->attachedEntity = ent; CopyPosition(this, ent); + /*#ifdef EU + this->height.HALF.HI += 8; + #endif*/ this->field_0x80.HALF.HI = 1; if (this->type == 0) { this->field_0x7a.HALF.LO++; } } } +#endif void sub_0802AE24(Entity* this) { this->action = 1; @@ -366,6 +399,11 @@ void sub_0802AE24(Entity* this) { InitializeAnimation(this, 3); } +#ifdef EU +NAKED void sub_0802AE68(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x02add8, 0x94"); // TODO disassemble +} +#else void sub_0802AE68(Entity* this) { Entity* ent = sub_0802B250(this); if (ent == 0) { @@ -383,6 +421,7 @@ void sub_0802AE68(Entity* this) { } } } +#endif void sub_0802AEBC(Entity* this) { gUnk_080CD158[this->subAction](this); @@ -539,6 +578,11 @@ void sub_0802B1A0(Entity* this) { InitializeAnimation(this, 0); } +#ifdef EU +NAKED void sub_0802B1BC(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x02b16c, 0x84"); // TODO disassemble +} +#else void sub_0802B1BC(Entity* this) { Entity* ent; @@ -559,6 +603,7 @@ void sub_0802B1BC(Entity* this) { } } } +#endif void sub_0802B204(Entity* this) { if (sub_080044EC(this, 0x2800) == 1) { @@ -578,6 +623,7 @@ bool32 sub_0802B234(Entity* this) { return ret; } +#ifndef EU Entity* sub_0802B250(Entity* this) { Entity* parent = this->parent; if (parent && parent->next == NULL) { @@ -596,6 +642,7 @@ void sub_0802B264(Entity* this) { } GetNextFrame(this); } +#endif // clang-format off void (*const gUnk_080CD0F0[])(Entity*) = { @@ -648,14 +695,26 @@ void (*const gUnk_080CD158[])(Entity*) = { }; const Hitbox gUnk_080CD16C = { +#ifdef EU + 0x00, 0xFD, 0x05, 0x03, 0x03, 0x05, 0x06, 0x06, +#else 0x00, 0xFB, 0x05, 0x03, 0x03, 0x05, 0x06, 0x06, +#endif }; +#ifdef EU +const u8 unk_data[] = { // TODO + 0x0c, 0x0, 0x0, 0x0 +}; +#endif + const Hitbox gUnk_080CD174 = { 0x00, 0x00, 0x06, 0x00, 0x00, 0x06, 0x04, 0x04, }; + const Hitbox gUnk_080CD17C = { 0x00, 0x00, 0x04, 0x00, 0x00, 0x04, 0x16, 0x16, }; + // clang-format on diff --git a/src/enemy/businessScrub.c b/src/enemy/businessScrub.c index d1ed2872..2fd6ac8f 100644 --- a/src/enemy/businessScrub.c +++ b/src/enemy/businessScrub.c @@ -266,9 +266,9 @@ void sub_08028CE8(Entity* this) { this->actionDelay = 4; this->field_0x80.HALF.HI = 0; sub_080290E0(this, 3); - #ifndef JP +#if defined(USA) || defined(DEMO) SetLocalFlag(0x87); - #endif +#endif return; case 1: CreateItemEntity(offer->field_0x8, offer->field_0x9, 0); @@ -565,7 +565,11 @@ const struct SalesOffering gUnk_080CC954[] = { {0x04, 0x00, 0x0014, 0x2910, 0x2911, 0x1c, 0xff, 0xffff}, {0x0c, 0x00, 0xffff, 0x2912, 0x2913, 0xff, 0xff, 0x0046}, {0x04, 0x00, 0x0064, 0x2913, 0x2902, 0x5c, 0x75, 0xffff}, +#ifdef EU + {0x00, 0x00, 0x0064, 0x290d, 0x2902, 0x5c, 0xff, 0xffff}, +#else {0x00, 0x00, 0x00C8, 0x290d, 0x2902, 0x5c, 0xff, 0xffff}, +#endif }; const u8 gUnk_080CC9C0[] = { diff --git a/src/enemy/chuchu.c b/src/enemy/chuchu.c index 4f8d86d0..7ca16f40 100644 --- a/src/enemy/chuchu.c +++ b/src/enemy/chuchu.c @@ -332,6 +332,11 @@ void sub_0801F3AC(Entity* this) { } } +#ifdef EU +NAKED void sub_0801F428(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x01F428, 0x60"); // TODO disassemble +} +#else void sub_0801F428(Entity* this) { sub_0804A720(this); this->action = 1; @@ -348,6 +353,7 @@ void sub_0801F428(Entity* this) { this->spriteSettings.b.draw = 1; InitializeAnimation(this, 2); } +#endif void sub_0801F48C(Entity* this) { GetNextFrame(this); diff --git a/src/enemy/gyorgMale.c b/src/enemy/gyorgMale.c index ed48da55..921784df 100644 --- a/src/enemy/gyorgMale.c +++ b/src/enemy/gyorgMale.c @@ -143,7 +143,11 @@ void sub_08046930(Entity* this) { if (this->type) { this->subAction = 5; this->direction = 0x20; +#ifdef EU + this->speed = 0x200; +#else this->speed = 0x280; +#endif } sub_08047D88(this); if (this->field_0x7c.BYTES.byte0 == 0) @@ -152,7 +156,11 @@ void sub_08046930(Entity* this) { this->actionDelay = 1; this->animationState = 0; this->direction = 0; +#ifdef EU + this->speed = 0x200; +#else this->speed = 0x280; +#endif } void sub_0804696C(Entity* this) { @@ -163,10 +171,16 @@ void sub_0804696C(Entity* this) { this->speed = 0x100; this->spriteOrientation.flipY = 3; this->spriteRendering.b3 = 3; +#ifndef EU SoundReq(BGM_BOSS_THEME); +#endif } if (this->actionDelay) { +#ifdef EU + if (gRoomControls.roomOriginY + 0x210 > this->y.HALF.HI) { +#else if (gRoomControls.roomOriginY + 0x258 > this->y.HALF.HI) { +#endif this->actionDelay = 0; SoundReq(SFX_APPARATE); } diff --git a/src/enemy/likeLike.c b/src/enemy/likeLike.c index 400233c6..b6a5988f 100644 --- a/src/enemy/likeLike.c +++ b/src/enemy/likeLike.c @@ -257,7 +257,11 @@ bool32 sub_080281E0(u32 param_1) { } void sub_08028224(u32 param_1) { +#ifdef EU + CreateItemEntity(param_1, 0, 1); +#else sub_080A7C18(param_1, 0, 1); +#endif TextboxNoOverlapFollow(0x579); } diff --git a/src/enemy/rockChuchu.c b/src/enemy/rockChuchu.c index 3f27ae13..c7b0dbe1 100644 --- a/src/enemy/rockChuchu.c +++ b/src/enemy/rockChuchu.c @@ -44,7 +44,9 @@ void sub_08022254(Entity* this) { ent = CreateEnemy(CHUCHU, 1); if (ent) { ent->type2 = 1; +#ifndef EU ent->iframes = -8; +#endif sub_0804A4E4(this, ent); this->action = 2; this->flags &= ~0x80; @@ -98,8 +100,10 @@ void sub_080223E4(Entity* this) { if (ent) { ent->bitfield = 0x94; ent->iframes = 0x10; +#ifndef EU ent->field_0x42 = 0xc; ent->field_0x3e = this->direction; +#endif } DeleteEntity(this); diff --git a/src/enemy/ropeGolden.c b/src/enemy/ropeGolden.c index 606e2c9f..1e63b5df 100644 --- a/src/enemy/ropeGolden.c +++ b/src/enemy/ropeGolden.c @@ -80,9 +80,7 @@ void sub_080382EC(Entity* this) { } } -NONMATCH("asm/non_matching/ropeGolden/sub_08038304.inc", void sub_08038304(Entity* this)) { -} -END_NONMATCH +ASM_FUNC("asm/non_matching/ropeGolden/sub_08038304.inc", void sub_08038304(Entity* this)) void sub_080383AC(Entity* this) { u32 v; diff --git a/src/enemy/rupeeLike.c b/src/enemy/rupeeLike.c index 8a75457f..0f29065a 100644 --- a/src/enemy/rupeeLike.c +++ b/src/enemy/rupeeLike.c @@ -274,7 +274,11 @@ void sub_080297F0(Entity* this) { this->spriteSettings.b.draw = TRUE; this->damageType = 0x8e; sub_080AE068(this); +#ifdef EU + this->spriteIndex = 0x142; +#else this->spriteIndex = 0x143; +#endif temp = gUnk_080CCC47[this->type]; this->palette.b.b0 = temp; this->spriteVramOffset = 9; diff --git a/src/enemy/vaatiBall.c b/src/enemy/vaatiBall.c index 7420c131..903a84db 100644 --- a/src/enemy/vaatiBall.c +++ b/src/enemy/vaatiBall.c @@ -34,7 +34,11 @@ void VaatiBall(Entity* this) { ModHealth(-2); } +#ifdef EU + if (this->currentHealth < 0xfa) { +#else if (this->currentHealth < 0xfd) { +#endif this->spriteSettings.b.draw = 0; this->flags &= 0x7f; this->currentHealth = -1; diff --git a/src/fileScreen.c b/src/fileScreen.c index 6e18b5dd..b1e990be 100644 --- a/src/fileScreen.c +++ b/src/fileScreen.c @@ -271,10 +271,17 @@ static void sub_0805066C(void) { if (loadNewPalette) { paletteOffset = &gGlobalGfxAndPalettes[gUnk_080FC8DE[gUnk_02019EE0.unk2]]; +#ifdef EU + LoadPalettes(&paletteOffset[0x11A60], 11, 1); + LoadPalettes(&paletteOffset[0x11B60], 12, 1); + LoadPalettes(&paletteOffset[0x11C60], 13, 1); + LoadPalettes(&paletteOffset[0x11D60], 14, 1); +#else LoadPalettes(&paletteOffset[0x11AA0], 11, 1); LoadPalettes(&paletteOffset[0x11BA0], 12, 1); LoadPalettes(&paletteOffset[0x11CA0], 13, 1); LoadPalettes(&paletteOffset[0x11DA0], 14, 1); +#endif } } @@ -475,22 +482,38 @@ void sub_08050A64(u32 idx) { if (GetInventoryValue(0x40)) { gOamCmd.x = 0xA2; gOamCmd.y = 0x36; +#ifdef EU + sub_080ADA14(0x144, 0x24); +#else sub_080ADA14(0x145, 0x24); +#endif } if (GetInventoryValue(0x41)) { gOamCmd.x = 0x96; gOamCmd.y = 0x3D; +#ifdef EU + sub_080ADA14(0x144, 0x22); +#else sub_080ADA14(0x145, 0x22); +#endif } if (GetInventoryValue(0x42)) { gOamCmd.x = 0xAE; gOamCmd.y = 0x3D; +#ifdef EU + sub_080ADA14(0x144, 0x23); +#else sub_080ADA14(0x145, 0x23); +#endif } if (GetInventoryValue(0x43)) { gOamCmd.x = 0xA2; gOamCmd.y = 0x44; +#ifdef EU + sub_080ADA14(0x144, 0x21); +#else sub_080ADA14(0x145, 0x21); +#endif } } diff --git a/src/game.c b/src/game.c index 4117416d..69f344b8 100644 --- a/src/game.c +++ b/src/game.c @@ -61,15 +61,15 @@ void sub_0805212C(void) { gMenu.transitionTimer--; if (gMenu.transitionTimer == 0) { sub_080520C4(2); - #ifdef DEMO +#ifdef DEMO SoundReq(0x80080000); - DoFade(7,4); - #else + DoFade(7, 4); +#else sub_08052418(0, 0); gScreen.lcd.displayControl |= 0x600; gFadeControl.field_0x4 = 0xffff; DoFade(4, 0x10); - #endif +#endif } } } else { @@ -79,9 +79,9 @@ void sub_0805212C(void) { #ifdef DEMO void sub_080521A0(void) { - if (gFadeControl.active == 0) { - DoSoftReset(); - } + if (gFadeControl.active == 0) { + DoSoftReset(); + } } #else void sub_080521A0(void) { @@ -224,7 +224,11 @@ void sub_080523D4(void) { gOamCmd.y = gMenu.focusCoords[0]; for (i = 0; i < 8; ++i) { gOamCmd.x = gUnk_080FCA84[i]; +#ifdef EU + sub_080ADA14(0x1fc, i); +#else sub_080ADA14(0x1fd, i); +#endif } } @@ -302,16 +306,26 @@ void InitializePlayer(void) { } bool32 sub_08052620(u32 r0) { +#ifdef EU + return gArea == 0x01; +#else return gArea == 0x81; +#endif } bool32 sub_08052638(u32 r0) { +#if EU + return gUnk_08127D30[r0 * 4] == 0x01; +#else return gUnk_08127D30[r0 * 4] == 0x81; +#endif } +#ifndef EU u32 sub_08052654() { return (gArea >> 7) & 1; } +#endif u32 CheckIsDungeon(void) { return (gArea >> 2) & 1; diff --git a/src/intro.c b/src/intro.c index 414165e1..a181800e 100644 --- a/src/intro.c +++ b/src/intro.c @@ -104,23 +104,21 @@ static void HandleNintendoCapcomLogos(void) { gScreen.bg.bg1Updated = 1; DoFade(6, 8); advance = ADVANCE_NONE; - #ifdef DEMO +#ifdef DEMO if (gUnk_02000010.listenForKeyPresses == 0) { - if ((gInput.heldKeys & 0x204) == 0x204) { // TODO - gUnk_02000010.field_0x7 = 1; - SoundReq(0x73); - } - else { - if ((gInput.heldKeys & 0x104) == 0x104) { // TODO - gUnk_02000010.field_0x7 = 2; - SoundReq(0xcd); - } - else { - gUnk_02000010.field_0x7 = 0; + if ((gInput.heldKeys & 0x204) == 0x204) { // TODO + gUnk_02000010.field_0x7 = 1; + SoundReq(0x73); + } else { + if ((gInput.heldKeys & 0x104) == 0x104) { // TODO + gUnk_02000010.field_0x7 = 2; + SoundReq(0xcd); + } else { + gUnk_02000010.field_0x7 = 0; + } } } - } - #endif +#endif } else { if (advance == ADVANCE_TIMER_EXPIRED) { @@ -192,17 +190,17 @@ static void HandleTitlescreen(void) { } break; case 2: - #ifdef JP +#if defined(JP) || defined(EU) if (GetAdvanceState()) { - #else +#else if (--gIntroState.timer == 0) { - #endif +#endif gIntroState.timer = 3600; gIntroState.state++; } - #ifndef JP +#if defined(USA) || defined(DEMO) UpdatePressStartIcon(); - #endif +#endif break; default: advance = GetAdvanceState(); @@ -215,20 +213,31 @@ static void HandleTitlescreen(void) { AdvanceIntroSequence(advance); SoundReq(SONG_VOL_FADE_OUT); } - #ifdef JP +#ifdef JP gOamCmd._4 = 0; gOamCmd._6 = 0; gOamCmd._8 = 0xE020; gOamCmd.x = 120; gOamCmd.y = 152; sub_080ADA14(511, 1); - #else - UpdatePressStartIcon(); - #endif +#elif defined(EU) + gOamCmd._4 = 0; + gOamCmd._6 = 0; + gOamCmd._8 = 0xE020; + gOamCmd.x = 120; + gOamCmd.y = 152; + sub_080ADA14(510, 1); +#else + UpdatePressStartIcon(); +#endif if ((gIntroState.timer & 0x20) == 0) { gOamCmd._8 = 0xe000; gOamCmd.y = 0x84; +#ifdef EU + sub_080ADA14(0x1fe, 0); +#else sub_080ADA14(0x1ff, 0); +#endif } } if (gIntroState.gameLanguage != gUnk_02000000->gameLanguage) { @@ -240,7 +249,7 @@ static void HandleTitlescreen(void) { sub_080AD9B0(); } -#ifndef JP +#if defined(USA) || defined(DEMO) static void UpdatePressStartIcon(void) { gOamCmd._4 = 0; gOamCmd._6 = 0; @@ -286,7 +295,7 @@ static void HandleJapaneseTitlescreenAnimationIntro(void) { if (!gFadeControl.active) { gFadeControl.field_0x4 = -1; gIntroState.subState++; -#ifdef JP +#if defined(JP) || defined(EU) gIntroState.timer = 120; #else gIntroState.timer = 90; @@ -301,7 +310,7 @@ static void HandleJapaneseTitlescreenAnimationIntro(void) { case 2: if (GetAdvanceState() != ADVANCE_NONE) { gIntroState.state++; -#ifdef JP +#if defined(JP) || defined(EU) gIntroState.timer = 30; #else gIntroState.timer = 60; @@ -331,7 +340,7 @@ static void HandleTitlescreenAnimationIntro(void) { break; case 2: if (--gIntroState.timer == 0) { -#ifdef JP +#if defined(JP) || defined(EU) gIntroState.timer = 360; #else gIntroState.timer = 300; @@ -345,7 +354,7 @@ static void HandleTitlescreenAnimationIntro(void) { default: if (!gFadeControl.active && GetAdvanceState() != ADVANCE_NONE) { gIntroState.state++; -#ifdef JP +#if defined(JP) || defined(EU) gIntroState.timer = 30; #else gIntroState.timer = 60; diff --git a/src/main.c b/src/main.c index 3fa19e65..286e128a 100644 --- a/src/main.c +++ b/src/main.c @@ -19,15 +19,17 @@ extern void HandleCreditsScreen(void); extern void HandleDebugTextScreen(void); static void (*const sScreenHandlers[])(void) = { - [SCREEN_INTRO] = HandleIntroScreen, - #ifdef DEMO - [SCREEN_CHOOSE_FILE] = HandleChooseDemoScreen, - #else + [SCREEN_INTRO] = HandleIntroScreen, +#ifdef DEMO + [SCREEN_CHOOSE_FILE] = HandleChooseDemoScreen, +#else [SCREEN_CHOOSE_FILE] = HandleChooseFileScreen, - #endif +#endif - [SCREEN_GAMEPLAY] = HandleGameplayScreen, [SCREEN_GAME_OVER] = HandleGameOverScreen, - [SCREEN_CREDITS] = HandleCreditsScreen, [SCREEN_DEBUG_TEXT] = HandleDebugTextScreen, + [SCREEN_GAMEPLAY] = HandleGameplayScreen, + [SCREEN_GAME_OVER] = HandleGameOverScreen, + [SCREEN_CREDITS] = HandleCreditsScreen, + [SCREEN_DEBUG_TEXT] = HandleDebugTextScreen, }; static void sub_080560B8(void); @@ -116,11 +118,11 @@ static void sub_08055F70(void) { size = (u32)gUnk_080B2CD8_2 - (u32)gUnk_080B2CD8_3; if (size != 0) { - #ifdef DEMO +#ifdef DEMO MemCopy(gUnk_080B2CD8_3, gUnk_02038558, size); - #else +#else MemCopy(gUnk_080B2CD8_3, gUnk_02038560, size); - #endif +#endif } DispReset(0); @@ -173,7 +175,11 @@ const Defaults sDefaultSettings = { .saveFileId = 0, .messageSpeed = 1, .brightnessPref = 1, +#ifdef EU + .gameLanguage = 2, // TODO in EU 2 is english? +#else .gameLanguage = GAME_LANGUAGE, +#endif .name = "LINK", ._e = 0, ._f = 0, @@ -212,9 +218,16 @@ NONMATCH("asm/non_matching/sub_080560B8.inc", static void sub_080560B8(void)) { END_NONMATCH u32 sub_08056134(void) { +#ifdef EU + if ((gUnk_02000000->signature != SIGNATURE) || (gUnk_02000000->saveFileId >= NUM_SAVE_SLOTS) || + (gUnk_02000000->messageSpeed >= MAX_MSG_SPEED) || (gUnk_02000000->brightnessPref >= MAX_BRIGHTNESS) || + (gUnk_02000000->gameLanguage <= GAME_LANGUAGE) || (gUnk_02000000->gameLanguage >= 7) || + (gUnk_02000000->_e != 0)) +#else if ((gUnk_02000000->signature != SIGNATURE) || (gUnk_02000000->saveFileId >= NUM_SAVE_SLOTS) || (gUnk_02000000->messageSpeed >= MAX_MSG_SPEED) || (gUnk_02000000->brightnessPref >= MAX_BRIGHTNESS) || (gUnk_02000000->gameLanguage != GAME_LANGUAGE) || (gUnk_02000000->_e != 0)) +#endif return FALSE; return TRUE; diff --git a/src/manager/manager4.c b/src/manager/manager4.c index 7066c507..ccce7d47 100644 --- a/src/manager/manager4.c +++ b/src/manager/manager4.c @@ -96,6 +96,11 @@ END_NONMATCH extern void sub_08080930(); +#ifdef EU +NAKED void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) { + asm(".incbin \"baserom_eu.gba\", 0x057580, 0x0000078"); // TODOg disassemble +} +#else void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) { u16 tmp; sub_0805E5A8(); @@ -118,6 +123,7 @@ void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) { sub_08080930(entr->unk_03); DeleteManager(this); } +#endif DiggingCaveEntrance* sub_08057AA8(DiggingCaveEntrance* entr, int roomID) { for (; entr->unk_00 != 0xFFFF; entr++) { diff --git a/src/manager/manager7.c b/src/manager/manager7.c index 0b0431df..b30beaf1 100644 --- a/src/manager/manager7.c +++ b/src/manager/manager7.c @@ -18,12 +18,29 @@ extern u32 sub_08056300(const u16*); extern const u8 gGlobalGfxAndPalettes[]; -const u16 gUnk_08108050[0x2A] = { 0, 0, 0x20, 0xE0, 0xE0, 1, 0, 0x1D0, 0x80, 0x60, 2, - 0x170, 0x278, 0xF8, 0xA0, 3, 0x310, 0x178, 0xC0, 0x150, 3, 0x340, - 0x2C8, 0x60, 0x90, 4, 0x1D0, 0, 0x200, 0xE0, 1, 0x108, 0x188, - 0xD0, 0x80, 2, 0x1E8, 0x338, 0x50, 0xC0, 0xFF, 0 }; +const u16 gUnk_08108050[0x2A] = { +#ifdef EU + 0, 0, 0x20, 0xE0, 0xE0, 1, 0x28, 0x1C8, 0x60, 0x80, 2, + 0x188, 0x278, 0xE0, 0xA0, 3, 0x310, 0x178, 0xC0, 0x150, 3, 0x340, +#else + 0, 0, 0x20, 0xE0, 0xE0, 1, 0, 0x1D0, 0x80, 0x60, 2, + 0x170, 0x278, 0xF8, 0xA0, 3, 0x310, 0x178, 0xC0, 0x150, 3, 0x340, +#endif + 0x2C8, 0x60, 0x90, 4, 0x1D0, 0, 0x200, 0xE0, 1, 0x108, 0x188, + 0xD0, 0x80, 2, 0x1E8, 0x338, 0x50, 0xC0, 0xFF, 0 +}; const u32 gUnk_081080A4[0x50] = { +#ifdef EU + 0x109860, 0x6000000, 0x10a860, 0x6001000, 0x10b860, 0x6002000, 0x10c860, 0x6003000, 0x10d860, 0x6008000, + 0x10e860, 0x6009000, 0x10f860, 0x600a000, 0x110860, 0x600b000, 0x111860, 0x6000000, 0x112860, 0x6001000, + 0x113860, 0x6002000, 0x114860, 0x6003000, 0x115860, 0x6008000, 0x116860, 0x6009000, 0x117860, 0x600a000, + 0x118860, 0x600b000, 0x119860, 0x6000000, 0x11a860, 0x6001000, 0x11b860, 0x6002000, 0x11c860, 0x6003000, + 0x11d860, 0x6008000, 0x11e860, 0x6009000, 0x11f860, 0x600a000, 0x120860, 0x600b000, 0x121860, 0x6000000, + 0x122860, 0x6001000, 0x123860, 0x6002000, 0x124860, 0x6003000, 0x125860, 0x6008000, 0x126860, 0x6009000, + 0x127860, 0x600a000, 0x128860, 0x600b000, 0x129860, 0x6000000, 0x12a860, 0x6001000, 0x12b860, 0x6002000, + 0x12c860, 0x6003000, 0x12d860, 0x6008000, 0x12e860, 0x6009000, 0x12f860, 0x600a000, 0x130860, 0x600b000 +#else 0x001095E0, 0x06000000, 0x0010A5E0, 0x06001000, 0x0010B5E0, 0x06002000, 0x0010C5E0, 0x06003000, 0x0010D5E0, 0x06008000, 0x0010E5E0, 0x06009000, 0x0010F5E0, 0x0600A000, 0x001105E0, 0x0600B000, 0x001115E0, 0x06000000, 0x001125E0, 0x06001000, 0x001135E0, 0x06002000, 0x001145E0, 0x06003000, 0x001155E0, 0x06008000, 0x001165E0, @@ -33,10 +50,16 @@ const u32 gUnk_081080A4[0x50] = { 0x001245E0, 0x06003000, 0x001255E0, 0x06008000, 0x001265E0, 0x06009000, 0x001275E0, 0x0600A000, 0x001285E0, 0x0600B000, 0x001295E0, 0x06000000, 0x0012A5E0, 0x06001000, 0x0012B5E0, 0x06002000, 0x0012C5E0, 0x06003000, 0x0012D5E0, 0x06008000, 0x0012E5E0, 0x06009000, 0x0012F5E0, 0x0600A000, 0x001305E0, 0x0600B000 +#endif }; const u8 gUnk_081081E4[] = { 0x16, 0x17, 0x17, 0x18, 0x18 }; +#ifdef EU +NAKED void Manager7_Main(Manager7* this) { + asm(".incbin \"baserom_eu.gba\", 0x0578A0, 0x00000CC"); // TODOg disassemble +} +#else void Manager7_Main(Manager7* this) { u32 tmp; const u32* tmp2; @@ -44,6 +67,7 @@ void Manager7_Main(Manager7* this) { this->manager.action = 1; this->manager.unk_0e = 8; this->unk_20 = 0xFF; + sub_0805E3A0(this, 6); sub_08052D74(this, sub_08057E30, 0); } @@ -56,9 +80,9 @@ void Manager7_Main(Manager7* this) { } if (gRoomControls.unk2) return; - #ifndef JP +#ifndef JP tmp = this->unk_20; - #endif +#endif tmp2 = &gUnk_081080A4[tmp << 4]; switch (this->manager.unk_0e) { case 0: @@ -84,6 +108,7 @@ void Manager7_Main(Manager7* this) { break; } } +#endif void sub_08057E30(Manager7* this) { sub_08057E7C(gRoomVars.unk_10); @@ -107,6 +132,11 @@ void sub_08057E64() { } } +#ifdef EU +NAKED void sub_08057E7C(u32 unk1) { + asm(".incbin \"baserom_eu.gba\", 0x0579B8, 0x0000050"); // TODOg disassemble +} +#else void sub_08057E7C(u32 unk1) { u32 tmp; const u32* tmp2; @@ -119,3 +149,4 @@ void sub_08057E7C(u32 unk1) { } gRoomVars.unk_10 = unk1; } +#endif diff --git a/src/npc/castleMaid.c b/src/npc/castleMaid.c index eceef3d3..dc513e2e 100644 --- a/src/npc/castleMaid.c +++ b/src/npc/castleMaid.c @@ -97,13 +97,13 @@ void sub_0806464C(Entity* this) { s32 tmp; if (CheckGlobalFlag(0x15) != 0) { tmp = 2; -#ifdef JP +#if defined(JP) || defined(EU) } else if (CheckLocalFlag(0x9f) == 0) { #else } else if (CheckLocalFlag(0xa0) == 0) { #endif tmp = 0; -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0x9f); #else SetLocalFlag(0xa0); diff --git a/src/npc/castorWildsStatue.c b/src/npc/castorWildsStatue.c index 874ba09a..b508d100 100644 --- a/src/npc/castorWildsStatue.c +++ b/src/npc/castorWildsStatue.c @@ -58,7 +58,7 @@ void sub_08067418(Entity* this) { this->spriteOrientation.flipY = 1; this->spriteRendering.b3 = 1; this->spritePriority.b0 = 2; -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0x1e) == 0) { #else if (CheckLocalFlag(0x1d) == 0) { diff --git a/src/npc/dog.c b/src/npc/dog.c index 851cdbf4..97486431 100644 --- a/src/npc/dog.c +++ b/src/npc/dog.c @@ -74,7 +74,7 @@ void sub_08069B44(Entity* this) { if (((this->type == 0) && ((gPlayerState.flags.all & 0x80) == 0)) && (GetInventoryValue(0x36) != 2)) { this->action = 4; } -#ifdef JP +#if defined(JP) || defined(EU) if ((this->type == 2) && (CheckLocalFlag(0xcc) == 0)) { #else if ((this->type == 2) && (CheckLocalFlag(0xcf) == 0)) { @@ -221,7 +221,15 @@ void sub_08069E50(Entity* this) { void sub_08069ECC(Entity* this) { if (UpdateFuseInteraction(this) != 0) { +#ifdef EU + if (GetInventoryValue(0x36) != 2) { + this->action = 5; + } else { + this->action = 1; + } +#else this->action = 1; +#endif } } @@ -262,7 +270,7 @@ void sub_08069F6C(Entity* this) { } u32 sub_08069F90(Entity* this) { -#ifdef JP +#if defined(JP) || defined(EU) if ((this->type == 2) && (CheckLocalFlag(0xcc) == 0)) { #else if ((this->type == 2) && (CheckLocalFlag(0xcf) == 0)) { @@ -320,13 +328,13 @@ void sub_0806A0A4(Entity* this) { if ((gPlayerState.flags.all & 0x80) != 0) { dialog = 4; -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0xcc) == 0) { #else if (CheckLocalFlag(0xcf) == 0) { #endif dialog = 3; -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0xcc); #else SetLocalFlag(0xcf); @@ -336,19 +344,19 @@ void sub_0806A0A4(Entity* this) { } else { dialog = 2; -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0xcc) == 0) { #else if (CheckLocalFlag(0xcf) == 0) { #endif dialog = 1; -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0xd8) == 0) { #else if (CheckLocalFlag(0xdb) == 0) { #endif dialog = 0; -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0xd8); #else SetLocalFlag(0xdb); diff --git a/src/npc/gina.c b/src/npc/gina.c index b9b2e255..95886173 100644 --- a/src/npc/gina.c +++ b/src/npc/gina.c @@ -29,9 +29,9 @@ void Gina(Entity* this) { case 2: if (UpdateFuseInteraction(this) != 0) { this->action = 1; - #ifndef JP +#if defined(USA) || defined(DEMO) SetLocalFlag(0x88); - #endif +#endif } break; } diff --git a/src/npc/goronMerchant.c b/src/npc/goronMerchant.c index a34046b7..ca41b899 100644 --- a/src/npc/goronMerchant.c +++ b/src/npc/goronMerchant.c @@ -164,6 +164,27 @@ void (*const gUnk_08111B98[])(Entity*) = { }; const u16 GoronMerchant_KinstonePrices[] = { +#ifdef EU + 200, + 100, + 50, + // prices after restock 1 + 300, + 200, + 100, + // prices after restock 2 + 400, + 300, + 200, + // prices after restock 3 + 500, + 400, + 300, + // prices after restock 4 + 600, + 500, + 400, +#else 300, 200, 50, @@ -183,4 +204,5 @@ const u16 GoronMerchant_KinstonePrices[] = { 300, 200, 50, +#endif }; diff --git a/src/npc/npc4E.c b/src/npc/npc4E.c index b62fb5fc..b82dfa45 100644 --- a/src/npc/npc4E.c +++ b/src/npc/npc4E.c @@ -105,35 +105,35 @@ void sub_0806DAD0(Entity* this) { void sub_0806DAE8(Entity* this) { switch (this->type - 1) { case 0: -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0xeb); #else SetLocalFlag(0xee); #endif break; case 1: -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0xec); #else SetLocalFlag(0xef); #endif break; case 2: -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0xed); #else SetLocalFlag(0xf0); #endif break; case 3: -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0xee); #else SetLocalFlag(0xf1); #endif break; case 4: -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0xef); #else SetLocalFlag(0xf2); @@ -147,7 +147,7 @@ void sub_0806DAE8(Entity* this) { void sub_0806DB44(Entity* this, ScriptExecutionContext* context) { context->condition = 0; -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0xeb) != 0 && CheckLocalFlag(0xec) != 0 && CheckLocalFlag(0xed) != 0 && CheckLocalFlag(0xee) != 0 && CheckLocalFlag(0xef) != 0) { #else @@ -262,10 +262,14 @@ void NPC4E_Fusion(Entity* this) { const Hitbox gUnk_08114154 = { 0, -8, 0, 0, 0, 0, 24, 8 }; const u8 gUnk_0811415C[] = { // - 0x00, 0x00, 0x08, 0x08, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x10, 0x04, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x0a, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x04, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x08, 0x10, 0x04, 0x0e, 0x00, - 0x00, 0x00, 0x00, 0xf8, 0x18, 0x08, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x08, 0x0e, 0x00, 0x00, 0x00 + 0x00, 0x00, 0x08, 0x08, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x08, 0x0e, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0a, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x06, 0x04, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x08, 0x10, 0x04, + 0x0e, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x18, 0x08, 0x0e, 0x00, 0x00, 0x00, +#ifndef EU + 0x00, 0x00, 0x58, 0x08, 0x0e, 0x00, 0x00, 0x00 +#endif }; extern ScreenTransitionData gUnk_0813AB6C; extern ScreenTransitionData gUnk_0813ABBC; @@ -285,14 +289,16 @@ extern ScreenTransitionData gUnk_0813ACFC; // Array of pointers to ScreenTransitionData const ScreenTransitionData* const gUnk_081141A4[] = { // - &gUnk_0813AB6C, &gUnk_0813ABBC, &gUnk_0813ABE4, &gUnk_0813ABF8, &gUnk_0813AC0C, &gUnk_0813AC20, - &gUnk_0813AC5C, &gUnk_0813AC70, &gUnk_0813AC84, &gUnk_0813AC98, &gUnk_0813ACAC, &gUnk_0813ACC0, - &gUnk_0813ACD4, &gUnk_0813ACE8, &gUnk_0813AC5C, &gUnk_0813ACFC + &gUnk_0813AB6C, &gUnk_0813ABBC, &gUnk_0813ABE4, &gUnk_0813ABF8, + &gUnk_0813AC0C, &gUnk_0813AC20, &gUnk_0813AC5C, &gUnk_0813AC70, + &gUnk_0813AC84, &gUnk_0813AC98, &gUnk_0813ACAC, &gUnk_0813ACC0, + &gUnk_0813ACD4, &gUnk_0813ACE8, &gUnk_0813AC5C, &gUnk_0813ACFC }; // param_2 for the call to sub_0808091C, same indices as gUnk_081141A4 const u8 gUnk_081141E4[] = { // - 0x02, 0x02, 0x04, 0x04, 0x02, 0x02, 0x09, 0x02, 0x02, 0x04, 0x02, 0x04, 0x04, 0x04, 0x04, 0x02 + 0x02, 0x02, 0x04, 0x04, 0x02, 0x02, 0x09, 0x02, + 0x02, 0x04, 0x02, 0x04, 0x04, 0x04, 0x04, 0x02 }; // tiles that are changed? diff --git a/src/npc/phonograph.c b/src/npc/phonograph.c index 0b26b4db..f2061b41 100644 --- a/src/npc/phonograph.c +++ b/src/npc/phonograph.c @@ -25,9 +25,15 @@ void Phonograph(Entity* this) { ASM_FUNC("asm/non_matching/phonograph/sub_0806E964.inc", void sub_0806E964(Entity* this, ScriptExecutionContext* context)) +#ifdef EU +NAKED void sub_0806EABC(Entity* this, u32 param) { + asm(".incbin \"baserom_eu.gba\", 0x06E4F8, 0x000003C"); // TODOg disassemble +} +#else void sub_0806EABC(Entity* this, u32 param) { sub_08050384(); sub_08057044(param, &gUnk_020227E8, 0x202020); sub_0805F46C(0x3302, &gUnk_081146B8); gScreen.bg.bg0Updated = 1; } +#endif diff --git a/src/npc/stockwell.c b/src/npc/stockwell.c index 17138947..3977a633 100644 --- a/src/npc/stockwell.c +++ b/src/npc/stockwell.c @@ -31,7 +31,9 @@ void sub_08065080(Entity* this) { sub_0805E3A0(this, 2); InitializeAnimation(this, 4); sub_08078778(this); +#ifndef EU sub_08078850(this, 0, 0, &gUnk_0810FDA0); +#endif context = StartCutscene(this, &script_080142B0); *(ScriptExecutionContext**)&this->cutsceneBeh = context; } diff --git a/src/object/fileScreenObjects.c b/src/object/fileScreenObjects.c index de79631a..bff3a5d8 100644 --- a/src/object/fileScreenObjects.c +++ b/src/object/fileScreenObjects.c @@ -139,7 +139,11 @@ static bool32 sub_0808E950(void) { void sub_0808E988(Entity* this) { if (this->action == 0) { this->action = 1; +#ifdef EU + this->spriteIndex = 0x141; +#else this->spriteIndex = 0x142; +#endif this->type2 = 0xFF; sub_080AE008(this, 1, 3); } diff --git a/src/object/itemOnGround.c b/src/object/itemOnGround.c index 493ed137..ee77e759 100644 --- a/src/object/itemOnGround.c +++ b/src/object/itemOnGround.c @@ -270,7 +270,11 @@ void sub_080812A8(Entity* this) { void sub_080812E8(Entity* this) { PlayerState* playerState = &gPlayerState; +#ifdef EU + if ((playerState->swimState & 0x80) && sub_080177A0(this, &gPlayerEntity)) { +#else if ((playerState->swimState & 0x80) && !(playerState->flags.all & 0x80) && sub_080177A0(this, &gPlayerEntity)) { +#endif sub_080810FC(this); } } diff --git a/src/object/objectA2.c b/src/object/objectA2.c index 701a12d5..2cc132fe 100644 --- a/src/object/objectA2.c +++ b/src/object/objectA2.c @@ -44,6 +44,7 @@ void sub_0809F318(Entity* this) { void sub_0809F374(Entity* this) { sub_0806F69C(this); +#ifndef EU if (gUnk_02000000->gameLanguage < 2) { if (sub_080044EC(this, 0x2000) < 2) { this->height.WORD = 0; @@ -54,6 +55,7 @@ void sub_0809F374(Entity* this) { this->actionDelay++; } } else { +#endif switch (sub_080044EC(this, 0x2000)) { default: this->actionDelay++; @@ -67,7 +69,9 @@ void sub_0809F374(Entity* this) { sub_0809F448(this); SoundReq(SFX_186); } +#ifndef EU } +#endif } void sub_0809F3E8(Entity* this) { diff --git a/src/player.c b/src/player.c index 4e634712..21b3c234 100644 --- a/src/player.c +++ b/src/player.c @@ -99,7 +99,9 @@ void PlayerInit(Entity* this) { this->damageType = 0x79; this->hitbox = &gUnk_08114F88; this->spriteIndex = 1; +#ifndef EU gPlayerState.field_0x8 = 0x100; +#endif sub_0806FDA0(this); sub_080AE008(this, 1, 2); InitAnimationForceUpdate(this, 2); diff --git a/src/projectile/projectile13.c b/src/projectile/projectile13.c index 434b3902..092a99bc 100644 --- a/src/projectile/projectile13.c +++ b/src/projectile/projectile13.c @@ -123,6 +123,11 @@ void sub_080A9FD0(Entity* this) { } } +#ifdef EU +NAKED void sub_080AA044(Entity* this) { + asm(".incbin \"baserom_eu.gba\", 0x0A983C, 0x00000C4"); // TODOg disassemble +} +#else void sub_080AA044(Entity* this) { u32 uVar1; s8* tmp; @@ -163,6 +168,7 @@ void sub_080AA044(Entity* this) { } } } +#endif void sub_080AA110(Entity* this) { s32 iVar1; diff --git a/src/projectile/projectile18.c b/src/projectile/projectile18.c index 373126a8..7efec1c5 100644 --- a/src/projectile/projectile18.c +++ b/src/projectile/projectile18.c @@ -154,6 +154,7 @@ void sub_080AAF10(Entity* this) { if (this->type != 0) { this->currentHealth = this->parent->currentHealth; } +#ifndef EU if (this->parent->action == 2) { if ((this->flags & 0x80) != 0) { this->flags &= 0x7f; @@ -163,6 +164,7 @@ void sub_080AAF10(Entity* this) { this->flags |= 0x80; } } +#endif } void sub_080AAF74(Entity* this) { diff --git a/src/projectile/projectile19.c b/src/projectile/projectile19.c index 6106a5d8..8c23bd65 100644 --- a/src/projectile/projectile19.c +++ b/src/projectile/projectile19.c @@ -68,7 +68,9 @@ void sub_080AB26C(Entity* this) { this->action = 1; this->actionDelay = 5; this->frameIndex = 0; +#ifndef EU this->spritePriority.b1 = 0; +#endif } if (--this->actionDelay == 0) { DeleteThisEntity(); diff --git a/src/room.c b/src/room.c index da1bc36d..1b9400e0 100644 --- a/src/room.c +++ b/src/room.c @@ -566,14 +566,18 @@ void sub_0804BAC0(void) { if (!CheckGlobalFlag(LV2_CLEAR)) { LoadRoomEntityList(&gUnk_080D7328); } - #ifdef JP +#ifdef JP if (CheckGlobalFlag(CASTLE_BGM) || CheckGlobalFlag(ENDING)) { - #else +#else +#ifdef EU + if (CheckGlobalFlag(ENDING)) { +#else if (CheckGlobalFlag(CASTLE_BGM)) { - + gArea.pMusicIndex = 0x1b; } else if (CheckGlobalFlag(ENDING)) { - #endif +#endif +#endif gArea.pMusicIndex = gArea.musicIndex; } } @@ -592,6 +596,18 @@ extern EntityData gUnk_080D73B0; extern EntityData gUnk_080D73E0; void sub_0804BB3C(void) { +#ifdef EU + if (CheckGlobalFlag(ENDING)) { + gArea.pMusicIndex = gArea.musicIndex; + } else { + if (!CheckGlobalFlag(LV2_CLEAR)) { + LoadRoomEntityList(&gUnk_080D73B0); + } + if (!CheckGlobalFlag(LV1_CLEAR) && CheckGlobalFlag(TABIDACHI)) { + LoadRoomEntityList(&gUnk_080D73E0); + } + } +#else if (!CheckGlobalFlag(ENDING)) { if (!CheckGlobalFlag(LV2_CLEAR)) { LoadRoomEntityList(&gUnk_080D73B0); @@ -605,6 +621,7 @@ void sub_0804BB3C(void) { } else { gArea.pMusicIndex = gArea.musicIndex; } +#endif } u32 sub_0804BB9C() { @@ -617,9 +634,11 @@ extern EntityData gUnk_080D75D8; extern EntityData gUnk_080D7618; void sub_0804BBA0(void) { +#ifndef EU if (CheckGlobalFlag(CASTLE_BGM)) { gArea.pMusicIndex = gArea.musicIndex; } +#endif if (CheckGlobalFlag(ENDING)) { LoadRoomEntityList(&gUnk_080D7618); @@ -641,21 +660,21 @@ u32 sub_0804BC34() { extern EntityData gUnk_080D7690; void sub_0804bc38(void) { - #ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0x9b)) { - #else +#else if (CheckLocalFlag(0x9c)) { - #endif +#endif LoadRoomEntityList(&gUnk_080D7690); } } u32 sub_0804BC50(void) { - #ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x9e)) { - #else +#else if (!CheckLocalFlag(0x9f)) { - #endif +#endif gScreenTransition.field_0xf = 5; ClearGlobalFlag(ZELDA_CHASE); } @@ -665,16 +684,22 @@ u32 sub_0804BC50(void) { extern u32 script_08009E88; void sub_0804BC70(void) { - #ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x9e)) { - #else +#else if (!CheckLocalFlag(0x9f)) { - #endif +#endif DoFade(5, 0x100); gPlayerEntity.x.HALF.HI = gRoomControls.roomOriginX + 0xb0; gPlayerEntity.y.HALF.HI = gRoomControls.roomOriginY + 0x40; sub_080751E8(0, 6, &script_08009E88); +#ifdef EU + SoundReq(0x80010000); + gArea.musicIndex = gArea.pMusicIndex; } +#else + } + if (!CheckGlobalFlag(TABIDACHI)) { sub_08052878(); #ifndef JP @@ -683,15 +708,16 @@ void sub_0804BC70(void) { } #endif if (CheckGlobalFlag(CASTLE_BGM)) { - #ifdef JP +#ifdef JP gArea.pMusicIndex = gArea.musicIndex; - #else - gArea.pMusicIndex = 0x1b; - #endif +#else + gArea.pMusicIndex = 0x1b; +#endif } #ifndef JP } #endif +#endif } extern ScreenTransitionData gUnk_0813AB80; @@ -1979,7 +2005,7 @@ void sub_0804CAA0(void) { if (CheckGlobalFlag(KUMOTATSUMAKI)) { sub_0809F814(0x6de); } -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0xf0)) { #else if (CheckLocalFlag(0xf3)) { @@ -1988,7 +2014,7 @@ void sub_0804CAA0(void) { } else { LoadRoomEntityList(&gUnk_080DD7E0); } -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0xf2)) { #else if (CheckLocalFlag(0xf5)) { @@ -2005,7 +2031,7 @@ u32 sub_0804CAF4() { void sub_0804CAF8() { sub_080300E8(); -#ifdef JP +#if defined(JP) || defined(EU) SetLocalFlag(0x25); #else SetLocalFlag(0x24); @@ -2033,7 +2059,7 @@ void sub_0804CB14(void) { } void sub_0804CB2C(void) { -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlagByOffset(0x100, 0x28)) { #else if (CheckLocalFlagByOffset(0x100, 0x27)) { @@ -2073,14 +2099,14 @@ extern EntityData gUnk_080DE200; void sub_0804CB7C(void) { sub_080300E8(); -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x31)) { #else if (!CheckLocalFlag(0x30)) { #endif LoadRoomEntityList(&gUnk_080DE1E0); } -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x32)) { #else if (!CheckLocalFlag(0x31)) { @@ -2214,9 +2240,9 @@ u32 sub_0804CD0C() { #ifdef DEMO void nullsub_251() { if (gUnk_02000000->saveFileId != 0 && GetInventoryValue(0x40) == 0) { - SetTileType(0x365,0x349,1); - SetTileType(0x365,0x34a,1); - SetTileType(0x365,0x34b,1); + SetTileType(0x365, 0x349, 1); + SetTileType(0x365, 0x34a, 1); + SetTileType(0x365, 0x34b, 1); } } #else @@ -2351,9 +2377,9 @@ u32 sub_0804CE38() { #ifdef DEMO void nullsub_262() { if (GetInventoryValue(0x41) == 0) { - SetTileType(0x365,0x287,2); - SetTileType(0x365,0x288,2); - SetTileType(0x365,0x289,2); + SetTileType(0x365, 0x287, 2); + SetTileType(0x365, 0x288, 2); + SetTileType(0x365, 0x289, 2); } } #else @@ -4288,9 +4314,9 @@ void LoadHyruleTown(void) { sub_08054570(); TryLoadPrologueHyruleTown(); - #ifndef JP +#if defined(USA) || defined(DEMO) SetTileType(0x176, 0x66b, 1); - #endif +#endif if (gSave.unk8 == 1) { sub_0801D000(0); } else { @@ -4348,7 +4374,7 @@ void LoadHyruleTown(void) { LoadRoomEntityList(&gUnk_080EEA5C); } // rocs cape -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0xcd) && GetInventoryValue(0x14)) { #else if (!CheckLocalFlag(0xd0) && GetInventoryValue(0x14)) { @@ -4490,18 +4516,22 @@ void sub_0804E27C(void) { if (!CheckGlobalFlag(TABIDACHI)) { LoadRoomEntityList(&gUnk_080F0650); +#ifdef EU + gArea.pMusicIndex = 0x10; +#else gArea.pMusicIndex = 0x13; SetGlobalFlag(CASTLE_BGM); } else { if (CheckGlobalFlag(CASTLE_BGM)) { - #ifdef JP - gArea.pMusicIndex = gArea.musicIndex; - #else - gArea.pMusicIndex = 0x1b; - #endif - } - } #ifdef JP + gArea.pMusicIndex = gArea.musicIndex; +#else + gArea.pMusicIndex = 0x1b; +#endif + } +#endif + } +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x9b)) { #else if (!CheckLocalFlag(0x9c)) { @@ -4528,13 +4558,13 @@ void sub_0804E27C(void) { } SetTileType(0x4072, 600, 1); SetTileType(0x4072, 0x298, 1); -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlag(0x11)) { #else if (CheckLocalFlag(0x10)) { #endif LoadRoomEntityList(&gUnk_080F0920); -#ifdef JP +#if defined(JP) || defined(EU) ClearLocalFlag(0x11); #else ClearLocalFlag(0x10); @@ -5127,7 +5157,7 @@ void sub_0804EC00(void) { if (!CheckGlobalFlag(EZERO_1ST)) { LoadRoomEntityList(&gUnk_080F4D50); } -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x3d)) { if (!CheckLocalFlag(0x3a)) { #else @@ -5146,10 +5176,10 @@ void sub_0804EC00(void) { if ((s32)gSave.windcrests > -1) { LoadRoomEntityList(&gUnk_080F4E10); } - #ifdef DEMO - SetTileType(0x177,0x5b4,1); - SetTileType(0x177,0x5f4,1); - #endif +#ifdef DEMO + SetTileType(0x177, 0x5b4, 1); + SetTileType(0x177, 0x5f4, 1); +#endif } void sub_0804EC98(void) { @@ -5183,7 +5213,7 @@ void sub_0804ECEC(void) { // white sword if (GetInventoryValue(0x2)) { LoadRoomEntityList(&gUnk_080F5328); -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x15)) { #else if (!CheckLocalFlag(0x14)) { @@ -5302,10 +5332,12 @@ void sub_0804EEBC(void) { } if (!GetInventoryValue(0xb) && !GetInventoryValue(0xc)) { LoadRoomEntityList(&gUnk_080F5888); +#ifndef EU } else { if (!CheckLocalFlag(0xcd)) { LoadRoomEntityList(&gUnk_080F58A8); } +#endif } } if (GetInventoryValue(0x9) || CheckGlobalFlag(LV3_CLEAR)) { @@ -5335,9 +5367,11 @@ u32 sub_0804EFB8() { extern EntityData gUnk_080F5B3C; void sub_0804EFBC(void) { +#ifndef EU if (GetInventoryValue(0x38) == 1) { LoadRoomEntityList(&gUnk_080F5B3C); } +#endif } u32 sub_0804EFD4() { @@ -5372,7 +5406,7 @@ u32 sub_0804F02C() { extern EntityData gUnk_080F5E68; void sub_0804F030(void) { -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlagByOffset(0x100, 0xce)) { #else if (!CheckLocalFlagByOffset(0x100, 0xd1)) { @@ -5416,7 +5450,7 @@ void nullsub_400() { } u32 sub_0804F09C(void) { -#ifdef JP +#if defined(JP) || defined(EU) if (CheckGlobalFlag(KUMOTATSUMAKI) && CheckLocalFlagByOffset(0x100, 0xd9)) { #else if (CheckGlobalFlag(KUMOTATSUMAKI) && CheckLocalFlagByOffset(0x100, 0xdc)) { @@ -5429,7 +5463,7 @@ u32 sub_0804F09C(void) { extern EntityData gUnk_080F61BC; void sub_0804F0C0(void) { -#ifdef JP +#if defined(JP) || defined(EU) if (CheckLocalFlagByOffset(0x100, 0xd9)) { #else if (CheckLocalFlagByOffset(0x100, 0xdc)) { @@ -5498,7 +5532,9 @@ void sub_0804F190(void) { LoadRoomEntityList(&gUnk_080F66AC); } sub_08052CA4(8, 0, 0x1e8, 0x158); +#ifndef EU gArea.areaMetadata |= 0x80; +#endif } u32 sub_0804F1DC() { @@ -5580,7 +5616,7 @@ void sub_0804F230() { } u32 sub_0804F23C(void) { -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x6b)) { #else if (!CheckLocalFlag(0x6d)) { @@ -5597,7 +5633,7 @@ extern EntityData gUnk_080F7088; void sub_0804F25C(void) { sub_0805ADD8(0); -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x6b)) { #else if (!CheckLocalFlag(0x6d)) { @@ -5707,7 +5743,7 @@ u32 Vars_HyruleField_OutsideCastle(void) { gRoomVars.field_0x6c = &gUnk_080F7CD0; gRoomVars.field_0x88 = sub_0804F5E8; } -#ifdef JP +#if defined(JP) || defined(EU) if (CheckGlobalFlag(LV2_CLEAR) && GetInventoryValue(0x3) && !CheckLocalFlag(0x8a)) { #else if (CheckGlobalFlag(LV2_CLEAR) && GetInventoryValue(0x3) && !CheckLocalFlag(0x8c)) { @@ -5716,9 +5752,11 @@ u32 Vars_HyruleField_OutsideCastle(void) { gRoomVars.field_0x88 = sub_0804F4E4; gRoomVars.field_0x74 = NULL; } +#ifndef EU if (CheckGlobalFlag(TABIDACHI)) { ClearGlobalFlag(CASTLE_BGM); } +#endif return 1; } @@ -5731,7 +5769,7 @@ extern EntityData gUnk_080F7D70; void Load_HyruleField_OutsideCastle(void) { sub_0804F4E4(); -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x89)) { #else if (!CheckLocalFlag(0x8b)) { @@ -5744,14 +5782,18 @@ void Load_HyruleField_OutsideCastle(void) { SetTileType(0x174, 0x7a7, 1); } if (!CheckGlobalFlag(TABIDACHI)) { +#ifdef EU + gArea.pMusicIndex = 0x10; +#else gArea.pMusicIndex = 0x13; +#endif } } extern EntityData gUnk_080F7DC0; void sub_0804F578(void) { -#ifdef JP +#if defined(JP) || defined(EU) if (!CheckLocalFlag(0x8c)) { #else if (!CheckLocalFlag(0x8e)) { @@ -5923,7 +5965,7 @@ extern EntityData gUnk_080F82E0; void Load_HyruleField_TrilbyHighlands(void) { sub_0805ADD8(0); -#ifdef JP +#if defined(JP) || defined(EU) if (CheckGlobalFlag(LV2_CLEAR) && GetInventoryValue(0x3) && !CheckLocalFlag(0x9b)) { #else if (CheckGlobalFlag(LV2_CLEAR) && GetInventoryValue(0x3) && !CheckLocalFlag(0x9c)) { @@ -6579,9 +6621,9 @@ u32 sub_0804FED4() { } void sub_0804FED8(void) { - #ifndef JP +#if defined(USA) || defined(DEMO) SetTileType(0x176, 0x66f, 1); - #endif +#endif } u32 sub_0804FEEC() { diff --git a/src/save.c b/src/save.c index 0d20e003..04495ae3 100644 --- a/src/save.c +++ b/src/save.c @@ -46,17 +46,16 @@ const char gUnk_0811E470[4] = "LINK"; #ifdef DEMO const u8 unknown[] = { 0x0, 0x0f, 0x0a, 0x0a, 0x0f, 0x0f, 0x0f, 0x08, 0x05, 0x05, 0x00, 0x00 }; #else -const u8 padding[2] = {0,0}; +const u8 padding[2] = { 0, 0 }; #endif static SaveResult (*const sSaveHandlers[])(u32) = { HandleSaveInit, HandleSaveInProgress, HandleSaveDone }; - #ifdef DEMO -asm(".incbin \"baserom_demo.gba\", 0x11e010, 0xf0c"); // TODO +asm(".incbin \"baserom_demo.gba\", 0x11e010, 0xf0c"); // TODO disassemble #else -#ifdef JP +#if defined(JP) || defined(EU) static const char sSignatureLong[32] = "AGBZELDA:THE MINISH CAP:ZELDA 3"; #else static const char sSignatureLong[32] = "AGBZELDA:THE MINISH CAP:ZELDA 5"; @@ -137,11 +136,10 @@ SaveResult HandleSaveDone(u32 arg0) { return result; } - u32 InitSaveData(void) { #ifdef DEMO - CpuSet(NULL,&gSave,0x4b4); - return 1; + CpuSet(NULL, &gSave, 0x4b4); + return 1; #else const SaveFileEEPROMAddresses* eepromAddresses; u32 error; @@ -171,66 +169,63 @@ u32 InitSaveData(void) { } u32 WriteSaveFile(u32 index, SaveFile* saveFile) { - #ifdef DEMO +#ifdef DEMO return 1; - #else +#else return DataDoubleWriteWithStatus(index, saveFile); - #endif +#endif } u32 Write_02000000(struct_02000000* arg0) { - #ifdef DEMO +#ifdef DEMO return 1; - #else +#else return DataDoubleWriteWithStatus(3, arg0); - #endif +#endif } u32 sub_0807CF1C(u8* arg0) { - #ifdef DEMO +#ifdef DEMO return 1; - #else +#else return DataDoubleWriteWithStatus(5, arg0); - #endif +#endif } s32 ReadSaveFile(u32 index, SaveFile* saveFile) { - #ifdef DEMO +#ifdef DEMO return 1; - #else +#else return DataDoubleReadWithStatus(index, saveFile); - #endif +#endif } u32 Read_02000000(struct_02000000* arg0) { - #ifdef DEMO +#ifdef DEMO return 0; - #else +#else return DataDoubleReadWithStatus(3, arg0); - #endif +#endif } u32 sub_0807CF3C(u8* arg0) { - #ifdef DEMO +#ifdef DEMO return 0; - #else +#else return DataDoubleReadWithStatus(5, arg0); - #endif +#endif } - - void SetFileStatusDeleted(u32 index) { - #ifndef DEMO +#ifndef DEMO const SaveFileEEPROMAddresses* eepromAddresses; eepromAddresses = GetSaveFileEEPROMAddresses(index); WriteSaveFileStatus(eepromAddresses->checksum2, &sSaveDescDeleted); WriteSaveFileStatus(eepromAddresses->checksum1, &sSaveDescDeleted); - #endif +#endif } - #ifndef DEMO void SetFileStatusInit(u32 index) { const SaveFileEEPROMAddresses* eepromAddresses; @@ -457,4 +452,4 @@ bool32 DataCompare(u32 address, const void* data, u32 size) { } return TRUE; } -#endif \ No newline at end of file +#endif diff --git a/src/sub_080A3B84.c b/src/sub_080A3B84.c index af806c36..c20cc780 100644 --- a/src/sub_080A3B84.c +++ b/src/sub_080A3B84.c @@ -7,7 +7,7 @@ extern void (*const gUnk_081280C4[])(); void DrawKinstoneMenu(void) { - #ifndef DEMO +#ifndef DEMO gScreenTransition.field_0x24[8] = 2; FlushSprites(); gUnk_081280C4[gMenu.menuType](); @@ -19,7 +19,7 @@ void DrawKinstoneMenu(void) { sub_080AD9B0(); sub_080AD918(); gScreenTransition.field_0x24[8] = 0; - #endif +#endif } extern void gUnk_081280DC; diff --git a/src/textbox.c b/src/textbox.c index abbdc744..676d6857 100644 --- a/src/textbox.c +++ b/src/textbox.c @@ -475,6 +475,13 @@ void sub_080569C4(CurrentTextBox* ctb, u32 unk) { extern u8 gUnk_08107C14; extern u8 gUnk_08107C0F; + +#ifdef EU +NAKED void TextBoxHandlerQuestion(CurrentTextBox* ctb) { + asm(".incbin \"baserom_eu.gba\", 0x05654c, 0x138"); // TODO disassemble +} +#else + void TextBoxHandlerQuestion(CurrentTextBox* ctb) { s32 r1, r5, r6; u32 error; @@ -540,6 +547,8 @@ void sub_08056ABC(u32 unk_0, u32 unk_1) { gCurrentTextBox._9d = 1; } +#endif + void TextBoxHandlerNextBox(CurrentTextBox* ctb) { u32 t; u8* ptr; From 6f54607fbf58ccb5eae56329c4dd1226680adc88 Mon Sep 17 00:00:00 2001 From: Ibot02 Date: Tue, 22 Jun 2021 00:07:15 +0200 Subject: [PATCH 04/11] Make now preprocesses linker file --- Makefile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 5ead5eee..18910b78 100644 --- a/Makefile +++ b/Makefile @@ -225,8 +225,11 @@ $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s $$(data_dep) $(SONG_BUILDDIR)/%.o: $(SONG_SUBDIR)/%.s $(AS) $(ASFLAGS) -I sound -o $@ $< -$(ELF): $(OBJS) $(LINKER_FILE) - cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -n -T ../../$(LINKER_FILE) -o ../../$@ $(LIB) +$(OBJ_DIR)/linker.ld: linker.ld + $(CPP) $(CPPFLAGS) -x c linker.ld | grep -v '^#' >$(OBJ_DIR)/linker.ld + +$(ELF): $(OBJS) $(OBJ_DIR)/linker.ld + cd $(OBJ_DIR) && $(LD) $(LDFLAGS) -n -T linker.ld -o ../../$@ $(LIB) $(FIX) $@ -t"$(TITLE)" -c$(GAME_CODE) -m$(MAKER_CODE) -r$(REVISION) --silent $(ROM): $(ELF) @@ -235,4 +238,4 @@ $(ROM): $(ELF) usa: ; @$(MAKE) GAME_VERSION=USA demo: ; @$(MAKE) GAME_VERSION=DEMO jp: ; @$(MAKE) GAME_VERSION=JP -eu: ; @$(MAKE) GAME_VERSION=EU \ No newline at end of file +eu: ; @$(MAKE) GAME_VERSION=EU From cc4c42c54edb81784b2f2b3d03e54775236cefa3 Mon Sep 17 00:00:00 2001 From: octorock <79596758+octorock@users.noreply.github.com> Date: Tue, 22 Jun 2021 00:39:03 +0200 Subject: [PATCH 05/11] Use ifdefs in linker file --- Makefile | 3 - asm/bossDoor.s | 16 - asm/code_080AD90C.s | 4 - asm/intr.s | 4 - asm/object3A.s | 4 - linker.ld | 22 +- linker_EU.ld | 1731 --------------------------------- src/audio.c | 41 - src/code_0805F9A0.c | 30 - src/enemy/bombPeahat.c | 2 +- src/main.c | 8 - src/manager/manager4.c | 2 +- src/manager/manager7.c | 4 +- src/npc/phonograph.c | 2 +- src/projectile/projectile13.c | 2 +- 15 files changed, 23 insertions(+), 1852 deletions(-) delete mode 100644 linker_EU.ld diff --git a/Makefile b/Makefile index 18910b78..fbf922d0 100644 --- a/Makefile +++ b/Makefile @@ -12,8 +12,6 @@ GAME_LANGUAGE := ENGLISH TITLE := GBAZELDA MC MAKER_CODE := 01 -LINKER_FILE = linker.ld - ifeq ($(GAME_VERSION), USA) GAME_CODE := BZME BUILD_NAME := tmc @@ -30,7 +28,6 @@ else ifeq ($(GAME_VERSION), EU) GAME_CODE := BZMP BUILD_NAME := tmc_eu -LINKER_FILE := linker_EU.ld else $(error unknown version $(GAME_VERSION)) endif diff --git a/asm/bossDoor.s b/asm/bossDoor.s index 9e68f193..408d22b4 100644 --- a/asm/bossDoor.s +++ b/asm/bossDoor.s @@ -591,11 +591,7 @@ sub_0808C650: @ 0x0808C650 movs r0, #0 b _0808C674 .align 2, 0 -.ifdef DEMO -_0808C66C: .4byte gUnk_02036BB0 -.else _0808C66C: .4byte gUnk_02036BB8 -.endif _0808C670: ldr r1, _0808C678 @ =gUnk_02036BB8 movs r0, #1 @@ -603,11 +599,7 @@ _0808C674: str r0, [r1] pop {r4, pc} .align 2, 0 -.ifdef DEMO -_0808C678: .4byte gUnk_02036BB0 -.else _0808C678: .4byte gUnk_02036BB8 -.endif thumb_func_start sub_0808C67C sub_0808C67C: @ 0x0808C67C @@ -615,11 +607,7 @@ sub_0808C67C: @ 0x0808C67C ldr r0, [r0] bx lr .align 2, 0 -.ifdef DEMO -_0808C684: .4byte gUnk_02036BB0 -.else _0808C684: .4byte gUnk_02036BB8 -.endif thumb_func_start sub_0808C688 sub_0808C688: @ 0x0808C688 @@ -630,8 +618,4 @@ sub_0808C688: @ 0x0808C688 str r0, [r1] pop {pc} .align 2, 0 -.ifdef DEMO -_0808C698: .4byte gUnk_02036BB0 -.else _0808C698: .4byte gUnk_02036BB8 -.endif diff --git a/asm/code_080AD90C.s b/asm/code_080AD90C.s index cca9bf3e..2a3a1036 100644 --- a/asm/code_080AD90C.s +++ b/asm/code_080AD90C.s @@ -140,11 +140,7 @@ sub_080ADA04: @ 0x080ADA04 bl _call_via_r2 pop {pc} .align 2, 0 -.ifdef EU -_080ADA10: .4byte gUnk_030065C8 -.else _080ADA10: .4byte gUnk_0300659C -.endif thumb_func_start sub_080ADA14 sub_080ADA14: @ 0x080ADA14 diff --git a/asm/intr.s b/asm/intr.s index 3723ee2e..aea16317 100644 --- a/asm/intr.s +++ b/asm/intr.s @@ -590,11 +590,7 @@ _080B20E0: b _080B20E0 .align 2, 0 _080B20E4: .4byte 0x0000208C -.ifdef EU -_080B20E8: .4byte gUnk_030069AC -.else _080B20E8: .4byte gUnk_030067E4 -.endif arm_func_start sub_080B20EC sub_080B20EC: @ 0x080B20EC diff --git a/asm/object3A.s b/asm/object3A.s index 859edc8b..a884af27 100644 --- a/asm/object3A.s +++ b/asm/object3A.s @@ -223,11 +223,7 @@ _0808C828: bl sub_0801E49C pop {r4, r5, r6, pc} .align 2, 0 -.ifdef DEMO -_0808C83C: .4byte gUnk_02036BB0 -.else _0808C83C: .4byte gUnk_02036BB8 -.endif thumb_func_start sub_0808C840 sub_0808C840: @ 0x0808C840 diff --git a/linker.ld b/linker.ld index bdb25db7..7de90bc8 100644 --- a/linker.ld +++ b/linker.ld @@ -151,17 +151,20 @@ SECTIONS { . = 0x000369F0; gUnk_020369F0 = .; . = 0x00036A38; gCurrentWindow = .; . = 0x00036A40; gNewWindow = .; +#ifdef DEMO + . = 0x00036A50; gUnk_02036A58 = .; + . = 0x00036AD0; gUnk_02036AD8 = .; + . = 0x00036BB0; gUnk_02036BB8 = .; + . = 0x00036BB8; gMPlayTracks = .; + . = 0x00038558; gUnk_02038560 = .; +#else . = 0x00036A50; gEEPROMConfig = .; - . = 0x00036A50; gUnk_02036A50 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00036A58; gUnk_02036A58 = .; - . = 0x00036AD0; gUnk_02036AD0 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00036AD8; gUnk_02036AD8 = .; - . = 0x00036BB0; gUnk_02036BB0 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00036BB8; gUnk_02036BB8 = .; - . = 0x00036BB8; gMPlayTracksDEMO = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00036BC0; gMPlayTracks = .; - . = 0x00038558; gUnk_02038558 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ . = 0x00038560; gUnk_02038560 = .; +#endif . = 0x00040000; } >ewram @@ -277,12 +280,21 @@ SECTIONS { . = 0x00005FF0; gUnk_03005FF0 = .; . = 0x000060F0; gUnk_030060F0 = .; . = 0x00006164; gUnk_03006164 = .; +#ifdef EU + . = 0x000065AC; gUnk_03006580 = .; + . = 0x000065C8; gUnk_0300659C = .; + . = 0x000069AC; gUnk_030067E4 = .; + . = 0x00006A94; gUnk_030068CC = .; + . = 0x00006B14; gUnk_0300694C = .; + . = 0x00006B24; gUnk_0300695C = .; +#else . = 0x00006580; gUnk_03006580 = .; . = 0x0000659C; gUnk_0300659C = .; . = 0x000067E4; gUnk_030067E4 = .; . = 0x000068CC; gUnk_030068CC = .; . = 0x0000694C; gUnk_0300694C = .; . = 0x0000695C; gUnk_0300695C = .; +#endif . = 0x00007F00; gUnk_03007F00 = .; . = 0x00007FA0; gUnk_03007FA0 = .; . = 0x00007FFA; gUnk_03007FFA = .; diff --git a/linker_EU.ld b/linker_EU.ld deleted file mode 100644 index 7a93664b..00000000 --- a/linker_EU.ld +++ /dev/null @@ -1,1731 +0,0 @@ -ENTRY(__start) - -gNumMusicPlayers = 0x20; -gMaxLines = 0; - -MEMORY { - ewram (w!x) : ORIGIN = 0x02000000, LENGTH = 256K - iwram (w!x) : ORIGIN = 0x03000000, LENGTH = 32K - rom (rx) : ORIGIN = 0x08000000, LENGTH = 32M -} - -SECTIONS { - ewram (NOLOAD) : ALIGN(4) { - . = 0x00000006; gUnk_02000006 = .; - . = 0x00000010; gUnk_02000010 = .; - . = 0x00000020; gUnk_02000020 = .; - . = 0x00000030; gUnk_02000030 = .; - . = 0x00000040; gUnk_02000040 = .; - . = 0x00000050; gTextBox = .; - . = 0x0000005C; gUnk_0200005C = .; - . = 0x00000070; gUnk_02000070 = .; - . = 0x00000080; gMenu = .; - . = 0x00000080; gIntroState = .; - . = 0x00000080; gChooseFileState = .; - . = 0x00000090; gUnk_02000090 = .; - . = 0x000000B0; gUnk_020000B0 = .; - . = 0x000000C0; gUnk_020000C0 = .; - . = 0x00000CC0; gUnk_02000CC0 = .; - . = 0x00000D00; gUnk_02000D00 = .; - . = 0x00001A00; gUnk_02001A00 = .; - . = 0x00001A3C; gUnk_02001A3C = .; - . = 0x00001A40; gBG3Buffer = .; - . = 0x00001B40; gUnk_02001B40 = .; - . = 0x00002A40; gSave = .; - . = 0x00002AA0; gUnk_02002AA0 = .; - . = 0x00002AC0; gUnk_02002AC0 = .; - . = 0x00002AC8; gUnk_02002AC8 = .; - . = 0x00002AE8; gStats = .; - . = 0x00002B0E; gUnk_02002B0E = .; - . = 0x00002B32; gUnk_02002B32 = .; - . = 0x00002B54; gUnk_02002B54 = .; - . = 0x00002B58; gUnk_02002B58 = .; - . = 0x00002B6B; gUnk_02002B6B = .; - . = 0x00002C01; gUnk_02002C01 = .; - . = 0x00002C81; gUnk_02002C81 = .; - . = 0x00002C8E; gUnk_02002C8E = .; - . = 0x00002C9C; gGlobalFlags = .; - . = 0x00002E9C; gUnk_02002E9C = .; - . = 0x00002ECC; gUnk_02002ECC = .; - . = 0x00002F00; gMapDataTopSpecial = .; - . = 0x00006F00; gUnk_02006F00 = .; - . = 0x0000AF00; gUnk_0200AF00 = .; - . = 0x0000AF13; gUnk_0200AF13 = .; - . = 0x0000AF34; gUnk_0200AF34 = .; - . = 0x0000B240; gUnk_0200B240 = .; - . = 0x0000B640; gUnk_0200B640 = .; - . = 0x0000B644; gUsedPalettes = .; - . = 0x0000B650; gUnk_0200B650 = .; - . = 0x0000B654; gMapDataTop = .; - . = 0x0000D654; gUnk_0200D654 = .; - . = 0x0000E654; gUnk_0200E654 = .; - . = 0x00010654; gMetatileTypesTop = .; - . = 0x00011654; gUnk_02011654 = .; - . = 0x00012654; gMetatilesTop = .; - . = 0x00016654; gUnk_02016654 = .; - . = 0x00017654; gUnk_02017654 = .; - . = 0x00017660; gUnk_02017660 = .; - . = 0x000176A0; gPaletteBuffer = .; - . = 0x000176E0; gUnk_020176E0 = .; - . = 0x00017700; gUnk_02017700 = .; - . = 0x00017830; gUnk_02017830 = .; - . = 0x000178E0; gUnk_020178E0 = .; - . = 0x00017AA0; gUnk_02017AA0 = .; - . = 0x00017BA0; gUnk_02017BA0 = .; - . = 0x00018EA0; gUnk_02018EA0 = .; - . = 0x00018EB0; gUnk_02018EB0 = .; - . = 0x00018EE0; gUnk_02018EE0 = .; - . = 0x00019EE0; gUnk_02019EE0 = .; - . = 0x00019F6C; gUnk_02019F6C = .; - . = 0x0001AEE0; gUnk_0201AEE0 = .; - . = 0x00021EE0; gSoundPlayingInfo = .; - . = 0x00021F00; gUnk_02021F00 = .; - . = 0x00021F20; gUnk_02021F20 = .; - . = 0x00021F30; gBG1Buffer = .; - . = 0x00021F70; gUnk_02021F70 = .; - . = 0x00022030; gUnk_02022030 = .; - . = 0x00022130; gUnk_02022130 = .; - . = 0x00022730; gUnk_02022730 = .; - . = 0x00022740; gUnk_02022740 = .; - . = 0x00022750; gPlayerScriptExecutionContext = .; - . = 0x00022780; gCurrentTextBox = .; - . = 0x000227DC; gUnk_020227DC = .; - . = 0x000227E8; gUnk_020227E8 = .; - . = 0x000227F0; gUnk_020227F0 = .; - . = 0x000227F8; gUnk_020227F8 = .; - . = 0x00022800; gUnk_02022800 = .; - . = 0x0002281E; gUnk_0202281E = .; - . = 0x00022830; gUnk_02022830 = .; - . = 0x00024030; gUnk_02024030 = .; - . = 0x00024048; gUnk_02024048 = .; - . = 0x00024050; gUnk_02024050 = .; - . = 0x00024090; gUnk_02024090 = .; - . = 0x00024490; gUnk_02024490 = .; - . = 0x00024494; gUnk_02024494 = .; - . = 0x000246B0; gUnk_020246B0 = .; - . = 0x00025EB0; gUnk_02025EB0 = .; - . = 0x00025EB4; gMapDataBottom = .; - . = 0x00027EB4; gUnk_02027EB4 = .; - . = 0x00028EB4; gUnk_02028EB4 = .; - . = 0x0002AEB4; gMetatileTypesBottom = .; - . = 0x0002BEB4; gUnk_0202BEB4 = .; - . = 0x0002CEB4; gMetatilesBottom = .; - . = 0x00030EB4; gUnk_02030EB4 = .; - . = 0x00031EC0; gUnk_02031EC0 = .; - . = 0x00032EC0; gUnk_02032EC0 = .; - . = 0x00032EDC; gUnk_02032EDC = .; - . = 0x00032F14; gUnk_02032F14 = .; - . = 0x00033280; gActiveScriptInfo = .; - . = 0x00033290; gUnk_02033290 = .; - . = 0x00033A90; gArea = .; - . = 0x00033AB8; gUnk_02033AB8 = .; - . = 0x00033ACC; gUnk_02033ACC = .; - . = 0x000342CC; gUnk_020342CC = .; - . = 0x000342F8; gUnk_020342F8 = .; - . = 0x00034330; gUnk_02034330 = .; - . = 0x00034350; gRoomVars = .; - . = 0x00034364; gRoomFlags = .; - . = 0x00034398; gUnk_02034398 = .; - . = 0x00034480; gUnk_02034480 = .; - . = 0x00034490; gUnk_02034490 = .; - . = 0x00034492; gUnk_02034492 = .; - . = 0x000344A0; gUnk_020344A0 = .; - . = 0x000344B0; gBG2Buffer = .; - . = 0x000344F0; gUnk_020344F0 = .; - . = 0x00034CB0; gBG0Buffer = .; - . = 0x00034CB2; gUnk_02034CB2 = .; - . = 0x00034CF0; gUnk_02034CF0 = .; - . = 0x00034D30; gUnk_02034D30 = .; - . = 0x00034DF0; gUnk_02034DF0 = .; - . = 0x000350E2; gUnk_020350E2 = .; - . = 0x000350F0; gUnk_020350F0 = .; - . = 0x00035160; gUnk_02035160 = .; - . = 0x000354B0; gUnk_020354B0 = .; - . = 0x000354B4; gManagerCount = .; - . = 0x000354C0; gUnk_020354C0 = .; - . = 0x0003553E; gUnk_0203553E = .; - . = 0x00035540; gzHeap = .; - . = 0x00035542; gUnk_02035542 = .; - . = 0x00036540; gUnk_02036540 = .; - . = 0x00036570; gScriptExecutionContextArray = .; - . = 0x000369F0; gUnk_020369F0 = .; - . = 0x00036A38; gCurrentWindow = .; - . = 0x00036A40; gNewWindow = .; - . = 0x00036A50; gEEPROMConfig = .; - . = 0x00036A50; gUnk_02036A50 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ - . = 0x00036A58; gUnk_02036A58 = .; - . = 0x00036AD0; gUnk_02036AD0 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ - . = 0x00036AD8; gUnk_02036AD8 = .; - . = 0x00036BB0; gUnk_02036BB0 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ - . = 0x00036BB8; gUnk_02036BB8 = .; - . = 0x00036BB8; gMPlayTracksDEMO = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ - . = 0x00036BC0; gMPlayTracks = .; - . = 0x00038558; gUnk_02038558 = .; /* DEMO is 8 bytes earlier due to missing eeprom*/ - . = 0x00038560; gUnk_02038560 = .; - . = 0x00040000; - } >ewram - - iwram (NOLOAD) : ALIGN(4) { - . = 0x00000000; gUnk_03000000 = .; - . = 0x00000020; gUnk_03000020 = .; - . = 0x00000420; gUnk_03000420 = .; - . = 0x00000B80; gUnk_03000B80 = .; - . = 0x00000BD4; gUnk_03000BD4 = .; - . = 0x00000BF0; gRoomControls = .; - . = 0x00000BF6; gUnk_03000BF6 = .; - . = 0x00000BF8; gUnk_03000BF8 = .; - . = 0x00000C24; gUnk_03000C24 = .; - . = 0x00000C30; gUnk_03000C30 = .; - . = 0x00000E10; gUnk_03000E10 = .; - . = 0x00000F50; gScreen = .; - . = 0x00000F58; gBG0Settings = .; - . = 0x00000F64; gBG1Settings = .; - . = 0x00000F70; gBGAffSettings = .; - . = 0x00000F88; gBgControls = .; - . = 0x00000FBC; gUnk_03000FBC = .; - . = 0x00000FD0; gFadeControl = .; - . = 0x00000FF0; gInput = .; - . = 0x00001000; gMain = .; - . = 0x00001010; gOamCmd = .; - . = 0x00001020; gUnk_03001020 = .; - . = 0x000010A0; gScreenTransition = .; - . = 0x000010AC; gUnk_030010AC = .; - . = 0x000010EC; gUnk_030010EC = .; - . = 0x0000110C; gUnk_0300110C = .; - . = 0x00001150; gRand = .; - . = 0x00001160; gPlayerEntity = .; - . = 0x00001198; gUnk_03001198 = .; - . = 0x000011E8; gUnk_030011E8 = .; - . = 0x000015A0; gUnk_030015A0 = .; - . = 0x00003BE0; gUnk_03003BE0 = .; - . = 0x00003C70; gUnk_03003C70 = .; - . = 0x00003D68; gUnk_03003D68 = .; - . = 0x00003D70; gEntityLists = .; - . = 0x00003D80; gUnk_03003D80 = .; - . = 0x00003D90; gUnk_03003D90 = .; - . = 0x00003DA0; gUnk_03003DA0 = .; - . = 0x00003DA8; gUnk_03003DA8 = .; - . = 0x00003DB0; gUnk_03003DB0 = .; - . = 0x00003DB8; gHitboxCount = .; - . = 0x00003DBC; gEntCount = .; - . = 0x00003DC0; gUnk_03003DC0 = .; - . = 0x00003DD0; gUnk_03003DD0 = .; - . = 0x00003DE0; gUnk_03003DE0 = .; - . = 0x00003DE4; gUnk_03003DE4 = .; - . = 0x00003DF0; gUnk_03003DF0 = .; - . = 0x00003DF8; gUnk_03003DF8 = .; - . = 0x00003F80; gPlayerState = .; - . = 0x00003FC0; gUnk_03003FC0 = .; - . = 0x00004010; gUnk_03004010 = .; - . = 0x00004020; gUnk_03004020 = .; - . = 0x00004030; gUnk_03004030 = .; - . = 0x00004040; gUnk_03004040 = .; - . = 0x0000404C; SoundMainRAM_Buffer = .; - . = 0x0000404D; gUnk_0300404D = .; - . = 0x000043D0; gSoundInfo = .; - . = 0x00004D50; gMPlayJumpTable = .; - . = 0x00004D54; gUnk_03004D54 = .; - . = 0x00004DD8; gUnk_03004DD8 = .; - . = 0x00004DDC; gUnk_03004DDC = .; - . = 0x00004DE0; gCgbChans = .; - . = 0x00004EE0; gMPlayInfos = .; - . = 0x000055E0; gMPlayMemAccArea = .; - . = 0x000055F0; gMPlayInfos2 = .; - . = 0x000056F0; gUnk_030056F0 = .; - . = 0x000056F1; gUnk_030056F1 = .; - . = 0x00005740; gUnk_03005740 = .; - . = 0x0000574C; gUnk_0300574C = .; - . = 0x00005760; gUnk_03005760 = .; - . = 0x00005770; gUnk_03005770 = .; - . = 0x00005778; gUnk_03005778 = .; - . = 0x00005780; gUnk_03005780 = .; - . = 0x0000579C; gUnk_0300579C = .; - . = 0x000057A8; gUnk_030057A8 = .; - . = 0x000057BC; gUnk_030057BC = .; - . = 0x000057CC; gUnk_030057CC = .; - . = 0x000057D4; gUnk_030057D4 = .; - . = 0x00005800; gUnk_03005800 = .; - . = 0x0000581C; gUnk_0300581C = .; - . = 0x00005828; gUnk_03005828 = .; - . = 0x0000583C; gUnk_0300583C = .; - . = 0x0000584C; gUnk_0300584C = .; - . = 0x00005854; gUnk_03005854 = .; - . = 0x00005864; gUnk_03005864 = .; - . = 0x00005880; gUnk_03005880 = .; - . = 0x0000588C; gUnk_0300588C = .; - . = 0x000058A0; gUnk_030058A0 = .; - . = 0x000058B0; gUnk_030058B0 = .; - . = 0x000058B8; gUnk_030058B8 = .; - . = 0x000058C8; gUnk_030058C8 = .; - . = 0x000058DC; gUnk_030058DC = .; - . = 0x000058F8; gUnk_030058F8 = .; - . = 0x00005918; gUnk_03005918 = .; - . = 0x000059F0; gDoCollision = .; - . = 0x00005CA4; gUnk_03005CA4 = .; - . = 0x00005CD0; gUnk_03005CD0 = .; - . = 0x00005CFC; gUnk_03005CFC = .; - . = 0x00005D18; gUnk_03005D18 = .; - . = 0x00005D24; gUnk_03005D24 = .; - . = 0x00005D58; gUnk_03005D58 = .; - . = 0x00005D5C; gUnk_03005D5C = .; - . = 0x00005D90; IntrMain = .; - . = 0x00005E60; gUnk_03005E60 = .; - . = 0x00005E98; gUnk_03005E98 = .; - . = 0x00005F24; _EntUpdate = .; - . = 0x00005F40; gUnk_03005F40 = .; - . = 0x00005FBC; gUnk_03005FBC = .; - . = 0x00005FF0; gUnk_03005FF0 = .; - . = 0x000060F0; gUnk_030060F0 = .; - . = 0x00006164; gUnk_03006164 = .; - . = 0x0000659C; gUnk_0300659C = .; - . = 0x000065AC; gUnk_03006580 = .; - . = 0x000065C8; gUnk_030065C8 = .; /* TODO EU for gUnk_0300659C? */ - . = 0x000067E4; gUnk_030067E4 = .; - . = 0x000069AC; gUnk_030069AC = .;/* TODO EU for gUnk_030067E4*/ - . = 0x00006A94; gUnk_030068CC = .; - . = 0x00006B14; gUnk_0300694C = .; - . = 0x00006B24; gUnk_0300695C = .; - . = 0x00007F00; gUnk_03007F00 = .; - . = 0x00007FA0; gUnk_03007FA0 = .; - . = 0x00007FFA; gUnk_03007FFA = .; - . = 0x00008000; - } >iwram - - rom : ALIGN(2) { - - /* handwritten assembly */ - asm/crt0.o(.text); - asm/code_08000108.o(.text); - data/data_08000360.o(.rodata); - asm/code_08000E44.o(.text); - asm/libgcc.o(.text); - asm/code_08000F10.o(.text); - data/data_08000F54.o(.rodata); - asm/code_080011C4.o(.text); - data/data_080029B4.o(.rodata); - asm/code_08003FC4.o(.text); - asm/code_080043E8.o(.text); - data/data_08007DF4.o(.rodata); - asm/code_0800857C.o(.text); - /* scripts */ - data/scripts.o(.text); - asm/code_08016984.o(.text); - asm/sub_08016AE4.o(.text); - - - /* C source compiled with interworking */ - asm/code_08016B30.o(.text); - asm/updateBackgroundRegisters.o(.text); - src/arm_proxy.o(.text); - asm/code_08016DF8.o(.text); - /* C source compiled without interworking */ - asm/code_08018500.o(.text); - src/code_08018C58.o(.text); - src/playerItem/playerItem11.o(.text); - asm/playerItem11.o(.text); - src/playerItem/playerItemBow.o(.text); - asm/playerItem/playerItemBow.o(.text); - asm/playerItem/playerItemSwordBeam.o(.text); - asm/code_0801967C.o(.text); - asm/playerItem/playerItemBomb.o(.text); - asm/playerItem/playerItem3.o(.text); - asm/playerItem/playerItemC.o(.text); - asm/playerItem/playerItemSwordSpin.o(.text); - asm/playerItemCellOverwriteSet.o(.text); - asm/code_0801C1D4.o(.text); - asm/drawUI.o(.text); - asm/code_0801C370.o(.text); - asm/drawRupees.o(.text); - asm/code_0801C5E0.o(.text); - asm/drawHealth.o(.text); - asm/sub_0801C824.o(.text); - asm/code_0801C85C.o(.text); - src/ezloNag.o(.text); - asm/code_0801CEC0.o(.text); - src/utils.o(.text); - asm/code_0801D79C.o(.text); - /* enemies */ - src/enemy/octorok.o(.text); - src/enemy/chuchu.o(.text); - src/enemy/leever.o(.text); - src/enemy/peahat.o(.text); - src/enemy/rollobite.o(.text); - src/enemy/darkNut.o(.text); - src/enemy/hangingSeed.o(.text); - src/enemy/beetle.o(.text); - src/enemy/keese.o(.text); - src/enemy/doorMimic.o(.text); - src/enemy/rockChuchu.o(.text); - src/enemy/spinyChuchu.o(.text); - src/enemy/cuccoChickAggr.o(.text); - src/enemy/moldorm.o(.text); - src/enemy/enemyE.o(.text); - src/enemy/moldworm.o(.text); - src/enemy/sluggula.o(.text); - src/enemy/pesto.o(.text); - src/enemy/puffstool.o(.text); - src/enemy/chuchuBoss.o(.text); - asm/chuchuBoss.o(.text); - src/enemy/likeLike.o(.text); - src/enemy/spearMoblin.o(.text); - src/enemy/businessScrub.o(.text); - src/enemy/rupeeLike.o(.text); - src/enemy/madderpillar.o(.text); - src/enemy/waterDrop.o(.text); - src/enemy/wallMaster.o(.text); - src/enemy/bombPeahat.o(.text); - src/enemy/spark.o(.text); - src/enemy/chaser.o(.text); - src/enemy/spikedBeetle.o(.text); - src/enemy/sensorBladeTrap.o(.text); - src/enemy/helmasaur.o(.text); - src/enemy/fallingBoulder.o(.text); - src/enemy/bobomb.o(.text); - src/enemy/wallMaster2.o(.text); - asm/gleerok.o(.text); - asm/vaatiEyesMacro.o(.text); - src/enemy/tektite.o(.text); - asm/wizzrobeWind.o(.text); - asm/wizzrobeFire.o(.text); - asm/wizzrobeIce.o(.text); - src/code_080300AC.o(.text); /* ??? */ - asm/code_080300AC.o(.text); /* ??? */ - asm/armos.o(.text); - asm/eyegore.o(.text); - src/enemy/rope.o(.text); - src/enemy/smallPesto.o(.text); - src/enemy/acroBandits.o(.text); - src/enemy/bladeTrap.o(.text); - src/enemy/keaton.o(.text); - asm/crow.o(.text); - asm/mulldozer.o(.text); - asm/bombarossa.o(.text); - src/enemy/wisp.o(.text); - asm/spinyBeetle.o(.text); - src/enemy/mazaalHead.o(.text); - src/enemy/mazaalMacro.o(.text); - src/enemy/mazaalHand.o(.text); - asm/octorokBoss.o(.text); - asm/flyingPot.o(.text); - src/enemy/gibdo.o(.text); - asm/octorokGolden.o(.text); - src/enemy/tektiteGolden.o(.text); - src/enemy/ropeGolden.o(.text); - asm/cloudPiranha.o(.text); - asm/scissorsBeetle.o(.text); - asm/cuccoAggr.o(.text); - asm/stalfos.o(.text); - asm/flyingSkull.o(.text); - src/enemy/mazaalBracelet.o(.text); - asm/takkuri.o(.text); - src/enemy/bowMoblin.o(.text); - asm/bowMoblin.o(.text); - src/enemy/lakitu.o(.text); - src/enemy/lakituCloud.o(.text); - asm/enemy49.o(.text); - asm/vaatiRebornEnemy.o(.text); - asm/vaatiProjectile.o(.text); - asm/ballChainSoldier.o(.text); - src/enemy/enemy4D.o(.text); - asm/enemy4D.o(.text); - asm/ghini.o(.text); - asm/vaatiTransfigured.o(.text); - asm/enemy50.o(.text); - asm/vaatiWrath.o(.text); - asm/vaatiArm.o(.text); - asm/dust.o(.text); - src/enemy/vaatiBall.o(.text); - src/enemy/slime.o(.text); - asm/sub_080451CC.o(.text); - src/enemy/miniSlime.o(.text); - src/enemy/fireballGuy.o(.text); - src/enemy/miniFireballGuy.o(.text); - asm/enemy5A.o(.text); - asm/businessScrubPrologue.o(.text); - asm/gyorgFemale.o(.text); - src/enemy/gyorgMale.o(.text); - asm/curtain.o(.text); - asm/enemy5F.o(.text); - asm/gyorgChild.o(.text); - asm/gyorgFemaleEye.o(.text); - asm/enemy62.o(.text); - asm/gyorgFemaleMouth.o(.text); - asm/enemy64.o(.text); - src/enemy/treeItem.o(.text); - asm/enemy66.o(.text); - /* END enemies */ - src/code_08049CD4.o(.text); - asm/code_08049D30.o(.text); - asm/sub_0804AA30.o(.text); - src/createEnemy.o(.text); - src/code_0804AA84.o(.text); - asm/code_0804AA84.o(.text); - src/loadRoomEntityList.o(.text); - asm/loadRoomEntity.o(.text); - asm/code_0804AEB0.o(.text); - src/loadRoom.o(.text); - asm/code_0804B058.o(.text); - src/room.o(.text); - asm/code_0804B9F8.o(.text); - src/sub_08050008.o(.text); - src/fade.o(.text); - asm/code_08050038.o(.text); - src/fileScreen.o(.text); - asm/fileScreen.o(.text); - src/game.o(.text); - asm/code_080526F8.o(.text); - asm/modBombs.o(.text); - asm/modArrows.o(.text); - src/code_0805436C.o(.text); - asm/code_0805436C.o(.text); - asm/playerItem/playerItemLantern.o(.text); - asm/code_08054C04.o(.text); - src/sub_08055E08.o(.text); - src/main.o(.text); - src/textbox.o(.text); - asm/code_08056418.o(.text); - src/manager/manager1.o(.text); - asm/manager1.o(.text); - src/manager/manager2.o(.text); - asm/manager2.o(.text); - src/manager/manager3.o(.text); - src/manager/manager4.o(.text); - src/manager/manager5.o(.text); - src/manager/manager6.o(.text); - src/manager/manager7.o(.text); - src/manager/manager8.o(.text); - src/manager/manager9.o(.text); - src/manager/managerA.o(.text); - src/manager/managerB.o(.text); - src/manager/managerC.o(.text); - asm/managerD.o(.text); - src/manager/managerE.o(.text); - asm/managerF.o(.text); - asm/manager10.o(.text); - asm/manager11.o(.text); - asm/manager12.o(.text); - asm/manager13.o(.text); - asm/manager14.o(.text); - src/manager/manager15.o(.text); - asm/manager16.o(.text); - asm/manager17.o(.text); - asm/manager18.o(.text); - asm/manager19.o(.text); - src/manager/manager1A.o(.text); - asm/manager1B.o(.text); - asm/manager1C.o(.text); - asm/manager1D.o(.text); - src/manager/manager1E.o(.text); - asm/manager1F.o(.text); - src/manager/manager20.o(.text); - asm/manager21.o(.text); - asm/manager22.o(.text); - asm/manager23.o(.text); - asm/manager24.o(.text); - asm/manager25.o(.text); - src/manager/manager26.o(.text); - src/manager/manager27.o(.text); - src/manager/manager28.o(.text); - asm/manager29.o(.text); - asm/manager2A.o(.text); - asm/manager2B.o(.text); - asm/manager2C.o(.text); - asm/manager2D.o(.text); - src/manager/manager2E.o(.text); - asm/manager2E.o(.text); - asm/manager2F.o(.text); - src/manager/manager30.o(.text); - asm/manager31.o(.text); - asm/manager32.o(.text); - asm/manager33.o(.text); - asm/manager34.o(.text); - asm/manager35.o(.text); - asm/manager36.o(.text); - asm/manager37.o(.text); - asm/manager38.o(.text); - src/manager/manager39.o(.text); - asm/sub_0805E248.o(.text); - src/sub_0805E374.o(.text); - src/sub_0805E3A0.o(.text); - asm/code_0805E3B0.o(.text); - asm/getEmptyEntity.o(.text); - src/entity.o(.text); - src/code_0805EC04.o(.text); - asm/code_0805EC04.o(.text); - src/code_0805F9A0.o(.text); - src/debugScreen.o(.text); - src/playerItem/playerItem14.o(.text); - /* npcs */ - src/npc/gentari.o(.text); - src/npc/festari.o(.text); - src/npc/forestMinish.o(.text); - src/npc/postman.o(.text); - src/npc/npc5.o(.text); - src/npc/townsperson.o(.text); - src/npc/kid.o(.text); - src/npc/npc9.o(.text); - src/npc/stamp.o(.text); - src/npc/marcy.o(.text); - src/npc/wheaton.o(.text); - src/npc/pita.o(.text); - src/npc/minishEzlo.o(.text); - src/npc/mailbox.o(.text); - src/npc/beedle.o(.text); - src/npc/brocco.o(.text); - src/npc/sittingPerson.o(.text); - src/npc/pina.o(.text); - src/npc/guard.o(.text); - src/npc/guardWithSpear.o(.text); - src/npc/castleMaid.o(.text); - src/npc/din.o(.text); - src/npc/nayru.o(.text); - src/npc/farore.o(.text); - src/npc/sturgeon.o(.text); - src/npc/tingleSiblings.o(.text); - src/npc/stockwell.o(.text); - src/npc/talon.o(.text); - src/npc/malon.o(.text); - src/npc/epona.o(.text); - src/npc/milkCart.o(.text); - src/npc/ghostBrothers.o(.text); - src/npc/smith.o(.text); - src/npc/npc23.o(.text); - src/npc/kingDaltus.o(.text); - src/npc/ministerPotho.o(.text); - src/npc/npc26.o(.text); - asm/vaati.o(.text); - src/npc/zelda.o(.text); - src/npc/mutoh.o(.text); - src/npc/carpenter.o(.text); - src/npc/castorWildsStatue.o(.text); - src/npc/cat.o(.text); - src/npc/mountainMinish.o(.text); - src/npc/zeldaFollower.o(.text); - src/npc/melari.o(.text); - src/npc/bladeBrothers.o(.text); - src/npc/cow.o(.text); - src/npc/goron.o(.text); - src/npc/goronMerchant.o(.text); - src/npc/gorman.o(.text); - src/npc/dog.o(.text); - src/npc/syrup.o(.text); - src/npc/rem.o(.text); - src/npc/rem.o(.text); - src/npc/townMinish.o(.text); - src/npc/librari.o(.text); - src/npc/percy.o(.text); - asm/vaatiReborn.o(.text); - src/npc/moblinLady.o(.text); - src/npc/librarians.o(.text); - src/npc/farmers.o(.text); - src/npc/carlov.o(.text); - src/npc/dampe.o(.text); - src/npc/drLeft.o(.text); - src/npc/kingGustaf.o(.text); - src/npc/gina.o(.text); - src/npc/simon.o(.text); - src/npc/anju.o(.text); - src/npc/mama.o(.text); - src/npc/emma.o(.text); - src/npc/teachers.o(.text); - src/npc/windTribespeople.o(.text); - src/npc/gregal.o(.text); - src/npc/mayorHagen.o(.text); - src/npc/bigGoron.o(.text); - src/npc/ezloCap.o(.text); - src/npc/npc4E.o(.text); - src/npc/npc4F.o(.text); - src/npc/clothesRack.o(.text); - src/npc/picolyteBottle.o(.text); - src/npc/smallTownMinish.o(.text); - src/npc/hurdyGurdyMan.o(.text); - src/npc/cucco.o(.text); - src/npc/cuccoChick.o(.text); - src/npc/fusionMenuNPC.o(.text); - src/npc/phonograph.o(.text); - src/npc/npc58.o(.text); - /* END npcs */ - asm/code_0806EC20.o(.text); - src/createNPC.o(.text); - asm/code_0806ED78.o(.text); - src/coord.o(.text); - asm/code_0806FA6C.o(.text); - asm/playerItem/playerItem12.o(.text); - asm/playerItem/playerItemPacciCane.o(.text); - asm/code_0807059C.o(.text); - src/player.o(.text); - asm/stairsInteract.o(.text); - asm/code_080732D0.o(.text); - asm/item/itemDebug.o(.text); - asm/item/itemSword.o(.text); - asm/item/itemLantern.o(.text); - asm/item/itemBoomerang.o(.text); - asm/item/itemBow.o(.text); - asm/item/itemBomb.o(.text); - asm/item/itemTryPickupObject.o(.text); - asm/item/itemRocsCape.o(.text); - asm/item/itemPegasusBoots.o(.text); - asm/code_080732D0.o(.text); - asm/ocarina.o(.text); - src/item/itemPacciCane.o(.text); - src/item/itemShield.o(.text); - src/item/itemGustJar.o(.text); - asm/item/itemGustJar.o(.text); - asm/item/itemMoleMitts.o(.text); - asm/item/itemJarEmpty.o(.text); - asm/code_08077698.o(.text); - asm/respawnPlayer.o(.text); - src/code_08077B98.o(.text); - src/code_08077DF4.o(.text); - asm/code_08077B98.o(.text); - src/code_08078778.o(.text); - asm/code_08078778.o(.text); - src/sub_0807B820.o(.text); - asm/code_0807B9B8.o(.text); - src/sub_0807C998.o(.text); - asm/sub_0807CA18.o(.text); - asm/getInventoryValue.o(.text); - asm/code_0807CAA0.o(.text); - src/flags.o(.text); - src/save.o(.text); - src/code_0807CC3C.o(.text); - src/script.o(.text); - asm/code_0807F0D8.o(.text); - src/code_0808091C.o(.text); - asm/code_0808091C.o(.text); - /* objects */ - src/object/itemOnGround.o(.text); - asm/deathFx.o(.text); - asm/itemForSale.o(.text); - src/object/button.o(.text); - asm/object4.o(.text); - src/object/pot.o(.text); - asm/object6.o(.text); - asm/blockPushed.o(.text); - src/object/lockedDoor.o(.text); - asm/object9.o(.text); - src/object/objectA.o(.text); - asm/objectB.o(.text); - src/object/chestSpawner.o(.text); - asm/chestSpawner.o(.text); - asm/objectD.o(.text); - asm/objectE.o(.text); - asm/specialFx.o(.text); - asm/object10.o(.text); - asm/object11.o(.text); - asm/object12.o(.text); - src/object/railtrack.o(.text); - asm/lilypadLarge.o(.text); - asm/object15.o(.text); - asm/floatingPlatform.o(.text); - asm/object17.o(.text); - asm/evilSpirit.o(.text); - src/object/houseDoorExterior.o(.text); - src/object/object1A.o(.text); - src/object/greatFairy.o(.text); - src/object/object1C.o(.text); - src/object/object1D.o(.text); - asm/object1E.o(.text); - asm/object1F.o(.text); - asm/object20.o(.text); - asm/object21.o(.text); - asm/figurineDevice.o(.text); - asm/eyeSwitch.o(.text); - asm/object24.o(.text); - asm/bigBarrel.o(.text); - asm/object26.o(.text); - asm/pushableStatue.o(.text); - asm/object28.o(.text); - asm/object29.o(.text); - src/object/object2A.o(.text); - asm/object2A.o(.text); - asm/object2B.o(.text); - asm/beanstalk.o(.text); - src/object/smoke.o(.text); - asm/pushableRock.o(.text); - asm/hittableLever.o(.text); - asm/object30.o(.text); - asm/object31.o(.text); - asm/pullableMushroom.o(.text); - asm/bollard.o(.text); - asm/warpPoint.o(.text); - asm/object35.o(.text); - asm/object36.o(.text); - asm/object37.o(.text); - asm/jarPortal.o(.text); - asm/bossDoor.o(.text); - asm/object3A.o(.text); - asm/macroMushroomStalks.o(.text); - asm/object75.o(.text); /* 75 and 76 are mislocated in base game */ - asm/object76.o(.text); - asm/code_0808C964.o(.text); - asm/macroPlayer.o(.text); - asm/object3D.o(.text); - asm/object3E.o(.text); - src/object/giantLeaf.o(.text); - asm/fairy.o(.text); - asm/ladderUp.o(.text); - asm/object42.o(.text); - asm/object43.o(.text); - asm/object44.o(.text); - asm/object45.o(.text); - asm/giantBookLadder.o(.text); - src/object/heartContainer.o(.text); - src/object/fileScreenObjects.o(.text); - src/object/object49.o(.text); - src/object/backgroundCloud.o(.text); - asm/object4B.o(.text); - asm/pushableFurniture.o(.text); - asm/furniture.o(.text); - src/object/minishSizedEntrance.o(.text); - src/object/archway.o(.text); - asm/giantRock.o(.text); - asm/object51.o(.text); - asm/object52.o(.text); - asm/object53.o(.text); - asm/pullableLever.o(.text); - src/object/minecart.o(.text); - asm/minecart.o(.text); - src/object/thoughtBubble.o(.text); - src/object/hiddenLadderDown.o(.text); - asm/gentariCurtains.o(.text); - asm/lavaPlatform.o(.text); - asm/object5A.o(.text); - asm/object5B.o(.text); - src/object/mask.o(.text); - asm/houseDoorInterior.o(.text); - asm/whirlwind.o(.text); - asm/objectBlockingStairs.o(.text); - src/object/swordsmanNewsletter.o(.text); - asm/object61.o(.text); - asm/giantTwig.o(.text); - asm/object63.o(.text); - asm/object64.o(.text); - asm/ladderHoleInBookshelf.o(.text); - asm/object66.o(.text); - asm/object67.o(.text); - asm/object68.o(.text); - asm/object69.o(.text); - asm/object6A.o(.text); - asm/crenalBeanSprout.o(.text); - asm/minecartDoor.o(.text); - asm/objectOnPillar.o(.text); - src/object/mineralWaterSource.o(.text); - src/object/minishSizedArchway.o(.text); - asm/object70.o(.text); - asm/pushableGrave.o(.text); - asm/object72.o(.text); - src/object/lilypadSmall.o(.text); - asm/object74.o(.text); - src/object/bell.o(.text); - asm/macroDecorations.o(.text); - asm/object79.o(.text); - asm/steam.o(.text); - asm/pushableLever.o(.text); - asm/macroShoes.o(.text); - asm/objectOnSpinyBeetle.o(.text); - src/object/object7E.o(.text); - asm/picoBloom.o(.text); - asm/object80.o(.text); - asm/object81.o(.text); - src/object/bigVortex.o(.text); - asm/bigPushableLever.o(.text); - asm/smallIceBlock.o(.text); - asm/bigIceBlock.o(.text); - src/object/object86.o(.text); - asm/object87.o(.text); - asm/macroBook.o(.text); - asm/object89.o(.text); - asm/object8A.o(.text); - asm/object8B.o(.text); - asm/book.o(.text); - asm/fireplace.o(.text); - asm/object8E.o(.text); - asm/frozenWaterElement.o(.text); - asm/object90.o(.text); - asm/object91.o(.text); - src/object/bakerOven.o(.text); - asm/object93.o(.text); - src/object/windTribeFlag.o(.text); - src/object/bird.o(.text); - asm/bird.o(.text); - asm/object96.o(.text); - asm/object97.o(.text); - asm/object98.o(.text); - asm/object99.o(.text); - asm/macroAcorn.o(.text); - asm/object9B.o(.text); - src/object/treeHidingPortal.o(.text); - asm/treeHidingPortal.o(.text); - src/object/lightableSwitch.o(.text); - src/object/object9E.o(.text); - src/object/fan.o(.text); - asm/fan.o(.text); - asm/objectA0.o(.text); - src/object/palaceArchway.o(.text); - src/object/objectA2.o(.text); - src/object/cloud.o(.text); - src/object/minishLight.o(.text); - asm/objectA5.o(.text); - asm/objectA6.o(.text); - asm/objectA7.o(.text); - src/object/objectA8.o(.text); - asm/objectA8.o(.text); - asm/objectA9.o(.text); - asm/waterfallOpening.o(.text); - asm/objectAB.o(.text); - asm/fourElements.o(.text); - asm/objectAD.o(.text); - src/object/floatingBlock.o(.text); - src/object/objectAF.o(.text); - src/object/metalDoor.o(.text); - src/object/jailBars.o(.text); - src/object/objectB2.o(.text); - asm/objectB3.o(.text); - asm/objectB4.o(.text); - asm/objectB5.o(.text); - asm/objectB6.o(.text); - src/object/well.o(.text); - asm/windTribeTeleporter.o(.text); - asm/objectB9.o(.text); - asm/objectBA.o(.text); - src/object/windcrest.o(.text); - asm/litArea.o(.text); - asm/objectBD.o(.text); - src/object/pinwheel.o(.text); - asm/objectBF.o(.text); - asm/enemyItem.o(.text); - asm/objectC1.o(.text); - /* END objects */ - asm/sub_080A276C.o(.text); - asm/sub_080A2838.o(.text); - asm/sub_080A285C.o(.text); - src/createObject.o(.text); - asm/code_080A29BC.o(.text); - asm/playerItem/playerItemShield.o(.text); - asm/playerItem/playerItem15.o(.text); - src/audio.o(.text); - asm/code_080A3480.o(.text); - src/sub_080A3B84.o(.text); - asm/code_080A3BD0.o(.text); - src/sub_080A554C.o(.text); - asm/code_080A5574.o(.text); - asm/playerItem/playerItemSword.o(.text); - asm/code_080A7C00.o(.text); - src/projectile/projectile0.o(.text); - src/projectile/projectile1.o(.text); - src/projectile/projectile2.o(.text); - src/projectile/projectile3.o(.text); - src/projectile/projectile4.o(.text); - src/projectile/projectile5.o(.text); - src/projectile/projectile6.o(.text); - src/projectile/projectile7.o(.text); - src/projectile/projectile8.o(.text); - src/projectile/projectile9.o(.text); - src/projectile/projectileA.o(.text); - src/projectile/projectileB.o(.text); - src/projectile/projectileC.o(.text); - src/projectile/projectileD.o(.text); - src/projectile/projectileE.o(.text); - src/projectile/projectileF.o(.text); - src/projectile/projectile10.o(.text); - src/projectile/projectile11.o(.text); - src/projectile/projectile12.o(.text); - src/projectile/projectile13.o(.text); - src/projectile/projectile14.o(.text); - src/projectile/projectile15.o(.text); - src/projectile/projectile16.o(.text); - src/projectile/projectile17.o(.text); - src/projectile/projectile18.o(.text); - src/projectile/projectile19.o(.text); - src/projectile/projectile1A.o(.text); - src/projectile/projectile1B.o(.text); - src/projectile/projectile1C.o(.text); - src/projectile/projectile1D.o(.text); - src/projectile/projectile1E.o(.text); - src/projectile/projectile1F.o(.text); - src/projectile/projectile20.o(.text); - src/projectile/projectile21.o(.text); - src/projectile/projectile22.o(.text); - src/projectile/projectile23.o(.text); - src/projectile/projectile24.o(.text); - asm/playerItem/playerItem10.o(.text); - asm/playerItem/playerItem13.o(.text); - src/intro.o(.text); - asm/sub_080AD8F0.o(.text); - asm/code_080AD90C.o(.text); - asm/playerItem/playerItemGustJar.o(.text); - asm/code_080ADD30.o(.text); - /* library functions */ - asm/m4a_asm.o(.text); - src/gba/m4a.o(.text); - asm/libagbsyscall.o(.text); - src/eeprom.o(.text); - *libc.a:memcpy.o(.text); - - /* handwritten assembly in arm mode */ - asm/intr.o(.text); - /* data */ - data/data_080B2A70.o(.rodata); - src/playerItem.o(.rodata); - src/object.o(.rodata); - src/manager.o(.rodata); - src/npc.o(.rodata); - data/data_080B3740.o(.rodata); - data/const/playerItem/playerItem11.o(.rodata); - data/const/playerItem/playerItemBow.o(.rodata); - data/data_080B3E70.o(.rodata); - data/const/playerItem/playerItemSwordBeam.o(.rodata); - data/data_080B4410.o(.rodata); - data/const/playerItem/playerItemBomb.o(.rodata); - data/const/playerItem/playerItem3.o(.rodata); - data/const/playerItem/playerItemC.o(.rodata); - data/const/playerItem/playerItemSwordSpin.o(.rodata); - data/data_080B7910.o(.rodata); - data/const/playerItem/playerItemCellOverwriteSet.o(.rodata); - data/data_080B7B74.o(.rodata); - src/coord.o(.rodata); - data/data_080C93E0.o(.rodata); - src/enemy/octorok.o(.rodata); - data/animations/enemy/octorok.o(.rodata); - src/enemy/chuchu.o(.rodata); - data/animations/enemy/chuchu.o(.rodata); - src/enemy/leever.o(.rodata); - data/animations/enemy/leever.o(.rodata); - src/enemy/peahat.o(.rodata); - data/animations/enemy/peahat.o(.rodata); - src/enemy/rollobite.o(.rodata); - data/animations/enemy/rollobite.o(.rodata); - src/enemy/darkNut.o(.rodata); - data/animations/enemy/darkNut.o(.rodata); - src/enemy/hangingSeed.o(.rodata); - src/enemy/beetle.o(.rodata); - data/animations/enemy/beetle.o(.rodata); - src/enemy/keese.o(.rodata); - data/animations/enemy/keese.o(.rodata); - src/enemy/doorMimic.o(.rodata); - data/animations/enemy/doorMimic.o(.rodata); - src/enemy/rockChuchu.o(.rodata); - data/animations/enemy/rockChuchu.o(.rodata); - src/enemy/spinyChuchu.o(.rodata); - data/animations/enemy/spinyChuchu.o(.rodata); - src/enemy/cuccoChickAggr.o(.rodata); - src/enemy/moldorm.o(.rodata); - src/enemy/enemyE.o(.rodata); - data/animations/enemy/enemyE.o(.rodata); - src/enemy/moldworm.o(.rodata); - data/animations/enemy/moldworm.o(.rodata); - src/enemy/sluggula.o(.rodata); - data/animations/enemy/sluggula.o(.rodata); - src/enemy/pesto.o(.rodata); - data/animations/enemy/pesto.o(.rodata); - src/enemy/puffstool.o(.rodata); - data/animations/enemy/puffstool.o(.rodata); - src/enemy/chuchuBoss.o(.rodata); - data/animations/enemy/chuchuBoss.o(.rodata); - src/enemy/likeLike.o(.rodata); - data/animations/enemy/likeLike.o(.rodata); - src/enemy/spearMoblin.o(.rodata); - data/animations/enemy/spearMoblin.o(.rodata); - src/enemy/businessScrub.o(.rodata); - data/animations/enemy/businessScrub.o(.rodata); - src/enemy/rupeeLike.o(.rodata); - data/animations/enemy/rupeeLike.o(.rodata); - src/enemy/madderpillar.o(.rodata); - data/animations/enemy/madderpillar.o(.rodata); - src/enemy/waterDrop.o(.rodata); - data/animations/enemy/waterDrop.o(.rodata); - src/enemy/wallMaster.o(.rodata); - data/animations/enemy/wallMaster.o(.rodata); - src/enemy/bombPeahat.o(.rodata); - data/animations/enemy/bombPeahat.o(.rodata); - src/enemy/spark.o(.rodata); - data/animations/enemy/spark.o(.rodata); - src/enemy/chaser.o(.rodata); - data/animations/enemy/chaser.o(.rodata); - src/enemy/spikedBeetle.o(.rodata); - data/animations/enemy/spikedBeetle.o(.rodata); - src/enemy/sensorBladeTrap.o(.rodata); - src/enemy/helmasaur.o(.rodata); - data/animations/enemy/helmasaur.o(.rodata); - src/enemy/fallingBoulder.o(.rodata); - data/animations/enemy/fallingBoulder.o(.rodata); - src/enemy/bobomb.o(.rodata); - data/animations/enemy/bobomb.o(.rodata); - src/enemy/wallMaster2.o(.rodata); - data/const/enemy/gleerok.o(.rodata); - data/animations/enemy/gleerok.o(.rodata); - data/const/enemy/vaatiEyesMacro.o(.rodata); - data/animations/enemy/vaatiEyesMacro.o(.rodata); - data/const/enemy/tektite.o(.rodata); - data/animations/enemy/tektite.o(.rodata); - data/const/enemy/wizzrobeWind.o(.rodata); - data/animations/enemy/wizzrobeWind.o(.rodata); - data/const/enemy/wizzrobeFire.o(.rodata); - data/animations/enemy/wizzrobeFire.o(.rodata); - data/const/enemy/wizzrobeIce.o(.rodata); - data/animations/enemy/wizzrobeIce.o(.rodata); - data/const/enemy/armos.o(.rodata); - data/animations/enemy/armos.o(.rodata); - data/const/enemy/eyegore.o(.rodata); - data/animations/enemy/eyegore.o(.rodata); - data/const/enemy/rope.o(.rodata); - data/animations/enemy/rope.o(.rodata); - data/const/enemy/smallPesto.o(.rodata); - data/const/enemy/acroBandits.o(.rodata); - data/animations/enemy/acroBandits.o(.rodata); - data/const/enemy/keaton.o(.rodata); - data/animations/enemy/keaton.o(.rodata); - data/const/enemy/crow.o(.rodata); - data/animations/enemy/crow.o(.rodata); - data/const/enemy/mulldozer.o(.rodata); - data/animations/enemy/mulldozer.o(.rodata); - data/const/enemy/bombarossa.o(.rodata); - data/animations/enemy/bombarossa.o(.rodata); - data/const/enemy/wisp.o(.rodata); - data/animations/enemy/wisp.o(.rodata); - data/const/enemy/spinyBeetle.o(.rodata); - data/animations/enemy/spinyBeetle.o(.rodata); - src/enemy/mazaalHead.o(.rodata); - data/animations/enemy/mazaalHead.o(.rodata); - src/enemy/mazaalMacro.o(.rodata); - data/animations/enemy/mazaalMacro.o(.rodata); - src/enemy/mazaalHand.o(.rodata); - data/animations/enemy/mazaalHand.o(.rodata); - data/const/enemy/octorokBoss.o(.rodata); - data/animations/enemy/octorokBoss.o(.rodata); - data/const/enemy/flyingPot.o(.rodata); - data/const/enemy/gibdo.o(.rodata); - data/animations/enemy/gibdo.o(.rodata); - data/const/enemy/octorokGolden.o(.rodata); - data/const/enemy/tektiteGolden.o(.rodata); - data/const/enemy/ropeGolden.o(.rodata); - data/const/enemy/cloudPiranha.o(.rodata); - data/animations/enemy/cloudPiranha.o(.rodata); - data/const/enemy/scissorsBeetle.o(.rodata); - data/animations/enemy/scissorsBeetle.o(.rodata); - data/const/enemy/cuccoAggr.o(.rodata); - data/animations/enemy/cuccoAggr.o(.rodata); - data/const/enemy/stalfos.o(.rodata); - data/animations/enemy/stalfos.o(.rodata); - data/const/enemy/flyingSkull.o(.rodata); - data/animations/enemy/flyingSkull.o(.rodata); - src/enemy/mazaalBracelet.o(.rodata); - data/animations/enemy/mazaalBracelet.o(.rodata); - data/const/enemy/takkuri.o(.rodata); - data/const/enemy/bowMoblin.o(.rodata); - data/animations/enemy/bowMoblin.o(.rodata); src/enemy/lakitu.o(.rodata); - data/animations/enemy/lakitu.o(.rodata); - src/enemy/lakituCloud.o(.rodata); - data/const/enemy/enemy49.o(.rodata); - data/const/enemy/vaatiRebornEnemy.o(.rodata); - data/animations/enemy/vaatiRebornEnemy.o(.rodata); - data/const/enemy/vaatiProjectile.o(.rodata); - data/animations/enemy/vaatiProjectile.o(.rodata); - data/const/enemy/ballChainSoldier.o(.rodata); - data/animations/enemy/ballChainSoldier.o(.rodata); - data/const/enemy/enemy4D.o(.rodata); - data/const/enemy/ghini.o(.rodata); - data/animations/enemy/ghini.o(.rodata); - data/const/enemy/vaatiTransfigured.o(.rodata); - data/animations/enemy/vaatiTransfigured.o(.rodata); - data/const/enemy/enemy50.o(.rodata); - data/const/enemy/vaatiWrath.o(.rodata); - data/animations/enemy/vaatiWrath.o(.rodata); - data/const/enemy/vaatiArm.o(.rodata); - data/animations/enemy/vaatiArm.o(.rodata); - data/const/enemy/dust.o(.rodata); - data/const/enemy/vaatiBall.o(.rodata); - data/animations/enemy/vaatiBall.o(.rodata); - data/const/enemy/slime.o(.rodata); - data/animations/enemy/slime.o(.rodata); - data/const/enemy/miniSlime.o(.rodata); - data/const/enemy/fireballGuy.o(.rodata); - data/animations/enemy/fireballGuy.o(.rodata); - data/const/enemy/miniFireballGuy.o(.rodata); - data/const/enemy/enemy5A.o(.rodata); - data/animations/enemy/enemy5A.o(.rodata); - data/const/enemy/businessScrubPrologue.o(.rodata); - data/const/enemy/gyorgFemale.o(.rodata); - src/enemy/gyorgMale.o(.rodata); - data/animations/enemy/gyorgMale.o(.rodata); - data/const/enemy/curtain.o(.rodata); - data/animations/enemy/curtain.o(.rodata); - data/const/enemy/enemy5F.o(.rodata); - data/animations/enemy/enemy5F.o(.rodata); - data/const/enemy/gyorgChild.o(.rodata); - data/animations/enemy/gyorgChild.o(.rodata); - data/const/enemy/gyorgFemaleEye.o(.rodata); - data/animations/enemy/gyorgFemaleEye.o(.rodata); - data/const/enemy/enemy62.o(.rodata); - data/animations/enemy/enemy62.o(.rodata); - data/const/enemy/gyorgFemaleMouth.o(.rodata); - data/animations/enemy/gyorgFemaleMouth.o(.rodata); - data/const/enemy/enemy64.o(.rodata); - data/const/enemy/treeItem.o(.rodata); - data/const/enemy/enemy66.o(.rodata); - data/const/code_08049D30.o(.rodata); - src/enemy.o(.rodata); - data/data_080D3D94.o(.rodata); - data/entity_headers.o(.rodata); - data/data_080D5360.o(.rodata); - src/fileScreen.o(.rodata); - data/data_080FC8A4.o(.rodata); - data/const/playerItem/playerItemLantern.o(.rodata); - data/data_080FEEB8.o(.rodata); - src/main.o(.rodata); - data/tileset_headers.o(.rodata); - data/metatile_headers.o(.rodata); - data/map_headers.o(.rodata); - src/textbox.o(.rodata); - data/data_08107BC8.o(.rodata); - data/const/manager/manager1.o(.rodata); - data/const/manager/manager3.o(.rodata); - data/const/manager/manager4.o(.rodata); - src/manager/manager5.o(.rodata); - src/manager/manager7.o(.rodata); - . = ALIGN(4); - src/manager/manager9.o(.rodata); - src/manager/managerA.o(.rodata); - src/manager/managerB.o(.rodata); - src/manager/managerC.o(.rodata); - data/const/manager/managerD.o(.rodata); - data/const/manager/managerF.o(.rodata); - data/const/manager/manager10.o(.rodata); - data/const/manager/manager12.o(.rodata); - data/const/manager/manager13.o(.rodata); - data/const/manager/manager14.o(.rodata); - data/const/manager/manager15.o(.rodata); - data/const/manager/manager17.o(.rodata); - data/const/manager/manager18.o(.rodata); - data/const/manager/manager1A.o(.rodata); - data/const/manager/manager1B.o(.rodata); - data/const/manager/manager1C.o(.rodata); - data/const/manager/manager1D.o(.rodata); - src/manager/manager1E.o(.rodata); - data/const/manager/manager1F.o(.rodata); - data/const/manager/manager22.o(.rodata); - data/const/manager/manager23.o(.rodata); - data/const/manager/manager24.o(.rodata); - src/manager/manager26.o(.rodata); - src/manager/manager27.o(.rodata); - src/manager/manager28.o(.rodata); - data/const/manager/manager2B.o(.rodata); - data/const/manager/manager2E.o(.rodata); - data/const/manager/manager31.o(.rodata); - data/const/manager/manager32.o(.rodata); - data/const/manager/manager34.o(.rodata); - data/const/manager/manager35.o(.rodata); - data/const/manager/manager36.o(.rodata); - data/const/manager/manager37.o(.rodata); - data/const/manager/manager38.o(.rodata); - data/const/manager/manager39.o(.rodata); - data/data_08108E6C.o(.rodata); - data/const/playerItem/playerItem14.o(.rodata); - data/animations/npc/gentari.o(.rodata); - data/const/npc/festari.o(.rodata); - data/animations/npc/festari.o(.rodata); - data/const/npc/forestMinish.o(.rodata); - data/animations/npc/forestMinish.o(.rodata); - data/const/npc/postman.o(.rodata); - data/animations/npc/postman.o(.rodata); - data/const/npc/npc5.o(.rodata); - data/animations/npc/npc5.o(.rodata); - data/const/npc/townsperson.o(.rodata); - data/animations/npc/townsperson.o(.rodata); - data/const/npc/kid.o(.rodata); - data/animations/npc/kid.o(.rodata); - data/const/npc/npc9.o(.rodata); - data/animations/npc/npc9.o(.rodata); - data/const/npc/stamp.o(.rodata); - data/animations/npc/stamp.o(.rodata); - data/const/npc/marcy.o(.rodata); - data/animations/npc/marcy.o(.rodata); - data/const/npc/wheaton.o(.rodata); - data/animations/npc/wheaton.o(.rodata); - data/const/npc/pita.o(.rodata); - data/animations/npc/pita.o(.rodata); - data/const/npc/minishEzlo.o(.rodata); - data/animations/npc/minishEzlo.o(.rodata); - data/const/npc/mailbox.o(.rodata); - data/animations/npc/mailbox.o(.rodata); - data/const/npc/beedle.o(.rodata); - data/animations/npc/beedle.o(.rodata); - data/const/npc/brocco.o(.rodata); - data/animations/npc/brocco.o(.rodata); - data/const/npc/sittingPerson.o(.rodata); - data/animations/npc/sittingPerson.o(.rodata); - data/const/npc/pina.o(.rodata); - data/animations/npc/pina.o(.rodata); - data/const/npc/guard.o(.rodata); - data/animations/npc/guard.o(.rodata); - data/const/npc/guardWithSpear.o(.rodata); - data/animations/npc/guardWithSpear.o(.rodata); - data/const/npc/maid.o(.rodata); - data/animations/npc/maid.o(.rodata); - data/animations/npc/din.o(.rodata); - data/animations/npc/nayru.o(.rodata); - data/animations/npc/farore.o(.rodata); - data/const/npc/sturgeon.o(.rodata); - data/animations/npc/sturgeon.o(.rodata); - data/const/npc/tingleSiblings.o(.rodata); - data/animations/npc/tingleSiblings.o(.rodata); - data/const/npc/stockwell.o(.rodata); - data/animations/npc/stockwell.o(.rodata); - data/const/npc/talon.o(.rodata); - data/animations/npc/talon.o(.rodata); - data/const/npc/malon.o(.rodata); - data/animations/npc/malon.o(.rodata); - data/const/npc/epona.o(.rodata); - data/animations/npc/epona.o(.rodata); - data/const/npc/milkCart.o(.rodata); - data/animations/npc/milkCart.o(.rodata); - data/const/npc/ghostBrothers.o(.rodata); - data/animations/npc/ghostBrothers.o(.rodata); - data/const/npc/smith.o(.rodata); - data/animations/npc/smith.o(.rodata); - data/const/npc/npc23.o(.rodata); - data/const/npc/kingDaltus.o(.rodata); - data/animations/npc/kingDaltus.o(.rodata); - data/const/npc/ministerPotho.o(.rodata); - data/animations/npc/ministerPotho.o(.rodata); - src/npc/npc26.o(.rodata); - data/animations/npc/npc26.o(.rodata); - data/const/npc/vaati.o(.rodata); - data/animations/npc/vaati.o(.rodata); - data/const/npc/zelda.o(.rodata); - data/const/npc/mutoh.o(.rodata); - data/animations/npc/mutoh.o(.rodata); - data/const/npc/carpenter.o(.rodata); - data/animations/npc/carpenter.o(.rodata); - data/const/npc/castorWildsStatue.o(.rodata); - data/animations/npc/castorWildsStatue.o(.rodata); - data/const/npc/cat.o(.rodata); - data/animations/npc/cat.o(.rodata); - data/const/npc/mountainMinish.o(.rodata); - data/animations/npc/mountainMinish.o(.rodata); - data/const/npc/melari.o(.rodata); - data/animations/npc/melari.o(.rodata); - data/const/npc/bladeBrothers.o(.rodata); - data/animations/npc/bladeBrothers.o(.rodata); - data/const/npc/cow.o(.rodata); - data/animations/npc/cow.o(.rodata); - data/const/npc/goron.o(.rodata); - data/animations/npc/goron.o(.rodata); - src/npc/goronMerchant.o(.rodata); - data/animations/npc/goronMerchant.o(.rodata); - data/const/npc/gorman.o(.rodata); - data/animations/npc/gorman.o(.rodata); - data/const/npc/dog.o(.rodata); - data/animations/npc/dog.o(.rodata); - data/const/npc/syrup.o(.rodata); - data/animations/npc/syrup.o(.rodata); - data/const/npc/rem.o(.rodata); - data/animations/npc/rem.o(.rodata); - data/const/npc/townMinish.o(.rodata); - data/animations/npc/townMinish.o(.rodata); - data/const/npc/librari.o(.rodata); - data/animations/npc/librari.o(.rodata); - data/const/npc/percy.o(.rodata); - data/animations/npc/percy.o(.rodata); - data/const/npc/vaatiReborn.o(.rodata); - data/animations/npc/vaatiReborn.o(.rodata); - data/const/npc/moblinLady.o(.rodata); - data/animations/npc/moblinLady.o(.rodata); - data/const/npc/librarians.o(.rodata); - data/animations/npc/librarians.o(.rodata); - data/const/npc/farmers.o(.rodata); - data/animations/npc/farmers.o(.rodata); - data/animations/npc/carlov.o(.rodata); - data/const/npc/dampe.o(.rodata); - data/animations/npc/dampe.o(.rodata); - data/const/npc/drLeft.o(.rodata); - data/animations/npc/drLeft.o(.rodata); - data/animations/npc/kingGustaf.o(.rodata); - data/animations/npc/gina.o(.rodata); - data/animations/npc/simon.o(.rodata); - data/animations/npc/anju.o(.rodata); - data/const/npc/mama.o(.rodata); - data/animations/npc/mama.o(.rodata); - data/animations/npc/emma.o(.rodata); - data/const/npc/teachers.o(.rodata); - data/animations/npc/teachers.o(.rodata); - data/const/npc/windTribespeople.o(.rodata); - data/animations/npc/windTribespeople.o(.rodata); - data/const/npc/gregal.o(.rodata); - data/animations/npc/gregal.o(.rodata); - data/const/npc/mayorHagen.o(.rodata); - data/animations/npc/mayorHagen.o(.rodata); - data/const/npc/bigGoron.o(.rodata); - src/npc/ezloCap.o(.rodata); - src/npc/npc4E.o(.rodata); - src/npc/npc4F.o(.rodata); - data/animations/npc/npc4F.o(.rodata); - data/const/npc/clothesRack.o(.rodata); - data/animations/npc/clothesRack.o(.rodata); - data/const/npc/picolyteBottle.o(.rodata); - data/const/npc/smallTownMinish.o(.rodata); - data/animations/npc/smallTownMinish.o(.rodata); - data/const/npc/hurdyGurdyMan.o(.rodata); - data/animations/npc/hurdyGurdyMan.o(.rodata); - data/const/npc/cucco.o(.rodata); - data/const/npc/cuccoChick.o(.rodata); - data/const/npc/phonograph.o(.rodata); - data/const/npc/npc58.o(.rodata); - data/data_081146D0.o(.rodata); - data/const/playerItem/playerItem12.o(.rodata); - data/const/playerItem/playerItemPacciCane.o(.rodata); - src/player.o(.rodata); - data/data_0811B9E0.o(.rodata); - src/item.o(.rodata); - data/const/item/itemSword.o(.rodata); - data/const/item/itemLantern.o(.rodata); - data/const/item/itemBoomerang.o(.rodata); - data/const/item/itemBow.o(.rodata); - data/const/item/itemBomb.o(.rodata); - data/const/item/itemTryPickupObject.o(.rodata); - data/const/item/itemPegasusBoots.o(.rodata); - data/const/item/itemOcarina.o(.rodata); - data/const/item/itemPacciCane.o(.rodata); - data/const/item/itemShield.o(.rodata); - data/const/item/itemGustJar.o(.rodata); - data/const/item/itemMoleMitts.o(.rodata); - data/const/item/itemJarEmpty.o(.rodata); - data/data_0811BE38.o(.rodata); - data/room_headers.o(.rodata); - src/save.o(.rodata); - data/data_0811E454.o(.rodata); - src/script.o(.rodata); - data/data_0811E750.o(.rodata); - data/const/object/itemOnGround.o(.rodata); - data/const/object/deathFx.o(.rodata); - data/animations/object/deathFx.o(.rodata); - data/const/object/itemForSale.o(.rodata); - data/const/object/button.o(.rodata); - data/const/object/object4.o(.rodata); - data/animations/object/object4.o(.rodata); - data/const/object/pot.o(.rodata); - data/animations/object/pot.o(.rodata); - data/const/object/object6.o(.rodata); - data/animations/object/object6.o(.rodata); - data/const/object/blockPushed.o(.rodata); - src/object/lockedDoor.o(.rodata); - data/const/object/object9.o(.rodata); - data/animations/object/object9.o(.rodata); - data/const/object/objectB.o(.rodata); - data/const/object/chestSpawner.o(.rodata); - data/animations/object/chestSpawner.o(.rodata); - data/const/object/objectD.o(.rodata); - data/animations/object/objectD.o(.rodata); - data/const/object/specialFx.o(.rodata); - data/animations/object/specialFx.o(.rodata); - data/const/object/object10.o(.rodata); - data/const/object/object11.o(.rodata); - data/const/object/object12.o(.rodata); - data/const/object/railtrack.o(.rodata); - data/animations/object/railtrack.o(.rodata); - data/const/object/lilypadLarge.o(.rodata); - data/const/object/object15.o(.rodata); - data/const/object/floatingPlatform.o(.rodata); - data/const/object/object17.o(.rodata); - data/const/object/evilSpirit.o(.rodata); - data/const/object/houseDoorExterior.o(.rodata); - data/const/object/object1A.o(.rodata); - src/object/greatFairy.o(.rodata); - data/animations/npc/greatFairy.o(.rodata); -data/const/object/object1D.o(.rodata); - data/const/object/object1E.o(.rodata); - data/animations/object/object1E.o(.rodata); - data/const/object/object1F.o(.rodata); - data/const/object/object20.o(.rodata); - data/animations/object/object20.o(.rodata); - data/const/object/object21.o(.rodata); - data/const/object/figurineDevice.o(.rodata); - data/animations/object/figurineDevice.o(.rodata); - data/const/object/eyeSwitch.o(.rodata); - data/animations/object/eyeSwitch.o(.rodata); - data/const/object/object24.o(.rodata); - data/animations/object/object24.o(.rodata); - data/const/object/bigBarrel.o(.rodata); - data/animations/object/bigBarrel.o(.rodata); - data/const/object/object26.o(.rodata); - data/const/object/pushableStatue.o(.rodata); - data/animations/object/pushableStatue.o(.rodata); - data/const/object/object29.o(.rodata); - data/animations/object/object29.o(.rodata); - data/const/object/object2A.o(.rodata); - data/animations/object/object2A.o(.rodata); - data/const/object/beanstalk.o(.rodata); - data/animations/object/beanstalk.o(.rodata); - data/const/object/smoke.o(.rodata); - data/const/object/pushableRock.o(.rodata); - data/animations/object/pushableRock.o(.rodata); - data/const/object/hittableLever.o(.rodata); - data/const/object/object30.o(.rodata); - data/const/object/object31.o(.rodata); - data/const/object/pullableMushroom.o(.rodata); - data/animations/object/pullableMushroom.o(.rodata); - data/const/object/bollard.o(.rodata); - data/animations/object/bollard.o(.rodata); - data/const/object/warpPoint.o(.rodata); - data/animations/object/warpPoint.o(.rodata); - data/const/object/object35.o(.rodata); - data/animations/object/object35.o(.rodata); - data/const/object/object36.o(.rodata); - data/const/object/object37.o(.rodata); - data/const/object/jarPortal.o(.rodata); - data/animations/object/jarPortal.o(.rodata); - data/const/object/bossDoor.o(.rodata); - data/animations/object/bossDoor.o(.rodata); - data/const/object/object3A.o(.rodata); - data/const/object/macroMushroomStalks.o(.rodata); - data/const/object/object75.o(.rodata); - data/const/object/object76.o(.rodata); - data/const/object/macroPlayer.o(.rodata); - data/const/object/object3D.o(.rodata); - data/const/object/object3E.o(.rodata); - data/const/object/giantLeaf.o(.rodata); - data/const/object/fairy.o(.rodata); - data/const/object/object42.o(.rodata); - data/const/object/object43.o(.rodata); - data/animations/object/object43.o(.rodata); - data/const/object/object44.o(.rodata); - data/animations/object/object44.o(.rodata); - data/const/object/object45.o(.rodata); - data/animations/object/object45.o(.rodata); - data/const/object/giantBookLadder.o(.rodata); - src/object/heartContainer.o(.rodata); - data/const/object/heartContainer.o(.rodata); - data/const/object/fileScreenObjects.o(.rodata); - data/animations/object/fileScreenObjects.o(.rodata); - data/const/object/object49.o(.rodata); - data/const/object/backgroundCloud.o(.rodata); - data/const/object/object4B.o(.rodata); - data/const/object/pushableFurniture.o(.rodata); - data/const/object/furniture.o(.rodata); - data/animations/object/furniture.o(.rodata); - data/const/object/minishSizedEntrance.o(.rodata); - data/animations/object/minishSizedEntrance.o(.rodata); - data/const/object/object51.o(.rodata); - data/const/object/object53.o(.rodata); - data/const/object/pullableLever.o(.rodata); - data/animations/object/pullableLever.o(.rodata); - data/const/object/minecart.o(.rodata); - data/animations/object/minecart.o(.rodata); - data/const/object/thoughtBubble.o(.rodata); - data/animations/object/thoughtBubble.o(.rodata); - data/const/object/hiddenLadderDown.o(.rodata); - data/const/object/gentariCurtains.o(.rodata); - data/animations/object/gentariCurtains.o(.rodata); - data/const/object/lavaPlatform.o(.rodata); - data/animations/object/lavaPlatform.o(.rodata); - data/const/object/object5A.o(.rodata); - data/const/object/object5B.o(.rodata); - data/const/object/mask.o(.rodata); - data/const/object/houseDoorInterior.o(.rodata); - data/const/object/whirlwind.o(.rodata); - data/animations/object/whirlwind.o(.rodata); - data/const/object/objectBlockingStairs.o(.rodata); - data/const/object/swordsmanNewsletter.o(.rodata); - data/const/object/object61.o(.rodata); - data/const/object/giantTwig.o(.rodata); - data/const/object/object63.o(.rodata); - data/const/object/object64.o(.rodata); - data/animations/object/object64.o(.rodata); - data/const/object/ladderHoleInBookshelf.o(.rodata); - data/const/object/object67.o(.rodata); - data/const/object/object68.o(.rodata); - data/const/object/object6A.o(.rodata); - data/animations/object/object6A.o(.rodata); - data/const/object/crenalBeanSprout.o(.rodata); - data/animations/object/crenalBeanSprout.o(.rodata); - data/const/object/minecartDoor.o(.rodata); - data/const/object/objectOnPillar.o(.rodata); - data/const/object/mineralWaterSource.o(.rodata); - data/const/object/object70.o(.rodata); - data/const/object/pushableGrave.o(.rodata); - data/const/object/object72.o(.rodata); - data/const/object/lilypadSmall.o(.rodata); - data/const/object/object74.o(.rodata); - data/const/object/bell.o(.rodata); - data/const/object/macroDecorations.o(.rodata); - data/const/object/object79.o(.rodata); - data/animations/object/object79.o(.rodata); - data/const/object/steam.o(.rodata); - data/const/object/pushableLever.o(.rodata); - data/animations/object/pushableLever.o(.rodata); - data/const/object/macroShoes.o(.rodata); - data/const/object/objectOnSpinyBeetle.o(.rodata); - data/const/object/picoBloom.o(.rodata); - data/animations/object/picoBloom.o(.rodata); - data/const/object/object80.o(.rodata); - data/const/object/object81.o(.rodata); - data/const/object/bigVortex.o(.rodata); - data/animations/object/bigVortex.o(.rodata); - data/const/object/bigPushableLever.o(.rodata); - data/animations/object/bigPushableLever.o(.rodata); - data/const/object/smallIceBlock.o(.rodata); - data/animations/object/smallIceBlock.o(.rodata); - data/const/object/bigIceBlock.o(.rodata); - data/animations/object/bigIceBlock.o(.rodata); - data/const/object/object86.o(.rodata); - data/animations/object/object86.o(.rodata); - data/const/object/object87.o(.rodata); - data/const/object/macroBook.o(.rodata); - data/animations/object/macroBook.o(.rodata); - data/const/object/object89.o(.rodata); - data/const/object/object8A.o(.rodata); - data/const/object/object8B.o(.rodata); - data/const/object/books.o(.rodata); - data/const/object/fireplace.o(.rodata); - data/const/object/object8E.o(.rodata); - data/const/object/frozenWaterElement.o(.rodata); - data/const/object/object90.o(.rodata); - data/const/object/object91.o(.rodata); - data/const/object/bakerOven.o(.rodata); - data/animations/object/bakerOven.o(.rodata); - data/const/object/object93.o(.rodata); - data/const/object/bird.o(.rodata); - data/animations/object/bird.o(.rodata); - data/const/object/object96.o(.rodata); - data/const/object/object97.o(.rodata); - data/const/object/object98.o(.rodata); - data/animations/object/object98.o(.rodata); - data/const/object/macroAcorn.o(.rodata); - data/const/object/object9B.o(.rodata); - data/animations/object/object9B.o(.rodata); - data/const/object/treeHidingPortal.o(.rodata); - data/const/object/lightableSwitch.o(.rodata); - data/const/object/fan.o(.rodata); - data/animations/object/fan.o(.rodata); - data/const/object/objectA0.o(.rodata); - data/animations/object/objectA0.o(.rodata); - data/const/object/palaceArchway.o(.rodata); src/object/objectA2.o(.rodata); - data/animations/object/objectA2.o(.rodata); - data/const/object/cloud.o(.rodata); - data/const/object/minishLight.o(.rodata); - data/const/object/objectA6.o(.rodata); - data/animations/object/objectA6.o(.rodata); - data/const/object/objectA8.o(.rodata); - data/const/object/objectA9.o(.rodata); - data/const/object/waterfallOpening.o(.rodata); - data/const/object/objectAB.o(.rodata); - data/animations/object/objectAB.o(.rodata); - data/const/object/fourElements.o(.rodata); - data/const/object/objectAD.o(.rodata); - data/const/object/objectAF.o(.rodata); - data/animations/object/objectAF.o(.rodata); - data/const/object/metalDoor.o(.rodata); - data/const/object/jailBars.o(.rodata); - data/animations/object/jailBars.o(.rodata); - data/animations/object/objectB2.o(.rodata); - data/const/object/objectB3.o(.rodata); - data/animations/object/objectB3.o(.rodata); - data/const/object/objectB4.o(.rodata); - data/animations/object/objectB4.o(.rodata); - data/const/object/well.o(.rodata); - data/const/object/windTribeTeleporter.o(.rodata); - data/const/object/objectB9.o(.rodata); - data/const/object/objectBA.o(.rodata); - data/animations/object/objectBA.o(.rodata); - data/const/object/windcrest.o(.rodata); - data/const/object/objectBD.o(.rodata); - data/const/object/pinwheel.o(.rodata); - data/animations/object/pinwheel.o(.rodata); - data/const/object/objectC1.o(.rodata); - data/data_08125104.o(.rodata); - data/const/playerItem/playerItemShield.o(.rodata); - data/const/playerItem/playerItem15.o(.rodata); - data/data_08127280.o(.rodata); - data/const/playerItem/playerItemSword.o(.rodata); - data/data_08129320.o(.rodata); - data/const/projectile/projectile0.o(.rodata); - data/const/projectile/projectile1.o(.rodata); - data/animations/projectile/projectile1.o(.rodata); - data/const/projectile/projectile2.o(.rodata); - data/animations/projectile/projectile2.o(.rodata); - data/const/projectile/projectile3.o(.rodata); - data/const/projectile/projectile4.o(.rodata); - data/const/projectile/projectile5.o(.rodata); - data/const/projectile/projectile6.o(.rodata); - data/animations/projectile/projectile6.o(.rodata); - data/const/projectile/projectile7.o(.rodata); - data/animations/projectile/projectile7.o(.rodata); - data/const/projectile/projectile8.o(.rodata); - data/animations/projectile/projectile8.o(.rodata); - data/const/projectile/projectile9.o(.rodata); - data/animations/projectile/projectile9.o(.rodata); - data/const/projectile/projectileA.o(.rodata); - data/const/projectile/projectileB.o(.rodata); - data/const/projectile/projectileC.o(.rodata); - data/const/projectile/projectileD.o(.rodata); - data/animations/projectile/projectileD.o(.rodata); - data/const/projectile/projectileE.o(.rodata); - data/animations/projectile/projectileE.o(.rodata); - data/const/projectile/projectileF.o(.rodata); - data/const/projectile/projectile10.o(.rodata); - data/const/projectile/projectile11.o(.rodata); - data/animations/projectile/projectile11.o(.rodata); - data/const/projectile/projectile12.o(.rodata); - data/animations/projectile/projectile12.o(.rodata); - data/const/projectile/projectile13.o(.rodata); - data/animations/projectile/projectile13.o(.rodata); - data/const/projectile/projectile14.o(.rodata); - data/const/projectile/projectile15.o(.rodata); - data/animations/projectile/projectile15.o(.rodata); - data/const/projectile/projectile16.o(.rodata); - data/animations/projectile/projectile16.o(.rodata); - data/const/projectile/projectile18.o(.rodata); - data/animations/projectile/projectile18.o(.rodata); - data/const/projectile/projectile19.o(.rodata); - data/const/projectile/projectile1A.o(.rodata); - data/const/projectile/projectile1B.o(.rodata); - data/animations/projectile/projectile1B.o(.rodata); - data/const/projectile/projectile1C.o(.rodata); - data/animations/projectile/projectile1C.o(.rodata); - data/const/projectile/projectile1D.o(.rodata); - data/const/projectile/projectile1E.o(.rodata); - data/animations/projectile/projectile1E.o(.rodata); - data/const/projectile/projectile1F.o(.rodata); - data/animations/projectile/projectile1F.o(.rodata); - data/const/projectile/projectile20.o(.rodata); - data/animations/projectile/projectile20.o(.rodata); - data/const/projectile/projectile21.o(.rodata); - data/const/projectile/projectile22.o(.rodata); - data/const/projectile/projectile23.o(.rodata); - data/animations/projectile/projectile23.o(.rodata); - data/const/projectile/projectile24.o(.rodata); - data/const/playerItem/playerItem10.o(.rodata); - data/data_0812AA88.o(.rodata); - data/const/playerItem/playerItem13.o(.rodata); - src/intro.o(.rodata); - data/data_081320FC.o(.rodata); - data/const/playerItem/playerItemGustJar.o(.rodata); - data/data_08132B30.o(.rodata); - data/strings.o(.rodata); - data/sprite_table.o(.rodata); - src/gba/m4a.o(.rodata); - data/data_089FC6C4.o(.rodata); - src/audio.o(.rodata); - data/data_08A127A1.o(.rodata); - data/sounds.o(.rodata); - src/eeprom.o(.rodata); - } >rom - - /* DWARF 2 sections */ - .debug_aranges 0 : { *(.debug_aranges) } - .debug_pubnames 0 : { *(.debug_pubnames) } - .debug_info 0 : { *(.debug_info) } - .debug_abbrev 0 : { *(.debug_abbrev) } - .debug_line 0 : { *(.debug_line) } - .debug_frame 0 : { *(.debug_frame) } - .debug_str 0 : { *(.debug_str) } - .debug_loc 0 : { *(.debug_loc) } - .debug_macinfo 0 : { *(.debug_macinfo) } - - /* Discard everything not specifically mentioned above. */ - /DISCARD/ : - { - *(*); - } -} diff --git a/src/audio.c b/src/audio.c index b9de7665..e8301fd6 100644 --- a/src/audio.c +++ b/src/audio.c @@ -744,11 +744,7 @@ extern const SongHeader sfx21F; extern const SongHeader sfx220; extern const SongHeader sfx221; -#ifdef DEMO -extern MusicPlayerTrack gMPlayTracksDEMO[]; -#else extern MusicPlayerTrack gMPlayTracks[]; -#endif extern MusicPlayerInfo gMPlayInfos[0x1C]; extern u8 gMPlayMemAccArea[0x10]; @@ -789,42 +785,6 @@ typedef enum { MUSIC_PLAYER_BGM, } MusicPlayerE; -#ifdef DEMO -const MusicPlayer gMusicPlayers[] = { - [MUSIC_PLAYER_00] = { &gMPlayInfos[0x08], &gMPlayTracksDEMO[0x00], 2, 1 }, - [MUSIC_PLAYER_PLY_VO] = { &gMPlayInfos[0x12], &gMPlayTracksDEMO[0x02], 1, 1 }, - [MUSIC_PLAYER_02] = { &gMPlayInfos[0x13], &gMPlayTracksDEMO[0x03], 1, 1 }, - [MUSIC_PLAYER_03] = { &gMPlayInfos2[0x2], &gMPlayTracksDEMO[0x04], 2, 1 }, - [MUSIC_PLAYER_04] = { &gMPlayInfos[0x1B], &gMPlayTracksDEMO[0x06], 2, 1 }, - [MUSIC_PLAYER_05] = { &gMPlayInfos[0x03], &gMPlayTracksDEMO[0x08], 2, 1 }, - [MUSIC_PLAYER_06] = { &gMPlayInfos[0x07], &gMPlayTracksDEMO[0x0A], 2, 1 }, - [MUSIC_PLAYER_07] = { &gMPlayInfos[0x11], &gMPlayTracksDEMO[0x0C], 2, 1 }, - [MUSIC_PLAYER_08] = { &gMPlayInfos2[0x1], &gMPlayTracksDEMO[0x0E], 2, 1 }, - [MUSIC_PLAYER_09] = { &gMPlayInfos[0x06], &gMPlayTracksDEMO[0x10], 2, 1 }, - [MUSIC_PLAYER_0A] = { &gMPlayInfos[0x14], &gMPlayTracksDEMO[0x12], 2, 1 }, - [MUSIC_PLAYER_0B] = { &gMPlayInfos2[0x3], &gMPlayTracksDEMO[0x14], 2, 1 }, - [MUSIC_PLAYER_0C] = { &gMPlayInfos[0x19], &gMPlayTracksDEMO[0x16], 2, 1 }, - [MUSIC_PLAYER_0D] = { &gMPlayInfos[0x02], &gMPlayTracksDEMO[0x18], 2, 1 }, - [MUSIC_PLAYER_0E] = { &gMPlayInfos[0x0E], &gMPlayTracksDEMO[0x1A], 2, 1 }, - [MUSIC_PLAYER_0F] = { &gMPlayInfos[0x18], &gMPlayTracksDEMO[0x1C], 2, 1 }, - [MUSIC_PLAYER_10] = { &gMPlayInfos[0x05], &gMPlayTracksDEMO[0x1E], 2, 1 }, - [MUSIC_PLAYER_11] = { &gMPlayInfos[0x1A], &gMPlayTracksDEMO[0x20], 2, 1 }, - [MUSIC_PLAYER_12] = { &gMPlayInfos[0x0D], &gMPlayTracksDEMO[0x22], 2, 1 }, - [MUSIC_PLAYER_13] = { &gMPlayInfos[0x00], &gMPlayTracksDEMO[0x24], 2, 1 }, - [MUSIC_PLAYER_14] = { &gMPlayInfos[0x0A], &gMPlayTracksDEMO[0x26], 2, 1 }, - [MUSIC_PLAYER_15] = { &gMPlayInfos[0x0C], &gMPlayTracksDEMO[0x28], 2, 1 }, - [MUSIC_PLAYER_16] = { &gMPlayInfos[0x17], &gMPlayTracksDEMO[0x2A], 2, 1 }, - [MUSIC_PLAYER_17] = { &gMPlayInfos[0x01], &gMPlayTracksDEMO[0x2C], 2, 1 }, - [MUSIC_PLAYER_18] = { &gMPlayInfos[0x0B], &gMPlayTracksDEMO[0x2E], 2, 1 }, - [MUSIC_PLAYER_19] = { &gMPlayInfos[0x15], &gMPlayTracksDEMO[0x30], 2, 1 }, - [MUSIC_PLAYER_1A] = { &gMPlayInfos[0x09], &gMPlayTracksDEMO[0x32], 2, 1 }, - [MUSIC_PLAYER_1B] = { &gMPlayInfos2[0x0], &gMPlayTracksDEMO[0x34], 2, 1 }, - [MUSIC_PLAYER_1C] = { &gMPlayInfos[0x0F], &gMPlayTracksDEMO[0x36], 2, 1 }, - [MUSIC_PLAYER_1D] = { &gMPlayInfos[0x16], &gMPlayTracksDEMO[0x38], 2, 1 }, - [MUSIC_PLAYER_1E] = { &gMPlayInfos[0x04], &gMPlayTracksDEMO[0x3A], 0xc, 0 }, - [MUSIC_PLAYER_BGM] = { &gMPlayInfos[0x10], &gMPlayTracksDEMO[0x46], 0xc, 0 }, -}; -#else const MusicPlayer gMusicPlayers[] = { [MUSIC_PLAYER_00] = { &gMPlayInfos[0x08], &gMPlayTracks[0x00], 2, 1 }, [MUSIC_PLAYER_PLY_VO] = { &gMPlayInfos[0x12], &gMPlayTracks[0x02], 1, 1 }, @@ -859,7 +819,6 @@ const MusicPlayer gMusicPlayers[] = { [MUSIC_PLAYER_1E] = { &gMPlayInfos[0x04], &gMPlayTracks[0x3A], 0xc, 0 }, [MUSIC_PLAYER_BGM] = { &gMPlayInfos[0x10], &gMPlayTracks[0x46], 0xc, 0 }, }; -#endif const Song gSongTable[] = { [SFX_NONE] = { &sfxNone, MUSIC_PLAYER_BGM, MUSIC_PLAYER_BGM }, diff --git a/src/code_0805F9A0.c b/src/code_0805F9A0.c index 55c1545d..120a7625 100644 --- a/src/code_0805F9A0.c +++ b/src/code_0805F9A0.c @@ -5,13 +5,8 @@ extern u16 gUnk_081092D4; extern u8 gUnk_081094CE; -#ifdef DEMO -extern u8 gUnk_02036AD0; -extern u8 gUnk_02036A50; -#else extern u8 gUnk_02036AD8; extern u8 gUnk_02036A58; -#endif extern void* gUnk_081092AC[]; typedef struct { @@ -64,11 +59,7 @@ void sub_0805F820(WStruct* r0, u32* r1) { VStruct* temp3; if (r0->unk4 - r0->unk6 > 0) { -#ifdef DEMO - sub_08002724(r1, &gUnk_02036A50); -#else sub_08002724(r1, &gUnk_02036A58); -#endif if (r0->unk1 == 0) { u32 tmp = sub_0805F7A0(*r1); uVar6 = tmp & 0xf; @@ -86,11 +77,7 @@ void sub_0805F820(WStruct* r0, u32* r1) { uVar3 = uVar4; } -#ifdef DEMO - puVar8 = &gUnk_02036A50 + uVar6; -#else puVar8 = &gUnk_02036A58 + uVar6; -#endif temp2 = r0->unk8; temp = gUnk_0810942E[r0->unk3].filler0[r0->unk2 * 2]; uVar7 = r0->unk6; @@ -133,40 +120,23 @@ void sub_0805F918(u32 idx, u32 idx2, void* dest) { u8* temp; u8* temp2; -#ifdef DEMO - MemFill32(sub_0805F8F8(idx2), &gUnk_02036AD0, 0xe0); -#else MemFill32(sub_0805F8F8(idx2), &gUnk_02036AD8, 0xe0); -#endif puVar1 = gUnk_081092AC[idx]; temp = &gUnk_081094CE + idx2 * 0xc0; idx3 = 0; for (i = 0; i < 3; i++) { -#ifdef DEMO - puVar2 = &gUnk_02036A50; - sub_08002724(puVar1, &gUnk_02036A50); -#else puVar2 = &gUnk_02036A58; sub_08002724(puVar1, &gUnk_02036A58); -#endif puVar1 += 0x40; for (j = 0; j < 8; j++) { -#ifdef DEMO - sub_080026C4(puVar2, &gUnk_02036AD0, temp, idx3); -#else sub_080026C4(puVar2, &gUnk_02036AD8, temp, idx3); -#endif puVar2++; idx3++; } } -#ifdef DEMO - LoadResourceAsync((const void*)&gUnk_02036AD0, (u32)dest, 0xe0); -#else LoadResourceAsync((const void*)&gUnk_02036AD8, (u32)dest, 0xe0); -#endif } u32 sub_0805F9A0(u32 r0) { diff --git a/src/enemy/bombPeahat.c b/src/enemy/bombPeahat.c index f94035fc..4e7bbdad 100644 --- a/src/enemy/bombPeahat.c +++ b/src/enemy/bombPeahat.c @@ -365,7 +365,7 @@ void sub_0802AD54(Entity* this) { #ifdef EU // TODO regalloc in EU version NAKED void sub_0802ADDC(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x02AD48, 0x000004C"); // TODOg disassemble + asm(".incbin \"baserom_eu.gba\", 0x02AD48, 0x000004C"); // TODO disassemble } #else void sub_0802ADDC(Entity* this) { diff --git a/src/main.c b/src/main.c index 286e128a..421fe0f1 100644 --- a/src/main.c +++ b/src/main.c @@ -92,11 +92,7 @@ void AgbMain(void) { // Interrupt handlers that are loaded into RAM. extern u8 sub_080B197C[]; extern u8 gUnk_030056F0[]; -#ifdef DEMO -extern u8 gUnk_02038558[]; -#else extern u8 gUnk_02038560[]; -#endif extern u8 gUnk_080B2CD8[]; extern u8 gUnk_080B2CD8_2[]; extern u8 gUnk_080B2CD8_3[]; @@ -118,11 +114,7 @@ static void sub_08055F70(void) { size = (u32)gUnk_080B2CD8_2 - (u32)gUnk_080B2CD8_3; if (size != 0) { -#ifdef DEMO - MemCopy(gUnk_080B2CD8_3, gUnk_02038558, size); -#else MemCopy(gUnk_080B2CD8_3, gUnk_02038560, size); -#endif } DispReset(0); diff --git a/src/manager/manager4.c b/src/manager/manager4.c index ccce7d47..99b61179 100644 --- a/src/manager/manager4.c +++ b/src/manager/manager4.c @@ -98,7 +98,7 @@ extern void sub_08080930(); #ifdef EU NAKED void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) { - asm(".incbin \"baserom_eu.gba\", 0x057580, 0x0000078"); // TODOg disassemble + asm(".incbin \"baserom_eu.gba\", 0x057580, 0x0000078"); // TODO disassemble } #else void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) { diff --git a/src/manager/manager7.c b/src/manager/manager7.c index b30beaf1..70af525c 100644 --- a/src/manager/manager7.c +++ b/src/manager/manager7.c @@ -57,7 +57,7 @@ const u8 gUnk_081081E4[] = { 0x16, 0x17, 0x17, 0x18, 0x18 }; #ifdef EU NAKED void Manager7_Main(Manager7* this) { - asm(".incbin \"baserom_eu.gba\", 0x0578A0, 0x00000CC"); // TODOg disassemble + asm(".incbin \"baserom_eu.gba\", 0x0578A0, 0x00000CC"); // TODO disassemble } #else void Manager7_Main(Manager7* this) { @@ -134,7 +134,7 @@ void sub_08057E64() { #ifdef EU NAKED void sub_08057E7C(u32 unk1) { - asm(".incbin \"baserom_eu.gba\", 0x0579B8, 0x0000050"); // TODOg disassemble + asm(".incbin \"baserom_eu.gba\", 0x0579B8, 0x0000050"); // TODO disassemble } #else void sub_08057E7C(u32 unk1) { diff --git a/src/npc/phonograph.c b/src/npc/phonograph.c index f2061b41..e6c23f1e 100644 --- a/src/npc/phonograph.c +++ b/src/npc/phonograph.c @@ -27,7 +27,7 @@ ASM_FUNC("asm/non_matching/phonograph/sub_0806E964.inc", #ifdef EU NAKED void sub_0806EABC(Entity* this, u32 param) { - asm(".incbin \"baserom_eu.gba\", 0x06E4F8, 0x000003C"); // TODOg disassemble + asm(".incbin \"baserom_eu.gba\", 0x06E4F8, 0x000003C"); // TODO disassemble } #else void sub_0806EABC(Entity* this, u32 param) { diff --git a/src/projectile/projectile13.c b/src/projectile/projectile13.c index 092a99bc..1397a72e 100644 --- a/src/projectile/projectile13.c +++ b/src/projectile/projectile13.c @@ -125,7 +125,7 @@ void sub_080A9FD0(Entity* this) { #ifdef EU NAKED void sub_080AA044(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x0A983C, 0x00000C4"); // TODOg disassemble + asm(".incbin \"baserom_eu.gba\", 0x0A983C, 0x00000C4"); // TODO disassemble } #else void sub_080AA044(Entity* this) { From 78f88ccee2e193b939ba665e471e936a2ab0ab95 Mon Sep 17 00:00:00 2001 From: octorock <79596758+octorock@users.noreply.github.com> Date: Tue, 22 Jun 2021 12:34:17 +0200 Subject: [PATCH 06/11] Exclude baseroms as dependencies in scaninc --- INSTALL.md | 12 ++++++++++++ data/data_08125104.s | 8 ++++++++ tools/scaninc/scaninc.cpp | 5 ++++- 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/INSTALL.md b/INSTALL.md index 52053fd2..ca85d21c 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,5 +1,17 @@ +# Install First, you must put a The Legend of Zelda: The Minish Cap (U) ROM (with SHA1: `b4bd50e4131b027c334547b4524e2dbbd4227130`) in the root directory of the repository and name it `baserom.gba`. + +## Building other variants +To build other variants, you currently need a combination of different baseroms, depending on the variant. +| | USA | DEMO | JP | EU | +| - | :-: | :-: | :-: | :-: | +| baserom.gba | X | X | X | X | +| baserom_demo.gba | | X | | | +| baserom_jp.gba | | | X | X | +| baserom_eu.gba | | | | X | + + ## Prerequisites | Linux | macOS | Windows 10 (build 18917+) | Windows 10 (1709+) | Windows 8, 8.1, and 10 (1507, 1511, 1607, 1703) diff --git a/data/data_08125104.s b/data/data_08125104.s index 878a558d..59eb64fa 100644 --- a/data/data_08125104.s +++ b/data/data_08125104.s @@ -636,7 +636,11 @@ gUnk_08126798:: @ 08126798 .incbin "baserom.gba", 0x126B60, 0x000001C .endif .4byte gUnk_08125F10 +.ifdef EU .incbin "baserom_eu.gba", 0x1262B8, 0x0000004 +.else + .incbin "baserom.gba", 0x126B80, 0x0000004 +.endif .4byte gUnk_08125F38 .incbin "baserom.gba", 0x126B88, 0x000000C .4byte gUnk_08125F48 @@ -701,7 +705,11 @@ gUnk_08126798:: @ 08126798 .incbin "baserom.gba", 0x126CC0, 0x000001C .endif .4byte gUnk_081263E8 +.ifdef EU .incbin "baserom_eu.gba", 0x126418, 0x0000004 +.else + .incbin "baserom.gba", 0x126CE0, 0x0000004 +.endif .4byte gUnk_081262B8 .incbin "baserom.gba", 0x126CE8, 0x0000004 .4byte gUnk_081262D0 diff --git a/tools/scaninc/scaninc.cpp b/tools/scaninc/scaninc.cpp index b95cbd03..4c4a5cc9 100755 --- a/tools/scaninc/scaninc.cpp +++ b/tools/scaninc/scaninc.cpp @@ -93,7 +93,10 @@ int main(int argc, char **argv) includeDirs.push_back(file.GetSrcDir()); for (auto incbin : file.GetIncbins()) { - dependencies.insert(incbin); + // Don't include incbins starting with baserom, as they might not be necessary if another variant is being built. + if (incbin.rfind("baserom", 0) != 0) { + dependencies.insert(incbin); + } } for (auto include : file.GetIncludes()) { From 5a301b97fa1c41df0ad88542097e013be5870ab7 Mon Sep 17 00:00:00 2001 From: octorock <79596758+octorock@users.noreply.github.com> Date: Tue, 22 Jun 2021 22:58:34 +0200 Subject: [PATCH 07/11] Disassemble functions --- asm/beanstalk.s | 248 +++- asm/chuchuBoss.s | 311 ++++- asm/code_08000108.s | 36 +- asm/code_0801D79C.s | 139 ++- asm/code_080A3BD0.s | 535 ++++++++- asm/code_080A5574.s | 1062 ++++++++++++++++- asm/code_080ADD30.s | 148 ++- asm/crt0.s | 2 +- asm/enemy50.s | 42 +- asm/figurineDevice.s | 672 ++++++++++- asm/fileScreen.s | 97 +- asm/gleerok.s | 86 +- asm/gyorgFemale.s | 181 ++- asm/gyorgFemaleEye.s | 66 +- asm/intr.s | 295 ++++- asm/item/itemLantern.s | 57 +- asm/item/itemSword.s | 180 ++- asm/ladderUp.s | 251 +++- asm/manager37.s | 59 +- asm/managerF.s | 3 +- asm/non_matching/eu/HandlePlayerLife.inc | 251 ++++ asm/non_matching/eu/Manager7_Main.inc | 95 ++ .../eu/TextBoxHandlerQuestion.inc | 153 +++ asm/non_matching/eu/sub_0801F428.inc | 47 + asm/non_matching/eu/sub_0802AAC0.inc | 101 ++ asm/non_matching/eu/sub_0802AB40.inc | 50 + asm/non_matching/eu/sub_0802AC40.inc | 43 + asm/non_matching/eu/sub_0802ADDC.inc | 38 + asm/non_matching/eu/sub_0802AE68.inc | 78 ++ asm/non_matching/eu/sub_0802B1BC.inc | 71 ++ asm/non_matching/eu/sub_0805457C.inc | 207 ++++ asm/non_matching/eu/sub_08057A18.inc | 56 + asm/non_matching/eu/sub_08057E7C.inc | 37 + asm/non_matching/eu/sub_0806EABC.inc | 24 + asm/non_matching/eu/sub_080AA044.inc | 98 ++ asm/non_matching/phonograph/sub_0806E964.inc | 149 ++- asm/non_matching/stockwell/sub_08065370.inc | 179 ++- asm/object29.s | 101 +- asm/object6A.s | 82 +- asm/objectBA.s | 140 ++- asm/octorokBoss.s | 494 +++++++- asm/playerItem/playerItem15.s | 443 ++++++- asm/playerItem/playerItem3.s | 102 +- asm/sub_0807CA18.s | 10 +- asm/vaatiArm.s | 36 +- asm/vaatiProjectile.s | 80 +- asm/vaatiWrath.s | 113 +- asm/waterfallOpening.s | 159 ++- asm/windTribeTeleporter.s | 225 +++- data/const/playerItem/playerItem15.s | 8 +- data/data_08108E6C.s | 2 +- data/data_0812AA88.s | 7 - data/map_headers.s | 2 - data/sounds.s | 99 +- data/sprite_table.s | 10 +- linker.ld | 6 + src/arm_proxy.c | 4 +- src/code_0805436C.c | 4 +- src/enemy/bombPeahat.c | 24 +- src/enemy/chuchu.c | 4 +- src/manager/manager4.c | 4 +- src/manager/manager7.c | 8 +- src/npc/phonograph.c | 4 +- src/projectile/projectile13.c | 4 +- src/save.c | 14 +- src/textbox.c | 4 +- 66 files changed, 8187 insertions(+), 153 deletions(-) create mode 100644 asm/non_matching/eu/HandlePlayerLife.inc create mode 100644 asm/non_matching/eu/Manager7_Main.inc create mode 100644 asm/non_matching/eu/TextBoxHandlerQuestion.inc create mode 100644 asm/non_matching/eu/sub_0801F428.inc create mode 100644 asm/non_matching/eu/sub_0802AAC0.inc create mode 100644 asm/non_matching/eu/sub_0802AB40.inc create mode 100644 asm/non_matching/eu/sub_0802AC40.inc create mode 100644 asm/non_matching/eu/sub_0802ADDC.inc create mode 100644 asm/non_matching/eu/sub_0802AE68.inc create mode 100644 asm/non_matching/eu/sub_0802B1BC.inc create mode 100644 asm/non_matching/eu/sub_0805457C.inc create mode 100644 asm/non_matching/eu/sub_08057A18.inc create mode 100644 asm/non_matching/eu/sub_08057E7C.inc create mode 100644 asm/non_matching/eu/sub_0806EABC.inc create mode 100644 asm/non_matching/eu/sub_080AA044.inc diff --git a/asm/beanstalk.s b/asm/beanstalk.s index 91857daf..1afe4276 100644 --- a/asm/beanstalk.s +++ b/asm/beanstalk.s @@ -23,7 +23,253 @@ _08089D18: .4byte gUnk_08120DF4 thumb_func_start sub_08089D1C sub_08089D1C: @ 0x08089D1C .ifdef EU - .incbin "baserom_eu.gba", 0x089620, 0x00001E0 @TODO disassemble + push {r4, r5, r6, lr} + adds r5, r0, #0 + ldrb r1, [r5, #0x19] + movs r4, #0x3f + adds r0, r4, #0 + ands r0, r1 + movs r6, #0x80 + orrs r0, r6 + strb r0, [r5, #0x19] + ldrb r1, [r5, #0x1b] + adds r0, r4, #0 + ands r0, r1 + movs r1, #0x40 + orrs r0, r1 + strb r0, [r5, #0x1b] + adds r0, r5, #0 + movs r1, #4 + bl sub_0805E3A0 + ldrb r0, [r5, #0xa] + cmp r0, #7 + bne _08089688 + ldrb r0, [r5, #0xb] + cmp r0, #0 + bne _0808966C + ldrb r0, [r5, #0xe] + cmp r0, #0 + beq _0808966C + bl CheckLocalFlag + cmp r0, #0 + bne _08089662 + b _080897FE +_08089662: + ldrb r1, [r5, #0x1b] + adds r0, r4, #0 + ands r0, r1 + orrs r0, r6 + strb r0, [r5, #0x1b] +_0808966C: + ldr r4, _08089684 @ =gUnk_08120E3C + ldrb r0, [r5, #0xb] + lsls r0, r0, #2 + adds r0, r0, r4 + ldrb r1, [r0] + adds r0, r5, #0 + bl InitializeAnimation + ldrb r0, [r5, #0xb] + lsls r0, r0, #2 + adds r0, r0, r4 + b _080896C6 + .align 2, 0 +_08089684: .4byte gUnk_08120E3C +_08089688: + cmp r0, #0 + beq _080896A4 + ldr r0, _080896A0 @ =gUnk_08120E14 + ldrb r1, [r5, #0xa] + lsls r1, r1, #2 + adds r1, r1, r0 + ldrb r1, [r1] + adds r0, r5, #0 + bl InitializeAnimation + b _080896BE + .align 2, 0 +_080896A0: .4byte gUnk_08120E14 +_080896A4: + adds r0, r5, #0 + movs r1, #1 + movs r2, #2 + bl sub_080AE008 + ldr r0, _08089700 @ =gUnk_08120E14 + ldrb r1, [r5, #0xa] + lsls r1, r1, #2 + adds r1, r1, r0 + ldrb r1, [r1] + adds r0, r5, #0 + bl InitAnimationForceUpdate +_080896BE: + ldr r1, _08089700 @ =gUnk_08120E14 + ldrb r0, [r5, #0xa] + lsls r0, r0, #2 + adds r0, r0, r1 +_080896C6: + ldrb r0, [r0, #1] + adds r3, r5, #0 + adds r3, #0x29 + movs r1, #7 + ands r1, r0 + ldrb r2, [r3] + movs r0, #8 + rsbs r0, r0, #0 + ands r0, r2 + orrs r0, r1 + strb r0, [r3] + movs r2, #1 + movs r0, #1 + strb r0, [r5, #0xc] + ldrb r1, [r5, #0x18] + subs r0, #5 + ands r0, r1 + orrs r0, r2 + strb r0, [r5, #0x18] + ldrb r0, [r5, #0xa] + cmp r0, #1 + bge _080896F4 + b _080897F8 +_080896F4: + cmp r0, #6 + ble _08089704 + cmp r0, #7 + beq _08089714 + b _080897F8 + .align 2, 0 +_08089700: .4byte gUnk_08120E14 +_08089704: + adds r0, r5, #0 + adds r0, #0x60 + movs r2, #0 + movs r1, #0xe0 + lsls r1, r1, #1 + strh r1, [r0] + strb r2, [r5, #0xe] + b _080897F8 +_08089714: + ldrb r1, [r5, #0xb] + cmp r1, #3 + bgt _08089724 + cmp r1, #2 + bge _080897E4 + cmp r1, #0 + beq _0808972A + b _080897F8 +_08089724: + cmp r1, #4 + beq _080897F0 + b _080897F8 +_0808972A: + movs r0, #0x10 + str r0, [r5, #0x6c] + strb r1, [r5, #0xe] +_08089730: + movs r0, #0x2c + movs r1, #7 + movs r2, #1 + bl CreateObject + adds r1, r0, #0 + str r1, [r5, #0x54] + cmp r1, #0 + beq _080897C0 + ldrh r0, [r5, #0x2e] + strh r0, [r1, #0x2e] + ldr r2, [r5, #0x54] + ldr r1, [r5, #0x6c] + ldrh r0, [r5, #0x32] + subs r0, r0, r1 + strh r0, [r2, #0x32] + movs r0, #3 + strb r0, [r5, #0xf] +_08089754: + ldrb r0, [r5, #0xe] + lsls r0, r0, #2 + ldr r1, _080897DC @ =gUnk_08120DFC + adds r4, r0, r1 + ldrb r2, [r4] + subs r2, #2 + movs r0, #0x2c + movs r1, #7 + bl CreateObject + adds r1, r0, #0 + str r1, [r5, #0x54] + cmp r1, #0 + beq _080897A2 + movs r0, #1 + ldrsb r0, [r4, r0] + ldrh r2, [r5, #0x2e] + adds r0, r0, r2 + strh r0, [r1, #0x2e] + ldr r2, [r5, #0x54] + ldr r1, [r5, #0x6c] + ldrh r0, [r5, #0x32] + subs r0, r0, r1 + movs r1, #2 + ldrsb r1, [r4, r1] + subs r0, r0, r1 + strh r0, [r2, #0x32] + ldr r3, [r5, #0x54] + ldrb r2, [r4, #3] + movs r0, #1 + ands r2, r0 + lsls r2, r2, #6 + ldrb r0, [r3, #0x18] + movs r4, #0x41 + rsbs r4, r4, #0 + adds r1, r4, #0 + ands r0, r1 + orrs r0, r2 + strb r0, [r3, #0x18] +_080897A2: + ldrb r0, [r5, #0xe] + adds r2, r0, #1 + strb r2, [r5, #0xe] + ldrb r0, [r5, #0xf] + subs r0, #1 + strb r0, [r5, #0xf] + lsls r0, r0, #0x18 + lsrs r1, r0, #0x18 + cmp r1, #0 + bne _08089754 + lsls r0, r2, #0x18 + lsrs r0, r0, #0x18 + cmp r0, #5 + bls _080897C0 + strb r1, [r5, #0xe] +_080897C0: + ldr r0, [r5, #0x6c] + adds r0, #0x38 + str r0, [r5, #0x6c] + ldrh r1, [r5, #0x32] + subs r1, r1, r0 + lsls r1, r1, #0x10 + asrs r1, r1, #0x10 + ldr r0, _080897E0 @ =gRoomControls + ldrh r0, [r0, #8] + cmp r1, r0 + bge _08089730 + movs r0, #1 + strb r0, [r5, #0xe] + b _080897F8 + .align 2, 0 +_080897DC: .4byte gUnk_08120DFC +_080897E0: .4byte gRoomControls +_080897E4: + ldrb r0, [r5, #0x19] + movs r1, #0x3f + ands r1, r0 + movs r0, #0x40 + orrs r1, r0 + strb r1, [r5, #0x19] +_080897F0: + adds r1, r5, #0 + adds r1, #0x38 + movs r0, #3 + strb r0, [r1] +_080897F8: + adds r0, r5, #0 + bl sub_08089F08 +_080897FE: + pop {r4, r5, r6, pc} .else push {r4, r5, r6, lr} adds r5, r0, #0 diff --git a/asm/chuchuBoss.s b/asm/chuchuBoss.s index bbbc3632..8ec4ff2e 100644 --- a/asm/chuchuBoss.s +++ b/asm/chuchuBoss.s @@ -1728,7 +1728,279 @@ _080269C8: .4byte 0xFFFFFF00 thumb_func_start sub_080269CC sub_080269CC: @ 0x080269CC .ifdef EU - .incbin "baserom_eu.gba", 0x0269B0, 0x218 @ TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, sb + mov r5, r8 + push {r5, r6, r7} + adds r6, r0, #0 + movs r7, #0 + ldr r5, [r6, #0x54] + ldr r0, [r6, #0x68] + mov sl, r0 + ldr r1, [r6, #0x50] + mov sb, r1 + ldrb r1, [r6, #0x15] + movs r0, #0x10 + ands r0, r1 + movs r1, #0xc0 + lsls r1, r1, #2 + mov r8, r1 + cmp r0, #0 + beq _080269DC + ldr r0, _080269FC @ =0xFFFFFD00 + mov r8, r0 +_080269DC: + mov r0, sl + adds r0, #0x83 + ldrb r0, [r0] + adds r4, r0, #0 + adds r4, #0x20 + lsls r0, r4, #0x18 + lsrs r0, r0, #0x18 + cmp r0, #0x3f + bhi _08026A00 + mov r1, sl + adds r1, #0x82 + ldrh r0, [r1] + add r0, r8 + strh r0, [r1] + b _08026A02 + .align 2, 0 +_080269FC: .4byte 0xFFFFFD00 +_08026A00: + movs r7, #1 +_08026A02: + mov r0, sb + adds r0, #0x83 + ldrb r0, [r0] + adds r4, r0, #0 + adds r4, #0x44 + lsls r0, r4, #0x18 + lsrs r0, r0, #0x18 + cmp r0, #0x87 + bhi _08026A20 + mov r1, sb + adds r1, #0x82 + ldrh r0, [r1] + add r0, r8 + strh r0, [r1] + b _08026A22 +_08026A20: + adds r7, #1 +_08026A22: + adds r0, r5, #0 + adds r0, #0x83 + ldrb r0, [r0] + adds r4, r0, #0 + adds r4, #0x40 + adds r0, #0x20 + cmp r0, #0x40 + bls _08026A62 + ldrb r1, [r6, #0x15] + movs r0, #0x10 + ands r0, r1 + cmp r0, #0 + beq _08026A50 + adds r0, r5, #0 + adds r0, #0x58 + ldrb r0, [r0] + cmp r0, #6 + beq _08026A62 + adds r0, r5, #0 + movs r1, #6 + bl InitAnimationForceUpdate + b _08026A62 +_08026A50: + adds r0, r5, #0 + adds r0, #0x58 + ldrb r0, [r0] + cmp r0, #5 + beq _08026A62 + adds r0, r5, #0 + movs r1, #5 + bl InitAnimationForceUpdate +_08026A62: + lsls r0, r4, #0x18 + cmp r0, #0 + blt _08026A74 + adds r1, r5, #0 + adds r1, #0x82 + ldrh r0, [r1] + add r0, r8 + strh r0, [r1] + b _08026A76 +_08026A74: + adds r7, #1 +_08026A76: + cmp r7, #3 + beq _08026A7C + b _08026B98 +_08026A7C: + ldrb r1, [r6, #0x10] + movs r0, #0x7f + ands r0, r1 + strb r0, [r6, #0x10] + ldrb r1, [r5, #0x10] + movs r0, #0x80 + orrs r0, r1 + strb r0, [r5, #0x10] + adds r1, r5, #0 + adds r1, #0x76 + ldrh r0, [r1] + adds r0, #3 + strh r0, [r1] + movs r0, #0x20 + movs r1, #0 + bl sub_08080964 + ldr r0, _08026B24 @ =0x0000010B + bl SoundReq + adds r0, r6, #0 + movs r1, #0x15 + movs r2, #0 + movs r3, #0 + bl CreateObjectWithParent + adds r4, r0, #0 + cmp r4, #0 + beq _08026B2E + movs r0, #0xc9 + strh r0, [r4, #0x12] + adds r0, r6, #0 + adds r0, #0x60 + ldrh r1, [r0] + adds r0, r4, #0 + adds r0, #0x60 + strh r1, [r0] + ldrb r1, [r6, #0x1a] + lsls r1, r1, #0x1c + lsrs r1, r1, #0x1c + ldrb r2, [r4, #0x1a] + movs r0, #0x10 + rsbs r0, r0, #0 + ands r0, r2 + orrs r0, r1 + strb r0, [r4, #0x1a] + adds r1, r4, #0 + adds r1, #0x58 + movs r0, #1 + strb r0, [r1] + ldrh r0, [r4, #0x32] + adds r0, #0x10 + strh r0, [r4, #0x32] + adds r2, r4, #0 + adds r2, #0x29 + ldrb r1, [r2] + movs r0, #8 + rsbs r0, r0, #0 + ands r0, r1 + strb r0, [r2] + ldrb r2, [r5, #0x19] + lsrs r2, r2, #6 + lsls r2, r2, #6 + ldrb r3, [r4, #0x19] + movs r1, #0x3f + adds r0, r1, #0 + ands r0, r3 + orrs r0, r2 + strb r0, [r4, #0x19] + ldrb r0, [r5, #0x1b] + lsrs r0, r0, #6 + lsls r0, r0, #6 + ldrb r2, [r4, #0x1b] + ands r1, r2 + orrs r1, r0 + strb r1, [r4, #0x1b] + ldrb r1, [r6, #0x15] + movs r0, #0x10 + ands r0, r1 + cmp r0, #0 + beq _08026B28 + ldrh r0, [r4, #0x2e] + subs r0, #0x38 + b _08026B2C + .align 2, 0 +_08026B24: .4byte 0x0000010B +_08026B28: + ldrh r0, [r4, #0x2e] + adds r0, #0x38 +_08026B2C: + strh r0, [r4, #0x2e] +_08026B2E: + ldr r3, [r6, #0x50] + ldr r2, [r6, #0x54] + ldr r0, [r6, #0x68] + adds r0, #0x84 + movs r1, #1 + strb r1, [r0] + adds r2, #0x84 + strb r1, [r2] + adds r3, #0x84 + strb r1, [r3] + mov r0, sb + adds r0, #0x7a + movs r1, #0x98 + strh r1, [r0] + mov r0, sl + adds r0, #0x7a + strh r1, [r0] + adds r0, r5, #0 + adds r0, #0x7a + strh r1, [r0] + bl Random + ldr r2, _08026B94 @ =gUnk_080CC278 + movs r1, #3 + ands r1, r0 + adds r1, r1, r2 + ldrb r0, [r1] + adds r7, r6, #0 + adds r7, #0x7c + strb r0, [r7] + adds r0, r6, #0 + adds r0, #0x84 + ldr r1, [r0] + ldrb r0, [r1, #3] + adds r0, #1 + strb r0, [r1, #3] + adds r0, r5, #0 + movs r1, #0x49 + movs r2, #0xa + movs r3, #0 + bl CreateObjectWithParent + adds r4, r0, #0 + cmp r4, #0 + beq _08026BB4 + adds r1, r4, #0 + adds r1, #0x84 + ldrb r0, [r7] + str r0, [r1] + b _08026BB4 + .align 2, 0 +_08026B94: .4byte gUnk_080CC278 +_08026B98: + adds r0, r5, #0 + adds r0, #0x76 + ldrh r0, [r0] + cmp r0, #0xef + bhi _08026BB4 + ldr r0, [r5, #0x74] + movs r1, #0x80 + lsls r1, r1, #0xb + adds r0, r0, r1 + str r0, [r5, #0x74] + ldr r0, [r5, #0x78] + ldr r1, _08026BC4 @ =0xFFFF8000 + adds r0, r0, r1 + str r0, [r5, #0x78] +_08026BB4: + adds r0, r6, #0 + bl sub_08027870 + pop {r3, r4, r5} + mov r8, r3 + mov sb, r4 + mov sl, r5 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_08026BC4: .4byte 0xFFFF8000 .else push {r4, r5, r6, r7, lr} mov r7, sl @@ -4289,7 +4561,42 @@ _08027D1E: thumb_func_start sub_08027D20 sub_08027D20: @ 0x08027D20 .ifdef EU - .incbin "baserom_eu.gba", 0x027D00, 0x48 @TODO disassemble + push {r4, lr} + adds r4, r0, #0 + movs r1, #0x15 + movs r2, #0 + movs r3, #0 + bl CreateObjectWithParent + adds r3, r0, #0 + cmp r3, #0 + beq _08027D44 + movs r0, #0xc9 + strh r0, [r3, #0x12] + adds r0, r4, #0 + adds r0, #0x60 + ldrh r1, [r0] + adds r0, r3, #0 + adds r0, #0x60 + strh r1, [r0] + ldrb r1, [r4, #0x1a] + lsls r1, r1, #0x1c + lsrs r1, r1, #0x1c + ldrb r2, [r3, #0x1a] + movs r0, #0x10 + rsbs r0, r0, #0 + ands r0, r2 + orrs r0, r1 + strb r0, [r3, #0x1a] + ldrh r0, [r3, #0x32] + adds r0, #1 + strh r0, [r3, #0x32] + adds r1, r3, #0 + adds r1, #0x63 + movs r0, #8 + strb r0, [r1] +_08027D44: + adds r0, r3, #0 + pop {r4, pc} .else push {r4, r5, lr} adds r5, r0, #0 diff --git a/asm/code_08000108.s b/asm/code_08000108.s index 12ce1f80..c3f2ab5f 100644 --- a/asm/code_08000108.s +++ b/asm/code_08000108.s @@ -6,7 +6,41 @@ .text .ifdef EU - .incbin "baserom_eu.gba", 0x000118, 0x38 @TODO disassemble + thumb_func_start sub_08000118 +sub_08000118: @ 0x08000118 + add r0, pc, #0x28 + ldm r0!, {r1, r2, r3} +_0800011C: + subs r2, #4 + str r1, [r2] + cmp r2, r3 + bgt _0800011C + bx lr + + non_word_aligned_thumb_func_start sub_08000126 +sub_08000126: @ 0x08000126 + add r0, pc, #0x1C + ldm r0!, {r1, r2, r3} +_0800012A: + ldr r0, [r3] + adds r3, #4 + cmp r0, r1 + beq _0800012A + subs r2, #0xa0 +_08000134: + ldr r0, [r2] + adds r2, #4 + cmp r0, r1 + beq _08000134 + subs r1, r2, #4 + subs r0, r3, #4 + bx lr + .align 2, 0 +_08000144EU: + .byte 0x33, 0x5A, 0x43, 0x4D + .4byte gUnk_03007FA0 + .4byte gUnk_03006C14 + .endif thumb_func_start sub_08000108 diff --git a/asm/code_0801D79C.s b/asm/code_0801D79C.s index b135154c..a4614d00 100644 --- a/asm/code_0801D79C.s +++ b/asm/code_0801D79C.s @@ -2191,10 +2191,145 @@ _0801E8D2: thumb_func_start sub_0801E8D4 sub_0801E8D4: @ 0x0801E8D4 .ifdef JP - .incbin "baserom_jp.gba", 0x01E8B8, 0x90 @TODO disassemble + push {r4, r5, lr} + movs r4, #0xa +_0801E8BC: + adds r0, r4, #0 + bl CheckKinstoneFused + cmp r0, #0 + beq _0801E93A + adds r0, r4, #0 + bl sub_0801E810 + cmp r0, #0 + bne _0801E93A + ldr r1, _0801E8F4 @ =0x080C9A5C + lsls r0, r4, #3 + adds r0, r0, r1 + ldrb r1, [r0, #4] + lsls r0, r1, #2 + adds r0, r0, r1 + lsls r0, r0, #2 + ldr r1, _0801E8F8 @ =0x080FDFD0 + adds r2, r0, r1 + ldrb r0, [r2, #0x10] + cmp r0, #4 + bhi _0801E926 + lsls r0, r0, #2 + ldr r1, _0801E8FC @ =_0801E900 + adds r0, r0, r1 + ldr r0, [r0] + mov pc, r0 + .align 2, 0 +_0801E8F4: .4byte 0x080C9A5C +_0801E8F8: .4byte 0x080FDFD0 +_0801E8FC: .4byte _0801E900 +_0801E900: @ jump table + .4byte _0801E914 @ case 0 + .4byte _0801E918 @ case 1 + .4byte _0801E91C @ case 2 + .4byte _0801E920 @ case 3 + .4byte _0801E924 @ case 4 +_0801E914: + movs r5, #0 + b _0801E926 +_0801E918: + ldrb r5, [r2, #0x11] + b _0801E926 +_0801E91C: + movs r5, #0xf + b _0801E926 +_0801E920: + movs r5, #0x10 + b _0801E926 +_0801E924: + movs r5, #0x11 +_0801E926: + ldrh r1, [r2, #0x12] + adds r0, r5, #0 + bl sub_0807CB24 + cmp r0, #0 + beq _0801E93A + ldr r0, _0801E944 @ =0x02002C8E + adds r1, r4, #0 + bl WriteBit +_0801E93A: + adds r4, #1 + cmp r4, #0x64 + bls _0801E8BC + pop {r4, r5, pc} + .align 2, 0 +_0801E944: .4byte 0x02002C8E .else .ifdef EU - .incbin "baserom_eu.gba", 0x01E90C, 0x90 @TODO probably the same as JP? + push {r4, r5, lr} + movs r4, #0xa +_0801E910: + adds r0, r4, #0 + bl CheckKinstoneFused + cmp r0, #0 + beq _0801E98E + adds r0, r4, #0 + bl sub_0801E810 + cmp r0, #0 + bne _0801E98E + ldr r1, _0801E948 @ =gUnk_080C9CBC + lsls r0, r4, #3 + adds r0, r0, r1 + ldrb r1, [r0, #4] + lsls r0, r1, #2 + adds r0, r0, r1 + lsls r0, r0, #2 + ldr r1, _0801E94C @ =gUnk_080FE320 + adds r2, r0, r1 + ldrb r0, [r2, #0x10] + cmp r0, #4 + bhi _0801E97A + lsls r0, r0, #2 + ldr r1, _0801E950 @ =_0801E954 + adds r0, r0, r1 + ldr r0, [r0] + mov pc, r0 + .align 2, 0 +_0801E948: .4byte gUnk_080C9CBC +_0801E94C: .4byte gUnk_080FE320 +_0801E950: .4byte _0801E954 +_0801E954: @ jump table + .4byte _0801E968 @ case 0 + .4byte _0801E96C @ case 1 + .4byte _0801E970 @ case 2 + .4byte _0801E974 @ case 3 + .4byte _0801E978 @ case 4 +_0801E968: + movs r5, #0 + b _0801E97A +_0801E96C: + ldrb r5, [r2, #0x11] + b _0801E97A +_0801E970: + movs r5, #0xf + b _0801E97A +_0801E974: + movs r5, #0x10 + b _0801E97A +_0801E978: + movs r5, #0x11 +_0801E97A: + ldrh r1, [r2, #0x12] + adds r0, r5, #0 + bl sub_0807CB24 + cmp r0, #0 + beq _0801E98E + ldr r0, _0801E998 @ =gUnk_02002C8E + adds r1, r4, #0 + bl WriteBit +_0801E98E: + adds r4, #1 + cmp r4, #0x64 + bls _0801E910 + pop {r4, r5, pc} + .align 2, 0 +_0801E998: .4byte gUnk_02002C8E + .else push {r4, r5, lr} movs r5, #0xa diff --git a/asm/code_080A3BD0.s b/asm/code_080A3BD0.s index 041f3bc9..e32620f3 100644 --- a/asm/code_080A3BD0.s +++ b/asm/code_080A3BD0.s @@ -545,7 +545,99 @@ _080A407C: .4byte gUnk_02019EE0 thumb_func_start sub_080A4080 sub_080A4080: @ 0x080A4080 .ifdef EU - .incbin "baserom_eu.gba", 0x0A3898, 0x00000CC @TODO disassemble + push {r4, r5, r6, r7, lr} + ldr r4, _080A394C @ =gOamCmd + movs r0, #0 + strh r0, [r4, #4] + strh r0, [r4, #6] + ldr r5, _080A3950 @ =gChooseFileState + adds r0, r5, #0 + adds r0, #0x2f + movs r1, #0 + ldrsb r1, [r0, r1] + movs r0, #0x10 + subs r0, r0, r1 + strh r0, [r4, #2] + movs r0, #0x40 + strh r0, [r4] + movs r0, #0x80 + lsls r0, r0, #3 + strh r0, [r4, #8] + movs r0, #0xfd + lsls r0, r0, #1 + movs r1, #0 + bl sub_080ADA14 + movs r0, #0x94 + strh r0, [r4, #2] + movs r0, #0x50 + strh r0, [r4] + movs r0, #0x90 + lsls r0, r0, #3 + strh r0, [r4, #8] + ldr r7, _080A3954 @ =0x000001F9 + adds r0, r7, #0 + movs r1, #0 + bl sub_080ADA14 + movs r0, #0xb8 + strh r0, [r4] + movs r0, #0x94 + lsls r0, r0, #3 + strh r0, [r4, #8] + adds r0, r7, #0 + movs r1, #1 + bl sub_080ADA14 + ldr r0, _080A3958 @ =gMain + ldrh r0, [r0, #0xc] + lsrs r0, r0, #2 + movs r1, #0xe + ands r0, r1 + ldr r1, _080A395C @ =gUnk_08128110 + adds r6, r0, r1 + ldrb r1, [r6] + movs r0, #0xa + subs r0, r0, r1 + strh r0, [r4] + movs r0, #0x9c + lsls r0, r0, #3 + strh r0, [r4, #8] + bl sub_080A3B48 + subs r0, #1 + cmp r0, #0 + ble _080A3948 + ldr r1, [r5, #0x10] + cmp r1, #0 + bge _080A3920 + ldr r2, _080A3960 @ =0x0000FFFF + adds r1, r1, r2 +_080A3920: + asrs r5, r1, #0x10 + cmp r5, r0 + beq _080A3934 + ldrb r0, [r6, #1] + adds r0, #0x77 + strh r0, [r4, #2] + adds r0, r7, #0 + movs r1, #3 + bl sub_080ADA14 +_080A3934: + cmp r5, #0 + beq _080A3948 + ldrb r1, [r6, #1] + movs r0, #0x27 + subs r0, r0, r1 + strh r0, [r4, #2] + adds r0, r7, #0 + movs r1, #2 + bl sub_080ADA14 +_080A3948: + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_080A394C: .4byte gOamCmd +_080A3950: .4byte gChooseFileState +_080A3954: .4byte 0x000001F9 +_080A3958: .4byte gMain +_080A395C: .4byte gUnk_08128110 +_080A3960: .4byte 0x0000FFFF .else push {r4, r5, r6, r7, lr} ldr r4, _080A4134 @ =gOamCmd @@ -1712,7 +1804,224 @@ _080A4974: .4byte gSave thumb_func_start sub_080A4978 sub_080A4978: @ 0x080A4978 .ifdef EU - .incbin "baserom_eu.gba", 0x0A4190, 0x00001CC @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + ldr r5, _080A432C @ =gOamCmd + movs r0, #0 + strh r0, [r5, #4] + strh r0, [r5, #6] + movs r0, #0x80 + lsls r0, r0, #4 + strh r0, [r5, #8] + movs r0, #0x9c + strh r0, [r5] + movs r0, #0x48 + strh r0, [r5, #2] + ldr r7, _080A4330 @ =0x000001FB + adds r0, r7, #0 + movs r1, #0 + bl sub_080ADA14 + ldr r0, _080A4334 @ =gSave + ldrb r0, [r0, #6] + movs r2, #0x88 + cmp r0, #0 + bne _080A41C2 + movs r2, #0x82 +_080A41C2: + ldr r3, _080A4338 @ =gChooseFileState + ldrb r1, [r3, #1] + movs r0, #2 + ands r0, r1 + cmp r0, #0 + beq _080A4226 + ldrb r4, [r3, #0x1c] + cmp r2, r4 + blt _080A4226 + movs r6, #0xe8 + strh r6, [r5] + movs r0, #0xa0 + lsls r0, r0, #7 + adds r1, r2, #0 + bl __divsi3 + subs r1, r4, #1 + muls r0, r1, r0 + cmp r0, #0 + bge _080A41EC + adds r0, #0xff +_080A41EC: + asrs r0, r0, #8 + adds r0, #0x20 + strh r0, [r5, #2] + adds r0, r7, #0 + movs r1, #1 + bl sub_080ADA14 + ldr r0, _080A433C @ =gMain + ldrh r1, [r0, #0xc] + movs r0, #0x10 + ands r0, r1 + movs r4, #2 + cmp r0, #0 + beq _080A420A + movs r4, #4 +_080A420A: + strh r6, [r5] + movs r0, #0x1a + strh r0, [r5, #2] + adds r0, r7, #0 + adds r1, r4, #0 + bl sub_080ADA14 + strh r6, [r5] + movs r0, #0x76 + strh r0, [r5, #2] + adds r1, r4, #1 + adds r0, r7, #0 + bl sub_080ADA14 +_080A4226: + ldr r0, _080A433C @ =gMain + ldrh r1, [r0, #0xc] + movs r2, #0x10 + adds r0, r2, #0 + ands r0, r1 + cmp r0, #0 + beq _080A427C + ldr r5, _080A4338 @ =gChooseFileState + ldrb r1, [r5, #1] + adds r0, r2, #0 + ands r0, r1 + cmp r0, #0 + beq _080A427C + ldrb r0, [r5, #0x1e] + cmp r0, #0 + beq _080A427C + ldr r4, _080A432C @ =gOamCmd + strh r2, [r4, #2] + movs r0, #0x1f + ldrsb r0, [r5, r0] + cmp r0, #0 + ble _080A4262 + movs r0, #6 + strh r0, [r4] + movs r0, #0x9c + strh r0, [r4, #2] + ldr r0, _080A4330 @ =0x000001FB + movs r1, #6 + bl sub_080ADA14 +_080A4262: + ldrb r1, [r5, #0x1e] + movs r0, #0x1f + ldrsb r0, [r5, r0] + cmp r1, r0 + ble _080A427C + movs r0, #0xea + strh r0, [r4] + movs r0, #0x9c + strh r0, [r4, #2] + ldr r0, _080A4330 @ =0x000001FB + movs r1, #7 + bl sub_080ADA14 +_080A427C: + movs r0, #0x80 + lsls r0, r0, #0x12 + ldrb r0, [r0, #7] + cmp r0, #0 + beq _080A42D0 + ldr r2, _080A4338 @ =gChooseFileState + ldrb r1, [r2, #1] + movs r0, #4 + ands r0, r1 + cmp r0, #0 + beq _080A42D0 + ldr r1, _080A432C @ =gOamCmd + movs r0, #0x10 + strh r0, [r1, #2] + ldrb r4, [r2, #0x1c] + movs r6, #2 + adds r7, r1, #0 + movs r5, #0x6b +_080A42A0: + strh r5, [r7] + adds r0, r4, #0 + movs r1, #0xa + bl __modsi3 + lsls r0, r0, #1 + movs r2, #0x9e + lsls r2, r2, #4 + adds r1, r2, #0 + orrs r0, r1 + strh r0, [r7, #8] + movs r0, #0 + movs r1, #9 + bl sub_080ADA14 + adds r0, r4, #0 + movs r1, #0xa + bl __divsi3 + adds r4, r0, #0 + subs r5, #7 + subs r6, #1 + cmp r6, #0 + bge _080A42A0 +_080A42D0: + ldr r4, _080A4338 @ =gChooseFileState + ldrb r1, [r4, #1] + movs r0, #1 + ands r0, r1 + cmp r0, #0 + beq _080A4352 + ldrb r0, [r4, #0x1c] + bl sub_080A4948 + cmp r0, #0 + beq _080A4352 + ldr r1, _080A432C @ =gOamCmd + movs r0, #0x2c + strh r0, [r1] + movs r0, #0x48 + strh r0, [r1, #2] + movs r0, #0xd4 + lsls r0, r0, #7 + strh r0, [r1, #8] + ldr r0, _080A4340 @ =0x000001F7 + ldrb r1, [r4, #0x1c] + subs r1, #1 + bl sub_080ADA14 + ldrb r1, [r4, #0x1c] + ldrb r0, [r4, #0x1d] + cmp r0, r1 + beq _080A4352 + strb r1, [r4, #0x1d] + ldrb r4, [r4, #0x1c] + lsls r4, r4, #4 + ldr r0, _080A4344 @ =gUnk_081281A8 + adds r4, r4, r0 + ldr r0, [r4] + movs r1, #0x16 + movs r2, #9 + bl LoadPalettes + ldr r0, [r4, #4] + ldr r2, [r4, #8] + cmp r2, #0 + bge _080A434CEU + ldr r1, _080A4348EU @ =0x06014000 + bl LZ77UnCompVram + b _080A4352 + .align 2, 0 +_080A432C: .4byte gOamCmd +_080A4330: .4byte 0x000001FB +_080A4334: .4byte gSave +_080A4338: .4byte gChooseFileState +_080A433C: .4byte gMain +_080A4340: .4byte 0x000001F7 +_080A4344: .4byte gUnk_081281A8 +_080A4348EU: .4byte 0x06014000 +_080A434CEU: + ldr r1, _080A4358EU @ =0x06014000 + bl LoadResourceAsync +_080A4352: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_080A4358EU: .4byte 0x06014000 .else push {r4, r5, r6, r7, lr} mov r7, r8 @@ -3007,7 +3316,227 @@ _080A5380: thumb_func_start sub_080A5384 sub_080A5384: @ 0x080A5384 .ifdef EU - .incbin "baserom_eu.gba", 0x0A4B98, 0x00001C8 @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, sb + mov r5, r8 + push {r5, r6, r7} + ldr r0, _080A4C14EU @ =gOamCmd + movs r2, #0 + movs r1, #0x80 + lsls r1, r1, #3 + strh r1, [r0, #4] + strh r2, [r0, #6] + strh r2, [r0, #8] + movs r5, #0 + ldr r4, _080A4C18 @ =gSave + movs r0, #0xb6 + adds r0, r0, r4 + mov sl, r0 + movs r1, #0xac + adds r1, r1, r4 + mov sb, r1 + movs r2, #0xad + adds r2, r2, r4 + mov r8, r2 + movs r6, #0 +_080A4BC8: + ldr r0, _080A4C1C @ =gChooseFileState + adds r0, #0x10 + adds r2, r5, r0 + ldrb r0, [r2] + cmp r0, #0 + beq _080A4C68 + ldr r0, _080A4C20 @ =gUnk_08128B64 + adds r1, r6, r0 + ldrb r0, [r1, #6] + ldr r3, _080A4C14EU @ =gOamCmd + strh r0, [r3] + ldrb r0, [r1, #7] + strh r0, [r3, #2] + ldrb r3, [r2] + cmp r3, #0x1f + bhi _080A4BF4 + cmp r3, #0x1c + blo _080A4BF4 + adds r0, r3, #0 + subs r0, #0x1c + add r0, sl + ldrb r3, [r0] +_080A4BF4: + movs r2, #3 + cmp r3, #7 + blo _080A4C42 + cmp r3, #8 + bhi _080A4C28 + ldr r0, _080A4C24 @ =gBombBagSizes + adds r1, r4, #0 + adds r1, #0xae + ldrb r1, [r1] + adds r1, r1, r0 + ldrb r0, [r1] + mov r7, sb + ldrb r7, [r7] + cmp r0, r7 + bhi _080A4C42 + b _080A4C40 + .align 2, 0 +_080A4C14EU: .4byte gOamCmd +_080A4C18: .4byte gSave +_080A4C1C: .4byte gChooseFileState +_080A4C20: .4byte gUnk_08128B64 +_080A4C24: .4byte gBombBagSizes +_080A4C28: + cmp r3, #0xa + bhi _080A4C42 + ldr r0, _080A4D40 @ =gQuiverSizes + adds r1, r4, #0 + adds r1, #0xaf + ldrb r1, [r1] + adds r1, r1, r0 + ldrb r0, [r1] + mov r1, r8 + ldrb r1, [r1] + cmp r0, r1 + bhi _080A4C42 +_080A4C40: + movs r2, #4 +_080A4C42: + lsls r2, r2, #0xc + movs r7, #0xd8 + lsls r7, r7, #2 + adds r0, r6, r7 + movs r7, #0x80 + lsls r7, r7, #4 + adds r1, r7, #0 + orrs r0, r1 + orrs r2, r0 + ldr r0, _080A4D44 @ =gOamCmd + strh r2, [r0, #8] + ldr r1, _080A4D48 @ =gUnk_080FDFD8 + lsls r0, r3, #2 + adds r0, r0, r1 + ldr r0, [r0] + ldrb r1, [r0] + ldr r0, _080A4D4C @ =0x00000141 + bl sub_080ADA14 +_080A4C68: + adds r6, #8 + adds r5, #1 + cmp r5, #0x10 + bls _080A4BC8 + ldr r0, _080A4D44 @ =gOamCmd + movs r1, #0x80 + lsls r1, r1, #4 + strh r1, [r0, #8] + ldr r1, _080A4D50EU @ =gChooseFileState + ldrb r1, [r1, #3] + mov sb, r0 + cmp r1, #0x10 + bne _080A4C8E + movs r0, #0x80 + lsls r0, r0, #0x12 + ldrb r0, [r0, #7] + cmp r0, #0 + beq _080A4C8E + movs r1, #0x11 +_080A4C8E: + lsls r0, r1, #3 + ldr r1, _080A4D54EU @ =gUnk_08128B64 + mov r8, r1 + adds r1, r0, r1 + mov r4, sb + ldrb r0, [r1, #6] + strh r0, [r4] + ldrb r0, [r1, #7] + strh r0, [r4, #2] + ldrb r2, [r1, #4] + ldr r0, _080A4D58 @ =gMain + ldrh r1, [r0, #0xc] + movs r0, #0x10 + ands r0, r1 + adds r1, r2, #4 + cmp r0, #0 + beq _080A4CB2EU + adds r1, r2, #3 +_080A4CB2EU: + movs r6, #0xfd + lsls r6, r6, #1 + adds r0, r6, #0 + bl sub_080ADA14 + movs r0, #0x80 + lsls r0, r0, #0x12 + ldrb r0, [r0, #7] + movs r1, #0x11 + cmp r0, #0 + beq _080A4CCA + movs r1, #0x10 +_080A4CCA: + lsls r0, r1, #3 + mov r2, r8 + adds r1, r0, r2 + ldrb r0, [r1, #6] + strh r0, [r4] + ldrb r0, [r1, #7] + strh r0, [r4, #2] + movs r0, #0x80 + lsls r0, r0, #4 + strh r0, [r4, #8] + adds r0, r6, #0 + movs r1, #0x22 + bl sub_080ADA14 + ldr r7, _080A4D5C @ =gSave + adds r0, r7, #0 + adds r0, #0xb4 + ldrb r0, [r0] + bl sub_080A554C + adds r5, r0, #0 + cmp r5, #0x10 + bhi _080A4D0E + lsls r0, r5, #3 + mov r3, r8 + adds r1, r0, r3 + ldrb r0, [r1, #6] + strh r0, [r4] + ldrb r0, [r1, #7] + strh r0, [r4, #2] + adds r0, r6, #0 + movs r1, #3 + bl sub_080ADA14 +_080A4D0E: + adds r0, r7, #0 + adds r0, #0xb5 + ldrb r0, [r0] + bl sub_080A554C + adds r5, r0, #0 + cmp r5, #0x10 + bhi _080A4D36 + lsls r0, r5, #3 + mov r7, r8 + adds r1, r0, r7 + ldrb r0, [r1, #6] + mov r2, sb + strh r0, [r2] + ldrb r0, [r1, #7] + strh r0, [r2, #2] + adds r0, r6, #0 + movs r1, #3 + bl sub_080ADA14 +_080A4D36: + pop {r3, r4, r5} + mov r8, r3 + mov sb, r4 + mov sl, r5 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_080A4D40: .4byte gQuiverSizes +_080A4D44: .4byte gOamCmd +_080A4D48: .4byte gUnk_080FDFD8 +_080A4D4C: .4byte 0x00000141 +_080A4D50EU: .4byte gChooseFileState +_080A4D54EU: .4byte gUnk_08128B64 +_080A4D58: .4byte gMain +_080A4D5C: .4byte gSave .else push {r4, r5, r6, r7, lr} mov r7, sl diff --git a/asm/code_080A5574.s b/asm/code_080A5574.s index 8951bdc2..e7582e86 100644 --- a/asm/code_080A5574.s +++ b/asm/code_080A5574.s @@ -351,7 +351,211 @@ _080A57F0: thumb_func_start sub_080A57F4 sub_080A57F4: @ 0x080A57F4 .ifdef EU - .incbin "baserom_eu.gba", 0x0A5008, 0x000019C @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, sb + mov r6, r8 + push {r6, r7} + ldr r2, _080A50A8 @ =gOamCmd + movs r1, #0 + movs r0, #0x80 + lsls r0, r0, #3 + strh r0, [r2, #4] + strh r1, [r2, #6] + movs r0, #0x80 + lsls r0, r0, #0x12 + ldrb r0, [r0, #7] + ldr r1, _080A50AC @ =gUnk_08128C94 + mov sb, r1 + cmp r0, #0 + bne _080A502E + ldr r3, _080A50B0 @ =gUnk_08128C14 + mov sb, r3 +_080A502E: + ldr r0, _080A50B4 @ =gChooseFileState + ldrb r0, [r0, #3] + lsls r0, r0, #3 + mov r1, sb + adds r3, r1, r0 + movs r0, #0x80 + lsls r0, r0, #4 + strh r0, [r2, #8] + ldrb r0, [r3, #6] + strh r0, [r2] + ldrb r0, [r3, #7] + strh r0, [r2, #2] + ldrb r2, [r3, #4] + ldr r0, _080A50B8 @ =gMain + ldrh r1, [r0, #0xc] + movs r0, #0x10 + ands r0, r1 + adds r1, r2, #0 + adds r1, #0xa + cmp r0, #0 + bne _080A505A + adds r1, #1 +_080A505A: + movs r0, #0xfd + lsls r0, r0, #1 + bl sub_080ADA14 + movs r3, #0 + mov r8, r3 + mov r7, sb + adds r7, #5 +_080A506A: + ldr r0, _080A50B4 @ =gChooseFileState + adds r0, #0x10 + mov r1, r8 + adds r6, r1, r0 + ldrb r1, [r6] + cmp r1, #0 + beq _080A50FA + mov r3, r8 + lsls r5, r3, #3 + mov r0, sb + adds r3, r0, r5 + ldr r4, _080A50A8 @ =gOamCmd + ldrb r0, [r7, #1] + strh r0, [r4] + ldrb r2, [r7, #2] + strh r2, [r4, #2] + movs r0, #0xe8 + lsls r0, r0, #8 + strh r0, [r4, #8] + cmp r1, #0x33 + bhi _080A50CA + mov r1, r8 + cmp r1, #2 + bne _080A50BC + ldrb r0, [r7] + adds r1, r0, #0 + adds r1, #0xa + movs r0, #0xfd + lsls r0, r0, #1 + b _080A50F6 + .align 2, 0 +_080A50A8: .4byte gOamCmd +_080A50AC: .4byte gUnk_08128C94 +_080A50B0: .4byte gUnk_08128C14 +_080A50B4: .4byte gChooseFileState +_080A50B8: .4byte gMain +_080A50BC: + ldrb r0, [r6] + adds r0, #9 + ldrb r3, [r3, #5] + adds r1, r0, r3 + movs r0, #0xfd + lsls r0, r0, #1 + b _080A50F6 +_080A50CA: + ldr r3, _080A50E0 @ =0x0000EB80 + adds r0, r5, r3 + strh r0, [r4, #8] + cmp r1, #0x3d + beq _080A50E4 + cmp r1, #0x3e + bne _080A50EA + adds r0, r2, #0 + adds r0, #8 + b _080A50E8 + .align 2, 0 +_080A50E0: .4byte 0x0000EB80 +_080A50E4: + adds r0, r2, #0 + adds r0, #0xd +_080A50E8: + strh r0, [r4, #2] +_080A50EA: + ldr r0, _080A5190 @ =gUnk_080FDFD8 + lsls r1, r1, #2 + adds r1, r1, r0 + ldr r0, [r1] + ldrb r1, [r0] + ldr r0, _080A5194 @ =0x00000141 +_080A50F6: + bl sub_080ADA14 +_080A50FA: + adds r7, #8 + movs r0, #1 + add r8, r0 + mov r1, r8 + cmp r1, #0xf + bls _080A506A + ldr r4, _080A5198 @ =gChooseFileState + ldrb r0, [r4, #0x12] + cmp r0, #0 + beq _080A5132 + ldr r2, _080A519C @ =gOamCmd + movs r3, #0x80 + lsls r3, r3, #4 + adds r1, r3, #0 + adds r0, r0, r1 + strh r0, [r2, #8] + mov r3, sb + adds r3, #0x10 + ldrb r0, [r3, #6] + adds r0, #9 + strh r0, [r2] + ldrb r0, [r3, #7] + adds r0, #7 + strh r0, [r2, #2] + movs r0, #0 + movs r1, #1 + bl sub_080ADA14 +_080A5132: + ldrb r0, [r4, #0x13] + cmp r0, #0x3f + bne _080A5188 + mov r3, sb + adds r3, #0x18 + ldr r1, _080A519C @ =gOamCmd + ldrb r0, [r3, #6] + adds r0, #8 + strh r0, [r1] + ldrb r0, [r3, #7] + adds r0, #8 + strh r0, [r1, #2] + ldr r0, _080A51A0 @ =gSave + adds r0, #0xc2 + ldrh r4, [r0] + movs r0, #0 + mov r8, r0 + adds r5, r1, #0 +_080A5156: + adds r0, r4, #0 + movs r1, #0xa + bl __modsi3 + movs r1, #0x80 + lsls r1, r1, #4 + adds r0, r0, r1 + strh r0, [r5, #8] + movs r0, #0 + movs r1, #1 + bl sub_080ADA14 + adds r0, r4, #0 + movs r1, #0xa + bl __divsi3 + adds r4, r0, #0 + ldrh r0, [r5] + subs r0, #8 + strh r0, [r5] + movs r3, #1 + add r8, r3 + mov r0, r8 + cmp r0, #2 + bls _080A5156 +_080A5188: + pop {r3, r4} + mov r8, r3 + mov sb, r4 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_080A5190: .4byte gUnk_080FDFD8 +_080A5194: .4byte 0x00000141 +_080A5198: .4byte gChooseFileState +_080A519C: .4byte gOamCmd +_080A51A0: .4byte gSave + + .else push {r4, r5, r6, r7, lr} mov r7, sb @@ -1039,7 +1243,263 @@ _080A5D18: .4byte gUnk_02019EE0 thumb_func_start sub_080A5D1C sub_080A5D1C: @ 0x080A5D1C .ifdef EU - .incbin "baserom_eu.gba", 0x0A550C, 0x000020C @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, sb + mov r5, r8 + push {r5, r6, r7} + ldr r0, _080A5690 @ =gArea + ldrb r0, [r0, #3] + lsls r0, r0, #2 + ldr r1, _080A5694 @ =gUnk_080C9C6C + adds r7, r0, r1 + ldr r1, _080A5698EU @ =gUnk_08128D3C + ldrb r0, [r7] + adds r0, r0, r1 + ldrb r6, [r0] + bl sub_0801DB94 + mov r8, r0 + ldr r5, _080A569CEU @ =gOamCmd + movs r0, #0x80 + lsls r0, r0, #3 + strh r0, [r5, #4] + movs r0, #0 + strh r0, [r5, #6] + strh r0, [r5, #8] + movs r0, #0x34 + strh r0, [r5] + ldr r0, _080A56A0 @ =gChooseFileState + ldrb r1, [r0, #3] + lsls r0, r1, #1 + adds r0, r0, r1 + lsls r0, r0, #2 + adds r0, r6, r0 + strh r0, [r5, #2] + ldr r1, _080A56A4 @ =gMain + mov sl, r1 + ldrh r1, [r1, #0xc] + movs r0, #0x10 + ands r0, r1 + movs r1, #0x74 + cmp r0, #0 + bne _080A5560 + movs r1, #0x75 +_080A5560: + movs r0, #0xfd + lsls r0, r0, #1 + bl sub_080ADA14 + movs r0, #0x20 + mov sb, r0 + mov r1, sb + strh r1, [r5] + mov r1, r8 + lsls r0, r1, #1 + add r0, r8 + lsls r0, r0, #2 + adds r0, r6, r0 + strh r0, [r5, #2] + mov r0, sl + ldrh r1, [r0, #0xc] + mov r0, sb + ands r0, r1 + movs r1, #0x79 + cmp r0, #0 + beq _080A558C + movs r1, #0x78 +_080A558C: + movs r0, #0xfd + lsls r0, r0, #1 + bl sub_080ADA14 + movs r0, #0x7e + strh r0, [r5, #2] + movs r0, #0x87 + lsls r0, r0, #7 + strh r0, [r5, #8] + bl sub_080527CC + cmp r0, #0 + beq _080A55BE + movs r0, #0x18 + strh r0, [r5] + ldr r0, _080A56A8 @ =gUnk_080FDFD8 + movs r1, #0xa0 + lsls r1, r1, #1 + adds r0, r0, r1 + ldr r0, [r0] + ldrb r4, [r0] + ldr r0, _080A56ACEU @ =0x00000143 + adds r1, r4, #0 + bl sub_080ADA14 +_080A55BE: + bl sub_08052764 + cmp r0, #0 + beq _080A55DE + movs r0, #0x2e + strh r0, [r5] + ldr r0, _080A56A8 @ =gUnk_080FDFD8 + movs r1, #0xa4 + lsls r1, r1, #1 + adds r0, r0, r1 + ldr r0, [r0] + ldrb r4, [r0] + ldr r0, _080A56ACEU @ =0x00000143 + adds r1, r4, #0 + bl sub_080ADA14 +_080A55DE: + bl sub_0805279C + cmp r0, #0 + beq _080A563CEU + movs r0, #0x45 + strh r0, [r5] + movs r0, #0xe0 + lsls r0, r0, #2 + strh r0, [r5, #8] + ldr r0, _080A56A8 @ =gUnk_080FDFD8 + movs r1, #0xa2 + lsls r1, r1, #1 + adds r0, r0, r1 + ldr r0, [r0] + ldrb r4, [r0] + ldr r0, _080A56ACEU @ =0x00000143 + adds r1, r4, #0 + bl sub_080ADA14 + bl sub_080A5F24 + cmp r0, #0 + beq _080A563CEU + movs r0, #0 + strh r0, [r5, #8] + movs r0, #0x46 + strh r0, [r5] + ldrb r1, [r7, #1] + ldrb r0, [r7, #2] + subs r1, r1, r0 + lsls r0, r1, #1 + adds r0, r0, r1 + lsls r0, r0, #2 + adds r0, r6, r0 + strh r0, [r5, #2] + mov r0, sl + ldrh r1, [r0, #0xc] + mov r0, sb + ands r0, r1 + movs r1, #0x7b + cmp r0, #0 + beq _080A5634EU + movs r1, #0x7a +_080A5634EU: + movs r0, #0xfd + lsls r0, r0, #1 + bl sub_080ADA14 +_080A563CEU: + ldr r1, _080A569CEU @ =gOamCmd + movs r0, #0 + strh r0, [r1, #8] + movs r0, #0x34 + strh r0, [r1] + strh r6, [r1, #2] + ldrb r0, [r7, #1] + adds r4, r0, #0 + adds r4, #0x82 + movs r5, #0 + ldrb r0, [r7] + cmp r5, r0 + bhs _080A5672 + adds r6, r1, #0 +_080A5658: + movs r0, #0xfd + lsls r0, r0, #1 + adds r1, r4, #0 + bl sub_080ADA14 + subs r4, #1 + ldrh r0, [r6, #2] + adds r0, #0xc + strh r0, [r6, #2] + adds r5, #1 + ldrb r1, [r7] + cmp r5, r1 + blo _080A5658 +_080A5672: + ldr r5, _080A56B0 @ =gUnk_02019EE0 + ldrb r0, [r5] + cmp r0, #0 + beq _080A570E + ldr r7, _080A569CEU @ =gOamCmd + ldr r6, _080A56B4 @ =gScreen +_080A567E: + ldrb r0, [r5] + cmp r0, #2 + beq _080A56D4EU + cmp r0, #2 + bgt _080A56B8 + cmp r0, #1 + beq _080A56C2 + b _080A56E6 + .align 2, 0 +_080A5690: .4byte gArea +_080A5694: .4byte gUnk_080C9C6C +_080A5698EU: .4byte gUnk_08128D3C +_080A569CEU: .4byte gOamCmd +_080A56A0: .4byte gChooseFileState +_080A56A4: .4byte gMain +_080A56A8: .4byte gUnk_080FDFD8 +_080A56ACEU: .4byte 0x00000143 +_080A56B0: .4byte gUnk_02019EE0 +_080A56B4: .4byte gScreen +_080A56B8: + cmp r0, #3 + beq _080A56D8EU + cmp r0, #4 + beq _080A56DCEU + b _080A56E6 +_080A56C2: + movs r4, #0x7d + ldr r0, _080A56D0EU @ =gChooseFileState + ldrb r0, [r0, #3] + cmp r8, r0 + beq _080A56E8 + movs r4, #0x7e + b _080A56E8 + .align 2, 0 +_080A56D0EU: .4byte gChooseFileState +_080A56D4EU: + movs r4, #0x80 + b _080A56E8 +_080A56D8EU: + movs r4, #0x81 + b _080A56E8 +_080A56DCEU: + bl sub_080A5F24 + movs r4, #0x7f + cmp r0, #0 + bne _080A56E8 +_080A56E6: + movs r4, #0xff +_080A56E8: + ldrb r0, [r5, #1] + adds r0, #0x50 + ldrh r1, [r6, #0x16] + subs r0, r0, r1 + strh r0, [r7] + ldrb r0, [r5, #2] + adds r0, #0x10 + ldrh r1, [r6, #0x18] + subs r0, r0, r1 + strh r0, [r7, #2] + movs r0, #0xfd + lsls r0, r0, #1 + adds r1, r4, #0 + bl sub_080ADA14 + adds r5, #3 + ldrb r0, [r5] + cmp r0, #0 + bne _080A567E +_080A570E: + pop {r3, r4, r5} + mov r8, r3 + mov sb, r4 + mov sl, r5 + pop {r4, r5, r6, r7, pc} + + .else push {r4, r5, r6, r7, lr} mov r7, sl @@ -1597,7 +2057,121 @@ _080A6178: thumb_func_start sub_080A617C sub_080A617C: @ 0x080A617C .ifdef EU - .incbin "baserom_eu.gba", 0x0A5970, 0x00000F4 @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + ldr r6, _080A5A50 @ =gOamCmd + movs r0, #0 + strh r0, [r6, #4] + strh r0, [r6, #6] + movs r7, #0xc0 + lsls r7, r7, #4 + strh r7, [r6, #8] + movs r0, #0x2f + mov r8, r0 + mov r2, r8 + strh r2, [r6, #2] + ldr r4, _080A5A54 @ =gChooseFileState + ldrb r1, [r4, #3] + lsls r0, r1, #3 + subs r0, r0, r1 + lsls r0, r0, #2 + subs r0, r0, r1 + adds r0, #0x1a + strh r0, [r6] + ldr r0, _080A5A58 @ =gMain + ldrh r1, [r0, #0xc] + movs r0, #0x20 + ands r0, r1 + movs r1, #9 + cmp r0, #0 + beq _080A59AC + movs r1, #8 +_080A59AC: + ldr r5, _080A5A5C @ =0x000001FB + adds r0, r5, #0 + bl sub_080ADA14 + ldrb r0, [r4, #3] + lsls r0, r0, #3 + ldr r1, _080A5A60 @ =gUnk_08128D70 + adds r4, r0, r1 + ldrb r0, [r4] + bl GetInventoryValue + cmp r0, #0 + beq _080A5A0E + strh r7, [r6, #8] + movs r0, #0xcc + strh r0, [r6] + movs r0, #0x88 + strh r0, [r6, #2] + adds r0, r5, #0 + movs r1, #0xb + bl sub_080ADA14 + movs r0, #0x30 + strh r0, [r6] + movs r0, #0x6c + strh r0, [r6, #2] + ldrb r0, [r4, #1] + lsls r0, r0, #0xc + movs r2, #0xd8 + lsls r2, r2, #4 + adds r1, r2, #0 + orrs r0, r1 + strh r0, [r6, #8] + ldrb r1, [r4, #2] + adds r0, r5, #0 + bl sub_080ADA14 + ldrb r0, [r4, #1] + lsls r0, r0, #0xc + orrs r0, r7 + strh r0, [r6, #8] + movs r0, #0x78 + strh r0, [r6] + movs r0, #0x68 + strh r0, [r6, #2] + adds r0, r5, #0 + movs r1, #0xc + bl sub_080ADA14 +_080A5A0E: + mov r0, r8 + strh r0, [r6, #2] + movs r5, #0 + adds r7, r6, #0 + movs r6, #0x18 +_080A5A18: + lsls r1, r5, #3 + ldr r0, _080A5A60 @ =gUnk_08128D70 + adds r4, r1, r0 + ldrb r0, [r4] + bl GetInventoryValue + cmp r0, #0 + beq _080A5A40 + ldrb r0, [r4, #1] + lsls r0, r0, #0xc + movs r2, #0xc0 + lsls r2, r2, #4 + adds r1, r2, #0 + orrs r0, r1 + strh r0, [r7, #8] + strh r6, [r7] + ldr r0, _080A5A5C @ =0x000001FB + movs r1, #0xa + bl sub_080ADA14 +_080A5A40: + adds r6, #0x1b + adds r5, #1 + cmp r5, #7 + bls _080A5A18 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_080A5A50: .4byte gOamCmd +_080A5A54: .4byte gChooseFileState +_080A5A58: .4byte gMain +_080A5A5C: .4byte 0x000001FB +_080A5A60: .4byte gUnk_08128D70 + .else push {r4, r5, r6, r7, lr} mov r7, r8 @@ -1850,7 +2424,95 @@ _080A6374: .4byte gMenu thumb_func_start sub_080A6378 sub_080A6378: @ 0x080A6378 .ifdef EU - .incbin "baserom_eu.gba", 0x0A5B6C, 0x00000C0 @TODO disassemble + push {r4, r5, r6, lr} + ldr r0, _080A5C18 @ =gChooseFileState + adds r4, r0, #0 + adds r4, #0x2c + ldrb r0, [r4] + adds r0, #1 + strb r0, [r4] + movs r6, #0x20 + ands r0, r6 + cmp r0, #0 + beq _080A5B86 + bl sub_080A6438 +_080A5B86: + ldr r5, _080A5C1C @ =gOamCmd + movs r0, #0x80 + lsls r0, r0, #3 + strh r0, [r5, #4] + movs r0, #0 + strh r0, [r5, #6] + movs r0, #0xe0 + lsls r0, r0, #7 + strh r0, [r5, #8] + ldrb r1, [r4] + adds r0, r6, #0 + ands r0, r1 + cmp r0, #0 + bne _080A5BE0 + ldr r4, _080A5C20 @ =gScreenTransition + ldrh r1, [r4, #0x20] + lsls r0, r1, #2 + adds r0, r0, r1 + lsls r0, r0, #5 + movs r1, #0xf9 + lsls r1, r1, #4 + bl __divsi3 + adds r0, #0x28 + strh r0, [r5] + ldrh r0, [r4, #0x22] + lsls r0, r0, #7 + movs r1, #0xc6 + lsls r1, r1, #4 + bl __divsi3 + adds r0, #0xc + strh r0, [r5, #2] + ldr r0, _080A5C24 @ =gPlayerState + ldr r0, [r0, #0x30] + movs r1, #8 + ands r0, r1 + movs r1, #0x59 + cmp r0, #0 + beq _080A5BD8 + movs r1, #0x5a +_080A5BD8: + movs r0, #0xfd + lsls r0, r0, #1 + bl sub_080ADA14 +_080A5BE0: + ldr r3, _080A5C18 @ =gChooseFileState + ldrb r0, [r3, #3] + lsls r0, r0, #3 + ldr r1, _080A5C28 @ =gUnk_08128DE8 + adds r0, r0, r1 + ldr r2, _080A5C1C @ =gOamCmd + ldrb r1, [r0, #6] + strh r1, [r2] + ldrb r0, [r0, #7] + strh r0, [r2, #2] + ldrb r0, [r3, #3] + lsls r2, r0, #1 + adds r2, r2, r0 + adds r2, #0x26 + adds r3, #0x2c + ldrb r1, [r3] + lsrs r1, r1, #4 + movs r0, #1 + bics r0, r1 + adds r1, r2, r0 + movs r0, #0xfd + lsls r0, r0, #1 + bl sub_080ADA14 + bl sub_080A6498 + pop {r4, r5, r6, pc} + .align 2, 0 +_080A5C18: .4byte gChooseFileState +_080A5C1C: .4byte gOamCmd +_080A5C20: .4byte gScreenTransition +_080A5C24: .4byte gPlayerState +_080A5C28: .4byte gUnk_08128DE8 + .else push {r4, r5, r6, lr} ldr r0, _080A6420 @ =gMenu @@ -1944,7 +2606,53 @@ _080A6434: .4byte gUnk_08128DE8 thumb_func_start sub_080A6438 sub_080A6438: @ 0x080A6438 .ifdef EU - .incbin "baserom_eu.gba", 0x0A5C2C, 0x0000060 @TODO disassemble + push {r4, r5, r6, r7, lr} + ldr r2, _080A5C7C @ =gOamCmd + movs r1, #0 + movs r0, #0x80 + lsls r0, r0, #3 + strh r0, [r2, #4] + strh r1, [r2, #6] + strh r1, [r2, #8] + ldr r0, _080A5C80 @ =gSave + ldr r1, _080A5C84 @ =gChooseFileState + ldrh r0, [r0, #0x20] + ldrh r5, [r1, #0x10] + ands r5, r0 + ldr r4, _080A5C88EU @ =gUnk_08128F58 + movs r6, #0 + ldrb r0, [r4] + cmp r0, #0 + beq _080A5C78 + adds r7, r2, #0 +_080A5C52: + movs r0, #1 + lsls r0, r6 + ands r0, r5 + cmp r0, #0 + beq _080A5C6E + ldrb r0, [r4, #1] + strh r0, [r7] + ldrb r0, [r4, #2] + strh r0, [r7, #2] + ldrb r1, [r4] + movs r0, #0xfd + lsls r0, r0, #1 + bl sub_080ADA14 +_080A5C6E: + adds r6, #1 + adds r4, #8 + ldrb r0, [r4] + cmp r0, #0 + bne _080A5C52 +_080A5C78: + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_080A5C7C: .4byte gOamCmd +_080A5C80: .4byte gSave +_080A5C84: .4byte gChooseFileState +_080A5C88EU: .4byte gUnk_08128F58 + .else push {r4, r5, r6, r7, lr} ldr r2, _080A6484 @ =gOamCmd @@ -1997,7 +2705,53 @@ _080A6494: .4byte 0x000001FB thumb_func_start sub_080A6498 sub_080A6498: @ 0x080A6498 .ifdef EU - .incbin "baserom_eu.gba", 0x0A5C8C, 0x0000064 @TODO disassemble + push {r4, r5, r6, r7, lr} + ldr r0, _080A5CDCEU @ =gOamCmd + movs r2, #0 + movs r1, #0x80 + lsls r1, r1, #4 + strh r1, [r0, #4] + strh r2, [r0, #6] + strh r2, [r0, #8] + movs r4, #0 + ldr r7, _080A5CE0 @ =gSave + adds r6, r0, #0 + movs r5, #0x28 +_080A5CA4: + movs r1, #1 + lsls r1, r4 + ldr r0, [r7, #0x40] + ands r0, r1 + cmp r0, #0 + bne _080A5CC8EU + lsls r1, r4, #3 + ldr r0, _080A5CE4 @ =gUnk_08128DE8 + adds r1, r1, r0 + ldrb r0, [r1, #6] + strh r0, [r6] + ldrb r0, [r1, #7] + strh r0, [r6, #2] + movs r0, #0xfd + lsls r0, r0, #1 + adds r1, r5, #0 + bl sub_080ADA14 +_080A5CC8EU: + adds r5, #3 + adds r4, #1 + cmp r4, #0x10 + bls _080A5CA4 + ldr r0, _080A5CE8 @ =gScreen + adds r0, #0x62 + ldr r1, _080A5CEC @ =0x00003D3F + strh r1, [r0] + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_080A5CDCEU: .4byte gOamCmd +_080A5CE0: .4byte gSave +_080A5CE4: .4byte gUnk_08128DE8 +_080A5CE8: .4byte gScreen +_080A5CEC: .4byte 0x00003D3F + .else push {r4, r5, r6, r7, lr} ldr r0, _080A64E4 @ =gOamCmd @@ -2272,7 +3026,129 @@ _080A66C2: thumb_func_start sub_080A66D0 sub_080A66D0: @ 0x080A66D0 .ifdef EU - .incbin "baserom_eu.gba", 0x0A5EC4, 0x00000F4 @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, sb + mov r5, r8 + push {r5, r6, r7} + ldr r6, _080A5F74 @ =gOamCmd + movs r0, #0 + strh r0, [r6, #4] + strh r0, [r6, #6] + movs r0, #0x78 + strh r0, [r6] + ldr r4, _080A5F78 @ =gChooseFileState + ldrb r0, [r4, #3] + lsls r0, r0, #3 + ldr r1, _080A5F7C @ =gUnk_08128E94 + adds r5, r0, r1 + adds r1, r4, #0 + adds r1, #0x2c + ldrb r0, [r1] + adds r2, r0, #1 + strb r2, [r1] + adds r0, r4, #0 + adds r0, #0x2b + ldrb r0, [r0] + cmp r0, #1 + beq _080A5F30 + movs r0, #0x10 + ands r2, r0 + cmp r2, #0 + beq _080A5F30 + movs r0, #0x80 + lsls r0, r0, #4 + strh r0, [r6, #8] + ldrh r0, [r4, #0xa] + cmp r0, #0 + beq _080A5F1A + movs r0, #0xc + strh r0, [r6, #2] + movs r0, #0xfd + lsls r0, r0, #1 + movs r1, #0x71 + bl sub_080ADA14 +_080A5F1A: + ldrb r0, [r5, #2] + ldrh r4, [r4, #0xa] + cmp r0, r4 + bls _080A5F30 + movs r0, #0x84 + strh r0, [r6, #2] + movs r0, #0xfd + lsls r0, r0, #1 + movs r1, #0x72 + bl sub_080ADA14 +_080A5F30: + ldrb r0, [r5, #7] + mov sl, r0 + ldrb r5, [r5, #3] + mov sb, r5 + ldr r1, _080A5F78 @ =gChooseFileState + ldrh r0, [r1, #0xa] + mov r8, r0 + ldr r2, _080A5F74 @ =gOamCmd + movs r0, #0 + strh r0, [r2, #4] + strh r0, [r2, #6] + movs r0, #0xc0 + lsls r0, r0, #4 + strh r0, [r2, #8] + adds r1, #0x2c + ldrb r1, [r1] + movs r0, #0x20 + ands r0, r1 + lsls r0, r0, #0x18 + lsrs r6, r0, #0x18 + ldr r4, _080A5F80 @ =gUnk_02019EE0 + ldrh r0, [r4, #2] + cmp r0, #0 + beq _080A5FAE + rsbs r5, r6, #0 + orrs r5, r6 + adds r7, r2, #0 +_080A5F66: + movs r1, #0 + ldrb r0, [r4] + cmp r0, #1 + bne _080A5F84 + lsrs r1, r5, #0x1f + b _080A5F8A + .align 2, 0 +_080A5F74: .4byte gOamCmd +_080A5F78: .4byte gChooseFileState +_080A5F7C: .4byte gUnk_08128E94 +_080A5F80: .4byte gUnk_02019EE0 +_080A5F84: + cmp r6, #0 + bne _080A5F8A + movs r1, #1 +_080A5F8A: + cmp r1, #0 + beq _080A5FA6 + ldrh r0, [r4, #4] + add r0, sl + strh r0, [r7] + ldrh r0, [r4, #6] + add r0, sb + mov r1, r8 + subs r0, r0, r1 + strh r0, [r7, #2] + ldrh r0, [r4, #2] + ldrb r1, [r4, #1] + bl sub_080ADA14 +_080A5FA6: + adds r4, #8 + ldrh r0, [r4, #2] + cmp r0, #0 + bne _080A5F66 +_080A5FAE: + pop {r3, r4, r5} + mov r8, r3 + mov sb, r4 + mov sl, r5 + pop {r4, r5, r6, r7, pc} + .else push {r4, r5, r6, r7, lr} mov r7, sl @@ -2533,7 +3409,93 @@ _080A68D0: .4byte gUnk_02019EE0 thumb_func_start sub_080A68D4 sub_080A68D4: @ 0x080A68D4 .ifdef EU - .incbin "baserom_eu.gba", 0x0A60C8, 0x00000B4 @TODO disassemble + push {r4, r5, r6, lr} + ldr r0, _080A6100EU @ =gPlayerState + ldr r0, [r0, #0x30] + movs r1, #8 + ands r0, r1 + movs r4, #0x64 + cmp r0, #0 + beq _080A60DA + movs r4, #0x65 +_080A60DA: + ldr r1, _080A6104EU @ =gScreenTransition + ldrh r0, [r1, #0x20] + ldrh r1, [r1, #0x22] + movs r2, #0xfd + lsls r2, r2, #1 + movs r3, #0x80 + lsls r3, r3, #1 + adds r3, r4, r3 + bl sub_080A698C + bl sub_080A6F40 + adds r6, r0, #0 + ldr r0, _080A6108 @ =gSave + ldrh r0, [r0, #0x20] + ands r6, r0 + ldr r4, _080A610C @ =gUnk_08128F58 + movs r5, #0 + b _080A612C + .align 2, 0 +_080A6100EU: .4byte gPlayerState +_080A6104EU: .4byte gScreenTransition +_080A6108: .4byte gSave +_080A610C: .4byte gUnk_08128F58 +_080A6110: + movs r0, #1 + lsls r0, r5 + ands r0, r6 + cmp r0, #0 + beq _080A6128EU + ldrh r0, [r4, #4] + ldrh r1, [r4, #6] + ldrb r3, [r4, #3] + movs r2, #0xfd + lsls r2, r2, #1 + bl sub_080A698C +_080A6128EU: + adds r5, #1 + adds r4, #8 +_080A612C: + ldrb r0, [r4] + cmp r0, #0 + bne _080A6110 + movs r5, #0xa +_080A6134: + adds r0, r5, #0 + bl CheckKinstoneFused + cmp r0, #0 + beq _080A616A + adds r0, r5, #0 + bl sub_0801E810 + cmp r0, #0 + bne _080A616A + ldr r1, _080A6174 @ =gUnk_080C9CBC + lsls r0, r5, #3 + adds r0, r0, r1 + ldrb r3, [r0, #7] + ldrb r0, [r0, #4] + lsls r1, r0, #2 + adds r1, r1, r0 + lsls r1, r1, #2 + ldr r0, _080A6178EU @ =gUnk_080FE320 + adds r1, r1, r0 + ldrh r0, [r1, #0xc] + ldrh r1, [r1, #0xe] + adds r3, #0x64 + movs r2, #0xfd + lsls r2, r2, #1 + bl sub_080A698C +_080A616A: + adds r5, #1 + cmp r5, #0x64 + bls _080A6134 + pop {r4, r5, r6, pc} + .align 2, 0 +_080A6174: .4byte gUnk_080C9CBC +_080A6178EU: .4byte gUnk_080FE320 + + .else push {r4, r5, r6, lr} ldr r0, _080A690C @ =gPlayerState @@ -3175,7 +4137,34 @@ _080A6DC6: thumb_func_start sub_080A6DD0 sub_080A6DD0: @ 0x080A6DD0 .ifdef EU - .incbin "baserom_eu.gba", 0x0A65BC, 0x0000034 @TODO disassemble + push {lr} + bl sub_08056338 + cmp r0, #0 + beq _080A65CC + cmp r0, #1 + beq _080A65D8 + b _080A65EA +_080A65CC: + ldr r1, _080A65D4 @ =gChooseFileState + movs r0, #2 + b _080A65DC + .align 2, 0 +_080A65D4: .4byte gChooseFileState +_080A65D8: + ldr r1, _080A65ECEU @ =gChooseFileState + movs r0, #3 +_080A65DC: + strb r0, [r1] + movs r0, #1 + cmp r0, #0 + beq _080A65EA + movs r0, #3 + bl sub_080A7114 +_080A65EA: + pop {pc} + .align 2, 0 +_080A65ECEU: .4byte gChooseFileState + .else push {lr} bl sub_08056338 @@ -3260,7 +4249,60 @@ _080A6E6C: .4byte gUnk_08128024 thumb_func_start sub_080A6E70 sub_080A6E70: @ 0x080A6E70 .ifdef EU - .incbin "baserom_eu.gba", 0x0A6668, 0x0000070 @TODO disassemble + push {r4, r5, lr} + ldr r1, _080A66CC @ =gOamCmd + movs r0, #0 + strh r0, [r1, #4] + strh r0, [r1, #6] + movs r0, #0x80 + lsls r0, r0, #3 + strh r0, [r1, #8] + ldr r1, _080A66D0 @ =gChooseFileState + adds r4, r1, #0 + adds r4, #0x2c + ldrb r0, [r4] + adds r0, #1 + strb r0, [r4] + ldrb r0, [r1, #3] + bl sub_080A6EE0 + ldrb r1, [r4] + movs r0, #0x10 + ands r0, r1 + movs r1, #0x5e + cmp r0, #0 + beq _080A6698 + movs r1, #0x5d +_080A6698: + movs r0, #0xfd + lsls r0, r0, #1 + bl sub_080ADA14 + movs r4, #0 + ldr r5, _080A66D4 @ =gSave +_080A66A4EU: + adds r0, r4, #0 + adds r0, #0x18 + movs r1, #1 + lsls r1, r0 + ldr r0, [r5, #0x40] + ands r0, r1 + cmp r0, #0 + beq _080A66C4 + adds r0, r4, #0 + bl sub_080A6EE0 + movs r0, #0xfd + lsls r0, r0, #1 + movs r1, #0x5c + bl sub_080ADA14 +_080A66C4: + adds r4, #1 + cmp r4, #7 + bls _080A66A4EU + pop {r4, r5, pc} + .align 2, 0 +_080A66CC: .4byte gOamCmd +_080A66D0: .4byte gChooseFileState +_080A66D4: .4byte gSave + .else push {r4, r5, lr} ldr r1, _080A6ED0 @ =gOamCmd diff --git a/asm/code_080ADD30.s b/asm/code_080ADD30.s index 3bf23ff7..2420ef4b 100644 --- a/asm/code_080ADD30.s +++ b/asm/code_080ADD30.s @@ -44,7 +44,53 @@ _080ADD6C: .4byte gUnk_02024490 thumb_func_start sub_080ADD70 sub_080ADD70: @ 0x080ADD70 .ifdef EU - .incbin "baserom_eu.gba", 0x0AD514, 0x0000058 @TODO disassemble + push {r4, r5, lr} + ldr r0, _080AD540 @ =gUnk_02024490 + ldrb r0, [r0] + cmp r0, #0 + beq _080AD56A + movs r4, #0 + movs r5, #0 +_080AD522: + ldr r0, _080AD544 @ =gUnk_02024494 + adds r2, r5, r0 + ldrb r1, [r2] + lsls r0, r1, #0x1c + lsrs r0, r0, #0x1c + cmp r0, #2 + bne _080AD548 + movs r3, #0x10 + rsbs r3, r3, #0 + adds r0, r3, #0 + ands r0, r1 + movs r1, #1 + orrs r0, r1 + strb r0, [r2] + b _080AD562 + .align 2, 0 +_080AD540: .4byte gUnk_02024490 +_080AD544: .4byte gUnk_02024494 +_080AD548: + cmp r0, #2 + blt _080AD562 + cmp r0, #6 + bgt _080AD562 + cmp r0, #4 + blt _080AD562 + movs r0, #0xf0 + ands r0, r1 + cmp r0, #0x30 + bne _080AD562 + adds r0, r4, #0 + bl sub_080ADE74 +_080AD562: + adds r5, #0xc + adds r4, #1 + cmp r4, #0x2b + bls _080AD522 +_080AD56A: + pop {r4, r5, pc} + .else push {r4, r5, lr} ldr r1, _080ADD88 @ =gUnk_02024490 @@ -322,7 +368,63 @@ _080ADF7C: thumb_func_start LoadFixedGFX LoadFixedGFX: @ 0x080ADF80 .ifdef EU - .incbin "baserom_eu.gba", 0x0AD714, 0x0000070 @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + mov r8, r0 + adds r5, r1, #0 + cmp r5, #0 + bne _080AD726 + movs r0, #1 + b _080AD77E +_080AD726: + movs r4, #4 + ldr r0, _080AD774 @ =gUnk_02024490 + adds r0, #0x30 +_080AD72C: + ldrh r1, [r0, #8] + cmp r5, r1 + beq _080AD766 + adds r0, #0xc + adds r4, #1 + cmp r4, #0x2b + bls _080AD72C + ldr r0, _080AD778 @ =gUnk_08132B30 + lsls r1, r5, #2 + adds r1, r1, r0 + ldr r7, [r1] + movs r0, #0xfe + lsls r0, r0, #0x17 + ands r0, r7 + lsrs r6, r0, #0x18 + adds r0, r6, #0 + bl sub_080AE174 + adds r4, r0, #0 + cmp r4, #0 + beq _080AD77C + adds r1, r5, #0 + adds r2, r6, #0 + bl sub_080AE104 + adds r0, r4, #0 + adds r1, r7, #0 + bl sub_080ADDD8 +_080AD766: + adds r0, r4, #0 + mov r1, r8 + movs r2, #4 + bl sub_080AE0C8 + movs r0, #1 + b _080AD77E + .align 2, 0 +_080AD774: .4byte gUnk_02024490 +_080AD778: .4byte gUnk_08132B30 +_080AD77C: + movs r0, #0 +_080AD77E: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} + .else push {r4, r5, r6, r7, lr} mov r7, r8 @@ -394,7 +496,47 @@ _080AE004: .4byte gUnk_08132B30 thumb_func_start sub_080AE008 sub_080AE008: @ 0x080AE008 .ifdef EU - .incbin "baserom_eu.gba", 0x0AD784, 0x0000050 @TODO disassemble + push {r4, r5, r6, lr} + adds r6, r0, #0 + adds r5, r1, #0 + adds r4, r2, #0 + cmp r4, #0 + bne _080AD79C + adds r0, r5, #0 + bl sub_080AE174 + adds r4, r0, #0 + cmp r4, #0 + beq _080AD7C4 +_080AD79C: + ldr r0, _080AD7D0 @ =gUnk_02024490 + lsls r1, r4, #1 + adds r1, r1, r4 + lsls r1, r1, #2 + adds r1, r1, r0 + ldrb r0, [r1, #4] + lsls r0, r0, #0x1c + lsrs r2, r0, #0x1c + cmp r2, #6 + beq _080AD7BC + adds r0, r4, #0 + movs r1, #0 + adds r2, r5, #0 + bl sub_080AE104 + movs r2, #5 +_080AD7BC: + adds r0, r4, #0 + adds r1, r6, #0 + bl sub_080AE0C8 +_080AD7C4: + adds r0, r4, #0 + cmp r0, #0 + beq _080AD7CC + movs r0, #1 +_080AD7CC: + pop {r4, r5, r6, pc} + .align 2, 0 +_080AD7D0: .4byte gUnk_02024490 + .else push {r4, r5, r6, lr} adds r6, r0, #0 diff --git a/asm/crt0.s b/asm/crt0.s index a0daf080..d72915b1 100644 --- a/asm/crt0.s +++ b/asm/crt0.s @@ -35,5 +35,5 @@ sp_usr: .4byte gUnk_03007F00 INTR_VECTOR_BUF: .4byte 0x03007FFC intr_main: .4byte IntrMain .ifdef EU -unk_function: .4byte 0x08000119 @ TODO ptr +unk_function: .4byte sub_08000118 .endif diff --git a/asm/enemy50.s b/asm/enemy50.s index 02c6683e..7b044061 100644 --- a/asm/enemy50.s +++ b/asm/enemy50.s @@ -10,7 +10,47 @@ thumb_func_start Enemy50 Enemy50: @ 0x08040B2C .ifdef EU - .incbin "baserom_eu.gba", 0x040a2c, 0x5c @TODO disassemble + push {r4, r5, lr} + adds r5, r0, #0 + ldrb r0, [r5, #0xa] + cmp r0, #1 + bne _08040A5E + ldr r0, [r5, #0x50] + ldr r0, [r0, #4] + cmp r0, #0 + bne _08040A5E + ldrb r0, [r5, #0xc] + subs r0, #8 + lsls r0, r0, #0x18 + lsrs r0, r0, #0x18 + cmp r0, #1 + bhi _08040A50 + adds r0, r5, #0 + bl sub_0803F6EC +_08040A50: + adds r0, r5, #0 + movs r1, #2 + movs r2, #0 + bl CreateFx + bl DeleteThisEntity +_08040A5E: + ldr r4, _08040A84 @ =gUnk_080D0DC4 + adds r0, r5, #0 + bl GetNextFunction + lsls r0, r0, #2 + adds r0, r0, r4 + ldr r1, [r0] + adds r0, r5, #0 + bl _call_via_r1 + movs r3, #0x10 + rsbs r3, r3, #0 + adds r0, r5, #0 + movs r1, #0 + movs r2, #1 + bl SetChildOffset + pop {r4, r5, pc} + .align 2, 0 +_08040A84: .4byte gUnk_080D0DC4 .else push {r4, r5, lr} adds r5, r0, #0 diff --git a/asm/figurineDevice.s b/asm/figurineDevice.s index c7767f27..5a4e395b 100644 --- a/asm/figurineDevice.s +++ b/asm/figurineDevice.s @@ -365,7 +365,118 @@ _08087E5A: thumb_func_start sub_08087E5C sub_08087E5C: @ 0x08087E5C .ifdef EU - .incbin "baserom_eu.gba", 0x087838, 0x00000E0 @TODO disassemble + push {r4, r5, r6, lr} + adds r4, r0, #0 + adds r5, r4, #0 + adds r5, #0x7a + ldrb r1, [r5] + cmp r1, #1 + beq _08087888 + cmp r1, #1 + bgt _08087850 + cmp r1, #0 + beq _08087856 + b _0808790C +_08087850: + cmp r1, #2 + beq _080878EA + b _0808790C +_08087856: + adds r0, r4, #0 + adds r0, #0x7b + ldrb r0, [r0] + cmp r0, #4 + bne _08087880 + movs r0, #1 + bl CheckRoomFlag + cmp r0, #0 + beq _0808790C + movs r0, #1 + strb r0, [r5] + adds r1, r4, #0 + adds r1, #0x81 + strb r0, [r1] + bl ClearRoomFlag + adds r0, r4, #0 + bl sub_0808826C + b _080878E2 +_08087880: + adds r0, r4, #0 + bl sub_080880D8 + b _0808790C +_08087888: + ldrb r0, [r4, #0xe] + cmp r0, #0 + beq _08087892 + subs r0, #1 + strb r0, [r4, #0xe] +_08087892: + ldr r2, _080878B0 @ =gInput + ldrh r0, [r2, #2] + ands r1, r0 + cmp r1, #0 + beq _080878B4 + movs r0, #0x6a + bl SoundReq + movs r0, #2 + strb r0, [r5] + movs r0, #0x3c + strb r0, [r4, #0xe] + bl sub_08050384 + b _0808790C + .align 2, 0 +_080878B0: .4byte gInput +_080878B4: + adds r0, r4, #0 + adds r0, #0x81 + ldrb r6, [r0] + ldrh r1, [r2, #4] + adds r5, r0, #0 + cmp r1, #0x40 + beq _080878C8 + cmp r1, #0x80 + beq _080878D2 + b _080878DC +_080878C8: + adds r0, r4, #0 + movs r1, #1 + bl sub_08087F94 + b _080878DC +_080878D2: + movs r1, #1 + rsbs r1, r1, #0 + adds r0, r4, #0 + bl sub_08087F94 +_080878DC: + ldrb r5, [r5] + cmp r6, r5 + beq _0808790C +_080878E2: + adds r0, r4, #0 + bl sub_080882A8 + b _0808790C +_080878EA: + movs r0, #0 + strb r0, [r5] + adds r1, r4, #0 + adds r1, #0x7b + movs r0, #4 + strb r0, [r1] + movs r0, #3 + bl SetRoomFlag + ldr r0, _08087910 @ =0x0000431A + bl TextboxNoOverlapFollow + ldr r1, _08087914 @ =gTextBox + adds r0, r4, #0 + adds r0, #0x81 + ldrb r0, [r0] + str r0, [r1, #0x10] +_0808790C: + pop {r4, r5, r6, pc} + .align 2, 0 +_08087910: .4byte 0x0000431A +_08087914: .4byte gTextBox + .else push {r4, r5, r6, r7, lr} adds r4, r0, #0 @@ -538,10 +649,181 @@ _08087F90: .4byte 0x00004022 thumb_func_start sub_08087F94 sub_08087F94: @ 0x08087F94 .ifdef JP - .incbin "baserom_jp.gba", 0x087dac, 0xb0 @TODO disassemble + push {r4, r5, r6, r7, lr} + adds r5, r0, #0 + adds r4, r1, #0 + movs r0, #0x5f + bl CheckLocalFlag + cmp r0, #0 + bne _08087E3E + adds r0, r5, #0 + adds r0, #0x83 + movs r7, #0 + ldrsb r7, [r0, r7] + adds r3, r7, r4 + mov ip, r0 + cmp r4, #0 + bge _08087E0A + adds r2, r5, #0 + adds r2, #0x82 + movs r0, #0 + ldrsb r0, [r2, r0] + cmp r3, r0 + bge _08087DF4 + mov r0, ip + movs r1, #0 + ldrsb r1, [r0, r1] + ldrb r3, [r2] + movs r0, #0 + ldrsb r0, [r2, r0] + cmp r1, r0 + beq _08087E3E + mov r2, ip + strb r3, [r2] + adds r1, r5, #0 + adds r1, #0x81 + movs r0, #1 + b _08087E00 +_08087DF4: + mov r0, ip + strb r3, [r0] + adds r1, r5, #0 + adds r1, #0x81 + ldrb r0, [r1] + adds r0, r0, r4 +_08087E00: + strb r0, [r1] + movs r0, #0x69 + bl SoundReq + b _08087E58 +_08087E0A: + adds r1, r5, #0 + adds r1, #0x81 + ldrb r6, [r1] + adds r2, r6, r4 + ldr r0, _08087E2C @ =0x02002A40 + adds r0, #0xc2 + ldrh r0, [r0] + cmp r2, r0 + ble _08087E30 + cmp r0, r6 + beq _08087E3E + adds r2, r0, #0 + subs r4, r2, r6 + adds r3, r7, r4 + cmp r3, #0x64 + ble _08087E4C + b _08087E46 + .align 2, 0 +_08087E2C: .4byte 0x02002A40 +_08087E30: + cmp r3, #0x64 + ble _08087E4C + mov r2, ip + movs r0, #0 + ldrsb r0, [r2, r0] + cmp r0, #0x64 + bne _08087E46 +_08087E3E: + adds r0, r5, #0 + bl sub_08088034 + b _08087E58 +_08087E46: + movs r3, #0x64 + subs r4, r3, r7 + adds r2, r6, r4 +_08087E4C: + mov r0, ip + strb r3, [r0] + strb r2, [r1] + movs r0, #0x69 + bl SoundReq +_08087E58: + pop {r4, r5, r6, r7, pc} + .align 2, 0 .else .ifdef EU - .incbin "baserom_eu.gba", 0x087954, 0x000009C @TODO disassemble + push {r4, r5, r6, r7, lr} + adds r5, r0, #0 + adds r6, r1, #0 + adds r7, r5, #0 + adds r7, #0x83 + ldrb r0, [r7] + adds r4, r0, r6 + movs r0, #0x5f + bl CheckLocalFlag + cmp r0, #0 + bne _080879CE + cmp r6, #0 + bge _0808799E + adds r0, r5, #0 + adds r0, #0x82 + ldrb r1, [r0] + cmp r4, r1 + bhs _0808798A + ldrb r0, [r7] + cmp r0, r1 + beq _080879CE + strb r1, [r7] + adds r1, r5, #0 + adds r1, #0x81 + movs r0, #1 + b _08087994 +_0808798A: + strb r4, [r7] + adds r1, r5, #0 + adds r1, #0x81 + ldrb r0, [r1] + adds r0, r0, r6 +_08087994: + strb r0, [r1] + movs r0, #0x69 + bl SoundReq + b _080879EC +_0808799E: + adds r1, r5, #0 + adds r1, #0x81 + ldrb r3, [r1] + adds r2, r3, r6 + ldr r0, _080879C0 @ =gSave + adds r0, #0xc2 + ldrh r0, [r0] + cmp r2, r0 + bls _080879C4 + cmp r0, r3 + beq _080879CE + adds r2, r0, #0 + subs r0, r2, r3 + ldrb r7, [r7] + adds r4, r0, r7 + b _080879DE + .align 2, 0 +_080879C0: .4byte gSave +_080879C4: + cmp r4, #0x64 + bls _080879DE + ldrb r0, [r7] + cmp r0, #0x64 + bne _080879D6 +_080879CE: + adds r0, r5, #0 + bl sub_08088034 + b _080879EC +_080879D6: + movs r4, #0x64 + ldrb r0, [r7] + subs r6, r4, r0 + adds r2, r3, r6 +_080879DE: + adds r0, r5, #0 + adds r0, #0x83 + strb r4, [r0] + strb r2, [r1] + movs r0, #0x69 + bl SoundReq +_080879EC: + pop {r4, r5, r6, r7, pc} + .align 2, 0 .else push {r4, r5, r6, r7, lr} adds r5, r0, #0 @@ -813,10 +1095,237 @@ _0808815C: .4byte gSave thumb_func_start sub_08088160 sub_08088160: @ 0x08088160 .ifdef JP - .incbin "baserom_jp.gba", 0x087f88, 0xe8 @TODO disassemble + push {r4, lr} + adds r2, r0, #0 + lsls r1, r1, #3 + ldr r0, _08087FB0 @ =0x080FC094 + adds r1, r1, r0 + movs r4, #0 + adds r0, r2, #0 + adds r0, #0x7c + ldrb r0, [r0] + ldrb r3, [r1, #6] + cmp r0, r3 + bhs _08088068 + ldrb r0, [r1, #6] + cmp r0, #0x10 + beq _08087FC6 + cmp r0, #0x10 + bgt _08087FB4 + cmp r0, #8 + beq _08087FBC + b _0808806A + .align 2, 0 +_08087FB0: .4byte 0x080FC094 +_08087FB4: + cmp r0, #0x20 + beq _08087FCA + cmp r0, #0x40 + bne _0808806A +_08087FBC: + ldr r0, [r1] + ldrh r1, [r1, #4] + bl CheckLocalFlagByOffset + b _08088064EU +_08087FC6: + ldrh r0, [r1, #4] + b _08088060EU +_08087FCA: + ldrh r0, [r1, #4] + cmp r0, #4 + bhi _0808806A + lsls r0, r0, #2 + ldr r1, _08087FDC @ =_08087FE0 + adds r0, r0, r1 + ldr r0, [r0] + mov pc, r0 + .align 2, 0 +_08087FDC: .4byte _08087FE0 +_08087FE0: @ jump table + .4byte _08087FF4 @ case 0 + .4byte _0808800C @ case 1 + .4byte _0808801A @ case 2 + .4byte _08088032 @ case 3 + .4byte _0808804A @ case 4 +_08087FF4: + movs r0, #0x20 + bl CheckKinstoneFused + cmp r0, #0 + bne _08088068 + movs r0, #0x10 + bl CheckKinstoneFused + cmp r0, #0 + bne _08088068 + movs r0, #0x19 + b _08088060EU +_0808800C: + adds r0, r2, #0 + adds r0, #0x7c + ldrb r0, [r0] + cmp r0, #4 + bls _0808806A + movs r0, #0x28 + b _08088060EU +_0808801A: + movs r0, #0x54 + bl CheckKinstoneFused + cmp r0, #0 + bne _08088068 + movs r0, #0x56 + bl CheckKinstoneFused + cmp r0, #0 + bne _08088068 + movs r0, #0x3d + b _08088060EU +_08088032: + movs r0, #0x3b + bl CheckKinstoneFused + cmp r0, #0 + bne _08088068 + movs r0, #0x4a + bl CheckKinstoneFused + cmp r0, #0 + bne _08088068 + movs r0, #0xd + b _08088060EU +_0808804A: + movs r0, #0x49 + bl CheckKinstoneFused + cmp r0, #0 + bne _08088068 + movs r0, #0x55 + bl CheckKinstoneFused + cmp r0, #0 + bne _08088068 + movs r0, #0x3c +_08088060EU: + bl CheckKinstoneFused +_08088064EU: + cmp r0, #0 + beq _0808806A +_08088068: + movs r4, #1 +_0808806A: + adds r0, r4, #0 + pop {r4, pc} + .align 2, 0 + .else .ifdef EU - .incbin "baserom_eu.gba", 0x087B1C, 0x00000E8 @ TODO same as JP + push {r4, lr} + adds r2, r0, #0 + lsls r1, r1, #3 + ldr r0, _08087B44 @ =gUnk_080FC3E4 + adds r1, r1, r0 + movs r4, #0 + adds r0, r2, #0 + adds r0, #0x7d + ldrb r0, [r0] + ldrb r3, [r1, #6] + cmp r0, r3 + bhs _08087BFC + ldrb r0, [r1, #6] + cmp r0, #0x10 + beq _08087B5A + cmp r0, #0x10 + bgt _08087B48 + cmp r0, #8 + beq _08087B50 + b _08087BFE + .align 2, 0 +_08087B44: .4byte gUnk_080FC3E4 +_08087B48: + cmp r0, #0x20 + beq _08087B5E + cmp r0, #0x40 + bne _08087BFE +_08087B50: + ldr r0, [r1] + ldrh r1, [r1, #4] + bl CheckLocalFlagByOffset + b _08087BF8 +_08087B5A: + ldrh r0, [r1, #4] + b _08087BF4 +_08087B5E: + ldrh r0, [r1, #4] + cmp r0, #4 + bhi _08087BFE + lsls r0, r0, #2 + ldr r1, _08087B70 @ =_08087B74 + adds r0, r0, r1 + ldr r0, [r0] + mov pc, r0 + .align 2, 0 +_08087B70: .4byte _08087B74 +_08087B74: @ jump table + .4byte _08087B88 @ case 0 + .4byte _08087BA0 @ case 1 + .4byte _08087BAE @ case 2 + .4byte _08087BC6 @ case 3 + .4byte _08087BDE @ case 4 +_08087B88: + movs r0, #0x20 + bl CheckKinstoneFused + cmp r0, #0 + bne _08087BFC + movs r0, #0x10 + bl CheckKinstoneFused + cmp r0, #0 + bne _08087BFC + movs r0, #0x19 + b _08087BF4 +_08087BA0: + adds r0, r2, #0 + adds r0, #0x7d + ldrb r0, [r0] + cmp r0, #4 + bls _08087BFE + movs r0, #0x28 + b _08087BF4 +_08087BAE: + movs r0, #0x54 + bl CheckKinstoneFused + cmp r0, #0 + bne _08087BFC + movs r0, #0x56 + bl CheckKinstoneFused + cmp r0, #0 + bne _08087BFC + movs r0, #0x3d + b _08087BF4 +_08087BC6: + movs r0, #0x3b + bl CheckKinstoneFused + cmp r0, #0 + bne _08087BFC + movs r0, #0x4a + bl CheckKinstoneFused + cmp r0, #0 + bne _08087BFC + movs r0, #0xd + b _08087BF4 +_08087BDE: + movs r0, #0x49 + bl CheckKinstoneFused + cmp r0, #0 + bne _08087BFC + movs r0, #0x55 + bl CheckKinstoneFused + cmp r0, #0 + bne _08087BFC + movs r0, #0x3c +_08087BF4: + bl CheckKinstoneFused +_08087BF8: + cmp r0, #0 + beq _08087BFE +_08087BFC: + movs r4, #1 +_08087BFE: + adds r0, r4, #0 + pop {r4, pc} + .align 2, 0 .else push {r4, lr} adds r2, r0, #0 @@ -1049,7 +1558,132 @@ _08088324: .4byte gScreen thumb_func_start sub_08088328 sub_08088328: @ 0x08088328 .ifdef EU - .incbin "baserom_eu.gba", 0x087CBC, 0x00000F8 @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + adds r6, r0, #0 + movs r4, #0x7f +_08087CC6: + bl Random + adds r5, r0, #0 + ands r5, r4 + cmp r5, #0x63 + bhi _08087CC6 + adds r0, r6, #0 + adds r0, #0x81 + ldrb r0, [r0] + rsbs r0, r0, #0 + bl sub_080542C0 + bl Random + movs r1, #0x7f + ands r1, r0 + adds r4, r1, #1 + adds r7, r4, #0 + adds r0, r6, #0 + bl sub_08088424 + adds r0, r6, #0 + adds r0, #0x83 + ldrb r0, [r0] + cmp r5, r0 + bhs _08087D34EU + movs r5, #0 + movs r0, #0x7e + adds r0, r0, r6 + mov r8, r0 +_08087D02EU: + cmp r5, #0 + bne _08087D72 + cmp r4, #0x88 + bls _08087D0C + movs r4, #1 +_08087D0C: + adds r0, r6, #0 + adds r1, r4, #0 + bl sub_08088160 + cmp r0, #0 + beq _08087D2C + ldr r0, _08087D28 @ =gUnk_02002B0E + adds r1, r4, #0 + bl ReadBit + cmp r0, #0 + bne _08087D2C + movs r5, #1 + b _08087D2E + .align 2, 0 +_08087D28: .4byte gUnk_02002B0E +_08087D2C: + adds r4, #1 +_08087D2E: + cmp r7, r4 + bne _08087D02EU + b _08087D6E +_08087D34EU: + movs r5, #1 + movs r0, #0x7e + adds r0, r0, r6 + mov r8, r0 +_08087D3C: + cmp r5, #0 + beq _08087DA4 + cmp r4, #0x88 + bls _08087D46 + movs r4, #1 +_08087D46: + adds r0, r6, #0 + adds r1, r4, #0 + bl sub_08088160 + cmp r0, #0 + beq _08087D68 + ldr r0, _08087D64 @ =gUnk_02002B0E + adds r1, r4, #0 + bl ReadBit + cmp r0, #0 + beq _08087D68 + movs r5, #0 + b _08087D6A + .align 2, 0 +_08087D64: .4byte gUnk_02002B0E +_08087D68: + adds r4, #1 +_08087D6A: + cmp r7, r4 + bne _08087D3C +_08087D6E: + cmp r5, #0 + beq _08087DA4 +_08087D72: + ldr r0, _08087D94 @ =gSave + adds r0, #0xb0 + ldrb r1, [r0] + adds r1, #1 + strb r1, [r0] + adds r0, r6, #0 + adds r0, #0x7c + lsls r1, r1, #0x18 + lsrs r1, r1, #0x18 + ldrb r0, [r0] + cmp r1, r0 + beq _08087D98 + movs r0, #7 + bl SetRoomFlag + b _08087DA4 + .align 2, 0 +_08087D94: .4byte gSave +_08087D98: + movs r0, #0x5f + bl SetLocalFlag + movs r0, #8 + bl SetRoomFlag +_08087DA4: + mov r0, r8 + strb r4, [r0] + ldr r0, [r6, #0x50] + adds r0, #0x7e + strb r4, [r0] + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} + .else push {r4, r5, r6, r7, lr} mov r7, r8 @@ -1473,7 +2107,31 @@ _08088618: .4byte gSave thumb_func_start sub_0808861C sub_0808861C: @ 0x0808861C .ifdef JP - .incbin "baserom_jp.gba", 0x088420, 0x34 @TODO disassemble + push {r4, lr} + adds r4, r1, #0 + movs r0, #0xa8 + movs r1, #0x54 + movs r2, #0xc + movs r3, #8 + bl CheckPlayerInRegion + str r0, [r4, #0x14] + ldr r0, _0808844C @ =0x03001160 + ldrb r0, [r0, #0x14] + cmp r0, #0 + beq _0808843E + movs r0, #0 + str r0, [r4, #0x14] +_0808843E: + ldr r2, _08088450 @ =0x02033280 + ldrb r1, [r2, #7] + movs r0, #1 + orrs r0, r1 + strb r0, [r2, #7] + pop {r4, pc} + .align 2, 0 +_0808844C: .4byte 0x03001160 +_08088450: .4byte 0x02033280 + .else push {r4, lr} adds r4, r1, #0 diff --git a/asm/fileScreen.s b/asm/fileScreen.s index a289b6f3..49177655 100755 --- a/asm/fileScreen.s +++ b/asm/fileScreen.s @@ -39,10 +39,10 @@ HandleGameplayScreen: @ 08051A28 _08051A64: pop {r4, pc} .byte 0x00, 0x00 -_08051A68: .4byte 0x030010A0 @TODO ptr -_08051A6C: .4byte 0x080FC55C @TODO ptr -_08051A70x: .4byte 0x03001000 @TODO ptr -_08051A74x: .4byte 0x02002A40 @TODO ptr +_08051A68: .4byte gUnk_030010A0 +_08051A6C: .4byte gUnk_080FC9D8 +_08051A70x: .4byte gMain +_08051A74x: .4byte gUnk_02002A40 .else thumb_func_start HandleGameplayScreen HandleGameplayScreen: @ 0x08051988 @@ -201,7 +201,83 @@ _08051AEC: .4byte gScreenTransition thumb_func_start sub_08051AF0 sub_08051AF0: @ 0x08051AF0 .ifdef EU - .incbin "baserom_eu.gba", 0x05172C, 0x00000D0 @TODO disassemble + push {r4, lr} + bl sub_0805E5C0 + bl sub_0805BBBC + cmp r0, #0 + bne _0805173E + bl UpdateScroll +_0805173E: + bl UpdateBgAnim + bl sub_08000108 + bl sub_0801C344 + bl sub_0805E5F8 + bl FlushSprites + bl sub_0801C208 + bl sub_08078CB4 + bl sub_080AD9B0 + bl sub_080AD918 + ldr r0, _080517E0 @ =gFadeControl + ldrb r0, [r0] + cmp r0, #0 + bne _080517DC + ldr r0, _080517E4 @ =gRoomControls + ldrh r0, [r0] + cmp r0, #0 + bne _080517DC + bl sub_08052F1C + ldr r0, _080517E8 @ =gArea + movs r1, #0x86 + lsls r1, r1, #4 + adds r3, r0, r1 + adds r1, #4 + adds r0, r0, r1 + ldr r1, [r3] + ldr r2, [r0] + cmp r1, r2 + beq _08051796 + str r2, [r3] + ldr r0, _080517EC @ =0x800B0000 + orrs r2, r0 + adds r0, r2, #0 + bl SoundReq +_08051796: + bl sub_0805E9F4 + bl sub_0805BC04 + adds r4, r0, #0 + cmp r4, #0 + bne _080517DC + bl sub_08052C5C + bl sub_0805E5B4 + bl sub_08051E04 + bl sub_080300C4 + ldr r1, _080517F0 @ =gMain + movs r0, #2 + strb r0, [r1, #4] + movs r0, #0 + bl sub_08078A90 + ldr r0, _080517F4 @ =gUnk_02034490 + strb r4, [r0] + bl sub_08053178 + bl sub_0801855C + ldr r0, _080517F8 @ =gRoomVars + ldrb r0, [r0] + cmp r0, #0 + bne _080517DC + movs r0, #0 + movs r1, #1 + bl sub_0805E4E0 +_080517DC: + pop {r4, pc} + .align 2, 0 +_080517E0: .4byte gFadeControl +_080517E4: .4byte gRoomControls +_080517E8: .4byte gArea +_080517EC: .4byte 0x800B0000 +_080517F0: .4byte gMain +_080517F4: .4byte gUnk_02034490 +_080517F8: .4byte gRoomVars + .else push {r4, r5, lr} bl sub_0805E5C0 @@ -448,7 +524,16 @@ _08051D28: .4byte gScreenTransition thumb_func_start sub_08051D2C sub_08051D2C: @ 0x08051D2C .ifdef DEMO - .incbin "baserom_demo.gba", 0x051df4, 0x14 @TODO disassemble + push {lr} + ldr r0, _08051E04 @ =0x03000FD0 + ldrb r0, [r0] + cmp r0, #0 + bne _08051E02 + bl DoSoftReset +_08051E02: + pop {pc} + .align 2, 0 +_08051E04: .4byte 0x03000FD0 .else push {lr} movs r0, #7 diff --git a/asm/gleerok.s b/asm/gleerok.s index 5367db12..b1e611bb 100644 --- a/asm/gleerok.s +++ b/asm/gleerok.s @@ -993,7 +993,91 @@ _0802D7B0: .4byte gScreenTransition thumb_func_start sub_0802D7B4 sub_0802D7B4: @ 0x0802D7B4 .ifdef EU - .incbin "baserom_eu.gba", 0x02d73c, 0xb0 @TODO disassemble + push {r4, r5, lr} + adds r5, r0, #0 + ldrb r0, [r5, #0xe] + adds r2, r0, #0 + cmp r2, #0 + bne _0802D7ACEU + ldr r4, _0802D780 @ =gUnk_080CD7F8 + ldrb r3, [r5, #0xf] + adds r0, r3, r4 + ldrb r1, [r0] + adds r0, r1, #0 + cmp r0, #0xff + bne _0802D790 + strb r2, [r5, #0xf] + strb r2, [r5, #0xe] + movs r0, #1 + strb r0, [r5, #0xc] + strb r2, [r5, #0xd] + adds r0, r5, #0 + adds r0, #0x84 + ldr r0, [r0] + ldr r1, [r0, #0x50] + movs r0, #0x18 + strb r0, [r1, #0xe] + ldr r1, _0802D784 @ =gRoomControls + ldr r0, _0802D788 @ =gPlayerEntity + str r0, [r1, #0x30] + ldr r0, _0802D78C @ =gUnk_02034490 + strb r2, [r0] + movs r0, #0x2e + bl SoundReq + b _0802D7E8 + .align 2, 0 +_0802D780: .4byte gUnk_080CD7F8 +_0802D784: .4byte gRoomControls +_0802D788: .4byte gPlayerEntity +_0802D78C: .4byte gUnk_02034490 +_0802D790: + strb r1, [r5, #0xe] + adds r0, r3, #1 + adds r0, r0, r4 + ldrb r0, [r0] + strb r0, [r5, #0x15] + ldrb r0, [r5, #0xf] + adds r0, #2 + strb r0, [r5, #0xf] + ldr r0, _0802D7A8 @ =0x00000127 + bl SoundReq + b _0802D7B0EU + .align 2, 0 +_0802D7A8: .4byte 0x00000127 +_0802D7ACEU: + subs r0, #1 + strb r0, [r5, #0xe] +_0802D7B0EU: + ldrb r0, [r5, #0x15] + cmp r0, #1 + bhi _0802D7C8 + adds r4, r5, #0 + adds r4, #0x84 + ldr r0, [r4] + ldrb r3, [r5, #0x15] + movs r1, #5 + movs r2, #0x40 + bl sub_0802EA48 + b _0802D7DC +_0802D7C8: + adds r4, r5, #0 + adds r4, #0x84 + cmp r0, #0xff + beq _0802D7DC + ldr r0, [r4] + ldrb r3, [r5, #0x15] + movs r1, #5 + movs r2, #0x40 + bl sub_0802EA68 +_0802D7DC: + ldr r0, [r4] + bl sub_0802E768 + adds r0, r5, #0 + bl sub_0802E518 +_0802D7E8: + pop {r4, r5, pc} + .align 2, 0 + .else push {r4, r5, lr} adds r5, r0, #0 diff --git a/asm/gyorgFemale.s b/asm/gyorgFemale.s index acb064ee..49dd9eda 100644 --- a/asm/gyorgFemale.s +++ b/asm/gyorgFemale.s @@ -472,7 +472,6 @@ _08046494: pop {r4, r5, r6, pc} .align 2, 0 -@ TODO move inside, if EU no longer references this function thumb_func_start sub_08046498 sub_08046498: @ 0x08046498 .ifndef EU @@ -708,7 +707,33 @@ _0804665A: thumb_func_start sub_08046668 sub_08046668: @ 0x08046668 .ifdef EU - .incbin "baserom_eu.gba", 0x046438, 0x38 @TODO disassemble + push {r4, lr} + adds r4, r0, #0 + adds r0, #0x45 + ldrb r0, [r0] + cmp r0, #0 + beq _08046468EU + bl Random + ldr r2, _0804646C @ =gUnk_080D1AF8 + movs r1, #3 + ands r1, r0 + adds r1, r1, r2 + ldrb r1, [r1] + adds r0, r4, #0 + adds r0, #0x78 + movs r2, #0 + strb r1, [r0] + adds r0, #7 + strb r2, [r0] + adds r0, #3 + strb r2, [r0] + adds r0, r4, #0 + bl sub_080467DC +_08046468EU: + pop {r4, pc} + .align 2, 0 +_0804646C: .4byte gUnk_080D1AF8 + .else push {r4, r5, lr} adds r4, r0, #0 @@ -745,7 +770,157 @@ _080466A4: .4byte gUnk_080D1AF8 thumb_func_start sub_080466A8 sub_080466A8: @ 0x080466A8 .ifdef EU - .incbin "baserom_eu.gba", 0x046470, 0x12c @TODO disassemble + push {r4, r5, r6, r7, lr} + adds r4, r0, #0 + adds r0, #0x7c + ldrb r2, [r0] + cmp r2, #0 + beq _08046514EU + adds r0, #1 + ldrb r1, [r0] + orrs r1, r2 + strb r1, [r0] + ldrb r1, [r4, #0xe] + adds r5, r0, #0 + cmp r1, #0 + bne _08046498 + subs r0, #5 + ldrb r0, [r0] + cmp r0, #0xff + beq _08046498 + movs r0, #3 + strb r0, [r4, #0xe] +_08046498: + ldrb r0, [r5] + bl sub_08000E62 + cmp r0, #2 + bls _08046514EU + movs r0, #0 + strb r0, [r4, #0xe] + strb r0, [r5] + adds r7, r4, #0 + adds r7, #0x78 + subs r0, #1 + adds r6, r0, #0 + movs r0, #0xff + strb r0, [r7] + adds r0, #0x28 + bl SoundReq + adds r5, r4, #0 + adds r5, #0x45 + ldrb r0, [r5] + cmp r0, #0 + beq _0804650E + movs r0, #8 + movs r1, #0 + bl sub_08080964 + adds r1, r4, #0 + adds r1, #0x82 + ldrb r0, [r1] + adds r0, #1 + strb r0, [r1] + ands r0, r6 + lsls r0, r0, #0x18 + lsrs r0, r0, #0x18 + cmp r0, #0xc + bhi _080464E6 + ldrb r0, [r5] + subs r0, #1 + strb r0, [r5] +_080464E6: + ldrb r0, [r5] + cmp r0, #0 + bne _080464F8 + strb r0, [r7] + adds r1, r4, #0 + adds r1, #0x7a + movs r0, #0xa5 + lsls r0, r0, #3 + b _0804650CEU +_080464F8: + adds r1, r4, #0 + adds r1, #0x7f + ldrb r0, [r1] + cmp r0, #0 + bne _0804650E + movs r0, #1 + strb r0, [r1] + subs r1, #5 + movs r0, #0x87 + lsls r0, r0, #3 +_0804650CEU: + strh r0, [r1] +_0804650E: + adds r0, r4, #0 + bl sub_080467DC +_08046514EU: + ldrb r1, [r4, #0xe] + cmp r1, #0 + beq _0804658C + adds r0, r4, #0 + adds r0, #0x78 + ldrb r0, [r0] + cmp r0, #0xff + beq _0804658C + subs r0, r1, #1 + strb r0, [r4, #0xe] + lsls r0, r0, #0x18 + lsrs r5, r0, #0x18 + cmp r5, #0 + bne _0804658C + adds r2, r4, #0 + adds r2, #0x80 + adds r3, r4, #0 + adds r3, #0x7d + ldrb r0, [r2] + ldrb r1, [r3] + orrs r0, r1 + strb r0, [r2] + strb r5, [r3] + adds r0, r4, #0 + bl sub_080467DC + ldr r2, _08046598 @ =gPlayerEntity + ldr r0, [r4, #0x64] + adds r0, #0x3c + ldrb r0, [r0] + adds r1, r2, #0 + adds r1, #0x3e + strb r0, [r1] + subs r1, #1 + movs r0, #0xf4 + strb r0, [r1] + adds r1, #5 + movs r0, #0xa + strb r0, [r1] + adds r0, r4, #0 + movs r1, #0x2c + movs r2, #0 + bl CreateFx + adds r2, r0, #0 + cmp r2, #0 + beq _0804658C + ldr r0, [r4, #0x64] + ldrh r0, [r0, #0x38] + strh r0, [r2, #0x2e] + ldr r0, [r4, #0x64] + ldrh r0, [r0, #0x3a] + strh r0, [r2, #0x32] + adds r1, r2, #0 + adds r1, #0x38 + movs r0, #1 + strb r0, [r1] + adds r0, r2, #0 + bl UpdateSpriteForCollisionLayer +_0804658C: + adds r1, r4, #0 + adds r1, #0x7c + movs r0, #0 + strb r0, [r1] + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_08046598: .4byte gPlayerEntity + + .else push {r4, r5, r6, r7, lr} adds r4, r0, #0 diff --git a/asm/gyorgFemaleEye.s b/asm/gyorgFemaleEye.s index 6e26f54c..0876c5fa 100644 --- a/asm/gyorgFemaleEye.s +++ b/asm/gyorgFemaleEye.s @@ -45,7 +45,71 @@ _080489C8: .4byte gUnk_080D1F7C thumb_func_start sub_080489CC sub_080489CC: @ 0x080489CC .ifdef EU - .incbin "baserom_eu.gba", 0x048788, 0x84 @TODO disassemble + push {r4, r5, r6, lr} + adds r5, r0, #0 + movs r0, #0x45 + adds r0, r0, r5 + mov ip, r0 + ldrb r0, [r0] + cmp r0, #0xff + beq _080487F4 + ldr r3, [r5, #0x50] + adds r2, r3, #0 + adds r2, #0x7c + movs r0, #1 + ldrb r1, [r5, #0xa] + lsls r0, r1 + ldrb r1, [r2] + orrs r0, r1 + strb r0, [r2] + ldr r4, [r3, #0x64] + ldrb r0, [r5, #0xa] + lsls r0, r0, #2 + adds r1, r4, #0 + adds r1, #0x18 + adds r1, r1, r0 + ldr r0, [r5, #0x4c] + str r0, [r1] + ldr r2, _08048804 @ =gPlayerEntity + movs r6, #0x2e + ldrsh r0, [r2, r6] + movs r6, #0x2e + ldrsh r1, [r5, r6] + adds r0, r0, r1 + lsrs r1, r0, #0x1f + adds r0, r0, r1 + asrs r0, r0, #1 + strh r0, [r4, #0x38] + ldr r4, [r3, #0x64] + movs r1, #0x32 + ldrsh r0, [r2, r1] + movs r2, #0x32 + ldrsh r1, [r5, r2] + adds r0, r0, r1 + lsrs r1, r0, #0x1f + adds r0, r0, r1 + asrs r0, r0, #1 + strh r0, [r4, #0x3a] + ldr r2, [r3, #0x64] + adds r3, r5, #0 + adds r3, #0x3e + ldrb r0, [r3] + movs r1, #0x10 + eors r0, r1 + strb r0, [r3] + adds r2, #0x3c + strb r0, [r2] +_080487F4: + movs r0, #0xff + mov r6, ip + strb r0, [r6] + ldr r1, _08048808 @ =gUnk_080D1F64 + adds r0, r5, #0 + bl sub_0804AA30 + pop {r4, r5, r6, pc} + .align 2, 0 +_08048804: .4byte gPlayerEntity +_08048808: .4byte gUnk_080D1F64 .else push {r4, r5, r6, lr} mov ip, r0 diff --git a/asm/intr.s b/asm/intr.s index aea16317..c8c67bea 100644 --- a/asm/intr.s +++ b/asm/intr.s @@ -815,7 +815,54 @@ _080B23EC: .4byte gUnk_0800464E arm_func_start sub_080B23F0 sub_080B23F0: @ 0x080B23F0 .ifdef EU - .incbin "baserom_eu.gba", 0x0B1950, 0x00000A8 @TODO disassemble + push {r4, r5, r6, r7, r8, sb, sl, fp, lr} + ldr fp, _080B2A30 @ =gUnk_03000000 + ldrb r2, [fp, #3] + cmp r2, #0x80 + bhs _080B19C0EU + add r0, pc, #0x54 @ =_080B19C0 + str r0, [fp, #0x18] + str sp, [fp, #0x14] + ldrb r0, [fp, #0xf] + cmp r0, #0xff + bne _080B1984 + bl _080B1FBC +_080B1980: + mov r0, #0x0 +_080B1984: + ldr r1, _080B2154 @ =0x03006958 + ldr r1, [r1, r0, lsl #2] + str r1, [fp, #0x1c] + ldr r0, _080B2A34 @ =gUnk_081326EC + ldr r0, [r0] + bl sub_080B19C8 + ldr r0, _080B2A38 @ =gUnk_081326EC + ldr r0, [r0, #4] + bl sub_080B19C8 + ldr r0, _080B2A3C @ =gUnk_081326EC + ldr r0, [r0, #8] + bl sub_080B19C8 + ldr r0, _080B2A40 @ =gUnk_081326EC + ldr r0, [r0, #0xc] + bl sub_080B19C8 +_080B19C0EU: + pop {r4, r5, r6, r7, r8, sb, sl, fp, lr} + bx lr + + arm_func_start sub_080B19C8 +sub_080B19C8: @ 0x080B19C8 + ldrb r2, [r0] + cmp r2, #0 + bxeq lr + ldr r1, _080B2A44 @ =0x08131D3C + ldr r1, [r1, #0x10] + mov r2, #0 + strb r2, [r1] + stmdb sp!, {lr} + bl sub_080B2478 + bl sub_080B2534 + ldm sp!, {lr} + b _080B1C40EU .else push {r4, r5, r6, r7, r8, sb, sl, fp, lr} ldr fp, _080B2A30 @ =gUnk_03000000 @@ -932,7 +979,131 @@ _080B2540: arm_func_start sub_080B255C sub_080B255C: @ 0x080B255C .ifdef EU - .incbin "baserom_eu.gba", 0x0B1ADC, 0x00001C8 @TODO disassemble + stmdb sp!, {lr} + mov r4, r0 + bl sub_080B299C + ldr r3, [fp, #0x1c] + mov lr, pc + bxne r3 + mov r5, #0 + strb r5, [fp, #0x12] + ldrsb r2, [r4, #0x29] + ands r2, r2, #8 + beq _080B1BB8 + ldrsh r3, [r4, #0x36] + cmp r3, #0 + bmi _080B1BA4 + mov r1, #0 + mov r2, #0 + bl sub_080B1BCC + ldrb r1, [r4, #0x18] + and r1, r1, #0x30 + mov r1, r1 + cmp r0, #0x19 + beq _080B1B98 + cmp r0, #0x2f + beq _080B1B64 + cmp r0, #0xf + bne _080B1BA4 + mov r5, #2 + strb r5, [fp, #0x12] + add r7, r7, r5 + ldrb r2, [fp, #1] + and r2, r2, #0x18 + add r2, r2, #0x80 + lsr r2, r2, #2 + b _080B1B74 +_080B1B64: + ldrb r2, [r4, #0x2e] + ldrb r3, [r4, #0x32] + eor r2, r2, r3 + and r2, r2, #6 +_080B1B74: + ldr r3, _080B2A48 @ =gUnk_030068CC + add r2, r1, r2, lsl #1 + ldr sl, [r3, r2] + push {r4, r8, sb} + mov r8, #0 + and sb, sb, #0xc00 + bl _080B2874 + pop {r4, r8, sb, lr} + b _080B2718 +_080B1B98: + mov r5, #2 + strb r5, [fp, #0x12] + add r7, r7, r5 +_080B1BA4: + stmdb sp!, {r4} + mov r0, r4 + bl _080B2718 + pop {r4, lr} + b _080B1BC0 +_080B1BB8: + ldm sp!, {lr} + b _080B2718 +_080B1BC0: + ldrsh r1, [r4, #0x36] + ldrb r0, [r4, #0x29] + tst r0, #0x10 + beq _080B1BD8 + cmp r1, #0 + bxpl lr +_080B1BD8: + tst r0, #0x20 + beq _080B1BEC + ldrb r0, [fp, #1] + tst r0, #1 + bxne lr +_080B1BEC: + mov r2, r7 + cmp r1, #0 + submi r2, r2, r1 + ldr r3, _080B2A4C @ =gUnk_081326EC + ldr r3, [r3, #0x10] + ldrb r0, [r3] + cmp r0, #0x40 + bxhs lr + add r0, r0, #1 + strb r0, [r3] + add r3, r3, r0, lsl #2 + lsr r0, sb, #0xa + and r0, r0, #3 + orr r0, r0, r2, lsl #6 + strh r0, [r3, #2] + ldrb r0, [r4, #0x18] + and r0, r0, #0x30 + lsr r0, r0, #4 + orr r0, r0, r6, lsl #6 + strh r0, [r3] + bx lr +_080B1C40EU: + ldr r4, _080B2A50 @ =gUnk_081326EC + ldr r4, [r4, #0x10] + ldrb r5, [r4] + cmp r5, #0 + bxeq lr + stmdb sp!, {lr} + add r4, r4, #4 +_080B1C5C: + ldrsh r0, [r4] + asr r6, r0, #6 + and r1, r0, #7 + ldr sl, _080B2A54 @ =gUnk_0300694C + ldr sl, [sl, r1, lsl #2] + ldrsh r0, [r4, #2] + asr r7, r0, #6 + and r1, r0, #3 + lsl sb, r1, #0xa + mov r8, #0 + push {r4, r5} + bl _080B2874 + pop {r4, r5} + add r4, r4, #4 + subs r5, r5, #1 + bgt _080B1C5C + ldm sp!, {lr} + bx lr + .else stmdb sp!, {lr} mov r4, r0 @@ -1057,6 +1228,8 @@ _080B26D0: bx lr .endif + + _080B2718: ldrsb r0, [r4, #0x28] cmp r0, #0 @@ -1282,12 +1455,124 @@ _080B2A0C: .align 2, 0 .ifdef EU - .incbin "baserom_eu.gba", 0x0B1FBC, 0x0000194 @TODO disassemble +_080B1FBC: + mov sl, lr + ldrsh r0, [fp, #0x1c] + ldrsh r1, [fp, #0x1e] + ldrsh r2, [fp, #4] + sub r0, r0, r2 + ldrsh r3, [fp, #6] + sub r1, r1, r3 + mov r2, #0 + mov r3, #0 + bl sub_080B20ECEU + mov r5, #0 + ldr r4, _080B2194 @ =0x03003DF8 +_080B1FECEU: + ldr r0, [r4, #8] + cmp r0, #0 + beq _080B2074EU + ldrsh r6, [r0, #0x2e] + ldrsh r7, [r0, #0x32] + ldr r3, [r4, #4] + cmp r3, #0 + beq _080B2024 + ldrsb r0, [r3] + add r6, r6, r0 + ldrsb r0, [r3, #1] + add r7, r7, r0 + add r3, r3, #2 + b _080B202C +_080B2024: + ldr r3, [r0, #0x48] + add r3, r3, #6 +_080B202C: + ldrsh r0, [fp, #4] + sub r6, r6, r0 + ldrsh r0, [fp, #6] + sub r7, r7, r0 + ldrb r0, [r3] + ldrb r1, [r3, #1] + ldr r2, [fp, #1] + and r2, r2, #3 + lsl r3, r2, #0x1c + lsrs r2, r2, #1 + rsblo r0, r0, #0 + subhs r0, r0, #8 + rsbeq r1, r1, #0 + subne r1, r1, #8 + add r0, r0, r6 + add r1, r1, r7 + mov r2, #0 + bl sub_080B20ECEU +_080B2074EU: + add r4, r4, #0xc + add r5, r5, #1 + cmp r5, #0x1f + bls _080B1FECEU + bx sl + arm_func_start sub_080B2088 +sub_080B2088: @ 0x080B2088 + ldr r5, [r4, #0x48] + cmp r5, #0 + bxeq lr + ldrb r0, [r5, #6] + ldrb r1, [r5, #7] + ldr r2, [fp, #1] + and r2, r2, #3 + lsl r3, r2, #0x1c + lsrs r2, r2, #1 + rsblo r0, r0, #0 + subhs r0, r0, #8 + rsbeq r1, r1, #0 + subne r1, r1, #8 + ldrsb r2, [r5] + add r0, r6, r0 + add r0, r0, r2 + ldrsb r2, [r5, #1] + add r1, r7, r1 + add r1, r1, r2 + mov r2, sb + b sub_080B20ECEU +_080B20DC: + mov r0, r6 + mov r1, r7 + mov r2, r9 + mov r3, #0x0 + + arm_func_start sub_080B20ECEU +sub_080B20ECEU: @ 0x080B20EC + add ip, r1, #7 + cmp ip, #0xa8 + bxhs lr + add ip, r0, #7 + cmp ip, #0xf8 + bxhs lr + and r1, r1, #0xff + lsl r0, r0, #0x17 + orr r0, r1, r0, lsr #7 + eor r0, r0, r3 + and r1, r2, #0xc00 + add r1, r1, #0xff + ldrb r3, [fp, #3] + add ip, fp, #0x20 + add ip, ip, r3, lsl #3 + str r0, [ip] + strh r1, [ip, #4] + add r3, r3, #1 + cmp r3, #0x80 + bhs _080B298C + strb r3, [fp, #3] + bx lr +_080B2144: + .4byte gUnk_03006954 + .4byte gUnk_030068F0 + .4byte gUnk_0300689C .endif _080B2A30: .4byte gUnk_03000000 .ifdef EU - .4byte 0x03006958 @TODO make pointer? +_080B2154: .4byte 0x03006958 @TODO make pointer? .endif _080B2A34: .4byte gUnk_081326EC _080B2A38: .4byte gUnk_081326EC @@ -1305,5 +1590,5 @@ _080B2A64: .4byte gUnk_03000000 _080B2A68: .4byte gUnk_0300695C _080B2A6C: .4byte 0x3E003F00 .ifdef EU - .4byte 0x03003DF8 @TODO pointer? +_080B2194: .4byte 0x03003DF8 @TODO pointer? .endif diff --git a/asm/item/itemLantern.s b/asm/item/itemLantern.s index 0c26709a..08f5e893 100644 --- a/asm/item/itemLantern.s +++ b/asm/item/itemLantern.s @@ -119,7 +119,62 @@ _08075AD8: .4byte gUnk_08126EEC thumb_func_start sub_08075ADC sub_08075ADC: @ 0x08075ADC .ifdef EU - .incbin "baserom_eu.gba", 0x07550C, 0x0000074 @TODO disassemble + push {r4, r5, lr} + adds r4, r0, #0 + adds r5, r1, #0 + ldrb r1, [r4, #0xe] + movs r0, #1 + ands r0, r1 + cmp r0, #0 + beq _08075532 + ldr r0, _08075570 @ =gPlayerState + ldr r0, [r0, #0x30] + movs r1, #0x88 + lsls r1, r1, #1 + ands r0, r1 + cmp r0, #0 + bne _08075532 + bl sub_08079D48 + cmp r0, #0 + bne _08075578 +_08075532: + movs r0, #0 + strb r0, [r4, #0xf] + ldrb r0, [r4, #4] + adds r0, #1 + strb r0, [r4, #4] + ldr r3, _08075570 @ =gPlayerState + ldr r0, [r3, #0x30] + movs r1, #0x80 + lsls r1, r1, #0x10 + orrs r0, r1 + str r0, [r3, #0x30] + movs r2, #8 + asrs r2, r5 + lsls r1, r2, #4 + orrs r1, r2 + ldrb r0, [r3, #4] + bics r0, r1 + strb r0, [r3, #4] + mvns r2, r2 + ldrb r1, [r3, #0xa] + adds r0, r2, #0 + ands r0, r1 + strb r0, [r3, #0xa] + ldrb r0, [r3, #0xb] + ands r2, r0 + strb r2, [r3, #0xb] + ldr r0, _08075574 @ =0x0000013D + bl SoundReq + b _0807557E + .align 2, 0 +_08075570: .4byte gPlayerState +_08075574: .4byte 0x0000013D +_08075578: + adds r0, r4, #0 + bl UpdateItemAnim +_0807557E: + pop {r4, r5, pc} .else push {r4, r5, lr} adds r4, r0, #0 diff --git a/asm/item/itemSword.s b/asm/item/itemSword.s index d14add13..4e6af7b5 100644 --- a/asm/item/itemSword.s +++ b/asm/item/itemSword.s @@ -27,7 +27,185 @@ _08075334: .4byte gUnk_0811BD44 thumb_func_start sub_08075338 sub_08075338: @ 0x08075338 .ifdef EU - .incbin "baserom_eu.gba", 0x074D74, 0x0000174 @TODO disassemble + push {r4, r5, r6, r7, lr} + adds r5, r0, #0 + adds r7, r1, #0 + ldr r4, _08074DA8 @ =gPlayerState + ldr r1, [r4, #0x30] + movs r3, #0x80 + adds r0, r1, #0 + ands r0, r3 + cmp r0, #0 + beq _08074DAC + ldrb r0, [r5, #9] + movs r1, #0x80 + orrs r1, r0 + strb r1, [r5, #9] + adds r0, r5, #0 + adds r1, r7, #0 + bl sub_08077D38 + movs r0, #0xc0 + lsls r0, r0, #4 + strh r0, [r4, #8] + movs r0, #0x75 + bl SoundReq + b _08074EE2 + .align 2, 0 +_08074DA8: .4byte gPlayerState +_08074DAC: + ldrb r2, [r4, #2] + cmp r2, #0 + beq _08074E22 + movs r6, #7 + adds r0, r6, #0 + ands r0, r2 + cmp r0, #3 + beq _08074E18 + movs r0, #0x78 + ands r0, r2 + cmp r0, #0 + bne _08074E18 + ldr r3, _08074E10 @ =gPlayerEntity + ldr r1, [r3, #0x20] + ldr r0, _08074E14 @ =0x00017FFF + cmp r1, r0 + bhi _08074E18 + adds r0, r4, #0 + adds r0, #0xac + ldrh r1, [r0] + movs r0, #0x40 + ands r0, r1 + cmp r0, #0 + beq _08074E18 + ldr r0, [r3, #0x34] + cmp r0, #0 + beq _08074E18 + movs r0, #0x20 + orrs r0, r2 + strb r0, [r4, #2] + adds r0, r4, #0 + adds r0, #0xab + strb r6, [r0] + movs r0, #8 + asrs r0, r7 + lsls r1, r0, #4 + orrs r0, r1 + ldrb r1, [r4, #4] + orrs r0, r1 + strb r0, [r4, #4] + adds r0, r5, #0 + bl sub_08077B98 + movs r0, #6 + strb r0, [r5, #4] + adds r0, r5, #0 + adds r1, r7, #0 + bl sub_08075898 + b _08074EE2 + .align 2, 0 +_08074E10: .4byte gPlayerEntity +_08074E14: .4byte 0x00017FFF +_08074E18: + adds r0, r5, #0 + adds r1, r7, #0 + bl sub_080759B8 + b _08074EE2 +_08074E22: + movs r6, #0x80 + lsls r6, r6, #0xb + ands r6, r1 + cmp r6, #0 + beq _08074EAE + adds r0, r4, #0 + adds r0, #0xac + ldrh r1, [r0] + movs r0, #2 + ands r0, r1 + lsls r0, r0, #0x10 + lsrs r6, r0, #0x10 + cmp r6, #0 + bne _08074E4C + ldr r0, [r4, #0x2c] + cmp r0, #0 + beq _08074EE2 + bl DeleteEntity + str r6, [r4, #0x2c] + b _08074EE2 +_08074E4C: + adds r0, r5, #0 + adds r1, r7, #0 + bl sub_08077D38 + adds r0, r5, #0 + bl sub_08077B98 + movs r3, #8 + adds r1, r3, #0 + asrs r1, r7 + lsls r0, r1, #4 + orrs r0, r1 + ldrb r2, [r4, #4] + orrs r0, r2 + strb r0, [r4, #4] + ldrb r2, [r4, #0xa] + adds r0, r1, #0 + orrs r0, r2 + strb r0, [r4, #0xa] + ldrb r0, [r4, #0xb] + orrs r1, r0 + strb r1, [r4, #0xb] + strb r3, [r5, #4] + movs r0, #0x14 + strb r0, [r5, #7] + movs r0, #6 + strb r0, [r5, #0xf] + ldrb r1, [r5, #9] + movs r0, #0x80 + orrs r0, r1 + strb r0, [r5, #9] + adds r1, r4, #0 + adds r1, #0xab + movs r0, #2 + strb r0, [r1] + ldr r0, [r4, #0x30] + movs r1, #0x80 + lsls r1, r1, #0x14 + orrs r0, r1 + str r0, [r4, #0x30] + movs r1, #0x98 + lsls r1, r1, #1 + adds r0, r5, #0 + bl sub_08077DF4 + movs r0, #0x77 + bl SoundReq + b _08074EE2 +_08074EAE: + ldrb r1, [r4, #0x1b] + adds r0, r3, #0 + ands r0, r1 + cmp r0, #0 + bne _08074EC0 + strb r6, [r4, #0x1b] + ldr r0, _08074EE4 @ =gPlayerEntity + bl sub_0806F948 +_08074EC0: + ldr r1, [r4, #0x2c] + cmp r1, #0 + beq _08074ED4 + ldrb r0, [r1, #9] + cmp r0, #1 + beq _08074ED4 + adds r0, r1, #0 + bl DeleteEntity + str r6, [r4, #0x2c] +_08074ED4: + adds r0, r5, #0 + adds r1, r7, #0 + bl sub_08077D38 + adds r0, r5, #0 + bl sub_08077B98 +_08074EE2: + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_08074EE4: .4byte gPlayerEntity + .else push {r4, r5, r6, r7, lr} adds r5, r0, #0 diff --git a/asm/ladderUp.s b/asm/ladderUp.s index 6137f152..785c3f3b 100644 --- a/asm/ladderUp.s +++ b/asm/ladderUp.s @@ -10,7 +10,256 @@ thumb_func_start LadderUp LadderUp: @ 0x0808DB54 .ifdef EU - .incbin "baserom_eu.gba", 0x08D44C, 0x0000200 @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + adds r7, r0, #0 + ldrb r0, [r7, #0xc] + cmp r0, #1 + beq _0808D4D8 + cmp r0, #1 + bgt _0808D518 + cmp r0, #0 + bne _0808D518 + ldrb r0, [r7, #0xe] + movs r1, #2 + cmp r0, #0 + beq _0808D46C + movs r1, #1 +_0808D46C: + strb r1, [r7, #0xc] + adds r1, r7, #0 + adds r1, #0x63 + ldrb r0, [r1] + adds r0, #8 + strb r0, [r1] + adds r0, r7, #0 + movs r1, #0xa + bl InitializeAnimation + ldrb r0, [r7, #0xc] + cmp r0, #1 + bne _0808D48A + ldr r0, _0808D4CC @ =0x0000FF80 + strh r0, [r7, #0x36] +_0808D48A: + ldrb r0, [r7, #0xb] + cmp r0, #0 + beq _0808D492 + b _0808D642 +_0808D492: + ldrh r1, [r7, #0x32] + movs r0, #0x10 + rsbs r0, r0, #0 + ands r0, r1 + adds r0, #0xc + strh r0, [r7, #0x32] + ldr r0, _0808D4D0 @ =0x00004023 + movs r2, #0x2e + ldrsh r1, [r7, r2] + ldr r3, _0808D4D4 @ =gRoomControls + ldrh r2, [r3, #6] + subs r1, r1, r2 + asrs r1, r1, #4 + movs r4, #0x3f + ands r1, r4 + movs r5, #0x32 + ldrsh r2, [r7, r5] + ldrh r3, [r3, #8] + subs r2, r2, r3 + asrs r2, r2, #4 + ands r2, r4 + lsls r2, r2, #6 + orrs r1, r2 + adds r2, r7, #0 + adds r2, #0x38 + ldrb r2, [r2] + bl SetTile + b _0808D642 + .align 2, 0 +_0808D4CC: .4byte 0x0000FF80 +_0808D4D0: .4byte 0x00004023 +_0808D4D4: .4byte gRoomControls +_0808D4D8: + movs r1, #0x80 + lsls r1, r1, #5 + adds r0, r7, #0 + bl sub_08003FC4 + cmp r0, #0 + beq _0808D4E8 + b _0808D642 +_0808D4E8: + adds r0, r7, #0 + movs r1, #0x46 + movs r2, #0x40 + bl CreateFx + adds r1, r0, #0 + cmp r1, #0 + beq _0808D4FE + ldrh r0, [r1, #0x32] + adds r0, #8 + strh r0, [r1, #0x32] +_0808D4FE: + movs r0, #0x1e + movs r1, #0 + bl sub_08080964 + ldr r0, _0808D514 @ =0x0000010B + bl SoundReq + movs r0, #2 + strb r0, [r7, #0xc] + b _0808D642 + .align 2, 0 +_0808D514: .4byte 0x0000010B +_0808D518: + ldrb r0, [r7, #0xb] + cmp r0, #0 + beq _0808D520 + b _0808D642 +_0808D520: + ldr r0, _0808D598 @ =gPlayerEntity + movs r2, #0x32 + ldrsh r1, [r0, r2] + movs r3, #0x32 + ldrsh r0, [r7, r3] + cmp r1, r0 + bge _0808D5AC + ldr r0, _0808D59C @ =gPlayerState + ldrb r0, [r0, #0x12] + cmp r0, #0x1e + bne _0808D538 + b _0808D642 +_0808D538: + adds r0, r7, #0 + bl GetTileTypeByEntity + ldr r1, _0808D5A0 @ =0x00004017 + cmp r0, r1 + beq _0808D546 + b _0808D642 +_0808D546: + ldr r0, _0808D5A4 @ =0x00004023 + movs r5, #0x2e + ldrsh r1, [r7, r5] + ldr r4, _0808D5A8 @ =gRoomControls + ldrh r2, [r4, #6] + subs r1, r1, r2 + asrs r1, r1, #4 + movs r5, #0x3f + ands r1, r5 + movs r3, #0x32 + ldrsh r2, [r7, r3] + ldrh r3, [r4, #8] + subs r2, r2, r3 + asrs r2, r2, #4 + ands r2, r5 + lsls r2, r2, #6 + orrs r1, r2 + adds r6, r7, #0 + adds r6, #0x38 + ldrb r2, [r6] + bl SetTile + movs r1, #0x2e + ldrsh r0, [r7, r1] + ldrh r1, [r4, #6] + subs r0, r0, r1 + asrs r0, r0, #4 + ands r0, r5 + movs r2, #0x32 + ldrsh r1, [r7, r2] + ldrh r2, [r4, #8] + adds r2, #0x10 + subs r1, r1, r2 + asrs r1, r1, #4 + ands r1, r5 + lsls r1, r1, #6 + orrs r0, r1 + ldrb r1, [r6] + bl sub_0807BA8C + b _0808D642 + .align 2, 0 +_0808D598: .4byte gPlayerEntity +_0808D59C: .4byte gPlayerState +_0808D5A0: .4byte 0x00004017 +_0808D5A4: .4byte 0x00004023 +_0808D5A8: .4byte gRoomControls +_0808D5AC: + adds r0, r7, #0 + bl GetTileTypeByEntity + ldr r3, _0808D614 @ =0x00004017 + mov r8, r3 + cmp r0, r8 + beq _0808D642 + movs r5, #0x2e + ldrsh r1, [r7, r5] + ldr r5, _0808D618 @ =gRoomControls + ldrh r0, [r5, #6] + subs r1, r1, r0 + asrs r1, r1, #4 + movs r6, #0x3f + ands r1, r6 + movs r2, #0x32 + ldrsh r0, [r7, r2] + ldrh r2, [r5, #8] + subs r0, r0, r2 + asrs r0, r0, #4 + ands r0, r6 + lsls r0, r0, #6 + orrs r1, r0 + adds r4, r7, #0 + adds r4, #0x38 + ldrb r2, [r4] + mov r0, r8 + bl SetTile + ldrb r0, [r7, #0xa] + cmp r0, #0 + bne _0808D61C + movs r3, #0x2e + ldrsh r1, [r7, r3] + ldrh r0, [r5, #6] + subs r1, r1, r0 + asrs r1, r1, #4 + ands r1, r6 + movs r2, #0x32 + ldrsh r0, [r7, r2] + ldrh r2, [r5, #8] + adds r2, #0x10 + subs r0, r0, r2 + asrs r0, r0, #4 + ands r0, r6 + lsls r0, r0, #6 + orrs r1, r0 + ldrb r2, [r4] + mov r0, r8 + bl SetTile + b _0808D642 + .align 2, 0 +_0808D614: .4byte 0x00004017 +_0808D618: .4byte gRoomControls +_0808D61C: + ldr r0, _0808D648 @ =0x00004014 + movs r3, #0x2e + ldrsh r1, [r7, r3] + ldrh r2, [r5, #6] + subs r1, r1, r2 + asrs r1, r1, #4 + ands r1, r6 + movs r3, #0x32 + ldrsh r2, [r7, r3] + ldrh r3, [r5, #8] + adds r3, #0x10 + subs r2, r2, r3 + asrs r2, r2, #4 + ands r2, r6 + lsls r2, r2, #6 + orrs r1, r2 + ldrb r2, [r4] + bl SetTile +_0808D642: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_0808D648: .4byte 0x00004014 + + .else push {r4, r5, r6, r7, lr} mov r7, r8 diff --git a/asm/manager37.s b/asm/manager37.s index 43657704..35b69824 100644 --- a/asm/manager37.s +++ b/asm/manager37.s @@ -35,10 +35,65 @@ _0805DE64: .4byte gUnk_08108DC4 thumb_func_start sub_0805DE68 sub_0805DE68: @ 0x0805DE68 .ifdef JP - .incbin "baserom_jp.gba", 0x05dcbc, 0x3c @TODO disassemble + push {r4, lr} + adds r4, r0, #0 + movs r0, #0x7b + bl CheckLocalFlag + cmp r0, #0 + bne _0805DCCE + bl DeleteThisEntity +_0805DCCE: + movs r1, #0 + movs r0, #1 + strb r0, [r4, #0xc] + ldr r2, _0805DCF4 @ =0x030010A0 + adds r0, r2, #0 + adds r0, #0x38 + strb r1, [r0] + adds r1, r2, #0 + adds r1, #0x39 + movs r0, #0xf + strb r0, [r1] + adds r0, r2, #0 + adds r0, #0x3a + movs r1, #0x20 + strb r1, [r0] + adds r0, #1 + strb r1, [r0] + pop {r4, pc} + .align 2, 0 +_0805DCF4: .4byte gScreenTransition .else .ifdef EU - .incbin "baserom_eu.gba", 0x05D904, 0x3c @TODO same as JP + push {r4, lr} + adds r4, r0, #0 + movs r0, #0x7b + bl CheckLocalFlag + cmp r0, #0 + bne _0805D916 + bl DeleteThisEntity +_0805D916: + movs r1, #0 + movs r0, #1 + strb r0, [r4, #0xc] + ldr r2, _0805D93C @ =gScreenTransition + adds r0, r2, #0 + adds r0, #0x38 + strb r1, [r0] + adds r1, r2, #0 + adds r1, #0x39 + movs r0, #0xf + strb r0, [r1] + adds r0, r2, #0 + adds r0, #0x3a + movs r1, #0x20 + strb r1, [r0] + adds r0, #1 + strb r1, [r0] + pop {r4, pc} + .align 2, 0 +_0805D93C: .4byte gScreenTransition + .else push {r4, lr} adds r4, r0, #0 diff --git a/asm/managerF.s b/asm/managerF.s index 73263595..e8a21841 100644 --- a/asm/managerF.s +++ b/asm/managerF.s @@ -805,10 +805,9 @@ _080594D2: _080594D4: .4byte gUnk_08108380 _080594D8: .4byte gPlayerEntity -@TODO move down once EU pointers are fixed +.ifndef EU thumb_func_start sub_080594DC sub_080594DC: @ 0x080594DC -.ifndef EU push {r4, lr} adds r4, r0, #0 ldrb r0, [r4, #0xc] diff --git a/asm/non_matching/eu/HandlePlayerLife.inc b/asm/non_matching/eu/HandlePlayerLife.inc new file mode 100644 index 00000000..96134c53 --- /dev/null +++ b/asm/non_matching/eu/HandlePlayerLife.inc @@ -0,0 +1,251 @@ +.syntax unified + push {r4, r5, lr} + adds r5, r0, #0 + ldr r0, _080170E4 @ =gUnk_0200AF00 + adds r2, r0, #0 + adds r2, #0x2f + movs r1, #0 + strb r1, [r2] + subs r2, #2 + strb r1, [r2] + adds r0, #0x2e + strb r1, [r0] + ldr r2, _080170E8 @ =gPlayerEntity + adds r0, r2, #0 + adds r0, #0x41 + ldrb r1, [r0] + movs r0, #0x80 + ands r0, r1 + cmp r0, #0 + beq _08017072 + adds r0, r2, #0 + adds r0, #0x3d + ldrb r0, [r0] + lsls r0, r0, #0x18 + asrs r0, r0, #0x18 + cmp r0, #0 + ble _08017072 + movs r0, #0x86 + bl SoundReq +_08017072: + ldr r4, _080170EC @ =gPlayerState + ldr r0, [r4, #0x30] + ldr r1, _080170F0 @ =0xFDFFFDFF + ands r0, r1 + str r0, [r4, #0x30] + movs r1, #0x80 + lsls r1, r1, #3 + ands r0, r1 + cmp r0, #0 + beq _0801708A + bl ResetPlayer +_0801708A: + ldr r0, [r4, #0x30] + movs r1, #0x80 + lsls r1, r1, #0xf + ands r0, r1 + cmp r0, #0 + beq _080170A4 + adds r0, r4, #0 + adds r0, #0xa0 + ldrb r0, [r0] + cmp r0, #0 + bne _080170A4 + bl sub_0807A108 +_080170A4: + bl sub_08079B24 + cmp r0, #0 + bne _080170B2 + adds r0, r5, #0 + bl sub_08079708 +_080170B2: + ldr r0, _080170F4 @ =gUnk_03003DF0 + movs r4, #0 + strb r4, [r0] + ldr r2, _080170EC @ =gPlayerState + adds r1, r2, #0 + adds r1, #0x27 + ldrb r0, [r1] + cmp r0, #0 + beq _080170C8 + subs r0, #1 + strb r0, [r1] +_080170C8: + adds r1, r2, #0 + adds r1, #0xa8 + ldrb r0, [r1] + adds r3, r2, #0 + adds r3, #0xa9 + strb r0, [r3] + strb r4, [r1] + subs r1, #0x1e + ldrb r0, [r1] + cmp r0, #0 + beq _080170F8 + subs r0, #1 + strb r0, [r1] + b _08017222 + .align 2, 0 +_080170E4: .4byte gUnk_0200AF00 +_080170E8: .4byte gPlayerEntity +_080170EC: .4byte gPlayerState +_080170F0: .4byte 0xFDFFFDFF +_080170F4: .4byte gUnk_03003DF0 +_080170F8: + adds r0, r2, #0 + adds r0, #0x8b + ldrb r0, [r0] + cmp r0, #0 + beq _08017104 + b _08017222 +_08017104: + ldr r0, _08017160 @ =gTextBox + ldrb r1, [r0] + movs r0, #0x7f + ands r0, r1 + cmp r0, #0 + beq _08017112 + b _08017222 +_08017112: + ldr r0, _08017164 @ =gUnk_0200AF00 + ldrb r0, [r0, #1] + cmp r0, #0 + bne _0801714E + ldr r0, _08017168 @ =gScreenTransition + ldr r0, [r0] + movs r1, #0x5a + bl __modsi3 + cmp r0, #0 + bne _0801714E + ldr r2, _0801716C @ =gSave + adds r0, r2, #0 + adds r0, #0xab + ldrb r0, [r0] + lsrs r1, r0, #2 + cmp r1, #0x18 + bls _08017138 + movs r1, #0x18 +_08017138: + cmp r1, #7 + bhi _0801713E + movs r1, #8 +_0801713E: + adds r0, r2, #0 + adds r0, #0xaa + ldrb r0, [r0] + cmp r0, r1 + bhi _0801714E + ldr r0, _08017170 @ =0x0000011F + bl EnqueueSFX +_0801714E: + ldr r0, _0801716C @ =gSave + adds r2, r0, #0 + adds r2, #0xb2 + ldrb r1, [r2] + cmp r1, #0 + bne _08017174 + adds r0, #0xc4 + strh r1, [r0] + b _08017192 + .align 2, 0 +_08017160: .4byte gTextBox +_08017164: .4byte gUnk_0200AF00 +_08017168: .4byte gScreenTransition +_0801716C: .4byte gSave +_08017170: .4byte 0x0000011F +_08017174: + adds r1, r0, #0 + adds r1, #0xc4 + ldrh r0, [r1] + cmp r0, #0 + beq _08017188 + subs r0, #1 + strh r0, [r1] + lsls r0, r0, #0x10 + cmp r0, #0 + bne _08017192 +_08017188: + movs r0, #0 + strb r0, [r2] + ldr r0, _080171A4 @ =0x000001B3 + bl SoundReq +_08017192: + ldr r0, _080171A8 @ =gSave + adds r3, r0, #0 + adds r3, #0xb3 + ldrb r1, [r3] + cmp r1, #0 + bne _080171AC + adds r0, #0xc6 + strh r1, [r0] + b _080171DC + .align 2, 0 +_080171A4: .4byte 0x000001B3 +_080171A8: .4byte gSave +_080171AC: + adds r2, r0, #0 + adds r2, #0xc6 + ldrh r0, [r2] + cmp r0, #0 + beq _080171C0 + subs r1, r0, #1 + strh r1, [r2] + lsls r0, r1, #0x10 + cmp r0, #0 + bne _080171CE +_080171C0: + movs r0, #0 + strb r0, [r3] + movs r0, #0xa0 + lsls r0, r0, #1 + bl SoundReq + b _080171DC +_080171CE: + movs r0, #0xf + ands r1, r0 + cmp r1, #0 + bne _080171DC + adds r0, r5, #0 + bl CreateSparkle +_080171DC: + ldr r0, _080171F0 @ =gSave + adds r3, r0, #0 + adds r3, #0xba + ldrb r1, [r3] + cmp r1, #0 + bne _080171F4 + adds r0, #0xc8 + strh r1, [r0] + b _08017222 + .align 2, 0 +_080171F0: .4byte gSave +_080171F4: + adds r2, r0, #0 + adds r2, #0xc8 + ldrh r0, [r2] + cmp r0, #0 + beq _08017208 + subs r1, r0, #1 + strh r1, [r2] + lsls r0, r1, #0x10 + cmp r0, #0 + bne _0801720E +_08017208: + movs r0, #0 + strb r0, [r3] + b _08017222 +_0801720E: + movs r0, #0x3f + ands r1, r0 + cmp r1, #0 + bne _08017222 + ldrb r1, [r3] + adds r1, #0x55 + adds r0, r5, #0 + movs r2, #0 + bl CreateFx +_08017222: + pop {r4, r5} + pop {r0} + bx r0 +.syntax divided diff --git a/asm/non_matching/eu/Manager7_Main.inc b/asm/non_matching/eu/Manager7_Main.inc new file mode 100644 index 00000000..83617e4d --- /dev/null +++ b/asm/non_matching/eu/Manager7_Main.inc @@ -0,0 +1,95 @@ +.syntax unified + push {r4, r5, r6, lr} + adds r4, r0, #0 + ldrb r0, [r4, #0xc] + cmp r0, #0 + bne _080578C4 + movs r0, #1 + strb r0, [r4, #0xc] + movs r0, #8 + strb r0, [r4, #0xe] + adds r1, r4, #0 + adds r1, #0x20 + movs r0, #0xff + strb r0, [r1] + ldr r1, _0805791C @ =sub_080582F8 + adds r0, r4, #0 + movs r2, #0 + bl sub_08052D74 +_080578C4: + ldr r0, _08057920 @ =gRoomControls + ldrh r5, [r0] + cmp r5, #0 + bne _08057960 + adds r0, r4, #0 + bl sub_08057E40 + cmp r0, #0 + beq _080578E8 + ldr r0, _08057924 @ =gRoomVars + ldrb r6, [r0, #0x10] + adds r1, r4, #0 + adds r1, #0x20 + ldrb r0, [r1] + cmp r0, r6 + beq _080578E8 + strb r6, [r1] + strb r5, [r4, #0xe] +_080578E8: + lsls r1, r6, #6 + ldr r0, _08057928 @ =gUnk_081080A4 + adds r2, r1, r0 + ldrb r1, [r4, #0xe] + cmp r1, #0 + bne _08057938 + ldr r1, _0805792C @ =gUnk_02034490 + movs r0, #1 + strb r0, [r1] + ldr r0, [r2] + ldr r1, _08057930 @ =gGlobalGfxAndPalettes + adds r0, r0, r1 + ldr r1, [r2, #4] + movs r2, #0x80 + lsls r2, r2, #5 + bl LoadResourceAsync + ldr r0, _08057934 @ =gUnk_081081E4 + adds r0, r6, r0 + ldrb r0, [r0] + bl LoadPaletteGroup + ldrb r0, [r4, #0xe] + adds r0, #1 + strb r0, [r4, #0xe] + b _08057960 + .align 2, 0 +_0805791C: .4byte sub_08057E30 +_08057920: .4byte gRoomControls +_08057924: .4byte gRoomVars +_08057928: .4byte gUnk_081080A4 +_0805792C: .4byte gUnk_02034490 +_08057930: .4byte gGlobalGfxAndPalettes +_08057934: .4byte gUnk_081081E4 +_08057938: + cmp r1, #0 + blt _08057960 + cmp r1, #7 + bgt _08057960 + lsls r1, r1, #3 + adds r1, r1, r2 + ldr r0, [r1] + ldr r2, _08057964 @ =gGlobalGfxAndPalettes + adds r0, r0, r2 + ldr r1, [r1, #4] + movs r2, #0x80 + lsls r2, r2, #5 + bl LoadResourceAsync + ldrb r0, [r4, #0xe] + adds r0, #1 + movs r1, #0 + strb r0, [r4, #0xe] + ldr r0, _08057968 @ =gUnk_02034490 + strb r1, [r0] +_08057960: + pop {r4, r5, r6, pc} + .align 2, 0 +_08057964: .4byte gGlobalGfxAndPalettes +_08057968: .4byte gUnk_02034490 +.syntax divided diff --git a/asm/non_matching/eu/TextBoxHandlerQuestion.inc b/asm/non_matching/eu/TextBoxHandlerQuestion.inc new file mode 100644 index 00000000..86aee30b --- /dev/null +++ b/asm/non_matching/eu/TextBoxHandlerQuestion.inc @@ -0,0 +1,153 @@ +.syntax unified + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, sb + mov r5, r8 + push {r5, r6, r7} + adds r6, r0, #0 + ldr r0, _08056570 @ =gUnk_02024030 + movs r7, #3 + ldrsb r7, [r0, r7] + ldr r0, _08056574 @ =gInput + ldrh r0, [r0, #2] + cmp r0, #8 + beq _08056582 + cmp r0, #8 + bgt _08056578 + cmp r0, #1 + beq _08056582 + b _080565EA + .align 2, 0 +_08056570: .4byte gUnk_02024030 +_08056574: .4byte gInput +_08056578: + cmp r0, #0x10 + beq _080565E8 + cmp r0, #0x20 + beq _080565E4 + b _080565EA +_08056582: + ldr r0, _08056598EU @ =gUnk_02024030 + lsls r1, r7, #1 + adds r0, #0x10 + adds r1, r1, r0 + ldrh r1, [r1] + cmp r1, #0 + bne _080565A0EU + ldr r1, _0805659CEU @ =gUnk_08107C14 + adds r0, r6, #0 + adds r0, #0x20 + b _080565B0EU + .align 2, 0 +_08056598EU: .4byte gUnk_02024030 +_0805659CEU: .4byte gUnk_08107C14 +_080565A0EU: + strh r1, [r6, #8] + adds r4, r6, #0 + adds r4, #0x20 + adds r0, r4, #0 + bl sub_0805EEB4 + ldr r1, _080565D8 @ =gUnk_08107C0F + adds r0, r4, #0 +_080565B0EU: + bl sub_0805EF40 + ldr r2, _080565DC @ =gUnk_02000040 + ldr r0, _080565E0 @ =gUnk_02024030 + ldrb r1, [r0, #3] + strb r1, [r2, #1] + movs r1, #3 + strb r1, [r2] + movs r1, #0x18 + bl MemClear + movs r0, #0x6a + bl SoundReq + adds r1, r6, #0 + adds r1, #0x89 + movs r0, #1 + strb r0, [r1] + b _080565EA + .align 2, 0 +_080565D8: .4byte gUnk_08107C0F +_080565DC: .4byte gUnk_02000040 +_080565E0: .4byte gUnk_02024030 +_080565E4: + subs r7, #1 + b _080565EA +_080565E8: + adds r7, #1 +_080565EA: + ldr r4, _0805660C @ =gUnk_02024030 + movs r1, #2 + ldrsb r1, [r4, r1] + adds r0, r7, r1 + bl __modsi3 + adds r7, r0, #0 + movs r5, #3 + ldrsb r5, [r4, r5] + cmp r7, r5 + beq _08056610 + strb r7, [r4, #3] + movs r0, #0x69 + bl SoundReq + movs r1, #1 + b _08056612 + .align 2, 0 +_0805660C: .4byte gUnk_02024030 +_08056610: + movs r1, #0 +_08056612: + ldr r2, _08056674 @ =gUnk_02000040 + ldrb r0, [r2] + cmp r0, #1 + bne _08056624 + ldr r1, _08056678 @ =gUnk_02024030 + movs r0, #2 + strb r0, [r2] + strb r0, [r1] + movs r1, #1 +_08056624: + cmp r1, #0 + beq _0805666A + ldr r0, _0805667C @ =gCurrentTextBox + mov sl, r0 + movs r1, #0x56 + add r1, sl + mov sb, r1 + ldrh r0, [r1] + mov r8, r0 + ldr r4, _08056678 @ =gUnk_02024030 + lsls r0, r5, #1 + adds r4, #8 + adds r0, r0, r4 + ldrh r0, [r0] + strh r0, [r1] + adds r6, #0x50 + movs r0, #0 + adds r1, r6, #0 + bl sub_0805F8E4 + lsls r0, r7, #1 + adds r0, r0, r4 + ldrh r0, [r0] + mov r1, sb + strh r0, [r1] + movs r0, #1 + adds r1, r6, #0 + bl sub_0805F8E4 + mov r1, r8 + mov r0, sb + strh r1, [r0] + movs r0, #1 + ldr r1, _08056680 @ =0x0202281D + strb r0, [r1] +_0805666A: + pop {r3, r4, r5} + mov r8, r3 + mov sb, r4 + mov sl, r5 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_08056674: .4byte gUnk_02000040 +_08056678: .4byte gUnk_02024030 +_0805667C: .4byte gCurrentTextBox +_08056680: .4byte 0x0202281D +.syntax divided diff --git a/asm/non_matching/eu/sub_0801F428.inc b/asm/non_matching/eu/sub_0801F428.inc new file mode 100644 index 00000000..6c876322 --- /dev/null +++ b/asm/non_matching/eu/sub_0801F428.inc @@ -0,0 +1,47 @@ +.syntax unified + push {r4, r5, lr} + adds r5, r0, #0 + bl sub_0804A720 + movs r4, #0 + movs r0, #1 + strb r0, [r5, #0xc] + bl Random + strb r0, [r5, #0xe] + adds r0, r5, #0 + adds r0, #0x45 + ldrb r1, [r0] + adds r0, #0x3b + strb r1, [r0] + adds r0, #2 + strb r4, [r0] + ldrb r0, [r5, #0xb] + cmp r0, #0 + beq _0801F484 + movs r0, #3 + strb r0, [r5, #0xc] + movs r0, #0x1e + strb r0, [r5, #0xf] + adds r0, r5, #0 + movs r1, #1 + bl sub_08049F84 + strb r0, [r5, #0x15] + ldrb r0, [r5, #0x10] + movs r1, #0x80 + orrs r0, r1 + strb r0, [r5, #0x10] + adds r2, r5, #0 + adds r2, #0x29 + ldrb r1, [r2] + movs r0, #0x39 + rsbs r0, r0, #0 + ands r0, r1 + movs r1, #0x18 + orrs r0, r1 + strb r0, [r2] + adds r0, r5, #0 + movs r1, #2 + bl InitializeAnimation +_0801F484: + pop {r4, r5, pc} + .align 2, 0 +.syntax divided diff --git a/asm/non_matching/eu/sub_0802AAC0.inc b/asm/non_matching/eu/sub_0802AAC0.inc new file mode 100644 index 00000000..9004a523 --- /dev/null +++ b/asm/non_matching/eu/sub_0802AAC0.inc @@ -0,0 +1,101 @@ +.syntax unified + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + adds r4, r0, #0 + bl sub_0802AC40 + ldrb r0, [r4, #0xf] + subs r0, #1 + strb r0, [r4, #0xf] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _0802AAB4 + adds r0, r4, #0 + movs r1, #4 + bl sub_0802AD1C +_0802AAB4: + adds r6, r4, #0 + adds r6, #0x81 + ldrb r0, [r6] + cmp r0, #0 + beq _0802AB38 + ldr r5, [r4, #0x54] + cmp r5, #0 + bne _0802AAC8 + strb r5, [r6] + b _0802AB56 +_0802AAC8: + ldr r0, [r5, #4] + cmp r0, #0 + bne _0802AAD4 + strb r0, [r6] + str r0, [r4, #0x54] + b _0802AB56 +_0802AAD4: + ldrb r0, [r5, #0xe] + mov r8, r0 + cmp r0, #0 + bne _0802AB56 + movs r1, #0x2e + ldrsh r0, [r4, r1] + ldr r2, _0802AB24 @ =gRoomControls + ldrh r1, [r2, #6] + subs r0, r0, r1 + asrs r0, r0, #4 + movs r3, #0x3f + ands r0, r3 + movs r7, #0x32 + ldrsh r1, [r4, r7] + ldrh r2, [r2, #8] + subs r1, r1, r2 + asrs r1, r1, #4 + ands r1, r3 + lsls r1, r1, #6 + orrs r0, r1 + movs r1, #1 + bl sub_080002E0 + cmp r0, #0 + bne _0802AB2C + ldr r1, _0802AB28 @ =gPlayerEntity + adds r0, r4, #0 + movs r2, #0x10 + movs r3, #0x10 + bl sub_080041A0 + cmp r0, #0 + beq _0802AB56 + ldrb r0, [r5, #0xf] + cmp r0, #0x50 + bhi _0802AB56 + mov r0, r8 + strb r0, [r6] + b _0802AB56 + .align 2, 0 +_0802AB24: .4byte gRoomControls +_0802AB28: .4byte gPlayerEntity +_0802AB2C: + ldrb r0, [r5, #0xf] + cmp r0, #0x13 + bhi _0802AB56 + mov r1, r8 + strb r1, [r6] + b _0802AB56 +_0802AB38: + movs r1, #4 + strb r1, [r4, #0xc] + movs r0, #0xc0 + strb r0, [r4, #0xe] + strb r1, [r4, #0xf] + adds r2, r4, #0 + adds r2, #0x80 + ldrb r0, [r2] + movs r1, #1 + eors r0, r1 + strb r0, [r2] + adds r0, r4, #0 + movs r1, #0 + bl InitializeAnimation +_0802AB56: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} +.syntax divided diff --git a/asm/non_matching/eu/sub_0802AB40.inc b/asm/non_matching/eu/sub_0802AB40.inc new file mode 100644 index 00000000..8e4b9440 --- /dev/null +++ b/asm/non_matching/eu/sub_0802AB40.inc @@ -0,0 +1,50 @@ +.syntax unified + push {r4, lr} + adds r4, r0, #0 + bl sub_0802AC40 + ldrb r0, [r4, #0xe] + subs r0, #1 + strb r0, [r4, #0xe] + movs r2, #0xff + lsls r0, r0, #0x18 + lsrs r1, r0, #0x18 + cmp r1, #0 + bne _0802ABA6 + adds r0, r4, #0 + adds r0, #0x7a + ldrb r0, [r0] + cmp r0, #4 + bhi _0802AB90 + movs r0, #5 + strb r0, [r4, #0xc] + strh r1, [r4, #0x24] + ldrb r1, [r4, #0xa] + adds r1, #1 + adds r0, r4, #0 + bl InitializeAnimation + b _0802ABBA +_0802AB90: + movs r0, #0xc0 + strb r0, [r4, #0xe] + movs r0, #4 + strb r0, [r4, #0xf] + adds r2, r4, #0 + adds r2, #0x80 + ldrb r0, [r2] + movs r1, #1 + eors r0, r1 + strb r0, [r2] + b _0802ABBA +_0802ABA6: + ldrb r0, [r4, #0xf] + subs r0, #1 + strb r0, [r4, #0xf] + ands r0, r2 + cmp r0, #0 + bne _0802ABBA + adds r0, r4, #0 + movs r1, #4 + bl sub_0802ACDC +_0802ABBA: + pop {r4, pc} +.syntax divided diff --git a/asm/non_matching/eu/sub_0802AC40.inc b/asm/non_matching/eu/sub_0802AC40.inc new file mode 100644 index 00000000..80e3632d --- /dev/null +++ b/asm/non_matching/eu/sub_0802AC40.inc @@ -0,0 +1,43 @@ +.syntax unified + push {r4, r5, lr} + adds r4, r0, #0 + bl GetNextFrame + adds r0, r4, #0 + bl sub_0806F69C + adds r5, r4, #0 + adds r5, #0x7a + ldrb r0, [r5] + cmp r0, #0 + beq _0802AC26 + adds r0, r4, #0 + bl sub_0802B234 + cmp r0, #0 + bne _0802AC44 + strb r0, [r5] + adds r2, r4, #0 + adds r2, #0x29 + ldrb r1, [r2] + movs r0, #0x39 + rsbs r0, r0, #0 + ands r0, r1 + b _0802AC42 +_0802AC26: + adds r0, r4, #0 + bl sub_0802B234 + cmp r0, #0 + beq _0802AC44 + movs r0, #1 + strb r0, [r5] + adds r2, r4, #0 + adds r2, #0x29 + ldrb r1, [r2] + subs r0, #0x3a + ands r0, r1 + movs r1, #0x18 + orrs r0, r1 +_0802AC42: + strb r0, [r2] +_0802AC44: + pop {r4, r5, pc} + .align 2, 0 +.syntax divided diff --git a/asm/non_matching/eu/sub_0802ADDC.inc b/asm/non_matching/eu/sub_0802ADDC.inc new file mode 100644 index 00000000..115c4495 --- /dev/null +++ b/asm/non_matching/eu/sub_0802ADDC.inc @@ -0,0 +1,38 @@ +.syntax unified + push {r4, r5, lr} + adds r5, r0, #0 + ldrb r1, [r5, #0xa] + adds r1, #2 + movs r0, #0x1b + bl CreateEnemy + adds r4, r0, #0 + cmp r4, #0 + beq _0802AD92 + adds r0, r5, #0 + bl sub_0802B234 + rsbs r1, r0, #0 + orrs r1, r0 + lsrs r1, r1, #0x1f + strb r1, [r4, #0xb] + str r5, [r4, #0x50] + str r4, [r5, #0x54] + adds r0, r5, #0 + adds r1, r4, #0 + bl CopyPosition + ldrh r0, [r4, #0x36] + adds r0, #8 + strh r0, [r4, #0x36] + adds r1, r5, #0 + adds r1, #0x81 + movs r0, #1 + strb r0, [r1] + ldrb r0, [r5, #0xa] + cmp r0, #0 + bne _0802AD92 + subs r1, #7 + ldrb r0, [r1] + adds r0, #1 + strb r0, [r1] +_0802AD92: + pop {r4, r5, pc} +.syntax divided diff --git a/asm/non_matching/eu/sub_0802AE68.inc b/asm/non_matching/eu/sub_0802AE68.inc new file mode 100644 index 00000000..76996976 --- /dev/null +++ b/asm/non_matching/eu/sub_0802AE68.inc @@ -0,0 +1,78 @@ +.syntax unified + push {r4, lr} + adds r4, r0, #0 + ldr r2, [r4, #0x50] + cmp r2, #0 + bne _0802ADFA + movs r0, #3 + strb r0, [r4, #0xc] + ldrb r1, [r4, #0x18] + subs r0, #7 + ands r0, r1 + movs r1, #1 + orrs r0, r1 + strb r0, [r4, #0x18] + adds r1, r4, #0 + adds r1, #0x80 + movs r0, #1 + strb r0, [r1] +_0802ADFA: + adds r0, r2, #0 + adds r0, #0x81 + ldrb r0, [r0] + cmp r0, #0 + beq _0802AE1E + adds r0, r2, #0 + adds r1, r4, #0 + bl CopyPosition + ldrh r0, [r4, #0x36] + adds r0, #8 + strh r0, [r4, #0x36] + ldrb r1, [r4, #0x18] + movs r0, #4 + rsbs r0, r0, #0 + ands r0, r1 + strb r0, [r4, #0x18] + b _0802AE68 +_0802AE1E: + movs r0, #3 + strb r0, [r4, #0xc] + adds r1, r4, #0 + adds r1, #0x80 + movs r2, #1 + movs r0, #1 + strb r0, [r1] + ldrb r1, [r4, #0x18] + subs r0, #5 + ands r0, r1 + orrs r0, r2 + strb r0, [r4, #0x18] + adds r0, r4, #0 + bl sub_0802B234 + cmp r0, #0 + beq _0802AE54 + adds r2, r4, #0 + adds r2, #0x29 + ldrb r0, [r2] + movs r1, #0x39 + rsbs r1, r1, #0 + ands r1, r0 + movs r0, #0x18 + orrs r1, r0 + strb r1, [r2] + b _0802AE62 +_0802AE54: + adds r2, r4, #0 + adds r2, #0x29 + ldrb r1, [r2] + movs r0, #0x39 + rsbs r0, r0, #0 + ands r0, r1 + strb r0, [r2] +_0802AE62: + adds r0, r4, #0 + bl GetNextFrame +_0802AE68: + pop {r4, pc} + .align 2, 0 +.syntax divided diff --git a/asm/non_matching/eu/sub_0802B1BC.inc b/asm/non_matching/eu/sub_0802B1BC.inc new file mode 100644 index 00000000..5e2f6265 --- /dev/null +++ b/asm/non_matching/eu/sub_0802B1BC.inc @@ -0,0 +1,71 @@ +.syntax unified + push {r4, lr} + adds r4, r0, #0 + ldrb r0, [r4, #0xe] + cmp r0, #0 + beq _0802B17A + subs r0, #1 + strb r0, [r4, #0xe] +_0802B17A: + ldr r2, [r4, #0x50] + cmp r2, #0 + bne _0802B190 + movs r0, #2 + strb r0, [r4, #0xc] + ldrb r1, [r4, #0x18] + subs r0, #6 + ands r0, r1 + movs r1, #1 + orrs r0, r1 + strb r0, [r4, #0x18] +_0802B190: + adds r0, r2, #0 + adds r0, #0x81 + ldrb r0, [r0] + cmp r0, #0 + beq _0802B1AA + adds r0, r2, #0 + adds r1, r4, #0 + bl CopyPosition + ldrh r0, [r4, #0x36] + adds r0, #8 + strh r0, [r4, #0x36] + b _0802B1EC +_0802B1AA: + movs r0, #2 + strb r0, [r4, #0xc] + ldrb r1, [r4, #0x18] + subs r0, #6 + ands r0, r1 + movs r1, #1 + orrs r0, r1 + strb r0, [r4, #0x18] + adds r0, r4, #0 + bl sub_0802B234 + cmp r0, #0 + beq _0802B1D8 + adds r2, r4, #0 + adds r2, #0x29 + ldrb r0, [r2] + movs r1, #0x39 + rsbs r1, r1, #0 + ands r1, r0 + movs r0, #0x18 + orrs r1, r0 + strb r1, [r2] + b _0802B1E6 +_0802B1D8: + adds r2, r4, #0 + adds r2, #0x29 + ldrb r1, [r2] + movs r0, #0x39 + rsbs r0, r0, #0 + ands r0, r1 + strb r0, [r2] +_0802B1E6: + adds r0, r4, #0 + bl GetNextFrame +_0802B1EC: + pop {r4, pc} + .align 2, 0 +.syntax divided diff --git a/asm/non_matching/eu/sub_0805457C.inc b/asm/non_matching/eu/sub_0805457C.inc new file mode 100644 index 00000000..55d3bca5 --- /dev/null +++ b/asm/non_matching/eu/sub_0805457C.inc @@ -0,0 +1,207 @@ +.syntax unified + push {r4, r5, r6, r7, lr} + sub sp, #0x20 + adds r6, r0, #0 + adds r3, r1, #0 + ldr r0, _08054138 @ =gRoomVars + ldrb r0, [r0, #2] + cmp r0, #1 + bne _08054126 + b _080542CC +_08054126: + ldr r2, _0805413C @ =gUnk_08001A1C + movs r4, #0 + cmp r3, #0x18 + bhi _080541BC + lsls r0, r3, #2 + ldr r1, _08054140 @ =_08054144 + adds r0, r0, r1 + ldr r0, [r0] + mov pc, r0 + .align 2, 0 +_08054138: .4byte gRoomVars +_0805413C: .4byte gUnk_08001A1C +_08054140: .4byte _08054144 +_08054144: @ jump table + .4byte _080541BC @ case 0 + .4byte _080541A8 @ case 1 + .4byte _080541A8 @ case 2 + .4byte _080541A8 @ case 3 + .4byte _080541A8 @ case 4 + .4byte _080541A8 @ case 5 + .4byte _080541A8 @ case 6 + .4byte _080541A8 @ case 7 + .4byte _080541A8 @ case 8 + .4byte _080541A8 @ case 9 + .4byte _080541A8 @ case 10 + .4byte _080541A8 @ case 11 + .4byte _080541A8 @ case 12 + .4byte _080541BC @ case 13 + .4byte _080541BC @ case 14 + .4byte _080541BA @ case 15 + .4byte _080541B4 @ case 16 + .4byte _080541B4 @ case 17 + .4byte _080541B4 @ case 18 + .4byte _080541B4 @ case 19 + .4byte _080541B4 @ case 20 + .4byte _080541B4 @ case 21 + .4byte _080541B4 @ case 22 + .4byte _080541B4 @ case 23 + .4byte _080541B4 @ case 24 +_080541A8: + lsls r1, r3, #5 + ldr r0, _080541B0 @ =gUnk_0800137C + adds r4, r1, r0 + b _080541BC + .align 2, 0 +_080541B0: .4byte gUnk_0800137C +_080541B4: + lsls r1, r3, #5 + ldr r0, _080541D0 @ =gUnk_0800161C + adds r2, r1, r0 +_080541BA: + ldr r4, _080541D4 @ =gUnk_02034398 +_080541BC: + cmp r4, #0 + bne _080541C2 + b _080542CC +_080541C2: + ldr r0, _080541D8 @ =gSave + adds r0, #0xb3 + ldrb r1, [r0] + cmp r1, #0 + bne _080541E0 + ldr r3, _080541DC @ =gUnk_08001A1C + b _080541E6 + .align 2, 0 +_080541D0: .4byte gUnk_0800161C +_080541D4: .4byte gUnk_02034398 +_080541D8: .4byte gSave +_080541DC: .4byte gUnk_08001A1C +_080541E0: + lsls r1, r1, #5 + ldr r0, _080542BC @ =0x080014E4 + adds r3, r1, r0 +_080541E6: + mov r0, sp + adds r1, r4, #0 + bl sub_08000F14 + ldr r4, _080542C0 @ =gSave + adds r0, r4, #0 + adds r0, #0xaa + ldrb r0, [r0] + cmp r0, #8 + bhi _08054204 + mov r1, sp + mov r0, sp + ldrh r0, [r0, #8] + adds r0, #5 + strh r0, [r1, #8] +_08054204: + adds r0, r4, #0 + adds r0, #0xac + ldrb r0, [r0] + cmp r0, #0 + bne _08054218 + mov r1, sp + mov r0, sp + ldrh r0, [r0, #0xc] + adds r0, #3 + strh r0, [r1, #0xc] +_08054218: + adds r0, r4, #0 + adds r0, #0xad + ldrb r0, [r0] + cmp r0, #0 + bne _0805422C + mov r1, sp + mov r0, sp + ldrh r0, [r0, #0xe] + adds r0, #3 + strh r0, [r1, #0xe] +_0805422C: + adds r0, r4, #0 + adds r0, #0xc0 + ldrh r0, [r0] + cmp r0, #0xa + bhi _08054240 + mov r1, sp + mov r0, sp + ldrh r0, [r0, #4] + adds r0, #1 + strh r0, [r1, #4] +_08054240: + ldr r2, _080542C4 @ =gUnk_08001A1C + adds r0, r4, #0 + adds r0, #0xbb + ldrb r0, [r0] + adds r3, r2, #0 + cmp r0, #0 + beq _08054250 + adds r2, #0x20 +_08054250: + movs r1, #0x8b + lsls r1, r1, #1 + adds r0, r4, r1 + ldrb r0, [r0] + cmp r0, #0 + beq _0805425E + adds r3, #0x40 +_0805425E: + mov r0, sp + mov r1, sp + bl sub_08000F2C + adds r4, r0, #0 + bl Random + adds r2, r0, #0 + asrs r5, r2, #0x18 + movs r0, #0xf + ands r5, r0 + adds r0, r2, #0 + adds r1, r4, #0 + bl __modsi3 + adds r2, r0, #0 + movs r3, #0 + lsls r0, r5, #1 + add r0, sp + movs r4, #0 + ldrsh r1, [r0, r4] + cmp r1, r2 + bgt _080542A6 + movs r4, #0xf +_0805428E: + adds r3, #1 + adds r5, #1 + ands r5, r4 + cmp r3, #0xf + bhi _080542A6 + lsls r0, r5, #1 + add r0, sp + movs r7, #0 + ldrsh r0, [r0, r7] + adds r1, r1, r0 + cmp r1, r2 + ble _0805428E +_080542A6: + ldr r0, _080542C8 @ =gUnk_080FE1B4 + adds r0, r5, r0 + ldrb r1, [r0] + cmp r1, #0 + beq _080542CC + adds r0, r6, #0 + movs r2, #0 + bl CreateItemDrop + b _080542CE + .align 2, 0 +_080542BC: .4byte 0x080014E4 +_080542C0: .4byte gSave +_080542C4: .4byte gUnk_08001A1C +_080542C8: .4byte gUnk_080FE1B4 +_080542CC: + movs r0, #0 +_080542CE: + add sp, #0x20 + pop {r4, r5, r6, r7, pc} + .align 2, 0 + +.syntax divided diff --git a/asm/non_matching/eu/sub_08057A18.inc b/asm/non_matching/eu/sub_08057A18.inc new file mode 100644 index 00000000..3ea092df --- /dev/null +++ b/asm/non_matching/eu/sub_08057A18.inc @@ -0,0 +1,56 @@ +.syntax unified + push {r4, r5, r6, lr} + mov r6, r8 + push {r6} + mov r8, r0 + adds r4, r1, #0 + bl sub_0805E5A8 + ldr r5, _080575E8 @ =gUnk_03004030 + ldrb r0, [r5, #9] + strb r0, [r5, #0xa] + ldr r3, _080575EC @ =gRoomControls + ldrb r0, [r3, #4] + strb r0, [r5, #9] + ldr r1, _080575F0 @ =gScreenTransition + ldrb r0, [r4, #4] + strb r0, [r1, #0xc] + ldrb r0, [r4, #5] + strb r0, [r1, #0xd] + ldrb r0, [r4, #4] + strb r0, [r3, #4] + ldrb r0, [r4, #5] + strb r0, [r3, #5] + str r4, [r5] + ldr r6, _080575F4 @ =gPlayerEntity + ldrh r1, [r6, #0x2e] + ldrh r0, [r3, #6] + subs r1, r1, r0 + ldrh r2, [r4] + movs r0, #0x3f + ands r0, r2 + lsls r0, r0, #4 + subs r1, r1, r0 + strh r1, [r5, #4] + ldrh r1, [r6, #0x32] + ldrh r0, [r3, #8] + subs r1, r1, r0 + ldrh r2, [r4] + movs r0, #0xfc + lsls r0, r0, #4 + ands r0, r2 + lsrs r0, r0, #2 + subs r1, r1, r0 + strh r1, [r5, #6] + ldrb r0, [r4, #3] + bl sub_08080930 + mov r0, r8 + bl DeleteManager + pop {r3} + mov r8, r3 + pop {r4, r5, r6, pc} + .align 2, 0 +_080575E8: .4byte gUnk_03004030 +_080575EC: .4byte gRoomControls +_080575F0: .4byte gScreenTransition +_080575F4: .4byte gPlayerEntity +.syntax divided diff --git a/asm/non_matching/eu/sub_08057E7C.inc b/asm/non_matching/eu/sub_08057E7C.inc new file mode 100644 index 00000000..34c9421b --- /dev/null +++ b/asm/non_matching/eu/sub_08057E7C.inc @@ -0,0 +1,37 @@ +.syntax unified + push {r4, r5, r6, lr} + adds r4, r0, #0 + ldr r0, _080579F0 @ =gUnk_081081E4 + adds r0, r4, r0 + ldrb r0, [r0] + bl LoadPaletteGroup + lsls r1, r4, #6 + ldr r0, _080579F4 @ =gUnk_081080A4 + adds r1, r1, r0 + movs r3, #0 + ldr r2, _080579F8 @ =0x040000D4 + ldr r6, _080579FC @ =gGlobalGfxAndPalettes + ldr r5, _08057A00 @ =0x84000400 +_080579D4: + ldr r0, [r1] + adds r0, r0, r6 + str r0, [r2] + ldr r0, [r1, #4] + str r0, [r2, #4] + str r5, [r2, #8] + ldr r0, [r2, #8] + adds r3, #1 + adds r1, #8 + cmp r3, #7 + bls _080579D4 + ldr r0, _08057A04 @ =gRoomVars + strb r4, [r0, #0x10] + pop {r4, r5, r6, pc} + .align 2, 0 +_080579F0: .4byte gUnk_081081E4 +_080579F4: .4byte gUnk_081080A4 +_080579F8: .4byte 0x040000D4 +_080579FC: .4byte gGlobalGfxAndPalettes +_08057A00: .4byte 0x84000400 +_08057A04: .4byte gRoomVars +.syntax divided diff --git a/asm/non_matching/eu/sub_0806EABC.inc b/asm/non_matching/eu/sub_0806EABC.inc new file mode 100644 index 00000000..623a31db --- /dev/null +++ b/asm/non_matching/eu/sub_0806EABC.inc @@ -0,0 +1,24 @@ +.syntax unified + push {r4, lr} + adds r4, r0, #0 + bl sub_08050384 + adds r4, #0x68 + movs r1, #0 + ldrsh r0, [r4, r1] + ldr r1, _0806E520 @ =gUnk_020227E8 + ldr r2, _0806E524 @ =0x00202020 + bl sub_08057044 + ldr r0, _0806E528 @ =0x00003302 + ldr r1, _0806E52C @ =gUnk_081146B8 + bl sub_0805F46C + ldr r1, _0806E530 @ =gScreen + movs r0, #1 + strh r0, [r1, #0xe] + pop {r4, pc} + .align 2, 0 +_0806E520: .4byte gUnk_020227E8 +_0806E524: .4byte 0x00202020 +_0806E528: .4byte 0x00003302 +_0806E52C: .4byte gUnk_081146B8 +_0806E530: .4byte gScreen +.syntax divided diff --git a/asm/non_matching/eu/sub_080AA044.inc b/asm/non_matching/eu/sub_080AA044.inc new file mode 100644 index 00000000..bc193574 --- /dev/null +++ b/asm/non_matching/eu/sub_080AA044.inc @@ -0,0 +1,98 @@ +.syntax unified + push {r4, r5, lr} + adds r4, r0, #0 + ldr r5, [r4, #0x54] + cmp r5, #0 + bne _080A984A + bl DeleteThisEntity +_080A984A: + ldr r0, [r5, #4] + cmp r0, #0 + bne _080A9856 + bl DeleteThisEntity + b _080A989A +_080A9856: + ldrh r0, [r5, #0x12] + ldrb r1, [r5, #0x1e] + bl GetSpriteSubEntryOffsetDataPointer + adds r3, r0, #0 + ldrb r1, [r5, #0x14] + movs r0, #4 + ands r0, r1 + cmp r0, #0 + beq _080A9884 + movs r2, #0 + ldrsb r2, [r3, r2] + rsbs r2, r2, #0 + lsls r2, r2, #0x10 + ldrb r3, [r3, #1] + lsls r3, r3, #0x18 + asrs r3, r3, #0x18 + lsls r3, r3, #0x10 + adds r0, r5, #0 + adds r1, r4, #0 + bl PositionRelative + b _080A989A +_080A9884: + movs r2, #0 + ldrsb r2, [r3, r2] + lsls r2, r2, #0x10 + ldrb r3, [r3, #1] + lsls r3, r3, #0x18 + asrs r3, r3, #0x18 + lsls r3, r3, #0x10 + adds r0, r5, #0 + adds r1, r4, #0 + bl PositionRelative +_080A989A: + adds r0, r5, #0 + adds r0, #0x43 + ldrb r0, [r0] + cmp r0, #0 + bne _080A98F8 + ldrb r0, [r4, #0xf] + cmp r0, #0 + beq _080A98B0 + subs r0, #1 + strb r0, [r4, #0xf] + b _080A98F8 +_080A98B0: + adds r0, r4, #0 + bl UpdateAnimationSingleFrame + adds r0, r4, #0 + adds r0, #0x5a + ldrb r1, [r0] + movs r0, #0x80 + ands r0, r1 + cmp r0, #0 + beq _080A98F8 + movs r0, #4 + strb r0, [r4, #0xc] + adds r1, r4, #0 + adds r1, #0x82 + movs r0, #3 + strb r0, [r1] + movs r2, #0x40 + movs r0, #0x40 + strb r0, [r4, #0xf] + ldrb r0, [r5, #0x14] + lsls r1, r0, #2 + strb r1, [r4, #0x15] + lsls r0, r0, #0x1a + lsrs r0, r0, #0x1a + strb r0, [r4, #0x14] + ldrb r1, [r4, #0x1b] + movs r0, #0x3f + ands r0, r1 + orrs r0, r2 + strb r0, [r4, #0x1b] + ldr r0, _080A98FC @ =gUnk_080FD150 + str r0, [r4, #0x48] + adds r0, r4, #0 + movs r1, #0 + bl sub_080AA3E0 +_080A98F8: + pop {r4, r5, pc} + .align 2, 0 +_080A98FC: .4byte gUnk_080FD150 +.syntax divided diff --git a/asm/non_matching/phonograph/sub_0806E964.inc b/asm/non_matching/phonograph/sub_0806E964.inc index 63091404..6c6123f1 100644 --- a/asm/non_matching/phonograph/sub_0806E964.inc +++ b/asm/non_matching/phonograph/sub_0806E964.inc @@ -1,7 +1,154 @@ .syntax unified .ifdef EU - .incbin "baserom_eu.gba", 0x06E3DC, 0x000011C @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + mov r8, r0 + adds r2, r1, #0 + ldr r4, _0806E3F8 @ =gInput + ldrh r1, [r4, #2] + movs r0, #2 + ands r0, r1 + cmp r0, #0 + beq _0806E3FC + bl sub_08050384 + b _0806E4EA + .align 2, 0 +_0806E3F8: .4byte gInput +_0806E3FC: + ldrb r0, [r2, #0x18] + adds r1, r0, #0 + mov r6, r8 + adds r6, #0x6c + cmp r1, #0 + bne _0806E414 + adds r0, #1 + strb r0, [r2, #0x18] + strh r1, [r6] + mov r0, r8 + bl sub_0806EABC +_0806E414: + ldrh r2, [r4, #4] + movs r0, #0xc0 + ands r0, r2 + cmp r0, #0 + beq _0806E466 + mov r1, r8 + adds r1, #0x68 + movs r0, #0 + ldrsh r4, [r1, r0] + movs r0, #0x40 + ands r0, r2 + adds r7, r1, #0 + cmp r0, #0 + beq _0806E434 + adds r4, #1 + b _0806E436 +_0806E434: + subs r4, #1 +_0806E436: + cmp r4, #0 + bgt _0806E43C + movs r4, #1 +_0806E43C: + movs r5, #0x1c + movs r0, #0x55 + bl CheckGlobalFlag + cmp r0, #0 + beq _0806E44A + movs r5, #0x34 +_0806E44A: + cmp r4, r5 + ble _0806E450 + adds r4, r5, #0 +_0806E450: + strh r4, [r7] + mov r0, r8 + bl sub_0806EABC + ldrh r1, [r6] + movs r2, #0 + ldrsh r0, [r6, r2] + cmp r0, #0 + ble _0806E466 + subs r0, r1, #1 + strh r0, [r6] +_0806E466: + ldr r0, _0806E4B4 @ =gInput + ldrh r1, [r0, #2] + movs r0, #1 + ands r0, r1 + cmp r0, #0 + beq _0806E4C6 + mov r5, r8 + adds r5, #0x68 + mov r7, r8 + adds r7, #0x6a + movs r0, #0 + ldrsh r1, [r5, r0] + movs r2, #0 + ldrsh r0, [r7, r2] + cmp r1, r0 + bne _0806E48E + movs r1, #0 + ldrsh r0, [r6, r1] + cmp r0, #0 + bne _0806E4BC +_0806E48E: + ldr r4, _0806E4B8 @ =gUnk_081145E4 + movs r2, #0 + ldrsh r0, [r5, r2] + lsls r0, r0, #2 + adds r0, r0, r4 + movs r1, #0 + ldrsh r0, [r0, r1] + bl SoundReq + ldrh r0, [r5] + strh r0, [r7] + movs r2, #0 + ldrsh r0, [r5, r2] + lsls r0, r0, #2 + adds r4, #2 + adds r0, r0, r4 + ldrh r0, [r0] + strh r0, [r6] + b _0806E4C6 + .align 2, 0 +_0806E4B4: .4byte gInput +_0806E4B8: .4byte gUnk_081145E4 +_0806E4BC: + ldr r0, _0806E4F0 @ =0x80010000 + bl SoundReq + movs r0, #0 + strh r0, [r7] +_0806E4C6: + ldrh r1, [r6] + movs r2, #0 + ldrsh r0, [r6, r2] + cmp r0, #0 + ble _0806E4E4 + subs r0, r1, #1 + movs r1, #0 + strh r0, [r6] + lsls r0, r0, #0x10 + cmp r0, #0 + bgt _0806E4E4 + mov r0, r8 + adds r0, #0x6a + strh r1, [r0] + strh r1, [r6] +_0806E4E4: + ldr r1, _0806E4F4 @ =gActiveScriptInfo + movs r0, #0 + strb r0, [r1, #6] +_0806E4EA: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_0806E4F0: .4byte 0x80010000 +_0806E4F4: .4byte gActiveScriptInfo + .else push {r4, r5, r6, r7, lr} mov r7, sb diff --git a/asm/non_matching/stockwell/sub_08065370.inc b/asm/non_matching/stockwell/sub_08065370.inc index 0c4e91c1..14d83cbc 100644 --- a/asm/non_matching/stockwell/sub_08065370.inc +++ b/asm/non_matching/stockwell/sub_08065370.inc @@ -1,7 +1,184 @@ .syntax unified .ifdef EU - .incbin "baserom_eu.gba", 0x064DE8, 0x0000164 @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, sb + mov r6, r8 + push {r6, r7} + adds r4, r0, #0 + mov r8, r1 + movs r6, #1 + ldr r0, _08064E14 @ =gRoomVars + ldrb r5, [r0, #6] + movs r0, #0 + mov sb, r0 + cmp r5, #0x66 + beq _08064E8E + cmp r5, #0x66 + bhi _08064E1E + cmp r5, #0x61 + beq _08064E94 + cmp r5, #0x61 + bhi _08064E18 + cmp r5, #0xd + beq _08064E44 + b _08064EAA + .align 2, 0 +_08064E14: .4byte gRoomVars +_08064E18: + cmp r5, #0x64 + beq _08064E88 + b _08064EAA +_08064E1E: + cmp r5, #0x6c + blo _08064EAA + cmp r5, #0x6d + bls _08064E60 + cmp r5, #0x6f + bhi _08064EAA + ldr r2, _08064E3C @ =gQuiverSizes + ldr r1, _08064E40 @ =gSave + adds r0, r1, #0 + adds r0, #0xaf + ldrb r0, [r0] + adds r0, r0, r2 + adds r1, #0xad + b _08064E6E + .align 2, 0 +_08064E3C: .4byte gQuiverSizes +_08064E40: .4byte gSave +_08064E44: + movs r0, #0xd + bl GetInventoryValue + cmp r0, #0 + bne _08064E58 + movs r0, #0xe + bl GetInventoryValue + cmp r0, #0 + beq _08064EAA +_08064E58: + ldr r0, _08064E5C @ =0x00002C0B + b _08064F32 + .align 2, 0 +_08064E5C: .4byte 0x00002C0B +_08064E60: + ldr r2, _08064E7C @ =gBombBagSizes + ldr r1, _08064E80 @ =gSave + adds r0, r1, #0 + adds r0, #0xae + ldrb r0, [r0] + adds r0, r0, r2 + adds r1, #0xac +_08064E6E: + ldrb r0, [r0] + ldrb r1, [r1] + cmp r0, r1 + bhi _08064EAA + ldr r0, _08064E84 @ =0x00002C0E + b _08064F32 + .align 2, 0 +_08064E7C: .4byte gBombBagSizes +_08064E80: .4byte gSave +_08064E84: .4byte 0x00002C0E +_08064E88: + movs r1, #0x55 + mov sb, r1 + b _08064EAA +_08064E8E: + movs r0, #0x56 + mov sb, r0 + b _08064EAA +_08064E94: + ldr r0, _08064F04 @ =gSave + adds r0, #0xc2 + ldrh r1, [r0] + ldr r0, _08064F08 @ =0x000003E6 + cmp r1, r0 + bls _08064EAA + ldr r0, _08064F0C @ =0x00002C0E + adds r1, r4, #0 + bl TextboxNoOverlap + movs r6, #0 +_08064EAA: + cmp r6, #0 + beq _08064F38 + adds r0, r5, #0 + bl GetItemPrice + adds r6, r0, #0 + ldr r7, _08064F04 @ =gSave + adds r0, r7, #0 + adds r0, #0xc0 + ldrh r0, [r0] + cmp r6, r0 + bhi _08064F30 + rsbs r0, r6, #0 + bl ModRupees + ldr r4, _08064F10 @ =gRoomVars + ldrb r1, [r4, #7] + adds r0, r5, #0 + movs r2, #2 + bl sub_080A7C18 + movs r0, #0 + strb r0, [r4, #6] + strb r0, [r4, #7] + movs r0, #1 + mov r1, r8 + str r0, [r1, #0x14] + mov r0, sb + cmp r0, #0 + beq _08064EEA + bl SetLocalFlag +_08064EEA: + ldr r1, [r7, #0x5c] + movs r0, #2 + rsbs r0, r0, #0 + cmp r1, r0 + bhi _08064EF8 + adds r0, r1, #1 + str r0, [r7, #0x5c] +_08064EF8: + ldr r0, [r7, #0x5c] + cmp r0, #9 + bls _08064F18 + ldr r0, _08064F14 @ =0x00002C11 + b _08064F26 + .align 2, 0 +_08064F04: .4byte gSave +_08064F08: .4byte 0x000003E6 +_08064F0C: .4byte 0x00002C0E +_08064F10: .4byte gRoomVars +_08064F14: .4byte 0x00002C11 +_08064F18: + cmp r6, #0x63 + bls _08064F24 + ldr r0, _08064F20 @ =0x00002C10 + b _08064F26 + .align 2, 0 +_08064F20: .4byte 0x00002C10 +_08064F24: + ldr r0, _08064F2C @ =0x00002C0F +_08064F26: + mov r1, r8 + str r0, [r1, #4] + b _08064F3E + .align 2, 0 +_08064F2C: .4byte 0x00002C0F +_08064F30: + ldr r0, _08064F48 @ =0x00002C0D +_08064F32: + adds r1, r4, #0 + bl TextboxNoOverlap +_08064F38: + movs r0, #0 + mov r1, r8 + str r0, [r1, #0x14] +_08064F3E: + pop {r3, r4} + mov r8, r3 + mov sb, r4 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_08064F48: .4byte 0x00002C0D .else push {r4, r5, r6, r7, lr} mov r7, sb diff --git a/asm/object29.s b/asm/object29.s index e973f20e..72e20190 100644 --- a/asm/object29.s +++ b/asm/object29.s @@ -31,7 +31,106 @@ _08089870: .4byte gUnk_08120D90 thumb_func_start sub_08089874 sub_08089874: @ 0x08089874 .ifdef EU - .incbin "baserom_eu.gba", 0x089184, 0x00000C4 @TODO disassemble + push {r4, lr} + adds r4, r0, #0 + adds r0, #0x38 + movs r2, #3 + strb r2, [r0] + ldrb r1, [r4, #0xb] + cmp r1, #0 + bne _08089200 + ldrb r0, [r4, #0xa] + cmp r0, #0x80 + bne _080891B4 + strb r2, [r4, #0xc] + ldrb r0, [r4, #0x19] + movs r1, #0xc0 + orrs r0, r1 + strb r0, [r4, #0x19] + adds r0, r4, #0 + movs r1, #0 + bl InitializeAnimation + adds r0, r4, #0 + bl sub_08089AE0 + b _08089246 +_080891B4: + str r1, [r4, #0x50] + adds r0, r4, #0 + movs r1, #0x29 + movs r2, #0 + movs r3, #0xff + bl CreateObjectWithParent + ldrb r0, [r4, #0xa] + cmp r0, #0 + beq _080891FA +_080891C8: + ldrb r3, [r4, #0xa] + adds r0, r4, #0 + movs r1, #0x29 + movs r2, #0 + bl CreateObjectWithParent + adds r1, r0, #0 + str r1, [r4, #0x54] + cmp r1, #0 + beq _080891EE + ldr r0, [r4, #0x50] + str r0, [r1, #0x50] + ldr r1, [r4, #0x50] + cmp r1, #0 + beq _080891EA + ldr r0, [r4, #0x54] + str r0, [r1, #0x54] +_080891EA: + ldr r0, [r4, #0x54] + str r0, [r4, #0x50] +_080891EE: + ldrb r0, [r4, #0xa] + subs r0, #1 + strb r0, [r4, #0xa] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080891C8 +_080891FA: + bl DeleteThisEntity + b _08089246 +_08089200: + movs r0, #1 + strb r0, [r4, #0xc] + ldr r0, [r4, #0x50] + cmp r0, #0 + bne _08089214 + adds r0, r4, #0 + movs r1, #0 + bl InitializeAnimation + b _0808921C +_08089214: + adds r0, r4, #0 + movs r1, #1 + bl InitializeAnimation +_0808921C: + ldrb r0, [r4, #0xb] + cmp r0, #0xff + bne _0808923A + adds r1, r4, #0 + adds r1, #0x38 + movs r0, #1 + strb r0, [r1] + adds r0, r4, #0 + bl sub_08016A30 + adds r0, r4, #0 + movs r1, #0x15 + bl sub_0801D2B4 + b _08089246 +_0808923A: + ldrb r1, [r4, #0xb] + lsls r0, r1, #3 + adds r0, r0, r1 + lsls r0, r0, #2 + rsbs r0, r0, #0 + strh r0, [r4, #0x36] +_08089246: + pop {r4, pc} + .else push {r4, r5, lr} adds r4, r0, #0 diff --git a/asm/object6A.s b/asm/object6A.s index 54e443d7..8e01d30f 100644 --- a/asm/object6A.s +++ b/asm/object6A.s @@ -729,7 +729,87 @@ sub_08094F98: @ 0x08094F98 thumb_func_start sub_08094FA8 sub_08094FA8: @ 0x08094FA8 .ifdef EU - .incbin "baserom_eu.gba", 0x09487C, 0x000009C @TODO disassemble + push {r4, lr} + adds r4, r0, #0 + ldrb r1, [r4, #0xc] + cmp r1, #1 + beq _080948B4 + cmp r1, #1 + bgt _08094890 + cmp r1, #0 + beq _0809489A + b _08094912 +_08094890: + cmp r1, #2 + beq _080948E0 + cmp r1, #3 + beq _080948FC + b _08094912 +_0809489A: + movs r0, #1 + strb r0, [r4, #0xc] + strb r1, [r4, #0x1e] + adds r2, r4, #0 + adds r2, #0x29 + ldrb r0, [r2] + movs r1, #7 + orrs r0, r1 + strb r0, [r2] + adds r0, r4, #0 + bl sub_080787B4 + b _08094912 +_080948B4: + adds r1, r4, #0 + adds r1, #0x39 + movs r0, #0 + ldrsb r0, [r1, r0] + cmp r0, #0 + beq _08094912 + movs r0, #0 + strb r0, [r1] + movs r0, #2 + strb r0, [r4, #0xc] + adds r0, r4, #0 + bl sub_080788E0 + ldr r0, _080948DC @ =gPlayerState + movs r1, #0xc + strb r1, [r0, #0xc] + adds r0, #0x38 + movs r1, #0x36 + strb r1, [r0] + b _08094912 + .align 2, 0 +_080948DC: .4byte gPlayerState +_080948E0: + movs r0, #0x36 + bl GetInventoryValue + cmp r0, #2 + bne _08094912 + movs r0, #3 + strb r0, [r4, #0xc] + ldrb r1, [r4, #0x18] + subs r0, #7 + ands r0, r1 + movs r1, #1 + orrs r0, r1 + strb r0, [r4, #0x18] + b _08094912 +_080948FC: + ldr r0, _08094914 @ =gPlayerEntity + ldrb r0, [r0, #0xc] + cmp r0, #0xc + beq _08094912 + movs r0, #4 + strb r0, [r4, #0xc] + movs r0, #0x1c + movs r1, #0 + movs r2, #0 + bl CreateItemEntity +_08094912: + pop {r4, pc} + .align 2, 0 +_08094914: .4byte gPlayerEntity + .else push {r4, lr} adds r4, r0, #0 diff --git a/asm/objectBA.s b/asm/objectBA.s index 65210428..66229321 100644 --- a/asm/objectBA.s +++ b/asm/objectBA.s @@ -29,7 +29,145 @@ _080A1700: .4byte gUnk_08124ED0 thumb_func_start sub_080A1704 sub_080A1704: @ 0x080A1704 .ifdef EU - .incbin "baserom_eu.gba", 0x0A0F40, 0x0000128 @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, sb + mov r5, r8 + push {r5, r6, r7} + mov sl, r0 + movs r0, #0x7b + bl CheckFlags + cmp r0, #0 + beq _080A0F5A + bl DeleteThisEntity +_080A0F5A: + ldr r0, _080A1050 @ =gEntCount + ldrb r0, [r0] + cmp r0, #0x45 + bhi _080A1044 + movs r0, #0x40 + bl zMalloc + adds r7, r0, #0 + cmp r7, #0 + beq _080A1044 + movs r6, #0 + movs r0, #1 + mov sb, r0 + mov r2, sb + mov r1, sl + strb r2, [r1, #0xc] + str r7, [r1, #0x64] + adds r1, #0x6e + movs r3, #0 + mov r8, r3 + movs r0, #0x96 + lsls r0, r0, #2 + strh r0, [r1] + mov r0, sl + adds r0, #0x6c + strh r6, [r0] + mov r0, sl + str r0, [r7] + movs r0, #0x5c + movs r1, #0 + bl CreateEnemy + adds r1, r0, #0 + str r7, [r1, #0x64] + str r1, [r7, #4] + movs r0, #0x5d + movs r1, #0 + bl CreateEnemy + adds r1, r0, #0 + ldr r4, _080A1054 @ =gRoomControls + movs r2, #0x80 + lsls r2, r2, #2 + adds r5, r2, #0 + ldrh r3, [r4, #6] + adds r0, r5, r3 + strh r0, [r1, #0x2e] + movs r2, #0xe0 + lsls r2, r2, #2 + adds r0, r2, #0 + ldrh r3, [r4, #8] + adds r0, r0, r3 + strh r0, [r1, #0x32] + str r7, [r1, #0x64] + str r1, [r7, #8] + movs r0, #0x5d + movs r1, #1 + bl CreateEnemy + adds r1, r0, #0 + movs r2, #0x98 + lsls r2, r2, #2 + adds r0, r2, #0 + ldrh r3, [r4, #6] + adds r0, r0, r3 + strh r0, [r1, #0x2e] + movs r2, #0xd8 + lsls r2, r2, #2 + adds r0, r2, #0 + ldrh r3, [r4, #8] + adds r0, r0, r3 + strh r0, [r1, #0x32] + str r7, [r1, #0x64] + str r1, [r7, #0xc] + ldr r2, _080A1058 @ =gScreen + ldr r0, _080A105C @ =0x00001E07 + strh r0, [r2, #0x2c] + ldrh r0, [r2] + movs r3, #0x80 + lsls r3, r3, #4 + adds r1, r3, #0 + orrs r0, r1 + strh r0, [r2] + mov r0, sl + adds r0, #0x70 + strh r6, [r0] + adds r0, #2 + strh r6, [r0] + adds r0, #2 + mov r1, r8 + strb r1, [r0] + adds r0, #6 + strb r1, [r0] + subs r0, #4 + movs r1, #0xc0 + strh r1, [r0] + adds r0, #2 + strh r1, [r0] + ldr r0, _080A1060 @ =gScreenTransition + adds r0, #0x39 + mov r2, sb + strb r2, [r0] + ldr r2, _080A1064 @ =gPlayerState + ldr r0, [r2, #0x30] + movs r1, #0x80 + lsls r1, r1, #0xa + orrs r0, r1 + str r0, [r2, #0x30] + ldrh r3, [r4, #6] + adds r5, r5, r3 + strh r5, [r2, #0x16] + movs r1, #0x84 + lsls r1, r1, #2 + adds r0, r1, #0 + ldrh r4, [r4, #8] + adds r0, r0, r4 + strh r0, [r2, #0x18] +_080A1044: + pop {r3, r4, r5} + mov r8, r3 + mov sb, r4 + mov sl, r5 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_080A1050: .4byte gEntCount +_080A1054: .4byte gRoomControls +_080A1058: .4byte gScreen +_080A105C: .4byte 0x00001E07 +_080A1060: .4byte gScreenTransition +_080A1064: .4byte gPlayerState + .else push {r4, r5, r6, r7, lr} mov r7, sl diff --git a/asm/octorokBoss.s b/asm/octorokBoss.s index 5b9f204d..59ca7773 100644 --- a/asm/octorokBoss.s +++ b/asm/octorokBoss.s @@ -177,10 +177,500 @@ _080352FA: thumb_func_start sub_080352FC sub_080352FC: @ 0x080352FC .ifdef JP - .incbin "baserom_jp.gba", 0x0352a0, 0x1fc @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, sb + mov r5, r8 + push {r5, r6, r7} + adds r5, r0, #0 + adds r0, #0x7c + ldrb r0, [r0] + movs r6, #1 + adds r4, r6, #0 + ands r4, r0 + cmp r4, #0 + bne _08035390 + adds r0, r5, #0 + adds r0, #0x84 + ldr r1, [r0] + ldr r1, [r1, #0xc] + adds r1, #0x7d + ldrb r2, [r1] + mov sb, r0 + cmp r2, #0 + beq _080352D0 + subs r0, r2, #1 + strb r0, [r1] +_080352D0: + ldr r3, _08035334 @ =gRoomControls + movs r0, #0x84 + lsls r0, r0, #1 + adds r1, r0, #0 + ldrh r0, [r3, #6] + adds r1, r1, r0 + ldrh r0, [r5, #0x2e] + subs r1, r1, r0 + adds r1, #4 + lsls r1, r1, #0x10 + lsrs r1, r1, #0x10 + ldrh r0, [r3, #8] + ldrh r2, [r5, #0x32] + subs r0, r0, r2 + adds r0, #0x8c + lsls r0, r0, #0x10 + lsrs r0, r0, #0x10 + cmp r1, #8 + bhi _080352FAJP + cmp r0, #8 + bls _08035338 +_080352FAJP: + mov r1, sb + ldr r0, [r1] + strb r6, [r0, #2] + ldrh r0, [r3, #6] + movs r1, #0x84 + lsls r1, r1, #1 + adds r0, r0, r1 + lsls r0, r0, #0x10 + ldr r1, [r5, #0x2c] + subs r0, r0, r1 + ldrh r1, [r3, #8] + adds r1, #0x88 + lsls r1, r1, #0x10 + ldr r2, [r5, #0x30] + subs r1, r1, r2 + bl sub_080045DA + asrs r0, r0, #3 + strb r0, [r5, #0x15] + movs r0, #0x80 + lsls r0, r0, #1 + strh r0, [r5, #0x24] + adds r0, r5, #0 + bl ProcessMovement + adds r7, r5, #0 + adds r7, #0x79 + b _080353FA + .align 2, 0 +_08035334: .4byte gRoomControls +_08035338: + ldrb r0, [r5, #0xb] + cmp r0, #0 + bne _0803537C + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #0 + bl CreateObjectWithParent + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #1 + bl CreateObjectWithParent + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #2 + bl CreateObjectWithParent + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #3 + bl CreateObjectWithParent + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #4 + bl CreateObjectWithParent + strb r6, [r5, #0xb] +_0803537C: + mov r1, sb + ldr r0, [r1] + strb r4, [r0, #2] + adds r1, r5, #0 + adds r1, #0x79 + ldrb r0, [r1] + subs r0, #1 + strb r0, [r1] + adds r7, r1, #0 + b _080353FA +_08035390: + adds r0, r5, #0 + adds r0, #0x84 + ldr r1, [r0] + ldrb r1, [r1, #1] + subs r4, r1, #1 + mov sb, r0 + adds r7, r5, #0 + adds r7, #0x79 + cmp r4, #0 + beq _080353DC + mov ip, sb + movs r0, #1 + mov sl, r0 + lsls r0, r4, #2 + subs r6, r0, #4 + movs r1, #3 + mov r8, r1 +_080353B2: + mov r1, ip + ldr r0, [r1] + adds r0, #0xc + adds r0, r0, r6 + ldr r3, [r0] + ldrb r2, [r3, #0x18] + lsls r1, r2, #0x1e + lsrs r1, r1, #0x1e + mov r0, sl + orrs r1, r0 + mov r0, r8 + ands r1, r0 + movs r0, #4 + rsbs r0, r0, #0 + ands r0, r2 + orrs r0, r1 + strb r0, [r3, #0x18] + subs r6, #4 + subs r4, #1 + cmp r4, #0 + bne _080353B2 +_080353DC: + ldr r1, _08035450 @ =gScreenTransition + ldr r0, [r1] + movs r1, #2 + ands r0, r1 + cmp r0, #0 + beq _080353F4 + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #6 + movs r3, #0 + bl CreateObjectWithParent +_080353F4: + ldrb r0, [r7] + subs r0, #1 + strb r0, [r7] +_080353FA: + ldrb r0, [r7] + cmp r0, #0 + bne _0803548C + movs r0, #2 + strb r0, [r5, #0xd] + adds r4, r5, #0 + adds r4, #0x7c + ldrb r0, [r4] + adds r0, #1 + strb r0, [r4] + adds r0, r5, #0 + bl sub_080AE068 + ldrb r1, [r4] + movs r0, #1 + ands r0, r1 + cmp r0, #0 + bne _08035454 + adds r1, r5, #0 + adds r1, #0x3f + movs r0, #0x5f + strb r0, [r1] + movs r1, #0x84 + lsls r1, r1, #1 + adds r0, r5, #0 + bl LoadFixedGFX + adds r0, r5, #0 + movs r1, #0xef + bl sub_0801D2B4 + adds r0, r5, #0 + movs r1, #0xef + bl sub_08036F14 + mov r1, sb + ldr r0, [r1] + ldr r0, [r0, #0xc] + movs r1, #1 + bl InitAnimationForceUpdate + b _08035480 + .align 2, 0 +_08035450: .4byte gScreenTransition +_08035454: + adds r1, r5, #0 + adds r1, #0x3f + movs r0, #0x61 + strb r0, [r1] + ldr r1, _08035498 @ =0x00000109 + adds r0, r5, #0 + bl LoadFixedGFX + adds r0, r5, #0 + movs r1, #0xf0 + bl sub_0801D2B4 + adds r0, r5, #0 + movs r1, #0xf3 + bl sub_08036F14 + mov r1, sb + ldr r0, [r1] + ldr r0, [r0, #0xc] + movs r1, #2 + bl InitAnimationForceUpdate +_08035480: + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #8 + movs r3, #0 + bl CreateObjectWithParent +_0803548C: + pop {r3, r4, r5} + mov r8, r3 + mov sb, r4 + mov sl, r5 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_08035498: .4byte 0x00000109 + .else .ifdef EU - .incbin "baserom_eu.gba", 0x03527C, 0x1fc @TODO disassemble same as JP + push {r4, r5, r6, r7, lr} + mov r7, sl + mov r6, sb + mov r5, r8 + push {r5, r6, r7} + adds r5, r0, #0 + adds r0, #0x7c + ldrb r0, [r0] + movs r6, #1 + adds r4, r6, #0 + ands r4, r0 + cmp r4, #0 + bne _0803536C + adds r0, r5, #0 + adds r0, #0x84 + ldr r1, [r0] + ldr r1, [r1, #0xc] + adds r1, #0x7d + ldrb r2, [r1] + mov sb, r0 + cmp r2, #0 + beq _080352AC + subs r0, r2, #1 + strb r0, [r1] +_080352AC: + ldr r3, _08035310 @ =gRoomControls + movs r0, #0x84 + lsls r0, r0, #1 + adds r1, r0, #0 + ldrh r0, [r3, #6] + adds r1, r1, r0 + ldrh r0, [r5, #0x2e] + subs r1, r1, r0 + adds r1, #4 + lsls r1, r1, #0x10 + lsrs r1, r1, #0x10 + ldrh r0, [r3, #8] + ldrh r2, [r5, #0x32] + subs r0, r0, r2 + adds r0, #0x8c + lsls r0, r0, #0x10 + lsrs r0, r0, #0x10 + cmp r1, #8 + bhi _080352D6 + cmp r0, #8 + bls _08035314 +_080352D6: + mov r1, sb + ldr r0, [r1] + strb r6, [r0, #2] + ldrh r0, [r3, #6] + movs r1, #0x84 + lsls r1, r1, #1 + adds r0, r0, r1 + lsls r0, r0, #0x10 + ldr r1, [r5, #0x2c] + subs r0, r0, r1 + ldrh r1, [r3, #8] + adds r1, #0x88 + lsls r1, r1, #0x10 + ldr r2, [r5, #0x30] + subs r1, r1, r2 + bl sub_080045DA + asrs r0, r0, #3 + strb r0, [r5, #0x15] + movs r0, #0x80 + lsls r0, r0, #1 + strh r0, [r5, #0x24] + adds r0, r5, #0 + bl ProcessMovement + adds r7, r5, #0 + adds r7, #0x79 + b _080353D6 + .align 2, 0 +_08035310: .4byte gRoomControls +_08035314: + ldrb r0, [r5, #0xb] + cmp r0, #0 + bne _08035358 + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #0 + bl CreateObjectWithParent + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #1 + bl CreateObjectWithParent + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #2 + bl CreateObjectWithParent + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #3 + bl CreateObjectWithParent + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #5 + movs r3, #4 + bl CreateObjectWithParent + strb r6, [r5, #0xb] +_08035358: + mov r1, sb + ldr r0, [r1] + strb r4, [r0, #2] + adds r1, r5, #0 + adds r1, #0x79 + ldrb r0, [r1] + subs r0, #1 + strb r0, [r1] + adds r7, r1, #0 + b _080353D6 +_0803536C: + adds r0, r5, #0 + adds r0, #0x84 + ldr r1, [r0] + ldrb r1, [r1, #1] + subs r4, r1, #1 + mov sb, r0 + adds r7, r5, #0 + adds r7, #0x79 + cmp r4, #0 + beq _080353B8 + mov ip, sb + movs r0, #1 + mov sl, r0 + lsls r0, r4, #2 + subs r6, r0, #4 + movs r1, #3 + mov r8, r1 +_0803538E: + mov r1, ip + ldr r0, [r1] + adds r0, #0xc + adds r0, r0, r6 + ldr r3, [r0] + ldrb r2, [r3, #0x18] + lsls r1, r2, #0x1e + lsrs r1, r1, #0x1e + mov r0, sl + orrs r1, r0 + mov r0, r8 + ands r1, r0 + movs r0, #4 + rsbs r0, r0, #0 + ands r0, r2 + orrs r0, r1 + strb r0, [r3, #0x18] + subs r6, #4 + subs r4, #1 + cmp r4, #0 + bne _0803538E +_080353B8: + ldr r1, _0803542C @ =gScreenTransition + ldr r0, [r1] + movs r1, #2 + ands r0, r1 + cmp r0, #0 + beq _080353D0 + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #6 + movs r3, #0 + bl CreateObjectWithParent +_080353D0: + ldrb r0, [r7] + subs r0, #1 + strb r0, [r7] +_080353D6: + ldrb r0, [r7] + cmp r0, #0 + bne _08035468 + movs r0, #2 + strb r0, [r5, #0xd] + adds r4, r5, #0 + adds r4, #0x7c + ldrb r0, [r4] + adds r0, #1 + strb r0, [r4] + adds r0, r5, #0 + bl sub_080AE068 + ldrb r1, [r4] + movs r0, #1 + ands r0, r1 + cmp r0, #0 + bne _08035430 + adds r1, r5, #0 + adds r1, #0x3f + movs r0, #0x5f + strb r0, [r1] + movs r1, #0x84 + lsls r1, r1, #1 + adds r0, r5, #0 + bl LoadFixedGFX + adds r0, r5, #0 + movs r1, #0xef + bl sub_0801D2B4 + adds r0, r5, #0 + movs r1, #0xef + bl sub_08036F14 + mov r1, sb + ldr r0, [r1] + ldr r0, [r0, #0xc] + movs r1, #1 + bl InitAnimationForceUpdate + b _0803545C + .align 2, 0 +_0803542C: .4byte gScreenTransition +_08035430: + adds r1, r5, #0 + adds r1, #0x3f + movs r0, #0x61 + strb r0, [r1] + ldr r1, _08035474 @ =0x00000109 + adds r0, r5, #0 + bl LoadFixedGFX + adds r0, r5, #0 + movs r1, #0xf0 + bl sub_0801D2B4 + adds r0, r5, #0 + movs r1, #0xf3 + bl sub_08036F14 + mov r1, sb + ldr r0, [r1] + ldr r0, [r0, #0xc] + movs r1, #2 + bl InitAnimationForceUpdate +_0803545C: + adds r0, r5, #0 + movs r1, #0x87 + movs r2, #8 + movs r3, #0 + bl CreateObjectWithParent +_08035468: + pop {r3, r4, r5} + mov r8, r3 + mov sb, r4 + mov sl, r5 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_08035474: .4byte 0x00000109 + .else push {r4, r5, r6, r7, lr} mov r7, sl diff --git a/asm/playerItem/playerItem15.s b/asm/playerItem/playerItem15.s index b2d26ba1..32384227 100644 --- a/asm/playerItem/playerItem15.s +++ b/asm/playerItem/playerItem15.s @@ -206,19 +206,448 @@ _080A3200: // DEMO only functions .ifdef DEMO -thumb_func_start HandleChooseDemoScreen + thumb_func_start HandleChooseDemoScreen HandleChooseDemoScreen: @ 0x080A2E18 -.incbin "baserom_demo.gba", 0x0a2e18, 0x28 @TODO disassemble + push {lr} + bl FlushSprites + ldr r1, _080A2E38 @ =demoFunctions + ldr r0, _080A2E3C @ =gMain + ldrb r0, [r0, #3] + lsls r0, r0, #2 + adds r0, r0, r1 + ldr r0, [r0] + bl _call_via_r0 + bl sub_080A30AC + bl sub_080AD918 + pop {pc} + .align 2, 0 +_080A2E38: .4byte demoFunctions +_080A2E3C: .4byte gMain thumb_func_start sub_080A2E40 sub_080A2E40: @ 0x080A2E40 -.incbin "baserom_demo.gba", 0x0a2e40, 0x14c @TODO disassemble + push {r4, r5, r6, lr} + mov r6, sb + mov r5, r8 + push {r5, r6} + movs r0, #1 + bl DispReset + bl InitSoundPlayingInfo + movs r0, #0xc0 + lsls r0, r0, #0x13 + mov sb, r0 + movs r1, #0x80 + bl MemClear + bl MessageInitialize + bl EraseAllEntities + bl sub_080ADD30 + movs r0, #0 + bl sub_0801CFA8 + ldr r0, _080A2F4C @ =gUnk_02032EC0 + movs r1, #0xed + lsls r1, r1, #2 + bl MemClear + ldr r0, _080A2F50 @ =gChooseFileState + movs r1, #0x30 + bl MemClear + ldr r0, _080A2F54 @ =gBG0Buffer + movs r1, #0x80 + lsls r1, r1, #4 + mov r8, r1 + bl MemClear + bl sub_08053320 + movs r0, #0xb5 + bl LoadPaletteGroup + movs r0, #0x56 + bl LoadGfxGroup + ldr r5, _080A2F58 @ =0x089FD1B4 + ldr r4, _080A2F5C @ =0x02017760 + movs r6, #0x80 + lsls r6, r6, #1 + adds r0, r5, #0 + adds r1, r4, #0 + adds r2, r6, #0 + bl MemCopy + movs r0, #0x80 + lsls r0, r0, #2 + adds r4, r4, r0 + adds r0, r5, #0 + adds r1, r4, #0 + adds r2, r6, #0 + bl MemCopy + ldr r4, _080A2F60 @ =0x089FD2F4 + movs r5, #0x80 + lsls r5, r5, #8 + adds r0, r4, #0 + mov r1, sb + adds r2, r5, #0 + bl MemCopy + ldr r1, _080A2F64 @ =0x06010000 + adds r0, r4, #0 + adds r2, r5, #0 + bl MemCopy + ldr r4, _080A2F68 @ =0x08A05751 + ldr r1, _080A2F6C @ =gBG1Buffer + adds r0, r4, #0 + mov r2, r8 + bl MemCopy + movs r1, #0x80 + lsls r1, r1, #4 + adds r4, r4, r1 + ldr r1, _080A2F70 @ =gBG2Buffer + adds r0, r4, #0 + mov r2, r8 + bl MemCopy + ldr r1, _080A2F74 @ =gScreen + movs r2, #0 + movs r0, #0xf8 + lsls r0, r0, #5 + strh r0, [r1] + ldr r0, _080A2F78 @ =0x00001C81 + strh r0, [r1, #0x14] + ldr r0, _080A2F7C @ =0x00001D82 + strh r0, [r1, #0x20] + adds r0, #0x89 + strh r0, [r1, #0x2c] + movs r4, #1 + movs r0, #1 + strh r0, [r1, #0x1a] + strh r0, [r1, #0x26] + strh r0, [r1, #0x32] + adds r3, r1, #0 + adds r3, #0x66 + ldr r0, _080A2F80 @ =0x00001044 + strh r0, [r3] + adds r1, #0x68 + ldr r0, _080A2F84 @ =0x00000B04 + strh r0, [r1] + movs r0, #0x80 + lsls r0, r0, #0x12 + strb r2, [r0, #4] + movs r0, #0 + movs r1, #0 + bl sub_080A3198 + ldr r0, _080A2F88 @ =gMain + strb r4, [r0, #3] + movs r0, #7 + bl SoundReq + movs r0, #4 + movs r1, #8 + bl DoFade + pop {r3, r4} + mov r8, r3 + mov sb, r4 + pop {r4, r5, r6, pc} + .align 2, 0 +_080A2F4C: .4byte gUnk_02032EC0 +_080A2F50: .4byte gChooseFileState +_080A2F54: .4byte gBG0Buffer +_080A2F58: .4byte gUnk_089FD1B4 +_080A2F5C: .4byte 0x02017760 +_080A2F60: .4byte gUnk_089FD2F4 +_080A2F64: .4byte 0x06010000 +_080A2F68: .4byte gUnk_08A05751 +_080A2F6C: .4byte gBG1Buffer +_080A2F70: .4byte gBG2Buffer +_080A2F74: .4byte gScreen +_080A2F78: .4byte 0x00001C81 +_080A2F7C: .4byte 0x00001D82 +_080A2F80: .4byte 0x00001044 +_080A2F84: .4byte 0x00000B04 +_080A2F88: .4byte gMain -thumb_func_start sub_080A2F8C + + thumb_func_start sub_080A2F8C sub_080A2F8C: @ 0x080A2F8C -.incbin "baserom_demo.gba", 0x0A2F8C, 0x44 @TODO disassemble + push {lr} + ldr r0, _080A2FA4 @ =gFadeControl + ldrb r0, [r0] + cmp r0, #0 + bne _080A2FCC + ldr r2, _080A2FA8 @ =gMain + ldrb r0, [r2, #4] + cmp r0, #0 + beq _080A2FAC + cmp r0, #1 + beq _080A2FC6 + b _080A2FCC + .align 2, 0 +_080A2FA4: .4byte gFadeControl +_080A2FA8: .4byte gMain +_080A2FAC: + movs r0, #1 + strb r0, [r2, #4] + movs r1, #0x80 + lsls r1, r1, #0x12 + strb r0, [r1, #5] + strb r0, [r1, #6] + movs r0, #2 + strb r0, [r2, #3] + movs r0, #5 + movs r1, #8 + bl DoFade + b _080A2FCC +_080A2FC6: + movs r0, #2 + bl InitScreen +_080A2FCC: + pop {pc} + .align 2, 0 -thumb_func_start sub_080A2FD0 + + thumb_func_start sub_080A2FD0 sub_080A2FD0: @ 0x080A2FD0 -.incbin "baserom_demo.gba", 0x0A2FD0, 0x210 @TODO disassemble + push {r4, r5, lr} + ldr r0, _080A2FF4 @ =gFadeControl + ldrb r0, [r0] + cmp r0, #0 + bne _080A30A8 + movs r5, #0 + ldr r0, _080A2FF8 @ =gInput + ldrh r0, [r0] + cmp r0, #0x10 + beq _080A3020 + cmp r0, #0x10 + bgt _080A2FFC + cmp r0, #1 + beq _080A303C + cmp r0, #8 + beq _080A303C + b _080A3052 + .align 2, 0 +_080A2FF4: .4byte gFadeControl +_080A2FF8: .4byte gInput +_080A2FFC: + cmp r0, #0x40 + beq _080A3052 + cmp r0, #0x40 + bgt _080A3052 + cmp r0, #0x20 + bne _080A3052 + ldr r1, _080A301C @ =gChooseFileState + ldrb r0, [r1] + cmp r0, #0 + bne _080A3052 + movs r5, #1 + rsbs r5, r5, #0 + adds r1, #0x20 + movs r0, #0xfc + b _080A302E + .align 2, 0 +_080A301C: .4byte gChooseFileState +_080A3020: + ldr r1, _080A3038 @ =gChooseFileState + ldrb r0, [r1] + cmp r0, #0 + bne _080A3052 + movs r5, #1 + adds r1, #0x20 + movs r0, #4 +_080A302E: + strb r0, [r1] + movs r0, #0x69 + bl SoundReq + b _080A3052 + .align 2, 0 +_080A3038: .4byte gChooseFileState +_080A303C: + ldr r0, _080A3090 @ =gChooseFileState + ldrb r2, [r0] + cmp r2, #0 + bne _080A3052 + ldr r1, _080A3094 @ =gMain + movs r0, #2 + strb r0, [r1, #3] + strb r2, [r1, #4] + movs r0, #0x6a + bl SoundReq +_080A3052: + movs r4, #0x80 + lsls r4, r4, #0x12 + ldrb r0, [r4, #4] + adds r1, r5, #3 + adds r0, r0, r1 + movs r1, #3 + bl __modsi3 + strb r0, [r4, #4] + ldr r5, _080A3090 @ =gChooseFileState + movs r0, #0x10 + ldrsh r2, [r5, r0] + ldrb r1, [r4, #4] + movs r0, #0x68 + muls r0, r1, r0 + cmp r0, r2 + beq _080A3098 + adds r0, r5, #0 + adds r0, #0x20 + ldrb r0, [r0] + lsls r0, r0, #0x18 + asrs r0, r0, #0x18 + adds r0, r2, r0 + movs r1, #0x9c + lsls r1, r1, #1 + adds r0, r0, r1 + bl __modsi3 + strh r0, [r5, #0x10] + movs r0, #1 + b _080A309A + .align 2, 0 +_080A3090: .4byte gChooseFileState +_080A3094: .4byte gMain +_080A3098: + movs r0, #0 +_080A309A: + strb r0, [r5] + movs r0, #0x80 + lsls r0, r0, #0x12 + ldrb r0, [r0, #4] + movs r1, #0 + bl sub_080A3198 +_080A30A8: + pop {r4, r5, pc} + .align 2, 0 + + thumb_func_start sub_080A30AC +sub_080A30AC: @ 0x080A30AC + push {r4, r5, r6, lr} + mov r6, r8 + push {r6} + ldr r4, _080A3188 @ =gOamCmd + movs r1, #0 + movs r0, #0x80 + lsls r0, r0, #6 + strh r0, [r4, #4] + strh r1, [r4, #6] + movs r0, #0xc0 + lsls r0, r0, #4 + strh r0, [r4, #8] + movs r0, #0x40 + strh r0, [r4, #2] + ldr r0, _080A318C @ =gChooseFileState + movs r1, #0x10 + ldrsh r6, [r0, r1] + ldr r1, _080A3190 @ =0xFFFFFED8 + adds r0, r1, #0 + subs r0, r0, r6 + strh r0, [r4] + ldr r0, _080A3194 @ =0x08A068BF + mov r8, r0 + ldr r1, [r0] + mov r5, r8 + subs r5, #0xc + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + movs r1, #0xc0 + rsbs r1, r1, #0 + adds r0, r1, #0 + subs r0, r0, r6 + strh r0, [r4] + ldr r1, [r5, #4] + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + movs r1, #0x58 + rsbs r1, r1, #0 + adds r0, r1, #0 + subs r0, r0, r6 + strh r0, [r4] + ldr r1, [r5, #8] + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + movs r0, #0x10 + subs r0, r0, r6 + strh r0, [r4] + mov r0, r8 + ldr r1, [r0] + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + movs r0, #0x78 + subs r0, r0, r6 + strh r0, [r4] + ldr r1, [r5, #4] + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + movs r0, #0xe0 + subs r0, r0, r6 + strh r0, [r4] + ldr r1, [r5, #8] + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + movs r1, #0xa4 + lsls r1, r1, #1 + adds r0, r1, #0 + subs r0, r0, r6 + strh r0, [r4] + mov r0, r8 + ldr r1, [r0] + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + movs r1, #0xd8 + lsls r1, r1, #1 + adds r0, r1, #0 + subs r0, r0, r6 + strh r0, [r4] + ldr r1, [r5, #4] + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + movs r1, #0x86 + lsls r1, r1, #2 + adds r0, r1, #0 + subs r0, r0, r6 + strh r0, [r4] + ldr r1, [r5, #8] + adds r1, r1, r5 + adds r0, r4, #0 + bl sub_080ADA04 + pop {r3} + mov r8, r3 + pop {r4, r5, r6, pc} + .align 2, 0 +_080A3188: .4byte gOamCmd +_080A318C: .4byte gChooseFileState +_080A3190: .4byte 0xFFFFFED8 +_080A3194: .4byte gUnk_08A068BF + + thumb_func_start sub_080A3198 +sub_080A3198: @ 0x080A3198 + push {r4, r5, lr} + ldr r1, _080A31D0 @ =0x08127CC8 + lsls r0, r0, #1 + adds r0, r0, r1 + ldrh r4, [r0] + ldr r1, _080A31D4 @ =gChooseFileState + ldrh r0, [r1, #0x12] + cmp r0, r4 + beq _080A31CC + strh r4, [r1, #0x12] + ldr r5, _080A31D8 @ =something2 + ldr r0, [r5] + subs r0, #0x1e + movs r1, #0xc0 + lsls r1, r1, #1 + bl MemClear + cmp r4, #0 + beq _080A31C6DEMO + adds r0, r4, #0 + adds r1, r5, #0 + bl sub_0805F46C +_080A31C6DEMO: + ldr r1, _080A31DC @ =gScreen + movs r0, #1 + strh r0, [r1, #0xe] +_080A31CC: + pop {r4, r5, pc} + .align 2, 0 +_080A31D0: .4byte gUnk_08127CC8 +_080A31D4: .4byte gChooseFileState +_080A31D8: .4byte gUnk_08127C98 +_080A31DC: .4byte gScreen + .endif diff --git a/asm/playerItem/playerItem3.s b/asm/playerItem/playerItem3.s index 09952ea8..6c16303d 100644 --- a/asm/playerItem/playerItem3.s +++ b/asm/playerItem/playerItem3.s @@ -67,7 +67,107 @@ _0801B4C4: .4byte 0xFFFFE000 thumb_func_start sub_0801B4C8 sub_0801B4C8: @ 0x0801B4C8 .ifdef EU - .incbin "baserom_eu.gba", 0x01B4F4, 0xc8 @ TODO disassemble + push {r4, r5, lr} + adds r4, r0, #0 + ldr r3, _0801B564 @ =gPlayerState + str r4, [r3, #0x2c] + movs r2, #0 + movs r0, #1 + strb r0, [r4, #0xc] + ldr r0, _0801B568 @ =gUnk_081271CC + str r0, [r4, #0x48] + movs r0, #0xff + strb r0, [r4, #0x1e] + adds r0, r4, #0 + adds r0, #0x80 + strb r2, [r0] + ldr r5, _0801B56C @ =gPlayerEntity + adds r0, r5, #0 + adds r0, #0x60 + ldrh r1, [r0] + adds r0, r4, #0 + adds r0, #0x60 + strh r1, [r0] + adds r1, r4, #0 + adds r1, #0x58 + movs r0, #0xb + strb r0, [r1] + str r5, [r4, #0x50] + adds r0, r4, #0 + adds r0, #0x86 + strh r2, [r0] + ldrb r1, [r4, #0x14] + movs r0, #2 + ands r0, r1 + cmp r0, #0 + beq _0801B550 + ldrb r0, [r5, #0x18] + lsls r0, r0, #0x19 + lsrs r0, r0, #0x1f + movs r1, #1 + bics r1, r0 + lsls r1, r1, #6 + ldrb r2, [r4, #0x18] + movs r0, #0x41 + rsbs r0, r0, #0 + ands r0, r2 + orrs r0, r1 + strb r0, [r4, #0x18] +_0801B550: + adds r0, r4, #0 + adds r0, #0x68 + ldrb r0, [r0] + cmp r0, #0xc + bne _0801B570 + movs r0, #0xa0 + lsls r0, r0, #2 + strh r0, [r4, #0x24] + movs r0, #0x3c + b _0801B578 + .align 2, 0 +_0801B564: .4byte gPlayerState +_0801B568: .4byte gUnk_081271CC +_0801B56C: .4byte gPlayerEntity +_0801B570: + movs r0, #0x80 + lsls r0, r0, #2 + strh r0, [r4, #0x24] + movs r0, #0x1e +_0801B578: + strb r0, [r4, #0xe] + ldrb r1, [r3, #0xd] + movs r0, #0xd + ldrsb r0, [r3, r0] + cmp r0, #0 + blt _0801B588 + strb r1, [r4, #0x15] + b _0801B58E +_0801B588: + ldrb r0, [r4, #0x14] + lsls r0, r0, #2 + strb r0, [r4, #0x15] +_0801B58E: + ldrb r0, [r4, #0x15] + adds r1, r4, #0 + adds r1, #0x83 + strb r0, [r1] + adds r0, r4, #0 + adds r0, #0x38 + ldrb r0, [r0] + cmp r0, #2 + bne _0801B5A4 + movs r0, #1 + strb r0, [r4, #0xb] +_0801B5A4: + adds r0, r4, #0 + movs r1, #1 + movs r2, #3 + bl sub_080AE008 + adds r0, r4, #0 + bl sub_0801766C + adds r0, r4, #0 + bl sub_0801B584 + pop {r4, r5, pc} .else push {r4, r5, lr} adds r4, r0, #0 diff --git a/asm/sub_0807CA18.s b/asm/sub_0807CA18.s index 34669d14..8db5f175 100644 --- a/asm/sub_0807CA18.s +++ b/asm/sub_0807CA18.s @@ -107,13 +107,13 @@ _0807CA04: str r0, [r2, #0x00] movs r0, #0x01 pop {r4, r5, r6, pc} -_0807CA38: .4byte 0x02002A40 @TODO ptr -_0807CA3C: .4byte 0x0811DFF4 @TODO ptr -_0807CA40: .4byte 0x0811EF10 @TODO ptr +_0807CA38: .4byte gSave +_0807CA3C: .4byte gUnk_0811E470 +_0807CA40: .4byte demoPointers _0807CA44: .4byte 0x000004B4 _0807CA48: .4byte 0xFFFFD8F1 -_0807CA4C: .4byte 0x02000010 @TODO ptr -_0807CA50: .4byte 0x0811DFF9 @TODO ptr +_0807CA4C: .4byte gUnk_02000010 +_0807CA50: .4byte demoUnknown1 .else thumb_func_start sub_0807CA18 sub_0807CA18: @ 0x0807CA18 diff --git a/asm/vaatiArm.s b/asm/vaatiArm.s index 39a63f98..e0bb1f35 100644 --- a/asm/vaatiArm.s +++ b/asm/vaatiArm.s @@ -3165,10 +3165,42 @@ _08043C8C: thumb_func_start sub_08043C98 sub_08043C98: @ 0x08043C98 .ifdef JP - .incbin "baserom_jp.gba", 0x043BB0, 0x20 @TODO disassemble + push {lr} + adds r1, r0, #0 + ldr r0, [r1, #0x64] + ldr r0, [r0, #0xc] + adds r0, #0x41 + ldrb r0, [r0] + cmp r0, #0x9d + beq _08043BC4JP + movs r0, #0 + b _08043BCC +_08043BC4JP: + adds r0, r1, #0 + bl sub_08043D08 + movs r0, #1 +_08043BCC: + pop {pc} + .align 2, 0 .else .ifdef EU - .incbin "baserom_eu.gba", 0x043AC4, 0x20 @TODO same as JP + push {lr} + adds r1, r0, #0 + ldr r0, [r1, #0x64] + ldr r0, [r0, #0xc] + adds r0, #0x41 + ldrb r0, [r0] + cmp r0, #0x9d + beq _08043AD8 + movs r0, #0 + b _08043AE0 +_08043AD8: + adds r0, r1, #0 + bl sub_08043D08 + movs r0, #1 +_08043AE0: + pop {pc} + .align 2, 0 .else push {lr} adds r3, r0, #0 diff --git a/asm/vaatiProjectile.s b/asm/vaatiProjectile.s index 119c72e3..2b7617e5 100644 --- a/asm/vaatiProjectile.s +++ b/asm/vaatiProjectile.s @@ -52,7 +52,57 @@ _0803E0D8: .4byte gUnk_080D0660 thumb_func_start sub_0803E0DC sub_0803E0DC: @ 0x0803E0DC .ifdef EU - .incbin "baserom_eu.gba", 0x03E038, 0x68 @TODO disassemble + push {r4, r5, lr} + adds r5, r0, #0 + adds r0, #0x41 + ldrb r0, [r0] + cmp r0, #0x80 + bne _0803E08E + movs r0, #5 + strb r0, [r5, #0xc] + ldrb r2, [r5, #0x10] + movs r1, #0x7f + adds r0, r1, #0 + ands r0, r2 + strb r0, [r5, #0x10] + adds r3, r5, #0 + adds r3, #0x29 + ldrb r2, [r3] + movs r0, #0x39 + rsbs r0, r0, #0 + ands r0, r2 + strb r0, [r3] + ldr r3, _0803E098 @ =gPlayerEntity + ldrb r0, [r3, #0x10] + ands r1, r0 + strb r1, [r3, #0x10] + ldrb r2, [r5, #0x1b] + lsrs r2, r2, #6 + lsls r2, r2, #6 + ldrb r4, [r3, #0x1b] + movs r1, #0x3f + adds r0, r1, #0 + ands r0, r4 + orrs r0, r2 + strb r0, [r3, #0x1b] + ldrb r0, [r5, #0x19] + lsrs r0, r0, #6 + lsls r0, r0, #6 + ldrb r2, [r3, #0x19] + ands r1, r2 + orrs r1, r0 + strb r1, [r3, #0x19] + adds r0, r5, #0 + bl sub_0803E444 +_0803E08E: + ldr r1, _0803E09C @ =gUnk_080D0648 + adds r0, r5, #0 + bl sub_0804AA30 + pop {r4, r5, pc} + .align 2, 0 +_0803E098: .4byte gPlayerEntity +_0803E09C: .4byte gUnk_080D0648 + .else push {r4, r5, r6, lr} adds r5, r0, #0 @@ -560,7 +610,33 @@ _0803E49E: thumb_func_start sub_0803E4A0 sub_0803E4A0: @ 0x0803E4A0 .ifdef EU - .incbin "baserom_eu.gba", 0x03e3b8, 0x30 @TODO disassemble + push {lr} + adds r1, r0, #0 + ldr r0, _0803E3CCEU @ =gScreenTransition + adds r0, #0x39 + ldrb r0, [r0] + cmp r0, #0 + bne _0803E3D0EU + movs r0, #1 + b _0803E3E6 + .align 2, 0 +_0803E3CCEU: .4byte gScreenTransition +_0803E3D0EU: + ldr r0, [r1, #0x50] + cmp r0, #0 + bne _0803E3DA + movs r0, #0 + b _0803E3E6 +_0803E3DA: + movs r1, #0 + ldr r0, [r0, #4] + cmp r0, #0 + bne _0803E3E4EU + movs r1, #1 +_0803E3E4EU: + adds r0, r1, #0 +_0803E3E6: + pop {pc} .else push {lr} adds r1, r0, #0 diff --git a/asm/vaatiWrath.s b/asm/vaatiWrath.s index e31fe4b3..5fb19bab 100644 --- a/asm/vaatiWrath.s +++ b/asm/vaatiWrath.s @@ -65,10 +65,28 @@ _0804139C: .4byte gUnk_080D0E1C thumb_func_start sub_080413A0 sub_080413A0: @ 0x080413A0 .ifdef JP - .incbin "baserom_jp.gba", 0x041344, 0x18 @TODO disassemble + push {lr} + ldr r2, _08041358 @ =gUnk_080D0E2C + ldrb r1, [r0, #0xc] + lsls r1, r1, #2 + adds r1, r1, r2 + ldr r1, [r1] + bl _call_via_r1 + pop {pc} + .align 2, 0 +_08041358: .4byte gUnk_080D0E2C .else .ifdef EU - .incbin "baserom_eu.gba", 0x041274, 0x18 @TODO same as JP + push {lr} + ldr r2, _08041288 @ =gUnk_080D0E2C + ldrb r1, [r0, #0xc] + lsls r1, r1, #2 + adds r1, r1, r2 + ldr r1, [r1] + bl _call_via_r1 + pop {pc} + .align 2, 0 +_08041288: .4byte gUnk_080D0E2C .else push {r4, lr} adds r4, r0, #0 @@ -1126,7 +1144,96 @@ _08041BE4: .4byte gUnk_080D0E68 thumb_func_start sub_08041BE8 sub_08041BE8: @ 0x08041BE8 .ifdef EU - .incbin "baserom_eu.gba", 0x041AB4, 0xCA @TODO disassemble + push {r4, r5, r6, r7, lr} + mov r7, r8 + push {r7} + adds r6, r0, #0 + bl sub_08079F8C + cmp r0, #0 + beq _08041B72 + movs r5, #0 + movs r0, #1 + strb r0, [r6, #0xd] + movs r0, #0x78 + strb r0, [r6, #0xe] + ldrb r1, [r6, #0x11] + movs r4, #0x10 + rsbs r4, r4, #0 + adds r0, r4, #0 + ands r0, r1 + movs r1, #3 + mov r8, r1 + mov r1, r8 + orrs r0, r1 + strb r0, [r6, #0x11] + adds r0, r6, #0 + movs r1, #0xa + bl InitAnimationForceUpdate + ldr r0, [r6, #0x64] + ldr r7, [r0, #4] + str r5, [r7, #0x64] + adds r0, r7, #0 + bl DeleteEntity + ldr r0, [r6, #0x64] + str r5, [r0, #4] + ldr r7, [r0, #8] + ldrb r0, [r7, #0x11] + ands r4, r0 + mov r0, r8 + orrs r4, r0 + strb r4, [r7, #0x11] + adds r0, r7, #0 + bl sub_080AE068 + ldr r1, _08041B78 @ =0x000001F5 + adds r0, r7, #0 + bl LoadFixedGFX + ldr r1, _08041B7C @ =0x0000016B + adds r0, r7, #0 + bl sub_0801D2B4 + adds r0, r7, #0 + movs r1, #0x1a + bl InitializeAnimation + ldr r0, [r6, #0x64] + ldr r7, [r0, #0xc] + str r5, [r7, #0x64] + adds r0, r7, #0 + bl DeleteEntity + ldr r0, [r6, #0x64] + str r5, [r0, #0xc] + ldr r7, [r0, #0x1c] + str r5, [r7, #0x64] + adds r0, r7, #0 + bl DeleteEntity + ldr r0, [r6, #0x64] + str r5, [r0, #0x1c] + ldr r7, [r0, #0x20] + str r5, [r7, #0x64] + adds r0, r7, #0 + bl DeleteEntity + ldr r0, [r6, #0x64] + str r5, [r0, #0x20] + ldr r7, [r0, #0x24] + str r5, [r7, #0x64] + adds r0, r7, #0 + bl DeleteEntity + ldr r0, [r6, #0x64] + str r5, [r0, #0x24] + ldr r7, [r0, #0x28] + str r5, [r7, #0x64] + adds r0, r7, #0 + bl DeleteEntity + ldr r0, [r6, #0x64] + str r5, [r0, #0x28] + movs r0, #2 + bl sub_08078A90 +_08041B72: + pop {r3} + mov r8, r3 + pop {r4, r5, r6, r7, pc} + .align 2, 0 +_08041B78: .4byte 0x000001F5 +_08041B7C: .4byte 0x0000016B + .else push {r4, r5, r6, r7, lr} mov r7, r8 diff --git a/asm/waterfallOpening.s b/asm/waterfallOpening.s index b2e767f9..b75c7cb1 100644 --- a/asm/waterfallOpening.s +++ b/asm/waterfallOpening.s @@ -10,7 +10,164 @@ thumb_func_start WaterfallOpening WaterfallOpening: @ 0x0809FF68 .ifdef EU - .incbin "baserom_eu.gba", 0x09F7C8, 0x000013C @TODO disassemble + push {r4, r5, lr} + adds r4, r0, #0 + ldrb r1, [r4, #0xc] + cmp r1, #0 + bne _0809F802 + movs r0, #1 + strb r0, [r4, #0xc] + movs r0, #8 + strb r0, [r4, #0xe] + strb r1, [r4, #0xf] + ldrb r0, [r4, #0x19] + movs r1, #0xc0 + orrs r0, r1 + strb r0, [r4, #0x19] + adds r2, r4, #0 + adds r2, #0x29 + ldrb r0, [r2] + movs r1, #7 + orrs r0, r1 + strb r0, [r2] + ldr r1, _0809F824 @ =gUnk_08124868 + ldrb r0, [r4, #0xa] + adds r0, r0, r1 + ldrb r0, [r0] + strb r0, [r4, #0x1e] + adds r1, r4, #0 + adds r1, #0x68 + movs r0, #0x78 + strh r0, [r1] +_0809F802: + ldrb r0, [r4, #0xb] + cmp r0, #0 + beq _0809F8BC + movs r0, #0xff + bl CheckRoomFlag + cmp r0, #0 + beq _0809F8FE + ldrb r2, [r4, #0xd] + cmp r2, #1 + beq _0809F85A + cmp r2, #1 + bgt _0809F828 + cmp r2, #0 + beq _0809F82E + b _0809F8AE + .align 2, 0 +_0809F824: .4byte gUnk_08124868 +_0809F828: + cmp r2, #2 + beq _0809F88C + b _0809F8AE +_0809F82E: + adds r1, r4, #0 + adds r1, #0x68 + ldrh r0, [r1] + subs r0, #1 + strh r0, [r1] + lsls r0, r0, #0x10 + cmp r0, #0 + bne _0809F8AE + movs r0, #0x20 + strh r0, [r1] + movs r1, #1 + strb r1, [r4, #0xe] + movs r0, #0 + strb r0, [r4, #0xf] + strb r1, [r4, #0xd] + strb r1, [r4, #0xa] + adds r0, r4, #0 + bl sub_080AE068 + movs r1, #0xc6 + lsls r1, r1, #1 + b _0809F87E +_0809F85A: + adds r1, r4, #0 + adds r1, #0x68 + ldrh r0, [r1] + subs r0, #1 + strh r0, [r1] + lsls r0, r0, #0x10 + cmp r0, #0 + bne _0809F8AE + movs r0, #0x2d + strh r0, [r1] + strb r2, [r4, #0xe] + movs r0, #2 + strb r0, [r4, #0xd] + strb r0, [r4, #0xa] + adds r0, r4, #0 + bl sub_080AE068 + ldr r1, _0809F888 @ =0x0000018D +_0809F87E: + adds r0, r4, #0 + bl LoadFixedGFX + b _0809F8AE + .align 2, 0 +_0809F888: .4byte 0x0000018D +_0809F88C: + adds r1, r4, #0 + adds r1, #0x68 + ldrh r0, [r1] + subs r0, #1 + strh r0, [r1] + lsls r0, r0, #0x10 + cmp r0, #0 + bne _0809F8AE + movs r0, #3 + strb r0, [r4, #0xd] + ldr r1, _0809F8B8 @ =gChooseFileState + ldrb r0, [r1, #6] + adds r0, #1 + strb r0, [r1, #6] + movs r0, #0x73 + bl SoundReq +_0809F8AE: + adds r0, r4, #0 + bl sub_080A00B0 + b _0809F8FE + .align 2, 0 +_0809F8B8: .4byte gChooseFileState +_0809F8BC: + ldrb r0, [r4, #0xa] + cmp r0, #0 + beq _0809F8F8 + cmp r0, #2 + bne _0809F8F8 + ldrb r0, [r4, #0xd] + cmp r0, #0 + bne _0809F8F8 + movs r0, #1 + strb r0, [r4, #0xd] + movs r0, #0x2e + ldrsh r1, [r4, r0] + ldr r2, _0809F900 @ =gRoomControls + ldrh r0, [r2, #6] + subs r1, r1, r0 + asrs r1, r1, #4 + movs r3, #0x3f + ands r1, r3 + movs r5, #0x32 + ldrsh r0, [r4, r5] + ldrh r2, [r2, #8] + subs r0, r0, r2 + asrs r0, r0, #4 + ands r0, r3 + lsls r0, r0, #6 + orrs r1, r0 + movs r0, #0x39 + movs r2, #1 + bl SetTileType +_0809F8F8: + adds r0, r4, #0 + bl sub_080A00B0 +_0809F8FE: + pop {r4, r5, pc} + .align 2, 0 +_0809F900: .4byte gRoomControls + .else push {r4, r5, lr} adds r4, r0, #0 diff --git a/asm/windTribeTeleporter.s b/asm/windTribeTeleporter.s index 9349cf93..6a9d2e91 100644 --- a/asm/windTribeTeleporter.s +++ b/asm/windTribeTeleporter.s @@ -116,10 +116,231 @@ _080A0FFE: thumb_func_start sub_080A1000 sub_080A1000: @ 0x080A1000 .ifdef JP - .incbin "baserom_jp.gba", 0x0a0dc8, 0xd0 @TODO disassemble + push {lr} + adds r1, r0, #0 + ldrb r2, [r1, #0xd] + cmp r2, #1 + beq _080A0DF2 + cmp r2, #1 + bgt _080A0DDC + cmp r2, #0 + beq _080A0DE6 + b _080A0E50 +_080A0DDC: + cmp r2, #2 + beq _080A0E00 + cmp r2, #3 + beq _080A0E2C + b _080A0E50 +_080A0DE6: + movs r0, #0x1e + strb r0, [r1, #0xe] + ldrb r0, [r1, #0xd] + adds r0, #1 + strb r0, [r1, #0xd] + b _080A0E8C +_080A0DF2: + ldrb r0, [r1, #0xe] + subs r0, #1 + strb r0, [r1, #0xe] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080A0E8C + b _080A0E38 +_080A0E00: + ldrb r0, [r1, #0xe] + subs r0, #1 + strb r0, [r1, #0xe] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080A0E1E + ldrb r0, [r1, #0xd] + adds r0, #1 + strb r0, [r1, #0xd] + movs r0, #0x1e + strb r0, [r1, #0xe] + adds r0, #0xf5 + bl SoundReq + b _080A0E8C +_080A0E1E: + ldr r0, _080A0E28 @ =0x030010A0 + ldr r0, [r0] + movs r1, #7 + b _080A0E7A + .align 2, 0 +_080A0E28: .4byte 0x030010A0 +_080A0E2C: + ldrb r0, [r1, #0xe] + subs r0, #1 + strb r0, [r1, #0xe] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080A0E44 +_080A0E38: + ldrb r0, [r1, #0xd] + adds r0, #1 + strb r0, [r1, #0xd] + movs r0, #0x1e + strb r0, [r1, #0xe] + b _080A0E8C +_080A0E44: + ldr r0, _080A0E4C @ =0x030010A0 + ldr r0, [r0] + ands r0, r2 + b _080A0E7C + .align 2, 0 +_080A0E4C: .4byte 0x030010A0 +_080A0E50: + ldrb r0, [r1, #0xe] + subs r0, #1 + strb r0, [r1, #0xe] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080A0E74 + ldrb r1, [r1, #0xb] + lsls r0, r1, #2 + adds r0, r0, r1 + lsls r0, r0, #2 + ldr r1, _080A0E70 @ =0x0813AA18 + adds r0, r0, r1 + bl DoExitTransition + b _080A0E8C + .align 2, 0 +_080A0E70: .4byte 0x0813AA18 +_080A0E74: + ldr r0, _080A0E90 @ =0x030010A0 + ldr r0, [r0] + movs r1, #1 +_080A0E7A: + ands r0, r1 +_080A0E7C: + cmp r0, #0 + bne _080A0E8C + ldr r0, _080A0E94 @ =0x03001160 + ldrb r1, [r0, #0x14] + adds r1, #2 + movs r2, #6 + ands r1, r2 + strb r1, [r0, #0x14] +_080A0E8C: + pop {pc} + .align 2, 0 +_080A0E90: .4byte 0x030010A0 +_080A0E94: .4byte 0x03001160 .else .ifdef EU - .incbin "baserom_eu.gba", 0x0A084C, 0xd0 @TODO same as JP + push {lr} + adds r1, r0, #0 + ldrb r2, [r1, #0xd] + cmp r2, #1 + beq _080A0876 + cmp r2, #1 + bgt _080A0860 + cmp r2, #0 + beq _080A086A + b _080A08D4 +_080A0860: + cmp r2, #2 + beq _080A0884 + cmp r2, #3 + beq _080A08B0 + b _080A08D4 +_080A086A: + movs r0, #0x1e + strb r0, [r1, #0xe] + ldrb r0, [r1, #0xd] + adds r0, #1 + strb r0, [r1, #0xd] + b _080A0910 +_080A0876: + ldrb r0, [r1, #0xe] + subs r0, #1 + strb r0, [r1, #0xe] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080A0910 + b _080A08BC +_080A0884: + ldrb r0, [r1, #0xe] + subs r0, #1 + strb r0, [r1, #0xe] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080A08A2 + ldrb r0, [r1, #0xd] + adds r0, #1 + strb r0, [r1, #0xd] + movs r0, #0x1e + strb r0, [r1, #0xe] + adds r0, #0xf5 + bl SoundReq + b _080A0910 +_080A08A2: + ldr r0, _080A08AC @ =gScreenTransition + ldr r0, [r0] + movs r1, #7 + b _080A08FE + .align 2, 0 +_080A08AC: .4byte gScreenTransition +_080A08B0: + ldrb r0, [r1, #0xe] + subs r0, #1 + strb r0, [r1, #0xe] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080A08C8 +_080A08BC: + ldrb r0, [r1, #0xd] + adds r0, #1 + strb r0, [r1, #0xd] + movs r0, #0x1e + strb r0, [r1, #0xe] + b _080A0910 +_080A08C8: + ldr r0, _080A08D0 @ =gScreenTransition + ldr r0, [r0] + ands r0, r2 + b _080A0900 + .align 2, 0 +_080A08D0: .4byte gScreenTransition +_080A08D4: + ldrb r0, [r1, #0xe] + subs r0, #1 + strb r0, [r1, #0xe] + lsls r0, r0, #0x18 + cmp r0, #0 + bne _080A08F8 + ldrb r1, [r1, #0xb] + lsls r0, r1, #2 + adds r0, r0, r1 + lsls r0, r0, #2 + ldr r1, _080A08F4 @ =gUnk_0813ADEC + adds r0, r0, r1 + bl DoExitTransition + b _080A0910 + .align 2, 0 +_080A08F4: .4byte gUnk_0813ADEC +_080A08F8: + ldr r0, _080A0914 @ =gScreenTransition + ldr r0, [r0] + movs r1, #1 +_080A08FE: + ands r0, r1 +_080A0900: + cmp r0, #0 + bne _080A0910 + ldr r0, _080A0918 @ =gPlayerEntity + ldrb r1, [r0, #0x14] + adds r1, #2 + movs r2, #6 + ands r1, r2 + strb r1, [r0, #0x14] +_080A0910: + pop {pc} + .align 2, 0 +_080A0914: .4byte gScreenTransition +_080A0918: .4byte gPlayerEntity + .else push {r4, lr} adds r4, r0, #0 diff --git a/data/const/playerItem/playerItem15.s b/data/const/playerItem/playerItem15.s index c962fa97..66a8ff96 100644 --- a/data/const/playerItem/playerItem15.s +++ b/data/const/playerItem/playerItem15.s @@ -13,13 +13,15 @@ gUnk_08127278:: @ 08127278 .ifdef DEMO @ TODO choose demo screen -something: +demoFunctions:: .4byte sub_080A2E40 .4byte sub_080A2FD0 .4byte sub_080A2F8C -something2:: -.incbin "baserom_demo.gba", 0x127c98, 0x38 +gUnk_08127C98:: +.incbin "baserom_demo.gba", 0x127c98, 0x30 +gUnk_08127CC8:: +.incbin "baserom_demo.gba", 0x127CC8, 0x8 .endif diff --git a/data/data_08108E6C.s b/data/data_08108E6C.s index 625a6cea..ef668635 100644 --- a/data/data_08108E6C.s +++ b/data/data_08108E6C.s @@ -420,7 +420,7 @@ gUnk_08109230:: @ 08109230 gUnk_08109244:: @ 08109244 .incbin "baserom.gba", 0x109244, 0x0000004 -gUnk_08109248:: @ 08109248 TODO might be a pointer array? +gUnk_08109248:: @ 08109248 .4byte gUnk_08692F60 .4byte gUnk_08692F60 .4byte gUnk_086978E0 diff --git a/data/data_0812AA88.s b/data/data_0812AA88.s index bc3cc62a..88fb300c 100644 --- a/data/data_0812AA88.s +++ b/data/data_0812AA88.s @@ -2237,7 +2237,6 @@ ENUM_12AED0_LV1_CLEAR_MES: .4byte gUnk_0812AC84 .endif -.ifndef JP gUnk_0812B604:: @ 0812B604 .incbin "baserom.gba", 0x12B604, 0x0000008 @@ -2249,12 +2248,6 @@ gUnk_0812B614:: @ 0812B614 gUnk_0812B61C:: @ 0812B61C .incbin "baserom.gba", 0x12B61C, 0x0000008 -.else -gUnk_0812B61C:: -.space 0x3c -.endif - - gUnk_0812B624:: @ 0812B624 diff --git a/data/map_headers.s b/data/map_headers.s index 5cd95b2e..914e306f 100755 --- a/data/map_headers.s +++ b/data/map_headers.s @@ -3955,8 +3955,6 @@ gAreaRoomMap_TempleOfDroplets_31:: @ 08105EAC map_bottom 0x20A614+0x154, 0x1BA, 1 map_top 0x20A64C+0x1CC, 0x1BA, 1, 1 .else -@nocheckin map_bottom 0x20A614, 0x186, 1 - @nocheckin map_top 0x20A64C, 0x186, 1, 1 map_bottom 0x20A784, 0x1BA, 1 map_top 0x20A834, 0x1BA, 1, 1 .endif diff --git a/data/sounds.s b/data/sounds.s index 4833d395..670a54b2 100644 --- a/data/sounds.s +++ b/data/sounds.s @@ -3840,7 +3840,32 @@ bgmDarkHyruleCastle:: @ 08DD6BFC bgmSecretCastleEntrance_track0:: @ 08DD6C20 .ifdef EU - .incbin "baserom_eu.gba", 0xEE2278, 0x0000073 @TODO pointers inside + .incbin "baserom_eu.gba", 0xEE2278, 0x000000B +gUnk_08EE2283:: + .incbin "baserom_eu.gba", 0xEE2283, 0x000000D +gUnk_08EE2290:: + .incbin "baserom_eu.gba", 0xEE2290, 0x000000F + .4byte gUnk_08EE2290 + .byte 0xB3 + .4byte gUnk_08EE2290 + .byte 0xB3 + .4byte gUnk_08EE2290 + .byte 0xB3 + .4byte gUnk_08EE2290 + .incbin "baserom_eu.gba", 0xEE22B2, 0x0000010 + .4byte gUnk_08EE2290 +gUnk_08EE22C6:: + .incbin "baserom_eu.gba", 0xEE22C6, 0x000000F + .4byte gUnk_08EE22C6 + .byte 0xB3 + .4byte gUnk_08EE22C6 + .byte 0xB3 + .4byte gUnk_08EE22C6 + .byte 0xBB + .byte 0x3C + .byte 0xB2 + .4byte gUnk_08EE2283 + .byte 0xB1 .else .incbin "baserom.gba", 0xDD6C20, 0x000000B gUnk_08DD6C2B:: @ 08DD6C2B @@ -3865,7 +3890,32 @@ gUnk_08DD6C85:: @ 08DD6C85 bgmSecretCastleEntrance_track1:: @ 08DD6CB6 .ifdef EU - .incbin "baserom_eu.gba", 0xEE22EB, 0x0000063 @TODO pointers inside + .incbin "baserom_eu.gba", 0xEE22EB, 0x0000007 +gUnk_08EE22F2:: @ 08EE22F2 + .incbin "baserom_eu.gba", 0xEE22F2, 0x000000D +gUnk_08EE22FF:: @ 08EE22FF + .incbin "baserom_eu.gba", 0xEE22FF, 0x000000F + .4byte gUnk_08EE22FF + .incbin "baserom_eu.gba", 0xEE2312, 0x0000001 + .4byte gUnk_08EE22FF + .incbin "baserom_eu.gba", 0xEE2317, 0x0000001 + .4byte gUnk_08EE22FF + .incbin "baserom_eu.gba", 0xEE231C, 0x0000001 + .4byte gUnk_08EE22FF + .incbin "baserom_eu.gba", 0xEE2321, 0x0000001 + .4byte gUnk_08EE22FF + .incbin "baserom_eu.gba", 0xEE2326, 0x0000001 + .4byte gUnk_08EE22FF +gUnk_08EE232B:: @ 08EE232B + .incbin "baserom_eu.gba", 0xEE232B, 0x000000F + .4byte gUnk_08EE232B + .incbin "baserom_eu.gba", 0xEE233E, 0x0000001 + .4byte gUnk_08EE232B + .incbin "baserom_eu.gba", 0xEE2343, 0x0000001 + .4byte gUnk_08EE232B + .incbin "baserom_eu.gba", 0xEE2348, 0x0000001 + .4byte gUnk_08EE22F2 + .incbin "baserom_eu.gba", 0xEE234D, 0x0000001 .else .incbin "baserom.gba", 0xDD6CB6, 0x0000007 gUnk_08DD6CBD:: @ 08DD6CBD @@ -3980,7 +4030,11 @@ gUnk_08DD6ECD:: @ 08DD6ECD bgmSecretCastleEntrance_track7:: @ 08DD6F8A .ifdef EU - .incbin "baserom_eu.gba", 0xEE259D, 0x000003B @TODO pointers inside + .incbin "baserom_eu.gba", 0xEE259D, 0x0000003 +gUnk_08EE25A0:: @ 08EE25A0 + .incbin "baserom_eu.gba", 0xEE25A0, 0x0000030 + .4byte gUnk_08EE25A0 + .incbin "baserom_eu.gba", 0xEE25D4, 0x0000004 .else .incbin "baserom.gba", 0xDD6F8A, 0x0000003 gUnk_08DD6F8D:: @ 08DD6F8D @@ -6058,7 +6112,11 @@ bgmDiggingCave:: @ 08DDC394 bgmSwiftbladeDojo_track0:: @ 08DDC3B4 .ifdef EU - .incbin "baserom_eu.gba", 0xEE79C8, 0x000002B @TODO pointers inside + .incbin "baserom_eu.gba", 0xEE79C8, 0x000000B +gUnk_08EE79D3:: @ 08EE79D3 + .incbin "baserom_eu.gba", 0xEE79D3, 0x000001B + .4byte gUnk_08EE79D3 + .incbin "baserom_eu.gba", 0xEE79F2, 0x0000001 .else .incbin "baserom.gba", 0xDDC3B4, 0x000000B gUnk_08DDC3BF:: @ 08DDC3BF @@ -6068,7 +6126,12 @@ gUnk_08DDC3BF:: @ 08DDC3BF .endif .ifdef EU - .incbin "baserom_eu.gba", 0xEE79F3, 0x000009D @TODO pointers inside +gUnk_08EE79F3:: @ 08EE79F3 + .incbin "baserom_eu.gba", 0xEE79F3, 0x0000007 +gUnk_08EE79FA:: @ 08EE79FA + .incbin "baserom_eu.gba", 0xEE79FA, 0x000008E + .4byte gUnk_08EE79FA + .incbin "baserom_eu.gba", 0xEE7A8C, 0x0000004 .else bgmSwiftbladeDojo_track1:: @ 08DDC3E2 .incbin "baserom.gba", 0xDDC3E2, 0x0000007 @@ -6092,7 +6155,10 @@ gUnk_08DDC423:: @ 08DDC423 bgmSwiftbladeDojo:: @ 08DDC4B4 .ifdef EU - .incbin "baserom_eu.gba",0xEE7A90, 0x0000010 @TODO pointers inside + .incbin "baserom_eu.gba", 0xEE7A90, 0x0000004 + .4byte gUnk_08A0CF44 + .4byte bgmSwiftbladeDojo_track0 + .4byte gUnk_08EE79F3 .else sound_header 4 0 0 0x9e gUnk_08A0CF44 bgmSwiftbladeDojo_track0 bgmSwiftbladeDojo_track1 bgmSwiftbladeDojo_track2 bgmSwiftbladeDojo_track3 .endif @@ -7142,7 +7208,20 @@ bgmWindRuins:: @ 08DDEC38 sound_header 7 0 0 0xa8 gUnk_08A0F014 bgmWindRuins_track0 bgmWindRuins_track1 bgmWindRuins_track2 bgmWindRuins_track3 bgmWindRuins_track4 bgmWindRuins_track5 bgmWindRuins_track6 .ifdef EU - .incbin "baserom_eu.gba", 0xEEA230, 0x00000DC @TODO pointers inside +gUnk_08EEA230:: @ 08EEA230 + .incbin "baserom_eu.gba", 0xEEA230, 0x000000E +gUnk_08EEA23E:: @ 08EEA23E + .incbin "baserom_eu.gba", 0xEEA23E, 0x000001B + .4byte gUnk_08EEA23E + .incbin "baserom_eu.gba", 0xEEA25D, 0x0000001 +gUnk_08EEA25E:: @ 08EEA25E + .incbin "baserom_eu.gba", 0xEEA25E, 0x000000B +gUnk_08EEA269:: @ 08EEA269 + .incbin "baserom_eu.gba", 0xEEA269, 0x0000010 +gUnk_08EEA279:: @ 08EEA279 + .incbin "baserom_eu.gba", 0xEEA279, 0x000008E + .4byte gUnk_08EEA279 + .incbin "baserom_eu.gba", 0xEEA30B, 0x0000001 .else bgmLearnScroll_track0:: @ 08DDEC5C .incbin "baserom.gba", 0xDDEC5C, 0x000000C @@ -7174,7 +7253,11 @@ gUnk_08DDECDA:: @ 08DDECDA bgmLearnScroll:: @ 08DDED6C .ifdef EU - .incbin "baserom_eu.gba", 0xEEA30C, 0x0000014 @TODO pointers inside + .incbin "baserom_eu.gba", 0xEEA30C, 0x0000004 + .4byte gUnk_08A0CF44 + .4byte gUnk_08EEA230 + .4byte gUnk_08EEA25E + .4byte gUnk_08EEA269 .else sound_header 5 0 0 0x9e gUnk_08A0CF44 bgmLearnScroll_track0 bgmLearnScroll_track1 bgmLearnScroll_track2 bgmLearnScroll_track3 bgmLearnScroll_track4 .endif diff --git a/data/sprite_table.s b/data/sprite_table.s index 1b549c3d..0b04dede 100644 --- a/data/sprite_table.s +++ b/data/sprite_table.s @@ -15,5 +15,13 @@ gUnk_089FB780:: @ 089FB780 .endif @ More sprites in demo .ifdef DEMO - .incbin "baserom_demo.gba", 0x9FD0F4, 0x984c + .incbin "baserom_demo.gba", 0x9FD0F4, 0xC0 +gUnk_089FD1B4:: + .incbin "baserom_demo.gba", 0x9FD1B4, 0x140 +gUnk_089FD2F4:: + .incbin "baserom_demo.gba", 0x9FD2F4, 0x845D +gUnk_08A05751:: + .incbin "baserom_demo.gba", 0xA05751, 0x116e +gUnk_08A068BF:: + .incbin "baserom_demo.gba", 0xA068BF, 0x81 .endif diff --git a/linker.ld b/linker.ld index 7de90bc8..c4dbb416 100644 --- a/linker.ld +++ b/linker.ld @@ -32,6 +32,7 @@ SECTIONS { . = 0x00001A40; gBG3Buffer = .; . = 0x00001B40; gUnk_02001B40 = .; . = 0x00002A40; gSave = .; + . = 0x00002A40; gUnk_02002A40 = .; . = 0x00002AA0; gUnk_02002AA0 = .; . = 0x00002AC0; gUnk_02002AC0 = .; . = 0x00002AC8; gUnk_02002AC8 = .; @@ -192,6 +193,7 @@ SECTIONS { . = 0x00001010; gOamCmd = .; . = 0x00001020; gUnk_03001020 = .; . = 0x000010A0; gScreenTransition = .; + . = 0x000010A0; gUnk_030010A0 = .; . = 0x000010AC; gUnk_030010AC = .; . = 0x000010EC; gUnk_030010EC = .; . = 0x0000110C; gUnk_0300110C = .; @@ -283,10 +285,14 @@ SECTIONS { #ifdef EU . = 0x000065AC; gUnk_03006580 = .; . = 0x000065C8; gUnk_0300659C = .; + . = 0x0000689C; gUnk_0300689C = .; + . = 0x000068F0; gUnk_030068F0 = .; + . = 0x00006954; gUnk_03006954 = .; . = 0x000069AC; gUnk_030067E4 = .; . = 0x00006A94; gUnk_030068CC = .; . = 0x00006B14; gUnk_0300694C = .; . = 0x00006B24; gUnk_0300695C = .; + . = 0x00006C14; gUnk_03006C14 = .; #else . = 0x00006580; gUnk_03006580 = .; . = 0x0000659C; gUnk_0300659C = .; diff --git a/src/arm_proxy.c b/src/arm_proxy.c index b3b71deb..e1f13c74 100644 --- a/src/arm_proxy.c +++ b/src/arm_proxy.c @@ -158,9 +158,7 @@ void PlayerUpdate(Entity* this) { // Responsible for some life things like low health beep and initiating the death sequence #ifdef EU -NAKED void HandlePlayerLife(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x017038, 0x1f0"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/HandlePlayerLife.inc", void HandlePlayerLife(Entity* this)); #else void HandlePlayerLife(Entity* this) { u32 temp; diff --git a/src/code_0805436C.c b/src/code_0805436C.c index 4793e016..5f8a1821 100644 --- a/src/code_0805436C.c +++ b/src/code_0805436C.c @@ -173,9 +173,7 @@ void sub_08054570(void) { } #ifdef EU -NAKED u32 sub_0805457C(u32 arg0, u32 arg1) { - asm(".incbin \"baserom_eu.gba\", 0x054114, 0x1c0"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0805457C.inc", u32 sub_0805457C(u32 arg0, u32 arg1)); #else ASM_FUNC("asm/non_matching/sub_0805457C.inc", u32 sub_0805457C(u32 arg0, u32 arg1)); #endif diff --git a/src/enemy/bombPeahat.c b/src/enemy/bombPeahat.c index 4e7bbdad..e096feda 100644 --- a/src/enemy/bombPeahat.c +++ b/src/enemy/bombPeahat.c @@ -189,9 +189,7 @@ void sub_0802AA40(Entity* this) { } #ifdef EU -NAKED void sub_0802AAC0(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x02aa94, 0xc8"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0802AAC0.inc", void sub_0802AAC0(Entity* this)) #else void sub_0802AAC0(Entity* this) { sub_0802AC40(this); @@ -223,9 +221,7 @@ void sub_0802AAC0(Entity* this) { #endif #ifdef EU -NAKED void sub_0802AB40(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x02ab5c, 0x60"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0802AB40.inc", void sub_0802AB40(Entity* this)); #else void sub_0802AB40(Entity* this) { sub_0802AC40(this); @@ -280,9 +276,7 @@ void sub_0802AC08(Entity* this) { } #ifdef EU -NAKED void sub_0802AC40(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x02ABF4, 0x54"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0802AC40.inc", void sub_0802AC40(Entity* this)) #else void sub_0802AC40(Entity* this) { GetNextFrame(this); @@ -364,9 +358,7 @@ void sub_0802AD54(Entity* this) { #ifdef EU // TODO regalloc in EU version -NAKED void sub_0802ADDC(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x02AD48, 0x000004C"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0802ADDC.inc", void sub_0802ADDC(Entity* this)) #else void sub_0802ADDC(Entity* this) { Entity* ent = CreateEnemy(BOMB_PEAHAT, this->type + 2); @@ -400,9 +392,7 @@ void sub_0802AE24(Entity* this) { } #ifdef EU -NAKED void sub_0802AE68(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x02add8, 0x94"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0802AE68.inc", void sub_0802AE68(Entity* this)) #else void sub_0802AE68(Entity* this) { Entity* ent = sub_0802B250(this); @@ -579,9 +569,7 @@ void sub_0802B1A0(Entity* this) { } #ifdef EU -NAKED void sub_0802B1BC(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x02b16c, 0x84"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0802B1BC.inc", void sub_0802B1BC(Entity* this)) #else void sub_0802B1BC(Entity* this) { Entity* ent; diff --git a/src/enemy/chuchu.c b/src/enemy/chuchu.c index 7ca16f40..7c891a9f 100644 --- a/src/enemy/chuchu.c +++ b/src/enemy/chuchu.c @@ -333,9 +333,7 @@ void sub_0801F3AC(Entity* this) { } #ifdef EU -NAKED void sub_0801F428(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x01F428, 0x60"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0801F428.inc", void sub_0801F428(Entity* this)) #else void sub_0801F428(Entity* this) { sub_0804A720(this); diff --git a/src/manager/manager4.c b/src/manager/manager4.c index 99b61179..2fb5fd49 100644 --- a/src/manager/manager4.c +++ b/src/manager/manager4.c @@ -97,9 +97,7 @@ END_NONMATCH extern void sub_08080930(); #ifdef EU -NAKED void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) { - asm(".incbin \"baserom_eu.gba\", 0x057580, 0x0000078"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_08057A18.inc", void sub_08057A18(Manager* this, DiggingCaveEntrance* entr)) #else void sub_08057A18(Manager* this, DiggingCaveEntrance* entr) { u16 tmp; diff --git a/src/manager/manager7.c b/src/manager/manager7.c index 70af525c..85e49295 100644 --- a/src/manager/manager7.c +++ b/src/manager/manager7.c @@ -56,9 +56,7 @@ const u32 gUnk_081080A4[0x50] = { const u8 gUnk_081081E4[] = { 0x16, 0x17, 0x17, 0x18, 0x18 }; #ifdef EU -NAKED void Manager7_Main(Manager7* this) { - asm(".incbin \"baserom_eu.gba\", 0x0578A0, 0x00000CC"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/Manager7_Main.inc", void Manager7_Main(Manager7* this)) #else void Manager7_Main(Manager7* this) { u32 tmp; @@ -133,9 +131,7 @@ void sub_08057E64() { } #ifdef EU -NAKED void sub_08057E7C(u32 unk1) { - asm(".incbin \"baserom_eu.gba\", 0x0579B8, 0x0000050"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_08057E7C.inc", void sub_08057E7C(u32 unk1)) #else void sub_08057E7C(u32 unk1) { u32 tmp; diff --git a/src/npc/phonograph.c b/src/npc/phonograph.c index e6c23f1e..38604490 100644 --- a/src/npc/phonograph.c +++ b/src/npc/phonograph.c @@ -26,9 +26,7 @@ ASM_FUNC("asm/non_matching/phonograph/sub_0806E964.inc", void sub_0806E964(Entity* this, ScriptExecutionContext* context)) #ifdef EU -NAKED void sub_0806EABC(Entity* this, u32 param) { - asm(".incbin \"baserom_eu.gba\", 0x06E4F8, 0x000003C"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_0806EABC.inc", void sub_0806EABC(Entity* this, u32 param)) #else void sub_0806EABC(Entity* this, u32 param) { sub_08050384(); diff --git a/src/projectile/projectile13.c b/src/projectile/projectile13.c index 1397a72e..fc8e06a2 100644 --- a/src/projectile/projectile13.c +++ b/src/projectile/projectile13.c @@ -124,9 +124,7 @@ void sub_080A9FD0(Entity* this) { } #ifdef EU -NAKED void sub_080AA044(Entity* this) { - asm(".incbin \"baserom_eu.gba\", 0x0A983C, 0x00000C4"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/sub_080AA044.inc", void sub_080AA044(Entity* this)) #else void sub_080AA044(Entity* this) { u32 uVar1; diff --git a/src/save.c b/src/save.c index 04495ae3..7039ca5a 100644 --- a/src/save.c +++ b/src/save.c @@ -44,7 +44,8 @@ const u16 gUnk_0811E454[] = { 0x0, 0x0, 0x100, 0x200, 0x300, 0x400, 0x500, const char gUnk_0811E470[4] = "LINK"; #ifdef DEMO -const u8 unknown[] = { 0x0, 0x0f, 0x0a, 0x0a, 0x0f, 0x0f, 0x0f, 0x08, 0x05, 0x05, 0x00, 0x00 }; +const u8 demoUnknown0 = 0x0; +const u8 demoUnknown1[] = { 0x0f, 0x0a, 0x0a, 0x0f, 0x0f, 0x0f, 0x08, 0x05, 0x05, 0x00, 0x00 }; #else const u8 padding[2] = { 0, 0 }; #endif @@ -52,7 +53,16 @@ const u8 padding[2] = { 0, 0 }; static SaveResult (*const sSaveHandlers[])(u32) = { HandleSaveInit, HandleSaveInProgress, HandleSaveDone }; #ifdef DEMO -asm(".incbin \"baserom_demo.gba\", 0x11e010, 0xf0c"); // TODO disassemble +asm("demoPointer1: .incbin \"baserom_demo.gba\", 0x11e010, 0x500"); +asm("demoPointer2: .incbin \"baserom_demo.gba\", 0x11e510, 0x500"); +asm("demoPointer3: .incbin \"baserom_demo.gba\", 0x11ea10, 0x500"); + +extern const u32 demoPointer1; +extern const u32 demoPointer2; +extern const u32 demoPointer3; + +const u32 demoPointers[] = { (u32)&demoPointer1, (u32)&demoPointer2, (u32)&demoPointer3 }; + #else #if defined(JP) || defined(EU) diff --git a/src/textbox.c b/src/textbox.c index 676d6857..01b7bbae 100644 --- a/src/textbox.c +++ b/src/textbox.c @@ -477,9 +477,7 @@ extern u8 gUnk_08107C14; extern u8 gUnk_08107C0F; #ifdef EU -NAKED void TextBoxHandlerQuestion(CurrentTextBox* ctb) { - asm(".incbin \"baserom_eu.gba\", 0x05654c, 0x138"); // TODO disassemble -} +ASM_FUNC("asm/non_matching/eu/TextBoxHandlerQuestion.inc", void TextBoxHandlerQuestion(CurrentTextBox* ctb)) #else void TextBoxHandlerQuestion(CurrentTextBox* ctb) { From 68b65dfd9ab6eabc211c782b2bc1fb2fa993abcc Mon Sep 17 00:00:00 2001 From: octorock <79596758+octorock@users.noreply.github.com> Date: Tue, 22 Jun 2021 23:20:04 +0200 Subject: [PATCH 08/11] Detect necessary baseroms in Makefile without change in scaninc --- Makefile | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/Makefile b/Makefile index fbf922d0..e992a477 100644 --- a/Makefile +++ b/Makefile @@ -35,6 +35,43 @@ endif endif endif +# Check that the required baseroms are available. +ifeq ($(GAME_VERSION), USA) +baserom.gba: + $(error Missing baserom.gba) +.PHONY: baserom_demo.gba baserom_jp.gba baserom_eu.gba +baserom_demo.gba: +baserom_jp.gba: +baserom_eu.gba: +endif +ifeq ($(GAME_VERSION), DEMO) +baserom.gba: + $(error Missing baserom.gba) +baserom_demo.gba: + $(error Missing baserom_demo.gba) +.PHONY: baserom_jp.gba baserom_eu.gba +baserom_jp.gba: +baserom_eu.gba: +endif +ifeq ($(GAME_VERSION), JP) +baserom.gba: + $(error Missing baserom.gba) +baserom_jp.gba: + $(error Missing baserom_jp.gba) +.PHONY: baserom_demo.gba baserom_eu.gba +baserom_demo.gba: +baserom_eu.gba: +endif +ifeq ($(GAME_VERSION), EU) +baserom.gba: + $(error Missing baserom.gba) +baserom_jp.gba: + $(error Missing baserom_jp.gba) +baserom_eu.gba: + $(error Missing baserom_eu.gba) +.PHONY: baserom_demo.gba +baserom_demo.gba: +endif SHELL := /bin/bash -o pipefail From 300169514a70fcf01c0fab9b08fd50346bf4d8b6 Mon Sep 17 00:00:00 2001 From: Ibot02 Date: Wed, 23 Jun 2021 08:05:51 +0200 Subject: [PATCH 09/11] Cleaner baserom dependency handling Instead of scaninc ignoring everything starting with baserom, we tell make which baseroms are needed and which to ignore if they come up as dependencies, depending on the version used. --- Makefile | 80 ++++++++++++++++++++------------------- tools/scaninc/scaninc.cpp | 5 +-- 2 files changed, 42 insertions(+), 43 deletions(-) diff --git a/Makefile b/Makefile index e992a477..fde52c3b 100644 --- a/Makefile +++ b/Makefile @@ -35,44 +35,6 @@ endif endif endif -# Check that the required baseroms are available. -ifeq ($(GAME_VERSION), USA) -baserom.gba: - $(error Missing baserom.gba) -.PHONY: baserom_demo.gba baserom_jp.gba baserom_eu.gba -baserom_demo.gba: -baserom_jp.gba: -baserom_eu.gba: -endif -ifeq ($(GAME_VERSION), DEMO) -baserom.gba: - $(error Missing baserom.gba) -baserom_demo.gba: - $(error Missing baserom_demo.gba) -.PHONY: baserom_jp.gba baserom_eu.gba -baserom_jp.gba: -baserom_eu.gba: -endif -ifeq ($(GAME_VERSION), JP) -baserom.gba: - $(error Missing baserom.gba) -baserom_jp.gba: - $(error Missing baserom_jp.gba) -.PHONY: baserom_demo.gba baserom_eu.gba -baserom_demo.gba: -baserom_eu.gba: -endif -ifeq ($(GAME_VERSION), EU) -baserom.gba: - $(error Missing baserom.gba) -baserom_jp.gba: - $(error Missing baserom_jp.gba) -baserom_eu.gba: - $(error Missing baserom_eu.gba) -.PHONY: baserom_demo.gba -baserom_demo.gba: -endif - SHELL := /bin/bash -o pipefail @@ -203,7 +165,10 @@ clean-tools: clean: mostlyclean clean-tools tidy: - rm -f $(ROM) $(ELF) $(MAP) + rm -f tmc.gba tmc.elf tmc.map + rm -f tmc_demo.gba tmc_demo.elf tmc_demo.map + rm -f tmc_jp.gba tmc_jp.elf tmc_jp.map + rm -f tmc_eu.gba tmc_eu.elf tmc_eu.map rm -r build/* include graphics_file_rules.mk @@ -273,3 +238,40 @@ usa: ; @$(MAKE) GAME_VERSION=USA demo: ; @$(MAKE) GAME_VERSION=DEMO jp: ; @$(MAKE) GAME_VERSION=JP eu: ; @$(MAKE) GAME_VERSION=EU + +ifeq ($(GAME_VERSION), USA) +baserom.gba: + $(error "You need to provide a USA ROM as baserom.gba") +.PHONY: baserom_demo.gba baserom_jp.gba baserom_eu.gba +baserom_demo.gba: +baserom_jp.gba: +baserom_eu.gba: +endif +ifeq ($(GAME_VERSION), DEMO) +baserom.gba: + $(error "You need to provide a USA ROM as baserom.gba") +baserom_demo.gba: + $(error "You need to provide a DEMO ROM as baserom_demo.gba") +.PHONY: baserom_jp.gba baserom_eu.gba +baserom_jp.gba: +baserom_eu.gba: +endif +ifeq ($(GAME_VERSION), JP) +baserom.gba: + $(error "You need to provide a USA ROM as baserom.gba") +baserom_jp.gba: + $(error "You need to provide a JP ROM as baserom_jp.gba") +.PHONY: baserom_demo.gba baserom_eu.gba +baserom_demo.gba: +baserom_eu.gba: +endif +ifeq ($(GAME_VERSION), EU) +baserom.gba: + $(error "You need to provide a USA ROM as baserom.gba") +baserom_jp.gba: + $(error "You need to provide a JP ROM as baserom_jp.gba") +baserom_eu.gba: + $(error "You need to provide a EU ROM as baserom_eu.gba") +.PHONY: baserom_demo.gba +baserom_demo.gba: +endif diff --git a/tools/scaninc/scaninc.cpp b/tools/scaninc/scaninc.cpp index 4c4a5cc9..b95cbd03 100755 --- a/tools/scaninc/scaninc.cpp +++ b/tools/scaninc/scaninc.cpp @@ -93,10 +93,7 @@ int main(int argc, char **argv) includeDirs.push_back(file.GetSrcDir()); for (auto incbin : file.GetIncbins()) { - // Don't include incbins starting with baserom, as they might not be necessary if another variant is being built. - if (incbin.rfind("baserom", 0) != 0) { - dependencies.insert(incbin); - } + dependencies.insert(incbin); } for (auto include : file.GetIncludes()) { From ae2d83a1aeab350088e4ecafdd45e457ae6aaf7c Mon Sep 17 00:00:00 2001 From: octorock <79596758+octorock@users.noreply.github.com> Date: Wed, 23 Jun 2021 17:35:03 +0200 Subject: [PATCH 10/11] Add EU translations using tmc_strings --- Makefile | 5 + data/data_08108E6C.s | 22 +- data/data_08132B30.s | 1 - data/strings.s | 20 +- translations/English.json | 3855 +++++++++++++++++++++++++++++++++++++ translations/French.json | 3855 +++++++++++++++++++++++++++++++++++++ translations/German.json | 3855 +++++++++++++++++++++++++++++++++++++ translations/Italian.json | 3855 +++++++++++++++++++++++++++++++++++++ translations/Spanish.json | 3855 +++++++++++++++++++++++++++++++++++++ 9 files changed, 19301 insertions(+), 22 deletions(-) create mode 100644 translations/English.json create mode 100644 translations/French.json create mode 100644 translations/German.json create mode 100644 translations/Italian.json create mode 100644 translations/Spanish.json diff --git a/Makefile b/Makefile index fde52c3b..5a7b00c4 100644 --- a/Makefile +++ b/Makefile @@ -190,6 +190,11 @@ sound/%.bin: sound/%.aif ; $(AIF) $< $@ sound/songs/%.s: sound/songs/%.mid cd $(@D) && ../../$(MID) $(