diff --git a/SabreTools.Core/Tools/Converters.cs b/SabreTools.Core/Tools/Converters.cs index c44f267f..a844cc59 100644 --- a/SabreTools.Core/Tools/Converters.cs +++ b/SabreTools.Core/Tools/Converters.cs @@ -535,6 +535,20 @@ namespace SabreTools.Core.Tools case "analog_mask": return DatItemField.Analog_Mask; + // Archive + case "number": + return DatItemField.Number; + + case "clone": + return DatItemField.Clone; + + case "regparent": + case "reg_parent": + return DatItemField.RegParent; + + case "languages": + return DatItemField.Languages; + // BiosSet case "description": case "biosdescription": diff --git a/SabreTools.DatFiles/Setter.cs b/SabreTools.DatFiles/Setter.cs index cbd92680..a978a955 100644 --- a/SabreTools.DatFiles/Setter.cs +++ b/SabreTools.DatFiles/Setter.cs @@ -243,6 +243,7 @@ namespace SabreTools.DatFiles if (datItem is Adjuster) SetFields(datItem as Adjuster); else if (datItem is Analog) SetFields(datItem as Analog); + else if (datItem is Archive) SetFields(datItem as Archive); else if (datItem is BiosSet) SetFields(datItem as BiosSet); else if (datItem is Chip) SetFields(datItem as Chip); else if (datItem is Condition) SetFields(datItem as Condition); @@ -459,6 +460,28 @@ namespace SabreTools.DatFiles analog.Mask = DatItemMappings[DatItemField.Analog_Mask]; } + /// + /// Set fields with given values + /// + /// Archive to remove replace fields in + private void SetFields(Archive archive) + { + if (DatItemMappings.Keys.Contains(DatItemField.Number)) + analog.Number = DatItemMappings[DatItemField.Number]; + + if (DatItemMappings.Keys.Contains(DatItemField.Clone)) + analog.Clone = DatItemMappings[DatItemField.Clone]; + + if (DatItemMappings.Keys.Contains(DatItemField.RegParent)) + analog.RegParent = DatItemMappings[DatItemField.RegParent]; + + if (DatItemMappings.Keys.Contains(DatItemField.Region)) + analog.Region = DatItemMappings[DatItemField.Region]; + + if (DatItemMappings.Keys.Contains(DatItemField.Languages)) + analog.Languages = DatItemMappings[DatItemField.Languages]; + } + /// /// Set fields with given values ///