- improved IniFile and Mapping to better handle missing settings

- working on philips *.db/FLASH* file format (identified 3 different variations so far)
This commit is contained in:
Horst Beham
2021-09-15 10:59:05 +02:00
parent 44749acaf0
commit ece2cd7e66
15 changed files with 968 additions and 354 deletions

View File

@@ -62,14 +62,14 @@ namespace ChanSort.Loader.Samsung.Scm
this.OldProgramNr = (short)data.GetWord(_ProgramNr);
this.Name = data.GetString(_Name, data.Settings.GetInt("lenName"));
this.Favorites = this.ParseRawFavorites();
this.Lock = data.GetFlag(_Lock);
this.Lock = data.GetFlag(_Lock, false);
int hiddenPrimary = data.GetByte(_Hidden);
if (hiddenPrimary == 255)
this.Hidden = data.GetByte(_HiddenAlt) != 0;
else
this.Hidden = hiddenPrimary != 0;
this.Skip = data.GetFlag(_Skip);
this.Encrypted = data.GetFlag(_Encrypted);
this.Skip = data.GetFlag(_Skip, false);
this.Encrypted = data.GetFlag(_Encrypted, false);
this.IsDeleted = data.GetFlag(_Deleted, false) || !data.GetFlag(_IsActive, true);
this.AddDebug(data.Data, data.BaseOffset + 25, 3);
}

View File

@@ -390,7 +390,7 @@ namespace ChanSort.Loader.Samsung.Scm
int count = data.Length / c.avbtFineTuneLength;
for (int i = 0; i < count; i++)
{
bool isCable = mapping.GetFlag("offIsCable", "maskIsCable"); // HACK: this is just a guess
bool isCable = mapping.GetFlag("IsCable",false); // HACK: this is just a guess
int slot = mapping.GetWord("offSlotNr");
float freq = mapping.GetFloat("offFrequency");
var dict = isCable ? avbcFrequency : avbtFrequency;