diff --git a/source/ChanSort.Loader.Amdb/ChanSort.Loader.Amdb.csproj b/source/ChanSort.Loader.Amdb/ChanSort.Loader.Amdb.csproj
index 3f854a3..98b8691 100644
--- a/source/ChanSort.Loader.Amdb/ChanSort.Loader.Amdb.csproj
+++ b/source/ChanSort.Loader.Amdb/ChanSort.Loader.Amdb.csproj
@@ -13,7 +13,8 @@
..\Release\
-
+
+
diff --git a/source/ChanSort.Loader.Android/ChanSort.Loader.Android.csproj b/source/ChanSort.Loader.Android/ChanSort.Loader.Android.csproj
index 71d6aab..fa4c037 100644
--- a/source/ChanSort.Loader.Android/ChanSort.Loader.Android.csproj
+++ b/source/ChanSort.Loader.Android/ChanSort.Loader.Android.csproj
@@ -15,7 +15,8 @@
-
+
+
diff --git a/source/ChanSort.Loader.DBM/ChanSort.Loader.DBM.ini b/source/ChanSort.Loader.DBM/ChanSort.Loader.DBM.ini
index 4c255ba..d8f87d2 100644
--- a/source/ChanSort.Loader.DBM/ChanSort.Loader.DBM.ini
+++ b/source/ChanSort.Loader.DBM/ChanSort.Loader.DBM.ini
@@ -242,6 +242,66 @@ offVideoPid=110
;---------------------------------------
+[dbm:782536]
+; overall file layout, e.g. Vantage VT-80 HD
+isDvbS=true
+offChecksum=0x0000
+offDataLength=0x0002
+offData=0x0006
+
+offSatelliteBitmap=0x0006
+lenSatelliteBitmap=28
+offSatelliteData=0x0022
+numSatellite=200
+lenSatelliteData=88
+
+offTransponderBitmap=0x44e0
+lenTransponderBitmap=376
+offTransponderData=0x465A
+numTransponder=3000
+lenTransponderData=36
+
+offChannelBitmap=0x1EC50
+lenChannelBitmap=502
+offChannelData=0x1EE46
+numChannel=4000
+lenChannelData=164
+
+;satellite record
+offSatName=0
+lenSatName=34
+offLowFreq=34
+offHighFreq=36
+offOribalPos=74
+
+;transponder record
+offFreq=0
+offSymRate=20
+
+;channel record
+reorderPhysically=true
+offName=0
+lenName=64
+offProgNr=64
+offLcn=66
+offSatelliteIndex=70
+offTransponderIndex=72
+offServiceType=80
+offHide=81
+maskHide=0x04
+offSkip=81
+maskSkip=0x08
+offLock=81
+maskLock=0x10
+offFavorites=83
+offTsid=100
+offOnid=102
+offSid=104
+offPcrPid=108
+offVideoPid=110
+
+;---------------------------------------
+
[dbm:785256]
; overall file layout, e.g. Strong HB_DATABASE_5_4.DBM
isDvbS=true
diff --git a/source/ChanSort.Loader.Hisense/ChanSort.Loader.Hisense.csproj b/source/ChanSort.Loader.Hisense/ChanSort.Loader.Hisense.csproj
index 7569b43..1ae9895 100644
--- a/source/ChanSort.Loader.Hisense/ChanSort.Loader.Hisense.csproj
+++ b/source/ChanSort.Loader.Hisense/ChanSort.Loader.Hisense.csproj
@@ -44,7 +44,8 @@
-
+
+
diff --git a/source/ChanSort.Loader.Panasonic/ChanSort.Loader.Panasonic.csproj b/source/ChanSort.Loader.Panasonic/ChanSort.Loader.Panasonic.csproj
index dd3f6e7..a1b25be 100644
--- a/source/ChanSort.Loader.Panasonic/ChanSort.Loader.Panasonic.csproj
+++ b/source/ChanSort.Loader.Panasonic/ChanSort.Loader.Panasonic.csproj
@@ -32,7 +32,8 @@
-
+
+
diff --git a/source/ChanSort.Loader.Panasonic/DbChannel.cs b/source/ChanSort.Loader.Panasonic/DbChannel.cs
index 379d330..54f658b 100644
--- a/source/ChanSort.Loader.Panasonic/DbChannel.cs
+++ b/source/ChanSort.Loader.Panasonic/DbChannel.cs
@@ -200,8 +200,15 @@ namespace ChanSort.Loader.Panasonic
///
private void ReadNamesWithEncodingDetection(IDataReader r, IDictionary field, Encoding encoding)
{
- byte[] buffer = new byte[100];
- int len = (int)r.GetBytes(field["sname"], 0, buffer, 0, buffer.Length);
+#if true || NoAccessViolationInSQLitePCLRaw
+ // The NuGet packages Microsoft.Data.Sqlite 9.0.0-9.0.2 throw an AccessViolationException and terminate the program when reading a "string" column with GetBytes()
+ byte[] buffer = new byte[300];
+ int len = (int)r.GetBytes(field["sname"], 0, buffer, 0, buffer.Length/3);
+#else
+ var str = r.GetString(field["sname"]);
+ var buffer = Encoding.UTF8.GetBytes(str);
+ var len = buffer.Length;
+#endif
this.RawName = new byte[len];
Array.Copy(buffer, 0, this.RawName, 0, len);
this.ChangeEncoding(encoding);
diff --git a/source/ChanSort.Loader.Philips/ChanSort.Loader.Philips.csproj b/source/ChanSort.Loader.Philips/ChanSort.Loader.Philips.csproj
index ec6f4ca..eeeb3e9 100644
--- a/source/ChanSort.Loader.Philips/ChanSort.Loader.Philips.csproj
+++ b/source/ChanSort.Loader.Philips/ChanSort.Loader.Philips.csproj
@@ -44,7 +44,8 @@
-
+
+
diff --git a/source/ChanSort.Loader.Samsung/ChanSort.Loader.Samsung.csproj b/source/ChanSort.Loader.Samsung/ChanSort.Loader.Samsung.csproj
index de1fc7b..d51593f 100644
--- a/source/ChanSort.Loader.Samsung/ChanSort.Loader.Samsung.csproj
+++ b/source/ChanSort.Loader.Samsung/ChanSort.Loader.Samsung.csproj
@@ -38,7 +38,8 @@
-
+
+
diff --git a/source/ChanSort.Loader.SatcoDX/Channel.cs b/source/ChanSort.Loader.SatcoDX/Channel.cs
index 41c0653..59fc331 100644
--- a/source/ChanSort.Loader.SatcoDX/Channel.cs
+++ b/source/ChanSort.Loader.SatcoDX/Channel.cs
@@ -10,6 +10,7 @@ namespace ChanSort.Loader.SatcoDX
private readonly byte[] data;
public int FileOffset { get; }
public int Length { get; }
+ private bool forceUtf8;
#region ctor()
@@ -27,7 +28,7 @@ namespace ChanSort.Loader.SatcoDX
throw LoaderException.Fail("Unrecognized channel format");
// 10-27: satellite name
- this.Satellite = line.Substring(10, 18);
+ this.Satellite = line.Substring(10, 18).TrimEnd('\0', ' ', '_');
// 28: channel type
var type = line[28];
@@ -96,14 +97,19 @@ namespace ChanSort.Loader.SatcoDX
// 43-50 + 115-126 in version 103 or 115-131 in version 105: channel name
byte[] nameBytes = new byte[8 + 17];
- var nameLen2 = Math.Min(length - 115, 17); // version 103 has 12 extra bytes for channel name, version 105 has 17
+ int lineEnd = Array.IndexOf(data, (byte)'\x0A', start + 115);
+ var maxLen = lineEnd < 0 ? data.Length - start : lineEnd - start >= 132 ? 17 : 12;
+ var nameLen2 = Math.Min(length - 115, maxLen); // version 103 has 12 extra bytes for channel name, version 105 has 17 (uploaded_service_list.sdx) or 12 (Panasonic Fire-OS Channels.sdx)
Array.Copy(data, start + 43, nameBytes, 0, 8);
Array.Copy(data, start + 115, nameBytes, 8, nameLen2);
// I have seen format 103 files using only implicit CP1252 encoding for Umlauts, as well as format 105 with implicit UTF-8/explicit DVB-encoding
var oldDefaultEncoding = decoder.DefaultEncoding;
if (nameLen2 > 12)
+ {
decoder.DefaultEncoding = Encoding.UTF8;
+ this.forceUtf8 = true;
+ }
decoder.GetChannelNames(nameBytes, 0, nameBytes.Length, out var longName, out var shortName);
decoder.DefaultEncoding = oldDefaultEncoding;
this.Name = longName.TrimEnd();
@@ -119,6 +125,8 @@ namespace ChanSort.Loader.SatcoDX
return;
// 43-50 + 115-126 in version 103 or 115-131 in version 105: channel name
+ if (this.forceUtf8)
+ encoding = Encoding.UTF8;
var bytes = encoding.GetBytes(this.Name);
Tools.MemSet(buffer, 43, 32, 8);
Tools.MemSet(buffer, 115, 32, buffer.Length - 115 -1);
diff --git a/source/ChanSort.Loader.TCL/ChanSort.Loader.TCL.csproj b/source/ChanSort.Loader.TCL/ChanSort.Loader.TCL.csproj
index 4839be4..f6f37bf 100644
--- a/source/ChanSort.Loader.TCL/ChanSort.Loader.TCL.csproj
+++ b/source/ChanSort.Loader.TCL/ChanSort.Loader.TCL.csproj
@@ -6,7 +6,8 @@
latest
-
+
+
diff --git a/source/ChanSort.Loader.Toshiba/ChanSort.Loader.Toshiba.csproj b/source/ChanSort.Loader.Toshiba/ChanSort.Loader.Toshiba.csproj
index ef0e9a8..6dab289 100644
--- a/source/ChanSort.Loader.Toshiba/ChanSort.Loader.Toshiba.csproj
+++ b/source/ChanSort.Loader.Toshiba/ChanSort.Loader.Toshiba.csproj
@@ -30,7 +30,8 @@
-
+
+
diff --git a/source/ChanSort.Loader.VisionEdge4K/ChanSort.Loader.VisionEdge4K.csproj b/source/ChanSort.Loader.VisionEdge4K/ChanSort.Loader.VisionEdge4K.csproj
index 3f854a3..98b8691 100644
--- a/source/ChanSort.Loader.VisionEdge4K/ChanSort.Loader.VisionEdge4K.csproj
+++ b/source/ChanSort.Loader.VisionEdge4K/ChanSort.Loader.VisionEdge4K.csproj
@@ -13,7 +13,8 @@
..\Release\
-
+
+
diff --git a/source/ChanSort/ChanSort.csproj b/source/ChanSort/ChanSort.csproj
index 66d830a..0100a90 100644
--- a/source/ChanSort/ChanSort.csproj
+++ b/source/ChanSort/ChanSort.csproj
@@ -218,6 +218,8 @@
+
+
diff --git a/source/ChanSort/MainForm.Designer.cs b/source/ChanSort/MainForm.Designer.cs
index 8352c6d..5e23dd6 100644
--- a/source/ChanSort/MainForm.Designer.cs
+++ b/source/ChanSort/MainForm.Designer.cs
@@ -225,6 +225,7 @@
this.popupInputSource = new DevExpress.XtraBars.PopupMenu(this.components);
this.popupFavList = new DevExpress.XtraBars.PopupMenu(this.components);
this.timerSelectFocusedRow = new System.Windows.Forms.Timer(this.components);
+ this.mnuFileAdvanced = new DevExpress.XtraBars.BarSubItem();
((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1.Panel1)).BeginInit();
this.splitContainerControl1.Panel1.SuspendLayout();
@@ -1137,9 +1138,10 @@
this.miSwapWithMarked,
this.miConvert,
this.miSaveAs,
- this.miLangIt});
+ this.miLangIt,
+ this.mnuFileAdvanced});
this.barManager1.MainMenu = this.bar1;
- this.barManager1.MaxItemId = 123;
+ this.barManager1.MaxItemId = 124;
this.barManager1.ShowFullMenus = true;
this.barManager1.ShortcutItemClick += new DevExpress.XtraBars.ShortcutItemClickEventHandler(this.barManager1_ShortcutItemClick);
//
@@ -1192,10 +1194,8 @@
new DevExpress.XtraBars.LinkPersistInfo(this.miRestoreOriginal),
new DevExpress.XtraBars.LinkPersistInfo(this.miDeleteBackup),
new DevExpress.XtraBars.LinkPersistInfo(this.miSave, true),
- new DevExpress.XtraBars.LinkPersistInfo(this.miSaveAs),
- new DevExpress.XtraBars.LinkPersistInfo(this.miSaveReferenceFile),
- new DevExpress.XtraBars.LinkPersistInfo(this.miConvert),
new DevExpress.XtraBars.LinkPersistInfo(this.miExcelExport),
+ new DevExpress.XtraBars.LinkPersistInfo(this.mnuFileAdvanced),
new DevExpress.XtraBars.LinkPersistInfo(this.miOpenReferenceFile, true),
new DevExpress.XtraBars.LinkPersistInfo(this.miAddFromRefList),
new DevExpress.XtraBars.LinkPersistInfo(this.miPrint, true),
@@ -2281,6 +2281,16 @@
//
this.timerSelectFocusedRow.Tick += new System.EventHandler(this.timerSelectFocusedRow_Tick);
//
+ // mnuFileAdvanced
+ //
+ resources.ApplyResources(this.mnuFileAdvanced, "mnuFileAdvanced");
+ this.mnuFileAdvanced.Id = 123;
+ this.mnuFileAdvanced.LinksPersistInfo.AddRange(new DevExpress.XtraBars.LinkPersistInfo[] {
+ new DevExpress.XtraBars.LinkPersistInfo(this.miSaveReferenceFile),
+ new DevExpress.XtraBars.LinkPersistInfo(this.miConvert),
+ new DevExpress.XtraBars.LinkPersistInfo(this.miSaveAs)});
+ this.mnuFileAdvanced.Name = "mnuFileAdvanced";
+ //
// MainForm
//
this.AllowDrop = true;
@@ -2541,6 +2551,7 @@
private DevExpress.XtraBars.BarButtonItem miConvert;
private DevExpress.XtraBars.BarButtonItem miSaveAs;
private DevExpress.XtraBars.BarButtonItem miLangIt;
+ private DevExpress.XtraBars.BarSubItem mnuFileAdvanced;
}
}
diff --git a/source/ChanSort/MainForm.cs.resx b/source/ChanSort/MainForm.cs.resx
index 1c06106..c36062f 100644
--- a/source/ChanSort/MainForm.cs.resx
+++ b/source/ChanSort/MainForm.cs.resx
@@ -663,4 +663,7 @@
\d{1,4}
+
+ Vyspělý
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.de.resx b/source/ChanSort/MainForm.de.resx
index 21cb130..9ead2b3 100644
--- a/source/ChanSort/MainForm.de.resx
+++ b/source/ChanSort/MainForm.de.resx
@@ -1488,4 +1488,7 @@ speziellen Anbieter, Satelliten oder Länderlisten aus.
FIlter
+
+ Erweitert
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.es.resx b/source/ChanSort/MainForm.es.resx
index 792c9b8..7a0a7d8 100644
--- a/source/ChanSort/MainForm.es.resx
+++ b/source/ChanSort/MainForm.es.resx
@@ -654,4 +654,7 @@
Esquema de colores...
+
+ Avanzado
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.hu.resx b/source/ChanSort/MainForm.hu.resx
index 84bdb6d..78d773a 100644
--- a/source/ChanSort/MainForm.hu.resx
+++ b/source/ChanSort/MainForm.hu.resx
@@ -678,4 +678,7 @@
Audio\nPID
+
+ Fejlett
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.it.resx b/source/ChanSort/MainForm.it.resx
index 2188cd0..d2bb652 100644
--- a/source/ChanSort/MainForm.it.resx
+++ b/source/ChanSort/MainForm.it.resx
@@ -672,4 +672,7 @@ elenchi di fornitori, satelliti o paesi specifici.
controllo del contenitore diviso 1
+
+ Avanzato
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.pl.resx b/source/ChanSort/MainForm.pl.resx
index 655691a..e99fb32 100644
--- a/source/ChanSort/MainForm.pl.resx
+++ b/source/ChanSort/MainForm.pl.resx
@@ -696,4 +696,7 @@
Zamień z zaznaczonym
+
+ Postępowy
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.pt.resx b/source/ChanSort/MainForm.pt.resx
index 2d381c6..cbb9d1c 100644
--- a/source/ChanSort/MainForm.pt.resx
+++ b/source/ChanSort/MainForm.pt.resx
@@ -379,4 +379,7 @@
&Idioma
+
+ Avançado
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.resx b/source/ChanSort/MainForm.resx
index 75abb6e..747a859 100644
--- a/source/ChanSort/MainForm.resx
+++ b/source/ChanSort/MainForm.resx
@@ -276,7 +276,7 @@
gridLeft
- ChanSort.XGridControl, ChanSort, Version=1.0.8625.19498, Culture=neutral, PublicKeyToken=null
+ ChanSort.XGridControl, ChanSort, Version=1.0.9198.20671, Culture=neutral, PublicKeyToken=null
grpOutputList
@@ -419,11 +419,14 @@
4
-
- Save &as...
+
+ Export Excel list...
-
- Save channel list under a different file name
+
+ 32
+
+
+ Advanced
Save reference list...
@@ -437,11 +440,11 @@
33
-
- Export Excel list...
+
+ Save &as...
-
- 32
+
+ Save channel list under a different file name
Apply order from a reference list...
@@ -838,8 +841,8 @@
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4xLCBWZXJzaW9uPTIz
- LjEuNC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4yLCBWZXJzaW9uPTIz
+ LjIuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEZpbGUE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICKaPJ5gsBeU2NTSFe
@@ -848,8 +851,8 @@
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4xLCBWZXJzaW9uPTIz
- LjEuNC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4yLCBWZXJzaW9uPTIz
+ LjIuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEhlbHAE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICdEVVDegwMU2acNpw
@@ -858,8 +861,8 @@
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4xLCBWZXJzaW9uPTIz
- LjEuNC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4yLCBWZXJzaW9uPTIz
+ LjIuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAABEVkaXQE/P///wtTeXN0ZW0uR3VpZAsAAAACX2ECX2IC
X2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICZMTu18lZRU+IqmAu
@@ -868,8 +871,8 @@
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4xLCBWZXJzaW9uPTIz
- LjEuNC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4yLCBWZXJzaW9uPTIz
+ LjIuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAAB09wdGlvbnME/P///wtTeXN0ZW0uR3VpZAsAAAACX2EC
X2ICX2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICXJMOh9nzAkKc
@@ -878,8 +881,8 @@
- AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4xLCBWZXJzaW9uPTIz
- LjEuNC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
+ AAEAAAD/////AQAAAAAAAAAMAgAAAF1EZXZFeHByZXNzLlh0cmFCYXJzLnYyMy4yLCBWZXJzaW9uPTIz
+ LjIuNS4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEFAQAA
ACZEZXZFeHByZXNzLlh0cmFCYXJzLkJhck1hbmFnZXJDYXRlZ29yeQMAAAAETmFtZQRHdWlkB1Zpc2li
bGUBAwALU3lzdGVtLkd1aWQBAgAAAAYDAAAADUFjY2Vzc2liaWxpdHkE/P///wtTeXN0ZW0uR3VpZAsA
AAACX2ECX2ICX2MCX2QCX2UCX2YCX2cCX2gCX2kCX2oCX2sAAAAAAAAAAAAAAAgHBwICAgICAgICeIvz
@@ -1267,7 +1270,7 @@
gviewLeft
- ChanSort.XGridView, ChanSort, Version=1.0.8625.19498, Culture=neutral, PublicKeyToken=null
+ ChanSort.XGridView, ChanSort, Version=1.0.9198.20671, Culture=neutral, PublicKeyToken=null
colIndex1
@@ -1351,13 +1354,13 @@
globalImageCollection1
- ChanSort.Ui.GlobalImageCollection, ChanSort, Version=1.0.8625.19498, Culture=neutral, PublicKeyToken=null
+ ChanSort.Ui.GlobalImageCollection, ChanSort, Version=1.0.9198.20671, Culture=neutral, PublicKeyToken=null
gviewRight
- ChanSort.XGridView, ChanSort, Version=1.0.8625.19498, Culture=neutral, PublicKeyToken=null
+ ChanSort.XGridView, ChanSort, Version=1.0.9198.20671, Culture=neutral, PublicKeyToken=null
colIndex
@@ -2151,6 +2154,12 @@
System.Windows.Forms.Timer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ mnuFileAdvanced
+
+
+ DevExpress.XtraBars.BarSubItem, DevExpress.XtraBars.v23.2, Version=23.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+
MainForm
@@ -2158,7 +2167,7 @@
DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v23.2, Version=23.2.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
- 08/13/2023 10:51:28
+ 03/08/2025 11:54:22
16, 16
@@ -3042,7 +3051,7 @@
gridRight
- ChanSort.XGridControl, ChanSort, Version=1.0.8625.19498, Culture=neutral, PublicKeyToken=null
+ ChanSort.XGridControl, ChanSort, Version=1.0.9198.20671, Culture=neutral, PublicKeyToken=null
grpInputList
@@ -3333,15 +3342,15 @@
611, 17
- 742, 17
+ 741, 17
- 873, 17
+ 872, 17
- 1026, 17
+ 1025, 17
- 1151, 17
+ 1150, 17
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.ro.resx b/source/ChanSort/MainForm.ro.resx
index c9063b9..e6f5923 100644
--- a/source/ChanSort/MainForm.ro.resx
+++ b/source/ChanSort/MainForm.ro.resx
@@ -687,4 +687,7 @@ furnizor specific, satelit sau liste de țări.
\d{1,4}
+
+ Avansat
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.ru.resx b/source/ChanSort/MainForm.ru.resx
index 061e8e7..4110a48 100644
--- a/source/ChanSort/MainForm.ru.resx
+++ b/source/ChanSort/MainForm.ru.resx
@@ -717,4 +717,7 @@
Язык
+
+ передовой
+
\ No newline at end of file
diff --git a/source/ChanSort/MainForm.tr.resx b/source/ChanSort/MainForm.tr.resx
index ec8f363..942eecf 100644
--- a/source/ChanSort/MainForm.tr.resx
+++ b/source/ChanSort/MainForm.tr.resx
@@ -657,4 +657,7 @@
Renk uyumu...+X91
+
+ Gelişmiş
+
\ No newline at end of file
diff --git a/source/Information/FileStructures_for_HHD_Hex_Editor_Neo/dbm.h b/source/Information/FileStructures_for_HHD_Hex_Editor_Neo/dbm.h
index 9ff6cf2..e951a23 100644
--- a/source/Information/FileStructures_for_HHD_Hex_Editor_Neo/dbm.h
+++ b/source/Information/FileStructures_for_HHD_Hex_Editor_Neo/dbm.h
@@ -184,6 +184,19 @@ public struct DBM
channelRecordCount = 4000;
channelRecordLength = 164;
break;
+ case 782536:
+ // Vantage VT-80 HD
+ satBitmapLength = 28;
+ satRecordCount = 200;
+ satRecordLength = 88;
+ transponderBitmapLength = 376;
+ transponderRecordCount = 3000;
+ transponderRecordLength = 36;
+ unknownDataAfterTransponderData = 22;
+ channelBitmapLength = 502;
+ channelRecordCount = 4000;
+ channelRecordLength = 164;
+ break;
case 785256:
// Strong HB_DATABASE_5_4.DBM
satBitmapLength = 32;
diff --git a/source/Spike.LgWebOs5/Spikes.csproj b/source/Spike.LgWebOs5/Spikes.csproj
index e59a764..12e439d 100644
--- a/source/Spike.LgWebOs5/Spikes.csproj
+++ b/source/Spike.LgWebOs5/Spikes.csproj
@@ -26,6 +26,8 @@
+
+
diff --git a/source/Test.Loader.Hisense/Test.Loader.Hisense.csproj b/source/Test.Loader.Hisense/Test.Loader.Hisense.csproj
index 6ae9c6c..8933be1 100644
--- a/source/Test.Loader.Hisense/Test.Loader.Hisense.csproj
+++ b/source/Test.Loader.Hisense/Test.Loader.Hisense.csproj
@@ -13,6 +13,8 @@
+
+
diff --git a/source/Test.Loader.Panasonic/Test.Loader.Panasonic.csproj b/source/Test.Loader.Panasonic/Test.Loader.Panasonic.csproj
index fa532a8..b5d74c3 100644
--- a/source/Test.Loader.Panasonic/Test.Loader.Panasonic.csproj
+++ b/source/Test.Loader.Panasonic/Test.Loader.Panasonic.csproj
@@ -13,6 +13,8 @@
+
+
diff --git a/source/Test.Loader.Philips/Test.Loader.Philips.csproj b/source/Test.Loader.Philips/Test.Loader.Philips.csproj
index 8e3c020..62ac5d5 100644
--- a/source/Test.Loader.Philips/Test.Loader.Philips.csproj
+++ b/source/Test.Loader.Philips/Test.Loader.Philips.csproj
@@ -205,6 +205,8 @@
+
+
diff --git a/source/Test.Loader.Samsung/Test.Loader.Samsung.csproj b/source/Test.Loader.Samsung/Test.Loader.Samsung.csproj
index dd6c529..95eed88 100644
--- a/source/Test.Loader.Samsung/Test.Loader.Samsung.csproj
+++ b/source/Test.Loader.Samsung/Test.Loader.Samsung.csproj
@@ -21,6 +21,8 @@
+
+
diff --git a/source/Test.Loader.Toshiba/Test.Loader.Toshiba.csproj b/source/Test.Loader.Toshiba/Test.Loader.Toshiba.csproj
index 87d6d0f..be43680 100644
--- a/source/Test.Loader.Toshiba/Test.Loader.Toshiba.csproj
+++ b/source/Test.Loader.Toshiba/Test.Loader.Toshiba.csproj
@@ -21,6 +21,8 @@
+
+
diff --git a/source/Translation.xlsx b/source/Translation.xlsx
index c0449a2..6db6565 100644
Binary files a/source/Translation.xlsx and b/source/Translation.xlsx differ
diff --git a/source/changelog.md b/source/changelog.md
index 77ae1b5..b3b3bd3 100644
--- a/source/changelog.md
+++ b/source/changelog.md
@@ -1,6 +1,12 @@
ChanSort Change Log
===================
+2025-03-08
+- Panasonic Fire-OS Channels.sdx lists: removed trailing underscore and space characters from channel names
+- downgraded SQLite libraries to avoid a memory access violation crash in the SQLitePCL.raw 2.1.10
+- added support for \*.dbm files with size 782536 (e.g. Vantage VT-80 HD)
+- moved "Save as..." and "Export reference list" to a sub menu as they caused frequent confusion with the regular "Save".
+
2025-01-11
- added support for Philips PFL9715K/02 (Repair\\s2channellib\\\*.dat channel list format version 0.1)
- added support for Grundig dtv\_cmdb\_3.bin channel lists with size of 1270 KB