Code restyling.

This commit is contained in:
2020-02-29 18:03:35 +00:00
parent 4ea327f0c6
commit f7e173710e
855 changed files with 43605 additions and 38045 deletions

View File

@@ -43,55 +43,73 @@ namespace Aaru.DiscImages
public partial class CisCopy
{
public bool Create(string path, MediaType mediaType, Dictionary<string, string> options, ulong sectors,
uint sectorSize)
uint sectorSize)
{
if(sectorSize != 512)
{
ErrorMessage = "Unsupported sector size";
return false;
}
if(!SupportedMediaTypes.Contains(mediaType))
{
ErrorMessage = $"Unsupport media format {mediaType}";
return false;
}
imageInfo = new ImageInfo {MediaType = mediaType, SectorSize = sectorSize, Sectors = sectors};
imageInfo = new ImageInfo
{
MediaType = mediaType, SectorSize = sectorSize, Sectors = sectors
};
try { writingStream = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None); }
try
{
writingStream = new FileStream(path, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.None);
}
catch(IOException e)
{
ErrorMessage = $"Could not create new image file, exception {e.Message}";
return false;
}
DiskType diskType;
switch(mediaType)
{
case MediaType.DOS_35_DS_DD_9:
diskType = DiskType.MF2DD;
break;
case MediaType.DOS_35_HD:
diskType = DiskType.MF2HD;
break;
case MediaType.DOS_525_DS_DD_8:
diskType = DiskType.MD2DD8;
break;
case MediaType.DOS_525_DS_DD_9:
diskType = DiskType.MD2DD;
break;
case MediaType.DOS_525_HD:
diskType = DiskType.MD2HD;
break;
case MediaType.DOS_525_SS_DD_8:
diskType = DiskType.MD1DD8;
break;
case MediaType.DOS_525_SS_DD_9:
diskType = DiskType.MD1DD;
break;
default:
ErrorMessage = $"Unsupport media format {mediaType}";
return false;
}
@@ -106,21 +124,28 @@ namespace Aaru.DiscImages
case DiskType.MD2DD8:
case DiskType.MD2DD:
tracks = 80;
break;
case DiskType.MF2DD:
case DiskType.MD2HD:
case DiskType.MF2HD:
tracks = 160;
break;
}
int headstep = 1;
if(diskType == DiskType.MD1DD || diskType == DiskType.MD1DD8) headstep = 2;
int headstep = 1;
if(diskType == DiskType.MD1DD ||
diskType == DiskType.MD1DD8)
headstep = 2;
for(int i = 0; i < tracks; i += headstep)
{
writingStream.WriteByte((byte)TrackType.Copied);
if(headstep == 2) writingStream.WriteByte(0);
if(headstep == 2)
writingStream.WriteByte(0);
}
writingStream.WriteByte((byte)Compression.None);
@@ -128,12 +153,14 @@ namespace Aaru.DiscImages
IsWriting = true;
ErrorMessage = null;
return true;
}
public bool WriteMediaTag(byte[] data, MediaTagType tag)
{
ErrorMessage = "Writing media tags is not supported.";
return false;
}
@@ -142,18 +169,21 @@ namespace Aaru.DiscImages
if(!IsWriting)
{
ErrorMessage = "Tried to write on a non-writable image";
return false;
}
if(data.Length != 512)
{
ErrorMessage = "Incorrect data size";
return false;
}
if(sectorAddress >= imageInfo.Sectors)
{
ErrorMessage = "Tried to write past image size";
return false;
}
@@ -161,6 +191,7 @@ namespace Aaru.DiscImages
writingStream.Write(data, 0, data.Length);
ErrorMessage = "";
return true;
}
@@ -169,18 +200,21 @@ namespace Aaru.DiscImages
if(!IsWriting)
{
ErrorMessage = "Tried to write on a non-writable image";
return false;
}
if(data.Length % 512 != 0)
{
ErrorMessage = "Incorrect data size";
return false;
}
if(sectorAddress + length > imageInfo.Sectors)
{
ErrorMessage = "Tried to write past image size";
return false;
}
@@ -188,18 +222,21 @@ namespace Aaru.DiscImages
writingStream.Write(data, 0, data.Length);
ErrorMessage = "";
return true;
}
public bool WriteSectorLong(byte[] data, ulong sectorAddress)
{
ErrorMessage = "Writing sectors with tags is not supported.";
return false;
}
public bool WriteSectorsLong(byte[] data, ulong sectorAddress, uint length)
{
ErrorMessage = "Writing sectors with tags is not supported.";
return false;
}
@@ -208,6 +245,7 @@ namespace Aaru.DiscImages
if(!IsWriting)
{
ErrorMessage = "Image is not opened for writing";
return false;
}
@@ -216,6 +254,7 @@ namespace Aaru.DiscImages
IsWriting = false;
ErrorMessage = "";
return true;
}
@@ -226,12 +265,14 @@ namespace Aaru.DiscImages
public bool WriteSectorTag(byte[] data, ulong sectorAddress, SectorTagType tag)
{
ErrorMessage = "Unsupported feature";
return false;
}
public bool WriteSectorsTag(byte[] data, ulong sectorAddress, uint length, SectorTagType tag)
{
ErrorMessage = "Unsupported feature";
return false;
}