diff options
author | scnorton <scnorton@biociphers.org> | 2017-08-30 09:52:16 -0400 |
---|---|---|
committer | scnorton <scnorton@biociphers.org> | 2017-08-30 09:52:16 -0400 |
commit | c8ceacec344b229a56ec44bf1835345a7a7f5f54 (patch) | |
tree | d5ec27a7e7c85c4280ac2bcbbc7a7555279eeaf5 | |
parent | 7755869cd2b521cb0a608f5f71c8a272e81cb214 (diff) |
Through sub_8041960
-rw-r--r-- | asm/daycare.s | 84 | ||||
-rw-r--r-- | src/daycare.c | 29 |
2 files changed, 29 insertions, 84 deletions
diff --git a/asm/daycare.s b/asm/daycare.s index c30582c2e..55d068cd1 100644 --- a/asm/daycare.s +++ b/asm/daycare.s @@ -6,90 +6,6 @@ .text - thumb_func_start sub_804191C -sub_804191C: @ 804191C - push {r4,lr} - adds r4, r0, 0 - bl Random - movs r2, 0x80 - lsls r2, 8 - adds r1, r2, 0 - movs r2, 0x8C - lsls r2, 1 - adds r4, r2 - orrs r1, r0 - strh r1, [r4] - movs r0, 0x86 - bl FlagSet - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_804191C - - thumb_func_start sub_8041940 -sub_8041940: @ 8041940 - push {lr} - ldr r0, _0804194C @ =gSaveBlock1 + 0x2F9C - bl sub_80418F0 - pop {r0} - bx r0 - .align 2, 0 -_0804194C: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end sub_8041940 - - thumb_func_start sub_8041950 -sub_8041950: @ 8041950 - push {lr} - ldr r0, _0804195C @ =gSaveBlock1 + 0x2F9C - bl sub_804191C - pop {r0} - bx r0 - .align 2, 0 -_0804195C: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end sub_8041950 - - thumb_func_start sub_8041960 -sub_8041960: @ 8041960 - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r1, r4, r1 - movs r0, 0xFF - strb r0, [r1] - movs r2, 0 -_08041972: - mov r1, sp - adds r0, r1, r2 - adds r1, r4, r2 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x5 - ble _08041972 - movs r3, 0 - movs r2, 0 -_08041986: - mov r1, sp - adds r0, r1, r2 - ldrb r1, [r0] - adds r0, r1, 0 - cmp r0, 0xFF - beq _08041998 - adds r0, r4, r3 - strb r1, [r0] - adds r3, 0x1 -_08041998: - adds r2, 0x1 - cmp r2, 0x5 - ble _08041986 - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8041960 - thumb_func_start sub_80419A8 sub_80419A8: @ 80419A8 push {r4-r7,lr} diff --git a/src/daycare.c b/src/daycare.c index 8096904b0..922d1fd45 100644 --- a/src/daycare.c +++ b/src/daycare.c @@ -307,3 +307,32 @@ void sub_80418F0(struct DayCareData *dayCareData) dayCareData->unk_118 = (Random() % 0xfffe) + 1; FlagSet(0x86); } + +void sub_804191C(struct DayCareData *dayCareData) +{ + dayCareData->unk_118 = Random() | 0x8000; + FlagSet(0x86); +} + +void sub_8041940(void) +{ + sub_80418F0(&gSaveBlock1.daycareData); +} + +void sub_8041950(void) +{ + sub_804191C(&gSaveBlock1.daycareData); +} + +void sub_8041960(u8 *data, u8 idx) +{ + int i, j; + u8 temp[6]; + data[idx] = 0xff; + for (i = 0; i < 6; i ++) + temp[i] = data[i]; + j = 0; + for (i = 0; i < 6; i ++) + if (temp[i] != 0xff) + data[j++] = temp[i]; +} |