mirror of https://github.com/nmlgc/ReC98.git
33 lines
718 B
C++
33 lines
718 B
C++
#if (BINARY == 'L')
|
|
#define recreated
|
|
#define loaded
|
|
void pascal near scoredat_load_and_decode(rank_t rank)
|
|
#else
|
|
#define recreated true
|
|
#define loaded false
|
|
bool16 pascal near scoredat_load_and_decode(rank_t rank)
|
|
#endif
|
|
{
|
|
if(!file_exist(SCOREDAT_FN)) {
|
|
// Unnecessary, since scoredat_recreate() would also create the file?
|
|
file_create(SCOREDAT_FN);
|
|
file_close();
|
|
|
|
scoredat_recreate();
|
|
return recreated;
|
|
}
|
|
file_ropen(SCOREDAT_FN);
|
|
file_seek((rank * sizeof(scoredat_section_t)), SEEK_SET);
|
|
file_read(&hi, sizeof(scoredat_section_t));
|
|
file_close();
|
|
scoredat_decode();
|
|
if(scoredat_sum_invalid()) {
|
|
scoredat_recreate();
|
|
return recreated;
|
|
}
|
|
return loaded;
|
|
|
|
#undef recreated
|
|
#undef loaded
|
|
}
|