public void Save()
        {
            settings.UseMemoryLayout            = useMemoryLayout;
            settings.DiscardUnusedSections      = discardUnusedSections;
            settings.NotUseStandardStartupFiles = notUseStandardStartup;
            settings.LinkedLibraries            = linkedLibraries.ToList();
            settings.LinkerScripts       = LinkerScripts.ToList();
            settings.SystemLibraries     = SystemLibraries.ToList();
            settings.InRom1Start         = Convert.ToUInt32(inRom1Start, 16);
            settings.InRom1Size          = Convert.ToUInt32(inRom1Size, 16);
            settings.InRom2Start         = Convert.ToUInt32(inRom2Start, 16);
            settings.InRom2Size          = Convert.ToUInt32(inRom2Size, 16);
            settings.InRam1Start         = Convert.ToUInt32(inRam1Start, 16);
            settings.InRam1Size          = Convert.ToUInt32(inRam1Size, 16);
            settings.InRam2Start         = Convert.ToUInt32(inRam2Start, 16);
            settings.InRam2Size          = Convert.ToUInt32(inRam2Size, 16);
            settings.ScatterFile         = scatterFile;
            settings.MiscLinkerArguments = miscOptions;
            settings.Library             = (LibraryType)librarySelectedIndex;

            var currentSettings = Model.GetToolchainSettings <GccToolchainSettings>();

            currentSettings.LinkSettings = settings;

            Model.SetToolchainSettings(currentSettings);

            Model.Save();
        }
        private async void AddLinkerScript(object param)
        {
            var ofd = new OpenFileDialog();

            ofd.InitialFileName = Model.LocationDirectory;

            var result = await ofd.ShowAsync();

            if (result != null && !string.IsNullOrEmpty(result.FirstOrDefault()))
            {
                string newInclude = Model.CurrentDirectory.MakeRelativePath(result.First()).ToAvalonPath();

                LinkerScripts.Add(newInclude);

                UpdateLinkerString();
            }
        }
 private void RemoveLinkerScript(object param)
 {
     LinkerScripts.Remove(SelectedLinkerScript);
     UpdateLinkerString();
 }