mirror of https://github.com/zeldaret/tmc.git
upperInn OK
This commit is contained in:
parent
2123c91b9a
commit
25a3b49d4b
|
@ -1,96 +0,0 @@
|
||||||
.include "asm/macros.inc"
|
|
||||||
.include "constants/constants.inc"
|
|
||||||
|
|
||||||
.syntax unified
|
|
||||||
|
|
||||||
.text
|
|
||||||
|
|
||||||
thumb_func_start sub_0804B938
|
|
||||||
sub_0804B938: @ 0x0804B938
|
|
||||||
push {lr}
|
|
||||||
ldr r0, _0804B968 @ =gUnk_02002A40
|
|
||||||
ldrb r0, [r0, #8]
|
|
||||||
cmp r0, #3
|
|
||||||
bls _0804B9F2
|
|
||||||
movs r0, #0x2b
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
beq _0804B970
|
|
||||||
movs r0, #0x2f
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
bne _0804B984
|
|
||||||
movs r0, #0x30
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
bne _0804B9BC
|
|
||||||
ldr r0, _0804B96C @ =gUnk_080D6C64
|
|
||||||
bl LoadRoomEntityList
|
|
||||||
b _0804B9F2
|
|
||||||
.align 2, 0
|
|
||||||
_0804B968: .4byte gUnk_02002A40
|
|
||||||
_0804B96C: .4byte gUnk_080D6C64
|
|
||||||
_0804B970:
|
|
||||||
movs r0, #0x2c
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
beq _0804B9A8
|
|
||||||
movs r0, #0x2e
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
beq _0804B990
|
|
||||||
_0804B984:
|
|
||||||
ldr r0, _0804B98C @ =gUnk_080D6D04
|
|
||||||
bl LoadRoomEntityList
|
|
||||||
b _0804B9F2
|
|
||||||
.align 2, 0
|
|
||||||
_0804B98C: .4byte gUnk_080D6D04
|
|
||||||
_0804B990:
|
|
||||||
movs r0, #0x30
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
bne _0804B9D2
|
|
||||||
ldr r0, _0804B9A4 @ =gUnk_080D6C94
|
|
||||||
bl LoadRoomEntityList
|
|
||||||
b _0804B9F2
|
|
||||||
.align 2, 0
|
|
||||||
_0804B9A4: .4byte gUnk_080D6C94
|
|
||||||
_0804B9A8:
|
|
||||||
movs r0, #0x2d
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
beq _0804B9EC
|
|
||||||
movs r0, #0x2e
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
beq _0804B9C8
|
|
||||||
_0804B9BC:
|
|
||||||
ldr r0, _0804B9C4 @ =gUnk_080D6CE4
|
|
||||||
bl LoadRoomEntityList
|
|
||||||
b _0804B9F2
|
|
||||||
.align 2, 0
|
|
||||||
_0804B9C4: .4byte gUnk_080D6CE4
|
|
||||||
_0804B9C8:
|
|
||||||
movs r0, #0x2f
|
|
||||||
bl CheckGlobalFlag
|
|
||||||
cmp r0, #0
|
|
||||||
beq _0804B9E0
|
|
||||||
_0804B9D2:
|
|
||||||
ldr r0, _0804B9DC @ =gUnk_080D6CC4
|
|
||||||
bl LoadRoomEntityList
|
|
||||||
b _0804B9F2
|
|
||||||
.align 2, 0
|
|
||||||
_0804B9DC: .4byte gUnk_080D6CC4
|
|
||||||
_0804B9E0:
|
|
||||||
ldr r0, _0804B9E8 @ =gUnk_080D6C34
|
|
||||||
bl LoadRoomEntityList
|
|
||||||
b _0804B9F2
|
|
||||||
.align 2, 0
|
|
||||||
_0804B9E8: .4byte gUnk_080D6C34
|
|
||||||
_0804B9EC:
|
|
||||||
ldr r0, _0804B9F4 @ =gUnk_080D6BF4
|
|
||||||
bl LoadRoomEntityList
|
|
||||||
_0804B9F2:
|
|
||||||
pop {pc}
|
|
||||||
.align 2, 0
|
|
||||||
_0804B9F4: .4byte gUnk_080D6BF4
|
|
|
@ -499,25 +499,25 @@ gUnk_080D6BC4:: @ 080D6BC4
|
||||||
gUnk_080D6BE4:: @ 080D6BE4
|
gUnk_080D6BE4:: @ 080D6BE4
|
||||||
.incbin "baserom.gba", 0x0D6BE4, 0x0000010
|
.incbin "baserom.gba", 0x0D6BE4, 0x0000010
|
||||||
|
|
||||||
gUnk_080D6BF4:: @ 080D6BF4
|
UpperInn_Oracles:: @ 080D6BF4
|
||||||
.incbin "baserom.gba", 0x0D6BF4, 0x0000040
|
.incbin "baserom.gba", 0x0D6BF4, 0x0000040
|
||||||
|
|
||||||
gUnk_080D6C34:: @ 080D6C34
|
UpperInn_NoFarore:: @ 080D6C34
|
||||||
.incbin "baserom.gba", 0x0D6C34, 0x0000030
|
.incbin "baserom.gba", 0x0D6C34, 0x0000030
|
||||||
|
|
||||||
gUnk_080D6C64:: @ 080D6C64
|
UpperInn_NoDin:: @ 080D6C64
|
||||||
.incbin "baserom.gba", 0x0D6C64, 0x0000030
|
.incbin "baserom.gba", 0x0D6C64, 0x0000030
|
||||||
|
|
||||||
gUnk_080D6C94:: @ 080D6C94
|
UpperInn_NoNayru:: @ 080D6C94
|
||||||
.incbin "baserom.gba", 0x0D6C94, 0x0000030
|
.incbin "baserom.gba", 0x0D6C94, 0x0000030
|
||||||
|
|
||||||
gUnk_080D6CC4:: @ 080D6CC4
|
UpperInn_Din:: @ 080D6CC4
|
||||||
.incbin "baserom.gba", 0x0D6CC4, 0x0000020
|
.incbin "baserom.gba", 0x0D6CC4, 0x0000020
|
||||||
|
|
||||||
gUnk_080D6CE4:: @ 080D6CE4
|
UpperInn_Nayru:: @ 080D6CE4
|
||||||
.incbin "baserom.gba", 0x0D6CE4, 0x0000020
|
.incbin "baserom.gba", 0x0D6CE4, 0x0000020
|
||||||
|
|
||||||
gUnk_080D6D04:: @ 080D6D04
|
UpperInn_Farore:: @ 080D6D04
|
||||||
.incbin "baserom.gba", 0x0D6D04, 0x0000020
|
.incbin "baserom.gba", 0x0D6D04, 0x0000020
|
||||||
|
|
||||||
gUnk_080D6D24:: @ 080D6D24
|
gUnk_080D6D24:: @ 080D6D24
|
||||||
|
|
|
@ -442,7 +442,6 @@ SECTIONS {
|
||||||
src/loadRoom.o(.text);
|
src/loadRoom.o(.text);
|
||||||
asm/code_0804B058.o(.text);
|
asm/code_0804B058.o(.text);
|
||||||
src/room.o(.text);
|
src/room.o(.text);
|
||||||
asm/upperInn.o(.text);
|
|
||||||
asm/code_0804B9F8.o(.text);
|
asm/code_0804B9F8.o(.text);
|
||||||
src/sub_08050008.o(.text);
|
src/sub_08050008.o(.text);
|
||||||
src/sub_08050024.o(.text);
|
src/sub_08050024.o(.text);
|
||||||
|
|
67
src/room.c
67
src/room.c
|
@ -398,8 +398,7 @@ u32 sub_0804B7A8(void) {
|
||||||
|
|
||||||
extern void* gUnk_08010A5C[];
|
extern void* gUnk_08010A5C[];
|
||||||
|
|
||||||
void sub_0804B7E8(void)
|
void sub_0804B7E8(void) {
|
||||||
{
|
|
||||||
if (CheckLocalFlag(0x91)) {
|
if (CheckLocalFlag(0x91)) {
|
||||||
ClearLocalFlag(0x91);
|
ClearLocalFlag(0x91);
|
||||||
DoFade(5, 0x100);
|
DoFade(5, 0x100);
|
||||||
|
@ -411,15 +410,13 @@ void sub_0804B7E8(void)
|
||||||
|
|
||||||
extern u32 gUnk_080D6B18[];
|
extern u32 gUnk_080D6B18[];
|
||||||
|
|
||||||
u32 sub_0804B82C(void)
|
u32 sub_0804B82C(void) {
|
||||||
{
|
|
||||||
u32 index;
|
u32 index;
|
||||||
|
|
||||||
if (CheckLocalFlag(0x91) != 0) {
|
if (CheckLocalFlag(0x91) != 0) {
|
||||||
index = Random() & 1;
|
index = Random() & 1;
|
||||||
ClearLocalFlag(2);
|
ClearLocalFlag(2);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
index = 0;
|
index = 0;
|
||||||
SetLocalFlag(2);
|
SetLocalFlag(2);
|
||||||
}
|
}
|
||||||
|
@ -427,8 +424,7 @@ u32 sub_0804B82C(void)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_0804B86C(void)
|
void sub_0804B86C(void) {
|
||||||
{
|
|
||||||
if (CheckLocalFlag(0x91) != 0) {
|
if (CheckLocalFlag(0x91) != 0) {
|
||||||
ClearLocalFlag(0x91);
|
ClearLocalFlag(0x91);
|
||||||
DoFade(5, 0x100);
|
DoFade(5, 0x100);
|
||||||
|
@ -440,15 +436,13 @@ void sub_0804B86C(void)
|
||||||
|
|
||||||
extern u32 gUnk_080D6BB8[];
|
extern u32 gUnk_080D6BB8[];
|
||||||
|
|
||||||
u32 sub_0804B8B0(void)
|
u32 sub_0804B8B0(void) {
|
||||||
{
|
|
||||||
s32 index;
|
s32 index;
|
||||||
|
|
||||||
if (CheckLocalFlag(0x91) != 0) {
|
if (CheckLocalFlag(0x91) != 0) {
|
||||||
index = (s32)Random() % 3;
|
index = (s32)Random() % 3;
|
||||||
ClearLocalFlag(3);
|
ClearLocalFlag(3);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
index = 0;
|
index = 0;
|
||||||
SetLocalFlag(3);
|
SetLocalFlag(3);
|
||||||
}
|
}
|
||||||
|
@ -458,8 +452,7 @@ u32 sub_0804B8B0(void)
|
||||||
|
|
||||||
extern void* gUnk_08010A5C[];
|
extern void* gUnk_08010A5C[];
|
||||||
|
|
||||||
void sub_0804B8F0(void)
|
void sub_0804B8F0(void) {
|
||||||
{
|
|
||||||
if (CheckLocalFlag(0x91)) {
|
if (CheckLocalFlag(0x91)) {
|
||||||
ClearLocalFlag(0x91);
|
ClearLocalFlag(0x91);
|
||||||
DoFade(5, 0x100);
|
DoFade(5, 0x100);
|
||||||
|
@ -472,3 +465,49 @@ void sub_0804B8F0(void)
|
||||||
u32 sub_0804B934() {
|
u32 sub_0804B934() {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern EntityData* UpperInn_Oracles;
|
||||||
|
extern EntityData* UpperInn_NoFarore;
|
||||||
|
extern EntityData* UpperInn_NoNayru;
|
||||||
|
extern EntityData* UpperInn_NoDin;
|
||||||
|
extern EntityData* UpperInn_Farore;
|
||||||
|
extern EntityData* UpperInn_Nayru;
|
||||||
|
extern EntityData* UpperInn_Din;
|
||||||
|
|
||||||
|
void sub_0804B938(void) {
|
||||||
|
int iVar1;
|
||||||
|
|
||||||
|
if (gUnk_02002A40.field_0x8 < 4) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (CheckGlobalFlag(0x2b)) {
|
||||||
|
if (!CheckGlobalFlag(0x2f)) {
|
||||||
|
if (!CheckGlobalFlag(0x30)) {
|
||||||
|
LoadRoomEntityList(&UpperInn_NoDin);
|
||||||
|
} else {
|
||||||
|
LoadRoomEntityList(&UpperInn_Nayru);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
LoadRoomEntityList(&UpperInn_Farore);
|
||||||
|
}
|
||||||
|
} else if (CheckGlobalFlag(0x2c)) {
|
||||||
|
if (CheckGlobalFlag(0x2e)) {
|
||||||
|
LoadRoomEntityList(&UpperInn_Farore);
|
||||||
|
} else if (!CheckGlobalFlag(0x30)) {
|
||||||
|
LoadRoomEntityList(&UpperInn_NoNayru);
|
||||||
|
} else {
|
||||||
|
LoadRoomEntityList(&UpperInn_Din);
|
||||||
|
}
|
||||||
|
} else if (CheckGlobalFlag(0x2d)) {
|
||||||
|
if (CheckGlobalFlag(0x2e)) {
|
||||||
|
LoadRoomEntityList(&UpperInn_Nayru);
|
||||||
|
} else if (CheckGlobalFlag(0x2f)) {
|
||||||
|
LoadRoomEntityList(&UpperInn_Din);
|
||||||
|
} else {
|
||||||
|
LoadRoomEntityList(&UpperInn_NoFarore);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
LoadRoomEntityList(&UpperInn_Oracles);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue