static void printer_kill_active(HWND hwnd) { TCHAR st[MAX_PATH]; GetDlgItemText(hwnd, IDC_PRINTER_OUTPUT_FILE1_NAME, st, MAX_PATH); system_wcstombs(printertextdevice[0], st, MAX_PATH); GetDlgItemText(hwnd, IDC_PRINTER_OUTPUT_FILE2_NAME, st, MAX_PATH); system_wcstombs(printertextdevice[1], st, MAX_PATH); GetDlgItemText(hwnd, IDC_PRINTER_OUTPUT_FILE3_NAME, st, MAX_PATH); system_wcstombs(printertextdevice[2], st, MAX_PATH); }
static BOOL store_dialog_results(HWND hwnd, unsigned int num) { char s[MAX_PATH]; TCHAR st[MAX_PATH]; int devtype = ATTACH_DEVICE_NONE; if (iec_available_busses() & IEC_BUS_IEC) { resources_set_int_sprintf("IECDevice%d", (IsDlgButtonChecked(hwnd, IDC_TOGGLE_USEIECDEVICE) == BST_CHECKED), num); } if (IsDlgButtonChecked(hwnd, IDC_SELECTDISK) == BST_CHECKED || IsDlgButtonChecked(hwnd, IDC_SELECTDIR) == BST_CHECKED) { devtype = ATTACH_DEVICE_FS; } #ifdef HAVE_OPENCBM if (opencbmlib_is_available()) { if (IsDlgButtonChecked(hwnd, IDC_SELECTREAL) == BST_CHECKED) { devtype = ATTACH_DEVICE_REAL; } } #endif resources_set_int_sprintf("FileSystemDevice%d", devtype, num); resources_set_int_sprintf("FSDevice%dConvertP00", (IsDlgButtonChecked(hwnd, IDC_TOGGLE_READP00) == BST_CHECKED), num); resources_set_int_sprintf("FSDevice%dSaveP00", (IsDlgButtonChecked(hwnd, IDC_TOGGLE_WRITEP00) == BST_CHECKED), num); resources_set_int_sprintf("FSDevice%dHideCBMFiles", (IsDlgButtonChecked(hwnd, IDC_TOGGLE_HIDENONP00) == BST_CHECKED), num); resources_set_int_sprintf("AttachDevice%dReadonly", (IsDlgButtonChecked(hwnd, IDC_TOGGLE_ATTACH_READONLY) == BST_CHECKED), num); GetDlgItemText(hwnd, IDC_DIR, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string_sprintf("FSDevice%dDir", s, num); if (IsDlgButtonChecked(hwnd, IDC_SELECTDISK) == BST_CHECKED) { GetDlgItemText(hwnd, IDC_DISKIMAGE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); if (file_system_attach_disk(num, s) < 0 ) { ui_error(translate_text(IDS_CANNOT_ATTACH_FILE)); return 0; } } else { if ((IsDlgButtonChecked(hwnd, IDC_SELECTDIR) == BST_CHECKED) && file_system_get_disk_name(num)) { file_system_detach_disk(num); } } return 1; }
static void end_mmc64_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; GetDlgItemText(hwnd, IDC_MMC64_BIOS_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("MMC64BIOSfilename", s); GetDlgItemText(hwnd, IDC_MMC64_IMAGE_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("MMC64imagefilename", s); resources_set_int("MMC64", (IsDlgButtonChecked(hwnd, IDC_MMC64_ENABLE) == BST_CHECKED ? 1 : 0 )); resources_set_int("MMC64_flashjumper", (IsDlgButtonChecked(hwnd, IDC_MMC64_FLASHJUMPER) == BST_CHECKED ? 1 : 0 )); resources_set_int("MMC64_bios_write", (IsDlgButtonChecked(hwnd, IDC_MMC64_BIOS_SAVE) == BST_CHECKED ? 1 : 0 )); resources_set_int("MMC64_RO", (IsDlgButtonChecked(hwnd, IDC_MMC64_IMAGE_RO) == BST_CHECKED ? 1 : 0 )); resources_set_int("MMC64_revision",(int)SendMessage(GetDlgItem(hwnd, IDC_MMC64_REVISION), CB_GETCURSEL, 0, 0)); resources_set_int("MMC64_sd_type", (int)SendMessage(GetDlgItem(hwnd, IDC_MMC64_SDTYPE), CB_GETCURSEL, 0, 0)); }
static void save_file_romset_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; GetDlgItemText(hwnd, IDC_ROMSET_FILE_NAME, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); if (machine_romset_file_save(s) < 0) { ui_error(translate_text(IDS_CANNOT_SAVE_ROMSET_FILE)); } }
static void end_v364speech_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; resources_set_int("SpeechEnabled", (IsDlgButtonChecked(hwnd, IDC_V364SPEECH_ENABLE) == BST_CHECKED ? 1 : 0 )); GetDlgItemText(hwnd, IDC_V364SPEECH_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("SpeechImage", s); }
static void end_functionrom_dialog(HWND hwnd) { char name[MAX_PATH]; TCHAR st_name[MAX_PATH]; resources_set_int("InternalFunctionROM", (IsDlgButtonChecked(hwnd, IDC_C128_FUNCTIONROM_INTERNAL) == BST_CHECKED ? 1 : 0 )); GetDlgItemText(hwnd, IDC_C128_FUNCTIONROM_INTERNAL_NAME, st_name, MAX_PATH); system_wcstombs(name, st_name, MAX_PATH); resources_set_string("InternalFunctionName", name); resources_set_int("ExternalFunctionROM", (IsDlgButtonChecked(hwnd, IDC_C128_FUNCTIONROM_EXTERNAL) == BST_CHECKED ? 1 : 0 )); GetDlgItemText(hwnd, IDC_C128_FUNCTIONROM_EXTERNAL_NAME, st_name, MAX_PATH); system_wcstombs(name, st_name, MAX_PATH); resources_set_string("ExternalFunctionName", name); }
static void end_romset_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; if (IsDlgButtonChecked(hwnd, IDC_ROMSET_SELECT_ARCHIVE) == BST_CHECKED) { resources_set_int("RomsetSourceFile", 0); } if (IsDlgButtonChecked(hwnd, IDC_ROMSET_SELECT_FILE) == BST_CHECKED) { resources_set_int("RomsetSourceFile", 1); } GetDlgItemText(hwnd, IDC_ROMSET_ARCHIVE_NAME, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("RomsetArchiveName", s); GetDlgItemText(hwnd, IDC_ROMSET_FILE_NAME, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("RomsetFileName", s); }
static void end_magicvoice_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; resources_set_int("MagicVoiceCartridgeEnabled", (IsDlgButtonChecked(hwnd, IDC_MAGICVOICE_ENABLE) == BST_CHECKED ? 1 : 0 )); GetDlgItemText(hwnd, IDC_MAGICVOICE_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("MagicVoiceImage", s); }
static void end_petreu_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; resources_set_int("PETREU", (IsDlgButtonChecked(hwnd, IDC_PETREU_ENABLE) == BST_CHECKED ? 1 : 0 )); resources_set_int("PETREUsize", ui_petreu_size[SendMessage(GetDlgItem(hwnd, IDC_PETREU_SIZE), CB_GETCURSEL, 0, 0)]); GetDlgItemText(hwnd, IDC_PETREU_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("PETREUfilename", s); }
static void end_plus256k_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; resources_set_int("PLUS256K", (IsDlgButtonChecked(hwnd, IDC_PLUS256K_ENABLE) == BST_CHECKED ? 1 : 0 )); GetDlgItemText(hwnd, IDC_PLUS256K_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("PLUS256Kfilename", s); }
static void end_rs232_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; GetDlgItemText(hwnd, IDC_RS232_DEVICE1, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("RsDevice1", s); GetDlgItemText(hwnd, IDC_RS232_DEVICE2, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("RsDevice2", s); GetDlgItemText(hwnd, IDC_RS232_DEVICE3, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("RsDevice3", s); GetDlgItemText(hwnd, IDC_RS232_DEVICE4, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("RsDevice4", s); }
static void end_c64_256k_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; resources_set_int("C64_256K", (IsDlgButtonChecked(hwnd, IDC_C64_256K_ENABLE) == BST_CHECKED ? 1 : 0 )); resources_set_int("C64_256Kbase", ui_c64_256k_base[SendMessage(GetDlgItem(hwnd, IDC_C64_256K_BASE), CB_GETCURSEL, 0, 0)]); GetDlgItemText(hwnd, IDC_C64_256K_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("C64_256Kfilename", s); }
static void load_archive_romset_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; GetDlgItemText(hwnd, IDC_ROMSET_ARCHIVE_NAME, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); if (romset_archive_load(s, 0) < 0) { ui_error(translate_text(IDS_CANNOT_LOAD_ROMSET_ARCH)); } update_romset_archive(hwnd); }
static char *system_wcstombs_alloc(const char *wcs) { char *mbs; if (wcs == NULL) { return NULL; } mbs = lib_malloc((strlen(wcs) + 1) * sizeof(char)); system_wcstombs(mbs, wcs, strlen(wcs) + 1); return mbs; }
static void end_ramcart_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; resources_set_int("RAMCART", (IsDlgButtonChecked(hwnd, IDC_RAMCART_ENABLE) == BST_CHECKED ? 1 : 0 )); resources_set_int("RAMCARTImageWrite", (IsDlgButtonChecked(hwnd, IDC_RAMCART_WRITE_ENABLE) == BST_CHECKED ? 1 : 0 )); resources_set_int("RAMCART_RO", (IsDlgButtonChecked(hwnd, IDC_RAMCART_RO) == BST_CHECKED ? 1 : 0 )); resources_set_int("RAMCARTsize", ui_ramcart_size[SendMessage(GetDlgItem(hwnd, IDC_RAMCART_SIZE), CB_GETCURSEL, 0, 0)]); GetDlgItemText(hwnd, IDC_RAMCART_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("RAMCARTfilename", s); }
static void end_mapping_dialog(HWND hwnd) { int i; for (i = 0; i < uikeyboard_mapping_num; i++) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; GetDlgItemText(hwnd, mapping_entry[i].idc_filename, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string(mapping_entry[i].res_filename, s); if (IsDlgButtonChecked(hwnd, mapping_entry[i].idc_select) == BST_CHECKED) { resources_set_int("KeymapIndex", i); } } }
static void set_dialog_proc(HWND hwnd, unsigned int type) { unsigned int n = 0; while (settings[n].realname != NULL) { if (settings[n].type == type) { char filename[MAX_PATH]; TCHAR st_filename[MAX_PATH]; GetDlgItemText(hwnd, settings[n].idc_filename, st_filename, MAX_PATH); system_wcstombs(filename, st_filename, MAX_PATH); resources_set_string(settings[n].resname, filename); } n++; } }
static void end_autostart_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; resources_set_int("AutostartWarp", (IsDlgButtonChecked(hwnd, IDC_AUTOSTART_WARP) == BST_CHECKED ? 1 : 0 )); resources_set_int("AutostartRunWithColon", (IsDlgButtonChecked(hwnd, IDC_AUTOSTART_USE_COLON_WITH_RUN) == BST_CHECKED ? 1 : 0 )); resources_set_int("AutostartBasicLoad", (IsDlgButtonChecked(hwnd, IDC_AUTOSTART_LOAD_TO_BASIC) == BST_CHECKED ? 1 : 0 )); resources_set_int("AutostartDelayRandom", (IsDlgButtonChecked(hwnd, IDC_AUTOSTART_RANDOM_DELAY) == BST_CHECKED ? 1 : 0 )); resources_set_int("AutostartHandleTrueDriveEmulation", (IsDlgButtonChecked(hwnd, IDC_AUTOSTART_HANDLE_TRUE_DRIVE_EMULATION) == BST_CHECKED ? 1 : 0 )); resources_set_int("AutostartPrgMode", (int)SendMessage(GetDlgItem(hwnd, IDC_AUTOSTART_PRG_MODE), CB_GETCURSEL, 0, 0)); GetDlgItemText(hwnd, IDC_AUTOSTART_DISK_IMAGE_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); resources_set_string("AutostartPrgDiskImage", s); }
static void end_sound_record_dialog(HWND hwnd) { TCHAR st[MAX_PATH]; char s[MAX_PATH]; int i; i = (int)SendMessage(GetDlgItem(hwnd, IDC_SOUND_RECORD_FORMAT), CB_GETCURSEL, 0, 0); GetDlgItemText(hwnd, IDC_SOUND_RECORD_FILE, st, MAX_PATH); system_wcstombs(s, st, MAX_PATH); util_add_extension_maxpath(s, sound_format[i], MAX_PATH); resources_set_string("SoundRecordDeviceName", ""); resources_set_string("SoundRecordDeviceArg", s); resources_set_string("SoundRecordDeviceName", sound_format[i]); resources_set_int("Sound", 1); ui_display_statustext(translate_text(IDS_SOUND_RECORDING_STARTED), 1); }
static BOOL CALLBACK dialog_palette_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { int type; extern int querynewpalette; switch (msg) { case WM_NOTIFY: if (((NMHDR FAR *)lparam)->code == (UINT)PSN_APPLY) { querynewpalette = 1; if (resources_set_string(current_chip2->res_PaletteFile_name, palette_file2) < 0) { ui_error(translate_text(IDS_COULD_NOT_LOAD_PALETTE)); SetWindowLong (hwnd, DWL_MSGRESULT, TRUE); return TRUE; } lib_free(palette_file2); palette_file2 = NULL; SetWindowLong (hwnd, DWL_MSGRESULT, FALSE); return TRUE; } return FALSE; case WM_INITDIALOG: init_palette_dialog(hwnd, (Chip_Parameters*)((PROPSHEETPAGE*)lparam)->lParam); return TRUE; case WM_COMMAND: type = LOWORD(wparam); switch (type) { case IDC_VIDEO_CUSTOM_BROWSE: { TCHAR *st_name; if ((st_name = uilib_select_file(hwnd, translate_text(IDS_LOAD_VICE_PALETTE_FILE), UILIB_FILTER_ALL | UILIB_FILTER_PALETTE, UILIB_SELECTOR_TYPE_FILE_LOAD, UILIB_SELECTOR_STYLE_DEFAULT)) != NULL) { char *name; SetDlgItemText(hwnd, IDC_VIDEO_CUSTOM_NAME, st_name); name = system_wcstombs_alloc(st_name); update_palettename2(name); system_wcstombs_free(name); lib_free(st_name); } } break; case IDC_VIDEO_CUSTOM_NAME: { TCHAR st[100]; char s[100]; GetDlgItemText(hwnd, IDC_VIDEO_CUSTOM_NAME, st, 100); system_wcstombs(s, st, 100); update_palettename2(s); break; } } return TRUE; } return FALSE; }
static BOOL CALLBACK dialog_advanced_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) { int type, ival; float tf; TCHAR s[100]; extern int querynewpalette; switch (msg) { case WM_NOTIFY: if (((NMHDR FAR *)lparam)->code == (UINT)PSN_APPLY) { GetDlgItemText(hwnd, IDC_VIDEO_COLORS_GAM, s, 100); _stscanf(s, TEXT("%f"), &tf); ival = (int)(tf * 1000.0 + 0.5); resources_set_int("ColorGamma", ival); resources_set_int(current_chip->res_ExternalPalette_name, res_extpalette); GetDlgItemText(hwnd, IDC_VIDEO_ADVANCED_SHADE, s, 100); _stscanf(s, TEXT("%f"), &tf); ival = (int)(tf * 1000.0 + 0.5); resources_set_int("PALScanLineShade", ival); GetDlgItemText(hwnd, IDC_VIDEO_ADVANCED_BLUR, s, 100); _stscanf(s, TEXT("%f"), &tf); ival = (int)(tf * 1000.0 + 0.5); resources_set_int("PALBlur", ival); ival = SendMessage(GetDlgItem(hwnd, IDC_VIDEO_ADVANCED_MODE), CB_GETCURSEL, 0, 0); resources_set_int("PALMode", ival); querynewpalette = 1; if (resources_set_string(current_chip->res_PaletteFile_name, palette_file) < 0) { ui_error(translate_text(IDS_COULD_NOT_LOAD_PALETTE)); resources_set_int(current_chip->res_ExternalPalette_name, res_extpalette); SetWindowLong (hwnd, DWL_MSGRESULT, TRUE); return TRUE; } lib_free(palette_file); palette_file = NULL; resources_set_int(current_chip->res_ExternalPalette_name, res_extpalette); SetWindowLong(hwnd, DWL_MSGRESULT, FALSE); return TRUE; } return FALSE; case WM_INITDIALOG: init_advanced_dialog(hwnd, (Chip_Parameters*)((PROPSHEETPAGE*)lparam)->lParam); return TRUE; case WM_COMMAND: type = LOWORD(wparam); switch (type) { case IDC_TOGGLE_VIDEO_EXTPALETTE: res_extpalette = !res_extpalette; EnableWindow(GetDlgItem(hwnd, IDC_VIDEO_CUSTOM_BROWSE), res_extpalette); EnableWindow(GetDlgItem(hwnd, IDC_VIDEO_CUSTOM_NAME), res_extpalette); break; case IDC_VIDEO_COLORS_GAM: break; case IDC_VIDEO_CUSTOM_BROWSE: { TCHAR *st_name; if ((st_name = uilib_select_file(hwnd, translate_text(IDS_LOAD_VICE_PALETTE_FILE), UILIB_FILTER_ALL | UILIB_FILTER_PALETTE, UILIB_SELECTOR_TYPE_FILE_LOAD, UILIB_SELECTOR_STYLE_DEFAULT)) != NULL) { char *name; SetDlgItemText(hwnd, IDC_VIDEO_CUSTOM_NAME, st_name); name = system_wcstombs_alloc(st_name); update_palettename(name); system_wcstombs_free(name); res_extpalette = 1; CheckDlgButton(hwnd, IDC_TOGGLE_VIDEO_EXTPALETTE, BST_CHECKED); lib_free(st_name); } } break; case IDC_VIDEO_CUSTOM_NAME: { TCHAR st[100]; char s[100]; GetDlgItemText(hwnd, IDC_VIDEO_CUSTOM_NAME, st, 100); system_wcstombs(s, st, 100); update_palettename(s); res_extpalette = 1; CheckDlgButton(hwnd, IDC_TOGGLE_VIDEO_EXTPALETTE, BST_CHECKED); break; } } return TRUE; } return FALSE; }