s32 save_config_file() { u8 config_path[512]; sprintf(config_path, "%s/%s", main_path, GPSP_CONFIG_FILENAME); FILE_OPEN(config_file, config_path, write); save_game_config_file(); if(FILE_CHECK_VALID(config_file)) { u32 file_options[23]; u32 i; file_options[0] = screen_scale; file_options[1] = screen_filter; file_options[2] = global_enable_audio; file_options[3] = audio_buffer_size_number; file_options[5] = global_enable_analog; file_options[6] = analog_sensitivity_level; for(i = 0; i < 16; i++) { file_options[7 + i] = gamepad_config_map[i]; } FILE_WRITE_ARRAY(config_file, file_options); FILE_CLOSE(config_file); return 0; } return -1; }
s32 save_config_file() { u8 config_path[512]; #if (defined(PSP_BUILD) || defined(ARM_ARCH)) && !defined(_WIN32_WCE) sprintf(config_path, "%s/%s", main_path, GPSP_CONFIG_FILENAME); #else sprintf(config_path, "%s\\%s", main_path, GPSP_CONFIG_FILENAME); #endif file_open(config_file, config_path, write); save_game_config_file(); if(file_check_valid(config_file)) { u32 file_options[23]; u32 i; file_options[0] = screen_scale; file_options[1] = screen_filter; file_options[2] = global_enable_audio; file_options[3] = audio_buffer_size_number; file_options[4] = update_backup_flag; file_options[5] = global_enable_analog; file_options[6] = analog_sensitivity_level; #ifndef PC_BUILD for(i = 0; i < 16; i++) { file_options[7 + i] = gamepad_config_map[i]; } #endif file_write_array(config_file, file_options); file_close(config_file); return 0; } return -1; }
void menu_load() { u8 *file_ext[] = { ".gba", ".bin", ".zip", NULL }; u8 load_filename[512]; save_game_config_file(); if(load_file(file_ext, load_filename) != -1) { if(load_gamepak(load_filename) == -1) { quit(); } reset_gba(); return_value = 1; repeat = 0; reg[CHANGED_PC_STATUS] = 1; } else { choose_menu(current_menu); } }