diff --git a/src/game/game_0d4690.c b/src/game/game_0d4690.c index 6d8e765cd..029ab2d74 100644 --- a/src/game/game_0d4690.c +++ b/src/game/game_0d4690.c @@ -1292,6 +1292,36 @@ glabel func0f0d5690 /* f0d5754: 03e00008 */ jr $ra /* f0d5758: 27bd0128 */ addiu $sp,$sp,0x128 ); + +// Mismatch: Goal uses both v0 and v1 for src[i] and c, but in some weird way. +//void func0f0d5690(void *arg0, char *src) +//{ +// struct savebuffer buffer; +// bool done = false; +// s32 i; +// char c; +// s32 v1; +// +// func0f0d5484(&buffer, arg0, 10); +// +// for (i = 0; i < 10; i++) { +// if (!done) { +// c = src[i]; +// +// if (src[i] == '\0') { +// done = true; +// } else if (c == '\n') { +// done = true; +// } else { +// func0f0d5360(&buffer, c, 8, arg0); +// } +// } +// +// if (done) { +// func0f0d5360(&buffer, '\0', 8, arg0); +// } +// } +//} #endif GLOBAL_ASM( diff --git a/src/include/game/game_0d4690.h b/src/include/game/game_0d4690.h index e3b191f70..2139596f3 100644 --- a/src/include/game/game_0d4690.h +++ b/src/include/game/game_0d4690.h @@ -12,7 +12,7 @@ u32 func0f0d4a3c(void); u32 func0f0d4c80(void); u32 func0f0d4d0c(void); void savebufferWriteBits(struct savebuffer *buffer, u32 arg1, s32 arg2); -u32 func0f0d5360(void); +void func0f0d5360(struct savebuffer *buffer, s32 c, s32 len, void *arg3); u32 savebufferReadBits(struct savebuffer *buffer, s32 offset); void savebufferClear(struct savebuffer *buffer); void func0f0d5484(struct savebuffer *buffer, u8 *data, u8 len);