2023-04-04 18:31:19 -04:00
|
|
|
|
using SabreTools.Skippers.Tests;
|
|
|
|
|
|
|
|
|
|
|
|
namespace SabreTools.Skippers.Detectors
|
|
|
|
|
|
{
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// Detector for Atari 7800 headers
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <remarks>Originally from a7800.xml</remarks>
|
|
|
|
|
|
internal class Atari7800 : Detector
|
|
|
|
|
|
{
|
|
|
|
|
|
public Atari7800()
|
|
|
|
|
|
{
|
|
|
|
|
|
// Create tests
|
|
|
|
|
|
var rule1Test1 = new DataTest
|
|
|
|
|
|
{
|
|
|
|
|
|
Offset = "1",
|
|
|
|
|
|
Value = "415441524937383030",
|
|
|
|
|
|
Result = true,
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
var rule2Test1 = new DataTest
|
|
|
|
|
|
{
|
|
|
|
|
|
Offset = "64",
|
|
|
|
|
|
Value = "41435455414C20434152542044415441205354415254532048455245",
|
|
|
|
|
|
Result = true,
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
// Create rules
|
|
|
|
|
|
var rule1 = new Rule
|
|
|
|
|
|
{
|
|
|
|
|
|
StartOffset = "80",
|
|
|
|
|
|
EndOffset = "EOF",
|
|
|
|
|
|
Operation = HeaderSkipOperation.None,
|
2024-02-29 00:53:25 -05:00
|
|
|
|
Tests =
|
|
|
|
|
|
[
|
2023-04-04 18:31:19 -04:00
|
|
|
|
rule1Test1,
|
2024-02-29 00:53:25 -05:00
|
|
|
|
]
|
2023-04-04 18:31:19 -04:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
var rule2 = new Rule
|
|
|
|
|
|
{
|
|
|
|
|
|
StartOffset = "80",
|
|
|
|
|
|
EndOffset = "EOF",
|
|
|
|
|
|
Operation = HeaderSkipOperation.None,
|
2024-02-29 00:53:25 -05:00
|
|
|
|
Tests =
|
|
|
|
|
|
[
|
2023-04-04 18:31:19 -04:00
|
|
|
|
rule2Test1,
|
2024-02-29 00:53:25 -05:00
|
|
|
|
]
|
2023-04-04 18:31:19 -04:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
// Create file
|
|
|
|
|
|
Name = "Atari 7800";
|
|
|
|
|
|
Author = "Roman Scherzer";
|
|
|
|
|
|
Version = "1.0";
|
|
|
|
|
|
SourceFile = "a7800";
|
2024-02-29 00:53:25 -05:00
|
|
|
|
Rules =
|
|
|
|
|
|
[
|
2023-04-04 18:31:19 -04:00
|
|
|
|
rule1,
|
|
|
|
|
|
rule2,
|
2024-02-29 00:53:25 -05:00
|
|
|
|
];
|
2023-04-04 18:31:19 -04:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|