Skip to content

Commit 69f3888

Browse files
author
ejaquay
committed
SDC use configuration_serializer to manage settings
1 parent 55aeb4e commit 69f3888

File tree

1 file changed

+22
-26
lines changed

1 file changed

+22
-26
lines changed

sdc/sdc_configuration.cpp

Lines changed: 22 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
#include <vcc/common/DialogOps.h>
3131
#include <vcc/core/cartridge_capi.h>
3232
#include <vcc/core/limits.h>
33+
#include <vcc/utils/configuration_serializer.h>
3334
#include "../CartridgeMenu.h"
3435
#include "resource.h"
3536
#include "sdc_cartridge.h"
@@ -218,25 +219,19 @@ SDC_Configure(HWND hDlg, UINT message, WPARAM wParam, LPARAM /*lParam*/)
218219
//------------------------------------------------------------
219220
void LoadConfig()
220221
{
221-
DLOG_C("LoadConfig()\n");
222-
GetPrivateProfileString
223-
("DefaultPaths", "MPIPath", "", MPIPath, MAX_PATH, IniFile);
224-
GetPrivateProfileString
225-
("SDC", "SDCardPath", "", SDCard, MAX_PATH, IniFile);
222+
::vcc::utils::configuration_serializer conf(IniFile);
226223

227-
if (!IsDirectory(SDCard)) {
228-
MessageBox (nullptr,"Invalid SDCard Path in VCC init","Error",0);
229-
}
224+
strncpy(MPIPath,conf.read("DefaultPaths","MPIPath").c_str(),MAX_PATH);
225+
strncpy(SDCard,conf.read("SDC","SDCardPath").c_str(),MAX_PATH);
230226

227+
char key[32];
231228
for (int i=0;i<8;i++) {
232-
char txt[32];
233-
snprintf(txt,MAX_PATH,"FlashFile_%d",i);
234-
GetPrivateProfileString
235-
("SDC", txt, "", FlashFile[i], MAX_PATH, IniFile);
229+
snprintf(key,32,"FlashFile_%d",i);
230+
strncpy(FlashFile[i],conf.read("SDC",key).c_str(),MAX_PATH);
236231
}
237232

238-
ClockEnable = GetPrivateProfileInt("SDC","ClockEnable",1,IniFile);
239-
StartupBank = GetPrivateProfileInt("SDC","StarupBank",0,IniFile);
233+
ClockEnable = conf.read("SDC","ClockEnable",1);
234+
StartupBank = conf.read("SDC","StartupBank",0);
240235
}
241236

242237
//------------------------------------------------------------
@@ -248,22 +243,23 @@ bool SaveConfig(HWND hDlg)
248243
MessageBox(nullptr,"Invalid SDCard Path\n","Error",0);
249244
return false;
250245
}
251-
WritePrivateProfileString("SDC","SDCardPath",SDCard,IniFile);
252246

253-
for (int i=0;i<8;i++) {
254-
char txt[32];
255-
sprintf(txt,"FlashFile_%d",i);
256-
WritePrivateProfileString("SDC",txt,FlashFile[i],IniFile);
247+
if (SendDlgItemMessage(hDlg,IDC_CLOCK,BM_GETCHECK,0,0)==BST_CHECKED) {
248+
ClockEnable = 1;
249+
} else {
250+
ClockEnable = 0;
257251
}
258252

259-
if (SendDlgItemMessage(hDlg,IDC_CLOCK,BM_GETCHECK,0,0)) {
260-
WritePrivateProfileString("SDC","ClockEnable","1",IniFile);
261-
} else {
262-
WritePrivateProfileString("SDC","ClockEnable","0",IniFile);
253+
::vcc::utils::configuration_serializer conf(IniFile);
254+
255+
conf.write("SDC","SDCardPath",SDCard);
256+
char key[32];
257+
for (int i=0;i<8;i++) {
258+
snprintf(key,32,"FlashFile_%d",i);
259+
conf.write("SDC",key,FlashFile[i]);
263260
}
264-
char tmp[4];
265-
snprintf(tmp,4,"%d",(StartupBank & 7));
266-
WritePrivateProfileString("SDC","StarupBank",tmp,IniFile);
261+
conf.write("SDC","ClockEnable",ClockEnable);
262+
conf.write("SDC","StartupBank",StartupBank & 7);
267263
return true;
268264
}
269265

0 commit comments

Comments
 (0)