diff --git a/DiscImageChef.Tests/DiscImageChef.Tests.csproj b/DiscImageChef.Tests/DiscImageChef.Tests.csproj
index 63ff6d93..ff841050 100644
--- a/DiscImageChef.Tests/DiscImageChef.Tests.csproj
+++ b/DiscImageChef.Tests/DiscImageChef.Tests.csproj
@@ -104,6 +104,41 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/DiscImageChef.Tests/Filesystems/AFFS.cs b/DiscImageChef.Tests/Filesystems/AFFS.cs
index 0b6c4638..9a3288c5 100644
--- a/DiscImageChef.Tests/Filesystems/AFFS.cs
+++ b/DiscImageChef.Tests/Filesystems/AFFS.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : FAT12.cs
+// Filename : AFFS.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -45,1416 +45,38 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class FAT12
+ public class AFFS
{
readonly string[] testfiles = {
- // Concurrent DOS 6.00
- "concurrentdos_6.00_dshd.img.lz", "concurrentdos_6.00_mf2dd.img.lz", "concurrentdos_6.00_mf2hd.img.lz",
- // DR-DOS 3.40
- "drdos_3.40_dsdd.img.lz", "drdos_3.40_dsdd8.img.lz", "drdos_3.40_dshd.img.lz", "drdos_3.40_mf2dd.img.lz",
- "drdos_3.40_mf2hd.img.lz", "drdos_3.40_ssdd.img.lz", "drdos_3.40_ssdd8.img.lz",
- // DR-DOS 3.41
- "drdos_3.41_dsdd.img.lz", "drdos_3.41_dsdd8.img.lz", "drdos_3.41_dshd.img.lz", "drdos_3.41_mf2dd.img.lz",
- "drdos_3.41_mf2hd.img.lz", "drdos_3.41_ssdd.img.lz", "drdos_3.41_ssdd8.img.lz",
- // DR-DOS 5.00
- "drdos_5.00_dsdd.img.lz", "drdos_5.00_dsdd8.img.lz", "drdos_5.00_dshd.img.lz", "drdos_5.00_mf2dd.img.lz",
- "drdos_5.00_mf2hd.img.lz", "drdos_5.00_ssdd.img.lz", "drdos_5.00_ssdd8.img.lz",
- // DR-DOS 6.00
- "drdos_6.00_dsdd.img.lz", "drdos_6.00_dsdd8.img.lz", "drdos_6.00_dshd.img.lz", "drdos_6.00_mf2dd.img.lz",
- "drdos_6.00_mf2ed.img.lz", "drdos_6.00_mf2hd.img.lz", "drdos_6.00_ssdd.img.lz", "drdos_6.00_ssdd8.img.lz",
- // DR-DOS 7.02
- "drdos_7.02_dsdd.img.lz", "drdos_7.02_dsdd8.img.lz", "drdos_7.02_dshd.img.lz", "drdos_7.02_mf2dd.img.lz",
- "drdos_7.02_mf2ed.img.lz", "drdos_7.02_mf2hd.img.lz", "drdos_7.02_ssdd.img.lz", "drdos_7.02_ssdd8.img.lz",
- // DR-DOS 7.03
- "drdos_7.03_dsdd.img.lz", "drdos_7.03_dsdd8.img.lz", "drdos_7.03_dshd.img.lz", "drdos_7.03_mf2dd.img.lz",
- "drdos_7.03_mf2ed.img.lz", "drdos_7.03_mf2hd.img.lz",
- // DR-DOS 8.00
- "drdos_8.00_dsdd.img.lz", "drdos_8.00_dsdd8.img.lz", "drdos_8.00_dshd.img.lz", "drdos_8.00_mf2dd.img.lz",
- "drdos_8.00_mf2ed.img.lz", "drdos_8.00_mf2hd.img.lz", "drdos_8.00_ssdd.img.lz", "drdos_8.00_ssdd8.img.lz",
- // MS-DOS 3.30A
- "msdos_3.30A_dsdd.img.lz","msdos_3.30A_dsdd8.img.lz","msdos_3.30A_dshd.img.lz","msdos_3.30A_mf2dd.img.lz",
- "msdos_3.30A_mf2ed.img.lz","msdos_3.30A_mf2hd.img.lz","msdos_3.30A_ssdd.img.lz","msdos_3.30A_ssdd8.img.lz",
- // MS-DOS 3.31
- "msdos_3.31_dsdd.img.lz","msdos_3.31_dsdd8.img.lz","msdos_3.31_dshd.img.lz","msdos_3.31_mf2dd.img.lz",
- "msdos_3.31_mf2ed.img.lz","msdos_3.31_mf2hd.img.lz","msdos_3.31_ssdd.img.lz","msdos_3.31_ssdd8.img.lz",
- // MS-DOS 4.01
- "msdos_4.01_dsdd.img.lz","msdos_4.01_dsdd8.img.lz","msdos_4.01_dshd.img.lz","msdos_4.01_mf2dd.img.lz",
- "msdos_4.01_mf2hd.img.lz","msdos_4.01_ssdd.img.lz","msdos_4.01_ssdd8.img.lz",
- // MS-DOS 5.00
- "msdos_5.00_dsdd.img.lz","msdos_5.00_dsdd8.img.lz","msdos_5.00_dshd.img.lz","msdos_5.00_mf2dd.img.lz",
- "msdos_5.00_mf2ed.img.lz","msdos_5.00_mf2hd.img.lz","msdos_5.00_ssdd.img.lz","msdos_5.00_ssdd8.img.lz",
- // MS-DOS 6.00
- "msdos_6.00_dsdd.img.lz","msdos_6.00_dsdd8.img.lz","msdos_6.00_dshd.img.lz","msdos_6.00_mf2dd.img.lz",
- "msdos_6.00_mf2ed.img.lz","msdos_6.00_mf2hd.img.lz","msdos_6.00_ssdd.img.lz","msdos_6.00_ssdd8.img.lz",
- // MS-DOS 6.20
- "msdos_6.20_dsdd.img.lz","msdos_6.20_dsdd8.img.lz","msdos_6.20_dshd.img.lz","msdos_6.20_mf2dd.img.lz",
- "msdos_6.20_mf2ed.img.lz","msdos_6.20_mf2hd.img.lz","msdos_6.20_ssdd.img.lz","msdos_6.20_ssdd8.img.lz",
- // MS-DOS 6.20 RC1
- "msdos_6.20rc1_dsdd.img.lz","msdos_6.20rc1_dsdd8.img.lz","msdos_6.20rc1_dshd.img.lz","msdos_6.20rc1_mf2dd.img.lz",
- "msdos_6.20rc1_mf2ed.img.lz","msdos_6.20rc1_mf2hd.img.lz","msdos_6.20rc1_ssdd.img.lz","msdos_6.20rc1_ssdd8.img.lz",
- // MS-DOS 6.21
- "msdos_6.21_dsdd.img.lz","msdos_6.21_dsdd8.img.lz","msdos_6.21_dshd.img.lz","msdos_6.21_mf2dd.img.lz",
- "msdos_6.21_mf2ed.img.lz","msdos_6.21_mf2hd.img.lz","msdos_6.21_ssdd.img.lz","msdos_6.21_ssdd8.img.lz",
- // MS-DOS 6.22
- "msdos_6.22_dsdd.img.lz","msdos_6.22_dsdd8.img.lz","msdos_6.22_dshd.img.lz","msdos_6.22_mf2dd.img.lz",
- "msdos_6.22_mf2ed.img.lz","msdos_6.22_mf2hd.img.lz","msdos_6.22_ssdd.img.lz","msdos_6.22_ssdd8.img.lz",
- // MS-DOS 7.10
- "msdos_7.10_dsdd.img.lz","msdos_7.10_dsdd8.img.lz","msdos_7.10_dshd.img.lz","msdos_7.10_mf2dd.img.lz",
- "msdos_7.10_mf2ed.img.lz","msdos_7.10_mf2hd.img.lz","msdos_7.10_ssdd.img.lz","msdos_7.10_ssdd8.img.lz",
- // MS-DOS 3.20 for Amstrad
- "msdos_amstrad_3.20_dsdd.img.lz","msdos_amstrad_3.20_dsdd8.img.lz","msdos_amstrad_3.20_dshd.img.lz",
- "msdos_amstrad_3.20_mf2dd.img.lz","msdos_amstrad_3.20_ssdd.img.lz","msdos_amstrad_3.20_ssdd8.img.lz",
- // MS-DOS 2.11 for AT&T
- "msdos_att_2.11_dsdd.img.lz",
- // MS-DOS 3.30 for DeLL
- "msdos_dell_3.30_dsdd.img.lz","msdos_dell_3.30_dsdd8.img.lz","msdos_dell_3.30_dshd.img.lz",
- "msdos_dell_3.30_mf2dd.img.lz","msdos_dell_3.30_mf2hd.img.lz","msdos_dell_3.30_ssdd.img.lz",
- "msdos_dell_3.30_ssdd8.img.lz",
- // MS-DOS 3.10 for Epson
- "msdos_epson_3.10_dsdd.img.lz","msdos_epson_3.10_dsdd8.img.lz","msdos_epson_3.10_dshd.img.lz",
- // MS-DOS 3.20 for Epson
- "msdos_epson_3.20_dsdd.img.lz","msdos_epson_3.20_dsdd8.img.lz","msdos_epson_3.20_dshd.img.lz",
- "msdos_epson_3.20_mf2dd.img.lz","msdos_epson_3.20_ssdd.img.lz","msdos_epson_3.20_ssdd8.img.lz",
- // MS-DOS 3.20 for HP
- "msdos_hp_3.20_dsdd.img.lz","msdos_hp_3.20_dsdd8.img.lz","msdos_hp_3.20_dshd.img.lz",
- "msdos_hp_3.20_mf2dd.img.lz","msdos_hp_3.20_mf2hd.img.lz","msdos_hp_3.20_ssdd.img.lz",
- "msdos_hp_3.20_ssdd8.img.lz",
- // MS-DOS 3.21 for Hyosung
- "msdos_hyonsung_3.21_dsdd.img.lz","msdos_hyonsung_3.21_dsdd8.img.lz","msdos_hyonsung_3.21_dshd.img.lz",
- "msdos_hyonsung_3.21_mf2dd.img.lz","msdos_hyonsung_3.21_mf2hd.img.lz","msdos_hyonsung_3.21_ssdd.img.lz",
- "msdos_hyonsung_3.21_ssdd8.img.lz",
- // MS-DOS 3.21 for Kaypro
- "msdos_kaypro_3.21_dsdd.img.lz","msdos_kaypro_3.21_dsdd8.img.lz","msdos_kaypro_3.21_dshd.img.lz",
- "msdos_kaypro_3.21_mf2dd.img.lz","msdos_kaypro_3.21_mf2hd.img.lz","msdos_kaypro_3.21_ssdd.img.lz",
- //"msdos_kaypro_3.21_ssdd8.img.lz",
- // MS-DOS 3.10 for Olivetti
- "msdos_olivetti_3.10_dsdd.img.lz","msdos_olivetti_3.10_dshd.img.lz","msdos_olivetti_3.10_ssdd.img.lz",
- // MS-DOS 3.30 for Toshiba
- "msdos_toshiba_3.30_dsdd.img.lz","msdos_toshiba_3.30_dsdd8.img.lz","msdos_toshiba_3.30_dshd.img.lz",
- "msdos_toshiba_3.30_mf2dd.img.lz","msdos_toshiba_3.30_mf2hd.img.lz","msdos_toshiba_3.30_ssdd.img.lz",
- "msdos_toshiba_3.30_ssdd8.img.lz",
- // MS-DOS 4.01 for Toshiba
- "msdos_toshiba_4.01_dsdd.img.lz","msdos_toshiba_4.01_dsdd8.img.lz","msdos_toshiba_4.01_dshd.img.lz",
- "msdos_toshiba_4.01_mf2dd.img.lz","msdos_toshiba_4.01_mf2hd.img.lz","msdos_toshiba_4.01_ssdd.img.lz",
- "msdos_toshiba_4.01_ssdd8.img.lz",
- // Novell DOS 7.00
- "novelldos_7.00_dsdd.img.lz","novelldos_7.00_dsdd8.img.lz","novelldos_7.00_dshd.img.lz","novelldos_7.00_mf2dd.img.lz",
- "novelldos_7.00_mf2ed.img.lz","novelldos_7.00_mf2hd.img.lz","novelldos_7.00_ssdd.img.lz","novelldos_7.00_ssdd8.img.lz",
- // OpenDOS 7.01
- "opendos_7.01_dsdd.img.lz","opendos_7.01_dsdd8.img.lz","opendos_7.01_dshd.img.lz","opendos_7.01_mf2dd.img.lz",
- "opendos_7.01_mf2ed.img.lz","opendos_7.01_mf2hd.img.lz","opendos_7.01_ssdd.img.lz","opendos_7.01_ssdd8.img.lz",
- // PC-DOS 2.00
- "pcdos_2.00_dsdd.img.lz",
- // PC-DOS 2.10
- "pcdos_2.10_dsdd.img.lz",
- // PC-DOS 2000
- "pcdos_2000_dsdd.img.lz","pcdos_2000_dsdd8.img.lz","pcdos_2000_dshd.img.lz","pcdos_2000_mf2dd.img.lz",
- "pcdos_2000_mf2ed.img.lz","pcdos_2000_mf2hd.img.lz","pcdos_2000_ssdd.img.lz","pcdos_2000_ssdd8.img.lz",
- // PC-DOS 3.00
- "pcdos_3.00_dshd.img.lz",
- // PC-DOS 3.10
- "pcdos_3.10_dshd.img.lz",
- // PC-DOS 3.30
- "pcdos_3.30_dshd.img.lz","pcdos_3.30_mf2hd.img.lz",
- // PC-DOS 4.00
- "pcdos_4.00_dshd.img.lz","pcdos_4.00_mf2hd.img.lz",
- // PC-DOS 5.00
- "pcdos_5.00_dsdd.img.lz","pcdos_5.00_dsdd8.img.lz","pcdos_5.00_dshd.img.lz","pcdos_5.00_mf2dd.img.lz",
- "pcdos_5.00_mf2ed.img.lz","pcdos_5.00_mf2hd.img.lz","pcdos_5.00_ssdd.img.lz","pcdos_5.00_ssdd8.img.lz",
- // PC-DOS 5.02
- "pcdos_5.02_dsdd.img.lz","pcdos_5.02_dsdd8.img.lz","pcdos_5.02_dshd.img.lz","pcdos_5.02_mf2dd.img.lz",
- "pcdos_5.02_mf2ed.img.lz","pcdos_5.02_mf2hd.img.lz","pcdos_5.02_ssdd.img.lz","pcdos_5.02_ssdd8.img.lz",
- // PC-DOS 6.10
- "pcdos_6.10_dsdd.img.lz","pcdos_6.10_dsdd8.img.lz","pcdos_6.10_dshd.img.lz","pcdos_6.10_mf2dd.img.lz",
- "pcdos_6.10_mf2ed.img.lz","pcdos_6.10_mf2hd.img.lz","pcdos_6.10_ssdd.img.lz","pcdos_6.10_ssdd8.img.lz",
- // PC-DOS 6.30
- "pcdos_6.30_dsdd.img.lz","pcdos_6.30_dsdd8.img.lz","pcdos_6.30_dshd.img.lz","pcdos_6.30_mf2dd.img.lz",
- "pcdos_6.30_mf2ed.img.lz","pcdos_6.30_mf2hd.img.lz","pcdos_6.30_ssdd.img.lz","pcdos_6.30_ssdd8.img.lz",
- // mkfs.vfat
- "mkfs.vfat_dshd.img.lz","mkfs.vfat_mf2dd.img.lz","mkfs.vfat_mf2ed.img.lz","mkfs.vfat_mf2hd.img.lz",
- // mkfs.vfat for Atari
- "mkfs.vfat_atari_dshd.img.lz","mkfs.vfat_atari_mf2dd.img.lz","mkfs.vfat_atari_mf2ed.img.lz","mkfs.vfat_atari_mf2hd.img.lz",
- // Microsoft OS/2 1.00 for Tandy
- "msos2_1.00_tandy_dsdd.img.lz","msos2_1.00_tandy_dshd.img.lz","msos2_1.00_tandy_mf2dd.img.lz","msos2_1.00_tandy_mf2hd.img.lz",
- // Microsoft OS/2 1.10 for AST
- "msos2_1.10_ast_dsdd.img.lz","msos2_1.10_ast_dshd.img.lz","msos2_1.10_ast_mf2dd.img.lz","msos2_1.10_ast_mf2hd.img.lz",
- // Microsoft OS/2 1.10 for Nokia
- "msos2_1.10_nokia_dsdd.img.lz","msos2_1.10_nokia_dshd.img.lz","msos2_1.10_nokia_mf2dd.img.lz","msos2_1.10_nokia_mf2hd.img.lz",
- // Microsoft OS/2 1.21
- "msos2_1.21_dsdd.img.lz","msos2_1.21_dshd.img.lz","msos2_1.21_mf2dd.img.lz","msos2_1.21_mf2hd.img.lz",
- // Microsoft OS/2 1.30.1
- "msos2_1.30.1_dsdd.img.lz","msos2_1.30.1_dshd.img.lz","msos2_1.30.1_mf2dd.img.lz","msos2_1.30.1_mf2ed.img.lz","msos2_1.30.1_mf2hd.img.lz",
- // OS/2 1.20
- "os2_1.20_dsdd.img.lz","os2_1.20_dshd.img.lz","os2_1.20_mf2dd.img.lz","os2_1.20_mf2hd.img.lz",
- // OS/2 1.30
- "os2_1.30_dsdd.img.lz","os2_1.30_dshd.img.lz","os2_1.30_mf2dd.img.lz","os2_1.30_mf2hd.img.lz",
- // OS/2 2.00
- "os2_6.307_dsdd.img.lz","os2_6.307_dshd.img.lz","os2_6.307_mf2dd.img.lz","os2_6.307_mf2ed.img.lz","os2_6.307_mf2hd.img.lz",
- // OS/2 2.10
- "os2_6.514_dsdd.img.lz","os2_6.514_dshd.img.lz","os2_6.514_mf2dd.img.lz","os2_6.514_mf2ed.img.lz","os2_6.514_mf2hd.img.lz",
- // OS/2 2.11
- "os2_6.617_dsdd.img.lz","os2_6.617_dshd.img.lz","os2_6.617_mf2dd.img.lz","os2_6.617_mf2ed.img.lz","os2_6.617_mf2hd.img.lz",
- // OS/2 Warp 3
- "os2_8.162_dshd.img.lz","os2_8.162_mf2dd.img.lz","os2_8.162_mf2ed.img.lz","os2_8.162_mf2hd.img.lz",
- // OS/2 Warp 4
- "os2_9.023_dshd.img.lz","os2_9.023_mf2dd.img.lz","os2_9.023_mf2ed.img.lz","os2_9.023_mf2hd.img.lz",
- // eComStation
- "ecs_dshd.img.lz","ecs_mf2dd.img.lz","ecs_mf2ed.img.lz","ecs_mf2hd.img.lz",
- // Windows 95
- "win95_dsdd8.img.lz","win95_dsdd.img.lz","win95_dshd.img.lz","win95_mf2dd.img.lz",
- "win95_mf2ed.img.lz","win95_mf2hd.img.lz","win95_ssdd8.img.lz","win95_ssdd.img.lz",
- // Windows 95 OSR 2
- "win95osr2_dsdd8.img.lz","win95osr2_dsdd.img.lz","win95osr2_dshd.img.lz","win95osr2_mf2dd.img.lz",
- "win95osr2_mf2ed.img.lz","win95osr2_mf2hd.img.lz","win95osr2_ssdd8.img.lz","win95osr2_ssdd.img.lz",
- /// Windows 95 OSR 2.1
- "win95osr2.1_dsdd8.img.lz","win95osr2.1_dsdd.img.lz","win95osr2.1_dshd.img.lz","win95osr2.1_mf2dd.img.lz",
- "win95osr2.1_mf2ed.img.lz","win95osr2.1_mf2hd.img.lz","win95osr2.1_ssdd8.img.lz","win95osr2.1_ssdd.img.lz",
- // Windows 95 OSR 2.5
- "win95osr2.5_dsdd8.img.lz","win95osr2.5_dsdd.img.lz","win95osr2.5_dshd.img.lz","win95osr2.5_mf2dd.img.lz",
- "win95osr2.5_mf2ed.img.lz","win95osr2.5_mf2hd.img.lz","win95osr2.5_ssdd8.img.lz","win95osr2.5_ssdd.img.lz",
- // Windows 98
- "win98_dsdd8.img.lz","win98_dsdd.img.lz","win98_dshd.img.lz","win98_mf2dd.img.lz",
- "win98_mf2ed.img.lz","win98_mf2hd.img.lz","win98_ssdd8.img.lz","win98_ssdd.img.lz",
- // Windows 98 Second Edition
- "win98se_dsdd8.img.lz","win98se_dsdd.img.lz","win98se_dshd.img.lz","win98se_mf2dd.img.lz",
- "win98se_mf2ed.img.lz","win98se_mf2hd.img.lz","win98se_ssdd8.img.lz","win98se_ssdd.img.lz",
- // Windows Me
- "winme_dsdd.img.lz","winme_dshd.img.lz","winme_mf2dd.img.lz","winme_mf2ed.img.lz","winme_mf2hd.img.lz",
- // Windows NT 3.10
- "winnt_3.10_dshd.img.lz","winnt_3.10_mf2dd.img.lz","winnt_3.10_mf2ed.img.lz","winnt_3.10_mf2hd.img.lz",
- // Windows NT 3.50
- "winnt_3.50_dshd.img.lz","winnt_3.50_mf2dd.img.lz","winnt_3.50_mf2ed.img.lz","winnt_3.50_mf2hd.img.lz",
- // Windows NT 3.51
- "winnt_3.51_dshd.img.lz","winnt_3.51_mf2dd.img.lz","winnt_3.51_mf2ed.img.lz","winnt_3.51_mf2hd.img.lz",
- // Windows NT 4.00
- "winnt_4_dsdd.img.lz","winnt_4_dshd.img.lz","winnt_4_mf2dd.img.lz","winnt_4_mf2ed.img.lz",
- "winnt_4_mf2hd.img.lz","winnt_4_ssdd.img.lz",
- // Windows 2000
- "win2000_dsdd.img.lz","win2000_dshd.img.lz","win2000_mf2dd.img.lz","win2000_mf2ed.img.lz","win2000_mf2hd.img.lz",
- // Windows Vista
- "winvista_dsdd.img.lz","winvista_dshd.img.lz","winvista_mf2dd.img.lz","winvista_mf2ed.img.lz","winvista_mf2hd.img.lz",
- // BeOS R4.5
- "beos_r4.5_mf2hd.img.lz",
+ "amigaos_3.9.adf.lz", "amigaos_3.9_intl.adf.lz",
};
readonly MediaType[] mediatypes = {
- // Concurrent DOS 6.00
- MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
- // DR-DOS 3.40
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
- // DR-DOS 3.41
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
- // DR-DOS 5.00
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
- // DR-DOS 6.00
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED, MediaType.DOS_35_HD, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
- // DR-DOS 7.02
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // DR-DOS 7.03
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // DR-DOS 8.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.30A
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.31
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 4.01
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 5.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.20
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.20 RC1
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.21
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.22
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 7.10
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.20 for Amstrad
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 2.11 for AT&T
- MediaType.DOS_525_DS_DD_9,
- // MS-DOS 3.30 for DeLL
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.10 for Epson
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,
- // MS-DOS 3.20 for Epson
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.20 for HP
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.21 for Hyosung
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.21 for Kaypro
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.10 for Olivetti
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_525_SS_DD_9,
- // MS-DOS 3.30 for Toshiba
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 4.01 for Toshiba
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // Novell DOS 7.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // OpenDOS 7.01
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 2.00
- MediaType.DOS_525_DS_DD_9,
- // PC-DOS 2.10
- MediaType.DOS_525_DS_DD_9,
- // PC-DOS 2000
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 3.00
- MediaType.DOS_525_HD,
- // PC-DOS 3.10
- MediaType.DOS_525_HD,
- // PC-DOS 3.30
- MediaType.DOS_525_HD,MediaType.DOS_35_HD,
- // PC-DOS 4.00
- MediaType.DOS_525_HD,MediaType.DOS_35_HD,
- // PC-DOS 5.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 5.02
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 6.10
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 6.30
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // mkfs.vfat
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // mkfs.vfat for Atari
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.00 for Tandy
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.10 for AST
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.10 for Nokia
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.21
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.30.1
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 1.20
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // OS/2 1.30
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // OS/2 2.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 2.10
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 2.11
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 Warp 3
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 Warp 4
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // eComStation
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows 95
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows 95 OSR 2
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- /// Windows 95 OSR 2.1
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows 95 OSR 2.5
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows 98
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows 98 Second Edition
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows Me
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows NT 3.10
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows NT 3.50
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows NT 3.51
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows NT 4.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,
- // Windows 2000
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows Vista
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // BeOS R4.5
- MediaType.DOS_35_HD,
+ MediaType.CBM_AMIGA_35_DD, MediaType.CBM_AMIGA_35_DD,
};
readonly ulong[] sectors = {
- // Concurrent DOS 6.00
- 2400, 1440, 2880,
- // DR-DOS 3.40
- 720, 640, 2400, 1440, 2880, 360, 320,
- // DR-DOS 3.41
- 720,640,2400,1440,2880,360,320,
- // DR-DOS 5.00
- 720,640,2400,1440,2880,360,320,
- // DR-DOS 6.00
- 720,640,2400,1440,5760,2880,360,320,
- // DR-DOS 7.02
- 720,640,2400,1440,5760,2880,360,320,
- // DR-DOS 7.03
- 720,640,2400,1440,5760,2880,
- // DR-DOS 8.00
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 3.30A
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 3.31
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 4.01
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 5.00
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.00
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.20
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.20 RC1
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.21
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.22
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 7.10
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 3.20 for Amstrad
- 720,640,2400,1440,360,320,
- // MS-DOS 2.11 for AT&T
- 720,
- // MS-DOS 3.30 for DeLL
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 3.10 for Epson
- 720,640,2400,
- // MS-DOS 3.20 for Epson
- 720,640,2400,1440,360,320,
- // MS-DOS 3.20 for HP
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 3.21 for Hyosung
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 3.21 for Kaypro
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 3.10 for Olivetti
- 720,2400,360,
- // MS-DOS 3.30 for Toshiba
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 4.01 for Toshiba
- 720,640,2400,1440,2880,360,320,
- // Novell DOS 7.00
- 720,640,2400,1440,5760,2880,360,320,
- // OpenDOS 7.01
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 2.00
- 720,
- // PC-DOS 2.10
- 720,
- // PC-DOS 2000
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 3.00
- 2400,
- // PC-DOS 3.10
- 2400,
- // PC-DOS 3.30
- 2400,2880,
- // PC-DOS 4.00
- 2400,2880,
- // PC-DOS 5.00
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 5.02
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 6.10
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 6.30
- 720,640,2400,1440,5760,2880,360,320,
- // mkfs.vfat
- 2400,1440,5760,2880,
- // mkfs.vfat for Atari
- 2400,1440,5760,2880,
- // Microsoft OS/2 1.00 for Tandy
- 720,2400,1440,2880,
- // Microsoft OS/2 1.10 for AST
- 720,2400,1440,2880,
- // Microsoft OS/2 1.10 for Nokia
- 720,2400,1440,2880,
- // Microsoft OS/2 1.21
- 720,2400,1440,2880,
- // Microsoft OS/2 1.30.1
- 720,2400,1440,5760,2880,
- // OS/2 1.20
- 720,2400,1440,2880,
- // OS/2 1.30
- 720,2400,1440,2880,
- // OS/2 2.00
- 720,2400,1440,5760,2880,
- // OS/2 2.10
- 720,2400,1440,5760,2880,
- // OS/2 2.11
- 720,2400,1440,5760,2880,
- // OS/2 Warp 3
- 2400,1440,5760,2880,
- // OS/2 Warp 4
- 2400,1440,5760,2880,
- // eComStation
- 2400,1440,5760,2880,
- // Windows 95
- 640,720,2400,1440,5760,2880,320,360,
- // Windows 95 OSR 2
- 640,720,2400,1440,5760,2880,320,360,
- /// Windows 95 OSR 2.1
- 640,720,2400,1440,5760,2880,320,360,
- // Windows 95 OSR 2.5
- 640,720,2400,1440,5760,2880,320,360,
- // Windows 98
- 640,720,2400,1440,5760,2880,320,360,
- // Windows 98 Second Edition
- 640,720,2400,1440,5760,2880,320,360,
- // Windows Me
- 720,2400,1440,5760,2880,
- // Windows NT 3.10
- 2400,1440,5760,2880,
- // Windows NT 3.50
- 2400,1440,5760,2880,
- // Windows NT 3.51
- 2400,1440,5760,2880,
- // Windows NT 4.00
- 720,2400,1440,5760,2880,360,
- // Windows 2000
- 720,2400,1440,5760,2880,
- // Windows Vista
- 720,2400,1440,5760,2880,
- // BeOS R4.5
- 2880,
+ 1760, 1760,
};
readonly uint[] sectorsize = {
- // Concurrent DOS 6.00
- 512, 512, 512,
- // DR-DOS 3.40
- 512, 512, 512, 512, 512, 512, 512,
- // DR-DOS 3.41
- 512,512,512,512,512,512,512,
- // DR-DOS 5.00
- 512,512,512,512,512,512,512,
- // DR-DOS 6.00
- 512,512,512,512,512,512,512,512,
- // DR-DOS 7.02
- 512,512,512,512,512,512,512,512,
- // DR-DOS 7.03
- 512,512,512,512,512,512,
- // DR-DOS 8.00
- 512,512,512,512,512,512,512,512,
- // MS-DOS 3.30A
- 512,512,512,512,512,512,512,512,
- // MS-DOS 3.31
- 512,512,512,512,512,512,512,512,
- // MS-DOS 4.01
- 512,512,512,512,512,512,512,
- // MS-DOS 5.00
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.00
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.20
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.20 RC1
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.21
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.22
- 512,512,512,512,512,512,512,512,
- // MS-DOS 7.10
- 512,512,512,512,512,512,512,512,
- // MS-DOS 3.20 for Amstrad
- 512,512,512,512,512,512,
- // MS-DOS 2.11 for AT&T
- 512,
- // MS-DOS 3.30 for DeLL
- 512,512,512,512,512,512,512,
- // MS-DOS 3.10 for Epson
- 512,512,512,
- // MS-DOS 3.20 for Epson
- 512,512,512,512,512,512,
- // MS-DOS 3.20 for HP
- 512,512,512,512,512,512,512,
- // MS-DOS 3.21 for Hyosung
- 512,512,512,512,512,512,512,
- // MS-DOS 3.21 for Kaypro
- 512,512,512,512,512,512,512,
- // MS-DOS 3.10 for Olivetti
- 512,512,512,
- // MS-DOS 3.30 for Toshiba
- 512,512,512,512,512,512,512,
- // MS-DOS 4.01 for Toshiba
- 512,512,512,512,512,512,512,
- // Novell DOS 7.00
- 512,512,512,512,512,512,512,512,
- // OpenDOS 7.01
- 512,512,512,512,512,512,512,512,
- // PC-DOS 2.00
- 512,
- // PC-DOS 2.10
- 512,
- // PC-DOS 2000
- 512,512,512,512,512,512,512,512,
- // PC-DOS 3.00
- 512,
- // PC-DOS 3.10
- 512,
- // PC-DOS 3.30
- 512,512,
- // PC-DOS 4.00
- 512,512,
- // PC-DOS 5.00
- 512,512,512,512,512,512,512,512,
- // PC-DOS 5.02
- 512,512,512,512,512,512,512,512,
- // PC-DOS 6.10
- 512,512,512,512,512,512,512,512,
- // PC-DOS 6.30
- 512,512,512,512,512,512,512,512,
- // mkfs.vfat
- 512,512,512,512,
- // mkfs.vfat for Atari
- 512,512,512,512,
- // Microsoft OS/2 1.00 for Tandy
- 512,512,512,512,
- // Microsoft OS/2 1.10 for AST
- 512,512,512,512,
- // Microsoft OS/2 1.10 for Nokia
- 512,512,512,512,
- // Microsoft OS/2 1.21
- 512,512,512,512,
- // Microsoft OS/2 1.30.1
- 512,512,512,512,512,
- // OS/2 1.20
- 512,512,512,512,
- // OS/2 1.30
- 512,512,512,512,
- // OS/2 2.00
- 512,512,512,512,512,
- // OS/2 2.10
- 512,512,512,512,512,
- // OS/2 2.11
- 512,512,512,512,512,
- // OS/2 Warp 3
- 512,512,512,512,
- // OS/2 Warp 4
- 512,512,512,512,
- // eComStation
- 512,512,512,512,
- // Windows 95
- 512,512,512,512,512,512,512,512,
- // Windows 95 OSR 2
- 512,512,512,512,512,512,512,512,
- /// Windows 95 OSR 2.1
- 512,512,512,512,512,512,512,512,
- // Windows 95 OSR 2.5
- 512,512,512,512,512,512,512,512,
- // Windows 98
- 512,512,512,512,512,512,512,512,
- // Windows 98 Second Edition
- 512,512,512,512,512,512,512,512,
- // Windows Me
- 512,512,512,512,512,
- // Windows NT 3.10
- 512,512,512,512,
- // Windows NT 3.50
- 512,512,512,512,
- // Windows NT 3.51
- 512,512,512,512,
- // Windows NT 4.00
- 512,512,512,512,512,512,
- // Windows 2000
- 512,512,512,512,512,
- // Windows Vista
- 512,512,512,512,512,
- // BeOS R4.5
- 512,
+ 512, 512,
};
readonly long[] clusters = {
- // Concurrent DOS 6.00
- 2400, 720, 2880,
- // DR-DOS 3.40
- 360,320,2400,720,2880,360,320,
- // DR-DOS 3.41
- 360,320,2400,720,2880,360,320,
- // DR-DOS 5.00
- 360,320,2400,720,2880,360,320,
- // DR-DOS 6.00
- 360,320,2400,720,2880,2880,360,320,
- // DR-DOS 7.02
- 360,320,2400,720,2880,2880,360,320,
- // DR-DOS 7.03
- 360,320,2400,720,2880,2880,
- // DR-DOS 8.00
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 3.30A
- 360,320,2400,720,5760,2880,360,320,
- // MS-DOS 3.31
- 360,320,2400,720,5760,2880,360,320,
- // MS-DOS 4.01
- 360,320,2400,720,2880,360,320,
- // MS-DOS 5.00
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.00
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.20
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.20 RC1
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.21
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.22
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 7.10
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 3.20 for Amstrad
- 360,320,2400,720,360,320,
- // MS-DOS 2.11 for AT&T
- 360,
- // MS-DOS 3.30 for DeLL
- 360,320,2400,720,2880,360,320,
- // MS-DOS 3.10 for Epson
- 360,320,2400,
- // MS-DOS 3.20 for Epson
- 360,320,2400,720,360,320,
- // MS-DOS 3.20 for HP
- 360,320,2400,720,2880,360,320,
- // MS-DOS 3.21 for Hyosung
- 360,320,2400,720,2880,360,320,
- // MS-DOS 3.21 for Kaypro
- 360,320,2400,720,2880,360,320,
- // MS-DOS 3.10 for Olivetti
- 360,2400,360,
- // MS-DOS 3.30 for Toshiba
- 360,320,2400,720,2880,360,320,
- // MS-DOS 4.01 for Toshiba
- 360,320,2400,720,2880,360,320,
- // Novell DOS 7.00
- 360,320,2400,720,2880,2880,360,320,
- // OpenDOS 7.01
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 2.00
- 360,
- // PC-DOS 2.10
- 360,
- // PC-DOS 2000
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 3.00
- 2400,
- // PC-DOS 3.10
- 2400,
- // PC-DOS 3.30
- 2400,2880,
- // PC-DOS 4.00
- 2400,2880,
- // PC-DOS 5.00
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 5.02
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 6.10
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 6.30
- 360,320,2400,720,2880,2880,360,320,
- // mkfs.vfat
- 2400,720,2880,2880,
- // mkfs.vfat for Atari
- 1200,720,2880,1440,
- // Microsoft OS/2 1.00 for Tandy
- 360,2400,720,2880,
- // Microsoft OS/2 1.10 for AST
- 360,2400,720,2880,
- // Microsoft OS/2 1.10 for Nokia
- 360,2400,720,2880,
- // Microsoft OS/2 1.21
- 360,2400,720,2880,
- // Microsoft OS/2 1.30.1
- 360,2400,720,2880,2880,
- // OS/2 1.20
- 360,2400,720,2880,
- // OS/2 1.30
- 360,2400,720,2880,
- // OS/2 2.00
- 360,2400,720,2880,2880,
- // OS/2 2.10
- 360,2400,720,2880,2880,
- // OS/2 2.11
- 360,2400,720,2880,2880,
- // OS/2 Warp 3
- 2400,720,2880,2880,
- // OS/2 Warp 4
- 2400,720,2880,2880,
- // eComStation
- 2400,720,2880,2880,
- // Windows 95
- 320,360,2400,720,2880,2880,320,360,
- // Windows 95 OSR 2
- 320,360,2400,720,2880,2880,320,360,
- /// Windows 95 OSR 2.1
- 320,360,2400,720,2880,2880,320,360,
- // Windows 95 OSR 2.5
- 320,360,2400,720,2880,2880,320,360,
- // Windows 98
- 320,360,2400,720,2880,2880,320,360,
- // Windows 98 Second Edition
- 320,360,2400,720,2880,2880,320,360,
- // Windows Me
- 360,2400,720,2880,2880,
- // Windows NT 3.10
- 2400,720,2880,2880,
- // Windows NT 3.50
- 2400,720,2880,2880,
- // Windows NT 3.51
- 2400,720,2880,2880,
- // Windows NT 4.00
- 360,2400,720,2880,2880,360,
- // Windows 2000
- 360,2400,720,2880,2880,
- // Windows Vista
- 360,2400,720,2880,2880,
- // BeOS R4.5
- 2880,
+ 1760, 1760,
};
readonly int[] clustersize = {
- // Concurrent DOS 6.00
- 512, 1024, 512,
- // DR-DOS 3.40
- 1024,1024,512,1024,512,512,512,
- // DR-DOS 3.41
- 1024,1024,512,1024,512,512,512,
- // DR-DOS 5.00
- 1024,1024,512,1024,512,512,512,
- // DR-DOS 6.00
- 1024,1024,512,1024,1024,512,512,512,
- // DR-DOS 7.02
- 1024,1024,512,1024,1024,512,512,512,
- // DR-DOS 7.03
- 1024,1024,512,1024,1024,512,
- // DR-DOS 8.00
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 3.30A
- 1024,1024,512,1024,512,512,512,512,
- // MS-DOS 3.31
- 1024,1024,512,1024,512,512,512,512,
- // MS-DOS 4.01
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 5.00
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.00
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.20
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.20 RC1
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.21
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.22
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 7.10
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 3.20 for Amstrad
- 1024,1024,512,1024,512,512,
- // MS-DOS 2.11 for AT&T
- 1024,
- // MS-DOS 3.30 for DeLL
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 3.10 for Epson
- 1024,1024,512,
- // MS-DOS 3.20 for Epson
- 1024,1024,512,1024,512,512,
- // MS-DOS 3.20 for HP
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 3.21 for Hyosung
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 3.21 for Kaypro
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 3.10 for Olivetti
- 1024,512,512,
- // MS-DOS 3.30 for Toshiba
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 4.01 for Toshiba
- 1024,1024,512,1024,512,512,512,
- // Novell DOS 7.00
- 1024,1024,512,1024,1024,512,512,512,
- // OpenDOS 7.01
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 2.00
- 1024,
- // PC-DOS 2.10
- 1024,
- // PC-DOS 2000
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 3.00
- 512,
- // PC-DOS 3.10
- 512,
- // PC-DOS 3.30
- 512,512,
- // PC-DOS 4.00
- 512,512,
- // PC-DOS 5.00
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 5.02
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 6.10
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 6.30
- 1024,1024,512,1024,1024,512,512,512,
- // mkfs.vfat
- 512,1024,1024,512,
- // mkfs.vfat for Atari
- 1024,1024,1024,1024,
- // Microsoft OS/2 1.00 for Tandy
- 1024,512,1024,512,
- // Microsoft OS/2 1.10 for AST
- 1024,512,1024,512,
- // Microsoft OS/2 1.10 for Nokia
- 1024,512,1024,512,
- // Microsoft OS/2 1.21
- 1024,512,1024,512,
- // Microsoft OS/2 1.30.1
- 1024,512,1024,1024,512,
- // OS/2 1.20
- 1024,512,1024,512,
- // OS/2 1.30
- 1024,512,1024,512,
- // OS/2 2.00
- 1024,512,1024,1024,512,
- // OS/2 2.10
- 1024,512,1024,1024,512,
- // OS/2 2.11
- 1024,512,1024,1024,512,
- // OS/2 Warp 3
- 512,1024,1024,512,
- // OS/2 Warp 4
- 512,1024,1024,512,
- // eComStation
- 512,1024,1024,512,
- // Windows 95
- 1024,1024,512,1024,1024,512,512,512,
- // Windows 95 OSR 2
- 1024,1024,512,1024,1024,512,512,512,
- /// Windows 95 OSR 2.1
- 1024,1024,512,1024,1024,512,512,512,
- // Windows 95 OSR 2.5
- 1024,1024,512,1024,1024,512,512,512,
- // Windows 98
- 1024,1024,512,1024,1024,512,512,512,
- // Windows 98 Second Edition
- 1024,1024,512,1024,1024,512,512,512,
- // Windows Me
- 1024,512,1024,1024,512,
- // Windows NT 3.10
- 512,1024,1024,512,
- // Windows NT 3.50
- 512,1024,1024,512,
- // Windows NT 3.51
- 512,1024,1024,512,
- // Windows NT 4.00
- 1024,512,1024,512,512,512,
- // Windows 2000
- 1024,512,1024,1024,512,
- // Windows Vista
- 1024,512,1024,1024,512,
- // BeOS R4.5
- 512,
+ 512, 512,
};
readonly string[] volumename = {
- // Concurrent DOS 6.00
- null, null, null,
- // DR-DOS 3.40
- null, null, null, null, null, null, null,
- // DR-DOS 3.41
- null, null, null, null, null, null, null,
- // DR-DOS 5.00
- null, null, null, null, null, null, null,
- // DR-DOS 6.00
- null, null, null, null, null, null, null, null,
- // DR-DOS 7.02
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // DR-DOS 7.03
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // DR-DOS 8.00
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // MS-DOS 3.30A
- null, null, null, null, null, null, null,null,
- // MS-DOS 3.31
- null, null, null, null, null, null, null,null,
- // MS-DOS 4.01
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 5.00
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.00
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.20
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.20 RC1
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.21
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.22
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 7.10
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 3.20 for Amstrad
- null,null,null,null,null,null,
- // MS-DOS 2.11 for AT&T
- null,
- // MS-DOS 3.30 for DeLL
- null,null,null,null,null,null,null,
- // MS-DOS 3.10 for Epson
- null,null,null,
- // MS-DOS 3.20 for Epson
- null,null,null,null,null,null,
- // MS-DOS 3.20 for HP
- null,null,null,null,null,null,null,
- // MS-DOS 3.21 for Hyosung
- null,null,null,null,null,null,null,
- // MS-DOS 3.21 for Kaypro
- null,null,null,null,null,null,null,
- // MS-DOS 3.10 for Olivetti
- null,null,null,
- // MS-DOS 3.30 for Toshiba
- null,null,null,null,null,null,null,
- // MS-DOS 4.01 for Toshiba
- "VOLUMELABEL","NO NAME ","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","NO NAME ",
- // Novell DOS 7.00
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // OpenDOS 7.01
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // PC-DOS 2.00
- null,
- // PC-DOS 2.10
- null,
- // PC-DOS 2000
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // PC-DOS 3.00
- null,
- // PC-DOS 3.10
- null,
- // PC-DOS 3.30
- null,null,
- // PC-DOS 4.00
- "VOLUMELABEL","VOLUMELABEL",
- // PC-DOS 5.00
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // PC-DOS 5.02
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // PC-DOS 6.10
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // PC-DOS 6.30
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // mkfs.vfat
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // mkfs.vfat for Atari
- null,null,null,null,
- // Microsoft OS/2 1.00 for Tandy
- null,null,null,null,
- // Microsoft OS/2 1.10 for AST
- null,null,null,null,
- // Microsoft OS/2 1.10 for Nokia
- null,null,null,null,
- // Microsoft OS/2 1.21
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Microsoft OS/2 1.30.1
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 1.20
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 1.30
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 2.00
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 2.10
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 2.11
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 Warp 3
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 Warp 4
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // eComStation
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows 95
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows 95 OSR 2
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- /// Windows 95 OSR 2.1
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows 95 OSR 2.5
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows 98
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows 98 Second Edition
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows Me
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // Windows NT 3.10
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows NT 3.50
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows NT 3.51
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows NT 4.00
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- "NO NAME ","NO NAME ",
- // Windows 2000
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows Vista
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // BeOS R4.5
- "NO NAME ",
+ "Volume label", "Volume label",
};
readonly string[] volumeserial = {
- // Concurrent DOS 6.00
- null, null, null,
- // DR-DOS 3.40
- null, null, null, null, null, null, null,
- // DR-DOS 3.41
- null, null, null, null, null, null, null,
- // DR-DOS 5.00
- null, null, null, null, null, null, null,
- // DR-DOS 6.00
- null, null, null, null, null, null, null, null,
- // DR-DOS 7.02
- "1BF63C69","1BF70E75","1BF7185F","1BF80C4F","1BF90F1D","1BF82777","1BF72430","1BF72F1E",
- // DR-DOS 7.03
- "0C1A2013","0CE22B5B","0CEA1D3E","0CEE102F","0CEE3760","0CEF2739",
- // DR-DOS 8.00
- "1BFD1977","1BFD2D3F","1BFD3531","1BFC3231","1BFA1D58","1BFC117D","1BFE0971","1BFE1423",
- // MS-DOS 3.30A
- null, null, null, null, null, null, null,null,
- // MS-DOS 3.31
- null, null, null, null, null, null, null,null,
- // MS-DOS 4.01
- "122C190A",null,"2480190A","2D471909","0F5A1908","2F3D190A",null,
- // MS-DOS 5.00
- "0B6018F8",null,"1E3518F8","285A18FB","231D18FE","415118FC","316118F8",null,
- // MS-DOS 6.00
- "067B18F6",null,"193418F6","1F3A18F5","165318F3","172418F4","234918F6",null,
- // MS-DOS 6.20
- "265418ED",null,"0B7018EE","127418F0","137F18F2","364C18F0","185C18EE",null,
- // MS-DOS 6.20 RC1
- "064B18EB",null,"192518EB","244C18EA","3C3118E7","344118E9","267E18EB",null,
- // MS-DOS 6.21
- "2A41181B",null,"0641181C","3B26181C","082518E2","237118E1","123F181C",null,
- // MS-DOS 6.22
- "317C1818",null,"0D3A1819","3C251817","387A1815","185E1817","18231819",null,
- // MS-DOS 7.10
- "1156180A",null,"2951180A","3057180B","2B4A1811","344B180C","352D180A",null,
- // MS-DOS 3.20 for Amstrad
- null,null,null,null,null,null,
- // MS-DOS 2.11 for AT&T
- null,
- // MS-DOS 3.30 for DeLL
- null,null,null,null,null,null,null,
- // MS-DOS 3.10 for Epson
- null,null,null,
- // MS-DOS 3.20 for Epson
- null,null,null,null,null,null,
- // MS-DOS 3.20 for HP
- null,null,null,null,null,null,null,
- // MS-DOS 3.21 for Hyosung
- null,null,null,null,null,null,null,
- // MS-DOS 3.21 for Kaypro
- null,null,null,null,null,null,null,
- // MS-DOS 3.10 for Olivetti
- null,null,null,
- // MS-DOS 3.30 for Toshiba
- null,null,null,null,null,null,null,
- // MS-DOS 4.01 for Toshiba
- "0B2519E7","163419E7","1E3119E7","133919E9","177419EA","317E19E7","3B7319E7",
- // Novell DOS 7.00
- "1BE7254C","1BE73024","1BE7397C","1BE63635","1BE51661","1BE61143","1BE80A5D","1BE8144C",
- // OpenDOS 7.01
- "1BE93E2B","1BEA234D","1BEA325D","1BEB294F","1BEC2C2E","1BEC0C5D","1BEA3E60","1BEB0E26",
- // PC-DOS 2.00
- null,
- // PC-DOS 2.10
- null,
- // PC-DOS 2000
- "2634100E",null,"3565100E","3B6B1012","3B2D1013","1D491013","4136100E",null,
- // PC-DOS 3.00
- null,
- // PC-DOS 3.10
- null,
- // PC-DOS 3.30
- null,null,
- // PC-DOS 4.00
- "3C240FE3","2E3E0FE1",
- // PC-DOS 5.00
- "33260FF9",null,"11550FFA","234F0FFB","2F600FFC","0D550FFC","1D630FFA",null,
- // PC-DOS 5.02
- "06231000",null,"1A3E1000","1F3B0FFF","3D750FFD","3F4F0FFE","26471000",null,
- // PC-DOS 6.10
- "25551004",null,"3E5F1004","142D1006","17541007","355A1006","0D5E1005",null,
- // PC-DOS 6.30
- "2B22100C",null,"3B47100C","0C55100C","1B80100A","0B59100B","0A3A100D",null,
- // mkfs.vfat
- "20C279B1","20FD9501","2132D70A","2118F1AA",
- // mkfs.vfat for Atari
- null,null,null,null,
- // Microsoft OS/2 1.00 for Tandy
- "9C170C15","9BFB0C15","9C13FC15","9BF99C15",
- // Microsoft OS/2 1.10 for AST
- "66A42C15","67696C15","66DEBC15","66DC4C15",
- // Microsoft OS/2 1.10 for Nokia
- "676B4C15","67768C15","9C12DC15","66A74C15",
- // Microsoft OS/2 1.21
- "9C074C15","66BCFC15","66C1AC15","66C7FC15",
- // Microsoft OS/2 1.30.1
- "66C47C15","66CBEC15","9C167C15","9C147C15","9C0FEC15",
- // OS/2 1.20
- "5BF5E015","5BE61015","5C26F015","5C376015",
- // OS/2 1.30
- "5C418015","5BE20015","5C7F1015","5B83C015",
- // OS/2 2.00
- "5C3BD015","5B807015","5BE69015","5C187015","5C390015",
- // OS/2 2.10
- "1BFCB414","E6C6C414","E6CCF414","E6AF6414","1C005414",
- // OS/2 2.11
- "E6AEB414","1C00D414","1C03B414","E6C90414","E6B6E414",
- // OS/2 Warp 3
- "E6AF7414","E6D63414","E6A65414","E6AE6414",
- // OS/2 Warp 4
- "E6CD9414","1BFAD414","E6DFF414","E6D4C414",
- // eComStation
- "E6CA5814","E6CBC814","E6B81814","1C013814",
- // Windows 95
- null,"3B360D0D","24240D0D","3C260D11",
- "30050D10","275A0D11",null,"3B100D0F",
- // Windows 95 OSR 2
- null,"1C5B0D19","11510D19","0F1F0D15",
- "40200D17","3D610D14",null,"280B0D19",
- /// Windows 95 OSR 2.1
- null,"1F3B0D1C","14470D1C","1C510DE4",
- "2E250DE2","10640DE4",null,"2B3E0D1C",
- // Windows 95 OSR 2.5
- null,"18190DFB","0A240DFB","1E320DE7",
- "33230DE8","125B0DE7",null,"21410DFB",
- // Windows 98
- null,"40090E0F","28140E0F","0E620E0A",
- "14390E0D","0E081246",null,"30600E10",
- // Windows 98 Second Edition
- null,"1B550EEC","1B100EEB","08410EE6",
- "0E0F0EE8","325D0EE4",null,"13380EEC",
- // Windows Me
- "2F200F02","103A0F01","2F1C0EFC","21570EFF","07040EFB",
- // Windows NT 3.10
- "60EA50BC","6C857D51","4009440C","30761EDC",
- // Windows NT 3.50
- "0C478404","7CBEB35B","7C1E8DCB","ECB276AF",
- // Windows NT 3.51
- "482D8681","8889C95E","54DE6C39","F47D2516",
- // Windows NT 4.00
- "D8CAAC1F","E0BB6D70","C08C3C60","9C44B411",
- "4C7DD099","4CD82982",
- // Windows 2000
- "4019989C","78F30AF8","E4217DDE","80B3B996","28043527",
- // Windows Vista
- "3C9F0BD2","3A8E465C","B2EFB822","3C30C632","16DAB07A",
- // BeOS R4.5
- "00000000",
- };
-
- readonly string[] oemid = {
- // Concurrent DOS 6.00
- "DIGITAL ", "DIGITAL ", "DIGITAL ",
- // DR-DOS 3.40
- "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ",
- // DR-DOS 3.41
- "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ",
- // DR-DOS 5.00
- "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3",
- // DR-DOS 6.00
- "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3",
- // DR-DOS 7.02
- "DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7",
- // DR-DOS 7.03
- "DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7",
- // DR-DOS 8.00
- "DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7",
- // MS-DOS 3.30A
- "MSDOS3.3",null,"MSDOS3.3","MSDOS3.3","MSDOS3.3","MSDOS3.3","MSDOS3.3",null,
- // MS-DOS 3.31
- "IBM 3.3",null,"IBM 3.3","IBM 3.3","IBM 3.3","IBM 3.3","IBM 3.3",null,
- // MS-DOS 4.01
- "MSDOS4.0",null,"MSDOS4.0","MSDOS4.0","MSDOS4.0","MSDOS4.0",null,
- // MS-DOS 5.00
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.00
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.20
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.20 RC1
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.21
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.22
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 7.10
- "MSWIN4.1",null,"MSWIN4.1","MSWIN4.1","MSWIN4.1","MSWIN4.1","MSWIN4.1",null,
- // MS-DOS 3.20 for Amstrad
- "MSDOS3.2",null,"MSDOS3.2","MSDOS3.2","MSDOS3.2",null,
- // MS-DOS 2.11 for AT&T
- "PSA 1.04",
- // MS-DOS 3.30 for DeLL
- "IBM 3.3",null,"IBM 3.3","IBM 3.3","IBM 3.3","IBM 3.3",null,
- // MS-DOS 3.10 for Epson
- "EPS 3.10","EPS 3.10","EPS 3.10",
- // MS-DOS 3.20 for Epson
- "IBM 3.2","IBM 3.2","IBM 3.2","IBM 3.2","IBM 3.2","IBM 3.2",
- // MS-DOS 3.20 for HP
- "MSDOS3.2",null,"MSDOS3.2","MSDOS3.2","MSDOS3.2","MSDOS3.2",null,
- // MS-DOS 3.21 for Hyosung
- "MSDOS3.2",null,"MSDOS3.2","MSDOS3.2","MSDOS3.2","MSDOS3.2",null,
- // MS-DOS 3.21 for Kaypro
- "MSDOS3.2",null,"MSDOS3.2","MSDOS3.2","MSDOS3.2","MSDOS3.2",null,
- // MS-DOS 3.10 for Olivetti
- "IBM 3.1","IBM 3.1","IBM 3.1",
- // MS-DOS 3.30 for Toshiba
- "IBM 3.3",null,"IBM 3.3","IBM 3.3","IBM 3.3","IBM 3.3",null,
- // MS-DOS 4.01 for Toshiba
- "T V4.00 ","T V4.00 ","T V4.00 ","T V4.00 ","T V4.00 ","T V4.00 ","T V4.00 ",
- // Novell DOS 7.00
- "NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0",
- // OpenDOS 7.01
- "OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7",
- // PC-DOS 2.00
- "IBM 2.0",
- // PC-DOS 2.10
- "IBM 2.0",
- // PC-DOS 2000
- "IBM 7.0",null,"IBM 7.0","IBM 7.0","IBM 7.0","IBM 7.0","IBM 7.0",null,
- // PC-DOS 3.00
- "IBM 3.0",
- // PC-DOS 3.10
- "IBM 3.1",
- // PC-DOS 3.30
- "IBM 3.3","IBM 3.3",
- // PC-DOS 4.00
- "IBM 4.0","IBM 4.0",
- // PC-DOS 5.00
- "IBM 5.0",null,"IBM 5.0","IBM 5.0","IBM 5.0","IBM 5.0","IBM 5.0",null,
- // PC-DOS 5.02
- "IBM 5.0",null,"IBM 5.0","IBM 5.0","IBM 5.0","IBM 5.0","IBM 5.0",null,
- // PC-DOS 6.10
- "IBM 6.0",null,"IBM 6.0","IBM 6.0","IBM 6.0","IBM 6.0","IBM 6.0",null,
- // PC-DOS 6.30
- "IBM 6.0",null,"IBM 6.0","IBM 6.0","IBM 6.0","IBM 6.0","IBM 6.0",null,
- // mkfs.vfat
- "mkfs.fat","mkfs.fat","mkfs.fat","mkfs.fat",
- // mkfs.vfat for Atari
- null,null,null,null,
- // Microsoft OS/2 1.00 for Tandy
- "TAN 10.0","TAN 10.0","TAN 10.0","TAN 10.0",
- // Microsoft OS/2 1.10 for AST
- "IBM 10.1","IBM 10.1","IBM 10.1","IBM 10.1",
- // Microsoft OS/2 1.10 for Nokia
- "IBM 10.1","IBM 10.1","IBM 10.1","IBM 10.1",
- // Microsoft OS/2 1.21
- "IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2",
- // Microsoft OS/2 1.30.1
- "IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2",
- // OS/2 1.20
- "IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2",
- // OS/2 1.30
- "IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2",
- // OS/2 2.00
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // OS/2 2.10
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // OS/2 2.11
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // OS/2 Warp 3
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // OS/2 Warp 4
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // eComStation
- "IBM 4.50","IBM 4.50","IBM 4.50","IBM 4.50",
- // Windows 95
- null,"MSWIN4.0","MSWIN4.0","MSWIN4.0",
- "MSWIN4.0","MSWIN4.0",null,"MSWIN4.0",
- // Windows 95 OSR 2
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- /// Windows 95 OSR 2.1
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- // Windows 95 OSR 2.5
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- // Windows 98
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- // Windows 98 Second Edition
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- // Windows Me
- "MSWIN4.1","MSWIN4.1","MSWIN4.1","MSWIN4.1","MSWIN4.1",
- // Windows NT 3.10
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // Windows NT 3.50
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // Windows NT 3.51
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // Windows NT 4.00
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- "MSDOS5.0","MSDOS5.0",
- // Windows 2000
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // Windows Vista
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // BeOS R4.5
- "BeOS ",
+ null, null,
};
[Test]
@@ -1462,7 +84,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat12", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new ZZZRawImage();
@@ -1470,15 +92,14 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(mediatypes[i], image.ImageInfo.mediaType, testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- Filesystem fs = new FAT();
+ Filesystem fs = new AmigaDOSPlugin();
Assert.AreEqual(true, fs.Identify(image, 0, image.ImageInfo.sectors - 1), testfiles[i]);
fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("FAT12", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/AFFS2_RDB.cs b/DiscImageChef.Tests/Filesystems/AFFS2_RDB.cs
index 0b7e88a4..fe7c5b8f 100644
--- a/DiscImageChef.Tests/Filesystems/AFFS2_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/AFFS2_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : SFS_RDB.cs
+// Filename : AFFS2_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,10 +48,10 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class SFS_RDB
+ public class AFFS2_RDB
{
readonly string[] testfiles = {
- "uae.vdi.lz",
+ "amigaos_4.0.vdi.lz",
};
readonly ulong[] sectors = {
@@ -63,31 +63,27 @@ namespace DiscImageChef.Tests.Filesystems
};
readonly long[] clusters = {
- 127000,
+ 1022080,
};
readonly int[] clustersize = {
- 2048,
+ 512,
};
readonly string[] volumename = {
- null,
+ "Volume label",
};
readonly string[] volumeserial = {
null,
};
- readonly string[] oemid = {
- null,
- };
-
[Test]
public void Test()
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "sfs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs2_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -96,12 +92,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new AmigaRigidDiskBlock();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.SFS();
+ Filesystem fs = new DiscImageChef.Filesystems.AmigaDOSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- System.Console.WriteLine("{0}", partitions[j].PartitionType);
- if(partitions[j].PartitionType == "\"SFS\\0\"")
+ if(partitions[j].PartitionType == "\"DOS\\7\"")
{
part = j;
break;
@@ -112,10 +107,9 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("SmartFileSystem", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("Amiga FFS2", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/AFFS_MBR.cs b/DiscImageChef.Tests/Filesystems/AFFS_MBR.cs
index d0898dd9..56a0e6d5 100644
--- a/DiscImageChef.Tests/Filesystems/AFFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/AFFS_MBR.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AFFS_RDB.cs
+// Filename : AFFS_MBR.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,41 +48,34 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AFFS_RDB
+ public class AFFS_MBR
{
readonly string[] testfiles = {
- "amigaos_3.9.vdi.lz","amigaos_3.9_intl.vdi.lz","aros.vdi.lz","aros_intl.vdi.lz",
- "amigaos_4.0.vdi.lz","amigaos_4.0_intl.vdi.lz","amigaos_4.0_cache.vdi.lz"
+ "aros.vdi.lz","aros_intl.vdi.lz",
};
readonly ulong[] sectors = {
- 1024128,1024128,409600,409600,
- 1024128,1024128,1024128,
+ 409600,409600,
};
readonly uint[] sectorsize = {
- 512,512,512,512,
- 512,512,512,
+ 512,512,
};
readonly long[] clusters = {
- 1020064,1020064,407232,407232,
- 1020064,1020064,1020064,
+ 408240,408240,
};
readonly int[] clustersize = {
- 512,512,512,512,
- 512,512,512,
+ 512,512,
};
readonly string[] volumename = {
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label","Volume label","Volume label",
+ "Volume label","Volume label",
};
readonly string[] volumeserial = {
- null,null,null,null,
- null,null,null,
+ null,null,
};
[Test]
@@ -90,21 +83,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_mbr", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new AmigaRigidDiskBlock();
+ PartPlugin parts = new MBR();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.AmigaDOSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- System.Console.WriteLine("{0}", partitions[j].PartitionType);
- if(partitions[j].PartitionType == "\"DOS\\1\"" || partitions[j].PartitionType == "\"DOS\\3\"" || partitions[j].PartitionType == "\"DOS\\5\"")
+ if(partitions[j].PartitionType == "0x2D")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/AFFS_MBR_RDB.cs b/DiscImageChef.Tests/Filesystems/AFFS_MBR_RDB.cs
index 56a0e6d5..5963fc01 100644
--- a/DiscImageChef.Tests/Filesystems/AFFS_MBR_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/AFFS_MBR_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AFFS_MBR.cs
+// Filename : AFFS_MBR_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -44,11 +44,12 @@ using DiscImageChef.Filters;
using DiscImageChef.ImagePlugins;
using DiscImageChef.PartPlugins;
using NUnit.Framework;
+using System;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AFFS_MBR
+ public class AFFS_MBR_RDB
{
readonly string[] testfiles = {
"aros.vdi.lz","aros_intl.vdi.lz",
@@ -81,9 +82,10 @@ namespace DiscImageChef.Tests.Filesystems
[Test]
public void Test()
{
- for(int i = 0; i < testfiles.Length; i++)
+ throw new NotImplementedException("Partition schemes inside partitions are not yet implemented, and should be tested here.");
+/* for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_mbr_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -110,7 +112,7 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- }
+ }*/
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/AFFS_RDB.cs b/DiscImageChef.Tests/Filesystems/AFFS_RDB.cs
index 0b7e88a4..4ff00542 100644
--- a/DiscImageChef.Tests/Filesystems/AFFS_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/AFFS_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : SFS_RDB.cs
+// Filename : AFFS_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,38 +48,41 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class SFS_RDB
+ public class AFFS_RDB
{
readonly string[] testfiles = {
- "uae.vdi.lz",
+ "amigaos_3.9.vdi.lz","amigaos_3.9_intl.vdi.lz","aros.vdi.lz","aros_intl.vdi.lz",
+ "amigaos_4.0.vdi.lz","amigaos_4.0_intl.vdi.lz","amigaos_4.0_cache.vdi.lz"
};
readonly ulong[] sectors = {
- 1024128,
+ 1024128,1024128,409600,409600,
+ 1024128,1024128,1024128,
};
readonly uint[] sectorsize = {
- 512,
+ 512,512,512,512,
+ 512,512,512,
};
readonly long[] clusters = {
- 127000,
+ 1020064,1020064,407232,407232,
+ 1020064,1020064,1020064,
};
readonly int[] clustersize = {
- 2048,
+ 512,512,512,512,
+ 512,512,512,
};
readonly string[] volumename = {
- null,
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label",
};
readonly string[] volumeserial = {
- null,
- };
-
- readonly string[] oemid = {
- null,
+ null,null,null,null,
+ null,null,null,
};
[Test]
@@ -87,7 +90,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "sfs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -96,12 +99,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new AmigaRigidDiskBlock();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.SFS();
+ Filesystem fs = new DiscImageChef.Filesystems.AmigaDOSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- System.Console.WriteLine("{0}", partitions[j].PartitionType);
- if(partitions[j].PartitionType == "\"SFS\\0\"")
+ if(partitions[j].PartitionType == "\"DOS\\1\"" || partitions[j].PartitionType == "\"DOS\\3\"" || partitions[j].PartitionType == "\"DOS\\5\"")
{
part = j;
break;
@@ -112,10 +114,9 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("SmartFileSystem", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/AOFS.cs b/DiscImageChef.Tests/Filesystems/AOFS.cs
index 9a3288c5..71c8b9e0 100644
--- a/DiscImageChef.Tests/Filesystems/AOFS.cs
+++ b/DiscImageChef.Tests/Filesystems/AOFS.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AFFS.cs
+// Filename : AOFS.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -45,7 +45,7 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AFFS
+ public class AOFS
{
readonly string[] testfiles = {
"amigaos_3.9.adf.lz", "amigaos_3.9_intl.adf.lz",
@@ -84,7 +84,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "aofs", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new ZZZRawImage();
@@ -97,7 +97,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("Amiga OFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/AOFS_MBR.cs b/DiscImageChef.Tests/Filesystems/AOFS_MBR.cs
index d0898dd9..1910a3c6 100644
--- a/DiscImageChef.Tests/Filesystems/AOFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/AOFS_MBR.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AFFS_RDB.cs
+// Filename : AOFS_MBR.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,41 +48,34 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AFFS_RDB
+ public class AOFS_MBR
{
readonly string[] testfiles = {
- "amigaos_3.9.vdi.lz","amigaos_3.9_intl.vdi.lz","aros.vdi.lz","aros_intl.vdi.lz",
- "amigaos_4.0.vdi.lz","amigaos_4.0_intl.vdi.lz","amigaos_4.0_cache.vdi.lz"
+ "aros.vdi.lz","aros_intl.vdi.lz",
};
readonly ulong[] sectors = {
- 1024128,1024128,409600,409600,
- 1024128,1024128,1024128,
+ 409600,409600,
};
readonly uint[] sectorsize = {
- 512,512,512,512,
- 512,512,512,
+ 512,512,
};
readonly long[] clusters = {
- 1020064,1020064,407232,407232,
- 1020064,1020064,1020064,
+ 408240,408240,
};
readonly int[] clustersize = {
- 512,512,512,512,
- 512,512,512,
+ 512,512,
};
readonly string[] volumename = {
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label","Volume label","Volume label",
+ "Volume label","Volume label",
};
readonly string[] volumeserial = {
- null,null,null,null,
- null,null,null,
+ null,null,
};
[Test]
@@ -90,21 +83,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "aofs_mbr", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new AmigaRigidDiskBlock();
+ PartPlugin parts = new MBR();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.AmigaDOSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- System.Console.WriteLine("{0}", partitions[j].PartitionType);
- if(partitions[j].PartitionType == "\"DOS\\1\"" || partitions[j].PartitionType == "\"DOS\\3\"" || partitions[j].PartitionType == "\"DOS\\5\"")
+ if(partitions[j].PartitionType == "0x2C")
{
part = j;
break;
@@ -115,7 +107,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("Amiga OFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/AOFS_MBR_RDB.cs b/DiscImageChef.Tests/Filesystems/AOFS_MBR_RDB.cs
index 1910a3c6..b0034321 100644
--- a/DiscImageChef.Tests/Filesystems/AOFS_MBR_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/AOFS_MBR_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AOFS_MBR.cs
+// Filename : AOFS_MBR_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -35,6 +35,7 @@
// Copyright (C) 2011-2015 Claunia.com
// ****************************************************************************/
// //$Id$
+using System;
using System.Collections.Generic;
using System.IO;
using DiscImageChef.CommonTypes;
@@ -48,7 +49,7 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AOFS_MBR
+ public class AOFS_MBR_RDB
{
readonly string[] testfiles = {
"aros.vdi.lz","aros_intl.vdi.lz",
@@ -81,7 +82,8 @@ namespace DiscImageChef.Tests.Filesystems
[Test]
public void Test()
{
- for(int i = 0; i < testfiles.Length; i++)
+ throw new NotImplementedException("Partition schemes inside partitions are not yet implemented, and should be tested here.");
+/* for(int i = 0; i < testfiles.Length; i++)
{
string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "aofs_mbr", testfiles[i]);
Filter filter = new LZip();
@@ -110,7 +112,7 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual("Amiga OFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- }
+ }*/
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/AOFS_RDB.cs b/DiscImageChef.Tests/Filesystems/AOFS_RDB.cs
index 0b7e88a4..cd988dca 100644
--- a/DiscImageChef.Tests/Filesystems/AOFS_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/AOFS_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : SFS_RDB.cs
+// Filename : AOFS_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,38 +48,34 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class SFS_RDB
+ public class AOFS_RDB
{
readonly string[] testfiles = {
- "uae.vdi.lz",
+ "amigaos_3.9.vdi.lz","amigaos_3.9_intl.vdi.lz","aros.vdi.lz","aros_intl.vdi.lz",
};
readonly ulong[] sectors = {
- 1024128,
+ 1024128,1024128,409600,409600,
};
readonly uint[] sectorsize = {
- 512,
+ 512,512,512,512,
};
readonly long[] clusters = {
- 127000,
+ 1020064,1020064,407232,407232,
};
readonly int[] clustersize = {
- 2048,
+ 512,512,512,512,
};
readonly string[] volumename = {
- null,
+ "Volume label","Volume label","Volume label","Volume label",
};
readonly string[] volumeserial = {
- null,
- };
-
- readonly string[] oemid = {
- null,
+ null,null,null,null,
};
[Test]
@@ -87,7 +83,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "sfs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "aofs_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -96,12 +92,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new AmigaRigidDiskBlock();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.SFS();
+ Filesystem fs = new DiscImageChef.Filesystems.AmigaDOSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- System.Console.WriteLine("{0}", partitions[j].PartitionType);
- if(partitions[j].PartitionType == "\"SFS\\0\"")
+ if(partitions[j].PartitionType == "\"DOS\\0\"" || partitions[j].PartitionType == "\"DOS\\2\"" || partitions[j].PartitionType == "\"DOS\\4\"")
{
part = j;
break;
@@ -112,10 +107,9 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("SmartFileSystem", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("Amiga OFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/BeFS_GPT.cs b/DiscImageChef.Tests/Filesystems/BeFS_GPT.cs
index 1fc45d68..6416fb42 100644
--- a/DiscImageChef.Tests/Filesystems/BeFS_GPT.cs
+++ b/DiscImageChef.Tests/Filesystems/BeFS_GPT.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : BeFS_APM.cs
+// Filename : BeFS_GPT.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,59 +48,55 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class BeFS_APM
+ public class BeFS_GPT
{
readonly string[] testfiles = {
- "beos_r3.1.vdi.lz", "beos_r4.5.vdi.lz",
+ "haiku_hrev51259.vdi.lz",
};
readonly ulong[] sectors = {
- 1572864, 1572864,
+ 8388608,
};
readonly uint[] sectorsize = {
- 512, 512,
+ 512,
};
readonly long[] clusters = {
- 786400, 785232,
+ 2096640,
};
readonly int[] clustersize = {
- 1024, 1024,
+ 2048
};
readonly string[] volumename = {
- "Volume label","Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
null,null,
};
- readonly string[] oemid = {
- null,null,
- };
-
[Test]
public void Test()
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "befs_apm", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "befs_gpt", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new AppleMap();
+ PartPlugin parts = new GuidPartitionTable();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.BeFS();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "Be_BFS")
+ if(partitions[j].PartitionType == "Haiku BFS")
{
part = j;
break;
@@ -114,7 +110,6 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual("BeFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/BeFS_MBR.cs b/DiscImageChef.Tests/Filesystems/BeFS_MBR.cs
index bd423782..5a441c31 100644
--- a/DiscImageChef.Tests/Filesystems/BeFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/BeFS_MBR.cs
@@ -51,35 +51,35 @@ namespace DiscImageChef.Tests.Filesystems
public class BeFS_MBR
{
readonly string[] testfiles = {
- "beos_r3.1.vdi.lz", "beos_r4.5.vdi.lz",
+ "beos_r3.1.vdi.lz", "beos_r4.5.vdi.lz", "haiku_hrev51259.vdi.lz",
};
readonly ulong[] sectors = {
- 1572864, 1572864,
+ 1572864, 1572864,8388608,
};
readonly uint[] sectorsize = {
- 512, 512,
+ 512, 512, 512,
};
readonly long[] clusters = {
- 786400, 785232,
+ 786400, 785232, 2096640,
};
readonly int[] clustersize = {
- 1024, 1024,
+ 1024, 1024, 2048,
};
readonly string[] volumename = {
- "Volume label","Volume label",
+ "Volume label","Volume label","Volume label",
};
readonly string[] volumeserial = {
- null,null,
+ null,null,null,
};
readonly string[] oemid = {
- null,null,
+ null,null,null,
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/FAT12.cs b/DiscImageChef.Tests/Filesystems/FAT12.cs
index 0b6c4638..f65f369d 100644
--- a/DiscImageChef.Tests/Filesystems/FAT12.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT12.cs
@@ -235,6 +235,22 @@ namespace DiscImageChef.Tests.Filesystems
"winvista_dsdd.img.lz","winvista_dshd.img.lz","winvista_mf2dd.img.lz","winvista_mf2ed.img.lz","winvista_mf2hd.img.lz",
// BeOS R4.5
"beos_r4.5_mf2hd.img.lz",
+ // Hatari
+ "hatari_mf1dd.st.lz","hatari_mf1dd_10.st.lz","hatari_mf1dd_11.st.lz",
+ "hatari_mf2dd.st.lz","hatari_mf2dd_10.st.lz","hatari_mf2dd_11.st.lz",
+ "hatari_mf2ed.st.lz","hatari_mf2hd.st.lz",
+ // Atari TOS 1.04
+ "tos_1.04_mf1dd.st.lz","tos_1.04_mf2dd.st.lz",
+ // NetBSD 1.6
+ "netbsd_1.6_mf2dd.img.lz","netbsd_1.6_mf2hd.img.lz",
+ // NeXTStep 3.3
+ "nextstep_3.3_mf2dd.img.lz","nextstep_3.3_mf2hd.img.lz",
+ // OpenStep for Mach 4.0
+ "openstep_4.0_mf2dd.img.lz","openstep_4.0_mf2hd.img.lz",
+ // OpenStep for Mach 4.2
+ "openstep_4.2_mf2dd.img.lz","openstep_4.2_mf2hd.img.lz",
+ // Solaris 2.4
+ "solaris_2.4_mf2dd.img.lz","solaris_2.4_mf2hd.img.lz",
};
readonly MediaType[] mediatypes = {
@@ -419,6 +435,23 @@ namespace DiscImageChef.Tests.Filesystems
MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
// BeOS R4.5
MediaType.DOS_35_HD,
+ // Hatari
+ // TODO: Incorrect media types
+ MediaType.DOS_35_SS_DD_9,MediaType.GENERIC_HDD,MediaType.GENERIC_HDD,
+ MediaType.DOS_35_DS_DD_9,MediaType.ATARI_35_DS_DD,MediaType.GENERIC_HDD,
+ MediaType.DOS_35_ED,MediaType.DOS_35_HD,
+ // Atari TOS 1.04
+ MediaType.DOS_35_SS_DD_9,MediaType.DOS_35_DS_DD_9,
+ // NetBSD 1.6
+ MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
+ // NeXTStep 3.3
+ MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
+ // OpenStep for Mach 4.0
+ MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
+ // OpenStep for Mach 4.2
+ MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
+ // Solaris 2.4
+ MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
};
readonly ulong[] sectors = {
@@ -564,6 +597,20 @@ namespace DiscImageChef.Tests.Filesystems
720,2400,1440,5760,2880,
// BeOS R4.5
2880,
+ // Hatari
+ 720,800,880,1440,1600,1760,5760,2880,
+ // Atari TOS 1.04
+ 720,1440,
+ // NetBSD 1.6
+ 1440,2880,
+ // NeXTStep 3.3
+ 1440,2880,
+ // OpenStep for Mach 4.0
+ 1440,2880,
+ // OpenStep for Mach 4.2
+ 1440,2880,
+ // Solaris 2.4
+ 1440,2880,
};
readonly uint[] sectorsize = {
@@ -709,6 +756,20 @@ namespace DiscImageChef.Tests.Filesystems
512,512,512,512,512,
// BeOS R4.5
512,
+ // Hatari
+ 512,512,512,512,512,512,512,512,
+ // Atari TOS 1.04
+ 512,512,
+ // NetBSD 1.6
+ 512,512,
+ // NeXTStep 3.3
+ 512,512,
+ // OpenStep for Mach 4.0
+ 512,512,
+ // OpenStep for Mach 4.2
+ 512,512,
+ // Solaris 2.4
+ 512,512,
};
readonly long[] clusters = {
@@ -854,6 +915,20 @@ namespace DiscImageChef.Tests.Filesystems
360,2400,720,2880,2880,
// BeOS R4.5
2880,
+ // Hatari
+ 360,400,440,720,800,880,2880,1440,
+ // Atari TOS 1.04
+ 360,720,
+ // NetBSD 1.6
+ 720,2880,
+ // NeXTStep 3.3
+ 720,2880,
+ // OpenStep for Mach 4.0
+ 720,2880,
+ // OpenStep for Mach 4.2
+ 720,2880,
+ // Solaris 2.4
+ 720,2880,
};
readonly int[] clustersize = {
@@ -999,6 +1074,20 @@ namespace DiscImageChef.Tests.Filesystems
1024,512,1024,1024,512,
// BeOS R4.5
512,
+ // Hatari
+ 1024,1024,1024,1024,1024,1024,1024,1024,
+ // Atari TOS 1.04
+ 1024,1024,
+ // NetBSD 1.6
+ 1024,512,
+ // NeXTStep 3.3
+ 1024,512,
+ // OpenStep for Mach 4.0
+ 1024,512,
+ // OpenStep for Mach 4.2
+ 1024,512,
+ // Solaris 2.4
+ 1024,512,
};
readonly string[] volumename = {
@@ -1151,6 +1240,22 @@ namespace DiscImageChef.Tests.Filesystems
"NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
// BeOS R4.5
"NO NAME ",
+ // Hatari
+ null,null,null,
+ null,null,null,
+ null,null,
+ // Atari TOS 1.04
+ null,null,
+ // NetBSD 1.6
+ "VOLUMELABEL","VOLUMELABEL",
+ // NeXTStep 3.3
+ null,null,
+ // OpenStep for Mach 4.0
+ null,null,
+ // OpenStep for Mach 4.2
+ null,null,
+ // Solaris 2.4
+ null,null,
};
readonly string[] volumeserial = {
@@ -1303,6 +1408,22 @@ namespace DiscImageChef.Tests.Filesystems
"3C9F0BD2","3A8E465C","B2EFB822","3C30C632","16DAB07A",
// BeOS R4.5
"00000000",
+ // Hatari
+ null,null,null,
+ null,null,null,
+ null,null,
+ // Atari TOS 1.04
+ null,null,
+ // NetBSD 1.6
+ "EEB51A0C","CCFD1A06",
+ // NeXTStep 3.3
+ null,null,
+ // OpenStep for Mach 4.0
+ null,null,
+ // OpenStep for Mach 4.2
+ null,null,
+ // Solaris 2.4
+ null,null,
};
readonly string[] oemid = {
@@ -1455,6 +1576,22 @@ namespace DiscImageChef.Tests.Filesystems
"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
// BeOS R4.5
"BeOS ",
+ // Hatari
+ null,null,null,
+ null,null,null,
+ null,null,
+ // Atari TOS 1.04
+ null,null,
+ // NetBSD 1.6
+ "BSD 4.4","BSD 4.4",
+ // NeXTStep 3.3
+ "NEXT ","NEXT ",
+ // OpenStep for Mach 4.0
+ "NEXT ","NEXT ",
+ // OpenStep for Mach 4.2
+ "NEXT ","NEXT ",
+ // Solaris 2.4
+ "MSDOS3.3","MSDOS3.3",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/FAT12_APM.cs b/DiscImageChef.Tests/Filesystems/FAT12_APM.cs
index f8e3a2af..f83ddeff 100644
--- a/DiscImageChef.Tests/Filesystems/FAT12_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT12_APM.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class FAT12_APM
{
readonly string[] testfiles = {
- "macosx.vdi.lz",
+ "macosx_10.11.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/FAT12_GPT.cs b/DiscImageChef.Tests/Filesystems/FAT12_GPT.cs
index eb06187d..6ba4954b 100644
--- a/DiscImageChef.Tests/Filesystems/FAT12_GPT.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT12_GPT.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class FAT12_GPT
{
readonly string[] testfiles = {
- "macosx.vdi.lz",
+ "macosx_10.11.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/FAT12_MBR.cs b/DiscImageChef.Tests/Filesystems/FAT12_MBR.cs
index d9e4daad..b45e18da 100644
--- a/DiscImageChef.Tests/Filesystems/FAT12_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT12_MBR.cs
@@ -61,11 +61,12 @@ namespace DiscImageChef.Tests.Filesystems
"pcdos610.vdi.lz", "pcdos630.vdi.lz", "toshibamsdos330.vdi.lz", "toshibamsdos401.vdi.lz",
"msos2_1.21.vdi.lz", "msos2_1.30.1.vdi.lz", "multiuserdos_7.22r4.vdi.lz", "os2_1.20.vdi.lz",
"os2_1.30.vdi.lz", "os2_6.307.vdi.lz", "os2_6.514.vdi.lz", "os2_6.617.vdi.lz",
- "os2_8.162.vdi.lz", "os2_9.023.vdi.lz", "ecs.vdi.lz", "macosx.vdi.lz",
+ "os2_8.162.vdi.lz", "os2_9.023.vdi.lz", "ecs.vdi.lz", "macosx_10.11.vdi.lz",
"win10.vdi.lz", "win2000.vdi.lz","win95.vdi.lz","win95osr2.1.vdi.lz",
"win95osr2.5.vdi.lz","win95osr2.vdi.lz","win98.vdi.lz","win98se.vdi.lz",
"winme.vdi.lz","winnt_3.10.vdi.lz","winnt_3.50.vdi.lz","winnt_3.51.vdi.lz",
"winnt_4.00.vdi.lz","winvista.vdi.lz","beos_r4.5.vdi.lz","linux.vdi.lz",
+ "freebsd_6.1.vdi.lz","freebsd_7.0.vdi.lz","freebsd_8.2.vdi.lz",
};
readonly ulong[] sectors = {
@@ -84,6 +85,7 @@ namespace DiscImageChef.Tests.Filesystems
16384, 16384, 16384, 16384,
16384, 16384, 16384, 16384,
16384, 16384, 16384, 16384,
+ 16384, 16384, 16384,
};
readonly uint[] sectorsize = {
@@ -102,6 +104,7 @@ namespace DiscImageChef.Tests.Filesystems
512, 512, 512, 512,
512, 512, 512, 512,
512, 512, 512, 512,
+ 512, 512, 512,
};
readonly long[] clusters = {
@@ -120,6 +123,7 @@ namespace DiscImageChef.Tests.Filesystems
2008, 2008, 2044, 2044,
2044, 4016, 2044, 2044,
4016, 3072, 2040, 3584,
+ 2044, 2044, 2044,
};
readonly int[] clustersize = {
@@ -138,6 +142,7 @@ namespace DiscImageChef.Tests.Filesystems
4096, 4096, 4096, 4096,
4096, 2048, 4096, 4096,
2048, 2048, 4096, 2048,
+ 4096, 4096, 4096,
};
readonly string[] volumename = {
@@ -156,6 +161,7 @@ namespace DiscImageChef.Tests.Filesystems
"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
"VOLUMELABEL","NO NAME ","NO NAME ","NO NAME ",
"NO NAME ","NO NAME ","NO NAME ","VolumeLabel",
+ "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
};
readonly string[] volumeserial = {
@@ -174,6 +180,7 @@ namespace DiscImageChef.Tests.Filesystems
"074C0DFC","33640D18","0E121460","094C0EED",
"38310F02","50489A1B","2CE52101","94313E7E",
"BC184FE6","BAD08A1E","00000000","8D418102",
+ "8FC80E0A","34FA0E0B","02140E0B",
};
readonly string[] oemid = {
@@ -192,6 +199,7 @@ namespace DiscImageChef.Tests.Filesystems
"MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1",
"MSWIN4.1", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0",
"MSDOS5.0", "MSDOS5.0", "BeOS ", "mkfs.fat",
+ "BSD 4.4", "BSD 4.4", "BSD4.4 ",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/FAT16_APM.cs b/DiscImageChef.Tests/Filesystems/FAT16_APM.cs
index f33cadbc..95051798 100644
--- a/DiscImageChef.Tests/Filesystems/FAT16_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT16_APM.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : FAT16_APM.cs
+// Filename : FAT16_Atari.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,38 +48,38 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class FAT16_APM
+ public class FAT16_Atari
{
readonly string[] testfiles = {
- "macosx.vdi.lz",
+ "tos_1.04.vdi.lz","tos_1.04_small.vdi.lz",
};
readonly ulong[] sectors = {
- 1024000,
+ 16384, 81920,
};
readonly uint[] sectorsize = {
- 512,
+ 512, 512,
};
readonly long[] clusters = {
- 63995,
+ 16382, 81918,
};
readonly int[] clustersize = {
- 8192,
+ 512, 512,
};
readonly string[] volumename = {
- "VOLUMELABEL",
+ null, null,
};
readonly string[] volumeserial = {
- "063D1F09",
+ null, null,
};
readonly string[] oemid = {
- "BSD 4.4",
+ null, null,
};
[Test]
@@ -87,20 +87,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat16_apm", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat16_atari", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new AppleMap();
+ PartPlugin parts = new AtariPartitions();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.FAT();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "DOS_FAT_16")
+ if(partitions[j].PartitionType == "GEM" || partitions[j].PartitionType == "BGM")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/FAT16_GPT.cs b/DiscImageChef.Tests/Filesystems/FAT16_GPT.cs
index 0f75de48..dd677140 100644
--- a/DiscImageChef.Tests/Filesystems/FAT16_GPT.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT16_GPT.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class FAT16_GPT
{
readonly string[] testfiles = {
- "macosx.vdi.lz",
+ "macosx_10.11.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/FAT16_MBR.cs b/DiscImageChef.Tests/Filesystems/FAT16_MBR.cs
index dc3c2775..41c9c9a4 100644
--- a/DiscImageChef.Tests/Filesystems/FAT16_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT16_MBR.cs
@@ -59,11 +59,14 @@ namespace DiscImageChef.Tests.Filesystems
"pcdos500.vdi.lz", "pcdos502.vdi.lz", "pcdos610.vdi.lz", "pcdos630.vdi.lz",
"msos2_1.21.vdi.lz", "msos2_1.30.1.vdi.lz", "multiuserdos_7.22r4.vdi.lz", "os2_1.20.vdi.lz",
"os2_1.30.vdi.lz", "os2_6.307.vdi.lz", "os2_6.514.vdi.lz", "os2_6.617.vdi.lz",
- "os2_8.162.vdi.lz", "os2_9.023.vdi.lz", "ecs.vdi.lz", "macosx.vdi.lz",
+ "os2_8.162.vdi.lz", "os2_9.023.vdi.lz", "ecs.vdi.lz", "macosx_10.11.vdi.lz",
"win10.vdi.lz", "win2000.vdi.lz", "win95osr2.1.vdi.lz", "win95osr2.5.vdi.lz",
"win95osr2.vdi.lz", "win95.vdi.lz", "win98se.vdi.lz", "win98.vdi.lz",
"winme.vdi.lz", "winnt_3.10.vdi.lz", "winnt_3.50.vdi.lz", "winnt_3.51.vdi.lz",
"winnt_4.00.vdi.lz", "winvista.vdi.lz", "beos_r4.5.vdi.lz", "linux.vdi.lz",
+ "amigaos_3.9.vdi.lz","aros.vdi.lz","freebsd_6.1.vdi.lz","freebsd_7.0.vdi.lz",
+ "freebsd_8.2.vdi.lz","macos_7.5.3.vdi.lz","macos_7.5.vdi.lz","macos_7.6.vdi.lz",
+ "macos_8.0.vdi.lz",
};
readonly ulong[] sectors = {
@@ -80,6 +83,9 @@ namespace DiscImageChef.Tests.Filesystems
1024000, 1024000, 1024000, 1024000,
1024000, 1024000, 1024000, 1024000,
1024000, 1024000, 1024000, 262144,
+ 1024128, 1024000, 1024000, 1024000,
+ 1024000, 1024000, 1024000, 1024000,
+ 1024000,
};
readonly uint[] sectorsize = {
@@ -96,6 +102,9 @@ namespace DiscImageChef.Tests.Filesystems
512, 512, 512, 512,
512, 512, 512, 512,
512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512,
};
readonly long[] clusters = {
@@ -112,6 +121,9 @@ namespace DiscImageChef.Tests.Filesystems
63941, 63941, 63998, 63998,
63998, 63941, 63998, 63998,
63941, 63616, 63996, 65024,
+ 63941, 63882, 63998, 63998,
+ 31999, 63941, 63941, 63941,
+ 63941,
};
readonly int[] clustersize = {
@@ -128,6 +140,9 @@ namespace DiscImageChef.Tests.Filesystems
8192, 8192, 8192, 8192,
8192, 8192, 8192, 8192,
8192, 8192, 8192, 2048,
+ 8192, 8192, 8192, 8192,
+ 16384, 8192, 8192, 8192,
+ 8192,
};
readonly string[] volumename = {
@@ -144,6 +159,9 @@ namespace DiscImageChef.Tests.Filesystems
"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
"VOLUMELABEL","NO NAME ","NO NAME ","NO NAME ",
"NO NAME ","NO NAME ","NO NAME ","VolumeLabel",
+ "EMPTY ","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
+ "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
+ "VOLUMELABEL",
};
readonly string[] volumeserial = {
@@ -160,6 +178,9 @@ namespace DiscImageChef.Tests.Filesystems
"38270D18","2E620D0C","0B4F0EED","0E122464",
"3B5F0F02","C84CB6F2","D0E9AD4E","C039A2EC",
"501F9FA6","9AAA4216","00000000","A132D985",
+ "374D3BD1","52BEA34A","3CF10E0D","C6C30E0D",
+ "44770E0D","27761816","27761816","27761816",
+ "27761816",
};
readonly string[] oemid = {
@@ -176,6 +197,9 @@ namespace DiscImageChef.Tests.Filesystems
"MSWIN4.1", "MSWIN4.0", "MSWIN4.1", "MSWIN4.1",
"MSWIN4.1", "MSDOS5.0", "MSDOS5.0", "MSDOS5.0",
"MSDOS5.0", "MSDOS5.0", "BeOS ", "mkfs.fat",
+ "CDP 5.0", "MSWIN4.1", "BSD 4.4", "BSD 4.4",
+ "BSD4.4 ", "PCX 2.0 ", "PCX 2.0 ", "PCX 2.0 ",
+ "PCX 2.0 ",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/FAT16_RDB.cs b/DiscImageChef.Tests/Filesystems/FAT16_RDB.cs
index 4ff00542..00f58ffb 100644
--- a/DiscImageChef.Tests/Filesystems/FAT16_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT16_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AFFS_RDB.cs
+// Filename : FAT16_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -35,6 +35,7 @@
// Copyright (C) 2011-2015 Claunia.com
// ****************************************************************************/
// //$Id$
+using System;
using System.Collections.Generic;
using System.IO;
using DiscImageChef.CommonTypes;
@@ -48,49 +49,48 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AFFS_RDB
+ public class FAT16_RDB
{
readonly string[] testfiles = {
- "amigaos_3.9.vdi.lz","amigaos_3.9_intl.vdi.lz","aros.vdi.lz","aros_intl.vdi.lz",
- "amigaos_4.0.vdi.lz","amigaos_4.0_intl.vdi.lz","amigaos_4.0_cache.vdi.lz"
+ "amigaos_3.9.vdi.lz",
};
readonly ulong[] sectors = {
- 1024128,1024128,409600,409600,
- 1024128,1024128,1024128,
+ 1024128
};
readonly uint[] sectorsize = {
- 512,512,512,512,
- 512,512,512,
+ 512,
};
readonly long[] clusters = {
- 1020064,1020064,407232,407232,
- 1020064,1020064,1020064,
+ 1020064
};
readonly int[] clustersize = {
- 512,512,512,512,
- 512,512,512,
+ 512,
};
readonly string[] volumename = {
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label","Volume label","Volume label",
+ "VOLUMELABEL"
};
readonly string[] volumeserial = {
- null,null,null,null,
- null,null,null,
+ "UNKNOWN ",
+ };
+
+ readonly string[] oemid = {
+ "CDP 5.0",
};
[Test]
public void Test()
{
+ throw new NotImplementedException("Partition schemes inside partitions are not yet implemented, and should be tested here.");
+ /*
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat16_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -99,11 +99,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new AmigaRigidDiskBlock();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.AmigaDOSPlugin();
+ Filesystem fs = new DiscImageChef.Filesystems.FAT();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "\"DOS\\1\"" || partitions[j].PartitionType == "\"DOS\\3\"" || partitions[j].PartitionType == "\"DOS\\5\"")
+ if(partitions[j].PartitionType == "\"RES\\86\"")
{
part = j;
break;
@@ -117,7 +117,8 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- }
+ Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
+ }*/
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/FAT32_APM.cs b/DiscImageChef.Tests/Filesystems/FAT32_APM.cs
index b96af8cc..20bd4149 100644
--- a/DiscImageChef.Tests/Filesystems/FAT32_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT32_APM.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class FAT32_APM
{
readonly string[] testfiles = {
- "macosx.vdi.lz",
+ "macosx_10.11.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/FAT32_GPT.cs b/DiscImageChef.Tests/Filesystems/FAT32_GPT.cs
index 22cf0bb3..3b7d6cbb 100644
--- a/DiscImageChef.Tests/Filesystems/FAT32_GPT.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT32_GPT.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class FAT32_GPT
{
readonly string[] testfiles = {
- "macosx.vdi.lz",
+ "macosx_10.11.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/FAT32_MBR.cs b/DiscImageChef.Tests/Filesystems/FAT32_MBR.cs
index 9cd587e1..c0378b22 100644
--- a/DiscImageChef.Tests/Filesystems/FAT32_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/FAT32_MBR.cs
@@ -51,59 +51,67 @@ namespace DiscImageChef.Tests.Filesystems
public class FAT32_MBR
{
readonly string[] testfiles = {
- "drdos_7.03.vdi.lz", "drdos_8.00.vdi.lz", "msdos_7.10.vdi.lz", "macosx.vdi.lz",
+ "drdos_7.03.vdi.lz", "drdos_8.00.vdi.lz", "msdos_7.10.vdi.lz", "macosx_10.11.vdi.lz",
"win10.vdi.lz", "win2000.vdi.lz", "win95osr2.1.vdi.lz", "win95osr2.5.vdi.lz",
"win95osr2.vdi.lz", "win98se.vdi.lz", "win98.vdi.lz", "winme.vdi.lz",
- "winvista.vdi.lz", "beos_r4.5.vdi.lz", "linux.vdi.lz",
+ "winvista.vdi.lz", "beos_r4.5.vdi.lz", "linux.vdi.lz","aros.vdi.lz",
+ "freebsd_6.1.vdi.lz","freebsd_7.0.vdi.lz","freebsd_8.2.vdi.lz","freedos_1.2.vdi.lz",
};
readonly ulong[] sectors = {
8388608, 8388608, 8388608, 4194304,
4194304, 8388608, 4194304, 4194304,
4194304, 4194304, 4194304, 4194304,
- 4194304, 4194304, 262144,
+ 4194304, 4194304, 262144, 4194304,
+ 4194304, 4194304, 4194304, 8388608,
};
readonly uint[] sectorsize = {
512, 512, 512, 512,
512, 512, 512, 512,
512, 512, 512, 512,
- 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
};
readonly long[] clusters = {
1048233, 1048233, 1048233, 524287,
524016, 1048233, 524152, 524152,
524152, 524112, 524112, 524112,
- 523520, 1048560, 260096,
+ 523520, 1048560, 260096, 524160,
+ 524112, 524112, 65514, 1048233,
};
readonly int[] clustersize = {
4096, 4096, 4096, 4096,
4096, 4096, 4096, 4096,
4096, 4096, 4096, 4096,
- 4096, 2048, 512
+ 4096, 2048, 512, 4096,
+ 4096, 4096, 32768, 4096,
};
readonly string[] volumename = {
null,null,null,null,
null,null,null,null,
null,null,null,null,
- null,null,null,
+ null,null,null,null,
+ null,null,null,null,
};
readonly string[] volumeserial = {
"5955996C","1BFB1A43","3B331809","42D51EF1",
"48073346","EC62E6DE","2A310DE4","0C140DFC",
"3E310D18","0D3D0EED","0E131162","3F500F02",
- "82EB4C04","00000000","B488C502"
+ "82EB4C04","00000000","B488C502","5CAC9B4E",
+ "41540E0E","4E600E0F","26E20E0F","3E0C1BE8",
};
readonly string[] oemid = {
"DRDOS7.X", "IBM 7.1", "MSWIN4.1", "BSD 4.4",
"MSDOS5.0", "MSDOS5.0", "MSWIN4.1", "MSWIN4.1",
"MSWIN4.1", "MSWIN4.1", "MSWIN4.1", "MSWIN4.1",
- "MSDOS5.0", "BeOS ", "mkfs.fat",
+ "MSDOS5.0", "BeOS ", "mkfs.fat", "MSWIN4.1",
+ "BSD 4.4", "BSD 4.4", "BSD4.4 ", "FRDOS4.1",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/HAMMER_MBR.cs b/DiscImageChef.Tests/Filesystems/HAMMER_MBR.cs
index feb60c91..496f996e 100644
--- a/DiscImageChef.Tests/Filesystems/HAMMER_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/HAMMER_MBR.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : HFSX_MBR.cs
+// Filename : HAMMER_MBR.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -35,6 +35,7 @@
// Copyright (C) 2011-2015 Claunia.com
// ****************************************************************************/
// //$Id$
+using System;
using System.Collections.Generic;
using System.IO;
using DiscImageChef.CommonTypes;
@@ -48,46 +49,44 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class HFSX_MBR
+ public class HAMMER_MBR
{
readonly string[] testfiles = {
- "macosx_10.11.vdi.lz", "macosx_10.11_journal.vdi.lz", "linux.vdi.lz", "linux_journal.vdi.lz",
+ "dflybsd_3.6.1.vdi.lz","dflybsd_4.0.5.vdi.lz",
};
readonly ulong[] sectors = {
- 393216, 409600, 262144, 262144,
+ 104857600, 104857600,
};
readonly uint[] sectorsize = {
- 512, 512, 512, 512,
+ 512, 512,
};
readonly long[] clusters = {
- 102390, 153590, 32512, 32512,
+ 104856192, 104856192,
};
readonly int[] clustersize = {
- 4096, 4096, 4096, 4096
+ 512, 512,
};
readonly string[] volumename = {
- "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label",
};
readonly string[] volumeserial = {
- "UNKNOWN","UNKNOWN","0000000000000000","0000000000000000"
- };
-
- readonly string[] oemid = {
- "10.0","HFSJ","10.0","10.0"
+ "UNKNOWN","UNKNOWN",
};
[Test]
public void Test()
{
+ throw new NotImplementedException("HAMMER filesystem is not yet implemented");
+ /*
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfsx_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hammer_mbr", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -96,11 +95,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new MBR();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.AppleHFSPlus();
+ Filesystem fs = new DiscImageChef.Filesystems.HAMMER();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0xAF")
+ if(partitions[j].PartitionType == "0xA5")
{
part = j;
break;
@@ -111,11 +110,10 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("HFSX", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("HAMMER", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
- }
+ }*/
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/HFS.cs b/DiscImageChef.Tests/Filesystems/HFS.cs
index f65f369d..318b899a 100644
--- a/DiscImageChef.Tests/Filesystems/HFS.cs
+++ b/DiscImageChef.Tests/Filesystems/HFS.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : FAT12.cs
+// Filename : HFS.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -45,1553 +45,46 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class FAT12
+ public class HFS
{
readonly string[] testfiles = {
- // Concurrent DOS 6.00
- "concurrentdos_6.00_dshd.img.lz", "concurrentdos_6.00_mf2dd.img.lz", "concurrentdos_6.00_mf2hd.img.lz",
- // DR-DOS 3.40
- "drdos_3.40_dsdd.img.lz", "drdos_3.40_dsdd8.img.lz", "drdos_3.40_dshd.img.lz", "drdos_3.40_mf2dd.img.lz",
- "drdos_3.40_mf2hd.img.lz", "drdos_3.40_ssdd.img.lz", "drdos_3.40_ssdd8.img.lz",
- // DR-DOS 3.41
- "drdos_3.41_dsdd.img.lz", "drdos_3.41_dsdd8.img.lz", "drdos_3.41_dshd.img.lz", "drdos_3.41_mf2dd.img.lz",
- "drdos_3.41_mf2hd.img.lz", "drdos_3.41_ssdd.img.lz", "drdos_3.41_ssdd8.img.lz",
- // DR-DOS 5.00
- "drdos_5.00_dsdd.img.lz", "drdos_5.00_dsdd8.img.lz", "drdos_5.00_dshd.img.lz", "drdos_5.00_mf2dd.img.lz",
- "drdos_5.00_mf2hd.img.lz", "drdos_5.00_ssdd.img.lz", "drdos_5.00_ssdd8.img.lz",
- // DR-DOS 6.00
- "drdos_6.00_dsdd.img.lz", "drdos_6.00_dsdd8.img.lz", "drdos_6.00_dshd.img.lz", "drdos_6.00_mf2dd.img.lz",
- "drdos_6.00_mf2ed.img.lz", "drdos_6.00_mf2hd.img.lz", "drdos_6.00_ssdd.img.lz", "drdos_6.00_ssdd8.img.lz",
- // DR-DOS 7.02
- "drdos_7.02_dsdd.img.lz", "drdos_7.02_dsdd8.img.lz", "drdos_7.02_dshd.img.lz", "drdos_7.02_mf2dd.img.lz",
- "drdos_7.02_mf2ed.img.lz", "drdos_7.02_mf2hd.img.lz", "drdos_7.02_ssdd.img.lz", "drdos_7.02_ssdd8.img.lz",
- // DR-DOS 7.03
- "drdos_7.03_dsdd.img.lz", "drdos_7.03_dsdd8.img.lz", "drdos_7.03_dshd.img.lz", "drdos_7.03_mf2dd.img.lz",
- "drdos_7.03_mf2ed.img.lz", "drdos_7.03_mf2hd.img.lz",
- // DR-DOS 8.00
- "drdos_8.00_dsdd.img.lz", "drdos_8.00_dsdd8.img.lz", "drdos_8.00_dshd.img.lz", "drdos_8.00_mf2dd.img.lz",
- "drdos_8.00_mf2ed.img.lz", "drdos_8.00_mf2hd.img.lz", "drdos_8.00_ssdd.img.lz", "drdos_8.00_ssdd8.img.lz",
- // MS-DOS 3.30A
- "msdos_3.30A_dsdd.img.lz","msdos_3.30A_dsdd8.img.lz","msdos_3.30A_dshd.img.lz","msdos_3.30A_mf2dd.img.lz",
- "msdos_3.30A_mf2ed.img.lz","msdos_3.30A_mf2hd.img.lz","msdos_3.30A_ssdd.img.lz","msdos_3.30A_ssdd8.img.lz",
- // MS-DOS 3.31
- "msdos_3.31_dsdd.img.lz","msdos_3.31_dsdd8.img.lz","msdos_3.31_dshd.img.lz","msdos_3.31_mf2dd.img.lz",
- "msdos_3.31_mf2ed.img.lz","msdos_3.31_mf2hd.img.lz","msdos_3.31_ssdd.img.lz","msdos_3.31_ssdd8.img.lz",
- // MS-DOS 4.01
- "msdos_4.01_dsdd.img.lz","msdos_4.01_dsdd8.img.lz","msdos_4.01_dshd.img.lz","msdos_4.01_mf2dd.img.lz",
- "msdos_4.01_mf2hd.img.lz","msdos_4.01_ssdd.img.lz","msdos_4.01_ssdd8.img.lz",
- // MS-DOS 5.00
- "msdos_5.00_dsdd.img.lz","msdos_5.00_dsdd8.img.lz","msdos_5.00_dshd.img.lz","msdos_5.00_mf2dd.img.lz",
- "msdos_5.00_mf2ed.img.lz","msdos_5.00_mf2hd.img.lz","msdos_5.00_ssdd.img.lz","msdos_5.00_ssdd8.img.lz",
- // MS-DOS 6.00
- "msdos_6.00_dsdd.img.lz","msdos_6.00_dsdd8.img.lz","msdos_6.00_dshd.img.lz","msdos_6.00_mf2dd.img.lz",
- "msdos_6.00_mf2ed.img.lz","msdos_6.00_mf2hd.img.lz","msdos_6.00_ssdd.img.lz","msdos_6.00_ssdd8.img.lz",
- // MS-DOS 6.20
- "msdos_6.20_dsdd.img.lz","msdos_6.20_dsdd8.img.lz","msdos_6.20_dshd.img.lz","msdos_6.20_mf2dd.img.lz",
- "msdos_6.20_mf2ed.img.lz","msdos_6.20_mf2hd.img.lz","msdos_6.20_ssdd.img.lz","msdos_6.20_ssdd8.img.lz",
- // MS-DOS 6.20 RC1
- "msdos_6.20rc1_dsdd.img.lz","msdos_6.20rc1_dsdd8.img.lz","msdos_6.20rc1_dshd.img.lz","msdos_6.20rc1_mf2dd.img.lz",
- "msdos_6.20rc1_mf2ed.img.lz","msdos_6.20rc1_mf2hd.img.lz","msdos_6.20rc1_ssdd.img.lz","msdos_6.20rc1_ssdd8.img.lz",
- // MS-DOS 6.21
- "msdos_6.21_dsdd.img.lz","msdos_6.21_dsdd8.img.lz","msdos_6.21_dshd.img.lz","msdos_6.21_mf2dd.img.lz",
- "msdos_6.21_mf2ed.img.lz","msdos_6.21_mf2hd.img.lz","msdos_6.21_ssdd.img.lz","msdos_6.21_ssdd8.img.lz",
- // MS-DOS 6.22
- "msdos_6.22_dsdd.img.lz","msdos_6.22_dsdd8.img.lz","msdos_6.22_dshd.img.lz","msdos_6.22_mf2dd.img.lz",
- "msdos_6.22_mf2ed.img.lz","msdos_6.22_mf2hd.img.lz","msdos_6.22_ssdd.img.lz","msdos_6.22_ssdd8.img.lz",
- // MS-DOS 7.10
- "msdos_7.10_dsdd.img.lz","msdos_7.10_dsdd8.img.lz","msdos_7.10_dshd.img.lz","msdos_7.10_mf2dd.img.lz",
- "msdos_7.10_mf2ed.img.lz","msdos_7.10_mf2hd.img.lz","msdos_7.10_ssdd.img.lz","msdos_7.10_ssdd8.img.lz",
- // MS-DOS 3.20 for Amstrad
- "msdos_amstrad_3.20_dsdd.img.lz","msdos_amstrad_3.20_dsdd8.img.lz","msdos_amstrad_3.20_dshd.img.lz",
- "msdos_amstrad_3.20_mf2dd.img.lz","msdos_amstrad_3.20_ssdd.img.lz","msdos_amstrad_3.20_ssdd8.img.lz",
- // MS-DOS 2.11 for AT&T
- "msdos_att_2.11_dsdd.img.lz",
- // MS-DOS 3.30 for DeLL
- "msdos_dell_3.30_dsdd.img.lz","msdos_dell_3.30_dsdd8.img.lz","msdos_dell_3.30_dshd.img.lz",
- "msdos_dell_3.30_mf2dd.img.lz","msdos_dell_3.30_mf2hd.img.lz","msdos_dell_3.30_ssdd.img.lz",
- "msdos_dell_3.30_ssdd8.img.lz",
- // MS-DOS 3.10 for Epson
- "msdos_epson_3.10_dsdd.img.lz","msdos_epson_3.10_dsdd8.img.lz","msdos_epson_3.10_dshd.img.lz",
- // MS-DOS 3.20 for Epson
- "msdos_epson_3.20_dsdd.img.lz","msdos_epson_3.20_dsdd8.img.lz","msdos_epson_3.20_dshd.img.lz",
- "msdos_epson_3.20_mf2dd.img.lz","msdos_epson_3.20_ssdd.img.lz","msdos_epson_3.20_ssdd8.img.lz",
- // MS-DOS 3.20 for HP
- "msdos_hp_3.20_dsdd.img.lz","msdos_hp_3.20_dsdd8.img.lz","msdos_hp_3.20_dshd.img.lz",
- "msdos_hp_3.20_mf2dd.img.lz","msdos_hp_3.20_mf2hd.img.lz","msdos_hp_3.20_ssdd.img.lz",
- "msdos_hp_3.20_ssdd8.img.lz",
- // MS-DOS 3.21 for Hyosung
- "msdos_hyonsung_3.21_dsdd.img.lz","msdos_hyonsung_3.21_dsdd8.img.lz","msdos_hyonsung_3.21_dshd.img.lz",
- "msdos_hyonsung_3.21_mf2dd.img.lz","msdos_hyonsung_3.21_mf2hd.img.lz","msdos_hyonsung_3.21_ssdd.img.lz",
- "msdos_hyonsung_3.21_ssdd8.img.lz",
- // MS-DOS 3.21 for Kaypro
- "msdos_kaypro_3.21_dsdd.img.lz","msdos_kaypro_3.21_dsdd8.img.lz","msdos_kaypro_3.21_dshd.img.lz",
- "msdos_kaypro_3.21_mf2dd.img.lz","msdos_kaypro_3.21_mf2hd.img.lz","msdos_kaypro_3.21_ssdd.img.lz",
- //"msdos_kaypro_3.21_ssdd8.img.lz",
- // MS-DOS 3.10 for Olivetti
- "msdos_olivetti_3.10_dsdd.img.lz","msdos_olivetti_3.10_dshd.img.lz","msdos_olivetti_3.10_ssdd.img.lz",
- // MS-DOS 3.30 for Toshiba
- "msdos_toshiba_3.30_dsdd.img.lz","msdos_toshiba_3.30_dsdd8.img.lz","msdos_toshiba_3.30_dshd.img.lz",
- "msdos_toshiba_3.30_mf2dd.img.lz","msdos_toshiba_3.30_mf2hd.img.lz","msdos_toshiba_3.30_ssdd.img.lz",
- "msdos_toshiba_3.30_ssdd8.img.lz",
- // MS-DOS 4.01 for Toshiba
- "msdos_toshiba_4.01_dsdd.img.lz","msdos_toshiba_4.01_dsdd8.img.lz","msdos_toshiba_4.01_dshd.img.lz",
- "msdos_toshiba_4.01_mf2dd.img.lz","msdos_toshiba_4.01_mf2hd.img.lz","msdos_toshiba_4.01_ssdd.img.lz",
- "msdos_toshiba_4.01_ssdd8.img.lz",
- // Novell DOS 7.00
- "novelldos_7.00_dsdd.img.lz","novelldos_7.00_dsdd8.img.lz","novelldos_7.00_dshd.img.lz","novelldos_7.00_mf2dd.img.lz",
- "novelldos_7.00_mf2ed.img.lz","novelldos_7.00_mf2hd.img.lz","novelldos_7.00_ssdd.img.lz","novelldos_7.00_ssdd8.img.lz",
- // OpenDOS 7.01
- "opendos_7.01_dsdd.img.lz","opendos_7.01_dsdd8.img.lz","opendos_7.01_dshd.img.lz","opendos_7.01_mf2dd.img.lz",
- "opendos_7.01_mf2ed.img.lz","opendos_7.01_mf2hd.img.lz","opendos_7.01_ssdd.img.lz","opendos_7.01_ssdd8.img.lz",
- // PC-DOS 2.00
- "pcdos_2.00_dsdd.img.lz",
- // PC-DOS 2.10
- "pcdos_2.10_dsdd.img.lz",
- // PC-DOS 2000
- "pcdos_2000_dsdd.img.lz","pcdos_2000_dsdd8.img.lz","pcdos_2000_dshd.img.lz","pcdos_2000_mf2dd.img.lz",
- "pcdos_2000_mf2ed.img.lz","pcdos_2000_mf2hd.img.lz","pcdos_2000_ssdd.img.lz","pcdos_2000_ssdd8.img.lz",
- // PC-DOS 3.00
- "pcdos_3.00_dshd.img.lz",
- // PC-DOS 3.10
- "pcdos_3.10_dshd.img.lz",
- // PC-DOS 3.30
- "pcdos_3.30_dshd.img.lz","pcdos_3.30_mf2hd.img.lz",
- // PC-DOS 4.00
- "pcdos_4.00_dshd.img.lz","pcdos_4.00_mf2hd.img.lz",
- // PC-DOS 5.00
- "pcdos_5.00_dsdd.img.lz","pcdos_5.00_dsdd8.img.lz","pcdos_5.00_dshd.img.lz","pcdos_5.00_mf2dd.img.lz",
- "pcdos_5.00_mf2ed.img.lz","pcdos_5.00_mf2hd.img.lz","pcdos_5.00_ssdd.img.lz","pcdos_5.00_ssdd8.img.lz",
- // PC-DOS 5.02
- "pcdos_5.02_dsdd.img.lz","pcdos_5.02_dsdd8.img.lz","pcdos_5.02_dshd.img.lz","pcdos_5.02_mf2dd.img.lz",
- "pcdos_5.02_mf2ed.img.lz","pcdos_5.02_mf2hd.img.lz","pcdos_5.02_ssdd.img.lz","pcdos_5.02_ssdd8.img.lz",
- // PC-DOS 6.10
- "pcdos_6.10_dsdd.img.lz","pcdos_6.10_dsdd8.img.lz","pcdos_6.10_dshd.img.lz","pcdos_6.10_mf2dd.img.lz",
- "pcdos_6.10_mf2ed.img.lz","pcdos_6.10_mf2hd.img.lz","pcdos_6.10_ssdd.img.lz","pcdos_6.10_ssdd8.img.lz",
- // PC-DOS 6.30
- "pcdos_6.30_dsdd.img.lz","pcdos_6.30_dsdd8.img.lz","pcdos_6.30_dshd.img.lz","pcdos_6.30_mf2dd.img.lz",
- "pcdos_6.30_mf2ed.img.lz","pcdos_6.30_mf2hd.img.lz","pcdos_6.30_ssdd.img.lz","pcdos_6.30_ssdd8.img.lz",
- // mkfs.vfat
- "mkfs.vfat_dshd.img.lz","mkfs.vfat_mf2dd.img.lz","mkfs.vfat_mf2ed.img.lz","mkfs.vfat_mf2hd.img.lz",
- // mkfs.vfat for Atari
- "mkfs.vfat_atari_dshd.img.lz","mkfs.vfat_atari_mf2dd.img.lz","mkfs.vfat_atari_mf2ed.img.lz","mkfs.vfat_atari_mf2hd.img.lz",
- // Microsoft OS/2 1.00 for Tandy
- "msos2_1.00_tandy_dsdd.img.lz","msos2_1.00_tandy_dshd.img.lz","msos2_1.00_tandy_mf2dd.img.lz","msos2_1.00_tandy_mf2hd.img.lz",
- // Microsoft OS/2 1.10 for AST
- "msos2_1.10_ast_dsdd.img.lz","msos2_1.10_ast_dshd.img.lz","msos2_1.10_ast_mf2dd.img.lz","msos2_1.10_ast_mf2hd.img.lz",
- // Microsoft OS/2 1.10 for Nokia
- "msos2_1.10_nokia_dsdd.img.lz","msos2_1.10_nokia_dshd.img.lz","msos2_1.10_nokia_mf2dd.img.lz","msos2_1.10_nokia_mf2hd.img.lz",
- // Microsoft OS/2 1.21
- "msos2_1.21_dsdd.img.lz","msos2_1.21_dshd.img.lz","msos2_1.21_mf2dd.img.lz","msos2_1.21_mf2hd.img.lz",
- // Microsoft OS/2 1.30.1
- "msos2_1.30.1_dsdd.img.lz","msos2_1.30.1_dshd.img.lz","msos2_1.30.1_mf2dd.img.lz","msos2_1.30.1_mf2ed.img.lz","msos2_1.30.1_mf2hd.img.lz",
- // OS/2 1.20
- "os2_1.20_dsdd.img.lz","os2_1.20_dshd.img.lz","os2_1.20_mf2dd.img.lz","os2_1.20_mf2hd.img.lz",
- // OS/2 1.30
- "os2_1.30_dsdd.img.lz","os2_1.30_dshd.img.lz","os2_1.30_mf2dd.img.lz","os2_1.30_mf2hd.img.lz",
- // OS/2 2.00
- "os2_6.307_dsdd.img.lz","os2_6.307_dshd.img.lz","os2_6.307_mf2dd.img.lz","os2_6.307_mf2ed.img.lz","os2_6.307_mf2hd.img.lz",
- // OS/2 2.10
- "os2_6.514_dsdd.img.lz","os2_6.514_dshd.img.lz","os2_6.514_mf2dd.img.lz","os2_6.514_mf2ed.img.lz","os2_6.514_mf2hd.img.lz",
- // OS/2 2.11
- "os2_6.617_dsdd.img.lz","os2_6.617_dshd.img.lz","os2_6.617_mf2dd.img.lz","os2_6.617_mf2ed.img.lz","os2_6.617_mf2hd.img.lz",
- // OS/2 Warp 3
- "os2_8.162_dshd.img.lz","os2_8.162_mf2dd.img.lz","os2_8.162_mf2ed.img.lz","os2_8.162_mf2hd.img.lz",
- // OS/2 Warp 4
- "os2_9.023_dshd.img.lz","os2_9.023_mf2dd.img.lz","os2_9.023_mf2ed.img.lz","os2_9.023_mf2hd.img.lz",
- // eComStation
- "ecs_dshd.img.lz","ecs_mf2dd.img.lz","ecs_mf2ed.img.lz","ecs_mf2hd.img.lz",
- // Windows 95
- "win95_dsdd8.img.lz","win95_dsdd.img.lz","win95_dshd.img.lz","win95_mf2dd.img.lz",
- "win95_mf2ed.img.lz","win95_mf2hd.img.lz","win95_ssdd8.img.lz","win95_ssdd.img.lz",
- // Windows 95 OSR 2
- "win95osr2_dsdd8.img.lz","win95osr2_dsdd.img.lz","win95osr2_dshd.img.lz","win95osr2_mf2dd.img.lz",
- "win95osr2_mf2ed.img.lz","win95osr2_mf2hd.img.lz","win95osr2_ssdd8.img.lz","win95osr2_ssdd.img.lz",
- /// Windows 95 OSR 2.1
- "win95osr2.1_dsdd8.img.lz","win95osr2.1_dsdd.img.lz","win95osr2.1_dshd.img.lz","win95osr2.1_mf2dd.img.lz",
- "win95osr2.1_mf2ed.img.lz","win95osr2.1_mf2hd.img.lz","win95osr2.1_ssdd8.img.lz","win95osr2.1_ssdd.img.lz",
- // Windows 95 OSR 2.5
- "win95osr2.5_dsdd8.img.lz","win95osr2.5_dsdd.img.lz","win95osr2.5_dshd.img.lz","win95osr2.5_mf2dd.img.lz",
- "win95osr2.5_mf2ed.img.lz","win95osr2.5_mf2hd.img.lz","win95osr2.5_ssdd8.img.lz","win95osr2.5_ssdd.img.lz",
- // Windows 98
- "win98_dsdd8.img.lz","win98_dsdd.img.lz","win98_dshd.img.lz","win98_mf2dd.img.lz",
- "win98_mf2ed.img.lz","win98_mf2hd.img.lz","win98_ssdd8.img.lz","win98_ssdd.img.lz",
- // Windows 98 Second Edition
- "win98se_dsdd8.img.lz","win98se_dsdd.img.lz","win98se_dshd.img.lz","win98se_mf2dd.img.lz",
- "win98se_mf2ed.img.lz","win98se_mf2hd.img.lz","win98se_ssdd8.img.lz","win98se_ssdd.img.lz",
- // Windows Me
- "winme_dsdd.img.lz","winme_dshd.img.lz","winme_mf2dd.img.lz","winme_mf2ed.img.lz","winme_mf2hd.img.lz",
- // Windows NT 3.10
- "winnt_3.10_dshd.img.lz","winnt_3.10_mf2dd.img.lz","winnt_3.10_mf2ed.img.lz","winnt_3.10_mf2hd.img.lz",
- // Windows NT 3.50
- "winnt_3.50_dshd.img.lz","winnt_3.50_mf2dd.img.lz","winnt_3.50_mf2ed.img.lz","winnt_3.50_mf2hd.img.lz",
- // Windows NT 3.51
- "winnt_3.51_dshd.img.lz","winnt_3.51_mf2dd.img.lz","winnt_3.51_mf2ed.img.lz","winnt_3.51_mf2hd.img.lz",
- // Windows NT 4.00
- "winnt_4_dsdd.img.lz","winnt_4_dshd.img.lz","winnt_4_mf2dd.img.lz","winnt_4_mf2ed.img.lz",
- "winnt_4_mf2hd.img.lz","winnt_4_ssdd.img.lz",
- // Windows 2000
- "win2000_dsdd.img.lz","win2000_dshd.img.lz","win2000_mf2dd.img.lz","win2000_mf2ed.img.lz","win2000_mf2hd.img.lz",
- // Windows Vista
- "winvista_dsdd.img.lz","winvista_dshd.img.lz","winvista_mf2dd.img.lz","winvista_mf2ed.img.lz","winvista_mf2hd.img.lz",
- // BeOS R4.5
- "beos_r4.5_mf2hd.img.lz",
- // Hatari
- "hatari_mf1dd.st.lz","hatari_mf1dd_10.st.lz","hatari_mf1dd_11.st.lz",
- "hatari_mf2dd.st.lz","hatari_mf2dd_10.st.lz","hatari_mf2dd_11.st.lz",
- "hatari_mf2ed.st.lz","hatari_mf2hd.st.lz",
- // Atari TOS 1.04
- "tos_1.04_mf1dd.st.lz","tos_1.04_mf2dd.st.lz",
- // NetBSD 1.6
- "netbsd_1.6_mf2dd.img.lz","netbsd_1.6_mf2hd.img.lz",
- // NeXTStep 3.3
- "nextstep_3.3_mf2dd.img.lz","nextstep_3.3_mf2hd.img.lz",
- // OpenStep for Mach 4.0
- "openstep_4.0_mf2dd.img.lz","openstep_4.0_mf2hd.img.lz",
- // OpenStep for Mach 4.2
- "openstep_4.2_mf2dd.img.lz","openstep_4.2_mf2hd.img.lz",
- // Solaris 2.4
- "solaris_2.4_mf2dd.img.lz","solaris_2.4_mf2hd.img.lz",
+ "macos_1.1_mf2dd.img.lz","macos_2.0_mf2dd.img.lz","macos_6.0.7_mf2dd.img.lz","nextstep_3.3_mf2hd.img.lz",
+ "openstep_4.0_mf2hd.img.lz","openstep_4.2_mf2hd.img.lz","rhapsody_dr1_mf2hd.img.lz",
};
readonly MediaType[] mediatypes = {
- // Concurrent DOS 6.00
- MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9, MediaType.DOS_35_HD,
- // DR-DOS 3.40
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
- // DR-DOS 3.41
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
- // DR-DOS 5.00
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
- // DR-DOS 6.00
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8, MediaType.DOS_525_HD, MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED, MediaType.DOS_35_HD, MediaType.DOS_525_SS_DD_9, MediaType.DOS_525_SS_DD_8,
- // DR-DOS 7.02
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // DR-DOS 7.03
- MediaType.DOS_525_DS_DD_9, MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // DR-DOS 8.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.30A
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.31
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 4.01
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 5.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.20
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.20 RC1
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.21
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 6.22
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 7.10
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.20 for Amstrad
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 2.11 for AT&T
- MediaType.DOS_525_DS_DD_9,
- // MS-DOS 3.30 for DeLL
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.10 for Epson
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,
- // MS-DOS 3.20 for Epson
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.20 for HP
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.21 for Hyosung
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.21 for Kaypro
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 3.10 for Olivetti
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_525_SS_DD_9,
- // MS-DOS 3.30 for Toshiba
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // MS-DOS 4.01 for Toshiba
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // Novell DOS 7.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // OpenDOS 7.01
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 2.00
- MediaType.DOS_525_DS_DD_9,
- // PC-DOS 2.10
- MediaType.DOS_525_DS_DD_9,
- // PC-DOS 2000
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 3.00
- MediaType.DOS_525_HD,
- // PC-DOS 3.10
- MediaType.DOS_525_HD,
- // PC-DOS 3.30
- MediaType.DOS_525_HD,MediaType.DOS_35_HD,
- // PC-DOS 4.00
- MediaType.DOS_525_HD,MediaType.DOS_35_HD,
- // PC-DOS 5.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 5.02
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 6.10
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // PC-DOS 6.30
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,MediaType.DOS_525_SS_DD_8,
- // mkfs.vfat
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // mkfs.vfat for Atari
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.00 for Tandy
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.10 for AST
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.10 for Nokia
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.21
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Microsoft OS/2 1.30.1
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 1.20
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // OS/2 1.30
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // OS/2 2.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 2.10
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 2.11
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 Warp 3
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // OS/2 Warp 4
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // eComStation
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows 95
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows 95 OSR 2
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- /// Windows 95 OSR 2.1
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows 95 OSR 2.5
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows 98
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows 98 Second Edition
- MediaType.DOS_525_DS_DD_8,MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_8,MediaType.DOS_525_SS_DD_9,
- // Windows Me
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows NT 3.10
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows NT 3.50
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows NT 3.51
- MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows NT 4.00
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,
- MediaType.DOS_35_HD,MediaType.DOS_525_SS_DD_9,
- // Windows 2000
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Windows Vista
- MediaType.DOS_525_DS_DD_9,MediaType.DOS_525_HD,MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // BeOS R4.5
- MediaType.DOS_35_HD,
- // Hatari
- // TODO: Incorrect media types
- MediaType.DOS_35_SS_DD_9,MediaType.GENERIC_HDD,MediaType.GENERIC_HDD,
- MediaType.DOS_35_DS_DD_9,MediaType.ATARI_35_DS_DD,MediaType.GENERIC_HDD,
- MediaType.DOS_35_ED,MediaType.DOS_35_HD,
- // Atari TOS 1.04
- MediaType.DOS_35_SS_DD_9,MediaType.DOS_35_DS_DD_9,
- // NetBSD 1.6
- MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // NeXTStep 3.3
- MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // OpenStep for Mach 4.0
- MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // OpenStep for Mach 4.2
- MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
- // Solaris 2.4
- MediaType.DOS_35_DS_DD_9,MediaType.DOS_35_HD,
+ MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.DOS_35_HD,
+ MediaType.DOS_35_HD, MediaType.DOS_35_HD, MediaType.DOS_35_HD,
};
readonly ulong[] sectors = {
- // Concurrent DOS 6.00
- 2400, 1440, 2880,
- // DR-DOS 3.40
- 720, 640, 2400, 1440, 2880, 360, 320,
- // DR-DOS 3.41
- 720,640,2400,1440,2880,360,320,
- // DR-DOS 5.00
- 720,640,2400,1440,2880,360,320,
- // DR-DOS 6.00
- 720,640,2400,1440,5760,2880,360,320,
- // DR-DOS 7.02
- 720,640,2400,1440,5760,2880,360,320,
- // DR-DOS 7.03
- 720,640,2400,1440,5760,2880,
- // DR-DOS 8.00
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 3.30A
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 3.31
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 4.01
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 5.00
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.00
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.20
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.20 RC1
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.21
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 6.22
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 7.10
- 720,640,2400,1440,5760,2880,360,320,
- // MS-DOS 3.20 for Amstrad
- 720,640,2400,1440,360,320,
- // MS-DOS 2.11 for AT&T
- 720,
- // MS-DOS 3.30 for DeLL
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 3.10 for Epson
- 720,640,2400,
- // MS-DOS 3.20 for Epson
- 720,640,2400,1440,360,320,
- // MS-DOS 3.20 for HP
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 3.21 for Hyosung
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 3.21 for Kaypro
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 3.10 for Olivetti
- 720,2400,360,
- // MS-DOS 3.30 for Toshiba
- 720,640,2400,1440,2880,360,320,
- // MS-DOS 4.01 for Toshiba
- 720,640,2400,1440,2880,360,320,
- // Novell DOS 7.00
- 720,640,2400,1440,5760,2880,360,320,
- // OpenDOS 7.01
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 2.00
- 720,
- // PC-DOS 2.10
- 720,
- // PC-DOS 2000
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 3.00
- 2400,
- // PC-DOS 3.10
- 2400,
- // PC-DOS 3.30
- 2400,2880,
- // PC-DOS 4.00
- 2400,2880,
- // PC-DOS 5.00
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 5.02
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 6.10
- 720,640,2400,1440,5760,2880,360,320,
- // PC-DOS 6.30
- 720,640,2400,1440,5760,2880,360,320,
- // mkfs.vfat
- 2400,1440,5760,2880,
- // mkfs.vfat for Atari
- 2400,1440,5760,2880,
- // Microsoft OS/2 1.00 for Tandy
- 720,2400,1440,2880,
- // Microsoft OS/2 1.10 for AST
- 720,2400,1440,2880,
- // Microsoft OS/2 1.10 for Nokia
- 720,2400,1440,2880,
- // Microsoft OS/2 1.21
- 720,2400,1440,2880,
- // Microsoft OS/2 1.30.1
- 720,2400,1440,5760,2880,
- // OS/2 1.20
- 720,2400,1440,2880,
- // OS/2 1.30
- 720,2400,1440,2880,
- // OS/2 2.00
- 720,2400,1440,5760,2880,
- // OS/2 2.10
- 720,2400,1440,5760,2880,
- // OS/2 2.11
- 720,2400,1440,5760,2880,
- // OS/2 Warp 3
- 2400,1440,5760,2880,
- // OS/2 Warp 4
- 2400,1440,5760,2880,
- // eComStation
- 2400,1440,5760,2880,
- // Windows 95
- 640,720,2400,1440,5760,2880,320,360,
- // Windows 95 OSR 2
- 640,720,2400,1440,5760,2880,320,360,
- /// Windows 95 OSR 2.1
- 640,720,2400,1440,5760,2880,320,360,
- // Windows 95 OSR 2.5
- 640,720,2400,1440,5760,2880,320,360,
- // Windows 98
- 640,720,2400,1440,5760,2880,320,360,
- // Windows 98 Second Edition
- 640,720,2400,1440,5760,2880,320,360,
- // Windows Me
- 720,2400,1440,5760,2880,
- // Windows NT 3.10
- 2400,1440,5760,2880,
- // Windows NT 3.50
- 2400,1440,5760,2880,
- // Windows NT 3.51
- 2400,1440,5760,2880,
- // Windows NT 4.00
- 720,2400,1440,5760,2880,360,
- // Windows 2000
- 720,2400,1440,5760,2880,
- // Windows Vista
- 720,2400,1440,5760,2880,
- // BeOS R4.5
- 2880,
- // Hatari
- 720,800,880,1440,1600,1760,5760,2880,
- // Atari TOS 1.04
- 720,1440,
- // NetBSD 1.6
- 1440,2880,
- // NeXTStep 3.3
- 1440,2880,
- // OpenStep for Mach 4.0
- 1440,2880,
- // OpenStep for Mach 4.2
- 1440,2880,
- // Solaris 2.4
- 1440,2880,
+ 1600, 1600, 1600, 2880,
+ 2880, 2880, 2880,
};
readonly uint[] sectorsize = {
- // Concurrent DOS 6.00
+ 512, 512, 512, 512,
512, 512, 512,
- // DR-DOS 3.40
- 512, 512, 512, 512, 512, 512, 512,
- // DR-DOS 3.41
- 512,512,512,512,512,512,512,
- // DR-DOS 5.00
- 512,512,512,512,512,512,512,
- // DR-DOS 6.00
- 512,512,512,512,512,512,512,512,
- // DR-DOS 7.02
- 512,512,512,512,512,512,512,512,
- // DR-DOS 7.03
- 512,512,512,512,512,512,
- // DR-DOS 8.00
- 512,512,512,512,512,512,512,512,
- // MS-DOS 3.30A
- 512,512,512,512,512,512,512,512,
- // MS-DOS 3.31
- 512,512,512,512,512,512,512,512,
- // MS-DOS 4.01
- 512,512,512,512,512,512,512,
- // MS-DOS 5.00
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.00
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.20
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.20 RC1
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.21
- 512,512,512,512,512,512,512,512,
- // MS-DOS 6.22
- 512,512,512,512,512,512,512,512,
- // MS-DOS 7.10
- 512,512,512,512,512,512,512,512,
- // MS-DOS 3.20 for Amstrad
- 512,512,512,512,512,512,
- // MS-DOS 2.11 for AT&T
- 512,
- // MS-DOS 3.30 for DeLL
- 512,512,512,512,512,512,512,
- // MS-DOS 3.10 for Epson
- 512,512,512,
- // MS-DOS 3.20 for Epson
- 512,512,512,512,512,512,
- // MS-DOS 3.20 for HP
- 512,512,512,512,512,512,512,
- // MS-DOS 3.21 for Hyosung
- 512,512,512,512,512,512,512,
- // MS-DOS 3.21 for Kaypro
- 512,512,512,512,512,512,512,
- // MS-DOS 3.10 for Olivetti
- 512,512,512,
- // MS-DOS 3.30 for Toshiba
- 512,512,512,512,512,512,512,
- // MS-DOS 4.01 for Toshiba
- 512,512,512,512,512,512,512,
- // Novell DOS 7.00
- 512,512,512,512,512,512,512,512,
- // OpenDOS 7.01
- 512,512,512,512,512,512,512,512,
- // PC-DOS 2.00
- 512,
- // PC-DOS 2.10
- 512,
- // PC-DOS 2000
- 512,512,512,512,512,512,512,512,
- // PC-DOS 3.00
- 512,
- // PC-DOS 3.10
- 512,
- // PC-DOS 3.30
- 512,512,
- // PC-DOS 4.00
- 512,512,
- // PC-DOS 5.00
- 512,512,512,512,512,512,512,512,
- // PC-DOS 5.02
- 512,512,512,512,512,512,512,512,
- // PC-DOS 6.10
- 512,512,512,512,512,512,512,512,
- // PC-DOS 6.30
- 512,512,512,512,512,512,512,512,
- // mkfs.vfat
- 512,512,512,512,
- // mkfs.vfat for Atari
- 512,512,512,512,
- // Microsoft OS/2 1.00 for Tandy
- 512,512,512,512,
- // Microsoft OS/2 1.10 for AST
- 512,512,512,512,
- // Microsoft OS/2 1.10 for Nokia
- 512,512,512,512,
- // Microsoft OS/2 1.21
- 512,512,512,512,
- // Microsoft OS/2 1.30.1
- 512,512,512,512,512,
- // OS/2 1.20
- 512,512,512,512,
- // OS/2 1.30
- 512,512,512,512,
- // OS/2 2.00
- 512,512,512,512,512,
- // OS/2 2.10
- 512,512,512,512,512,
- // OS/2 2.11
- 512,512,512,512,512,
- // OS/2 Warp 3
- 512,512,512,512,
- // OS/2 Warp 4
- 512,512,512,512,
- // eComStation
- 512,512,512,512,
- // Windows 95
- 512,512,512,512,512,512,512,512,
- // Windows 95 OSR 2
- 512,512,512,512,512,512,512,512,
- /// Windows 95 OSR 2.1
- 512,512,512,512,512,512,512,512,
- // Windows 95 OSR 2.5
- 512,512,512,512,512,512,512,512,
- // Windows 98
- 512,512,512,512,512,512,512,512,
- // Windows 98 Second Edition
- 512,512,512,512,512,512,512,512,
- // Windows Me
- 512,512,512,512,512,
- // Windows NT 3.10
- 512,512,512,512,
- // Windows NT 3.50
- 512,512,512,512,
- // Windows NT 3.51
- 512,512,512,512,
- // Windows NT 4.00
- 512,512,512,512,512,512,
- // Windows 2000
- 512,512,512,512,512,
- // Windows Vista
- 512,512,512,512,512,
- // BeOS R4.5
- 512,
- // Hatari
- 512,512,512,512,512,512,512,512,
- // Atari TOS 1.04
- 512,512,
- // NetBSD 1.6
- 512,512,
- // NeXTStep 3.3
- 512,512,
- // OpenStep for Mach 4.0
- 512,512,
- // OpenStep for Mach 4.2
- 512,512,
- // Solaris 2.4
- 512,512,
};
readonly long[] clusters = {
- // Concurrent DOS 6.00
- 2400, 720, 2880,
- // DR-DOS 3.40
- 360,320,2400,720,2880,360,320,
- // DR-DOS 3.41
- 360,320,2400,720,2880,360,320,
- // DR-DOS 5.00
- 360,320,2400,720,2880,360,320,
- // DR-DOS 6.00
- 360,320,2400,720,2880,2880,360,320,
- // DR-DOS 7.02
- 360,320,2400,720,2880,2880,360,320,
- // DR-DOS 7.03
- 360,320,2400,720,2880,2880,
- // DR-DOS 8.00
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 3.30A
- 360,320,2400,720,5760,2880,360,320,
- // MS-DOS 3.31
- 360,320,2400,720,5760,2880,360,320,
- // MS-DOS 4.01
- 360,320,2400,720,2880,360,320,
- // MS-DOS 5.00
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.00
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.20
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.20 RC1
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.21
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 6.22
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 7.10
- 360,320,2400,720,2880,2880,360,320,
- // MS-DOS 3.20 for Amstrad
- 360,320,2400,720,360,320,
- // MS-DOS 2.11 for AT&T
- 360,
- // MS-DOS 3.30 for DeLL
- 360,320,2400,720,2880,360,320,
- // MS-DOS 3.10 for Epson
- 360,320,2400,
- // MS-DOS 3.20 for Epson
- 360,320,2400,720,360,320,
- // MS-DOS 3.20 for HP
- 360,320,2400,720,2880,360,320,
- // MS-DOS 3.21 for Hyosung
- 360,320,2400,720,2880,360,320,
- // MS-DOS 3.21 for Kaypro
- 360,320,2400,720,2880,360,320,
- // MS-DOS 3.10 for Olivetti
- 360,2400,360,
- // MS-DOS 3.30 for Toshiba
- 360,320,2400,720,2880,360,320,
- // MS-DOS 4.01 for Toshiba
- 360,320,2400,720,2880,360,320,
- // Novell DOS 7.00
- 360,320,2400,720,2880,2880,360,320,
- // OpenDOS 7.01
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 2.00
- 360,
- // PC-DOS 2.10
- 360,
- // PC-DOS 2000
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 3.00
- 2400,
- // PC-DOS 3.10
- 2400,
- // PC-DOS 3.30
- 2400,2880,
- // PC-DOS 4.00
- 2400,2880,
- // PC-DOS 5.00
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 5.02
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 6.10
- 360,320,2400,720,2880,2880,360,320,
- // PC-DOS 6.30
- 360,320,2400,720,2880,2880,360,320,
- // mkfs.vfat
- 2400,720,2880,2880,
- // mkfs.vfat for Atari
- 1200,720,2880,1440,
- // Microsoft OS/2 1.00 for Tandy
- 360,2400,720,2880,
- // Microsoft OS/2 1.10 for AST
- 360,2400,720,2880,
- // Microsoft OS/2 1.10 for Nokia
- 360,2400,720,2880,
- // Microsoft OS/2 1.21
- 360,2400,720,2880,
- // Microsoft OS/2 1.30.1
- 360,2400,720,2880,2880,
- // OS/2 1.20
- 360,2400,720,2880,
- // OS/2 1.30
- 360,2400,720,2880,
- // OS/2 2.00
- 360,2400,720,2880,2880,
- // OS/2 2.10
- 360,2400,720,2880,2880,
- // OS/2 2.11
- 360,2400,720,2880,2880,
- // OS/2 Warp 3
- 2400,720,2880,2880,
- // OS/2 Warp 4
- 2400,720,2880,2880,
- // eComStation
- 2400,720,2880,2880,
- // Windows 95
- 320,360,2400,720,2880,2880,320,360,
- // Windows 95 OSR 2
- 320,360,2400,720,2880,2880,320,360,
- /// Windows 95 OSR 2.1
- 320,360,2400,720,2880,2880,320,360,
- // Windows 95 OSR 2.5
- 320,360,2400,720,2880,2880,320,360,
- // Windows 98
- 320,360,2400,720,2880,2880,320,360,
- // Windows 98 Second Edition
- 320,360,2400,720,2880,2880,320,360,
- // Windows Me
- 360,2400,720,2880,2880,
- // Windows NT 3.10
- 2400,720,2880,2880,
- // Windows NT 3.50
- 2400,720,2880,2880,
- // Windows NT 3.51
- 2400,720,2880,2880,
- // Windows NT 4.00
- 360,2400,720,2880,2880,360,
- // Windows 2000
- 360,2400,720,2880,2880,
- // Windows Vista
- 360,2400,720,2880,2880,
- // BeOS R4.5
- 2880,
- // Hatari
- 360,400,440,720,800,880,2880,1440,
- // Atari TOS 1.04
- 360,720,
- // NetBSD 1.6
- 720,2880,
- // NeXTStep 3.3
- 720,2880,
- // OpenStep for Mach 4.0
- 720,2880,
- // OpenStep for Mach 4.2
- 720,2880,
- // Solaris 2.4
- 720,2880,
+ 1594, 1594, 1594, 2874,
+ 2874, 2874, 2874,
};
readonly int[] clustersize = {
- // Concurrent DOS 6.00
- 512, 1024, 512,
- // DR-DOS 3.40
- 1024,1024,512,1024,512,512,512,
- // DR-DOS 3.41
- 1024,1024,512,1024,512,512,512,
- // DR-DOS 5.00
- 1024,1024,512,1024,512,512,512,
- // DR-DOS 6.00
- 1024,1024,512,1024,1024,512,512,512,
- // DR-DOS 7.02
- 1024,1024,512,1024,1024,512,512,512,
- // DR-DOS 7.03
- 1024,1024,512,1024,1024,512,
- // DR-DOS 8.00
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 3.30A
- 1024,1024,512,1024,512,512,512,512,
- // MS-DOS 3.31
- 1024,1024,512,1024,512,512,512,512,
- // MS-DOS 4.01
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 5.00
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.00
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.20
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.20 RC1
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.21
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 6.22
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 7.10
- 1024,1024,512,1024,1024,512,512,512,
- // MS-DOS 3.20 for Amstrad
- 1024,1024,512,1024,512,512,
- // MS-DOS 2.11 for AT&T
- 1024,
- // MS-DOS 3.30 for DeLL
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 3.10 for Epson
- 1024,1024,512,
- // MS-DOS 3.20 for Epson
- 1024,1024,512,1024,512,512,
- // MS-DOS 3.20 for HP
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 3.21 for Hyosung
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 3.21 for Kaypro
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 3.10 for Olivetti
- 1024,512,512,
- // MS-DOS 3.30 for Toshiba
- 1024,1024,512,1024,512,512,512,
- // MS-DOS 4.01 for Toshiba
- 1024,1024,512,1024,512,512,512,
- // Novell DOS 7.00
- 1024,1024,512,1024,1024,512,512,512,
- // OpenDOS 7.01
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 2.00
- 1024,
- // PC-DOS 2.10
- 1024,
- // PC-DOS 2000
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 3.00
- 512,
- // PC-DOS 3.10
- 512,
- // PC-DOS 3.30
- 512,512,
- // PC-DOS 4.00
- 512,512,
- // PC-DOS 5.00
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 5.02
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 6.10
- 1024,1024,512,1024,1024,512,512,512,
- // PC-DOS 6.30
- 1024,1024,512,1024,1024,512,512,512,
- // mkfs.vfat
- 512,1024,1024,512,
- // mkfs.vfat for Atari
- 1024,1024,1024,1024,
- // Microsoft OS/2 1.00 for Tandy
- 1024,512,1024,512,
- // Microsoft OS/2 1.10 for AST
- 1024,512,1024,512,
- // Microsoft OS/2 1.10 for Nokia
- 1024,512,1024,512,
- // Microsoft OS/2 1.21
- 1024,512,1024,512,
- // Microsoft OS/2 1.30.1
- 1024,512,1024,1024,512,
- // OS/2 1.20
- 1024,512,1024,512,
- // OS/2 1.30
- 1024,512,1024,512,
- // OS/2 2.00
- 1024,512,1024,1024,512,
- // OS/2 2.10
- 1024,512,1024,1024,512,
- // OS/2 2.11
- 1024,512,1024,1024,512,
- // OS/2 Warp 3
- 512,1024,1024,512,
- // OS/2 Warp 4
- 512,1024,1024,512,
- // eComStation
- 512,1024,1024,512,
- // Windows 95
- 1024,1024,512,1024,1024,512,512,512,
- // Windows 95 OSR 2
- 1024,1024,512,1024,1024,512,512,512,
- /// Windows 95 OSR 2.1
- 1024,1024,512,1024,1024,512,512,512,
- // Windows 95 OSR 2.5
- 1024,1024,512,1024,1024,512,512,512,
- // Windows 98
- 1024,1024,512,1024,1024,512,512,512,
- // Windows 98 Second Edition
- 1024,1024,512,1024,1024,512,512,512,
- // Windows Me
- 1024,512,1024,1024,512,
- // Windows NT 3.10
- 512,1024,1024,512,
- // Windows NT 3.50
- 512,1024,1024,512,
- // Windows NT 3.51
- 512,1024,1024,512,
- // Windows NT 4.00
- 1024,512,1024,512,512,512,
- // Windows 2000
- 1024,512,1024,1024,512,
- // Windows Vista
- 1024,512,1024,1024,512,
- // BeOS R4.5
- 512,
- // Hatari
- 1024,1024,1024,1024,1024,1024,1024,1024,
- // Atari TOS 1.04
- 1024,1024,
- // NetBSD 1.6
- 1024,512,
- // NeXTStep 3.3
- 1024,512,
- // OpenStep for Mach 4.0
- 1024,512,
- // OpenStep for Mach 4.2
- 1024,512,
- // Solaris 2.4
- 1024,512,
+ 512, 512, 512, 512,
+ 512, 512, 512,
};
readonly string[] volumename = {
- // Concurrent DOS 6.00
- null, null, null,
- // DR-DOS 3.40
- null, null, null, null, null, null, null,
- // DR-DOS 3.41
- null, null, null, null, null, null, null,
- // DR-DOS 5.00
- null, null, null, null, null, null, null,
- // DR-DOS 6.00
- null, null, null, null, null, null, null, null,
- // DR-DOS 7.02
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // DR-DOS 7.03
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // DR-DOS 8.00
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // MS-DOS 3.30A
- null, null, null, null, null, null, null,null,
- // MS-DOS 3.31
- null, null, null, null, null, null, null,null,
- // MS-DOS 4.01
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 5.00
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.00
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.20
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.20 RC1
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.21
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 6.22
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 7.10
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // MS-DOS 3.20 for Amstrad
- null,null,null,null,null,null,
- // MS-DOS 2.11 for AT&T
- null,
- // MS-DOS 3.30 for DeLL
- null,null,null,null,null,null,null,
- // MS-DOS 3.10 for Epson
- null,null,null,
- // MS-DOS 3.20 for Epson
- null,null,null,null,null,null,
- // MS-DOS 3.20 for HP
- null,null,null,null,null,null,null,
- // MS-DOS 3.21 for Hyosung
- null,null,null,null,null,null,null,
- // MS-DOS 3.21 for Kaypro
- null,null,null,null,null,null,null,
- // MS-DOS 3.10 for Olivetti
- null,null,null,
- // MS-DOS 3.30 for Toshiba
- null,null,null,null,null,null,null,
- // MS-DOS 4.01 for Toshiba
- "VOLUMELABEL","NO NAME ","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","NO NAME ",
- // Novell DOS 7.00
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // OpenDOS 7.01
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // PC-DOS 2.00
- null,
- // PC-DOS 2.10
- null,
- // PC-DOS 2000
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // PC-DOS 3.00
- null,
- // PC-DOS 3.10
- null,
- // PC-DOS 3.30
- null,null,
- // PC-DOS 4.00
- "VOLUMELABEL","VOLUMELABEL",
- // PC-DOS 5.00
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // PC-DOS 5.02
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // PC-DOS 6.10
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // PC-DOS 6.30
- "VOLUMELABEL",null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",null,
- // mkfs.vfat
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // mkfs.vfat for Atari
- null,null,null,null,
- // Microsoft OS/2 1.00 for Tandy
- null,null,null,null,
- // Microsoft OS/2 1.10 for AST
- null,null,null,null,
- // Microsoft OS/2 1.10 for Nokia
- null,null,null,null,
- // Microsoft OS/2 1.21
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Microsoft OS/2 1.30.1
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 1.20
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 1.30
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 2.00
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 2.10
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 2.11
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 Warp 3
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // OS/2 Warp 4
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // eComStation
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows 95
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows 95 OSR 2
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- /// Windows 95 OSR 2.1
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows 95 OSR 2.5
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows 98
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows 98 Second Edition
- null,"VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- "VOLUMELABEL","VOLUMELABEL",null,"VOLUMELABEL",
- // Windows Me
- "VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL","VOLUMELABEL",
- // Windows NT 3.10
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows NT 3.50
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows NT 3.51
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows NT 4.00
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- "NO NAME ","NO NAME ",
- // Windows 2000
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // Windows Vista
- "NO NAME ","NO NAME ","NO NAME ","NO NAME ","NO NAME ",
- // BeOS R4.5
- "NO NAME ",
- // Hatari
- null,null,null,
- null,null,null,
- null,null,
- // Atari TOS 1.04
- null,null,
- // NetBSD 1.6
- "VOLUMELABEL","VOLUMELABEL",
- // NeXTStep 3.3
- null,null,
- // OpenStep for Mach 4.0
- null,null,
- // OpenStep for Mach 4.2
- null,null,
- // Solaris 2.4
- null,null,
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label",
};
readonly string[] volumeserial = {
- // Concurrent DOS 6.00
+ null, null, null, null,
null, null, null,
- // DR-DOS 3.40
- null, null, null, null, null, null, null,
- // DR-DOS 3.41
- null, null, null, null, null, null, null,
- // DR-DOS 5.00
- null, null, null, null, null, null, null,
- // DR-DOS 6.00
- null, null, null, null, null, null, null, null,
- // DR-DOS 7.02
- "1BF63C69","1BF70E75","1BF7185F","1BF80C4F","1BF90F1D","1BF82777","1BF72430","1BF72F1E",
- // DR-DOS 7.03
- "0C1A2013","0CE22B5B","0CEA1D3E","0CEE102F","0CEE3760","0CEF2739",
- // DR-DOS 8.00
- "1BFD1977","1BFD2D3F","1BFD3531","1BFC3231","1BFA1D58","1BFC117D","1BFE0971","1BFE1423",
- // MS-DOS 3.30A
- null, null, null, null, null, null, null,null,
- // MS-DOS 3.31
- null, null, null, null, null, null, null,null,
- // MS-DOS 4.01
- "122C190A",null,"2480190A","2D471909","0F5A1908","2F3D190A",null,
- // MS-DOS 5.00
- "0B6018F8",null,"1E3518F8","285A18FB","231D18FE","415118FC","316118F8",null,
- // MS-DOS 6.00
- "067B18F6",null,"193418F6","1F3A18F5","165318F3","172418F4","234918F6",null,
- // MS-DOS 6.20
- "265418ED",null,"0B7018EE","127418F0","137F18F2","364C18F0","185C18EE",null,
- // MS-DOS 6.20 RC1
- "064B18EB",null,"192518EB","244C18EA","3C3118E7","344118E9","267E18EB",null,
- // MS-DOS 6.21
- "2A41181B",null,"0641181C","3B26181C","082518E2","237118E1","123F181C",null,
- // MS-DOS 6.22
- "317C1818",null,"0D3A1819","3C251817","387A1815","185E1817","18231819",null,
- // MS-DOS 7.10
- "1156180A",null,"2951180A","3057180B","2B4A1811","344B180C","352D180A",null,
- // MS-DOS 3.20 for Amstrad
- null,null,null,null,null,null,
- // MS-DOS 2.11 for AT&T
- null,
- // MS-DOS 3.30 for DeLL
- null,null,null,null,null,null,null,
- // MS-DOS 3.10 for Epson
- null,null,null,
- // MS-DOS 3.20 for Epson
- null,null,null,null,null,null,
- // MS-DOS 3.20 for HP
- null,null,null,null,null,null,null,
- // MS-DOS 3.21 for Hyosung
- null,null,null,null,null,null,null,
- // MS-DOS 3.21 for Kaypro
- null,null,null,null,null,null,null,
- // MS-DOS 3.10 for Olivetti
- null,null,null,
- // MS-DOS 3.30 for Toshiba
- null,null,null,null,null,null,null,
- // MS-DOS 4.01 for Toshiba
- "0B2519E7","163419E7","1E3119E7","133919E9","177419EA","317E19E7","3B7319E7",
- // Novell DOS 7.00
- "1BE7254C","1BE73024","1BE7397C","1BE63635","1BE51661","1BE61143","1BE80A5D","1BE8144C",
- // OpenDOS 7.01
- "1BE93E2B","1BEA234D","1BEA325D","1BEB294F","1BEC2C2E","1BEC0C5D","1BEA3E60","1BEB0E26",
- // PC-DOS 2.00
- null,
- // PC-DOS 2.10
- null,
- // PC-DOS 2000
- "2634100E",null,"3565100E","3B6B1012","3B2D1013","1D491013","4136100E",null,
- // PC-DOS 3.00
- null,
- // PC-DOS 3.10
- null,
- // PC-DOS 3.30
- null,null,
- // PC-DOS 4.00
- "3C240FE3","2E3E0FE1",
- // PC-DOS 5.00
- "33260FF9",null,"11550FFA","234F0FFB","2F600FFC","0D550FFC","1D630FFA",null,
- // PC-DOS 5.02
- "06231000",null,"1A3E1000","1F3B0FFF","3D750FFD","3F4F0FFE","26471000",null,
- // PC-DOS 6.10
- "25551004",null,"3E5F1004","142D1006","17541007","355A1006","0D5E1005",null,
- // PC-DOS 6.30
- "2B22100C",null,"3B47100C","0C55100C","1B80100A","0B59100B","0A3A100D",null,
- // mkfs.vfat
- "20C279B1","20FD9501","2132D70A","2118F1AA",
- // mkfs.vfat for Atari
- null,null,null,null,
- // Microsoft OS/2 1.00 for Tandy
- "9C170C15","9BFB0C15","9C13FC15","9BF99C15",
- // Microsoft OS/2 1.10 for AST
- "66A42C15","67696C15","66DEBC15","66DC4C15",
- // Microsoft OS/2 1.10 for Nokia
- "676B4C15","67768C15","9C12DC15","66A74C15",
- // Microsoft OS/2 1.21
- "9C074C15","66BCFC15","66C1AC15","66C7FC15",
- // Microsoft OS/2 1.30.1
- "66C47C15","66CBEC15","9C167C15","9C147C15","9C0FEC15",
- // OS/2 1.20
- "5BF5E015","5BE61015","5C26F015","5C376015",
- // OS/2 1.30
- "5C418015","5BE20015","5C7F1015","5B83C015",
- // OS/2 2.00
- "5C3BD015","5B807015","5BE69015","5C187015","5C390015",
- // OS/2 2.10
- "1BFCB414","E6C6C414","E6CCF414","E6AF6414","1C005414",
- // OS/2 2.11
- "E6AEB414","1C00D414","1C03B414","E6C90414","E6B6E414",
- // OS/2 Warp 3
- "E6AF7414","E6D63414","E6A65414","E6AE6414",
- // OS/2 Warp 4
- "E6CD9414","1BFAD414","E6DFF414","E6D4C414",
- // eComStation
- "E6CA5814","E6CBC814","E6B81814","1C013814",
- // Windows 95
- null,"3B360D0D","24240D0D","3C260D11",
- "30050D10","275A0D11",null,"3B100D0F",
- // Windows 95 OSR 2
- null,"1C5B0D19","11510D19","0F1F0D15",
- "40200D17","3D610D14",null,"280B0D19",
- /// Windows 95 OSR 2.1
- null,"1F3B0D1C","14470D1C","1C510DE4",
- "2E250DE2","10640DE4",null,"2B3E0D1C",
- // Windows 95 OSR 2.5
- null,"18190DFB","0A240DFB","1E320DE7",
- "33230DE8","125B0DE7",null,"21410DFB",
- // Windows 98
- null,"40090E0F","28140E0F","0E620E0A",
- "14390E0D","0E081246",null,"30600E10",
- // Windows 98 Second Edition
- null,"1B550EEC","1B100EEB","08410EE6",
- "0E0F0EE8","325D0EE4",null,"13380EEC",
- // Windows Me
- "2F200F02","103A0F01","2F1C0EFC","21570EFF","07040EFB",
- // Windows NT 3.10
- "60EA50BC","6C857D51","4009440C","30761EDC",
- // Windows NT 3.50
- "0C478404","7CBEB35B","7C1E8DCB","ECB276AF",
- // Windows NT 3.51
- "482D8681","8889C95E","54DE6C39","F47D2516",
- // Windows NT 4.00
- "D8CAAC1F","E0BB6D70","C08C3C60","9C44B411",
- "4C7DD099","4CD82982",
- // Windows 2000
- "4019989C","78F30AF8","E4217DDE","80B3B996","28043527",
- // Windows Vista
- "3C9F0BD2","3A8E465C","B2EFB822","3C30C632","16DAB07A",
- // BeOS R4.5
- "00000000",
- // Hatari
- null,null,null,
- null,null,null,
- null,null,
- // Atari TOS 1.04
- null,null,
- // NetBSD 1.6
- "EEB51A0C","CCFD1A06",
- // NeXTStep 3.3
- null,null,
- // OpenStep for Mach 4.0
- null,null,
- // OpenStep for Mach 4.2
- null,null,
- // Solaris 2.4
- null,null,
- };
-
- readonly string[] oemid = {
- // Concurrent DOS 6.00
- "DIGITAL ", "DIGITAL ", "DIGITAL ",
- // DR-DOS 3.40
- "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ",
- // DR-DOS 3.41
- "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ", "DIGITAL ",
- // DR-DOS 5.00
- "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3",
- // DR-DOS 6.00
- "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3", "IBM 3.3",
- // DR-DOS 7.02
- "DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7",
- // DR-DOS 7.03
- "DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7",
- // DR-DOS 8.00
- "DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7","DRDOS 7",
- // MS-DOS 3.30A
- "MSDOS3.3",null,"MSDOS3.3","MSDOS3.3","MSDOS3.3","MSDOS3.3","MSDOS3.3",null,
- // MS-DOS 3.31
- "IBM 3.3",null,"IBM 3.3","IBM 3.3","IBM 3.3","IBM 3.3","IBM 3.3",null,
- // MS-DOS 4.01
- "MSDOS4.0",null,"MSDOS4.0","MSDOS4.0","MSDOS4.0","MSDOS4.0",null,
- // MS-DOS 5.00
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.00
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.20
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.20 RC1
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.21
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 6.22
- "MSDOS5.0",null,"MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",null,
- // MS-DOS 7.10
- "MSWIN4.1",null,"MSWIN4.1","MSWIN4.1","MSWIN4.1","MSWIN4.1","MSWIN4.1",null,
- // MS-DOS 3.20 for Amstrad
- "MSDOS3.2",null,"MSDOS3.2","MSDOS3.2","MSDOS3.2",null,
- // MS-DOS 2.11 for AT&T
- "PSA 1.04",
- // MS-DOS 3.30 for DeLL
- "IBM 3.3",null,"IBM 3.3","IBM 3.3","IBM 3.3","IBM 3.3",null,
- // MS-DOS 3.10 for Epson
- "EPS 3.10","EPS 3.10","EPS 3.10",
- // MS-DOS 3.20 for Epson
- "IBM 3.2","IBM 3.2","IBM 3.2","IBM 3.2","IBM 3.2","IBM 3.2",
- // MS-DOS 3.20 for HP
- "MSDOS3.2",null,"MSDOS3.2","MSDOS3.2","MSDOS3.2","MSDOS3.2",null,
- // MS-DOS 3.21 for Hyosung
- "MSDOS3.2",null,"MSDOS3.2","MSDOS3.2","MSDOS3.2","MSDOS3.2",null,
- // MS-DOS 3.21 for Kaypro
- "MSDOS3.2",null,"MSDOS3.2","MSDOS3.2","MSDOS3.2","MSDOS3.2",null,
- // MS-DOS 3.10 for Olivetti
- "IBM 3.1","IBM 3.1","IBM 3.1",
- // MS-DOS 3.30 for Toshiba
- "IBM 3.3",null,"IBM 3.3","IBM 3.3","IBM 3.3","IBM 3.3",null,
- // MS-DOS 4.01 for Toshiba
- "T V4.00 ","T V4.00 ","T V4.00 ","T V4.00 ","T V4.00 ","T V4.00 ","T V4.00 ",
- // Novell DOS 7.00
- "NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0","NWDOS7.0",
- // OpenDOS 7.01
- "OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7","OPENDOS7",
- // PC-DOS 2.00
- "IBM 2.0",
- // PC-DOS 2.10
- "IBM 2.0",
- // PC-DOS 2000
- "IBM 7.0",null,"IBM 7.0","IBM 7.0","IBM 7.0","IBM 7.0","IBM 7.0",null,
- // PC-DOS 3.00
- "IBM 3.0",
- // PC-DOS 3.10
- "IBM 3.1",
- // PC-DOS 3.30
- "IBM 3.3","IBM 3.3",
- // PC-DOS 4.00
- "IBM 4.0","IBM 4.0",
- // PC-DOS 5.00
- "IBM 5.0",null,"IBM 5.0","IBM 5.0","IBM 5.0","IBM 5.0","IBM 5.0",null,
- // PC-DOS 5.02
- "IBM 5.0",null,"IBM 5.0","IBM 5.0","IBM 5.0","IBM 5.0","IBM 5.0",null,
- // PC-DOS 6.10
- "IBM 6.0",null,"IBM 6.0","IBM 6.0","IBM 6.0","IBM 6.0","IBM 6.0",null,
- // PC-DOS 6.30
- "IBM 6.0",null,"IBM 6.0","IBM 6.0","IBM 6.0","IBM 6.0","IBM 6.0",null,
- // mkfs.vfat
- "mkfs.fat","mkfs.fat","mkfs.fat","mkfs.fat",
- // mkfs.vfat for Atari
- null,null,null,null,
- // Microsoft OS/2 1.00 for Tandy
- "TAN 10.0","TAN 10.0","TAN 10.0","TAN 10.0",
- // Microsoft OS/2 1.10 for AST
- "IBM 10.1","IBM 10.1","IBM 10.1","IBM 10.1",
- // Microsoft OS/2 1.10 for Nokia
- "IBM 10.1","IBM 10.1","IBM 10.1","IBM 10.1",
- // Microsoft OS/2 1.21
- "IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2",
- // Microsoft OS/2 1.30.1
- "IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2",
- // OS/2 1.20
- "IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2",
- // OS/2 1.30
- "IBM 10.2","IBM 10.2","IBM 10.2","IBM 10.2",
- // OS/2 2.00
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // OS/2 2.10
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // OS/2 2.11
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // OS/2 Warp 3
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // OS/2 Warp 4
- "IBM 20.0","IBM 20.0","IBM 20.0","IBM 20.0",
- // eComStation
- "IBM 4.50","IBM 4.50","IBM 4.50","IBM 4.50",
- // Windows 95
- null,"MSWIN4.0","MSWIN4.0","MSWIN4.0",
- "MSWIN4.0","MSWIN4.0",null,"MSWIN4.0",
- // Windows 95 OSR 2
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- /// Windows 95 OSR 2.1
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- // Windows 95 OSR 2.5
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- // Windows 98
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- // Windows 98 Second Edition
- null,"MSWIN4.1","MSWIN4.1","MSWIN4.1",
- "MSWIN4.1","MSWIN4.1",null,"MSWIN4.1",
- // Windows Me
- "MSWIN4.1","MSWIN4.1","MSWIN4.1","MSWIN4.1","MSWIN4.1",
- // Windows NT 3.10
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // Windows NT 3.50
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // Windows NT 3.51
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // Windows NT 4.00
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- "MSDOS5.0","MSDOS5.0",
- // Windows 2000
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // Windows Vista
- "MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0","MSDOS5.0",
- // BeOS R4.5
- "BeOS ",
- // Hatari
- null,null,null,
- null,null,null,
- null,null,
- // Atari TOS 1.04
- null,null,
- // NetBSD 1.6
- "BSD 4.4","BSD 4.4",
- // NeXTStep 3.3
- "NEXT ","NEXT ",
- // OpenStep for Mach 4.0
- "NEXT ","NEXT ",
- // OpenStep for Mach 4.2
- "NEXT ","NEXT ",
- // Solaris 2.4
- "MSDOS3.3","MSDOS3.3",
};
[Test]
@@ -1599,7 +92,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat12", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfs", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new ZZZRawImage();
@@ -1607,15 +100,14 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(mediatypes[i], image.ImageInfo.mediaType, testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- Filesystem fs = new FAT();
+ Filesystem fs = new AppleHFS();
Assert.AreEqual(true, fs.Identify(image, 0, image.ImageInfo.sectors - 1), testfiles[i]);
fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("FAT12", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("HFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/HFSPlus_APM.cs b/DiscImageChef.Tests/Filesystems/HFSPlus_APM.cs
index c1f13d64..5bc8502f 100644
--- a/DiscImageChef.Tests/Filesystems/HFSPlus_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/HFSPlus_APM.cs
@@ -51,35 +51,75 @@ namespace DiscImageChef.Tests.Filesystems
public class HFSPlus_APM
{
readonly string[] testfiles = {
- "macosx.vdi.lz", "macosx_journal.vdi.lz",
+ "macosx_10.11.vdi.lz", "macosx_10.11_journal.vdi.lz","darwin_1.3.1.vdi.lz","darwin_1.3.1_wrapped.vdi.lz",
+ "darwin_1.4.1.vdi.lz","darwin_1.4.1_wrapped.vdi.lz","darwin_6.0.2.vdi.lz","darwin_6.0.2_wrapped.vdi.lz",
+ "darwin_8.0.1_journal.vdi.lz","darwin_8.0.1.vdi.lz","darwin_8.0.1_wrapped.vdi.lz","macos_8.1.vdi.lz",
+ "macos_9.0.4.vdi.lz","macos_9.1.vdi.lz","macos_9.2.1.vdi.lz","macos_9.2.2.vdi.lz",
+ "macosx_10.2.vdi.lz","macosx_10.3_journal.vdi.lz","macosx_10.3.vdi.lz","macosx_10.4_journal.vdi.lz",
+ "macosx_10.4.vdi.lz",
};
readonly ulong[] sectors = {
- 409600, 614400,
+ 409600, 614400, 819200, 614400,
+ 819200, 614400, 819200, 614400,
+ 1228800, 819200, 614400, 4194304,
+ 4194304, 4194304,4194304,4194304,
+ 4194304, 2097152, 4194304, 2097152,
+ 4194304
};
readonly uint[] sectorsize = {
- 512, 512
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512,
};
readonly long[] clusters = {
- 51190, 76790,
+ 51190, 76790, 51190, 76790,
+ 51190, 76790, 51190, 76790,
+ 51190, 76790, 51190, 76790,
+ 51190, 76790, 51190, 76790,
+ 51190, 76790, 51190, 76790,
+ 51190,
};
readonly int[] clustersize = {
- 4096, 4096,
+ 4096, 4096, 4096, 4096,
+ 4096, 4096, 4096, 4096,
+ 4096, 4096, 4096, 4096,
+ 4096, 4096, 4096, 4096,
+ 4096, 4096, 4096, 4096,
+ 4096,
};
readonly string[] volumename = {
- "Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
- "UNKNOWN","UNKNOWN",
+ "UNKNOWN","UNKNOWN","UNKNOWN","UNKNOWN",
+ "UNKNOWN","UNKNOWN","UNKNOWN","UNKNOWN",
+ "UNKNOWN","UNKNOWN","UNKNOWN","UNKNOWN",
+ "UNKNOWN","UNKNOWN","UNKNOWN","UNKNOWN",
+ "UNKNOWN","UNKNOWN","UNKNOWN","UNKNOWN",
+ "UNKNOWN",
};
readonly string[] oemid = {
- "10.0","HFSJ"
+ "10.0","HFSJ","10.0","HFSJ",
+ "10.0","HFSJ","10.0","HFSJ",
+ "10.0","HFSJ","10.0","HFSJ",
+ "10.0","HFSJ","10.0","HFSJ",
+ "10.0","HFSJ","10.0","HFSJ",
+ "10.0",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/HFSPlus_GPT.cs b/DiscImageChef.Tests/Filesystems/HFSPlus_GPT.cs
index ee83fbfb..ea4f06cb 100644
--- a/DiscImageChef.Tests/Filesystems/HFSPlus_GPT.cs
+++ b/DiscImageChef.Tests/Filesystems/HFSPlus_GPT.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class HFSPlus_GPT
{
readonly string[] testfiles = {
- "macosx.vdi.lz", "macosx_journal.vdi.lz",
+ "macosx_10.11.vdi.lz", "macosx_10.11_journal.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/HFSPlus_MBR.cs b/DiscImageChef.Tests/Filesystems/HFSPlus_MBR.cs
index d0459920..c512a3bd 100644
--- a/DiscImageChef.Tests/Filesystems/HFSPlus_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/HFSPlus_MBR.cs
@@ -51,35 +51,59 @@ namespace DiscImageChef.Tests.Filesystems
public class HFSPlus_MBR
{
readonly string[] testfiles = {
- "macosx.vdi.lz", "macosx_journal.vdi.lz", "linux.vdi.lz", "linux_journal.vdi.lz",
+ "macosx_10.11.vdi.lz", "macosx_10.11_journal.vdi.lz", "linux.vdi.lz", "linux_journal.vdi.lz",
+ "darwin_1.3.1.vdi.lz","darwin_1.3.1_wrapped.vdi.lz","darwin_1.4.1.vdi.lz","darwin_1.4.1_wrapped.vdi.lz",
+ "darwin_6.0.2.vdi.lz","darwin_6.0.2_wrapped.vdi.lz","darwin_8.0.1_journal.vdi.lz","darwin_8.0.1.vdi.lz",
+ "darwin_8.0.1_wrapped.vdi.lz",
};
readonly ulong[] sectors = {
- 303104, 352256, 262144, 262144,
+ 303104, 352256, 262144, 262144,
+ 303104, 352256, 262144, 262144,
+ 303104, 352256, 262144, 262144,
+ 303104,
};
readonly uint[] sectorsize = {
512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512,
};
readonly long[] clusters = {
37878, 44021, 32512, 32512,
+ 37878, 44021, 32512, 32512,
+ 37878, 44021, 32512, 32512,
+ 37878,
};
readonly int[] clustersize = {
4096, 4096, 4096, 4096,
+ 4096, 4096, 4096, 4096,
+ 4096, 4096, 4096, 4096,
+ 4096,
};
readonly string[] volumename = {
"Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
"UNKNOWN","UNKNOWN","0000000000000000","0000000000000000",
+ "UNKNOWN","UNKNOWN","0000000000000000","0000000000000000",
+ "UNKNOWN","UNKNOWN","0000000000000000","0000000000000000",
+ "UNKNOWN",
};
readonly string[] oemid = {
"10.0","HFSJ","10.0","10.0",
+ "10.0","HFSJ","10.0","10.0",
+ "10.0","HFSJ","10.0","10.0",
+ "10.0",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/HFSX_APM.cs b/DiscImageChef.Tests/Filesystems/HFSX_APM.cs
index ff0ff726..ec7ad700 100644
--- a/DiscImageChef.Tests/Filesystems/HFSX_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/HFSX_APM.cs
@@ -51,35 +51,43 @@ namespace DiscImageChef.Tests.Filesystems
public class HFSX_APM
{
readonly string[] testfiles = {
- "macosx.vdi.lz", "macosx_journal.vdi.lz",
+ "macosx_10.11.vdi.lz", "macosx_10.11_journal.vdi.lz","darwin_8.0.1_journal.vdi.lz","darwin_8.0.1.vdi.lz",
+ "macosx_10.4_journal.vdi.lz","macosx_10.4.vdi.lz",
};
readonly ulong[] sectors = {
+ 819200, 1228800, 819200, 1228800,
819200, 1228800,
};
readonly uint[] sectorsize = {
- 512, 512
+ 512, 512, 512, 512,
+ 512, 512,
};
readonly long[] clusters = {
+ 102390, 153590,102390, 153590,
102390, 153590,
};
readonly int[] clustersize = {
+ 4096, 4096,4096, 4096,
4096, 4096,
};
readonly string[] volumename = {
+ "Volume label","Volume label","Volume label","Volume label",
"Volume label","Volume label",
};
readonly string[] volumeserial = {
+ "UNKNOWN","UNKNOWN","UNKNOWN","UNKNOWN",
"UNKNOWN","UNKNOWN",
};
readonly string[] oemid = {
- "10.0","HFSJ"
+ "10.0","HFSJ","10.0","HFSJ",
+ "10.0","HFSJ",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/HFSX_GPT.cs b/DiscImageChef.Tests/Filesystems/HFSX_GPT.cs
index afeaac5c..a3b8dd56 100644
--- a/DiscImageChef.Tests/Filesystems/HFSX_GPT.cs
+++ b/DiscImageChef.Tests/Filesystems/HFSX_GPT.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class HFSX_GPT
{
readonly string[] testfiles = {
- "macosx.vdi.lz", "macosx_journal.vdi.lz",
+ "macosx_10.11.vdi.lz", "macosx_10.11_journal.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/HFSX_MBR.cs b/DiscImageChef.Tests/Filesystems/HFSX_MBR.cs
index 4e4fbda6..c486c107 100644
--- a/DiscImageChef.Tests/Filesystems/HFSX_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/HFSX_MBR.cs
@@ -51,35 +51,43 @@ namespace DiscImageChef.Tests.Filesystems
public class HFSX_MBR
{
readonly string[] testfiles = {
- "macosx.vdi.lz", "macosx_journal.vdi.lz", "linux.vdi.lz", "linux_journal.vdi.lz",
+ "macosx_10.11.vdi.lz", "macosx_10.11_journal.vdi.lz", "linux.vdi.lz", "linux_journal.vdi.lz",
+ "darwin_8.0.1_journal.vdi.lz","darwin_8.0.1.vdi.lz",
};
readonly ulong[] sectors = {
393216, 409600, 262144, 262144,
+ 262144, 262144,
};
readonly uint[] sectorsize = {
512, 512, 512, 512,
+ 512, 512,
};
readonly long[] clusters = {
102390, 153590, 32512, 32512,
+ 32512, 32512,
};
readonly int[] clustersize = {
- 4096, 4096, 4096, 4096
+ 4096, 4096, 4096, 4096,
+ 4096, 4096,
};
readonly string[] volumename = {
"Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label",
};
readonly string[] volumeserial = {
- "UNKNOWN","UNKNOWN","0000000000000000","0000000000000000"
+ "UNKNOWN","UNKNOWN","0000000000000000","0000000000000000",
+ "UNKNOWN","UNKNOWN",
};
readonly string[] oemid = {
- "10.0","HFSJ","10.0","10.0"
+ "10.0","HFSJ","10.0","10.0",
+ "10.0","10.0",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/HFS_APM.cs b/DiscImageChef.Tests/Filesystems/HFS_APM.cs
index e7659623..816e7b0f 100644
--- a/DiscImageChef.Tests/Filesystems/HFS_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/HFS_APM.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : HFS_MBR.cs
+// Filename : HFS_APM.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,34 +48,69 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class HFS_MBR
+ public class HFS_APM
{
readonly string[] testfiles = {
- "linux.vdi.lz",
+ "amigaos_3.9.vdi.lz","darwin_1.3.1.vdi.lz","darwin_1.4.1.vdi.lz","darwin_6.0.2.vdi.lz",
+ "darwin_8.0.1.vdi.lz","macos_1.1.vdi.lz","macos_2.0.vdi.lz","macos_6.0.7.vdi.lz",
+ "macos_7.5.3.vdi.lz","macos_7.5.vdi.lz","macos_7.6.vdi.lz","macos_8.0.vdi.lz",
+ "macos_8.1.vdi.lz","macos_9.0.4.vdi.lz","macos_9.1.vdi.lz","macos_9.2.1.vdi.lz",
+ "macos_9.2.2.vdi.lz","macosx_10.2.vdi.lz","macosx_10.3.vdi.lz","macosx_10.4.vdi.lz",
+ "rhapsody_dr1.vdi.lz",
};
readonly ulong[] sectors = {
- 262144,
+ 1024128,409600,409600,409600,
+ 409600,41820,41820,81648,
+ 1024000,1024000,1024000,1024000,
+ 1024000,1024000,1024000,1024000,
+ 1024000,1024000,1024000,1024000,
+ 409600,
};
readonly uint[] sectorsize = {
+ 512,512,512,512,
+ 512,512,512,512,
+ 512,512,512,512,
+ 512,512,512,512,
+ 512,512,512,512,
512,
};
readonly long[] clusters = {
- 65018,
+ 64003,51189,51189,58502,
+ 58502,39991,39991,39991,
+ 63954,63990,63954,63954,
+ 63954,63922,63922,63922,
+ 63922,63884,63883,63883,
+ 58506,
};
readonly int[] clustersize = {
- 2048,
+ 8192,4096,4096,3584,
+ 3584,1024,1024,1024,
+ 8192,8192,8192,8192,
+ 8192,8192,8192,8192,
+ 8192,8192,8192,8192,
+ 3584,
};
readonly string[] volumename = {
- "Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
+ "Volume label"
};
readonly string[] volumeserial = {
- "0000000000000000",
+ null,null,null,null,
+ "AAFE1382AF5AA898",null,null,null,
+ null,null,null,null,
+ null,null,null,null,
+ null,"5A7C38B0CAF279C4","FB49083EBD150509","632C0B1DB46FD188",
+ null,
};
[Test]
@@ -83,20 +118,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfsplus_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfs_apm", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new MBR();
+ PartPlugin parts = new AppleMap();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.AppleHFS();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0xAF")
+ if(partitions[j].PartitionType == "Apple_HFS")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/HFS_MBR.cs b/DiscImageChef.Tests/Filesystems/HFS_MBR.cs
index e7659623..85892a8f 100644
--- a/DiscImageChef.Tests/Filesystems/HFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/HFS_MBR.cs
@@ -52,30 +52,37 @@ namespace DiscImageChef.Tests.Filesystems
{
readonly string[] testfiles = {
"linux.vdi.lz",
+ "darwin_1.3.1.vdi.lz","darwin_1.4.1.vdi.lz","darwin_6.0.2.vdi.lz","darwin_8.0.1.vdi.lz",
};
readonly ulong[] sectors = {
- 262144,
+ 262144,
+ 409600,409600,409600,409600,
};
readonly uint[] sectorsize = {
512,
+ 512,512,512,512,
};
readonly long[] clusters = {
65018,
+ 51145,51145,58452,58502,
};
readonly int[] clustersize = {
2048,
+ 4096,4096,3584,3584,
};
readonly string[] volumename = {
"Volume label",
+ "Volume label","Volume label","Volume label","Volume label",
};
readonly string[] volumeserial = {
- "0000000000000000",
+ null,
+ null,null,null,"81FE805D61458753",
};
[Test]
@@ -83,7 +90,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfsplus_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfs_mbr", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
diff --git a/DiscImageChef.Tests/Filesystems/HFS_RDB.cs b/DiscImageChef.Tests/Filesystems/HFS_RDB.cs
index 00f58ffb..4f982379 100644
--- a/DiscImageChef.Tests/Filesystems/HFS_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/HFS_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : FAT16_RDB.cs
+// Filename : HFS_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -49,7 +49,7 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class FAT16_RDB
+ public class HFS_RDB
{
readonly string[] testfiles = {
"amigaos_3.9.vdi.lz",
@@ -72,15 +72,11 @@ namespace DiscImageChef.Tests.Filesystems
};
readonly string[] volumename = {
- "VOLUMELABEL"
+ "Volume label",
};
readonly string[] volumeserial = {
- "UNKNOWN ",
- };
-
- readonly string[] oemid = {
- "CDP 5.0",
+ null,
};
[Test]
@@ -90,7 +86,7 @@ namespace DiscImageChef.Tests.Filesystems
/*
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "fat16_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfs_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
diff --git a/DiscImageChef.Tests/Filesystems/LFS_MBR.cs b/DiscImageChef.Tests/Filesystems/LFS_MBR.cs
index 496f996e..d3a9d34f 100644
--- a/DiscImageChef.Tests/Filesystems/LFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/LFS_MBR.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : HAMMER_MBR.cs
+// Filename : LFS_MBR.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -49,40 +49,40 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class HAMMER_MBR
+ public class LFS_MBR
{
readonly string[] testfiles = {
- "dflybsd_3.6.1.vdi.lz","dflybsd_4.0.5.vdi.lz",
+ "netbsd_1.6.vdi.lz",
};
readonly ulong[] sectors = {
- 104857600, 104857600,
+ 409600,
};
readonly uint[] sectorsize = {
- 512, 512,
+ 512,
};
readonly long[] clusters = {
- 104856192, 104856192,
+ 409600
};
readonly int[] clustersize = {
- 512, 512,
+ 512,
};
readonly string[] volumename = {
- "Volume label", "Volume label",
+ null,
};
readonly string[] volumeserial = {
- "UNKNOWN","UNKNOWN",
+ null,
};
[Test]
public void Test()
{
- throw new NotImplementedException("HAMMER filesystem is not yet implemented");
+ throw new NotImplementedException("LFS filesystem is not yet implemented");
/*
for(int i = 0; i < testfiles.Length; i++)
{
@@ -95,11 +95,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new MBR();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.HAMMER();
+ Filesystem fs = new DiscImageChef.Filesystems.LFS();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0xA5")
+ if(partitions[j].PartitionType == "0xA9")
{
part = j;
break;
@@ -110,7 +110,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("HAMMER", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("LFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}*/
diff --git a/DiscImageChef.Tests/Filesystems/Locus.cs b/DiscImageChef.Tests/Filesystems/Locus.cs
index b75c0c48..4c99d2ae 100644
--- a/DiscImageChef.Tests/Filesystems/Locus.cs
+++ b/DiscImageChef.Tests/Filesystems/Locus.cs
@@ -87,6 +87,8 @@ namespace DiscImageChef.Tests.Filesystems
[Test]
public void Test()
{
+ throw new NotImplementedException("Locus filesystem is not yet implemented");
+ /*
for(int i = 0; i < testfiles.Length; i++)
{
string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "locus", testfiles[i]);
@@ -97,8 +99,6 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(mediatypes[i], image.ImageInfo.mediaType, testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- throw new NotImplementedException("Locus filesystem is not yet implemented");
- /*
Filesystem fs = new DiscImageChef.Filesystems.Locus();
Assert.AreEqual(true, fs.Identify(image, 0, image.ImageInfo.sectors - 1), testfiles[i]);
fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
@@ -107,8 +107,8 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual("Locus", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);*/
- }
+ Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
+ }*/
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/MFS.cs b/DiscImageChef.Tests/Filesystems/MFS.cs
index 318b899a..6f0e4ab7 100644
--- a/DiscImageChef.Tests/Filesystems/MFS.cs
+++ b/DiscImageChef.Tests/Filesystems/MFS.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : HFS.cs
+// Filename : MFS.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -45,21 +45,21 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class HFS
+ public class MFS
{
readonly string[] testfiles = {
- "macos_1.1_mf2dd.img.lz","macos_2.0_mf2dd.img.lz","macos_6.0.7_mf2dd.img.lz","nextstep_3.3_mf2hd.img.lz",
- "openstep_4.0_mf2hd.img.lz","openstep_4.2_mf2hd.img.lz","rhapsody_dr1_mf2hd.img.lz",
+ "macos_0.1_mf1dd.img.lz","macos_0.5_mf1dd.img.lz","macos_1.1_mf1dd.img.lz","macos_2.0_mf1dd.img.lz",
+ "macos_6.0.7_mf1dd.img.lz",
};
readonly MediaType[] mediatypes = {
- MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.AppleSonyDS, MediaType.DOS_35_HD,
- MediaType.DOS_35_HD, MediaType.DOS_35_HD, MediaType.DOS_35_HD,
+ MediaType.AppleSonySS, MediaType.AppleSonySS, MediaType.AppleSonySS, MediaType.AppleSonySS,
+ MediaType.AppleSonySS
};
readonly ulong[] sectors = {
- 1600, 1600, 1600, 2880,
- 2880, 2880, 2880,
+ 800, 800, 800, 800,
+ 800,
};
readonly uint[] sectorsize = {
@@ -68,18 +68,18 @@ namespace DiscImageChef.Tests.Filesystems
};
readonly long[] clusters = {
- 1594, 1594, 1594, 2874,
- 2874, 2874, 2874,
+ 391, 391, 391, 391,
+ 391,
};
readonly int[] clustersize = {
- 512, 512, 512, 512,
- 512, 512, 512,
+ 1024, 1024, 1024, 1024,
+ 1024,
};
readonly string[] volumename = {
"Volume label","Volume label","Volume label","Volume label",
- "Volume label","Volume label","Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
@@ -92,7 +92,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfs", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "mfs", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new ZZZRawImage();
@@ -100,12 +100,12 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(mediatypes[i], image.ImageInfo.mediaType, testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- Filesystem fs = new AppleHFS();
+ Filesystem fs = new DiscImageChef.Filesystems.AppleMFS.AppleMFS();
Assert.AreEqual(true, fs.Identify(image, 0, image.ImageInfo.sectors - 1), testfiles[i]);
fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("HFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("MFS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/NTFS_GPT.cs b/DiscImageChef.Tests/Filesystems/NTFS_GPT.cs
index 134a5dff..e7334712 100644
--- a/DiscImageChef.Tests/Filesystems/NTFS_GPT.cs
+++ b/DiscImageChef.Tests/Filesystems/NTFS_GPT.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : NTFS_MBR.cs
+// Filename : NTFS_GPT.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,32 +48,27 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class NTFS_MBR
+ public class NTFS_GPT
{
readonly string[] testfiles = {
- "win10.vdi.lz", "win2000.vdi.lz", "winnt_3.10.vdi.lz", "winnt_3.50.vdi.lz",
- "winnt_3.51.vdi.lz", "winnt_4.00.vdi.lz", "winvista.vdi.lz", "linux.vdi.lz",
+ "haiku_hrev51259.vdi.lz",
};
readonly ulong[] sectors = {
- 524288, 2097152, 1024000, 524288,
- 524288, 524288, 524288, 262144,
+ 2097152,
};
readonly uint[] sectorsize = {
- 512, 512, 512, 512,
- 512, 512, 512, 512,
+ 512,
};
readonly long[] clusters = {
- 65263, 1046511, 1023057, 524256,
- 524256, 524096, 64767, 32512,
+ 261887,
};
readonly int[] clustersize = {
- 4096, 1024, 512, 512,
- 512, 512, 4096, 4096,
+ 4096,
};
readonly string[] volumename = {
@@ -82,13 +77,11 @@ namespace DiscImageChef.Tests.Filesystems
};
readonly string[] volumeserial = {
- "C46C1B3C6C1B28A6","8070C8EC70C8E9CC","10CC6AC6CC6AA5A6","7A14F50014F4BFE5",
- "24884447884419A6","822C288D2C287E73","E20AF54B0AF51D6B","065BB96B7C1BCFDA",
+ "106DA7693F7F6B3F",
};
readonly string[] oemid = {
- null, null, null, null,
- null, null, null, null,
+ null,
};
[Test]
@@ -96,20 +89,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ntfs_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ntfs_gpt", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new MBR();
+ PartPlugin parts = new GuidPartitionTable();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.NTFS();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0x07")
+ if(partitions[j].PartitionType == "Microsoft Basic data")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/NTFS_MBR.cs b/DiscImageChef.Tests/Filesystems/NTFS_MBR.cs
index 134a5dff..2224dbd5 100644
--- a/DiscImageChef.Tests/Filesystems/NTFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/NTFS_MBR.cs
@@ -53,42 +53,49 @@ namespace DiscImageChef.Tests.Filesystems
readonly string[] testfiles = {
"win10.vdi.lz", "win2000.vdi.lz", "winnt_3.10.vdi.lz", "winnt_3.50.vdi.lz",
"winnt_3.51.vdi.lz", "winnt_4.00.vdi.lz", "winvista.vdi.lz", "linux.vdi.lz",
-
+ "haiku_hrev51259.vdi.lz",
};
readonly ulong[] sectors = {
524288, 2097152, 1024000, 524288,
524288, 524288, 524288, 262144,
+ 2097152,
};
readonly uint[] sectorsize = {
512, 512, 512, 512,
512, 512, 512, 512,
+ 512,
};
readonly long[] clusters = {
65263, 1046511, 1023057, 524256,
- 524256, 524096, 64767, 32512,
+ 524256, 524096, 64767, 32511,
+ 261887,
};
readonly int[] clustersize = {
4096, 1024, 512, 512,
512, 512, 4096, 4096,
+ 4096,
};
readonly string[] volumename = {
null, null, null, null,
null, null, null, null,
+ null,
};
readonly string[] volumeserial = {
"C46C1B3C6C1B28A6","8070C8EC70C8E9CC","10CC6AC6CC6AA5A6","7A14F50014F4BFE5",
"24884447884419A6","822C288D2C287E73","E20AF54B0AF51D6B","065BB96B7C1BCFDA",
+ "46EC796749C6FA66",
};
readonly string[] oemid = {
null, null, null, null,
null, null, null, null,
+ null,
};
[Test]
@@ -109,7 +116,9 @@ namespace DiscImageChef.Tests.Filesystems
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0x07")
+ if(partitions[j].PartitionType == "0x07" ||
+ // Value incorrectly set by Haiku
+ partitions[j].PartitionType == "0x86")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/NWFS386.cs b/DiscImageChef.Tests/Filesystems/NWFS386.cs
index 496f996e..354d32d2 100644
--- a/DiscImageChef.Tests/Filesystems/NWFS386.cs
+++ b/DiscImageChef.Tests/Filesystems/NWFS386.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : HAMMER_MBR.cs
+// Filename : NWFS386.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -49,44 +49,44 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class HAMMER_MBR
+ public class NWFS386
{
readonly string[] testfiles = {
- "dflybsd_3.6.1.vdi.lz","dflybsd_4.0.5.vdi.lz",
+ "netware_3.12.vdi.lz",
};
readonly ulong[] sectors = {
- 104857600, 104857600,
+ 104857600,
};
readonly uint[] sectorsize = {
- 512, 512,
+ 512,
};
readonly long[] clusters = {
- 104856192, 104856192,
+ 104856192,
};
readonly int[] clustersize = {
- 512, 512,
+ 512,
};
readonly string[] volumename = {
- "Volume label", "Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
- "UNKNOWN","UNKNOWN",
+ "UNKNOWN",
};
[Test]
public void Test()
{
- throw new NotImplementedException("HAMMER filesystem is not yet implemented");
+ throw new NotImplementedException("NWFS386 filesystem is not yet implemented");
/*
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hammer_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "nwfs386", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -95,11 +95,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new MBR();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.HAMMER();
+ Filesystem fs = new DiscImageChef.Filesystems.NetWare();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0xA5")
+ if(partitions[j].PartitionType == "0x65")
{
part = j;
break;
@@ -110,7 +110,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("HAMMER", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("NWFS386", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}*/
diff --git a/DiscImageChef.Tests/Filesystems/OCFS2.cs b/DiscImageChef.Tests/Filesystems/OCFS2.cs
index 496f996e..a0c7bcaa 100644
--- a/DiscImageChef.Tests/Filesystems/OCFS2.cs
+++ b/DiscImageChef.Tests/Filesystems/OCFS2.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : HAMMER_MBR.cs
+// Filename : OCFS2.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -49,44 +49,44 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class HAMMER_MBR
+ public class OCFS2
{
readonly string[] testfiles = {
- "dflybsd_3.6.1.vdi.lz","dflybsd_4.0.5.vdi.lz",
+ "linux.vdi.lz",
};
readonly ulong[] sectors = {
- 104857600, 104857600,
+ 104857600,
};
readonly uint[] sectorsize = {
- 512, 512,
+ 512,
};
readonly long[] clusters = {
- 104856192, 104856192,
+ 104856192,
};
readonly int[] clustersize = {
- 512, 512,
+ 512,
};
readonly string[] volumename = {
- "Volume label", "Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
- "UNKNOWN","UNKNOWN",
+ "UNKNOWN",
};
[Test]
public void Test()
{
- throw new NotImplementedException("HAMMER filesystem is not yet implemented");
+ throw new NotImplementedException("OCFS2 filesystem is not yet implemented");
/*
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hammer_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ocfs2", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -95,11 +95,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new MBR();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.HAMMER();
+ Filesystem fs = new DiscImageChef.Filesystems.OCFS2();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0xA5")
+ if(partitions[j].PartitionType == "0x83")
{
part = j;
break;
@@ -110,7 +110,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("HAMMER", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("OCFS2", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}*/
diff --git a/DiscImageChef.Tests/Filesystems/PFS3_RDB.cs b/DiscImageChef.Tests/Filesystems/PFS3_RDB.cs
index b4bb74fa..e0973bc1 100644
--- a/DiscImageChef.Tests/Filesystems/PFS3_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/PFS3_RDB.cs
@@ -100,7 +100,6 @@ namespace DiscImageChef.Tests.Filesystems
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- System.Console.WriteLine("{0}", partitions[j].PartitionType);
if(partitions[j].PartitionType == "\"PFS\\1\"")
{
part = j;
diff --git a/DiscImageChef.Tests/Filesystems/ProDOS_APM.cs b/DiscImageChef.Tests/Filesystems/ProDOS_APM.cs
index 816e7b0f..c0edd154 100644
--- a/DiscImageChef.Tests/Filesystems/ProDOS_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/ProDOS_APM.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : HFS_APM.cs
+// Filename : ProDOS_APM.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,69 +48,41 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class HFS_APM
+ public class ProDOS_APM
{
readonly string[] testfiles = {
- "amigaos_3.9.vdi.lz","darwin_1.3.1.vdi.lz","darwin_1.4.1.vdi.lz","darwin_6.0.2.vdi.lz",
- "darwin_8.0.1.vdi.lz","macos_1.1.vdi.lz","macos_2.0.vdi.lz","macos_6.0.7.vdi.lz",
- "macos_7.5.3.vdi.lz","macos_7.5.vdi.lz","macos_7.6.vdi.lz","macos_8.0.vdi.lz",
- "macos_8.1.vdi.lz","macos_9.0.4.vdi.lz","macos_9.1.vdi.lz","macos_9.2.1.vdi.lz",
- "macos_9.2.2.vdi.lz","macosx_10.2.vdi.lz","macosx_10.3.vdi.lz","macosx_10.4.vdi.lz",
- "rhapsody_dr1.vdi.lz",
+ "macos_7.5.3.vdi.lz","macos_7.6.vdi.lz","macos_8.0.vdi.lz","macos_8.1.vdi.lz",
+ "macos_9.0.4.vdi.lz","macos_9.1.vdi.lz","macos_9.2.1.vdi.lz","macos_9.2.2.vdi.lz",
};
readonly ulong[] sectors = {
- 1024128,409600,409600,409600,
- 409600,41820,41820,81648,
- 1024000,1024000,1024000,1024000,
- 1024000,1024000,1024000,1024000,
- 1024000,1024000,1024000,1024000,
- 409600,
+ 49152,49152,49152,49152,
+ 49152,49152,49152,49152,
};
readonly uint[] sectorsize = {
512,512,512,512,
512,512,512,512,
- 512,512,512,512,
- 512,512,512,512,
- 512,512,512,512,
- 512,
};
readonly long[] clusters = {
- 64003,51189,51189,58502,
- 58502,39991,39991,39991,
- 63954,63990,63954,63954,
- 63954,63922,63922,63922,
- 63922,63884,63883,63883,
- 58506,
+ 48438,48438,48438,48438,
+ 46326,46326,46326,46326,
};
readonly int[] clustersize = {
- 8192,4096,4096,3584,
- 3584,1024,1024,1024,
- 8192,8192,8192,8192,
- 8192,8192,8192,8192,
- 8192,8192,8192,8192,
- 3584,
+ 512,512,512,512,
+ 512,512,512,512,
};
readonly string[] volumename = {
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label"
+ "VOLUME.LABEL","VOLUME.LABEL","VOLUME.LABEL","VOLUME.LABEL",
+ "VOLUME.LABEL","VOLUME.LABEL","VOLUME.LABEL","VOLUME.LABEL",
};
readonly string[] volumeserial = {
null,null,null,null,
- "AAFE1382AF5AA898",null,null,null,
null,null,null,null,
- null,null,null,null,
- null,"5A7C38B0CAF279C4","FB49083EBD150509","632C0B1DB46FD188",
- null,
};
[Test]
@@ -118,7 +90,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "hfs_apm", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "prodos_apm", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -127,11 +99,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new AppleMap();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.AppleHFS();
+ Filesystem fs = new DiscImageChef.Filesystems.ProDOSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "Apple_HFS")
+ if(partitions[j].PartitionType == "Apple_ProDOS")
{
part = j;
break;
@@ -142,7 +114,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("HFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("ProDOS", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/SFS_MBR.cs b/DiscImageChef.Tests/Filesystems/SFS_MBR.cs
index e7e0fdf7..834c56b1 100644
--- a/DiscImageChef.Tests/Filesystems/SFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/SFS_MBR.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : SFS_RDB.cs
+// Filename : SFS_MBR.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,14 +48,14 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class SFS_RDB
+ public class SFS_MBR
{
readonly string[] testfiles = {
- "uae.vdi.lz",
+ "aros.vdi.lz",
};
readonly ulong[] sectors = {
- 1024128,
+ 409600,
};
readonly uint[] sectorsize = {
@@ -63,11 +63,11 @@ namespace DiscImageChef.Tests.Filesystems
};
readonly long[] clusters = {
- 127000,
+ 408240,
};
readonly int[] clustersize = {
- 2048,
+ 512,
};
readonly string[] volumename = {
@@ -78,29 +78,25 @@ namespace DiscImageChef.Tests.Filesystems
null,
};
- readonly string[] oemid = {
- null,
- };
-
[Test]
public void Test()
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "sfs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "sfs_mbr", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new AmigaRigidDiskBlock();
+ PartPlugin parts = new MBR();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.SFS();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "\"SFS\\0\"" || partitions[j].PartitionType == "\"SFS\\2\"")
+ if(partitions[j].PartitionType == "0x2F")
{
part = j;
break;
@@ -114,7 +110,6 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual("SmartFileSystem", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/SFS_MBR_RDB.cs b/DiscImageChef.Tests/Filesystems/SFS_MBR_RDB.cs
index 5963fc01..00bcefdc 100644
--- a/DiscImageChef.Tests/Filesystems/SFS_MBR_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/SFS_MBR_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AFFS_MBR_RDB.cs
+// Filename : SFS_MBR_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -49,34 +49,34 @@ using System;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AFFS_MBR_RDB
+ public class SFS_MBR_RDB
{
readonly string[] testfiles = {
- "aros.vdi.lz","aros_intl.vdi.lz",
+ "aros.vdi.lz",
};
readonly ulong[] sectors = {
- 409600,409600,
+ 409600,
};
readonly uint[] sectorsize = {
- 512,512,
+ 512,
};
readonly long[] clusters = {
- 408240,408240,
+ 408240,
};
readonly int[] clustersize = {
- 512,512,
+ 512,
};
readonly string[] volumename = {
- "Volume label","Volume label",
+ null,
};
readonly string[] volumeserial = {
- null,null,
+ null,
};
[Test]
@@ -85,7 +85,7 @@ namespace DiscImageChef.Tests.Filesystems
throw new NotImplementedException("Partition schemes inside partitions are not yet implemented, and should be tested here.");
/* for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_mbr_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "sfs_mbr_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -98,7 +98,7 @@ namespace DiscImageChef.Tests.Filesystems
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0x2D")
+ if(partitions[j].PartitionType == "SFS")
{
part = j;
break;
@@ -109,7 +109,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("SmartFileSystem", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}*/
diff --git a/DiscImageChef.Tests/Filesystems/SFS_RDB.cs b/DiscImageChef.Tests/Filesystems/SFS_RDB.cs
index 40fc8529..132f93fe 100644
--- a/DiscImageChef.Tests/Filesystems/SFS_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/SFS_RDB.cs
@@ -51,35 +51,31 @@ namespace DiscImageChef.Tests.Filesystems
public class SFS_RDB
{
readonly string[] testfiles = {
- "uae.vdi.lz",
+ "uae.vdi.lz","aros.vdi.lz","amigaos_4.0.vdi.lz","amigaos_4.0_sfs2.vdi.lz"
};
readonly ulong[] sectors = {
- 1024128,
+ 1024128,409600,1024128,1024128,
};
readonly uint[] sectorsize = {
- 512,
+ 512,512,512,512,
};
readonly long[] clusters = {
- 127000,
+ 127000,407232,511040,511040,
};
readonly int[] clustersize = {
- 2048,
+ 2048,512,1024,1024,
};
readonly string[] volumename = {
- null,
+ null,null,null,null,
};
readonly string[] volumeserial = {
- null,
- };
-
- readonly string[] oemid = {
- null,
+ null,null,null,null,
};
[Test]
@@ -87,7 +83,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "sfs", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "sfs_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -100,8 +96,7 @@ namespace DiscImageChef.Tests.Filesystems
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- System.Console.WriteLine("{0}", partitions[j].PartitionType);
- if(partitions[j].PartitionType == "\"SFS\\0\"")
+ if(partitions[j].PartitionType == "\"SFS\\0\"" || partitions[j].PartitionType == "\"SFS\\2\"")
{
part = j;
break;
@@ -115,7 +110,6 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual("SmartFileSystem", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
- Assert.AreEqual(oemid[i], fs.XmlFSType.SystemIdentifier, testfiles[i]);
}
}
}
diff --git a/DiscImageChef.Tests/Filesystems/SysV.cs b/DiscImageChef.Tests/Filesystems/SysV.cs
index 9a3288c5..03285231 100644
--- a/DiscImageChef.Tests/Filesystems/SysV.cs
+++ b/DiscImageChef.Tests/Filesystems/SysV.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AFFS.cs
+// Filename : SysV.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -45,38 +45,42 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AFFS
+ public class SysV
{
readonly string[] testfiles = {
- "amigaos_3.9.adf.lz", "amigaos_3.9_intl.adf.lz",
+ "amix.adf.lz",
};
readonly MediaType[] mediatypes = {
- MediaType.CBM_AMIGA_35_DD, MediaType.CBM_AMIGA_35_DD,
+ MediaType.CBM_AMIGA_35_DD,
};
readonly ulong[] sectors = {
- 1760, 1760,
+ 1760,
};
readonly uint[] sectorsize = {
- 512, 512,
+ 512,
};
readonly long[] clusters = {
- 1760, 1760,
+ 880,
};
readonly int[] clustersize = {
- 512, 512,
+ 1024,
};
readonly string[] volumename = {
- "Volume label", "Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
- null, null,
+ null,
+ };
+
+ readonly string[] type = {
+ "SVR4 fs",
};
[Test]
@@ -84,7 +88,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "s5fs", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new ZZZRawImage();
@@ -92,12 +96,12 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(mediatypes[i], image.ImageInfo.mediaType, testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- Filesystem fs = new AmigaDOSPlugin();
+ Filesystem fs = new DiscImageChef.Filesystems.SysVfs();
Assert.AreEqual(true, fs.Identify(image, 0, image.ImageInfo.sectors - 1), testfiles[i]);
fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual(type[i], fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/SysV_MBR.cs b/DiscImageChef.Tests/Filesystems/SysV_MBR.cs
index c27ca4c6..b2d01e68 100644
--- a/DiscImageChef.Tests/Filesystems/SysV_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/SysV_MBR.cs
@@ -51,11 +51,11 @@ namespace DiscImageChef.Tests.Filesystems
public class SysV_MBR
{
readonly string[] testfiles = {
- "amix.vdi.lz",
+ "xenix_2.3.2d.vdi.lz",
};
readonly ulong[] sectors = {
- 409600,409600,
+ 40960,40960,
};
readonly uint[] sectorsize = {
@@ -63,23 +63,23 @@ namespace DiscImageChef.Tests.Filesystems
};
readonly long[] clusters = {
- 511488,
+ 19624,19624,
};
readonly int[] clustersize = {
- 1024,
+ 1024,1024,
};
readonly string[] volumename = {
- "Volume label",
+ "Volume label","Volume label",
};
readonly string[] volumeserial = {
- null,
+ null,null,
};
readonly string[] type = {
- "SVR4 fs",
+ "XENIX fs","XENIX fs",
};
[Test]
@@ -87,20 +87,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "s5fs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "s5fs_mbr", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new AmigaRigidDiskBlock();
+ PartPlugin parts = new MBR();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.AmigaDOSPlugin();
+ Filesystem fs = new DiscImageChef.Filesystems.SysVfs();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "\"UNI\\1\"")
+ if(partitions[j].PartitionType == "0x02")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/SysV_RDB.cs b/DiscImageChef.Tests/Filesystems/SysV_RDB.cs
index 56a0e6d5..4a3e597d 100644
--- a/DiscImageChef.Tests/Filesystems/SysV_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/SysV_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : AFFS_MBR.cs
+// Filename : SysV_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,34 +48,38 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class AFFS_MBR
+ public class SysV_RDB
{
readonly string[] testfiles = {
- "aros.vdi.lz","aros_intl.vdi.lz",
+ "amix.vdi.lz",
};
readonly ulong[] sectors = {
- 409600,409600,
+ 1024128,
};
readonly uint[] sectorsize = {
- 512,512,
+ 512,
};
readonly long[] clusters = {
- 408240,408240,
+ 511488,
};
readonly int[] clustersize = {
- 512,512,
+ 1024,
};
readonly string[] volumename = {
- "Volume label","Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
- null,null,
+ null,
+ };
+
+ readonly string[] type = {
+ "SVR4 fs",
};
[Test]
@@ -83,20 +87,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "affs_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "s5fs_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new MBR();
+ PartPlugin parts = new AmigaRigidDiskBlock();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.AmigaDOSPlugin();
+ Filesystem fs = new DiscImageChef.Filesystems.SysVfs();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0x2D")
+ if(partitions[j].PartitionType == "\"UNI\\1\"")
{
part = j;
break;
@@ -107,7 +111,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("Amiga FFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual(type[i], fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/UDF.cs b/DiscImageChef.Tests/Filesystems/UDF.cs
index 49b5496f..13417ac8 100644
--- a/DiscImageChef.Tests/Filesystems/UDF.cs
+++ b/DiscImageChef.Tests/Filesystems/UDF.cs
@@ -50,55 +50,64 @@ namespace DiscImageChef.Tests.Filesystems
readonly string[] testfiles = {
"1.02/linux.vdi.lz", "1.02/macosx.vdi.lz", "1.50/linux.vdi.lz", "1.50/macosx.vdi.lz",
"2.00/linux.vdi.lz", "2.00/macosx.vdi.lz", "2.01/linux.vdi.lz", "2.01/macosx.vdi.lz",
- "2.50/linux.vdi.lz", "2.50/macosx.vdi.lz", "2.60/macosx.vdi.lz",
+ "2.50/linux.vdi.lz", "2.50/macosx.vdi.lz", "2.60/macosx.vdi.lz", "1.50/solaris_7.vdi.lz",
+ "1.50/solaris_9.vdi.lz", "2.01/netbsd_7.1.vdi.lz",
};
readonly ulong[] sectors = {
1024000, 204800, 1024000, 409600,
1024000, 614400, 1024000, 819200,
- 1024000, 1024000, 1228800,
+ 1024000, 1024000, 1228800, 8388608,
+ 8388608, 8388608,
};
readonly uint[] sectorsize = {
512, 512, 512, 512,
512, 512, 512, 512,
- 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512,
};
readonly long[] clusters = {
1024000, 204800, 1024000, 409600,
1024000, 614400, 1024000, 819200,
- 1024000, 1024000, 1228800,
+ 1024000, 1024000, 1228800, 8388608,
+ 8388608, 8388608,
};
readonly int[] clustersize = {
512, 512, 512, 512,
512, 512, 512, 512,
- 512, 512, 512,
+ 512, 512, 512,512,
+ 512, 512,
};
readonly string[] udfversion = {
"UDF v1.02", "UDF v1.02", "UDF v1.50", "UDF v1.50",
"UDF v2.00", "UDF v2.00", "UDF v2.01", "UDF v2.01",
- "UDF v2.50", "UDF v2.50", "UDF v2.50",
+ "UDF v2.50", "UDF v2.50", "UDF v2.50", "UDF v1.50",
+ "UDF v1.50", "UDF v2.01",
};
readonly string[] volumename = {
"Volume label", "Volume label", "Volume label", "Volume label",
"Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "*NoLabel*",
+ "*NoLabel*", "anonymous",
};
readonly string[] volumeserial = {
"595c5cfa38ce8b66LinuxUDF", "6D02A231 (Mac OS X newfs_udf) UDF Volume Set", "595c5d00c5b3405aLinuxUDF", "4DD0458B (Mac OS X newfs_udf) UDF Volume Set",
"595c5d07f4fc8e8dLinuxUDF", "5D91CB4F (Mac OS X newfs_udf) UDF Volume Set", "595c5d0bee60c3bbLinuxUDF", "48847EB3 (Mac OS X newfs_udf) UDF Volume Set",
- "595c5d0e4f338552LinuxUDF", "709E84A1 (Mac OS X newfs_udf) UDF Volume Set", "78CE3237 (Mac OS X newfs_udf) UDF Volume Set",
+ "595c5d0e4f338552LinuxUDF", "709E84A1 (Mac OS X newfs_udf) UDF Volume Set", "78CE3237 (Mac OS X newfs_udf) UDF Volume Set","595EB2A9",
+ "595EB55A", "7cc94d726669d773",
};
readonly string[] oemid = {
"*Linux UDFFS", "*Apple Mac OS X UDF FS", "*Linux UDFFS", "*Apple Mac OS X UDF FS",
"*Linux UDFFS", "*Apple Mac OS X UDF FS", "*Linux UDFFS", "*Apple Mac OS X UDF FS",
- "*Linux UDFFS", "*Apple Mac OS X UDF FS", "*Apple Mac OS X UDF FS",
+ "*Linux UDFFS", "*Apple Mac OS X UDF FS", "*Apple Mac OS X UDF FS","*SUN SOLARIS UDF",
+ "*SUN SOLARIS UDF", "*NetBSD userland UDF",
};
[Test]
diff --git a/DiscImageChef.Tests/Filesystems/UFS.cs b/DiscImageChef.Tests/Filesystems/UFS.cs
index 6f0e4ab7..68aac976 100644
--- a/DiscImageChef.Tests/Filesystems/UFS.cs
+++ b/DiscImageChef.Tests/Filesystems/UFS.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : MFS.cs
+// Filename : UFS.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -45,46 +45,42 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class MFS
+ public class UFS
{
readonly string[] testfiles = {
- "macos_0.1_mf1dd.img.lz","macos_0.5_mf1dd.img.lz","macos_1.1_mf1dd.img.lz","macos_2.0_mf1dd.img.lz",
- "macos_6.0.7_mf1dd.img.lz",
+ "amix_mf2dd.adf.lz","netbsd_1.6_mf2hd.img.lz",
};
readonly MediaType[] mediatypes = {
- MediaType.AppleSonySS, MediaType.AppleSonySS, MediaType.AppleSonySS, MediaType.AppleSonySS,
- MediaType.AppleSonySS
+ MediaType.CBM_AMIGA_35_DD, MediaType.DOS_35_HD,
};
readonly ulong[] sectors = {
- 800, 800, 800, 800,
- 800,
+ 1760, 2880,
};
readonly uint[] sectorsize = {
- 512, 512, 512, 512,
- 512, 512, 512,
+ 512, 512,
};
readonly long[] clusters = {
- 391, 391, 391, 391,
- 391,
+ 1760, 2880,
};
readonly int[] clustersize = {
- 1024, 1024, 1024, 1024,
- 1024,
+ 512, 512,
};
readonly string[] volumename = {
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label",
+ null, null,
};
readonly string[] volumeserial = {
- null, null, null, null,
- null, null, null,
+ null, null,
+ };
+
+ readonly string[] type = {
+ "UFS", "UFS",
};
[Test]
@@ -92,7 +88,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "mfs", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new ZZZRawImage();
@@ -100,12 +96,12 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(mediatypes[i], image.ImageInfo.mediaType, testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.AppleMFS.AppleMFS();
+ Filesystem fs = new DiscImageChef.Filesystems.FFSPlugin();
Assert.AreEqual(true, fs.Identify(image, 0, image.ImageInfo.sectors - 1), testfiles[i]);
fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("MFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual(type[i], fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/UFS_APM.cs b/DiscImageChef.Tests/Filesystems/UFS_APM.cs
index 3ff496a2..3f3ff26a 100644
--- a/DiscImageChef.Tests/Filesystems/UFS_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/UFS_APM.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : UFS_MBR.cs
+// Filename : UFS_APM.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,34 +48,54 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class UFS_MBR
+ public class UFS_APM
{
readonly string[] testfiles = {
- "ufs1/linux.vdi.lz", "ufs2/linux.vdi.lz",
+ "ffs43/darwin_1.3.1.vdi.lz","ffs43/darwin_1.4.1.vdi.lz","ffs43/darwin_6.0.2.vdi.lz","ffs43/darwin_8.0.1.vdi.lz",
+ "ufs1/darwin_1.3.1.vdi.lz","ufs1/darwin_1.4.1.vdi.lz","ufs1/darwin_6.0.2.vdi.lz","ufs1/darwin_8.0.1.vdi.lz",
+ "ufs1/macosx_10.2.vdi.lz","ufs1/macosx_10.3.vdi.lz","ufs1/macosx_10.4.vdi.lz",
};
readonly ulong[] sectors = {
- 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144, 262144, 262144,
};
readonly uint[] sectorsize = {
- 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512,
};
readonly long[] clusters = {
- 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024, 65018, 65024,
};
readonly int[] clustersize = {
- 2048, 2048
+ 2048, 2048, 2048, 2048,
+ 2048, 2048, 2048, 2048,
+ 2048, 2048, 2048,
};
readonly string[] volumename = {
- "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label",
};
readonly string[] volumeserial = {
- "59588B778E9ACDEF", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ };
+
+ readonly string[] type = {
+ "UFS", "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS",
};
[Test]
@@ -83,20 +103,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_apm", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new MBR();
+ PartPlugin parts = new AppleMap();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.FFSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0x83")
+ if(partitions[j].PartitionType == "Apple_UFS")
{
part = j;
break;
@@ -107,7 +127,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("UFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual(type[i], fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/UFS_MBR.cs b/DiscImageChef.Tests/Filesystems/UFS_MBR.cs
index 3ff496a2..4f8a978b 100644
--- a/DiscImageChef.Tests/Filesystems/UFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/UFS_MBR.cs
@@ -51,31 +51,91 @@ namespace DiscImageChef.Tests.Filesystems
public class UFS_MBR
{
readonly string[] testfiles = {
- "ufs1/linux.vdi.lz", "ufs2/linux.vdi.lz",
+ "ufs1/linux.vdi.lz", "ufs2/linux.vdi.lz", "ffs43/darwin_1.3.1.vdi.lz", "ffs43/darwin_1.4.1.vdi.lz",
+ "ffs43/darwin_6.0.2.vdi.lz", "ffs43/darwin_8.0.1.vdi.lz", "ffs43/dflybsd_1.2.0.vdi.lz", "ffs43/dflybsd_3.6.1.vdi.lz",
+ "ffs43/dflybsd_4.0.5.vdi.lz", "ffs43/netbsd_1.6.vdi.lz", "ffs43/netbsd_7.1.vdi.lz", "ufs1/darwin_1.3.1.vdi.lz",
+ "ufs1/darwin_1.4.1.vdi.lz", "ufs1/darwin_6.0.2.vdi.lz", "ufs1/darwin_8.0.1.vdi.lz", "ufs1/dflybsd_1.2.0.vdi.lz",
+ "ufs1/dflybsd_3.6.1.vdi.lz", "ufs1/dflybsd_4.0.5.vdi.lz", "ufs1/freebsd_6.1.vdi.lz", "ufs1/freebsd_7.0.vdi.lz",
+ "ufs1/freebsd_8.2.vdi.lz", "ufs1/netbsd_1.6.vdi.lz", "ufs1/netbsd_7.1.vdi.lz", "ufs1/solaris_7.vdi.lz",
+ "ufs1/solaris_7.vdi.lz", "ufs2/freebsd_6.1.vdi.lz", "ufs2/freebsd_7.0.vdi.lz", "ufs2/freebsd_8.2.vdi.lz",
+ "ufs2/netbsd_7.1.vdi.lz",
};
readonly ulong[] sectors = {
- 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144, 262144, 262144, 262144,
+ 262144,
};
readonly uint[] sectorsize = {
- 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512, 512, 512, 512,
+ 512,
};
readonly long[] clusters = {
- 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024, 65018, 65024, 65018,
+ 65024,
};
readonly int[] clustersize = {
- 2048, 2048
+ 2048, 2048, 2048, 2048,
+ 2048, 2048, 2048, 2048,
+ 2048, 2048, 2048, 2048,
+ 2048, 2048, 2048, 2048,
+ 2048, 2048, 2048, 2048,
+ 2048, 2048, 2048, 2048,
+ 2048, 2048, 2048, 2048,
+ 2048,
};
readonly string[] volumename = {
- "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label", "Volume label",
+ "Volume label",
};
readonly string[] volumeserial = {
- "59588B778E9ACDEF", "UNKNOWN",
+ "59588B778E9ACDEF", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN",
+ };
+
+ readonly string[] type = {
+ "UFS", "UFS2", "UFS", "UFS",
+ "UFS", "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS", "UFS",
+ "UFS", "UFS2", "UFS2", "UFS2",
+ "UFS2",
};
[Test]
@@ -107,7 +167,7 @@ namespace DiscImageChef.Tests.Filesystems
fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("UFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual(type[i], fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/UFS_NeXT.cs b/DiscImageChef.Tests/Filesystems/UFS_NeXT.cs
index 4f8a978b..30ba26fa 100644
--- a/DiscImageChef.Tests/Filesystems/UFS_NeXT.cs
+++ b/DiscImageChef.Tests/Filesystems/UFS_NeXT.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : UFS_MBR.cs
+// Filename : UFS_NeXT.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,94 +48,70 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class UFS_MBR
+ public class UFS_NeXT
{
readonly string[] testfiles = {
- "ufs1/linux.vdi.lz", "ufs2/linux.vdi.lz", "ffs43/darwin_1.3.1.vdi.lz", "ffs43/darwin_1.4.1.vdi.lz",
- "ffs43/darwin_6.0.2.vdi.lz", "ffs43/darwin_8.0.1.vdi.lz", "ffs43/dflybsd_1.2.0.vdi.lz", "ffs43/dflybsd_3.6.1.vdi.lz",
- "ffs43/dflybsd_4.0.5.vdi.lz", "ffs43/netbsd_1.6.vdi.lz", "ffs43/netbsd_7.1.vdi.lz", "ufs1/darwin_1.3.1.vdi.lz",
- "ufs1/darwin_1.4.1.vdi.lz", "ufs1/darwin_6.0.2.vdi.lz", "ufs1/darwin_8.0.1.vdi.lz", "ufs1/dflybsd_1.2.0.vdi.lz",
- "ufs1/dflybsd_3.6.1.vdi.lz", "ufs1/dflybsd_4.0.5.vdi.lz", "ufs1/freebsd_6.1.vdi.lz", "ufs1/freebsd_7.0.vdi.lz",
- "ufs1/freebsd_8.2.vdi.lz", "ufs1/netbsd_1.6.vdi.lz", "ufs1/netbsd_7.1.vdi.lz", "ufs1/solaris_7.vdi.lz",
- "ufs1/solaris_7.vdi.lz", "ufs2/freebsd_6.1.vdi.lz", "ufs2/freebsd_7.0.vdi.lz", "ufs2/freebsd_8.2.vdi.lz",
- "ufs2/netbsd_7.1.vdi.lz",
+ "nextstep_3.3.vdi.lz","nextstep_3.3_mf2dd.img.lz","nextstep_3.3_mf2hd.img.lz",
+ "openstep_4.0.vdi.lz","openstep_4.0_mf2dd.img.lz","openstep_4.0_mf2hd.img.lz",
+ "openstep_4.2.vdi.lz","openstep_4.2_mf2dd.img.lz","openstep_4.2_mf2hd.img.lz",
+ "rhapsody_dr1.vdi.lz","rhapsody_dr1_mf2dd.img.lz","rhapsody_dr1_mf2hd.img.lz",
+ "rhapsody_dr2.vdi.lz","rhapsody_dr2_mf2dd.img.lz","rhapsody_dr2_mf2hd.img.lz",
};
readonly ulong[] sectors = {
- 262144, 262144, 262144, 262144,
- 262144, 262144, 262144, 262144,
- 262144, 262144, 262144, 262144,
- 262144, 262144, 262144, 262144,
- 262144, 262144, 262144, 262144,
- 262144, 262144, 262144, 262144,
- 262144, 262144, 262144, 262144,
- 262144,
+ 262144, 1440, 2880,
+ 262144, 1440, 2880,
+ 262144, 1440, 2880,
+ 262144, 1440, 2880,
+ 262144, 1440, 2880,
};
readonly uint[] sectorsize = {
- 512, 512, 512, 512,
- 512, 512, 512, 512,
- 512, 512, 512, 512,
- 512, 512, 512, 512,
- 512, 512, 512, 512,
- 512, 512, 512, 512,
- 512, 512, 512, 512,
- 512,
+ 512, 512, 512,
+ 512, 512, 512,
+ 512, 512, 512,
+ 512, 512, 512,
+ 512, 512, 512,
};
readonly long[] clusters = {
- 65024, 65018, 65024, 65018,
- 65024, 65018, 65024, 65018,
- 65024, 65018, 65024, 65018,
- 65024, 65018, 65024, 65018,
- 65024, 65018, 65024, 65018,
- 65024, 65018, 65024, 65018,
- 65024, 65018, 65024, 65018,
- 65024,
+ 131072, 720, 1440,
+ 131072, 720, 1440,
+ 131072, 720, 1440,
+ 131072, 720, 1440,
+ 131072, 720, 1440,
};
readonly int[] clustersize = {
- 2048, 2048, 2048, 2048,
- 2048, 2048, 2048, 2048,
- 2048, 2048, 2048, 2048,
- 2048, 2048, 2048, 2048,
- 2048, 2048, 2048, 2048,
- 2048, 2048, 2048, 2048,
- 2048, 2048, 2048, 2048,
- 2048,
+ 1024, 1024, 1024,
+ 1024, 1024, 1024,
+ 1024, 1024, 1024,
+ 1024, 1024, 1024,
+ 1024, 1024, 1024,
};
readonly string[] volumename = {
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label",
+ "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label",
+ "Volume label", "Volume label", "Volume label",
};
readonly string[] volumeserial = {
- "59588B778E9ACDEF", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN",
};
readonly string[] type = {
- "UFS", "UFS2", "UFS", "UFS",
- "UFS", "UFS", "UFS", "UFS",
- "UFS", "UFS", "UFS", "UFS",
- "UFS", "UFS", "UFS", "UFS",
- "UFS", "UFS", "UFS", "UFS",
- "UFS", "UFS", "UFS", "UFS",
- "UFS", "UFS2", "UFS2", "UFS2",
- "UFS2",
+ "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS",
+ "UFS", "UFS", "UFS",
};
[Test]
@@ -143,20 +119,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_mbr", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_next", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new MBR();
+ PartPlugin parts = new NeXTDisklabel();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.FFSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "0x83")
+ if(partitions[j].PartitionType == "4.3BSD" || partitions[j].PartitionType == "4.4BSD")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/UFS_RDB.cs b/DiscImageChef.Tests/Filesystems/UFS_RDB.cs
index 3f3ff26a..3775b34e 100644
--- a/DiscImageChef.Tests/Filesystems/UFS_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/UFS_RDB.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : UFS_APM.cs
+// Filename : UFS_RDB.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,54 +48,38 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class UFS_APM
+ public class UFS_RDB
{
readonly string[] testfiles = {
- "ffs43/darwin_1.3.1.vdi.lz","ffs43/darwin_1.4.1.vdi.lz","ffs43/darwin_6.0.2.vdi.lz","ffs43/darwin_8.0.1.vdi.lz",
- "ufs1/darwin_1.3.1.vdi.lz","ufs1/darwin_1.4.1.vdi.lz","ufs1/darwin_6.0.2.vdi.lz","ufs1/darwin_8.0.1.vdi.lz",
- "ufs1/macosx_10.2.vdi.lz","ufs1/macosx_10.3.vdi.lz","ufs1/macosx_10.4.vdi.lz",
+ "amix.vdi.lz",
};
readonly ulong[] sectors = {
- 262144, 262144, 262144, 262144,
- 262144, 262144, 262144, 262144,
- 262144, 262144, 262144,
+ 262144,
};
readonly uint[] sectorsize = {
- 512, 512, 512, 512,
- 512, 512, 512, 512,
- 512, 512, 512,
+ 512,
};
readonly long[] clusters = {
- 65024, 65018, 65024, 65018,
- 65024, 65018, 65024, 65018,
- 65024, 65018, 65024,
+ 65024,
};
readonly int[] clustersize = {
- 2048, 2048, 2048, 2048,
- 2048, 2048, 2048, 2048,
- 2048, 2048, 2048,
+ 2048,
};
readonly string[] volumename = {
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label", "Volume label",
- "Volume label", "Volume label", "Volume label",
+ null,
};
readonly string[] volumeserial = {
- "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN", "UNKNOWN", "UNKNOWN", "UNKNOWN",
- "UNKNOWN", "UNKNOWN", "UNKNOWN",
+ "UNKNOWN",
};
readonly string[] type = {
- "UFS", "UFS", "UFS", "UFS",
- "UFS", "UFS", "UFS", "UFS",
- "UFS", "UFS", "UFS",
+ "UFS",
};
[Test]
@@ -103,20 +87,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_apm", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new AppleMap();
+ PartPlugin parts = new AmigaRigidDiskBlock();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.FFSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "Apple_UFS")
+ if(partitions[j].PartitionType == "\"UNI\\2\"")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/UFS_Suni86.cs b/DiscImageChef.Tests/Filesystems/UFS_Suni86.cs
index 3775b34e..f706ee31 100644
--- a/DiscImageChef.Tests/Filesystems/UFS_Suni86.cs
+++ b/DiscImageChef.Tests/Filesystems/UFS_Suni86.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : UFS_RDB.cs
+// Filename : UFS_Suni86.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,38 +48,38 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class UFS_RDB
+ public class UFS_Suni86
{
readonly string[] testfiles = {
- "amix.vdi.lz",
+ "solaris_2.4_mf2dd.img.lz","solaris_2.4_mf2hd.img.lz","solaris_7.vdi.lz",
};
readonly ulong[] sectors = {
- 262144,
+ 1440, 2880, 262144,
};
readonly uint[] sectorsize = {
- 512,
+ 512, 512, 512,
};
readonly long[] clusters = {
- 65024,
+ 720, 1440, 65024,
};
readonly int[] clustersize = {
- 2048,
+ 1024, 1024, 2048,
};
readonly string[] volumename = {
- null,
+ null, null, null,
};
readonly string[] volumeserial = {
- "UNKNOWN",
+ "UNKNOWN", "UNKNOWN", "UNKNOWN",
};
readonly string[] type = {
- "UFS",
+ "UFS", "UFS", "UFS",
};
[Test]
@@ -87,20 +87,20 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_suni86", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new AmigaRigidDiskBlock();
+ PartPlugin parts = new SunDisklabel();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
Filesystem fs = new DiscImageChef.Filesystems.FFSPlugin();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "\"UNI\\2\"")
+ if(partitions[j].PartitionType != "Empty")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/UNIXBFS.cs b/DiscImageChef.Tests/Filesystems/UNIXBFS.cs
index fa7f873b..84e672be 100644
--- a/DiscImageChef.Tests/Filesystems/UNIXBFS.cs
+++ b/DiscImageChef.Tests/Filesystems/UNIXBFS.cs
@@ -51,11 +51,15 @@ namespace DiscImageChef.Tests.Filesystems
public class unixbfs
{
readonly string[] testfiles = {
- "linux.vdi.lz",
+ "amix.adf.lz",
+ };
+
+ readonly MediaType[] mediatypes = {
+ MediaType.CBM_AMIGA_35_DD,
};
readonly ulong[] sectors = {
- 262144,
+ 1760,
};
readonly uint[] sectorsize = {
@@ -63,7 +67,7 @@ namespace DiscImageChef.Tests.Filesystems
};
readonly long[] clusters = {
- 260096,
+ 1760,
};
readonly int[] clustersize = {
@@ -82,25 +86,14 @@ namespace DiscImageChef.Tests.Filesystems
string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "unixbfs", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
- ImagePlugin image = new VDI();
+ ImagePlugin image = new ZZZRawImage();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
+ Assert.AreEqual(mediatypes[i], image.ImageInfo.mediaType, testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- PartPlugin parts = new MBR();
- Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.BFS();
- int part = -1;
- for(int j = 0; j < partitions.Count; j++)
- {
- if(partitions[j].PartitionType == "0x83")
- {
- part = j;
- break;
- }
- }
- Assert.AreNotEqual(-1, part, "Partition not found");
- Assert.AreEqual(true, fs.Identify(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1), testfiles[i]);
- fs.GetInformation(image, partitions[part].PartitionStartSector, partitions[part].PartitionStartSector + partitions[part].PartitionSectors - 1, out string information);
+ Filesystem fs = new DiscImageChef.Filesystems.FFSPlugin();
+ Assert.AreEqual(true, fs.Identify(image, 0, image.ImageInfo.sectors - 1), testfiles[i]);
+ fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
Assert.AreEqual("BFS", fs.XmlFSType.Type, testfiles[i]);
diff --git a/DiscImageChef.Tests/Filesystems/UNIXBFS_MBR.cs b/DiscImageChef.Tests/Filesystems/UNIXBFS_MBR.cs
index 4e95785a..c99eafe8 100644
--- a/DiscImageChef.Tests/Filesystems/UNIXBFS_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/UNIXBFS_MBR.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : unixbfs.cs
+// Filename : unixbfs_mbr.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -48,30 +48,30 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class unixbfs
+ public class unixbfs_mbr
{
readonly string[] testfiles = {
- "linux.vdi.lz","amix.adf.lz",
+ "linux.vdi.lz",
};
readonly ulong[] sectors = {
- 262144,1760,
+ 262144,
};
readonly uint[] sectorsize = {
- 512,512,
+ 512,
};
readonly long[] clusters = {
- 260096,1760,
+ 260096,
};
readonly int[] clustersize = {
- 512,512,
+ 512,
};
readonly string[] volumename = {
- "Label","Label",
+ "Label",
};
[Test]
@@ -79,7 +79,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "unixbfs", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "unixbfs_mbr", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
diff --git a/DiscImageChef.Tests/Filesystems/UNIXBFS_RDB.cs b/DiscImageChef.Tests/Filesystems/UNIXBFS_RDB.cs
index 3775b34e..69f64300 100644
--- a/DiscImageChef.Tests/Filesystems/UNIXBFS_RDB.cs
+++ b/DiscImageChef.Tests/Filesystems/UNIXBFS_RDB.cs
@@ -48,7 +48,7 @@ using NUnit.Framework;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class UFS_RDB
+ public class UNIXBFS_RDB
{
readonly string[] testfiles = {
"amix.vdi.lz",
@@ -87,7 +87,7 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "ufs_rdb", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "unixbfs_rdb", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
ImagePlugin image = new VDI();
@@ -96,11 +96,11 @@ namespace DiscImageChef.Tests.Filesystems
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
PartPlugin parts = new AmigaRigidDiskBlock();
Assert.AreEqual(true, parts.GetInformation(image, out List partitions), testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.FFSPlugin();
+ Filesystem fs = new DiscImageChef.Filesystems.BFS();
int part = -1;
for(int j = 0; j < partitions.Count; j++)
{
- if(partitions[j].PartitionType == "\"UNI\\2\"")
+ if(partitions[j].PartitionType == "\"UNI\\0\"")
{
part = j;
break;
diff --git a/DiscImageChef.Tests/Filesystems/ZFS.cs b/DiscImageChef.Tests/Filesystems/ZFS.cs
index 6f0e4ab7..5e0e3607 100644
--- a/DiscImageChef.Tests/Filesystems/ZFS.cs
+++ b/DiscImageChef.Tests/Filesystems/ZFS.cs
@@ -2,7 +2,7 @@
// The Disc Image Chef
// ----------------------------------------------------------------------------
//
-// Filename : MFS.cs
+// Filename : ZFS.cs
// Version : 1.0
// Author(s) : Natalia Portillo
//
@@ -41,50 +41,39 @@ using DiscImageChef.Filesystems;
using DiscImageChef.Filters;
using DiscImageChef.ImagePlugins;
using NUnit.Framework;
+using DiscImageChef.DiscImages;
namespace DiscImageChef.Tests.Filesystems
{
[TestFixture]
- public class MFS
+ public class ZFS
{
readonly string[] testfiles = {
- "macos_0.1_mf1dd.img.lz","macos_0.5_mf1dd.img.lz","macos_1.1_mf1dd.img.lz","macos_2.0_mf1dd.img.lz",
- "macos_6.0.7_mf1dd.img.lz",
- };
-
- readonly MediaType[] mediatypes = {
- MediaType.AppleSonySS, MediaType.AppleSonySS, MediaType.AppleSonySS, MediaType.AppleSonySS,
- MediaType.AppleSonySS
+ "netbsd_7.1.vdi.lz",
};
readonly ulong[] sectors = {
- 800, 800, 800, 800,
- 800,
+ 33554432,
};
readonly uint[] sectorsize = {
- 512, 512, 512, 512,
- 512, 512, 512,
+ 512,
};
readonly long[] clusters = {
- 391, 391, 391, 391,
- 391,
+ 0,
};
readonly int[] clustersize = {
- 1024, 1024, 1024, 1024,
- 1024,
+ 0,
};
readonly string[] volumename = {
- "Volume label","Volume label","Volume label","Volume label",
- "Volume label",
+ "NetBSD 7.1",
};
readonly string[] volumeserial = {
- null, null, null, null,
- null, null, null,
+ "2639895335654686206",
};
[Test]
@@ -92,20 +81,19 @@ namespace DiscImageChef.Tests.Filesystems
{
for(int i = 0; i < testfiles.Length; i++)
{
- string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "mfs", testfiles[i]);
+ string location = Path.Combine(Consts.TestFilesRoot, "filesystems", "zfs", testfiles[i]);
Filter filter = new LZip();
filter.Open(location);
- ImagePlugin image = new ZZZRawImage();
+ ImagePlugin image = new VDI();
Assert.AreEqual(true, image.OpenImage(filter), testfiles[i]);
- Assert.AreEqual(mediatypes[i], image.ImageInfo.mediaType, testfiles[i]);
Assert.AreEqual(sectors[i], image.ImageInfo.sectors, testfiles[i]);
Assert.AreEqual(sectorsize[i], image.ImageInfo.sectorSize, testfiles[i]);
- Filesystem fs = new DiscImageChef.Filesystems.AppleMFS.AppleMFS();
+ Filesystem fs = new DiscImageChef.Filesystems.ZFS();
Assert.AreEqual(true, fs.Identify(image, 0, image.ImageInfo.sectors - 1), testfiles[i]);
fs.GetInformation(image, 0, image.ImageInfo.sectors - 1, out string information);
Assert.AreEqual(clusters[i], fs.XmlFSType.Clusters, testfiles[i]);
Assert.AreEqual(clustersize[i], fs.XmlFSType.ClusterSize, testfiles[i]);
- Assert.AreEqual("MFS", fs.XmlFSType.Type, testfiles[i]);
+ Assert.AreEqual("ZFS filesystem", fs.XmlFSType.Type, testfiles[i]);
Assert.AreEqual(volumename[i], fs.XmlFSType.VolumeName, testfiles[i]);
Assert.AreEqual(volumeserial[i], fs.XmlFSType.VolumeSerial, testfiles[i]);
}
diff --git a/DiscImageChef.Tests/Filesystems/exFAT_APM.cs b/DiscImageChef.Tests/Filesystems/exFAT_APM.cs
index 55676411..ededae80 100644
--- a/DiscImageChef.Tests/Filesystems/exFAT_APM.cs
+++ b/DiscImageChef.Tests/Filesystems/exFAT_APM.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class exFAT_APM
{
readonly string[] testfiles = {
- "macosx.vdi.lz",
+ "macosx_10.11.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/exFAT_GPT.cs b/DiscImageChef.Tests/Filesystems/exFAT_GPT.cs
index 4ad68575..7cc4ed11 100644
--- a/DiscImageChef.Tests/Filesystems/exFAT_GPT.cs
+++ b/DiscImageChef.Tests/Filesystems/exFAT_GPT.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class exFAT_GPT
{
readonly string[] testfiles = {
- "macosx.vdi.lz",
+ "macosx_10.11.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/exFAT_MBR.cs b/DiscImageChef.Tests/Filesystems/exFAT_MBR.cs
index 58bd1244..25302ca7 100644
--- a/DiscImageChef.Tests/Filesystems/exFAT_MBR.cs
+++ b/DiscImageChef.Tests/Filesystems/exFAT_MBR.cs
@@ -51,7 +51,7 @@ namespace DiscImageChef.Tests.Filesystems
public class exFAT_MBR
{
readonly string[] testfiles = {
- "linux.vdi.lz", "macosx.vdi.lz", "win10.vdi.lz", "winvista.vdi.lz",
+ "linux.vdi.lz", "macosx_10.11.vdi.lz", "win10.vdi.lz", "winvista.vdi.lz",
};
readonly ulong[] sectors = {
diff --git a/DiscImageChef.Tests/Filesystems/ext2.cs b/DiscImageChef.Tests/Filesystems/ext2.cs
index c041ce7e..4ffc710b 100644
--- a/DiscImageChef.Tests/Filesystems/ext2.cs
+++ b/DiscImageChef.Tests/Filesystems/ext2.cs
@@ -52,34 +52,42 @@ namespace DiscImageChef.Tests.Filesystems
{
readonly string[] testfiles = {
"linux_ext2.vdi.lz", "linux_ext3.vdi.lz","linux_ext4.vdi.lz",
+ "netbsd_7.1.vdi.lz", "netbsd_7.1_r0.vdi.lz",
};
readonly ulong[] sectors = {
262144, 262144, 262144,
+ 8388608, 2097152,
};
readonly uint[] sectorsize = {
- 512, 512, 512,
+ 512, 512, 512,
+ 512, 512,
};
readonly long[] clusters = {
- 130048, 130048, 130048,
+ 130048, 130048, 130048,
+ 1046567, 260135,
};
readonly int[] clustersize = {
- 1024, 1024, 1024,
+ 1024, 1024, 1024,
+ 4096, 4096,
};
readonly string[] volumename = {
- "VolumeLabel", "VolumeLabel", "VolumeLabel",
+ "VolumeLabel", "VolumeLabel", "VolumeLabel",
+ "Volume label", "Volume label",
};
readonly string[] volumeserial = {
- "cf92398e-987d-4ae4-b753-0591a35913eb", "1615411b-1554-424b-95e6-1a247056a960", "05f3f8b2-0f77-47ad-abe4-f0484aa319e9",
+ "cf92398e-987d-4ae4-b753-0591a35913eb", "1615411b-1554-424b-95e6-1a247056a960", "05f3f8b2-0f77-47ad-abe4-f0484aa319e9",
+ "05ee2ae7-7b62-e711-a573-0800272a08ec", "f2562707-7c62-e711-a573-0800272a08ec",
};
readonly string[] extversion = {
"ext2", "ext3", "ext4",
+ "ext2", "ext2"
};
[Test]