Corrected Apricot disk size.

This commit is contained in:
2017-09-22 23:32:11 +01:00
parent 3ef35c927c
commit 39e9164c1c
11 changed files with 28 additions and 14 deletions

View File

@@ -449,7 +449,7 @@ namespace DiscImageChef.CommonTypes
#endregion FDFORMAT, non-standard floppy formats #endregion FDFORMAT, non-standard floppy formats
#region Apricot ACT standard floppy formats #region Apricot ACT standard floppy formats
/// <summary>3.5", DS, DD, 77 tracks, 8 spt, 512 bytes/sector, MFM</summary> /// <summary>3.5", DS, DD, 70 tracks, 9 spt, 512 bytes/sector, MFM</summary>
Apricot_35, Apricot_35,
#endregion Apricot ACT standard floppy formats #endregion Apricot ACT standard floppy formats

View File

@@ -189,7 +189,7 @@ namespace DiscImageChef.CommonTypes
return MediaType.DOS_35_SS_DD_9; return MediaType.DOS_35_SS_DD_9;
case 610: case 610:
return MediaType.IBM33FD_512; return MediaType.IBM33FD_512;
case 616: case 630:
return MediaType.Apricot_35; return MediaType.Apricot_35;
case 640: case 640:
return MediaType.DOS_35_SS_DD_8; return MediaType.DOS_35_SS_DD_8;

View File

@@ -163,6 +163,20 @@ namespace DiscImageChef.ImagePlugins
break; break;
} }
break; break;
case 70:
switch(fdihdr.bps)
{
case 512:
switch(fdihdr.spt)
{
case 9:
if(fdihdr.heads == 1)
ImageInfo.mediaType = MediaType.Apricot_35;
break;
}
break;
}
break;
case 77: case 77:
switch(fdihdr.bps) switch(fdihdr.bps)
{ {

View File

@@ -289,7 +289,7 @@ namespace DiscImageChef.ImagePlugins
DicConsole.DebugWriteLine("Apridisk plugin", "Found a minimum of {0} sectors per track", ImageInfo.sectorsPerTrack); DicConsole.DebugWriteLine("Apridisk plugin", "Found a minimum of {0} sectors per track", ImageInfo.sectorsPerTrack);
if(ImageInfo.cylinders == 77 && ImageInfo.heads == 1 && ImageInfo.sectorsPerTrack == 8) if(ImageInfo.cylinders == 70 && ImageInfo.heads == 1 && ImageInfo.sectorsPerTrack == 9)
ImageInfo.mediaType = MediaType.Apricot_35; ImageInfo.mediaType = MediaType.Apricot_35;
else if(ImageInfo.cylinders == 80 && ImageInfo.heads == 1 && ImageInfo.sectorsPerTrack == 9) else if(ImageInfo.cylinders == 80 && ImageInfo.heads == 1 && ImageInfo.sectorsPerTrack == 9)
ImageInfo.mediaType = MediaType.DOS_35_SS_DD_9; ImageInfo.mediaType = MediaType.DOS_35_SS_DD_9;

View File

@@ -393,7 +393,7 @@ namespace DiscImageChef.ImagePlugins
ImageInfo.mediaType = MediaType.ACORN_35_DS_DD; ImageInfo.mediaType = MediaType.ACORN_35_DS_DD;
else if(header.heads == 2 && header.totalCylinders == 77 && header.sectorsPerTrack == 8 && header.sectorSize == 1024) else if(header.heads == 2 && header.totalCylinders == 77 && header.sectorsPerTrack == 8 && header.sectorSize == 1024)
ImageInfo.mediaType = MediaType.SHARP_35; ImageInfo.mediaType = MediaType.SHARP_35;
else if(header.heads == 1 && header.totalCylinders == 77 && header.sectorsPerTrack == 8 && header.sectorSize == 512) else if(header.heads == 1 && header.totalCylinders == 70 && header.sectorsPerTrack == 9 && header.sectorSize == 512)
ImageInfo.mediaType = MediaType.Apricot_35; ImageInfo.mediaType = MediaType.Apricot_35;
else else
ImageInfo.mediaType = MediaType.Unknown; ImageInfo.mediaType = MediaType.Unknown;

View File

@@ -344,7 +344,7 @@ namespace DiscImageChef.ImagePlugins
ImageInfo.mediaType = MediaType.DOS_35_SS_DD_8; ImageInfo.mediaType = MediaType.DOS_35_SS_DD_8;
else if(ImageInfo.heads == 2 && ImageInfo.cylinders == 80 && ImageInfo.sectorsPerTrack == 5 && ImageInfo.sectorSize == 1024) else if(ImageInfo.heads == 2 && ImageInfo.cylinders == 80 && ImageInfo.sectorsPerTrack == 5 && ImageInfo.sectorSize == 1024)
ImageInfo.mediaType = MediaType.ACORN_35_DS_DD; ImageInfo.mediaType = MediaType.ACORN_35_DS_DD;
else if(ImageInfo.heads == 1 && ImageInfo.cylinders == 77 && ImageInfo.sectorsPerTrack == 8 && ImageInfo.sectorSize == 512) else if(ImageInfo.heads == 1 && ImageInfo.cylinders == 70 && ImageInfo.sectorsPerTrack == 9 && ImageInfo.sectorSize == 512)
ImageInfo.mediaType = MediaType.Apricot_35; ImageInfo.mediaType = MediaType.Apricot_35;
else else
ImageInfo.mediaType = MediaType.Unknown; ImageInfo.mediaType = MediaType.Unknown;

View File

@@ -308,7 +308,7 @@ namespace DiscImageChef.ImagePlugins
ImageInfo.mediaType = MediaType.ACORN_35_DS_DD; ImageInfo.mediaType = MediaType.ACORN_35_DS_DD;
else if(ImageInfo.heads == 2 && ImageInfo.cylinders == 82 && ImageInfo.sectorsPerTrack == 10 && ImageInfo.sectorSize == 512) else if(ImageInfo.heads == 2 && ImageInfo.cylinders == 82 && ImageInfo.sectorsPerTrack == 10 && ImageInfo.sectorSize == 512)
ImageInfo.mediaType = MediaType.FDFORMAT_35_DD; ImageInfo.mediaType = MediaType.FDFORMAT_35_DD;
else if(ImageInfo.heads == 1 && ImageInfo.cylinders == 77 && ImageInfo.sectorsPerTrack == 8 && ImageInfo.sectorSize == 512) else if(ImageInfo.heads == 1 && ImageInfo.cylinders == 70 && ImageInfo.sectorsPerTrack == 9 && ImageInfo.sectorSize == 512)
ImageInfo.mediaType = MediaType.Apricot_35; ImageInfo.mediaType = MediaType.Apricot_35;
break; break;
case TransferRate.FiveHundredMFM: case TransferRate.FiveHundredMFM:

View File

@@ -252,13 +252,13 @@ namespace DiscImageChef.ImagePlugins
break; break;
} }
break; break;
case 77: case 70:
switch(header.heads) switch(header.heads)
{ {
case 1: case 1:
switch(header.sectorsPerTrack) switch(header.sectorsPerTrack)
{ {
case 8: case 9:
ImageInfo.mediaType = MediaType.Apricot_35; ImageInfo.mediaType = MediaType.Apricot_35;
break; break;
} }

View File

@@ -949,7 +949,7 @@ namespace DiscImageChef.ImagePlugins
{ {
switch(totalDiskSize) switch(totalDiskSize)
{ {
case 315392: case 322560:
return MediaType.Apricot_35; return MediaType.Apricot_35;
case 327680: case 327680:
return MediaType.DOS_35_SS_DD_8; return MediaType.DOS_35_SS_DD_8;

View File

@@ -453,9 +453,9 @@ namespace DiscImageChef.ImagePlugins
ImageInfo.sectorsPerTrack = 9; ImageInfo.sectorsPerTrack = 9;
break; break;
case MediaType.Apricot_35: case MediaType.Apricot_35:
ImageInfo.cylinders = 77; ImageInfo.cylinders = 70;
ImageInfo.heads = 1; ImageInfo.heads = 1;
ImageInfo.sectorsPerTrack = 8; ImageInfo.sectorsPerTrack = 9;
break; break;
case MediaType.DOS_35_ED: case MediaType.DOS_35_ED:
ImageInfo.cylinders = 80; ImageInfo.cylinders = 80;
@@ -967,7 +967,7 @@ namespace DiscImageChef.ImagePlugins
return MediaType.IBM33FD_256; return MediaType.IBM33FD_256;
case 306432: case 306432:
return MediaType.IBM33FD_512; return MediaType.IBM33FD_512;
case 315392: case 322560:
return MediaType.Apricot_35; return MediaType.Apricot_35;
case 325632: case 325632:
return MediaType.ECMA_70; return MediaType.ECMA_70;

View File

@@ -408,7 +408,7 @@ namespace DiscImageChef.Metadata
break; break;
case CommonTypes.MediaType.Apricot_35: case CommonTypes.MediaType.Apricot_35:
DiscType = "3.5\" floppy"; DiscType = "3.5\" floppy";
DiscSubType = "Apricot double-density, single-sided, 77 tracks"; DiscSubType = "Apricot double-density, single-sided, 70 tracks";
break; break;
case CommonTypes.MediaType.DMF: case CommonTypes.MediaType.DMF:
DiscType = "3.5\" floppy"; DiscType = "3.5\" floppy";