mirror of
https://github.com/pret/pokeruby.git
synced 2026-10-02 06:48:23 -05:00
through sub_80C34AC
This commit is contained in:
@@ -5,126 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_80C33DC
|
||||
sub_80C33DC: @ 80C33DC
|
||||
push {r4-r6,lr}
|
||||
sub sp, 0x20
|
||||
mov r1, sp
|
||||
ldr r0, _080C3498 @ =gSpriteTemplate_83D174C
|
||||
ldm r0!, {r2-r4}
|
||||
stm r1!, {r2-r4}
|
||||
ldm r0!, {r2-r4}
|
||||
stm r1!, {r2-r4}
|
||||
add r5, sp, 0x18
|
||||
ldr r6, _080C349C @ =gUnknown_083D1764
|
||||
movs r4, 0x7
|
||||
_080C33F2:
|
||||
adds r0, r6, 0
|
||||
bl LoadSpriteSheet
|
||||
adds r6, 0x8
|
||||
subs r4, 0x1
|
||||
cmp r4, 0
|
||||
bge _080C33F2
|
||||
ldr r0, _080C34A0 @ =gUnknown_083D17A4
|
||||
bl LoadSpritePalette
|
||||
movs r4, 0
|
||||
mov r6, sp
|
||||
_080C340A:
|
||||
mov r0, sp
|
||||
movs r1, 0x88
|
||||
lsls r1, 1
|
||||
movs r2, 0x90
|
||||
movs r3, 0xA
|
||||
bl CreateSprite
|
||||
adds r1, r5, r4
|
||||
strb r0, [r1]
|
||||
ldrh r0, [r6]
|
||||
adds r0, 0x1
|
||||
strh r0, [r6]
|
||||
adds r4, 0x1
|
||||
cmp r4, 0x7
|
||||
ble _080C340A
|
||||
ldr r2, _080C34A4 @ =gSprites
|
||||
ldrb r1, [r5]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldrb r1, [r5, 0x1]
|
||||
movs r3, 0
|
||||
strh r1, [r0, 0x2E]
|
||||
ldrb r1, [r5]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldrb r1, [r5, 0x2]
|
||||
strh r1, [r0, 0x30]
|
||||
ldrb r1, [r5]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldrb r1, [r5, 0x3]
|
||||
strh r1, [r0, 0x32]
|
||||
ldrb r1, [r5, 0x4]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldrb r1, [r5, 0x5]
|
||||
strh r1, [r0, 0x2E]
|
||||
ldrb r1, [r5, 0x4]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldrb r1, [r5, 0x6]
|
||||
strh r1, [r0, 0x30]
|
||||
ldrb r1, [r5, 0x4]
|
||||
lsls r0, r1, 4
|
||||
adds r0, r1
|
||||
lsls r0, 2
|
||||
adds r0, r2
|
||||
ldrb r1, [r5, 0x7]
|
||||
strh r1, [r0, 0x32]
|
||||
ldr r1, _080C34A8 @ =gSharedMem + 0x18000
|
||||
ldrb r0, [r5]
|
||||
strb r0, [r1]
|
||||
strb r3, [r1, 0x4]
|
||||
ldrb r0, [r5, 0x4]
|
||||
strb r0, [r1, 0x1]
|
||||
bl sub_80C3764
|
||||
add sp, 0x20
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080C3498: .4byte gSpriteTemplate_83D174C
|
||||
_080C349C: .4byte gUnknown_083D1764
|
||||
_080C34A0: .4byte gUnknown_083D17A4
|
||||
_080C34A4: .4byte gSprites
|
||||
_080C34A8: .4byte gSharedMem + 0x18000
|
||||
thumb_func_end sub_80C33DC
|
||||
|
||||
thumb_func_start sub_80C34AC
|
||||
sub_80C34AC: @ 80C34AC
|
||||
push {lr}
|
||||
bl StringLength
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
lsls r1, r0, 1
|
||||
adds r1, r0
|
||||
lsls r1, 25
|
||||
lsrs r1, 25
|
||||
movs r0, 0x70
|
||||
subs r0, r1
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_80C34AC
|
||||
|
||||
thumb_func_start sub_80C34CC
|
||||
sub_80C34CC: @ 80C34CC
|
||||
push {r4-r6,lr}
|
||||
|
||||
@@ -38,17 +38,17 @@
|
||||
|
||||
struct UnkEwramStruct18000 {
|
||||
u8 unk_00;
|
||||
u8 filler_01[1];
|
||||
u8 unk_01;
|
||||
u8 unk_02;
|
||||
u8 unk_03;
|
||||
u8 unk_04;
|
||||
u8 unk_05;
|
||||
u8 unk_06;
|
||||
u8 filler_07[1];
|
||||
u8 unk_07;
|
||||
u8 unk_08;
|
||||
u8 unk_09;
|
||||
u8 unk_0a;
|
||||
u8 filler_0b[9];
|
||||
s16 unk_0c[4];
|
||||
u8 unk_14;
|
||||
};
|
||||
|
||||
@@ -1215,3 +1215,40 @@ void sub_80C3158(const u8 * string, u8 spriteId)
|
||||
"_080C33D8: .4byte REG_BG0CNT");
|
||||
}
|
||||
#endif //NONMATCHING
|
||||
|
||||
void sub_80C33DC(void)
|
||||
{
|
||||
int i;
|
||||
struct SpriteTemplate template;
|
||||
u8 spriteIds[8];
|
||||
|
||||
template = gSpriteTemplate_83D174C;
|
||||
for (i = 0; i <8; i++)
|
||||
LoadSpriteSheet(&gUnknown_083D1764[i]);
|
||||
|
||||
LoadSpritePalette(&gUnknown_083D17A4);
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
spriteIds[i] = CreateSprite(&template, 272, 144, 10);
|
||||
template.tileTag++;
|
||||
}
|
||||
|
||||
gSprites[spriteIds[0]].data[0] = spriteIds[1];
|
||||
gSprites[spriteIds[0]].data[1] = spriteIds[2];
|
||||
gSprites[spriteIds[0]].data[2] = spriteIds[3];
|
||||
|
||||
gSprites[spriteIds[4]].data[0] = spriteIds[5];
|
||||
gSprites[spriteIds[4]].data[1] = spriteIds[6];
|
||||
gSprites[spriteIds[4]].data[2] = spriteIds[7];
|
||||
|
||||
eContestLink80C2020Struct2018000.unk_00 = spriteIds[0];
|
||||
eContestLink80C2020Struct2018000.unk_04 = 0;
|
||||
eContestLink80C2020Struct2018000.unk_01 = spriteIds[4];
|
||||
sub_80C3764();
|
||||
}
|
||||
|
||||
u16 sub_80C34AC(const u8 * string)
|
||||
{
|
||||
u8 width = (StringLength(string) * 6);
|
||||
return 0x70 - (width / 2);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user