Join two sections of tv.c

This commit is contained in:
PikalaxALT
2017-05-19 10:02:04 -04:00
parent acc973b882
commit 8e1e27167d
3 changed files with 46 additions and 177 deletions

148
asm/tv.s
View File

@@ -1613,154 +1613,6 @@ _080BE474: .4byte gSaveBlock2
.section .text_80BE8EC
thumb_func_start sub_80BEB20
sub_80BEB20: @ 80BEB20
push {r4-r6,lr}
ldr r0, _080BEBAC @ =0x00000804
bl FlagGet
lsls r0, 24
cmp r0, 0
beq _080BEBA6
ldr r6, _080BEBB0 @ =gSaveBlock1 + 0x2ABC
adds r0, r6, 0
bl sub_80BEBC8
ldr r5, _080BEBB4 @ =gUnknown_03005D38
strb r0, [r5]
lsls r0, 24
asrs r0, 24
movs r1, 0x1
negs r1, r1
cmp r0, r1
beq _080BEBA6
ldr r0, _080BEBB8 @ =0x0000028f
bl sub_80BF77C
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080BEBA6
bl Random
lsls r0, 16
lsrs r0, 16
movs r1, 0x3
bl __umodsi3
adds r0, 0x1
lsls r0, 16
lsrs r4, r0, 16
lsls r0, r4, 24
lsrs r0, 24
bl sub_80BEE48
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080BEBA6
movs r0, 0
ldrsb r0, [r5, r0]
lsls r0, 2
ldr r1, _080BEBBC @ =0xffffd544
adds r2, r6, r1
adds r0, r6, r0
strb r4, [r0]
movs r0, 0
ldrsb r0, [r5, r0]
lsls r0, 2
adds r0, r2
ldr r1, _080BEBC0 @ =0x00002abe
adds r0, r1
movs r1, 0x4
strh r1, [r0]
movs r0, 0
ldrsb r0, [r5, r0]
lsls r0, 2
adds r0, r2
ldr r1, _080BEBC4 @ =0x00002abd
adds r0, r1
movs r1, 0x1
strb r1, [r0]
_080BEBA6:
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_080BEBAC: .4byte 0x00000804
_080BEBB0: .4byte gSaveBlock1 + 0x2ABC
_080BEBB4: .4byte gUnknown_03005D38
_080BEBB8: .4byte 0x0000028f
_080BEBBC: .4byte 0xffffd544
_080BEBC0: .4byte 0x00002abe
_080BEBC4: .4byte 0x00002abd
thumb_func_end sub_80BEB20
thumb_func_start sub_80BEBC8
sub_80BEBC8: @ 80BEBC8
push {lr}
adds r2, r0, 0
movs r1, 0
_080BEBCE:
lsls r0, r1, 24
asrs r1, r0, 24
lsls r0, r1, 2
adds r0, r2
ldrb r0, [r0]
cmp r0, 0
bne _080BEBE0
adds r0, r1, 0
b _080BEBF0
_080BEBE0:
adds r0, r1, 0x1
lsls r0, 24
lsrs r1, r0, 24
asrs r0, 24
cmp r0, 0xF
ble _080BEBCE
movs r0, 0x1
negs r0, r0
_080BEBF0:
pop {r1}
bx r1
thumb_func_end sub_80BEBC8
thumb_func_start sub_80BEBF4
sub_80BEBF4: @ 80BEBF4
push {r4,lr}
movs r4, 0
_080BEBF8:
adds r0, r4, 0
bl sub_80BEC10
adds r0, r4, 0x1
lsls r0, 24
lsrs r4, r0, 24
cmp r4, 0xF
bls _080BEBF8
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_80BEBF4
thumb_func_start sub_80BEC10
sub_80BEC10: @ 80BEC10
lsls r0, 24
ldr r1, _080BEC30 @ =gSaveBlock1
lsrs r0, 22
adds r0, r1
ldr r2, _080BEC34 @ =0x00002abc
adds r1, r0, r2
movs r2, 0
strb r2, [r1]
ldr r3, _080BEC38 @ =0x00002abd
adds r1, r0, r3
strb r2, [r1]
ldr r1, _080BEC3C @ =0x00002abe
adds r0, r1
strh r2, [r0]
bx lr
.align 2, 0
_080BEC30: .4byte gSaveBlock1
_080BEC34: .4byte 0x00002abc
_080BEC38: .4byte 0x00002abd
_080BEC3C: .4byte 0x00002abe
thumb_func_end sub_80BEC10
.section .text_80BF544
thumb_func_start sub_80BFF68
sub_80BFF68: @ 80BFF68

View File

@@ -180,8 +180,6 @@ SECTIONS {
asm/tv.o(.text);
src/tv.o(.text_a);
asm/tv.o(.text_80BE8EC);
src/tv.o(.text_b);
asm/tv.o(.text_80BF544);
src/tv.o(.text_c);
asm/tv.o(.text_80C1C5C);
src/tv.o(.text_d);

View File

@@ -439,38 +439,57 @@ void sub_80BEA88(void)
}
}
// void sub_80BEB20(void)
// {
// struct UnknownSaveStruct2ABC *unk_2abc;
// u16 rval16;
// u16 val;
// unk_2abc = &gSaveBlock1.unknown_2ABC;
// TVShow *tvShow;
// if (FlagGet(SYS_GAME_CLEAR) != 0)
// {
// gUnknown_03005D38.var0 = sub_80BEBC8(unk_2abc);
// if (gUnknown_03005D38.var0 != -1 && sub_80BF77C(0x28f) != 1)
// {
// rval16 = Random();
// val = (rval16 % 3) + 1;
// if (sub_80BEE48(val) != 1)
// {
// tvShow = &gSaveBlock1.tvShows.shows[gUnknown_03005D38.var0];
// unk_2abc[gUnknown_03005D38.var0][0] = val;
// to do
// }
// }
// }
// }
asm(".section .text_b");
void sub_80BF6D8(void);
int sub_80BEBC8(struct UnknownSaveStruct2ABC *arg0);
void sub_80BEC10(u8);
void sub_80BF588(TVShow tvShows[]);
void sub_80BF6D8(void);
bool8 sub_80BF77C(u16);
bool8 sub_80BEE48(u8);
bool8 IsPriceDiscounted(u8);
void sub_80BEB20(void) {
u16 rval;
struct SaveBlock1 *save;
struct UnknownSaveStruct2ABC *unk2abc;
if (FlagGet(SYS_GAME_CLEAR) != 0) {
unk2abc = gSaveBlock1.unknown_2ABC;
gUnknown_03005D38.var0 = sub_80BEBC8(unk2abc);
if (gUnknown_03005D38.var0 != -1 && sub_80BF77C(0x28f) != 1) {
rval = (Random() % 3) + 1;
if (sub_80BEE48(rval) != 1) {
save = &gSaveBlock1;
save->unknown_2ABC[gUnknown_03005D38.var0].val0 = rval;
save->unknown_2ABC[gUnknown_03005D38.var0].val2 = 4;
save->unknown_2ABC[gUnknown_03005D38.var0].val1 = 1;
}
}
}
}
int sub_80BEBC8(struct UnknownSaveStruct2ABC *arg0) {
s8 i;
for (i=0; i<16; i++) {
if (arg0[i].val0 == 0) {
return i;
}
}
return -1;
}
void sub_80BEBF4(void) {
u8 i;
for (i=0; i<16; i++) {
sub_80BEC10(i);
}
}
void sub_80BEC10(u8 arg0) {
gSaveBlock1.unknown_2ABC[arg0].val0 = 0;
gSaveBlock1.unknown_2ABC[arg0].val1 = 0;
gSaveBlock1.unknown_2ABC[arg0].val2 = 0;
}
void sub_80BEC40(void) {
u8 i, j;
for (i = 0; i < 15; i++) {