Mario Kart 64
Loading...
Searching...
No Matches
save.h
Go to the documentation of this file.
1#ifndef SAVE_H
2#define SAVE_H
3
4#include <PR/os.h>
5#include <common_structs.h>
6
7/* define symbols */
8
9#define CONTROLLER_1 0
10#define CONTROLLER_2 1
11#define CONTROLLER_3 2
12#define CONTROLLER_4 3
13
14#define PFS_NO_ERROR 0 // controller pak no error return
15#define PFS_NO_PAK_INSERTED 1 // no pak pressent or wrong device inserted into the controller
16#define PFS_PAK_BAD_READ 2 // controller pak error while data transfer
17#define PFS_FILE_OVERFLOW 4 // too many files written to in the controller pak
18#define PFS_INVALID_DATA -1 // bad arguments, game note does not exist, osPfsInit was not called.
19// controller pak test functions
20#define PFS_NUM_FILES_ERROR -2
21#define PFS_FREE_BLOCKS_ERROR -3
22#define PFS_PAK_STATE_OK -4
23
24#define NO_PAK 0
25#define PAK 1
26#define PAK_NOT_INSERTED -1
27
28/* Function Prototypes */
29
30void func_800B45E0(s32);
32void func_800B46D0(void);
33void func_800B4728(s32);
41void load_save_data(void);
42void func_800B4A9C(s32);
43void validate_save_data(void);
44void populate_time_trial_record(u8* timeTrialRecord, u32 time, s32 characterId);
48s32 func_800B4F2C(void);
52void func_800B536C(s32);
53void func_800B5404(s32, s32);
58s32 func_800B555C(void);
59s32 func_800B557C(void);
60void func_800B559C(s32);
72s32 func_800B5F30(void);
73s32 func_800B6014(void);
79void func_800B6708(void);
80void func_800B6798(void);
84s32 func_800B6A68(void);
85
86/* data */
87// these might not be in this file, but for now...
88
89extern u32* D_800DC714;
90
91extern u16 gCompanyCode;
92extern u32 gGameCode; // osPfs gamecode
93extern s8 gControllerPak1State; // Current state of Controller Pak 1
94
95extern s8 sControllerPak2State; // Current state of the Controller Pak 2
96extern const u8 D_800F2E60[];
97extern const u8 gGameName[];
98extern const u8 gExtCode[];
99extern u16 D_80162DD6;
100extern s32 D_80162DE0;
101extern s32 D_80162DFC;
102extern OSPfs gControllerPak1FileHandle;
103extern OSPfs gControllerPak2FileHandle;
104extern OSPfsState pfsState[16];
105extern s32 pfsError[16];
108extern s8 D_8018EDE5;
109extern s8 D_8018EDE6;
110extern s8 D_8018EDE7;
111
112#endif /* CODE_800B045E0_H */
s32 func_800B639C(s32)
Definition save.c:818
s32 func_800B65F4(s32, s32)
Definition save.c:899
s32 func_800B5B2C(s32)
const u8 gExtCode[]
Definition save.c:34
void func_800B559C(s32)
Definition save.c:445
s32 gControllerPak1MaxWriteableFiles
Definition code_80091750.c:85
void update_save_data_backup(void)
Definition save.c:524
s32 func_800B5020(u32, s32)
Definition save.c:276
u16 D_80162DD6
Definition staff_ghosts.c:48
u8 compute_save_data_checksum_backup_1(void)
Definition save.c:537
void populate_time_trial_record(u8 *timeTrialRecord, u32 time, s32 characterId)
Definition save.c:223
s8 gControllerPak1State
Definition save.c:23
void write_save_data_grand_prix_points_and_sound_mode(void)
Definition save.c:46
u32 gGameCode
Definition save.c:22
void func_800B6798(void)
Definition save.c:941
s32 func_800B557C(void)
Definition save.c:441
s32 func_800B6014(void)
Definition save.c:723
s32 D_80162DFC
Definition staff_ghosts.c:58
s32 check_for_controller_pak(s32)
Definition save.c:566
s32 func_800B6178(s32)
Definition save.c:760
void func_800B4A9C(s32)
Definition save.c:149
void func_800B6708(void)
Definition save.c:928
s32 func_800B578C(s32)
s32 pfsError[16]
Definition code_80091750.c:83
s32 func_800B6088(s32)
Definition save.c:739
u8 compute_save_data_checksum_1(void)
Definition save.c:115
u8 func_800B68F4(s32)
s32 controller_pak_2_status(void)
Definition save.c:646
u8 func_800B54C0(s32, s32)
Definition save.c:399
u32 * D_800DC714
Definition staff_ghosts.c:63
s32 func_800B69BC(s32)
Definition save.c:986
s32 func_800B5888(s32)
Definition save.c:504
void load_save_data(void)
Definition save.c:132
s8 D_8018EDE5
u8 func_800B5508(s32, s32, s32)
Definition save.c:417
s32 func_800B64EC(s32)
Definition save.c:864
void func_800B536C(s32)
Definition save.c:360
s8 D_8018EDE7
u8 func_800B60E8(s32)
Definition save.c:749
void reset_save_data_grand_prix_points_and_sound_mode(void)
Definition save.c:86
void validate_save_data(void)
Definition save.c:196
u32 func_800B4DF4(u8 *)
Definition save.c:237
s32 D_80162DE0
Definition staff_ghosts.c:51
s32 func_800B63F0(s32)
Definition save.c:828
u8 func_800B6828(s32)
Definition save.c:960
s32 func_800B5530(s32)
Definition save.c:428
s8 D_8018EDE6
s32 func_800B4E24(s32)
Definition save.c:247
u16 gCompanyCode
Definition save.c:21
u8 func_800B54EC(s32, s32)
Definition save.c:404
u8 compute_save_data_checksum_2(void)
Definition save.c:127
s32 controller_pak_1_status(void)
Definition save.c:584
OSPfs gControllerPak2FileHandle
Definition code_80091750.c:81
s32 func_800B58C4(s32)
Definition save.c:509
s32 validate_save_data_checksum_backup(void)
Definition save.c:554
const u8 gGameName[]
Definition save.c:30
s32 func_800B5218(void)
s32 func_800B6A68(void)
Definition save.c:1002
u32 func_800B4EB4(s32, s32)
Definition save.c:255
OSPfsState pfsState[16]
Definition code_80091750.c:82
s8 sControllerPak2State
Definition save.c:24
void func_800B4728(s32)
Definition save.c:65
void func_800B46D0(void)
Definition save.c:53
s32 func_800B4FB0(s32)
Definition save.c:270
void func_800B5404(s32, s32)
Definition save.c:377
s32 func_800B6348(s32)
Definition save.c:808
u8 checksum_time_trial_records(s32)
Definition save.c:99
s32 func_800B4F2C(void)
Definition save.c:262
const u8 D_800F2E60[]
Definition save.c:28
s32 gControllerPak1NumFilesUsed
Definition code_80091750.c:84
s32 func_800B5F30(void)
Definition save.c:697
void func_800B45E0(s32)
Definition save.c:37
s32 func_800B555C(void)
Definition save.c:436
OSPfs gControllerPak1FileHandle
Definition code_80091750.c:80
u8 compute_save_data_checksum_backup_2(void)
Definition save.c:549
signed int s32
Definition ultratypes.h:15
unsigned int u32
Definition ultratypes.h:16
signed char s8
Definition ultratypes.h:11
unsigned short int u16
Definition ultratypes.h:14
unsigned char u8
Definition ultratypes.h:12