mirror of https://github.com/zeldaret/tmc.git
Match asm/non_matching/postman/sub_08060700.inc
This commit is contained in:
parent
b235f9ae3e
commit
eae5cb6521
|
@ -1,51 +0,0 @@
|
||||||
.include "asm/macros.inc"
|
|
||||||
|
|
||||||
.include "constants/constants.inc"
|
|
||||||
|
|
||||||
.syntax unified
|
|
||||||
|
|
||||||
.text
|
|
||||||
|
|
||||||
push {r4, r5, lr}
|
|
||||||
ldr r3, _0806074C @ =gUnk_0810A918
|
|
||||||
adds r2, r0, #0
|
|
||||||
adds r2, #0x68
|
|
||||||
ldrb r2, [r2]
|
|
||||||
lsls r2, r2, #0x18
|
|
||||||
asrs r2, r2, #0x18
|
|
||||||
lsls r2, r2, #2
|
|
||||||
adds r2, r2, r3
|
|
||||||
ldr r2, [r2]
|
|
||||||
adds r3, r0, #0
|
|
||||||
adds r3, #0x69
|
|
||||||
ldrb r3, [r3]
|
|
||||||
lsls r3, r3, #0x18
|
|
||||||
asrs r3, r3, #0x18
|
|
||||||
adds r2, r2, r3
|
|
||||||
movs r3, #0
|
|
||||||
ldrsb r3, [r2, r3]
|
|
||||||
lsls r3, r3, #2
|
|
||||||
ldr r2, _08060750 @ =gUnk_0810A66C
|
|
||||||
adds r3, r3, r2
|
|
||||||
ldr r4, _08060754 @ =gRoomControls
|
|
||||||
movs r5, #0
|
|
||||||
ldrsh r2, [r3, r5]
|
|
||||||
ldrh r5, [r4, #6]
|
|
||||||
adds r2, r2, r5
|
|
||||||
movs r5, #2
|
|
||||||
ldrsh r3, [r3, r5]
|
|
||||||
ldrh r4, [r4, #8]
|
|
||||||
adds r3, r3, r4
|
|
||||||
bl sub_0807DEDC
|
|
||||||
ldr r2, _08060758 @ =gUnk_02033280
|
|
||||||
ldrb r1, [r2, #7]
|
|
||||||
movs r0, #1
|
|
||||||
orrs r0, r1
|
|
||||||
strb r0, [r2, #7]
|
|
||||||
pop {r4, r5, pc}
|
|
||||||
.align 2, 0
|
|
||||||
_0806074C: .4byte gUnk_0810A918
|
|
||||||
_08060750: .4byte gUnk_0810A66C
|
|
||||||
_08060754: .4byte gRoomControls
|
|
||||||
_08060758: .4byte gUnk_02033280
|
|
||||||
.syntax divided
|
|
|
@ -4,6 +4,7 @@
|
||||||
#include "npc.h"
|
#include "npc.h"
|
||||||
#include "textbox.h"
|
#include "textbox.h"
|
||||||
#include "link.h"
|
#include "link.h"
|
||||||
|
#include "room.h"
|
||||||
#include "structures.h"
|
#include "structures.h"
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
@ -34,10 +35,16 @@ extern void sub_0800451C(Entity*);
|
||||||
extern void sub_08078784(Entity*, u32);
|
extern void sub_08078784(Entity*, u32);
|
||||||
extern void sub_0807DEDC(Entity*, u32, u32, u32);
|
extern void sub_0807DEDC(Entity*, u32, u32, u32);
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
s16 x;
|
||||||
|
s16 y;
|
||||||
|
} Coords16;
|
||||||
|
|
||||||
|
extern Coords16 gUnk_0810A66C[];
|
||||||
|
extern s8* gUnk_0810A918[];
|
||||||
|
|
||||||
extern void (*const gUnk_0810AA24[])(Entity*);
|
extern void (*const gUnk_0810AA24[])(Entity*);
|
||||||
extern u32 gUnk_0810AA30[];
|
extern u32 gUnk_0810AA30[];
|
||||||
extern u32** gUnk_0810A66C;
|
|
||||||
extern u32 gUnk_0810A918[];
|
|
||||||
extern struct_02033280 gUnk_02033280;
|
extern struct_02033280 gUnk_02033280;
|
||||||
|
|
||||||
void Postman(Entity* this) {
|
void Postman(Entity* this) {
|
||||||
|
@ -208,21 +215,18 @@ void sub_080606D8(Entity* this)
|
||||||
ShowNPCDialogue(this, &gUnk_0810AA30[iVar1 * 2]);
|
ShowNPCDialogue(this, &gUnk_0810AA30[iVar1 * 2]);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0
|
void sub_08060700(Entity *entity, u32 arg1)
|
||||||
void sub_08060700(Entity *arg0, u32 arg1)
|
|
||||||
{
|
{
|
||||||
sub_0807DEDC(arg0,arg1,
|
s8* var0 = gUnk_0810A918[(s8)entity->field_0x68.HALF.LO];
|
||||||
gUnk_0810A918[gUnk_0810A66C[arg0->field_0x68.HALF.HI][arg0->field_0x68.HALF.LO] * 4 + gRoomControls.roomOriginX],
|
Coords16* coords = &gUnk_0810A66C[var0[(s8)entity->field_0x68.HALF.HI]];
|
||||||
gUnk_0810A918[gUnk_0810A66C[arg0->field_0x68.HALF.HI][arg0->field_0x68.HALF.LO] * 4 + gRoomControls.roomOriginY + 2]);
|
u32 x = coords->x + gRoomControls.roomOriginX;
|
||||||
gUnk_02033280.unk |= 1;
|
u32 y = coords->y + gRoomControls.roomOriginY;
|
||||||
}
|
sub_0807DEDC(entity, arg1, x, y);
|
||||||
#endif
|
gUnk_02033280.unk |= 1;
|
||||||
NAKED void sub_08060700(Entity *arg0, u32 arg1) {
|
|
||||||
asm(".include \"asm/non_matching/postman/sub_08060700.inc\"");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_0806075C(Entity *this)
|
void sub_0806075C(Entity *this)
|
||||||
{
|
{
|
||||||
this->field_0x68.HALF.LO = 0xb;
|
this->field_0x68.HALF.LO = 0xb;
|
||||||
this->field_0x68.HALF.HI = 0xff;
|
this->field_0x68.HALF.HI = 0xff;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue