OSDN Git Service

[EMU] Enable to Gzip'ed state saving / loading.
authorK.Ohta <whatisthis.sowhat@gmail.com>
Sun, 20 May 2018 12:34:51 +0000 (21:34 +0900)
committerK.Ohta <whatisthis.sowhat@gmail.com>
Sun, 20 May 2018 12:34:51 +0000 (21:34 +0900)
source/src/config.cpp
source/src/emu.cpp
source/src/fileio.cpp

index ae0c546..0e11fdf 100644 (file)
@@ -277,7 +277,7 @@ void load_config(const _TCHAR *config_path)
                        config.baud_high[drv] = MyGetPrivateProfileBool(_T("Control"), create_string(_T("BaudHigh%d"), drv + 1), config.baud_high[drv], config_path);
                }
        #endif
-               
+       config.compress_state = MyGetPrivateProfileBool(_T("Control"), _T("CompressState"), config.compress_state, config_path);                
                // recent files
        #ifdef USE_CART1
                MyGetPrivateProfileString(_T("RecentFiles"), _T("InitialCartDir"), _T(""), config.initial_cart_dir, _MAX_PATH, config_path);
@@ -349,7 +349,7 @@ void load_config(const _TCHAR *config_path)
                        config.rotate_type = MyGetPrivateProfileInt(_T("Screen"), _T("RotateType"), config.rotate_type, config_path);
 //             #endif
        #endif
-       config.compress_state = MyGetPrivateProfileBool(_T("Control"), _T("CompressState"), config.compress_state, config_path);
+
        
        // filter
        #ifdef USE_SCREEN_FILTER
@@ -613,7 +613,8 @@ void save_config(const _TCHAR *config_path)
                        MyWritePrivateProfileBool(_T("Control"), create_string(_T("BaudHigh%d"), drv + 1), config.baud_high[drv], config_path);
                }
        #endif
-       
+       MyWritePrivateProfileBool(_T("Control"), _T("CompressState"), config.compress_state, config_path);
+       
        // recent files
        
        // recent files
@@ -687,7 +688,7 @@ void save_config(const _TCHAR *config_path)
                        MyWritePrivateProfileInt(_T("Screen"), _T("RotateType"), config.rotate_type, config_path);
 //             #endif
        #endif
-       MyWritePrivateProfileBool(_T("Control"), _T("CompressState"), config.compress_state, config_path);
+
        // filter
        #ifdef USE_SCREEN_FILTER
                MyWritePrivateProfileInt(_T("Screen"), _T("FilterType"), config.filter_type, config_path);
index 0f1f5fc..1c0cbc0 100644 (file)
@@ -2714,9 +2714,9 @@ bool EMU::load_state_tmp(const _TCHAR* file_path)
        FILEIO* fio = new FILEIO();
        osd->lock_vm();
 #ifdef USE_ZLIB
-//     if(config.compress_state) {
+       if(config.compress_state) {
                fio->Gzopen(file_path, FILEIO_READ_BINARY);
-//     }
+       }
 #endif
        if(!fio->IsOpened()) {
                fio->Fopen(file_path, FILEIO_READ_BINARY);
index 6f0b971..fd431ae 100644 (file)
@@ -246,8 +246,8 @@ bool FILEIO::Gzopen(const _TCHAR *file_path, int mode)
        switch(mode) {
        case FILEIO_READ_BINARY:
                return ((gz = gzopen(tchar_to_char(file_path), "rb")) != NULL);
-//     case FILEIO_WRITE_BINARY:
-//             return ((fp = _tfopen(file_path, _T("wb"))) != NULL);
+       case FILEIO_WRITE_BINARY:
+               return ((gz = gzopen(tchar_to_char(file_path), "wb")) != NULL);
 //     case FILEIO_READ_WRITE_BINARY:
 //             return ((fp = _tfopen(file_path, _T("r+b"))) != NULL);
 //     case FILEIO_READ_WRITE_NEW_BINARY: