public byte[] readdatafromfile(string filename, int address, int length, EDCFileType type)
{
byte[] retval = new byte[length];
try
{
FileStream fsi1 = File.OpenRead(filename);
while (address > fsi1.Length) address -= (int)fsi1.Length;
BinaryReader br1 = new BinaryReader(fsi1);
fsi1.Position = address;
string temp = string.Empty;
for (int i = 0; i < length; i++)
{
retval.SetValue(br1.ReadByte(), i);
}
// depends on filetype (EDC16 is not reversed)
if (type != EDCFileType.EDC16)
{
retval = reverseEndian(retval);
}
fsi1.Flush();
br1.Close();
fsi1.Close();
fsi1.Dispose();
}
catch (Exception E)
{
Console.WriteLine(E.Message);
}
return retval;
}