--- hatari/src/gui-sdl/dlgMemory.c 2019/04/01 07:13:50 1.1.1.5 +++ hatari/src/gui-sdl/dlgMemory.c 2019/04/09 08:53:28 1.1.1.8 @@ -1,10 +1,10 @@ /* Hatari - dlgMemory.c - This file is distributed under the GNU Public License, version 2 or at - your option any later version. Read the file gpl.txt for details. + This file is distributed under the GNU General Public License, version 2 + or at your option any later version. Read the file gpl.txt for details. */ -const char DlgMemory_rcsid[] = "Hatari $Id: dlgMemory.c,v 1.1.1.5 2019/04/01 07:13:50 root Exp $"; +const char DlgMemory_fileid[] = "Hatari dlgMemory.c : " __DATE__ " " __TIME__; #include "main.h" #include "dialog.h" @@ -58,11 +58,12 @@ static SGOBJ memorydlg[] = }; -/*-----------------------------------------------------------------------*/ -/* - Show and process the memory dialog. -*/ -void Dialog_MemDlg(void) + +/** + * Show and process the memory dialog. + * @return true if a memory snapshot has been loaded, false otherwise + */ +bool Dialog_MemDlg(void) { int i; int but; @@ -74,7 +75,7 @@ void Dialog_MemDlg(void) memorydlg[i].state &= ~SG_SELECTED; } - switch (DialogParams.Memory.nMemorySize) + switch (ConfigureParams.Memory.nMemorySize) { case 0: memorydlg[DLGMEM_512KB].state |= SG_SELECTED; @@ -96,10 +97,10 @@ void Dialog_MemDlg(void) break; } - File_ShrinkName(dlgSnapShotName, DialogParams.Memory.szMemoryCaptureFileName, memorydlg[DLGMEM_FILENAME].w); + File_ShrinkName(dlgSnapShotName, ConfigureParams.Memory.szMemoryCaptureFileName, memorydlg[DLGMEM_FILENAME].w); - if (DialogParams.Memory.bAutoSave) + if (ConfigureParams.Memory.bAutoSave) memorydlg[DLGMEM_AUTOSAVE].state |= SG_SELECTED; else memorydlg[DLGMEM_AUTOSAVE].state &= ~SG_SELECTED; @@ -112,15 +113,20 @@ void Dialog_MemDlg(void) { case DLGMEM_SAVE: /* Save memory snap-shot */ if (SDLGui_FileConfSelect(dlgSnapShotName, - DialogParams.Memory.szMemoryCaptureFileName, - memorydlg[DLGMEM_FILENAME].w, TRUE)) - MemorySnapShot_Capture(DialogParams.Memory.szMemoryCaptureFileName, TRUE); + ConfigureParams.Memory.szMemoryCaptureFileName, + memorydlg[DLGMEM_FILENAME].w, true)) + { + MemorySnapShot_Capture(ConfigureParams.Memory.szMemoryCaptureFileName, true); + } break; case DLGMEM_RESTORE: /* Load memory snap-shot */ if (SDLGui_FileConfSelect(dlgSnapShotName, - DialogParams.Memory.szMemoryCaptureFileName, - memorydlg[DLGMEM_FILENAME].w, FALSE)) - MemorySnapShot_Restore(DialogParams.Memory.szMemoryCaptureFileName, TRUE); + ConfigureParams.Memory.szMemoryCaptureFileName, + memorydlg[DLGMEM_FILENAME].w, false)) + { + MemorySnapShot_Restore(ConfigureParams.Memory.szMemoryCaptureFileName, true); + return true; + } break; } } @@ -130,17 +136,19 @@ void Dialog_MemDlg(void) /* Read new values from dialog: */ if (memorydlg[DLGMEM_512KB].state & SG_SELECTED) - DialogParams.Memory.nMemorySize = 0; + ConfigureParams.Memory.nMemorySize = 0; else if (memorydlg[DLGMEM_1MB].state & SG_SELECTED) - DialogParams.Memory.nMemorySize = 1; + ConfigureParams.Memory.nMemorySize = 1; else if (memorydlg[DLGMEM_2MB].state & SG_SELECTED) - DialogParams.Memory.nMemorySize = 2; + ConfigureParams.Memory.nMemorySize = 2; else if (memorydlg[DLGMEM_4MB].state & SG_SELECTED) - DialogParams.Memory.nMemorySize = 4; + ConfigureParams.Memory.nMemorySize = 4; else if (memorydlg[DLGMEM_8MB].state & SG_SELECTED) - DialogParams.Memory.nMemorySize = 8; + ConfigureParams.Memory.nMemorySize = 8; else - DialogParams.Memory.nMemorySize = 14; + ConfigureParams.Memory.nMemorySize = 14; + + ConfigureParams.Memory.bAutoSave = (memorydlg[DLGMEM_AUTOSAVE].state & SG_SELECTED); - DialogParams.Memory.bAutoSave = (memorydlg[DLGMEM_AUTOSAVE].state & SG_SELECTED); + return false; }