.include "asm/macros.inc" .include "overlay_80_02239AF8.inc" .include "global.inc" .text thumb_func_start ov80_02239AF8 ov80_02239AF8: ; 0x02239AF8 push {r4, r5, r6, r7, lr} sub sp, #0x1c add r6, r0, #0 add r0, sp, #0x20 ldrh r0, [r0, #0x10] add r7, r1, #0 add r5, r2, #0 str r3, [sp, #0x18] cmp r0, #4 blo _02239B10 bl GF_AssertFail _02239B10: add r1, sp, #0x20 ldrh r2, [r1, #0x10] mov r1, #0x34 ldr r0, _02239B78 ; =ov80_0223DA54 mul r1, r2 add r4, r0, r1 ldr r3, [r4, #0x14] mov r0, #1 str r0, [sp] str r0, [sp, #4] str r3, [sp, #8] add r0, r6, #0 add r1, r7, #0 add r2, r5, #0 bl SpriteRenderer_LoadCharResObjFromOpenNarc ldr r1, [r4, #0x18] mov r0, #0 str r5, [sp] str r1, [sp, #4] str r0, [sp, #8] mov r0, #1 str r0, [sp, #0xc] str r0, [sp, #0x10] str r1, [sp, #0x14] ldr r0, [sp, #0x18] mov r1, #2 add r2, r6, #0 add r3, r7, #0 bl sub_0200D68C ldr r3, [r4, #0x1c] mov r0, #1 str r0, [sp] str r3, [sp, #4] add r0, r6, #0 add r1, r7, #0 add r2, r5, #0 bl SpriteRenderer_LoadCellResObjFromOpenNarc ldr r3, [r4, #0x20] mov r0, #1 str r0, [sp] add r0, r6, #0 add r1, r7, #0 add r2, r5, #0 str r3, [sp, #4] bl SpriteRenderer_LoadAnimResObjFromOpenNarc add sp, #0x1c pop {r4, r5, r6, r7, pc} nop _02239B78: .word ov80_0223DA54 thumb_func_end ov80_02239AF8 thumb_func_start ov80_02239B7C ov80_02239B7C: ; 0x02239B7C push {r3, r4, r5, lr} add r4, r1, #0 add r5, r0, #0 cmp r4, #4 blo _02239B8A bl GF_AssertFail _02239B8A: mov r0, #0x34 ldr r1, _02239BB4 ; =ov80_0223DA54 mul r0, r4 add r4, r1, r0 ldr r1, [r4, #0x14] add r0, r5, #0 bl SpriteGfxHandler_UnloadCharObjById ldr r1, [r4, #0x18] add r0, r5, #0 bl SpriteGfxHandler_UnloadPlttObjById ldr r1, [r4, #0x1c] add r0, r5, #0 bl SpriteGfxHandler_UnloadCellObjById ldr r1, [r4, #0x20] add r0, r5, #0 bl SpriteGfxHandler_UnloadAnimObjById pop {r3, r4, r5, pc} .balign 4, 0 _02239BB4: .word ov80_0223DA54 thumb_func_end ov80_02239B7C thumb_func_start ov80_02239BB8 ov80_02239BB8: ; 0x02239BB8 push {r4, r5, r6, lr} add r4, r2, #0 add r5, r0, #0 add r6, r1, #0 cmp r4, #4 blo _02239BC8 bl GF_AssertFail _02239BC8: mov r2, #0x34 ldr r3, _02239BE4 ; =ov80_0223DA54 mul r2, r4 add r0, r5, #0 add r1, r6, #0 add r2, r3, r2 bl SpriteRenderer_LoadResourcesAndCreateSprite add r4, r0, #0 ldr r0, [r4] bl TickSpriteAnimation1Frame add r0, r4, #0 pop {r4, r5, r6, pc} .balign 4, 0 _02239BE4: .word ov80_0223DA54 thumb_func_end ov80_02239BB8 thumb_func_start ov80_02239BE8 ov80_02239BE8: ; 0x02239BE8 ldr r3, _02239BEC ; =sub_0200D9DC bx r3 .balign 4, 0 _02239BEC: .word sub_0200D9DC thumb_func_end ov80_02239BE8 .rodata ov80_0223DA54: ; 0x0223DA54 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00 .byte 0x23, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF .byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00 .byte 0x3C, 0x00, 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF .byte 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00 .byte 0x18, 0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x1A, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00 .byte 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 .byte 0x01, 0x00, 0x00, 0x00, 0x1B, 0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00, 0x1D, 0x00, 0x00, 0x00 .byte 0x1C, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00