From eaca71d13489d890103498375186baf03a21e5bf Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 3 Apr 2025 12:46:59 +0900 Subject: [PATCH 1/6] fix(gitignore): actually ignoring version file --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 78b65148..f03fe921 100644 --- a/.gitignore +++ b/.gitignore @@ -28,7 +28,7 @@ placeholders.cache RetroDECK*Artifact.tar.gz ./gits flathub.json -./version +version .shellcheckrc # Components artifacts # From fa27bc6bb1db64e41e39b3d8fb6c5458eaa90307 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 3 Apr 2025 12:47:41 +0900 Subject: [PATCH 2/6] fix(MANIFEST): remove retrodeck_function_wrapper.sh in non-cooker versions [skip ci] --- net.retrodeck.retrodeck.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/net.retrodeck.retrodeck.yml b/net.retrodeck.retrodeck.yml index 1a457d87..c24e238f 100644 --- a/net.retrodeck.retrodeck.yml +++ b/net.retrodeck.retrodeck.yml @@ -846,6 +846,12 @@ modules: # Installing metainfo - install -Dm 644 net.retrodeck.retrodeck.metainfo.xml ${FLATPAK_DEST}/share/metainfo/net.retrodeck.retrodeck.metainfo.xml + # Removing the retrodeck_function_wrapper.sh in non-cooker versions (aka main) + - | + if ! grep -q "cooker" "${FLATPAK_DEST}/retrodeck/version"; then + rm -f "${FLATPAK_DEST}/tools/retrodeck_function_wrapper.sh" + fi + sources: - type: dir path: . From ef1bada188e98abd7c057257e15334fe9d0d9a16 Mon Sep 17 00:00:00 2001 From: XargonWan Date: Thu, 3 Apr 2025 14:32:57 +0900 Subject: [PATCH 3/6] fix(features.json): update launch paths for Ponzu emulators [skip ci] --- config/retrodeck/reference_lists/features.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/retrodeck/reference_lists/features.json b/config/retrodeck/reference_lists/features.json index 375b0c34..082fabc2 100644 --- a/config/retrodeck/reference_lists/features.json +++ b/config/retrodeck/reference_lists/features.json @@ -1030,7 +1030,7 @@ "url": "https://retrodeck.readthedocs.io/en/latest/wiki_about/what-is-retrodeck/", "system": "n3ds", "ponzu": true, - "launch": "citra-qt", + "launch": "/var/data/ponzu/citra/bin/citra-qt", "cli-arg": "-version", "properties": [ { @@ -1131,7 +1131,7 @@ "name": "Yuzu (via Ponzu)", "description": "A legacy Nintendo Switch Emulator (via Ponzu)", "url": "https://retrodeck.readthedocs.io/en/latest/wiki_about/what-is-retrodeck/", - "launch": "Yuzu", + "launch": "/var/data/ponzu/Yuzu/bin/yuzu", "cli-arg": "", "system": "switch", "ponzu": true, From 729847c3b1c65ec1bac8df58f68e1a09dcd3033f Mon Sep 17 00:00:00 2001 From: laz Date: Thu, 3 Apr 2025 07:43:26 +0200 Subject: [PATCH 4/6] bios checker text --- tools/configurator.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/configurator.sh b/tools/configurator.sh index 3d3e51fb..a6db0b5a 100755 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -1133,8 +1133,8 @@ configurator_bios_checker() { ) | rd_zenity --progress --auto-close --no-cancel \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" \ - --title "RetroDECK Configurator Utility - BIOS Check in Progress" \ - --text="This check will look for BIOS files that RetroDECK has identified as working.\n\nNot all BIOS files are required for games to work, please check the BIOS description for more information on its purpose.\n\nBIOS files not known to this tool could still function.\n\nSome more advanced emulators such as Ryujinx will have additional methods to verify that the BIOS files are in working order.\n\nRetroDECK is now checking your BIOS files, please wait...\n\n" \ + --title "RetroDECK Configurator - BIOS Checker - Scanning" \ + --text="The BIOS Checker is scanning for BIOS and Firmware files that RetroDECK recognizes as supported by each system.\n\nPlease note that not all BIOS files are necessary for games to work.\n\nBIOS files not recognized by this tool may still function correctly.\n\nSome emulators have additional built-in methods to verify the functionality of BIOS files.\n\nThe BIOS Checker is now scanning your BIOS files, please wait...\n\n" \ --width=400 --height=100 } From 624ef083f644cd95fd79932337aaf3493670d09f Mon Sep 17 00:00:00 2001 From: laz Date: Thu, 3 Apr 2025 15:49:44 +0200 Subject: [PATCH 5/6] configurator.sh backup text and renaming --- tools/configurator.sh | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/tools/configurator.sh b/tools/configurator.sh index a6db0b5a..77ae1dc4 100755 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -430,7 +430,7 @@ configurator_open_emulator_dialog() { configurator_tools_dialog() { local choices=( - "Backup Userdata" "Compress and backup RetroDECK userdata folders." + "Backup RetroDECK" "Compress and backup RetroDECK userdata folders." "BIOS Checker" "Checks and shows information about BIOS files." "Games Compressor" "Compress games to save space for supported systems." "Install: RetroDECK Controller Layouts" "Install RetroDECK controller templates into Steam." @@ -457,25 +457,25 @@ configurator_tools_dialog() { case $choice in - "Backup Userdata" ) + "Backup RetroDECK" ) log i "Configurator: opening \"$choice\" menu" - configurator_generic_dialog "RetroDECK Configurator Utility - Backup Userdata" "This tool will compress one or more RetroDECK userdata folders into a single zip file.\n\nThis process can take several minutes, and the resulting zip file can be found in the ~/retrodeck/backups folder." + configurator_generic_dialog "RetroDECK Configurator - Backup Userdata" "This tool will compress one or more RetroDECK userdata folders into a single zip file.\n\nPlease note that this process may take several minutes.\n\nThe resulting zip file will be located in the ~/retrodeck/backups folder.\n\n" - choice=$(rd_zenity --title "RetroDECK Configurator Utility - Backup Userdata" --info --no-wrap --ok-label="Cancel" --extra-button="Backup Core Userdata" --extra-button="Backup Some Userdata" --extra-button="Backup All Userdata" \ - --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --text="Would you like to backup some or all of the RetroDECK userdata prior to update?\n\nIf you choose \"Backup Core Userdata\" only irreplaceable files (like saves, states and gamelists) will be backed up. If you choose \"Backup Some Userdata\" you will be given a choice of which folders to backup.\n\nIf you choose \"Backup All Userdata\" then ALL data (including ROMs and downloaded media) will be backed up.\nPLEASE NOTE: A full backup may take up a large amount of space, especially if you have a lot of scraped media.") + choice=$(rd_zenity --title "RetroDECK Configurator Utility - Backup Userdata" --info --no-wrap --ok-label="Cancel" --extra-button="Core Backup" --extra-button="Custom Backup" --extra-button="Complete Backup" \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --text="Would you like to backup some or all of the RetroDECK userdata?\n\nChoose one of the following options:\n\n1. Core Backup: Only essential files (such as saves, states, and gamelists).\n\n2. Custom Backup: You will be given the option to select specific folders to backup.\n\n3. Complete Backup: All data, including games and downloaded media, will be backed up.\n\nPLEASE NOTE: A complete backup may require a significant amount of space.\n\n") local rc=$? if [[ $rc == "0" ]] && [[ -z "$choice" ]]; then # User selected Cancel button configurator_tools_dialog else case $choice in - "Backup Core Userdata" ) + "Core Backup" ) log i "User chose to backup core userdata prior to update." export CONFIGURATOR_GUI="zenity" backup_retrodeck_userdata "core" ;; - "Backup Some Userdata" ) + "Custom Backup" ) log i "User chose to backup custom userdata prior to update." while read -r config_line; do local current_setting_name=$(get_setting_name "$config_line" "retrodeck") @@ -503,7 +503,7 @@ configurator_tools_dialog() { export CONFIGURATOR_GUI="zenity" backup_retrodeck_userdata "custom" "${choices[@]}" # Expand array of choices into individual arguments ;; - "Backup All Userdata" ) + "Complete Backup" ) log i "User chose to backup all userdata prior to update." export CONFIGURATOR_GUI="zenity" backup_retrodeck_userdata "complete" From 7d1942436dfef9145701e35ac495eee62ffbdaa6 Mon Sep 17 00:00:00 2001 From: laz Date: Thu, 3 Apr 2025 16:18:18 +0200 Subject: [PATCH 6/6] configurator.sh moved backup to data mangement, renamed clean and rebuild functions. Cleaned up texts --- tools/configurator.sh | 212 +++++++++++++++++++++--------------------- 1 file changed, 106 insertions(+), 106 deletions(-) diff --git a/tools/configurator.sh b/tools/configurator.sh index 77ae1dc4..7f4566df 100755 --- a/tools/configurator.sh +++ b/tools/configurator.sh @@ -61,7 +61,6 @@ rd_zenity --progress --no-cancel --pulsate --auto-close \ # - Reset All Emulators and Components # - Reset RetroDECK # - Tools -# - Backup Userdata # - BIOS Checker # - Games Compressor # - Compress Single Game @@ -82,18 +81,19 @@ rd_zenity --progress --no-cancel --pulsate --auto-close \ # - Ponzu: Remove Citra # - Steam Sync # - Data Management -# - Move all of RetroDECK -# - Move ROMs folder -# - Move BIOS folder -# - Move Downloaded Media folder -# - Move Saves folder -# - Move States folder -# - Move Themes folder -# - Move Screenshots folder -# - Move Mods folder -# - Move Texture Packs folder -# - Clean Empty ROM Folders -# - Rebuild All ROM Folders +# - Backup RetroDECK +# - ROMS Folder: Clean Empty Systems +# - ROMS Folder: Rebuild Systems +# - Move: All of RetroDECK +# - Move: ROMs folder +# - Move: BIOS folder +# - Move: Downloaded Media folder +# - Move: Saves folder +# - Move: States folder +# - Move: Themes folder +# - Move: Screenshots folder +# - Move: Mods folder +# - Move: Texture Packs folder # - About RetroDECK # - RetroDECK Version History # - Full changelog @@ -102,7 +102,7 @@ rd_zenity --progress --no-cancel --pulsate --auto-close \ # - Developer Options (Hidden) # - Change Multi-user mode # - Install Specific Release -# - Browse the wiki +# - Browse the Wiki # - Install: RetroDECK Starter Pack # - Tool: USB Import # @@ -430,7 +430,6 @@ configurator_open_emulator_dialog() { configurator_tools_dialog() { local choices=( - "Backup RetroDECK" "Compress and backup RetroDECK userdata folders." "BIOS Checker" "Checks and shows information about BIOS files." "Games Compressor" "Compress games to save space for supported systems." "Install: RetroDECK Controller Layouts" "Install RetroDECK controller templates into Steam." @@ -457,63 +456,6 @@ configurator_tools_dialog() { case $choice in - "Backup RetroDECK" ) - - log i "Configurator: opening \"$choice\" menu" - configurator_generic_dialog "RetroDECK Configurator - Backup Userdata" "This tool will compress one or more RetroDECK userdata folders into a single zip file.\n\nPlease note that this process may take several minutes.\n\nThe resulting zip file will be located in the ~/retrodeck/backups folder.\n\n" - - choice=$(rd_zenity --title "RetroDECK Configurator Utility - Backup Userdata" --info --no-wrap --ok-label="Cancel" --extra-button="Core Backup" --extra-button="Custom Backup" --extra-button="Complete Backup" \ - --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --text="Would you like to backup some or all of the RetroDECK userdata?\n\nChoose one of the following options:\n\n1. Core Backup: Only essential files (such as saves, states, and gamelists).\n\n2. Custom Backup: You will be given the option to select specific folders to backup.\n\n3. Complete Backup: All data, including games and downloaded media, will be backed up.\n\nPLEASE NOTE: A complete backup may require a significant amount of space.\n\n") - - local rc=$? - if [[ $rc == "0" ]] && [[ -z "$choice" ]]; then # User selected Cancel button - configurator_tools_dialog - else - case $choice in - "Core Backup" ) - log i "User chose to backup core userdata prior to update." - export CONFIGURATOR_GUI="zenity" - backup_retrodeck_userdata "core" - ;; - "Custom Backup" ) - log i "User chose to backup custom userdata prior to update." - while read -r config_line; do - local current_setting_name=$(get_setting_name "$config_line" "retrodeck") - if [[ ! $current_setting_name =~ (rdhome|sdcard|backups_folder) ]]; then # Ignore these locations - log d "Adding $current_setting_name to compressible paths." - local current_setting_value=$(get_setting_value "$rd_conf" "$current_setting_name" "retrodeck" "paths") - compressible_paths=("${compressible_paths[@]}" "false" "$current_setting_name" "$current_setting_value") - fi - done < <(grep -v '^\s*$' "$rd_conf" | awk '/^\[paths\]/{f=1;next} /^\[/{f=0} f') - - choice=$(rd_zenity \ - --list --width=1200 --height=720 \ - --checklist \ - --separator="^" \ - --print-column=3 \ - --text="Please select folders to compress..." \ - --column "Backup?" \ - --column "Folder Name" \ - --column "Path" \ - "${compressible_paths[@]}") - - choices=() # Expand choice string into passable array - IFS='^' read -ra choices <<< "$choice" - - export CONFIGURATOR_GUI="zenity" - backup_retrodeck_userdata "custom" "${choices[@]}" # Expand array of choices into individual arguments - ;; - "Complete Backup" ) - log i "User chose to backup all userdata prior to update." - export CONFIGURATOR_GUI="zenity" - backup_retrodeck_userdata "complete" - ;; - esac - - configurator_tools_dialog - fi - ;; - "BIOS Checker" ) log i "Configurator: opening \"$choice\" menu" configurator_bios_checker @@ -669,92 +611,150 @@ configurator_data_management_dialog() { choice=$(rd_zenity --list --title="RetroDECK Configurator Utility - RetroDECK: Move Tool" --cancel-label="Back" \ --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --width=1200 --height=720 \ --column="Choice" --column="Action" \ - "Move all of RetroDECK" "Move the entire RetroDECK folder to a new location." \ - "Move ROMs folder" "Move the ROMs folder to a new location." \ - "Move BIOS folder" "Move the BIOS folder to a new location." \ - "Move Downloaded Media folder" "Move the Downloaded Media folder to a new location." \ - "Move Saves folder" "Move the Saves folder to a new location." \ - "Move States folder" "Move the States folder to a new location." \ - "Move Themes folder" "Move the Themes folder to a new location." \ - "Move Screenshots folder" "Move the Screenshots folder to a new location." \ - "Move Mods folder" "Move the Mods folder to a new location." \ - "Move Texture Packs folder" "Move the Texture Packs folder to a new location" \ - "Move Cheats folder" "Move the Cheats folder to a new location" \ - "Move Shaders folder" "Move the Shaders folder to a new location" \ - "Clean Empty ROM Folders" "Removes some or all of the empty ROM folders." \ - "Rebuild All ROM Folders" "Rebuilds any missing ROM folders." ) + "Backup RetroDECK" "Backup & Compress RetroDECK userdata folders into a zip file." \ + "ROMS Folder: Clean Empty Systems" "Removes some or all of the empty system folders in ROMS folder." \ + "ROMS Folder: Rebuild Systems" "Rebuilds any missing system folders in the ROMS folder." \ + "Move: All of RetroDECK" "Move the entire RetroDECK folder to a new location." \ + "Move: ROMS folder" "Move the ROMS folder to a new location." \ + "Move: BIOS folder" "Move the BIOS folder to a new location." \ + "Move: Downloaded Media folder" "Move the Downloaded Media folder to a new location." \ + "Move: Saves folder" "Move the Saves folder to a new location." \ + "Move: States folder" "Move the States folder to a new location." \ + "Move: Themes folder" "Move the Themes folder to a new location." \ + "Move: Screenshots folder" "Move the Screenshots folder to a new location." \ + "Move: Mods folder" "Move the Mods folder to a new location." \ + "Move: Texture Packs folder" "Move the Texture Packs folder to a new location" \ + "Move: Cheats folder" "Move the Cheats folder to a new location" \ + "Move: Shaders folder" "Move the Shaders folder to a new location" \ ) case $choice in - "Move all of RetroDECK" ) + "Backup RetroDECK" ) + + log i "Configurator: opening \"$choice\" menu" + configurator_generic_dialog "RetroDECK Configurator - Backup Userdata" "This tool will compress one or more RetroDECK userdata folders into a single zip file.\n\nPlease note that this process may take several minutes.\n\nThe resulting zip file will be located in the ~/retrodeck/backups folder.\n\n" + + choice=$(rd_zenity --title "RetroDECK Configurator - Backup Userdata" --info --no-wrap --ok-label="Cancel" --extra-button="Core Backup" --extra-button="Custom Backup" --extra-button="Complete Backup" \ + --window-icon="/app/share/icons/hicolor/scalable/apps/net.retrodeck.retrodeck.svg" --text="Would you like to backup some or all of the RetroDECK userdata?\n\nChoose one of the following options:\n\n1. Core Backup: Only essential files (such as saves, states, and gamelists).\n\n2. Custom Backup: You will be given the option to select specific folders to backup.\n\n3. Complete Backup: All data, including games and downloaded media, will be backed up.\n\nPLEASE NOTE: A complete backup may require a significant amount of space.\n\n") + + local rc=$? + if [[ $rc == "0" ]] && [[ -z "$choice" ]]; then # User selected Cancel button + configurator_tools_dialog + else + case $choice in + "Core Backup" ) + log i "User chose to backup core userdata prior to update." + export CONFIGURATOR_GUI="zenity" + backup_retrodeck_userdata "core" + ;; + "Custom Backup" ) + log i "User chose to backup custom userdata prior to update." + while read -r config_line; do + local current_setting_name=$(get_setting_name "$config_line" "retrodeck") + if [[ ! $current_setting_name =~ (rdhome|sdcard|backups_folder) ]]; then # Ignore these locations + log d "Adding $current_setting_name to compressible paths." + local current_setting_value=$(get_setting_value "$rd_conf" "$current_setting_name" "retrodeck" "paths") + compressible_paths=("${compressible_paths[@]}" "false" "$current_setting_name" "$current_setting_value") + fi + done < <(grep -v '^\s*$' "$rd_conf" | awk '/^\[paths\]/{f=1;next} /^\[/{f=0} f') + + choice=$(rd_zenity \ + --list --width=1200 --height=720 \ + --checklist \ + --separator="^" \ + --print-column=3 \ + --text="Please select folders to compress..." \ + --column "Backup?" \ + --column "Folder Name" \ + --column "Path" \ + "${compressible_paths[@]}") + + choices=() # Expand choice string into passable array + IFS='^' read -ra choices <<< "$choice" + + export CONFIGURATOR_GUI="zenity" + backup_retrodeck_userdata "custom" "${choices[@]}" # Expand array of choices into individual arguments + ;; + "Complete Backup" ) + log i "User chose to backup all userdata prior to update." + export CONFIGURATOR_GUI="zenity" + backup_retrodeck_userdata "complete" + ;; + esac + + configurator_tools_dialog + fi + ;; + + "Move: All of RetroDECK" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "rdhome" ;; - "Move ROMs folder" ) + "Move: ROMS folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "roms_folder" ;; - "Move BIOS folder" ) + "Move: BIOS folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "bios_folder" ;; - "Move Downloaded Media folder" ) + "Move: Downloaded Media folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "media_folder" ;; - "Move Saves folder" ) + "Move: Saves folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "saves_folder" ;; - "Move States folder" ) + "Move: States folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "states_folder" ;; - "Move Themes folder" ) + "Move: Themes folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "themes_folder" ;; - "Move Screenshots folder" ) + "Move: Screenshots folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "screenshots_folder" ;; - "Move Mods folder" ) + "Move: Mods folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "mods_folder" ;; - "Move Texture Packs folder" ) + "Move: Texture Packs folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "texture_packs_folder" ;; - "Move Cheats folder" ) + "Move: Cheats folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "cheats_folder" ;; - "Move Shaders folder" ) + "Move: Shaders folder" ) log i "Configurator: opening \"$choice\" menu" configurator_move_folder_dialog "shaders_folder" ;; - "Clean Empty ROM Folders" ) + "ROMS Folder: Clean Empty Systems" ) log i "Configurator: opening \"$choice\" menu" - configurator_generic_dialog "RetroDECK Configurator - Clean Empty ROM Folders" "Before removing any identified empty ROM folders,\nplease make sure your ROM collection is backed up, just in case!" - configurator_generic_dialog "RetroDECK Configurator - Clean Empty ROM Folders" "Searching for empty rom folders, please be patient..." + configurator_generic_dialog "RetroDECK Configurator - Clean Empty System Folders" "Before removing any identified empty system folders,\nplease ensure your game collection is backed up, just in case!" + configurator_generic_dialog "RetroDECK Configurator - Clean Empty System Folders" "Searching for empty system folders, please be patient..." find_empty_rom_folders choice=$(rd_zenity \ - --list --width=1200 --height=720 --title "RetroDECK Configurator - RetroDECK: Clean Empty ROM Folders" \ + --list --width=1200 --height=720 --title "RetroDECK Configurator - RetroDECK: Clean Empty System Folders" \ --checklist --hide-column=3 --ok-label="Remove Selected" --extra-button="Remove All" \ --separator="," --print-column=2 \ --text="Choose which empty ROM folders to remove:" \ @@ -769,22 +769,22 @@ configurator_data_management_dialog() { log i "Removing empty folder $folder" rm -rf "$folder" done - configurator_generic_dialog "RetroDECK Configurator - Clean Empty ROM Folders" "The removal process is complete." + configurator_generic_dialog "RetroDECK Configurator - Clean Empty System Folders" "The removal process is complete." elif [[ ! -z $choice ]]; then # User clicked "Remove All" for folder in "${all_empty_folders[@]}"; do log i "Removing empty folder $folder" rm -rf "$folder" done - configurator_generic_dialog "RetroDECK Configurator - Clean Empty ROM Folders" "The removal process is complete." + configurator_generic_dialog "RetroDECK Configurator - Clean Empty System Folders" "The removal process is complete." fi configurator_welcome_dialog ;; - "Rebuild All ROM Folders" ) + "ROMS Folder: Rebuild Systems" ) log i "Configurator: opening \"$choice\" menu" es-de --create-system-dirs - configurator_generic_dialog "RetroDECK Configurator - Rebuild All ROM Folders" "The rebuilding process is complete.\n\nAll missing default ROM folders will now exist in $roms_folder" + configurator_generic_dialog "RetroDECK Configurator - Rebuild System Folders" "The rebuilding process is complete.\n\nAll missing default system folders will now exist in $roms_folder" configurator_welcome_dialog ;;