Starship/src/main/7D30.c

68 lines
1.8 KiB
C
Raw Normal View History

#include "global.h"
2023-10-06 15:57:30 +03:00
#ifdef DATA_IMPORT_PENDING
SaveFile D_80144F60;
SaveFile D_80145160;
#endif
s32 func_80007130(s32 arg0, u8* arg1) {
if (osEepromRead(&gSerialEventQueue, arg0, arg1)) {
(void) " インターフェース回路反応なし ()\n";
2023-10-06 16:39:19 +03:00
return -1;
}
(void) "EEPROM READ %02X: %02X %02X %02X %02X %02X %02X %02X %02X\n";
return 0;
2023-10-06 16:39:19 +03:00
}
2023-10-06 15:57:30 +03:00
s32 func_8000716C(s32 arg0, u8* arg1) {
if (osEepromWrite(&gSerialEventQueue, arg0, arg1)) {
(void) " インターフェース回路反応なし ()\n";
2023-10-07 13:58:32 +03:00
return -1;
}
func_800070C8(MSEC_TO_CYCLES(15));
(void) "EEPROM WRITE %02X: %02X %02X %02X %02X %02X %02X %02X %02X\n";
2023-10-07 13:58:32 +03:00
return 0;
}
2023-10-06 15:57:30 +03:00
s32 func_800071FC(SaveFile* arg0) {
s32 var_a2;
s32 i;
s32 j;
if (osEepromProbe(&gSerialEventQueue) != 1) {
(void) " が ありません\n";
return -1;
}
for (i = 0; i < EEPROM_MAXBLOCKS; i++) {
var_a2 = 0;
for (j = 0; j < EEPROM_BLOCK_SIZE; j++) {
if (D_80145160.raw[EEPROM_BLOCK_SIZE * i + j] != arg0->raw[EEPROM_BLOCK_SIZE * i + j]) {
D_80145160.raw[EEPROM_BLOCK_SIZE * i + j] = arg0->raw[EEPROM_BLOCK_SIZE * i + j];
var_a2 = 1;
}
}
if ((var_a2 == 1) && func_8000716C(i, &arg0->raw[EEPROM_BLOCK_SIZE * i])) {
return -1;
}
}
return 0;
}
2023-10-06 15:57:30 +03:00
s32 func_800072E0(SaveFile* arg0) {
s32 i;
if (osEepromProbe(&gSerialEventQueue) != 1) {
(void) " が ありません\n";
return -1;
}
for (i = 0; i < EEPROM_MAXBLOCKS; i++) {
if (func_80007130(i, &arg0->raw[EEPROM_BLOCK_SIZE * i]) != 0) {
return -1;
}
}
D_80145160 = *arg0;
return 0;
}