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// ------------------------------------------------------------
219220void 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